{"version":3,"sources":["components/Common/Breadcrumb.js","store/layout/actionTypes.js","store/layout/actions.js","store/dashboard/actionTypes.js","store/dashboard/actions.js","store/auth/register/actionTypes.js","store/auth/register/actions.js","store/auth/patientinformation/actionTypes.js","store/auth/patientinformation/actions.js","store/auth/b2bclientinformation/actionTypes.js","store/auth/b2bclientinformation/actions.js","store/auth/donorinformation/actionTypes.js","store/auth/donorinformation/actions.js","store/auth/labinformation/actionTypes.js","store/auth/labinformation/actions.js","store/auth/corporateinformation/actionTypes.js","store/auth/corporateinformation/actions.js","store/auth/login/actionTypes.js","store/auth/login/actions.js","store/auth/forgetpwd/actionTypes.js","store/auth/forgetpwd/actions.js","store/auth/confirmpwd/actionTypes.js","store/auth/confirmpwd/actions.js","store/auth/changepwd/actionTypes.js","store/auth/changepwd/actions.js","store/auth/labprofile/actionTypes.js","store/auth/labprofile/actions.js","store/auth/b2bprofile/actionTypes.js","store/auth/b2bprofile/actions.js","store/auth/donorprofile/actionTypes.js","store/auth/donorprofile/actions.js","store/auth/staffprofile/actionTypes.js","store/auth/staffprofile/actions.js","store/auth/samplecollectorprofile/actionTypes.js","store/auth/samplecollectorprofile/actions.js","store/auth/labsettings/actionTypes.js","store/auth/labsettings/actions.js","store/auth/payments/actionTypes.js","store/auth/payments/actions.js","store/auth/donorsettings/actionTypes.js","store/auth/donorsettings/actions.js","store/auth/patientprofile/actionTypes.js","store/auth/patientprofile/actions.js","store/auth/corporateprofile/actionTypes.js","store/auth/corporateprofile/actions.js","store/labmarket/actionTypes.js","store/labmarket/actions.js","store/review-performance/actionTypes.js","store/review-performance/actions.js","store/testmarket/actionTypes.js","store/profilemarket/actionTypes.js","store/profilemarket/actions.js","store/packagemarket/actionTypes.js","store/radiologymarket/actionTypes.js","store/offered-tests/actionTypes.js","store/offered-tests/actions.js","store/test-list/actionTypes.js","store/pathologists/actionTypes.js","store/pathologists/actions.js","store/activtylog/actionTypes.js","store/activtylogfinance/actionTypes.js","store/activtylogmarketer/actionTypes.js","store/bankaccounts/actionTypes.js","store/bankaccounts/actions.js","store/samplenotification/actionTypes.js","store/marketernotification/actionTypes.js","store/csradminnotification/actionTypes.js","store/regadminnotification/actionTypes.js","store/csrofficernotification/actionTypes.js","store/activtylogAuditor/actionTypes.js","helpers/url_helper.js","store/carts/actionTypes.js","store/carts/actions.js","store/quotes/actionTypes.js","store/quotes/actions.js","store/sample-collectors/actionTypes.js","store/sample-collectors/actions.js","store/sample-collector-test-appointments/actionTypes.js","store/sample-collector-test-appointments/actions.js","store/quality-certificates/actionTypes.js","store/quality-certificates/actions.js","store/payment-statuss/actionTypes.js","store/payment-statuss/actions.js","store/advertisements/actionTypes.js","store/advertisements/actions.js","store/adv-invoice/actionTypes.js","store/lab-advertisements/actionTypes.js","store/lab-advertisements/actions.js","store/lab-advertisement-requests/actionTypes.js","store/lab-advertisement-requests/actions.js","store/advertisement-price-lists/actionTypes.js","store/advertisement-price-lists/actions.js","store/advertisement-live/actionTypes.js","store/advertisement-live/actions.js","store/referrel-fee-to-lab/actionTypes.js","store/referrel-fee-to-lab/actions.js","store/discount-labhazir/actionTypes.js","store/discount-labhazir/actions.js","store/labs-list/actionTypes.js","store/labs-list/actions.js","store/labs-listttt/actionTypes.js","store/discount-labhazir-to-lab/actionTypes.js","store/discount-labhazir-to-lab/actions.js","store/discount-lab/actionTypes.js","store/discount-lab/actions.js","store/territories-list/actionTypes.js","store/territories-list/actions.js","store/lab-names/actionTypes.js","store/lab-names/actions.js","store/only-medical-tests-list/actionTypes.js","store/only-medical-tests-list/actions.js","store/csr-territory-list/actionTypes.js","store/csr-territory-list/actions.js","store/auditor-territory-list/actionTypes.js","store/auditor-territory-list/actions.js","store/labs-list-pending/actionTypes.js","store/shared-percentage-pending-fee/actionTypes.js","store/shared-percentage-pending-fee/actions.js","store/feedbacks/actionTypes.js","store/feedbacks/actions.js","store/labs-rating/actionTypes.js","store/labs-testing/actionTypes.js","store/complaints/actionTypes.js","store/csr-complaints/actionTypes.js","store/csr-comments/actionTypes.js","store/csr-comments/actions.js","store/csr-admin-appointments/actionTypes.js","store/patients-list/actionTypes.js","store/test-descriptions/actionTypes.js","store/test-appointments/actionTypes.js","store/test-appointments/actions.js","store/patient-test-appointments/actionTypes.js","store/patient-test-appointments/actions.js","store/patient-feedback/actionTypes.js","store/patient-feedback/actions.js","store/checkout/actionTypes.js","store/b2b-referred-patients/actionTypes.js","store/b2b-lab-shares/actionTypes.js","store/b2b-all-clients/actionTypes.js","store/b2bcheckout/actionTypes.js","store/b2b-account-statements/actionTypes.js","store/b2b-account-statements/actions.js","store/bank-account-statements/actionTypes.js","store/donor-referred-appointments/actionTypes.js","store/donorcheckout/actionTypes.js","store/donor-account-statements/actionTypes.js","store/donors-account-statements/actionTypes.js","store/createbank/actionTypes.js","store/createbank/actions.js","store/bankaccount/actionTypes.js","store/corporatedata/actionTypes.js","store/corporatedata/actions.js","store/invoices/actionTypes.js","store/invoices/actions.js","store/account-statements/actionTypes.js","store/inpayments/actionTypes.js","store/inpayments/actions.js","store/outpayments/actionTypes.js","store/outpayments/actions.js","store/banktransferdetails/actionTypes.js","store/banktransferdetails/actions.js","store/staff/actionTypes.js","store/staff/actions.js","store/auditor/actionTypes.js","store/auditor/actions.js","store/registration-admin/actionTypes.js","store/registration-admin/actions.js","components/Common/ConfirmModal.js","pages/FinanceAdmin/all-donation-appointments.js","store/finance-admin/actionTypes.js","store/finance-admin/actions.js","store/csr-admin/actionTypes.js","store/csr-admin/actions.js","store/auditor-admin/actionTypes.js","store/auditor-admin/actions.js","store/chat-box/actionTypes.js","store/chat-box/actions.js","helpers/global_variables_helper.js","pages/Authentication/LabProfile.js","pages/Authentication/PatientProfile.js","pages/Authentication/CorporateProfile.js","pages/Authentication/SampleCollectorProfile.js","pages/Authentication/StaffProfile.js","assets/images/logo.svg","assets/images/m.test.png","assets/images/m.profile1.png","assets/images/m.package.png","assets/images/m.radiology.png","assets/images/m.appointment.png","assets/images/discount.png","assets/images/logo-light.png","assets/images/logo-light.svg","components/HorizontalLayout/Navbar.js","components/Common/DeleteModal.js","pages/CartsList/carts.js","components/HorizontalLayout/Header.js","common/data/crypto.js","common/data/invoices.js","common/data/projects.js","common/data/tasks.js","assets/images/product/img-1.png","assets/images/product/Pro-1a.png","assets/images/product/Pro-1b.png","assets/images/product/img-2.png","assets/images/product/Pro-2a.png","assets/images/product/Pro-2b.png","assets/images/product/img-3.png","assets/images/product/Pro-4.png","assets/images/product/Pro-4a.png","assets/images/product/img-4.png","assets/images/product/Pro-12a.png","assets/images/product/Pro-12b.png","assets/images/product/Pro-8.png","assets/images/product/Pro-8a.png","assets/images/product/Pro-8b.png","assets/images/product/img-6.png","common/data/ecommerce.js","assets/images/product/Pro-17.png","assets/images/product/Pro-17a.png","common/data/chat.js","common/data/mails.js","common/data/calender.js","common/data/contacts.js","common/data/dashboard.js","common/data/dashboard-saas.js","pages/OfferedTests/offered-tests-list.js","components/Common/Styles.js","components/Common/Scrollbutton.js","pages/LabMarket/NearbyLabs/index.js","store/quotes/reducer.js","pages/LabMarket/NearbyLabs/MedicalTestsList.js","pages/Feedbacks-List/FeedbackDetail.js","pages/LabMarket/NearbyLabs/NearbyLabDetail.js","pages/LabMarket/NearbyLabs/CorporateLabs.js","pages/LabMarket/NearbyLabs/labs.js","pages/LabMarket/NearbyLabs/NearbyTests.js","store/testmarket/actions.js","pages/LabMarket/NearbyLabs/NearbyTestsDiscountedlh.js","pages/LabMarket/NearbyLabs/NearbyProfiles.js","pages/LabMarket/NearbyLabs/NearbyPackages.js","store/packagemarket/actions.js","pages/LabMarket/NearbyLabs/NearbyRadiology.js","store/radiologymarket/actions.js","pages/Contact/contact-us.js","store/complaints/actions.js","assets/images/affiliate.jpg","pages/LabMarket/NearbyLabs/b2baffiliate.js","pages/AuthenticationInner/CarouselPage.js","pages/Authentication/Login.js","pages/Authentication/RegisterAffiliate.js","pages/Authentication/Logout.js","pages/Authentication/Register.js","pages/Authentication/PatientInformation.js","pages/Authentication/B2bClientInformation.js","pages/Authentication/DonorInformation.js","pages/Authentication/LabInformation.js","pages/Authentication/CorporateInformation.js","pages/Authentication/ForgetPassword.js","pages/Authentication/ConfirmPassword.js","pages/Dashboard-Patient/StackedColumnChart.js","assets/images/profile-img.png","pages/Dashboard-Patient/PatientProfileSummary.js","pages/Dashboard-Patient/index.js","pages/Dashboard-Lab/StackedColumnChart.js","pages/Dashboard-Lab/LabSummary.js","pages/Dashboard-Lab/index.js","pages/Dashboard-B2b/StackedColumnChart.js","pages/Dashboard-B2b/B2bSummary.js","pages/Dashboard-B2b/index.js","pages/Dashboard-Finance/FinanceAdminSummary.js","pages/Dashboard-Finance/index.js","pages/Dashboard-Corporate/StackedColumnChart.js","pages/Dashboard-Corporate/FinanceAdminSummary.js","pages/Dashboard-Corporate/index.js","pages/Dashboard-FinanceAdmin/FinanceAdminSummary.js","pages/Dashboard-FinanceAdmin/index.js","pages/Dashboard-MarketerAdmin/MarketerAdminSummary.js","pages/Dashboard-MarketerAdmin/index.js","pages/CorporatesData/add-employee.js","pages/CorporatesData/add-datafile.js","pages/AccountStatements/b2b-account-statements.js","pages/CorporatesData/employees-list.js","pages/OfferedTests/corporate-medical-tests.js","store/test-list/actions.js","pages/OfferedTests/corporate-offeredtests-list.js","pages/CorporatesData/corporate-lab-appointments.js","pages/CorporatesData/corporate-labs-list.js","pages/CorporatesData/corporate-out-payment.js","pages/CorporatesData/corporate-paymentout-created-statuss-list.js","assets/images/users/avatar-1.jpg","assets/images/users/avatar-2.jpg","assets/images/users/avatar-3.jpg","assets/images/users/avatar-4.jpg","assets/images/users/avatar-5.jpg","assets/images/users/avatar-6.jpg","assets/images/users/avatar-7.jpg","assets/images/users/avatar-8.jpg","assets/images/product/img-7.png","pages/CorporatesData/payment-confirmation.js","pages/CorporatesData/labhazir-payment-confirmation.js","pages/CorporatesData/commit-corporate.js","store/activtylogfinance/actions.js","pages/CorporatesData/corporate-paymentout-created-statuss-detail.js","pages/FinanceAdmin/corporate-list.js","pages/OfferedTests/medical-tests.js","pages/SampleCollectors/sample-collectors-register.js","pages/SampleCollectors/sample-collector-info.js","pages/SampleCollectors/sample-collectors-list.js","pages/QualityCertificates/quality-certificates-list.js","pages/Pathologists/pathologists-list.js","pages/TestAppointments/test-appointments-pending-list.js","pages/Authentication/labtokens.js","pages/TestAppointments/test-appointments-in-process-list.js","pages/TestAppointments/test-appointments-completed-list.js","pages/Feedbacks/feedbacks-list.js","assets/images/logo-dark.png","pages/Checkouts/invoice-detail.js","pages/Checkouts/appointment-detail.js","pages/LabAdvertisements/lab-advertisement.js","pages/AccountStatements/corporate-lab-account-statements.js","pages/LabMarket/NearbyLabs/corporate-offeredtests-list.js","pages/Payments Form/in-payment-mathod.js","pages/PaymentStatuss/payment-statuss-list.js","pages/PaymentStatuss/paymentin-pending-clearence-statuss-list.js","pages/PaymentStatuss/clear-statuss-list.js","pages/PaymentStatuss/payment-bounced-statuss-list.js","store/bankaccounts/reducer.js","pages/Payments Form/out-payment-mathod.js","pages/PaymentStatuss/paymentout-pending-clearence-statuss-list.js","pages/PaymentStatuss/paymentout-created-statuss-list.js","pages/PaymentStatuss/paymentoutclear-statuss-list.js","pages/PaymentStatuss/paymentout-bounced-statuss-list.js","pages/SampleCollectorTestAppointments/test-appointments-in-process-list.js","pages/SampleCollectorTestAppointments/test-appointments-completed-list.js","i18n.js","components/HorizontalLayout/Footer.js","constants/layout.js","assets/images/sidebar/img1.jpg","assets/images/sidebar/img2.jpg","assets/images/sidebar/img3.jpg","assets/images/sidebar/img4.jpg","assets/images/layouts/layout-1.jpg","assets/images/layouts/layout-2.jpg","assets/images/layouts/layout-3.jpg","components/CommonForBoth/RightSidebar.js","components/HorizontalLayout/index.js","pages/LabMarket/NearbyLabs/NearbyLabDetails/quality-certificates-list.js","pages/LabMarket/NearbyLabs/NearbyLabDetails/sample-collectors-list.js","pages/LabMarket/NearbyLabs/NearbyLabDetails/pathologists-list.js","pages/LabMarket/NearbyLabs/CorporateLabsCarAppointments.js","pages/PatientTestAppointments/test-appointments-list.js","pages/PatientTestAppointments/corporate-model.js","pages/Dashboard-Csr/test-appointments-list.js","pages/LabMarket/NearbyLabs/TestsOfferedbyLab.js","pages/LabMarket/NearbyLabs/TestsOfferedbyLabCorporation.js","pages/LabMarket/NearbyLabs/ProfilesOfferedbyLabCorporation.js","pages/LabMarket/NearbyLabs/RadiologyOfferedbyLabCorporation.js","pages/LabMarket/NearbyLabs/PackagesOfferedbyLabCorporation.js","pages/Carts/carts-list.js","pages/Carts/quotes-list.js","pages/Checkouts/checkout.js","store/checkout/actions.js","pages/Authentication/LabSettings.js","pages/Test-Description/test-descriptions-list.js","store/test-descriptions/actions.js","pages/advInvoice/adv-invoice-detail.js","store/adv-invoice/actions.js","pages/B2bReferredPatients/referred-patients-list.js","store/b2b-referred-patients/actions.js","pages/B2bLabShares/lab-shares-list.js","store/b2b-lab-shares/actions.js","pages/Authentication/B2bProfile.js","pages/Dashboard-Donor/StackedColumnChart.js","pages/Dashboard-Donor/DonorSummary.js","pages/Dashboard-Donor/index.js","pages/Authentication/DonorProfile.js","pages/DonorReferredAppointments/referred-appointments-list.js","store/donor-referred-appointments/actions.js","pages/DonorPaymentMathods/payment-mathod.js","store/donorcheckout/actions.js","pages/Authentication/DonorSettings.js","pages/AccountStatements/donor-account-statements.js","store/donor-account-statements/actions.js","pages/AccountStatements/donors-account-statements.js","store/donors-account-statements/actions.js","pages/AccountStatements/bank-account-statement.js","store/account-statements/actions.js","assets/images/CREDITCARDFAILED.png","pages/Checkouts/creditcardcheckout.js","components/Common/ApproveUnapproveModal.js","pages/FinanceAdmin/lab-labs-list.js","pages/CreateBanks/create-bank.js","pages/BankAccounts/bank-account.js","store/bankaccount/actions.js","pages/B2BAdmin/all-clients-list.js","store/b2b-all-clients/actions.js","pages/B2BAdmin/b2b-client-shares.js","pages/B2bPaymentMathods/payment-mathod.js","store/b2bcheckout/actions.js","pages/AccountStatements/account-statements.js","pages/OfferedTests/medical-test-sheet.js","pages/Complaints/csr-checkout.js","pages/Dashboard-Csr/patients-list.js","store/patients-list/actions.js","pages/Public/disclaimer.js","pages/Public/about-us.js","pages/Authentication/ChangePassword.js","pages/Dashboard-Auditor/StackedColumnChart.js","pages/Dashboard-Auditor/AuditorSummary.js","pages/Dashboard-Auditor/index.js","pages/Dashboard-SampleCollector/StackedColumnChart.js","pages/Dashboard-SampleCollector/SampleCollectorSummary.js","pages/Dashboard-SampleCollector/index.js","pages/RegistrationAdmin/pending-corporate.js","pages/RegistrationAdmin/review-performance.js","pages/RegistrationAdmin/approved-corporate.js","pages/RegistrationAdmin/unapproved-corporate.js","pages/RegistrationAdmin/pending-labs.js","pages/RegistrationAdmin/labs-list-approved-fee.js","store/labs-list-pending/actions.js","pages/RegistrationAdmin/labs-list-pending-fee.js","pages/RegistrationAdmin/shared-percentage-pending-Fee.js","pages/RegistrationAdmin/shared-percentage-approved-Fee.js","pages/RegistrationAdmin/approved-labs.js","pages/RegistrationAdmin/unapproved-labs.js","pages/RegistrationAdmin/pending-b2b-clients.js","pages/RegistrationAdmin/approved-b2b-clients.js","pages/RegistrationAdmin/unapproved-b2b-clients.js","pages/RegistrationAdmin/pending-donors.js","pages/RegistrationAdmin/approved-donors.js","pages/RegistrationAdmin/unapproved-donors.js","pages/RegistrationAdmin/referrelfeelab.js","pages/RegistrationAdmin/Approvereferrelfeelab.js","pages/RegistrationAdmin/labs-rating.js","store/labs-rating/actions.js","pages/RegistrationAdmin/all-corporate-list.js","pages/RegistrationAdmin/reffrell-corporate-list.js","pages/FinanceAdmin/paymentin-pending-clearences-statuss-list.js","pages/FinanceAdmin/paymentout-pending-clearences-statuss-list.js","pages/FinanceAdmin/cleared-in-payments.js","pages/FinanceAdmin/approved-in-payments.js","pages/FinanceAdmin/unapproved-in-payments.js","pages/Payments Form/bank-transfer-detail.js","pages/PaymentStatuss/inter-bank-details-list.js","pages/Payments Form/invoice-adjustment-detail.js","pages/MarketerAdmin/advertisement.js","pages/MarketerAdmin/advertisement-price-list.js","pages/MarketerAdmin/discount-labhazir.js","pages/MarketerAdmin/labs-list.js","pages/FinanceAdmin/labs-list.js","pages/FinanceAdmin/donors-list.js","pages/FinanceAdmin/donos-appointments.js","pages/FinanceAdmin/b2bclients-list.js","pages/MarketerAdmin/discount-lab.js","pages/MarketerAdmin/pending-lab-advertisement-requests.js","pages/MarketerAdmin/accepted-lab-advertisement-requests.js","pages/CSRAdmin/pending-complaints.js","pages/CSRAdmin/csr-apointments.js","store/csr-admin-appointments/actions.js","pages/CSRAdmin/inprocess-complaints.js","pages/CSRAdmin/resolved-complaints.js","pages/CSRAdmin/csrs-list.js","pages/Dashboard-Csr/StackedColumnChart.js","pages/Dashboard-Csr/StaffSummary.js","pages/Dashboard-Csr/index.js","pages/Complaints/unhandled-complaints.js","pages/Complaints/handled-complaints.js","pages/Complaints/csr-complaints.js","store/csr-complaints/actions.js","pages/Complaints/reduce-tests.js","pages/Complaints/notes-list.js","pages/Dashboard-MarketerAdmin/activity-log-marketer.js","store/activtylogmarketer/actions.js","pages/Dashboard-MarketerAdmin/activity-log-lab-marketer.js","pages/Complaints/notes-list-complain.js","pages/Complaints/msg-box.js","pages/Auditor/assigned-audits.js","pages/Dashboard-Lab/lab-audits.js","pages/Dashboard-Lab/activity-log.js","store/activtylog/actions.js","pages/PaymentStatuss/activity-log-finance.js","pages/LabMarket/NearbyLabs/accepted-corporate-list.js","pages/Auditor/completed-audits.js","pages/AuditorAdmin/pending-audits.js","pages/AuditorAdmin/inprocess-audits.js","pages/AuditorAdmin/passed-audits.js","pages/AuditorAdmin/failed-audits.js","pages/AuditorAdmin/lab-list.js","pages/AuditorAdmin/auditors-list.js","serviceWorker.js","pages/AuditorAdmin/lab-audit-list.js","pages/AuditorAdmin/auditor-history.js","store/activtylogAuditor/actions.js","pages/Utility/card-maintenance.js","assets/images/maintenance.svg","pages/Utility/pages-maintenance.js","assets/images/coming-soon.svg","pages/Utility/pages-comingsoon.js","pages/Utility/card-payment.js","assets/images/error-img.png","pages/Utility/pages-404.js","pages/Utility/pages-500.js","pages/HrAdmin/staff-register.js","pages/HrAdmin/staff-info.js","pages/HrAdmin/csr-list.js","pages/HrAdmin/marketers-list.js","pages/HrAdmin/auditor-list.js","pages/HrAdmin/finance-officer-list.js","pages/MarketerAdmin/discounttolab.js","pages/CreateBanks/banks-list.js","pages/BankAccounts/bankaccounts-list.js","pages/Authentication/Payments.js","pages/LabMarket/NearbyLabs/corporate-list.js","store/labs-list-pending/reducer.js","pages/LabMarket/NearbyLabs/ProfilesOfferedbyLab.js","pages/LabMarket/NearbyLabs/PackagesOfferedbyLab.js","pages/LabMarket/NearbyLabs/RadiologyOfferedbyLab.js","pages/LabAdvertisements/adv-lab-chat-box.js","pages/FinanceAdmin/lab-corporate-statement.js","routes/index.js","routes/route.js","components/CommonForBoth/TopbarDropdown/ProfileMenu.js","components/CommonForBoth/TopbarDropdown/NotificationDropdown.js","components/CommonForBoth/TopbarDropdown/SampleNotificationDropdown.js","store/samplenotification/actions.js","components/CommonForBoth/TopbarDropdown/MarketerNotificationDropdown.js","store/marketernotification/actions.js","components/CommonForBoth/TopbarDropdown/CsrAdminNotificationDropdown.js","store/csradminnotification/actions.js","components/CommonForBoth/TopbarDropdown/CsrOfficerNotificationDropdown.js","store/csrofficernotification/actions.js","components/CommonForBoth/TopbarDropdown/RegAdminNotificationDropdown.js","store/regadminnotification/actions.js","components/VerticalLayout/Header.js","components/VerticalLayout/SidebarContent.js","components/VerticalLayout/Sidebar.js","components/VerticalLayout/Footer.js","components/VerticalLayout/index.js","components/NonAuthLayout.js","helpers/AuthType/fakeBackend.js","App.js","store/layout/reducer.js","store/dashboard/reducer.js","store/auth/login/reducer.js","store/auth/register/reducer.js","store/auth/patientinformation/reducer.js","store/auth/b2bclientinformation/reducer.js","store/auth/donorinformation/reducer.js","store/auth/labinformation/reducer.js","store/auth/corporateinformation/reducer.js","store/auth/forgetpwd/reducer.js","store/auth/confirmpwd/reducer.js","store/auth/changepwd/reducer.js","store/auth/labprofile/reducer.js","store/auth/b2bprofile/reducer.js","store/auth/donorprofile/reducer.js","store/auth/staffprofile/reducer.js","store/auth/samplecollectorprofile/reducer.js","store/auth/labsettings/reducer.js","store/auth/payments/reducer.js","store/auth/donorsettings/reducer.js","store/auth/patientprofile/reducer.js","store/auth/corporateprofile/reducer.js","store/labmarket/reducer.js","store/testmarket/reducer.js","store/profilemarket/reducer.js","store/packagemarket/reducer.js","store/radiologymarket/reducer.js","store/test-list/reducer.js","store/offered-tests/reducer.js","store/pathologists/reducer.js","store/activtylog/reducer.js","store/samplenotification/reducer.js","store/marketernotification/reducer.js","store/csradminnotification/reducer.js","store/regadminnotification/reducer.js","store/csrofficernotification/reducer.js","store/activtylogfinance/reducer.js","store/activtylogmarketer/reducer.js","store/carts/reducer.js","store/sample-collectors/reducer.js","store/sample-collector-test-appointments/reducer.js","store/quality-certificates/reducer.js","store/payment-statuss/reducer.js","store/advertisements/reducer.js","store/advertisement-price-lists/reducer.js","store/advertisement-live/reducer.js","store/lab-advertisements/reducer.js","store/lab-advertisement-requests/reducer.js","store/labs-listttt/reducer.js","store/shared-percentage-pending-fee/reducer.js","store/discount-labhazir/reducer.js","store/labs-list/reducer.js","store/discount-lab/reducer.js","store/territories-list/reducer.js","store/lab-names/reducer.js","store/only-medical-tests-list/reducer.js","store/csr-territory-list/reducer.js","store/auditor-territory-list/reducer.js","store/discount-labhazir-to-lab/reducer.js","store/referrel-fee-to-lab/reducer.js","store/feedbacks/reducer.js","store/labs-rating/reducer.js","store/labs-testing/reducer.js","store/test-appointments/reducer.js","store/patient-test-appointments/reducer.js","store/b2b-referred-patients/reducer.js","store/b2b-lab-shares/reducer.js","store/b2bcheckout/reducer.js","store/donor-referred-appointments/reducer.js","store/donorcheckout/reducer.js","store/b2b-all-clients/reducer.js","store/patient-feedback/reducer.js","store/complaints/reducer.js","store/csr-complaints/reducer.js","store/csr-admin-appointments/reducer.js","store/csr-comments/reducer.js","store/patients-list/reducer.js","store/test-descriptions/reducer.js","store/checkout/reducer.js","store/invoices/reducer.js","store/adv-invoice/reducer.js","store/account-statements/reducer.js","store/donor-account-statements/reducer.js","store/donors-account-statements/reducer.js","store/b2b-account-statements/reducer.js","store/bank-account-statements/reducer.js","store/staff/reducer.js","store/auditor/reducer.js","store/chat-box/reducer.js","store/registration-admin/reducer.js","store/finance-admin/reducer.js","store/csr-admin/reducer.js","store/auditor-admin/reducer.js","store/inpayments/reducer.js","store/outpayments/reducer.js","store/banktransferdetails/reducer.js","store/createbank/reducer.js","store/bankaccount/reducer.js","store/corporatedata/reducer.js","store/activtylogAuditor/reducer.js","store/review-performance/reducer.js","store/reducers.js","store/layout/saga.js","helpers/api_helper.js","helpers/fakebackend_helper.js","store/dashboard/saga.js","helpers/django-token-access/auth-token-header.js","helpers/django_api_helper.js","store/auth/register/saga.js","store/auth/patientinformation/saga.js","store/auth/b2bclientinformation/saga.js","store/auth/donorinformation/saga.js","store/auth/labinformation/saga.js","store/auth/corporateinformation/saga.js","store/auth/login/saga.js","store/auth/forgetpwd/saga.js","store/auth/confirmpwd/saga.js","store/auth/changepwd/saga.js","store/auth/labprofile/saga.js","store/auth/b2bprofile/saga.js","store/auth/donorprofile/saga.js","store/auth/staffprofile/saga.js","store/auth/samplecollectorprofile/saga.js","store/auth/labsettings/saga.js","store/auth/payments/saga.js","store/auth/donorsettings/saga.js","store/auth/patientprofile/saga.js","store/auth/corporateprofile/saga.js","store/labmarket/saga.js","store/testmarket/saga.js","store/profilemarket/saga.js","store/packagemarket/saga.js","store/radiologymarket/saga.js","store/test-list/saga.js","store/offered-tests/saga.js","store/pathologists/saga.js","store/activtylog/saga.js","store/activtylogfinance/saga.js","store/activtylogmarketer/saga.js","store/samplenotification/saga.js","store/marketernotification/saga.js","store/csradminnotification/saga.js","store/regadminnotification/saga.js","store/csrofficernotification/saga.js","store/bankaccounts/saga.js","store/carts/saga.js","store/quotes/saga.js","store/labs-list-pending/saga.js","store/shared-percentage-pending-fee/saga.js","store/sample-collectors/saga.js","store/sample-collector-test-appointments/saga.js","store/quality-certificates/saga.js","store/payment-statuss/saga.js","store/chat-box/saga.js","store/advertisements/saga.js","store/advertisement-live/saga.js","store/advertisement-price-lists/saga.js","store/lab-advertisements/saga.js","store/lab-advertisement-requests/saga.js","store/discount-labhazir/saga.js","store/discount-labhazir-to-lab/saga.js","store/referrel-fee-to-lab/saga.js","store/labs-list/saga.js","store/labs-listttt/saga.js","store/labs-listttt/actions.js","store/territories-list/saga.js","store/lab-names/saga.js","store/only-medical-tests-list/saga.js","store/csr-territory-list/saga.js","store/auditor-territory-list/saga.js","store/discount-lab/saga.js","store/feedbacks/saga.js","store/labs-rating/saga.js","store/labs-testing/saga.js","store/labs-testing/actions.js","store/test-appointments/saga.js","store/patient-test-appointments/saga.js","store/b2b-referred-patients/saga.js","store/donor-referred-appointments/saga.js","store/donorcheckout/saga.js","store/b2bcheckout/saga.js","store/b2b-lab-shares/saga.js","store/b2b-all-clients/saga.js","store/patient-feedback/saga.js","store/checkout/saga.js","store/createbank/saga.js","store/corporatedata/saga.js","store/bankaccount/saga.js","store/invoices/saga.js","store/adv-invoice/saga.js","store/inpayments/saga.js","store/outpayments/saga.js","store/banktransferdetails/saga.js","store/complaints/saga.js","store/csr-complaints/saga.js","store/csr-admin-appointments/saga.js","store/csr-comments/saga.js","store/patients-list/saga.js","store/test-descriptions/saga.js","store/account-statements/saga.js","store/donor-account-statements/saga.js","store/donors-account-statements/saga.js","store/b2b-account-statements/saga.js","store/bank-account-statements/saga.js","store/bank-account-statements/actions.js","store/staff/saga.js","store/auditor/saga.js","store/registration-admin/saga.js","store/finance-admin/saga.js","store/csr-admin/saga.js","store/auditor-admin/saga.js","store/activtylogAuditor/saga.js","store/review-performance/saga.js","store/sagas.js","store/index.js","index.js"],"names":["Breadcrumbs","Fragment","xs","className","this","props","breadcrumbItem","listClassName","to","title","active","Component","CHANGE_LAYOUT","CHANGE_LAYOUT_WIDTH","CHANGE_SIDEBAR_THEME","CHANGE_SIDEBAR_THEME_IMAGE","CHANGE_SIDEBAR_TYPE","CHANGE_TOPBAR_THEME","TOGGLE_RIGHT_SIDEBAR","SHOW_RIGHT_SIDEBAR","HIDE_RIGHT_SIDEBAR","CHANGE_PRELOADER","changeLayout","layout","type","payload","changeLayoutWidth","width","changeSidebarTheme","theme","changeSidebarThemeImage","themeimage","changeSidebarType","sidebarType","isMobile","changeTopbarTheme","topbarTheme","toggleRightSidebar","API_SUCCESS","API_FAIL","GET_CHARTS_DATA","apiFail","actionType","error","getChartsData","periodType","REGISTER_USER","REGISTER_USER_SUCCESSFUL","REGISTER_USER_FAILED","registerUser","user","registerUserSuccessful","console","log","registerUserFailed","ADD_PATIENT_INFORMATION","ADD_PATIENT_INFORMATION_SUCCESSFUL","ADD_PATIENT_INFORMATION_FAILED","GET_TERRITORIES_LIST","GET_TERRITORIES_LIST_SUCCESS","GET_TERRITORIES_LIST_FAIL","GET_CORPORATES_LIST","GET_CORPORATES_LIST_SUCCESS","GET_CORPORATES_LIST_FAIL","getTerritoriesList","addPatientInformationSuccessful","patient","id","addPatientInformationFailed","ADD_B2BCLIENT_INFORMATION","ADD_B2BCLIENT_INFORMATION_SUCCESSFUL","ADD_B2BCLIENT_INFORMATION_FAILED","addB2bClientInformationSuccessful","b2bClient","addB2bClientInformationFailed","ADD_DONOR_INFORMATION","ADD_DONOR_INFORMATION_SUCCESSFUL","ADD_DONOR_INFORMATION_FAILED","addDonorInformationSuccessful","donor","addDonorInformationFailed","GET_MAIN_LABS","GET_MAIN_LABS_SUCCESS","GET_MAIN_LABS_FAIL","ADD_LAB_INFORMATION","ADD_LAB_INFORMATION_SUCCESSFUL","ADD_LAB_INFORMATION_FAILED","getMainLabsSuccess","labs","addLabInformationSuccessful","lab","addLabInformationFailed","ADD_CORPORATE_INFORMATION","ADD_CORPORATE_INFORMATION_SUCCESSFUL","ADD_CORPORATE_INFORMATION_FAILED","addCorporateInformationSuccessful","corporate","addCorporateInformationFailed","LOGIN_USER","LOGIN_SUCCESS","LOGOUT_USER","LOGOUT_USER_SUCCESS","API_ERROR","loginSuccess","apiError","FORGET_PASSWORD","FORGET_PASSWORD_SUCCESS","FORGET_PASSWORD_ERROR","userForgetPasswordError","message","CONFIRM_PASSWORD","CONFIRM_PASSWORD_SUCCESS","CONFIRM_PASSWORD_ERROR","userConfirmPasswordError","CHANGE_PASSWORD","CHANGE_PASSWORD_SUCCESS","CHANGE_PASSWORD_ERROR","userChangePasswordError","GET_LAB_PROFILE","GET_LAB_PROFILE_SUCCESS","GET_LAB_PROFILE_FAIL","UPDATE_LAB_PROFILE","UPDATE_LAB_PROFILE_SUCCESS","UPDATE_LAB_PROFILE_FAIL","getLabProfile","getLabProfileSuccess","labProfile","updateLabProfileSuccess","GET_B2B_PROFILE","GET_B2B_PROFILE_SUCCESS","GET_B2B_PROFILE_FAIL","UPDATE_B2B_PROFILE","UPDATE_B2B_PROFILE_SUCCESS","UPDATE_B2B_PROFILE_FAIL","getB2bProfile","updateB2bProfileSuccess","b2bProfile","GET_DONOR_PROFILE","GET_DONOR_PROFILE_SUCCESS","GET_DONOR_PROFILE_FAIL","UPDATE_DONOR_PROFILE","UPDATE_DONOR_PROFILE_SUCCESS","UPDATE_DONOR_PROFILE_FAIL","getDonorProfile","updateDonorProfileSuccess","donorProfile","GET_STAFF_PROFILE","GET_STAFF_PROFILE_SUCCESS","GET_STAFF_PROFILE_FAIL","UPDATE_STAFF_PROFILE","UPDATE_STAFF_PROFILE_SUCCESS","UPDATE_STAFF_PROFILE_FAIL","getStaffProfile","updateStaffProfileSuccess","staffProfile","GET_SAMPLE_COLLECTOR_PROFILE","GET_SAMPLE_COLLECTOR_PROFILE_SUCCESS","GET_SAMPLE_COLLECTOR_PROFILE_FAIL","UPDATE_SAMPLE_COLLECTOR_PROFILE","UPDATE_SAMPLE_COLLECTOR_PROFILE_SUCCESS","UPDATE_SAMPLE_COLLECTOR_PROFILE_FAIL","getSampleCollectorProfile","updateSampleCollectorProfileSuccess","sampleCollectorProfile","GET_LAB_SETTINGS","GET_LAB_SETTINGS_SUCCESS","GET_LAB_SETTINGS_FAIL","UPDATE_LAB_SETTINGS","UPDATE_LAB_SETTINGS_SUCCESS","UPDATE_LAB_SETTINGS_FAIL","updateLabSettingsSuccess","labSettings","GET_LAB_PAYMENTS","GET_LAB_PAYMENTS_SUCCESS","GET_LAB_PAYMENTS_FAIL","UPDATE_LAB_PAYMENTS","UPDATE_LAB_PAYMENTS_SUCCESS","UPDATE_LAB_PAYMENTS_FAIL","updateLabPaymentsSuccess","labPayments","GET_DONOR_SETTINGS","GET_DONOR_SETTINGS_SUCCESS","GET_DONOR_SETTINGS_FAIL","UPDATE_DONOR_SETTINGS","UPDATE_DONOR_SETTINGS_SUCCESS","UPDATE_DONOR_SETTINGS_FAIL","updateDonorSettingsSuccess","donorSettings","GET_PATIENT_PROFILE","GET_PATIENT_PROFILE_SUCCESS","GET_PATIENT_PROFILE_FAIL","UPDATE_PATIENT_PROFILE","UPDATE_PATIENT_PROFILE_SUCCESS","UPDATE_PATIENT_PROFILE_FAIL","getPatientProfile","updatePatientProfileSuccess","patientProfile","GET_CORPORATE_PROFILE","GET_CORPORATE_PROFILE_SUCCESS","GET_CORPORATE_PROFILE_FAIL","UPDATE_CORPORATE_PROFILE","UPDATE_CORPORATE_PROFILE_SUCCESS","UPDATE_CORPORATE_PROFILE_FAIL","getCorporateProfile","getCorporateProfileSuccess","CorporateProfile","updateCorporateProfile","updateCorporateProfileSuccess","GET_NEARBY_LABS","GET_NEARBY_LABS_SUCCESS","GET_NEARBY_LABS_FAIL","GET_CORPORATE_LABS","GET_CORPORATE_LABS_SUCCESS","GET_CORPORATE_LABS_FAIL","GET_REGION_WISE_ADVERTISEMENT","GET_REGION_WISE_ADVERTISEMENT_SUCCESS","GET_REGION_WISE_ADVERTISEMENT_FAIL","GET_ADV_LIVE","GET_ADV_LIVE_SUCCESS","GET_ADV_LIVE_FAIL","getNearbyLabs","locationDetails","getCorporateLabs","getAdvLive","GET_REVIEW_PERFORMANCE","GET_REVIEW_PERFORMANCE_SUCCESS","GET_REVIEW_PERFORMANCE_FAIL","GET_REVIEW_PERFORMANCE_TEST","GET_REVIEW_PERFORMANCE_TEST_SUCCESS","GET_REVIEW_PERFORMANCE_TEST_FAIL","getReviewPerformanceFail","getReviewPerformanceTestFail","GET_NEARBY_TESTS","GET_NEARBY_TESTS_SUCCESS","GET_NEARBY_TESTS_FAIL","GET_NEARBY_TESTS_DISCOUNTEDLH","GET_NEARBY_TESTS_DISCOUNTEDLH_SUCCESS","GET_NEARBY_TESTS_DISCOUNTEDLH_FAIL","GET_NEARBY_PROFILES","GET_NEARBY_PROFILES_SUCCESS","GET_NEARBY_PROFILES_FAIL","GET_PROFILES","GET_PROFILES_SUCCESS","GET_PROFILES_FAIL","GET_TESTSS","GET_TESTSS_SUCCESS","GET_TESTSS_FAIL","GET_NEARBY_PACKAGES","GET_NEARBY_PACKAGES_SUCCESS","GET_NEARBY_PACKAGES_FAIL","GET_PACKAGES","GET_PACKAGES_SUCCESS","GET_PACKAGES_FAIL","GET_NEARBY_RADIOLOGY","GET_NEARBY_RADIOLOGY_SUCCESS","GET_NEARBY_RADIOLOGY_FAIL","GET_RADIOLOGY","GET_RADIOLOGY_SUCCESS","GET_RADIOLOGY_FAIL","GET_TESTS","GET_TESTS_SUCCESS","GET_TESTS_FAIL","GET_UNITS","GET_UNITS_SUCCESS","GET_UNITS_FAIL","GET_OFFERED_TESTS","GET_OFFERED_TESTS_SUCCESS","GET_OFFERED_TESTS_FAIL","GET_CORPORATE_TESTS","GET_CORPORATE_TESTS_SUCCESS","GET_CORPORATE_TESTS_FAIL","GET_OFFEREDTEST_REFERRELFEE","GET_OFFEREDTEST_REFERRELFEE_SUCCESS","GET_OFFEREDTEST_REFERRELFEE_FAIL","GET_COFFEREDPROFILE_REFERRELFEE","GET_COFFEREDPROFILE_REFERRELFEE_SUCCESS","GET_COFFEREDPROFILE_REFERRELFEE_FAIL","GET_COFFEREDPACKAGE_REFERRELFEE","GET_COFFEREDPACKAGE_REFERRELFEE_SUCCESS","GET_COFFEREDPACKAGE_REFERRELFEE_FAIL","GET_COFFEREDRADIOLOGY_REFERRELFEE","GET_COFFEREDRADIOLOGY_REFERRELFEE_SUCCESS","GET_COFFEREDRADIOLOGY_REFERRELFEE_FAIL","GET_COFFEREDTEST_REFERRELFEE","GET_COFFEREDTEST_REFERRELFEE_SUCCESS","GET_COFFEREDTEST_REFERRELFEE_FAIL","GET_OFFEREDPROFILE_REFERRELFEE","GET_OFFEREDPROFILE_REFERRELFEE_SUCCESS","GET_OFFEREDPROFILE_REFERRELFEE_FAIL","GET_OFFEREDPACKAGE_REFERRELFEE","GET_OFFEREDPACKAGE_REFERRELFEE_SUCCESS","GET_OFFEREDPACKAGE_REFERRELFEE_FAIL","GET_OFFEREDRADIOLOGY_REFERRELFEE","GET_OFFEREDRADIOLOGY_REFERRELFEE_SUCCESS","GET_OFFEREDRADIOLOGY_REFERRELFEE_FAIL","ADD_NEW_OFFERED_TEST","ADD_OFFERED_TEST_SUCCESS","ADD_OFFERED_TEST_FAIL","ADD_NEW_CORPORATE_TEST","ADD_CORPORATE_TEST_SUCCESS","ADD_CORPORATE_TEST_FAIL","ADD_NEW_CORPORATE","ADD_CORPORATE_SUCCESS","ADD_CORPORATE_FAIL","ADD_NEW_OFFERED_MAINTEST","ADD_OFFERED_MAINTEST_SUCCESS","ADD_OFFERED_MAINTEST_FAIL","UPDATE_OFFERED_TEST","UPDATE_OFFERED_TEST_SUCCESS","UPDATE_OFFERED_TEST_FAIL","UPDATE_CORPORATE_TEST","UPDATE_CORPORATE_TEST_SUCCESS","UPDATE_CORPORATE_TEST_FAIL","UPDATE_CORPORATE_STATUS","UPDATE_CORPORATE_STATUS_SUCCESS","UPDATE_CORPORATE_STATUS_FAIL","UPDATE_ACORPORATE_STATUS","UPDATE_ACORPORATE_STATUS_SUCCESS","UPDATE_ACORPORATE_STATUS_FAIL","DELETE_OFFERED_TEST","DELETE_OFFERED_TEST_SUCCESS","DELETE_OFFERED_TEST_FAIL","getCorporateTests","addNewOfferedTest","offeredTest","updateOfferedTestSuccess","updateCorporateTestSuccess","updateCorporateStatus","updateCorporateStatusSuccess","updateACorporateStatusSuccess","deleteOfferedTest","deleteOfferedTestSuccess","GET_TESTS_LIST","GET_TESTS_LIST_SUCCESS","GET_TESTS_LIST_FAIL","GET_CORPORATE_TESTS_LIST","GET_CORPORATE_TESTS_LIST_SUCCESS","GET_CORPORATE_TESTS_LIST_FAIL","GET_PATHOLOGISTS","GET_PATHOLOGISTS_SUCCESS","GET_PATHOLOGISTS_FAIL","ADD_NEW_PATHOLOGIST","ADD_PATHOLOGIST_SUCCESS","ADD_PATHOLOGIST_FAIL","UPDATE_PATHOLOGIST","UPDATE_PATHOLOGIST_SUCCESS","UPDATE_PATHOLOGIST_FAIL","DELETE_PATHOLOGIST","DELETE_PATHOLOGIST_SUCCESS","DELETE_PATHOLOGIST_FAIL","getPathologists","updatePathologistSuccess","pathologist","deletePathologistSuccess","GET_ACTIVITY_LOG","GET_ACTIVITY_LOG_SUCCESS","GET_ACTIVITY_LOG_FAIL","GET_NOTIFICATION","GET_NOTIFICATION_SUCCESS","GET_NOTIFICATION_FAIL","GET_ACTIVITY_LOG_FINANCE","GET_ACTIVITY_LOG_FINANCE_SUCCESS","GET_ACTIVITY_LOG_FINANCE_FAIL","GET_CORPORATE_COMMIT","GET_CORPORATE_COMMIT_SUCCESS","GET_CORPORATE_COMMIT_FAIL","GET_ACTIVITY_LOG_MARKETER","GET_ACTIVITY_LOG_MARKETER_SUCCESS","GET_ACTIVITY_LOG_MARKETER_FAIL","GET_LAB_ACTIVITY_LOG_MARKETER","GET_LAB_ACTIVITY_LOG_MARKETER_SUCCESS","GET_LAB_ACTIVITY_LOG_MARKETER_FAIL","GET_BANKACCOUNTS","GET_BANKACCOUNTS_SUCCESS","GET_BANKACCOUNTS_FAIL","UPDATE_BANKACCOUNT","UPDATE_BANKACCOUNT_SUCCESS","UPDATE_BANKACCOUNT_FAIL","getBankaccounts","GET_SAMPLE_NOTIFICATION","GET_SAMPLE_NOTIFICATION_SUCCESS","GET_SAMPLE_NOTIFICATION_FAIL","GET_MARKETER_NOTIFICATION","GET_MARKETER_NOTIFICATION_SUCCESS","GET_MARKETER_NOTIFICATION_FAIL","GET_CSR_ADMIN_NOTIFICATION","GET_CSR_ADMIN_NOTIFICATION_SUCCESS","GET_CSR_ADMIN_NOTIFICATION_FAIL","GET_REG_ADMIN_NOTIFICATION","GET_REG_ADMIN_NOTIFICATION_SUCCESS","GET_REG_ADMIN_NOTIFICATION_FAIL","GET_CSR_OFFICER_NOTIFICATION","GET_CSR_OFFICER_NOTIFICATION_SUCCESS","GET_CSR_OFFICER_NOTIFICATION_FAIL","GET_ACTIVITY_LOG_AUDITOR","GET_ACTIVITY_LOG_AUDITOR_SUCCESS","GET_ACTIVITY_LOG_AUDITOR_FAIL","API_ENDPOINT","process","POST_LOGIN","POST_REGISTER","POST_FORGET_PASSWORD","POST_CONFIRM_PASSWORD","POST_CHANGE_PASSWORD","POST_PATIENT_INFORMATION","POST_B2BCLIENT_INFORMATION","POST_DONOR_INFORMATION","POST_LAB_INFORMATION","POST_CORPORATE_INFORMATION","GET_LABS","GET_ALL_LABS_LIST","GET_CORPORATE_LIST","GET_CARTS","EMPTY_CART","DELETE_CART","ADD_TO_CART","GET_QUOTES","GET_SAMPLE_COLLECTORS","ADD_NEW_SAMPLE_COLLECTOR","UPDATE_SAMPLE_COLLECTOR","DELETE_SAMPLE_COLLECTOR","ADD_NEW_COLLECTIONPOINT_QUALITY","GET_QUALITY_CERTIFICATES","ADD_NEW_QUALITY_CERTIFICATE","UPDATE_QUALITY_CERTIFICATE","DELETE_QUALITY_CERTIFICATE","GET_ADVERTISEMENTS","ADD_NEW_ADVERTISEMENT","UPDATE_ADVERTISEMENT","DELETE_ADVERTISEMENT","GET_LAB_ADVERTISEMENTS","ADD_NEW_LAB_ADVERTISEMENT","UPDATE_LAB_ADVERTISEMENT","DELETE_LAB_ADVERTISEMENT","GET_LAB_ADVERTISEMENT_REQUESTS","UPDATE_LAB_ADVERTISEMENT_REQUEST","GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED","GET_ADVERTISEMENT_LIVES","GET_ADVERTISEMENT_PRICE_LISTS","ADD_NEW_ADVERTISEMENT_PRICE_LIST","UPDATE_ADVERTISEMENT_PRICE_LIST","DELETE_ADVERTISEMENT_PRICE_LIST","GET_DISCOUNT_LABHAZIR","UPDATE_DISCOUNT_LABHAZIR","UPDATE_DISCOUNT_ALL_LABHAZIR","GET_LABS_LIST","GET_DISCOUNT_LABHAZIRTOLABS","UPDATE_DISCOUNT_LABHAZIRTOLAB","UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB","GET_REFERREL_FEES","GET_PUT_REFERREL_FEES","UPDATE_REFERREL_FEE","UPDATE_REFERREL_ALL_FEE","GET_LABS_LIST_PENDING_FEE","GET_LABS_LIST_APPROVED_FEE","GET_SHARED_PERCENTAGE_PENDING_FEE","GET_SHARED_PERCENTAGE_APPROVED_FEE","UPDATE_SHARED_PERCENTAGE_PENDING_FEE","UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE","GET_DISCOUNT_LAB","UPDATE_DISCOUNT_LAB","UPDATE_DISCOUNT_ALL_LAB","GET_FEEDBACKS","GET_LAB_NAMES_LIST","GET_ONLY_MEDICAL_LIST","GET_CSR_CENTRAL_TERRITORY_LIST","GET_CSR_SOUTH_TERRITORY_LIST","GET_CSR_NORTH_TERRITORY_LIST","GET_AUDITOR_CENTRAL_TERRITORY_LIST","GET_AUDITOR_SOUTH_TERRITORY_LIST","GET_AUDITOR_NORTH_TERRITORY_LIST","ADD_NEW_COLLECTIONPOINT_TESTAPPOINTMENT","GET_TEST_APPOINTMENTS_PENDING_LIST","GET_TEST_APPOINTMENTS_IN_PROCESS_LIST","GET_TEST_APPOINTMENTS_COMPLETED_LIST","UPDATE_TEST_APPOINTMENT","GET_ACCEPTED_LAB_ADVERTISEMENTS","GET_PAYMENT_IN_STATUS_CREATED_LIST","GET_PAYMENT_IN_STATUS_DEPOSITED_LIST","GET_LABS_MOF","GET_LABS_C","GET_PATIENT_TEST_APPOINTMENTS_LIST","GET_B2B_REFERRED_PATIENTS_LIST","GET_B2B_LAB_SHARES_LIST","UPDATE_LAB_SHARE","UPDATE_ALL_LAB_SHARE","GET_B2B_SHARES_LAB_LIST","ADD_NEW_B2B_PAYMENT","GET_DONOR_REFERRED_APPOINTMENTS_LIST","GET_B2B_ALL_CLIENTS_LIST","GET_PATIENTS_LIST","ADD_NEW_LAB_SHARE","GET_B2B_CLIENTS","GET_UNHANDLED_COMPLAINTS","UPDATE_UNHANDLED_COMPLAINTS","GET_HANDLED_COMPLAINTS","GET_CSR_COMPLAINTS","UPDATE_CSR_COMPLAINTS","GET_CSR_APPOINTMENTS","UPDATE_CSR_APPOINTMENTS","ADD_NEW_NOTE_COMPLAINT","GET_NOTES_COMPLAINT","ADD_NEW_NOTE","GET_NOTES","ADD_NEW_MSG","GET_MSGS","GET_TEST_DESCRIPTIONS","GET_LAB_TOKEN","ADD_NEW_DONOR_PAYMENT","ADD_NEW_CREATE_BANK","ADD_NEW_BANK_ACCOUNT","ADD_NEW_CEMPLOYEE_DATA","GET_CEMPLOYEE","GET_LABCORPORATE","GET_ALABCORPORATE","GET_ACORPORATE","GET_RFeeCORPORATE","GET_EMPLOYEECORPORATE","GET_LABSCORPORATE","UPDATE_CEMPLOYEE","ADD_NEW_CEMPLOYEE_FILE","DELETE_CEDATA","DELETE_TESTS_IN_APPOINTMENTS","GET_BANK_ACCOUNTS","GET_BANKS","UPDATE_BANK","ADD_NEW_IN_PAYMENT","GET_IN_PAYMENT","ADD_NEW_OUT_PAYMENT","ADD_NEW_CORPORATE_PAYMENT","GET_OUT_PAYMENT","DELETE_PAYMENTOUT","GET_LIST_DONATIONAPPOINTMENT","GET_LIST_CLABS","ADD_NEW_INVOICE_ADJUSTMENT","GET_LIST_INVOICE","GET_ALL_DONATION_APPOINTMENTS","ADD_NEW_BANK_TRANSFER","UPDATE_BANK_TRANSFER","GET_BANK_TRANSFER","GET_PAYMENT_STATUSS","GET_PAY_STATUSS","GET_DEPOSIT_STATUSS","GET_CLEAR_STATUSS","UPDATE_PAYMENT_STATUS","UPDATE_PAYMENTIN_STATUS","GET_BOUNCEDIN_STATUSS","UPDATE_PAYMENTINBOUNCED_STATUS","GET_PAYMENTOUT_CLEAR_STATUSS","GET_PAYMENTOUT_STATUSS","GET_CREATEDOUT_STATUSS","GET_CREATEDOUTDETAIL_STATUSS","UPDATE_PAYMENTOUT_STATUS","UPDATE_PAYMENTOUTCREATED_STATUS","GET_BOUNCED_STATUSS","GET_CCREATEDOUT_STATUSS","UPDATE_PAYMENTOUTCCREATED_STATUS","ADD_NEW_PATIENT_FEEDBACK","ADD_NEW_COMPLAINT","GET_DONORS","GET_DONORSA","GET_LABS_LISTING","GET_DONORS_LIST","GET_CL_LIST","GET_HOME_SAMPLED_TESTS","GET_DONATION_CHECK","GET_CHECKOUT_ITEMS","ADD_CHECKOUT_DATA","GET_INVOICE_DETAIL","GET_TESTS_IN_APPOINTMENTS","GET_ADV_INVOICE","GET_ACCOUNT_STATEMENTS","GET_BANK_STATEMENTS","GET_DONOR_ACCOUNT_STATEMENTS","GET_DONORS_ACCOUNT_STATEMENTS","GET_B2B_ACCOUNT_STATEMENTS","GET_CLAB_ACCOUNT_STATEMENTS","GET_SAMPLE_COLLECTION_IN_PROCESS_LIST","GET_SAMPLE_COLLECTION_COMPLETED_LIST","UPDATE_SAMPLE_COLLECTION_STATUS","GET_PENDING_CORPORATE","GET_APPROVED_CORPORATE","GET_UNAPPROVED_CORPORATE","APPROVE_UNAPPROVE_CORPORATE","GET_PENDING_LABS","GET_APPROVED_LABS","GET_UNAPPROVED_LABS","APPROVE_UNAPPROVE_LAB","GET_PENDING_B2B_CLIENTS","GET_APPROVED_B2B_CLIENTS","GET_UNAPPROVED_B2B_CLIENTS","APPROVE_UNAPPROVE_B2B_CLIENT","GET_PENDING_DONORS","GET_APPROVED_DONORS","GET_UNAPPROVED_DONORS","APPROVE_UNAPPROVE_DONOR","GET_LABS_RATING","GET_LABS_TESTING","GET_CLEARED_IN_PAYMENTS","GET_APPROVED_IN_PAYMENTS","GET_UNAPPROVED_IN_PAYMENTS","UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT","GET_LC_LIST","GET_CSR_LIST","GET_MARKETERS_LIST","GET_AUDITOR_LIST","GET_FINANCE_OFFICER_LIST","ADD_STAFF","UPDATE_STAFF","DELETE_STAFF","GET_PENDING_COMPLAINTS","GET_PENDING_COMPLAINTS_LABHAZIR","GET_INPROCESS_COMPLAINTS","GET_INPROCESS_COMPLAINTS_LABHAZIR","GET_RESOLVED_COMPLAINTS","GET_RESOLVED_COMPLAINTS_LABHAZIR","ASSIGN_COMPLAINT","GET_PENDING_AUDITS","GET_INPROCESS_AUDITS","GET_PASSED_AUDITS","GET_FAILED_AUDITS","ASSIGN_AUDIT","ADD_LABS_AUDIT","GET_LABS_AUDIT_LIST","GET_LABS_ALL_AUDIT_LIST","GET_ASSIGNED_AUDITS","UPDATE_ASSIGNED_AUDITS","GET_AUDITORS_COMPLETED_AUDITS","GET_LAB_AUDITS","ADD_NEW_AUDIT","UPDATE_AUDIT_STATUS","POST_FAKE_REGISTER","POST_FAKE_LOGIN","POST_FAKE_JWT_LOGIN","POST_FAKE_PASSWORD_FORGET","POST_FAKE_JWT_PASSWORD_FORGET","SOCIAL_LOGIN","POST_EDIT_JWT_PROFILE","POST_EDIT_PROFILE","GET_PRODUCTS","GET_PRODUCTS_DETAIL","ADD_NEW_PROJECT","UPDATE_PROJECT","DELETE_PROJECT","GET_EVENTS","ADD_NEW_EVENT","UPDATE_EVENT","DELETE_EVENT","GET_CATEGORIES","GET_CHATS","GET_GROUPS","GET_CONTACTS","GET_MESSAGES","ADD_MESSAGE","GET_ORDERS","ADD_NEW_ORDER","UPDATE_ORDER","DELETE_ORDER","GET_CART_DATA","GET_CUSTOMERS","ADD_NEW_CUSTOMER","UPDATE_CUSTOMER","DELETE_CUSTOMER","GET_SHOPS","GET_WALLET","GET_CRYPTO_ORDERS","GET_INVOICES","GET_PROJECTS","GET_PROJECT_DETAIL","GET_TASKS","GET_USERS","GET_USER_PROFILE","ADD_NEW_USER","UPDATE_USER","DELETE_USER","GET_INBOX_MAILS","ADD_NEW_INBOX_MAIL","DELETE_INBOX_MAIL","GET_STARRED_MAILS","GET_IMPORTANT_MAILS","GET_DRAFT_MAILS","GET_SENT_MAILS","GET_TRASH_MAILS","GET_WEEKLY_DATA","GET_YEARLY_DATA","GET_MONTHLY_DATA","TOP_SELLING_DATA","GET_EARNING_DATA","GET_CARTS_SUCCESS","GET_CARTS_FAIL","EMPTY_CART_SUCCESS","EMPTY_CART_FAIL","DELETE_CART_SUCCESS","DELETE_CART_FAIL","ADD_TO_CART_SUCCESS","ADD_TO_CART_FAIL","getCarts","deleteCart","cart","deleteCartSuccess","emptyCart","emptyCartSuccess","addToCart","addToCartSuccess","addToCartFail","GET_QUOTES_SUCCESS","GET_QUOTES_FAIL","getQuotes","city_id","test_id","search_type","address","longitude","latitude","km","locationAccessAllowed","GET_SAMPLE_COLLECTORS_SUCCESS","GET_SAMPLE_COLLECTORS_FAIL","ADD_SAMPLE_COLLECTOR_SUCCESS","ADD_SAMPLE_COLLECTOR_FAIL","UPDATE_SAMPLE_COLLECTOR_SUCCESS","UPDATE_SAMPLE_COLLECTOR_FAIL","DELETE_SAMPLE_COLLECTOR_SUCCESS","DELETE_SAMPLE_COLLECTOR_FAIL","getSampleCollectors","addNewSampleCollector","sampleCollector","updateSampleCollectorSuccess","deleteSampleCollectorSuccess","GET_SAMPLE_COLLECTION_IN_PROCESS_LIST_SUCCESS","GET_SAMPLE_COLLECTION_IN_PROCESS_LIST_FAIL","GET_SAMPLE_COLLECTION_COMPLETED_LIST_SUCCESS","GET_SAMPLE_COLLECTION_COMPLETED_LIST_FAIL","UPDATE_SAMPLE_COLLECTION_STATUS_SUCCESS","UPDATE_SAMPLE_COLLECTION_STATUS_FAIL","updateSampleCollectionStatusSuccess","sampleCollectorData","GET_QUALITY_CERTIFICATES_SUCCESS","GET_QUALITY_CERTIFICATES_FAIL","ADD_QUALITY_CERTIFICATE_SUCCESS","ADD_QUALITY_CERTIFICATE_FAIL","UPDATE_QUALITY_CERTIFICATE_SUCCESS","UPDATE_QUALITY_CERTIFICATE_FAIL","DELETE_QUALITY_CERTIFICATE_SUCCESS","DELETE_QUALITY_CERTIFICATE_FAIL","ADD_COLLECTIONPOINT_QUALITY_SUCCESS","ADD_COLLECTIONPOINT_QUALITY_FAIL","getQualityCertificates","updateQualityCertificateSuccess","qualityCertificate","deleteQualityCertificateSuccess","GET_PAYMENT_STATUSS_SUCCESS","GET_PAYMENT_STATUSS_FAIL","GET_PAYMENTOUT_STATUSS_SUCCESS","GET_PAYMENTOUT_STATUSS_FAIL","GET_DEPOSIT_STATUSS_SUCCESS","GET_DEPOSIT_STATUSS_FAIL","GET_CREATEDOUT_STATUSS_SUCCESS","GET_CREATEDOUT_STATUSS_FAIL","GET_CCREATEDOUT_STATUSS_SUCCESS","GET_CCREATEDOUT_STATUSS_FAIL","GET_CREATEDOUTDETAIL_STATUSS_SUCCESS","GET_CREATEDOUTDETAIL_STATUSS_FAIL","GET_PAYMENTOUT_CLEAR_STATUSS_SUCCESS","GET_PAYMENTOUT_CLEAR_STATUSS_FAIL","GET_CLEAR_STATUSS_SUCCESS","GET_CLEAR_STATUSS_FAIL","GET_BOUNCEDIN_STATUSS_SUCCESS","GET_BOUNCEDIN_STATUSS_FAIL","GET_BOUNCED_STATUSS_SUCCESS","GET_BOUNCED_STATUSS_FAIL","UPDATE_PAYMENT_STATUS_SUCCESS","UPDATE_PAYMENT_STATUS_FAIL","UPDATE_PAYMENTOUT_STATUS_SUCCESS","UPDATE_PAYMENTOUT_STATUS_FAIL","UPDATE_PAYMENTIN_STATUS_SUCCESS","UPDATE_PAYMENTIN_STATUS_FAIL","UPDATE_PAYMENTOUTCREATED_STATUS_SUCCESS","UPDATE_PAYMENTOUTCREATED_STATUS_FAIL","UPDATE_PAYMENTOUTCCREATED_STATUS_SUCCESS","UPDATE_PAYMENTOUTCCREATED_STATUS_FAIL","UPDATE_PAYMENTINBOUNCED_STATUS_SUCCESS","UPDATE_PAYMENTINBOUNCED_STATUS_FAIL","GET_LABS_SUCCESS","GET_LABS_FAIL","GET_DONORS_SUCCESS","GET_DONORS_FAIL","GET_BANKS_SUCCESS","GET_BANKS_FAIL","GET_BANK_ACCOUNTS_SUCCESS","GET_BANK_ACCOUNTS_FAIL","DELETE_PAYMENTOUT_SUCCESS","DELETE_PAYMENTOUT_FAIL","getLabs","getBankAccounts","getPaymentOutStatuss","getDepositStatuss","getCCreatedOutStatuss","updatePaymentStatusSuccess","paymentStatus","updatePaymentOutStatus","paymentOutStatus","updatePaymentOutStatusSuccess","updatePaymentInStatus","paymentInStatus","updatePaymentInStatusSuccess","updatePaymentOutCreatedStatuss","paymentOutCreatedStatuss","updatePaymentOutCreatedStatusSuccess","updatePaymentOutCCreatedStatuss","updatePaymentOutCCreatedStatusSuccess","updatePaymentInBouncedStatusSuccess","paymentInBouncedStatus","deletePaymentout","paymentout","deletePaymentoutSuccess","GET_ADVERTISEMENTS_SUCCESS","GET_ADVERTISEMENTS_FAIL","ADD_ADVERTISEMENT_SUCCESS","ADD_ADVERTISEMENT_FAIL","UPDATE_ADVERTISEMENT_SUCCESS","UPDATE_ADVERTISEMENT_FAIL","DELETE_ADVERTISEMENT_SUCCESS","DELETE_ADVERTISEMENT_FAIL","addAdvertisementSuccess","advertisement","updateAdvertisementSuccess","deleteAdvertisementSuccess","GET_ADV_INVOICE_SUCCESS","GET_ADV_INVOICE_FAIL","GET_LAB_ADVERTISEMENTS_SUCCESS","GET_LAB_ADVERTISEMENTS_FAIL","ADD_LAB_ADVERTISEMENT_SUCCESS","ADD_LAB_ADVERTISEMENT_FAIL","UPDATE_LAB_ADVERTISEMENT_SUCCESS","UPDATE_LAB_ADVERTISEMENT_FAIL","DELETE_LAB_ADVERTISEMENT_SUCCESS","DELETE_LAB_ADVERTISEMENT_FAIL","updateLabAdvertisementSuccess","labAdvertisement","deleteLabAdvertisementSuccess","GET_LAB_ADVERTISEMENT_REQUESTS_SUCCESS","GET_LAB_ADVERTISEMENT_REQUESTS_FAIL","GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED_SUCCESS","GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED_FAIL","UPDATE_LAB_ADVERTISEMENT_REQUEST_SUCCESS","UPDATE_LAB_ADVERTISEMENT_REQUEST_FAIL","updateLabAdvertisementRequest","labAdvertisementRequest","updateLabAdvertisementRequestSuccess","GET_ADVERTISEMENT_PRICE_LISTS_SUCCESS","GET_ADVERTISEMENT_PRICE_LISTS_FAIL","ADD_ADVERTISEMENT_PRICE_LIST_SUCCESS","ADD_ADVERTISEMENT_PRICE_LIST_FAIL","UPDATE_ADVERTISEMENT_PRICE_LIST_SUCCESS","UPDATE_ADVERTISEMENT_PRICE_LIST_FAIL","DELETE_ADVERTISEMENT_PRICE_LIST_SUCCESS","DELETE_ADVERTISEMENT_PRICE_LIST_FAIL","getAdvertisementPriceLists","updateAdvertisementPriceListSuccess","advertisementPriceList","deleteAdvertisementPriceListSuccess","GET_ADVERTISEMENT_LIVES_SUCCESS","GET_ADVERTISEMENT_LIVES_FAIL","getAdvertisementLives","GET_REFERREL_FEES_SUCCESS","GET_REFERREL_FEES_FAIL","GET_PUT_REFERREL_FEES_SUCCESS","GET_PUT_REFERREL_FEES_FAIL","UPDATE_REFERREL_FEE_SUCCESS","UPDATE_REFERREL_FEE_FAIL","UPDATE_REFERREL_ALL_FEE_SUCCESS","UPDATE_REFERREL_ALL_FEE_FAIL","updateReferrelFeeLab","ReferrelFeeLab","updateReferrelFeeLabSuccess","updateReferrelAllFeeLab","updateReferrelAllFeeLabSuccess","GET_DISCOUNT_LABHAZIRS","GET_DISCOUNT_LABHAZIRS_SUCCESS","GET_DISCOUNT_LABHAZIRS_FAIL","UPDATE_DISCOUNT_LABHAZIR_SUCCESS","UPDATE_DISCOUNT_LABHAZIR_FAIL","UPDATE_DISCOUNT_ALL_LABHAZIR_SUCCESS","UPDATE_DISCOUNT_ALL_LABHAZIR_FAIL","updateDiscountLabHazirSuccess","discountLabHazir","updateDiscountAllLabHazirSuccess","discountAllLabHazir","GET_LABS_LIST_SUCCESS","GET_LABS_LIST_FAIL","GET_LABS_AUDIT_LIST_SUCCESS","GET_LABS_AUDIT_LIST_FAIL","GET_LABS_ALL_AUDIT_LIST_SUCCESS","GET_LABS_ALL_AUDIT_LIST_FAIL","GET_LC_LIST_SUCCESS","GET_LC_LIST_FAIL","GET_DONORS_LIST_SUCCESS","GET_DONORS_LIST_FAIL","GET_CORPORATE_LIST_SUCCESS","GET_CORPORATE_LIST_FAIL","GET_DONORSA_SUCCESS","GET_DONORSA_FAIL","getLabsList","GET_DISCOUNT_LABHAZIRTOLABS_SUCCESS","GET_DISCOUNT_LABHAZIRTOLABS_FAIL","UPDATE_DISCOUNT_LABHAZIRTOLAB_SUCCESS","UPDATE_DISCOUNT_LABHAZIRTOLAB_FAIL","UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB_SUCCESS","UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB_FAIL","updateDiscountLabHazirToLabSuccess","discountLabHazirToLab","updateDiscountAllLabHazirToLabSuccess","GET_DISCOUNT_LAB_SUCCESS","GET_DISCOUNT_LAB_FAIL","UPDATE_DISCOUNT_LAB_SUCCESS","UPDATE_DISCOUNT_LAB_FAIL","UPDATE_DISCOUNT_ALL_LAB_SUCCESS","UPDATE_DISCOUNT_ALL_LAB_FAIL","updateDiscountLabSuccess","discountLabs","updateDiscountAllLabSuccess","discountAllLab","GET_LAB_NAMES_LIST_SUCCESS","GET_LAB_NAMES_LIST_FAIL","getLabNamesList","GET_ONLY_MEDICAL_LIST_SUCCESS","GET_ONLY_MEDICAL_LIST_FAIL","onlyMedicalTestList","GET_CSR_CENTRAL_TERRITORY_LIST_SUCCESS","GET_CSR_CENTRAL_TERRITORY_LIST_FAIL","GET_CSR_SOUTH_TERRITORY_LIST_SUCCESS","GET_CSR_SOUTH_TERRITORY_LIST_FAIL","GET_CSR_NORTH_TERRITORY_LIST_SUCCESS","GET_CSR_NORTH_TERRITORY_LIST_FAIL","getCsrCentralList","getCsrSouthList","getCsrNorthList","GET_AUDITOR_CENTRAL_TERRITORY_LIST_SUCCESS","GET_AUDITOR_CENTRAL_TERRITORY_LIST_FAIL","GET_AUDITOR_SOUTH_TERRITORY_LIST_SUCCESS","GET_AUDITOR_SOUTH_TERRITORY_LIST_FAIL","GET_AUDITOR_NORTH_TERRITORY_LIST_SUCCESS","GET_AUDITOR_NORTH_TERRITORY_LIST_FAIL","getAuditorCentralList","getAuditorSouthList","getAuditorNorthList","GET_LABS_LIST_PENDING_FEE_SUCCESS","GET_LABS_LIST_PENDING_FEE_FAIL","GET_LABS_LIST_APPROVED_FEE_SUCCESS","GET_LABS_LIST_APPROVED_FEE_FAIL","GET_SHARED_PERCENTAGE_PENDING_FEE_SUCCESS","GET_SHARED_PERCENTAGE_PENDING_FEE_FAIL","GET_SHARED_PERCENTAGE_APPROVED_FEE_SUCCESS","GET_SHARED_PERCENTAGE_APPROVED_FEE_FAIL","UPDATE_SHARED_PERCENTAGE_PENDING_FEE_SUCCESS","UPDATE_SHARED_PERCENTAGE_PENDING_FEE_FAIL","UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE_SUCCESS","UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE_FAIL","updateSharedPercentagePendingFeeTest","sharedPercentagePendingFeeTest","updateSharedPercentagePendingFeeTestSuccess","updateSharedPercentageAllPendingFeeTest","sharedPercentageAllPendingFeeTest","updateSharedPercentageAllPendingFeeTestSuccess","GET_FEEDBACKS_SUCCESS","GET_FEEDBACKS_FAIL","getFeedbacks","GET_LABS_RATING_SUCCESS","GET_LABS_RATING_FAIL","GET_LABS_TESTING_SUCCESS","GET_LABS_TESTING_FAIL","ADD_COMPLAINT_SUCCESS","ADD_COMPLAINT_FAIL","GET_HANDLED_COMPLAINTS_SUCCESS","GET_HANDLED_COMPLAINTS_FAIL","GET_UNHANDLED_COMPLAINTS_SUCCESS","GET_UNHANDLED_COMPLAINTS_FAIL","UPDATE_UNHANDLED_COMPLAINTS_SUCCESS","UPDATE_UNHANDLED_COMPLAINTS_FAIL","GET_CSR_COMPLAINTS_SUCCESS","GET_CSR_COMPLAINTS_FAIL","UPDATE_CSR_COMPLAINTS_SUCCESS","UPDATE_CSR_COMPLAINTS_FAIL","GET_NOTES_SUCCESS","GET_NOTES_FAIL","ADD_NOTE_SUCCESS","ADD_NOTE_FAIL","GET_NOTES_COMPLAINT_SUCCESS","GET_NOTES_COMPLAINT_FAIL","ADD_NOTE_COMPLAINT_SUCCESS","ADD_NOTE_COMPLAINT_FAIL","getNotes","GET_CSR_APPOINTMENTS_SUCCESS","GET_CSR_APPOINTMENTS_FAIL","UPDATE_CSR_APPOINTMENTS_SUCCESS","UPDATE_CSR_APPOINTMENTS_FAIL","GET_PATIENTS_LIST_SUCCESS","GET_PATIENTS_LIST_FAIL","GET_TEST_DESCRIPTIONS_SUCCESS","GET_TEST_DESCRIPTIONS_FAIL","GET_TEST_APPOINTMENTS_PENDING_LIST_SUCCESS","GET_TEST_APPOINTMENTS_PENDING_LIST_FAIL","GET_TEST_APPOINTMENTS_IN_PROCESS_LIST_SUCCESS","GET_TEST_APPOINTMENTS_IN_PROCESS_LIST_FAIL","GET_TEST_APPOINTMENTS_COMPLETED_LIST_SUCCESS","GET_TEST_APPOINTMENTS_COMPLETED_LIST_FAIL","UPDATE_TEST_APPOINTMENT_SUCCESS","UPDATE_TEST_APPOINTMENT_FAIL","ADD_COLLECTIONPOINT_TESTAPPOINTMENT_SUCCESS","ADD_COLLECTIONPOINT_TESTAPPOINTMENT_FAIL","GET_LAB_TOKEN_SUCCESS","GET_LAB_TOKEN_FAIL","getLabTokenSuccess","labTokens","data","appointments","tokens","addNewCollectionPointTestAppointment","testAppointment","updateTestAppointment","updateTestAppointmentSuccess","GET_PATIENT_TEST_APPOINTMENTS_LIST_SUCCESS","GET_PATIENT_TEST_APPOINTMENTS_LIST_FAIL","getPatientTestAppointmentsList","ADD_PATIENT_FEEDBACK_SUCCESS","ADD_PATIENT_FEEDBACK_FAIL","addNewPatientFeedback","patientFeedback","GET_HOME_SAMPLED_TESTS_SUCCESS","GET_HOME_SAMPLED_TESTS_FAIL","GET_CHECKOUT_ITEMS_SUCCESS","GET_CHECKOUT_ITEMS_FAIL","ADD_CHECKOUT_DATA_SUCCESS","ADD_CHECKOUT_DATA_FAIL","GET_DONATION_CHECK_SUCCESS","GET_DONATION_CHECK_FAIL","GET_B2B_REFERRED_PATIENTS_LIST_SUCCESS","GET_B2B_REFERRED_PATIENTS_LIST_FAIL","GET_B2B_LAB_SHARES_LIST_SUCCESS","GET_B2B_LAB_SHARES_LIST_FAIL","GET_B2B_SHARES_LAB_LIST_SUCCESS","GET_B2B_SHARES_LAB_LIST_FAIL","UPDATE_LAB_SHARE_SUCCESS","UPDATE_LAB_SHARE_FAIL","UPDATE_ALL_LAB_SHARE_SUCCESS","UPDATE_ALL_LAB_SHARE_FAIL","ADD_LAB_SHARE_SUCCESS","ADD_LAB_SHARE_FAIL","GET_B2B_ALL_CLIENTS_LIST_SUCCESS","GET_B2B_ALL_CLIENTS_LIST_FAIL","ADD_B2B_PAYMENT_SUCCESS","ADD_B2B_PAYMENT_FAIL","GET_B2B_ACCOUNT_STATEMENTS_SUCCESS","GET_B2B_ACCOUNT_STATEMENTS_FAIL","GET_CLAB_ACCOUNT_STATEMENTS_SUCCESS","GET_CLAB_ACCOUNT_STATEMENTS_FAIL","getCLabAccountStatements","GET_BANK_STATEMENTS_SUCCESS","GET_BANK_STATEMENTS_FAIL","GET_DONOR_REFERRED_APPOINTMENTS_LIST_SUCCESS","GET_DONOR_REFERRED_APPOINTMENTS_LIST_FAIL","ADD_DONOR_PAYMENT_SUCCESS","ADD_DONOR_PAYMENT_FAIL","GET_DONOR_ACCOUNT_STATEMENTS_SUCCESS","GET_DONOR_ACCOUNT_STATEMENTS_FAIL","GET_DONORS_ACCOUNT_STATEMENTS_SUCCESS","GET_DONORS_ACCOUNT_STATEMENTS_FAIL","ADD_CREATE_BANK_SUCCESS","ADD_CREATE_BANK_FAIL","UPDATE_BANK_SUCCESS","UPDATE_BANK_FAIL","getBanks","updateBankSuccess","bank","ADD_BANK_ACCOUNT_SUCCESS","ADD_BANK_ACCOUNT_FAIL","GET_LABCORPORATE_SUCCESS","GET_LABCORPORATE_FAIL","GET_ALABCORPORATE_SUCCESS","GET_ALABCORPORATE_FAIL","GET_ACORPORATE_SUCCESS","GET_ACORPORATE_FAIL","GET_RFEECORPORATE","GET_RFEECORPORATE_SUCCESS","GET_RFEECORPORATE_FAIL","GET_EMPLOYEECORPORATE_SUCCESS","GET_EMPLOYEECORPORATE_FAIL","GET_LABSCORPORATE_SUCCESS","GET_LABSCORPORATE_FAIL","ADD_CEMPLOYEE_DATA_SUCCESS","ADD_CEMPLOYEE_DATA_FAIL","ADD_CEMPLOYEE_FILE_SUCCESS","ADD_CEMPLOYEE_FILE_FAIL","UPDATE_CEMPLOYEE_SUCCESS","UPDATE_CEMPLOYEE_FAIL","DELETE_CEDATA_SUCCESS","DELETE_CEDATA_FAIL","getALabCorporateSuccess","cemployeeData","getACorporateSuccess","getRFeeCorporateSuccess","getLabCorporateSuccess","getEmployeeCorporate","getEmployeeCorporateSuccess","getLabsCorporateSuccess","addCemployeeDataSuccess","addCemployeefileSuccess","updateCemployee","cemployee","updateCemployeeSuccess","deletecedataSuccess","GET_INVOICE_DETAIL_SUCCESS","GET_INVOICE_DETAIL_FAIL","GET_TESTS_IN_APPOINTMENTS_SUCCESS","GET_TESTS_IN_APPOINTMENTS_FAIL","DELETE_TESTS_IN_APPOINTMENTS_SUCCESS","DELETE_TESTS_IN_APPOINTMENTS_FAIL","GET_ADVINVOICE_DETAIL_SUCCESS","GET_ADVINVOICE_DETAIL_FAIL","UPDATE_PAYMENT_INFO","UPDATE_PAYMENT_INFO_SUCCESS","UPDATE_PAYMENT_INFO_FAIL","getInvoiceDetail","deleteTestsInAppointmentSuccess","updatePaymentInfo","GET_ACCOUNT_STATEMENTS_SUCCESS","GET_ACCOUNT_STATEMENTS_FAIL","GET_ACCEPTED_LAB_ADVERTISEMENTS_SUCCESS","GET_ACCEPTED_LAB_ADVERTISEMENTS_FAIL","GET_IN_PAYMENT_SUCCESS","GET_IN_PAYMENT_FAIL","ADD_IN_PAYMENT_SUCCESS","ADD_IN_PAYMENT_FAIL","GET_LABS_MOF_SUCCESS","GET_LABS_MOF_FAIL","GET_LABS_C_SUCCESS","GET_LABS_C_FAIL","GET_LIST_DONATIONAPPOINTMENT_SUCCESS","GET_LIST_DONATIONAPPOINTMENT_FAIL","GET_LIST_CLABS_SUCCESS","GET_LIST_CLABS_FAIL","GET_LIST_INVOICE_SUCCESS","GET_LIST_INVOICE_FAIL","GET_OUT_PAYMENT_SUCCESS","GET_OUT_PAYMENT_FAIL","ADD_OUT_PAYMENT_SUCCESS","ADD_OUT_PAYMENT_FAIL","ADD_CORPORATE_PAYMENT_SUCCESS","ADD_CORPORATE_PAYMENT_FAIL","ADD_INVOICE_ADJUSTMENT_SUCCESS","ADD_INVOICE_ADJUSTMENT_FAIL","GET_B2B_CLIENTS_SUCCESS","GET_B2B_CLIENTS_FAIL","getB2bClients","getListDonationAppointment","addNewOutPayment","outPayment","GET_BANK_TRANSFER_SUCCESS","GET_BANK_TRANSFER_FAIL","ADD_BANK_TRANSFER_SUCCESS","ADD_BANK_TRANSFER_FAIL","UPDATE_BANK_TRANSFER_SUCCESS","UPDATE_BANK_TRANSFER_FAIL","getBankTransfer","updateBankTransferSuccess","bankTransfer","GET_CSR_LIST_SUCCESS","GET_CSR_LIST_FAIL","GET_MARKETERS_LIST_SUCCESS","GET_MARKETERS_LIST_FAIL","GET_AUDITOR_LIST_SUCCESS","GET_AUDITOR_LIST_FAIL","GET_FINANCE_OFFICER_LIST_SUCCESS","GET_FINANCE_OFFICER_LIST_FAIL","ADD_STAFF_SUCCESS","ADD_STAFF_FAIL","UPDATE_STAFF_SUCCESS","UPDATE_STAFF_FAIL","DELETE_STAFF_SUCCESS","DELETE_STAFF_FAIL","getCSRList","getAuditorList","getAuditorListSuccess","auditorList","addStaffSuccess","staff","addStaffFail","updateStaff","updateStaffSuccess","deleteStaff","deleteStaffSuccess","GET_ASSIGNED_AUDITS_SUCCESS","GET_ASSIGNED_AUDITS_FAIL","GET_LAB_AUDITS_SUCCESS","GET_LAB_AUDITS_FAIL","ADD_AUDIT_SUCCESS","ADD_AUDIT_FAIL","UPDATE_ASSIGNED_AUDITS_SUCCESS","UPDATE_ASSIGNED_AUDITS_FAIL","GET_AUDITORS_COMPLETED_AUDITS_SUCCESS","GET_AUDITORS_COMPLETED_AUDITS_FAIL","UPDATE_AUDITS_STATUS","UPDATE_AUDITS_STATUS_SUCCESS","UPDATE_AUDITS_STATUS_FAIL","UpdateAuditStatusSuccess","audit","GET_PENDING_CORPORATE_SUCCESS","GET_PENDING_CORPORATE_FAIL","GET_APPROVED_CORPORATE_SUCCESS","GET_APPROVED_CORPORATE_FAIL","GET_UNAPPROVED_CORPORATE_SUCCESS","GET_UNAPPROVED_CORPORATE_FAIL","APPROVE_UNAPPROVE_CORPORATE_SUCCESS","APPROVE_UNAPPROVE_CORPORATE_FAIL","GET_PENDING_LABS_SUCCESS","GET_PENDING_LABS_FAIL","GET_APPROVED_LABS_SUCCESS","GET_APPROVED_LABS_FAIL","GET_UNAPPROVED_LABS_SUCCESS","GET_UNAPPROVED_LABS_FAIL","APPROVE_UNAPPROVE_LAB_SUCCESS","APPROVE_UNAPPROVE_LAB_FAIL","GET_PENDING_B2B_CLIENTS_SUCCESS","GET_PENDING_B2B_CLIENTS_FAIL","GET_APPROVED_B2B_CLIENTS_SUCCESS","GET_APPROVED_B2B_CLIENTS_FAIL","GET_UNAPPROVED_B2B_CLIENTS_SUCCESS","GET_UNAPPROVED_B2B_CLIENTS_FAIL","APPROVE_UNAPPROVE_B2B_CLIENT_SUCCESS","APPROVE_UNAPPROVE_B2B_CLIENT_FAIL","GET_PENDING_DONORS_SUCCESS","GET_PENDING_DONORS_FAIL","GET_APPROVED_DONORS_SUCCESS","GET_APPROVED_DONORS_FAIL","GET_UNAPPROVED_DONORS_SUCCESS","GET_UNAPPROVED_DONORS_FAIL","APPROVE_UNAPPROVE_DONOR_SUCCESS","APPROVE_UNAPPROVE_DONOR_FAIL","approveUnapproveCorporate","approveUnapproveLab","approveUnapproveB2BClient","approveUnapproveDonor","ConfirmModal","state","isOpen","show","toggle","onCloseClick","centered","lg","style","fontSize","color","onClick","onConfirmClick","DonationAppointmentsList","handleEditAllBtnClicks","setState","b2bLabShare","isEdit","lab_id","handleEditAllBtnClick","isEditAll","handleSelectGroup","selectedGroup","value","onPaginationPageChange","page","node","current","pagination","options","onPageChange","toggleDeleteModal","prevState","deleteModal","handleEditBtnClick","arg","React","createRef","allDonationAppointment","modal","addmodal","confirmModal","user_id","localStorage","getItem","JSON","parse","b2bLabShareListColumns","dataField","text","sort","filter","textFilter","formatter","cellContent","amount","toString","replace","bind","onGetAllDonationAppointments","match","params","prevProps","snapshot","isEmpty","size","SearchBar","Search","pageOptions","sizePerPage","totalSize","length","custom","defaultSorted","order","fluid","Breadcrumb","map","index","undefined","lab_name","paginationFactory","keyField","columns","paginationProps","paginationTableProps","search","toolkitprops","sm","searchProps","xl","baseProps","classes","bordered","striped","headerWrapperClasses","responsive","ref","filterFactory","connect","financeAdmin","dispatch","ownProps","getAllDonationAppointments","withRouter","GET_ALL_DONATION_APPOINTMENTS_SUCCESS","GET_ALL_DONATION_APPOINTMENTS_FAIL","GET_ALL_LABS_LIST_SUCCESS","GET_ALL_LABS_LIST_FAIL","GET_CLEARED_IN_PAYMENTS_SUCCESS","GET_CLEARED_IN_PAYMENTS_FAIL","GET_APPROVED_IN_PAYMENTS_SUCCESS","GET_APPROVED_IN_PAYMENTS_FAIL","GET_UNAPPROVED_IN_PAYMENTS_SUCCESS","GET_UNAPPROVED_IN_PAYMENTS_FAIL","UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT_SUCCESS","UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT_FAIL","updateApproveUnapproveInPaymentSuccess","GET_PENDING_COMPLAINTS_SUCCESS","GET_PENDING_COMPLAINTS_FAIL","GET_PENDING_COMPLAINTS_LABHAZIR_SUCCESS","GET_PENDING_COMPLAINTS_LABHAZIR_FAIL","GET_INPROCESS_COMPLAINTS_SUCCESS","GET_INPROCESS_COMPLAINTS_FAIL","GET_INPROCESS_COMPLAINTS_LABHAZIR_SUCCESS","GET_INPROCESS_COMPLAINTS_LABHAZIR_FAIL","GET_RESOLVED_COMPLAINTS_SUCCESS","GET_RESOLVED_COMPLAINTS_FAIL","GET_RESOLVED_COMPLAINTS_LABHAZIR_SUCCESS","GET_RESOLVED_COMPLAINTS_LABHAZIR_FAIL","ASSIGN_COMPLAINT_SUCCESS","ASSIGN_COMPLAINT_FAIL","assignComplaint","GET_PENDING_AUDITS_SUCCESS","GET_PENDING_AUDITS_FAIL","GET_INPROCESS_AUDITS_SUCCESS","GET_INPROCESS_AUDITS_FAIL","GET_PASSED_AUDITS_SUCCESS","GET_PASSED_AUDITS_FAIL","GET_FAILED_AUDITS_SUCCESS","GET_FAILED_AUDITS_FAIL","ASSIGN_AUDIT_SUCCESS","ASSIGN_AUDIT_FAIL","ADD_LABS_AUDIT_SUCCESS","ADD_LABS_AUDIT_FAIL","assignAudit","GET_MSGS_SUCCESS","GET_MSGS_FAIL","ADD_MSG_SUCCESS","ADD_MSG_FAIL","getMsgs","addNewMsg","msg","DISTRICTS","label","CITIES","LabProfile","toDataURL","url","fetch","then","response","blob","Promise","resolve","reject","reader","FileReader","onloadend","result","onerror","readAsDataURL","dataURLtoFile","dataurl","filename","arr","split","mime","bstr","atob","n","u8arr","Uint8Array","charCodeAt","File","name","logo","owner_name","registration_no","national_taxation_no","lab_experience","email","phone","landline","city","district","complaint_handling_email","complaint_handling_phone","is_digital_payment_accepted","is_Receive_Email_On_Booking","is_active","is_blocked","isProfileUpdated","setTimeout","success","province","src","alt","enableReinitialize","initialValues","validationSchema","Yup","shape","trim","required","min","max","positive","integer","matches","onSubmit","values","dataUrl","fileData","at","updateLabProfile","window","scrollTo","top","left","behavior","errors","touched","status","for","onChange","e","target","component","md","multiple","accept","files","pathname","readOnly","styles","control","base","borderColor","placeholder","PatientProfile","updatePatientProfile","payment_terms","payment_request","limit","end_date","reason","dateStr","Date","toISOString","slice","formatDateForInput","cities","selectedCities","parseInt","cityList","i","territoriesList","push","when","is","join","setFieldValue","isMulti","selectedGroups","group","as","rows","cols","CorporateInformation","SampleCollectorProfile","updateSampleCollectorProfile","StaffProfile","updateStaffProfile","Navbar","activateParentDropdown","item","classList","add","parent","parentElement","parent2","parent3","parent4","parent5","parent6","user_type","account_type","uuid","guest_id","filnalur","matchingMenuItem","items","document","getElementById","getElementsByTagName","location","menuOpen","is_assosiatewith_anycorporate","employee_id_card","filnalurl","layoutType","Layout","carts","LabMarket","withTranslation","DeleteModal","onDeleteClick","CartList","onClickDelete","handleDeleteCart","onDeleteCart","onGetCarts","handleEmptyCart","onEmptyCart","history","handleCartClick","patient_id","offered_test_id","test_appointment_id","invoice_id","isDisabled","cartListColumns","hidden","headerStyle","isDummyField","editable","lx","disabled","Link","Header","cartItem","getData","a","cartsData","toggleSearch","isSearch","handlePageClick","toggleDropdown","isDropdownOpen","handleClickOutside","event","dropdownRef","contains","open","count","prevUrl","patient_name","position","toggleMenu","toggleFullscreen","finalUrl","addEventListener","href","queryString","includes","substring","indexOf","URLSearchParams","latitudeFromUrl","get","longitudeFromUrl","interval","setInterval","endsWith","clearInterval","removeEventListener","openLeftMenuCallBack","fullscreenElement","mozFullScreenElement","webkitFullscreenElement","cancelFullScreen","mozCancelFullScreen","webkitCancelFullScreen","documentElement","requestFullscreen","mozRequestFullScreen","webkitRequestFullscreen","Element","ALLOW_KEYBOARD_INPUT","finalLogoutUrl","totalLength","isSmallScreen","innerWidth","openModal","display","closeModal","height","logoLight","logoLightSvg","verticalAlign","marginRight","padding","right","backgroundColor","boxShadow","minWidth","zIndex","listStyleType","margin","textAlign","fontWeight","available_credit","marginLeft","textDecoration","marginTop","alignContent","Tooltip","corporate_name","wallet","userName","availableBalance","lastMonthDifference","lastMonthDifferencePercent","send","receive","withdraw","series","chart","toolbar","dataLabels","enabled","stroke","curve","dashArray","fill","opacity","xaxis","categories","colors","walletHistory","date","currency","amountinUSD","cryptoOrders","coin","valueinUSD","invoiceList","founder","founderAt","invoiceID","company","invoicePrice","orderId","billingAddress","shippingAddress","card","orderDate","orderSummary","price","subTotal","shipping","total","image","projects","img","description","dueDate","commentsCount","team","fullname","skills","startDate","projectDetails","points","link","comments","username","userImg","comment","reply","tasks","members","budget","productsData","category","rating","oldPrice","newPrice","isOffer","offer","reviews","subImage","product1","product7","product8","specification","features","icon","colorOptions","product2a","product2b","product2c","product3a","product3b","product3c","product4a","product4b","product4c","product5a","product5b","product5c","product6a","recentProducts","childComment","orders","billingName","orderdate","badgeclass","methodIcon","paymentMethod","cartData","products","data_attr","grandTotal","discount","shippingCharge","estimatedTax","customerData","walletBalance","joiningDate","shops","product","balance","profileLink","chats","roomId","time","groups","contacts","child","messages","sender","createdAt","inboxmails","read","fav","starredmails","importantmails","draftmails","sentmails","trashmails","events","start","setDate","getDate","end","calenderDefaultCategories","users","designation","tags","userProfile","projectCount","revenue","personalDetail","experiences","iconClass","timeDuration","deadline","yearData","monthData","weekData","janTopSellingData","desc","decTopSellingData","novTopSellingData","octTopSellingData","janEarningData","decEarningData","novEarningData","octEarningData","OfferedTestsList","openPatientModal","PatientModal","test_details","togglePatientModal","btnText","handleOfferedTestClicks","offeredTests","handleDeleteOfferedTest","onDeleteOfferedTest","onGetOfferedTests","handleAPICall","main_lab_tests","onAddNewOfferedMainTest","handleOfferedTestClick","test_name","duration_required","duration_type","sample_type","is_eqa_participation","is_home_sampling_available","is_test_performed","tests","labProfiles","offeredTestListColumns","test_type","shared_percentage","toFixed","onGetTests","onGetLabProfile","onAddNewOfferedTest","onUpdateOfferedTest","testList","flag","j","tag","updateOfferedTest","newOfferedTest","Math","floor","random","selectedOfferedTest","defaultValue","checked","isChecked","getOfferedTests","addNewOfferedMainTest","Button","styled","h1","div","ScrollButton","useState","visible","setVisible","scrolled","scrollTop","justifyContent","bottom","visibility","formatTime","timeString","labId","warn","hours","minutes","toLocaleString","hour","minute","hour12","timeZone","NearbyLabs","openMenu","isMenuOpened","onSelectDiscount","filters","find","onFilterProducts","filteredProducts","nearbyLab","nearbyLabs","onUpdate","render","handle","onChangeRating","modifiedRating","ratingvalues","onSelectRating","onUncheckMark","modifiedData","x","minValue","Infinity","onChangeAddress","bounds","google","maps","LatLngBounds","LatLng","types","componentRestrictions","country","places","SearchBox","addListener","newAddress","handleAddressChange","addressComponents","area","street","currentLatitude","currentLongitude","LabType","onGetNearbyLabs","onGetAdvLive","onGetRegionWiseAdvertisement","advLives","regionWiseAdvertisement","onChangeSearchType","navigator","permissions","query","geolocation","getCurrentPosition","coords","onChangeKm","clearSearch","selectedLab","onChangeLabName","selectedOption","toggleAddressModal","AddressModal","onChangeType","onChangeCity","geocoder","Geocoder","geocode","results","GeocoderStatus","OK","geometry","lat","lng","resetVideo","currentTime","toggleFormVisibility","isFormVisible","toggleDivVisibility","isDivVisible","showModal","handleCancelIconClick","labNamesList","selectedLabName","filteredLabs","labNameInput","filteredLabNames","advLive","activeTab","autoplay","loading","discountData","totalPage","toggleTab","onGetTerritoriesList","onGetLabNamesList","onGetPatientProfile","parseFloat","regionWiseAdvLocationDetails","advLiveLocationDetails","uuidv4","nearbyLabsLocationDetails","nearbyLabsLocationDetailsForB2B","latlng","formattedAddress","formatted_address","alert","tab","currentSection","sections","ClearIndicator","clearValue","sliderStyles","maxWidth","maxHeight","objectFit","settings","dots","infinite","speed","slidesToShow","slidesToScroll","customDots","marginBottom","dot","labNames","animation","val","border","borderRadius","provided","isSearchable","isClearable","components","key","account_id","float","opening_time","closing_time","is_247_opened","opening_day","closing_day","female_collectors","paddingRight","starRatedColor","starEmptyColor","numberOfStars","starDimension","starSpacing","paddingLeft","overflowX","whiteSpace","mtest","mprofile","mpackages","mradiology","mappointment","background","appendDots","Array","isArray","poster","controls","autoPlay","loop","nearby_adv_list","PropTypes","func","array","getRegionWiseAdvertisement","offeredTestsList","stateProps","dispatchProps","INIT_STATE","quotes","action","MedicalTestList","onchangename","selectedOptions","selectedValues","option","handleCurrentLocationSearch","onGetQuotes","handleApiCall","makeApiCall","cityBounds","handleCityChange","selectedCityId","handleTestsChange","selectedTests","selectedTestIds","test","handleAddToCart","onAddToCart","offered_tests","forEach","some","showErrorMessage","showSuccessMessage","showPopup","textColor","popup","createElement","popupContent","transform","messageElement","textContent","appendChild","body","handlePatientFeedbackClick","quote","searchQuery","tooltipContent","onGetonlyMedicalTestList","handleLocationUpdate","isTestsLinkHighlighted","shouldHighlightTestsLink","linkStyles","isFilterApplied","isFilterApplied2","isFilterApplied3","Col","top_lab_details_with_tests","referrelFeeLab","textOverflow","discount_by_labhazir","test_discount","totalDiscount","discountedPrice","reduce","discountByTest","discountByLabhazir","Number","areAllTestIdsInCart","every","FeedbackDetail","review","lab_account_id","feedbacks","feedback","k","patient_account_id","rating_values","moment","rated_at","format","NearbyLabDetail","offered_profiles","offered_packages","offered_radiologies","pathologists","quality_certificates","sample_collectors","corporate_id","alignItems","corporateLab","onGetCorporateLabs","AutocompleteService","getPlacePredictions","input","predictions","PlacesServiceStatus","pakistanPredictions","prediction","structured_formatting","main_text_matched_substrings","offset","terms","term","corporatepatient","innerRef","formik","nearbyLabsData","parsedData","setItem","stringify","NearbyTests","openDescriptionModal","DescriptionModal","description_in_english","description_in_urdu","toggleDescriptionModal","nearbyTest","nearbyTests","onGetNearbyTests","onChangepage","pageNumber","preventDefault","updatedItemsInCart","itemsInCart","calculateTotalPage","itemsPerPage","totalItems","ceil","Testss","advertisementLives","advertisementLive","onGetTestss","nearbyTestsLocationDetails","testssList","lab_discount","all_discount_by_labhazir","textDecorationColor","previous","from","_","next","TestMarket","ProfileMarket","onGetAdvertisementLives","handleBlur","onGetNearbyTestsDiscounted","handleSubmit","onBlur","NearbyProfiles","nearbyProfile","nearbyProfiles","onGetNearbyProfiles","Profiles","onGetProfiles","profileList","NearbyPackage","nearbyPackage","nearbyPackages","onGetNearbyPackages","Packages","onGetPackages","packageList","PackageMarket","nearbyRadiology","onGetNearbyRadiology","Radiology","onGetRadiology","radiologyList","RadiologyMarket","Contact","complaint","labhazir_complainee","subject","complainant","complainee","complaintSuccess","onGetlabs","onAddNewComplaint","labList","togglePopup","otherwise","reload","complaints","addNewComplaint","containerStyle","backgroundImage","affiliate","backgroundSize","backgroundPosition","buttonContainerStyle","borderTop","CarouselPage","isLargeScreen","Login","togglePermissionModal","PermissionModal","togglePasswordVisibility","passwordInput","querySelector","eyeIcon","submittedMessage","elem","attributes","removeAttribute","element","attrs","attr","backdropStyle","modalStyle","password","isLoginInProgress","loginUser","is_associate_with_any_corporate","autoComplete","htmlFor","Register","togglePassword2Visibility","eyeIcon2","usernameFieldError","passwordFieldError","incompleteRegistrationError","usernameError","passwordError","userID","userAccountType","redirectState","password2","oneOf","onFocus","Account","Logout","componentDidMount","logoutUser","PatientInformation","fetchEmployeeCodes","axios","employeeData","employeeCodes","employee_code","validateEmployeeCode","enteredEmployeeIdCard","matchedEmployee","employee_id_cardError","getCorporatesList","corporatesList","addPatientError","addPatientInformation","accountId","B2bClientInformation","website_url","business_logo","b2bclient","addB2bClientError","addB2bClientInformation","DonorInformation","cnic","company_name","is_income_tax_payable","addDonorError","addDonorInformation","mainLabOptionGroup","errorStyle","isFocused","LabInformation","main_lab_account_id","handleTypeChange","handleISOCertificateChange","iso_certificate","iso_certificate_error","branch_name","is_homesampling_offered","home_sampling_charges","state_sampling_charges","state_sampling_time","registered_by","is_registering_for_first_time","marketer_name","marketer_cnic","marketer_email","marketer_phone","marketer_city","getMainLabs","addLabError","lab_staff_name","lab_staff_designation","addLabInformation","addCorporateError","setSubmitting","cityIdArray","addCorporateInformation","ForgetPasswordPage","handleLoginClick","forgetError","forgetSuccessMsg","userForgetPassword","cursor","getFullYear","ForgetPassword","ConfirmPasswordPage","confirmError","confirmSuccessMsg","userConfirmPassword","token","ConfirmPassword","StackedColumnChart","stacked","zoom","plotOptions","bar","horizontal","columnWidth","endingShape","legend","chartSeries","PatientProfileSummary","completedAppointments","inProcessAppointments","monthlyCost","annualCost","completed_appointments","inprocess_appointments","monthly_cost","annual_cost","profileImg","Dashboard","togglemodal","togglesubscribemodal","subscribemodal","linkto","isActive","onGetChartsData","chartsData","t","classNames","fetchData","period","method","headers","json","seriesData","catch","handlePeriodChange","newPeriod","selectedPeriod","yaxis","LabSummary","monthlyRevenue","annualRevenue","monthly_revenue","annual_revenue","userId","B2bProfile","business_name","B2bSummary","FinanceAdminSummary","MarketerAdminSummary","DonorPayment","parent_employee_id","handleProceedClick","cemployeeDatas","employee","relation","Object","keys","onAddcemployeeData","isRequiredFilled","checkedoutData","onGetEmployeeCorporate","employeeList","row","addNewCemployeeData","excel_file","file","onload","workbook","XLSX","sheet","Sheets","SheetNames","excelData","sheet_to_json","validationErrors","validateFile","errorMessage","onAddcemployeefile","readAsBinaryString","requiredFields","missingFields","field","fileType","pop","toLowerCase","addNewCemployeefile","AccountStatements","b2baccountStatements","b2baccountStatement","onGetB2bAccountStatements","scope","transaction_type","ordered_at","order_id","payment_status","payment_method","labhazir_share","b2b_share","Credit","Debit","colSpan","total_amount","total_labhazir_share","total_Credit","total_Debit","getB2bAccountStatements","handleDeletePathologist","onDeletecedata","selectedcorporate","selectedType","isLoading","onGetCLabAccountStatements","selectFilter","getFilterValue","filterText","remening_quota","paymentCreatedStatus","start_date","day","month","getMonth","year","statement","employee_id","onUpdateCemployee","getColumns","corporateEmployeeOptions","Set","EmployeeStatus","filteredStatements","EmployeeFilter","TypeFilter","isValid","TestsList","openOtherModal","OtherModal","toggleOtherModal","handleApprovedEvent","toggleMessageModal","messageModal","openMessageModal","arg1","arg2","arg3","arg4","average_price","selectedTest","selectedname","selectedtype","selectedaveragePrice","testsList","assignedTo","ongetCorporateTestsList","onAddNewCorporateTest","testsListListColumns","averagePrice","getCorporateTestsList","addNewCorporateTest","onGetCorporateTests","added_by","endDate","duration","diff","days","formattedDuration","test_status","onUpdateCorporateTest","nullable","updateCorporateTest","handleFilterChange","isSettledFilter","handleCorporateSelect","selectedCorporate","getFilteredTotal","totalAmount","acc","totalReceivable","receivable","totalPayable","plateform_fees","exportToExcel","fieldsToExport","dataToExport","rowData","wb","json_to_sheet","excelBuffer","bookType","Blob","saveAs","openLabModal","LabModal","lab_phone","lab_city","lab_address","toggleLabModal","uniqueLabNames","filteredData","is_settled","filteredTotal","labName","employee_name","onMouseEnter","lab_type","appointment_status","headerFormatter","column","colIndex","sortElement","filterElement","flexDirection","lab_email","Status","onGetLabsCorporate","getLabsCorporate","OutPaymentsForm","handleSubmitClicks","payment_for","tax","payment_at","cheque_no","cheque_image","onAddNewCorporatePayment","handleAmountChange","enteredAmount","isNaN","amountExceedsLimit","absoluteSelectedAmount","abs","selectedAmount","handleTaxChange","enteredTax","taxInputError","newAmount","round","outPayments","corporateProfiles","current_amount","originalAmount","successMessage","onGetCorporateProfileforpayment","labsMof","onGetLabsc","listDonation","onGetListDonationAppointment","donationlabList","label1","label2","DonationAppointmentList","donation","corporationId","String","corporation","profileId","isFeesValid","isCorporationValid","isPaymentStatusValid","hasDues","dues","hasValidLabNameOrBranch","mainbranch","unshift","CardAppointmentList","allAppointmentIds","selectedData","appointment","getLabsc","addNewCorporatePayment","getCorporateProfileforpayment","PaymentStatussList","handlePaymentStatusClicks","deposit_slip","paymentStatuss","onDeletePaymentout","onGetCCreatedOutStatuss","handlePaymentStatusClick","verified_by","bankaccount_id","handleSubmitClick","handleSelectChange","selectedValue","handleCreateClick","bankAccounts","onGetbankAccounts","isDonation","onUpdatePaymentOutCCreatedStatuss","hasData","bankaccountList","bank_name","account_no","paymentStatusListColumns","hiddenEditFlag","hiddentEditFlag","selected","MsgsList","activitylogfinance","onGetCorporateCommit","actions","created_at","corporate_payment_id","old_value","new_value","getCorporateCommit","setPaymentStatuss","printRef","useRef","useEffect","fetchPaymentStatuss","paymentDetail","handleDownload","html2canvas","canvas","imgData","doc","jsPDF","imgHeight","heightLeft","addImage","addPage","save","appointment_id","subKey","employee_type","print","LabsLists","toggles","labsList","selectedLabId","selectedLabEmail","selectedLabPhone","selectedLabLandline","selectedLabAddress","selectedLabCity","selectedLabNTN","selectedLablogo","selectedLabPT","urlToDataURL","imageUrl","onGetDonorsList","corporate_address","corporate_phone","corporate_email","user_name","paymentRequest","lab_payable","lh_payable","labsListListColumns","clipboard","writeText","profile","disabledTests","isPaymentUpdated","ongetTestsList","step","role","autoFocus","getTestsList","SampleCollectorRegister","togglePassword1Visibility","SampleCollectorsList","sampleCollectors","collectorImg","onAddNewSampleCollector","gender","photo","newSampleCollector","selectedSampleCollector","handleSampleCollectorClicks","handleDeleteSampleCollector","onDeleteSampleCollector","onGetSampleCollectors","handleSampleCollectorClick","sampleCollectorListColumns","onUpdateSampleCollector","updateSampleCollector","deleteSampleCollector","QualityCertificatesList","handleQualityCertificateClicks","certificateImg","qualityCertificates","handleDeleteQualityCertificate","onDeleteQualityCertificate","onGetQualityCertificates","handleQualityCertificateClick","certificate_type","certificate","expiry_date","main_lab_quality","onAddNewCollectionPointQuality","qualityCertificateListColumns","onAddNewQualityCertificate","onUpdateQualityCertificate","updateQualityCertificate","newQualityCertificate","sub_certificate_type","addNewQualityCertificate","deleteQualityCertificate","addNewCollectionPointQuality","PathologistsList","handlePathologistClicks","onDeletePathologist","onGetPathologists","handlePathologistClick","qualification","speciality","pmdc_reg_no","is_available_for_consultation","is_available_on_whatsapp","is_associated_with_pap","pathologistListColumns","onAddNewPathologist","onUpdatePathologist","updatePathologist","newPathologist","selectedPathologist","addNewPathologist","deletePathologist","TestAppointmentsPendingList","toggleappointmentmodal","appointmentmodal","rowStyleFormat","rowIdx","is_state_sampling_availed","toggleConfirmModal","patient_age","ageFormat","patient_gender","patient_address","patient_city","patient_phone","handleTestAppointmentClicks","onClickAccept","appointmentId","handeAcceptPayment","onGetTestAppointmentsPendingList","onUpdatePaymentInfo","handleTestAppointmentClick","estimated_sample_collection_at","appointment_requested_at","handleTestAppointmentType","main_lab_appointments","onAddNewCollectionPointTestAppointment","now","testAppointments","clone","endOf","startOf","testAppointmentListColumns","booked_at","is_home_sampling_availed","true","false","onUpdateTestAppointment","dateFormat","defaultDate","handleDateChange","rowStyle","testAppointmentsPendingList","getTestAppointmentsPendingList","LabTokens","onGetLabTokens","updatedTestAppointments","feedbackListColumns","token_starting_value","token_ending_value","total_tokens","used_tokens","remaining_tokens","pending_appointments_count","confirmed_appointments_count","getLabToken","TestAppointmentsInProcessList","openReasonModal","reasonModal","toggleReasonModal","resultFile","patient_unique_id","reschedule_reason","reschedule_count","rescheduled_at","result_type","collector_name","assigned_to","isRescheduled","openReshedualModal","ReshedualModal","onGetTestAppointmentsInProcessList","toggleReshedualModal","PaymentModal","estimated_result_uploading_at","patientTestAppointment","sample_collected_at","collection_status","sampleCollectorList","rescheduledBy","testAppointmentsInProcessList","getTestAppointmentsInProcessList","TestAppointmentsCompletedList","onGetTestAppointmentsCompletedList","testAppointmentsCompletedList","getTestAppointmentsCompletedList","FeedbacksList","onGetFeedbacks","InvoiceDetail","printInvoice","sendInvoice","scale","dpi","pdf","onGetInvoiceDetail","invoiceDetail","patient_email","lab_ntn","fgColor","bgColor","paid_at","invoice_generated_at","test_categories","discount_by_labhazird_by_test","total_appointment","charges_except_total_dues","total_dues","invoices","AdvertisementsList","declined_reason","handleAdvertisementClicks","advertisementImg","labAdvertisements","handleDeleteAdvertisement","onDeleteAdvertisement","onGetLabAdvertisements","handleAdvertisementClick","dateString","posted_at","posted_till","request_status","advertisementPriceLists","advertisementListColumns","onGetAdvertisementPriceLists","myadvertisementPriceList","number_of_days","onAddNewLabAdvertisement","onUpdateLabAdvertisement","updateLabAdvertisement","newAdvertisement","getLabAdvertisements","addNewLabAdvertisement","deleteLabAdvertisement","payable","CorporateName","newEntries","existingEntriesCount","sum_appointments","currentTimestamp","timestamp","newEntryIds","entry","filteredTests","uniqueCorporateNames","uniqueEmployeeCodes","code","InPaymentsForm","inPayment","donor_id","advertisement_id","recieved_by","handover_to","cheque_payment_date","refered_no","onAddInPaymentData","calculateTotalAmount","selectedTestAppointments","inPayments","staffProfiles","onGetStaffProfile","listCLabs","onGetListCLabs","advertisements","onGetAcceptedLabAdvertisements","donors","onGetdonors","onGetInPayment","office","territory_office","listCorporateLabs","corporatelabsList","refrell_fees","advertisementList","lab_office","donorList","donor_name","advertisement_title","defaultChecked","getInPayment","addNewInPayment","onGetPaymentStatuss","getFilter","comparator","filterValue","cellValue","onUpdatePaymentInBouncedStatus","deposited_at","updatePaymentInBouncedStatus","getPaymentStatuss","is_cleared","cleared_at","onGetDepositStatuss","onUpdatePaymentInStatus","onGetClearStatuss","approvedInPayment","getClearStatuss","paymentBouncedInStatus","paymentBouncedInStatuss","onGetBouncedInStatuss","onUpdatePaymentStatus","paymentBouncedInStatusListColumns","updatePaymentStatus","getBouncedInStatuss","bankaccounts","bankaccount","transection_type","b2b_id","deposit_copy","onAddNewOutPayment","bank_id","onGetlabsMof","banks","onGetbanks","b2bClients","onGetB2bClients","onGetOutPayment","formattedAmount","donation_amount","b2bList","current_balance","bankList","getOutPayment","paymentOutStatuss","onGetPaymentOutStatuss","onUpdatePaymentOutStatus","paymentOutStatusListColumns","paymentCreatedStatuss","onGetCreatedOutStatuss","bank_account_no","onUpdatePaymentOutCreatedStatuss","paymentCreatedStatusListColumns","getCreatedOutStatuss","onGetPaymentOutClearStatuss","getPaymentOutClearStatuss","paymentCreatedList","paymentBouncedStatus","paymentBouncedStatuss","onGetBouncedStatuss","paymentBouncedStatusListColumns","getBouncedStatuss","SampleCollectorTestAppointmentsInProcessList","btnTextaddress","is_exact_amount_collected","onUpdateSampleCollectionStatus","updateSampleCollectionStatus","sampleCollectorDatas","sampleCollectorDatasInProcessList","getSampleCollectionInProcessList","handovered_at","sampleCollectorDatasCompletedList","getSampleCollectionCompletedList","resources","gr","translation","it","rs","sp","eng","i18n","use","detector","initReactI18next","init","fallbackLng","keySeparator","interpolation","escapeValue","Footer","isExtraSmallScreen","rel","layoutTypes","layoutWidthTypes","topBarThemeTypes","leftBarThemeImageTypes","leftSidebarTypes","leftSideBarThemeTypes","RightSidebar","changeThemePreloader","changePreloader","isPreloader","leftSideBarType","layoutWidth","sidebarTheme","leftSideBarTheme","sidebarThemeImage","leftSideBarThemeImage","hideRightbar","changeLeftSidebarTheme","changeLeftSidebarThemeImage","changeLeftSidebarType","hideRightSidebar","bgimg1","bgimg2","bgimg3","bgimg4","layout4","layout5","layout6","HorizontalLayout","rightbar","I18nextProvider","children","showRightSidebar","LabQualityCertificates","toLocaleDateString","LabSampleCollectors","LabPathologists","TestAppointmentsList","downloadFile","URL","createObjectURL","download","click","removeChild","opencancelModal","cancelModal","togglecancelModal","openPatientModal2","PatientModal2","togglePatientModal2","openCollectorModal","collectorModal","collector_cnic","collector_phone","collector_photo","toggleCollectorModal","toggleReschedulingModal","reschedulingModal","handleReschedulingClick","patientTestAppointments","patientTestAppointmentListColumns","does_feedback_exist","onGetPatientTestAppointmentsList","onGetNotes","onAddNewPatientFeedback","newPatientFeedback","ActiveComponent","starStyle","InActiveComponent","appointment_option","ptops","patientTestAppointmentsList","modalmobileStyle","TestsOffered","testtype","applied","ongetOfferedTestsReferrel","urlid","ongetCOfferedTestsReferrel","cartTotalBalance","sum","total_balance","checktotal","corporate_payment","quota","ongetCOfferedProfilesReferrel","ongetCOfferedRadiologysReferrel","ongetCOfferedPackegesReferrel","handleCart","abc","combined_discount_percentage","labhaz_discount_test","total_balance_sum","labs_offering_tests","labIndex","lab_details","tests_offered","testIndex","Checkout","handleStateSamplingChange","onGetCheckoutItems","checkoutItems","handleHomeSamplingChange","handleFullProceedClick","checkForFullValidations","totalAppointmentCost","total_test_cost","donationCheck","checkoutData","csr_id","booked_by","onAddCheckoutData","guestId","csrId","checkoutSuccess","handleProceedClick4","checkForValidationssample","checkForValidations","handleClickAddPayment","handlePaymentMethodChange","searchBox","getPlaces","handleLocatorIconClick","handleAgeChange","handleAgeFormatChange","handleFormGroupClick","datePickerRef","setFocus","handlePayment","total_sampling_charges","paymentData","customer_id","customer_name","customer_email","customer_phone","customer_address","customer_city","mdd1","mdd2","mdd4","mdd5","mdd7","mdd20","post","pay_now_url","getCommonPaymentMethods","allPaymentMethods","commonMethods","methods","filteredMethods","homeSampledTests","onGetDonationCheck","onGetHomeSampledTests","flatpickr","enableTime","minDate","selectedDates","instance","getHours","padStart","getMinutes","dateTimeStr","iconStyle","closeiconStyle","inputGroupStyle","commonPaymentMethods","pills","classnames","tabId","homeSampledTest","checkoutItem","discount_per","discount_by_labhazir_per","discount_by_labhazird_by_test_per","lab_home_sampling_charges","lab_state_sampling_charges","plateformcharges_roundoff","total_plateformcharges_sum","donationcheck","grand_total_test_cost","checkout","getHomeSampledTests","getDonationCheck","getCheckoutItems","addCheckoutData","LabSettings","health_dept_certified","health_dept_certificate","license_no","is_radiologyservices_active","account_number","branch_code","isSettingsUpdated","getLabSettings","is247Opened","updateLabSettings","createBank","testDescriptionsList","testDescriptions","testDescription","testDescriptionListColumns","onGetTestDescriptions","getTestDescriptions","LabAudits","advinvoice","onGetAdvInvoice","getAdvInvoice","ReferredPatientsList","togglebookModal","bookModal","openbookedModal","b2bReferredPatients","b2bReferredPatient","b2bReferredPatientListColumns","onGetB2bReferredPatientsList","b2bReferredPatientsList","getB2bReferredPatientsList","B2bLabSharesList","b2bLabShares","onGetB2bSharesLabList","b2bLabSharesList","getB2bSharesLabList","btnText1","access_token","updateB2bProfile","DonorProfile","DonorSummary","updateDonorProfile","donorReferredAppointments","donorReferredAppointment","donorReferredAppointmentListColumns","donortesting","Patient","Details","donorReferredAppointmentsList","getDonorReferredAppointmentsList","donorPayment","card_number","name_on_card","cvv_code","address_type","deposit_bank","onAddDonorPaymentData","donorPayments","Cheque","Pick_from","Cash","addNewDonorPayment","donation_to","getDonorSettings","updateDonorSettings","donoraccountStatements","donoraccountStatement","onGetDonorAccountStatements","thStyle","clearedat","generated_at","cancel_appintment_status","paymentin","PaidMethod","PaidAt","Balance","getDonorAccountStatements","donorsaccountStatements","getDonorsAccountStatements","onGetBankStatements","bankStatements","statementDate","clearence_datetime","isDateInRange","isSameOrAfter","isSameOrBefore","isBankAccountMatch","filteredBankStatements","bankStatement","prevStatement","onGetBankaccounts","lastIndex","findIndex","newPrevStatement","account_balance","totalCredit","credit","totalDebit","totalBalance","tableHeaders","footer","mif_id","mof_id","btd_id","footerClasses","selectedAccountId","accountStatements","getBankStatements","CreditCardCheckout","creditCardFailedImage","ApproveUnapproveModal","onYesClick","PendingB2BClients","isApproved","unapprovedModal","handleUnapprovedEvent","allLabsList","pendingB2BClient","pendingB2BClientListColumns","onGetAllLabsList","donor_balance","registered_at","onAddCreateBankData","createBanks","addNewCreateBank","bankAccount","categorey","opening_balance","creating_at","branch_no","onAddBankAccountData","onGetBankAccounts","addNewBankAccount","B2bAllClientsList","b2bAllClients","b2bAllClient","b2bAllClientListColumns","onGetB2bAllClientsList","b2bAllClientsList","onGetb2bLabSharesList","onUpdateAllLabShare","onUpdateLabShare","handleb2bLabShareClicks","b2b_shares","onAddNewLabShare","updateLabShare","newLabShare","getB2bLabSharesList","addNewLabShare","updateAllLabShare","B2bPayment","b2bPayment","onAddB2bPaymentData","b2bPayments","addNewB2bPayment","onGetAccountStatements","accountStatement","currentMonthStart","currentMonthEnd","toDate","orderedAt","dues_before_discount","sample_collector_amount","discounted_by_lab","lab_counter_discount","tax_amount","after_counterdiscount_lab_share","Receivable","discounted_by_labhazir","total_testby_labhazir","total_sample_collector","total_discount_lab","total_labcounterdiscount","total_discount_labhazir","total_labshare","total_labhazirshare","getAccountStatements","MedicalTestSheet","CSRCheckout","PatientsList","showNoResultMessage","onGetPatientsList","patients","patientaccountId","patientsList","Disclaimer","AboutUs","ChangePassword","togglePassword3Visibility","eyeIcon3","old_password","new_password","new_password2","changeSuccessMsg","checkOldPasswordFunction","userChangePassword","changeError","passwordVisibility","showPassword","AuditorSummary","approvedLabs","pendingLabs","completedAudits","inProcessAudits","completed_audits","inprocess_audits","approved_labs","pending_labs","SampleCollectorSummary","samples_collected","samples_inprocess","PendingLabs","handleMouseExit","MarketerModal","isHovered","openMarketerModal","toggleMarketerModal","callOnapproveUnapproveCorporate","onapproveUnapproveCorporate","onGetPendingLabs","pendingCorporate","pendingCorporates","pendingCorporatesListColumns","registrationAdmin","ReviewPerformance","fetchPerformanceData","onGetReviewPerformance","onGetReviewPerformanceTest","adjustedDate","UTC","today","startOfDay","endOfDay","ReviewPerformanceTest","utc","total_labs","total_offered_tests","getReviewPerformance","getReviewPerformanceTest","ApprovedLabs","approvedCorporate","onGetApprovedLabs","sortCaret","UnapprovedLabs","UnapprovedCorporate","onGetUnapprovedLabs","callOnApproveUnapproveLab","onApproveUnapproveLab","pendingLab","pendingLabListColumns","onPointerLeave","currentPage","onGetLabsListApprovedFee","handlePageChange","labsListApprovedFee","currentItems","lab_list","totalPages","total_pages","startPage","pageRange","endPage","pageNumbers","headerCells","labsListPendingFee","getLabsListApprovedFee","onGetLabsListPendingFee","getLabsListPendingFee","SharedPercentageLabHazirList","onGetSharedPercentagePendingFeeTests","onUpdateSharedPercentageAllPendingFeeTest","onUpdateSharedPercentagePendingFeeTest","sharedPercentagePendingFeeTests","discountLabHazirListColumns","sharedPercentageApprovedFeeTests","getSharedPercentagePendingFeeTests","sharedPercentageApprovedFeeTest","onGetSharedPercentageApprovedFeeTests","getSharedPercentageApprovedFeeTests","done_at","approvedLab","approvedLabListColumns","rowIndex","unapprovedLabs","refereree_percentage","callOnApproveUnapproveB2BClient","onApproveUnapproveB2BClient","onGetPendingB2BClients","b2bId","pendingB2BClients","ApprovedB2BClients","approvedB2BClients","approvedB2BClient","approvedB2BClientListColumns","onGetApprovedB2BClients","UnapprovedB2BClients","onGetUnapprovedB2BClients","unapprovedB2BClients","PendingDonors","callOnApproveUnapproveDonor","onApproveUnapproveDonor","onGetPendingDonors","donorId","pendingDonors","pendingDonor","pendingDonorListColumns","ApprovedDonors","approvedDonors","approvedDonor","approvedDonorListColumns","onGetApprovedDonors","UnapprovedDonors","onGetUnapprovedDonors","unapprovedDonors","ReferrelLabFee","ongetReferrelFeeLabs","onupdateReferrelAllFeeLab","onupdateReferrelFeeLab","referrelFeeLabs","referrelFeeLabColumns","ongetPutReferrelFeeLabs","onChangeTest","ononlyMedicalTestList","LabsRating","labsRating","labsrating","onGetLabsRating","plateform_charges","handleSaveButtonClick","updateACorporateStatus","onUpdateACorporateStatus","onGetACorporate","handleSelectCorporate","corporateOptions","corporateName","onUpdateCorporateStatus","onGetRFeeCorporate","clearedInPayment","is_approved","clearedInPayments","onGetClearedInPayments","onUpdateApproveUnapproveInPayment","clearedInPaymentListColumns","deposit_at","updateApproveUnapproveInPayment","getClearedInPayments","approvedInPayments","onGetApprovedInPayments","getApprovedInPayments","unapprovedInPayments","unapprovedInPayment","onGetUnapprovedInPayments","getUnapprovedInPayments","BankTransfersForm","transfer_type","deposit_type","withdraw_type","from_bankaccount_id","mode","payment_datetime","payment_copy","deposit_datetime","onAddNewBankTransfer","bankTransfers","onGetBankTransfer","addNewBankTransfer","from_bank_name","from_account_no","labOptions","onUpdateBankTransfer","bankTransferListColumns","updateBankTransfer","total_adjustment","price_discount","others","onAddNewInvoiceAdjustment","listInvoice","onGetListInvoice","listInvoiceList","addNewInvoiceAdjustment","onGetAdvertisements","onAddNewAdvertisement","onUpdateAdvertisement","updateAdvertisement","addNewAdvertisement","deleteAdvertisement","onDeleteAdvertisementPriceList","entered_at","advertisementPriceListColumns","onAddNewAdvertisementPriceList","onUpdateAdvertisementPriceList","updateAdvertisementPriceList","addNewAdvertisementPriceList","deleteAdvertisementPriceList","DiscountLabHazirList","onGetDiscountLabHazirs","onUpdateDiscountAllLabHazir","onUpdateDiscountLabHazir","discountLabHazirs","getDiscountLabHazirs","updateDiscountLabHazir","onGetLabsLists","searchType","onGetDonorsA","openNamePatientModal","NamePatientModal","toggleNamePatientModal","labsData","labFilter","b","B2bClientsLists","discountLab","onGetDiscountLab","onUpdateDiscountAllLab","onUpdateDiscountLab","getDiscountLab","LabAdvertisementRequestsList","handleLabAdvertisementRequestClicks","handleLabAdvertisementRequestClick","labAdvertisementRequests","labAdvertisementRequestListColumns","onGetLabAdvertisementRequests","onUpdateLabAdvertisementRequest","getLabAdvertisementRequests","onGetLabAdvertisementRequestsAccepted","getLabAdvertisementRequestsAccepted","PendingComplaints","mModal","toggleMModal","openMModal","pendingComplaints","isUrgent","pendingComplaint","csrList","csrCentralTerritoryList","csrSouthTerritoryList","csrNorthTerritoryList","pendingComplaintListColumns","complaint_id","onGetPendingComplaints","onGetCsrCentralList","onGetCsrSouthList","onGetCsrNorthList","onGetCSRList","onAssignComplaint","is_it_urgent","csrAdmin","csrTerritoryList","csrAppointments","handleResolveClick","complaintId","onUpdateCsrAppointments","onGetCsrAppointments","City","csrAppointment","csrappointments","getCsrAppointments","InProcessComplaints","toggleComplaneeModal","complaneeModal","openCompalneeModal","csrName","csr_name","inProcessComplaints","inProcessComplaint","inProcessComplaintListColumns","assigned_at","onGetInProcessComplaints","ResolvedComplaints","resolvedComplaints","resolvedComplaint","time_difference_hours","onGetResolvedComplaints","resolvedComplaintListColumns","CSRsList","handleCSRClicks","CSR","handleDeleteCSR","onDeleteStaff","handleCSRClick","roles","csrListColumns","onUpdateStaff","staffData","StaffSummary","UnhandledComplaints","onUpdateUnhandledComplaints","onGetUnhandledComplaints","toggleHandleModal","auditModal","labModal","toggleLabMessageModal","openLabMessageModal","unhandledComplaints","unhandledComplaint","handleModal","unhandledComplaintListColumns","getUnhandledComplaints","handledComplaintsList","onGetHandledComplaints","handledComplaints","handledComplaint","handledComplaintListColumns","typeoptions","uniqueCityNames","cityOptions","cityName","CorporateFilter","getHandledComplaints","csrComplaints","csrComplaint","oneMonthAgo","setMonth","onGetCsrComplaints","onUpdateCsrComplaints","updateCsrComplaints","csrcomplaints","getCsrComplaints","ReduceTests","testsinappointments","handleDeleteTests","onDeleteTestsInAppointment","feedbackMessage","cell","headerAlign","align","filterData","tableKey","getTestsInAppointment","NotesList","handleNoteClicks","note","notes","onAddNewNote","sortedNotes","added_at","staff_name","field_name","newNote","addNewNote","ActivityLogMarketer","activitylogmarketer","onGetActivityLogMarketer","start_date_by_labhazir","end_date_by_labhazir","toLocaleTimeString","getActivityLogMarketer","getLabActivityLogMarketer","ongetNotesComplaint","onaddNewNoteComplaint","getNotesComplaint","addNewNoteComplaint","handleMsgClicks","msgs","onGetMsgs","onAddNewMsg","chat","newMsg","AssignedAudits","onClickAuditedEvent","assignedAudits","assignedAudit","auditReport","audit_status","assignedAuditColumns","onGetAssignedAudits","onUpdateAssignedAudits","audits","getAssignedAudits","labAudits","reason_of_reaudit","labAudit","LabAuditListColumns","audited_at","audit_report","onGetLabAudits","onUpdateAuditStatus","Updateauditstatus","getLabAudits","UpdateAuditStatus","activitylog","onGetActivityLog","old_discount_by_lab","new_discount_by_lab","start_date_by_lab","end_date_by_lab","getActivityLog","onGetActivityLogFinance","adv_lab_name","b2b_name","payment_in_id","payment_out_id","getActivityLogFinance","onGetALabCorporate","setInitialDropdownValue","handleNameChange","selectedName","handleStatusChange","selectedStatus","corporate_account_id","corporateNameOptions","corporateStatusOptions","corporate_status","nameFilter","statusFilter","getALabCorporate","CompletedAudits","completedAudit","completedAuditListColumns","onGetAuditorsCompletedAudits","onAssignAudit","getAuditorsCompletedAudits","PendingAudits","pendingAudits","auditorCentralTerritoryList","auditorSouthTerritoryList","auditorNorthTerritoryList","pendingAudit","pendingAuditListColumns","onGetPendingAudits","onGetAuditorList","onGetAuditorCentralList","onGetAuditorSouthList","onGetAuditorNorthList","auditorAdmin","auditorTerritoryList","InProcessAudits","auditorName","auditor_name","inProcessAudit","inProcessAuditListColumns","onGetInProcessAudits","PassedAudits","passedAudits","passedAudit","passedAuditListColumns","onGetPassedAudits","FailedAudits","failedAudits","failedAudit","failedAuditListColumns","is_temporary_blocked","onGetFailedAudits","showAlert","handleButtonClick","total_audits","last_audit_status","AddAllLabsAudit","AuditorsList","handleAuditorClicks","Auditor","handleDeleteAuditor","handleAuditorClick","auditorListColumns","Boolean","hostname","onAddNewAudit","onGetDiscountLabHazirToLabs","labaudit","isButtonDisabled","register_at","frequency","getLabsAllAuditList","addNewAudit","AuditHistory","activitylogauditor","onGetActivityLogAuditor","updated_at","pair","getActivityLogAuditor","CardMaintenance","PagesMaintenance","lightlogo","maintenance","PagesComingsoon","renderer","seconds","completed","currentDate","getTime","maintanence","getRandomFutureDate","CardPayment","encryptedData","decryptedData","startsWith","decodeURIComponent","ok","Error","statusText","responseData","decrypted_data","Pages404","Pages500","StaffRegister","StaffInfo","onAddStaff","addStaffError","newStaff","addStaff","CSRList","marketersList","onGetmarketersList","marketersListColumns","AuditorList","FinanceOfficerList","handleFinanceOfficerClicks","FinanceOfficer","financeOfficerList","handleDeleteFinanceOfficer","onGetFinanceOfficerList","handleFinanceOfficerClick","financeOfficerListColumns","onUpdateDiscountAllLabHazirToLab","onUpdateDiscountLabHazirToLab","discountLabHazirToLabs","lab_name_new","LabHazirListColumns","getDiscountLabHazirToLabs","updateDiscountLabHazirToLab","BanksList","onGetBanks","onUpdateBank","updateBank","deposited_by","onUpdateBankaccount","updateBankaccount","Payments","counter_discount","amount_received","received_by","isPaymentFailed","getLabPayments","updateLabPayments","allow_all","selectedcor","selectedallow","corporatename","onAddNewCorporate","onGetLabCorporate","uniqueCorporateName","uniqueCorporateStatus","getLabCorporate","addNewCorporate","publicRoutes","path","RegisterAffiliate","ForgetPwd","ConfirmPwd","CartsList","QuoteList","stackchart","labAuthProtectedRoutes","AuditorHistoryLab","DashboardLab","labnotes","SampleCollectorInfo","tokendetailpage","activityLog","LabInvoiceDetail","LabAppointmentDetail","LabAdvertisements","CorporateLabAccountStatements","AdvInvoiceDetail","CorporatesList","AcceptedCorporatesList","advLabChatBox","CorporateOfferedTestsListForLab","PaymentConfirmation","corporatecommit","corporatevoucher","b2bclientAuthProtectedRoutes","DashboardB2b","B2bReferredPatient","checkoutb2b","B2bPayments","B2bAccountStatements","Invoiceb2b","B2bLabShare","financeOfficerAuthProtectedRoutes","DashboardFinance","FinanceOfficerProfile","InPayments","OutPayments","msgBoxFo","activityLogFinance","PendintClearenceStatussList","clearStatussList","bouncedStatussList","PaymentOutBouncedStatussList","PaymentOutStatussList","PaymentOutCreatedStatussList","PaymentOutclearStatussList","AllLabsList","bankTransferDetail","invoiceAdjustmentDetail","interBankDetailsList","allDonationAppointments","financeAdminAuthProtectedRoutes","DashboardFinanceAdmin","AccountStatementsLab","AccountStatementDonor","AccountStatementsB2B","ClearedInPayments","PendingInPayments","PendingOutPayments","ApprovedInPayments","UnapprovedInPayments","activityLogFinanceAdmin","corporatestatusCancel","AccountStatementsCorporate","CreateBanks","BankAccounts","BankAccountsList","donorappointmentsList","BankAccountStatements","LabAdvertisementRequestsAcceptedMA","advmadminChatBox","labCorporateStatement","corporateList","CollectorInvoiceDetail","AcceptedCorporatesLists","LabhazirPaymentConfirmation","donorAuthProtectedRoutes","DonorDashboard","DonorAppointments","DonorPayments","DonorSettings","DonorAccountStatements","DonorsAccountStatements","b2badminAuthProtectedRoutes","B2BClientShares","B2bAllClients","sampleCollectorAuthProtectedRoutes","DashboardSampleCollector","SampleCAppointmentDetail","SampleCollectorTestAppointmentsCompletedList","auditorAuthProtectedRoutes","DashboardAuditor","AuditorProfile","AuditorCompletedAudits","AuditorHistory","registrationAdminAuthProtectedRoutes","PendingCorporate","ApprovedCorporate","labsListApprovedFeeOffered","labsListPendingFeeOffered","PendingB2bClients","ApprovedB2bClients","UnapprovedB2bClients","ReferrelLab","ApproveReferrelLab","listCorporate","rFeeCorporate","marketerAdminAuthProtectedRoutes","DashboardMarketerAdmin","Advertisements","AdvertisementPriceLists","DiscountLabHazir","msgBox","activityLogMarketer","marketertestdiscountNotesList","marketerlabdiscountNotesList","DiscountLab","LabAdvertisementRequests","LabAdvertisementRequestsAccepted","csrAuthProtectedRoutes","DashboardCsr","HandledComplaints","reduceTests","NotesComplains","CsrInvoiceDetail","csrCheckout","Patientslist","checkoutcsr","TestAppointmentsCSRList","AppointmentDetail","CorporateInfoModalRoute","csrAdminAuthProtectedRoutes","csrApointments","NotesLists","NotesComplainsAdmin","pendingComplaintslabhazir","inprocessComplaintslabhazir","ResolvedComplaintsLabhazir","auditorAdminAuthProtectedRoutes","lablist","LabAudit","AuditorAdminHistory","hrAdminAuthProtectedRoutes","MARKETERSList","patientAuthProtectedRoutes","DashboardPatient","PatientCsrNotesList","PatientAppointmentDetail","CorporateModalRoute","patientPublicRoutes","ContactUs","B2bAffiliate","ChatBox","corporatelabs","NearbyTestsDiscountedlh","NearbyPackages","MedicalTestsList","NearbyRadiology","TestsOfferedbyLab","TestsOfferedbyLabCorporate","ProfilesOfferedbyLabCorporate","PackagesOfferedbyLabCorporate","RadiologysOfferedbyLabCorporate","ProfilesOfferedbyLab","PackagesOfferedbyLab","RadiologyOfferedbyLab","TestDescriptions","CorporatePatientBookings","corporateAuthProtectedRoutes","DashboardCorporate","EmployeeData","EmployeeFile","EmployeeList","CorporateTestsList","CorporateOfferedTestsList","CorporateLabAppointmentsList","CorporateLabsList","CorporatePaymentForm","PaymentFormStatus","CorporateInvoiceDetail","authProtectedRoutes","exact","AppRoute","isAuthProtected","isLabAuthProtected","isPatientAuthProtected","isCorporateAuthProtected","isB2BClientAuthProtected","isDonorAuthProtected","isSampleCollectorAuthProtected","isB2BAdminAuthProtected","isAuditorAuthProtected","isfinanceOfficerAuthProtected","isfinanceAdminAuthProtected","isRegistrationAdminAuthProtected","isMarketerAdminAuthProtected","isCSRAdminAuthProtected","isCSRAuthProtected","isAuditorAdminAuthProtected","isHRAdminAuthProtected","rest","ProfileMenu","menu","NotificationDropdown","notification","onGetNotification","previousApiCallTime","currentApiCallTime","notifications_count","cancelled_at","getNotification","SampleNotificationDropdown","onGetSampleNotification","sampleNotification","notifications","innerKey","sample_collector_name","getSampleNotification","MarketerNotificationDropdown","onGetMarketerNotification","marketerNotification","getMarketerNotification","CsrAdminNotificationDropdown","onGetCsrAdminNotification","csrAdminNotification","getCsrAdminNotification","CsrOfficerNotificationDropdown","onGetCsrOfficerNotification","csrOfficerNotification","getCsrOfficerNotification","RegAdminNotificationDropdown","onGetRegAdminNotification","regAdminNotification","notifications_offered_tests","notifications_donor","notifications_b2b","getRegAdminNotification","toggleMenuCallback","SidebarContent","scrollElement","refDiv","currentPosition","offsetTop","innerHeight","getScrollElement","parent2El","childNodes","initMenu","ss","MetisMenu","Sidebar","logoDark","logoLightPng","isextraSmallScreen","capitalizeFirstLetter","string","charAt","toUpperCase","screen","userAgent","NonAuthLayout","uid","mock","MockAdapter","onNoMatch","onPost","config","validUser","usr","idx","objIndex","obj","removeItem","onGet","RegExp","onPut","onDelete","filteredMessages","customer","project","inboxmail","fakeBackend","App","getLayout","layoutCls","VerticalLayout","route","showSidebar","leftMenu","earningChartDataError","initialState","login","account","patientInformation","b2bclientInformation","donorInformation","labInformation","corporateInformation","forgetPassword","confirmPassword","changePassword","corporateProfile","labMarket","units","corporatePaymentStatuss","corporatepaymentOutStatuss","paymentInStatuss","paymentInBouncedStatuss","paymentOutCreatedStatus","paymentouts","discountAllLabHazirs","discountlab","referrelAllFee","labsTesting","labShares","labShare","sucess","cemployees","advinvoiceDetail","person","pendingComplaintsLabhazir","inProcessComplaintsLabhazir","resolvedComplaintsLabhazir","rootReducer","combineReducers","bankaccountStatements","labslisttt","LayoutSaga","changeBodyAttribute","attribute","setAttribute","manageBodyClass","cssClass","remove","put","changeTopbarThemeAction","call","changeSidebarTypeAction","takeEvery","axiosApi","create","baseURL","del","delete","interceptors","getWeeklyData","getYearlyData","getMonthlyData","watchGetChartsData","dashboardSaga","all","fork","authHeader","getHeader","Authorization","postRegister","err","postPatientInformation","formData","FormData","append","postB2bClientInformation","postDonorInformation","postLabInformation","postCorporateInformation","postLogin","getDonorsA","getDonors","getTests","getUnits","getACorporate","getRFeeCorporate","getOfferedTestsReferrel","getCOfferedTestsReferrel","getCOfferedProfilesReferrel","getCOfferedPackagesReferrel","getCOfferedRadiologysReferrel","getOfferedProfilesReferrel","getOfferedPackagesReferrel","getOfferedRadiologysReferrel","getLcList","getCorporateList","postForgetPwd","postConfirmPwd","postChangePwd","getNearbyTests","getNearbyTestsDiscounted","getNearbyProfiles","getTestss","getProfiles","getPackages","getNearbyPackages","getRadiology","getNearbyRadiology","updateUnhandledComplaints","updateCsrAppointments","csrcomplaint","lab_id_id","getLabsRating","getLabsTesting","getB2bAllClientsList","getPatientsList","donorSetting","deletecedata","deleteTestsInAppointment","getMARKETERSList","getFinanceOfficerList","getPendingCorporate","getApprovedCorporate","getUnapprovedCorporate","getPendingLabs","getApprovedLabs","getUnapprovedLabs","getPendingB2BClients","getApprovedB2BClients","getUnapprovedB2BClients","queryParams","getPendingDonors","getApprovedDonors","getUnapprovedDonors","getPendingComplaints","getPendingComplaintsLabhazir","getInProcessComplaints","getInProcessComplaintsLabhazir","getResolvedComplaints","getResolvedComplaintsLabhazir","getPendingAudits","getInProcessAudits","getPassedAudits","getFailedAudits","getAdvertisements","getAcceptedLabAdvertisements","updateDiscountAllLabHazir","getLabsAuditList","getDonorsList","updateDiscountAllLabHazirToLab","getPutReferrelFeeLabs","getReferrelFeeLabs","referrelLabFee","updateDiscountLab","updateDiscountAllLab","updateAssignedAudits","getAllLabsList","getLabsMof","getListCLabs","getListInvoice","getCreatedOutDetailStatuss","responded_at","accountSaga","fetchTerritoriesList","fetchCorporatesList","PatientInformationSaga","object","B2bClientInformationSaga","DonorInformationSaga","fethMainLabs","LabInformationSaga","CorporateInformationSaga","authSaga","forgetUser","forgetPasswordSaga","confirmUser","confirmPasswordSaga","changeUser","changePasswordSaga","fetchLabProfile","onUpdateLabProfile","labProfileSaga","fetchB2bProfile","onUpdateB2bProfile","b2bProfileSaga","fetchDonorProfile","onUpdateDonorProfile","donorProfileSaga","fetchStaffProfile","onUpdateStaffProfile","staffProfileSaga","fetchSampleCollectorProfile","onUpdateSampleCollectorProfile","sampleCollectorProfileSaga","fetchLabSettings","onUpdateLabSettings","labSettingsSaga","fetchLabPayments","onUpdateLabPayments","labPaymentsSaga","fetchDonorSettings","onUpdateDonorSettings","donorSettingsSaga","fetchPatientProfile","onUpdatePatientProfile","patientProfileSaga","fetchCorporateProfile","onUpdateCorporateProfile","corporateProfileSaga","fetchNearbyLabs","fetchCorporateLabs","fetchRegionWiseAdvertisement","fetchAdvLive","labMarketSaga","fetchNearbyTests","fetchNearbyTestsDiscounted","TestMarketSaga","fetchNearbyProfiles","fetchProfiles","fetchTestss","ProfileMarketSaga","fetchNearbyPackages","fetchPackages","PackageMarketSaga","fetchNearbyRadiology","fetchRadiology","RadiologyMarketSaga","fetchTestsList","fetchCorporateTestsList","TestsSaga","fetchTests","fetchUnits","fetchOfferedTests","fetchCorporateTests","fetchOfferedTestsReferrel","fetchCOfferedTestsReferrel","fetchCOfferedProfilesReferrel","fetchCOfferedPackagesReferrel","fetchCOfferedRadiologysReferrel","fetchOfferedProfilesReferrel","fetchOfferedPackagesReferrel","fetchOfferedRadiologysReferrel","offeredTestsSaga","fetchPathologists","pathologistsSaga","fetchActivityLog","fetchNotification","activitylogSaga","fetchActivityLogFinance","fetchCorporateCommit","activitylogfinanceSaga","fetchActivityLogMarketer","fetchLabActivityLogMarketer","activitylogmarketerSaga","fetchSampleNotification","sampleNotificationSaga","sampleSampleNotification","fetchMarketerNotification","marketerNotificationSaga","fetchCsrAdminNotification","csrAdminNotificationSaga","fetchRegAdminNotification","regAdminNotificationSaga","fetchCsrOfficerNotification","csrOfficerNotificationSaga","fetchBankaccounts","fetchCarts","cartsSaga","fetchQuotes","quotesSaga","fetchLabsListPendingFee","fetchLabsListApprovedFee","LabsListPendingFeeSaga","fetchSharedPercentagePendingFeeTests","fetchSharedPercentageApprovedFeeTests","sharedPercentagePendingFeeTestsSaga","fetchSampleCollectors","sampleCollectorsSaga","fetchSampleCollectionInProcessList","fetchSampleCollectionCompletedList","SampleCollectorTestAppointmentsSaga","fetchQualityCertificates","qualityCertificatesSaga","fetchBankAccounts","fetchBanks","fetchLabs","fetchDonors","fetchPaymentOutStatuss","fetchDepositStatuss","fetchCreatedOutStatuss","fetchCreatedOutDetailStatuss","fetchCCreatedOutStatuss","fetchPaymentOutClearStatuss","fetchClearStatuss","fetchBouncedInStatuss","fetchBouncedStatuss","paymentStatussSaga","getBouncedInStatussFail","fetchMsgs","msgsSaga","fetchAdvertisements","advertisementsSaga","fetchAdvertisementLives","AdvertisementLivesSaga","fetchAdvertisementPriceLists","advertisementPriceListsSaga","fetchLabAdvertisements","onDeleteLabAdvertisement","labAdvertisementsSaga","fetchLabAdvertisementRequests","fetchLabAdvertisementRequestsAccepted","labAdvertisementRequestsSaga","fetchDiscountLabHazirs","discountLabHazirsSaga","fetchDiscountLabHazirToLabs","discountLabHazirToLabsSaga","fetchReferrelFeeLabs","fetchPutReferrelFeeLabs","onUpdateReferrelFeeLab","onUpdateReferrelAllFeeLab","ReferrelFeeLabsSaga","ReferrelFeeLabs","fetchLabsList","fetchLabsAuditList","fetchLabAllAudits","fetchDonorsList","fetchCorporateList","fetchLcList","fetchDonorsA","LabsSaga","TerritoriesListSaga","fetchLabNamesList","LabNamesListSaga","fetchonlyMedicalTestList","onlyMedicalTestListSaga","fetchCsrCentralList","fetchCsrSouthList","fetchCsrNorthList","csrTerritoryListSaga","fetchAuditorCentralList","fetchAuditorSouthList","fetchAuditorNorthList","auditorTerritoryListSaga","fetchDiscountLab","discountLabSaga","fetchFeedbacks","feedbacksSaga","fetchLabsRating","labsRatingSaga","fetchLabsTesting","labsTestingSaga","fetchLabToken","fetchTestAppointmentsPendingList","fetchTestAppointmentsInProcessList","fetchTestAppointmentsCompletedList","TestAppointmentsSaga","fetchPatientTestAppointmentsList","PatientTestAppointmentsSaga","fetchB2bReferredPatientsList","B2bReferredPatientsSaga","fetchDonorReferredAppointmentsList","DonorReferredAppointmentsSaga","onAddNewDonorPayment","donorPaymentSaga","onAddNewB2bPayment","b2bPaymentSaga","fetchB2bLabSharesList","fetchB2bSharesLabList","B2bLabSharesSaga","fetchB2bAllClientsList","B2bAllClientsSaga","patientFeedbackSaga","fetchHomeSampledTests","fetchDonationCheck","fetchCheckoutItems","checkoutSaga","onAddNewCreateBank","createBankSaga","fetchLabCorporate","fetchALabCorporate","fetchACorporate","fetchRFeeCorporate","fetchEmployeeCorporate","fetchLabsCorporate","onAddNewCemployeeData","onAddNewCemployeefile","onDeleteCedata","cemployeeDataSaga","onAddNewBankAccount","bankAccountSaga","fetchInvoiceDetail","fetchTestsInAppointments","invoiceSaga","fetchAdvInvoice","advinvoiceSaga","fetchInPayments","onAddNewInPayment","inPaymentSaga","fetchCorporateProfileforpayment","fetchLabsMof","fetchLabsc","fetchListDonationAppointment","fetchListCLabs","fetchListInvoice","fetchOutPayments","outPaymentSaga","fetchBankTransfers","bankTransferSaga","fetchHandledComplaints","fetchUnhandledComplaints","complaintsSaga","fetchCsrComplaints","csrcomplaintsSaga","fetchCsrAppointments","csrappointmentsSaga","fetchNotesComplaint","onAddNewNoteComplaint","fetchNotes","notesSaga","fetchPatientsList","PatientsSaga","fetchTestDescriptions","testDescriptionsSaga","fetchAccountStatements","fetchBankStatements","AccountStatementsSaga","fetchDonorAccountStatements","DonorAccountStatementsSaga","fetchDonorsAccountStatements","DonorsAccountStatementsSaga","fetchB2bAccountStatements","fetchCLabAccountStatements","B2bAccountStatementsSaga","BankStatementsSaga","fetchCSRList","fetchmaRKETERSList","fetchAuditorList","fetchFinanceOfficerList","staffSaga","fetchAssignedAudits","fetchLabAudits","fetchAuditorsCompletedAudits","auditsSaga","fetchPendingCorporate","fetchApprovedCorporate","fetchUnapprovedCorporate","onApproveUnapproveCorporate","fetchPendingLabs","fetchApprovedLabs","fetchUnapprovedLabs","fetchPendingB2BClients","fetchApprovedB2BClients","fetchUnapprovedB2BClients","fetchPendingDonors","fetchApprovedDonors","fetchUnapprovedDonors","registrationAdminSaga","fetchAllDonationAppointments","fetchAllLabsList","fetchClearedInPayments","fetchApprovedInPayments","fetchUnapprovedInPayments","financeAdminSaga","fetchPendingComplaints","fetchPendingComplaintsLabhazir","fetchInProcessComplaints","fetchInProcessComplaintsLabhazir","fetchResolvedComplaints","fetchResolvedComplaintsLabhazir","csrAdminSaga","fetchPendingAudits","fetchInProcessAudits","fetchPassedAudits","fetchFailedAudits","onAddLabAudit","auditorAdminSaga","fetchActivityLogAuditor","activitylogauditorSaga","fetchReviewPerformance","fetchReviewPerformanceTest","ReviewPerformanceSaga","rootSaga","AccountSaga","AuthSaga","FinanceAdminSaga","ForgetSaga","ConfirmSaga","ChangeSaga","LabProfileSaga","B2bProfileSaga","DonorProfileSaga","referrelFeeLabsSaga","LabSettingsSaga","PatientProfileSaga","StaffProfileSaga","SampleCollectorProfileSaga","CorporateProfileSaga","LabMarketSaga","PaymentsSaga","sampleCollectorDatasSaga","advertisementLivesSaga","labsListSaga","labslisttsaga","DonorSettingsSaga","BankAccountStatementsSaga","testAppointmentsSaga","patientTestAppointmentsSaga","bankaccountsSaga","StaffSaga","RegistrationAdminSaga","CSRAdminSaga","AuditorAdminSaga","AuditsSaga","sagaMiddleware","createSagaMiddleware","composeEnhancers","__REDUX_DEVTOOLS_EXTENSION_COMPOSE__","compose","store","createStore","applyMiddleware","run","app","ReactDOM","serviceWorker","ready","registration","unregister"],"mappings":"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","file":"static/js/main.feebb9c6.chunk.js","sourcesContent":["import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Link } from \"react-router-dom\";\nimport { Breadcrumb, BreadcrumbItem, Col, Row } from \"reactstrap\";\n\nclass Breadcrumbs extends Component {\n render() {\n return (\n \n \n \n
\n

{this.props.breadcrumbItem}

\n
\n \n \n {this.props.title}\n \n \n {this.props.breadcrumbItem}\n \n \n
\n
\n \n
\n
\n )\n }\n}\n\nBreadcrumbs.propTypes = {\n breadcrumbItem: PropTypes.string,\n title: PropTypes.string\n}\n\nexport default Breadcrumbs\n","/* LAYOUT */\nexport const CHANGE_LAYOUT = \"CHANGE_LAYOUT\"\nexport const CHANGE_LAYOUT_WIDTH = \"CHANGE_LAYOUT_WIDTH\"\nexport const CHANGE_SIDEBAR_THEME = \"CHANGE_SIDEBAR_THEME\"\nexport const CHANGE_SIDEBAR_THEME_IMAGE = \"CHANGE_SIDEBAR_THEME_IMAGE\"\nexport const CHANGE_SIDEBAR_TYPE = \"CHANGE_SIDEBAR_TYPE\"\n\n// topbar\nexport const CHANGE_TOPBAR_THEME = \"CHANGE_TOPBAR_THEME\"\n\n/* RIGHT SIDEBAR */\nexport const TOGGLE_RIGHT_SIDEBAR = \"TOGGLE_RIGHT_SIDEBAR\"\nexport const SHOW_RIGHT_SIDEBAR = \"SHOW_RIGHT_SIDEBAR\"\nexport const HIDE_RIGHT_SIDEBAR = \"HIDE_RIGHT_SIDEBAR\"\n\n// Preloader\nexport const CHANGE_PRELOADER = \"CHANGE_PRELOADER\"\n","import {\n CHANGE_LAYOUT,\n CHANGE_LAYOUT_WIDTH,\n CHANGE_SIDEBAR_THEME,\n CHANGE_SIDEBAR_THEME_IMAGE,\n CHANGE_SIDEBAR_TYPE,\n CHANGE_TOPBAR_THEME,\n TOGGLE_RIGHT_SIDEBAR,\n SHOW_RIGHT_SIDEBAR,\n CHANGE_PRELOADER,\n HIDE_RIGHT_SIDEBAR,\n} from \"./actionTypes\"\n\nexport const changeLayout = layout => ({\n type: CHANGE_LAYOUT,\n payload: layout,\n})\n\nexport const changePreloader = layout => ({\n type: CHANGE_PRELOADER,\n payload: layout,\n})\n\nexport const changeLayoutWidth = width => ({\n type: CHANGE_LAYOUT_WIDTH,\n payload: width,\n})\n\nexport const changeSidebarTheme = theme => ({\n type: CHANGE_SIDEBAR_THEME,\n payload: theme,\n})\n\n\nexport const changeSidebarThemeImage = themeimage => ({\n type: CHANGE_SIDEBAR_THEME_IMAGE,\n payload: themeimage,\n})\n\nexport const changeSidebarType = (sidebarType, isMobile) => {\n return {\n type: CHANGE_SIDEBAR_TYPE,\n payload: { sidebarType, isMobile },\n }\n}\n\nexport const changeTopbarTheme = topbarTheme => ({\n type: CHANGE_TOPBAR_THEME,\n payload: topbarTheme,\n})\n\nexport const toggleRightSidebar = () => ({\n type: TOGGLE_RIGHT_SIDEBAR,\n payload: null,\n})\n\nexport const showRightSidebar = (isopen) => ({\n type: SHOW_RIGHT_SIDEBAR,\n payload: isopen,\n})\n\nexport const hideRightSidebar = () => ({\n type: HIDE_RIGHT_SIDEBAR,\n payload: null,\n})\n","/** Get Dashboard Chart data */\nexport const API_SUCCESS = \"API_SUCCESS\";\nexport const API_FAIL = \"API_FAIL\";\nexport const GET_CHARTS_DATA = \"GET_CHARTS_DATA\";\n","import {\n API_SUCCESS,\n API_FAIL,\n GET_CHARTS_DATA,\n} from \"./actionTypes\";\n\nexport const apiSuccess = (actionType, data) => ({\n type: API_SUCCESS,\n payload: { actionType, data },\n});\n\nexport const apiFail = (actionType, error) => ({\n type: API_FAIL,\n payload: { actionType, error },\n});\n\n// charts data\nexport const getChartsData = (periodType) => ({\n type: GET_CHARTS_DATA,\n payload: periodType\n});\n\n","export const REGISTER_USER = \"register_user\"\nexport const REGISTER_USER_SUCCESSFUL = \"register_user_successfull\"\nexport const REGISTER_USER_FAILED = \"register_user_failed\"\n","import {\n REGISTER_USER,\n REGISTER_USER_SUCCESSFUL,\n REGISTER_USER_FAILED,\n} from \"./actionTypes\"\n\nexport const registerUser = user => {\n return {\n type: REGISTER_USER,\n payload: { user },\n }\n}\n\nexport const registerUserSuccessful = user => {\n console.log(user)\n return {\n type: REGISTER_USER_SUCCESSFUL,\n payload: user,\n }\n}\n\nexport const registerUserFailed = user => {\n return {\n type: REGISTER_USER_FAILED,\n payload: user,\n }\n}\n","export const ADD_PATIENT_INFORMATION = \"add_patient_information\"\nexport const ADD_PATIENT_INFORMATION_SUCCESSFUL = \"add_patient_information_successfull\"\nexport const ADD_PATIENT_INFORMATION_FAILED = \"add_patient_information_failed\"\n\n// Territories\nexport const GET_TERRITORIES_LIST =\n \"GET_TERRITORIES_LIST\";\nexport const GET_TERRITORIES_LIST_SUCCESS =\n \"GET_TERRITORIES_LIST_SUCCESS\";\nexport const GET_TERRITORIES_LIST_FAIL =\n \"GET_TERRITORIES_LIST_FAIL\"\n\n// Corporates\nexport const GET_CORPORATES_LIST =\n\"GET_CORPORATES_LIST\";\nexport const GET_CORPORATES_LIST_SUCCESS =\n\"GET_CORPORATES_LIST_SUCCESS\";\nexport const GET_CORPORATES_LIST_FAIL =\n\"GET_CORPORATES_LIST_FAIL\";\n","import {\n GET_TERRITORIES_LIST,\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n GET_CORPORATES_LIST,\n GET_CORPORATES_LIST_SUCCESS,\n GET_CORPORATES_LIST_FAIL,\n ADD_PATIENT_INFORMATION,\n ADD_PATIENT_INFORMATION_SUCCESSFUL,\n ADD_PATIENT_INFORMATION_FAILED,\n} from \"./actionTypes\"\n\n// Territories\nexport const getTerritoriesList = () => ({\n type: GET_TERRITORIES_LIST,\n payload: {},\n});\n\n\nexport const getTerritoriesListSuccess =\n territories => ({\n type: GET_TERRITORIES_LIST_SUCCESS,\n payload: territories,\n });\n\nexport const getTerritoriesListFail = error => ({\n type: GET_TERRITORIES_LIST_FAIL,\n payload: error,\n});\n\n// Corporates\nexport const getCorporatesList = () => ({\n type: GET_CORPORATES_LIST,\n payload: {},\n});\n\n\nexport const getCorporatesListSuccess =\n territories => ({\n type: GET_CORPORATES_LIST_SUCCESS,\n payload: territories,\n });\n\nexport const getCorporatesListFail = error => ({\n type: GET_CORPORATES_LIST_FAIL,\n payload: error,\n});\n\nexport const addPatientInformation = (patient, id) => {\n return {\n type: ADD_PATIENT_INFORMATION,\n payload: { patient, id },\n }\n}\n\nexport const addPatientInformationSuccessful = (patient, id) => {\n return {\n type: ADD_PATIENT_INFORMATION_SUCCESSFUL,\n payload: { patient, id },\n }\n}\n\nexport const addPatientInformationFailed = (patient, id) => {\n return {\n type: ADD_PATIENT_INFORMATION_FAILED,\n payload: { patient, id },\n }\n}\n","export const ADD_B2BCLIENT_INFORMATION = \"add_b2bclient_information\"\nexport const ADD_B2BCLIENT_INFORMATION_SUCCESSFUL = \"add_b2bclient_information_successfull\"\nexport const ADD_B2BCLIENT_INFORMATION_FAILED = \"add_b2bclient_information_failed\"\n\n// Territories\nexport const GET_TERRITORIES_LIST =\n \"GET_TERRITORIES_LIST\";\nexport const GET_TERRITORIES_LIST_SUCCESS =\n \"GET_TERRITORIES_LIST_SUCCESS\";\nexport const GET_TERRITORIES_LIST_FAIL =\n \"GET_TERRITORIES_LIST_FAIL\";\n","import {\n GET_TERRITORIES_LIST,\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n ADD_B2BCLIENT_INFORMATION,\n ADD_B2BCLIENT_INFORMATION_SUCCESSFUL,\n ADD_B2BCLIENT_INFORMATION_FAILED,\n} from \"./actionTypes\";\n\n// Territories\nexport const getTerritoriesList = () => ({\n type: GET_TERRITORIES_LIST,\n payload: {},\n});\n\n\nexport const getTerritoriesListSuccess =\n territories => ({\n type: GET_TERRITORIES_LIST_SUCCESS,\n payload: territories,\n });\n\nexport const getTerritoriesListFail = error => ({\n type: GET_TERRITORIES_LIST_FAIL,\n payload: error,\n});\n\n\nexport const addB2bClientInformation = (b2bClient, id) => {\n return {\n type: ADD_B2BCLIENT_INFORMATION,\n payload: { b2bClient, id },\n };\n};\n\nexport const addB2bClientInformationSuccessful = (b2bClient, id) => {\n return {\n type: ADD_B2BCLIENT_INFORMATION_SUCCESSFUL,\n payload: { b2bClient, id },\n };\n};\n\nexport const addB2bClientInformationFailed = (b2bClient, id) => {\n return {\n type: ADD_B2BCLIENT_INFORMATION_FAILED,\n payload: { b2bClient, id },\n };\n};\n","export const ADD_DONOR_INFORMATION = \"add_donor_information\"\nexport const ADD_DONOR_INFORMATION_SUCCESSFUL = \"add_donor_information_successfull\"\nexport const ADD_DONOR_INFORMATION_FAILED = \"add_donor_information_failed\"\n\n// Territories\nexport const GET_TERRITORIES_LIST =\n \"GET_TERRITORIES_LIST\";\nexport const GET_TERRITORIES_LIST_SUCCESS =\n \"GET_TERRITORIES_LIST_SUCCESS\";\nexport const GET_TERRITORIES_LIST_FAIL =\n \"GET_TERRITORIES_LIST_FAIL\";","import {\n GET_TERRITORIES_LIST,\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n ADD_DONOR_INFORMATION,\n ADD_DONOR_INFORMATION_SUCCESSFUL,\n ADD_DONOR_INFORMATION_FAILED,\n} from \"./actionTypes\"\n\n// Territories\nexport const getTerritoriesList = () => ({\n type: GET_TERRITORIES_LIST,\n payload: {},\n});\nexport const getTerritoriesListSuccess =\n territories => ({\n type: GET_TERRITORIES_LIST_SUCCESS,\n payload: territories,\n });\n\nexport const getTerritoriesListFail = error => ({\n type: GET_TERRITORIES_LIST_FAIL,\n payload: error,\n});\nexport const addDonorInformation = (donor, id) => {\n return {\n type: ADD_DONOR_INFORMATION,\n payload: { donor, id },\n }\n}\n\nexport const addDonorInformationSuccessful = (donor, id) => {\n return {\n type: ADD_DONOR_INFORMATION_SUCCESSFUL,\n payload: { donor, id },\n }\n}\n\nexport const addDonorInformationFailed = (donor, id) => {\n return {\n type: ADD_DONOR_INFORMATION_FAILED,\n payload: { donor, id },\n }\n}\n","export const GET_MAIN_LABS = \"get_main_labs\";\nexport const GET_MAIN_LABS_SUCCESS = \"get_main_labs_success\";\nexport const GET_MAIN_LABS_FAIL = \"get_main_labs_fail\";\n\nexport const ADD_LAB_INFORMATION = \"add_lab_information\";\nexport const ADD_LAB_INFORMATION_SUCCESSFUL = \"add_lab_information_successfull\";\nexport const ADD_LAB_INFORMATION_FAILED = \"add_lab_information_failed\";\n\n\n// Territories\nexport const GET_TERRITORIES_LIST =\n \"GET_TERRITORIES_LIST\";\nexport const GET_TERRITORIES_LIST_SUCCESS =\n \"GET_TERRITORIES_LIST_SUCCESS\";\nexport const GET_TERRITORIES_LIST_FAIL =\n \"GET_TERRITORIES_LIST_FAIL\";\n","import {\n GET_TERRITORIES_LIST,\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n GET_MAIN_LABS,\n GET_MAIN_LABS_SUCCESS,\n GET_MAIN_LABS_FAIL,\n ADD_LAB_INFORMATION,\n ADD_LAB_INFORMATION_SUCCESSFUL,\n ADD_LAB_INFORMATION_FAILED,\n} from \"./actionTypes\";\n\n\n// Territories\nexport const getTerritoriesList = () => ({\n type: GET_TERRITORIES_LIST,\n payload: {},\n});\n\n\nexport const getTerritoriesListSuccess =\n territories => ({\n type: GET_TERRITORIES_LIST_SUCCESS,\n payload: territories,\n });\n\nexport const getTerritoriesListFail = error => ({\n type: GET_TERRITORIES_LIST_FAIL,\n payload: error,\n});\n// lab info\nexport const getMainLabs = () => ({\n type: GET_MAIN_LABS,\n});\n\nexport const getMainLabsSuccess = labs => ({\n type: GET_MAIN_LABS_SUCCESS,\n payload: labs,\n});\n\nexport const getMainLabsFail = error => ({\n type: GET_MAIN_LABS_FAIL,\n payload: error,\n});\n\nexport const addLabInformation = (lab, id) => {\n return {\n type: ADD_LAB_INFORMATION,\n payload: { lab, id },\n };\n};\n\nexport const addLabInformationSuccessful = (lab, id) => {\n return {\n type: ADD_LAB_INFORMATION_SUCCESSFUL,\n payload: { lab, id },\n };\n};\n\nexport const addLabInformationFailed = (lab, id) => {\n return {\n type: ADD_LAB_INFORMATION_FAILED,\n payload: { lab, id },\n };\n};\n\n","export const ADD_CORPORATE_INFORMATION = \"add_corporate_information\";\nexport const ADD_CORPORATE_INFORMATION_SUCCESSFUL =\n \"add_corporate_information_successfull\";\nexport const ADD_CORPORATE_INFORMATION_FAILED =\n \"add_corporate_information_failed\";\n\n\n// Territories\nexport const GET_TERRITORIES_LIST =\n \"GET_TERRITORIES_LIST\";\nexport const GET_TERRITORIES_LIST_SUCCESS =\n \"GET_TERRITORIES_LIST_SUCCESS\";\nexport const GET_TERRITORIES_LIST_FAIL =\n \"GET_TERRITORIES_LIST_FAIL\";\n","import {\n ADD_CORPORATE_INFORMATION,\n ADD_CORPORATE_INFORMATION_SUCCESSFUL,\n ADD_CORPORATE_INFORMATION_FAILED,\n GET_TERRITORIES_LIST,\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n} from \"./actionTypes\";\n\n\n// Territories\nexport const getTerritoriesList = () => ({\n type: GET_TERRITORIES_LIST,\n payload: {},\n});\n\nexport const getTerritoriesListSuccess =\n territories => ({\n type: GET_TERRITORIES_LIST_SUCCESS,\n payload: territories,\n });\n\nexport const getTerritoriesListFail = error => ({\n type: GET_TERRITORIES_LIST_FAIL,\n payload: error,\n});\n\nexport const addCorporateInformation = (corporate, id) => {\n return {\n type: ADD_CORPORATE_INFORMATION,\n payload: { corporate, id },\n };\n};\n\nexport const addCorporateInformationSuccessful = (corporate, id) => {\n return {\n type: ADD_CORPORATE_INFORMATION_SUCCESSFUL,\n payload: { corporate, id },\n };\n};\n\nexport const addCorporateInformationFailed = (corporate, id) => {\n return {\n type: ADD_CORPORATE_INFORMATION_FAILED,\n payload: { corporate, id },\n };\n};\n","export const LOGIN_USER = \"LOGIN_USER\";\nexport const LOGIN_SUCCESS = \"LOGIN_SUCCESS\";\n\nexport const LOGOUT_USER = \"LOGOUT_USER\";\nexport const LOGOUT_USER_SUCCESS = \"LOGOUT_USER_SUCCESS\";\nexport const API_ERROR = \"LOGIN_API_ERROR\";\n","import {\n LOGIN_USER,\n LOGIN_SUCCESS,\n LOGOUT_USER,\n LOGOUT_USER_SUCCESS,\n API_ERROR,\n} from \"./actionTypes\";\n\nexport const loginUser = (user, history) => {\n return {\n type: LOGIN_USER,\n payload: { user, history },\n };\n};\n\nexport const loginSuccess = user => {\n return {\n type: LOGIN_SUCCESS,\n payload: user,\n };\n};\n\nexport const logoutUser = history => {\n return {\n type: LOGOUT_USER,\n payload: { history },\n };\n};\n\nexport const logoutUserSuccess = () => {\n return {\n type: LOGOUT_USER_SUCCESS,\n payload: {},\n };\n};\n\nexport const apiError = error => {\n return {\n type: API_ERROR,\n payload: error,\n };\n};\n","export const FORGET_PASSWORD = \"FORGET_PASSWORD\"\nexport const FORGET_PASSWORD_SUCCESS = \"FORGET_PASSWORD_SUCCESS\"\nexport const FORGET_PASSWORD_ERROR = \"FORGET_PASSWORD_ERROR\"\n","import {\n FORGET_PASSWORD,\n FORGET_PASSWORD_SUCCESS,\n FORGET_PASSWORD_ERROR,\n} from \"./actionTypes\"\n\nexport const userForgetPassword = (user, history) => {\n return {\n type: FORGET_PASSWORD,\n payload: { user, history },\n }\n}\n\nexport const userForgetPasswordSuccess = message => {\n return {\n type: FORGET_PASSWORD_SUCCESS,\n payload: message,\n }\n}\n\nexport const userForgetPasswordError = message => {\n return {\n type: FORGET_PASSWORD_ERROR,\n payload: message,\n }\n}\n","export const CONFIRM_PASSWORD = \"CONFIRM_PASSWORD\";\nexport const CONFIRM_PASSWORD_SUCCESS = \"CONFIRM_PASSWORD_SUCCESS\";\nexport const CONFIRM_PASSWORD_ERROR = \"CONFIRM_PASSWORD_ERROR\";\n","import {\n CONFIRM_PASSWORD,\n CONFIRM_PASSWORD_SUCCESS,\n CONFIRM_PASSWORD_ERROR,\n} from \"./actionTypes\";\n\nexport const userConfirmPassword = (user, token) => {\n return {\n type: CONFIRM_PASSWORD,\n payload: { user, token },\n };\n};\n\nexport const userConfirmPasswordSuccess = message => {\n return {\n type: CONFIRM_PASSWORD_SUCCESS,\n payload: message,\n };\n};\n\nexport const userConfirmPasswordError = message => {\n return {\n type: CONFIRM_PASSWORD_ERROR,\n payload: message,\n };\n};\n","export const CHANGE_PASSWORD = \"CHANGE_PASSWORD\";\nexport const CHANGE_PASSWORD_SUCCESS = \"CHANGE_PASSWORD_SUCCESS\";\nexport const CHANGE_PASSWORD_ERROR = \"CHANGE_PASSWORD_ERROR\";\n","import {\n CHANGE_PASSWORD,\n CHANGE_PASSWORD_SUCCESS,\n CHANGE_PASSWORD_ERROR,\n} from \"./actionTypes\";\n\nexport const userChangePassword = user => {\n return {\n type: CHANGE_PASSWORD,\n payload: { user },\n };\n};\n\nexport const userChangePasswordSuccess = message => {\n return {\n type: CHANGE_PASSWORD_SUCCESS,\n payload: message,\n };\n};\n\nexport const userChangePasswordError = message => {\n return {\n type: CHANGE_PASSWORD_ERROR,\n payload: message,\n };\n};\n","/* LAB PROFILE */\nexport const GET_LAB_PROFILE = \"GET_LAB_PROFILE\";\nexport const GET_LAB_PROFILE_SUCCESS = \"GET_LAB_PROFILE_SUCCESS\";\nexport const GET_LAB_PROFILE_FAIL = \"GET_LAB_PROFILE_FAIL\";\n\n\nexport const UPDATE_LAB_PROFILE = \"UPDATE_LAB_PROFILE\";\nexport const UPDATE_LAB_PROFILE_SUCCESS =\n \"UPDATE_LAB_PROFILE_SUCCESS\";\nexport const UPDATE_LAB_PROFILE_FAIL = \"UPDATE_LAB_PROFILE_FAIL\";\n\n","import {\n GET_LAB_PROFILE,\n GET_LAB_PROFILE_FAIL,\n GET_LAB_PROFILE_SUCCESS,\n UPDATE_LAB_PROFILE,\n UPDATE_LAB_PROFILE_SUCCESS,\n UPDATE_LAB_PROFILE_FAIL,\n} from \"./actionTypes\";\n\n// ----------- Lab profile APIs actions -----------------\nexport const getLabProfile = id => ({\n type: GET_LAB_PROFILE,\n payload: id,\n});\n\nexport const getLabProfileSuccess = labProfile => ({\n type: GET_LAB_PROFILE_SUCCESS,\n payload: labProfile,\n});\n\nexport const getLabProfileFail = error => ({\n type: GET_LAB_PROFILE_FAIL,\n payload: error,\n});\n\nexport const updateLabProfile = (labProfile, id) => {\n console.log('Dispatching CorporateProfile action:', labProfile);\n return{\n type: UPDATE_LAB_PROFILE,\n payload: { labProfile, id },\n}};\n\nexport const updateLabProfileSuccess = (labProfile) => {\n console.log('Dispatching suceesssupdateCorporateProfile action:', labProfile);\n return{\n type: UPDATE_LAB_PROFILE_SUCCESS,\n payload: labProfile,\n}};\n\nexport const updateLabProfileFail = error => ({\n type: UPDATE_LAB_PROFILE_FAIL,\n payload: error,\n});\n","/* LAB PROFILE */\nexport const GET_B2B_PROFILE = \"GET_B2B_PROFILE\";\nexport const GET_B2B_PROFILE_SUCCESS = \"GET_B2B_PROFILE_SUCCESS\";\nexport const GET_B2B_PROFILE_FAIL = \"GET_B2B_PROFILE_FAIL\";\n\n\nexport const UPDATE_B2B_PROFILE = \"UPDATE_B2B_PROFILE\";\nexport const UPDATE_B2B_PROFILE_SUCCESS =\n \"UPDATE_B2B_PROFILE_SUCCESS\";\nexport const UPDATE_B2B_PROFILE_FAIL = \"UPDATE_B2B_PROFILE_FAIL\";\n\n","import {\n GET_B2B_PROFILE,\n GET_B2B_PROFILE_FAIL,\n GET_B2B_PROFILE_SUCCESS,\n UPDATE_B2B_PROFILE,\n UPDATE_B2B_PROFILE_SUCCESS,\n UPDATE_B2B_PROFILE_FAIL,\n} from \"./actionTypes\";\n\n// ----------- Lab profile APIs actions -----------------\nexport const getB2bProfile = id => ({\n type: GET_B2B_PROFILE,\n payload: id,\n});\n\nexport const getB2bProfileSuccess = b2bProfile => ({\n type: GET_B2B_PROFILE_SUCCESS,\n payload: b2bProfile,\n});\n\nexport const getB2bProfileFail = error => ({\n type: GET_B2B_PROFILE_FAIL,\n payload: error,\n});\n\nexport const updateB2bProfile = (b2bProfile, id) => ({\n type: UPDATE_B2B_PROFILE,\n payload: { b2bProfile, id },\n});\n\nexport const updateB2bProfileSuccess = b2bProfile => ({\n type: UPDATE_B2B_PROFILE_SUCCESS,\n payload: b2bProfile,\n});\n\nexport const updateB2bProfileFail = error => ({\n type: UPDATE_B2B_PROFILE_FAIL,\n payload: error,\n});\n","/* LAB PROFILE */\nexport const GET_DONOR_PROFILE = \"GET_DONOR_PROFILE\";\nexport const GET_DONOR_PROFILE_SUCCESS = \"GET_DONOR_PROFILE_SUCCESS\";\nexport const GET_DONOR_PROFILE_FAIL = \"GET_DONOR_PROFILE_FAIL\";\n\n\nexport const UPDATE_DONOR_PROFILE = \"UPDATE_DONOR_PROFILE\";\nexport const UPDATE_DONOR_PROFILE_SUCCESS =\n \"UPDATE_DONOR_PROFILE_SUCCESS\";\nexport const UPDATE_DONOR_PROFILE_FAIL = \"UPDATE_DONOR_PROFILE_FAIL\";\n\n","import {\n GET_DONOR_PROFILE,\n GET_DONOR_PROFILE_FAIL,\n GET_DONOR_PROFILE_SUCCESS,\n UPDATE_DONOR_PROFILE,\n UPDATE_DONOR_PROFILE_SUCCESS,\n UPDATE_DONOR_PROFILE_FAIL,\n} from \"./actionTypes\";\n\n// ----------- Lab profile APIs actions -----------------\nexport const getDonorProfile = id => ({\n type: GET_DONOR_PROFILE,\n payload: id,\n});\n\nexport const getDonorProfileSuccess = donorProfile => ({\n type: GET_DONOR_PROFILE_SUCCESS,\n payload: donorProfile,\n});\n\nexport const getDonorProfileFail = error => ({\n type: GET_DONOR_PROFILE_FAIL,\n payload: error,\n});\n\nexport const updateDonorProfile = (donorProfile, id) => ({\n type: UPDATE_DONOR_PROFILE,\n payload: { donorProfile, id },\n});\n\nexport const updateDonorProfileSuccess = donorProfile => ({\n type: UPDATE_DONOR_PROFILE_SUCCESS,\n payload: donorProfile,\n});\n\nexport const updateDonorProfileFail = error => ({\n type: UPDATE_DONOR_PROFILE_FAIL,\n payload: error,\n});\n","/* LAB PROFILE */\nexport const GET_STAFF_PROFILE = \"GET_STAFF_PROFILE\";\nexport const GET_STAFF_PROFILE_SUCCESS = \"GET_STAFF_PROFILE_SUCCESS\";\nexport const GET_STAFF_PROFILE_FAIL = \"GET_STAFF_PROFILE_FAIL\";\n\nexport const UPDATE_STAFF_PROFILE = \"UPDATE_STAFF_PROFILE\";\nexport const UPDATE_STAFF_PROFILE_SUCCESS = \"UPDATE_STAFF_PROFILE_SUCCESS\";\nexport const UPDATE_STAFF_PROFILE_FAIL = \"UPDATE_STAFF_PROFILE_FAIL\";\n","import {\n GET_STAFF_PROFILE,\n GET_STAFF_PROFILE_FAIL,\n GET_STAFF_PROFILE_SUCCESS,\n UPDATE_STAFF_PROFILE,\n UPDATE_STAFF_PROFILE_SUCCESS,\n UPDATE_STAFF_PROFILE_FAIL,\n} from \"./actionTypes\";\n\n// ----------- Staff profile APIs actions -----------------\nexport const getStaffProfile = id => ({\n type: GET_STAFF_PROFILE,\n payload: id,\n});\n\nexport const getStaffProfileSuccess = staffProfile => ({\n type: GET_STAFF_PROFILE_SUCCESS,\n payload: staffProfile,\n});\n\nexport const getStaffProfileFail = error => ({\n type: GET_STAFF_PROFILE_FAIL,\n payload: error,\n});\n\nexport const updateStaffProfile = (staffProfile, id) => ({\n type: UPDATE_STAFF_PROFILE,\n payload: { staffProfile, id },\n});\n\nexport const updateStaffProfileSuccess = staffProfile => ({\n type: UPDATE_STAFF_PROFILE_SUCCESS,\n payload: staffProfile,\n});\n\nexport const updateStaffProfileFail = error => ({\n type: UPDATE_STAFF_PROFILE_FAIL,\n payload: error,\n});\n","/* LAB PROFILE */\nexport const GET_SAMPLE_COLLECTOR_PROFILE = \"GET_SAMPLE_COLLECTOR_PROFILE\";\nexport const GET_SAMPLE_COLLECTOR_PROFILE_SUCCESS = \"GET_SAMPLE_COLLECTOR_PROFILE_SUCCESS\";\nexport const GET_SAMPLE_COLLECTOR_PROFILE_FAIL = \"GET_SAMPLE_COLLECTOR_PROFILE_FAIL\";\n\nexport const UPDATE_SAMPLE_COLLECTOR_PROFILE = \"UPDATE_SAMPLE_COLLECTOR_PROFILE\";\nexport const UPDATE_SAMPLE_COLLECTOR_PROFILE_SUCCESS = \"UPDATE_SAMPLE_COLLECTOR_PROFILE_SUCCESS\";\nexport const UPDATE_SAMPLE_COLLECTOR_PROFILE_FAIL = \"UPDATE_SAMPLE_COLLECTOR_PROFILE_FAIL\";\n","import {\n GET_SAMPLE_COLLECTOR_PROFILE,\n GET_SAMPLE_COLLECTOR_PROFILE_FAIL,\n GET_SAMPLE_COLLECTOR_PROFILE_SUCCESS,\n UPDATE_SAMPLE_COLLECTOR_PROFILE,\n UPDATE_SAMPLE_COLLECTOR_PROFILE_SUCCESS,\n UPDATE_SAMPLE_COLLECTOR_PROFILE_FAIL,\n} from \"./actionTypes\";\n\n// ----------- SampleCollector profile APIs actions -----------------\nexport const getSampleCollectorProfile = id => ({\n type: GET_SAMPLE_COLLECTOR_PROFILE,\n payload: id,\n});\n\nexport const getSampleCollectorProfileSuccess = sampleCollectorProfile => (\n console.log(\"actions lab profile\",sampleCollectorProfile),\n {\n type: GET_SAMPLE_COLLECTOR_PROFILE_SUCCESS,\n payload: sampleCollectorProfile,\n});\n\nexport const getSampleCollectorProfileFail = error => ({\n type: GET_SAMPLE_COLLECTOR_PROFILE_FAIL,\n payload: error,\n});\n\nexport const updateSampleCollectorProfile = (sampleCollectorProfile, id) => ({\n type: UPDATE_SAMPLE_COLLECTOR_PROFILE,\n payload: { sampleCollectorProfile, id },\n});\n\nexport const updateSampleCollectorProfileSuccess = sampleCollectorProfile => ({\n type: UPDATE_SAMPLE_COLLECTOR_PROFILE_SUCCESS,\n payload: sampleCollectorProfile,\n});\n\nexport const updateSampleCollectorProfileFail = error => ({\n type: UPDATE_SAMPLE_COLLECTOR_PROFILE_FAIL,\n payload: error,\n});\n","/* LAB PROFILE */\nexport const GET_LAB_SETTINGS = \"GET_LAB_SETTINGS\";\nexport const GET_LAB_SETTINGS_SUCCESS = \"GET_LAB_SETTINGS_SUCCESS\";\nexport const GET_LAB_SETTINGS_FAIL = \"GET_LAB_SETTINGS_FAIL\";\n\nexport const UPDATE_LAB_SETTINGS = \"UPDATE_LAB_SETTINGS\";\nexport const UPDATE_LAB_SETTINGS_SUCCESS = \"UPDATE_LAB_SETTINGS_SUCCESS\";\nexport const UPDATE_LAB_SETTINGS_FAIL = \"UPDATE_LAB_SETTINGS_FAIL\";\n","import {\n GET_LAB_SETTINGS,\n GET_LAB_SETTINGS_FAIL,\n GET_LAB_SETTINGS_SUCCESS,\n UPDATE_LAB_SETTINGS,\n UPDATE_LAB_SETTINGS_SUCCESS,\n UPDATE_LAB_SETTINGS_FAIL,\n} from \"./actionTypes\";\n\n// ----------- Lab settings APIs actions -----------------\nexport const getLabSettings = id => ({\n type: GET_LAB_SETTINGS,\n payload: id,\n});\n\nexport const getLabSettingsSuccess = labSettings => ({\n type: GET_LAB_SETTINGS_SUCCESS,\n payload: labSettings,\n});\n\nexport const getLabSettingsFail = error => ({\n type: GET_LAB_SETTINGS_FAIL,\n payload: error,\n});\n\nexport const updateLabSettings = (labSettings, id) => ({\n type: UPDATE_LAB_SETTINGS,\n payload: { labSettings, id },\n});\n\nexport const updateLabSettingsSuccess = labSettings => ({\n type: UPDATE_LAB_SETTINGS_SUCCESS,\n payload: labSettings,\n});\n\nexport const updateLabSettingsFail = error => ({\n type: UPDATE_LAB_SETTINGS_FAIL,\n payload: error,\n});\n","/* LAB PROFILE */\nexport const GET_LAB_PAYMENTS = \"GET_LAB_PAYMENTS\";\nexport const GET_LAB_PAYMENTS_SUCCESS = \"GET_LAB_PAYMENTS_SUCCESS\";\nexport const GET_LAB_PAYMENTS_FAIL = \"GET_LAB_PAYMENTS_FAIL\";\n\nexport const UPDATE_LAB_PAYMENTS = \"UPDATE_LAB_PAYMENTS\";\nexport const UPDATE_LAB_PAYMENTS_SUCCESS = \"UPDATE_LAB_PAYMENTS_SUCCESS\";\nexport const UPDATE_LAB_PAYMENTS_FAIL = \"UPDATE_LAB_PAYMENTS_FAIL\";\n","import {\n GET_LAB_PAYMENTS,\n GET_LAB_PAYMENTS_FAIL,\n GET_LAB_PAYMENTS_SUCCESS,\n UPDATE_LAB_PAYMENTS,\n UPDATE_LAB_PAYMENTS_SUCCESS,\n UPDATE_LAB_PAYMENTS_FAIL,\n} from \"./actionTypes\";\n\n// ----------- Lab settings APIs actions -----------------\nexport const getLabPayments = id => ({\n type: GET_LAB_PAYMENTS,\n payload: id,\n});\n\nexport const getLabPaymentsSuccess = labPayments => ({\n type: GET_LAB_PAYMENTS_SUCCESS,\n payload: labPayments,\n});\n\nexport const getLabPaymentsFail = error => ({\n type: GET_LAB_PAYMENTS_FAIL,\n payload: error,\n});\n\nexport const updateLabPayments = (labPayments, id) => ({\n type: UPDATE_LAB_PAYMENTS,\n payload: { labPayments, id },\n});\n\nexport const updateLabPaymentsSuccess = labPayments => ({\n type: UPDATE_LAB_PAYMENTS_SUCCESS,\n payload: labPayments,\n});\n\nexport const updateLabPaymentsFail = error => ({\n type: UPDATE_LAB_PAYMENTS_FAIL,\n payload: error,\n});\n","/* DONOR PROFILE */\nexport const GET_DONOR_SETTINGS = \"GET_DONOR_SETTINGS\";\nexport const GET_DONOR_SETTINGS_SUCCESS = \"GET_DONOR_SETTINGS_SUCCESS\";\nexport const GET_DONOR_SETTINGS_FAIL = \"GET_DONOR_SETTINGS_FAIL\";\n\nexport const UPDATE_DONOR_SETTINGS = \"UPDATE_DONOR_SETTINGS\";\nexport const UPDATE_DONOR_SETTINGS_SUCCESS = \"UPDATE_DONOR_SETTINGS_SUCCESS\";\nexport const UPDATE_DONOR_SETTINGS_FAIL = \"UPDATE_DONOR_SETTINGS_FAIL\";\n\n// Territories\nexport const GET_TERRITORIES_LIST =\n \"GET_TERRITORIES_LIST\";\nexport const GET_TERRITORIES_LIST_SUCCESS =\n \"GET_TERRITORIES_LIST_SUCCESS\";\nexport const GET_TERRITORIES_LIST_FAIL =\n \"GET_TERRITORIES_LIST_FAIL\";","import {\n GET_TERRITORIES_LIST,\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n GET_DONOR_SETTINGS,\n GET_DONOR_SETTINGS_FAIL,\n GET_DONOR_SETTINGS_SUCCESS,\n UPDATE_DONOR_SETTINGS,\n UPDATE_DONOR_SETTINGS_SUCCESS,\n UPDATE_DONOR_SETTINGS_FAIL,\n} from \"./actionTypes\";\n\n// Territories\nexport const getTerritoriesList = () => ({\n type: GET_TERRITORIES_LIST,\n payload: {},\n});\n\nexport const getTerritoriesListSuccess =\n territories => ({\n type: GET_TERRITORIES_LIST_SUCCESS,\n payload: territories,\n });\n\nexport const getTerritoriesListFail = error => ({\n type: GET_TERRITORIES_LIST_FAIL,\n payload: error,\n});\n// ----------- Donor settings APIs actions -----------------\nexport const getDonorSettings = id => ({\n type: GET_DONOR_SETTINGS,\n payload: id,\n});\n\n\nexport const getDonorSettingsSuccess = donorSettings => ({\n type: GET_DONOR_SETTINGS_SUCCESS,\n payload: donorSettings,\n});\n\nexport const getDonorSettingsFail = error => ({\n type: GET_DONOR_SETTINGS_FAIL,\n payload: error,\n});\n\nexport const updateDonorSettings = (donorSettings, id) => ({\n type: UPDATE_DONOR_SETTINGS,\n payload: { donorSettings, id },\n});\n\nexport const updateDonorSettingsSuccess = donorSettings => ({\n type: UPDATE_DONOR_SETTINGS_SUCCESS,\n payload: donorSettings,\n});\n\nexport const updateDonorSettingsFail = error => ({\n type: UPDATE_DONOR_SETTINGS_FAIL,\n payload: error,\n});\n","/* PATIENT PROFILE */\nexport const GET_PATIENT_PROFILE = \"GET_PATIENT_PROFILE\";\nexport const GET_PATIENT_PROFILE_SUCCESS = \"GET_PATIENT_PROFILE_SUCCESS\";\nexport const GET_PATIENT_PROFILE_FAIL = \"GET_PATIENT_PROFILE_FAIL\";\n\n\nexport const UPDATE_PATIENT_PROFILE = \"UPDATE_PATIENT_PROFILE\";\nexport const UPDATE_PATIENT_PROFILE_SUCCESS =\n \"UPDATE_PATIENT_PROFILE_SUCCESS\";\nexport const UPDATE_PATIENT_PROFILE_FAIL = \"UPDATE_PATIENT_PROFILE_FAIL\";\n\n","import {\n GET_PATIENT_PROFILE,\n GET_PATIENT_PROFILE_FAIL,\n GET_PATIENT_PROFILE_SUCCESS,\n UPDATE_PATIENT_PROFILE,\n UPDATE_PATIENT_PROFILE_SUCCESS,\n UPDATE_PATIENT_PROFILE_FAIL,\n} from \"./actionTypes\";\n\n// ----------- Patient profile APIs actions -----------------\nexport const getPatientProfile = id => ({\n type: GET_PATIENT_PROFILE,\n payload: id,\n});\n\nexport const getPatientProfileSuccess = patientProfile => ({\n type: GET_PATIENT_PROFILE_SUCCESS,\n payload: patientProfile,\n});\n\nexport const getPatientProfileFail = error => ({\n type: GET_PATIENT_PROFILE_FAIL,\n payload: error,\n});\n\nexport const updatePatientProfile = (patientProfile, id) => ({\n type: UPDATE_PATIENT_PROFILE,\n payload: { patientProfile, id },\n});\n\nexport const updatePatientProfileSuccess = patientProfile => ({\n type: UPDATE_PATIENT_PROFILE_SUCCESS,\n payload: patientProfile,\n});\n\nexport const updatePatientProfileFail = error => ({\n type: UPDATE_PATIENT_PROFILE_FAIL,\n payload: error,\n});\n","/* CORPORATE PROFILE */\nexport const GET_CORPORATE_PROFILE = \"GET_CORPORATE_PROFILE\";\nexport const GET_CORPORATE_PROFILE_SUCCESS = \"GET_CORPORATE_PROFILE_SUCCESS\";\nexport const GET_CORPORATE_PROFILE_FAIL = \"GET_CORPORATE_PROFILE_FAIL\";\n\n\nexport const UPDATE_CORPORATE_PROFILE = \"UPDATE_CORPORATE_PROFILE\";\nexport const UPDATE_CORPORATE_PROFILE_SUCCESS =\n \"UPDATE_CORPORATE_PROFILE_SUCCESS\";\nexport const UPDATE_CORPORATE_PROFILE_FAIL = \"UPDATE_CORPORATE_PROFILE_FAIL\";\n","import {\n GET_CORPORATE_PROFILE,\n GET_CORPORATE_PROFILE_FAIL,\n GET_CORPORATE_PROFILE_SUCCESS,\n UPDATE_CORPORATE_PROFILE,\n UPDATE_CORPORATE_PROFILE_SUCCESS,\n UPDATE_CORPORATE_PROFILE_FAIL,\n} from \"./actionTypes\";\n\n// ----------- Corporate profile APIs actions -----------------\nexport const getCorporateProfile = id => ({\n type: GET_CORPORATE_PROFILE,\n payload: id,\n});\n\nexport const getCorporateProfileSuccess = CorporateProfile => ({\n type: GET_CORPORATE_PROFILE_SUCCESS,\n payload: CorporateProfile,\n});\n\nexport const getCorporateProfileFail = error => ({\n type: GET_CORPORATE_PROFILE_FAIL,\n payload: error,\n});\n\nexport const updateCorporateProfile = (CorporateProfile, id) => {\n console.log('Dispatching updateCorporateProfile action:', CorporateProfile, id);\n return {\n type: UPDATE_CORPORATE_PROFILE,\n payload: { CorporateProfile, id },\n };\n};\n\nexport const updateCorporateProfileSuccess = (CorporateProfile) => {\n console.log('Dispatching suceesssupdateCorporateProfile action:', CorporateProfile);\n return{\n type: UPDATE_CORPORATE_PROFILE_SUCCESS,\n payload: CorporateProfile,\n}\n};\n\n\nexport const updateCorporateProfileFail = error => ({\n type: UPDATE_CORPORATE_PROFILE_FAIL,\n payload: error,\n});\n","/* PRODUCTS */\nexport const GET_NEARBY_LABS = \"GET_NEARBY_LABS\";\nexport const GET_NEARBY_LABS_SUCCESS = \"GET_NEARBY_LABS_SUCCESS\";\nexport const GET_NEARBY_LABS_FAIL = \"GET_NEARBY_LABS_FAIL\";\n\nexport const GET_CORPORATE_LABS = \"GET_CORPORATE_LABS\";\nexport const GET_CORPORATE_LABS_SUCCESS = \"GET_CORPORATE_LABS_SUCCESS\";\nexport const GET_CORPORATE_LABS_FAIL = \"GET_CORPORATE_LABS_FAIL\";\n\nexport const GET_REGION_WISE_ADVERTISEMENT = \"REGION_WISE_ADVERTISEMENT\";\nexport const GET_REGION_WISE_ADVERTISEMENT_SUCCESS = \"GET_REGION_WISE_ADVERTISEMENT_SUCCESS\";\nexport const GET_REGION_WISE_ADVERTISEMENT_FAIL = \"GET_REGION_WISE_ADVERTISEMENT_FAIL\";\n\nexport const GET_ADV_LIVE = \"GET_ADV_LIVE\";\nexport const GET_ADV_LIVE_SUCCESS = \"GET_ADV_LIVE_SUCCESS\";\nexport const GET_ADV_LIVE_FAIL = \"GET_ADV_LIVE_FAIL\";\n\n/* PATIENT PROFILE */\nexport const GET_PATIENT_PROFILE = \"GET_PATIENT_PROFILE\";\nexport const GET_PATIENT_PROFILE_SUCCESS = \"GET_PATIENT_PROFILE_SUCCESS\";\nexport const GET_PATIENT_PROFILE_FAIL = \"GET_PATIENT_PROFILE_FAIL\";","import {\n GET_NEARBY_LABS,\n GET_NEARBY_LABS_FAIL,\n GET_NEARBY_LABS_SUCCESS,\n GET_CORPORATE_LABS,\n GET_CORPORATE_LABS_FAIL,\n GET_CORPORATE_LABS_SUCCESS,\n GET_REGION_WISE_ADVERTISEMENT,\n GET_REGION_WISE_ADVERTISEMENT_FAIL,\n GET_REGION_WISE_ADVERTISEMENT_SUCCESS,\n GET_ADV_LIVE,\n GET_ADV_LIVE_FAIL,\n GET_ADV_LIVE_SUCCESS,\n GET_PATIENT_PROFILE,\n GET_PATIENT_PROFILE_FAIL,\n GET_PATIENT_PROFILE_SUCCESS,\n} from \"./actionTypes\";\n\n\nexport const getPatientProfile = id => ({\n type: GET_PATIENT_PROFILE,\n payload: id,\n});\n\nexport const getPatientProfileSuccess = patientProfile => (\n console.log(\"actions\",patientProfile),\n {\n type: GET_PATIENT_PROFILE_SUCCESS,\n payload: patientProfile,\n});\n\nexport const getPatientProfileFail = error => ({\n type: GET_PATIENT_PROFILE_FAIL,\n payload: error,\n});\nexport const getNearbyLabs = locationDetails => ({\n type: GET_NEARBY_LABS,\n payload: { locationDetails },\n});\n\nexport const getNearbyLabsSuccess = nearbyLabs => ({\n type: GET_NEARBY_LABS_SUCCESS,\n payload: nearbyLabs,\n});\n\nexport const getNearbyLabsFail = error => ({\n type: GET_NEARBY_LABS_FAIL,\n payload: error,\n});\nexport const getCorporateLabs = locationDetails => ({\n type: GET_CORPORATE_LABS,\n payload: { locationDetails },\n});\n\nexport const getCorporateLabsSuccess = corporateLab => ({\n type: GET_CORPORATE_LABS_SUCCESS,\n payload: corporateLab,\n});\n\nexport const getCorporateLabsFail = error => ({\n type: GET_CORPORATE_LABS_FAIL,\n payload: error,\n});\n\nexport const getRegionWiseAdvertisement = locationDetails => ({\n type: GET_REGION_WISE_ADVERTISEMENT,\n payload: { locationDetails },\n});\n\nexport const getRegionWiseAdvertisementSuccess = regionWiseAdvertisement => ({\n type: GET_REGION_WISE_ADVERTISEMENT_SUCCESS,\n payload: regionWiseAdvertisement,\n});\n\nexport const getRegionWiseAdvertisementFail = error => ({\n type: GET_REGION_WISE_ADVERTISEMENT_FAIL,\n payload: error,\n});\n\n\nexport const getAdvLive = locationDetails => ({\n type: GET_ADV_LIVE,\n payload: { locationDetails },\n});\n\nexport const getAdvLiveSuccess = advLives => ({\n type: GET_ADV_LIVE_SUCCESS,\n payload: advLives,\n});\n\nexport const getAdvLiveFail = error => ({\n type: GET_ADV_LIVE_FAIL,\n payload: error,\n});\n\n","/* review labs registered */\nexport const GET_REVIEW_PERFORMANCE = \"GET_REVIEW_PERFORMANCE\";\nexport const GET_REVIEW_PERFORMANCE_SUCCESS =\n \"GET_REVIEW_PERFORMANCE_SUCCESS\";\nexport const GET_REVIEW_PERFORMANCE_FAIL = \"GET_REVIEW_PERFORMANCE_FAIL\";\n\n\n// review offered tests added\n\nexport const GET_REVIEW_PERFORMANCE_TEST = \"GET_REVIEW_PERFORMANCE_TEST\";\nexport const GET_REVIEW_PERFORMANCE_TEST_SUCCESS =\n \"GET_REVIEW_PERFORMANCE_TEST_SUCCESS\";\nexport const GET_REVIEW_PERFORMANCE_TEST_FAIL = \"GET_REVIEW_PERFORMANCE_TEST_FAIL\";","import {\n GET_REVIEW_PERFORMANCE,\n GET_REVIEW_PERFORMANCE_FAIL,\n GET_REVIEW_PERFORMANCE_SUCCESS,\n GET_REVIEW_PERFORMANCE_TEST,\n GET_REVIEW_PERFORMANCE_TEST_SUCCESS,\n GET_REVIEW_PERFORMANCE_TEST_FAIL\n} from \"./actionTypes\";\n\nexport const getReviewPerformance = (start_date, end_date) => {\n console.log(\"Dispatching action with start_date and end_date:\", start_date, end_date);\n return {\n type: GET_REVIEW_PERFORMANCE,\n payload: { start_date, end_date },\n };\n};\n\nexport const getReviewPerformanceSuccess = (ReviewPerformance) => {\n console.log(\"Dispatching success action with ReviewPerformance data:\", ReviewPerformance);\n return {\n type: GET_REVIEW_PERFORMANCE_SUCCESS,\n payload: ReviewPerformance,\n };\n};\n\nexport const getReviewPerformanceFail = (error) => {\n console.log(\"Dispatching fail action with error:\", error);\n return {\n type: GET_REVIEW_PERFORMANCE_FAIL,\n payload: error,\n };\n};\n\nexport const getReviewPerformanceTest = (start_date, end_date) => {\n console.log(\"Dispatching action with start_date and end_date:\", start_date, end_date);\n return {\n type: GET_REVIEW_PERFORMANCE_TEST,\n payload: { start_date, end_date },\n };\n};\n\nexport const getReviewPerformanceTestSuccess = (ReviewPerformanceTest) => {\n console.log(\"Dispatching success action with ReviewPerformance data:\", ReviewPerformanceTest);\n return {\n type: GET_REVIEW_PERFORMANCE_TEST_SUCCESS,\n payload: ReviewPerformanceTest,\n };\n};\n\nexport const getReviewPerformanceTestFail = (error) => {\n console.log(\"Dispatching fail action with error:\", error);\n return {\n type: GET_REVIEW_PERFORMANCE_TEST_FAIL,\n payload: error,\n };\n};\n","/* PRODUCTS */\nexport const GET_NEARBY_TESTS = \"GET_NEARBY_TESTS\";\nexport const GET_NEARBY_TESTS_SUCCESS = \"GET_NEARBY_TESTS_SUCCESS\";\nexport const GET_NEARBY_TESTS_FAIL = \"GET_NEARBY_TESTS_FAIL\";\n\nexport const GET_NEARBY_TESTS_DISCOUNTEDLH = \"GET_NEARBY_TESTS_DISCOUNTEDLH\";\nexport const GET_NEARBY_TESTS_DISCOUNTEDLH_SUCCESS = \"GET_NEARBY_TESTS_DISCOUNTEDLH_SUCCESS\";\nexport const GET_NEARBY_TESTS_DISCOUNTEDLH_FAIL = \"GET_NEARBY_TESTS_DISCOUNTEDLH_FAIL\";\n\nexport const GET_TERRITORIES_LIST =\n \"GET_TERRITORIES_LIST\";\nexport const GET_TERRITORIES_LIST_SUCCESS =\n \"GET_TERRITORIES_LIST_SUCCESS\";\nexport const GET_TERRITORIES_LIST_FAIL =\n \"GET_TERRITORIES_LIST_FAIL\";","/* PRODUCTS */\nexport const GET_NEARBY_PROFILES = \"GET_NEARBY_PROFILES\";\nexport const GET_NEARBY_PROFILES_SUCCESS = \"GET_NEARBY_PROFILES_SUCCESS\";\nexport const GET_NEARBY_PROFILES_FAIL = \"GET_NEARBY_PROFILES_FAIL\";\n\nexport const GET_PROFILES = \"GET_PROFILES\";\nexport const GET_PROFILES_SUCCESS = \"GET_PROFILES_SUCCESS\";\nexport const GET_PROFILES_FAIL = \"GET_PROFILES_FAIL\";\n\nexport const GET_TESTSS = \"GET_TESTSS\";\nexport const GET_TESTSS_SUCCESS = \"GET_TESTSS_SUCCESS\";\nexport const GET_TESTSS_FAIL = \"GET_TESTSS_FAIL\";\n\nexport const GET_TERRITORIES_LIST =\n \"GET_TERRITORIES_LIST\";\nexport const GET_TERRITORIES_LIST_SUCCESS =\n \"GET_TERRITORIES_LIST_SUCCESS\";\nexport const GET_TERRITORIES_LIST_FAIL =\n \"GET_TERRITORIES_LIST_FAIL\";\n\n","import {\n GET_NEARBY_PROFILES,\n GET_NEARBY_PROFILES_FAIL,\n GET_NEARBY_PROFILES_SUCCESS,\n GET_PROFILES,\n GET_PROFILES_FAIL,\n GET_PROFILES_SUCCESS,\n GET_TESTSS,\n GET_TESTSS_FAIL,\n GET_TESTSS_SUCCESS,\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n} from \"./actionTypes\";\n\nexport const getTerritoriesList = () => ({\n type: GET_TERRITORIES_LIST,\n payload: {},\n});\n\nexport const getTerritoriesListSuccess = territoriesList => ({\n type: GET_TERRITORIES_LIST_SUCCESS,\n payload: territoriesList,\n });\n\nexport const getTerritoriesListFail = error => ({\n type: GET_TERRITORIES_LIST_FAIL,\n payload: error,\n});\n\nexport const getNearbyProfiles = (search_type, address, id, test_name) => ({\n type: GET_NEARBY_PROFILES,\n payload: { search_type, address, id, test_name },\n});\n\nexport const getNearbyProfilesSuccess = nearbyProfiles => ({\n type: GET_NEARBY_PROFILES_SUCCESS,\n payload: nearbyProfiles,\n});\n\n\nexport const getNearbyProfilesFail = error => ({\n type: GET_NEARBY_PROFILES_FAIL,\n payload: error,\n});\n\nexport const getProfiles = () => ({\n type: GET_PROFILES,\n // payload: {},\n});\n\nexport const getProfilesSuccess = Profiles => ({\n type: GET_PROFILES_SUCCESS,\n payload: Profiles,\n});\n\nexport const getProfilesFail = error => ({\n type: GET_PROFILES_FAIL,\n payload: error,\n});\nexport const getTestss = () => ({\n type: GET_TESTSS,\n // payload: {},\n});\n\nexport const getTestssSuccess = Testss => ({\n type: GET_TESTSS_SUCCESS,\n payload: Testss,\n});\n\nexport const getTestssFail = error => ({\n type: GET_TESTSS_FAIL,\n payload: error,\n});\n\n","/* PRODUCTS */\nexport const GET_NEARBY_PACKAGES = \"GET_NEARBY_PACKAGES\";\nexport const GET_NEARBY_PACKAGES_SUCCESS = \"GET_NEARBY_PACKAGES_SUCCESS\";\nexport const GET_NEARBY_PACKAGES_FAIL = \"GET_NEARBY_PACKAGES_FAIL\";\n\nexport const GET_PACKAGES = \"GET_PACKAGES\";\nexport const GET_PACKAGES_SUCCESS = \"GET_PACKAGES_SUCCESS\";\nexport const GET_PACKAGES_FAIL = \"GET_PACKAGES_FAIL\";\n\nexport const GET_TERRITORIES_LIST =\n \"GET_TERRITORIES_LIST\";\nexport const GET_TERRITORIES_LIST_SUCCESS =\n \"GET_TERRITORIES_LIST_SUCCESS\";\nexport const GET_TERRITORIES_LIST_FAIL =\n \"GET_TERRITORIES_LIST_FAIL\";","/* PRODUCTS */\nexport const GET_NEARBY_RADIOLOGY = \"GET_NEARBY_RADIOLOGY\";\nexport const GET_NEARBY_RADIOLOGY_SUCCESS = \"GET_NEARBY_RADIOLOGY_SUCCESS\";\nexport const GET_NEARBY_RADIOLOGY_FAIL = \"GET_NEARBY_RADIOLOGY_FAIL\";\n\nexport const GET_RADIOLOGY = \"GET_RADIOLOGY\";\nexport const GET_RADIOLOGY_SUCCESS = \"GET_RADIOLOGY_SUCCESS\";\nexport const GET_RADIOLOGY_FAIL = \"GET_RADIOLOGY_FAIL\";\n\nexport const GET_TERRITORIES_LIST =\n \"GET_TERRITORIES_LIST\";\nexport const GET_TERRITORIES_LIST_SUCCESS =\n \"GET_TERRITORIES_LIST_SUCCESS\";\nexport const GET_TERRITORIES_LIST_FAIL =\n \"GET_TERRITORIES_LIST_FAIL\";","/* TESTS AVAILABLE */\nexport const GET_TESTS = \"GET_TESTS\";\nexport const GET_TESTS_SUCCESS = \"GET_TESTS_SUCCESS\";\nexport const GET_TESTS_FAIL = \"GET_TESTS_FAIL\";\n\n/* UNITS LIST */\nexport const GET_UNITS = \"GET_UNITS\";\nexport const GET_UNITS_SUCCESS = \"GET_UNITS_SUCCESS\";\nexport const GET_UNITS_FAIL = \"GET_UNITS_FAIL\";\n\nexport const GET_LAB_PROFILE = \"GET_LAB_PROFILE\";\nexport const GET_LAB_PROFILE_SUCCESS = \"GET_LAB_PROFILE_SUCCESS\";\nexport const GET_LAB_PROFILE_FAIL = \"GET_LAB_PROFILE_FAIL\";\n\n/* OFFERED TESTS */\nexport const GET_OFFERED_TESTS = \"GET_OFFERED_TESTS\";\nexport const GET_OFFERED_TESTS_SUCCESS = \"GET_OFFERED_TESTS_SUCCESS\";\nexport const GET_OFFERED_TESTS_FAIL = \"GET_OFFERED_TESTS_FAIL\";\n\nexport const GET_CORPORATE_TESTS = \"GET_CORPORATE_TESTS\";\nexport const GET_CORPORATE_TESTS_SUCCESS = \"GET_CORPORATE_TESTS_SUCCESS\";\nexport const GET_CORPORATE_TESTS_FAIL = \"GET_CORPORATE_TESTS_FAIL\";\n\nexport const GET_OFFEREDTEST_REFERRELFEE = \"GET_OFFEREDTEST_REFERRELFEE\";\nexport const GET_OFFEREDTEST_REFERRELFEE_SUCCESS = \"GET_OFFEREDTEST_REFERRELFEE_SUCCESS\";\nexport const GET_OFFEREDTEST_REFERRELFEE_FAIL = \"GET_OFFEREDTEST_REFERRELFEE_FAIL\";\n\nexport const GET_COFFEREDPROFILE_REFERRELFEE = \"GET_COFFEREDPROFILE_REFERRELFEE\";\nexport const GET_COFFEREDPROFILE_REFERRELFEE_SUCCESS = \"GET_COFFEREDPROFILE_REFERRELFEE_SUCCESS\";\nexport const GET_COFFEREDPROFILE_REFERRELFEE_FAIL = \"GET_COFFEREDPROFILE_REFERRELFEE_FAIL\";\n\nexport const GET_COFFEREDPACKAGE_REFERRELFEE = \"GET_COFFEREDPACKAGE_REFERRELFEE\";\nexport const GET_COFFEREDPACKAGE_REFERRELFEE_SUCCESS = \"GET_COFFEREDPACKAGE_REFERRELFEE_SUCCESS\";\nexport const GET_COFFEREDPACKAGE_REFERRELFEE_FAIL = \"GET_COFFEREDPACKAGE_REFERRELFEE_FAIL\";\n\nexport const GET_COFFEREDRADIOLOGY_REFERRELFEE = \"GET_COFFEREDRADIOLOGY_REFERRELFEE\";\nexport const GET_COFFEREDRADIOLOGY_REFERRELFEE_SUCCESS = \"GET_COFFEREDRADIOLOGY_REFERRELFEE_SUCCESS\";\nexport const GET_COFFEREDRADIOLOGY_REFERRELFEE_FAIL = \"GET_COFFEREDRADIOLOGY_REFERRELFEE_FAIL\";\n\nexport const GET_COFFEREDTEST_REFERRELFEE = \"GET_COFFEREDTEST_REFERRELFEE\";\nexport const GET_COFFEREDTEST_REFERRELFEE_SUCCESS = \"GET_COFFEREDTEST_REFERRELFEE_SUCCESS\";\nexport const GET_COFFEREDTEST_REFERRELFEE_FAIL = \"GET_COFFEREDTEST_REFERRELFEE_FAIL\";\n\nexport const GET_OFFEREDPROFILE_REFERRELFEE = \"GET_OFFEREDPROFILE_REFERRELFEE\";\nexport const GET_OFFEREDPROFILE_REFERRELFEE_SUCCESS = \"GET_OFFEREDPROFILE_REFERRELFEE_SUCCESS\";\nexport const GET_OFFEREDPROFILE_REFERRELFEE_FAIL = \"GET_OFFEREDPROFILE_REFERRELFEE_FAIL\";\n\nexport const GET_OFFEREDPACKAGE_REFERRELFEE = \"GET_OFFEREDPACKAGE_REFERRELFEE\";\nexport const GET_OFFEREDPACKAGE_REFERRELFEE_SUCCESS = \"GET_OFFEREDPACKAGE_REFERRELFEE_SUCCESS\";\nexport const GET_OFFEREDPACKAGE_REFERRELFEE_FAIL = \"GET_OFFEREDPACKAGE_REFERRELFEE_FAIL\";\n\nexport const GET_OFFEREDRADIOLOGY_REFERRELFEE = \"GET_OFFEREDRADIOLOGY_REFERRELFEE\";\nexport const GET_OFFEREDRADIOLOGY_REFERRELFEE_SUCCESS = \"GET_OFFEREDRADIOLOGY_REFERRELFEE_SUCCESS\";\nexport const GET_OFFEREDRADIOLOGY_REFERRELFEE_FAIL = \"GET_OFFEREDRADIOLOGY_REFERRELFEE_FAIL\";\n\nexport const ADD_NEW_OFFERED_TEST = \"ADD_NEW_OFFERED_TEST\";\nexport const ADD_OFFERED_TEST_SUCCESS = \"ADD_OFFERED_TEST_SUCCESS\";\nexport const ADD_OFFERED_TEST_FAIL = \"ADD_OFFERED_TEST_FAIL\";\n\nexport const ADD_NEW_CORPORATE_TEST = \"ADD_NEW_CORPORATE_TEST\";\nexport const ADD_CORPORATE_TEST_SUCCESS = \"ADD_CORPORATE_TEST_SUCCESS\";\nexport const ADD_CORPORATE_TEST_FAIL = \"ADD_CORPORATE_TEST_FAIL\";\n\nexport const ADD_NEW_CORPORATE = \"ADD_NEW_CORPORATE\";\nexport const ADD_CORPORATE_SUCCESS = \"ADD_CORPORATE_SUCCESS\";\nexport const ADD_CORPORATE_FAIL = \"ADD_CORPORATE_FAIL\";\n\nexport const ADD_NEW_OFFERED_MAINTEST = \"ADD_NEW_OFFERED_MAINTEST\";\nexport const ADD_OFFERED_MAINTEST_SUCCESS = \"ADD_OFFERED_MAINTEST_SUCCESS\";\nexport const ADD_OFFERED_MAINTEST_FAIL = \"ADD_OFFERED_MAINTEST_FAIL\";\n\nexport const UPDATE_OFFERED_TEST = \"UPDATE_OFFERED_TEST\";\nexport const UPDATE_OFFERED_TEST_SUCCESS = \"UPDATE_OFFERED_TEST_SUCCESS\";\nexport const UPDATE_OFFERED_TEST_FAIL = \"UPDATE_OFFERED_TEST_FAIL\";\n\nexport const UPDATE_CORPORATE_TEST = \"UPDATE_CORPORATE_TEST\";\nexport const UPDATE_CORPORATE_TEST_SUCCESS = \"UPDATE_CORPORATE_TEST_SUCCESS\";\nexport const UPDATE_CORPORATE_TEST_FAIL = \"UPDATE_CORPORATE_TEST_FAIL\";\n\nexport const UPDATE_CORPORATE_STATUS = \"UPDATE_CORPORATE_STATUS\";\nexport const UPDATE_CORPORATE_STATUS_SUCCESS = \"UPDATE_CORPORATE_STATUS_SUCCESS\";\nexport const UPDATE_CORPORATE_STATUS_FAIL = \"UPDATE_CORPORATE_STATUS_FAIL\";\n\nexport const UPDATE_ACORPORATE_STATUS = \"UPDATE_ACORPORATE_STATUS\";\nexport const UPDATE_ACORPORATE_STATUS_SUCCESS = \"UPDATE_ACORPORATE_STATUS_SUCCESS\";\nexport const UPDATE_ACORPORATE_STATUS_FAIL = \"UPDATE_ACORPORATE_STATUS_FAIL\";\n\nexport const DELETE_OFFERED_TEST = \"DELETE_OFFERED_TEST\";\nexport const DELETE_OFFERED_TEST_SUCCESS = \"DELETE_OFFERED_TEST_SUCCESS\";\nexport const DELETE_OFFERED_TEST_FAIL = \"DELETE_OFFERED_TEST_FAIL\";\n","import {\n GET_TESTS,\n GET_TESTS_FAIL,\n GET_TESTS_SUCCESS,\n GET_UNITS,\n GET_UNITS_FAIL,\n GET_UNITS_SUCCESS,\n GET_OFFERED_TESTS,\n GET_OFFERED_TESTS_FAIL,\n GET_OFFERED_TESTS_SUCCESS,\n GET_CORPORATE_TESTS,\n GET_CORPORATE_TESTS_FAIL,\n GET_CORPORATE_TESTS_SUCCESS,\n GET_OFFEREDTEST_REFERRELFEE,\n GET_OFFEREDTEST_REFERRELFEE_FAIL,\n GET_OFFEREDTEST_REFERRELFEE_SUCCESS,\n GET_COFFEREDTEST_REFERRELFEE,\n GET_COFFEREDTEST_REFERRELFEE_FAIL,\n GET_COFFEREDTEST_REFERRELFEE_SUCCESS,\n GET_COFFEREDPROFILE_REFERRELFEE,\n GET_COFFEREDPROFILE_REFERRELFEE_FAIL,\n GET_COFFEREDPROFILE_REFERRELFEE_SUCCESS,\n GET_COFFEREDPACKAGE_REFERRELFEE,\n GET_COFFEREDPACKAGE_REFERRELFEE_FAIL,\n GET_COFFEREDPACKAGE_REFERRELFEE_SUCCESS,\n GET_COFFEREDRADIOLOGY_REFERRELFEE,\n GET_COFFEREDRADIOLOGY_REFERRELFEE_FAIL,\n GET_COFFEREDRADIOLOGY_REFERRELFEE_SUCCESS,\n GET_OFFEREDPROFILE_REFERRELFEE,\n GET_OFFEREDPROFILE_REFERRELFEE_FAIL,\n GET_OFFEREDPROFILE_REFERRELFEE_SUCCESS,\n GET_OFFEREDPACKAGE_REFERRELFEE,\n GET_OFFEREDPACKAGE_REFERRELFEE_FAIL,\n GET_OFFEREDPACKAGE_REFERRELFEE_SUCCESS,\n GET_OFFEREDRADIOLOGY_REFERRELFEE,\n GET_OFFEREDRADIOLOGY_REFERRELFEE_FAIL,\n GET_OFFEREDRADIOLOGY_REFERRELFEE_SUCCESS,\n GET_LAB_PROFILE,\n GET_LAB_PROFILE_FAIL,\n GET_LAB_PROFILE_SUCCESS,\n ADD_NEW_OFFERED_TEST,\n ADD_OFFERED_TEST_SUCCESS,\n ADD_OFFERED_TEST_FAIL,\n ADD_NEW_CORPORATE_TEST,\n ADD_CORPORATE_TEST_SUCCESS,\n ADD_CORPORATE_TEST_FAIL,\n ADD_NEW_CORPORATE,\n ADD_CORPORATE_SUCCESS,\n ADD_CORPORATE_FAIL,\n ADD_NEW_OFFERED_MAINTEST,\n ADD_OFFERED_MAINTEST_SUCCESS,\n ADD_OFFERED_MAINTEST_FAIL,\n UPDATE_OFFERED_TEST,\n UPDATE_OFFERED_TEST_SUCCESS,\n UPDATE_OFFERED_TEST_FAIL,\n UPDATE_CORPORATE_TEST,\n UPDATE_CORPORATE_TEST_SUCCESS,\n UPDATE_CORPORATE_TEST_FAIL,\n UPDATE_CORPORATE_STATUS,\n UPDATE_CORPORATE_STATUS_SUCCESS,\n UPDATE_CORPORATE_STATUS_FAIL,\n UPDATE_ACORPORATE_STATUS,\n UPDATE_ACORPORATE_STATUS_SUCCESS,\n UPDATE_ACORPORATE_STATUS_FAIL,\n DELETE_OFFERED_TEST,\n DELETE_OFFERED_TEST_SUCCESS,\n DELETE_OFFERED_TEST_FAIL,\n} from \"./actionTypes\";\n\n// ----------- Test list APIs actions -----------------\nexport const getLabProfile = id => ({\n type: GET_LAB_PROFILE,\n payload: id,\n});\n\nexport const getLabProfileSuccess = labProfiles => (\n console.log(\"actions\",labProfiles),\n {\n type: GET_LAB_PROFILE_SUCCESS,\n payload: labProfiles,\n});\n\nexport const getLabProfileFail = error => ({\n type: GET_LAB_PROFILE_FAIL,\n payload: error,\n});\nexport const getTests = () => ({\n type: GET_TESTS,\n});\n\nexport const getTestsSuccess = tests => ({\n type: GET_TESTS_SUCCESS,\n payload: tests,\n});\n\nexport const getTestsFail = error => ({\n type: GET_TESTS_FAIL,\n payload: error,\n});\n\n// ----------- Unit list APIs actions -----------------\nexport const getUnits = () => ({\n type: GET_UNITS,\n});\n\nexport const getUnitsSuccess = units => ({\n type: GET_UNITS_SUCCESS,\n payload: units,\n});\n\nexport const getUnitsFail = error => ({\n type: GET_UNITS_FAIL,\n payload: error,\n});\n\n// ----------- Offered test list APIs actions -----------------\nexport const getOfferedTests = id => ({\n type: GET_OFFERED_TESTS,\n payload: id,\n});\n\nexport const getOfferedTestsSuccess = offeredTests => ({\n type: GET_OFFERED_TESTS_SUCCESS,\n payload: offeredTests,\n});\n\nexport const getOfferedTestsFail = error => ({\n type: GET_OFFERED_TESTS_FAIL,\n payload: error,\n});\n\nexport const getCorporateTests = id => ({\n type: GET_CORPORATE_TESTS,\n payload: id,\n});\n\nexport const getCorporateTestsSuccess = offeredTests => ({\n type: GET_CORPORATE_TESTS_SUCCESS,\n payload: offeredTests,\n});\n\nexport const getCorporateTestsFail = error => ({\n type: GET_CORPORATE_TESTS_FAIL,\n payload: error,\n});\n\nexport const getOfferedTestsReferrel = id => ({\n type: GET_OFFEREDTEST_REFERRELFEE,\n payload: id,\n});\n\nexport const getOfferedTestsReferrelSuccess = offeredTests => ({\n type: GET_OFFEREDTEST_REFERRELFEE_SUCCESS,\n payload: offeredTests,\n});\n\nexport const getOfferedTestsReferrelFail = error => ({\n type: GET_OFFEREDTEST_REFERRELFEE_FAIL,\n payload: error,\n});\n\nexport const getCOfferedTestsReferrel = id => ({\n type: GET_COFFEREDTEST_REFERRELFEE,\n payload: id,\n});\n\nexport const getCOfferedTestsReferrelSuccess = offeredTests => ({\n type: GET_COFFEREDTEST_REFERRELFEE_SUCCESS,\n payload: offeredTests,\n});\n\nexport const getCOfferedTestsReferrelFail = error => ({\n type: GET_COFFEREDTEST_REFERRELFEE_FAIL,\n payload: error,\n});\n\nexport const getCOfferedProfilesReferrel = id => ({\n type: GET_COFFEREDPROFILE_REFERRELFEE,\n payload: id,\n});\n\nexport const getCOfferedProfilesReferrelSuccess = offeredTests => ({\n type: GET_COFFEREDPROFILE_REFERRELFEE_SUCCESS,\n payload: offeredTests,\n});\n\nexport const getCOfferedProfilesReferrelFail = error => ({\n type: GET_COFFEREDPROFILE_REFERRELFEE_FAIL,\n payload: error,\n});\nexport const getCOfferedPackagesReferrel = id => ({\n type: GET_COFFEREDPACKAGE_REFERRELFEE,\n payload: id,\n});\n\nexport const getCOfferedPackagesReferrelSuccess = offeredTests => ({\n type: GET_COFFEREDPACKAGE_REFERRELFEE_SUCCESS,\n payload: offeredTests,\n});\n\nexport const getCOfferedPackagesReferrelFail = error => ({\n type: GET_COFFEREDPACKAGE_REFERRELFEE_FAIL,\n payload: error,\n});\nexport const getCOfferedRadiologysReferrel = id => ({\n type: GET_COFFEREDRADIOLOGY_REFERRELFEE,\n payload: id,\n});\n\nexport const getCOfferedRadiologysReferrelSuccess = offeredTests => ({\n type: GET_COFFEREDRADIOLOGY_REFERRELFEE_SUCCESS,\n payload: offeredTests,\n});\n\nexport const getCOfferedRadiologysReferrelFail = error => ({\n type: GET_COFFEREDRADIOLOGY_REFERRELFEE_FAIL,\n payload: error,\n});\n\nexport const getOfferedProfilesReferrel = id => ({\n type: GET_OFFEREDPROFILE_REFERRELFEE,\n payload: id,\n});\n\nexport const getOfferedProfilesReferrelSuccess = offeredTests => ({\n type: GET_OFFEREDPROFILE_REFERRELFEE_SUCCESS,\n payload: offeredTests,\n});\n\nexport const getOfferedProfilesReferrelFail = error => ({\n type: GET_OFFEREDPROFILE_REFERRELFEE_FAIL,\n payload: error,\n});\nexport const getOfferedPackagesReferrel = id => ({\n type: GET_OFFEREDPACKAGE_REFERRELFEE,\n payload: id,\n});\n\nexport const getOfferedPackagesReferrelSuccess = offeredTests => ({\n type: GET_OFFEREDPACKAGE_REFERRELFEE_SUCCESS,\n payload: offeredTests,\n});\n\nexport const getOfferedPackagesReferrelFail = error => ({\n type: GET_OFFEREDPACKAGE_REFERRELFEE_FAIL,\n payload: error,\n});\nexport const getOfferedRadiologysReferrel = id => ({\n type: GET_OFFEREDRADIOLOGY_REFERRELFEE,\n payload: id,\n});\n\nexport const getOfferedRadiologysReferrelSuccess = offeredTests => ({\n type: GET_OFFEREDRADIOLOGY_REFERRELFEE_SUCCESS,\n payload: offeredTests,\n});\n\nexport const getOfferedRadiologysReferrelFail = error => ({\n type: GET_OFFEREDRADIOLOGY_REFERRELFEE_FAIL,\n payload: error,\n});\n\nexport const addNewCorporateTest = (offeredTest, id) => ({\n type: ADD_NEW_CORPORATE_TEST,\n payload: { offeredTest, id },\n});\n\nexport const addCorporateTestSuccess = offeredTest => ({\n type: ADD_CORPORATE_TEST_SUCCESS,\n payload: offeredTest,\n});\n\nexport const addCorporateTestFail = error => ({\n type: ADD_CORPORATE_TEST_FAIL,\n payload: error,\n});\n\nexport const addNewCorporate = (offeredTest, id) => ({\n type: ADD_NEW_CORPORATE,\n payload: { offeredTest, id },\n});\n\nexport const addCorporateSuccess = offeredTest => ({\n type: ADD_CORPORATE_SUCCESS,\n payload: offeredTest,\n});\n\nexport const addCorporateFail = error => ({\n type: ADD_CORPORATE_FAIL,\n payload: error,\n});\n\nexport const addNewOfferedTest = (offeredTest, id) => ({\n type: ADD_NEW_OFFERED_TEST,\n payload: { offeredTest, id },\n});\n\nexport const addOfferedTestSuccess = offeredTest => ({\n type: ADD_OFFERED_TEST_SUCCESS,\n payload: offeredTest,\n});\n\nexport const addOfferedTestFail = error => ({\n type: ADD_OFFERED_TEST_FAIL,\n payload: error,\n});\n\nexport const addNewOfferedMainTest = (offeredTest, id) => ({\n type: ADD_NEW_OFFERED_MAINTEST,\n payload: { offeredTest, id },\n});\n\nexport const addOfferedMainTestSuccess = offeredTest => ({\n type: ADD_OFFERED_MAINTEST_SUCCESS,\n payload: offeredTest,\n});\n\nexport const addOfferedMainTestFail = error => ({\n type: ADD_OFFERED_MAINTEST_FAIL,\n payload: error,\n});\n\nexport const updateOfferedTest = offeredTest => ({\n type: UPDATE_OFFERED_TEST,\n payload: offeredTest,\n});\n\nexport const updateOfferedTestSuccess = offeredTest => ({\n type: UPDATE_OFFERED_TEST_SUCCESS,\n payload: offeredTest,\n});\n\nexport const updateOfferedTestFail = error => ({\n type: UPDATE_OFFERED_TEST_FAIL,\n payload: error,\n});\n\nexport const updateCorporateTest = offeredTest => ({\n type: UPDATE_CORPORATE_TEST,\n payload: offeredTest,\n});\n\nexport const updateCorporateTestSuccess = offeredTest => ({\n type: UPDATE_CORPORATE_TEST_SUCCESS,\n payload: offeredTest,\n});\n\nexport const updateCorporateTestFail = error => ({\n type: UPDATE_CORPORATE_TEST_FAIL,\n payload: error,\n});\nexport const updateCorporateStatus = offeredTest => ({\n type: UPDATE_CORPORATE_STATUS,\n payload: offeredTest,\n});\n\nexport const updateCorporateStatusSuccess = offeredTest => ({\n type: UPDATE_CORPORATE_STATUS_SUCCESS,\n payload: offeredTest,\n});\n\nexport const updateCorporateStatusFail = error => ({\n type: UPDATE_CORPORATE_STATUS_FAIL,\n payload: error,\n});\n\nexport const updateACorporateStatus = offeredTest => ({\n type: UPDATE_ACORPORATE_STATUS,\n payload: offeredTest,\n});\n\nexport const updateACorporateStatusSuccess = offeredTest => ({\n type: UPDATE_ACORPORATE_STATUS_SUCCESS,\n payload: offeredTest,\n});\n\nexport const updateACorporateStatusFail = error => ({\n type: UPDATE_ACORPORATE_STATUS_FAIL,\n payload: error,\n});\n\nexport const deleteOfferedTest = offeredTest => ({\n type: DELETE_OFFERED_TEST,\n payload: offeredTest,\n});\n\nexport const deleteOfferedTestSuccess = offeredTest => ({\n type: DELETE_OFFERED_TEST_SUCCESS,\n payload: offeredTest,\n});\n\nexport const deleteOfferedTestFail = error => ({\n type: DELETE_OFFERED_TEST_FAIL,\n payload: error,\n});\n","/* PATIENT TEST APPOINTMENTtS */\n\nexport const GET_TESTS_LIST =\n \"GET_TESTS_LIST\";\nexport const GET_TESTS_LIST_SUCCESS =\n \"GET_TESTS_LIST_SUCCESS\";\nexport const GET_TESTS_LIST_FAIL =\n \"GET_TESTS_LIST_FAIL\";\n\nexport const GET_CORPORATE_TESTS_LIST =\n \"GET_CORPORATE_TESTS_LIST\";\nexport const GET_CORPORATE_TESTS_LIST_SUCCESS =\n \"GET_CORPORATE_TESTS_LIST_SUCCESS\";\nexport const GET_CORPORATE_TESTS_LIST_FAIL =\n \"GET_CORPORATE_TESTS_LIST_FAIL\";\n","/* PATHOLOGISTS */\nexport const GET_PATHOLOGISTS = \"GET_PATHOLOGISTS\";\nexport const GET_PATHOLOGISTS_SUCCESS = \"GET_PATHOLOGISTS_SUCCESS\";\nexport const GET_PATHOLOGISTS_FAIL = \"GET_PATHOLOGISTS_FAIL\";\n\nexport const ADD_NEW_PATHOLOGIST = \"ADD_NEW_PATHOLOGIST\";\nexport const ADD_PATHOLOGIST_SUCCESS = \"ADD_PATHOLOGIST_SUCCESS\";\nexport const ADD_PATHOLOGIST_FAIL = \"ADD_PATHOLOGIST_FAIL\";\n\nexport const UPDATE_PATHOLOGIST = \"UPDATE_PATHOLOGIST\";\nexport const UPDATE_PATHOLOGIST_SUCCESS = \"UPDATE_PATHOLOGIST_SUCCESS\";\nexport const UPDATE_PATHOLOGIST_FAIL = \"UPDATE_PATHOLOGIST_FAIL\";\n\nexport const DELETE_PATHOLOGIST = \"DELETE_PATHOLOGIST\";\nexport const DELETE_PATHOLOGIST_SUCCESS = \"DELETE_PATHOLOGIST_SUCCESS\";\nexport const DELETE_PATHOLOGIST_FAIL = \"DELETE_PATHOLOGIST_FAIL\";\n","import {\n GET_PATHOLOGISTS,\n GET_PATHOLOGISTS_FAIL,\n GET_PATHOLOGISTS_SUCCESS,\n ADD_NEW_PATHOLOGIST,\n ADD_PATHOLOGIST_SUCCESS,\n ADD_PATHOLOGIST_FAIL,\n UPDATE_PATHOLOGIST,\n UPDATE_PATHOLOGIST_SUCCESS,\n UPDATE_PATHOLOGIST_FAIL,\n DELETE_PATHOLOGIST,\n DELETE_PATHOLOGIST_SUCCESS,\n DELETE_PATHOLOGIST_FAIL,\n} from \"./actionTypes\";\n\n// ----------- Pathologist list APIs actions -----------------\nexport const getPathologists = id => ({\n type: GET_PATHOLOGISTS,\n payload: id,\n});\n\nexport const getPathologistsSuccess = pathologists => ({\n type: GET_PATHOLOGISTS_SUCCESS,\n payload: pathologists,\n});\n\nexport const getPathologistsFail = error => ({\n type: GET_PATHOLOGISTS_FAIL,\n payload: error,\n});\n\nexport const addNewPathologist = (pathologist, id) => ({\n type: ADD_NEW_PATHOLOGIST,\n payload: { pathologist, id },\n});\n\nexport const addPathologistSuccess = pathologist => ({\n type: ADD_PATHOLOGIST_SUCCESS,\n payload: pathologist,\n});\n\nexport const addPathologistFail = error => ({\n type: ADD_PATHOLOGIST_FAIL,\n payload: error,\n});\n\nexport const updatePathologist = pathologist => ({\n type: UPDATE_PATHOLOGIST,\n payload: pathologist,\n});\n\nexport const updatePathologistSuccess = pathologist => ({\n type: UPDATE_PATHOLOGIST_SUCCESS,\n payload: pathologist,\n});\n\nexport const updatePathologistFail = error => ({\n type: UPDATE_PATHOLOGIST_FAIL,\n payload: error,\n});\n\nexport const deletePathologist = pathologist => ({\n type: DELETE_PATHOLOGIST,\n payload: pathologist,\n});\n\nexport const deletePathologistSuccess = pathologist => ({\n type: DELETE_PATHOLOGIST_SUCCESS,\n payload: pathologist,\n});\n\nexport const deletePathologistFail = error => ({\n type: DELETE_PATHOLOGIST_FAIL,\n payload: error,\n});\n","/* PATHOLOGISTS */\nexport const GET_ACTIVITY_LOG = \"GET_ACTIVITY_LOG\";\nexport const GET_ACTIVITY_LOG_SUCCESS = \"GET_ACTIVITY_LOG_SUCCESS\";\nexport const GET_ACTIVITY_LOG_FAIL = \"GET_ACTIVITY_LOG_FAIL\";\n\nexport const GET_NOTIFICATION = \"GET_NOTIFICATION\";\nexport const GET_NOTIFICATION_SUCCESS = \"GET_NOTIFICATION_SUCCESS\";\nexport const GET_NOTIFICATION_FAIL = \"GET_NOTIFICATION_FAIL\";","/* finance */\nexport const GET_ACTIVITY_LOG_FINANCE = \"GET_ACTIVITY_LOG_FINANCE\";\nexport const GET_ACTIVITY_LOG_FINANCE_SUCCESS = \"GET_ACTIVITY_LOG_FINANCE_SUCCESS\";\nexport const GET_ACTIVITY_LOG_FINANCE_FAIL = \"GET_ACTIVITY_LOG_FINANCE_FAIL\";\n\n// Corporate Commit\n\nexport const GET_CORPORATE_COMMIT = \"GET_CORPORATE_COMMIT\";\nexport const GET_CORPORATE_COMMIT_SUCCESS = \"GET_CORPORATE_COMMIT_SUCCESS\";\nexport const GET_CORPORATE_COMMIT_FAIL = \"GET_CORPORATE_COMMIT_FAIL\";\n","/* PATHOLOGISTS */\nexport const GET_ACTIVITY_LOG_MARKETER = \"GET_ACTIVITY_LOG_MARKETER\";\nexport const GET_ACTIVITY_LOG_MARKETER_SUCCESS = \"GET_ACTIVITY_LOG_MARKETER_SUCCESS\";\nexport const GET_ACTIVITY_LOG_MARKETER_FAIL = \"GET_ACTIVITY_LOG_MARKETER_FAIL\";\n\n\nexport const GET_LAB_ACTIVITY_LOG_MARKETER = \"GET_LAB_ACTIVITY_LOG_MARKETER\";\nexport const GET_LAB_ACTIVITY_LOG_MARKETER_SUCCESS = \"GET_LAB_ACTIVITY_LOG_MARKETER_SUCCESS\";\nexport const GET_LAB_ACTIVITY_LOG_MARKETER_FAIL = \"GET_LAB_ACTIVITY_LOG_MARKETER_FAIL\";\n","/* BANKACCOUNTS */\nexport const GET_BANKACCOUNTS = \"GET_BANKACCOUNTS\";\nexport const GET_BANKACCOUNTS_SUCCESS = \"GET_BANKACCOUNTS_SUCCESS\";\nexport const GET_BANKACCOUNTS_FAIL = \"GET_BANKACCOUNTS_FAIL\";\n\n\nexport const UPDATE_BANKACCOUNT = \"UPDATE_BANKACCOUNT\";\nexport const UPDATE_BANKACCOUNT_SUCCESS = \"UPDATE_BANKACCOUNT_SUCCESS\";\nexport const UPDATE_BANKACCOUNT_FAIL = \"UPDATE_BANKACCOUNT_FAIL\";\n\n// export const DELETE_BANKACCOUNT = \"DELETE_BANKACCOUNT\";\n// export const DELETE_BANKACCOUNT_SUCCESS = \"DELETE_BANKACCOUNT_SUCCESS\";\n// export const DELETE_BANKACCOUNT_FAIL = \"DELETE_BANKACCOUNT_FAIL\";\n","import {\n GET_BANKACCOUNTS,\n GET_BANKACCOUNTS_FAIL,\n GET_BANKACCOUNTS_SUCCESS,\n UPDATE_BANKACCOUNT,\n UPDATE_BANKACCOUNT_SUCCESS,\n UPDATE_BANKACCOUNT_FAIL,\n // DELETE_BANKACCOUNT,\n // DELETE_BANKACCOUNT_SUCCESS,\n // DELETE_BANKACCOUNT_FAIL,\n} from \"./actionTypes\";\n\n// ----------- Bankaccount list APIs actions -----------------\nexport const getBankaccounts = id => ({\n type: GET_BANKACCOUNTS,\n payload: id,\n});\n\nexport const getBankaccountsSuccess = bankaccounts => ({\n type: GET_BANKACCOUNTS_SUCCESS,\n payload: bankaccounts,\n});\n\nexport const getBankaccountsFail = error => ({\n type: GET_BANKACCOUNTS_FAIL,\n payload: error,\n});\n\nexport const updateBankaccount = bankaccount => ({\n type: UPDATE_BANKACCOUNT,\n payload: bankaccount,\n});\n\nexport const updateBankaccountSuccess = bankaccount => ({\n type: UPDATE_BANKACCOUNT_SUCCESS,\n payload: bankaccount,\n});\n\nexport const updateBankaccountFail = error => ({\n type: UPDATE_BANKACCOUNT_FAIL,\n payload: error,\n});\n\n// export const deleteBankaccount = bankaccount => ({\n// type: DELETE_BANKACCOUNT,\n// payload: bankaccount,\n// });\n\n// export const deleteBankaccountSuccess = bankaccount => ({\n// type: DELETE_BANKACCOUNT_SUCCESS,\n// payload: bankaccount,\n// });\n\n// export const deleteBankaccountFail = error => ({\n// type: DELETE_BANKACCOUNT_FAIL,\n// payload: error,\n// });\n","/* PATHOLOGISTS */\nexport const GET_ACTIVITY_LOG = \"GET_ACTIVITY_LOG\";\nexport const GET_ACTIVITY_LOG_SUCCESS = \"GET_ACTIVITY_LOG_SUCCESS\";\nexport const GET_ACTIVITY_LOG_FAIL = \"GET_ACTIVITY_LOG_FAIL\";\n\nexport const GET_SAMPLE_NOTIFICATION = \"GET_SAMPLE_NOTIFICATION\";\nexport const GET_SAMPLE_NOTIFICATION_SUCCESS = \"GET_SAMPLE_NOTIFICATION_SUCCESS\";\nexport const GET_SAMPLE_NOTIFICATION_FAIL = \"GET_SAMPLE_NOTIFICATION_FAIL\";","/* PATHOLOGISTS */\nexport const GET_ACTIVITY_LOG = \"GET_ACTIVITY_LOG\";\nexport const GET_ACTIVITY_LOG_SUCCESS = \"GET_ACTIVITY_LOG_SUCCESS\";\nexport const GET_ACTIVITY_LOG_FAIL = \"GET_ACTIVITY_LOG_FAIL\";\n\nexport const GET_MARKETER_NOTIFICATION = \"GET_MARKETER_NOTIFICATION\";\nexport const GET_MARKETER_NOTIFICATION_SUCCESS = \"GET_MARKETER_NOTIFICATION_SUCCESS\";\nexport const GET_MARKETER_NOTIFICATION_FAIL = \"GET_MARKETER_NOTIFICATION_FAIL\";","/* PATHOLOGISTS */\nexport const GET_ACTIVITY_LOG = \"GET_ACTIVITY_LOG\";\nexport const GET_ACTIVITY_LOG_SUCCESS = \"GET_ACTIVITY_LOG_SUCCESS\";\nexport const GET_ACTIVITY_LOG_FAIL = \"GET_ACTIVITY_LOG_FAIL\";\n\nexport const GET_CSR_ADMIN_NOTIFICATION = \"GET_CSR_ADMIN_NOTIFICATION\";\nexport const GET_CSR_ADMIN_NOTIFICATION_SUCCESS = \"GET_CSR_ADMIN_NOTIFICATION_SUCCESS\";\nexport const GET_CSR_ADMIN_NOTIFICATION_FAIL = \"GET_CSR_ADMIN_NOTIFICATION_FAIL\";","/* PATHOLOGISTS */\nexport const GET_ACTIVITY_LOG = \"GET_ACTIVITY_LOG\";\nexport const GET_ACTIVITY_LOG_SUCCESS = \"GET_ACTIVITY_LOG_SUCCESS\";\nexport const GET_ACTIVITY_LOG_FAIL = \"GET_ACTIVITY_LOG_FAIL\";\n\nexport const GET_REG_ADMIN_NOTIFICATION = \"GET_REG_ADMIN_NOTIFICATION\";\nexport const GET_REG_ADMIN_NOTIFICATION_SUCCESS = \"GET_REG_ADMIN_NOTIFICATION_SUCCESS\";\nexport const GET_REG_ADMIN_NOTIFICATION_FAIL = \"GET_REG_ADMIN_NOTIFICATION_FAIL\";","/* PATHOLOGISTS */\nexport const GET_ACTIVITY_LOG = \"GET_ACTIVITY_LOG\";\nexport const GET_ACTIVITY_LOG_SUCCESS = \"GET_ACTIVITY_LOG_SUCCESS\";\nexport const GET_ACTIVITY_LOG_FAIL = \"GET_ACTIVITY_LOG_FAIL\";\n\nexport const GET_CSR_OFFICER_NOTIFICATION = \"GET_CSR_OFFICER_NOTIFICATION\";\nexport const GET_CSR_OFFICER_NOTIFICATION_SUCCESS = \"GET_CSR_OFFICER_NOTIFICATION_SUCCESS\";\nexport const GET_CSR_OFFICER_NOTIFICATION_FAIL = \"GET_CSR_OFFICER_NOTIFICATION_FAIL\";","\n/* finance */\nexport const GET_ACTIVITY_LOG_AUDITOR = \"GET_ACTIVITY_LOG_AUDITOR\";\nexport const GET_ACTIVITY_LOG_AUDITOR_SUCCESS = \"GET_ACTIVITY_LOG_AUDITOR_SUCCESS\";\nexport const GET_ACTIVITY_LOG_AUDITOR_FAIL = \"GET_ACTIVITY_LOG_AUDITOR_FAIL\";\n","//REGISTER ORIGINAL\n\nconst API_ENDPOINT = process.env.REACT_APP_BACKENDURL;\n\n// -------------- MY URLS --------------\nexport const POST_LOGIN = `${API_ENDPOINT}/api/account/login/`;\nexport const POST_REGISTER = `${API_ENDPOINT}/api/account/register/`;\n// PASSWORD RESET\nexport const POST_FORGET_PASSWORD = `${API_ENDPOINT}/api/account/password_reset/`;\nexport const POST_CONFIRM_PASSWORD = `${API_ENDPOINT}/api/account/password_reset/confirm/`;\nexport const POST_CHANGE_PASSWORD = `${API_ENDPOINT}/api/account/change-password/`;\n\nexport const POST_PATIENT_INFORMATION = `${API_ENDPOINT}/api/patient/patient-information`;\nexport const POST_B2BCLIENT_INFORMATION = `${API_ENDPOINT}/api/b2bclient/register-b2bclient`;\nexport const POST_DONOR_INFORMATION = `${API_ENDPOINT}/api/donor/register-donor`;\nexport const POST_LAB_INFORMATION = `${API_ENDPOINT}/api/lab/lab-information`;\nexport const POST_CORPORATE_INFORMATION = `${API_ENDPOINT}/api/corporate/corporate-information`;\n\n// LAB LIST\nexport const GET_LABS = `${API_ENDPOINT}/api/finance-officer/lab-MOF-list`;\nexport const GET_ALL_LABS_LIST = `${API_ENDPOINT}/api/finance-officer/labs-list`;\nexport const GET_MAIN_LABS = `${API_ENDPOINT}/api/lab/lab-list`;\n\n// TEST\nexport const GET_TESTS = `${API_ENDPOINT}/api/medicaltest/test-list`;\nexport const GET_UNITS = `${API_ENDPOINT}/api/medicaltest/unit-list`;\n\n// OFFERED TEST\nexport const GET_OFFERED_TESTS = `${API_ENDPOINT}/api/lab/offered-test-list`;\nexport const GET_OFFEREDTEST_REFERRELFEE = `${API_ENDPOINT}/api/lab/offered-test-share-list`;\nexport const GET_OFFEREDPROFILE_REFERRELFEE = `${API_ENDPOINT}/api/lab/offered-profile-share-list`;\nexport const GET_OFFEREDPACKAGE_REFERRELFEE = `${API_ENDPOINT}/api/lab/offered-package-share-list`;\nexport const GET_OFFEREDRADIOLOGY_REFERRELFEE = `${API_ENDPOINT}/api/lab/offered-radiology-share-list`;\nexport const ADD_NEW_OFFERED_TEST = `${API_ENDPOINT}/api/lab/offered-test`;\nexport const ADD_NEW_OFFERED_MAINTEST = `${API_ENDPOINT}/api/lab/offered-test-main-lab`;\nexport const UPDATE_OFFERED_TEST = `${API_ENDPOINT}/api/lab/offered-test`;\nexport const DELETE_OFFERED_TEST = `${API_ENDPOINT}/api/lab/offered-test`;\n\n// Corporates\nexport const GET_COFFEREDTEST_REFERRELFEE = `${API_ENDPOINT}/api/lab/corporate-offered-test-share-list`;\nexport const GET_COFFEREDPROFILE_REFERRELFEE = `${API_ENDPOINT}/api/lab/corporate-offered-profile-share-list`;\nexport const GET_COFFEREDPACKAGE_REFERRELFEE = `${API_ENDPOINT}/api/lab/corporate-offered-packages-share-list`;\nexport const GET_COFFEREDRADIOLOGY_REFERRELFEE = `${API_ENDPOINT}/api/lab/corporate-offered-radiology-share-list`;\nexport const GET_CORPORATE_LIST = `${API_ENDPOINT}/api/corporate/list-corporate`;\n// PATHOLOGIST\nexport const GET_ACTIVITY_LOG = `${API_ENDPOINT}/api/lab/activity-log`;\nexport const GET_NOTIFICATION = `${API_ENDPOINT}/api/lab/notifications`;\nexport const GET_SAMPLE_NOTIFICATION = `${API_ENDPOINT}/api/lab/sample-collector-notifications`;\nexport const GET_MARKETER_NOTIFICATION = `${API_ENDPOINT}/api/marketer-admin/marketer-notification`;\nexport const GET_CSR_ADMIN_NOTIFICATION = `${API_ENDPOINT}/api/csr-admin/csradmin-notification`;\nexport const GET_REG_ADMIN_NOTIFICATION = `${API_ENDPOINT}/api/registration-admin/regadmin-notification`;\nexport const GET_CSR_OFFICER_NOTIFICATION = `${API_ENDPOINT}/api/complaint/csrofficer-notification`;\nexport const GET_ACTIVITY_LOG_FINANCE = `${API_ENDPOINT}/api/finance-officer/activity-log-finance`;\nexport const GET_CORPORATE_COMMIT = `${API_ENDPOINT}/api/corporate/corporate-commit`;\nexport const GET_ACTIVITY_LOG_MARKETER = `${API_ENDPOINT}/api/marketer-admin/activity-log-marketer`;\nexport const GET_LAB_ACTIVITY_LOG_MARKETER = `${API_ENDPOINT}/api/marketer-admin/activity-log-lab-marketer`;\nexport const GET_PATHOLOGISTS = `${API_ENDPOINT}/api/lab/pathologist-list`;\nexport const ADD_NEW_PATHOLOGIST = `${API_ENDPOINT}/api/lab/pathologist`;\nexport const UPDATE_PATHOLOGIST = `${API_ENDPOINT}/api/lab/pathologist`;\nexport const DELETE_PATHOLOGIST = `${API_ENDPOINT}/api/lab/pathologist`;\n\n// PATHOLOGIST\nexport const GET_BANKACCOUNTS = `${API_ENDPOINT}/api/finance-admin/bank-account`;\nexport const UPDATE_BANKACCOUNT = `${API_ENDPOINT}/api/finance-admin/bank-account`;\n// export const DELETE_BANKACCOUNT = `${API_ENDPOINT}/api/lab/pathologist`;\n\n// CART\nexport const GET_CARTS = `${API_ENDPOINT}/api/patient/cart-list`;\nexport const EMPTY_CART = `${API_ENDPOINT}/api/patient/cart-list`;\nexport const DELETE_CART = `${API_ENDPOINT}/api/patient/cart-item`;\nexport const ADD_TO_CART = `${API_ENDPOINT}/api/patient/cart-item`;\n\nexport const GET_QUOTES = `${API_ENDPOINT}/api/patient/quote-list`;\n\n// SAMPLE COLLECTOR\nexport const GET_SAMPLE_COLLECTORS = `${API_ENDPOINT}/api/lab/sample-collector-list`;\nexport const ADD_NEW_SAMPLE_COLLECTOR = `${API_ENDPOINT}/api/lab/sample-collector`;\nexport const UPDATE_SAMPLE_COLLECTOR = `${API_ENDPOINT}/api/lab/sample-collector`;\nexport const DELETE_SAMPLE_COLLECTOR = `${API_ENDPOINT}/api/lab/sample-collector`;\n\n// QUALITY CERTIFICATES\nexport const ADD_NEW_COLLECTIONPOINT_QUALITY = `${API_ENDPOINT}/api/lab/quality-certificate-collectionpoint-list`;\nexport const GET_QUALITY_CERTIFICATES = `${API_ENDPOINT}/api/lab/quality-certificate-list`;\nexport const ADD_NEW_QUALITY_CERTIFICATE = `${API_ENDPOINT}/api/lab/quality-certificate`;\nexport const UPDATE_QUALITY_CERTIFICATE = `${API_ENDPOINT}/api/lab/quality-certificate`;\nexport const DELETE_QUALITY_CERTIFICATE = `${API_ENDPOINT}/api/lab/quality-certificate`;\n\n// ADVERTISEMENTS\nexport const GET_ADVERTISEMENTS = `${API_ENDPOINT}/api/marketer-admin/advertisement-list`;\nexport const ADD_NEW_ADVERTISEMENT = `${API_ENDPOINT}/api/marketer-admin/advertisement`;\nexport const UPDATE_ADVERTISEMENT = `${API_ENDPOINT}/api/marketer-admin/advertisement`;\nexport const DELETE_ADVERTISEMENT = `${API_ENDPOINT}/api/marketer-admin/advertisement`;\n\n// LAB ADVERTISEMENTS\nexport const GET_LAB_ADVERTISEMENTS = `${API_ENDPOINT}/api/lab/lab-advertisement`;\nexport const ADD_NEW_LAB_ADVERTISEMENT = `${API_ENDPOINT}/api/lab/lab-advertisement`;\nexport const UPDATE_LAB_ADVERTISEMENT = `${API_ENDPOINT}/api/lab/lab-advertisement`;\nexport const DELETE_LAB_ADVERTISEMENT = `${API_ENDPOINT}/api/lab/lab-advertisement`;\n\n// LAB ADVERTISEMENTS REQUESTS PENDING\nexport const GET_LAB_ADVERTISEMENT_REQUESTS = `${API_ENDPOINT}/api/marketer-admin/lab-advertisement-request`;\nexport const UPDATE_LAB_ADVERTISEMENT_REQUEST = `${API_ENDPOINT}/api/marketer-admin/lab-advertisement-request`;\n\n// LAB ADVERTISEMENTS REQUESTS ACCEPTED\nexport const GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED = `${API_ENDPOINT}/api/marketer-admin/lab-advertisement-accepted-list`;\n\n// ADVERTISEMENTS LIVE\nexport const GET_ADVERTISEMENT_LIVES = `${API_ENDPOINT}/api/marketer-admin/advertisement-live`;\n\n// ADVERTISEMENTS LIVE\nexport const GET_ADV_LIVE = `${API_ENDPOINT}/api/marketer-admin/advertisement-live`;\n\n// ADVERTISEMENT PRICE LIST\nexport const GET_ADVERTISEMENT_PRICE_LISTS = `${API_ENDPOINT}/api/marketer-admin/advertisement-price-list`;\nexport const ADD_NEW_ADVERTISEMENT_PRICE_LIST = `${API_ENDPOINT}/api/marketer-admin/advertisement-price`;\nexport const UPDATE_ADVERTISEMENT_PRICE_LIST = `${API_ENDPOINT}/api/marketer-admin/advertisement-price`;\nexport const DELETE_ADVERTISEMENT_PRICE_LIST = `${API_ENDPOINT}/api/marketer-admin/advertisement-price`;\n\n// DISCOUNT LAB HAZIR\nexport const GET_DISCOUNT_LABHAZIR = `${API_ENDPOINT}/api/marketer-admin/discount-test`;\nexport const UPDATE_DISCOUNT_LABHAZIR = `${API_ENDPOINT}/api/marketer-admin/discount-test`;\nexport const UPDATE_DISCOUNT_ALL_LABHAZIR = `${API_ENDPOINT}/api/marketer-admin/discount-all-tests`;\nexport const GET_LABS_LIST = `${API_ENDPOINT}/api/marketer-admin/labs-list`;\nexport const GET_DISCOUNT_LABHAZIRTOLABS = `${API_ENDPOINT}/api/marketer-admin/discount-labhazir-lab-test`; \nexport const UPDATE_DISCOUNT_LABHAZIRTOLAB = `${API_ENDPOINT}/api/marketer-admin/discount-labhazir-lab-test`;\nexport const UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB = `${API_ENDPOINT}/api/marketer-admin/discount-labhazir-lab-all-tests`;\n\n\nexport const GET_REFERREL_FEES = `${API_ENDPOINT}/api/registration-admin/referrel-fee-labhazir`;\nexport const GET_REVIEW_PERFORMANCE = `${API_ENDPOINT}/api/registration-admin/totallabsView-labs`;\nexport const GET_REVIEW_PERFORMANCE_TEST = `${API_ENDPOINT}/api/registration-admin/totalofferedtestsView-tests`;\n\nexport const GET_PUT_REFERREL_FEES = `${API_ENDPOINT}/api/registration-admin/approve-referrel-fee-labhazir`;\nexport const UPDATE_REFERREL_FEE = `${API_ENDPOINT}/api/registration-admin/update-referrel-fee-labhazir`;\nexport const UPDATE_REFERREL_ALL_FEE = `${API_ENDPOINT}/api/registration-admin/all-referrel-fee-labhazir`;\nexport const GET_LABS_LIST_PENDING_FEE = `${API_ENDPOINT}/api/registration-admin/lab-list-pending`;\nexport const GET_LABS_LIST_APPROVED_FEE = `${API_ENDPOINT}/api/registration-admin/lab-list-approved`;\nexport const GET_SHARED_PERCENTAGE_PENDING_FEE = `${API_ENDPOINT}/api/registration-admin/shared_percentage_pending_tests`;\nexport const GET_SHARED_PERCENTAGE_APPROVED_FEE = `${API_ENDPOINT}/api/registration-admin/shared_percentage_Approved_tests`;\nexport const UPDATE_SHARED_PERCENTAGE_PENDING_FEE = `${API_ENDPOINT}/api/registration-admin/shared_percentage_pending_tests`;\nexport const UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE = `${API_ENDPOINT}/api/registration-admin/shared_percentage_all_pending_tests`;\n\n// DISCOUNT LAB\nexport const GET_DISCOUNT_LAB = `${API_ENDPOINT}/api/lab/offered-test-discount-list`;\nexport const UPDATE_DISCOUNT_LAB = `${API_ENDPOINT}/api/lab/discount-offered-test`;\nexport const UPDATE_DISCOUNT_ALL_LAB = `${API_ENDPOINT}/api/lab/discount-all-offered-tests`;\nexport const GET_FEEDBACKS = `${API_ENDPOINT}/api/lab/feedback-list`;\n\n// TERRITORIES LIST\nexport const GET_TERRITORIES_LIST = `${API_ENDPOINT}/api/territories/district-city-list`;\n\n// CORPORATES LIST\nexport const GET_CORPORATES_LIST = `${API_ENDPOINT}/api/corporate/corporates-list`;\n\n// TERRITORIES LIST\nexport const GET_LAB_NAMES_LIST = `${API_ENDPOINT}/api/lab/lab-names`;\n\n// MEDICAL LIST\nexport const GET_ONLY_MEDICAL_LIST = `${API_ENDPOINT}/api/medicaltest/only-medical-tests`;\n\n// CSR CENTRAL TERRITORIES LIST\nexport const GET_CSR_CENTRAL_TERRITORY_LIST = `${API_ENDPOINT}/api/staff/csr-central-list`;\n// CSR SOUTH TERRITORIES LIST\nexport const GET_CSR_SOUTH_TERRITORY_LIST = `${API_ENDPOINT}/api/staff/csr-south-list`;\n// CSR NORTH TERRITORIES LIST\nexport const GET_CSR_NORTH_TERRITORY_LIST = `${API_ENDPOINT}/api/staff/csr-north-list`;\n\n\n// AUDITOR CENTRAL TERRITORIES LIST\nexport const GET_AUDITOR_CENTRAL_TERRITORY_LIST = `${API_ENDPOINT}/api/staff/auditor-central-list`;\n// auditor SOUTH TERRITORIES LIST\nexport const GET_AUDITOR_SOUTH_TERRITORY_LIST = `${API_ENDPOINT}/api/staff/auditor-south-list`;\n// auditor NORTH TERRITORIES LIST\nexport const GET_AUDITOR_NORTH_TERRITORY_LIST = `${API_ENDPOINT}/api/staff/auditor-north-list`;\n\n\n// TEST APPOINTMENT\nexport const ADD_NEW_COLLECTIONPOINT_TESTAPPOINTMENT = `${API_ENDPOINT}/api/lab/test-appointment-collectionpoint-list`;\nexport const GET_TEST_APPOINTMENTS_PENDING_LIST = `${API_ENDPOINT}/api/lab/test-appointment-pending-list`;\nexport const GET_TEST_APPOINTMENTS_IN_PROCESS_LIST = `${API_ENDPOINT}/api/lab/test-appointment-in-process-list`;\nexport const GET_TEST_APPOINTMENTS_COMPLETED_LIST = `${API_ENDPOINT}/api/lab/test-appointment-completed-list`;\nexport const UPDATE_TEST_APPOINTMENT = `${API_ENDPOINT}/api/lab/test-appointment-update`;\n\n// PAYMENT IN STATUS\nexport const GET_ACCEPTED_LAB_ADVERTISEMENTS = `${API_ENDPOINT}/api/marketer-admin/lab-advertisement-accepted-list`;\nexport const GET_PAYMENT_IN_STATUS_CREATED_LIST = `${API_ENDPOINT}/api/finance-officer/get-payment-in-created`;\nexport const GET_PAYMENT_IN_STATUS_DEPOSITED_LIST = `${API_ENDPOINT}/api/finance-officer/get-payment-in-deposited`;\nexport const GET_LABS_MOF = `${API_ENDPOINT}/api/finance-officer/lab-MOF-list`;\nexport const GET_LABS_C = `${API_ENDPOINT}/api/finance-officer/lab-c-list`;\n\n// PATIENT TEST APPOINTMENT\nexport const GET_PATIENT_TEST_APPOINTMENTS_LIST = `${API_ENDPOINT}/api/patient/test-appointment-list`;\n\n// B2B Client\nexport const GET_B2B_REFERRED_PATIENTS_LIST = `${API_ENDPOINT}/api/b2bclient/b2breferred-patient`;\nexport const GET_B2B_LAB_SHARES_LIST = `${API_ENDPOINT}/api/b2bclient/list-b2bShare`;\nexport const UPDATE_LAB_SHARE = `${API_ENDPOINT}/api/b2bclient/list-b2bShare`;\nexport const UPDATE_ALL_LAB_SHARE = `${API_ENDPOINT}/api/b2bclient/b2bshare-update`;\n\nexport const GET_B2B_SHARES_LAB_LIST = `${API_ENDPOINT}/api/b2bclient/b2b-Share`;\n\n\n// Donor SETTINGS\nexport const ADD_NEW_B2B_PAYMENT = `${API_ENDPOINT}/api/b2bclient/b2b-payment`;\n\n\n// // B2B List \n// export const GET_B2B_ALL_CLIENTS_LIST = `${API_ENDPOINT}/api/labhaziradmin/list-b2b`;\n\n//Donor\nexport const GET_DONOR_REFERRED_APPOINTMENTS_LIST = `${API_ENDPOINT}/api/donor/appointment-donor`;\n\n// B2B List\nexport const GET_B2B_ALL_CLIENTS_LIST = `${API_ENDPOINT}/api/b2b-admin/b2b-clients-list`;\nexport const GET_PATIENTS_LIST = `${API_ENDPOINT}/api/patient/patient-list`;\n\n\nexport const ADD_NEW_LAB_SHARE = `${API_ENDPOINT}/api/b2bclient/list-b2bShare`;\n\nexport const GET_B2B_CLIENTS = `${API_ENDPOINT}/api/b2b-admin/b2b-clients-list`;\n\n// CSR (COMPLAINTS)\nexport const GET_UNHANDLED_COMPLAINTS = `${API_ENDPOINT}/api/complaint/unhandled-complaints`;\nexport const UPDATE_UNHANDLED_COMPLAINTS = `${API_ENDPOINT}/api/complaint/unhandled-complaints`;\nexport const GET_HANDLED_COMPLAINTS = `${API_ENDPOINT}/api/complaint/handled-complaints`;\nexport const GET_CSR_COMPLAINTS = `${API_ENDPOINT}/api/staff/csr-appointment`;\nexport const UPDATE_CSR_COMPLAINTS = `${API_ENDPOINT}/api/staff/csr-appointment`;\nexport const GET_CSR_APPOINTMENTS = `${API_ENDPOINT}/api/staff/csr-admin-appointment`;\nexport const UPDATE_CSR_APPOINTMENTS = `${API_ENDPOINT}/api/staff/csr-admin-appointment`;\nexport const ADD_NEW_NOTE_COMPLAINT =`${API_ENDPOINT}/api/complaint/add-note`;\nexport const GET_NOTES_COMPLAINT = `${API_ENDPOINT}/api/complaint/add-note`;\n\nexport const ADD_NEW_NOTE =`${API_ENDPOINT}/api/staff/add-note`;\nexport const GET_NOTES = `${API_ENDPOINT}/api/staff/add-note`;\nexport const ADD_NEW_MSG =`${API_ENDPOINT}/api/marketer-admin/add-message`;\nexport const GET_MSGS = `${API_ENDPOINT}/api/marketer-admin/add-message`;\n// TEST DESCRIPTION\nexport const GET_TEST_DESCRIPTIONS = `${API_ENDPOINT}/api/medicaltest/test`;\n\n// LAB PROFILES\nexport const GET_LAB_PROFILE = `${API_ENDPOINT}/api/lab/lab-profile`;\nexport const GET_LAB_TOKEN = `${API_ENDPOINT}/api/lab/lab-tokens`;\nexport const UPDATE_LAB_PROFILE = `${API_ENDPOINT}/api/lab/lab-profile`;\n\n// B2b PROFILES\nexport const GET_B2B_PROFILE = `${API_ENDPOINT}/api/b2bclient/b2b-profile`;\nexport const UPDATE_B2B_PROFILE = `${API_ENDPOINT}/api/b2bclient/b2b-profile`;\n\n// Donor PROFILES\nexport const GET_DONOR_PROFILE = `${API_ENDPOINT}/api/donor/profile-donor`;\nexport const UPDATE_DONOR_PROFILE = `${API_ENDPOINT}/api/donor/profile-donor`;\n\n// Donor SETTINGS\nexport const GET_DONOR_SETTINGS = `${API_ENDPOINT}/api/lab/lab-settings`;\nexport const UPDATE_DONOR_SETTINGS = `${API_ENDPOINT}/api/lab/lab-settings`;\n\n// Donor SETTINGS\nexport const ADD_NEW_DONOR_PAYMENT = `${API_ENDPOINT}/api/donor/donor-payment`;\n\n// ADD ACCOUNT\nexport const ADD_NEW_CREATE_BANK = `${API_ENDPOINT}/api/finance-admin/bank`;\nexport const ADD_NEW_BANK_ACCOUNT = `${API_ENDPOINT}/api/finance-admin/bank-account`;\n\n// ADD CORPORATE EMPLOYEE DATA\nexport const ADD_NEW_CEMPLOYEE_DATA = `${API_ENDPOINT}/api/corporate/employee-data`;\nexport const GET_CEMPLOYEE = `${API_ENDPOINT}/api/corporate/employee-list`;\nexport const GET_LABCORPORATE = `${API_ENDPOINT}/api/lab/corporatelist`;\nexport const GET_ALABCORPORATE = `${API_ENDPOINT}/api/lab/accepted-corporates-list`;\nexport const GET_ACORPORATE = `${API_ENDPOINT}/api/corporate/all-corporates-list`;\nexport const GET_RFeeCORPORATE = `${API_ENDPOINT}/api/lab/corporate-feffrellfee`;\nexport const UPDATE_ACORPORATE_STATUS = `${API_ENDPOINT}/api/corporate/update-corporate-list`;\nexport const GET_EMPLOYEECORPORATE = `${API_ENDPOINT}/api/corporate/employee-list`;\nexport const GET_LABSCORPORATE = `${API_ENDPOINT}/api/corporate/corporate-lab-list`;\nexport const UPDATE_CEMPLOYEE = `${API_ENDPOINT}/api/corporate/employee-data`;\nexport const ADD_NEW_CORPORATE_TEST = `${API_ENDPOINT}/api/corporate/corporate-offered-test`;\nexport const GET_CORPORATE_TESTS = `${API_ENDPOINT}/api/corporate/corporate-test-list`;\nexport const UPDATE_CORPORATE_TEST = `${API_ENDPOINT}/api/corporate/corporate-offered-test`;\nexport const UPDATE_CORPORATE_STATUS = `${API_ENDPOINT}/api/lab/accepted-corporates-list`;\nexport const ADD_NEW_CORPORATE = `${API_ENDPOINT}/api/lab/corporatelist`;\nexport const ADD_NEW_CEMPLOYEE_FILE = `${API_ENDPOINT}/api/corporate/employee-data-file`;\nexport const DELETE_CEDATA = `${API_ENDPOINT}/api/corporate/employee-data`;\nexport const DELETE_TESTS_IN_APPOINTMENTS = `${API_ENDPOINT}/api/patient/reduce-tests`;\n// About All Finance\nexport const GET_BANK_ACCOUNTS = `${API_ENDPOINT}/api/finance-admin/bankaccount-list`;\nexport const GET_BANKS = `${API_ENDPOINT}/api/finance-admin/bank-list`;\nexport const UPDATE_BANK = `${API_ENDPOINT}/api/finance-admin/bank`;\n\nexport const ADD_NEW_IN_PAYMENT = `${API_ENDPOINT}/api/finance-officer/payment-in`;\nexport const GET_IN_PAYMENT = `${API_ENDPOINT}/api/finance-officer/payment-in`;\n\nexport const ADD_NEW_OUT_PAYMENT = `${API_ENDPOINT}/api/finance-officer/payment-out`;\nexport const ADD_NEW_CORPORATE_PAYMENT = `${API_ENDPOINT}/api/corporate/corporate-payment-out`;\nexport const GET_OUT_PAYMENT = `${API_ENDPOINT}/api/finance-officer/payment-out`;\nexport const DELETE_PAYMENTOUT = `${API_ENDPOINT}/api/finance-officer/payment-out`;\nexport const GET_LIST_DONATIONAPPOINTMENT = `${API_ENDPOINT}/api/finance-officer/alldonation-Appointments`;\nexport const GET_LIST_CLABS = `${API_ENDPOINT}/api/finance-officer/all-lab-c-list`;\n\n\nexport const ADD_NEW_INVOICE_ADJUSTMENT = `${API_ENDPOINT}/api/finance-officer/invoice-adjustment-detail`;\n\n// Get Invoice LIst\nexport const GET_LIST_INVOICE = `${API_ENDPOINT}/api/finance-officer/all-invoices-list`;\n\n// Get DONATION Appointments\nexport const GET_ALL_DONATION_APPOINTMENTS = `${API_ENDPOINT}/api/finance-officer/donation-Appointments`;\n\n// Bank Transfer Details\nexport const ADD_NEW_BANK_TRANSFER = `${API_ENDPOINT}/api/finance-officer/bank-transfer-detail`;\nexport const UPDATE_BANK_TRANSFER = `${API_ENDPOINT}/api/finance-officer/bank-transfer-detail`;\nexport const GET_BANK_TRANSFER = `${API_ENDPOINT}/api/finance-officer/bank-transfer-detail`;\n\nexport const GET_PAYMENT_STATUSS = `${API_ENDPOINT}/api/finance-officer/get-payment-in-created`;\n//////////////////////////\nexport const GET_PAY_STATUSS = `${API_ENDPOINT}/api/finance-officer/get-payment-in-created`;\nexport const GET_DEPOSIT_STATUSS = `${API_ENDPOINT}/api/finance-officer/get-payment-in-deposited`;\nexport const GET_CLEAR_STATUSS = `${API_ENDPOINT}/api/finance-officer/get-payment-in-cleared`;\nexport const UPDATE_PAYMENT_STATUS = `${API_ENDPOINT}/api/finance-officer/payment-in`;\nexport const UPDATE_PAYMENTIN_STATUS = `${API_ENDPOINT}/api/finance-officer/get-payment-in-deposited`;\nexport const GET_BOUNCEDIN_STATUSS = `${API_ENDPOINT}/api/finance-officer/get-payment-in-bounced`;\nexport const UPDATE_PAYMENTINBOUNCED_STATUS = `${API_ENDPOINT}/api/finance-officer/get-payment-in-bounced`;\nexport const GET_PAYMENTOUT_CLEAR_STATUSS = `${API_ENDPOINT}/api/finance-officer/get-payment-out-cleared`;\nexport const GET_PAYMENTOUT_STATUSS = `${API_ENDPOINT}/api/finance-officer/get-payment-out-pending`;\nexport const GET_CREATEDOUT_STATUSS = `${API_ENDPOINT}/api/finance-officer/get-payment-out-created`;\nexport const GET_CREATEDOUTDETAIL_STATUSS = `${API_ENDPOINT}/api/corporate/corporate-payment-detail`;\nexport const UPDATE_PAYMENTOUT_STATUS = `${API_ENDPOINT}/api/finance-officer/get-payment-out-pending`;\nexport const UPDATE_PAYMENTOUTCREATED_STATUS = `${API_ENDPOINT}/api/finance-officer/get-payment-out-created`;\nexport const GET_BOUNCED_STATUSS = `${API_ENDPOINT}/api/finance-officer/get-payment-out-bounced`;\n\n\n// Corporate out payment lists\nexport const GET_CCREATEDOUT_STATUSS = `${API_ENDPOINT}/api/corporate/corporate-payment-out`;\nexport const UPDATE_PAYMENTOUTCCREATED_STATUS = `${API_ENDPOINT}/api/corporate/corporate-payment-out`;\n\n// LAB SETTINGS\nexport const GET_LAB_SETTINGS = `${API_ENDPOINT}/api/lab/lab-settings`;\nexport const UPDATE_LAB_SETTINGS = `${API_ENDPOINT}/api/lab/lab-settings`;\n\n// PATIENT PROFILES\nexport const GET_PATIENT_PROFILE = `${API_ENDPOINT}/api/patient/patient-profile`;\nexport const UPDATE_PATIENT_PROFILE = `${API_ENDPOINT}/api/patient/patient-profile`;\n\n// PATIENT FEEDBACK\nexport const ADD_NEW_PATIENT_FEEDBACK = `${API_ENDPOINT}/api/patient/feedback`;\n// COMPLAINT\nexport const ADD_NEW_COMPLAINT = `${API_ENDPOINT}/api/complaint/register-complaint`;\n\n// corporate PROFILES\nexport const GET_CORPORATE_PROFILE = `${API_ENDPOINT}/api/corporate/corporate-profile`;\nexport const UPDATE_CORPORATE_PROFILE = `${API_ENDPOINT}/api/corporate/corporate-profile`;\n\n// NEARBY LABS\nexport const GET_NEARBY_LABS = `${API_ENDPOINT}/api/patient/nearby-labs`;\n\n// Cororate LABS\nexport const GET_CORPORATE_LABS = `${API_ENDPOINT}/api/patient/corporate-labs`;\n\n// REGION WISE ADVERTISEMENT\nexport const GET_REGION_WISE_ADVERTISEMENT = `${API_ENDPOINT}/api/marketer-admin/region-wise-advertisements`;\n\nexport const GET_DONORS = `${API_ENDPOINT}/api/donor/list-donor`;\nexport const GET_DONORSA = `${API_ENDPOINT}/api/finance-admin/donationappointment-list`;\nexport const GET_LABS_LISTING = `${API_ENDPOINT}/api/marketer-admin/labs-list`;\nexport const GET_DONORS_LIST = `${API_ENDPOINT}/api/donor/list-donor`;\n// export const GET_CL_LIST = `${API_ENDPOINT}/api/accountstatement/corporate-account-statements-list`;\nexport const GET_CL_LIST = `${API_ENDPOINT}/api/accountstatement/corporate-statements-list`;\n\n// NEARBY TESTS\nexport const GET_NEARBY_TESTS = `${API_ENDPOINT}/api/patient/tests-offered`;\nexport const GET_NEARBY_TESTS_DISCOUNTEDLH = `${API_ENDPOINT}/api/patient/LHDiscount-offeredTest`;\nexport const GET_NEARBY_PROFILES = `${API_ENDPOINT}/api/patient/profiles-offered`;\nexport const GET_PROFILES = `${API_ENDPOINT}/api/medicaltest/profile-list`;\nexport const GET_TESTSS = `${API_ENDPOINT}/api/medicaltest/tests-list`;\nexport const GET_PACKAGES = `${API_ENDPOINT}/api/medicaltest/package-list`;\nexport const GET_NEARBY_PACKAGES = `${API_ENDPOINT}/api/patient/packages-offered`;\nexport const GET_RADIOLOGY = `${API_ENDPOINT}/api/medicaltest/radiology-list`;\nexport const GET_TESTS_LIST = `${API_ENDPOINT}/api/medicaltest/test-list`;\nexport const GET_CORPORATE_TESTS_LIST = `${API_ENDPOINT}/api/medicaltest/corporate-test-list`;\nexport const GET_NEARBY_RADIOLOGY = `${API_ENDPOINT}/api/patient/radiology-tests-offered`;\n\n// CHECKOUT\nexport const GET_HOME_SAMPLED_TESTS = `${API_ENDPOINT}/api/patient/home-sampled-tests`;\nexport const GET_DONATION_CHECK = `${API_ENDPOINT}/api/patient/donation-check`;\nexport const GET_CHECKOUT_ITEMS = `${API_ENDPOINT}/api/patient/checkout-items`;\nexport const ADD_CHECKOUT_DATA = `${API_ENDPOINT}/api/patient/checkout`;\n\n// INVOICES\nexport const GET_INVOICE_DETAIL = `${API_ENDPOINT}/api/patient/invoice-detail`;\n/////////get tests\n\nexport const GET_TESTS_IN_APPOINTMENTS = `${API_ENDPOINT}/api/patient/tests-in-appointments`;\n\n// ADVERTISEMENT INVOICES\nexport const GET_ADV_INVOICE = `${API_ENDPOINT}/api/lab/lab-advertisement-invoice`;\n\n// PAYMENT\nexport const UPDATE_LAB_PAYMENTS = `${API_ENDPOINT}/api/patient/payment-info`;\nexport const GET_LAB_PAYMENTS = `${API_ENDPOINT}/api/patient/payment-info`;\n\n// ACCOUNT STATEMENTS\nexport const GET_ACCOUNT_STATEMENTS = `${API_ENDPOINT}/api/accountstatement/lab-account-statements`;\n\n// Bank Statements\nexport const GET_BANK_STATEMENTS = `${API_ENDPOINT}/api/finance-officer/bank-transfer-statement`;\n\n// DONOR STATEMENYTS\nexport const GET_DONOR_ACCOUNT_STATEMENTS = `${API_ENDPOINT}/api/accountstatement/donor-account-statements`;\nexport const GET_DONORS_ACCOUNT_STATEMENTS = `${API_ENDPOINT}/api/accountstatement/donor-account-statements`;\n\n// DONOR STATEMENYTS\nexport const GET_B2B_ACCOUNT_STATEMENTS = `${API_ENDPOINT}/api/accountstatement/b2b-account-statements`;\nexport const GET_CLAB_ACCOUNT_STATEMENTS = `${API_ENDPOINT}/api/accountstatement/corporate-lab-account-statements`;\n\n// STAFF PROFILES\nexport const GET_STAFF_PROFILE = `${API_ENDPOINT}/api/staff/staff-profile`;\nexport const UPDATE_STAFF_PROFILE = `${API_ENDPOINT}/api/staff/staff-profile`;\n\n// SAMPLE COLLECTOR PROFILES\nexport const GET_SAMPLE_COLLECTOR_PROFILE = `${API_ENDPOINT}/api/samplecollector/sample-collector-profile`;\nexport const UPDATE_SAMPLE_COLLECTOR_PROFILE = `${API_ENDPOINT}/api/samplecollector/sample-collector-profile`;\n\n// SAMPLE COLLECTOR TEST APPOINTMENTS\nexport const GET_SAMPLE_COLLECTION_IN_PROCESS_LIST = `${API_ENDPOINT}/api/samplecollector/sample-collector-in-process`;\nexport const GET_SAMPLE_COLLECTION_COMPLETED_LIST = `${API_ENDPOINT}/api/samplecollector/sample-collector-completed`;\nexport const UPDATE_SAMPLE_COLLECTION_STATUS = `${API_ENDPOINT}/api/samplecollector/sample-collector-in-process`;\n\n// REGISTRATION ADMIN\nexport const GET_PENDING_CORPORATE = `${API_ENDPOINT}/api/registration-admin/pending-corporate`;\nexport const GET_APPROVED_CORPORATE = `${API_ENDPOINT}/api/registration-admin/approved-corporate`;\nexport const GET_UNAPPROVED_CORPORATE = `${API_ENDPOINT}/api/registration-admin/unapproved-corporate`;\nexport const APPROVE_UNAPPROVE_CORPORATE = `${API_ENDPOINT}/api/registration-admin/approve-unapprove-corporate`;\n\n\nexport const GET_PENDING_LABS = `${API_ENDPOINT}/api/registration-admin/pending-labs`;\nexport const GET_APPROVED_LABS = `${API_ENDPOINT}/api/registration-admin/approved-labs`;\nexport const GET_UNAPPROVED_LABS = `${API_ENDPOINT}/api/registration-admin/unapproved-labs`;\nexport const APPROVE_UNAPPROVE_LAB = `${API_ENDPOINT}/api/registration-admin/approve-unapprove-lab`;\n\nexport const GET_PENDING_B2B_CLIENTS = `${API_ENDPOINT}/api/registration-admin/pending-b2b-clients`;\nexport const GET_APPROVED_B2B_CLIENTS = `${API_ENDPOINT}/api/registration-admin/approved-b2b-clients`;\nexport const GET_UNAPPROVED_B2B_CLIENTS = `${API_ENDPOINT}/api/registration-admin/unapproved-b2b-clients`;\nexport const APPROVE_UNAPPROVE_B2B_CLIENT = `${API_ENDPOINT}/api/registration-admin/approve-unapprove-b2b-client`;\n\nexport const GET_PENDING_DONORS = `${API_ENDPOINT}/api/registration-admin/pending-donors`;\nexport const GET_APPROVED_DONORS = `${API_ENDPOINT}/api/registration-admin/approved-donors`;\nexport const GET_UNAPPROVED_DONORS = `${API_ENDPOINT}/api/registration-admin/unapproved-donors`;\nexport const APPROVE_UNAPPROVE_DONOR = `${API_ENDPOINT}/api/registration-admin/approve-unapprove-donor`;\nexport const GET_LABS_RATING = `${API_ENDPOINT}/api/registration-admin/labs-rating`;\nexport const GET_LABS_TESTING = `${API_ENDPOINT}/api/marketer-admin/labs-list`;\n\n// FINANCE ADMIN\n\n\nexport const GET_CLEARED_IN_PAYMENTS = `${API_ENDPOINT}/api/finance-admin/cleared-in-payments`;\nexport const GET_APPROVED_IN_PAYMENTS = `${API_ENDPOINT}/api/finance-admin/cleared-out-payments`;\nexport const GET_UNAPPROVED_IN_PAYMENTS = `${API_ENDPOINT}/api/finance-admin/unapproved-in-payments`;\nexport const UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT = `${API_ENDPOINT}/api/finance-admin/approve-unapprove-in-payment`;\nexport const GET_LC_LIST = `${API_ENDPOINT}/api/accountstatement/corporate-account-statements-list`;\n\n\n\n// STAFF\nexport const GET_CSR_LIST = `${API_ENDPOINT}/api/staff/csr-list`;\nexport const GET_MARKETERS_LIST = `${API_ENDPOINT}/api/staff/marketers-list`;\nexport const GET_AUDITOR_LIST = `${API_ENDPOINT}/api/staff/auditor-list`;\nexport const GET_FINANCE_OFFICER_LIST = `${API_ENDPOINT}/api/staff/finance-officer-list`;\nexport const ADD_STAFF = `${API_ENDPOINT}/api/staff/register-staff`;\nexport const UPDATE_STAFF = `${API_ENDPOINT}/api/staff/register-staff`;\nexport const DELETE_STAFF = `${API_ENDPOINT}/api/staff/register-staff`;\n\n// CSR ADMIN\nexport const GET_PENDING_COMPLAINTS = `${API_ENDPOINT}/api/csr-admin/pending-complaints-lab`;\nexport const GET_PENDING_COMPLAINTS_LABHAZIR = `${API_ENDPOINT}/api/csr-admin/pending-complaints-labhazir`;\nexport const GET_INPROCESS_COMPLAINTS = `${API_ENDPOINT}/api/csr-admin/inprocess-complaints`;\nexport const GET_INPROCESS_COMPLAINTS_LABHAZIR = `${API_ENDPOINT}/api/csr-admin/inprocess-complaints-labhazir`;\nexport const GET_RESOLVED_COMPLAINTS = `${API_ENDPOINT}/api/csr-admin/resolved-complaints`;\nexport const GET_RESOLVED_COMPLAINTS_LABHAZIR = `${API_ENDPOINT}/api/csr-admin/resolved-complaints-labhazir`;\nexport const ASSIGN_COMPLAINT = `${API_ENDPOINT}/api/csr-admin/pending-complaints-lab`;\n\n// AUDITOR ADMIN\nexport const GET_PENDING_AUDITS = `${API_ENDPOINT}/api/auditor-admin/pending-audits`;\nexport const GET_INPROCESS_AUDITS = `${API_ENDPOINT}/api/auditor-admin/inprocess-audits`;\nexport const GET_PASSED_AUDITS = `${API_ENDPOINT}/api/auditor-admin/passed-audits`;\nexport const GET_FAILED_AUDITS = `${API_ENDPOINT}/api/auditor-admin/failed-audits`;\nexport const ASSIGN_AUDIT = `${API_ENDPOINT}/api/auditor-admin/pending-audits`;\nexport const ADD_LABS_AUDIT = `${API_ENDPOINT}/api/auditor-admin/pending-audits`;\nexport const GET_LABS_AUDIT_LIST = `${API_ENDPOINT}/api/auditor-admin/labs-list`;\nexport const GET_LABS_ALL_AUDIT_LIST = `${API_ENDPOINT}/api/auditor-admin/labs-audit-list`;\n\n// AUDITS\nexport const GET_ASSIGNED_AUDITS = `${API_ENDPOINT}/api/auditor/assigned-audits`;\nexport const GET_ACTIVITY_LOG_AUDITOR = `${API_ENDPOINT}/api/auditor/activitylog-audits`;\nexport const UPDATE_ASSIGNED_AUDITS = `${API_ENDPOINT}/api/auditor/assigned-audits`;\nexport const GET_AUDITORS_COMPLETED_AUDITS = `${API_ENDPOINT}/api/auditor/completed-audits`;\n\nexport const GET_LAB_AUDITS = `${API_ENDPOINT}/api/lab/audits`;\nexport const ADD_NEW_AUDIT = `${API_ENDPOINT}/api/lab/audits`;\nexport const UPDATE_AUDIT_STATUS = `${API_ENDPOINT}/api/lab/reaudits-labs`;\n// -------------- TEMPLATES URLS --------------\n\n//REGISTER\nexport const POST_FAKE_REGISTER = \"/post-fake-register\";\n\n//LOGIN\nexport const POST_FAKE_LOGIN = \"/post-fake-login\";\nexport const POST_FAKE_JWT_LOGIN = \"/post-jwt-login\";\nexport const POST_FAKE_PASSWORD_FORGET = \"/fake-forget-pwd\";\nexport const POST_FAKE_JWT_PASSWORD_FORGET = \"/jwt-forget-pwd\";\nexport const SOCIAL_LOGIN = \"/social-login\";\n\n//PROFILE\nexport const POST_EDIT_JWT_PROFILE = \"/post-jwt-profile\";\nexport const POST_EDIT_PROFILE = \"/post-fake-profile\";\n\n//PRODUCTS\nexport const GET_PRODUCTS = \"/products\";\nexport const GET_PRODUCTS_DETAIL = \"/product\";\nexport const ADD_NEW_PROJECT = \"/add/product\";\nexport const UPDATE_PROJECT = \"/update/product\";\nexport const DELETE_PROJECT = \"/delete/product\";\n\n//CALENDER\nexport const GET_EVENTS = \"/events\";\nexport const ADD_NEW_EVENT = \"/add/event\";\nexport const UPDATE_EVENT = \"/update/event\";\nexport const DELETE_EVENT = \"/delete/event\";\nexport const GET_CATEGORIES = \"/categories\";\n\n//CHATS\nexport const GET_CHATS = \"/chats\";\nexport const GET_GROUPS = \"/groups\";\nexport const GET_CONTACTS = \"/contacts\";\nexport const GET_MESSAGES = \"/messages\";\nexport const ADD_MESSAGE = \"/add/messages\";\n\n//ORDERS\nexport const GET_ORDERS = \"/orders\";\nexport const ADD_NEW_ORDER = \"/add/order\";\nexport const UPDATE_ORDER = \"/update/order\";\nexport const DELETE_ORDER = \"/delete/order\";\n\n//CART DATA\nexport const GET_CART_DATA = \"/cart\";\n\n//CUSTOMERS\nexport const GET_CUSTOMERS = \"/customers\";\nexport const ADD_NEW_CUSTOMER = \"/add/customer\";\nexport const UPDATE_CUSTOMER = \"/update/customer\";\nexport const DELETE_CUSTOMER = \"/delete/customer\";\n\n//SHOPS\nexport const GET_SHOPS = \"/shops\";\n\n//CRYPTO\nexport const GET_WALLET = \"/wallet\";\nexport const GET_CRYPTO_ORDERS = \"/crypto/orders\";\n\n//INVOICES\nexport const GET_INVOICES = \"/invoices\";\n// export const GET_INVOICE_DETAIL = \"/invoice\";\n\n//PROJECTS\nexport const GET_PROJECTS = \"/projects\";\nexport const GET_PROJECT_DETAIL = \"/project\";\n\n//TASKS\nexport const GET_TASKS = \"/tasks\";\n\n//CONTACTS\nexport const GET_USERS = \"/users\";\nexport const GET_USER_PROFILE = \"/user\";\nexport const ADD_NEW_USER = \"/add/user\";\nexport const UPDATE_USER = \"/update/user\";\nexport const DELETE_USER = \"/delete/user\";\n\n//Mails\nexport const GET_INBOX_MAILS = \"/inboxmails\";\nexport const ADD_NEW_INBOX_MAIL = \"/add/inboxmail\";\nexport const DELETE_INBOX_MAIL = \"/delete/inboxmail\";\n\n//starred mail\nexport const GET_STARRED_MAILS = \"/starredmails\";\n\n//important mails\nexport const GET_IMPORTANT_MAILS = \"/importantmails\";\n\n//Draft mail\nexport const GET_DRAFT_MAILS = \"/draftmails\";\n\n//Send mail\nexport const GET_SENT_MAILS = \"/sentmails\";\n\n//Trash mail\nexport const GET_TRASH_MAILS = \"/trashmails\";\n\n//dashboard charts data\nexport const GET_WEEKLY_DATA = \"/weekly-data\";\nexport const GET_YEARLY_DATA = \"/yearly-data\";\nexport const GET_MONTHLY_DATA = \"/monthly-data\";\n\nexport const TOP_SELLING_DATA = \"/top-selling-data\";\n\nexport const GET_EARNING_DATA = \"/earning-charts-data\";\n","/* CARTS */\nexport const GET_CARTS = \"GET_CARTS\";\nexport const GET_CARTS_SUCCESS = \"GET_CARTS_SUCCESS\";\nexport const GET_CARTS_FAIL = \"GET_CARTS_FAIL\";\n\nexport const EMPTY_CART = \"EMPTY_CART\";\nexport const EMPTY_CART_SUCCESS = \"EMPTY_CART_SUCCESS\";\nexport const EMPTY_CART_FAIL = \"EMPTY_CART_FAIL\";\n\nexport const DELETE_CART = \"DELETE_CART\";\nexport const DELETE_CART_SUCCESS = \"DELETE_CART_SUCCESS\";\nexport const DELETE_CART_FAIL = \"DELETE_CART_FAIL\";\n\nexport const ADD_TO_CART = \"ADD_TO_CART\";\nexport const ADD_TO_CART_SUCCESS = \"ADD_TO_CART_SUCCESS\";\nexport const ADD_TO_CART_FAIL = \"ADD_TO_CART_FAIL\";\n","import { ADD_TO_CART } from \"helpers/url_helper\";\nimport {\n GET_CARTS,\n GET_CARTS_FAIL,\n GET_CARTS_SUCCESS,\n DELETE_CART,\n DELETE_CART_SUCCESS,\n DELETE_CART_FAIL,\n EMPTY_CART,\n EMPTY_CART_SUCCESS,\n EMPTY_CART_FAIL,\n ADD_TO_CART_SUCCESS,\n ADD_TO_CART_FAIL,\n} from \"./actionTypes\";\n\n// ----------- Cart list APIs actions -----------------\nexport const getCarts = id => ({\n type: GET_CARTS,\n payload: id,\n \n});\n\nexport const getCartsSuccess = carts => ({\n type: GET_CARTS_SUCCESS,\n payload: carts,\n});\n\nexport const getCartsFail = error => ({\n type: GET_CARTS_FAIL,\n payload: error,\n});\n\nexport const deleteCart = cart => ({\n type: DELETE_CART,\n payload: cart,\n});\n\nexport const deleteCartSuccess = cart => ({\n type: DELETE_CART_SUCCESS,\n payload: cart,\n});\n\nexport const deleteCartFail = error => ({\n type: DELETE_CART_FAIL,\n payload: error,\n});\nexport const emptyCart = cart => ({\n type: EMPTY_CART,\n payload: cart,\n});\n\nexport const emptyCartSuccess = cart => ({\n type: EMPTY_CART_SUCCESS,\n payload: cart,\n});\n\nexport const emptyCartFail = error => ({\n type: EMPTY_CART_FAIL,\n payload: error,\n});\n\nexport const addToCart = (cart, id) => (\n console.log(\"action\", cart),\n {\n type: ADD_TO_CART,\n payload: { cart, id},\n});\n\nexport const addToCartSuccess = cart => (\n console.log(\"action\", cart),\n {\n type: ADD_TO_CART_SUCCESS,\n payload: cart,\n});\n\nexport const addToCartFail = error => ({\n type: ADD_TO_CART_FAIL,\n payload: error,\n});\n","/* CARTS */\nexport const GET_QUOTES = \"GET_QUOTES\";\nexport const GET_QUOTES_SUCCESS = \"GET_QUOTES_SUCCESS\";\nexport const GET_QUOTES_FAIL = \"GET_QUOTES_FAIL\";\n\nexport const EMPTY_CART = \"EMPTY_CART\";\nexport const EMPTY_CART_SUCCESS = \"EMPTY_CART_SUCCESS\";\nexport const EMPTY_CART_FAIL = \"EMPTY_CART_FAIL\";\n\nexport const DELETE_CART = \"DELETE_CART\";\nexport const DELETE_CART_SUCCESS = \"DELETE_CART_SUCCESS\";\nexport const DELETE_CART_FAIL = \"DELETE_CART_FAIL\";\n\n// export const ADD_TO_CART = \"ADD_TO_CART\";\n// export const ADD_TO_CART_SUCCESS = \"ADD_TO_CART_SUCCESS\";\n// export const ADD_TO_CART_FAIL = \"ADD_TO_CART_FAIL\";\n","import { ADD_TO_CART } from \"helpers/url_helper\";\nimport {\n GET_QUOTES,\n GET_QUOTES_FAIL,\n GET_QUOTES_SUCCESS,\n DELETE_CART,\n DELETE_CART_SUCCESS,\n DELETE_CART_FAIL,\n EMPTY_CART,\n EMPTY_CART_SUCCESS,\n EMPTY_CART_FAIL,\n // ADD_TO_CART_SUCCESS,\n // ADD_TO_CART_FAIL,\n} from \"./actionTypes\";\n\n// ----------- Cart list APIs actions -----------------\nexport const getQuotes = (city_id, test_id, search_type, address, longitude, latitude, km, locationAccessAllowed) => (\n console.log(\"action\", city_id, test_id, search_type, address, longitude, latitude, km, locationAccessAllowed),\n {\n type: GET_QUOTES,\n payload: {city_id, test_id, search_type, address, longitude, latitude, km, locationAccessAllowed}, \n});;\n\nexport const getQuotesSuccess = quotes => (\n console.log(\"action quotesssssssssssss\", quotes), \n {\n type: GET_QUOTES_SUCCESS,\n payload: quotes,\n});\n\nexport const getQuotesFail = error => ({\n type: GET_QUOTES_FAIL,\n payload: error,\n});\n\nexport const deleteCart = cart => ({\n type: DELETE_CART,\n payload: cart,\n});\n\nexport const deleteCartSuccess = cart => ({\n type: DELETE_CART_SUCCESS,\n payload: cart,\n});\n\nexport const deleteCartFail = error => ({\n type: DELETE_CART_FAIL,\n payload: error,\n});\nexport const emptyCart = cart => ({\n type: EMPTY_CART,\n payload: cart,\n});\n\nexport const emptyCartSuccess = cart => ({\n type: EMPTY_CART_SUCCESS,\n payload: cart,\n});\n\nexport const emptyCartFail = error => ({\n type: EMPTY_CART_FAIL,\n payload: error,\n});\n\nexport const addToCart = (cart, id) => (\n console.log(\"action\", cart),\n {\n type: ADD_TO_CART,\n payload: { cart, id},\n});\n\n// export const addToCartSuccess = cart => (\n// console.log(\"action\", cart),\n// {\n// type: ADD_TO_CART_SUCCESS,\n// payload: cart,\n// });\n\n// export const addToCartFail = error => ({\n// type: ADD_TO_CART_FAIL,\n// payload: error,\n// });\n","/* SAMPLE COLLECTORS */\nexport const GET_SAMPLE_COLLECTORS = \"GET_SAMPLE_COLLECTORS\";\nexport const GET_SAMPLE_COLLECTORS_SUCCESS = \"GET_SAMPLE_COLLECTORS_SUCCESS\";\nexport const GET_SAMPLE_COLLECTORS_FAIL = \"GET_SAMPLE_COLLECTORS_FAIL\";\n\nexport const ADD_NEW_SAMPLE_COLLECTOR = \"ADD_NEW_SAMPLE_COLLECTOR\";\nexport const ADD_SAMPLE_COLLECTOR_SUCCESS = \"ADD_SAMPLE_COLLECTOR_SUCCESS\";\nexport const ADD_SAMPLE_COLLECTOR_FAIL = \"ADD_SAMPLE_COLLECTOR_FAIL\";\n\nexport const UPDATE_SAMPLE_COLLECTOR = \"UPDATE_SAMPLE_COLLECTOR\";\nexport const UPDATE_SAMPLE_COLLECTOR_SUCCESS =\n \"UPDATE_SAMPLE_COLLECTOR_SUCCESS\";\nexport const UPDATE_SAMPLE_COLLECTOR_FAIL = \"UPDATE_SAMPLE_COLLECTOR_FAIL\";\n\nexport const DELETE_SAMPLE_COLLECTOR = \"DELETE_SAMPLE_COLLECTOR\";\nexport const DELETE_SAMPLE_COLLECTOR_SUCCESS =\n \"DELETE_SAMPLE_COLLECTOR_SUCCESS\";\nexport const DELETE_SAMPLE_COLLECTOR_FAIL = \"DELETE_SAMPLE_COLLECTOR_FAIL\";\n","import {\n GET_SAMPLE_COLLECTORS,\n GET_SAMPLE_COLLECTORS_FAIL,\n GET_SAMPLE_COLLECTORS_SUCCESS,\n ADD_NEW_SAMPLE_COLLECTOR,\n ADD_SAMPLE_COLLECTOR_SUCCESS,\n ADD_SAMPLE_COLLECTOR_FAIL,\n UPDATE_SAMPLE_COLLECTOR,\n UPDATE_SAMPLE_COLLECTOR_SUCCESS,\n UPDATE_SAMPLE_COLLECTOR_FAIL,\n DELETE_SAMPLE_COLLECTOR,\n DELETE_SAMPLE_COLLECTOR_SUCCESS,\n DELETE_SAMPLE_COLLECTOR_FAIL,\n} from \"./actionTypes\";\n\n// ----------- Sample collector list APIs actions -----------------\nexport const getSampleCollectors = id => ({\n type: GET_SAMPLE_COLLECTORS,\n payload: id,\n});\n\nexport const getSampleCollectorsSuccess = sampleCollectors => ({\n type: GET_SAMPLE_COLLECTORS_SUCCESS,\n payload: sampleCollectors,\n});\n\nexport const getSampleCollectorsFail = error => ({\n type: GET_SAMPLE_COLLECTORS_FAIL,\n payload: error,\n});\n\nexport const addNewSampleCollector = (sampleCollector, id) => ({\n type: ADD_NEW_SAMPLE_COLLECTOR,\n payload: { sampleCollector, id },\n});\n\nexport const addSampleCollectorSuccess = sampleCollector => ({\n type: ADD_SAMPLE_COLLECTOR_SUCCESS,\n payload: sampleCollector,\n});\n\nexport const addSampleCollectorFail = error => ({\n type: ADD_SAMPLE_COLLECTOR_FAIL,\n payload: error,\n});\n\nexport const updateSampleCollector = sampleCollector => ({\n type: UPDATE_SAMPLE_COLLECTOR,\n payload: sampleCollector,\n});\n\nexport const updateSampleCollectorSuccess = sampleCollector => ({\n type: UPDATE_SAMPLE_COLLECTOR_SUCCESS,\n payload: sampleCollector,\n});\n\nexport const updateSampleCollectorFail = error => ({\n type: UPDATE_SAMPLE_COLLECTOR_FAIL,\n payload: error,\n});\n\nexport const deleteSampleCollector = sampleCollector => ({\n type: DELETE_SAMPLE_COLLECTOR,\n payload: sampleCollector,\n});\n\nexport const deleteSampleCollectorSuccess = sampleCollector => ({\n type: DELETE_SAMPLE_COLLECTOR_SUCCESS,\n payload: sampleCollector,\n});\n\nexport const deleteSampleCollectorFail = error => ({\n type: DELETE_SAMPLE_COLLECTOR_FAIL,\n payload: error,\n});\n","/* SAMPLE COLLECTOR TEST APPOINTMENTtS */\nexport const GET_SAMPLE_COLLECTION_IN_PROCESS_LIST =\n \"GET_SAMPLE_COLLECTION_IN_PROCESS_LIST\";\nexport const GET_SAMPLE_COLLECTION_IN_PROCESS_LIST_SUCCESS =\n \"GET_SAMPLE_COLLECTION_IN_PROCESS_LIST_SUCCESS\";\nexport const GET_SAMPLE_COLLECTION_IN_PROCESS_LIST_FAIL =\n \"GET_SAMPLE_COLLECTION_IN_PROCESS_LIST_FAIL\";\n\nexport const GET_SAMPLE_COLLECTION_COMPLETED_LIST =\n \"GET_SAMPLE_COLLECTION_COMPLETED_LIST\";\nexport const GET_SAMPLE_COLLECTION_COMPLETED_LIST_SUCCESS =\n \"GET_SAMPLE_COLLECTION_COMPLETED_LIST_SUCCESS\";\nexport const GET_SAMPLE_COLLECTION_COMPLETED_LIST_FAIL =\n \"GET_SAMPLE_COLLECTION_COMPLETED_LIST_FAIL\";\n\nexport const UPDATE_SAMPLE_COLLECTION_STATUS =\n \"UPDATE_SAMPLE_COLLECTION_STATUS\";\nexport const UPDATE_SAMPLE_COLLECTION_STATUS_SUCCESS =\n \"UPDATE_SAMPLE_COLLECTION_STATUS_SUCCESS\";\nexport const UPDATE_SAMPLE_COLLECTION_STATUS_FAIL =\n \"UPDATE_SAMPLE_COLLECTION_STATUS_FAIL\";\n","import {\n GET_SAMPLE_COLLECTION_IN_PROCESS_LIST,\n GET_SAMPLE_COLLECTION_IN_PROCESS_LIST_SUCCESS,\n GET_SAMPLE_COLLECTION_IN_PROCESS_LIST_FAIL,\n GET_SAMPLE_COLLECTION_COMPLETED_LIST,\n GET_SAMPLE_COLLECTION_COMPLETED_LIST_SUCCESS,\n GET_SAMPLE_COLLECTION_COMPLETED_LIST_FAIL,\n UPDATE_SAMPLE_COLLECTION_STATUS,\n UPDATE_SAMPLE_COLLECTION_STATUS_SUCCESS,\n UPDATE_SAMPLE_COLLECTION_STATUS_FAIL,\n} from \"./actionTypes\";\n\nexport const getSampleCollectionInProcessList = id => ({\n type: GET_SAMPLE_COLLECTION_IN_PROCESS_LIST,\n payload: id,\n});\n\nexport const getSampleCollectionInProcessListSuccess =\n sampleCollectorDatasInProcessList => ({\n type: GET_SAMPLE_COLLECTION_IN_PROCESS_LIST_SUCCESS,\n payload: sampleCollectorDatasInProcessList,\n });\n\nexport const getSampleCollectionInProcessListFail = error => ({\n type: GET_SAMPLE_COLLECTION_IN_PROCESS_LIST_FAIL,\n payload: error,\n});\n\nexport const getSampleCollectionCompletedList = id => ({\n type: GET_SAMPLE_COLLECTION_COMPLETED_LIST,\n payload: id,\n});\n\nexport const getSampleCollectionCompletedListSuccess =\n sampleCollectorDatas => ({\n type: GET_SAMPLE_COLLECTION_COMPLETED_LIST_SUCCESS,\n payload: sampleCollectorDatas,\n });\n\nexport const getSampleCollectionCompletedListFail = error => ({\n type: GET_SAMPLE_COLLECTION_COMPLETED_LIST_FAIL,\n payload: error,\n});\n\nexport const updateSampleCollectionStatus = sampleCollectorData => ({\n type: UPDATE_SAMPLE_COLLECTION_STATUS,\n payload: sampleCollectorData,\n});\n\nexport const updateSampleCollectionStatusSuccess = sampleCollectorData => ({\n type: UPDATE_SAMPLE_COLLECTION_STATUS_SUCCESS,\n payload: sampleCollectorData,\n});\n\nexport const updateSampleCollectionStatusFail = error => ({\n type: UPDATE_SAMPLE_COLLECTION_STATUS_FAIL,\n payload: error,\n});\n","/* SAMPLE COLLECTORS */\nexport const GET_QUALITY_CERTIFICATES = \"GET_QUALITY_CERTIFICATES\";\nexport const GET_QUALITY_CERTIFICATES_SUCCESS =\n \"GET_QUALITY_CERTIFICATES_SUCCESS\";\nexport const GET_QUALITY_CERTIFICATES_FAIL = \"GET_QUALITY_CERTIFICATES_FAIL\";\n\nexport const ADD_NEW_QUALITY_CERTIFICATE = \"ADD_NEW_QUALITY_CERTIFICATE\";\nexport const ADD_QUALITY_CERTIFICATE_SUCCESS =\n \"ADD_QUALITY_CERTIFICATE_SUCCESS\";\nexport const ADD_QUALITY_CERTIFICATE_FAIL = \"ADD_QUALITY_CERTIFICATE_FAIL\";\n\nexport const UPDATE_QUALITY_CERTIFICATE = \"UPDATE_QUALITY_CERTIFICATE\";\nexport const UPDATE_QUALITY_CERTIFICATE_SUCCESS =\n \"UPDATE_QUALITY_CERTIFICATE_SUCCESS\";\nexport const UPDATE_QUALITY_CERTIFICATE_FAIL =\n \"UPDATE_QUALITY_CERTIFICATE_FAIL\";\n\nexport const DELETE_QUALITY_CERTIFICATE = \"DELETE_QUALITY_CERTIFICATE\";\nexport const DELETE_QUALITY_CERTIFICATE_SUCCESS =\n \"DELETE_QUALITY_CERTIFICATE_SUCCESS\";\nexport const DELETE_QUALITY_CERTIFICATE_FAIL =\n \"DELETE_QUALITY_CERTIFICATE_FAIL\";\n\nexport const ADD_NEW_COLLECTIONPOINT_QUALITY = \"ADD_NEW_COLLECTIONPOINT_QUALITY\";\nexport const ADD_COLLECTIONPOINT_QUALITY_SUCCESS = \"ADD_COLLECTIONPOINT_QUALITY_SUCCESS\";\nexport const ADD_COLLECTIONPOINT_QUALITY_FAIL = \"ADD_COLLECTIONPOINT_QUALITY_FAIL\";\n\nexport const GET_LAB_PROFILE = \"GET_LAB_PROFILE\";\nexport const GET_LAB_PROFILE_SUCCESS = \"GET_LAB_PROFILE_SUCCESS\";\nexport const GET_LAB_PROFILE_FAIL = \"GET_LAB_PROFILE_FAIL\";\n","import {\n GET_QUALITY_CERTIFICATES,\n GET_QUALITY_CERTIFICATES_FAIL,\n GET_QUALITY_CERTIFICATES_SUCCESS,\n ADD_NEW_QUALITY_CERTIFICATE,\n ADD_QUALITY_CERTIFICATE_SUCCESS,\n ADD_QUALITY_CERTIFICATE_FAIL,\n UPDATE_QUALITY_CERTIFICATE,\n UPDATE_QUALITY_CERTIFICATE_SUCCESS,\n UPDATE_QUALITY_CERTIFICATE_FAIL,\n DELETE_QUALITY_CERTIFICATE,\n DELETE_QUALITY_CERTIFICATE_SUCCESS,\n DELETE_QUALITY_CERTIFICATE_FAIL,\n ADD_NEW_COLLECTIONPOINT_QUALITY,\n ADD_COLLECTIONPOINT_QUALITY_SUCCESS,\n ADD_COLLECTIONPOINT_QUALITY_FAIL,\n GET_LAB_PROFILE,\n GET_LAB_PROFILE_FAIL,\n GET_LAB_PROFILE_SUCCESS,\n} from \"./actionTypes\";\n\nexport const getLabProfile = id => ({\n type: GET_LAB_PROFILE,\n payload: id,\n});\n\nexport const getLabProfileSuccess = labProfiles => (\n console.log(\"actions\",labProfiles),\n {\n type: GET_LAB_PROFILE_SUCCESS,\n payload: labProfiles,\n});\n\nexport const getLabProfileFail = error => ({\n type: GET_LAB_PROFILE_FAIL,\n payload: error,\n});\n\nexport const addNewCollectionPointQuality = (qualityCertificate, id) => ({\n type: ADD_NEW_COLLECTIONPOINT_QUALITY,\n payload: { qualityCertificate, id },\n});\n\nexport const addCollectionPointQualitySuccess = qualityCertificate => ({\n type: ADD_COLLECTIONPOINT_QUALITY_SUCCESS,\n payload: qualityCertificate,\n});\n\nexport const addCollectionPointQualityFail = error => ({\n type: ADD_COLLECTIONPOINT_QUALITY_FAIL,\n payload: error,\n});\n\n\nexport const getQualityCertificates = id => ({\n type: GET_QUALITY_CERTIFICATES,\n payload: id,\n});\n\nexport const getQualityCertificatesSuccess = qualityCertificates => ({\n type: GET_QUALITY_CERTIFICATES_SUCCESS,\n payload: qualityCertificates,\n});\n\nexport const getQualityCertificatesFail = error => ({\n type: GET_QUALITY_CERTIFICATES_FAIL,\n payload: error,\n});\n\nexport const addNewQualityCertificate = (qualityCertificate, id) => ({\n type: ADD_NEW_QUALITY_CERTIFICATE,\n payload: { qualityCertificate, id },\n});\n\nexport const addQualityCertificateSuccess = qualityCertificate => ({\n type: ADD_QUALITY_CERTIFICATE_SUCCESS,\n payload: qualityCertificate,\n});\n\nexport const addQualityCertificateFail = error => ({\n type: ADD_QUALITY_CERTIFICATE_FAIL,\n payload: error,\n});\n\nexport const updateQualityCertificate = qualityCertificate => ({\n type: UPDATE_QUALITY_CERTIFICATE,\n payload: qualityCertificate,\n});\n\nexport const updateQualityCertificateSuccess = qualityCertificate => ({\n type: UPDATE_QUALITY_CERTIFICATE_SUCCESS,\n payload: qualityCertificate,\n});\n\nexport const updateQualityCertificateFail = error => ({\n type: UPDATE_QUALITY_CERTIFICATE_FAIL,\n payload: error,\n});\n\nexport const deleteQualityCertificate = qualityCertificate => ({\n type: DELETE_QUALITY_CERTIFICATE,\n payload: qualityCertificate,\n});\n\nexport const deleteQualityCertificateSuccess = qualityCertificate => ({\n type: DELETE_QUALITY_CERTIFICATE_SUCCESS,\n payload: qualityCertificate,\n});\n\nexport const deleteQualityCertificateFail = error => ({\n type: DELETE_QUALITY_CERTIFICATE_FAIL,\n payload: error,\n});\n","/* SAMPLE COLLECTORS */\nexport const GET_PAYMENT_STATUSS = \"GET_PAYMENT_STATUSS\";\nexport const GET_PAYMENT_STATUSS_SUCCESS =\n \"GET_PAYMENT_STATUSS_SUCCESS\";\nexport const GET_PAYMENT_STATUSS_FAIL = \"GET_PAYMENT_STATUSS_FAIL\";\n\nexport const GET_PAYMENTOUT_STATUSS = \"GET_PAYMENTOUT_STATUSS\";\nexport const GET_PAYMENTOUT_STATUSS_SUCCESS =\n \"GET_PAYMENTOUT_STATUSS_SUCCESS\";\nexport const GET_PAYMENTOUT_STATUSS_FAIL = \"GET_PAYMENTOUT_STATUSS_FAIL\";\n\nexport const GET_DEPOSIT_STATUSS = \"GET_DEPOSIT_STATUSS\";\nexport const GET_DEPOSIT_STATUSS_SUCCESS =\n \"GET_DEPOSIT_STATUSS_SUCCESS\";\nexport const GET_DEPOSIT_STATUSS_FAIL = \"GET_DEPOSIT_STATUSS_FAIL\";\n\nexport const GET_CREATEDOUT_STATUSS = \"GET_CREATEDOUT_STATUSS\";\nexport const GET_CREATEDOUT_STATUSS_SUCCESS =\n \"GET_CREATEDOUT_STATUSS_SUCCESS\";\nexport const GET_CREATEDOUT_STATUSS_FAIL = \"GET_CREATEDOUT_STATUSS_FAIL\";\n\nexport const GET_CCREATEDOUT_STATUSS = \"GET_CCREATEDOUT_STATUSS\";\nexport const GET_CCREATEDOUT_STATUSS_SUCCESS =\n \"GET_CCREATEDOUT_STATUSS_SUCCESS\";\nexport const GET_CCREATEDOUT_STATUSS_FAIL = \"GET_CCREATEDOUT_STATUSS_FAIL\";\n\nexport const GET_CREATEDOUTDETAIL_STATUSS = \"GET_CREATEDOUTDETAIL_STATUSS\";\nexport const GET_CREATEDOUTDETAIL_STATUSS_SUCCESS =\n \"GET_CREATEDOUTDETAIL_STATUSS_SUCCESS\";\nexport const GET_CREATEDOUTDETAIL_STATUSS_FAIL = \"GET_CREATEDOUTDETAIL_STATUSS_FAIL\";\n\nexport const GET_PAYMENTOUT_CLEAR_STATUSS = \"GET_PAYMENTOUT_CLEAR_STATUSS\";\nexport const GET_PAYMENTOUT_CLEAR_STATUSS_SUCCESS =\n \"GET_PAYMENTOUT_CLEAR_STATUSS_SUCCESS\";\nexport const GET_PAYMENTOUT_CLEAR_STATUSS_FAIL = \"GET_PAYMENTOUT_CLEAR_STATUSS_FAIL\";\n\nexport const GET_CLEAR_STATUSS = \"GET_CLEAR_STATUSS\";\nexport const GET_CLEAR_STATUSS_SUCCESS =\n \"GET_CLEAR_STATUSS_SUCCESS\";\nexport const GET_CLEAR_STATUSS_FAIL = \"GET_CLEAR_STATUSS_FAIL\";\n\nexport const GET_BOUNCEDIN_STATUSS = \"GET_BOUNCEDIN_STATUSS\";\nexport const GET_BOUNCEDIN_STATUSS_SUCCESS =\n \"GET_BOUNCEDIN_STATUSS_SUCCESS\";\nexport const GET_BOUNCEDIN_STATUSS_FAIL = \"GET_BOUNCEDIN_STATUSS_FAIL\";\n\nexport const GET_BOUNCED_STATUSS = \"GET_BOUNCED_STATUSS\";\nexport const GET_BOUNCED_STATUSS_SUCCESS =\n \"GET_BOUNCED_STATUSS_SUCCESS\";\nexport const GET_BOUNCED_STATUSS_FAIL = \"GET_BOUNCED_STATUSS_FAIL\";\n\nexport const UPDATE_PAYMENT_STATUS = \"UPDATE_PAYMENT_STATUS\";\nexport const UPDATE_PAYMENT_STATUS_SUCCESS =\n \"UPDATE_PAYMENT_STATUS_SUCCESS\";\nexport const UPDATE_PAYMENT_STATUS_FAIL =\n \"UPDATE_PAYMENT_STATUS_FAIL\";\n\nexport const UPDATE_PAYMENTOUT_STATUS = \"UPDATE_PAYMENTOUT_STATUS\";\nexport const UPDATE_PAYMENTOUT_STATUS_SUCCESS =\n \"UPDATE_PAYMENTOUT_STATUS_SUCCESS\";\nexport const UPDATE_PAYMENTOUT_STATUS_FAIL =\n \"UPDATE_PAYMENTOUT_STATUS_FAIL\";\n\nexport const UPDATE_PAYMENTIN_STATUS = \"UPDATE_PAYMENTIN_STATUS\";\nexport const UPDATE_PAYMENTIN_STATUS_SUCCESS =\n \"UPDATE_PAYMENTIN_STATUS_SUCCESS\";\nexport const UPDATE_PAYMENTIN_STATUS_FAIL =\n \"UPDATE_PAYMENTOUT_STATUS_FAIL\";\n\nexport const UPDATE_PAYMENTOUTCREATED_STATUS = \"UPDATE_PAYMENTOUTCREATED_STATUS\";\nexport const UPDATE_PAYMENTOUTCREATED_STATUS_SUCCESS =\n \"UPDATE_PAYMENTOUTCREATED_STATUS_SUCCESS\";\nexport const UPDATE_PAYMENTOUTCREATED_STATUS_FAIL =\n \"UPDATE_PAYMENTOUTCREATED_STATUS_FAIL\";\n\nexport const UPDATE_PAYMENTOUTCCREATED_STATUS = \"UPDATE_PAYMENTOUTCCREATED_STATUS\";\nexport const UPDATE_PAYMENTOUTCCREATED_STATUS_SUCCESS =\n \"UPDATE_PAYMENTOUTCCREATED_STATUS_SUCCESS\";\nexport const UPDATE_PAYMENTOUTCCREATED_STATUS_FAIL =\n \"UPDATE_PAYMENTOUTCCREATED_STATUS_FAIL\";\n\nexport const UPDATE_PAYMENTINBOUNCED_STATUS = \"UPDATE_PAYMENTINBOUNCED_STATUS\";\nexport const UPDATE_PAYMENTINBOUNCED_STATUS_SUCCESS =\n \"UPDATE_PAYMENTINBOUNCED_STATUS_SUCCESS\";\nexport const UPDATE_PAYMENTINBOUNCED_STATUS_FAIL =\n \"UPDATE_PAYMENTINBOUNCED_STATUS_FAIL\";\n\n// export const ADD_NEW_OUT_PAYMENT = \"ADD_NEW_OUT_PAYMENT\";\n// export const ADD_OUT_PAYMENT_SUCCESS =\n// \"ADD_OUT_PAYMENT_SUCCESS\";\n// export const ADD_OUT_PAYMENT_FAIL = \"ADD_OUT_PAYMENT_FAIL\";\n\nexport const GET_LABS = \"get_labs\";\nexport const GET_LABS_SUCCESS = \"get_labs_success\";\nexport const GET_LABS_FAIL = \"get_labs_fail\";\n\nexport const GET_DONORS = \"get_donors\";\nexport const GET_DONORS_SUCCESS = \"get_donors_success\";\nexport const GET_DONORS_FAIL = \"get_donors_fail\";\n\nexport const GET_BANKS = \"get_banks\";\nexport const GET_BANKS_SUCCESS = \"get_banks_success\";\nexport const GET_BANKS_FAIL = \"get_banks_fail\";\n\nexport const GET_BANK_ACCOUNTS = \"GET_BANK_ACCOUNTS\";\nexport const GET_BANK_ACCOUNTS_SUCCESS =\n \"GET_BANK_ACCOUNTS_SUCCESS\";\nexport const GET_BANK_ACCOUNTS_FAIL = \"GET_BANK_ACCOUNTS_FAIL\";\n\nexport const DELETE_PAYMENTOUT = \"DELETE_PAYMENTOUT\";\nexport const DELETE_PAYMENTOUT_SUCCESS = \"DELETE_PAYMENTOUT_SUCCESS\";\nexport const DELETE_PAYMENTOUT_FAIL = \"DELETE_PAYMENTOUT_FAIL\";\n","import {\n GET_PAYMENT_STATUSS,\n GET_PAYMENT_STATUSS_FAIL,\n GET_PAYMENT_STATUSS_SUCCESS,\n GET_PAYMENTOUT_STATUSS,\n GET_PAYMENTOUT_STATUSS_FAIL,\n GET_PAYMENTOUT_STATUSS_SUCCESS,\n GET_DEPOSIT_STATUSS,\n GET_DEPOSIT_STATUSS_FAIL,\n GET_DEPOSIT_STATUSS_SUCCESS,\n GET_CREATEDOUT_STATUSS,\n GET_CREATEDOUT_STATUSS_FAIL,\n GET_CREATEDOUT_STATUSS_SUCCESS,\n GET_CCREATEDOUT_STATUSS,\n GET_CCREATEDOUT_STATUSS_FAIL,\n GET_CCREATEDOUT_STATUSS_SUCCESS,\n GET_CREATEDOUTDETAIL_STATUSS,\n GET_CREATEDOUTDETAIL_STATUSS_SUCCESS,\n GET_CREATEDOUTDETAIL_STATUSS_FAIL,\n // GET_CLEAROUT_STATUSS,\n // GET_CLEAROUT_STATUSS_FAIL,\n // GET_CLEAROUT_STATUSS_SUCCESS,\n GET_BOUNCEDIN_STATUSS,\n GET_BOUNCEDIN_STATUSS_FAIL,\n GET_BOUNCEDIN_STATUSS_SUCCESS,\n GET_BOUNCED_STATUSS,\n GET_BOUNCED_STATUSS_FAIL,\n GET_BOUNCED_STATUSS_SUCCESS,\n GET_CLEAR_STATUSS,\n GET_CLEAR_STATUSS_FAIL,\n GET_CLEAR_STATUSS_SUCCESS,\n GET_PAYMENTOUT_CLEAR_STATUSS,\n GET_PAYMENTOUT_CLEAR_STATUSS_FAIL,\n GET_PAYMENTOUT_CLEAR_STATUSS_SUCCESS,\n UPDATE_PAYMENT_STATUS,\n UPDATE_PAYMENT_STATUS_SUCCESS,\n UPDATE_PAYMENT_STATUS_FAIL,\n UPDATE_PAYMENTIN_STATUS,\n UPDATE_PAYMENTIN_STATUS_SUCCESS,\n UPDATE_PAYMENTIN_STATUS_FAIL,\n UPDATE_PAYMENTOUT_STATUS,\n UPDATE_PAYMENTOUT_STATUS_SUCCESS,\n UPDATE_PAYMENTOUT_STATUS_FAIL,\n UPDATE_PAYMENTOUTCREATED_STATUS,\n UPDATE_PAYMENTOUTCREATED_STATUS_SUCCESS,\n UPDATE_PAYMENTOUTCREATED_STATUS_FAIL,\n UPDATE_PAYMENTOUTCCREATED_STATUS,\n UPDATE_PAYMENTOUTCCREATED_STATUS_SUCCESS,\n UPDATE_PAYMENTOUTCCREATED_STATUS_FAIL,\n UPDATE_PAYMENTINBOUNCED_STATUS,\n UPDATE_PAYMENTINBOUNCED_STATUS_SUCCESS,\n UPDATE_PAYMENTINBOUNCED_STATUS_FAIL,\n // ADD_NEW_OUT_PAYMENT,\n // ADD_OUT_PAYMENT_SUCCESS,\n // ADD_OUT_PAYMENT_FAIL,\n GET_LABS,\n GET_LABS_SUCCESS,\n GET_LABS_FAIL,\n GET_DONORS,\n GET_DONORS_SUCCESS,\n GET_DONORS_FAIL,\n GET_BANKS,\n GET_BANKS_SUCCESS,\n GET_BANKS_FAIL,\n GET_BANK_ACCOUNTS,\n GET_BANK_ACCOUNTS_FAIL,\n GET_BANK_ACCOUNTS_SUCCESS,\n DELETE_PAYMENTOUT,\n DELETE_PAYMENTOUT_SUCCESS,\n DELETE_PAYMENTOUT_FAIL,\n} from \"./actionTypes\";\n\nexport const getLabs = () => ({\n type: GET_LABS,\n});\n\nexport const getLabsSuccess = labs => ({\n type: GET_LABS_SUCCESS,\n payload: labs,\n});\n\nexport const getLabsFail = error => ({\n type: GET_LABS_FAIL,\n payload: error,\n});\n\nexport const getBankAccounts = () => ({\n type: GET_BANK_ACCOUNTS,\n});\n\nexport const getBankAccountsSuccess = bankAccounts => ({\n type: GET_BANK_ACCOUNTS_SUCCESS,\n payload: bankAccounts,\n});\n\nexport const getBankAccountsFail = error => ({\n type: GET_BANK_ACCOUNTS_FAIL,\n payload: error,\n});\nexport const getBanks = () => ({\n type: GET_BANKS,\n});\n\nexport const getBanksSuccess = banks => ({\n type: GET_BANKS_SUCCESS,\n payload: banks,\n});\n\nexport const getBanksFail = error => ({\n type: GET_BANKS_FAIL,\n payload: error,\n});\nexport const getDonors = () => ({\n type: GET_DONORS,\n});\n\nexport const getDonorsSuccess = donors => ({\n type: GET_DONORS_SUCCESS,\n payload: donors,\n});\n\nexport const getDonorsFail = error => ({\n type: GET_DONORS_FAIL,\n payload: error,\n});\nexport const getPaymentStatuss = id => ({\n type: GET_PAYMENT_STATUSS,\n payload: id,\n});\n\nexport const getPaymentStatussSuccess = paymentStatuss => ({\n type: GET_PAYMENT_STATUSS_SUCCESS,\n payload: paymentStatuss,\n});\n\nexport const getPaymentStatussFail = error => ({\n type: GET_PAYMENT_STATUSS_FAIL,\n payload: error,\n});\n\nexport const getPaymentOutStatuss = id => ({\n type: GET_PAYMENTOUT_STATUSS,\n payload: id,\n});\n\nexport const getPaymentOutStatussSuccess = paymentOutStatuss => ({\n type: GET_PAYMENTOUT_STATUSS_SUCCESS,\n payload: paymentOutStatuss,\n});\n\nexport const getPaymentOutStatussFail = error => ({\n type: GET_PAYMENTOUT_STATUSS_FAIL,\n payload: error,\n});\n\nexport const getDepositStatuss = id => ({\n type: GET_DEPOSIT_STATUSS,\n payload: id,\n});\nexport const getBouncedInStatuss = id => ({\n type: GET_BOUNCEDIN_STATUSS,\n payload: id,\n});\n\nexport const getBouncedInStatussSuccess = paymentBouncedInStatuss => ({\n type: GET_BOUNCEDIN_STATUSS_SUCCESS,\n payload: paymentBouncedInStatuss,\n});\n\nexport const getBouncedInStatussFail = error => ({\n type: GET_BOUNCEDIN_STATUSS_FAIL,\n payload: error,\n});\n\n// corporate payment out\n\nexport const getCCreatedOutStatussSuccess = paymentStatuss => ({\n type: GET_CCREATEDOUT_STATUSS_SUCCESS,\n payload: paymentStatuss,\n});\n\nexport const getCCreatedOutStatussFail = error => ({\n type: GET_CCREATEDOUT_STATUSS_FAIL,\n payload: error,\n});\nexport const getCCreatedOutStatuss = id => {\n console.log('ID passed to action:', id); // Log the ID passed to the action\n return {\n type: GET_CCREATEDOUT_STATUSS,\n payload: id,\n };\n};\nexport const getCreatedOutStatussSuccess = paymentCreatedStatuss => ({\n type: GET_CREATEDOUT_STATUSS_SUCCESS,\n payload: paymentCreatedStatuss,\n});\n\nexport const getCreatedOutStatussFail = error => ({\n type: GET_CREATEDOUT_STATUSS_FAIL,\n payload: error,\n});\n\nexport const getCreatedOutDetailStatuss = id => {\n console.log('ID passed to action:', id); // Log the ID passed to the action\n return {\n type: GET_CREATEDOUTDETAIL_STATUSS,\n payload: id,\n };\n};\nexport const getCreatedOutDetailStatussSuccess = paymentCreatedStatuss => (\n console.log('ID passed to action:', paymentCreatedStatuss),\n {\n type: GET_CREATEDOUTDETAIL_STATUSS_SUCCESS,\n payload: paymentCreatedStatuss,\n});\n\nexport const getCreatedOutDetailStatussFail = error => ({\n type: GET_CREATEDOUTDETAIL_STATUSS_FAIL,\n payload: error,\n});\n\nexport const getCreatedOutStatuss = id => ({\n type: GET_CREATEDOUT_STATUSS,\n payload: id,\n});\nexport const getPaymentOutClearStatuss = id => ({\n type: GET_PAYMENTOUT_CLEAR_STATUSS,\n payload: id,\n});\n\nexport const getPaymentOutClearStatussSuccess = paymentStatuss => ({\n type: GET_PAYMENTOUT_CLEAR_STATUSS_SUCCESS,\n payload: paymentStatuss,\n});\n\nexport const getPaymentOutClearStatussFail = error => ({\n type: GET_PAYMENTOUT_CLEAR_STATUSS_FAIL,\n payload: error,\n});\nexport const getDepositStatussSuccess = paymentStatuss => ({\n type: GET_DEPOSIT_STATUSS_SUCCESS,\n payload: paymentStatuss,\n});\n\nexport const getDepositStatussFail = error => ({\n type: GET_DEPOSIT_STATUSS_FAIL,\n payload: error,\n});\nexport const getClearStatuss = id => ({\n type: GET_CLEAR_STATUSS,\n payload: id,\n});\n\nexport const getClearStatussSuccess = paymentStatuss => ({\n type: GET_CLEAR_STATUSS_SUCCESS,\n payload: paymentStatuss,\n});\n\nexport const getClearStatussFail = error => ({\n type: GET_CLEAR_STATUSS_FAIL,\n payload: error,\n});\nexport const getBouncedStatuss = id => ({\n type: GET_BOUNCED_STATUSS,\n payload: id,\n});\n\nexport const getBouncedStatussSuccess = paymentBouncedStatuss => ({\n type: GET_BOUNCED_STATUSS_SUCCESS,\n payload: paymentBouncedStatuss,\n});\n\nexport const getBouncedStatussFail = error => ({\n type: GET_BOUNCED_STATUSS_FAIL,\n payload: error,\n});\n\nexport const updatePaymentStatus = paymentStatus => ({\n type: UPDATE_PAYMENT_STATUS,\n payload: paymentStatus,\n});\n\nexport const updatePaymentStatusSuccess = paymentStatus => ({\n type: UPDATE_PAYMENT_STATUS_SUCCESS,\n payload: paymentStatus,\n});\n\nexport const updatePaymentStatusFail = error => ({\n type: UPDATE_PAYMENT_STATUS_FAIL,\n payload: error,\n});\nexport const updatePaymentOutStatus = paymentOutStatus => ({\n type: UPDATE_PAYMENTOUT_STATUS,\n payload: paymentOutStatus,\n});\n\nexport const updatePaymentOutStatusSuccess = paymentOutStatus => ({\n type: UPDATE_PAYMENTOUT_STATUS_SUCCESS,\n payload: paymentOutStatus,\n});\n\nexport const updatePaymentOutStatusFail = error => ({\n type: UPDATE_PAYMENTOUT_STATUS_FAIL,\n payload: error,\n});\n\nexport const updatePaymentInStatus = paymentInStatus => ({\n type: UPDATE_PAYMENTIN_STATUS,\n payload: paymentInStatus,\n});\n\nexport const updatePaymentInStatusSuccess = paymentInStatus => ({\n type: UPDATE_PAYMENTIN_STATUS_SUCCESS,\n payload: paymentInStatus,\n});\n\nexport const updatePaymentInStatusFail = error => ({\n type: UPDATE_PAYMENTIN_STATUS_FAIL,\n payload: error,\n});\n\nexport const updatePaymentOutCreatedStatuss = paymentOutCreatedStatuss => ({\n type: UPDATE_PAYMENTOUTCREATED_STATUS,\n payload: paymentOutCreatedStatuss,\n});\n\nexport const updatePaymentOutCreatedStatusSuccess = paymentOutCreatedStatuss => ({\n type: UPDATE_PAYMENTOUTCREATED_STATUS_SUCCESS,\n payload: paymentOutCreatedStatuss,\n});\n\nexport const updatePaymentOutCreatedStatusFail = error => ({\n type: UPDATE_PAYMENTOUTCREATED_STATUS_FAIL,\n payload: error,\n});\nexport const updatePaymentOutCCreatedStatuss = paymentOutCreatedStatuss => ({\n type: UPDATE_PAYMENTOUTCCREATED_STATUS,\n payload: paymentOutCreatedStatuss,\n});\n\nexport const updatePaymentOutCCreatedStatusSuccess = paymentOutCreatedStatuss => ({\n type: UPDATE_PAYMENTOUTCCREATED_STATUS_SUCCESS,\n payload: paymentOutCreatedStatuss,\n});\n\nexport const updatePaymentOutCCreatedStatusFail = error => ({\n type: UPDATE_PAYMENTOUTCCREATED_STATUS_FAIL,\n payload: error,\n});\nexport const updatePaymentInBouncedStatus = paymentInBouncedStatus => ({\n type: UPDATE_PAYMENTINBOUNCED_STATUS,\n payload: paymentInBouncedStatus,\n});\n\nexport const updatePaymentInBouncedStatusSuccess = paymentInBouncedStatus => ({\n type: UPDATE_PAYMENTINBOUNCED_STATUS_SUCCESS,\n payload: paymentInBouncedStatus,\n});\n\nexport const updatePaymentInBouncedStatusFail = error => ({\n type: UPDATE_PAYMENTINBOUNCED_STATUS_FAIL,\n payload: error,\n});\n// export const addNewOutPayment = (outPayment, id) => ({\n// type: ADD_NEW_OUT_PAYMENT,\n// payload: { outPayment, id },\n// });\n\n// export const addOutPaymentSuccess = outPayment => ({\n// type: ADD_OUT_PAYMENT_SUCCESS,\n// payload: outPayment,\n// });\n\n// export const addOutPaymentFail = error => ({\n// type: ADD_OUT_PAYMENT_FAIL,\n// payload: error,\n// });\nexport const deletePaymentout = paymentout => ({\n type: DELETE_PAYMENTOUT,\n payload: paymentout,\n});\n\nexport const deletePaymentoutSuccess = paymentout => ({\n type: DELETE_PAYMENTOUT_SUCCESS,\n payload: paymentout,\n});\n\nexport const deletePaymentoutFail = error => ({\n type: DELETE_PAYMENTOUT_FAIL,\n payload: error,\n});\n","/* SAMPLE COLLECTORS */\nexport const GET_ADVERTISEMENTS = \"GET_ADVERTISEMENTS\";\nexport const GET_ADVERTISEMENTS_SUCCESS =\n \"GET_ADVERTISEMENTS_SUCCESS\";\nexport const GET_ADVERTISEMENTS_FAIL = \"GET_ADVERTISEMENTS_FAIL\";\n\nexport const ADD_NEW_ADVERTISEMENT = \"ADD_NEW_ADVERTISEMENT\";\nexport const ADD_ADVERTISEMENT_SUCCESS =\n \"ADD_ADVERTISEMENT_SUCCESS\";\nexport const ADD_ADVERTISEMENT_FAIL = \"ADD_ADVERTISEMENT_FAIL\";\n\nexport const UPDATE_ADVERTISEMENT = \"UPDATE_ADVERTISEMENT\";\nexport const UPDATE_ADVERTISEMENT_SUCCESS =\n \"UPDATE_ADVERTISEMENT_SUCCESS\";\nexport const UPDATE_ADVERTISEMENT_FAIL =\n \"UPDATE_ADVERTISEMENT_FAIL\";\n\nexport const DELETE_ADVERTISEMENT = \"DELETE_ADVERTISEMENT\";\nexport const DELETE_ADVERTISEMENT_SUCCESS =\n \"DELETE_ADVERTISEMENT_SUCCESS\";\nexport const DELETE_ADVERTISEMENT_FAIL =\n \"DELETE_ADVERTISEMENT_FAIL\";\n","import {\n GET_ADVERTISEMENTS,\n GET_ADVERTISEMENTS_FAIL,\n GET_ADVERTISEMENTS_SUCCESS,\n ADD_NEW_ADVERTISEMENT,\n ADD_ADVERTISEMENT_SUCCESS,\n ADD_ADVERTISEMENT_FAIL,\n UPDATE_ADVERTISEMENT,\n UPDATE_ADVERTISEMENT_SUCCESS,\n UPDATE_ADVERTISEMENT_FAIL,\n DELETE_ADVERTISEMENT,\n DELETE_ADVERTISEMENT_SUCCESS,\n DELETE_ADVERTISEMENT_FAIL,\n} from \"./actionTypes\";\n\nexport const getAdvertisements = () => ({\n type: GET_ADVERTISEMENTS,\n payload: {},\n});\n\nexport const getAdvertisementsSuccess = advertisements => ({\n type: GET_ADVERTISEMENTS_SUCCESS,\n payload: advertisements,\n});\n\nexport const getAdvertisementsFail = error => ({\n type: GET_ADVERTISEMENTS_FAIL,\n payload: error,\n});\n\nexport const addNewAdvertisement = (advertisement, id) => ({\n type: ADD_NEW_ADVERTISEMENT,\n payload: { advertisement, id },\n});\n\nexport const addAdvertisementSuccess = advertisement => ({\n type: ADD_ADVERTISEMENT_SUCCESS,\n payload: advertisement,\n});\n\nexport const addAdvertisementFail = error => ({\n type: ADD_ADVERTISEMENT_FAIL,\n payload: error,\n});\n\nexport const updateAdvertisement = advertisement => ({\n type: UPDATE_ADVERTISEMENT,\n payload: advertisement,\n});\n\nexport const updateAdvertisementSuccess = advertisement => ({\n type: UPDATE_ADVERTISEMENT_SUCCESS,\n payload: advertisement,\n});\n\nexport const updateAdvertisementFail = error => ({\n type: UPDATE_ADVERTISEMENT_FAIL,\n payload: error,\n});\n\nexport const deleteAdvertisement = advertisement => ({\n type: DELETE_ADVERTISEMENT,\n payload: advertisement,\n});\n\nexport const deleteAdvertisementSuccess = advertisement => ({\n type: DELETE_ADVERTISEMENT_SUCCESS,\n payload: advertisement,\n});\n\nexport const deleteAdvertisementFail = error => ({\n type: DELETE_ADVERTISEMENT_FAIL,\n payload: error,\n});\n","/* PATHOLOGISTS */\nexport const GET_ADV_INVOICE = \"GET_ADV_INVOICE\";\nexport const GET_ADV_INVOICE_SUCCESS = \"GET_ADV_INVOICE_SUCCESS\";\nexport const GET_ADV_INVOICE_FAIL = \"GET_ADV_INVOICE_FAIL\";\n\n","/* ADVERTISEMENT LAB */\n\n// export const GET_ADVERTISEMENT_PRICE_LISTS = \"GET_ADVERTISEMENT_PRICE_LISTS\";\n// export const GET_ADVERTISEMENT_PRICE_LISTS_SUCCESS =\n// \"GET_ADVERTISEMENT_PRICE_LISTS_SUCCESS\";\n// export const GET_ADVERTISEMENT_PRICE_LISTS_FAIL = \"GET_ADVERTISEMENT_PRICE_LISTS_FAIL\";\n\nexport const GET_LAB_ADVERTISEMENTS = \"GET_LAB_ADVERTISEMENTS\";\nexport const GET_LAB_ADVERTISEMENTS_SUCCESS =\n \"GET_LAB_ADVERTISEMENTS_SUCCESS\";\nexport const GET_LAB_ADVERTISEMENTS_FAIL = \"GET_LAB_ADVERTISEMENTS_FAIL\";\n\nexport const ADD_NEW_LAB_ADVERTISEMENT = \"ADD_NEW_LAB_ADVERTISEMENT\";\nexport const ADD_LAB_ADVERTISEMENT_SUCCESS =\n \"ADD_LAB_ADVERTISEMENT_SUCCESS\";\nexport const ADD_LAB_ADVERTISEMENT_FAIL = \"ADD_LAB_ADVERTISEMENT_FAIL\";\n\nexport const UPDATE_LAB_ADVERTISEMENT = \"UPDATE_LAB_ADVERTISEMENT\";\nexport const UPDATE_LAB_ADVERTISEMENT_SUCCESS =\n \"UPDATE_LAB_ADVERTISEMENT_SUCCESS\";\nexport const UPDATE_LAB_ADVERTISEMENT_FAIL =\n \"UPDATE_LAB_ADVERTISEMENT_FAIL\";\n\nexport const DELETE_LAB_ADVERTISEMENT = \"DELETE_LAB_ADVERTISEMENT\";\nexport const DELETE_LAB_ADVERTISEMENT_SUCCESS =\n \"DELETE_LAB_ADVERTISEMENT_SUCCESS\";\nexport const DELETE_LAB_ADVERTISEMENT_FAIL =\n \"DELETE_LAB_ADVERTISEMENT_FAIL\";\n","import {\n // GET_ADVERTISEMENT_PRICE_LISTS,\n // GET_ADVERTISEMENT_PRICE_LISTS_FAIL,\n // GET_ADVERTISEMENT_PRICE_LISTS_SUCCESS,\n GET_LAB_ADVERTISEMENTS,\n GET_LAB_ADVERTISEMENTS_FAIL,\n GET_LAB_ADVERTISEMENTS_SUCCESS,\n ADD_NEW_LAB_ADVERTISEMENT,\n ADD_LAB_ADVERTISEMENT_SUCCESS,\n ADD_LAB_ADVERTISEMENT_FAIL,\n UPDATE_LAB_ADVERTISEMENT,\n UPDATE_LAB_ADVERTISEMENT_SUCCESS,\n UPDATE_LAB_ADVERTISEMENT_FAIL,\n DELETE_LAB_ADVERTISEMENT,\n DELETE_LAB_ADVERTISEMENT_SUCCESS,\n DELETE_LAB_ADVERTISEMENT_FAIL,\n} from \"./actionTypes\";\n\n// export const getAdvertisementPriceLists = id=> ({\n// type: GET_ADVERTISEMENT_PRICE_LISTS,\n// payload: id,\n// });\n\n// export const getAdvertisementPriceListsSuccess = labAdvertisements => ({\n// type: GET_ADVERTISEMENT_PRICE_LISTS_SUCCESS,\n// payload: labAdvertisements,\n// });\n\n// export const getAdvertisementPriceListsFail = error => ({\n// type: GET_ADVERTISEMENT_PRICE_LISTS_FAIL,\n// payload: error,\n// });\n\nexport const getLabAdvertisements = id => ({\n type: GET_LAB_ADVERTISEMENTS,\n payload: id,\n});\n\nexport const getLabAdvertisementsSuccess = labAdvertisements => ({\n type: GET_LAB_ADVERTISEMENTS_SUCCESS,\n payload: labAdvertisements,\n});\n\nexport const getLabAdvertisementsFail = error => ({\n type: GET_LAB_ADVERTISEMENTS_FAIL,\n payload: error,\n});\n\nexport const addNewLabAdvertisement = (labAdvertisement, id) => ({\n type: ADD_NEW_LAB_ADVERTISEMENT,\n payload: { labAdvertisement, id },\n});\n\nexport const addLabAdvertisementSuccess = labAdvertisement => ({\n type: ADD_LAB_ADVERTISEMENT_SUCCESS,\n payload: labAdvertisement,\n});\n\nexport const addLabAdvertisementFail = error => ({\n type: ADD_LAB_ADVERTISEMENT_FAIL,\n payload: error,\n});\n\nexport const updateLabAdvertisement = labAdvertisement => ({\n type: UPDATE_LAB_ADVERTISEMENT,\n payload: labAdvertisement,\n});\n\nexport const updateLabAdvertisementSuccess = labAdvertisement => ({\n type: UPDATE_LAB_ADVERTISEMENT_SUCCESS,\n payload: labAdvertisement,\n});\n\nexport const updateLabAdvertisementFail = error => ({\n type: UPDATE_LAB_ADVERTISEMENT_FAIL,\n payload: error,\n});\n\nexport const deleteLabAdvertisement = labAdvertisement => ({\n type: DELETE_LAB_ADVERTISEMENT,\n payload: labAdvertisement,\n});\n\nexport const deleteLabAdvertisementSuccess = labAdvertisement => ({\n type: DELETE_LAB_ADVERTISEMENT_SUCCESS,\n payload: labAdvertisement,\n});\n\nexport const deleteLabAdvertisementFail = error => ({\n type: DELETE_LAB_ADVERTISEMENT_FAIL,\n payload: error,\n});\n","/* ADVERTISEMENT LAB REQUEST TO LABHAZIR */\n\nexport const GET_LAB_ADVERTISEMENT_REQUESTS = \"GET_LAB_ADVERTISEMENT_REQUESTS\";\nexport const GET_LAB_ADVERTISEMENT_REQUESTS_SUCCESS =\n \"GET_LAB_ADVERTISEMENT_REQUESTS_SUCCESS\";\nexport const GET_LAB_ADVERTISEMENT_REQUESTS_FAIL = \"GET_LAB_ADVERTISEMENT_REQUESTS_FAIL\";\n\nexport const GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED = \"GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED\";\nexport const GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED_SUCCESS =\n \"GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED_SUCCESS\";\nexport const GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED_FAIL = \"GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED_FAIL\";\n\n\nexport const UPDATE_LAB_ADVERTISEMENT_REQUEST = \"UPDATE_LAB_ADVERTISEMENT_REQUEST\";\nexport const UPDATE_LAB_ADVERTISEMENT_REQUEST_SUCCESS =\n \"UPDATE_LAB_ADVERTISEMENT_REQUEST_SUCCESS\";\nexport const UPDATE_LAB_ADVERTISEMENT_REQUEST_FAIL =\n \"UPDATE_LAB_ADVERTISEMENT_REQUEST_FAIL\";\n\n","import {\n GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED,\n GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED_FAIL,\n GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED_SUCCESS,\n GET_LAB_ADVERTISEMENT_REQUESTS,\n GET_LAB_ADVERTISEMENT_REQUESTS_FAIL,\n GET_LAB_ADVERTISEMENT_REQUESTS_SUCCESS,\n UPDATE_LAB_ADVERTISEMENT_REQUEST,\n UPDATE_LAB_ADVERTISEMENT_REQUEST_SUCCESS,\n UPDATE_LAB_ADVERTISEMENT_REQUEST_FAIL,\n} from \"./actionTypes\";\n\nexport const getLabAdvertisementRequestsAccepted = id => ({\n type: GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED,\n payload: id,\n});\n\nexport const getLabAdvertisementRequestsAcceptedSuccess = labAdvertisementRequests => ({\n type: GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED_SUCCESS,\n payload: labAdvertisementRequests,\n});\n\nexport const getLabAdvertisementRequestsAcceptedFail = error => ({\n type: GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED_FAIL,\n payload: error,\n});\n\nexport const getLabAdvertisementRequests = id => ({\n type: GET_LAB_ADVERTISEMENT_REQUESTS,\n payload: id,\n});\n\nexport const getLabAdvertisementRequestsSuccess = labAdvertisementRequests => ({\n type: GET_LAB_ADVERTISEMENT_REQUESTS_SUCCESS,\n payload: labAdvertisementRequests,\n});\n\nexport const getLabAdvertisementRequestsFail = error => ({\n type: GET_LAB_ADVERTISEMENT_REQUESTS_FAIL,\n payload: error,\n});\n\n\n\nexport const updateLabAdvertisementRequest = labAdvertisementRequest => ({\n type: UPDATE_LAB_ADVERTISEMENT_REQUEST,\n payload: labAdvertisementRequest,\n});\n\nexport const updateLabAdvertisementRequestSuccess = labAdvertisementRequest => ({\n type: UPDATE_LAB_ADVERTISEMENT_REQUEST_SUCCESS,\n payload: labAdvertisementRequest,\n});\n\nexport const updateLabAdvertisementRequestFail = error => ({\n type: UPDATE_LAB_ADVERTISEMENT_REQUEST_FAIL,\n payload: error,\n});\n\n","/* SAMPLE COLLECTORS */\nexport const GET_ADVERTISEMENT_PRICE_LISTS = \"GET_ADVERTISEMENT_PRICE_LISTS\";\nexport const GET_ADVERTISEMENT_PRICE_LISTS_SUCCESS =\n \"GET_ADVERTISEMENT_PRICE_LISTS_SUCCESS\";\nexport const GET_ADVERTISEMENT_PRICE_LISTS_FAIL = \"GET_ADVERTISEMENT_PRICE_LISTS_FAIL\";\n\nexport const ADD_NEW_ADVERTISEMENT_PRICE_LIST = \"ADD_NEW_ADVERTISEMENT_PRICE_LIST\";\nexport const ADD_ADVERTISEMENT_PRICE_LIST_SUCCESS =\n \"ADD_ADVERTISEMENT_PRICE_LIST_SUCCESS\";\nexport const ADD_ADVERTISEMENT_PRICE_LIST_FAIL = \"ADD_ADVERTISEMENT_PRICE_LIST_FAIL\";\n\nexport const UPDATE_ADVERTISEMENT_PRICE_LIST = \"UPDATE_ADVERTISEMENT_PRICE_LIST\";\nexport const UPDATE_ADVERTISEMENT_PRICE_LIST_SUCCESS =\n \"UPDATE_ADVERTISEMENT_PRICE_LIST_SUCCESS\";\nexport const UPDATE_ADVERTISEMENT_PRICE_LIST_FAIL =\n \"UPDATE_ADVERTISEMENT_PRICE_LIST_FAIL\";\n\nexport const DELETE_ADVERTISEMENT_PRICE_LIST = \"DELETE_ADVERTISEMENT_PRICE_LIST\";\nexport const DELETE_ADVERTISEMENT_PRICE_LIST_SUCCESS =\n \"DELETE_ADVERTISEMENT_PRICE_LIST_SUCCESS\";\nexport const DELETE_ADVERTISEMENT_PRICE_LIST_FAIL =\n \"DELETE_ADVERTISEMENT_PRICE_LIST_FAIL\";\n","import {\n GET_ADVERTISEMENT_PRICE_LISTS,\n GET_ADVERTISEMENT_PRICE_LISTS_FAIL,\n GET_ADVERTISEMENT_PRICE_LISTS_SUCCESS,\n ADD_NEW_ADVERTISEMENT_PRICE_LIST,\n ADD_ADVERTISEMENT_PRICE_LIST_SUCCESS,\n ADD_ADVERTISEMENT_PRICE_LIST_FAIL,\n UPDATE_ADVERTISEMENT_PRICE_LIST,\n UPDATE_ADVERTISEMENT_PRICE_LIST_SUCCESS,\n UPDATE_ADVERTISEMENT_PRICE_LIST_FAIL,\n DELETE_ADVERTISEMENT_PRICE_LIST,\n DELETE_ADVERTISEMENT_PRICE_LIST_SUCCESS,\n DELETE_ADVERTISEMENT_PRICE_LIST_FAIL,\n} from \"./actionTypes\";\n\nexport const getAdvertisementPriceLists = id=> ({\n type: GET_ADVERTISEMENT_PRICE_LISTS,\n payload: id,\n});\n\nexport const getAdvertisementPriceListsSuccess = advertisementPriceLists => ({\n type: GET_ADVERTISEMENT_PRICE_LISTS_SUCCESS,\n payload: advertisementPriceLists,\n});\n\nexport const getAdvertisementPriceListsFail = error => ({\n type: GET_ADVERTISEMENT_PRICE_LISTS_FAIL,\n payload: error,\n});\n\nexport const addNewAdvertisementPriceList = (advertisementPriceList, id) => ({\n type: ADD_NEW_ADVERTISEMENT_PRICE_LIST,\n payload: { advertisementPriceList, id },\n});\n\nexport const addAdvertisementPriceListSuccess = advertisementPriceList => ({\n type: ADD_ADVERTISEMENT_PRICE_LIST_SUCCESS,\n payload: advertisementPriceList,\n});\n\nexport const addAdvertisementPriceListFail = error => ({\n type: ADD_ADVERTISEMENT_PRICE_LIST_FAIL,\n payload: error,\n});\n\nexport const updateAdvertisementPriceList = advertisementPriceList => ({\n type: UPDATE_ADVERTISEMENT_PRICE_LIST,\n payload: advertisementPriceList,\n});\n\nexport const updateAdvertisementPriceListSuccess = advertisementPriceList => ({\n type: UPDATE_ADVERTISEMENT_PRICE_LIST_SUCCESS,\n payload: advertisementPriceList,\n});\n\nexport const updateAdvertisementPriceListFail = error => ({\n type: UPDATE_ADVERTISEMENT_PRICE_LIST_FAIL,\n payload: error,\n});\n\nexport const deleteAdvertisementPriceList = advertisementPriceList => ({\n type: DELETE_ADVERTISEMENT_PRICE_LIST,\n payload: advertisementPriceList,\n});\n\nexport const deleteAdvertisementPriceListSuccess = advertisementPriceList => ({\n type: DELETE_ADVERTISEMENT_PRICE_LIST_SUCCESS,\n payload: advertisementPriceList,\n});\n\nexport const deleteAdvertisementPriceListFail = error => ({\n type: DELETE_ADVERTISEMENT_PRICE_LIST_FAIL,\n payload: error,\n});\n","/* ADVERTISEMENT_LIVES */\nexport const GET_ADVERTISEMENT_LIVES = \"GET_ADVERTISEMENT_LIVES\";\nexport const GET_ADVERTISEMENT_LIVES_SUCCESS = \"GET_ADVERTISEMENT_LIVES_SUCCESS\";\nexport const GET_ADVERTISEMENT_LIVES_FAIL = \"GET_ADVERTISEMENT_LIVES_FAIL\";\n","import {\n GET_ADVERTISEMENT_LIVES,\n GET_ADVERTISEMENT_LIVES_SUCCESS,\n GET_ADVERTISEMENT_LIVES_FAIL,\n} from \"./actionTypes\";\n\nexport const getAdvertisementLives = id => ({\n type: GET_ADVERTISEMENT_LIVES,\n payload: id,\n});\n\nexport const getAdvertisementLivesSuccess = advertisementLives => ({\n type: GET_ADVERTISEMENT_LIVES_SUCCESS,\n payload: advertisementLives,\n});\n\nexport const getAdvertisementLivesFail = error => ({\n type: GET_ADVERTISEMENT_LIVES_FAIL,\n payload: error,\n});\n","/* SAMPLE COLLECTORS */\nexport const GET_REFERREL_FEES = \"GET_REFERREL_FEES\";\nexport const GET_REFERREL_FEES_SUCCESS =\n \"GET_REFERREL_FEES_SUCCESS\";\nexport const GET_REFERREL_FEES_FAIL = \"GET_REFERREL_FEES_FAIL\";\n\nexport const GET_PUT_REFERREL_FEES = \"GET_PUT_REFERREL_FEES\";\nexport const GET_PUT_REFERREL_FEES_SUCCESS =\n \"GET_PUT_REFERREL_FEES_SUCCESS\";\nexport const GET_PUT_REFERREL_FEES_FAIL = \"GET_PUT_REFERREL_FEES_FAIL\";\n\nexport const UPDATE_REFERREL_FEE = \"UPDATE_REFERREL_FEE\";\nexport const UPDATE_REFERREL_FEE_SUCCESS =\n \"UPDATE_REFERREL_FEE_SUCCESS\";\nexport const UPDATE_REFERREL_FEE_FAIL =\n \"UPDATE_REFERREL_FEE_FAIL\";\n\nexport const UPDATE_REFERREL_ALL_FEE = \"UPDATE_REFERREL_ALL_FEE\";\nexport const UPDATE_REFERREL_ALL_FEE_SUCCESS =\n \"UPDATE_REFERREL_ALL_FEE_SUCCESS\";\nexport const UPDATE_REFERREL_ALL_FEE_FAIL =\n \"UPDATE_REFERREL_ALL_FEE_FAIL\";\n","import {\n GET_REFERREL_FEES,\n GET_REFERREL_FEES_FAIL,\n GET_REFERREL_FEES_SUCCESS, \n GET_PUT_REFERREL_FEES,\n GET_PUT_REFERREL_FEES_FAIL,\n GET_PUT_REFERREL_FEES_SUCCESS, \n UPDATE_REFERREL_FEE,\n UPDATE_REFERREL_FEE_SUCCESS,\n UPDATE_REFERREL_FEE_FAIL,\n UPDATE_REFERREL_ALL_FEE,\n UPDATE_REFERREL_ALL_FEE_SUCCESS,\n UPDATE_REFERREL_ALL_FEE_FAIL,\n} from \"./actionTypes\";\nexport const getPutReferrelFeeLabs = (test_name) => ({\n type: GET_PUT_REFERREL_FEES,\n payload: {test_name},\n});\n\nexport const getPutReferrelFeeLabsSuccess = ReferrelFeeLabs => ({\n type: GET_PUT_REFERREL_FEES_SUCCESS,\n payload: ReferrelFeeLabs,\n});\n\nexport const getPutReferrelFeeLabsFail = error => ({\n type: GET_PUT_REFERREL_FEES_FAIL,\n payload: error,\n});\nexport const getReferrelFeeLabs = id => ({\n type: GET_REFERREL_FEES,\n payload: id,\n});\n\nexport const getReferrelFeeLabsSuccess = ReferrelFeeLabs => ({\n type: GET_REFERREL_FEES_SUCCESS,\n payload: ReferrelFeeLabs,\n});\n\nexport const getReferrelFeeLabsFail = error => ({\n type: GET_REFERREL_FEES_FAIL,\n payload: error,\n});\n\nexport const updateReferrelFeeLab = ReferrelFeeLab => ({\n type: UPDATE_REFERREL_FEE,\n payload: ReferrelFeeLab,\n});\n\nexport const updateReferrelFeeLabSuccess = ReferrelFeeLab => ({\n type: UPDATE_REFERREL_FEE_SUCCESS,\n payload: ReferrelFeeLab,\n});\n\nexport const updateReferrelFeeLabFail = error => ({\n type: UPDATE_REFERREL_FEE_FAIL,\n payload: error,\n});\n\nexport const updateReferrelAllFeeLab = ReferrelFeeLab => ({\n type: UPDATE_REFERREL_ALL_FEE,\n payload: ReferrelFeeLab,\n});\n\nexport const updateReferrelAllFeeLabSuccess = ReferrelFeeLab => ({\n type: UPDATE_REFERREL_ALL_FEE_SUCCESS,\n payload: ReferrelFeeLab,\n});\n\nexport const updateReferrelAllFeeLabFail = error => ({\n type: UPDATE_REFERREL_ALL_FEE_FAIL,\n payload: error,\n});\n","/* SAMPLE COLLECTORS */\nexport const GET_DISCOUNT_LABHAZIRS = \"GET_DISCOUNT_LABHAZIRS\";\nexport const GET_DISCOUNT_LABHAZIRS_SUCCESS =\n \"GET_DISCOUNT_LABHAZIRS_SUCCESS\";\nexport const GET_DISCOUNT_LABHAZIRS_FAIL = \"GET_DISCOUNT_LABHAZIRS_FAIL\";\n\nexport const UPDATE_DISCOUNT_LABHAZIR = \"UPDATE_DISCOUNT_LABHAZIR\";\nexport const UPDATE_DISCOUNT_LABHAZIR_SUCCESS =\n \"UPDATE_DISCOUNT_LABHAZIR_SUCCESS\";\nexport const UPDATE_DISCOUNT_LABHAZIR_FAIL =\n \"UPDATE_DISCOUNT_LABHAZIR_FAIL\";\n\nexport const UPDATE_DISCOUNT_ALL_LABHAZIR = \"UPDATE_DISCOUNT_ALL_LABHAZIR\";\nexport const UPDATE_DISCOUNT_ALL_LABHAZIR_SUCCESS =\n \"UPDATE_DISCOUNT_ALL_LABHAZIR_SUCCESS\";\nexport const UPDATE_DISCOUNT_ALL_LABHAZIR_FAIL =\n \"UPDATE_DISCOUNT_ALL_LABHAZIR_FAIL\";\n\n","import {\n GET_DISCOUNT_LABHAZIRS,\n GET_DISCOUNT_LABHAZIRS_FAIL,\n GET_DISCOUNT_LABHAZIRS_SUCCESS,\n UPDATE_DISCOUNT_LABHAZIR,\n UPDATE_DISCOUNT_LABHAZIR_SUCCESS,\n UPDATE_DISCOUNT_LABHAZIR_FAIL,\n UPDATE_DISCOUNT_ALL_LABHAZIR,\n UPDATE_DISCOUNT_ALL_LABHAZIR_SUCCESS,\n UPDATE_DISCOUNT_ALL_LABHAZIR_FAIL,\n} from \"./actionTypes\";\n\nexport const getDiscountLabHazirs = id => ({\n type: GET_DISCOUNT_LABHAZIRS,\n payload: id,\n});\nexport const getDiscountLabHazirsSuccess = discountLabHazirs => ({\n type: GET_DISCOUNT_LABHAZIRS_SUCCESS,\n payload: discountLabHazirs,\n});\n\nexport const getDiscountLabHazirsFail = error => ({\n type: GET_DISCOUNT_LABHAZIRS_FAIL,\n payload: error,\n});\n\nexport const updateDiscountLabHazir = discountLabHazir => ({\n type: UPDATE_DISCOUNT_LABHAZIR,\n payload: discountLabHazir,\n});\n\nexport const updateDiscountLabHazirSuccess = discountLabHazir => ({\n type: UPDATE_DISCOUNT_LABHAZIR_SUCCESS,\n payload: discountLabHazir,\n});\n\nexport const updateDiscountLabHazirFail = error => ({\n type: UPDATE_DISCOUNT_LABHAZIR_FAIL,\n payload: error,\n});\n\nexport const updateDiscountAllLabHazir = discountAllLabHazir => ({\n type: UPDATE_DISCOUNT_ALL_LABHAZIR,\n payload: discountAllLabHazir,\n});\n\nexport const updateDiscountAllLabHazirSuccess = discountAllLabHazir => ({\n type: UPDATE_DISCOUNT_ALL_LABHAZIR_SUCCESS,\n payload: discountAllLabHazir,\n});\n\nexport const updateDiscountAllLabHazirFail = error => ({\n type: UPDATE_DISCOUNT_ALL_LABHAZIR_FAIL,\n payload: error,\n});\n","/* PATIENT TEST APPOINTMENTtS */\n\nexport const GET_LABS_LIST = \"GET_LABS_LIST\";\nexport const GET_LABS_LIST_SUCCESS = \"GET_LABS_LIST_SUCCESS\";\nexport const GET_LABS_LIST_FAIL = \"GET_LABS_LIST_FAIL\";\n\nexport const GET_LABS_AUDIT_LIST = \"GET_LABS_AUDIT_LIST\";\nexport const GET_LABS_AUDIT_LIST_SUCCESS = \"GET_LABS_AUDIT_LIST_SUCCESS\";\nexport const GET_LABS_AUDIT_LIST_FAIL = \"GET_LABS_AUDIT_LIST_FAIL\";\n\nexport const GET_LABS_ALL_AUDIT_LIST = \"GET_LABS_ALL_AUDIT_LIST\";\nexport const GET_LABS_ALL_AUDIT_LIST_SUCCESS = \"GET_LABS_ALL_AUDIT_LIST_SUCCESS\";\nexport const GET_LABS_ALL_AUDIT_LIST_FAIL = \"GET_LABS_ALL_AUDIT_LIST_FAIL\";\n/////////////\nexport const GET_LC_LIST = \"GET_LC_LIST\";\nexport const GET_LC_LIST_SUCCESS = \"GET_LC_LIST_SUCCESS\";\nexport const GET_LC_LIST_FAIL = \"GET_LC_LIST_FAIL\";\n/////////////////////\nexport const GET_DONORS_LIST = \"GET_DONORS_LIST\";\nexport const GET_DONORS_LIST_SUCCESS = \"GET_DONORS_LIST_SUCCESS\";\nexport const GET_DONORS_LIST_FAIL = \"GET_DONORS_LIST_FAIL\";\n\nexport const GET_CORPORATE_LIST = \"GET_CORPORATE_LIST\";\nexport const GET_CORPORATE_LIST_SUCCESS = \"GET_CORPORATE_LIST_SUCCESS\";\nexport const GET_CORPORATE_LIST_FAIL = \"GET_CORPORATE_LIST_FAIL\";\n\nexport const GET_DONORSA = \"GET_DONORSA\";\nexport const GET_DONORSA_SUCCESS = \"GET_DONORSA_SUCCESS\";\nexport const GET_DONORSA_FAIL = \"GET_DONORSA_FAIL\";\n\n","import {\n GET_LABS_LIST,\n GET_LABS_LIST_SUCCESS,\n GET_LABS_LIST_FAIL,\n GET_DONORS_LIST,\n GET_DONORS_LIST_SUCCESS,\n GET_DONORS_LIST_FAIL,\n GET_CORPORATE_LIST,\n GET_CORPORATE_LIST_SUCCESS,\n GET_CORPORATE_LIST_FAIL,\n GET_DONORSA,\n GET_DONORSA_SUCCESS,\n GET_DONORSA_FAIL,\n GET_LC_LIST,\n GET_LC_LIST_SUCCESS,\n GET_LC_LIST_FAIL,\n GET_LABS_AUDIT_LIST,\n GET_LABS_AUDIT_LIST_SUCCESS,\n GET_LABS_AUDIT_LIST_FAIL,\n GET_LABS_ALL_AUDIT_LIST,\n GET_LABS_ALL_AUDIT_LIST_SUCCESS,\n GET_LABS_ALL_AUDIT_LIST_FAIL,\n} from \"./actionTypes\";\n\nexport const getLabsList = () => ({\n type: GET_LABS_LIST,\n payload: {},\n});\n\nexport const getLabsListSuccess =\n labs => ({\n type: GET_LABS_LIST_SUCCESS,\n payload: labs,\n });\n\nexport const getLabsListFail = error => ({\n type: GET_LABS_LIST_FAIL,\n payload: error,\n});\n\nexport const getLabsAuditList = () => ({\n type: GET_LABS_AUDIT_LIST,\n payload: {},\n});\n\nexport const getLabsAuditListSuccess =\n labs => ({\n type: GET_LABS_AUDIT_LIST_SUCCESS,\n payload: labs,\n });\n\nexport const getLabsAuditListFail = error => ({\n type: GET_LABS_AUDIT_LIST_FAIL,\n payload: error,\n});\n\nexport const getLabsAllAuditList = id => ({\n type: GET_LABS_ALL_AUDIT_LIST,\n payload: id,\n});\n/// get single lab audits list\nexport const getLabsAllAuditListSuccess = labaudit => ({\n type: GET_LABS_ALL_AUDIT_LIST_SUCCESS,\n payload: labaudit,\n});\n\nexport const getLabsAllAuditListFail = error => ({\n type: GET_LABS_ALL_AUDIT_LIST_FAIL,\n payload: error,\n});\nexport const getDonorsList = () => ({\n type: GET_DONORS_LIST,\n payload: {},\n});\n\nexport const getDonorsListSuccess =\n donors => ({\n type: GET_DONORS_LIST_SUCCESS,\n payload: donors,\n });\n\nexport const getDonorsListFail = error => ({\n type: GET_DONORS_LIST_FAIL,\n payload: error,\n});\n//////////////////////////////\nexport const getCorporateList = () => ({\n type: GET_CORPORATE_LIST,\n payload: {},\n});\n\nexport const getCorporateListSuccess =\n corporate => ({\n type: GET_CORPORATE_LIST_SUCCESS,\n payload: corporate,\n });\n\nexport const getCorporateListFail = error => ({\n type: GET_CORPORATE_LIST_FAIL,\n payload: error,\n});\n/////////////////\nexport const getLcList = () => ({\n type: GET_LC_LIST,\n payload: {},\n});\n\nexport const getLcListSuccess =\n donors => ({\n type: GET_LC_LIST_SUCCESS,\n payload: donors,\n });\n\nexport const getLcListFail = error => ({\n type: GET_LC_LIST_FAIL,\n payload: error,\n});\n////////////////////\nexport const getDonorsA = () => ({\n type: GET_DONORSA,\n});\n\nexport const getDonorsASuccess = donors => ({\n type: GET_DONORSA_SUCCESS,\n payload: donors,\n});\n\nexport const getDonorsAFail = error => ({\n type: GET_DONORSA_FAIL,\n payload: error,\n});","/* PATIENT TEST APPOINTMENTtS */\n\nexport const GET_LABS_LIST =\n \"GET_LABS_LIST\";\nexport const GET_LABS_LIST_SUCCESS =\n \"GET_LABS_LIST_SUCCESS\";\nexport const GET_LABS_LIST_FAIL =\n \"GET_LABS_LIST_FAIL\";\n export const GET_DONORS_LIST =\n \"GET_DONORS_LIST\";\nexport const GET_DONORS_LIST_SUCCESS =\n \"GET_DONORS_LIST_SUCCESS\";\nexport const GET_DONORS_LIST_FAIL =\n \"GET_DONORS_LIST_FAIL\";\n export const GET_DONORSA = \"GET_DONORSA\";\n export const GET_DONORSA_SUCCESS = \"GET_DONORSA_SUCCESS\";\n export const GET_DONORSA_FAIL = \"GET_DONORSA_FAIL\";\n\n\n ","/* SAMPLE COLLECTORS */\nexport const GET_DISCOUNT_LABHAZIRTOLABS = \"GET_DISCOUNT_LABHAZIR_TO_LABS\";\nexport const GET_DISCOUNT_LABHAZIRTOLABS_SUCCESS =\n \"GET_DISCOUNT_LABHAZIRTOLABS_SUCCESS\";\nexport const GET_DISCOUNT_LABHAZIRTOLABS_FAIL = \"GET_DISCOUNT_LABHAZIRTOLABS_FAIL\";\n\nexport const UPDATE_DISCOUNT_LABHAZIRTOLAB = \"UPDATE_DISCOUNT_LABHAZIRTOLAB\";\nexport const UPDATE_DISCOUNT_LABHAZIRTOLAB_SUCCESS =\n \"UPDATE_DISCOUNT_LABHAZIRTOLAB_SUCCESS\";\nexport const UPDATE_DISCOUNT_LABHAZIRTOLAB_FAIL =\n \"UPDATE_DISCOUNT_LABHAZIRTOLAB_FAIL\";\n\nexport const UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB = \"UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB\";\nexport const UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB_SUCCESS =\n \"UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB_SUCCESS\";\nexport const UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB_FAIL =\n \"UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB_FAIL\";\n","import {\n GET_DISCOUNT_LABHAZIRTOLABS,\n GET_DISCOUNT_LABHAZIRTOLABS_FAIL,\n GET_DISCOUNT_LABHAZIRTOLABS_SUCCESS, \n UPDATE_DISCOUNT_LABHAZIRTOLAB,\n UPDATE_DISCOUNT_LABHAZIRTOLAB_SUCCESS,\n UPDATE_DISCOUNT_LABHAZIRTOLAB_FAIL,\n UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB,\n UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB_SUCCESS,\n UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB_FAIL,\n} from \"./actionTypes\";\n\nexport const getDiscountLabHazirToLabs = id => ({\n type: GET_DISCOUNT_LABHAZIRTOLABS,\n payload: id,\n});\n\nexport const getDiscountLabHazirToLabsSuccess = discountLabHazirToLabs => ({\n type: GET_DISCOUNT_LABHAZIRTOLABS_SUCCESS,\n payload: discountLabHazirToLabs,\n});\n\nexport const getDiscountLabHazirToLabsFail = error => ({\n type: GET_DISCOUNT_LABHAZIRTOLABS_FAIL,\n payload: error,\n});\n\nexport const updateDiscountLabHazirToLab = discountLabHazirToLab => ({\n type: UPDATE_DISCOUNT_LABHAZIRTOLAB,\n payload: discountLabHazirToLab,\n});\n\nexport const updateDiscountLabHazirToLabSuccess = discountLabHazirToLab => ({\n type: UPDATE_DISCOUNT_LABHAZIRTOLAB_SUCCESS,\n payload: discountLabHazirToLab,\n});\n\nexport const updateDiscountLabHazirToLabFail = error => ({\n type: UPDATE_DISCOUNT_LABHAZIRTOLAB_FAIL,\n payload: error,\n});\n\nexport const updateDiscountAllLabHazirToLab = discountAllLabHazir => ({\n type: UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB,\n payload: discountAllLabHazir,\n});\n\nexport const updateDiscountAllLabHazirToLabSuccess = discountAllLabHazir => ({\n type: UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB_SUCCESS,\n payload: discountAllLabHazir,\n});\n\nexport const updateDiscountAllLabHazirToLabFail = error => ({\n type: UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB_FAIL,\n payload: error,\n});\n","/* PATIENT TEST APPOINTMENTtS */\n\nexport const GET_DISCOUNT_LAB =\n \"GET_DISCOUNT_LAB\";\nexport const GET_DISCOUNT_LAB_SUCCESS =\n \"GET_DISCOUNT_LAB_SUCCESS\";\nexport const GET_DISCOUNT_LAB_FAIL =\n \"GET_DISCOUNT_LAB_FAIL\";\n\n \nexport const UPDATE_DISCOUNT_LAB = \"UPDATE_DISCOUNT_LAB\";\nexport const UPDATE_DISCOUNT_LAB_SUCCESS =\n \"UPDATE_DISCOUNT_LAB_SUCCESS\";\nexport const UPDATE_DISCOUNT_LAB_FAIL =\n \"UPDATE_DISCOUNT_LAB_FAIL\";\n\n export const UPDATE_DISCOUNT_ALL_LAB = \"UPDATE_DISCOUNT_ALL_LAB\";\nexport const UPDATE_DISCOUNT_ALL_LAB_SUCCESS =\n \"UPDATE_DISCOUNT_ALL_LAB_SUCCESS\";\nexport const UPDATE_DISCOUNT_ALL_LAB_FAIL =\n \"UPDATE_DISCOUNT_ALL_LAB_FAIL\";\n","import {\n GET_DISCOUNT_LAB,\n GET_DISCOUNT_LAB_SUCCESS,\n GET_DISCOUNT_LAB_FAIL,\n UPDATE_DISCOUNT_LAB,\n UPDATE_DISCOUNT_LAB_SUCCESS,\n UPDATE_DISCOUNT_LAB_FAIL,\n UPDATE_DISCOUNT_ALL_LAB,\n UPDATE_DISCOUNT_ALL_LAB_SUCCESS,\n UPDATE_DISCOUNT_ALL_LAB_FAIL,\n} from \"./actionTypes\";\n\nexport const getDiscountLab = id => ({\n type: GET_DISCOUNT_LAB,\n payload: id,\n});\n\nexport const getDiscountLabSuccess =\n discountlab => ({\n type: GET_DISCOUNT_LAB_SUCCESS,\n payload: discountlab,\n });\n\nexport const getDiscountLabFail = error => ({\n type: GET_DISCOUNT_LAB_FAIL,\n payload: error,\n});\nexport const updateDiscountLab = discountLabs =>\n({\n type: UPDATE_DISCOUNT_LAB,\n payload: discountLabs,\n});\n\nexport const updateDiscountLabSuccess = discountLabs => ({\n type: UPDATE_DISCOUNT_LAB_SUCCESS,\n payload: discountLabs,\n});\n\nexport const updateDiscountLabFail = error => ({\n type: UPDATE_DISCOUNT_LAB_FAIL,\n payload: error,\n});\nexport const updateDiscountAllLab = discountAllLab => \n({\n type: UPDATE_DISCOUNT_ALL_LAB,\n payload: discountAllLab,\n});\n\nexport const updateDiscountAllLabSuccess = discountAllLab => ({\n type: UPDATE_DISCOUNT_ALL_LAB_SUCCESS,\n payload: discountAllLab,\n});\n\nexport const updateDiscountAllLabFail = error => ({\n type: UPDATE_DISCOUNT_ALL_LAB_FAIL,\n payload: error,\n});","/* PATIENT TEST APPOINTMENTtS */\n\nexport const GET_TERRITORIES_LIST =\n \"GET_TERRITORIES_LIST\";\nexport const GET_TERRITORIES_LIST_SUCCESS =\n \"GET_TERRITORIES_LIST_SUCCESS\";\nexport const GET_TERRITORIES_LIST_FAIL =\n \"GET_TERRITORIES_LIST_FAIL\";\n","import {\n GET_TERRITORIES_LIST,\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n} from \"./actionTypes\";\n\nexport const getTerritoriesList = () => ({\n type: GET_TERRITORIES_LIST,\n payload: {},\n});\n\nexport const getTerritoriesListSuccess = territoriesList => ({\n type: GET_TERRITORIES_LIST_SUCCESS,\n payload: territoriesList,\n });\n\nexport const getTerritoriesListFail = error => ({\n type: GET_TERRITORIES_LIST_FAIL,\n payload: error,\n});\n","/* PATIENT TEST APPOINTMENTtS */\n\nexport const GET_LAB_NAMES_LIST =\n \"GET_LAB_NAMES_LIST\";\nexport const GET_LAB_NAMES_LIST_SUCCESS =\n \"GET_LAB_NAMES_LIST_SUCCESS\";\nexport const GET_LAB_NAMES_LIST_FAIL =\n \"GET_LAB_NAMES_LIST_FAIL\";\n","import {\n GET_LAB_NAMES_LIST,\n GET_LAB_NAMES_LIST_SUCCESS,\n GET_LAB_NAMES_LIST_FAIL,\n} from \"./actionTypes\";\n\nexport const getLabNamesList = () => ({\n type: GET_LAB_NAMES_LIST,\n payload: {},\n});\n\nexport const getLabNamesListSuccess = labNamesList => ({\n type: GET_LAB_NAMES_LIST_SUCCESS,\n payload: labNamesList,\n });\n\nexport const getLabNamesListFail = error => ({\n type: GET_LAB_NAMES_LIST_FAIL,\n payload: error,\n});\n","/* PATIENT TEST APPOINTMENTtS */\n\nexport const GET_ONLY_MEDICAL_LIST =\n \"GET_ONLY_MEDICAL_LIST\";\nexport const GET_ONLY_MEDICAL_LIST_SUCCESS =\n \"GET_ONLY_MEDICAL_LIST_SUCCESS\";\nexport const GET_ONLY_MEDICAL_LIST_FAIL =\n \"GET_ONLY_MEDICAL_LIST_FAIL\";\n\n /* PATIENT TEST APPOINTMENTtS */\n\nexport const GET_TERRITORIES_LIST =\n\"GET_TERRITORIES_LIST\";\nexport const GET_TERRITORIES_LIST_SUCCESS =\n\"GET_TERRITORIES_LIST_SUCCESS\";\nexport const GET_TERRITORIES_LIST_FAIL =\n\"GET_TERRITORIES_LIST_FAIL\";\n","import {\n GET_ONLY_MEDICAL_LIST,\n GET_ONLY_MEDICAL_LIST_SUCCESS,\n GET_ONLY_MEDICAL_LIST_FAIL,\n GET_TERRITORIES_LIST,\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n} from \"./actionTypes\";\n\nexport const onlyMedicalTestList = () => ({\n type: GET_ONLY_MEDICAL_LIST,\n payload: {},\n});\n\nexport const onlyMedicalTestListSuccess = onlyMedicalTestList => ({\n type: GET_ONLY_MEDICAL_LIST_SUCCESS,\n payload: onlyMedicalTestList,\n });\n\nexport const onlyMedicalTestListFail = error => ({\n type: GET_ONLY_MEDICAL_LIST_FAIL,\n payload: error,\n});\nexport const getTerritoriesList = () => ({\n type: GET_TERRITORIES_LIST,\n payload: {},\n});\n\nexport const getTerritoriesListSuccess = territoriesList => ({\n type: GET_TERRITORIES_LIST_SUCCESS,\n payload: territoriesList,\n });\n\nexport const getTerritoriesListFail = error => ({\n type: GET_TERRITORIES_LIST_FAIL,\n payload: error,\n});","/* PATIENT TEST APPOINTMENTtS */\n\nexport const GET_CSR_CENTRAL_TERRITORY_LIST =\n \"GET_CSR_CENTRAL_TERRITORY_LIST\";\nexport const GET_CSR_CENTRAL_TERRITORY_LIST_SUCCESS =\n \"GET_CSR_CENTRAL_TERRITORY_LIST_SUCCESS\";\nexport const GET_CSR_CENTRAL_TERRITORY_LIST_FAIL =\n \"GET_CSR_CENTRAL_TERRITORY_LIST_FAIL\";\n\n// CSR SOUTH\nexport const GET_CSR_SOUTH_TERRITORY_LIST =\n \"GET_CSR_SOUTH_TERRITORY_LIST\";\nexport const GET_CSR_SOUTH_TERRITORY_LIST_SUCCESS =\n \"GET_CSR_SOUTH_TERRITORY_LIST_SUCCESS\";\nexport const GET_CSR_SOUTH_TERRITORY_LIST_FAIL =\n \"GET_CSR_SOUTH_TERRITORY_LIST_FAIL\";\n\n// CSR North\nexport const GET_CSR_NORTH_TERRITORY_LIST =\n \"GET_CSR_NORTH_TERRITORY_LIST\";\nexport const GET_CSR_NORTH_TERRITORY_LIST_SUCCESS =\n \"GET_CSR_NORTH_TERRITORY_LIST_SUCCESS\";\nexport const GET_CSR_NORTH_TERRITORY_LIST_FAIL =\n \"GET_CSR_NORTH_TERRITORY_LIST_FAIL\";\n","import {\n GET_CSR_CENTRAL_TERRITORY_LIST,\n GET_CSR_CENTRAL_TERRITORY_LIST_SUCCESS,\n GET_CSR_CENTRAL_TERRITORY_LIST_FAIL,\n GET_CSR_SOUTH_TERRITORY_LIST,\n GET_CSR_SOUTH_TERRITORY_LIST_SUCCESS,\n GET_CSR_SOUTH_TERRITORY_LIST_FAIL,\n GET_CSR_NORTH_TERRITORY_LIST,\n GET_CSR_NORTH_TERRITORY_LIST_SUCCESS,\n GET_CSR_NORTH_TERRITORY_LIST_FAIL,\n} from \"./actionTypes\";\n\n// CSR central territory\nexport const getCsrCentralList = () => ({\n type: GET_CSR_CENTRAL_TERRITORY_LIST,\n payload: {},\n});\n\nexport const getCsrCentralListSuccess =\ncsrCentral => ({\n type: GET_CSR_CENTRAL_TERRITORY_LIST_SUCCESS,\n payload: csrCentral,\n });\n\nexport const getCsrCentralListFail = error => ({\n type: GET_CSR_CENTRAL_TERRITORY_LIST_FAIL,\n payload: error,\n});\n// CSR South territory\nexport const getCsrSouthList = () => ({\n type: GET_CSR_SOUTH_TERRITORY_LIST,\n payload: {},\n});\n\nexport const getCsrSouthListSuccess =\n csrSouth => ({\n type: GET_CSR_SOUTH_TERRITORY_LIST_SUCCESS,\n payload: csrSouth,\n });\n\nexport const getCsrSouthListFail = error => ({\n type: GET_CSR_SOUTH_TERRITORY_LIST_FAIL,\n payload: error,\n});\n// CSR North territory\nexport const getCsrNorthList = () => ({\n type: GET_CSR_NORTH_TERRITORY_LIST,\n payload: {},\n});\n\nexport const getCsrNorthListSuccess =\n csrNorth => ({\n type: GET_CSR_NORTH_TERRITORY_LIST_SUCCESS,\n payload: csrNorth,\n });\n\nexport const getCsrNorthListFail = error => ({\n type: GET_CSR_NORTH_TERRITORY_LIST_FAIL,\n payload: error,\n});","/* PATIENT TEST APPOINTMENTtS */\n\nexport const GET_AUDITOR_CENTRAL_TERRITORY_LIST =\n \"GET_AUDITOR_CENTRAL_TERRITORY_LIST\";\nexport const GET_AUDITOR_CENTRAL_TERRITORY_LIST_SUCCESS =\n \"GET_AUDITOR_CENTRAL_TERRITORY_LIST_SUCCESS\";\nexport const GET_AUDITOR_CENTRAL_TERRITORY_LIST_FAIL =\n \"GET_AUDITOR_CENTRAL_TERRITORY_LIST_FAIL\";\n\n// AUDITOR SOUTH\nexport const GET_AUDITOR_SOUTH_TERRITORY_LIST =\n \"GET_AUDITOR_SOUTH_TERRITORY_LIST\";\nexport const GET_AUDITOR_SOUTH_TERRITORY_LIST_SUCCESS =\n \"GET_AUDITOR_SOUTH_TERRITORY_LIST_SUCCESS\";\nexport const GET_AUDITOR_SOUTH_TERRITORY_LIST_FAIL =\n \"GET_AUDITOR_SOUTH_TERRITORY_LIST_FAIL\";\n\n// AUDITOR North\nexport const GET_AUDITOR_NORTH_TERRITORY_LIST =\n \"GET_AUDITOR_NORTH_TERRITORY_LIST\";\nexport const GET_AUDITOR_NORTH_TERRITORY_LIST_SUCCESS =\n \"GET_AUDITOR_NORTH_TERRITORY_LIST_SUCCESS\";\nexport const GET_AUDITOR_NORTH_TERRITORY_LIST_FAIL =\n \"GET_AUDITOR_NORTH_TERRITORY_LIST_FAIL\";\n","import {\n GET_AUDITOR_CENTRAL_TERRITORY_LIST,\n GET_AUDITOR_CENTRAL_TERRITORY_LIST_SUCCESS,\n GET_AUDITOR_CENTRAL_TERRITORY_LIST_FAIL,\n GET_AUDITOR_SOUTH_TERRITORY_LIST,\n GET_AUDITOR_SOUTH_TERRITORY_LIST_SUCCESS,\n GET_AUDITOR_SOUTH_TERRITORY_LIST_FAIL,\n GET_AUDITOR_NORTH_TERRITORY_LIST,\n GET_AUDITOR_NORTH_TERRITORY_LIST_SUCCESS,\n GET_AUDITOR_NORTH_TERRITORY_LIST_FAIL,\n} from \"./actionTypes\";\n\n// AUDITOR central territory\nexport const getAuditorCentralList = () => ({\n type: GET_AUDITOR_CENTRAL_TERRITORY_LIST,\n payload: {},\n});\n\nexport const getAuditorCentralListSuccess =\nauditorCentral => ({\n type: GET_AUDITOR_CENTRAL_TERRITORY_LIST_SUCCESS,\n payload: auditorCentral,\n });\n\nexport const getAuditorCentralListFail = error => ({\n type: GET_AUDITOR_CENTRAL_TERRITORY_LIST_FAIL,\n payload: error,\n});\n// AUDITOR South territory\nexport const getAuditorSouthList = () => ({\n type: GET_AUDITOR_SOUTH_TERRITORY_LIST,\n payload: {},\n});\n\nexport const getAuditorSouthListSuccess =\n auditorSouth => ({\n type: GET_AUDITOR_SOUTH_TERRITORY_LIST_SUCCESS,\n payload: auditorSouth,\n });\n\nexport const getAuditorSouthListFail = error => ({\n type: GET_AUDITOR_SOUTH_TERRITORY_LIST_FAIL,\n payload: error,\n});\n// AUDITOR North territory\nexport const getAuditorNorthList = () => ({\n type: GET_AUDITOR_NORTH_TERRITORY_LIST,\n payload: {},\n});\n\nexport const getAuditorNorthListSuccess =\n auditorNorth => ({\n type: GET_AUDITOR_NORTH_TERRITORY_LIST_SUCCESS,\n payload: auditorNorth,\n });\n\nexport const getAuditorNorthListFail = error => ({\n type: GET_AUDITOR_NORTH_TERRITORY_LIST_FAIL,\n payload: error,\n});","/* PATIENT TEST APPOINTMENTtS */\n\nexport const GET_LABS_LIST_PENDING_FEE =\n \"GET_LABS_LIST_PENDING_FEE\";\nexport const GET_LABS_LIST_PENDING_FEE_SUCCESS =\n \"GET_LABS_LIST_PENDING_FEE_SUCCESS\";\nexport const GET_LABS_LIST_PENDING_FEE_FAIL =\n \"GET_LABS_LIST_PENDING_FEE_FAIL\";\n\nexport const GET_LABS_LIST_APPROVED_FEE =\n \"GET_LABS_LIST_APPROVED_FEE\";\nexport const GET_LABS_LIST_APPROVED_FEE_SUCCESS =\n \"GET_LABS_LIST_APPROVED_FEE_SUCCESS\";\nexport const GET_LABS_LIST_APPROVED_FEE_FAIL =\n \"GET_LABS_LIST_APPROVED_FEE_FAIL\";","/* SAMPLE COLLECTORS */\nexport const GET_SHARED_PERCENTAGE_PENDING_FEE = \"GET_SHARED_PERCENTAGE_PENDING_FEE\";\nexport const GET_SHARED_PERCENTAGE_PENDING_FEE_SUCCESS =\n \"GET_SHARED_PERCENTAGE_PENDING_FEE_SUCCESS\";\nexport const GET_SHARED_PERCENTAGE_PENDING_FEE_FAIL = \"GET_SHARED_PERCENTAGE_PENDING_FEE_FAIL\";\n\nexport const GET_SHARED_PERCENTAGE_APPROVED_FEE = \"GET_SHARED_PERCENTAGE_APPROVED_FEE\";\nexport const GET_SHARED_PERCENTAGE_APPROVED_FEE_SUCCESS =\n \"GET_SHARED_PERCENTAGE_APPROVED_FEE_SUCCESS\";\nexport const GET_SHARED_PERCENTAGE_APPROVED_FEE_FAIL = \"GET_SHARED_PERCENTAGE_APPROVED_FEE_FAIL\";\n\nexport const UPDATE_SHARED_PERCENTAGE_PENDING_FEE = \"UPDATE_SHARED_PERCENTAGE_PENDING_FEE\";\nexport const UPDATE_SHARED_PERCENTAGE_PENDING_FEE_SUCCESS =\n \"UPDATE_SHARED_PERCENTAGE_PENDING_FEE_SUCCESS\";\nexport const UPDATE_SHARED_PERCENTAGE_PENDING_FEE_FAIL =\n \"UPDATE_SHARED_PERCENTAGE_PENDING_FEE_FAIL\";\n\nexport const UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE = \"UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE\";\nexport const UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE_SUCCESS =\n \"UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE_SUCCESS\";\nexport const UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE_FAIL =\n \"UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE_FAIL\";\n","import {\n GET_SHARED_PERCENTAGE_PENDING_FEE,\n GET_SHARED_PERCENTAGE_PENDING_FEE_FAIL,\n GET_SHARED_PERCENTAGE_PENDING_FEE_SUCCESS, \n GET_SHARED_PERCENTAGE_APPROVED_FEE,\n GET_SHARED_PERCENTAGE_APPROVED_FEE_FAIL,\n GET_SHARED_PERCENTAGE_APPROVED_FEE_SUCCESS,\n UPDATE_SHARED_PERCENTAGE_PENDING_FEE,\n UPDATE_SHARED_PERCENTAGE_PENDING_FEE_SUCCESS,\n UPDATE_SHARED_PERCENTAGE_PENDING_FEE_FAIL,\n UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE,\n UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE_SUCCESS,\n UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE_FAIL,\n} from \"./actionTypes\";\n\nexport const getSharedPercentageApprovedFeeTests = id => ({\n type: GET_SHARED_PERCENTAGE_APPROVED_FEE,\n payload: id,\n});\n\nexport const getSharedPercentageApprovedFeeTestsSuccess = sharedPercentageApprovedFeeTest => ({\n type: GET_SHARED_PERCENTAGE_APPROVED_FEE_SUCCESS,\n payload: sharedPercentageApprovedFeeTest,\n});\n\nexport const getSharedPercentageApprovedFeeTestsFail = error => ({\n type: GET_SHARED_PERCENTAGE_APPROVED_FEE_FAIL,\n payload: error,\n});\nexport const getSharedPercentagePendingFeeTests = id => ({\n type: GET_SHARED_PERCENTAGE_PENDING_FEE,\n payload: id,\n});\n\nexport const getSharedPercentagePendingFeeTestsSuccess = sharedPercentagePendingFeeTest => ({\n type: GET_SHARED_PERCENTAGE_PENDING_FEE_SUCCESS,\n payload: sharedPercentagePendingFeeTest,\n});\n\nexport const getSharedPercentagePendingFeeTestsFail = error => ({\n type: GET_SHARED_PERCENTAGE_PENDING_FEE_FAIL,\n payload: error,\n});\n\nexport const updateSharedPercentagePendingFeeTest = sharedPercentagePendingFeeTest => ({\n type: UPDATE_SHARED_PERCENTAGE_PENDING_FEE,\n payload: sharedPercentagePendingFeeTest,\n});\n\nexport const updateSharedPercentagePendingFeeTestSuccess = sharedPercentagePendingFeeTest => ({\n type: UPDATE_SHARED_PERCENTAGE_PENDING_FEE_SUCCESS,\n payload: sharedPercentagePendingFeeTest,\n});\n\nexport const updateSharedPercentagePendingFeeTestFail = error => ({\n type: UPDATE_SHARED_PERCENTAGE_PENDING_FEE_FAIL,\n payload: error,\n});\n\nexport const updateSharedPercentageAllPendingFeeTest = sharedPercentageAllPendingFeeTest => ({\n type: UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE,\n payload: sharedPercentageAllPendingFeeTest,\n});\n\nexport const updateSharedPercentageAllPendingFeeTestSuccess = sharedPercentageAllPendingFeeTest => ({\n type: UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE_SUCCESS,\n payload: sharedPercentageAllPendingFeeTest,\n});\n\nexport const updateSharedPercentageAllPendingFeeTestFail = error => ({\n type: UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE_FAIL,\n payload: error,\n});\n","/* SAMPLE COLLECTORS */\nexport const GET_FEEDBACKS = \"GET_FEEDBACKS\";\nexport const GET_FEEDBACKS_SUCCESS =\n \"GET_FEEDBACKS_SUCCESS\";\nexport const GET_FEEDBACKS_FAIL = \"GET_FEEDBACKS_FAIL\";\n\n\n/* LAB PROFILE */\nexport const GET_LAB_PROFILE = \"GET_LAB_PROFILE\";\nexport const GET_LAB_PROFILE_SUCCESS = \"GET_LAB_PROFILE_SUCCESS\";\nexport const GET_LAB_PROFILE_FAIL = \"GET_LAB_PROFILE_FAIL\";\n","import {\n GET_FEEDBACKS,\n GET_FEEDBACKS_FAIL,\n GET_FEEDBACKS_SUCCESS,\n GET_LAB_PROFILE,\n GET_LAB_PROFILE_FAIL,\n GET_LAB_PROFILE_SUCCESS,\n} from \"./actionTypes\";\n\nexport const getLabProfile = id => ({\n type: GET_LAB_PROFILE,\n payload: id,\n});\n\nexport const getLabProfileSuccess = labProfile => ({\n type: GET_LAB_PROFILE_SUCCESS,\n payload: labProfile,\n});\n\nexport const getLabProfileFail = error => ({\n type: GET_LAB_PROFILE_FAIL,\n payload: error,\n});\nexport const getFeedbacks = id => ({\n type: GET_FEEDBACKS,\n payload: id,\n});\n\nexport const getFeedbacksSuccess = feedbacks => ({\n type: GET_FEEDBACKS_SUCCESS,\n payload: feedbacks,\n});\n\nexport const getFeedbacksFail = error => ({\n type: GET_FEEDBACKS_FAIL,\n payload: error,\n});","/* SAMPLE COLLECTORS */\nexport const GET_LABS_RATING = \"GET_LABS_RATING\";\nexport const GET_LABS_RATING_SUCCESS =\n \"GET_LABS_RATING_SUCCESS\";\nexport const GET_LABS_RATING_FAIL = \"GET_LABS_RATING_FAIL\";\n","/* SAMPLE COLLECTORS */\nexport const GET_LABS_TESTING = \"GET_LABS_TESTING\";\nexport const GET_LABS_TESTING_SUCCESS =\n \"GET_LABS_TESTING_SUCCESS\";\nexport const GET_LABS_TESTING_FAIL = \"GET_LABS_TESTING_FAIL\";\n","/* COMPLAINTS */\nexport const ADD_NEW_COMPLAINT = \"ADD_NEW_COMPLAINT\";\nexport const ADD_COMPLAINT_SUCCESS = \"ADD_COMPLAINT_SUCCESS\";\nexport const ADD_COMPLAINT_FAIL = \"ADD_COMPLAINT_FAIL\";\n\nexport const GET_LABS = \"get_labs\";\nexport const GET_LABS_SUCCESS = \"get_labs_success\";\nexport const GET_LABS_FAIL = \"get_labs_fail\";\n\nexport const GET_HANDLED_COMPLAINTS = \"GET_HANDLED_COMPLAINTS\";\nexport const GET_HANDLED_COMPLAINTS_SUCCESS = \"GET_HANDLED_COMPLAINTS_SUCCESS\";\nexport const GET_HANDLED_COMPLAINTS_FAIL = \"GET_HANDLED_COMPLAINTS_FAIL\";\n\nexport const GET_UNHANDLED_COMPLAINTS = \"GET_UNHANDLED_COMPLAINTS\";\nexport const GET_UNHANDLED_COMPLAINTS_SUCCESS =\n \"GET_UNHANDLED_COMPLAINTS_SUCCESS\";\nexport const GET_UNHANDLED_COMPLAINTS_FAIL = \"GET_UNHANDLED_COMPLAINTS_FAIL\";\n\nexport const UPDATE_UNHANDLED_COMPLAINTS = \"UPDATE_UNHANDLED_COMPLAINTS\";\nexport const UPDATE_UNHANDLED_COMPLAINTS_SUCCESS =\n \"UPDATE_UNHANDLED_COMPLAINTS_SUCCESS\";\nexport const UPDATE_UNHANDLED_COMPLAINTS_FAIL = \"UPDATE_UNHANDLED_COMPLAINTS_FAIL\";\n","\nexport const GET_CSR_COMPLAINTS = \"GET_CSR_COMPLAINTS\";\nexport const GET_CSR_COMPLAINTS_SUCCESS = \"GET_CSR_COMPLAINTS_SUCCESS\";\nexport const GET_CSR_COMPLAINTS_FAIL = \"GET_CSR_COMPLAINTS_FAIL\";\n\nexport const UPDATE_CSR_COMPLAINTS = \"UPDATE_CSR_COMPLAINTS\";\nexport const UPDATE_CSR_COMPLAINTS_SUCCESS =\n \"UPDATE_CSR_COMPLAINTS_SUCCESS\";\nexport const UPDATE_CSR_COMPLAINTS_FAIL = \"UPDATE_CSR_COMPLAINTS_FAIL\";","/* SAMPLE COLLECTORS */\nexport const GET_NOTES = \"GET_NOTES\";\nexport const GET_NOTES_SUCCESS =\n \"GET_NOTES_SUCCESS\";\nexport const GET_NOTES_FAIL = \"GET_NOTES_FAIL\";\n\nexport const ADD_NEW_NOTE = \"ADD_NEW_NOTE\";\nexport const ADD_NOTE_SUCCESS =\n \"ADD_NOTE_SUCCESS\";\nexport const ADD_NOTE_FAIL = \"ADD_NOTE_FAIL\";\n\n/* CSR AND CSR ADMIN */\n\nexport const GET_NOTES_COMPLAINT = \"GET_NOTES_COMPLAINT\";\nexport const GET_NOTES_COMPLAINT_SUCCESS =\n \"GET_NOTES_COMPLAINT_SUCCESS\";\nexport const GET_NOTES_COMPLAINT_FAIL = \"GET_NOTES_COMPLAINT_FAIL\";\n\nexport const ADD_NEW_NOTE_COMPLAINT = \"ADD_NEW_NOTE_COMPLAINT\";\nexport const ADD_NOTE_COMPLAINT_SUCCESS =\n \"ADD_NOTE_COMPLAINT_SUCCESS\";\nexport const ADD_NOTE_COMPLAINT_FAIL = \"ADD_NOTE_COMPLAINT_FAIL\";\n\n","import {\n GET_NOTES,\n GET_NOTES_FAIL,\n GET_NOTES_SUCCESS,\n ADD_NEW_NOTE,\n ADD_NOTE_SUCCESS,\n ADD_NOTE_FAIL,\n GET_NOTES_COMPLAINT,\n GET_NOTES_COMPLAINT_FAIL,\n GET_NOTES_COMPLAINT_SUCCESS,\n ADD_NEW_NOTE_COMPLAINT,\n ADD_NOTE_COMPLAINT_SUCCESS,\n ADD_NOTE_COMPLAINT_FAIL,\n} from \"./actionTypes\";\n\nexport const getNotesComplaint = id => ({\n type: GET_NOTES_COMPLAINT,\n payload: id,\n});\n\nexport const getNotesComplaintSuccess = notes => ({\n type: GET_NOTES_COMPLAINT_SUCCESS,\n payload: notes,\n});\n\nexport const getNotesComplaintFail = error => ({\n type: GET_NOTES_COMPLAINT_FAIL,\n payload: error,\n});\n\nexport const addNewNoteComplaint = (note, id) => ({\n type: ADD_NEW_NOTE_COMPLAINT,\n payload: { note, id },\n});\n\nexport const addNoteComplaintSuccess = note => ({\n type: ADD_NOTE_COMPLAINT_SUCCESS,\n payload: note,\n});\n\nexport const addNoteComplaintFail = error => ({\n type: ADD_NOTE_COMPLAINT_FAIL,\n payload: error,\n});\n\nexport const getNotes = id => ({\n type: GET_NOTES,\n payload: id,\n});\n\nexport const getNotesSuccess = notes => ({\n type: GET_NOTES_SUCCESS,\n payload: notes,\n});\n\nexport const getNotesFail = error => ({\n type: GET_NOTES_FAIL,\n payload: error,\n});\n\nexport const addNewNote = (note, id) => ({\n type: ADD_NEW_NOTE,\n payload: { note, id },\n});\n\nexport const addNoteSuccess = note => ({\n type: ADD_NOTE_SUCCESS,\n payload: note,\n});\n\nexport const addNoteFail = error => ({\n type: ADD_NOTE_FAIL,\n payload: error,\n});\n\n","\nexport const GET_CSR_APPOINTMENTS = \"GET_CSR_APPOINTMENTS\";\nexport const GET_CSR_APPOINTMENTS_SUCCESS = \"GET_CSR_APPOINTMENTS_SUCCESS\";\nexport const GET_CSR_APPOINTMENTS_FAIL = \"GET_CSR_APPOINTMENTS_FAIL\";\n\nexport const UPDATE_CSR_APPOINTMENTS = \"UPDATE_CSR_APPOINTMENTS\";\nexport const UPDATE_CSR_APPOINTMENTS_SUCCESS =\n \"UPDATE_CSR_APPOINTMENTS_SUCCESS\";\nexport const UPDATE_CSR_APPOINTMENTS_FAIL = \"UPDATE_CSR_APPOINTMENTS_FAIL\";","/* PATIENT TEST APPOINTMENTtS */\n\nexport const GET_PATIENTS_LIST =\n \"GET_PATIENTS_LIST\";\nexport const GET_PATIENTS_LIST_SUCCESS =\n \"GET_PATIENTS_LIST_SUCCESS\";\nexport const GET_PATIENTS_LIST_FAIL =\n \"GET_PATIENTS_LIST_FAIL\";\n","/* SAMPLE COLLECTORS */\nexport const GET_TEST_DESCRIPTIONS = \"GET_TEST_DESCRIPTIONS\";\nexport const GET_TEST_DESCRIPTIONS_SUCCESS =\n \"GET_TEST_DESCRIPTIONS_SUCCESS\";\nexport const GET_TEST_DESCRIPTIONS_FAIL = \"GET_TEST_DESCRIPTIONS_FAIL\";\n\n","/* TEST APPOINTMENTtS */\nexport const GET_TEST_APPOINTMENTS_PENDING_LIST = \"GET_TEST_APPOINTMENTS_PENDING_LIST\";\nexport const GET_TEST_APPOINTMENTS_PENDING_LIST_SUCCESS =\n \"GET_TEST_APPOINTMENTS_PENDING_LIST_SUCCESS\";\nexport const GET_TEST_APPOINTMENTS_PENDING_LIST_FAIL = \"GET_TEST_APPOINTMENTS_PENDING_LIST_FAIL\";\n\nexport const GET_TEST_APPOINTMENTS_IN_PROCESS_LIST = \"GET_TEST_APPOINTMENTS_IN_PROCESS_LIST\";\nexport const GET_TEST_APPOINTMENTS_IN_PROCESS_LIST_SUCCESS =\n \"GET_TEST_APPOINTMENTS_IN_PROCESS_LIST_SUCCESS\";\nexport const GET_TEST_APPOINTMENTS_IN_PROCESS_LIST_FAIL = \"GET_TEST_APPOINTMENTS_IN_PROCESS_LIST_FAIL\";\n\nexport const GET_TEST_APPOINTMENTS_COMPLETED_LIST = \"GET_TEST_APPOINTMENTS_COMPLETED_LIST\";\nexport const GET_TEST_APPOINTMENTS_COMPLETED_LIST_SUCCESS =\n \"GET_TEST_APPOINTMENTS_COMPLETED_LIST_SUCCESS\";\nexport const GET_TEST_APPOINTMENTS_COMPLETED_LIST_FAIL = \"GET_TEST_APPOINTMENTS_COMPLETED_LIST_FAIL\";\n\nexport const UPDATE_TEST_APPOINTMENT = \"UPDATE_TEST_APPOINTMENT\";\nexport const UPDATE_TEST_APPOINTMENT_SUCCESS =\n \"UPDATE_TEST_APPOINTMENT_SUCCESS\";\nexport const UPDATE_TEST_APPOINTMENT_FAIL =\n \"UPDATE_TEST_APPOINTMENT_FAIL\";\n\nexport const ADD_NEW_COLLECTIONPOINT_TESTAPPOINTMENT = \"ADD_NEW_COLLECTIONPOINT_TESTAPPOINTMENT\";\nexport const ADD_COLLECTIONPOINT_TESTAPPOINTMENT_SUCCESS = \"ADD_COLLECTIONPOINT_TESTAPPOINTMENT_SUCCESS\";\nexport const ADD_COLLECTIONPOINT_TESTAPPOINTMENT_FAIL = \"ADD_COLLECTIONPOINT_TESTAPPOINTMENT_FAIL\";\n\nexport const GET_LAB_PROFILE = \"GET_LAB_PROFILE\";\nexport const GET_LAB_PROFILE_SUCCESS = \"GET_LAB_PROFILE_SUCCESS\";\nexport const GET_LAB_PROFILE_FAIL = \"GET_LAB_PROFILE_FAIL\";\n\nexport const GET_LAB_TOKEN = \"GET_LAB_TOKEN\";\nexport const GET_LAB_TOKEN_SUCCESS = \"GET_LAB_TOKEN_SUCCESS\";\nexport const GET_LAB_TOKEN_FAIL = \"GET_LAB_TOKEN_FAIL\";","import {\n GET_TEST_APPOINTMENTS_PENDING_LIST,\n GET_TEST_APPOINTMENTS_PENDING_LIST_SUCCESS,\n GET_TEST_APPOINTMENTS_PENDING_LIST_FAIL,\n GET_TEST_APPOINTMENTS_IN_PROCESS_LIST,\n GET_TEST_APPOINTMENTS_IN_PROCESS_LIST_SUCCESS,\n GET_TEST_APPOINTMENTS_IN_PROCESS_LIST_FAIL,\n GET_TEST_APPOINTMENTS_COMPLETED_LIST,\n GET_TEST_APPOINTMENTS_COMPLETED_LIST_SUCCESS,\n GET_TEST_APPOINTMENTS_COMPLETED_LIST_FAIL,\n UPDATE_TEST_APPOINTMENT,\n UPDATE_TEST_APPOINTMENT_SUCCESS,\n UPDATE_TEST_APPOINTMENT_FAIL,\n ADD_NEW_COLLECTIONPOINT_TESTAPPOINTMENT,\n ADD_COLLECTIONPOINT_TESTAPPOINTMENT_SUCCESS,\n ADD_COLLECTIONPOINT_TESTAPPOINTMENT_FAIL,\n GET_LAB_PROFILE,\n GET_LAB_PROFILE_FAIL,\n GET_LAB_PROFILE_SUCCESS,\n GET_LAB_TOKEN,\n GET_LAB_TOKEN_SUCCESS,\n GET_LAB_TOKEN_FAIL\n} from \"./actionTypes\";\n\nexport const getLabProfile = id => ({\n type: GET_LAB_PROFILE,\n payload: id,\n});\n\nexport const getLabProfileSuccess = labProfiles => (\n console.log(\"actions lab profile\",labProfiles),\n {\n type: GET_LAB_PROFILE_SUCCESS,\n payload: labProfiles,\n});\n\nexport const getLabProfileFail = error => ({\n type: GET_LAB_PROFILE_FAIL,\n payload: error,\n});\n\nexport const getLabToken = id => ({\n type: GET_LAB_TOKEN,\n payload: id,\n});\n\nexport const getLabTokenSuccess = labTokens => {\n console.log(\"actions lab token success:\", labTokens);\n return {\n type: GET_LAB_TOKEN_SUCCESS,\n payload: {\n lab: labTokens.data.lab,\n appointments: labTokens.data.appointments,\n tokens: labTokens.data.tokens, // Make sure to include this\n },\n };\n};\n\n\nexport const getLabTokenFail = error => {\n console.log(\"actions lab token fail:\", labTokens);\n return{\n type: GET_LAB_TOKEN_FAIL,\n payload: error,\n }\n};\n\nexport const addNewCollectionPointTestAppointment = (testAppointment, id) => ({\n type: ADD_NEW_COLLECTIONPOINT_TESTAPPOINTMENT,\n payload: { testAppointment, id },\n});\n\nexport const addCollectionPointTestAppointmentSuccess = testAppointment => ({\n type: ADD_COLLECTIONPOINT_TESTAPPOINTMENT_SUCCESS,\n payload: testAppointment,\n});\n\nexport const addCollectionPointTestAppointmentFail = error => ({\n type: ADD_COLLECTIONPOINT_TESTAPPOINTMENT_FAIL,\n payload: error,\n});\n\nexport const getTestAppointmentsPendingList = id => ({\n type: GET_TEST_APPOINTMENTS_PENDING_LIST,\n payload: id,\n});\n\nexport const getTestAppointmentsPendingListSuccess = testAppointments => ({\n type: GET_TEST_APPOINTMENTS_PENDING_LIST_SUCCESS,\n payload: testAppointments,\n});\n\nexport const getTestAppointmentsPendingListFail = error => ({\n type: GET_TEST_APPOINTMENTS_PENDING_LIST_FAIL,\n payload: error,\n});\n\nexport const getTestAppointmentsInProcessList = id => ({\n type: GET_TEST_APPOINTMENTS_IN_PROCESS_LIST,\n payload: id,\n});\n\nexport const getTestAppointmentsInProcessListSuccess = testAppointmentsInProcessList => ({\n type: GET_TEST_APPOINTMENTS_IN_PROCESS_LIST_SUCCESS,\n payload: testAppointmentsInProcessList,\n});\n\nexport const getTestAppointmentsInProcessListFail = error => ({\n type: GET_TEST_APPOINTMENTS_IN_PROCESS_LIST_FAIL,\n payload: error,\n});\n\nexport const getTestAppointmentsCompletedList = id => ({\n type: GET_TEST_APPOINTMENTS_COMPLETED_LIST,\n payload: id,\n});\n\nexport const getTestAppointmentsCompletedListSuccess = testAppointments => ({\n type: GET_TEST_APPOINTMENTS_COMPLETED_LIST_SUCCESS,\n payload: testAppointments,\n});\n\nexport const getTestAppointmentsCompletedListFail = error => ({\n type: GET_TEST_APPOINTMENTS_COMPLETED_LIST_FAIL,\n payload: error,\n});\n\nexport const updateTestAppointment = testAppointment => ({\n type: UPDATE_TEST_APPOINTMENT,\n payload: testAppointment,\n});\n\nexport const updateTestAppointmentSuccess = testAppointment => ({\n type: UPDATE_TEST_APPOINTMENT_SUCCESS,\n payload: testAppointment,\n});\n\nexport const updateTestAppointmentFail = error => ({\n type: UPDATE_TEST_APPOINTMENT_FAIL,\n payload: error,\n});\n","/* PATIENT TEST APPOINTMENTtS */\nexport const GET_PATIENT_TEST_APPOINTMENTS_LIST =\n \"GET_PATIENT_TEST_APPOINTMENTS_LIST\";\nexport const GET_PATIENT_TEST_APPOINTMENTS_LIST_SUCCESS =\n \"GET_PATIENT_TEST_APPOINTMENTS_LIST_SUCCESS\";\nexport const GET_PATIENT_TEST_APPOINTMENTS_LIST_FAIL =\n \"GET_PATIENT_TEST_APPOINTMENTS_LIST_FAIL\";\n","import {\n GET_PATIENT_TEST_APPOINTMENTS_LIST,\n GET_PATIENT_TEST_APPOINTMENTS_LIST_SUCCESS,\n GET_PATIENT_TEST_APPOINTMENTS_LIST_FAIL,\n} from \"./actionTypes\";\n\nexport const getPatientTestAppointmentsList = id => ({\n type: GET_PATIENT_TEST_APPOINTMENTS_LIST,\n payload: id,\n});\n\nexport const getPatientTestAppointmentsListSuccess =\n patientTestAppointments => ({\n type: GET_PATIENT_TEST_APPOINTMENTS_LIST_SUCCESS,\n payload: patientTestAppointments,\n });\n\nexport const getPatientTestAppointmentsListFail = error => ({\n type: GET_PATIENT_TEST_APPOINTMENTS_LIST_FAIL,\n payload: error,\n});\n","/* PATIENT_FEEDBACKS */\nexport const ADD_NEW_PATIENT_FEEDBACK = \"ADD_NEW_PATIENT_FEEDBACK\";\nexport const ADD_PATIENT_FEEDBACK_SUCCESS = \"ADD_PATIENT_FEEDBACK_SUCCESS\";\nexport const ADD_PATIENT_FEEDBACK_FAIL = \"ADD_PATIENT_FEEDBACK_FAIL\";\n","import {\n ADD_NEW_PATIENT_FEEDBACK,\n ADD_PATIENT_FEEDBACK_SUCCESS,\n ADD_PATIENT_FEEDBACK_FAIL,\n} from \"./actionTypes\";\n\n// ----------- patient Feedback list APIs actions -----------------\n\nexport const addNewPatientFeedback = patientFeedback => ({\n type: ADD_NEW_PATIENT_FEEDBACK,\n payload: { patientFeedback },\n});\n\nexport const addPatientFeedbackSuccess = patientFeedback => ({\n type: ADD_PATIENT_FEEDBACK_SUCCESS,\n payload: patientFeedback,\n});\n\nexport const addPatientFeedbackFail = error => ({\n type: ADD_PATIENT_FEEDBACK_FAIL,\n payload: error,\n});\n","export const GET_HOME_SAMPLED_TESTS = \"GET_HOME_SAMPLED_TESTS\";\nexport const GET_HOME_SAMPLED_TESTS_SUCCESS = \"GET_HOME_SAMPLED_TESTS_SUCCESS\";\nexport const GET_HOME_SAMPLED_TESTS_FAIL = \"GET_HOME_SAMPLED_TESTS_FAIL\";\n\nexport const GET_CHECKOUT_ITEMS = \"GET_CHECKOUT_ITEMS\";\nexport const GET_CHECKOUT_ITEMS_SUCCESS = \"GET_CHECKOUT_ITEMS_SUCCESS\";\nexport const GET_CHECKOUT_ITEMS_FAIL = \"GET_CHECKOUT_ITEMS_FAIL\";\n\nexport const ADD_CHECKOUT_DATA = \"ADD_CHECKOUT_DATA\";\nexport const ADD_CHECKOUT_DATA_SUCCESS = \"ADD_CHECKOUT_DATA_SUCCESS\";\nexport const ADD_CHECKOUT_DATA_FAIL = \"ADD_CHECKOUT_DATA_FAIL\";\n\nexport const GET_DONATION_CHECK = \"GET_DONATION_CHECK\";\nexport const GET_DONATION_CHECK_SUCCESS = \"GET_DONATION_CHECK_SUCCESS\";\nexport const GET_DONATION_CHECK_FAIL = \"GET_DONATION_CHECK_FAIL\";","/* PATIENT TEST APPOINTMENTtS */\n\nexport const GET_B2B_REFERRED_PATIENTS_LIST =\n \"GET_B2B_REFERRED_PATIENTS_LIST\";\nexport const GET_B2B_REFERRED_PATIENTS_LIST_SUCCESS =\n \"GET_B2B_REFERRED_PATIENTS_LIST_SUCCESS\";\nexport const GET_B2B_REFERRED_PATIENTS_LIST_FAIL =\n \"GET_B2B_REFERRED_PATIENTS_LIST_FAIL\";\n","export const GET_LABS = \"get_labs\";\nexport const GET_LABS_SUCCESS = \"get_labs_success\";\nexport const GET_LABS_FAIL = \"get_labs_fail\";\n\n\n/* SHARES */\n\nexport const GET_B2B_LAB_SHARES_LIST =\n \"GET_B2B_LAB_SHARES_LIST\";\nexport const GET_B2B_LAB_SHARES_LIST_SUCCESS =\n \"GET_B2B_LAB_SHARES_LIST_SUCCESS\";\nexport const GET_B2B_LAB_SHARES_LIST_FAIL =\n \"GET_B2B_LAB_SHARES_LIST_FAIL\";\n\nexport const GET_B2B_SHARES_LAB_LIST =\n \"GET_B2B_SHARES_LAB_LIST\";\nexport const GET_B2B_SHARES_LAB_LIST_SUCCESS =\n \"GET_B2B_SHARES_LAB_LIST_SUCCESS\";\nexport const GET_B2B_SHARES_LAB_LIST_FAIL =\n \"GET_B2B_SHARES_LAB_LIST_FAIL\";\n\n/* SHARES */\nexport const UPDATE_LAB_SHARE = \"UPDATE_LAB_SHARE\";\nexport const UPDATE_LAB_SHARE_SUCCESS = \"UPDATE_LAB_SHARE_SUCCESS\";\nexport const UPDATE_LAB_SHARE_FAIL = \"UPDATE_LAB_SHARE_FAIL\";\n\n/* SHARES */\nexport const UPDATE_ALL_LAB_SHARE = \"UPDATE_ALL_LAB_SHARE\";\nexport const UPDATE_ALL_LAB_SHARE_SUCCESS = \"UPDATE_ALL_LAB_SHARE_SUCCESS\";\nexport const UPDATE_ALL_LAB_SHARE_FAIL = \"UPDATE_ALL_LAB_SHARE_FAIL\";\n\n\nexport const ADD_NEW_LAB_SHARE = \"ADD_NEW_LAB_SHARE\";\nexport const ADD_LAB_SHARE_SUCCESS = \"ADD_LAB_SHARE_SUCCESS\";\nexport const ADD_LAB_SHARE_FAIL = \"ADD_LAB_SHARE_FAIL\";","/* PATIENT TEST APPOINTMENTtS */\n\nexport const GET_B2B_ALL_CLIENTS_LIST =\n \"GET_B2B_ALL_CLIENTS_LIST\";\nexport const GET_B2B_ALL_CLIENTS_LIST_SUCCESS =\n \"GET_B2B_ALL_CLIENTS_LIST_SUCCESS\";\nexport const GET_B2B_ALL_CLIENTS_LIST_FAIL =\n \"GET_B2B_ALL_CLIENTS_LIST_FAIL\";\n","/* SAMPLE COLLECTORS */\n// export const GET_B2B_PAYMENTS = \"GET_B2B_PAYMENTS\";\n// export const GET_B2B_PAYMENTS_SUCCESS =\n// \"GET_B2B_PAYMENTS_SUCCESS\";\n// export const GET_B2B_PAYMENTS_FAIL = \"GET_B2B_PAYMENTS_FAIL\";\n\nexport const ADD_NEW_B2B_PAYMENT = \"ADD_NEW_B2B_PAYMENT\";\nexport const ADD_B2B_PAYMENT_SUCCESS =\n \"ADD_B2B_PAYMENT_SUCCESS\";\nexport const ADD_B2B_PAYMENT_FAIL = \"ADD_B2B_PAYMENT_FAIL\";\n","/* B2B_ACCOUNT_STATEMENTS */\nexport const GET_B2B_ACCOUNT_STATEMENTS = \"GET_B2B_ACCOUNT_STATEMENTS\";\nexport const GET_B2B_ACCOUNT_STATEMENTS_SUCCESS = \"GET_B2B_ACCOUNT_STATEMENTS_SUCCESS\";\nexport const GET_B2B_ACCOUNT_STATEMENTS_FAIL = \"GET_B2B_ACCOUNT_STATEMENTS_FAIL\";\nexport const GET_CLAB_ACCOUNT_STATEMENTS = \"GET_CLAB_ACCOUNT_STATEMENTS\";\nexport const GET_CLAB_ACCOUNT_STATEMENTS_SUCCESS = \"GET_CLAB_ACCOUNT_STATEMENTS_SUCCESS\";\nexport const GET_CLAB_ACCOUNT_STATEMENTS_FAIL = \"GET_CLAB_ACCOUNT_STATEMENTS_FAIL\";","import {\n GET_B2B_ACCOUNT_STATEMENTS,\n GET_B2B_ACCOUNT_STATEMENTS_SUCCESS,\n GET_B2B_ACCOUNT_STATEMENTS_FAIL,\n GET_CLAB_ACCOUNT_STATEMENTS,\n GET_CLAB_ACCOUNT_STATEMENTS_SUCCESS,\n GET_CLAB_ACCOUNT_STATEMENTS_FAIL,\n} from \"./actionTypes\";\n\nexport const getB2bAccountStatements = id => ({\n type: GET_B2B_ACCOUNT_STATEMENTS,\n payload: id,\n});\n\nexport const getB2bAccountStatementsSuccess = b2baccountStatements => ({\n type: GET_B2B_ACCOUNT_STATEMENTS_SUCCESS,\n payload: b2baccountStatements,\n});\n\nexport const getB2bAccountStatementsFail = error => ({\n type: GET_B2B_ACCOUNT_STATEMENTS_FAIL,\n payload: error,\n});\nexport const getCLabAccountStatements = id => ({\n type: GET_CLAB_ACCOUNT_STATEMENTS,\n payload: id,\n});\n\nexport const getCLabAccountStatementsSuccess = b2baccountStatements => ({\n type: GET_CLAB_ACCOUNT_STATEMENTS_SUCCESS,\n payload: b2baccountStatements,\n});\n\nexport const getCLabAccountStatementsFail = error => ({\n type: GET_CLAB_ACCOUNT_STATEMENTS_FAIL,\n payload: error,\n});\n","/* ACCOUNT_STATEMENTS */\nexport const GET_BANK_STATEMENTS = \"GET_BANK_STATEMENTS\";\nexport const GET_BANK_STATEMENTS_SUCCESS = \"GET_BANK_STATEMENTS_SUCCESS\";\nexport const GET_BANK_STATEMENTS_FAIL = \"GET_BANK_STATEMENTS_FAIL\";\n","/* PATIENT TEST APPOINTMENTtS */\n\nexport const GET_DONOR_REFERRED_APPOINTMENTS_LIST =\n \"GET_DONOR_REFERRED_APPOINTMENTS_LIST\";\nexport const GET_DONOR_REFERRED_APPOINTMENTS_LIST_SUCCESS =\n \"GET_DONOR_REFERRED_APPOINTMENTS_LIST_SUCCESS\";\nexport const GET_DONOR_REFERRED_APPOINTMENTS_LIST_FAIL =\n \"GET_DONOR_REFERRED_APPOINTMENTS_LIST_FAIL\";\n","/* SAMPLE COLLECTORS */\n// export const GET_DONOR_PAYMENTS = \"GET_DONOR_PAYMENTS\";\n// export const GET_DONOR_PAYMENTS_SUCCESS =\n// \"GET_DONOR_PAYMENTS_SUCCESS\";\n// export const GET_DONOR_PAYMENTS_FAIL = \"GET_DONOR_PAYMENTS_FAIL\";\n\nexport const ADD_NEW_DONOR_PAYMENT = \"ADD_NEW_DONOR_PAYMENT\";\nexport const ADD_DONOR_PAYMENT_SUCCESS =\n \"ADD_DONOR_PAYMENT_SUCCESS\";\nexport const ADD_DONOR_PAYMENT_FAIL = \"ADD_DONOR_PAYMENT_FAIL\";\n","/* DONOR_ACCOUNT_STATEMENTS */\nexport const GET_DONOR_ACCOUNT_STATEMENTS = \"GET_DONOR_ACCOUNT_STATEMENTS\";\nexport const GET_DONOR_ACCOUNT_STATEMENTS_SUCCESS = \"GET_DONOR_ACCOUNT_STATEMENTS_SUCCESS\";\nexport const GET_DONOR_ACCOUNT_STATEMENTS_FAIL = \"GET_DONOR_ACCOUNT_STATEMENTS_FAIL\";\n","/* DONOR_ACCOUNT_STATEMENTS */\nexport const GET_DONORS_ACCOUNT_STATEMENTS = \"GET_DONORS_ACCOUNT_STATEMENTS\";\nexport const GET_DONORS_ACCOUNT_STATEMENTS_SUCCESS = \"GET_DONORS_ACCOUNT_STATEMENTS_SUCCESS\";\nexport const GET_DONORS_ACCOUNT_STATEMENTS_FAIL = \"GET_DONORS_ACCOUNT_STATEMENTS_FAIL\";\n","/* SAMPLE COLLECTORS */\n// export const GET_CREATE_BANKS = \"GET_CREATE_BANKS\";\n// export const GET_CREATE_BANKS_SUCCESS =\n// \"GET_CREATE_BANKS_SUCCESS\";\n// export const GET_CREATE_BANKS_FAIL = \"GET_CREATE_BANKS_FAIL\";\n\nexport const ADD_NEW_CREATE_BANK = \"ADD_NEW_CREATE_BANK\";\nexport const ADD_CREATE_BANK_SUCCESS =\n \"ADD_CREATE_BANK_SUCCESS\";\nexport const ADD_CREATE_BANK_FAIL = \"ADD_CREATE_BANK_FAIL\";\n\n\nexport const UPDATE_BANK = \"UPDATE_BANK\";\nexport const UPDATE_BANK_SUCCESS =\n \"UPDATE_BANK_SUCCESS\";\nexport const UPDATE_BANK_FAIL =\n \"UPDATE_BANK_FAIL\";\n\n export const GET_BANKS = \"get_banks\";\nexport const GET_BANKS_SUCCESS = \"get_banks_success\";\nexport const GET_BANKS_FAIL = \"get_banks_fail\";","import {\n // GET_CREATE_BANKS,\n // GET_CREATE_BANKS_FAIL,\n // GET_CREATE_BANKS_SUCCESS,\n ADD_NEW_CREATE_BANK,\n ADD_CREATE_BANK_SUCCESS,\n ADD_CREATE_BANK_FAIL,\n GET_BANKS,\n GET_BANKS_SUCCESS,\n GET_BANKS_FAIL,\n UPDATE_BANK,\n UPDATE_BANK_SUCCESS,\n UPDATE_BANK_FAIL,\n} from \"./actionTypes\";\n\n// export const getCreateBanks = id => ({\n// type: GET_CREATE_BANKS,\n// payload: id,\n// });\n\n// export const getCreateBanksSuccess = createBanks => ({\n// type: GET_CREATE_BANKS_SUCCESS,\n// payload: createBanks,\n// });\n\n// export const getCreateBanksFail = error => ({\n// type: GET_CREATE_BANKS_FAIL,\n// payload: error,\n// });\nexport const getBanks = () => ({\n type: GET_BANKS,\n});\n\nexport const getBanksSuccess = banks => ({\n type: GET_BANKS_SUCCESS,\n payload: banks,\n});\n\nexport const getBanksFail = error => ({\n type: GET_BANKS_FAIL,\n payload: error,\n});\n\nexport const addNewCreateBank = (createBank, id) => ({\n type: ADD_NEW_CREATE_BANK,\n payload: { createBank, id },\n});\n\nexport const addCreateBankSuccess = createBank => ({\n type: ADD_CREATE_BANK_SUCCESS,\n payload: createBank,\n});\n\nexport const addCreateBankFail = error => ({\n type: ADD_CREATE_BANK_FAIL,\n payload: error,\n});\nexport const updateBank = bank => ({\n type: UPDATE_BANK,\n payload: bank,\n});\n\nexport const updateBankSuccess = bank => ({\n type: UPDATE_BANK_SUCCESS,\n payload: bank,\n});\n\nexport const updateBankFail = error => ({\n type: UPDATE_BANK_FAIL,\n payload: error,\n});\n"," /* SAMPLE COLLECTORS */\n export const GET_BANK_ACCOUNTS = \"GET_BANK_ACCOUNTS\";\n export const GET_BANK_ACCOUNTS_SUCCESS =\n \"GET_BANK_ACCOUNTS_SUCCESS\";\n export const GET_BANK_ACCOUNTS_FAIL = \"GET_BANK_ACCOUNTS_FAIL\";\n \nexport const GET_BANKS = \"get_banks\";\nexport const GET_BANKS_SUCCESS = \"get_banks_success\";\nexport const GET_BANKS_FAIL = \"get_banks_fail\";\n\nexport const ADD_NEW_BANK_ACCOUNT = \"ADD_NEW_BANK_ACCOUNT\";\nexport const ADD_BANK_ACCOUNT_SUCCESS =\n \"ADD_BANK_ACCOUNT_SUCCESS\";\nexport const ADD_BANK_ACCOUNT_FAIL = \"ADD_BANK_ACCOUNT_FAIL\";\n\n","/* CORPORATES */\nexport const GET_LABCORPORATE = \"GET_LABCORPORATE\";\nexport const GET_LABCORPORATE_SUCCESS = \"GET_LABCORPORATE_SUCCESS\";\nexport const GET_LABCORPORATE_FAIL = \"GET_LABCORPORATE_FAIL\";\n\nexport const GET_ALABCORPORATE = \"GET_ALABCORPORATE\";\nexport const GET_ALABCORPORATE_SUCCESS = \"GET_ALABCORPORATE_SUCCESS\";\nexport const GET_ALABCORPORATE_FAIL = \"GET_ALABCORPORATE_FAIL\";\n\nexport const GET_ACORPORATE = \"GET_ACORPORATE\";\nexport const GET_ACORPORATE_SUCCESS = \"GET_ACORPORATE_SUCCESS\";\nexport const GET_ACORPORATE_FAIL = \"GET_ACORPORATE_FAIL\";\n\nexport const GET_RFEECORPORATE = \"GET_RFEECORPORATE\";\nexport const GET_RFEECORPORATE_SUCCESS = \"GET_RFEECORPORATE_SUCCESS\";\nexport const GET_RFEECORPORATE_FAIL = \"GET_RFEECORPORATE_FAIL\";\n\nexport const GET_EMPLOYEECORPORATE = \"GET_EMPLOYEECORPORATE\";\nexport const GET_EMPLOYEECORPORATE_SUCCESS = \"GET_EMPLOYEECORPORATE_SUCCESS\";\nexport const GET_EMPLOYEECORPORATE_FAIL = \"GET_EMPLOYEECORPORATE_FAIL\";\n\nexport const GET_LABSCORPORATE = \"GET_LABSCORPORATE\";\nexport const GET_LABSCORPORATE_SUCCESS = \"GET_LABSCORPORATE_SUCCESS\";\nexport const GET_LABSCORPORATE_FAIL = \"GET_LABSCORPORATE_FAIL\";\n\nexport const ADD_NEW_CEMPLOYEE_DATA = \"ADD_NEW_CEMPLOYEE_DATA\";\nexport const ADD_CEMPLOYEE_DATA_SUCCESS =\n \"ADD_CEMPLOYEE_DATA_SUCCESS\";\nexport const ADD_CEMPLOYEE_DATA_FAIL = \"ADD_CEMPLOYEE_DATA_FAIL\";\n\nexport const ADD_NEW_CEMPLOYEE_FILE = \"ADD_NEW_CEMPLOYEE_FILE\";\nexport const ADD_CEMPLOYEE_FILE_SUCCESS =\n \"ADD_CEMPLOYEE_FILE_SUCCESS\";\nexport const ADD_CEMPLOYEE_FILE_FAIL = \"ADD_CEMPLOYEE_FILE_FAIL\";\n\n\nexport const UPDATE_CEMPLOYEE = \"UPDATE_CEMPLOYEE\";\nexport const UPDATE_CEMPLOYEE_SUCCESS =\n \"UPDATE_CEMPLOYEE_SUCCESS\";\nexport const UPDATE_CEMPLOYEE_FAIL =\n \"UPDATE_CEMPLOYEE_FAIL\";\n\nexport const DELETE_CEDATA = \"DELETE_CEDATA\";\nexport const DELETE_CEDATA_SUCCESS = \"DELETE_CEDATA_SUCCESS\";\nexport const DELETE_CEDATA_FAIL = \"DELETE_CEDATA_FAIL\";","import {\n ADD_NEW_CEMPLOYEE_DATA,\n ADD_CEMPLOYEE_DATA_SUCCESS,\n ADD_CEMPLOYEE_DATA_FAIL,\n ADD_NEW_CEMPLOYEE_FILE,\n ADD_CEMPLOYEE_FILE_SUCCESS,\n ADD_CEMPLOYEE_FILE_FAIL,\n GET_LABCORPORATE,\n GET_LABCORPORATE_SUCCESS,\n GET_LABCORPORATE_FAIL,\n GET_ALABCORPORATE,\n GET_ALABCORPORATE_SUCCESS,\n GET_ALABCORPORATE_FAIL,\n GET_ACORPORATE,\n GET_ACORPORATE_SUCCESS,\n GET_ACORPORATE_FAIL,\n GET_RFEECORPORATE,\n GET_RFEECORPORATE_SUCCESS,\n GET_RFEECORPORATE_FAIL,\n GET_EMPLOYEECORPORATE,\n GET_EMPLOYEECORPORATE_SUCCESS,\n GET_EMPLOYEECORPORATE_FAIL,\n GET_LABSCORPORATE,\n GET_LABSCORPORATE_SUCCESS,\n GET_LABSCORPORATE_FAIL,\n UPDATE_CEMPLOYEE,\n UPDATE_CEMPLOYEE_SUCCESS,\n UPDATE_CEMPLOYEE_FAIL,\n DELETE_CEDATA,\n DELETE_CEDATA_SUCCESS,\n DELETE_CEDATA_FAIL,\n} from \"./actionTypes\";\n\nexport const getALabCorporate = id => ({\n type: GET_ALABCORPORATE,\n payload: id,\n});\n\nexport const getALabCorporateSuccess = cemployeeData => ({\n type: GET_ALABCORPORATE_SUCCESS,\n payload: cemployeeData,\n});\n\nexport const getALabCorporateFail = error => ({\n type: GET_ALABCORPORATE_FAIL,\n payload: error,\n});\nexport const getACorporate = () => ({\n type: GET_ACORPORATE,\n // payload: id,\n});\n\nexport const getACorporateSuccess = cemployeeData => ({\n type: GET_ACORPORATE_SUCCESS,\n payload: cemployeeData,\n});\n\nexport const getACorporateFail = error => ({\n type: GET_ACORPORATE_FAIL,\n payload: error,\n});\nexport const getRFeeCorporate = () => ({\n type: GET_RFEECORPORATE,\n // payload: id,\n});\n\nexport const getRFeeCorporateSuccess = cemployeeData => ({\n type: GET_RFEECORPORATE_SUCCESS,\n payload: cemployeeData,\n});\n\nexport const getRFeeCorporateFail = error => ({\n type: GET_RFEECORPORATE_FAIL,\n payload: error,\n});\nexport const getLabCorporate = id => ({\n type: GET_LABCORPORATE,\n payload: id,\n});\n\nexport const getLabCorporateSuccess = cemployeeData => ({\n type: GET_LABCORPORATE_SUCCESS,\n payload: cemployeeData,\n});\n\nexport const getLabCorporateFail = error => ({\n type: GET_LABCORPORATE_FAIL,\n payload: error,\n});\nexport const getEmployeeCorporate = id => ({\n type: GET_EMPLOYEECORPORATE,\n payload: id,\n});\n\nexport const getEmployeeCorporateSuccess = cemployeeData => ({\n type: GET_EMPLOYEECORPORATE_SUCCESS,\n payload: cemployeeData,\n});\n\nexport const getEmployeeCorporateFail = error => ({\n type: GET_EMPLOYEECORPORATE_FAIL,\n payload: error,\n});\n\nexport const getLabsCorporate = id => ({\n type: GET_LABSCORPORATE,\n payload: id,\n});\n\nexport const getLabsCorporateSuccess = cemployeeData => ({\n type: GET_LABSCORPORATE_SUCCESS,\n payload: cemployeeData,\n});\n\nexport const getLabsCorporateFail = error => ({\n type: GET_LABSCORPORATE_FAIL,\n payload: error,\n});\n\nexport const addNewCemployeeData = (cemployeeData, id) => ({\n type: ADD_NEW_CEMPLOYEE_DATA,\n payload: { cemployeeData, id },\n});\n\nexport const addCemployeeDataSuccess = cemployeeData => ({\n type: ADD_CEMPLOYEE_DATA_SUCCESS,\n payload: cemployeeData,\n});\n\nexport const addCemployeeDataFail = error => ({\n type: ADD_CEMPLOYEE_DATA_FAIL,\n payload: error,\n});\nexport const addNewCemployeefile = (cemployeeData) => (\n console.log(\"data file\", cemployeeData),\n {\n type: ADD_NEW_CEMPLOYEE_FILE,\n payload: { cemployeeData},\n});\n\nexport const addCemployeefileSuccess = cemployeeData => ({\n type: ADD_CEMPLOYEE_FILE_SUCCESS,\n payload: cemployeeData,\n});\n\nexport const addCemployeefileFail = error => (\n console.log(\"data file error\", cemployeeData),\n {\n type: ADD_CEMPLOYEE_FILE_FAIL,\n payload: error,\n});\nexport const updateCemployee = cemployee => ({\n type: UPDATE_CEMPLOYEE,\n payload: cemployee,\n});\n\nexport const updateCemployeeSuccess = cemployee => ({\n type: UPDATE_CEMPLOYEE_SUCCESS,\n payload: cemployee,\n});\n\nexport const updateCemployeeFail = error => ({\n type: UPDATE_CEMPLOYEE_FAIL,\n payload: error,\n});\nexport const deletecedata = cemployee => ({\n type: DELETE_CEDATA,\n payload: cemployee,\n});\n\nexport const deletecedataSuccess = cemployee => ({\n type: DELETE_CEDATA_SUCCESS,\n payload: cemployee,\n});\n\nexport const deletecedataFail = error => ({\n type: DELETE_CEDATA_FAIL,\n payload: error,\n});","/* INVOICES */\nexport const GET_INVOICE_DETAIL = \"GET_INVOICE_DETAIL\";\nexport const GET_INVOICE_DETAIL_SUCCESS = \"GET_INVOICE_DETAIL_SUCCESS\";\nexport const GET_INVOICE_DETAIL_FAIL = \"GET_INVOICE_DETAIL_FAIL\";\n\n\nexport const GET_TESTS_IN_APPOINTMENTS = \"GET_TESTS_IN_APPOINTMENTS\";\nexport const GET_TESTS_IN_APPOINTMENTS_SUCCESS = \"GET_TESTS_IN_APPOINTMENTS_SUCCESS\";\nexport const GET_TESTS_IN_APPOINTMENTS_FAIL = \"GET_TESTS_IN_APPOINTMENTS_FAIL\";\n\n\nexport const DELETE_TESTS_IN_APPOINTMENTS = \"DELETE_TESTS_IN_APPOINTMENTS\";\nexport const DELETE_TESTS_IN_APPOINTMENTS_SUCCESS = \"DELETE_TESTS_IN_APPOINTMENTS_SUCCESS\";\nexport const DELETE_TESTS_IN_APPOINTMENTS_FAIL = \"DELETE_TESTS_IN_APPOINTMENTS_FAIL\";\n\n\nexport const GET_ADVINVOICE_DETAIL = \"GET_ADVINVOICE_DETAIL\";\nexport const GET_ADVINVOICE_DETAIL_SUCCESS = \"GET_ADVINVOICE_DETAIL_SUCCESS\";\nexport const GET_ADVINVOICE_DETAIL_FAIL = \"GET_ADVINVOICE_DETAIL_FAIL\";\n\n/* PAYMENT */\nexport const UPDATE_PAYMENT_INFO = \"UPDATE_PAYMENT_INFO\";\nexport const UPDATE_PAYMENT_INFO_SUCCESS = \"UPDATE_PAYMENT_INFO_SUCCESS\";\nexport const UPDATE_PAYMENT_INFO_FAIL = \"UPDATE_PAYMENT_INFO_FAIL\";\n\n\n\n\n","import {\n GET_INVOICE_DETAIL,\n GET_INVOICE_DETAIL_FAIL,\n GET_INVOICE_DETAIL_SUCCESS,\n ////\n GET_TESTS_IN_APPOINTMENTS,\n GET_TESTS_IN_APPOINTMENTS_SUCCESS,\n GET_TESTS_IN_APPOINTMENTS_FAIL,\n\n DELETE_TESTS_IN_APPOINTMENTS,\n DELETE_TESTS_IN_APPOINTMENTS_SUCCESS,\n DELETE_TESTS_IN_APPOINTMENTS_FAIL,\n ////////\n GET_ADVINVOICE_DETAIL,\n GET_ADVINVOICE_DETAIL_FAIL,\n GET_ADVINVOICE_DETAIL_SUCCESS,\n UPDATE_PAYMENT_INFO,\n UPDATE_PAYMENT_INFO_SUCCESS,\n UPDATE_PAYMENT_INFO_FAIL,\n} from \"./actionTypes\";\n\nexport const getAdvInvoiceDetail = id => ({\n type: GET_ADVINVOICE_DETAIL,\n payload: id,\n});\n\nexport const getAdvInvoiceDetailSuccess = advinvoices => ({\n type: GET_ADVINVOICE_DETAIL_SUCCESS,\n payload: advinvoices,\n});\n\nexport const getAdvInvoiceDetailFail = error => ({\n type: GET_ADVINVOICE_DETAIL_FAIL,\n payload: error,\n});\n\nexport const getInvoiceDetail = id => ({\n type: GET_INVOICE_DETAIL,\n payload: id,\n});\n\nexport const getInvoiceDetailSuccess = invoices => ({\n type: GET_INVOICE_DETAIL_SUCCESS,\n payload: invoices,\n});\n\nexport const getInvoiceDetailFail = error => ({\n type: GET_INVOICE_DETAIL_FAIL,\n payload: error,\n});\n\n///////////////////\nexport const getTestsInAppointment = id => ({\n type: GET_TESTS_IN_APPOINTMENTS,\n payload: id,\n});\n\nexport const getTestsInAppointmentSuccess = invoices => ({\n type: GET_TESTS_IN_APPOINTMENTS_SUCCESS,\n payload: invoices,\n});\n\nexport const getTestsInAppointmentFail = error => ({\n type: GET_TESTS_IN_APPOINTMENTS_FAIL,\n payload: error,\n});\nexport const deleteTestsInAppointment = cemployee => ({\n type: DELETE_TESTS_IN_APPOINTMENTS,\n payload: cemployee,\n});\n\nexport const deleteTestsInAppointmentSuccess = cemployee => ({\n type: DELETE_TESTS_IN_APPOINTMENTS_SUCCESS,\n payload: cemployee,\n});\n\nexport const deleteTestsInAppointmentFail = error => ({\n type: DELETE_TESTS_IN_APPOINTMENTS_FAIL,\n payload: error,\n});\n\n////////////\n\n\nexport const updatePaymentInfo = id => ({\n type: UPDATE_PAYMENT_INFO,\n payload: id,\n});\n\nexport const updatePaymentInfoSuccess = paymentDetails => ({\n type: UPDATE_PAYMENT_INFO_SUCCESS,\n payload: paymentDetails,\n});\n\nexport const updatePaymentInfoFail = error => ({\n type: UPDATE_PAYMENT_INFO_FAIL,\n payload: error,\n});\n","/* ACCOUNT_STATEMENTS */\nexport const GET_ACCOUNT_STATEMENTS = \"GET_ACCOUNT_STATEMENTS\";\nexport const GET_ACCOUNT_STATEMENTS_SUCCESS = \"GET_ACCOUNT_STATEMENTS_SUCCESS\";\nexport const GET_ACCOUNT_STATEMENTS_FAIL = \"GET_ACCOUNT_STATEMENTS_FAIL\";\nexport const GET_BANK_STATEMENTS = \"GET_BANK_STATEMENTS\";\nexport const GET_BANK_STATEMENTS_SUCCESS = \"GET_BANK_STATEMENTS_SUCCESS\";\nexport const GET_BANK_STATEMENTS_FAIL = \"GET_BANK_STATEMENTS_FAIL\";\n","export const GET_LABS = \"get_labs\";\nexport const GET_LABS_SUCCESS = \"get_labs_success\";\nexport const GET_LABS_FAIL = \"get_labs_fail\";\n\nexport const GET_DONORS = \"get_donors\";\nexport const GET_DONORS_SUCCESS = \"get_donors_success\";\nexport const GET_DONORS_FAIL = \"get_donors_fail\";\n\nexport const GET_STAFF_PROFILE = \"GET_STAFF_PROFILE\";\nexport const GET_STAFF_PROFILE_SUCCESS = \"GET_STAFF_PROFILE_SUCCESS\";\nexport const GET_STAFF_PROFILE_FAIL = \"GET_STAFF_PROFILE_FAIL\";\n\n\n/* SHARES */\nexport const GET_ACCEPTED_LAB_ADVERTISEMENTS = \"GET_ACCEPTED_LAB_ADVERTISEMENTS\";\nexport const GET_ACCEPTED_LAB_ADVERTISEMENTS_SUCCESS =\n \"GET_ACCEPTED_LAB_ADVERTISEMENTS_SUCCESS\";\nexport const GET_ACCEPTED_LAB_ADVERTISEMENTS_FAIL = \"GET_ACCEPTED_LAB_ADVERTISEMENTS_FAIL\";\n\nexport const GET_IN_PAYMENT =\n \"GET_IN_PAYMENT\";\nexport const GET_IN_PAYMENT_SUCCESS =\n \"GET_IN_PAYMENT_SUCCESS\";\nexport const GET_IN_PAYMENT_FAIL =\n \"GET_IN_PAYMENT_FAIL\";\n\nexport const ADD_NEW_IN_PAYMENT = \"ADD_NEW_IN_PAYMENT\";\nexport const ADD_IN_PAYMENT_SUCCESS =\n \"ADD_IN_PAYMENT_SUCCESS\";\nexport const ADD_IN_PAYMENT_FAIL = \"ADD_IN_PAYMENT_FAIL\";\n","import {\n GET_ACCEPTED_LAB_ADVERTISEMENTS,\n GET_ACCEPTED_LAB_ADVERTISEMENTS_FAIL,\n GET_ACCEPTED_LAB_ADVERTISEMENTS_SUCCESS,\n GET_LABS,\n GET_LABS_SUCCESS,\n GET_LABS_FAIL,\n GET_DONORS,\n GET_DONORS_SUCCESS,\n GET_DONORS_FAIL,\n GET_IN_PAYMENT,\n GET_IN_PAYMENT_SUCCESS,\n GET_IN_PAYMENT_FAIL,\n ADD_NEW_IN_PAYMENT,\n ADD_IN_PAYMENT_SUCCESS,\n ADD_IN_PAYMENT_FAIL,\n GET_STAFF_PROFILE,\n GET_STAFF_PROFILE_FAIL,\n GET_STAFF_PROFILE_SUCCESS,\n} from \"./actionTypes\";\n\nexport const getStaffProfile = id => ({\n type: GET_STAFF_PROFILE,\n payload: id,\n});\n\nexport const getStaffProfileSuccess = staffProfiles => (\n console.log(\"actions staff profile\",staffProfiles),\n {\n type: GET_STAFF_PROFILE_SUCCESS,\n payload: staffProfiles,\n});\n\nexport const getStaffProfileFail = error => ({\n type: GET_STAFF_PROFILE_FAIL,\n payload: error,\n});\n\nexport const getAcceptedLabAdvertisements = () => ({\n type: GET_ACCEPTED_LAB_ADVERTISEMENTS,\n payload: {},\n});\n\nexport const getAcceptedLabAdvertisementsSuccess = advertisements => ({\n type: GET_ACCEPTED_LAB_ADVERTISEMENTS_SUCCESS,\n payload: advertisements,\n});\n\nexport const getAcceptedLabAdvertisementsFail = error => ({\n type: GET_ACCEPTED_LAB_ADVERTISEMENTS_FAIL,\n payload: error,\n});\nexport const getLabs = () => ({\n type: GET_LABS,\n});\n\nexport const getLabsSuccess = labs => ({\n type: GET_LABS_SUCCESS,\n payload: labs,\n});\n\nexport const getLabsFail = error => ({\n type: GET_LABS_FAIL,\n payload: error,\n});\nexport const getDonors = () => ({\n type: GET_DONORS,\n});\n\nexport const getDonorsSuccess = donors => ({\n type: GET_DONORS_SUCCESS,\n payload: donors,\n});\n\nexport const getDonorsFail = error => ({\n type: GET_DONORS_FAIL,\n payload: error,\n});\nexport const getInPayment = id => ({\n type: GET_IN_PAYMENT,\n payload: id,\n});\n\nexport const getInPaymentSuccess = inPayments => ({\n type: GET_IN_PAYMENT_SUCCESS,\n payload: inPayments,\n});\n\nexport const getInPaymentFail = error => ({\n type: GET_IN_PAYMENT_FAIL,\n payload: error,\n});\n// export const getInPayment = id => ({\n// type: GET_IN_PAYMENT,\n// payload: id,\n// });\n\n// export const getInPaymentSuccess = inPayments => ({\n// type: GET_IN_PAYMENT_SUCCESS,\n// payload: inPayments,\n// });\n\n// export const getInPaymentFail = error => ({\n// type: GET_IN_PAYMENT_FAIL,\n// payload: error,\n// });\n\nexport const addNewInPayment = (inPayment, id) => ({\n type: ADD_NEW_IN_PAYMENT,\n payload: { inPayment, id },\n});\n\nexport const addInPaymentSuccess = inPayment => ({\n type: ADD_IN_PAYMENT_SUCCESS,\n payload: inPayment,\n});\n\nexport const addInPaymentFail = error => ({\n type: ADD_IN_PAYMENT_FAIL,\n payload: error,\n});\n","export const GET_LABS_MOF = \"GET_LABS_MOF\";\nexport const GET_LABS_MOF_SUCCESS = \"GET_LABS_MOF_success\";\nexport const GET_LABS_MOF_FAIL = \"GET_LABS_MOF_fail\";\n\nexport const GET_LABS_C = \"GET_LABS_C\";\nexport const GET_LABS_C_SUCCESS = \"GET_LABS_C_success\";\nexport const GET_LABS_C_FAIL = \"GET_LABS_C_fail\";\n\nexport const GET_LIST_DONATIONAPPOINTMENT = \"GET_LIST_DONATIONAPPOINTMENT\";\nexport const GET_LIST_DONATIONAPPOINTMENT_SUCCESS = \"GET_LIST_DONATIONAPPOINTMENT_success\";\nexport const GET_LIST_DONATIONAPPOINTMENT_FAIL = \"GET_LIST_DONATIONAPPOINTMENT_fail\";\n\nexport const GET_LIST_CLABS = \"GET_LIST_CLABS\";\nexport const GET_LIST_CLABS_SUCCESS = \"GET_LIST_CLABS_success\";\nexport const GET_LIST_CLABS_FAIL = \"GET_LIST_CLABS_fail\";\n\nexport const GET_LIST_INVOICE = \"GET_LIST_INVOICE\";\nexport const GET_LIST_INVOICE_SUCCESS = \"GET_LIST_INVOICE_SUCCESS\";\nexport const GET_LIST_INVOICE_FAIL = \"GET_LIST_INVOICE_FAIL\";\n\nexport const GET_BANKS = \"get_banks\";\nexport const GET_BANKS_SUCCESS = \"get_banks_success\";\nexport const GET_BANKS_FAIL = \"get_banks_fail\";\n\nexport const GET_STAFF_PROFILE = \"GET_STAFF_PROFILE\";\nexport const GET_STAFF_PROFILE_SUCCESS = \"GET_STAFF_PROFILE_SUCCESS\";\nexport const GET_STAFF_PROFILE_FAIL = \"GET_STAFF_PROFILE_FAIL\";\n\nexport const GET_CORPORATE_PROFILE = \"GET_CORPORATE_PROFILE\";\nexport const GET_CORPORATE_PROFILE_SUCCESS = \"GET_CORPORATE_PROFILE_SUCCESS\";\nexport const GET_CORPORATE_PROFILE_FAIL = \"GET_CORPORATE_PROFILE_FAIL\";\n\nexport const GET_OUT_PAYMENT =\n \"GET_OUT_PAYMENT\";\nexport const GET_OUT_PAYMENT_SUCCESS =\n \"GET_OUT_PAYMENT_SUCCESS\";\nexport const GET_OUT_PAYMENT_FAIL =\n \"GET_OUT_PAYMENT_FAIL\";\n\nexport const ADD_NEW_OUT_PAYMENT = \"ADD_NEW_OUT_PAYMENT\";\nexport const ADD_OUT_PAYMENT_SUCCESS =\n \"ADD_OUT_PAYMENT_SUCCESS\";\nexport const ADD_OUT_PAYMENT_FAIL = \"ADD_OUT_PAYMENT_FAIL\";\n\nexport const ADD_NEW_CORPORATE_PAYMENT = \"ADD_NEW_CORPORATE_PAYMENT\";\nexport const ADD_CORPORATE_PAYMENT_SUCCESS =\n \"ADD_CORPORATE_PAYMENT_SUCCESS\";\nexport const ADD_CORPORATE_PAYMENT_FAIL = \"ADD_CORPORATE_PAYMENT_FAIL\";\n\nexport const ADD_NEW_INVOICE_ADJUSTMENT = \"ADD_NEW_INVOICE_ADJUSTMENT\";\nexport const ADD_INVOICE_ADJUSTMENT_SUCCESS =\n \"ADD_INVOICE_ADJUSTMENT_SUCCESS\";\nexport const ADD_INVOICE_ADJUSTMENT_FAIL = \"ADD_INVOICE_ADJUSTMENT_FAIL\";\n\nexport const GET_BANK_ACCOUNTS = \"GET_BANK_ACCOUNTS\";\nexport const GET_BANK_ACCOUNTS_SUCCESS =\n \"GET_BANK_ACCOUNTS_SUCCESS\";\nexport const GET_BANK_ACCOUNTS_FAIL = \"GET_BANK_ACCOUNTS_FAIL\";\n\nexport const GET_B2B_CLIENTS =\n \"GET_B2B_CLIENTS\";\nexport const GET_B2B_CLIENTS_SUCCESS =\n \"GET_B2B_CLIENTS_SUCCESS\";\nexport const GET_B2B_CLIENTS_FAIL =\n \"GET_B2B_CLIENTS_FAIL\";","import {\n GET_LABS_MOF,\n GET_LABS_MOF_SUCCESS,\n GET_LABS_MOF_FAIL,\n GET_LABS_C,\n GET_LABS_C_SUCCESS,\n GET_LABS_C_FAIL,\n GET_LIST_DONATIONAPPOINTMENT,\n GET_LIST_DONATIONAPPOINTMENT_SUCCESS,\n GET_LIST_DONATIONAPPOINTMENT_FAIL,\n GET_LIST_CLABS,\n GET_LIST_CLABS_SUCCESS,\n GET_LIST_CLABS_FAIL,\n GET_LIST_INVOICE,\n GET_LIST_INVOICE_SUCCESS,\n GET_LIST_INVOICE_FAIL,\n GET_B2B_CLIENTS,\n GET_B2B_CLIENTS_SUCCESS,\n GET_B2B_CLIENTS_FAIL,\n GET_OUT_PAYMENT,\n GET_OUT_PAYMENT_SUCCESS,\n GET_OUT_PAYMENT_FAIL,\n GET_BANKS,\n GET_BANKS_SUCCESS,\n GET_BANKS_FAIL,\n GET_BANK_ACCOUNTS,\n GET_BANK_ACCOUNTS_FAIL,\n GET_BANK_ACCOUNTS_SUCCESS,\n ADD_NEW_OUT_PAYMENT,\n ADD_OUT_PAYMENT_SUCCESS,\n ADD_OUT_PAYMENT_FAIL,\n ADD_NEW_CORPORATE_PAYMENT,\n ADD_CORPORATE_PAYMENT_SUCCESS,\n ADD_CORPORATE_PAYMENT_FAIL,\n ADD_NEW_INVOICE_ADJUSTMENT,\n ADD_INVOICE_ADJUSTMENT_SUCCESS,\n ADD_INVOICE_ADJUSTMENT_FAIL,\n GET_STAFF_PROFILE,\n GET_STAFF_PROFILE_FAIL,\n GET_STAFF_PROFILE_SUCCESS,\n GET_CORPORATE_PROFILE,\n GET_CORPORATE_PROFILE_FAIL,\n GET_CORPORATE_PROFILE_SUCCESS,\n} from \"./actionTypes\";\n\n// ----------- Corporate profile APIs actions -----------------\nexport const getCorporateProfileforpayment = id => ({\n type: GET_CORPORATE_PROFILE,\n payload: id,\n});\n\nexport const getCorporateProfileforpaymentSuccess = corporateProfiles => ({\n type: GET_CORPORATE_PROFILE_SUCCESS,\n payload: corporateProfiles,\n});\n\nexport const getCorporateProfileforpaymentFail = error => ({\n type: GET_CORPORATE_PROFILE_FAIL,\n payload: error,\n});\n\nexport const getStaffProfile = id => ({\n type: GET_STAFF_PROFILE,\n payload: id,\n});\n\nexport const getStaffProfileSuccess = staffProfiles => (\n console.log(\"actions staff profile\",staffProfiles),\n {\n type: GET_STAFF_PROFILE_SUCCESS,\n payload: staffProfiles,\n});\n\nexport const getStaffProfileFail = error => ({\n type: GET_STAFF_PROFILE_FAIL,\n payload: error,\n});\n\nexport const getBankAccounts = () => ({\n type: GET_BANK_ACCOUNTS,\n});\n\nexport const getBankAccountsSuccess = bankAccounts => ({\n type: GET_BANK_ACCOUNTS_SUCCESS,\n payload: bankAccounts,\n});\n\nexport const getBankAccountsFail = error => ({\n type: GET_BANK_ACCOUNTS_FAIL,\n payload: error,\n});\nexport const getBanks = () => ({\n type: GET_BANKS,\n});\n\nexport const getBanksSuccess = banks => ({\n type: GET_BANKS_SUCCESS,\n payload: banks,\n});\n\nexport const getBanksFail = error => ({\n type: GET_BANKS_FAIL,\n payload: error,\n});\nexport const getB2bClients = () => ({\n type: GET_B2B_CLIENTS,\n payload: {},\n});\n\nexport const getB2bClientsSuccess =\n b2bClients => ({\n type: GET_B2B_CLIENTS_SUCCESS,\n payload: b2bClients,\n });\n\nexport const getB2bClientsFail = error => ({\n type: GET_B2B_CLIENTS_FAIL,\n payload: error,\n});\nexport const getLabsMof = () => ({\n type: GET_LABS_MOF,\n});\n\nexport const getLabsMofSuccess = labsMof => ({\n type: GET_LABS_MOF_SUCCESS,\n payload: labsMof,\n});\n\nexport const getLabsMofFail = error => ({\n type: GET_LABS_MOF_FAIL,\n payload: error,\n});\n\nexport const getLabsc = id => ({\n type: GET_LABS_C,\n payload: id,\n});\n\nexport const getLabscSuccess = labsMof => ({\n type: GET_LABS_C_SUCCESS,\n payload: labsMof,\n});\n\nexport const getLabscFail = error => ({\n type: GET_LABS_C_FAIL,\n payload: error,\n});\n\nexport const getListDonationAppointment = () => ({\n type: GET_LIST_DONATIONAPPOINTMENT,\n});\n\nexport const getListDonationAppointmentSuccess = listDonation => ({\n type: GET_LIST_DONATIONAPPOINTMENT_SUCCESS,\n payload: listDonation,\n});\n\nexport const getListDonationAppointmentFail = error => ({\n type: GET_LIST_DONATIONAPPOINTMENT_FAIL,\n payload: error,\n});\n\nexport const getListCLabs = () => ({\n type: GET_LIST_CLABS,\n});\n\nexport const getListCLabsSuccess = listCLabs => ({\n type: GET_LIST_CLABS_SUCCESS,\n payload: listCLabs,\n});\n\nexport const getListCLabsFail = error => ({\n type: GET_LIST_CLABS_FAIL,\n payload: error,\n});\n\nexport const getListInvoice = () => ({\n type: GET_LIST_INVOICE,\n});\n\nexport const getListInvoiceSuccess = listInvoice => ({\n type: GET_LIST_INVOICE_SUCCESS,\n payload: listInvoice,\n});\n\nexport const getListInvoiceFail = error => ({\n type: GET_LIST_INVOICE_FAIL,\n payload: error,\n});\n\nexport const getOutPayment = id => ({\n type: GET_OUT_PAYMENT,\n payload: id,\n});\n\nexport const getOutPaymentSuccess = outPayments => ({\n type: GET_OUT_PAYMENT_SUCCESS,\n payload: outPayments,\n});\n\nexport const getOutPaymentFail = error => ({\n type: GET_OUT_PAYMENT_FAIL,\n payload: error,\n});\n// export const getOutPayment = id => ({\n// type: GET_OUT_PAYMENT,\n// payload: id,\n// });\n\n// export const getOutPaymentSuccess = outPayments => ({\n// type: GET_OUT_PAYMENT_SUCCESS,\n// payload: outPayments,\n// });\n\n// export const getOutPaymentFail = error => ({\n// type: GET_OUT_PAYMENT_FAIL,\n// payload: error,\n// });\n\nexport const addNewOutPayment = (outPayment, id) => ({\n type: ADD_NEW_OUT_PAYMENT,\n payload: { outPayment, id },\n});\n\nexport const addOutPaymentSuccess = outPayment => ({\n type: ADD_OUT_PAYMENT_SUCCESS,\n payload: outPayment,\n});\n\nexport const addOutPaymentFail = error => ({\n type: ADD_OUT_PAYMENT_FAIL,\n payload: error,\n});\nexport const addNewCorporatePayment = (outPayment, id) => ({\n type: ADD_NEW_CORPORATE_PAYMENT,\n payload: { outPayment, id },\n});\n\nexport const addCorporatePaymentSuccess = outPayment => (\n console.log(\"actions add corporate payment status\",outPayment),\n{\n \n type: ADD_CORPORATE_PAYMENT_SUCCESS,\n payload: outPayment,\n});\n\nexport const addCorporatePaymentFail = error => ({\n type: ADD_CORPORATE_PAYMENT_FAIL,\n payload: error,\n});\nexport const addNewInvoiceAdjustment = (outPayment, id) => ({\n type: ADD_NEW_INVOICE_ADJUSTMENT,\n payload: { outPayment, id },\n});\n\nexport const addInvoiceAdjustmentSuccess = outPayment => ({\n type: ADD_INVOICE_ADJUSTMENT_SUCCESS,\n payload: outPayment,\n});\n\nexport const addInvoiceAdjustmentFail = error => ({\n type: ADD_INVOICE_ADJUSTMENT_FAIL,\n payload: error,\n});","\nexport const GET_BANKS = \"get_banks\";\nexport const GET_BANKS_SUCCESS = \"get_banks_success\";\nexport const GET_BANKS_FAIL = \"get_banks_fail\";\n\nexport const GET_BANK_TRANSFER =\n \"GET_BANK_TRANSFER\";\nexport const GET_BANK_TRANSFER_SUCCESS =\n \"GET_BANK_TRANSFER_SUCCESS\";\nexport const GET_BANK_TRANSFER_FAIL =\n \"GET_BANK_TRANSFER_FAIL\";\n\nexport const ADD_NEW_BANK_TRANSFER = \"ADD_NEW_BANK_TRANSFER\";\nexport const ADD_BANK_TRANSFER_SUCCESS =\n \"ADD_BANK_TRANSFER_SUCCESS\";\nexport const ADD_BANK_TRANSFER_FAIL = \"ADD_BANK_TRANSFER_FAIL\";\n\nexport const GET_BANK_ACCOUNTS = \"GET_BANK_ACCOUNTS\";\nexport const GET_BANK_ACCOUNTS_SUCCESS =\n \"GET_BANK_ACCOUNTS_SUCCESS\";\nexport const GET_BANK_ACCOUNTS_FAIL = \"GET_BANK_ACCOUNTS_FAIL\";\n\nexport const UPDATE_BANK_TRANSFER = \"UPDATE_BANK_TRANSFER\";\nexport const UPDATE_BANK_TRANSFER_SUCCESS =\n \"UPDATE_BANK_TRANSFER_SUCCESS\";\nexport const UPDATE_BANK_TRANSFER_FAIL =\n \"UPDATE_BANK_TRANSFER_FAIL\";\n","import {\n GET_BANK_TRANSFER,\n GET_BANK_TRANSFER_SUCCESS,\n GET_BANK_TRANSFER_FAIL,\n GET_BANKS,\n GET_BANKS_SUCCESS,\n GET_BANKS_FAIL,\n GET_BANK_ACCOUNTS,\n GET_BANK_ACCOUNTS_FAIL,\n GET_BANK_ACCOUNTS_SUCCESS,\n ADD_NEW_BANK_TRANSFER,\n ADD_BANK_TRANSFER_SUCCESS,\n ADD_BANK_TRANSFER_FAIL,\n UPDATE_BANK_TRANSFER,\n UPDATE_BANK_TRANSFER_SUCCESS,\n UPDATE_BANK_TRANSFER_FAIL,\n} from \"./actionTypes\";\n\nexport const getBankAccounts = () => ({\n type: GET_BANK_ACCOUNTS,\n});\n\nexport const getBankAccountsSuccess = bankAccounts => ({\n type: GET_BANK_ACCOUNTS_SUCCESS,\n payload: bankAccounts,\n});\n\nexport const getBankAccountsFail = error => ({\n type: GET_BANK_ACCOUNTS_FAIL,\n payload: error,\n});\nexport const getBanks = () => ({\n type: GET_BANKS,\n});\n\nexport const getBanksSuccess = banks => ({\n type: GET_BANKS_SUCCESS,\n payload: banks,\n});\n\nexport const getBanksFail = error => ({\n type: GET_BANKS_FAIL,\n payload: error,\n});\nexport const getBankTransfer = id => ({\n type: GET_BANK_TRANSFER,\n payload: id,\n});\n\nexport const getBankTransferSuccess = bankTransfers => ({\n type: GET_BANK_TRANSFER_SUCCESS,\n payload: bankTransfers,\n});\n\nexport const getBankTransferFail = error => ({\n type: GET_BANK_TRANSFER_FAIL,\n payload: error,\n});\n\nexport const addNewBankTransfer = (bankTransfer, id) => ({\n type: ADD_NEW_BANK_TRANSFER,\n payload: { bankTransfer, id },\n});\n\nexport const addBankTransferSuccess = bankTransfer => ({\n type: ADD_BANK_TRANSFER_SUCCESS,\n payload: bankTransfer,\n});\n\nexport const addBankTransferFail = error => ({\n type: ADD_BANK_TRANSFER_FAIL,\n payload: error,\n});\n\nexport const updateBankTransfer = bankTransfer => ({\n type: UPDATE_BANK_TRANSFER,\n payload: bankTransfer,\n});\n\nexport const updateBankTransferSuccess = bankTransfer => ({\n type: UPDATE_BANK_TRANSFER_SUCCESS,\n payload: bankTransfer,\n});\n\nexport const updateBankTransferFail = error => ({\n type: UPDATE_BANK_TRANSFER_FAIL,\n payload: error,\n});","export const GET_CSR_LIST = \"GET_CSR_LIST\";\nexport const GET_CSR_LIST_SUCCESS = \"GET_CSR_LIST_SUCCESS\";\nexport const GET_CSR_LIST_FAIL = \"GET_CSR_LIST_FAIL\";\n\nexport const GET_MARKETERS_LIST = \"GET_MARKETERS_LIST\";\nexport const GET_MARKETERS_LIST_SUCCESS = \"GET_MARKETERS_LIST_SUCCESS\";\nexport const GET_MARKETERS_LIST_FAIL = \"GET_MARKETERS_LIST_FAIL\";\n\n\nexport const GET_AUDITOR_LIST = \"GET_AUDITOR_LIST\";\nexport const GET_AUDITOR_LIST_SUCCESS = \"GET_AUDITOR_LIST_SUCCESS\";\nexport const GET_AUDITOR_LIST_FAIL = \"GET_AUDITOR_LIST_FAIL\";\n\nexport const GET_FINANCE_OFFICER_LIST = \"GET_FINANCE_OFFICER_LIST\";\nexport const GET_FINANCE_OFFICER_LIST_SUCCESS =\n \"GET_FINANCE_OFFICER_LIST_SUCCESS\";\nexport const GET_FINANCE_OFFICER_LIST_FAIL = \"GET_FINANCE_OFFICER_LIST_FAIL\";\n\n// Territories\nexport const GET_TERRITORIES_LIST =\n \"GET_TERRITORIES_LIST\";\nexport const GET_TERRITORIES_LIST_SUCCESS =\n \"GET_TERRITORIES_LIST_SUCCESS\";\nexport const GET_TERRITORIES_LIST_FAIL =\n \"GET_TERRITORIES_LIST_FAIL\";\n\nexport const ADD_STAFF = \"ADD_STAFF\";\nexport const ADD_STAFF_SUCCESS = \"ADD_STAFF_SUCCESS\";\nexport const ADD_STAFF_FAIL = \"ADD_STAFF_FAIL\";\n\nexport const UPDATE_STAFF = \"UPDATE_STAFF\";\nexport const UPDATE_STAFF_SUCCESS = \"UPDATE_STAFF_SUCCESS\";\nexport const UPDATE_STAFF_FAIL = \"UPDATE_STAFF_FAIL\";\n\nexport const DELETE_STAFF = \"DELETE_STAFF\";\nexport const DELETE_STAFF_SUCCESS = \"DELETE_STAFF_SUCCESS\";\nexport const DELETE_STAFF_FAIL = \"DELETE_STAFF_FAIL\";","import {\n GET_CSR_LIST,\n GET_CSR_LIST_SUCCESS,\n GET_CSR_LIST_FAIL,\n GET_AUDITOR_LIST,\n GET_AUDITOR_LIST_SUCCESS,\n GET_AUDITOR_LIST_FAIL,\n GET_FINANCE_OFFICER_LIST,\n GET_FINANCE_OFFICER_LIST_SUCCESS,\n GET_FINANCE_OFFICER_LIST_FAIL,\n ADD_STAFF,\n ADD_STAFF_SUCCESS,\n UPDATE_STAFF,\n UPDATE_STAFF_SUCCESS,\n UPDATE_STAFF_FAIL,\n DELETE_STAFF,\n DELETE_STAFF_SUCCESS,\n DELETE_STAFF_FAIL,\n GET_TERRITORIES_LIST,\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n ADD_STAFF_FAIL,\n\n GET_MARKETERS_LIST,\n GET_MARKETERS_LIST_SUCCESS,\n GET_MARKETERS_LIST_FAIL,\n} from \"./actionTypes\";\n\n// Territories\nexport const getTerritoriesList = () => ({\n type: GET_TERRITORIES_LIST,\n payload: {},\n});\n\n\nexport const getTerritoriesListSuccess =\n territories => ({\n type: GET_TERRITORIES_LIST_SUCCESS,\n payload: territories,\n });\n\nexport const getTerritoriesListFail = error => ({\n type: GET_TERRITORIES_LIST_FAIL,\n payload: error,\n});\nexport const getCSRList = () => ({\n type: GET_CSR_LIST,\n payload: {},\n});\n\nexport const getCSRListSuccess = csrList => ({\n type: GET_CSR_LIST_SUCCESS,\n payload: csrList,\n});\n\nexport const getCSRListFail = error => ({\n type: GET_CSR_LIST_FAIL,\n payload: error,\n});\n\nexport const getMarketersList = () => ({\n type: GET_MARKETERS_LIST,\n payload: {},\n});\n\nexport const getMarketersListSuccess = marketersList => ({\n type: GET_MARKETERS_LIST_SUCCESS,\n payload: marketersList,\n});\n\nexport const getMarketersListFail = error => ({\n type: GET_MARKETERS_LIST_FAIL,\n payload: error,\n});\nexport const getAuditorList = () => ({\n type: GET_AUDITOR_LIST,\n payload: {},\n});\n\nexport const getAuditorListSuccess = auditorList => ({\n type: GET_AUDITOR_LIST_SUCCESS,\n payload: auditorList,\n});\n\nexport const getAuditorListFail = error => ({\n type: GET_AUDITOR_LIST_FAIL,\n payload: error,\n});\n\nexport const getFinanceOfficerList = () => ({\n type: GET_FINANCE_OFFICER_LIST,\n payload: {},\n});\n\nexport const getFinanceOfficerListSuccess = financeOfficerList => ({\n type: GET_FINANCE_OFFICER_LIST_SUCCESS,\n payload: financeOfficerList,\n});\n\nexport const getFinanceOfficerListFail = error => ({\n type: GET_FINANCE_OFFICER_LIST_FAIL,\n payload: error,\n});\n\nexport const addStaff = (staff, id) => ({\n type: ADD_STAFF,\n payload: { staff, id },\n});\n\nexport const addStaffSuccess = (staff, id) => ({\n type: ADD_STAFF_SUCCESS,\n payload: { staff, id },\n});\n\nexport const addStaffFail = (staff, id) => ({\n type: ADD_STAFF_FAIL,\n payload: { staff, id },\n});\n\nexport const updateStaff = staff => ({\n type: UPDATE_STAFF,\n payload: staff,\n});\n\nexport const updateStaffSuccess = staff => ({\n type: UPDATE_STAFF_SUCCESS,\n payload: staff,\n});\n\nexport const updateStaffFail = error => ({\n type: UPDATE_STAFF_FAIL,\n payload: error,\n});\n\nexport const deleteStaff = staff => ({\n type: DELETE_STAFF,\n payload: staff,\n});\n\nexport const deleteStaffSuccess = staff => ({\n type: DELETE_STAFF_SUCCESS,\n payload: staff,\n});\n\nexport const deleteStaffFail = error => ({\n type: DELETE_STAFF_FAIL,\n payload: error,\n});\n","/* STAFF PROFILE */\nexport const GET_ASSIGNED_AUDITS = \"GET_ASSIGNED_AUDITS\";\nexport const GET_ASSIGNED_AUDITS_SUCCESS = \"GET_ASSIGNED_AUDITS_SUCCESS\";\nexport const GET_ASSIGNED_AUDITS_FAIL = \"GET_ASSIGNED_AUDITS_FAIL\";\n\nexport const GET_LAB_AUDITS = \"GET_LAB_AUDITS\";\nexport const GET_LAB_AUDITS_SUCCESS = \"GET_LAB_AUDITS_SUCCESS\";\nexport const GET_LAB_AUDITS_FAIL = \"GET_LAB_AUDITS_FAIL\";\n\nexport const ADD_NEW_AUDIT = \"ADD_NEW_AUDIT\";\nexport const ADD_AUDIT_SUCCESS = \"ADD_AUDIT_SUCCESS\";\nexport const ADD_AUDIT_FAIL = \"ADD_AUDIT_FAIL\";\n\nexport const UPDATE_ASSIGNED_AUDITS = \"UPDATE_ASSIGNED_AUDITS\";\nexport const UPDATE_ASSIGNED_AUDITS_SUCCESS = \"UPDATE_ASSIGNED_AUDITS_SUCCESS\";\nexport const UPDATE_ASSIGNED_AUDITS_FAIL = \"UPDATE_ASSIGNED_AUDITS_FAIL\";\n\nexport const GET_AUDITORS_COMPLETED_AUDITS = \"GET_AUDITORS_COMPLETED_AUDITS\";\nexport const GET_AUDITORS_COMPLETED_AUDITS_SUCCESS = \"GET_AUDITORS_COMPLETED_AUDITS_SUCCESS\";\nexport const GET_AUDITORS_COMPLETED_AUDITS_FAIL = \"GET_AUDITORS_COMPLETED_AUDITS_FAIL\";\n\nexport const UPDATE_AUDITS_STATUS = \"UPDATE_AUDITS_STATUS\";\nexport const UPDATE_AUDITS_STATUS_SUCCESS = \"UPDATE_AUDITS_STATUS_SUCCESS\";\nexport const UPDATE_AUDITS_STATUS_FAIL = \"UPDATE_AUDITS_STATUS_FAIL\";","import {\n GET_ASSIGNED_AUDITS,\n GET_ASSIGNED_AUDITS_FAIL,\n GET_ASSIGNED_AUDITS_SUCCESS,\n GET_LAB_AUDITS,\n GET_LAB_AUDITS_FAIL,\n GET_LAB_AUDITS_SUCCESS,\n ADD_NEW_AUDIT,\n ADD_AUDIT_SUCCESS,\n ADD_AUDIT_FAIL,\n GET_AUDITORS_COMPLETED_AUDITS,\n GET_AUDITORS_COMPLETED_AUDITS_FAIL,\n GET_AUDITORS_COMPLETED_AUDITS_SUCCESS,\n UPDATE_ASSIGNED_AUDITS,\n UPDATE_ASSIGNED_AUDITS_SUCCESS,\n UPDATE_ASSIGNED_AUDITS_FAIL,\n UPDATE_AUDITS_STATUS,\n UPDATE_AUDITS_STATUS_SUCCESS,\n UPDATE_AUDITS_STATUS_FAIL,\n} from \"./actionTypes\";\n\n//////////////////////////\nexport const UpdateAuditStatus = audit => (\n {\n type: UPDATE_AUDITS_STATUS,\n payload: audit,\n});\n\nexport const UpdateAuditStatusSuccess = audit => ({\n type: UPDATE_AUDITS_STATUS_SUCCESS,\n payload: audit,\n});\n\nexport const UpdateAuditStatusFail = error => ({\n type: UPDATE_AUDITS_STATUS_FAIL,\n payload: error,\n});\n// ----------- Staff profile APIs actions -----------------\nexport const getAssignedAudits = id => ({\n type: GET_ASSIGNED_AUDITS,\n payload: id,\n});\n\nexport const getAssignedAuditsSuccess = assignedAudits => ({\n type: GET_ASSIGNED_AUDITS_SUCCESS,\n payload: assignedAudits,\n});\n\nexport const getAssignedAuditsFail = error => ({\n type: GET_ASSIGNED_AUDITS_FAIL,\n payload: error,\n});\nexport const addNewAudit = (audit, id) => (\n {\n type: ADD_NEW_AUDIT,\n payload: { audit, id },\n});\n\nexport const addAuditSuccess = audit => ({\n type: ADD_AUDIT_SUCCESS,\n payload: audit,\n});\n\nexport const addAuditFail = error => ({\n type: ADD_AUDIT_FAIL,\n payload: error,\n});\n\nexport const getLabAudits = id => ({\n type: GET_LAB_AUDITS,\n payload: id,\n});\n\nexport const getLabAuditsSuccess = labAudits => ({\n type: GET_LAB_AUDITS_SUCCESS,\n payload: labAudits,\n});\n\nexport const getLabAuditsFail = error => ({\n type: GET_LAB_AUDITS_FAIL,\n payload: error,\n});\n\n\nexport const updateAssignedAudits = assignedAudits => ({\n type: UPDATE_ASSIGNED_AUDITS,\n payload: { assignedAudits },\n});\n\nexport const updateAssignedAuditsSuccess = assignedAudits => ({\n type: UPDATE_ASSIGNED_AUDITS_SUCCESS,\n payload: assignedAudits,\n});\n\nexport const updateAssignedAuditsFail = error => ({\n type: UPDATE_ASSIGNED_AUDITS_FAIL,\n payload: error,\n});\n\n//Completed audits\nexport const getAuditorsCompletedAudits = id => ({\n type: GET_AUDITORS_COMPLETED_AUDITS,\n payload: id,\n});\n\nexport const getAuditorsCompletedAuditsSuccess = completedAudits => ({\n type: GET_AUDITORS_COMPLETED_AUDITS_SUCCESS,\n payload: completedAudits,\n});\n\nexport const getAuditorsCompletedAuditsFail = error => ({\n type: GET_AUDITORS_COMPLETED_AUDITS_FAIL,\n payload: error,\n});\n","export const GET_PENDING_CORPORATE = \"GET_PENDING_CORPORATE\";\nexport const GET_PENDING_CORPORATE_SUCCESS = \"GET_PENDING_CORPORATE_SUCCESS\";\nexport const GET_PENDING_CORPORATE_FAIL = \"GET_PENDING_CORPORATE_FAIL\";\n\nexport const GET_APPROVED_CORPORATE = \"GET_APPROVED_CORPORATE\";\nexport const GET_APPROVED_CORPORATE_SUCCESS = \"GET_APPROVED_CORPORATE_SUCCESS\";\nexport const GET_APPROVED_CORPORATE_FAIL = \"GET_APPROVED_CORPORATE_FAIL\";\n\nexport const GET_UNAPPROVED_CORPORATE = \"GET_UNAPPROVED_CORPORATE\";\nexport const GET_UNAPPROVED_CORPORATE_SUCCESS = \"GET_UNAPPROVED_CORPORATE_SUCCESS\";\nexport const GET_UNAPPROVED_CORPORATE_FAIL = \"GET_UNAPPROVED_CORPORATE_FAIL\";\n\nexport const APPROVE_UNAPPROVE_CORPORATE = \"APPROVE_UNAPPROVE_CORPORATE\";\nexport const APPROVE_UNAPPROVE_CORPORATE_SUCCESS = \"APPROVE_UNAPPROVE_CORPORATE_SUCCESS\";\nexport const APPROVE_UNAPPROVE_CORPORATE_FAIL = \"APPROVE_UNAPPROVE_CORPORATE_FAIL\";\n\n// -------------------- LAB ACTION TYPES --------------------\nexport const GET_PENDING_LABS = \"GET_PENDING_LABS\";\nexport const GET_PENDING_LABS_SUCCESS = \"GET_PENDING_LABS_SUCCESS\";\nexport const GET_PENDING_LABS_FAIL = \"GET_PENDING_LABS_FAIL\";\n\nexport const GET_APPROVED_LABS = \"GET_APPROVED_LABS\";\nexport const GET_APPROVED_LABS_SUCCESS = \"GET_APPROVED_LABS_SUCCESS\";\nexport const GET_APPROVED_LABS_FAIL = \"GET_APPROVED_LABS_FAIL\";\n\nexport const GET_UNAPPROVED_LABS = \"GET_UNAPPROVED_LABS\";\nexport const GET_UNAPPROVED_LABS_SUCCESS = \"GET_UNAPPROVED_LABS_SUCCESS\";\nexport const GET_UNAPPROVED_LABS_FAIL = \"GET_UNAPPROVED_LABS_FAIL\";\n\nexport const APPROVE_UNAPPROVE_LAB = \"APPROVE_UNAPPROVE_LAB\";\nexport const APPROVE_UNAPPROVE_LAB_SUCCESS = \"APPROVE_UNAPPROVE_LAB_SUCCESS\";\nexport const APPROVE_UNAPPROVE_LAB_FAIL = \"APPROVE_UNAPPROVE_LAB_FAIL\";\n\n// -------------------- B2B ACTION TYPES --------------------\nexport const GET_PENDING_B2B_CLIENTS = \"GET_PENDING_B2B_CLIENTS\";\nexport const GET_PENDING_B2B_CLIENTS_SUCCESS =\n \"GET_PENDING_B2B_CLIENTS_SUCCESS\";\nexport const GET_PENDING_B2B_CLIENTS_FAIL = \"GET_PENDING_B2B_CLIENTS_FAIL\";\n\nexport const GET_APPROVED_B2B_CLIENTS = \"GET_APPROVED_B2B_CLIENTS\";\nexport const GET_APPROVED_B2B_CLIENTS_SUCCESS =\n \"GET_APPROVED_B2B_CLIENTS_SUCCESS\";\nexport const GET_APPROVED_B2B_CLIENTS_FAIL = \"GET_APPROVED_B2B_CLIENTS_FAIL\";\n\nexport const GET_UNAPPROVED_B2B_CLIENTS = \"GET_UNAPPROVED_B2B_CLIENTS\";\nexport const GET_UNAPPROVED_B2B_CLIENTS_SUCCESS =\n \"GET_UNAPPROVED_B2B_CLIENTS_SUCCESS\";\nexport const GET_UNAPPROVED_B2B_CLIENTS_FAIL =\n \"GET_UNAPPROVED_B2B_CLIENTS_FAIL\";\n\nexport const APPROVE_UNAPPROVE_B2B_CLIENT = \"APPROVE_UNAPPROVE_B2B_CLIENT\";\nexport const APPROVE_UNAPPROVE_B2B_CLIENT_SUCCESS =\n \"APPROVE_UNAPPROVE_B2B_CLIENT_SUCCESS\";\nexport const APPROVE_UNAPPROVE_B2B_CLIENT_FAIL =\n \"APPROVE_UNAPPROVE_B2B_CLIENT_FAIL\";\n\n// -------------------- DONOR ACTION TYPES --------------------\nexport const GET_PENDING_DONORS = \"GET_PENDING_DONORS\";\nexport const GET_PENDING_DONORS_SUCCESS = \"GET_PENDING_DONORS_SUCCESS\";\nexport const GET_PENDING_DONORS_FAIL = \"GET_PENDING_DONORS_FAIL\";\n\nexport const GET_APPROVED_DONORS = \"GET_APPROVED_DONORS\";\nexport const GET_APPROVED_DONORS_SUCCESS = \"GET_APPROVED_DONORS_SUCCESS\";\nexport const GET_APPROVED_DONORS_FAIL = \"GET_APPROVED_DONORS_FAIL\";\n\nexport const GET_UNAPPROVED_DONORS = \"GET_UNAPPROVED_DONORS\";\nexport const GET_UNAPPROVED_DONORS_SUCCESS = \"GET_UNAPPROVED_DONORS_SUCCESS\";\nexport const GET_UNAPPROVED_DONORS_FAIL = \"GET_UNAPPROVED_DONORS_FAIL\";\n\nexport const APPROVE_UNAPPROVE_DONOR = \"APPROVE_UNAPPROVE_DONOR\";\nexport const APPROVE_UNAPPROVE_DONOR_SUCCESS =\n \"APPROVE_UNAPPROVE_DONOR_SUCCESS\";\nexport const APPROVE_UNAPPROVE_DONOR_FAIL = \"APPROVE_UNAPPROVE_DONOR_FAIL\";\n","import {\n GET_PENDING_CORPORATE,\n GET_PENDING_CORPORATE_SUCCESS,\n GET_PENDING_CORPORATE_FAIL,\n GET_APPROVED_CORPORATE,\n GET_APPROVED_CORPORATE_SUCCESS,\n GET_APPROVED_CORPORATE_FAIL,\n GET_UNAPPROVED_CORPORATE,\n GET_UNAPPROVED_CORPORATE_SUCCESS,\n GET_UNAPPROVED_CORPORATE_FAIL,\n APPROVE_UNAPPROVE_CORPORATE,\n APPROVE_UNAPPROVE_CORPORATE_SUCCESS,\n APPROVE_UNAPPROVE_CORPORATE_FAIL,\n\n GET_PENDING_LABS,\n GET_PENDING_LABS_SUCCESS,\n GET_PENDING_LABS_FAIL,\n GET_APPROVED_LABS,\n GET_APPROVED_LABS_SUCCESS,\n GET_APPROVED_LABS_FAIL,\n GET_UNAPPROVED_LABS,\n GET_UNAPPROVED_LABS_SUCCESS,\n GET_UNAPPROVED_LABS_FAIL,\n APPROVE_UNAPPROVE_LAB,\n APPROVE_UNAPPROVE_LAB_SUCCESS,\n APPROVE_UNAPPROVE_LAB_FAIL,\n GET_PENDING_B2B_CLIENTS,\n GET_PENDING_B2B_CLIENTS_SUCCESS,\n GET_PENDING_B2B_CLIENTS_FAIL,\n GET_APPROVED_B2B_CLIENTS,\n GET_APPROVED_B2B_CLIENTS_SUCCESS,\n GET_APPROVED_B2B_CLIENTS_FAIL,\n GET_UNAPPROVED_B2B_CLIENTS,\n GET_UNAPPROVED_B2B_CLIENTS_SUCCESS,\n GET_UNAPPROVED_B2B_CLIENTS_FAIL,\n APPROVE_UNAPPROVE_B2B_CLIENT,\n APPROVE_UNAPPROVE_B2B_CLIENT_SUCCESS,\n APPROVE_UNAPPROVE_B2B_CLIENT_FAIL,\n GET_PENDING_DONORS,\n GET_PENDING_DONORS_SUCCESS,\n GET_PENDING_DONORS_FAIL,\n GET_APPROVED_DONORS,\n GET_APPROVED_DONORS_SUCCESS,\n GET_APPROVED_DONORS_FAIL,\n GET_UNAPPROVED_DONORS,\n GET_UNAPPROVED_DONORS_SUCCESS,\n GET_UNAPPROVED_DONORS_FAIL,\n APPROVE_UNAPPROVE_DONOR,\n APPROVE_UNAPPROVE_DONOR_SUCCESS,\n APPROVE_UNAPPROVE_DONOR_FAIL,\n} from \"./actionTypes\";\n\nexport const getApprovedCorporate = () => ({\n type: GET_APPROVED_CORPORATE,\n payload: {},\n});\n\nexport const getApprovedCorporateSuccess = approvedCorporate => ({\n type: GET_APPROVED_CORPORATE_SUCCESS,\n payload: approvedCorporate,\n});\n\nexport const getApprovedCorporateFail = error => ({\n type: GET_APPROVED_CORPORATE_FAIL,\n payload: error,\n});\nexport const getUnapprovedCorporate = () => ({\n type: GET_UNAPPROVED_CORPORATE,\n payload: {},\n});\n\nexport const getUnapprovedCorporateSuccess = UnapprovedCorporate => ({\n type: GET_UNAPPROVED_CORPORATE_SUCCESS,\n payload: UnapprovedCorporate,\n});\n\nexport const getUnapprovedCorporateFail = error => ({\n type: GET_UNAPPROVED_CORPORATE_FAIL,\n payload: error,\n});\nexport const getPendingCorporate = () => ({\n type: GET_PENDING_CORPORATE,\n payload: {},\n});\n\nexport const getPendingCorporateSuccess = pendingCorporate => ({\n type: GET_PENDING_CORPORATE_SUCCESS,\n payload: pendingCorporate,\n});\n\nexport const getPendingCorporateFail = error => ({\n type: GET_PENDING_CORPORATE_FAIL,\n payload: error,\n});\n\nexport const approveUnapproveCorporate = data => ({\n type: APPROVE_UNAPPROVE_CORPORATE,\n payload: { data },\n});\n\nexport const approveUnapproveCorporateSuccess = success => ({\n type: APPROVE_UNAPPROVE_CORPORATE_SUCCESS,\n payload: success,\n});\n\nexport const approveUnapproveCorporateFail = error => ({\n type: APPROVE_UNAPPROVE_CORPORATE_FAIL,\n payload: error,\n});\n\n// -------------------- LAB ACTIONS --------------------\nexport const getPendingLabs = () => ({\n type: GET_PENDING_LABS,\n payload: {},\n});\n\nexport const getPendingLabsSuccess = pendingLabs => ({\n type: GET_PENDING_LABS_SUCCESS,\n payload: pendingLabs,\n});\n\nexport const getPendingLabsFail = error => ({\n type: GET_PENDING_LABS_FAIL,\n payload: error,\n});\n\nexport const getApprovedLabs = () => ({\n type: GET_APPROVED_LABS,\n payload: {},\n});\n\nexport const getApprovedLabsSuccess = approvedLabs => ({\n type: GET_APPROVED_LABS_SUCCESS,\n payload: approvedLabs,\n});\n\nexport const getApprovedLabsFail = error => ({\n type: GET_APPROVED_LABS_FAIL,\n payload: error,\n});\n\nexport const getUnapprovedLabs = () => ({\n type: GET_UNAPPROVED_LABS,\n payload: {},\n});\n\nexport const getUnapprovedLabsSuccess = unapprovedLabs => ({\n type: GET_UNAPPROVED_LABS_SUCCESS,\n payload: unapprovedLabs,\n});\n\nexport const getUnapprovedLabsFail = error => ({\n type: GET_UNAPPROVED_LABS_FAIL,\n payload: error,\n});\n\nexport const approveUnapproveLab = data => ({\n type: APPROVE_UNAPPROVE_LAB,\n payload: { data },\n});\n\nexport const approveUnapproveLabSuccess = success => ({\n type: APPROVE_UNAPPROVE_LAB_SUCCESS,\n payload: success,\n});\n\nexport const approveUnapproveLabFail = error => ({\n type: APPROVE_UNAPPROVE_LAB_FAIL,\n payload: error,\n});\n\n// -------------------- B2B ACTIONS --------------------\nexport const getPendingB2BClients = () => ({\n type: GET_PENDING_B2B_CLIENTS,\n payload: {},\n});\n\nexport const getPendingB2BClientsSuccess = pendingB2BClients => ({\n type: GET_PENDING_B2B_CLIENTS_SUCCESS,\n payload: pendingB2BClients,\n});\n\nexport const getPendingB2BClientsFail = error => ({\n type: GET_PENDING_B2B_CLIENTS_FAIL,\n payload: error,\n});\n\nexport const getApprovedB2BClients = () => ({\n type: GET_APPROVED_B2B_CLIENTS,\n payload: {},\n});\n\nexport const getApprovedB2BClientsSuccess = approvedB2BClients => ({\n type: GET_APPROVED_B2B_CLIENTS_SUCCESS,\n payload: approvedB2BClients,\n});\n\nexport const getApprovedB2BClientsFail = error => ({\n type: GET_APPROVED_B2B_CLIENTS_FAIL,\n payload: error,\n});\n\nexport const getUnapprovedB2BClients = () => ({\n type: GET_UNAPPROVED_B2B_CLIENTS,\n payload: {},\n});\n\nexport const getUnapprovedB2BClientsSuccess = unapprovedB2BClients => ({\n type: GET_UNAPPROVED_B2B_CLIENTS_SUCCESS,\n payload: unapprovedB2BClients,\n});\n\nexport const getUnapprovedB2BClientsFail = error => ({\n type: GET_UNAPPROVED_B2B_CLIENTS_FAIL,\n payload: error,\n});\n\nexport const approveUnapproveB2BClient = data => ({\n type: APPROVE_UNAPPROVE_B2B_CLIENT,\n payload: { data },\n});\n\nexport const approveUnapproveB2BClientSuccess = success => ({\n type: APPROVE_UNAPPROVE_B2B_CLIENT_SUCCESS,\n payload: success,\n});\n\nexport const approveUnapproveB2BClientFail = error => ({\n type: APPROVE_UNAPPROVE_B2B_CLIENT_FAIL,\n payload: error,\n});\n\n// -------------------- DONOR ACTIONS --------------------\nexport const getPendingDonors = () => ({\n type: GET_PENDING_DONORS,\n payload: {},\n});\n\nexport const getPendingDonorsSuccess = pendingDonors => ({\n type: GET_PENDING_DONORS_SUCCESS,\n payload: pendingDonors,\n});\n\nexport const getPendingDonorsFail = error => ({\n type: GET_PENDING_DONORS_FAIL,\n payload: error,\n});\n\nexport const getApprovedDonors = () => ({\n type: GET_APPROVED_DONORS,\n payload: {},\n});\n\nexport const getApprovedDonorsSuccess = approvedDonors => ({\n type: GET_APPROVED_DONORS_SUCCESS,\n payload: approvedDonors,\n});\n\nexport const getApprovedDonorsFail = error => ({\n type: GET_APPROVED_DONORS_FAIL,\n payload: error,\n});\n\nexport const getUnapprovedDonors = () => ({\n type: GET_UNAPPROVED_DONORS,\n payload: {},\n});\n\nexport const getUnapprovedDonorsSuccess = unapprovedDonors => ({\n type: GET_UNAPPROVED_DONORS_SUCCESS,\n payload: unapprovedDonors,\n});\n\nexport const getUnapprovedDonorsFail = error => ({\n type: GET_UNAPPROVED_DONORS_FAIL,\n payload: error,\n});\n\nexport const approveUnapproveDonor = data => ({\n type: APPROVE_UNAPPROVE_DONOR,\n payload: { data },\n});\n\nexport const approveUnapproveDonorSuccess = success => ({\n type: APPROVE_UNAPPROVE_DONOR_SUCCESS,\n payload: success,\n});\n\nexport const approveUnapproveDonorFail = error => ({\n type: APPROVE_UNAPPROVE_DONOR_FAIL,\n payload: error,\n});\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Col, Modal, ModalBody, Row } from \"reactstrap\";\n\nclass ConfirmModal extends Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n render() {\n return (\n \n \n \n \n \n
\n \n

Are you sure?

\n

You won&t be able to revert this!

\n
\n \n
\n \n \n
\n \n Yes\n \n \n Cancel\n \n
\n \n
\n
\n \n
\n );\n }\n}\n\nConfirmModal.propTypes = {\n onCloseClick: PropTypes.func,\n onConfirmClick: PropTypes.func,\n show: PropTypes.any,\n};\n\nexport default ConfirmModal;\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\n\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Button,\n Row,\n Modal,\n ModalHeader,\n ModalBody,\n Label,\n} from \"reactstrap\";\nimport filterFactory, { textFilter} from 'react-bootstrap-table2-filter';\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport {\n // getLabs,\n // addNewLabShare,\n getAllDonationAppointments,\n // updateLabShare,\n // updateAllLabShare,\n} from \"store/finance-admin/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport ConfirmModal from \"components/Common/ConfirmModal\";\nimport \"assets/scss/table.scss\";\n\nclass DonationAppointmentsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n allDonationAppointment: [],\n b2bLabShare: \"\",\n modal: false,\n addmodal: false,\n confirmModal: false,\n isEditAll: true,\n id: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n b2bLabShareListColumns: [\n // {\n // dataField: \"id\",\n // text: \"Lab ID\",\n // sort: true,\n // },\n {\n dataField: \"order_id\",\n text: \"Order ID\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"payment_method\",\n text: \"Payment Method\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"status\",\n text: \"Payment Status\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"amount\",\n text: \"Amount\",\n sort: true,\n formatter: (cellContent, b2bLabShare) => (\n <>\n
\n {b2bLabShare.amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}
\n \n ),\n filter: textFilter(),\n },\n // {\n // dataField: \"menu\",\n // isDummyField: true,\n // editable: false,\n // text: \"Action\",\n // formatter: (cellContent, b2bLabShare) => (\n // \n // \n // this.handleEditBtnClick(b2bLabShare)}\n // >\n // \n // \n // ),\n // },\n ],\n };\n this.handleEditBtnClick = this.handleEditBtnClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleEditAllBtnClick = this.handleEditAllBtnClick.bind(this);\n // this.handleb2bLabShareClicks = this.handleb2bLabShareClicks.bind(this);\n\n\n }\n\n componentDidMount() {\n // const { allDonationAppointment, onGetAllDonationAppointments } = this.props;\n // if (allDonationAppointment && !allDonationAppointment.length) {\n // onGetAllDonationAppointments(this.props.match.params.id);\n // console.log(\"lab id print here\", onGetAllDonationAppointments(this.props.match.params.id))\n // }\n // this.setState({ allDonationAppointment });\n const { allDonationAppointment, onGetAllDonationAppointments } = this.props;\n onGetAllDonationAppointments(this.props.match.params.id);\n this.setState({ allDonationAppointment });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleEditAllBtnClicks = () => {\n this.setState({ b2bLabShare: \"\", isEdit: false, lab_id: \"\" });\n this.toggle();\n };\n handleEditAllBtnClick = () => {\n this.setState({ isEditAll: true, b2bLabShare: \"\" });\n\n this.toggle();\n };\n // Select\n handleSelectGroup = selectedGroup => {\n this.setState({ b2bLabShare: selectedGroup.value });\n };\n\n // handleAPICall = () => {\n // const { onGetAllDonationAppointments, onUpdateAllLabShare, onUpdateLabShare } =\n // this.props;\n\n // if (this.state.isEditAll) {\n // onUpdateAllLabShare(this.state.b2bLabShare);\n\n // // console.log(onAddNewLabShare(this.state.b2bLabShare));\n\n // setTimeout(() => {\n // onGetAllDonationAppointments(this.props.match.params.id);\n\n // setTimeout(() => {\n // this.setState({ allDonationAppointment: this.props.allDonationAppointment });\n // }, 1000);\n // }, 1000);\n // } else {\n // onUpdateLabShare(this.state.b2bLabShare);\n\n // setTimeout(() => {\n // onGetAllDonationAppointments(this.props.match.params.id);\n\n // setTimeout(() => {\n // this.setState({ allDonationAppointment: this.props.allDonationAppointment });\n // }, 1000);\n // }, 1000);\n // }\n // };\n\n // handleb2bLabShareClicks = () => {\n // this.setState({ b2bLabShare: \"\", isEdit: false, lab_id: \"\" });\n // this.setState({ addmodal: true }); };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { allDonationAppointment } = this.props;\n if (\n !isEmpty(allDonationAppointment) &&\n size(prevProps.allDonationAppointment) !== size(allDonationAppointment)\n ) {\n this.setState({ allDonationAppointment: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n\n handleEditBtnClick = arg => {\n const b2bLabShare = arg;\n\n this.setState({\n isEditAll: false,\n b2bLabShare: b2bLabShare,\n // id: discountLab.id,\n });\n\n this.toggle();\n };\n\n // /* Insert,Update Delete data */\n // handleEditBtnClick = arg => {\n // const b2bLabShare = arg;\n\n // this.setState({\n // b2bLabShare: {\n // id: b2bLabShare.id,\n // lab_name: b2bLabShare.lab_name,\n // // unit_name: offeredTest.unit_name,\n // lab_id: b2bLabShare.lab_id,\n // b2b_shares: b2bLabShare.b2b_shares,\n // },\n // isEdit: true,\n // });\n\n // this.toggle();\n // };\n\n\n render() {\n const { SearchBar } = Search;\n\n const { allDonationAppointment } = this.props;\n // const { labs } = this.props;\n // const { units } = this.props;\n\n const { isEdit, isEditAll, deleteModal } = this.state;\n\n const { onGetAllDonationAppointments } =\n this.props;\n const b2bLabShare = this.state.b2bLabShare;\n\n const pageOptions = {\n sizePerPage: 10000,\n totalSize: allDonationAppointment.length, // replace later with size(allDonationAppointment),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n // const labList = [];\n // for (let i = 0; i < labs.length; i++) {\n // let flag = 0;\n\n // // Check if test available in our database is already being offered by lab\n // // If yes then don't push it in labList\n // for (let j = 0; j < allDonationAppointment.length; j++) {\n // if (labs[i].id == allDonationAppointment[j].lab_id) {\n // flag = 1;\n // }\n // }\n // if (!flag) {\n // labList.push({\n // label: labs[i].name,\n // value: labs[i].id,\n // });\n // }\n // }\n\n return (\n \n
\n \n Appointments | Donation Allocate Appointments\n \n this.setState({ confirmModal: false })}\n />\n \n {/* Render Breadcrumbs */}\n {/* */}\n {\n // Check if lab_name is defined and not null\n if (lab.lab_name !== undefined && lab.lab_name !== null) {\n // Return a div for each lab_name\n return (\n
\n {lab.lab_name}\n -Donation Allocate Appointments\n
\n );\n }\n // Don't render anything for labs without lab_name\n return null;\n })}\n \n />\n \n

Note: Here is the amount of those lab Appointments whose Payment method Donation Status Allocated and Result Uploaded

\n\n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n
\n
\n \n \n \n \n \n
\n \n \n \n
\n \n
\n \n \n
\n \n
\n \n
\n {/* \n \n \n \n */}\n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nDonationAppointmentsList.propTypes = {\n match: PropTypes.object,\n // labs: PropTypes.array,\n // units: PropTypes.array,\n allDonationAppointment: PropTypes.array,\n className: PropTypes.any,\n onGetAllDonationAppointments: PropTypes.func,\n // onGetlabs: PropTypes.func,\n // onGetUnits: PropTypes.func,\n // onAddNewLabShare: PropTypes.func,\n // onUpdateLabShare: PropTypes.func,\n // onUpdateAllLabShare: PropTypes.func,\n\n};\n\nconst mapStateToProps = ({ financeAdmin }) => ({\n allDonationAppointment: financeAdmin.allDonationAppointment,\n // labs: b2bLabShares.labs,\n // units: allDonationAppointment.units,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n // onGetlabs: () => dispatch(getLabs()),\n // onGetUnits: () => dispatch(getUnits()),\n onGetAllDonationAppointments: id => dispatch(getAllDonationAppointments(id)),\n // onAddNewLabShare: (b2bLabShare, id) =>\n // dispatch(addNewLabShare(b2bLabShare, id)),\n // onUpdateLabShare: b2bLabShare => dispatch(updateLabShare(b2bLabShare)),\n // onUpdateAllLabShare: b2bLabShare => dispatch(updateAllLabShare(b2bLabShare)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(DonationAppointmentsList));","// -------------------- LAB ACTION TYPES --------------------\n// export const GET_CLEARED_LABS = \"GET_CLEARED_LABS\";\n// export const GET_CLEARED_LABS_SUCCESS = \"GET_CLEARED_LABS_SUCCESS\";\n// export const GET_CLEARED_LABS_FAIL = \"GET_CLEARED_LABS_FAIL\";\n\n// export const GET_APPROVED_LABS = \"GET_APPROVED_LABS\";\n// export const GET_APPROVED_LABS_SUCCESS = \"GET_APPROVED_LABS_SUCCESS\";\n// export const GET_APPROVED_LABS_FAIL = \"GET_APPROVED_LABS_FAIL\";\n\n// export const GET_UNAPPROVED_LABS = \"GET_UNAPPROVED_LABS\";\n// export const GET_UNAPPROVED_LABS_SUCCESS = \"GET_UNAPPROVED_LABS_SUCCESS\";\n// export const GET_UNAPPROVED_LABS_FAIL = \"GET_UNAPPROVED_LABS_FAIL\";\n\n// export const APPROVE_UNAPPROVE_LAB = \"APPROVE_UNAPPROVE_LAB\";\n// export const APPROVE_UNAPPROVE_LAB_SUCCESS = \"APPROVE_UNAPPROVE_LAB_SUCCESS\";\n// export const APPROVE_UNAPPROVE_LAB_FAIL = \"APPROVE_UNAPPROVE_LAB_FAIL\";\n\n// -------------------- DONATION APPOINTMENTS --------------------\nexport const GET_ALL_DONATION_APPOINTMENTS = \"GET_ALL_DONATION_APPOINTMENTS\";\nexport const GET_ALL_DONATION_APPOINTMENTS_SUCCESS =\n \"GET_ALL_DONATION_APPOINTMENTS_SUCCESS\";\nexport const GET_ALL_DONATION_APPOINTMENTS_FAIL = \"GET_ALL_DONATION_APPOINTMENTS_FAIL\";\n\n// -------------------- Lab List ACTION TYPES --------------------\nexport const GET_ALL_LABS_LIST = \"GET_ALL_LABS_LIST\";\nexport const GET_ALL_LABS_LIST_SUCCESS =\n \"GET_ALL_LABS_LIST_SUCCESS\";\nexport const GET_ALL_LABS_LIST_FAIL = \"GET_ALL_LABS_LIST_FAIL\";\n\n// -------------------- B2B ACTION TYPES --------------------\nexport const GET_CLEARED_IN_PAYMENTS = \"GET_CLEARED_IN_PAYMENTS\";\nexport const GET_CLEARED_IN_PAYMENTS_SUCCESS =\n \"GET_CLEARED_IN_PAYMENTS_SUCCESS\";\nexport const GET_CLEARED_IN_PAYMENTS_FAIL = \"GET_CLEARED_IN_PAYMENTS_FAIL\";\n\nexport const GET_APPROVED_IN_PAYMENTS = \"GET_APPROVED_IN_PAYMENTS\";\nexport const GET_APPROVED_IN_PAYMENTS_SUCCESS =\n \"GET_APPROVED_IN_PAYMENTS_SUCCESS\";\nexport const GET_APPROVED_IN_PAYMENTS_FAIL = \"GET_APPROVED_IN_PAYMENTS_FAIL\";\n\nexport const GET_UNAPPROVED_IN_PAYMENTS = \"GET_UNAPPROVED_IN_PAYMENTS\";\nexport const GET_UNAPPROVED_IN_PAYMENTS_SUCCESS =\n \"GET_UNAPPROVED_IN_PAYMENTS_SUCCESS\";\nexport const GET_UNAPPROVED_IN_PAYMENTS_FAIL =\n \"GET_UNAPPROVED_IN_PAYMENTS_FAIL\";\n\nexport const UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT = \"UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT\";\nexport const UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT_SUCCESS =\n \"UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT_SUCCESS\";\nexport const UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT_FAIL =\n \"UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT_FAIL\";\n\n// -------------------- DONOR ACTION TYPES --------------------\n// export const GET_CLEARED_DONORS = \"GET_CLEARED_DONORS\";\n// export const GET_CLEARED_DONORS_SUCCESS = \"GET_CLEARED_DONORS_SUCCESS\";\n// export const GET_CLEARED_DONORS_FAIL = \"GET_CLEARED_DONORS_FAIL\";\n\n// export const GET_APPROVED_DONORS = \"GET_APPROVED_DONORS\";\n// export const GET_APPROVED_DONORS_SUCCESS = \"GET_APPROVED_DONORS_SUCCESS\";\n// export const GET_APPROVED_DONORS_FAIL = \"GET_APPROVED_DONORS_FAIL\";\n\n// export const GET_UNAPPROVED_DONORS = \"GET_UNAPPROVED_DONORS\";\n// export const GET_UNAPPROVED_DONORS_SUCCESS = \"GET_UNAPPROVED_DONORS_SUCCESS\";\n// export const GET_UNAPPROVED_DONORS_FAIL = \"GET_UNAPPROVED_DONORS_FAIL\";\n\n// export const APPROVE_UNAPPROVE_DONOR = \"APPROVE_UNAPPROVE_DONOR\";\n// export const APPROVE_UNAPPROVE_DONOR_SUCCESS =\n// \"APPROVE_UNAPPROVE_DONOR_SUCCESS\";\n// export const APPROVE_UNAPPROVE_DONOR_FAIL = \"APPROVE_UNAPPROVE_DONOR_FAIL\";\n","import allDonationAppointments from \"pages/FinanceAdmin/all-donation-appointments\";\nimport {\n // GET_CLEARED_LABS,\n // GET_CLEARED_LABS_SUCCESS,\n // GET_CLEARED_LABS_FAIL,\n // GET_APPROVED_LABS,\n // GET_APPROVED_LABS_SUCCESS,\n // GET_APPROVED_LABS_FAIL,\n // GET_UNAPPROVED_LABS,\n // GET_UNAPPROVED_LABS_SUCCESS,\n // GET_UNAPPROVED_LABS_FAIL,\n // APPROVE_UNAPPROVE_LAB,\n // APPROVE_UNAPPROVE_LAB_SUCCESS,\n // APPROVE_UNAPPROVE_LAB_FAIL,\n GET_CLEARED_IN_PAYMENTS,\n GET_CLEARED_IN_PAYMENTS_SUCCESS,\n GET_CLEARED_IN_PAYMENTS_FAIL,\n GET_APPROVED_IN_PAYMENTS,\n GET_APPROVED_IN_PAYMENTS_SUCCESS,\n GET_APPROVED_IN_PAYMENTS_FAIL,\n GET_UNAPPROVED_IN_PAYMENTS,\n GET_UNAPPROVED_IN_PAYMENTS_SUCCESS,\n GET_UNAPPROVED_IN_PAYMENTS_FAIL,\n UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT,\n UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT_SUCCESS,\n UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT_FAIL,\n GET_ALL_LABS_LIST,\n GET_ALL_LABS_LIST_SUCCESS,\n GET_ALL_LABS_LIST_FAIL,\n GET_ALL_DONATION_APPOINTMENTS,\n GET_ALL_DONATION_APPOINTMENTS_SUCCESS,\n GET_ALL_DONATION_APPOINTMENTS_FAIL,\n // GET_CLEARED_DONORS,\n // GET_CLEARED_DONORS_SUCCESS,\n // GET_CLEARED_DONORS_FAIL,\n // GET_APPROVED_DONORS,\n // GET_APPROVED_DONORS_SUCCESS,\n // GET_APPROVED_DONORS_FAIL,\n // GET_UNAPPROVED_DONORS,\n // GET_UNAPPROVED_DONORS_SUCCESS,\n // GET_UNAPPROVED_DONORS_FAIL,\n // APPROVE_UNAPPROVE_DONOR,\n // APPROVE_UNAPPROVE_DONOR_SUCCESS,\n // APPROVE_UNAPPROVE_DONOR_FAIL,\n} from \"./actionTypes\";\n\n// -------------------- LAB ACTIONS --------------------\n// export const getClearedLabs = () => ({\n// type: GET_CLEARED_LABS,\n// payload: {},\n// });\n\n// export const getClearedLabsSuccess = clearedLabs => ({\n// type: GET_CLEARED_LABS_SUCCESS,\n// payload: clearedLabs,\n// });\n\n// export const getClearedLabsFail = error => ({\n// type: GET_CLEARED_LABS_FAIL,\n// payload: error,\n// });\n\n// export const getApprovedLabs = () => ({\n// type: GET_APPROVED_LABS,\n// payload: {},\n// });\n\n// export const getApprovedLabsSuccess = approvedLabs => ({\n// type: GET_APPROVED_LABS_SUCCESS,\n// payload: approvedLabs,\n// });\n\n// export const getApprovedLabsFail = error => ({\n// type: GET_APPROVED_LABS_FAIL,\n// payload: error,\n// });\n\n// export const getUnapprovedLabs = () => ({\n// type: GET_UNAPPROVED_LABS,\n// payload: {},\n// });\n\n// export const getUnapprovedLabsSuccess = unapprovedLabs => ({\n// type: GET_UNAPPROVED_LABS_SUCCESS,\n// payload: unapprovedLabs,\n// });\n\n// export const getUnapprovedLabsFail = error => ({\n// type: GET_UNAPPROVED_LABS_FAIL,\n// payload: error,\n// });\n\n// export const approveUnapproveLab = data => ({\n// type: APPROVE_UNAPPROVE_LAB,\n// payload: { data },\n// });\n\n// export const approveUnapproveLabSuccess = success => ({\n// type: APPROVE_UNAPPROVE_LAB_SUCCESS,\n// payload: success,\n// });\n\n// export const approveUnapproveLabFail = error => ({\n// type: APPROVE_UNAPPROVE_LAB_FAIL,\n// payload: error,\n// });\n// -------------------- LABS LIST ACTIONS --------------------\nexport const getAllLabsList = () => ({\n type: GET_ALL_LABS_LIST,\n payload: {},\n});\n\nexport const getAllLabsListSuccess = allLabsList => ({\n type: GET_ALL_LABS_LIST_SUCCESS,\n payload: allLabsList,\n});\n\nexport const getAllLabsListFail = error => ({\n type: GET_ALL_LABS_LIST_FAIL,\n payload: error,\n});\n\n//.................... Donation Appointment List .............\nexport const getAllDonationAppointments = id => ({\n type: GET_ALL_DONATION_APPOINTMENTS,\n payload: id,\n});\n\nexport const getAllDonationAppointmentsSuccess = allDonationAppointment => ({\n type: GET_ALL_DONATION_APPOINTMENTS_SUCCESS,\n payload: allDonationAppointment,\n});\n\nexport const getAllDonationAppointmentsFail = error => ({\n type: GET_ALL_DONATION_APPOINTMENTS_FAIL,\n payload: error,\n});\n\n// -------------------- B2B ACTIONS --------------------\nexport const getClearedInPayments = id => ({\n type: GET_CLEARED_IN_PAYMENTS,\n payload: id,\n});\n\nexport const getClearedInPaymentsSuccess = clearedInPayments => ({\n type: GET_CLEARED_IN_PAYMENTS_SUCCESS,\n payload: clearedInPayments,\n});\n\nexport const getClearedInPaymentsFail = error => ({\n type: GET_CLEARED_IN_PAYMENTS_FAIL,\n payload: error,\n});\n\nexport const getApprovedInPayments = id => ({\n type: GET_APPROVED_IN_PAYMENTS,\n payload: id,\n});\n\nexport const getApprovedInPaymentsSuccess = approvedInPayments => ({\n type: GET_APPROVED_IN_PAYMENTS_SUCCESS,\n payload: approvedInPayments,\n});\n\nexport const getApprovedInPaymentsFail = error => ({\n type: GET_APPROVED_IN_PAYMENTS_FAIL,\n payload: error,\n});\n\nexport const getUnapprovedInPayments = id => ({\n type: GET_UNAPPROVED_IN_PAYMENTS,\n payload: id,\n});\n\nexport const getUnapprovedInPaymentsSuccess = unapprovedInPayments => ({\n type: GET_UNAPPROVED_IN_PAYMENTS_SUCCESS,\n payload: unapprovedInPayments,\n});\n\nexport const getUnapprovedInPaymentsFail = error => ({\n type: GET_UNAPPROVED_IN_PAYMENTS_FAIL,\n payload: error,\n});\n\nexport const updateApproveUnapproveInPayment = data => ({\n type: UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT,\n payload: data,\n});\n\nexport const updateApproveUnapproveInPaymentSuccess = data => ({\n type: UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT_SUCCESS,\n payload: data,\n});\n\nexport const updateApproveUnapproveInPaymentFail = error => ({\n type: UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT_FAIL,\n payload: error,\n});\n\n// -------------------- DONOR ACTIONS --------------------\n// export const getClearedDonors = () => ({\n// type: GET_CLEARED_DONORS,\n// payload: {},\n// });\n\n// export const getClearedDonorsSuccess = clearedDonors => ({\n// type: GET_CLEARED_DONORS_SUCCESS,\n// payload: clearedDonors,\n// });\n\n// export const getClearedDonorsFail = error => ({\n// type: GET_CLEARED_DONORS_FAIL,\n// payload: error,\n// });\n\n// export const getApprovedDonors = () => ({\n// type: GET_APPROVED_DONORS,\n// payload: {},\n// });\n\n// export const getApprovedDonorsSuccess = approvedDonors => ({\n// type: GET_APPROVED_DONORS_SUCCESS,\n// payload: approvedDonors,\n// });\n\n// export const getApprovedDonorsFail = error => ({\n// type: GET_APPROVED_DONORS_FAIL,\n// payload: error,\n// });\n\n// export const getUnapprovedDonors = () => ({\n// type: GET_UNAPPROVED_DONORS,\n// payload: {},\n// });\n\n// export const getUnapprovedDonorsSuccess = unapprovedDonors => ({\n// type: GET_UNAPPROVED_DONORS_SUCCESS,\n// payload: unapprovedDonors,\n// });\n\n// export const getUnapprovedDonorsFail = error => ({\n// type: GET_UNAPPROVED_DONORS_FAIL,\n// payload: error,\n// });\n\n// export const approveUnapproveDonor = data => ({\n// type: APPROVE_UNAPPROVE_DONOR,\n// payload: { data },\n// });\n\n// export const approveUnapproveDonorSuccess = success => ({\n// type: APPROVE_UNAPPROVE_DONOR_SUCCESS,\n// payload: success,\n// });\n\n// export const approveUnapproveDonorFail = error => ({\n// type: APPROVE_UNAPPROVE_DONOR_FAIL,\n// payload: error,\n// });\n","export const GET_PENDING_COMPLAINTS = \"GET_PENDING_COMPLAINTS\";\nexport const GET_PENDING_COMPLAINTS_SUCCESS = \"GET_PENDING_COMPLAINTS_SUCCESS\";\nexport const GET_PENDING_COMPLAINTS_FAIL = \"GET_PENDING_COMPLAINTS_FAIL\";\n\nexport const GET_PENDING_COMPLAINTS_LABHAZIR = \"GET_PENDING_COMPLAINTS_LABHAZIR\";\nexport const GET_PENDING_COMPLAINTS_LABHAZIR_SUCCESS = \"GET_PENDING_COMPLAINTS_LABHAZIR_SUCCESS\";\nexport const GET_PENDING_COMPLAINTS_LABHAZIR_FAIL = \"GET_PENDING_COMPLAINTS_LABHAZIR_FAIL\";\n\nexport const GET_INPROCESS_COMPLAINTS = \"GET_INPROCESS_COMPLAINTS\";\nexport const GET_INPROCESS_COMPLAINTS_SUCCESS =\n \"GET_INPROCESS_COMPLAINTS_SUCCESS\";\nexport const GET_INPROCESS_COMPLAINTS_FAIL = \"GET_INPROCESS_COMPLAINTS_FAIL\";\n\nexport const GET_INPROCESS_COMPLAINTS_LABHAZIR = \"GET_INPROCESS_COMPLAINTS_LABHAZIR\";\nexport const GET_INPROCESS_COMPLAINTS_LABHAZIR_SUCCESS =\n \"GET_INPROCESS_COMPLAINTS_LABHAZIR_SUCCESS\";\nexport const GET_INPROCESS_COMPLAINTS_LABHAZIR_FAIL = \"GET_INPROCESS_COMPLAINTS_LABHAZIR_FAIL\";\n\nexport const GET_RESOLVED_COMPLAINTS = \"GET_RESOLVED_COMPLAINTS\";\nexport const GET_RESOLVED_COMPLAINTS_SUCCESS =\n \"GET_RESOLVED_COMPLAINTS_SUCCESS\";\nexport const GET_RESOLVED_COMPLAINTS_FAIL = \"GET_RESOLVED_COMPLAINTS_FAIL\";\n\nexport const GET_RESOLVED_COMPLAINTS_LABHAZIR= \"GET_RESOLVED_COMPLAINTS_LABHAZIR\";\nexport const GET_RESOLVED_COMPLAINTS_LABHAZIR_SUCCESS =\n \"GET_RESOLVED_COMPLAINTS_LABHAZIR_SUCCESS\";\nexport const GET_RESOLVED_COMPLAINTS_LABHAZIR_FAIL = \"GET_RESOLVED_COMPLAINTS_LABHAZIR_FAIL\";\n\nexport const ASSIGN_COMPLAINT = \"ASSIGN_COMPLAINT\";\nexport const ASSIGN_COMPLAINT_SUCCESS = \"ASSIGN_COMPLAINT_SUCCESS\";\nexport const ASSIGN_COMPLAINT_FAIL = \"ASSIGN_COMPLAINT_FAIL\";\n","import {\n GET_PENDING_COMPLAINTS,\n GET_PENDING_COMPLAINTS_SUCCESS,\n GET_PENDING_COMPLAINTS_FAIL,\n GET_PENDING_COMPLAINTS_LABHAZIR,\n GET_PENDING_COMPLAINTS_LABHAZIR_SUCCESS,\n GET_PENDING_COMPLAINTS_LABHAZIR_FAIL,\n GET_INPROCESS_COMPLAINTS,\n GET_INPROCESS_COMPLAINTS_SUCCESS,\n GET_INPROCESS_COMPLAINTS_FAIL,\n GET_INPROCESS_COMPLAINTS_LABHAZIR,\n GET_INPROCESS_COMPLAINTS_LABHAZIR_SUCCESS,\n GET_INPROCESS_COMPLAINTS_LABHAZIR_FAIL,\n GET_RESOLVED_COMPLAINTS,\n GET_RESOLVED_COMPLAINTS_SUCCESS,\n GET_RESOLVED_COMPLAINTS_FAIL,\n GET_RESOLVED_COMPLAINTS_LABHAZIR,\n GET_RESOLVED_COMPLAINTS_LABHAZIR_SUCCESS,\n GET_RESOLVED_COMPLAINTS_LABHAZIR_FAIL,\n ASSIGN_COMPLAINT,\n ASSIGN_COMPLAINT_SUCCESS,\n ASSIGN_COMPLAINT_FAIL,\n \n} from \"./actionTypes\";\n\nexport const getPendingComplaints = () => ({\n type: GET_PENDING_COMPLAINTS,\n payload: {},\n});\n\nexport const getPendingComplaintsSuccess = pendingComplaints => ({\n type: GET_PENDING_COMPLAINTS_SUCCESS,\n payload: pendingComplaints,\n});\n\nexport const getPendingComplaintsFail = error => ({\n type: GET_PENDING_COMPLAINTS_FAIL,\n payload: error,\n});\nexport const getPendingComplaintsLabhazir = () => ({\n type: GET_PENDING_COMPLAINTS_LABHAZIR,\n payload: {},\n});\n\nexport const getPendingComplaintsLabhazirSuccess = pendingComplaintsLabhazir => ({\n type: GET_PENDING_COMPLAINTS_LABHAZIR_SUCCESS,\n payload: pendingComplaintsLabhazir,\n});\n\nexport const getPendingComplaintsLabhazirFail = error => ({\n type: GET_PENDING_COMPLAINTS_LABHAZIR_FAIL,\n payload: error,\n});\nexport const getInProcessComplaints = () => ({\n type: GET_INPROCESS_COMPLAINTS,\n payload: {},\n});\n\nexport const getInProcessComplaintsSuccess = inProcessComplaints => ({\n type: GET_INPROCESS_COMPLAINTS_SUCCESS,\n payload: inProcessComplaints,\n});\n\nexport const getInProcessComplaintsFail = error => ({\n type: GET_INPROCESS_COMPLAINTS_FAIL,\n payload: error,\n});\nexport const getInProcessComplaintsLabhazir = () => ({\n type: GET_INPROCESS_COMPLAINTS_LABHAZIR,\n payload: {},\n});\n\nexport const getInProcessComplaintsLabhazirSuccess = inProcessComplaintsLabhazir => ({\n type: GET_INPROCESS_COMPLAINTS_LABHAZIR_SUCCESS,\n payload: inProcessComplaintsLabhazir,\n});\n\nexport const getInProcessComplaintsLabhazirFail = error => ({\n type: GET_INPROCESS_COMPLAINTS_LABHAZIR_FAIL,\n payload: error,\n});\n\nexport const getResolvedComplaints = () => ({\n type: GET_RESOLVED_COMPLAINTS,\n payload: {},\n});\n\nexport const getResolvedComplaintsSuccess = resolvedComplaints => ({\n type: GET_RESOLVED_COMPLAINTS_SUCCESS,\n payload: resolvedComplaints,\n});\n\nexport const getResolvedComplaintsFail = error => ({\n type: GET_RESOLVED_COMPLAINTS_FAIL,\n payload: error,\n});\n\nexport const getResolvedComplaintsLabhazir = () => ({\n type: GET_RESOLVED_COMPLAINTS_LABHAZIR,\n payload: {},\n});\n\nexport const getResolvedComplaintsLabhazirSuccess = resolvedComplaintsLabhazir => ({\n type: GET_RESOLVED_COMPLAINTS_LABHAZIR_SUCCESS,\n payload: resolvedComplaintsLabhazir,\n});\n\nexport const getResolvedComplaintsLabhazirFail = error => ({\n type: GET_RESOLVED_COMPLAINTS_LABHAZIR_FAIL,\n payload: error,\n});\nexport const assignComplaint = data => ({\n type: ASSIGN_COMPLAINT,\n payload: { data },\n});\n\nexport const assignComplaintSuccess = success => ({\n type: ASSIGN_COMPLAINT_SUCCESS,\n payload: success,\n});\n\nexport const assignComplaintFail = error => ({\n type: ASSIGN_COMPLAINT_FAIL,\n payload: error,\n});\n","export const GET_PENDING_AUDITS = \"GET_PENDING_AUDITS\";\nexport const GET_PENDING_AUDITS_SUCCESS = \"GET_PENDING_AUDITS_SUCCESS\";\nexport const GET_PENDING_AUDITS_FAIL = \"GET_PENDING_AUDITS_FAIL\";\n\nexport const GET_INPROCESS_AUDITS = \"GET_INPROCESS_AUDITS\";\nexport const GET_INPROCESS_AUDITS_SUCCESS = \"GET_INPROCESS_AUDITS_SUCCESS\";\nexport const GET_INPROCESS_AUDITS_FAIL = \"GET_INPROCESS_AUDITS_FAIL\";\n\nexport const GET_PASSED_AUDITS = \"GET_PASSED_AUDITS\";\nexport const GET_PASSED_AUDITS_SUCCESS = \"GET_PASSED_AUDITS_SUCCESS\";\nexport const GET_PASSED_AUDITS_FAIL = \"GET_PASSED_AUDITS_FAIL\";\n\nexport const GET_FAILED_AUDITS = \"GET_FAILED_AUDITS\";\nexport const GET_FAILED_AUDITS_SUCCESS = \"GET_FAILED_AUDITS_SUCCESS\";\nexport const GET_FAILED_AUDITS_FAIL = \"GET_FAILED_AUDITS_FAIL\";\n\nexport const ASSIGN_AUDIT = \"ASSIGN_AUDIT\";\nexport const ASSIGN_AUDIT_SUCCESS = \"ASSIGN_AUDIT_SUCCESS\";\nexport const ASSIGN_AUDIT_FAIL = \"ASSIGN_AUDIT_FAIL\";\n\nexport const ADD_LABS_AUDIT = \"ADD_LABS_AUDIT\";\nexport const ADD_LABS_AUDIT_SUCCESS = \"ADD_LABS_AUDIT_SUCCESS\";\nexport const ADD_LABS_AUDIT_FAIL = \"ADD_LABS_AUDIT_FAIL\";\n","import {\n GET_PENDING_AUDITS,\n GET_PENDING_AUDITS_SUCCESS,\n GET_PENDING_AUDITS_FAIL,\n GET_INPROCESS_AUDITS,\n GET_INPROCESS_AUDITS_SUCCESS,\n GET_INPROCESS_AUDITS_FAIL,\n GET_PASSED_AUDITS,\n GET_PASSED_AUDITS_SUCCESS,\n GET_PASSED_AUDITS_FAIL,\n GET_FAILED_AUDITS,\n GET_FAILED_AUDITS_SUCCESS,\n GET_FAILED_AUDITS_FAIL,\n ASSIGN_AUDIT,\n ASSIGN_AUDIT_SUCCESS,\n ASSIGN_AUDIT_FAIL,\n ADD_LABS_AUDIT,\n ADD_LABS_AUDIT_SUCCESS,\n ADD_LABS_AUDIT_FAIL\n} from \"./actionTypes\";\n\nexport const getPendingAudits = () => ({\n type: GET_PENDING_AUDITS,\n payload: {},\n});\n\nexport const getPendingAuditsSuccess = pendingAudits => ({\n type: GET_PENDING_AUDITS_SUCCESS,\n payload: pendingAudits,\n});\n\nexport const getPendingAuditsFail = error => ({\n type: GET_PENDING_AUDITS_FAIL,\n payload: error,\n});\n\nexport const getInProcessAudits = () => ({\n type: GET_INPROCESS_AUDITS,\n payload: {},\n});\n\nexport const getInProcessAuditsSuccess = inProcessAudits => ({\n type: GET_INPROCESS_AUDITS_SUCCESS,\n payload: inProcessAudits,\n});\n\nexport const getInProcessAuditsFail = error => ({\n type: GET_INPROCESS_AUDITS_FAIL,\n payload: error,\n});\n\nexport const getPassedAudits = () => ({\n type: GET_PASSED_AUDITS,\n payload: {},\n});\n\nexport const getPassedAuditsSuccess = passedAudits => ({\n type: GET_PASSED_AUDITS_SUCCESS,\n payload: passedAudits,\n});\n\nexport const getPassedAuditsFail = error => ({\n type: GET_PASSED_AUDITS_FAIL,\n payload: error,\n});\nexport const getFailedAudits = () => ({\n type: GET_FAILED_AUDITS,\n payload: {},\n});\n\nexport const getFailedAuditsSuccess = failedAudits => ({\n type: GET_FAILED_AUDITS_SUCCESS,\n payload: failedAudits,\n});\n\nexport const getFailedAuditsFail = error => ({\n type: GET_FAILED_AUDITS_FAIL,\n payload: error,\n});\nexport const assignAudit = data => ({\n type: ASSIGN_AUDIT,\n payload: { data },\n});\n\nexport const assignAuditSuccess = success => ({\n type: ASSIGN_AUDIT_SUCCESS,\n payload: success,\n});\n\nexport const assignAuditFail = error => ({\n type: ASSIGN_AUDIT_FAIL,\n payload: error,\n});\n\nexport const AddAllLabsAudit = data => ({\n type: ADD_LABS_AUDIT,\n payload: { data },\n});\n\nexport const AddAllLabsAuditSuccess = success => ({\n type: ADD_LABS_AUDIT_SUCCESS,\n payload: success,\n});\n\nexport const AddAllLabsAuditFail = error => ({\n type: ADD_LABS_AUDIT_FAIL,\n payload: error,\n});\n","/* SAMPLE COLLECTORS */\nexport const GET_MSGS = \"GET_MSGS\";\nexport const GET_MSGS_SUCCESS =\n \"GET_MSGS_SUCCESS\";\nexport const GET_MSGS_FAIL = \"GET_MSGS_FAIL\";\n\nexport const ADD_NEW_MSG = \"ADD_NEW_MSG\";\nexport const ADD_MSG_SUCCESS =\n \"ADD_MSG_SUCCESS\";\nexport const ADD_MSG_FAIL = \"ADD_MSG_FAIL\";\n\n","import {\n GET_MSGS,\n GET_MSGS_FAIL,\n GET_MSGS_SUCCESS,\n ADD_NEW_MSG,\n ADD_MSG_SUCCESS,\n ADD_MSG_FAIL,\n} from \"./actionTypes\";\n\nexport const getMsgs = id => ({\n type: GET_MSGS,\n payload: id,\n});\n\nexport const getMsgsSuccess = msgs => ({\n type: GET_MSGS_SUCCESS,\n payload: msgs,\n});\n\nexport const getMsgsFail = error => ({\n type: GET_MSGS_FAIL,\n payload: error,\n});\n\nexport const addNewMsg = (msg, id) => ({\n type: ADD_NEW_MSG,\n payload: { msg, id },\n});\n\nexport const addMsgSuccess = msg => ({\n type: ADD_MSG_SUCCESS,\n payload: msg,\n});\n\nexport const addMsgFail = error => ({\n type: ADD_MSG_FAIL,\n payload: error,\n});\n","export const DISTRICTS = [\n {\n options: [\n { label: \"Abbottabad\", value: \"Abbottabad\" },\n { label: \"Attock\", value: \"Attock\" },\n { label: \"Awaran\", value: \"Awaran\" },\n { label: \"Badin\", value: \"Badin\" },\n { label: \"Bajur\", value: \"Bajur\" },\n { label: \"Bannu\", value: \"Bannu\" },\n { label: \"Batagram\", value: \"Batagram\" },\n { label: \"Bunair\", value: \"Bunair\" },\n { label: \"Bahawalnagar\", value: \"Bahawalnagar\" },\n { label: \"Bahawalpur\", value: \"Bahawalpur\" },\n { label: \"Bhakkar\", value: \"Bhakkar\" },\n { label: \"Barkhan\", value: \"Barkhan\" },\n { label: \"Chakwal\", value: \"Chakwal\" },\n { label: \"Chagai\", value: \"Chagai\" },\n { label: \"Charsada\", value: \"Charsada\" },\n { label: \"Chitral\", value: \"Chitral\" },\n { label: \"Chiniot\", value: \"Chiniot\" },\n { label: \"Dadu\", value: \"Dadu\" },\n { label: \"Dera Bugti\", value: \"Dera Bugti\" },\n { label: \"Dera Ghazi Khan\", value: \"Dera Ghazi Khan\" },\n { label: \"Dera Ismail Khan\", value: \"Dera Ismail Khan\" },\n { label: \"Duki\", value: \"Duki\" },\n { label: \"Faisalabad\", value: \"Faisalabad\" },\n { label: \"Ghotki\", value: \"Ghotki\" },\n { label: \"Gujranwala\", value: \"Gujranwala\" },\n { label: \"Gujrat\", value: \"Gujrat\" },\n { label: \"Gwadar\", value: \"Gwadar\" },\n { label: \"Hangu\", value: \"Hangu\" },\n { label: \"Hafizabad\", value: \"Haripur\" },\n { label: \"Haripur\", value: \"Haripur\" },\n { label: \"Harnai\", value: \"Harnai\" },\n { label: \"Hyderabad\", value: \"Hyderabad\" },\n { label: \"Islamabad\", value: \"Islamabad\" },\n { label: \"Jacobabad\", value: \"Jacobabad\" },\n { label: \"Jaffarabad\", value: \"Jaffarabad\" },\n { label: \"Jamshoro\", value: \"Jamshoro\" },\n { label: \"Jhal Magsi\", value: \"Jhal Magsi\" },\n { label: \"Jhang\", value: \"Jhang\" },\n { label: \"Jhelum\", value: \"Jhelum\" },\n { label: \"Kachhi/Bolan\", value: \"Kachhi/Bolan\" },\n { label: \"Kalat\", value: \"Kalat\" },\n { label: \"Karachi\", value: \"Karachi\" },\n { label: \"Karak\", value: \"Karak\" },\n { label: \"Kasur\", value: \"Kasur\" },\n { label: \"Kashmore\", value: \"Kashmore\" },\n { label: \"Kech/Turbat\", value: \"Kech/Turbat\" },\n { label: \"Khairpur\", value: \"Khairpur\" },\n { label: \"Kharan\", value: \"Kharan\" },\n { label: \"Khushab\", value: \"Khushab\" },\n { label: \"Khuzdar\", value: \"Khuzdar\" },\n { label: \"Khyber\", value: \"Khyber\" },\n { label: \"Kohat\", value: \"Kohat\" },\n { label: \"Kohistan\", value: \"Kohistan\" },\n { label: \"Kohlu\", value: \"Kohlu\" },\n { label: \"Korangi\", value: \"Korangi\" },\n { label: \"Kurram\", value: \"Kurram\" },\n { label: \"Lahore\", value: \"Lahore\" },\n { label: \"Lakki Marwat\", value: \"Lakki Marwat\" },\n { label: \"Larkana\", value: \"Larkana\" },\n { label: \"Lasbela\", value: \"Lasbela\" },\n { label: \"Layyah\", value: \"Layyah\" },\n { label: \"Lodhran\", value: \"Lodhran\" },\n { label: \"Loralai\", value: \"Loralai\" },\n { label: \"Lower Dir\", value: \"Lower Dir\" },\n { label: \"Malakand\", value: \"Malakand\" },\n { label: \"Mansehra\", value: \"Mansehra\" },\n { label: \"Mardan\", value: \"Mardan\" },\n { label: \"Mastung\", value: \"Mastung\" },\n { label: \"Matiari\", value: \"Matiari\" },\n { label: \"Mandi Bahauddin\", value: \"Mandi Bahauddin\" },\n { label: \"Mianwali\", value: \"Mianwali\" },\n { label: \"Mirpur Khas\", value: \"Mirpur Khas\" },\n { label: \"Mohmand\", value: \"Mohmand\" },\n { label: \"Musa Khel\", value: \"Musa Khel\" },\n { label: \"Muzaffargarh\", value: \"Muzaffargarh\" },\n { label: \"Nasirabad/Tamboo\", value: \"Nasirabad/Tamboo\" },\n { label: \"Narowal\", value: \"Narowal\" },\n { label: \"Nankana Sahib\", value: \"Nankana Sahib\" },\n { label: \"Nowshera\", value: \"Nowshera\" },\n { label: \"Nowshero Feroze \", value: \"Nowshero Feroze \" },\n { label: \"Nushki\", value: \"Nushki\" },\n { label: \"Orakzai\", value: \"Orakzai\" },\n { label: \"Okara\", value: \"Okara\" },\n { label: \"Pakpattan\", value: \"Pakpattan\" },\n { label: \"Panjgoor\", value: \"Panjgoor\" },\n { label: \"Peshawar\", value: \"Peshawar\" },\n { label: \"Pishin\", value: \"Pishin\" },\n { label: \"Qilla Abdullah\", value: \"Qilla Abdullah\" },\n { label: \"Qilla Saifullah\", value: \"Qilla Saifullah\" },\n { label: \"Quetta\", value: \"Quetta\" },\n { label: \"Rajanpur\", value: \"Rajanpur\" },\n { label: \"Rahim Yar Khan\", value: \"Rahim Yar Khan\" },\n { label: \"Rawalpindi\", value: \"Rawalpindi\" },\n { label: \"Sahiwal\", value: \"Sahiwal\" },\n { label: \"Sanghar \", value: \"Sanghar \" },\n { label: \"Sargodha\", value: \"Sargodha\" },\n { label: \"Shahdadkot\", value: \"Shahdadkot\" },\n { label: \"Shaheed Banazir Abad\", value: \"Shaheed Banazir Abad\" },\n { label: \"Shaheed Sikandar Abad\", value: \"Shaheed Sikandar Abad\" },\n { label: \"Shangla\", value: \"Shangla\" },\n { label: \"Sheikhupura\", value: \"Sheikhupura\" },\n { label: \"Sherani\", value: \"Sherani\" },\n { label: \"Shikarpur\", value: \"Shikarpur\" },\n { label: \"Sialkot\", value: \"Sialkot\" },\n { label: \"Sibbi\", value: \"Sibbi\" },\n { label: \"Sohbatpur\", value: \"Sohbatpur\" },\n { label: \"Sujawal\", value: \"Sujawal\" },\n { label: \"Sukkur\", value: \"Sukkur\" },\n { label: \"Swabi\", value: \"Swabi\" },\n { label: \"Swat\", value: \"Swat\" },\n { label: \"Tando Allah Yar\", value: \"Tando Allah Yar\" },\n { label: \"Tando Muhammad Khan\", value: \"Tando Muhammad Khan\" },\n { label: \"Tank\", value: \"Tank\" },\n { label: \"Tharparkar\", value: \"Tharparkar\" },\n { label: \"Thatta\", value: \"Thatta\" },\n { label: \"Toba Tek Singh\", value: \"Toba Tek Singh\" },\n { label: \"Tor Garh\", value: \"Tor Garh\" },\n { label: \"Vehari\", value: \"Vehari\" },\n { label: \"Umer Kot\", value: \"Umer Kot\" },\n { label: \"Upper Dir\", value: \"Upper Dir\" },\n { label: \"Washuk\", value: \"Washuk\" },\n { label: \"Waziristan\", value: \"Waziristan\" },\n { label: \"Zhob\", value: \"Zhob\" },\n { label: \"Ziarat\", value: \"Ziarat\" },\n { label: \"Other\", value: \"Other\" },\n ],\n },\n];\n\nexport const CITIES = [\n {\n options: [\n { label: \"Abbottabad\", value: \"Abbottabad\" },\n { label: \"Ahmadpur East\", value: \"Ahmadpur East\" },\n { label: \"Ahmed Nager Chatha\", value: \"Ahmed Nager Chatha\" },\n { label: \"Ali Khan Abad\", value: \"Ali Khan Abad\" },\n { label: \"Alipur\", value: \"Alipur\" },\n { label: \"Arifwala\", value: \"Arifwala\" },\n { label: \"Attock\", value: \"Attock\" },\n { label: \"Awaran\", value: \"Awaran\" },\n { label: \"Badin\", value: \"Badin\" },\n { label: \"Bhera\", value: \"Bhera\" },\n { label: \"Bhalwal\", value: \"Bhalwal\" },\n { label: \"Bahawalnagar\", value: \"Bahawalnagar\" },\n { label: \"Bahawalpur\", value: \"Bahawalpur\" },\n { label: \"Bhakkar\", value: \"Bhakkar\" },\n { label: \"Bolhari\", value: \"Bolhari\" },\n { label: \"Burewala\", value: \"Burewala\" },\n { label: \"Chakwal\", value: \"Chakwal\" },\n { label: \"Chaman\", value: \"Chaman\" },\n { label: \"Charsada\", value: \"Charsada\" },\n { label: \"Chenab Nagar\", value: \"Chenab Nagar\" },\n { label: \"Chillianwala\", value: \"Chillianwala\" },\n { label: \"Choa Saidanshah\", value: \"Choa Saidanshah\" },\n { label: \"Chichawatni\", value: \"Chichawatni\" },\n { label: \"Chiniot\", value: \"Chiniot\" },\n { label: \"Chishtian\", value: \"Chishtian\" },\n { label: \"Chunian\", value: \"Chunian\" },\n { label: \"Dadu\", value: \"Dajkot\" },\n { label: \"Dajkot\", value: \"Dajkot\" },\n { label: \"Daska\", value: \"Daska\" },\n { label: \"Darya Khan\", value: \"Darya Khan\" },\n { label: \"Dera Ghazi Khan\", value: \"Dera Ghazi Khan\" },\n { label: \"Dera Ismail Khan\", value: \"Dera Ismail Khan\" },\n { label: \"Dhaular\", value: \"Dhaular\" },\n { label: \"Dina\", value: \"Dina\" },\n { label: \"Dinga\", value: \"Dinga\" },\n { label: \"Dir\", value: \"Dir\" },\n { label: \"Dhudial Chakwal\", value: \"Dhudial Chakwal\" },\n { label: \"Dipalpur\", value: \"Dipalpur\" },\n { label: \"Faisalabad\", value: \"Faisalabad\" },\n { label: \"Fateh Jang\", value: \"Fateh Jang\" },\n { label: \"Ferozewala\", value: \"Ferozewala\" },\n { label: \"Ghakhar Mandi\", value: \"Ghakhar Mandi\" },\n { label: \"Ghotki\", value: \"Ghotki\" },\n { label: \"Gojra\", value: \"Gojra\" },\n { label: \"Gujranwala\", value: \"Gujranwala\" },\n { label: \"Gujrat\", value: \"Gujrat\" },\n { label: \"Gujar Khan\", value: \"Gujar Khan\" },\n { label: \"Harappa\", value: \"Harappa\" },\n { label: \"Hafizabad\", value: \"Hafizabad\" },\n { label: \"Haroonabad\", value: \"Haroonabad\" },\n { label: \"Hasilpur\", value: \"Hasilpur\" },\n { label: \"Haveli Lakha\", value: \"Haveli Lakha\" },\n { label: \"Hub\", value: \"Hub\" },\n { label: \"Hyderabad\", value: \"Hyderabad\" },\n { label: \"Islamabad\", value: \"Islamabad\" },\n { label: \"Jacobabad\", value: \"Jacobabad\" },\n { label: \"Jampur\", value: \"Jampur\" },\n { label: \"Jaranwala\", value: \"Jaranwala\" },\n { label: \"Jatoi\", value: \"Jatoi\" },\n { label: \"Jhang\", value: \"Jhang\" },\n { label: \"Jhelum\", value: \"Jhelum\" },\n { label: \"Kabal\", value: \"Kabal\" },\n { label: \"Kallar Syedan\", value: \"Kallar Syedan\" },\n { label: \"Kalabagh\", value: \"Kalabagh\" },\n { label: \"Kamalia\", value: \"Kamalia\" },\n { label: \"Kamalia\", value: \"Kamalia\" },\n { label: \"Kambar Ali Khan\", value: \"Kambar Ali Khan\" },\n { label: \"Kamoke\", value: \"Kamoke\" },\n { label: \"Kandhkot\", value: \"Kandhkot\" },\n { label: \"Karachi\", value: \"Karachi\" },\n { label: \"Karor Lal Esan\", value: \"Karor Lal Esan\" },\n { label: \"Kasur\", value: \"Kasur\" },\n { label: \"Khairpur\", value: \"Khairpur\" },\n { label: \"Khanewal\", value: \"Khanewal\" },\n { label: \"Khanpur\", value: \"Khanpur\" },\n { label: \"Khanqah Sharif\", value: \"Khanqah Sharif\" },\n { label: \"Kharian\", value: \"Kharian\" },\n { label: \"Khushab\", value: \"Khushab\" },\n { label: \"Khuzdar\", value: \"Khuzdar\" },\n { label: \"Kohat\", value: \"Kohat\" },\n { label: \"Kot Abdul Malik\", value: \"Kot Abdul Malik\" },\n { label: \"Kot Addu\", value: \"Kot Addu\" },\n { label: \"Kotri\", value: \"Kotri\" },\n { label: \"Jauharabad\", value: \"Jauharabad\" },\n { label: \"Lahore\", value: \"Lahore\" },\n { label: \"Larkana\", value: \"Lahore\" },\n { label: \"Lalamusa\", value: \"Lalamusa\" },\n { label: \"Layyah\", value: \"Layyah\" },\n { label: \"Lawa Chakwal\", value: \"Lawa Chakwal\" },\n { label: \"Liaquat Pur\", value: \"Liaquat Pur\" },\n { label: \"Lodhran\", value: \"Lodhran\" },\n { label: \"Malakwal\", value: \"Malakwal\" },\n { label: \"Mamoori\", value: \"Mamoori\" },\n { label: \"Mailsi\", value: \"Mailsi\" },\n { label: \"Mandi Bahauddin\", value: \"Mandi Bahauddin\" },\n { label: \"Mansehra\", value: \"Mansehra\" },\n { label: \"Mardan\", value: \"Mardan\" },\n { label: \"Mian Channu\", value: \"Mian Channu\" },\n { label: \"Mianwali\", value: \"Mianwali\" },\n { label: \"Miani\", value: \"Miani\" },\n { label: \"Mingora\", value: \"Mingora\" },\n { label: \"Mirpur Khas\", value: \"Mirpur Khas\" },\n { label: \"Multan\", value: \"Multan\" },\n { label: \"Murree\", value: \"Murree\" },\n { label: \"Muridke\", value: \"Muridke\" },\n { label: \"Muzaffargarh\", value: \"Muzaffargarh\" },\n { label: \"Narowal\", value: \"Narowal\" },\n { label: \"Nawabshah\", value: \"Nawabshah\" },\n { label: \"Nankana Sahib\", value: \"Nankana Sahib\" },\n { label: \"Nowshera\", value: \"Nowshera\" },\n { label: \"Okara\", value: \"Okara\" },\n { label: \"Pakpattan\", value: \"Pakpattan\" },\n { label: \"Pattoki\", value: \"Pattoki\" },\n { label: \"Peshawar\", value: \"Peshawar\" },\n { label: \"Pindi Bhattian\", value: \"Pindi Bhattian\" },\n { label: \"Pind Dadan Khan\", value: \"Pind Dadan Khan\" },\n { label: \"Pir Mahal\", value: \"Pir Mahal\" },\n { label: \"Qaimpur\", value: \"Qaimpur\" },\n { label: \"Qila Didar Singh\", value: \"Qila Didar Singh\" },\n { label: \"Quetta\", value: \"Quetta\" },\n { label: \"Raiwind\", value: \"Raiwind\" },\n { label: \"Rajanpur\", value: \"Rajanpur\" },\n { label: \"Rahim Yar Khan\", value: \"Rahim Yar Khan\" },\n { label: \"Rawalpindi\", value: \"Rawalpindi\" },\n { label: \"Renala Khurd\", value: \"Renala Khurd\" },\n { label: \"Sadiqabad\", value: \"Sadiqabad\" },\n { label: \"Sagri\", value: \"Sagri\" },\n { label: \"Sahiwal\", value: \"Sahiwal\" },\n { label: \"Sambrial\", value: \"Sambrial\" },\n { label: \"Samundri\", value: \"Samundri\" },\n { label: \"Sangla Hill\", value: \"Sangla Hill\" },\n { label: \"Sarai Alamgir\", value: \"Sarai Alamgir\" },\n { label: \"Sargodha\", value: \"Sargodha\" },\n { label: \"Shakargarh\", value: \"Shakargarh\" },\n { label: \"Shahdadkot\", value: \"Shahdadkot\" },\n { label: \"Sheikhupura\", value: \"Sheikhupura\" },\n { label: \"Shikarpur\", value: \"Shikarpur\" },\n { label: \"Shujaabad\", value: \"Shujaabad\" },\n { label: \"Sialkot\", value: \"Sialkot\" },\n { label: \"Siranwali\", value: \"Siranwali\" },\n { label: \"Sohawa\", value: \"Sohawa\" },\n { label: \"Soianwala\", value: \"Soianwala\" },\n { label: \"Sukkur\", value: \"Sukkur\" },\n { label: \"Swabi\", value: \"Swabi\" },\n { label: \"Tando Adam\", value: \"Tando Adam\" },\n { label: \"Tando Allah Yar\", value: \"Tando Allah Yar\" },\n { label: \"Tando Muhammad Khan\", value: \"Tando Muhammad Khan\" },\n { label: \"Tandlianwala\", value: \"Tandlianwala\" },\n { label: \"Talagang\", value: \"Talagang\" },\n { label: \"Taxila\", value: \"Taxila\" },\n { label: \"Toba Tek Singh\", value: \"Toba Tek Singh\" },\n { label: \"Turbat\", value: \"Turbat\" },\n { label: \"Umer Kot\", value: \"Umer Kot\" },\n { label: \"Vehari\", value: \"Vehari\" },\n { label: \"Wah Cantonment\", value: \"Wah Cantonment\" },\n { label: \"Wazirabad\", value: \"Wazirabad\" },\n { label: \"Yazman\", value: \"Yazman\" },\n { label: \"Zafarwal\", value: \"Zafarwal\" },\n { label: \"Other\", value: \"Other\" },\n ],\n },\n];\n","import PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport React, { Component } from \"react\";\nimport {\n Alert,\n Button,\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n// Redux\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\n\n//Import Breadcrumb\nimport Breadcrumb from \"../../components/Common/Breadcrumb\";\n\n// actions\nimport { updateLabProfile, getLabProfile } from \"../../store/actions\";\n\nimport { CITIES, DISTRICTS } from \"helpers/global_variables_helper\";\n\nclass LabProfile extends Component {\n constructor(props) {\n super(props);\n this.state = {\n name: \"\",\n logo: \"\",\n owner_name: \"\",\n registration_no: \"\",\n national_taxation_no: \"\",\n lab_experience: \"\",\n email: \"\",\n phone: \"\",\n landline: \"\",\n address: \"\",\n city: \"\",\n district: \"\",\n complaint_handling_email: \"\",\n complaint_handling_phone: \"\",\n is_digital_payment_accepted: \"\",\n is_Receive_Email_On_Booking:\"\",\n is_active: \"\",\n is_blocked: \"\",\n isProfileUpdated: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n // The code for converting \"image source\" (url) to \"Base64\"\n toDataURL = url =>\n fetch(url)\n .then(response => response.blob())\n .then(\n blob =>\n new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.onerror = reject;\n reader.readAsDataURL(blob);\n })\n );\n\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n componentDidMount() {\n this.props.getLabProfile(this.state.user_id);\n\n setTimeout(() => {\n this.setState({\n name: this.props.success.name,\n logo: process.env.REACT_APP_BACKENDURL + this.props.success.logo,\n owner_name: this.props.success.owner_name,\n registration_no: this.props.success.registration_no,\n national_taxation_no: this.props.success.national_taxation_no,\n lab_experience: this.props.success.lab_experience,\n email: this.props.success.email,\n phone: this.props.success.phone,\n landline: this.props.success.landline,\n address: this.props.success.address,\n city: this.props.success.city,\n district: this.props.success.district,\n province: this.props.success.province,\n complaint_handling_email: this.props.success.complaint_handling_email,\n complaint_handling_phone: this.props.success.complaint_handling_phone,\n is_digital_payment_accepted:\n this.props.success.is_digital_payment_accepted,\n is_Receive_Email_On_Booking:\n this.props.success.is_Receive_Email_On_Booking,\n is_active: this.props.success.is_active,\n });\n }, 1500);\n }\n\n render() {\n return (\n \n
\n \n {/* Render Breadcrumb */}\n \n\n \n \n \n \n
\n
\n \n
\n
\n
\n
{this.state.name}
\n

{this.state.email}

\n
\n
\n
\n
\n
\n \n
\n\n {this.state.isProfileUpdated && this.state.isProfileUpdated ? (\n Your profile is updated.\n ) : null}\n\n

Update Lab Profile

\n\n \n \n {\n // if no file was selected for logo then get current image from url and convert to file\n if (typeof values.logo == \"string\") {\n this.toDataURL(values.logo).then(dataUrl => {\n var fileData = this.dataURLtoFile(\n dataUrl,\n values.logo.split(\"/\").at(-1)\n );\n values.logo = fileData;\n\n this.props.updateLabProfile(values, this.state.user_id);\n });\n }\n\n // Otherwise just call update method\n else {\n this.props.updateLabProfile(values, this.state.user_id);\n }\n\n // To show success message of update\n this.setState({ isProfileUpdated: true });\n window.scrollTo({top: 0, left: 0, behavior: 'smooth'});\n\n\n // To get updated profile again\n setTimeout(() => {\n this.props.getLabProfile(this.state.user_id);\n }, 1000);\n\n // To display updated logo\n setTimeout(() => {\n this.setState({\n logo:\n process.env.REACT_APP_BACKENDURL +\n this.props.success.logo,\n });\n }, 2000);\n\n // To make success message disappear after sometime\n setTimeout(() => {\n this.setState({\n isProfileUpdated: false,\n });\n }, 5000);\n }}\n >\n {({ errors, status, touched }) => (\n
\n {/* Name field */}\n
\n \n \n this.setState({ name: e.target.value })\n }\n value={this.state.name}\n className={\n \"form-control\" +\n (errors.name && touched.name ? \" is-invalid\" : \"\")\n }\n />\n \n
\n {/* Logo field */}\n
\n \n \n \n \n this.setState({\n logo: e.target.files[0],\n })\n }\n className=\"form-control\"\n />\n \n\n \n
\n Currently: {\" \"}\n \n Logo\n \n
\n \n
\n
\n {/* National Taxation No field */}\n
\n \n Lab NTN #\n \n \n
\n {/* Lab experience field */}\n {/*
\n \n \n this.setState({ lab_experience: e.target.value })\n }\n value={this.state.lab_experience}\n className={\n \"form-control\" +\n (errors.lab_experience && touched.lab_experience\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
*/}\n {/* Email field */}\n
\n \n \n this.setState({ email: e.target.value })\n }\n value={this.state.email}\n className={\n \"form-control\" +\n (errors.email && touched.email ? \" is-invalid\" : \"\")\n }\n />\n \n
\n {/* Landline field */}\n
\n \n \n this.setState({\n landline: e.target.value,\n })\n }\n value={this.state.landline}\n className={\n \"form-control\" +\n (errors.landline && touched.landline\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n {/* Address field */}\n
\n \n \n this.setState({ address: e.target.value })\n }\n value={this.state.address}\n className={\n \"form-control\" +\n (errors.address && touched.address\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n {/* Province field */}\n {/*
\n \n \n this.setState({\n province: e.target.value,\n })\n }\n value={this.state.province}\n className=\"form-select\"\n >\n \n \n \n \n \n \n
*/}\n {/* District field */}\n
\n \n\n \n this.setState({\n district: selectedGroup.value,\n })\n }\n styles={{\n control: (base, state) => ({\n ...base,\n borderColor:\n errors.district && touched.district\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n className={\n \"defautSelectParent\" +\n (errors.district && touched.district\n ? \" is-invalid\"\n : \"\")\n }\n options={DISTRICTS}\n placeholder=\"Select District...\"\n />\n\n \n
\n {/* City field */}\n
\n \n \n this.setState({\n city: selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (errors.city && touched.city ? \" is-invalid\" : \"\")\n }\n styles={{\n control: (base, state) => ({\n ...base,\n borderColor:\n errors.city && touched.city\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={CITIES}\n placeholder=\"Select City...\"\n />\n\n \n
\n
\n \n
\n
\n )}\n \n
\n
\n
\n
\n
\n );\n }\n}\n\nLabProfile.propTypes = {\n match: PropTypes.object,\n location: PropTypes.object,\n updateLabProfile: PropTypes.func,\n error: PropTypes.any,\n success: PropTypes.any,\n getLabProfile: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const { error, success } = state.LabProfile;\n return { error, success };\n};\n\nexport default withRouter(\n connect(mapStateToProps, {\n updateLabProfile,\n getLabProfile,\n })(LabProfile)\n);\n","import PropTypes from \"prop-types\";\nimport React, { Component } from \"react\";\nimport {\n Alert,\n Button,\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n// Redux\nimport { connect } from \"react-redux\";\nimport { withRouter } from \"react-router-dom\";\n\n//Import Breadcrumb\nimport Breadcrumb from \"../../components/Common/Breadcrumb\";\n\n// actions\nimport { updatePatientProfile, getPatientProfile } from \"../../store/actions\";\n\nclass PatientProfile extends Component {\n constructor(props) {\n super(props);\n this.state = {\n name: \"\",\n email: \"\",\n phone: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n componentDidMount() {\n this.props.getPatientProfile(this.state.user_id);\n\n setTimeout(() => {\n this.setState({\n name: this.props.success.name,\n email: this.props.success.email,\n phone: this.props.success.phone,\n });\n }, 1500);\n }\n\n render() {\n return (\n \n
\n \n {/* Render Breadcrumb */}\n \n\n \n \n \n \n
\n
\n
\n
{this.state.name}
\n

{this.state.email}

\n
\n
\n
\n
\n
\n \n
\n\n {this.state.isProfileUpdated && this.state.isProfileUpdated ? (\n \n Your profile has been updated successfully.\n \n ) : null}\n\n

Update Profile

\n\n \n \n {\n this.props.updatePatientProfile(values, this.state.user_id);\n // To show success message of update\n this.setState({ isProfileUpdated: true });\n window.scrollTo({top: 0, left: 0, behavior: 'smooth'});\n\n // To get updated profile again\n setTimeout(() => {\n this.props.getPatientProfile(this.state.user_id);\n }, 1000);\n\n // To make success message disappear after sometime\n setTimeout(() => {\n this.setState({\n isProfileUpdated: false,\n });\n }, 5000);\n }}\n >\n {({ errors, status, touched }) => (\n
\n {/* Name field */}\n
\n \n \n this.setState({ name: e.target.value })\n }\n value={this.state.name}\n className={\n \"form-control\" +\n (errors.name && touched.name ? \" is-invalid\" : \"\")\n }\n />\n \n
\n\n
\n \n \n this.setState({ email: e.target.value })\n }\n value={this.state.email}\n className={\n \"form-control\" +\n (errors.email && touched.email ? \" is-invalid\" : \"\")\n }\n />\n \n
\n\n {/* Phone field */}\n
\n \n \n this.setState({ phone: e.target.value })\n }\n value={this.state.phone}\n className={\n \"form-control\" +\n (errors.phone && touched.phone ? \" is-invalid\" : \"\")\n }\n />\n \n
\n
\n \n
\n
\n )}\n \n
\n
\n
\n
\n
\n );\n }\n}\n\nPatientProfile.propTypes = {\n match: PropTypes.object,\n location: PropTypes.object,\n updatePatientProfile: PropTypes.func,\n error: PropTypes.any,\n success: PropTypes.any,\n getPatientProfile: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const { error, success } = state.PatientProfile;\n return { error, success };\n};\n\nexport default withRouter(\n connect(mapStateToProps, {\n updatePatientProfile,\n getPatientProfile,\n })(PatientProfile)\n);\n","import PropTypes from \"prop-types\";\nimport React, { Component } from \"react\";\nimport {\n Alert,\n Button,\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Input,\n FormGroup\n} from \"reactstrap\";\nimport Select from \"react-select\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n// Redux \nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\n\n//Import Breadcrumb\nimport Breadcrumb from \"../../components/Common/Breadcrumb\";\n\n// actions\nimport {\n getTerritoriesList,\n updateCorporateProfile,\n getCorporateProfile,\n getCorporateProfileSuccess,\n} from \"../../store/actions\";\n\nclass CorporateProfile extends Component {\n constructor(props) {\n super(props);\n this.state = {\n name: \"\",\n logo: \"\",\n national_taxation_no: \"\",\n email: \"\",\n phone: \"\",\n landline: \"\",\n address: \"\",\n city: \"\",\n payment_terms: \"\",\n payment_request: \"\",\n limit: \"\",\n end_date: \"\",\n reason: \"\",\n isProfileUpdated: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n // The code for converting \"image source\" (url) to \"Base64\"\n toDataURL = url =>\n fetch(url)\n .then(response => response.blob())\n .then(\n blob =>\n new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.onerror = reject;\n reader.readAsDataURL(blob);\n })\n );\n\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n // Converts a date string to the required format\n formatDateForInput(dateStr) {\n const date = new Date(dateStr);\n return date.toISOString().slice(0, 16); // Converts to YYYY-MM-DDTHH:MM\n }\n\n componentDidMount() {\n this.props.getCorporateProfile(this.state.user_id);\n this.props.getTerritoriesList();\n }\n \n componentDidUpdate(prevProps) {\n if (prevProps.success !== this.props.success) {\n const { success } = this.props;\n console.log(\"payment request is \", success.payment_request)\n if (success) {\n this.setState({\n name: success.name || \"\",\n logo: success.logo ? process.env.REACT_APP_BACKENDURL + success.logo : \"\",\n national_taxation_no: success.national_taxation_no || \"\",\n email: success.email || \"\",\n phone: success.phone || \"\",\n landline: success.landline || \"\",\n address: success.address || \"\",\n city: success.city || \"\",\n payment_terms: success.payment_terms || \"\",\n limit: success.limit || \"\",\n end_date: success.end_date ? this.formatDateForInput(success.end_date) : \"\",\n reason: success.reason || \"\",\n payment_request: success.payment_request || \"\",\n });\n \n // Check if city and city_id are present and not empty\n if (success.city && success.city_id) {\n // Parse the cities and city_ids\n const cities = success.city.split(\", \");\n const cityIds = success.city_id.split(\",\").map(id => parseInt(id));\n \n // Combine cities and cityIds into an array of objects compatible with react-select\n const selectedCities = cityIds.map((id, index) => ({\n label: cities[index],\n value: id,\n }));\n \n // Set the selected cities in the state\n this.setState({ selectedCities });\n } else {\n console.error(\"Missing city or city_id in success object:\", success);\n }\n }\n }\n }\n \n\n render() {\n \n const cityList = [];\n for (let i = 0; i < this.props.territoriesList.length; i++) {\n cityList.push({\n label: this.props.territoriesList[i].city,\n value: this.props.territoriesList[i].id,\n });\n }\n\n return (\n \n
\n \n {/* Render Breadcrumb */}\n \n\n \n \n \n \n
\n
\n \n
\n
\n
\n
{this.state.name}
\n

{this.state.email}

\n
\n
\n
\n
\n
\n \n
\n\n {this.state.isProfileUpdated && this.state.isProfileUpdated ? (\n Your profile is updated.\n ) : null}\n\n

Update Corporate Profile

\n\n \n \n {\n // if no file was selected for logo then get current image from url and convert to file\n if (typeof values.logo == \"string\") {\n this.toDataURL(values.logo).then(dataUrl => {\n var fileData = this.dataURLtoFile(\n dataUrl,\n values.logo.split(\"/\").at(-1)\n );\n values.city_id = this.state.selectedCities.map(city => city.value).join(\", \");\n values.logo = fileData;\n\n this.props.updateCorporateProfile(values, this.state.user_id);\n // console.log(\"update howa yah nahi 11 if\", this.props.updateCorporateProfile(values, this.state.user_id))\n });\n }\n\n // Otherwise just call update method\n else {\n values.city_id = this.state.selectedCities.map(city => city.value).join(\", \");\n this.props.updateCorporateProfile(values, this.state.user_id);\n // console.log(\"update howa yah nahi else\", this.props.updateCorporateProfile(values, this.state.user_id))\n }\n\n // To show success message of update\n this.setState({ isProfileUpdated: true });\n window.scrollTo({top: 0, left: 0, behavior: 'smooth'});\n\n\n // To get updated profile again\n setTimeout(() => {\n this.props.getCorporateProfile(this.state.user_id);\n }, 1000);\n\n // To display updated logo\n setTimeout(() => {\n this.setState({\n logo:\n process.env.REACT_APP_BACKENDURL +\n this.props.success.logo,\n });\n }, 2000);\n\n // To make success message disappear after sometime\n setTimeout(() => {\n this.setState({\n isProfileUpdated: false,\n });\n }, 5000);\n }}\n >\n {({ errors, status, touched, values, setFieldValue }) => (\n
\n\n {/* Name field */}\n
\n \n \n this.setState({ name: e.target.value })\n }\n value={this.state.name}\n className={\n \"form-control\" +\n (errors.name && touched.name ? \" is-invalid\" : \"\")\n }\n />\n \n
\n \n {/* Logo field */}\n
\n \n \n \n \n this.setState({\n logo: e.target.files[0],\n })\n }\n className=\"form-control\"\n />\n \n\n \n
\n Currently: {\" \"}\n \n Logo\n \n
\n \n
\n
\n\n {/* Owner name field */}\n
\n \n Corporate NTN #\n \n \n
\n\n {/* Email field */}\n
\n \n \n this.setState({ email: e.target.value })\n }\n value={this.state.email}\n className={\n \"form-control\" +\n (errors.email && touched.email ? \" is-invalid\" : \"\")\n }\n />\n \n
\n\n {/* Phone field */}\n
\n \n \n this.setState({ phone: e.target.value })\n }\n value={this.state.phone}\n className={\n \"form-control\" +\n (errors.phone && touched.phone ? \" is-invalid\" : \"\")\n }\n />\n \n
\n\n {/* Landline field */}\n
\n \n \n this.setState({\n landline: e.target.value,\n })\n }\n value={this.state.landline}\n className={\n \"form-control\" +\n (errors.landline && touched.landline\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n {/*City*/}\n \n
\n\n\n {\n // Update selectedCities state with the new selection\n this.setState({\n selectedCities: selectedGroups,\n // Update city state with the names of the selected cities for display purposes if needed\n city: selectedGroups ? selectedGroups.map(group => group.value).join(\", \") : \"\"\n });\n }}\n className={\n \"defautSelectParent\" +\n (errors.city_id && touched.city_id ? \" is-invalid\" : \"\")\n }\n styles={{\n control: (base, state) => ({\n ...base,\n borderColor:\n errors.city_id && touched.city_id ? \"#f46a6a\" : \"#ced4da\",\n }),\n }}\n options={cityList} // Pass the cityList array as options\n value={this.state.selectedCities} // Set the selected cities here\n placeholder=\"Select City...\"\n/>\n\n\n\n\n\n
\n {/* Address field */}\n
\n \n \n this.setState({ address: e.target.value })\n }\n value={this.state.address}\n className={\n \"form-control\" +\n (errors.address && touched.address\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n{values.payment_terms === \"Payment by Coorporate to LH\" && (\n
\n \n {\n const value = e.target.value;\n setFieldValue('payment_terms', value);\n\n // Reset fields when changing payment terms\n if (value !== \"Payment by Coorporate to LH\") {\n setFieldValue('limit', '');\n setFieldValue('end_date', '');\n }\n if (value !== \"Request for Change Payment\") {\n setFieldValue('reason', '');\n }\n }}\n value={values.payment_terms}\n className=\"form-select\"\n >\n <>\n \n \n \n \n \n \n
\n)}\n\n{values.payment_request == \"Request for Change Payment\" && (\n
\n \n \n You have requested for payment change, wait until labhazir team approves it.\n \n \n
\n)}\n\n{values.payment_terms === \"Payment by Patient to Lab\" && (\n
\n \n {\n const value = e.target.value;\n setFieldValue('payment_terms', value);\n\n // Reset fields when changing payment terms\n if (value !== \"Payment by Coorporate to LH\") {\n setFieldValue('limit', '');\n setFieldValue('end_date', '');\n }\n if (value !== \"Request for Change Payment\") {\n setFieldValue('reason', '');\n }\n // Adjust payment_terms if payment_request is \"Request for Change Payment\"\n // if (values.payment_request === \"Request for Change Payment\" && value === \"Payment by Coorporate to LH\") {\n // setFieldValue('payment_terms', \"Request for Change Payment\");\n // }\n }}\n value={values.payment_terms}\n className=\"form-select\"\n >\n <>\n \n \n \n \n \n
\n)}\n {values.payment_terms === \"Request for Change Payment\" && (\n
\n \n {\n const value = e.target.value;\n setFieldValue('payment_terms', value);\n\n // Reset fields when changing payment terms\n if (value !== \"Payment by Coorporate to LH\") {\n setFieldValue('limit', '');\n setFieldValue('end_date', '');\n }\n if (value !== \"Request for Change Payment\") {\n setFieldValue('reason', '');\n }\n }}\n value={values.payment_terms}\n className=\"form-select\"\n >\n <>\n \n \n \n \n \n
\n)}\n{/* Conditionally render Quota Amount and Limit Expiry Date */}\n{values.payment_terms === \"Payment by Coorporate to LH\" && (values.payment_request !== \"Request for Change Payment\" || values.payment_request !== \"Approved Payment Method\") && (\n <>\n
\n \n \n {/* */}\n
\n

Note: This Amount will be assigned to all employees and their family members.

\n\n
\n \n {\n setFieldValue('end_date', e.target.value);\n }}\n className=\"form-control\"\n />\n {/* */}\n
\n \n)}\n{/* Conditionally render Reason */}\n{values.payment_terms === \"Request for Change Payment\" && (\n
\n \n \n {/* */}\n
\n)}\n\n\n {/* District field */}\n {/*
\n \n \n this.setState({\n district: e.target.value,\n })\n }\n value={this.state.district}\n className={\n \"form-control\" +\n (errors.district && touched.district\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
*/}\n
\n \n
\n
\n )}\n \n
\n
\n
\n
\n
\n );\n }\n}\n\nCorporateProfile.propTypes = {\n match: PropTypes.object,\n location: PropTypes.object,\n updateCorporateProfile: PropTypes.func,\n error: PropTypes.any,\n success: PropTypes.any,\n getCorporateProfile: PropTypes.func,\n getCorporateProfileSuccess: PropTypes.func,\n getTerritoriesList: PropTypes.func,\n territoriesList: PropTypes.array,\n};\n\nconst mapStateToProps = state => {\n const { territoriesList } = state.CorporateInformation;\n const { error, success } = state.CorporateProfile;\n\n return { error, success, territoriesList };\n};\n\nexport default withRouter(\n connect(mapStateToProps, {\n getTerritoriesList,\n updateCorporateProfile,\n getCorporateProfile,\n getCorporateProfileSuccess,\n })(CorporateProfile)\n);\n","import PropTypes from \"prop-types\";\nimport React, { Component } from \"react\";\nimport {\n Alert,\n Button,\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n// Redux\nimport { connect } from \"react-redux\";\nimport { withRouter } from \"react-router-dom\";\n\n//Import Breadcrumb\nimport Breadcrumb from \"../../components/Common/Breadcrumb\";\n\n// actions\nimport {\n updateSampleCollectorProfile,\n getSampleCollectorProfile,\n} from \"../../store/actions\";\n\nclass SampleCollectorProfile extends Component {\n constructor(props) {\n super(props);\n this.state = {\n name: \"\",\n phone: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n componentDidMount() {\n this.props.getSampleCollectorProfile(this.state.user_id);\n\n setTimeout(() => {\n this.setState({\n name: this.props.success.name,\n // email: this.props.success.email,\n phone: this.props.success.phone,\n });\n }, 1500);\n }\n\n render() {\n return (\n \n
\n \n {/* Render Breadcrumb */}\n \n\n \n \n \n \n
\n
\n
\n
{this.state.name}
\n {/*

{this.state.phone}

*/}\n
\n
\n
\n
\n
\n \n
\n\n {this.state.isProfileUpdated && this.state.isProfileUpdated ? (\n \n Your profile has been updated successfully.\n \n ) : null}\n\n

Update Profile

\n\n \n \n {\n this.props.updateSampleCollectorProfile(\n values,\n this.state.user_id\n );\n // To show success message of update\n this.setState({ isProfileUpdated: true });\n window.scrollTo({top: 0, left: 0, behavior: 'smooth'});\n\n // To get updated profile again\n setTimeout(() => {\n this.props.getSampleCollectorProfile(this.state.user_id);\n }, 1000);\n\n // To make success message disappear after sometime\n setTimeout(() => {\n this.setState({\n isProfileUpdated: false,\n });\n }, 5000);\n }}\n >\n {({ errors, status, touched }) => (\n
\n {/* Name field */}\n
\n \n \n
\n\n {/* Email field\n
\n \n \n
*/}\n\n {/* Phone field */}\n
\n \n \n this.setState({ phone: e.target.value })\n }\n value={this.state.phone}\n className={\n \"form-control\" +\n (errors.phone && touched.phone ? \" is-invalid\" : \"\")\n }\n />\n \n
\n
\n \n
\n
\n )}\n \n
\n
\n
\n
\n
\n );\n }\n}\n\nSampleCollectorProfile.propTypes = {\n match: PropTypes.object,\n location: PropTypes.object,\n updateSampleCollectorProfile: PropTypes.func,\n error: PropTypes.any,\n success: PropTypes.any,\n getSampleCollectorProfile: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const { error, success } = state.SampleCollectorProfile;\n return { error, success };\n};\n\nexport default withRouter(\n connect(mapStateToProps, {\n updateSampleCollectorProfile,\n getSampleCollectorProfile,\n })(SampleCollectorProfile)\n);\n","import PropTypes from \"prop-types\";\nimport React, { Component } from \"react\";\nimport {\n Alert,\n Button,\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n// Redux\nimport { connect } from \"react-redux\";\nimport { withRouter } from \"react-router-dom\";\n\n//Import Breadcrumb\nimport Breadcrumb from \"../../components/Common/Breadcrumb\";\n\n// actions\nimport { updateStaffProfile, getStaffProfile } from \"../../store/actions\";\n\nclass StaffProfile extends Component {\n constructor(props) {\n super(props);\n this.state = {\n name: \"\",\n email: \"\",\n phone: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n componentDidMount() {\n this.props.getStaffProfile(this.state.user_id);\n\n setTimeout(() => {\n this.setState({\n name: this.props.success.name,\n email: this.props.success.email,\n phone: this.props.success.phone,\n });\n }, 1500);\n }\n\n render() {\n return (\n \n
\n \n {/* Render Breadcrumb */}\n \n\n \n \n \n \n
\n
\n
\n
{this.state.name}
\n {/*

{this.state.phone}

*/}\n
\n
\n
\n
\n
\n \n
\n\n {this.state.isProfileUpdated && this.state.isProfileUpdated ? (\n \n Your profile has been updated successfully.\n \n ) : null}\n\n

Your Profile

\n\n \n \n {\n this.props.updateStaffProfile(values, this.state.user_id);\n // To show success message of update\n this.setState({ isProfileUpdated: true });\n window.scrollTo({top: 0, left: 0, behavior: 'smooth'});\n\n // To get updated profile again\n setTimeout(() => {\n this.props.getStaffProfile(this.state.user_id);\n }, 1000);\n\n // To make success message disappear after sometime\n setTimeout(() => {\n this.setState({\n isProfileUpdated: false,\n });\n }, 5000);\n }}\n >\n {({ errors, status, touched }) => (\n
\n {/* Name field */}\n
\n \n \n
\n\n {/* Email field */}\n
\n \n \n
\n\n {/* Phone field */}\n
\n \n \n \n
\n {/*
\n \n
*/}\n
\n )}\n \n
\n
\n
\n
\n
\n );\n }\n}\n\nStaffProfile.propTypes = {\n match: PropTypes.object,\n location: PropTypes.object,\n updateStaffProfile: PropTypes.func,\n error: PropTypes.any,\n success: PropTypes.any,\n getStaffProfile: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const { error, success } = state.StaffProfile;\n return { error, success };\n};\n\nexport default withRouter(\n connect(mapStateToProps, {\n updateStaffProfile,\n getStaffProfile,\n })(StaffProfile)\n);\n","export default __webpack_public_path__ + \"static/media/logo.627c5d38.svg\";","export default __webpack_public_path__ + \"static/media/m.test.abf3d1d9.png\";","export default __webpack_public_path__ + \"static/media/m.profile1.8a90f6ab.png\";","export default __webpack_public_path__ + \"static/media/m.package.00ae3f11.png\";","export default \"data:image/png;base64,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\"","export default __webpack_public_path__ + \"static/media/m.appointment.09795cfe.png\";","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASIAAACuCAMAAAClZfCTAAAAwFBMVEWYzPz////m5ubl5eXk5OTz8/Pu7u7p6en8/Pz39/dFh8f4+Pjr6+tBhMWbz/6UyvyPyPw9gcONwvRJiskzf8R6sudup98vfcOe0v9ZltKEuu5nodp4sOb//vrI4fpfm9bc6/vC4P3m8f3z+f+42fqHr9vT6P6p0/t7pNKcut26zufE1Oe6yt5SkM7c5fCt1PqkwODq9v/Q2eSswty1z+zR3u9pmMx+rNzq7vJdksqPt+HD2O7Z5fLL1+arzO5+pdKqS2OTAAAR8UlEQVR4nO1dC3eiuhYGrajIQ4SKj9pWrbXagbHPsTPtmf//r252AgSQNwTpurPPWrM4brXJZ7Jf+ZJwPJLeRavVFuCp00ZPfXjqtlqti39KJFzTWtQ45T+ICkF0McDaduRHz6Fsn7VBLa4H0kUiwEMHnvrwJMETW6UkHI+oaSmfFI72ka+nQdFK7gJJFxAbwFMHngR46sETW6X9IJrWxl4kfXKw3lmm/P4s1dGgaCUHsw1r+zCkiRYGGvkoS+XekEVRlLXNKvaTgr0xNHiTue+yb1CM8mwQSStDJCIbD3bUJwfC8wNGEcR4XpwNojYSZ4y1284YQy85H2WmbAk66r0suyD9EVrhT77NHYDIu3i2DYpXcgLIoN8f9OGhA08deOrDEztl/wEQms8sTSYgzR/7HfrJngeQrFmzObz3gWfaoFhl33H6CDHi7+CJ+Dt4Yqfcm6j7OqdMRnMXpI83NJLIJ/kfHy5A89FE4XSYai8SywbFKttnCh1tQEgbKRzHKepcdkDSX6UufPLVBUieq/gtI7DZht2Y0LEOiEQEgXYF3feDJBr6QeJfdUP0AwTvuEIYybpwTogixlg7aQCWVGJDdOP0H4M0Fl2QXIDEsep7ww02R8IZWtvmOvXL4BVQsFTOJwp3JboOHgN0xSl+vWphczQ4Q3Mjnf5FkjMsrzyCIZJHAQgwSLoDkqyHAAJzJOPoqFV7a88SOup+Q+SHQbmykM3R9CslQumYo/+L6DpsiAIgzSxrFAGQZ45+Ce1zRNcXSQOwciUxRFEgOCjFqrA5Oki1thYg6tcbWHdsQEiexQMRD94MmyN7UGsaIAie028nOcPySrcwJlgxhigLRtgcWT2wDWxbG3T6RMskGOMlQZBg1PY6Qtd+u/3z+PhIDNGkCEIcNyHR0eN+//hn1RmgrxUkCU8G6ZtG1/sHJO+WpZmmaTgi49SssOg4UcFighj69B39kc0PiTlESJwxBpU+rIWnMsqVZcggYlhOIqLsQqKj4LdhMazPVqnWJig5qM5KUKftw1MHnoRAObegUtJPwcFS0BA5GIE5ihJZH/CMugJxkRtYRsYLBZWtg+H9xCAaFlG3pvMSCCGM5lNLF8m30W/H0UCJ1iYqWYWO0hS125qPL0GuZqMR9E+FsKcUQs4X4PRuNJpd4W+fz+HXuPlu0XUH5WHy1UQhUg6VRLxAJpfo9zCZQcRoZeUZzTNNTe9kNTJDFsp8YrVIBP9U7wbabwDRqC6IVDBGj2y6csEoLur+h35Xq2CEWEBQvKTt2HSFVegobQAiZjYoLArKcLVNfRBVwRWQ3mVkreuD6Ar9uSmbrrCiPSywQ6sVIuTSvhXtYW3Waa1RjITmtfHZ/k60B3Bocm0+H7k0NIqMr28VOkJpsUaHxk3AXh+634n2sEO/ql6bKULGCHl9edf9RrQHHhzauE6IxuDSOt+H9nDR0Wp1aAQi0WDQFWaFWRsgmtWHkOPS1t8ouoYkVq7R5yOIYBR9fh/aQwscml6jQ0MuDbK01+9De+iDQ6svQwOBLE3e9Vn0hg3toW6H5ro0ofUtaA8t/hFoMGeASJT1H50qu8IIIun5HXOo6szQQDDXTzSmdvUQVUt76B5/EZqiNk3K0FR1OBxy2y36V82UyalbZTJRttw21geoU4yRbG4GjaY9LA4m4XHqswR/pg5/Xq8w0xz5kdWSG6aiNLwl7+YX8V87mekOq/Sw6A2aSXtoCXvCU5S1q0m8IVKH1z0+IKvtMBkh9af71mUCmspkTPjJhn5dsiuMaA9d+90BaBxm4QUGxM8QQCC3ydNt6H7kKRlLhbshIJnvqwZG18eN6RihxCV7b8oEZb1NwIh+JuldBKSRa5J+H7sNoz3sZdcIJfr6GIQSe69u3fdcZzDtimOSNPkgtapZJKqCKyB8TQ2HK5288qrGIsSv4yFau29JMVkORorD4TasL74ptIfFzpljN0lGCDp7HUBlEfi/2xgA6Id+Zqz0gknCdBHz0GkI7eHRxADpabwhdUIB6V0jp6ds7322OwYB70NxGEaBNLIwSOaPbjOiawvTZNIZnsOjb8hgPFTVN/Wi3dXwyQU112qBMsPG0eo0gvbQgzWzREdPhEY3/JKi4cMoymKrS1d7l29BReFwIdJuAu2h/ZmR4UDBCEwZdeC+fB8BguIqV9mnmSO4EPmUpyvMaA8dI1ter7q9XQRf9gZXhMeiQUJegEjub+brCqvQsbvJtCKk3sWMFrXvKk4SMPqZpMwjBiJYN9qwgSgvV6D1mGmmqXExsnofo0CqjJlHlOB59pavK8xoD9lm2nDlzrMQEDR6DhujYTx4qeLMs4bQHhabLKXqoRspnhjeOIjyZR5hiKCYvek0hPYwwDMtbdls6PZ3Fe6vl8iHkBjmyzyCQuZZJ2dXmBVmhSwzzYPoxPJ6EAXBozYqa+bhE2d5tjG0B+zTxLRWp0N0q0Z+IEfmQSHC86xBtIcsPm2bEyKaeRRACNOMjT+9BtEeYKal7VxwITqxvR5EfnNNM48C08xZMxKaRHvYpRNk4821B54fIiXaQGUVyKw3UpMKs2/pPo1CFJo41Lf7MlWaeRRascT+7LFZtAc91ad5LjxsW2jNbEtfK5F5cLDfCPyH1CjawwB8mpxclF15SITCH1fhrwi50yy+XpsIEc7PKjoaoiLaQ4Y8jdrfkBOn9Q4PDpp5TApBNHPzsybRHiQ91ad5xZBgRk+tjmeKSmUenOPPxKJdYUV7kGCmaYmsK88YBQw2hYPaqJxrHicy0dw6SJNoD4S7l+jTqAl2S9dcoOTvjZj8ax4hoXWQJtEeepivH30SiCt0GPHr7VAFGdJlI2/EqEXWPPyCTxcx3hpHe5DTOUW++j7PP90vl8uV7wVvxKhu5lHMm3Eu10hqGO0Bwuv0ZD9+MdY3zZbuSznXPKiQ9GMjNYr2AKsgGerXQ/+wCcg9tdXuS/nXPChGcCqE+dwo2gNsOc+yUBSHEUWIsq1KbERSIDCSp1JzaA/SS5ZMHwutk/nljo6hcpmHhxFkIMahMbSHAT6TKONhKer2iQ/JLUfRoCFRyd1s+LTMdVNOe+DhJ9MuM6bk6nB76yM7rK8Vn80ps+YREOUSptq835DoGvIzeZp9PwOKh7bL68+Vfbu84wIUPhoWFMs8fDIB82i8VsEMqYD2gI+tztcl1ZXQy+40G5TfNAp7QUVTagLtQfpVGVc/JvOIwTNFyFTb5OkKI9pD9zH5hL1cvXIRuveRa1R1uby2V5/Xyzs1naHtF3yC39v5Q0cBE7Aq2c1A65K0cDS5p4kdylru8gwlfGSW1Ts37UHaZQ6J0oSGRG7moSonGUsvR7hEgqPduWkPb5gqW82mIRcGN/MYLsMAYa2SGSQFE2dvhWxdYUR7EN4hJCpykOWJnLCthpGBOPq5MxdrSR7ywWfqCivaw5dZ/TRzplIcQgijzH8PTzXzLVNXGIWO3d9AUKvk4AtvSdYprcUjlGf1UYUts4eSEJWiPXQhJsoRVycg5CKyIEPEV8VFf311f7/ye7bMNnsyRaP8d5ausKI9dHCKX/Q8VJ+crnn4irg/YWMfSu18IGWECJ+4arz0zkl7WOMD0MtjFGZb+bZCLN14UfUVLbOlcBgh0bATF1xZ0x74F3zCZVmDfZp5eLUAf4mfrg9kWj0iy9bmi3De6BqHjmUxomseTuZBLVEQi5jVyiSEjMPZaQ/Si1kaIzW8z4Ou/wdL/LRmmT7T3DHUANrDAt+dI09LILQMTzOPbx3aG0Oterrfx3bI3JfnPlRBe3AwKh4enbCt4pnYmZeypwQhqRm0B2ccFT3pm66KuK+cJrSn702BSCcINYZULO2N4hjRYixlhsRWsOmcTIYII2TsG0R76P4pPo7UUOYRgCjsuChEGRD60yjaw+JTK4jRMAIOb0fNCZ84G0QOQp2G0R5sXOTPndJGsq2yQLTlYkRRMULyc9NoD3zflvHxOGq+ACmSbeWFRQkQxdkiZUQugTz2C3eF2VlqLYxRzjK2jy2rRr0axjsdohE+MEA+NvKSixaZa7mWi2gAFNguG+/RPFJEDESE5iivy3WletqDo+SPGXfJeuKFOcEVfDqKTuIiN1WJY9aQHUS21NhLLgCirGv7XDzbitrw2zBEcQoPIrjbyVi0G3vJRc4D99W4jY7emmM4R/MwjSWKYiqoUL4rjCB6ygcRLZGd7C3yCDbB4TX09vTHBtfk5OtKISpPe6DKfNc2RGQensozRgG379sAEBt/YYi+2g295KL9Bala9uDRDYmeTj/izTT/HFRpLTKhoqaTk1SbeclF90eeg8DpNItYOvSVqY/OMr463EZWa8PgAkRfZbvC6hje7ouW/SDwlH0edBjx/FLhhkPup299P+FnAIi0/xhDVPhmiG6es9KHyaRGanZABk8BgmQSIZscNlu2K6wuuRAQRCl7HCgEkZmHH8J4GnvivgfY3YAgauolFzstc3AdXvOIwOiEWZsFIVzVl391m3rJxTzzAcXxubzvPdGr+tcpZztCBmIJTQ0dM5Me44vTfhneBQ+kA1mn7b8i+z867YZecpH5UgLPXyVPGlW9D4K0vktlO5ILeDvNvORisMi4EcR3lFHqO4d3t47rW6zuJ1nooBBea6X31zG65ALq19nyj7vtdqJs0X8Z4MTnPkNklJEu6x6h1shLLp4zp2gsbyty73JoZHT9XPNdTTGC+TLVQ1Sc9kCVeK9+vVdbRAlcdwGE9CZectHHPH6V3RWoWURRyNWWFV53UeUlF3hbmnhzNToXSooyurrBXOu3VkMvucBsDFmWrfFoUjdMijIZjS1yWbN809joemU4V3vLmngzq3HKoek1uxE196+bb5UWZiu95MK2TK+ddQ0m//DBv45p2a3yXWF1yUWftw/vhjuWEEwa48GkKMrsRnPhETXDnB6e+1UF1pVfcuEqj/uNbNDBpE3H7GKl8ZTiI5vyZr8Wuq3qulLxJRdU2ZWE54OleYNJY3XfHt4GQ+AxjOnOrr4rVUfXPmUbZeX7jW6Qn5jVPWBQhAXrY+h/93anxaYrVdIeTpR893E3NdOPWyks+PgU4+Ng88jJl21tLbSHU+VigQKB1EN7igo5hMcWBKma1tZCe4i6AeM3lEhYIMRxUML7XcU9FjXSHqKOMX42Gd0nR060XlXa2hovaPYzjudZzugtImCq3ytuLWvaQ6Sy/cOoavtsUMhJuxW3NmqRCP5h5NFcpZXp+Ke8okzha6s5oihRySguCigPOZlZ2QSX8Q/dyltbV+gYUK7lqrZh+4ScU3CsvrVMaQ+xSvD7lRtsMNa/JAatZUl7iFPyn9X7feLxP6XqW8uW9hCnxGdCVFv4hyI+8vgsWsuU9hCn7O6j/b6CJO1SNfQG5bTipDgen0Vr6w8dse0DXtTU31EFioWzsSVq00SMlKkmWuMZlC8DH8dl8kE9EFVJe4hV9v1+n6Azn8pOLd6KH0iK6q4YyNO5Hyfs8Xd9Nq1lR3tIUh7x+XiKi47mlZoBADFu95Gi+t8my9p8PMOzE3t87ciqtexoDwlKcuAaQudG1gLdxmVD7TLSlE8uiVYLwCTfjC9h3V7+xay17GgPSTuxMCVb9g0e1FlDtHYHfIGpFhVYKnO8U1I87CzR0PyfxM/mJ7PW1h9dgxL7fa+TmiFPfx+ejwtkIPHdnPKp0SYWWbZsqbvg7dffU7pmIJIcv16IqqA9JHMibBFDIRuG8bF5/VzzLbdFf40Ig6SoZHiNUYpBvrZjPx/+fhjOeNLENcPWsqI9pEh/o5vG9NfL53GBjKBPscDHjoiif5eWMoMzYkVjswh8xWBgfx3GH6YpboQKiQ3JUiXtIUXZ6R6P+KUTJbmb15eiKJfOzbhS+GtR/CLw63Vv0WbcWka0hxRlK1Zp403RmnsO0uSGbGn/lNg2qEnRdapy4IACBsnZRa59dM/YIGa0h+LK/gM2SDrKyEbEDP1dnLVBzGgPhZUdcn4NiiIdM3SomLzQKNpDUeUbSdnIP4/S+RvEkPZQVHnUXTqJftFtQoPqja4zKTsPJiRf5t9eqxkNYk57yK+UfnwY4scjKQM2oUF4kYgp7SG3csGvbUFoUIPqoD18f2VDQscmK/9B9A+i8sr/Af1KBDES02iIAAAAAElFTkSuQmCC\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAWoAAADHCAYAAAAwLRlnAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAACxLAAAsSwGlPZapAAAAB3RJTUUH5gYNCS0JJ8SmhgAAAAFvck5UAc+id5oAACUNSURBVHja7Z15mFxFuf+/L4thCxnDJmtCIGyCiaiAyjUBvIAbBpBdTPiBG+ANAe79IV7N4FVALpoRFZQtA7IJCkEUUdQEcWERExBlDRP2NZkEwirwuX9UD5lMpqf7dNc51cv7eZ7zZNJ9Tp33rfPW23Wq3npLchzHcRzHcRyndiy1AK0AsK6kkZLeLqlD0jBJb5O0aunfvuN1Sa8NOF6RtLR0vND3r5m9nFovx3EaA3fUVQJsKmm70rG9pK0kjZG00WDnX3ONdP75K36+337SkUdWdculkuZJ+pukf0q6S9KdZvZS6rpwHKdYVkktQCMCrCHpQ5ImSvo3Se+StFaWMnp6pOuvX/Hzbbetuoi1JO1aOvrL9ndJN0u6RdKfzOyh1PXlOE6+uKMuAewmaXcF57xrfaXlyg6l4+iS3M9K+p2k6yXdYGbPphbQcZy4tK2jBtaUtLekT0n6qKS1U8tUI+tJOrh0CLhD0g2Sfm5mt6UWznGc+mk7Rw1MVnBqe6eWJSfeUzq+Atwv6VxJM81sUWrBHMepjZVSC1AEwFrANOBRSd1qXSc9kK0knSlpIfAzYM/UAjmOk52WdtTARsAZkh6T9B1Jm6SWKSH7Sfo18HdgSmphHMepnpZ01MCWwIWSHpf0n5JGpJapgdhe0kzgCeAkwOvGcRqclnLUwLuBn0p6QNIRqeVpcDaUdJqkh4HjUwvjOE55WsJRA+OAGxQWh+yfWp4mY4SkbwMPAfulFsZxnBVpakcNrAvMVFjBt1dqeZqczefN08/GjuX5TTflotTCOI6zjKZ11MCXFIY4pqSWpVWYNEl64AENf/RRfWbmTK4EMq3GdBwnH5rOUQO7APdKOkshAZITge5u6eGHw98jRkiTJukASQ8Ch6eWzXHanaZy1Oefz6XXXqu/SNo6tSytRmfnsr+PO07q6JAkbSDpYuBmYIvUMjpOu9IUjhp4zy230HPUUTp00qTlnYpTPwN708cdt8Ipu0q6CzgwtayO0440/BJy4FRJX37yyWWfnXKKNHq0NGVKaunKM2mSNHbsip9v0WD90sWLpWnTlv2/X296IGtI+klpdeOxZvZKatkdp11o2HzUwDqSrlZINypJmjhRuummZefMnh0+ayCelbSk3/F86VgiabGk1RXC4dYu/bumwoYDI0rH8KIF7upa5qhHjZIWLKjqsvsl7W9mdxctr+M4DQKwPfAIA+jthXHjQApHRwfMnUsKbgPOA/4D2A14e0TdxwOHAqcBvwAW5anIjBnL6nPmzEyXvggcnNpWHMdJALB/yQkMSm8vjBixzLmMHh0+y5nZwNeBDwOrJ6iTHYAvAJcCz+XhrGfMqPnyH6S2GcdxCqTkDCsyd+7yzroOJ1OO54ErgSNowFwYwAcJPe57o2teG7cCG6euF8dxcoaQhrNqZs9e5qhnz47ibJ4CfgR8JHVdZKy3sYTkSrcmdtZPA9ulrg/HcXIAeDshTjczPT3hqJMrgX9LXQ+R6nJj4GvAwkTOeiHwntT14DhORIAxwPwEDuVF4AfAqNR1kGPdfg64L0HdLgV2Sa2/4zgRALYFnk3gSH4ArJda/wLreTKDRNDkzEv4bjKO09wQxlWfKdh5XAqMTq17wjo/nhwiRirQLlueOU5rAWxK2F2kKP4IbJ9a70YAWBs4w5214zhlATYkJKgvgnuAT6TWuREh/FheUaCz3j21zo7jVAEhuuOeghzDV1Pr2wwAuwMLCnomE1Lr6zhOBYA/F+AMbgfG1i9t+wCsDnQV8GwWAmNS6+s4ThmACwpwBCel1rOZAXYlLPrJk3/gu8Y4TuNBSFyUJ08CH0itZysArAfMyfl5XZ9aT8dx+gHslXOj/z1tFBNdFEBnzs/tG6l1dBxHErAJIblRXlyeWsdWBjggZ2ftYXuOkxryTRJ0Smr92gFgArA4p2fYi2fcc5x0AP+To5M+IrV+7QSwHflNMt6eWj/HaUsI0QN5cVhq/doRYEvyW/LflVo/x2krgHUIURh54D3phADb5Ois90itn+O0DUB3Tg35qNS6OW9tCZbHmPUCEmxx5jhtB/ChnJz01NS6OcsA3scQe1rWwZmpdXOclgfoyaHxnpZaL2dFgImxHnBvL3R2hk2KV16Z5yXGp9bPcVoS8ony6E6tl1Me4OB6Hu7cuTBlyrJ9L/sdnal1c5yWA9gqByftYVtNAHB6LQ564sRBHTSjRsEll3Bqar0cp+Ug4+7hVfAMsGFqvZzqAG7K8nBHjFjRQU+YADNnvnXKYmBkar0cp2UAxkd20gAfTK2XUz2EPOOPVvtwx41b5qAnT4bZswc9zScWHScWhxzC/IkToasLenqiOOmvpNbJyQ7wrmofcE9P6D1XYS+bpNbLcZqeadM4cOAr7KRJ0N0dZvJr4C+pdXJqB/hslJ/qZVycWifHaXqeeopfjBo1+KRQR0eY0c/gsF8Gtkitk1MfwPmRnfU7U+vkOE0LIVEPvb3hNXbChMEd9vTpVTfIL6XWyakfYC3gsYiO+qrUOjnNBKMlJkvMkJgtMbefP5pb+mxm6ZzRqaXNvzoGifTo6YEZM5afLCozUTSQP6XWx4kHsIf3qp3ioENi6gCnXO0xt3RtR2ot4lcLvLNSy5o7NxxVsnlqnZy4ABdHdNSXptbHaVSYLtFbg4MeePSGsloI4JyIjdDDsFoQYGPCvEMs1kmtk9NIMF6iJ4KDHnj0SExMrV391QNrEC8hzyJg7dQ6OflA3LQCJ6fWx2kUmJKDgx54NHciOOCYiI3v2NT6OPkBrAk8HclWnkytj9MIML0AJ913zEytbe3VBP+M1PAeTK2Lkz/AURF/2D+RWh8nJYX0pAceXam1zl5N8MGIjW5yan2cYgAej2QzP0+ti5MKJiVw0n3HlNTaZ6sqODtSg3s8tS5OcQAnRvyBf3tqfZyiYXSkyI56IkLGp66F6qsrTP7F4ITUujjFAQwHno9kO59LrY9TNFyT0En3HbNT10J1VQUfj9TQngeGp9bHKRbgjEj2Mye1Lk6RMDGCk51XOlp/CAS4PFJD+9/UujjFA2wUyX4ANk2tj1MUzK7RqXYPPlzB+DBByOIayuxJXRuVqwuWRmpk26TWxUkDcEMkGzomtS5OETC6xt7z6CrLnldD+eNT10p5leJtZPrX1Lo46QAOi2RHHv3RFtCV0YnOUeacHczK3lNvUKhhX7wyTE2ti5MOYDXiLCtfmloXpwgyJVlakN1JS+EaFrTE8AcwL5KjXi+1Lk5agIsi2dJuqXVx8qaoib7ME5ZrpK6ZQaqKd0RqWL9KrYuTHmDvSPZ0empdnDxheAbHuTjC/RZkuF+SBGErVfg+Vs/l+hTKOY2Fmd0QqagJqXVxcmXlDOfOinC/LGWsW2hNlKjkqN8f6T6/TqGc05DEsIVdUivh5EqW4YUFEe4Xo4xcqeSoYzSIx8zs/tSKOg3Db2IUAuycWhGnZZiXWoBKlHXUwGqS3hfhHr9MraTTUERx1PJedSvzUsH3m5ha4UqsMsR37410j1gN0ykL60taP8MF90r2egpJzexuQn7pDessahdJ302hg5M7b2Q4d3yE+43OcO5zhdZEJYBjI83Q19sgnYrQmTHEaJOk0sLVEezqntS17uQFK2e0544679fb6OF5Q41Rx1ju/YyZ+e4czkDuiFCGpyNoWewNSXdmuOC42u/FcZI6qjx5iWRFD8tIGnroI0ZDuKX+InibpEMzXNAj2U0RZHfyI4ajFjDWzB6ocE5W+3nczG6sQZYJkjbPcMmVZmkafZMwT9K4Ks+dGpaD27xst2C8pOkZLpiTulJWVAEejfB6+tUIknRkfA26InXdFU/TDX1sEGlY7WNV3KsjY5k1xXoDV2S8T9Jn0Phk3nqrJ1vSJEZnXKZOqfedhEGHPoBhkmIYkidiclbAzJ6W9GiEorZOrYuTG7Mynj9a0mypmm3+mCRprrJPRGaVKRrlxqhjrb7xCR+nHDFsY4vUSjh5YYuVbZxaCmPN3aXe9VSJCaU38o7S31NDL1rXqPpx6T4elmxBqtooN0YdZRcWs3SKOQ3PwxHKeEdqJZxc6ZY0o4brRkvqiizLrJQVUa5HvXaEsmM0RKd1WRChDHfUrc2s1AL0ozvlzfN01AtSKuY0PDF+yDdIrYSTJ7ZA2Yc/8uDh7BElcXFH7aQihqP2MerWpzu1AGqAnn25Meq1IpT9RGrlnLK8mVoA9bOPri5p/vzaChk2jK1efdWTfrUws1TbOHVMulJXwioZP8+CB/NLklhd4YdvzdK/Jqk3HPZiIqFeGULedyhE/Zik56TcVpYu6fvj6qulm2+uuZyNJLmjlgTlbc0sma3ViS2QuFbSJxMJcGfsaA9gVUmbKaRzXSjpOTN7bahryjnkLIm7y9FmjpoOSbsrJLPaUtLY0rHmENcsUli9+RdJP5GGXmUXkRcGyPFhSUdK2lPSyEFk/LWk8ySbHUsAM1sI1F3OKqvIXk+SXiodkN3WYHlbq7Sis0wZ5xek4oVm9ud+/5+ldI66K4P+95jZtwf7AjBJ+0r6rMLGF6sP+P63Zvbv5Qou56hX+va3pQULatNs2jRpzBi9nG/9NQJsKun/SfqIQqPJ+gM3UtJHS8fXJa6X1ClZnguFlkr2r5L8m0iaKenDFWQ8JBz8WtKRkj2eo3zOIEBcW4Nga2aZbO3IgtT9o6R+jtq6w67kGlHQ/fszK4P+LwM/MrPlNmAGxkm6QNJ7hrj2laEKLtuj/ulPpVtqzNRx8MHSmDGt3KNmJ0knSdpHcd4+pPCa+jFJe0lMl3S6ZHmMJS8s6fBOSTcqW7rRvSTdIbGnZHdFkOVZSXVtetzqPWrI19Yg2JpZLrYWk25JUwu+50WlhTfVsrrCc7qs7wPgcEnnSRpW4dqnhvqyXNRHDIN4pf4iGpZtFV5jYjWc/qwi6ZuSfpST7M+UxqFvUG05oTeQ9FuJURFkeb7eAlZeWRa5fhqNZra1mHQ3yT0P7PsDmCzpIlV20pI05FxQuR51lsTd5Wi8bdXjcbmkbynfON6jwu7I9s3I5ZqkS1RfLpf1JF0psYtk9Qw0v00KQ2UHHVRbAaeeqvtfbNJpsiopxNaABWbRbS0iNk/iTlWfUa9eHpZsTg3X7Q2sLWkrSedKVXckhuxR5+moY4T4NSj2msTZkk7J+UbTQzZAqzF4bVBi7dyzk6TDJV1cRxnDJWnffWsv4Jhj9IS1cJ/azF6DYmwNuMIsqq3FpkthTqWoe9XCMIX82Pup1BGpkpocdYxRvyj5QhqYcySdrOpea2plVUlfl3RYamXL8E2JqySrdeK4I4IM9YeOLM96wMdruG6jyHL0x20tMEvBgRYxqdhdx7W1/KjW1qM+8UTpqSEvLc+YMZJa3lHbsxKXSToi5xvtL/HZVDtLVGAThfHTy7JeCGm2NKqCHSVdl1qI/pjZs1CMrQGfbYANDRaWqYnFEt3Kf1Ix6yRiDGpy1K/tv3/dN16z7hIany6t2Hhek/R7SX+QdJukexU2xHxDYdecYyV9PsM9hinsknx9jnosUXhetSx0Olg1OGrFGxqL3aNuVLrUGrZWiSvNbKgfyi7l76i7Euhdk6OOMT0TI19Ig2N3Sfxe0m4K2/RcIOk6ycpFM9wt6QsSL0maluFGuyh+43lFUmeQ2Z6TWEXSpxReszsylLOXxAjJlmS4RopkH2Z1TWY2DWZ2F6xoa2ZD2xpEtbXdMoq9uaTzNfTerP15QNJRFWpiQc4rFe9MkIDphUpvMXk66hYf+niLqZJezbiq8Exlazzr5yD3EZL127bMXpd0hcQTkmar+sb1Nkk7S/pNxvvHcNRtsKhqOaZKejXjqsJotmZWfRREaZeob6t6O3pZ0gFm9kIV53YrP0fdlVO5UvCr8yUtVsi3s4ZCNE9FOy7nqJdWurAKRueocANhd9dwzRMSz6n6nXTqWhQyCLcv76SXk+0PEr+U9IkM5e2g7I56dAQ9Ymzn1TSYZbc1M3sCktja9xTG+6vlS2ZWZUpTmyXxsKQYsfz9WRJWQUbnMklnSfqrma0QUVfK/TEkeTrqGLuYNzGspvBrub7CL+dqA44sQWWxx/uvrvD9FcruqLMSwz4eiVYjTQw0lq0Bn1HIaVEtF5vZBRlv06n4oXpdkctD0mQz+/FQJ5n1pXQoTzlH3RtByDWAjc3aIS8EIxVyMOykEKe8neKEnuXFvArf/7maQvoxtgYZYjjqtupRSxI0tq0BOyjMc1TLPyR9sYZbzVL8UL2uyNXx/UpOulrKOepFkQTdWlILO2r2knS0pL2VLbg9NZUc3COS/qUQW1sNtTSWGDuIt02PGhrf1oDhkn6q6lclv6gwLl1DOGD0UL3YIXlIOj1WYYMO9JvZy4ozUROjMTYgbFXKJHeDQhKWhmw4Q1BhstjeVAjzqpZaJo63i6BHy/eoga2gaWztQoWl09XyeTOrZzf6roiyxyxLkv5uZtE2TxkqbvY+SePrLL8FHTUfUFgQMbLekhJSzcrTLD/UmSI4gA0VJ446jw2U5yqs0MvKCZJ2jSkINI+tAdMUwjur5Vwzu7S+u9oCiYskTa5T/JtyCMmLmlt+KEd9j+p31O+MrHxi2EYhNWijrqpLRdbMbttHuu/tOejyjJnNynoRcHBMIaB5bK30g/KtDJfMU7whi27V76g7o1dKvx2MYjBUjGOMfMNRexhpwRSyYTV8w6mC1ao4Z/UqzumjmtjX/nwogg6Pm2VeZNMUlHYDaQpbA0qZFKuez3heYVw6UhpkmyPppjoKqDVLXsWqiVnYUI767xHKXw34YA6VkILdJP1bxmteUchHe5jC7g6bKbzGriqpypjRXKgwpsxKqj7uVsqeV3r3CDrMi1ojjUVT2BqwkkKM8MYZLjvSzB6MLEpXHdd2RpYlF4Ya+ojhqKXQKP+UWtEIZM1+cr+kj5ZPUZp05fMohbHYcmyq6ntIUoYeNbCmpA9E0GFu/UU0LDXZWrkUpTH2pizDKRp6G7eBnGVmP40vRs0LYB7OaYFLdMr2qM3sEZXNYpWJGL2nRiBrnoNDK+SRrnZpbR6Mr/B9VkeaJUxuQiQdWtlRZ7a1Cnmko9sasLekr2S45DZJ/xlbjn501nBNd47yRKXSA5wT4R4TSyunmp0s21YtkOyOCufkuWNHJSqtOjywqlKWkeXta49IOrSyo85ka2bF2hqwmcIuQdWueFwk6UAzey2mHMtj3coWBbREabLk1UQlR31zpPs0+Tg1qyrb6q8KQwG8V/kkWqqWHSX2KSPbjsq2fFzKNvEc4w3rGTPryadq0lLK+9CR4ZIhbQ3i2hrwNklXSVqn2ksUllHnEUo5kO4M53YlyDldM5XyD8dy1PtI+l1BOm0rcVKdZVwn2T/6/f91hWxX1b5CjpEYJtmrK37FagoJWlLzY4mjJV0h9SWK4d0KeUCyhttV6tGF0mET1R/yKYXFH61KZlsDhpmtaGulN9nYtvYdheXr1fK/ZvaLXGpqRboUtsGqZqVsd0EyRWFIR21mfwNeVP2JWg5ScVu9v6t01MNjCjkI+moCicWqfuHBmpLOlJhWSh9agm0U8vO+v6C6GIq1FV5fz5J4sCRzLXHvt0tW7Rj14ZFk/30B9ZMEMwOy2xowzWyZrZXisKPaWilW/JiMlx0K1LJ18daD/fgMjS2W6JI0vcKJF4XFMs1DNTt63KDss9AD2QDY08yypsJsJHqUbYXYsZI+JnGHwpLtbSS9T2knEQdjpLL1kAbykwznHpXh3KH4VX7V0RDUZGuQn60B20o6r4ZLa93tvtYti7tU2VF3xqmV4qjGUf9W9TtqSTpU2XMWNxJ/VIhPzcLmpaNVeUXS5dWcCIyTNCbCPe83s2dSK54zjWhr31e87dNyxBZXWFbedL1pqbpf3Bsj3Ws/IMtqt0Yj5T5yjUpX2AShKmLtbt2ywx79aERbK2Ln71h01vhdw1LRUZfiM+dXUVYlhkv6eGqFa8d+o7APXSxeV/a8z43Es5JOy3D+oZHue21qxfOmNETotlYztkBhleZAbmrG3rRU/RjWlZHuNyW1wnVyouItKfycpAMUhg+K5K+qfyETCnsuVrV0HNhT2ZYZl6PXzFo54qM/rWBrKems8rOmoGhH/VHg3amVrh37taT/qbOQNyV9VrKZpWGDcwtU4ElJExVimbPkmx7IsZL9MsP59dZZH5fkVC8Nh1k8WzOzmaXcyEXaWmJW6FXflFPypUKoylGb2TzF203ja6mVrg+bLul4SW/UcPETkvaU7Px+n52u4no6X5PsRcnuUkj6c2/G65dIOkCys6u9ANhd9UWV9KfO/MXNhVn9tmaWzNYagc4yfzcdWcJ3uiPdc1Jz96olyWYoLNz4maprRA9J+m9JW0s2YOGPPSnpRwUI/Q8ttxmo3asQWXCyQqMeiqUKs/5bS5mT6sTqTb+q9nIykiSz2m3NbHlbMyvM1hqEt3rVTd2bljLEKpZ25Yi1tcwsM9s3tfJxYG2FJDrbKKQGXV1hd5SFCvGwd0jR0zrG1mElhV7vjgrpMdeS9JrC875T0s1S9vzBwB4K4Z2xeFMhlvdrbRCitwJQ2dZySCHa5DBa0uhmd9TZVIbriEeT96qdSgC3RrSX/iwBTgCqWQfgOO0F8LGIja1dZu/bEuDjOTnp/twDxEqb6jitA/BQxIa2T/0SOY0I8EgBjrqPq4AYqx4dpzUAvhixgcWKJHEaCOCrBTrpPl4BTgUafp9Bx8kdYHVgUcQGVimBitNEAJsmcNL9eYTasrU5TmsBnBKxYb1M2DHCaQGAaxI76j7mEBJBOU57AnQAL0RsVNek1smpH2C31N55AG8APwSypAx1nNYB+EbkRnVwap2c2iH8eD+W2jOXYSFwNNBoucAdJ1+oolc9cyZ0dVXdmF4ExqbWy6kN4FepvXEVzMPD+Zx2g0HGqnt6oLMTOjpACsfMmVU3pL/TGjuWtxXAiak9cEauIuzf6DitD7AG8ATA3LkwZcoy59z/mDEjUyNqo1wEzQ/wvqxe8pproLs7ta/mReC/gWGp69Bxcgc4ePLkwR30qFGZnXQfPl7dBFDDuPTs2cvsY/z48AOfmAeBT6SuS8cpgOUd9IQJmYY7BmMpnguk4QF+l/XBzpix4g/6ccdBb29qf80cws7djtOajB3L2RJMnhy1h/QcsFVq3ZzBoY4EXdOnw4gRyzvrjo4wJJKYfwEzgOGp69dxcoH44XoAjwMbpdbNWR5gZr0PtqcnvHkN7F1PnVqYUx6Kp4ApeDif04oQN2FTH/cB66TWzQkA1QdcVsE114S5jD5H/clP5uyCszEP2LlMPewCfJnwZnEv8BLQS4hcugqYBsTa2cZx4gFMyKnB3IG/jiYHODmPh/v00/xms8347vbb89TcubyZkw3VypvAxcD6wAjgP4C7M1z/FHA8sHrq5+c4bwGclVODuRXoSK1fu0IIZcuDXmDjfvfZGbglp3vVwyvAa3Vc/wxwYurn6DiSJGA1QshTHvwDH7MuHOB7OTrA/Qe5nxHGiJ/K8b6peADYO/UzdZyaFkFk4GFg89Q6tgvA5Tk+y/Mq3Hs4IQrjXznKkIrr8M0OnNSQ36sywNPAdql1bHWIu0fmQO4D1qxSjm1ojlwiWXkVOL3aenCcXACuz9HIFwMTU+vYigAjgZtydlKZFzQBewPzc5YrBU8AhwOW+tk7bQhhifGCnI385NR6thLATuSfrnRyHfINI7ytvZizjCn4K/Cu1DbgtCHADsTdZGAwrseTw9cNcEIBzqgzkqybEMLmGi2cLwYXAOumtgenzQB2LcC4H8MXGNQEIT44z2GqPrpzkH1nwsKUVmMJIf56ldT24bQRwMEFGfh/pda1mSD8iD5SwHO5MUcdViLs4LKwIBsrkvuB3VPbidNGAFMLMu65wPtS69vIEOYPzivoedwOrFWATiNp3XC+n+PhfE5RAF8r0LjPwpeerwBhMcmzBT2Duyk4VwshnG9OgXZWFK8Cp+HhfE4REDmxTwUeZ5DVb+0IsAXwpwLrfj4JV5ICB1HMsE7RPA58OrU9OW0A+eUEKcdtwIGp9U5U19sBPy64vp+gAVaQEraLa9VwvluAHVPXsdPiANMTGPf9wOdS615Q/e4B3JCgjh8Etkit/4C62ISQfrTVeAM4Hw/nc/KEMFufgqeBrwDrp66DHOr0IOBvier1Vho4fzghFe89ieomTxYTcmB7OJ+TD8ABiY38euBQmjhnMDCREMXRm7AeZwGrpa6LKupqFTycz3GyQ+jpZFrBOHUqTJkSdWPUF4GLaJI0lMC2wKmE8eDUfCd1fdRQfyOBHxKGD1qNa/FwPicPgO2pMs/EzJm577O3BPgZ8EUaZJNdQuzzfsC5hJ5To3BU6rqps17HEULfWo1XCD/ka6SuY6fFANYFfjeU9fX2wujRyxz1jBmFGH0PYdLmAGDrgupiU2BPQirM2xI19qFYBHwotc1EqusbU1dmjjwOHJa6jp3aadi0isCpkr482HedndIpp4S/R42S5s2TOjqSiDlf0n2SHigd90laKGmRpEVm9kIFHTeUNFLSOpK2kDRW0laSxkjKnAa0Vjo7JTNp+vRMl90r6aNm1lOUnHkCnCnphNRy5MyfJR1tZnemFsRpIYCPEYYg3qK3Fzo6lvWmZ85M3VmpyNOEKIM/Epa2PwwsTS1UHzNm1FSX51DAkvCCbW2n1M+iIN4gTDp7OF8T0bA96j6AzSRdJWknacXe9IIFqSUcmssvDz3+gRxyiDR+fGrppK4uadq08Pf48dLcuUOe/oSkw8xsTmq58wCYr/A20w4skdQp6ftm9npqYZwWATgDYMSIpupNc+ihy+Ttf1x2WWrJAr29y8s1d27ZUy8BRqS2g5xt7OTUzyMB99Mi8wytzEqpBagWM/uvk07SYUuWhP+PGiVNmZJaquano0Oa3G+/la6uFU55UtJeZvZpM1uSWt6c+Z6kR1MLUTBjJd1EiIEflVoYZ3CaxlFL0re+ZZdJ2nfcON03a1ZqaVqH/j94114rLV781n9/KGlrM/tNahmLoDT5e4CkN1PLkoBPSroP+CYeztdwNJWjDtisO++0bcaP19aSfpFamlZg4sTwhiIFJ3355XpW0vvN7IuVIldaDTO7VdLxqeVIxDBJJ0t6gDr2tXTi04SOOmBm95vZJyTtKunu1PI0O8cdt+zvo4/W2WZ2S2qZUmFm35V0emo5ErKRpG5CpFJDJddqV5rWUfdhZn8ysx0k7S/pjtTyNCm9kybpFDPdpRANMCu1QKkxsy9L6k4tR2I+KOku4IDUgrQ7Te+o+zCzq83svZI+IukPqeVpEp6TdIqk0Ztvbp1g4yTrkGxeasEaATM7QmUWXbURa0i6EvhhakHamZZx1H2Y2Q1mNkHSjpKuTi1Pg/KApKMlbWZmnWb2fGqBGhUzO10hhn9+alkS83ngstRCtCst56j7MLO5Zra/wtLscyS5M5JukvQpM9vKzM4xs5dTC9QMmNntZralQu/6pdTyJOQQ4PLUQrQjLeuo+zCzh8zsaDMbIenTkuaklqlgnpZ0hqSxZjbRzH6WWqBmpdS73lzSjyWRWp5EHAwckVqIdqPlHXV/zOxSM9tNoZf9DbX24obrJO1rZu8ws/9vZg+mFqgVMLNnzOwzknaR1K7Jjb7T6qtUG422ctR9lHrZXzWzzST9u6SzFTLfNTu/lHSkpBFmto+ZzUotUKtiZrcpZDg8UtIzqeUpmA5JZ6YWop1oS0fdHzP7rZkdY2bbSFpX0kEKS4mbITb7IUmXSDpC0nAz+7iZXeiTg8VgZpjZhZK2lPQdSf9KLVOBHAmMTC1Eu+AbYfbDzBZKurJ0qPR6N1HhNffdknZQWAyQgqcVojVulfQXSX8ws2cTV5mjt5aenwCco7Dsfo/UMhWhtqRPSTo3tSDtQMOnOW00Ss57vKTRkjaVNKr072alY83+5//859I//7liOfvsI2233Qof36cQBtZTOu6XtEDSgx6h0TwAn1ToYbd6ytQbzOwjqYVoB9xRRwYwhSGlLHX7ppm1YyKglgVYVWHHmK9IaqlNFvqx1MyGpxaiHXBH7Tg5Qthu7QxJh6k129sGZtZuk6mF0/aTiY6TJ2b2pJkdrtYN59smtQDtgDtqxymAfuF8R6m1wvk8nroA3FE7TkGUwvkuUAjnmyGpFfYqbOcl9YXhjtpxCsbMXjCz4yVtK+l3qeWpE49GKgB31I6TCDN70Mw+LGmSpEdSy1MjT6UWoB1oxVlox2k6gGEKW4B9RQNi8RuYRWa2Tmoh2gHvUTtOA2Bmr5rZaQq7gl+aWp4q+W1qAdoFd9SO00CUwvk+LWlnNX44n2/MURA+9OE4DUppleuRkk6VtF5qeQawUGGxyxupBWkHvEftOA1KKZzvfIX86V1qrHC+C91JO47jDADYFriRxmDL1PXhOI7TsACTgPkJnXRn6jpwHMdpeIBhwMnA0oKd9K2EsXPHcRynGoANgUsLctK3A29PrbPjOE5TAuwEzMvRSd9IWJTjOI7j1APwBWBRZCfdlVovx3GclgLoAM6K4KDnAe9NrY/jOE7LAmwC/KAGB/1n4DOp5XeW4bO3jtPiABspZOh7v6RdFTZmHsgtkv4g6SIz+2fVhTuO4ziO4ziO4ziO4ziO4ziO4ziO4zjp+D+ACS66brcsnwAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyMi0wNi0xM1QwOTo0NDo0MCswMDowMKuTDDoAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjItMDYtMTNUMDk6NDQ6NDArMDA6MDDazrSGAAAAAElFTkSuQmCC\"","export default __webpack_public_path__ + \"static/media/logo-light.627c5d38.svg\";","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Row, Col, Collapse } from \"reactstrap\";\nimport { Link, withRouter } from \"react-router-dom\";\nimport classname from \"classnames\";\nimport { connect } from \"react-redux\";\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport \"./horizontal-navbar.scss\";\nimport { getPatientProfile } from \"store/labmarket/actions\";\n\nclass Navbar extends Component {\n constructor(props) {\n super(props);\n this.state = {\n patientProfile: [],\n\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n };\n console.log(\"yaha ani chahi hai uuid\", this.props.match.params.uuid);\n console.log(\"yaha ani chahi hai guid\", this.props.match.params.guest_id);\n console.log(\"yaha ani chahi hai fuid\", this.props.match.params.filnalur);\n }\n\n componentDidMount() {\n let matchingMenuItem = null;\n const ul = document.getElementById(\"navigation\");\n const items = ul.getElementsByTagName(\"a\");\n for (let i = 0; i < items.length; ++i) {\n if (this.props.location.pathname === items[i].pathname) {\n matchingMenuItem = items[i];\n break;\n }\n }\n if (matchingMenuItem) {\n this.activateParentDropdown(matchingMenuItem);\n }\n const { patientProfile, getPatientProfile } = this.props;\n getPatientProfile(this.state.user_id);\n this.setState({\n patientProfile\n });\n console.log(\"state in navbar\", patientProfile);\n }\n\n activateParentDropdown = item => {\n item.classList.add(\"active\");\n const parent = item.parentElement;\n if (parent) {\n parent.classList.add(\"active\"); // li\n const parent2 = parent.parentElement;\n parent2.classList.add(\"active\"); // li\n const parent3 = parent2.parentElement;\n if (parent3) {\n parent3.classList.add(\"active\"); // li\n const parent4 = parent3.parentElement;\n if (parent4) {\n parent4.classList.add(\"active\"); // li\n const parent5 = parent4.parentElement;\n if (parent5) {\n parent5.classList.add(\"active\"); // li\n const parent6 = parent5.parentElement;\n if (parent6) {\n parent6.classList.add(\"active\"); // li\n }\n }\n }\n }\n }\n return false;\n };\n\n render() {\n const { patientProfile } = this.props;\n\n return (\n \n
\n
\n \n {this.state.user_id &&\n this.state.user_type === \"CSR\" &&\n this.state.user_type !== \"b2bclient\" ? (\n \n
    \n {this.props.patientProfile && (\n <>\n {!this.props.patientProfile.is_assosiatewith_anycorporate && !this.props.patientProfile.employee_id_card ? (\n <>\n
  • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Labs\n \n
  • \n
  • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n ) : (this.props.patientProfile.is_assosiatewith_anycorporate && this.props.patientProfile.employee_id_card) ? (\n <>\n
  • \n \n Labs\n \n \n
  • \n
  • \n \n My Appointments\n \n \n
  • \n \n ) : null}\n \n )}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n \n My Appointments\n \n \n
  • \n )}\n
\n \n ) : null}\n {!this.state.user_id ? (\n \n
    \n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Book a Test\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Book a Test\n \n
  • \n ) : null}\n {this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Labs\n \n
  • \n ) : !this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Labs\n \n
  • \n ) : null}\n {this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Tests\n \n
  • \n ) : !this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Tests\n \n
  • \n ) : null}\n {this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : !this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : null}\n\n {this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Packages\n \n
  • \n ) : !this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Packages\n \n
  • \n ) : null}\n\n {this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : !this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : null}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n \n My Appointments\n \n \n
  • \n )}\n
\n \n ) : this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type !== \"b2bclient\" ? (\n \n
    \n {this.props.patientProfile && (\n <>\n {!this.props.patientProfile.is_assosiatewith_anycorporate && !this.props.patientProfile.employee_id_card ? (\n <>\n
  • \n \n Book a Test\n \n
  • \n
  • \n \n Labs\n \n
  • \n
  • \n {/* \n{this.props.t(\"Search by Tests\")}\n */}\n \n {/* {this.props.t(\"Tests\")} */}\n Tests\n \n
  • \n
  • \n \n {/* {this.props.t(\"Profiles\")} */}\n Profiles\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n ) : (this.props.patientProfile.is_assosiatewith_anycorporate && this.props.patientProfile.employee_id_card) ? (\n
  • \n \n Labs\n \n
  • ) : null}\n \n )}\n\n {this.state.user_id && this.state.user_type === \"patient\" && (\n
  • \n \n My Appointments\n \n
  • \n )}\n
\n\n\n \n ) : this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type === \"b2bclient\" ? (\n \n
    \n
  • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Labs\n \n
  • \n\n
  • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n \n My Appointments\n \n \n
  • \n )}\n
\n \n ) : null}\n \n
\n
\n
\n );\n }\n}\n\nNavbar.propTypes = {\n location: PropTypes.object,\n match: PropTypes.object,\n menuOpen: PropTypes.any,\n t: PropTypes.any,\n patientProfile: PropTypes.array,\n getPatientProfile: PropTypes.func,\n};\n\n// Header.propTypes = {\n// match: PropTypes.object,\n// openLeftMenuCallBack: PropTypes.func,\n// t: PropTypes.any,\n// toggleRightSidebar: PropTypes.func,\n// carts: PropTypes.array,\n// getCarts: PropTypes.func,\n// patientProfile: PropTypes.array,\n// getPatientProfile: PropTypes.func,\n// };\n\nconst mapStateToProps = state => {\n const { layoutType } = state.Layout;\n const { carts } = state.carts;\n const patientProfile = state.LabMarket.patientProfile; // Corrected assignment\n return { layoutType, carts, patientProfile }; // Added patientProfile to the returned object\n};\n\n\n// export default connect(mapStatetoProps, { toggleRightSidebar })(\n// withTranslation()(Header)\n// );\n\nexport default withRouter(\n connect(mapStateToProps, { getPatientProfile })(withTranslation()(Navbar))\n);","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Col, Modal, ModalBody, Row } from \"reactstrap\";\n\nclass DeleteModal extends Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n render() {\n return (\n \n \n \n \n \n
\n \n

Are you sure?

\n

You won't be able to revert this!

\n
\n \n
\n \n \n
\n \n Yes, delete it!\n \n \n Cancel\n \n
\n \n
\n
\n \n
\n );\n }\n}\n\nDeleteModal.propTypes = {\n onCloseClick: PropTypes.func,\n onDeleteClick: PropTypes.func,\n show: PropTypes.any,\n};\n\nexport default DeleteModal;\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link, Redirect } from \"react-router-dom\";\nimport { Card, CardBody, Col, Container, Row } from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport { getCarts, deleteCart, emptyCart } from \"store/carts/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass CartList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n carts: [],\n cart: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n modal: false,\n deleteModal: false,\n isDisabled: true,\n cartListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, cart) => <>{cart.id},\n },\n {\n dataField: \"patient_name\",\n text: \"Patient name\",\n sort: true,\n },\n {\n dataField: \"lab_name\",\n text: \"Lab name\",\n sort: true,\n },\n {\n dataField: \"test_name\",\n text: \"Test name\",\n sort: true,\n headerStyle: () => {\n return { width: \"30%\" };\n } \n },\n {\n dataField: \"price\",\n text: \"Price\",\n sort: true,\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, cart) => (\n
\n \n this.onClickDelete(cart)}\n >\n \n
\n ),\n },\n ],\n };\n this.handleCartClick = this.handleCartClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n\n componentDidMount() {\n const { onGetCarts } = this.props;\n onGetCarts(this.state.user_id);\n this.setState({ carts: this.props.carts });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { carts } = this.props;\n if (!isEmpty(carts) && size(prevProps.carts) !== size(carts)) {\n this.setState({ carts: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = carts => {\n this.setState({ carts: carts });\n this.setState({ deleteModal: true });\n };\n\n handleDeleteCart = () => {\n const { onDeleteCart, onGetCarts } = this.props;\n const { carts } = this.state;\n\n if (carts.id !== undefined) {\n onDeleteCart(carts);\n // onDeleteAllCart(id);\n setTimeout(() => {\n onGetCarts(this.state.user_id);\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n\n handleEmptyCart = () => {\n const { onGetCarts, onEmptyCart } = this.props;\n const { carts } = this.state;\n\n onEmptyCart(this.state.user_id);\n\n setTimeout(() => {\n onGetCarts(this.state.user_id);\n }, 1000);\n\n this.setState({ carts });\n\n this.props.history.push(\n this.props.match.params.uuid\n ? `/nearby-labs/${this.props.match.params.uuid}`\n : `/nearby-labs`\n );\n };\n\n handleCartClick = (e, arg) => {\n const cart = arg;\n\n this.setState({\n cart: {\n id: cart.id,\n patient_id: cart.patient_id,\n lab_id: cart.lab_id,\n offered_test_id: cart.offered_test_id,\n test_appointment_id: cart.test_appointment_id,\n invoice_id: cart.invoice_id,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { carts } = this.props;\n\n const { deleteModal } = this.state;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: carts.length, // replace later with size(carts),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n this.setState({ deleteModal: false })}\n />\n
\n \n Carts List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n
\n
\n \n
\n \n \n
\n \n
\n \n
\n {/* \n \n \n \n */}\n
\n )}\n \n )}\n \n \n \n \n \n Empty Cart\n \n \n \n
\n {\n this.props.history.push(\n this.props.match.params.uuid\n ? `/checkout/${this.props.match.params.uuid}`\n : `/checkout`\n );\n }}\n className=\"btn btn-success\"\n disabled={this.state.carts.length == 0}\n >\n {\" \"}\n Checkout{\" \"}\n \n
\n \n
\n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nCartList.propTypes = {\n history: PropTypes.any,\n location: PropTypes.any,\n match: PropTypes.object,\n carts: PropTypes.array,\n className: PropTypes.any,\n onGetCarts: PropTypes.func,\n onDeleteCart: PropTypes.func,\n onEmptyCart: PropTypes.func,\n};\n\nconst mapStateToProps = ({ carts }) => ({\n carts: carts.carts,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetCarts: id => dispatch(getCarts(id)),\n onDeleteCart: cartItem => dispatch(deleteCart(cartItem)),\n onEmptyCart: id => dispatch(emptyCart(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(CartList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport ReactDrawer from \"react-drawer\";\nimport \"react-drawer/lib/react-drawer.css\";\n\nimport { connect } from \"react-redux\";\nimport { isEmpty, map, size } from \"lodash\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\n\nimport { withRouter, Link } from \"react-router-dom\";\n// Import menuDropdown\nimport logo from \"../../assets/images/logo.svg\";\nimport logoLight from \"../../assets/images/logo-light.png\";\nimport logoLightSvg from \"../../assets/images/logo-light.svg\";\n\n// Redux Store\nimport { toggleRightSidebar } from \"../../store/actions\";\nimport { getCarts, deleteCart, emptyCart } from \"store/carts/actions\";\nimport { getPatientProfile } from \"store/labmarket/actions\";\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport { DropdownItem } from \"reactstrap\";\nimport Navbar from \"./Navbar\";\n\nimport \"./horizontal-navbar.scss\";\nimport carts from \"pages/CartsList/carts\";\n\nclass Header extends Component {\n constructor(props) {\n super(props);\n this.state = {\n isSearch: false,\n open: false,\n count: 0,\n carts: [],\n patientProfile: [],\n isDropdownOpen: false,\n cart: \"\",\n prevUrl: '',\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n patient_name: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).patient_name\n : \"\",\n position: \"right\",\n };\n this.dropdownRef = React.createRef();\n this.toggleMenu = this.toggleMenu.bind(this);\n this.toggleFullscreen = this.toggleFullscreen.bind(this);\n this.toggleSearch = this.toggleSearch.bind(this);\n console.log(\"yaha ani chahi hai uuid\", this.props.match.params.uuid)\n console.log(\"yaha ani chahi hai guid\", this.props.match.params.guest_id)\n console.log(\"yaha ani chahi hai fuid\", this.props.match.params.finalUrl)\n\n console.log(this.state.user_type)\n }\n componentDidMount() {\n document.addEventListener('mousedown', this.handleClickOutside);\n const url = window.location.href;\n const queryString = url.includes('&') ? url.substring(url.indexOf('&') + 1) : '';\n const params = new URLSearchParams(queryString);\n const latitudeFromUrl = params.get('lat');\n const longitudeFromUrl = params.get('lon');\n\n if (latitudeFromUrl && longitudeFromUrl) {\n const finalUrl = `https://labhazirapi.com/nearby-labs/&lat=${latitudeFromUrl}&lon=${longitudeFromUrl}`;\n this.setState({ finalUrl });\n console.log('Final URL:', this.state.finalUrl);\n }\n const { patientProfile, getPatientProfile } = this.props;\n getPatientProfile(this.state.user_id);\n this.setState({\n patientProfile\n });\n console.log(\"state\", patientProfile);\n // Call the asynchronous function initially\n this.getData();\n\n // Set an interval to call the asynchronous function every 2 seconds\n this.interval = setInterval(this.getData, 2000);\n // Check if the current URL is \"/checkout#\"\n const isCheckoutPage = window.location.href.endsWith(\"/checkout#\");\n\n // If the current page is the checkout page, update the interval to 5 seconds\n if (isCheckoutPage) {\n clearInterval(this.interval); // Clear the previous interval\n this.interval = setInterval(this.getData, 5000);\n }\n }\n\n componentWillUnmount() {\n // Clear the interval when the component is unmounted to prevent memory leaks\n clearInterval(this.interval);\n document.removeEventListener('mousedown', this.handleClickOutside);\n }\n\n getData = async () => {\n const { getCarts } = this.props;\n const { user_id, user_type } = this.state;\n\n let cartsData;\n\n if (!user_id) {\n cartsData = await getCarts(this.props.match.params.guest_id);\n } else if (user_type !== 'CSR' && user_type !== 'b2bclient') {\n cartsData = await getCarts(user_id);\n } else if (user_type === 'CSR' && user_type !== 'b2bclient') {\n cartsData = await getCarts(this.props.match.params.guest_id);\n } else if (user_type !== 'CSR' && user_type === 'b2bclient') {\n cartsData = await getCarts(this.props.match.params.uuid);\n }\n\n this.setState({ carts: cartsData });\n };\n\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { carts } = this.props;\n if (\n !isEmpty(carts) &&\n size(prevProps.carts) !== size(carts)\n ) {\n this.setState({ carts: {} });\n }\n }\n toggleSearch = () => {\n this.setState({ isSearch: !this.state.isSearch });\n };\n handlePageClick = page => {\n this.setState({ page });\n };\n toggleMenu() {\n this.props.openLeftMenuCallBack();\n }\n toggleRightbar() {\n this.props.toggleRightSidebar();\n }\n toggleFullscreen() {\n if (\n !document.fullscreenElement &&\n /* alternative standard method */ !document.mozFullScreenElement &&\n !document.webkitFullscreenElement\n ) {\n // current working methods\n if (document.documentElement.requestFullscreen) {\n document.documentElement.requestFullscreen();\n } else if (document.documentElement.mozRequestFullScreen) {\n document.documentElement.mozRequestFullScreen();\n } else if (document.documentElement.webkitRequestFullscreen) {\n document.documentElement.webkitRequestFullscreen(\n Element.ALLOW_KEYBOARD_INPUT\n );\n }\n } else {\n if (document.cancelFullScreen) {\n document.cancelFullScreen();\n } else if (document.mozCancelFullScreen) {\n document.mozCancelFullScreen();\n } else if (document.webkitCancelFullScreen) {\n document.webkitCancelFullScreen();\n }\n }\n }\n toggleDropdown = () => {\n this.setState((prevState) => ({\n isDropdownOpen: !prevState.isDropdownOpen,\n }));\n };\n handleClickOutside = (event) => {\n if (this.dropdownRef.current && !this.dropdownRef.current.contains(event.target)) {\n this.setState({ isDropdownOpen: false });\n }\n };\n render() {\n // Get the latitude and longitude from localStorage\n const latitude = localStorage.getItem('latitude');\n const longitude = localStorage.getItem('longitude');\n\n const finalLogoutUrl = `/logout/${this.state.finalUrl}/${this.props.match.params.uuid}`;\n const { carts } = this.props;\n const { patientProfile } = this.props;\n const { getPatientProfile } = this.props;\n const totalLength = carts.length + this.state.count;\n console.log(\"total array length\", totalLength)\n const { isDropdownOpen } = this.state;\n // const isLargeScreen = window.innerWidth > 992;\n const isSmallScreen = window.innerWidth < 490;\n const openModal = () => {\n const modal = document.getElementById(\"modal\");\n modal.style.display = \"block\";\n };\n\n const closeModal = () => {\n const modal = document.getElementById(\"modal\");\n modal.style.display = \"none\";\n };\n return (\n \n
\n
\n
\n {!isSmallScreen ? (\n this.props.patientProfile && !this.props.patientProfile.is_assosiatewith_anycorporate && !this.props.patientProfile.employee_id_card ? (\n
\n \n \n \"\"\n \n \n \"\"\n \n \n\n \n \n \"\"\n \n \n \"\"\n \n \n
\n ) : (\n
\n \n \n \"\"\n \n \n \"\"\n \n \n\n \n \n \"\"\n \n \n \"\"\n \n \n
\n )\n) : null}\n\n {isSmallScreen && this.state.user_type == \"patient\" && window.location.pathname == \"/nearby-labs\" ? (\n \n \n \n ) : isSmallScreen && this.state.user_type == \"patient\" && window.location.pathname !== \"/nearby-labs\" ? (\n \n \n \n ) : \n \n }\n\n
\n\n
\n {/* Display login and signup links if the user is not logged in,\n otherwise show logout and cart links to the user with patient account and is logged in */}\n {!this.state.user_id ? (\n
\n \n \n \n {!isEmpty(this.props.carts) && (\n \n {totalLength + this.state.count}\n \n )}\n \n \n \n\n \n \n {\" \"}\n Login\n \n \n \n \n {\" \"}\n Sign up\n \n \n\n {/* \n {\" \"}\n */}\n
\n ) : !isSmallScreen && this.state.user_type === \"patient\" ? (\n
\n \n \n {\" \"}\n {this.props.patientProfile && this.props.patientProfile.is_assosiatewith_anycorporate && this.props.patientProfile.employee_id_card ? (\n \n {this.props.patientProfile.corporate_name}-{this.state.patient_name.split(\" \")[0]}\n \n ) : (\n \n {this.state.patient_name.split(\" \")[0]}\n \n )}\n \n \n {\" \"}\n \n \n \n {!isEmpty(this.props.carts) && (\n \n {totalLength + this.state.count}\n \n )}\n \n \n \n \n \n \n \n \n\n {isDropdownOpen && (\n
\n
    \n
  • \n \n {\" \"}\n \n Password\n \n
    \n \n
  • \n
  • \n \n {\" \"}\n \n Contact Us \n
    \n \n
  • \n
  • \n \n {\" \"}\n \n Wallet \n
    \n
    \n
    \n
    \n
    \n
    \n
    Available Credit
    \n
    \n\n\n
    \n Rs. {this.props.patientProfile.available_credit}\n {/*
    \n

    \n You have received this money in case of refund which you can use only for testing.\n

    \n
    */}\n
    \n
    \n \n {\" \"}\n You have received this money in case of refund.\n

    \n \n This amount cannot be withdrawn and can only be used for booking tests in the future.\n \n
    \n\n
    \n \n Close\n \n
    \n
    \n
    \n
    \n
  • \n
  • \n \n {\" \"}\n \n Log Out\n \n \n
  • \n
\n
\n )}\n
\n ) : this.state.user_type == \"patient\" && isSmallScreen ? (\n
\n \n {\" \"}\n \n {this.state.patient_name.split(\" \")[0]}\n \n \n {\" \"}\n \n \n {!isEmpty(this.props.carts) && (\n \n {totalLength + this.state.count}\n \n )}\n \n \n \n \n \n\n {isDropdownOpen && (\n
\n
    \n
  • \n \n {\" \"}\n \n Password\n \n
    \n \n
  • \n
  • \n \n {\" \"}\n \n Contact Us \n
    \n \n
  • \n
  • \n \n {\" \"}\n \n Wallet \n
    \n
    \n
    \n
    \n
    \n
    \n
    Available Credit
    \n
    \n\n\n
    \n Rs. {this.props.patientProfile.available_credit}\n {/*
    \n

    \n You have received this money in case of refund which you can use only for testing.\n

    \n
    */}\n
    \n
    \n \n {\" \"}\n You have received this money in case of refund.\n

    \n \n This amount cannot be withdrawn and can only be used for booking tests in the future.\n \n
    \n\n
    \n \n Close\n \n
    \n
    \n
    \n
    \n
  • \n
  • \n \n {\" \"}\n \n Log Out\n \n \n
  • \n
\n
\n )}\n
\n ) : (\n
\n {this.state.user_type == \"labowner\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"b2bclient\" && (\n
\n \n {\" \"}\n \n \n \n {!isEmpty(this.props.carts) && (\n \n {totalLength + this.state.count}\n \n )}\n \n \n
\n )}\n\n {this.state.user_type == \"auditor\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"CSR\" && (\n
\n\n\n {/* {\" \"} */}\n Go back to CSR Dashboard\n\n\n\n \n \n {!isEmpty(this.props.carts) && (\n \n {totalLength + this.state.count}\n \n )}\n \n \n {/* \n {\" \"}\n Login\n \n */}\n {/* \n {\" \"}\n Sign up\n */}\n\n {/* \n {\" \"}\n */}\n
\n )}\n\n {this.state.user_type == \"registration-admin\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"auditor-admin\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"csr-admin\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"hr-admin\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"marketer-admin\" && (\n \n {\" \"}\n \n )}\n
\n )}\n
\n
\n
\n {/* {!this.state.user_type == \"patient\" ? (\n \n ) : null } */}\n
\n );\n }\n}\n\nHeader.propTypes = {\n match: PropTypes.object,\n openLeftMenuCallBack: PropTypes.func,\n t: PropTypes.any,\n toggleRightSidebar: PropTypes.func,\n carts: PropTypes.array,\n getCarts: PropTypes.func,\n patientProfile: PropTypes.array,\n getPatientProfile: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const { layoutType } = state.Layout;\n const { carts } = state.carts;\n const patientProfile = state.LabMarket.patientProfile; // Corrected assignment\n return { layoutType, carts, patientProfile }; // Added patientProfile to the returned object\n};\n\n\n// export default connect(mapStatetoProps, { toggleRightSidebar })(\n// withTranslation()(Header)\n// );\n\nexport default withRouter(\n connect(mapStateToProps, { getCarts, getPatientProfile, toggleRightSidebar })(withTranslation()(Header))\n);","// import React from \"react\"\n\nconst wallet = {\n id: \"#SK0234\",\n userName: \"Henry Wells\",\n email: \"henrywells@abc.com\",\n availableBalance: \"$ 9148.23\",\n lastMonthDifference: \"+ $ 248.35\",\n lastMonthDifferencePercent: \"+ 1.3 %\",\n send: \"$ 654.42\",\n receive: \"$ 1054.32\",\n withdraw: \"$ 824.34\",\n series: [\n {\n type: \"area\",\n name: \"BTC\",\n data: [87, 57, 74, 99, 75, 38, 62, 47, 82, 56, 45, 47],\n },\n {\n type: \"area\",\n name: \"ETH\",\n data: [28, 41, 52, 42, 13, 18, 29, 18, 36, 51, 55, 35],\n },\n {\n type: \"line\",\n name: \"LTC\",\n data: [45, 52, 38, 24, 33, 65, 45, 75, 54, 18, 28, 10],\n },\n ],\n options: {\n chart: { toolbar: { show: !1 } },\n dataLabels: { enabled: !1 },\n stroke: { curve: \"smooth\", width: 2, dashArray: [0, 0, 3] },\n fill: { type: \"solid\", opacity: [0.15, 0.05, 1] },\n xaxis: {\n categories: [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\",\n ],\n },\n colors: [\"#f1b44c\", \"#3452e1\", \"#50a5f1\"],\n },\n walletHistory: [\n {\n id: \"#SK3215\",\n date: \"03 Mar, 2020\",\n type: \"Buy\",\n currency: \"Bitcoin\",\n amount: \"1.00952 BTC\",\n amountinUSD: \"$ 9067.62\",\n },\n {\n id: \"#SK3216\",\n date: \"04 Mar, 2020\",\n type: \"Sell\",\n currency: \"Ethereum\",\n amount: \"0.00413 ETH\",\n amountinUSD: \"$ 2123.01\",\n },\n {\n id: \"#SK3217\",\n date: \"04 Mar, 2020\",\n type: \"Buy\",\n currency: \"Bitcoin\",\n amount: \"1.00952 BTC\",\n amountinUSD: \"$ 9067.62\",\n },\n {\n id: \"#SK3218\",\n date: \"03 Mar, 2020\",\n type: \"Buy\",\n currency: \"Bitcoin\",\n amount: \"1.00952 BTC\",\n amountinUSD: \"$ 9067.62\",\n },\n {\n id: \"#SK3219\",\n date: \"03 Mar, 2020\",\n type: \"Buy\",\n currency: \"Bitcoin\",\n amount: \"1.00952 BTC\",\n amountinUSD: \"$ 9067.62\",\n },\n {\n id: \"#SK3220\",\n date: \"03 Mar, 2020\",\n type: \"Buy\",\n currency: \"Bitcoin\",\n amount: \"1.00952 BTC\",\n amountinUSD: \"$ 9067.62\",\n },\n {\n id: \"#SK3221\",\n date: \"03 Mar, 2020\",\n type: \"Buy\",\n currency: \"Bitcoin\",\n amount: \"1.00952 BTC\",\n amountinUSD: \"$ 9067.62\",\n },\n {\n id: \"#SK3222\",\n date: \"03 Mar, 2020\",\n type: \"Buy\",\n currency: \"Bitcoin\",\n amount: \"1.00952 BTC\",\n amountinUSD: \"$ 9067.62\",\n },\n {\n id: \"#SK3223\",\n date: \"03 Mar, 2020\",\n type: \"Buy\",\n currency: \"Bitcoin\",\n amount: \"1.00952 BTC\",\n amountinUSD: \"$ 9067.62\",\n },\n {\n id: \"#SK3224\",\n date: \"03 Mar, 2020\",\n type: \"Buy\",\n currency: \"Bitcoin\",\n amount: \"1.00952 BTC\",\n amountinUSD: \"$ 9067.62\",\n },\n {\n id: \"#SK3225\",\n date: \"03 Mar, 2020\",\n type: \"Buy\",\n currency: \"Bitcoin\",\n amount: \"1.00952 BTC\",\n amountinUSD: \"$ 9067.62\",\n },\n {\n id: \"#SK3226\",\n date: \"03 Mar, 2020\",\n type: \"Buy\",\n currency: \"Bitcoin\",\n amount: \"1.00952 BTC\",\n amountinUSD: \"$ 9067.62\",\n },\n ],\n}\n\nconst cryptoOrders = [\n {\n date: \"03 Mar, 2020\",\n type: \"Buy\",\n coin: \"Bitcoin\",\n value: \"1.00952 BTC\",\n valueinUSD: \"$ 9067.62\",\n status: \"completed\",\n },\n {\n date: \"04 Mar, 2020\",\n type: \"Sell\",\n coin: \"Ethereum\",\n value: \"0.00413 ETH\t\",\n valueinUSD: \"$ 2123.01\",\n status: \"completed\",\n },\n {\n date: \"04 Mar, 2020\",\n type: \"Buy\",\n coin: \"Bitcoin\",\n value: \"0.00321 BTC\t\",\n valueinUSD: \"$ 1802.62\",\n status: \"pending\",\n },\n {\n date: \"05 Mar, 2020\",\n type: \"Buy\",\n coin: \"Litecoin\",\n value: \"0.00224 LTC\",\n valueinUSD: \"$ 1773.01\",\n status: \"completed\",\n },\n {\n date: \"06 Mar, 2020\",\n type: \"Buy\",\n coin: \"Ethereum\",\n value: \"Ethereum\",\n valueinUSD: \"$ 9423.73\",\n status: \"failed\",\n },\n {\n date: \"07 Mar, 2020\",\n type: \"Buy\",\n coin: \"Bitcoin\",\n value: \"1.00952 BTC\",\n valueinUSD: \"$ 9067.62\",\n status: \"completed\",\n },\n {\n date: \"07 Mar, 2020\",\n type: \"Sell\",\n coin: \"Ethereum\",\n value: \"0.00413 ETH\t\",\n valueinUSD: \"$ 2123.01\",\n status: \"completed\",\n },\n {\n date: \"08 Mar, 2020\",\n type: \"Buy\",\n coin: \"Bitcoin\",\n value: \"0.00321 BTC\t\",\n valueinUSD: \"$ 1802.62\",\n status: \"pending\",\n },\n {\n date: \"09 Mar, 2020\",\n type: \"Buy\",\n coin: \"Litecoin\",\n value: \"0.00224 LTC\",\n valueinUSD: \"$ 1773.01\",\n status: \"completed\",\n },\n {\n date: \"10 Mar, 2020\",\n type: \"Buy\",\n coin: \"Ethereum\",\n value: \"Ethereum\",\n valueinUSD: \"$ 9423.73\",\n status: \"pending\",\n },\n {\n date: \"10 Mar, 2020\",\n type: \"Buy\",\n coin: \"Bitcoin\",\n value: \"1.00952 BTC\",\n valueinUSD: \"$ 9067.62\",\n status: \"completed\",\n },\n {\n date: \"11 Mar, 2020\",\n type: \"Sell\",\n coin: \"Ethereum\",\n value: \"0.00413 ETH\t\",\n valueinUSD: \"$ 2123.01\",\n status: \"completed\",\n },\n {\n date: \"12 Mar, 2020\",\n type: \"Buy\",\n coin: \"Bitcoin\",\n value: \"0.00321 BTC\t\",\n valueinUSD: \"$ 1802.62\",\n status: \"pending\",\n },\n {\n date: \"13 Mar, 2020\",\n type: \"Buy\",\n coin: \"Litecoin\",\n value: \"0.00224 LTC\",\n valueinUSD: \"$ 1773.01\",\n status: \"completed\",\n },\n {\n date: \"14 Mar, 2020\",\n type: \"Buy\",\n coin: \"Ethereum\",\n value: \"Ethereum\",\n valueinUSD: \"$ 9423.73\",\n status: \"failed\",\n },\n {\n date: \"15 Mar, 2020\",\n type: \"Buy\",\n coin: \"Litecoin\",\n value: \"0.00224 LTC\",\n valueinUSD: \"$ 1773.01\",\n status: \"completed\",\n },\n]\n\nexport { wallet, cryptoOrders }\n","const invoiceList = [\n {\n id: 1,\n founder: \"Marion Burton\",\n founderAt: \"Lab Hazir\",\n invoiceID: \"14251\",\n company: \"Lab Hazir Dashboard UI\",\n invoicePrice: \"1455\",\n date: \"10 Oct, 19\",\n color: \"primary\",\n orderId: \"12345\",\n billingAddress: \"John Smith, 1234 Main, Apt. 4B, Springfield ST 54321\",\n shippingAddress: \"Kenny Rigdon, 1234 Main, Apt. 4B, Springfield ST 54321\",\n card: \"Visa ending **** 4242\",\n email: \"jsmith@email.com\",\n orderDate: \"October 16, 2019\",\n orderSummary: {\n items: [\n {\n id: 1,\n item: \"Lab Hazir - Bootstrap 5 Admin Dashboard\",\n price: \"$499.00\",\n },\n {\n id: 2,\n item: \"Lab Hazir - Landing Template\",\n price: \"$399.00\",\n },\n {\n id: 3,\n item: \"Veltrix - Admin Dashboard Template\t\",\n price: \"$499.00\",\n },\n ],\n subTotal: \"$1397.00\",\n shipping: \"$13.00\",\n total: \"$1410.00\",\n },\n },\n {\n id: 2,\n image: \"avatar2\",\n founder: \"Francis Witte\",\n founderAt: \"Lab Hazir\",\n invoiceID: \"14252\",\n company: \"Brand logo design\",\n invoicePrice: \"1024\",\n date: \"11 Oct, 19\",\n orderId: \"12345\",\n billingAddress: \"John Smith, 1234 Main, Apt. 4B, Springfield ST 54321\",\n shippingAddress: \"Kenny Rigdon, 1234 Main, Apt. 4B, Springfield ST 54321\",\n card: \"Visa ending **** 4242\",\n email: \"jsmith@email.com\",\n orderDate: \"October 16, 2019\",\n orderSummary: {\n items: [\n {\n id: 1,\n item: \"Lab Hazir - Bootstrap 5 Admin Dashboard\",\n price: \"$499.00\",\n },\n {\n id: 2,\n item: \"Lab Hazir - Landing Template\t\",\n price: \"$399.00\",\n },\n {\n id: 3,\n item: \"Veltrix - Bootstrap 5 Admin Template\",\n price: \"$499.00\",\n },\n ],\n subTotal: \"$1397.00\",\n shipping: \"$13.00\",\n total: \"$1410.00\",\n },\n },\n {\n id: 3,\n image: \"avatar2\",\n founder: \"Joseph Flint\",\n founderAt: \"Lab Hazir\",\n invoiceID: \"14253\",\n company: \"Landing page Design\",\n invoicePrice: \"1189\",\n date: \"12 Oct, 19\",\n orderId: \"12345\",\n billingAddress: \"John Smith, 1234 Main, Apt. 4B, Springfield ST 54321\",\n shippingAddress: \"Kenny Rigdon, 1234 Main, Apt. 4B, Springfield ST 54321\",\n card: \"Visa ending **** 4242\",\n email: \"jsmith@email.com\",\n orderDate: \"October 16, 2019\",\n orderSummary: {\n items: [\n {\n id: 1,\n item: \"Lab Hazir - Bootstrap 5 Admin Dashboard\",\n price: \"$499.00\",\n },\n {\n id: 2,\n item: \"Lab Hazir - Bootstrap 5 Landing Template\",\n price: \"$399.00\",\n },\n {\n id: 3,\n item: \"Veltrix - Bootstrap 5 Admin Template\",\n price: \"$499.00\",\n },\n ],\n subTotal: \"$1397.00\",\n shipping: \"$13.00\",\n total: \"$1410.00\",\n },\n },\n {\n id: 4,\n image: \"avatar2\",\n founder: \"Larry Nielsen\",\n founderAt: \"Lab Hazir\",\n invoiceID: \"14254\",\n company: \"Redesign - Landing page\",\n invoicePrice: \"1245\",\n date: \"12 Oct, 19\",\n orderId: \"12345\",\n billingAddress: \"John Smith, 1234 Main, Apt. 4B, Springfield ST 54321\",\n shippingAddress: \"Kenny Rigdon, 1234 Main, Apt. 4B, Springfield ST 54321\",\n card: \"Visa ending **** 4242\",\n email: \"jsmith@email.com\",\n orderDate: \"October 16, 2019\",\n orderSummary: {\n items: [\n {\n id: 1,\n item: \"Lab Hazir - Bootstrap 5 Admin Dashboard\",\n price: \"$499.00\",\n },\n {\n id: 2,\n item: \"Lab Hazir - Bootstrap 5 Landing Template\",\n price: \"$399.00\",\n },\n {\n id: 3,\n item: \"Veltrix - Bootstrap 5 Admin Template\",\n price: \"$499.00\",\n },\n ],\n subTotal: \"$1397.00\",\n shipping: \"$13.00\",\n total: \"$1410.00\",\n },\n },\n {\n id: 5,\n image: \"avatar2\",\n founder: \"Mark Evans\",\n founderAt: \"Lab Hazir\",\n invoiceID: \"14255\",\n company: \"Blog Template Design\",\n invoicePrice: \"1024\",\n date: \"11 Oct, 19\",\n orderId: \"12345\",\n billingAddress: \"John Smith, 1234 Main, Apt. 4B, Springfield ST 54321\",\n shippingAddress: \"Kenny Rigdon, 1234 Main, Apt. 4B, Springfield ST 54321\",\n card: \"Visa ending **** 4242\",\n email: \"jsmith@email.com\",\n orderDate: \"October 16, 2019\",\n orderSummary: {\n items: [\n {\n id: 1,\n item: \"Lab Hazir - Bootstrap 5 Admin Dashboard\",\n price: \"$499.00\",\n },\n {\n id: 2,\n item: \"Lab Hazir - Bootstrap 5 Landing Template\",\n price: \"$399.00\",\n },\n {\n id: 3,\n item: \"Veltrix - Bootstrap 5 Admin Template\",\n price: \"$499.00\",\n },\n ],\n subTotal: \"$1397.00\",\n shipping: \"$13.00\",\n total: \"$1410.00\",\n },\n },\n {\n id: 6,\n founder: \"Timothy Lee\",\n founderAt: \"Lab Hazir\",\n invoiceID: \"14256\",\n company: \"Landing page Design\",\n invoicePrice: \"1189\",\n date: \"13 Oct, 19\",\n color: \"success\",\n orderId: \"12345\",\n billingAddress: \"John Smith, 1234 Main, Apt. 4B, Springfield ST 54321\",\n shippingAddress: \"Kenny Rigdon, 1234 Main, Apt. 4B, Springfield ST 54321\",\n card: \"Visa ending **** 4242\",\n email: \"jsmith@email.com\",\n orderDate: \"October 16, 2019\",\n orderSummary: {\n items: [\n {\n id: 1,\n item: \"Lab Hazir - Bootstrap 5 Admin Dashboard\",\n price: \"$499.00\",\n },\n {\n id: 2,\n item: \"Lab Hazir - Bootstrap 5 Landing Template\",\n price: \"$399.00\",\n },\n {\n id: 3,\n item: \"Veltrix - Bootstrap 5 Admin Template\",\n price: \"$499.00\",\n },\n ],\n subTotal: \"$1397.00\",\n shipping: \"$13.00\",\n total: \"$1410.00\",\n },\n },\n {\n id: 7,\n image: \"avatar2\",\n founder: \"Stanley Bland\",\n founderAt: \"Lab Hazir\",\n invoiceID: \"14257\",\n company: \"Landing page UI\",\n invoicePrice: \"1148\",\n date: \"14 Oct, 19\",\n orderId: \"12345\",\n billingAddress: \"John Smith, 1234 Main, Apt. 4B, Springfield ST 54321\",\n shippingAddress: \"Kenny Rigdon, 1234 Main, Apt. 4B, Springfield ST 54321\",\n card: \"Visa ending **** 4242\",\n email: \"jsmith@email.com\",\n orderDate: \"October 16, 2019\",\n orderSummary: {\n items: [\n {\n id: 1,\n item: \"Lab Hazir - Bootstrap 5 Admin Dashboard\",\n price: \"$499.00\",\n },\n {\n id: 2,\n item: \"Lab Hazir - Bootstrap 5 Landing Template\",\n price: \"$399.00\",\n },\n {\n id: 3,\n item: \"Veltrix - Bootstrap 5 Admin Template\",\n price: \"$499.00\",\n },\n ],\n subTotal: \"$1397.00\",\n shipping: \"$13.00\",\n total: \"$1410.00\",\n },\n },\n {\n id: 8,\n founder: \"Tommy Wilson\",\n founderAt: \"Lab Hazir\",\n invoiceID: \"14258\",\n company: \"Redesign - Dashboard\",\n invoicePrice: \"1259\",\n date: \"15 Oct, 19\",\n color: \"info\",\n orderId: \"12345\",\n billingAddress: \"John Smith, 1234 Main, Apt. 4B, Springfield ST 54321\",\n shippingAddress: \"Kenny Rigdon, 1234 Main, Apt. 4B, Springfield ST 54321\",\n card: \"Visa ending **** 4242\",\n email: \"jsmith@email.com\",\n orderDate: \"October 16, 2019\",\n orderSummary: {\n items: [\n {\n id: 1,\n item: \"Lab Hazir - Bootstrap 5 Admin Dashboard\",\n price: \"$499.00\",\n },\n {\n id: 2,\n item: \"Lab Hazir - Bootstrap 5 Landing Template\",\n price: \"$399.00\",\n },\n {\n id: 3,\n item: \"Veltrix - Bootstrap 5 Admin Template\",\n price: \"$499.00\",\n },\n ],\n subTotal: \"$1397.00\",\n shipping: \"$13.00\",\n total: \"$1410.00\",\n },\n },\n {\n id: 9,\n image: \"avatar2\",\n founder: \"Louis Brandon\",\n founderAt: \"Lab Hazir\",\n invoiceID: \"14259\",\n company: \"Email Template UI\",\n invoicePrice: \"1355\",\n date: \"15 Oct, 19\",\n orderId: \"12345\",\n billingAddress: \"John Smith, 1234 Main, Apt. 4B, Springfield ST 54321\",\n shippingAddress: \"Kenny Rigdon, 1234 Main, Apt. 4B, Springfield ST 54321\",\n card: \"Visa ending **** 4242\",\n email: \"jsmith@email.com\",\n orderDate: \"October 16, 2019\",\n orderSummary: {\n items: [\n {\n id: 1,\n item: \"Lab Hazir - Bootstrap 5 Admin Dashboard\",\n price: \"$499.00\",\n },\n {\n id: 2,\n item: \"Lab Hazir - Bootstrap 5 Landing Template\",\n price: \"$399.00\",\n },\n {\n id: 3,\n item: \"Veltrix - Bootstrap 5 Admin Template\",\n price: \"$499.00\",\n },\n ],\n subTotal: \"$1397.00\",\n shipping: \"$13.00\",\n total: \"$1410.00\",\n },\n },\n];\n\nexport { invoiceList };\n","const projects = [\n {\n id: 0,\n img: \"img1\",\n name: \"New admin Design\",\n description: \"It will be as simple as Occidental\",\n status: \"Completed\",\n color: \"success\",\n dueDate: \"2019-10-15\",\n commentsCount: 214,\n team: [\n {\n id: 1,\n img: \"avatar4\",\n fullname: \"Janice Cole\",\n skills: [\n { id: 1, name: \"Frontend\" },\n { id: 2, name: \"UI\" },\n ],\n },\n {\n id: 2,\n img: \"avatar5\",\n fullname: \"Steve Foster\",\n skills: [{ id: 1, name: \"UI/UX\" }],\n },\n {\n id: 3,\n img: \"Null\",\n name: \"A\",\n color: \"success\",\n fullname: \"Aeffrey Walker\",\n skills: [{ id: 1, name: \"Backend\" }],\n },\n {\n id: 4,\n img: \"avatar2\",\n fullname: \"Daniel Candles\",\n skills: [\n { id: 1, name: \"Frontend\" },\n { id: 2, name: \"UI\" },\n ],\n },\n {\n id: 5,\n img: \"avatar6\",\n fullname: \"Steve Foster\",\n skills: [{ id: 1, name: \"UI/UX\" }],\n },\n ],\n startDate: \"08 Sept, 2019\",\n projectDetails: {\n description:\n \"To an English person, it will seem like simplified English, as a skeptical Cambridge friend of mine told me what Occidental is. The European languages are members of the same family. Their separate existence is a myth. For science, music, sport, etc,\",\n points: [\n \"To achieve this, it would be necessary\",\n \"Separate existence is a myth.\",\n \"If several languages coalesce\",\n ],\n },\n files: [\n { name: \"Lab Hazir Landing.Zip\", size: \"3.25 MB\", link: \"#\" },\n { name: \"Lab Hazir Admin.Zip\", size: \"3.15 MB\", link: \"#\" },\n { name: \"Lab Hazir Logo.Zip\", size: \"2.02 MB\", link: \"#\" },\n { name: \"Veltrix admin.Zip\", size: \"2.25 MB\", link: \"#\" },\n ],\n comments: [\n {\n id: 1,\n username: \"David Lambert\",\n userImg: \"avatar2\",\n comment: \"Separate existence is a myth.\",\n },\n {\n id: 2,\n username: \"Steve Foster\",\n userImg: \"avatar3\",\n comment: \"@Henry To an English person it will like simplified\",\n reply: {\n username: \"Jeffrey Walker\",\n comment: \"as a skeptical Cambridge friend\",\n },\n },\n {\n id: 3,\n username: \"Steven Carlson\",\n comment: \" Separate existence is a myth.\",\n },\n ],\n },\n {\n id: 1,\n img: \"img2\",\n name: \"Brand logo design\",\n description: \"To achieve it would be necessary\",\n status: \"Pending\",\n color: \"warning\",\n dueDate: \"2019-10-22\",\n commentsCount: 183,\n team: [\n { id: 1, img: \"avatar8\" },\n { id: 2, img: \"avatar2\", fullname: \"Daniel Candles\" },\n ],\n startDate: \"08 Sept, 2019\",\n projectDetails: {\n description:\n \"To an English person, it will seem like simplified English, as a skeptical Cambridge friend of mine told me what Occidental is. The European languages are members of the same family. Their separate existence is a myth. For science, music, sport, etc,\",\n points: [\n \"To achieve this, it would be necessary\",\n \"Separate existence is a myth.\",\n \"If several languages coalesce\",\n ],\n },\n files: [\n { name: \"Lab Hazir Landing.Zip\", size: \"3.25 MB\", link: \"#\" },\n { name: \"Lab Hazir Admin.Zip\", size: \"3.15 MB\", link: \"#\" },\n { name: \"Lab Hazir Logo.Zip\", size: \"2.02 MB\", link: \"#\" },\n { name: \"Veltrix admin.Zip\", size: \"2.25 MB\", link: \"#\" },\n ],\n comments: [\n {\n id: 1,\n username: \"David Lambert\",\n userImg: \"avatar2\",\n comment: \"Separate existence is a myth.\",\n },\n {\n id: 2,\n username: \"Steve Foster\",\n userImg: \"avatar3\",\n comment: \"@Henry To an English person it will like simplified\",\n reply: {\n username: \"Jeffrey Walker\",\n comment: \"as a skeptical Cambridge friend\",\n },\n },\n {\n id: 3,\n username: \"Steven Carlson\",\n comment: \" Separate existence is a myth.\",\n },\n ],\n },\n {\n id: 2,\n img: \"img3\",\n name: \"New Landing Design\",\n description: \"For science, music, sport, etc\",\n status: \"Delay\",\n color: \"danger\",\n dueDate: \"2019-10-13\",\n commentsCount: 175,\n team: [\n {\n id: 1,\n img: \"Null\",\n name: \"K\",\n color: \"info\",\n fullname: \"Kony Brafford\",\n },\n { id: 2, img: \"avatar2\", fullname: \"Daniel Candles\" },\n ],\n startDate: \"08 Sept, 2019\",\n projectDetails: {\n description:\n \"To an English person, it will seem like simplified English, as a skeptical Cambridge friend of mine told me what Occidental is. The European languages are members of the same family. Their separate existence is a myth. For science, music, sport, etc,\",\n points: [\n \"To achieve this, it would be necessary\",\n \"Separate existence is a myth.\",\n \"If several languages coalesce\",\n ],\n },\n files: [\n { name: \"Lab Hazir Landing.Zip\", size: \"3.25 MB\", link: \"#\" },\n { name: \"Lab Hazir Admin.Zip\", size: \"3.15 MB\", link: \"#\" },\n { name: \"Lab Hazir Logo.Zip\", size: \"2.02 MB\", link: \"#\" },\n { name: \"Veltrix admin.Zip\", size: \"2.25 MB\", link: \"#\" },\n ],\n comments: [\n {\n id: 1,\n username: \"David Lambert\",\n userImg: \"avatar2\",\n comment: \"Separate existence is a myth.\",\n },\n {\n id: 2,\n username: \"Steve Foster\",\n userImg: \"avatar3\",\n comment: \"@Henry To an English person it will like simplified\",\n reply: {\n username: \"Jeffrey Walker\",\n comment: \"as a skeptical Cambridge friend\",\n },\n },\n {\n id: 3,\n username: \"Steven Carlson\",\n comment: \" Separate existence is a myth.\",\n },\n ],\n },\n {\n id: 3,\n img: \"img4\",\n name: \"Redesign - Landing page\",\n description: \"If several languages coalesce\",\n status: \"Completed\",\n color: \"success\",\n dueDate: \"2019-10-14\",\n commentsCount: 202,\n team: [{ id: 1, img: \"avatar4\", fullname: \"Janice Cole\" }],\n startDate: \"08 Sept, 2019\",\n projectDetails: {\n description:\n \"To an English person, it will seem like simplified English, as a skeptical Cambridge friend of mine told me what Occidental is. The European languages are members of the same family. Their separate existence is a myth. For science, music, sport, etc,\",\n points: [\n \"To achieve this, it would be necessary\",\n \"Separate existence is a myth.\",\n \"If several languages coalesce\",\n ],\n },\n files: [\n { name: \"Lab Hazir Landing.Zip\", size: \"3.25 MB\", link: \"#\" },\n { name: \"Lab Hazir Admin.Zip\", size: \"3.15 MB\", link: \"#\" },\n { name: \"Lab Hazir Logo.Zip\", size: \"2.02 MB\", link: \"#\" },\n { name: \"Veltrix admin.Zip\", size: \"2.25 MB\", link: \"#\" },\n ],\n comments: [\n {\n id: 1,\n username: \"David Lambert\",\n userImg: \"avatar2\",\n comment: \"Separate existence is a myth.\",\n },\n {\n id: 2,\n username: \"Steve Foster\",\n userImg: \"avatar3\",\n comment: \"@Henry To an English person it will like simplified\",\n reply: {\n username: \"Jeffrey Walker\",\n comment: \"as a skeptical Cambridge friend\",\n },\n },\n {\n id: 3,\n username: \"Steven Carlson\",\n comment: \" Separate existence is a myth.\",\n },\n ],\n },\n {\n id: 4,\n img: \"img5\",\n name: \"Lab Hazir Dashboard UI\",\n description: \"Separate existence is a myth\",\n status: \"Completed\",\n color: \"success\",\n dueDate: \"2019-10-13\",\n commentsCount: 194,\n team: [\n { id: 1, img: \"avatar1\", fullname: \"Jennifer Walker\" },\n { id: 2, img: \"avatar3\", fullname: \"Daniel Candel\" },\n { id: 3, img: \"Null\", name: \"3+\", color: \"danger\" },\n ],\n startDate: \"08 Sept, 2019\",\n projectDetails: {\n description:\n \"To an English person, it will seem like simplified English, as a skeptical Cambridge friend of mine told me what Occidental is. The European languages are members of the same family. Their separate existence is a myth. For science, music, sport, etc,\",\n points: [\n \"To achieve this, it would be necessary\",\n \"Separate existence is a myth.\",\n \"If several languages coalesce\",\n ],\n },\n files: [\n { name: \"Lab Hazir Landing.Zip\", size: \"3.25 MB\", link: \"#\" },\n { name: \"Lab Hazir Admin.Zip\", size: \"3.15 MB\", link: \"#\" },\n { name: \"Lab Hazir Logo.Zip\", size: \"2.02 MB\", link: \"#\" },\n { name: \"Veltrix admin.Zip\", size: \"2.25 MB\", link: \"#\" },\n ],\n comments: [\n {\n id: 1,\n username: \"David Lambert\",\n userImg: \"avatar2\",\n comment: \"Separate existence is a myth.\",\n },\n {\n id: 2,\n username: \"Steve Foster\",\n userImg: \"avatar3\",\n comment: \"@Henry To an English person it will like simplified\",\n reply: {\n username: \"Jeffrey Walker\",\n comment: \"as a skeptical Cambridge friend\",\n },\n },\n {\n id: 3,\n username: \"Steven Carlson\",\n comment: \" Separate existence is a myth.\",\n },\n ],\n },\n {\n id: 5,\n img: \"img6\",\n name: \"Blog Template UI\",\n description: \"For science, music, sport, etc\",\n status: \"Pending\",\n color: \"warning\",\n dueDate: \"2019-10-24\",\n commentsCount: 222,\n team: [\n { id: 1, img: \"avatar4\", fullname: \"Janice Cole\" },\n { id: 2, img: \"avatar5\", fullname: \"Steve Foster\" },\n ],\n startDate: \"08 Sept, 2019\",\n projectDetails: {\n description:\n \"To an English person, it will seem like simplified English, as a skeptical Cambridge friend of mine told me what Occidental is. The European languages are members of the same family. Their separate existence is a myth. For science, music, sport, etc,\",\n points: [\n \"To achieve this, it would be necessary\",\n \"Separate existence is a myth.\",\n \"If several languages coalesce\",\n ],\n },\n files: [\n { name: \"Lab Hazir Landing.Zip\", size: \"3.25 MB\", link: \"#\" },\n { name: \"Lab Hazir Admin.Zip\", size: \"3.15 MB\", link: \"#\" },\n { name: \"Lab Hazir Logo.Zip\", size: \"2.02 MB\", link: \"#\" },\n { name: \"Veltrix admin.Zip\", size: \"2.25 MB\", link: \"#\" },\n ],\n comments: [\n {\n id: 1,\n username: \"David Lambert\",\n userImg: \"avatar2\",\n comment: \"Separate existence is a myth.\",\n },\n {\n id: 2,\n username: \"Steve Foster\",\n userImg: \"avatar3\",\n comment: \"@Henry To an English person it will like simplified\",\n reply: {\n username: \"Jeffrey Walker\",\n comment: \"as a skeptical Cambridge friend\",\n },\n },\n {\n id: 3,\n username: \"Steven Carlson\",\n comment: \" Separate existence is a myth.\",\n },\n ],\n },\n {\n id: 6,\n img: \"img3\",\n name: \"Multipurpose Landing\",\n description: \"It will be as simple as Occidental\",\n status: \"Delay\",\n color: \"danger\",\n dueDate: \"2019-10-15\",\n commentsCount: 214,\n team: [\n { id: 1, img: \"avatar5\", fullname: \"Steve Foster\" },\n {\n id: 3,\n img: \"Null\",\n name: \"R\",\n color: \"warning\",\n fullname: \"Rony Candles\",\n },\n ],\n },\n {\n id: 7,\n img: \"img4\",\n name: \"App Landing UI\",\n description: \"It will be as simple as Occidental\",\n status: \"Completed\",\n color: \"success\",\n dueDate: \"2019-10-11\",\n commentsCount: 185,\n team: [\n { id: 1, img: \"Null\", name: \"L\", color: \"pink\", fullname: \"Lony Mackay\" },\n { id: 3, img: \"avatar2\", fullname: \"Daniel Candles\" },\n ],\n startDate: \"08 Sept, 2019\",\n projectDetails: {\n description:\n \"To an English person, it will seem like simplified English, as a skeptical Cambridge friend of mine told me what Occidental is. The European languages are members of the same family. Their separate existence is a myth. For science, music, sport, etc,\",\n points: [\n \"To achieve this, it would be necessary\",\n \"Separate existence is a myth.\",\n \"If several languages coalesce\",\n ],\n },\n files: [\n { name: \"Lab Hazir Landing.Zip\", size: \"3.25 MB\", link: \"#\" },\n { name: \"Lab Hazir Admin.Zip\", size: \"3.15 MB\", link: \"#\" },\n { name: \"Lab Hazir Logo.Zip\", size: \"2.02 MB\", link: \"#\" },\n { name: \"Veltrix admin.Zip\", size: \"2.25 MB\", link: \"#\" },\n ],\n comments: [\n {\n id: 1,\n username: \"David Lambert\",\n userImg: \"avatar2\",\n comment: \"Separate existence is a myth.\",\n },\n {\n id: 2,\n username: \"Steve Foster\",\n userImg: \"avatar3\",\n comment: \"@Henry To an English person it will like simplified\",\n reply: {\n username: \"Jeffrey Walker\",\n comment: \"as a skeptical Cambridge friend\",\n },\n },\n {\n id: 3,\n username: \"Steven Carlson\",\n comment: \" Separate existence is a myth.\",\n },\n ],\n },\n {\n id: 8,\n img: \"img2\",\n name: \"New admin Design\",\n description: \"Their most common words.\",\n status: \"Completed\",\n color: \"success\",\n dueDate: \"2019-10-12\",\n commentsCount: 106,\n team: [\n { id: 1, img: \"avatar4\", fullname: \"Janice Cole\" },\n { id: 2, img: \"avatar5\", fullname: \"Steve Foster\" },\n {\n id: 3,\n img: \"Null\",\n name: \"A\",\n color: \"success\",\n fullname: \"Aeffrey Walker\",\n },\n { id: 3, img: \"avatar2\", fullname: \"Daniel Candles\" },\n ],\n startDate: \"08 Sept, 2019\",\n projectDetails: {\n description:\n \"To an English person, it will seem like simplified English, as a skeptical Cambridge friend of mine told me what Occidental is. The European languages are members of the same family. Their separate existence is a myth. For science, music, sport, etc,\",\n points: [\n \"To achieve this, it would be necessary\",\n \"Separate existence is a myth.\",\n \"If several languages coalesce\",\n ],\n },\n files: [\n { name: \"Lab Hazir Landing.Zip\", size: \"3.25 MB\", link: \"#\" },\n { name: \"Lab Hazir Admin.Zip\", size: \"3.15 MB\", link: \"#\" },\n { name: \"Lab Hazir Logo.Zip\", size: \"2.02 MB\", link: \"#\" },\n { name: \"Veltrix admin.Zip\", size: \"2.25 MB\", link: \"#\" },\n ],\n comments: [\n {\n id: 1,\n username: \"David Lambert\",\n userImg: \"avatar2\",\n comment: \"Separate existence is a myth.\",\n },\n {\n id: 2,\n username: \"Steve Foster\",\n userImg: \"avatar3\",\n comment: \"@Henry To an English person it will like simplified\",\n reply: {\n username: \"Jeffrey Walker\",\n comment: \"as a skeptical Cambridge friend\",\n },\n },\n {\n id: 3,\n username: \"Steven Carlson\",\n comment: \" Separate existence is a myth.\",\n },\n ],\n },\n];\n\nconst options = {\n chart: {\n height: 290,\n type: \"bar\",\n toolbar: {\n show: !1,\n },\n },\n plotOptions: {\n bar: {\n columnWidth: \"14%\",\n endingShape: \"rounded\",\n },\n },\n dataLabels: {\n enabled: !1,\n },\n series: [\n {\n name: \"Overview\",\n data: [42, 56, 40, 64, 26, 42, 56, 35, 62],\n },\n ],\n grid: {\n yaxis: {\n lines: {\n show: !1,\n },\n },\n },\n yaxis: {\n title: {\n text: \"% (Percentage)\",\n },\n },\n xaxis: {\n labels: {\n rotate: -90,\n },\n categories: [\"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\", \"8\", \"9\"],\n title: {\n text: \"Week\",\n },\n },\n colors: [\"#556ee6\"],\n};\n\nconst series = [\n {\n name: \"Overview\",\n data: [42, 56, 40, 64, 26, 42, 56, 35, 62],\n },\n];\n\nexport { projects, options, series };\n","const tasks = [\n {\n id: 1,\n title: \"Upcoming\",\n tasks: [\n {\n id: 11,\n description: \"Create a Lab Hazir Dashboard UI\",\n members: [\n {\n username: \"\",\n userImg: \"avatar2\",\n },\n {\n username: \"\",\n userImg: \"avatar1\",\n },\n ],\n status: \"Waiting\",\n budget: \"$145\",\n },\n {\n id: 12,\n description: \"Create a New Landing UI\",\n members: [\n {\n username: \"\",\n userImg: \"avatar4\",\n },\n {\n username: \"\",\n userImg: \"avatar5\",\n },\n { username: \"\" },\n { username: \"\" },\n { username: \"\" },\n ],\n status: \"Approved\",\n budget: \"$225\",\n },\n {\n id: 13,\n description: \"Create a Lab Hazir Logo\",\n members: [\n {\n username: \"Fransis\",\n },\n ],\n status: \"Waiting\",\n budget: \"$105\",\n },\n ],\n },\n {\n id: 2,\n title: \"In Progress\",\n tasks: [\n {\n id: 21,\n description: \"Brand logo design\",\n members: [\n {\n username: \"\",\n userImg: \"avatar7\",\n },\n ],\n status: \"Complete\",\n budget: \"$198\",\n },\n {\n id: 22,\n description: \"Create a Blog Template UI\",\n members: [\n {\n username: \"Stephen\",\n },\n {\n username: \"\",\n userImg: \"avatar8\",\n },\n {\n username: \"\",\n userImg: \"avatar1\",\n },\n ],\n status: \"Pending\",\n budget: \"$125\",\n },\n ],\n },\n {\n id: 3,\n title: \"Completed\",\n tasks: [\n {\n id: 31,\n description: \"Redesign - Landing page\",\n members: [\n {\n username: \"\",\n userImg: \"avatar6\",\n },\n {\n username: \"Fransis\",\n },\n ],\n status: \"Complete\",\n budget: \"$175\",\n },\n {\n id: 32,\n description: \"Multipurpose Landing\",\n members: [\n {\n username: \"\",\n userImg: \"avatar7\",\n },\n ],\n status: \"Complete\",\n budget: \"$135\",\n },\n {\n id: 33,\n description: \"Create a Blog Template UI\",\n members: [\n {\n username: \"\",\n userImg: \"avatar4\",\n },\n {\n username: \"Stephen\",\n },\n {\n username: \"\",\n userImg: \"avatar2\",\n },\n ],\n status: \"Complete\",\n budget: \"$95\",\n },\n ],\n },\n {\n id: 4,\n title: \"Recent Tasks\",\n tasks: [\n {\n id: 41,\n description: \" Brand logo design\",\n members: [\n {\n username: \"\",\n userImg: \"avatar7\",\n },\n ],\n status: \"Complete\",\n budget: \"$100\",\n },\n {\n id: 42,\n description: \"Create a Blog Template UI\",\n members: [\n {\n username: \"Stephen\",\n },\n {\n username: \"\",\n userImg: \"avatar8\",\n },\n {\n username: \"\",\n userImg: \"avatar1\",\n },\n ],\n status: \"Complete\",\n budget: \"$75\",\n },\n {\n id: 43,\n description: \"Redesign - Landing page\",\n members: [\n {\n username: \"\",\n userImg: \"avatar7\",\n },\n {\n username: \"\",\n userImg: \"avatar4\",\n },\n ],\n status: \"Complete\",\n budget: \"$95\",\n },\n ],\n },\n];\n\nconst series = [\n {\n name: \"Complete Tasks\",\n type: \"column\",\n data: [23, 11, 22, 27, 13, 22, 52, 21, 44, 22, 30],\n },\n {\n name: \"All Tasks\",\n type: \"line\",\n data: [23, 11, 34, 27, 17, 22, 62, 32, 44, 22, 39],\n },\n];\n\nconst options = {\n chart: { height: 280, type: \"line\", stacked: !1, toolbar: { show: !1 } },\n stroke: { width: [0, 2, 5], curve: \"smooth\" },\n plotOptions: { bar: { columnWidth: \"20%\", endingShape: \"rounded\" } },\n colors: [\"#556ee6\", \"#34c38f\"],\n fill: {\n gradient: {\n inverseColors: !1,\n shade: \"light\",\n type: \"vertical\",\n opacityFrom: 0.85,\n opacityTo: 0.55,\n stops: [0, 100, 100, 100],\n },\n },\n labels: [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n ],\n markers: { size: 0 },\n yaxis: { min: 0 },\n};\n\nconst statusClasses = {\n waiting: \"badge-soft-secondary\",\n approved: \"badge-soft-primary\",\n complete: \"badge-soft-success\",\n pending: \"badge-soft-warning\",\n};\n\nexport { tasks, series, options, statusClasses };\n","export default __webpack_public_path__ + \"static/media/img-1.2ed33261.png\";","export default __webpack_public_path__ + \"static/media/Pro-1a.2c9531bf.png\";","export default __webpack_public_path__ + \"static/media/Pro-1b.cb73a2f0.png\";","export default __webpack_public_path__ + \"static/media/img-2.22568969.png\";","export default __webpack_public_path__ + \"static/media/Pro-2a.51f0054f.png\";","export default __webpack_public_path__ + \"static/media/Pro-2b.4fe43f13.png\";","export default __webpack_public_path__ + \"static/media/img-3.1b1b3795.png\";","export default __webpack_public_path__ + \"static/media/Pro-4.da108286.png\";","export default __webpack_public_path__ + \"static/media/Pro-4a.5abb8afc.png\";","export default __webpack_public_path__ + \"static/media/img-4.9ab8ceb2.png\";","export default __webpack_public_path__ + \"static/media/Pro-12a.aa99294f.png\";","export default __webpack_public_path__ + \"static/media/Pro-12b.6a1e27c0.png\";","export default __webpack_public_path__ + \"static/media/Pro-8.480b2cf1.png\";","export default __webpack_public_path__ + \"static/media/Pro-8a.76c32c0d.png\";","export default __webpack_public_path__ + \"static/media/Pro-8b.a4c55f8e.png\";","export default __webpack_public_path__ + \"static/media/img-6.def46853.png\";","/** Product 1 */\nimport product1 from \"../../assets/images/product/img-1.png\";\nimport product7 from \"../../assets/images/product/Pro-1a.png\";\nimport product8 from \"../../assets/images/product/Pro-1b.png\";\n\n/** Product 2 */\nimport product2a from \"../../assets/images/product/img-2.png\";\nimport product2b from \"../../assets/images/product/Pro-2a.png\";\nimport product2c from \"../../assets/images/product/Pro-2b.png\";\n\n/** Product 3 */\nimport product3a from \"../../assets/images/product/img-3.png\";\nimport product3b from \"../../assets/images/product/Pro-4.png\";\nimport product3c from \"../../assets/images/product/Pro-4a.png\";\n\n/** Product 4 */\nimport product4a from \"../../assets/images/product/img-4.png\";\nimport product4b from \"../../assets/images/product/Pro-12a.png\";\nimport product4c from \"../../assets/images/product/Pro-12b.png\";\n\n/** Product 5 */\nimport product5a from \"../../assets/images/product/Pro-8.png\";\nimport product5b from \"../../assets/images/product/Pro-8a.png\";\nimport product5c from \"../../assets/images/product/Pro-8b.png\";\n\n/** Product 6 */\nimport product6a from \"../../assets/images/product/img-6.png\";\nimport product6b from \"../../assets/images/product/Pro-17.png\";\nimport product6c from \"../../assets/images/product/Pro-17a.png\";\n\nconst productsData = [\n {\n id: 1,\n image: \"product1\",\n name: \"Half sleeve T-shirt\",\n link: \"#\",\n category: \"T-shirts\",\n rating: 5,\n oldPrice: 500,\n newPrice: 405,\n isOffer: true,\n offer: 10,\n reviews: 0,\n subImage: [product1, product7, product8],\n specification: [\n { type: \"Category\", value: \"T-shirt\" },\n { type: \"Brand\", value: \"Levis\" },\n { type: \"Size\", value: \"M\" },\n { type: \"Color\", value: \"Red\" },\n ],\n\n features: [\n { icon: \"fa fa-caret-right\", type: \"Fit\", value: \"Regular fit\" },\n { icon: \"fa fa-caret-right\", type: \"\", value: \"Highest quality fabric\" },\n {\n icon: \"fa fa-caret-right\",\n type: \"\",\n value: \"Suitable for all weather condition\",\n },\n {\n icon: \"fa fa-caret-right\",\n type: \"\",\n value: \"Excellent Washing and Light Fastness\",\n },\n ],\n colorOptions: [\n { image: \"product8\", color: \"Red\" },\n { image: \"product7\", color: \"Black\" },\n ],\n },\n {\n id: 2,\n image: \"product2\",\n name: \"Black color T-shirt\",\n link: \"#\",\n category: \"T-shirts\",\n rating: 5,\n oldPrice: 225,\n newPrice: 175,\n isOffer: true,\n offer: 20,\n reviews: 0,\n subImage: [product2a, product2b, product2c],\n specification: [\n { type: \"Category\", value: \"T-shirt\" },\n { type: \"Brand\", value: \"Levis\" },\n { type: \"Size\", value: \"L\" },\n { type: \"Color\", value: \"Light blue\" },\n ],\n features: [\n { icon: \"fa fa-caret-right\", type: \"Fit\", value: \"Regular fit\" },\n { icon: \"fa fa-caret-right\", type: \"\", value: \"Highest quality fabric\" },\n {\n icon: \"fa fa-caret-right\",\n type: \"\",\n value: \"Suitable for all weather condition\",\n },\n {\n icon: \"fa fa-caret-right\",\n type: \"\",\n value: \"Excellent Washing and Light Fastness\",\n },\n ],\n colorOptions: [\n { image: \"product2\", color: \"Light blue\" },\n { image: \"product9\", color: \"Black\" },\n ],\n },\n {\n id: 3,\n image: \"product3\",\n name: \"Printed T-shirt\",\n link: \"#\",\n category: \"T-shirts\",\n rating: 4,\n oldPrice: 177,\n newPrice: 152,\n isOffer: true,\n offer: 14,\n reviews: 0,\n subImage: [product3a, product3b, product3c],\n specification: [\n { type: \"Category\", value: \"T-shirt\" },\n { type: \"Brand\", value: \"Levis\" },\n { type: \"Size\", value: \"XL\" },\n { type: \"Color\", value: \"Black\" },\n ],\n features: [\n { icon: \"fa fa-caret-right\", type: \"Fit\", value: \"Regular fit\" },\n { icon: \"fa fa-caret-right\", type: \"\", value: \"Highest quality fabric\" },\n {\n icon: \"fa fa-caret-right\",\n type: \"\",\n value: \"Suitable for all weather condition\",\n },\n {\n icon: \"fa fa-caret-right\",\n type: \"\",\n value: \"Excellent Washing and Light Fastness\",\n },\n ],\n colorOptions: [\n { image: \"product3\", color: \"Black\" },\n { image: \"product10\", color: \"White\" },\n ],\n },\n {\n id: 4,\n image: \"product4\",\n name: \"Smiley Plain T-shirt\",\n link: \"#\",\n category: \"Hoodies\",\n rating: 3,\n oldPrice: 150,\n newPrice: 145,\n isOffer: true,\n offer: 5,\n reviews: 0,\n subImage: [product4a, product4b, product4c],\n specification: [\n { type: \"Category\", value: \"T-shirt\" },\n { type: \"Brand\", value: \"Levis\" },\n { type: \"Size\", value: \"M\" },\n { type: \"Color\", value: \"Blue\" },\n ],\n features: [\n { icon: \"fa fa-caret-right\", type: \"Fit\", value: \"Regular fit\" },\n { icon: \"fa fa-caret-right\", type: \"\", value: \"Highest quality fabric\" },\n {\n icon: \"fa fa-caret-right\",\n type: \"\",\n value: \"Suitable for all weather condition\",\n },\n {\n icon: \"fa fa-caret-right\",\n type: \"\",\n value: \"Excellent Washing and Light Fastness\",\n },\n ],\n colorOptions: [\n { image: \"product4\", color: \"Blue\" },\n { image: \"product11\", color: \"Black\" },\n ],\n },\n {\n id: 5,\n image: \"product5\",\n name: \"Full sleeve T-Shirt\",\n link: \"#\",\n category: \"T-shirts\",\n rating: 1,\n oldPrice: 177,\n newPrice: 152,\n isOffer: false,\n offer: 0,\n reviews: 5,\n subImage: [product5a, product5b, product5c],\n specification: [\n { type: \"Size\", value: \"S\" },\n { type: \"Color\", value: \"Coral\" },\n ],\n features: [\n { icon: \"fa fa-caret-right\", type: \"Fit\", value: \"Regular fit\" },\n { icon: \"fa fa-caret-right\", type: \"\", value: \"Highest quality fabric\" },\n {\n icon: \"fa fa-caret-right\",\n type: \"\",\n value: \"Suitable for all weather condition\",\n },\n {\n icon: \"fa fa-caret-right\",\n type: \"\",\n value: \"Excellent Washing and Light Fastness\",\n },\n ],\n colorOptions: [\n { image: \"product5\", color: \"Coral\" },\n { image: \"product12\", color: \"Black\" },\n ],\n },\n {\n id: 6,\n image: \"product6\",\n name: \"Sky blue color T-shirt\",\n link: \"#\",\n category: \"T-shirts\",\n rating: 5,\n oldPrice: 200,\n newPrice: 100,\n isOffer: true,\n offer: 50,\n reviews: 10,\n subImage: [product6a, product6b, product6c],\n specification: [\n { type: \"Category\", value: \"T-shirt\" },\n { type: \"Brand\", value: \"Levis\" },\n { type: \"Size\", value: \"L\" },\n { type: \"Color\", value: \"Green\" },\n ],\n features: [\n { icon: \"fa fa-caret-right\", type: \"Fit\", value: \"Regular fit\" },\n { icon: \"fa fa-caret-right\", type: \"\", value: \"Highest quality fabric\" },\n {\n icon: \"fa fa-caret-right\",\n type: \"\",\n value: \"Suitable for all weather condition\",\n },\n {\n icon: \"fa fa-caret-right\",\n type: \"\",\n value: \"Excellent Washing and Light Fastness\",\n },\n ],\n colorOptions: [\n { image: \"product6\", color: \"Green\" },\n { image: \"product13\", color: \"Black\" },\n ],\n },\n]\n\nconst recentProducts = [\n {\n id: 1,\n img: \"img7\",\n name: \"Solid Color T-Shirt\",\n link: \"\",\n rating: 4,\n oldPrice: 240,\n newPrice: 225,\n },\n {\n id: 2,\n img: \"img4\",\n name: \"Smiley Plain T-shirt\",\n link: \"\",\n rating: 3,\n oldPrice: 150,\n newPrice: 145,\n },\n {\n id: 3,\n img: \"img6\",\n name: \"Sky blue color T-shirt\",\n link: \"\",\n rating: 4,\n oldPrice: 138,\n newPrice: 135,\n },\n]\n\nconst comments = [\n {\n id: 1,\n img: \"avatar2\",\n name: \"Brian\",\n description:\n \"If several languages coalesce, the grammar of the resulting language.\",\n date: \"5 hrs ago\",\n },\n {\n id: 2,\n img: \"avatar4\",\n name: \"Denver\",\n description:\n \"To an English person, it will seem like simplified English, as a skeptical Cambridge\",\n date: \"07 Oct, 2019\",\n childComment: [\n {\n id: 1,\n img: \"avatar5\",\n name: \"Henry\",\n description:\n \"Their separate existence is a myth. For science, music, sport, etc.\",\n date: \"08 Oct, 2019\",\n },\n ],\n },\n {\n id: 3,\n img: \"Null\",\n name: \"Neal\",\n description:\n \"Everyone realizes why a new common language would be desirable.\",\n date: \"05 Oct, 2019\",\n },\n]\n\nconst discountData = [\n { label: \"Less than 10%\", value: 0 },\n { label: \"10% or more\", value: 10 },\n { label: \"20% or more\", value: 20 },\n { label: \"30% or more\", value: 30 },\n { label: \"40% or more\", value: 40 },\n { label: \"50% or more\", value: 50 },\n]\n\nconst orders = [\n {\n id: \"1\",\n orderId: \"#SK2540\",\n billingName: \"Neal Matthews\",\n orderdate: \"2019-10-08\",\n total: \"$400\",\n badgeclass: \"success\",\n paymentStatus: \"Paid\",\n methodIcon: \"fa-cc-mastercard\",\n paymentMethod: \"Mastercard\",\n },\n {\n id: \"2\",\n orderId: \"#SK2541\",\n billingName: \"Jamal Burnett\",\n orderdate: \"2019-10-07\",\n total: \"$380\",\n badgeclass: \"danger\",\n paymentStatus: \"Chargeback\",\n methodIcon: \"fa-cc-visa\",\n paymentMethod: \"Visa\",\n },\n {\n id: \"3\",\n orderId: \"#SK2542\",\n billingName: \"Juan Mitchell\",\n orderdate: \"2019-10-06\",\n total: \"$384\",\n badgeclass: \"success\",\n paymentStatus: \"Paid\",\n methodIcon: \"fa-cc-paypal\",\n paymentMethod: \"Paypal\",\n },\n {\n id: \"4\",\n orderId: \"#SK2543\",\n billingName: \"Barry Dick\",\n orderdate: \"2019-10-05\",\n total: \"$412\",\n badgeclass: \"success\",\n paymentStatus: \"Paid\",\n methodIcon: \"fa-cc-mastercard\",\n paymentMethod: \"Mastercard\",\n },\n {\n id: \"5\",\n orderId: \"#SK2544\",\n billingName: \"Ronald Taylor\",\n orderdate: \"2019-10-04\",\n total: \"$404\",\n badgeclass: \"warning\",\n paymentStatus: \"Refund\",\n methodIcon: \"fa-cc-visa\",\n paymentMethod: \"Visa\",\n },\n {\n id: \"6\",\n orderId: \"#SK2545\",\n billingName: \"Jacob Hunter\",\n orderdate: \"2019-10-04\",\n total: \"$392\",\n badgeclass: \"success\",\n paymentStatus: \"Paid\",\n methodIcon: \"fa-cc-paypal\",\n paymentMethod: \"Paypal\",\n },\n {\n id: \"7\",\n orderId: \"#SK2546\",\n billingName: \"William Cruz\",\n orderdate: \"2019-10-03\",\n total: \"$374\",\n badgeclass: \"success\",\n paymentStatus: \"Paid\",\n methodIcon: \"fas fa-money-bill-alt\",\n paymentMethod: \"COD\",\n },\n {\n id: \"8\",\n orderId: \"#SK2547\",\n billingName: \"Dustin Moser\",\n orderdate: \"2019-10-02\",\n total: \"$350\",\n badgeclass: \"success\",\n paymentStatus: \"Paid\",\n methodIcon: \"fa-cc-paypal\",\n paymentMethod: \"Mastercard\",\n },\n {\n id: \"9\",\n orderId: \"#SK2548\",\n billingName: \"Clark Benson\",\n orderdate: \"2019-10-01\",\n total: \"$345\",\n badgeclass: \"warning\",\n paymentStatus: \"Refund\",\n methodIcon: \"fa-cc-paypal\",\n paymentMethod: \"Visa\",\n },\n {\n id: \"10\",\n orderId: \"#SK2540\",\n billingName: \"Neal Matthews\",\n orderdate: \"2019-10-08\",\n total: \"$400\",\n badgeclass: \"success\",\n paymentStatus: \"Paid\",\n methodIcon: \"fa-cc-mastercard\",\n paymentMethod: \"Mastercard\",\n },\n {\n id: \"11\",\n orderId: \"#SK2541\",\n billingName: \"Jamal Burnett\",\n orderdate: \"2019-10-07\",\n total: \"$380\",\n badgeclass: \"danger\",\n paymentStatus: \"Chargeback\",\n methodIcon: \"fa-cc-visa\",\n paymentMethod: \"Visa\",\n },\n {\n id: \"12\",\n orderId: \"#SK2542\",\n billingName: \"Juan Mitchell\",\n orderdate: \"2019-10-06\",\n total: \"$384\",\n badgeclass: \"success\",\n paymentStatus: \"Paid\",\n methodIcon: \"fa-cc-paypal\",\n paymentMethod: \"Paypal\",\n },\n {\n id: \"13\",\n orderId: \"#SK2543\",\n billingName: \"Barry Dick\",\n orderdate: \"2019-10-05\",\n total: \"$412\",\n badgeclass: \"success\",\n paymentStatus: \"Paid\",\n methodIcon: \"fa-cc-mastercard\",\n paymentMethod: \"Mastercard\",\n },\n]\n\nconst cartData = {\n products: [\n {\n id: 1,\n img: \"img1\",\n name: \"Half sleeve T-shirt\",\n color: \"Green\",\n price: \"450\",\n data_attr: 2,\n total: 900,\n },\n {\n id: 2,\n img: \"img2\",\n name: \"Black color T-shirt\",\n color: \"Black\",\n price: \"225\",\n data_attr: 6,\n total: 225,\n },\n {\n id: 3,\n img: \"img3\",\n name: \"Printed T-shirt\",\n color: \"Black\",\n price: \"152\",\n data_attr: 2,\n total: 304,\n },\n {\n id: 4,\n img: \"img4\",\n name: \"Smiley Plain T-shirt\",\n color: \"Blue\",\n price: \"145\",\n data_attr: 2,\n total: 290,\n },\n {\n id: 5,\n img: \"img5\",\n name: \"Full sleeve T-Shirt\",\n color: \"Light orange\",\n price: \"138\",\n data_attr: 8,\n total: 138,\n },\n {\n id: 6,\n img: \"img6\",\n name: \"Sky blue color T-shirt\",\n color: \"Green\",\n price: \"152\",\n data_attr: 2,\n total: 304,\n },\n ],\n orderSummary: {\n grandTotal: \"$ 1,857\",\n discount: \"$ 157\",\n shippingCharge: \"$ 25\",\n estimatedTax: \"$ 19.22\",\n total: \"$ 1744.22\",\n },\n}\n\nconst customerData = [\n {\n id: 1,\n username: \"Stephen Rash\",\n phone: \"325-250-1106\",\n email: \"StephenRash@teleworm.us\",\n address: \"2470 Grove Street Bethpage, NY 11714\",\n rating: \"4.2\",\n walletBalance: \"$5,412\",\n joiningDate: \"2019-10-07\",\n },\n {\n id: 2,\n username: \"Juan Mays\",\n phone: \"443-523-4726\",\n email: \"JuanMays@armyspy.com\",\n address: \"3755 Harron Drive Salisbury, MD 21875\",\n rating: \"4.0\",\n walletBalance: \"$5,632\",\n joiningDate: \"2019-10-06\",\n },\n {\n id: 3,\n username: \"Scott Henry\",\n phone: \"704-629-9535\",\n email: \"ScottHenry@jourrapide.com\",\n address: \"3632 Snyder Avenue Bessemer City, NC 2801\",\n rating: \"4.4\",\n walletBalance: \"$7,523\",\n joiningDate: \"2019-10-06\",\n },\n {\n id: 4,\n username: \"Cody Menendez\",\n phone: \"701-832-5838\",\n email: \"CodyMenendez@armyspy.com\",\n address: \"4401 Findley Avenue Minot, ND 58701\",\n rating: \"4.1\",\n walletBalance: \"$6,325\",\n joiningDate: \"2019-10-05\",\n },\n {\n id: 5,\n username: \"Jason Merino\",\n phone: \"706-219-4095\",\n email: \"JasonMerino@dayrep.com\",\n address: \"3159 Holly Street Cleveland, GA 30528\",\n rating: \"3.8\",\n walletBalance: \"$4,523\",\n joiningDate: \"2019-10-04\",\n },\n {\n id: 6,\n username: \"Kyle Aquino\",\n phone: \"415-232-5443\",\n email: \"KyleAquino@teleworm.us\",\n address: \"4861 Delaware Avenue San Francisco, CA 94143\",\n rating: \"4.0\",\n walletBalance: \"$5,412\",\n joiningDate: \"2019-10-03\",\n },\n {\n id: 7,\n username: \"David Gaul\",\n phone: \"314-483-4679\",\n email: \"DavidGaul@teleworm.us\",\n address: \"1207 Cottrill Lane Stlouis, MO 63101\",\n rating: \"4.2\",\n walletBalance: \"$6,180\",\n joiningDate: \"2019-10-02\",\n },\n {\n id: 8,\n username: \"John McCray\",\n phone: \"253-661-7551\",\n email: \"JohnMcCray@armyspy.com\",\n address: \"3309 Horizon Circle Tacoma, WA 98423\",\n rating: \"4.1\",\n walletBalance: \"$5,2870\",\n joiningDate: \"2019-10-02\",\n },\n {\n id: 9,\n username: \"Stephen Rash\",\n phone: \"325-250-1106\",\n email: \"StephenRash@teleworm.us\",\n address: \"2470 Grove Street Bethpage, NY 11714\",\n rating: \"4.2\",\n walletBalance: \"$5,412\",\n joiningDate: \"2019-10-07\",\n },\n {\n id: 10,\n username: \"Juan Mays\",\n phone: \"443-523-4726\",\n email: \"JuanMays@armyspy.com\",\n address: \"3755 Harron Drive Salisbury, MD 21875\",\n rating: \"4.0\",\n walletBalance: \"$5,632\",\n joiningDate: \"2019-10-06\",\n },\n {\n id: 11,\n username: \"Scott Henry\",\n phone: \"704-629-9535\",\n email: \"ScottHenry@jourrapide.com\",\n address: \"3632 Snyder Avenue Bessemer City, NC 2801\",\n rating: \"4.4\",\n walletBalance: \"$7,523\",\n joiningDate: \"2019-10-06\",\n },\n {\n id: 12,\n username: \"Cody Menendez\",\n phone: \"701-832-5838\",\n email: \"CodyMenendez@armyspy.com\",\n address: \"4401 Findley Avenue Minot, ND 58701\",\n rating: \"4.1\",\n walletBalance: \"$6,325\",\n joiningDate: \"2019-10-05\",\n },\n {\n id: 13,\n username: \"Jason Merino\",\n phone: \"706-219-4095\",\n email: \"JasonMerino@dayrep.com\",\n address: \"3159 Holly Street Cleveland, GA 30528\",\n rating: \"3.8\",\n walletBalance: \"$4,523\",\n joiningDate: \"2019-10-04\",\n },\n]\n\nconst shops = [\n {\n id: 1,\n color: \"primary\",\n name: \"Brendle's\",\n product: 112,\n balance: \"13,575\",\n profileLink: \"#\",\n },\n {\n id: 2,\n color: \"warning\",\n name: \"Tech Hifi\",\n product: 104,\n balance: \"11,145\",\n profileLink: \"#\",\n },\n {\n id: 3,\n color: \"danger\",\n name: \"Lafayette\",\n product: 126,\n balance: \"12,356\",\n profileLink: \"#\",\n },\n {\n id: 4,\n color: \"success\",\n name: \"Packer\",\n product: 102,\n balance: \"11,228\",\n profileLink: \"#\",\n },\n {\n id: 5,\n color: \"info\",\n name: \"Nedick's\",\n product: 96,\n balance: \"9,235\",\n profileLink: \"#\",\n },\n {\n id: 6,\n color: \"dark\",\n name: \"Hudson's\",\n product: 120,\n balance: \"14,794\",\n profileLink: \"#\",\n },\n {\n id: 7,\n color: \"dark\",\n name: \"Tech Hifi\",\n product: 104,\n balance: \"11,145\",\n profileLink: \"#\",\n },\n {\n id: 8,\n color: \"primary\",\n name: \"Brendle's\",\n product: 112,\n balance: \"13,575\",\n profileLink: \"#\",\n },\n {\n id: 9,\n color: \"success\",\n name: \"Lafayette\",\n product: 120,\n balance: \"12,356\",\n profileLink: \"#\",\n },\n]\n\nexport {\n productsData,\n recentProducts,\n comments,\n discountData,\n orders,\n shops,\n customerData,\n cartData,\n}\n","export default __webpack_public_path__ + \"static/media/Pro-17.880d4a9b.png\";","export default __webpack_public_path__ + \"static/media/Pro-17a.5f3965dc.png\";","/**\n * Chat data\n */\nconst chats = [\n {\n id: 1,\n roomId: 1,\n status: \"offline\",\n image: \"avatar2\",\n name: \"Steven Franklin\",\n description: \"Hey! there I'm available\",\n time: \"05 min\",\n },\n {\n id: 2,\n roomId: 2,\n status: \"online\",\n image: \"avatar3\",\n name: \"Adam Miller\",\n description: \"I've finished it! See you so\",\n time: \"12 min\",\n },\n {\n id: 3,\n roomId: 3,\n status: \"online\",\n image: \"avatar3\",\n name: \"Keith Gonzales\",\n description: \"This theme is awesome!\",\n time: \"24 min\",\n },\n {\n id: 4,\n roomId: 4,\n status: \"intermediate\",\n image: \"avatar4\",\n name: \"Jose Vickery\",\n description: \"Nice to meet you\",\n time: \"1 hr\",\n },\n {\n id: 5,\n roomId: 5,\n status: \"offline\",\n image: \"avatar4\",\n name: \"Mitchel Givens\",\n description: \"Hey! there I'm available\",\n time: \"3 hrs\",\n },\n {\n id: 6,\n roomId: 6,\n status: \"online\",\n image: \"avatar6\",\n name: \"Stephen Hadley\",\n description: \"I've finished it! See you so\",\n time: \"5 hrs\",\n },\n {\n id: 7,\n roomId: 7,\n status: \"online\",\n image: \"avatar6\",\n name: \"Keith Gonzales\",\n description: \"This theme is awesome!\",\n time: \"24 min\",\n },\n]\n\n/**\n * group list data\n */\nconst groups = [\n { id: 1, image: \"G\", name: \"General\" },\n { id: 2, image: \"R\", name: \"Reporting\" },\n { id: 3, image: \"M\", name: \"Meeting\" },\n { id: 4, image: \"A\", name: \"Project A\" },\n { id: 5, image: \"B\", name: \"Project B\" },\n]\n\n/**\n * contact list data\n */\nconst contacts = [\n {\n category: \"A\",\n child: [\n { id: 1, name: \"Adam Miller\" },\n { id: 2, name: \"Alfonso Fisher\" },\n ],\n },\n {\n category: \"B\",\n child: [{ id: 1, name: \"Bonnie Harney\" }],\n },\n {\n category: \"C\",\n child: [\n { id: 1, name: \"Charles Brown\" },\n { id: 2, name: \"Carmella Jones\" },\n { id: 3, name: \"Carrie Williams\" },\n ],\n },\n {\n category: \"D\",\n child: [{ id: 4, name: \"Dolores Minter\" }],\n },\n]\n\n/**\n * message list data\n */\nconst messages = [\n {\n id: 1,\n roomId: 1,\n sender: \"Steven Franklin\",\n message: \"Hello!\",\n createdAt: \"2020-04-02T17:07:21.529Z\",\n },\n {\n id: 2,\n roomId: 1,\n sender: \"Henry Wells\",\n message: \"Hi, How are you? What about our next meeting?\",\n createdAt: \"2020-04-02T17:07:21.529Z\",\n },\n {\n id: 3,\n roomId: 1,\n sender: \"Steven Franklin\",\n message: \"Yeah everything is fine\",\n createdAt: \"2020-04-02T17:07:21.529Z\",\n },\n {\n id: 4,\n roomId: 1,\n sender: \"Steven Franklin\",\n message: \"& Next meeting tomorrow 10.00AM\",\n createdAt: \"2020-04-02T17:07:21.529Z\",\n },\n {\n id: 5,\n roomId: 1,\n sender: \"Henry Wells\",\n message: \"Wow that's great\",\n createdAt: \"2020-04-02T17:07:21.529Z\",\n },\n {\n id: 4,\n roomId: 2,\n sender: \"Adam Miller\",\n message: \"Hello!\",\n createdAt: \"2020-04-02T17:07:21.529Z\",\n },\n {\n id: 5,\n roomId: 3,\n sender: \"Keith Gonzales\",\n message: \"Hello!\",\n createdAt: \"2020-04-02T17:07:21.529Z\",\n },\n {\n id: 6,\n roomId: 4,\n sender: \"Jose Vickery\",\n message: \"Hello!\",\n createdAt: \"2020-04-02T17:07:21.529Z\",\n },\n {\n id: 7,\n roomId: 5,\n sender: \"Mitchel Givens\",\n message: \"Hello!\",\n createdAt: \"2020-04-02T17:07:21.529Z\",\n },\n {\n id: 8,\n roomId: 6,\n sender: \"Stephen Hadley\",\n message: \"Hello!\",\n createdAt: \"2020-04-02T17:07:21.529Z\",\n },\n {\n id: 9,\n roomId: 7,\n sender: \"Keith Gonzales\",\n message: \"Hello!\",\n createdAt: \"2020-04-02T17:07:21.529Z\",\n },\n]\n\nexport { chats, messages, contacts, groups }\n","const inboxmails = [\n {\n id: 1,\n name: \"Peter, me (3)\",\n description: \"Hello – Trip home from Colombo has been arranged, then Jenna will come get me from Stockholm. :)\",\n read: true,\n fav: false,\n date: 'Mar 6',\n },\n {\n id: 2,\n name: \"me, Susanna (7)\",\n description: \" Freelance Since you asked... and i'm inconceivably bored at the train station – Alright thanks. I'll have to re-book that somehow, i'll get back to you. \",\n read: true,\n fav: false,\n date: 'Mar 6',\n },\n {\n id: 3,\n name: \"Web Support Dennis\",\n description: \" Re: New mail settings – Will you answer him asap? \",\n read: true,\n fav: false,\n date: 'Mar 7',\n },\n {\n id: 4,\n name: \"me, Peter (2)\",\n description: \" Support Off on Thursday - Eff that place, you might as well stay here with us instead! Sent from my iPhone 4 4 mar 2014 at 5:55 pm \",\n read: true,\n fav: false,\n date: 'Mar 4',\n },\n {\n id: 5,\n name: \"Medium\",\n description: \" Social This Week's Top Stories – Our top pick for you on Medium this week The Man Who Destroyed America’s Ego \",\n read: true,\n fav: false,\n date: 'Feb 28',\n },\n {\n id: 6,\n name: \"Death to Stock\",\n description: \" Montly High-Res Photos – To create this month's pack, we hosted a party with local musician Jared Mahone here in Columbus, Ohio. \",\n read: true,\n fav: false,\n date: 'Feb 28',\n },\n {\n id: 7,\n name: \"Randy, me (5)\",\n description: \" Family Last pic over my village – Yeah i'd like that! Do you remember the video you showed me of your train ride between Colombo and Kandy? The one with the mountain view? I would love to see that one again! \",\n read: false,\n fav: false,\n date: '5:01 am',\n },\n {\n id: 8,\n name: \"Andrew Zimmer\",\n description: \" Mochila Beta: Subscription Confirmed – You've been confirmed! Welcome to the ruling className of the inbox. For your records, here is a copy of the information you submitted to us... \",\n read: true,\n fav: false,\n date: 'Mar 8',\n },\n {\n id: 9,\n name: \"Infinity HR\",\n description: \" Sveriges Hetaste sommarjobb – Hej Nicklas Sandell! Vi vill bjuda in dig till 'First tour 2014', ett rekryteringsevent som erbjuder jobb på 16 semesterorter iSverige. \",\n read: true,\n fav: false,\n date: 'Mar 8',\n },\n {\n id: 10,\n name: \"Revibe\",\n description: \" Friends Weekend on Revibe – Today's Friday and we thought maybe you want some music inspiration for the weekend. Here are some trending tracks and playlists we think you should give a listen! \",\n read: true,\n fav: false,\n date: 'Feb 27',\n },\n {\n id: 11,\n name: \"Erik, me (5)\",\n description: \" Regarding our meeting – That's great, see you on Thursday! \",\n read: true,\n fav: false,\n date: 'Feb 24',\n },\n {\n id: 12,\n name: \"KanbanFlow\",\n description: \" Social Task assigned: Clone ARP's website – You have been assigned a task by Alex@Work on the board Web. \",\n read: true,\n fav: false,\n date: 'Feb 24',\n },\n {\n id: 13,\n name: \"Tobias Berggren\",\n description: \" Let's go fishing! – Hey, You wanna join me and Fred at the lake tomorrow? It'll be awesome. \",\n read: true,\n fav: false,\n date: 'Feb 23',\n },\n {\n id: 14,\n name: \"Charukaw, me (7)\",\n description: \" Hey man – Nah man sorry i don't. Should i get it? \",\n read: true,\n fav: false,\n date: 'Feb 23',\n },\n {\n id: 15,\n name: \"me, Peter (5)\",\n description: \" Support Home again! – That's just perfect! See you tomorrow. \",\n read: false,\n fav: false,\n date: 'Feb 21',\n },\n {\n id: 16,\n name: \"Stack Exchange\",\n description: \" 1 new items in your Stackexchange inbox – The following items were added to your Stack Exchange global inbox since you last checked it. \",\n read: true,\n fav: false,\n date: 'Feb 21',\n },\n {\n id: 17,\n name: \"Google Drive Team\",\n description: \" You can now use your storage in Google Drive – Hey Nicklas Sandell! Thank you for purchasing extra storage space in Google Drive. \",\n read: true,\n fav: false,\n date: 'Feb 20',\n },\n {\n id: 18,\n name: \"me, Susanna (11)\",\n description: \" Train/Bus – Yes ok, great! I'm not stuck in Stockholm anymore, we're making progress. \",\n read: true,\n fav: false,\n date: 'Feb 19',\n },\n]\n\nconst starredmails = [\n {\n id: 1,\n name: \"Charukaw, me (7)\",\n description: \" Hey man – Nah man sorry i don't. Should i get it? \",\n read: true,\n fav: false,\n date: 'Feb 23',\n },\n {\n id: 2,\n name: \"me, Peter (5)\",\n description: \" Support Home again! – That's just perfect! See you tomorrow. \",\n read: false,\n fav: false,\n date: 'Feb 21',\n },\n {\n id: 3,\n name: \"Stack Exchange\",\n description: \" 1 new items in your Stackexchange inbox – The following items were added to your Stack Exchange global inbox since you last checked it. \",\n read: true,\n fav: false,\n date: 'Feb 21',\n },\n {\n id: 4,\n name: \"Google Drive Team\",\n description: \" You can now use your storage in Google Drive – Hey Nicklas Sandell! Thank you for purchasing extra storage space in Google Drive. \",\n read: true,\n fav: false,\n date: 'Feb 20',\n },\n {\n id: 5,\n name: \"me, Susanna (11)\",\n description: \" Train/Bus – Yes ok, great! I'm not stuck in Stockholm anymore, we're making progress. \",\n read: true,\n fav: false,\n date: 'Feb 19',\n },\n]\n\nconst importantmails = [\n {\n id: 1,\n name: \"Revibe\",\n description: \" Friends Weekend on Revibe – Today's Friday and we thought maybe you want some music inspiration for the weekend. Here are some trending tracks and playlists we think you should give a listen! \",\n read: true,\n fav: false,\n date: 'Feb 27',\n },\n {\n id: 2,\n name: \"Erik, me (5)\",\n description: \" Regarding our meeting – That's great, see you on Thursday! \",\n read: true,\n fav: false,\n date: 'Feb 24',\n },\n {\n id: 3,\n name: \"KanbanFlow\",\n description: \" Social Task assigned: Clone ARP's website – You have been assigned a task by Alex@Work on the board Web. \",\n read: true,\n fav: false,\n date: 'Feb 24',\n },\n {\n id: 4,\n name: \"Tobias Berggren\",\n description: \" Let's go fishing! – Hey, You wanna join me and Fred at the lake tomorrow? It'll be awesome. \",\n read: true,\n fav: false,\n date: 'Feb 23',\n },\n {\n id: 5,\n name: \"Charukaw, me (7)\",\n description: \" Hey man – Nah man sorry i don't. Should i get it? \",\n read: true,\n fav: false,\n date: 'Feb 23',\n },\n {\n id: 6,\n name: \"me, Peter (5)\",\n description: \" Support Home again! – That's just perfect! See you tomorrow. \",\n read: false,\n fav: false,\n date: 'Feb 21',\n },\n]\n\nconst draftmails = [\n {\n id: 1,\n name: \"Medium\",\n description: \" Social This Week's Top Stories – Our top pick for you on Medium this week The Man Who Destroyed America’s Ego \",\n read: true,\n fav: false,\n date: 'Feb 28',\n },\n {\n id: 2,\n name: \"Death to Stock\",\n description: \" Montly High-Res Photos – To create this month's pack, we hosted a party with local musician Jared Mahone here in Columbus, Ohio. \",\n read: true,\n fav: false,\n date: 'Feb 28',\n },\n {\n id: 3,\n name: \"Randy, me (5)\",\n description: \" Family Last pic over my village – Yeah i'd like that! Do you remember the video you showed me of your train ride between Colombo and Kandy? The one with the mountain view? I would love to see that one again! \",\n read: false,\n fav: false,\n date: '5:01 am',\n },\n {\n id: 4,\n name: \"Andrew Zimmer\",\n description: \" Mochila Beta: Subscription Confirmed – You've been confirmed! Welcome to the ruling className of the inbox. For your records, here is a copy of the information you submitted to us... \",\n read: true,\n fav: false,\n date: 'Mar 8',\n },\n {\n id: 5,\n name: \"Infinity HR\",\n description: \" Sveriges Hetaste sommarjobb – Hej Nicklas Sandell! Vi vill bjuda in dig till 'First tour 2014', ett rekryteringsevent som erbjuder jobb på 16 semesterorter iSverige. \",\n read: true,\n fav: false,\n date: 'Mar 8',\n },\n {\n id: 6,\n name: \"Revibe\",\n description: \" Friends Weekend on Revibe – Today's Friday and we thought maybe you want some music inspiration for the weekend. Here are some trending tracks and playlists we think you should give a listen! \",\n read: true,\n fav: false,\n date: 'Feb 27',\n },\n {\n id: 7,\n name: \"Erik, me (5)\",\n description: \" Regarding our meeting – That's great, see you on Thursday! \",\n read: true,\n fav: false,\n date: 'Feb 24',\n },\n]\n\nconst sentmails = [\n {\n id: 1,\n name: \"Infinity HR\",\n description: \" Sveriges Hetaste sommarjobb – Hej Nicklas Sandell! Vi vill bjuda in dig till 'First tour 2014', ett rekryteringsevent som erbjuder jobb på 16 semesterorter iSverige. \",\n read: true,\n fav: false,\n date: 'Mar 8',\n },\n {\n id: 2,\n name: \"Revibe\",\n description: \" Friends Weekend on Revibe – Today's Friday and we thought maybe you want some music inspiration for the weekend. Here are some trending tracks and playlists we think you should give a listen! \",\n read: true,\n fav: false,\n date: 'Feb 27',\n },\n {\n id: 3,\n name: \"Erik, me (5)\",\n description: \" Regarding our meeting – That's great, see you on Thursday! \",\n read: true,\n fav: false,\n date: 'Feb 24',\n },\n {\n id: 4,\n name: \"KanbanFlow\",\n description: \" Social Task assigned: Clone ARP's website – You have been assigned a task by Alex@Work on the board Web. \",\n read: true,\n fav: false,\n date: 'Feb 24',\n },\n {\n id: 5,\n name: \"Tobias Berggren\",\n description: \" Let's go fishing! – Hey, You wanna join me and Fred at the lake tomorrow? It'll be awesome. \",\n read: true,\n fav: false,\n date: 'Feb 23',\n },\n {\n id: 6,\n name: \"Charukaw, me (7)\",\n description: \" Hey man – Nah man sorry i don't. Should i get it? \",\n read: true,\n fav: false,\n date: 'Feb 23',\n },\n {\n id: 7,\n name: \"me, Peter (5)\",\n description: \" Support Home again! – That's just perfect! See you tomorrow. \",\n read: false,\n fav: false,\n date: 'Feb 21',\n },\n {\n id: 8,\n name: \"Stack Exchange\",\n description: \" 1 new items in your Stackexchange inbox – The following items were added to your Stack Exchange global inbox since you last checked it. \",\n read: true,\n fav: false,\n date: 'Feb 21',\n },\n]\n\nconst trashmails = [\n {\n id: 1,\n name: \"KanbanFlow\",\n description: \" Social Task assigned: Clone ARP's website – You have been assigned a task by Alex@Work on the board Web. \",\n read: true,\n fav: false,\n date: 'Feb 24',\n },\n {\n id: 2,\n name: \"Tobias Berggren\",\n description: \" Let's go fishing! – Hey, You wanna join me and Fred at the lake tomorrow? It'll be awesome. \",\n read: true,\n fav: false,\n date: 'Feb 23',\n },\n {\n id: 3,\n name: \"Charukaw, me (7)\",\n description: \" Hey man – Nah man sorry i don't. Should i get it? \",\n read: true,\n fav: false,\n date: 'Feb 23',\n },\n {\n id: 4,\n name: \"me, Peter (5)\",\n description: \" Support Home again! – That's just perfect! See you tomorrow. \",\n read: false,\n fav: false,\n date: 'Feb 21',\n },\n]\n\nexport { inboxmails, starredmails, importantmails, draftmails, sentmails, trashmails };","/*** \n* Events data\n* \n*/\nconst events = [\n {\n id: 1,\n title: \"Hey!\",\n start: new Date().setDate(new Date().getDate() + 1),\n className: \"bg-warning text-white\",\n },\n {\n id: 2,\n title: \"See John Deo\",\n start: new Date(),\n end: new Date(),\n className: \"bg-success text-white\",\n },\n {\n id: 3,\n title: \"Meet John Deo\",\n start: new Date().setDate(new Date().getDate() + 8),\n className: \"bg-info text-white\",\n },\n {\n id: 4,\n title: \"Buy a Theme\",\n start: new Date().setDate(new Date().getDate() + 7),\n className: \"bg-primary text-white\",\n },\n]\n\n/**\n * Calendar categories data\n */\nconst calenderDefaultCategories = [\n {\n id: 1,\n title: \"New Theme Release\",\n type: \"bg-success\",\n },\n {\n id: 2,\n title: \"My Event\",\n type: \"bg-info\",\n },\n {\n id: 3,\n title: \"Meet Manager\",\n type: \"bg-warning\",\n },\n {\n id: 4,\n title: \"Report Error\",\n type: \"bg-danger\",\n },\n]\n\nexport { calenderDefaultCategories, events }\n","const users = [\n {\n id: 1,\n name: \"David McHenry\",\n designation: \"UI/UX Designer\",\n color: \"primary\",\n email: \"david@skote.com\",\n projects: \"125\",\n tags: [\"Photoshop\", \"illustrator\"],\n },\n {\n id: 2,\n img: \"avatar2\",\n name: \"Frank Kirk\",\n designation: \"Frontend Developer\",\n email: \"frank@skote.com\",\n projects: \"132\",\n tags: [\"Html\", \"Css\", \"Php\"],\n },\n {\n id: 3,\n img: \"avatar3\",\n name: \"Rafael Morales\",\n designation: \"Backend Developer\",\n email: \"Rafael@skote.com\",\n projects: \"1112\",\n tags: [\"Php\", \"Java\", \"Python\", \"Html\"],\n },\n {\n id: 4,\n name: \"Mark Ellison\",\n designation: \"Full Stack Developer\",\n color: \"success\",\n email: \"mark@skote.com\",\n projects: \"121\",\n tags: [\"Ruby\", \"Php\", \"UI/UX Designer\"],\n },\n {\n id: 5,\n img: \"avatar4\",\n name: \"Minnie Walter\",\n designation: \"Frontend Developer\",\n email: \"minnie@skote.com\",\n projects: \"145\",\n tags: [\"Html\", \"Css\", \"Java\"],\n },\n {\n id: 6,\n img: \"avatar5\",\n name: \"Shirley Smith\",\n designation: \"UI/UX Designer\",\n email: \"shirley@skote.com\",\n projects: \"136\",\n tags: [\"Photoshop\", \"UI/UX Designer\"],\n },\n {\n id: 7,\n name: \"John Santiago\",\n designation: \"Full Stack Developer\",\n color: \"info\",\n email: \"john@skote.com\",\n projects: \"125\",\n tags: [\"Ruby\", \"Php\", \"Java\"],\n },\n {\n id: 8,\n img: \"avatar7\",\n name: \"Colin Melton\",\n designation: \"Backend Developer\",\n color: \"\",\n email: \"colin@skote.com\",\n projects: \"136\",\n tags: [\"Php\", \"Java\", \"Python\"],\n },\n {\n id: 9,\n name: \"David McHenry\",\n designation: \"UI/UX Designer\",\n color: \"primary\",\n email: \"david@skote.com\",\n projects: \"125\",\n tags: [\"Photoshop\", \"illustrator\"],\n },\n {\n id: 10,\n img: \"avatar2\",\n name: \"Frank Kirk\",\n designation: \"Frontend Developer\",\n email: \"frank@skote.com\",\n projects: \"132\",\n tags: [\"Html\", \"Css\", \"Php\"],\n },\n {\n id: 11,\n img: \"avatar3\",\n name: \"Rafael Morales\",\n designation: \"Backend Developer\",\n email: \"Rafael@skote.com\",\n projects: \"1112\",\n tags: [\"Php\", \"Java\", \"Python\", \"Html\"],\n },\n {\n id: 12,\n name: \"Mark Ellison\",\n designation: \"Full Stack Developer\",\n color: \"success\",\n email: \"mark@skote.com\",\n projects: \"121\",\n tags: [\"Ruby\", \"Php\", \"UI/UX Designer\"],\n },\n {\n id: 13,\n img: \"avatar4\",\n name: \"Minnie Walter\",\n designation: \"Frontend Developer\",\n email: \"minnie@skote.com\",\n projects: \"145\",\n tags: [\"Html\", \"Css\", \"Java\"],\n },\n];\n\nconst userProfile = {\n id: 1,\n name: \"Cynthia Price\",\n designation: \"UI/UX Designer\",\n img: \"avatar1\",\n projectCount: 125,\n revenue: 1245,\n personalDetail:\n \"Hi I'm Cynthia Price,has been the industry's standard dummy text To an English person, it will seem like simplified English, as a skeptical Cambridge.\",\n phone: \"(123) 123 1234\",\n email: \"cynthiaskote@gmail.com\",\n location: \"California, United States\",\n experiences: [\n {\n id: 1,\n iconClass: \"bx-server\",\n link: \"#\",\n designation: \"Back end Developer\",\n timeDuration: \"2016 - 19\",\n },\n {\n id: 2,\n iconClass: \"bx-code\",\n link: \"#\",\n designation: \"Front end Developer\",\n timeDuration: \"2013 - 16\",\n },\n {\n id: 3,\n iconClass: \"bx-edit\",\n link: \"#\",\n designation: \"UI /UX Designer\",\n timeDuration: \"2011 - 13\",\n },\n ],\n projects: [\n {\n id: 1,\n name: \"Lab Hazir admin UI\",\n startDate: \"2 Sep, 2019\",\n deadline: \"20 Oct, 2019\",\n budget: \"$506\",\n },\n {\n id: 2,\n name: \"Lab Hazir admin Logo\",\n startDate: \"1 Sep, 2019\",\n deadline: \"2 Sep, 2019\",\n budget: \"$94\",\n },\n {\n id: 3,\n name: \"Redesign - Landing page\",\n startDate: \"21 Sep, 2019\",\n deadline: \"29 Sep, 2019\",\n budget: \"$156\",\n },\n {\n id: 4,\n name: \"App Landing UI\",\n startDate: \"29 Sep, 2019\",\n deadline: \"04 Oct, 2019\",\n budget: \"$122\",\n },\n {\n id: 5,\n name: \"Blog Template\",\n startDate: \"05 Oct, 2019\",\n deadline: \"16 Oct, 2019\",\n budget: \"$164\",\n },\n {\n id: 6,\n name: \"Redesign - Multipurpose Landing\",\n startDate: \"17 Oct, 2019\",\n deadline: \"05 Nov, 2019\",\n budget: \"$192\",\n },\n {\n id: 7,\n name: \"Logo Branding\",\n startDate: \"04 Nov, 2019\",\n deadline: \"05 Nov, 2019\",\n budget: \"$94\",\n },\n ],\n};\n\nexport { users, userProfile };\n","const yearData = [\n {\n name: \"Series A\",\n data: [44, 55, 41, 67, 22, 43, 36, 52, 24, 18, 36, 48]\n },\n {\n name: \"Series B\",\n data: [13, 23, 20, 8, 13, 27, 18, 22, 10, 16, 24, 22]\n },\n {\n name: \"Series C\",\n data: [11, 17, 15, 15, 21, 14, 11, 18, 17, 12, 20, 18]\n },\n];\n\nconst monthData = [\n {\n name: \"Series A\",\n data: [34, 55, 21, 77, 32, 63, 86, 42, 34, 18, 16, 41],\n },\n {\n name: \"Series B\",\n data: [10, 63, 40, 80, 52, 41, 11, 32, 30, 86, 44, 33],\n },\n {\n name: \"Series C\",\n data: [11, 17, 15, 85, 21, 14, 80, 58, 17, 12, 20, 18],\n },\n];\n\nconst weekData = [\n {\n name: \"Series A\",\n data: [14, 52, 11, 57, 22, 33, 31, 22, 64, 14, 32, 68],\n },\n {\n name: \"Series B\",\n data: [13, 23, 20, 8, 13, 27, 18, 22, 10, 16, 24, 22],\n },\n {\n name: \"Series C\",\n data: [11, 17, 15, 15, 34, 55, 21, 18, 17, 12, 20, 18],\n },\n];\n\nexport { yearData, monthData, weekData }","const janTopSellingData = [\n {\n name: \"Product A\",\n desc: \"Neque quis est\",\n value: 37\n },\n {\n name: \"Product B\",\n desc: \"Quis autem iure\",\n value: 72\n },\n {\n name: \"Product C\",\n desc: \"Sed aliquam mauris.\",\n value: 54\n },\n];\n\nconst decTopSellingData = [\n {\n name: \"Product D\",\n desc: \"Neque quis est\",\n value: 18\n },\n {\n name: \"Product E\",\n desc: \"Quis autem iure\",\n value: 51\n },\n {\n name: \"Product F\",\n desc: \"Sed aliquam mauris.\",\n value: 48\n },\n];\n\nconst novTopSellingData = [\n {\n name: \"Product G\",\n desc: \"Neque quis est\",\n value: 27\n },\n {\n name: \"Product H\",\n desc: \"Quis autem iure\",\n value: 75\n },\n {\n name: \"Product I\",\n desc: \"Sed aliquam mauris.\",\n value: 39\n },\n];\n\nconst octTopSellingData = [\n {\n name: \"Product J\",\n desc: \"Neque quis est\",\n value: 56\n },\n {\n name: \"Product K\",\n desc: \"Quis autem iure\",\n value: 41\n },\n {\n name: \"Product L\",\n desc: \"Sed aliquam mauris.\",\n value: 20\n },\n];\n\nconst janEarningData = [\n 31, 40, 36, 51, 49, 72, 69, 56, 68, 82, 68, 76\n];\n\nconst decEarningData = [\n 42, 19, 32, 51, 49, 44, 14, 56, 68, 82, 68, 76\n];\n\nconst novEarningData = [\n 31, 40, 36, 51, 49, 72, 69, 12, 35, 42, 18, 76\n];\n\nconst octEarningData = [\n 31, 40, 49, 44, 14, 56, 69, 31, 40, 36, 51\n];\n\nconst chatData = [\n {\n id: 1,\n name: \"Steven Franklin\",\n msg: \"Hello!\",\n time: \"10.00\",\n isSender: false\n },\n {\n id: 2,\n name: \"Admin\",\n msg: \"Hi, How are you? What about our next meeting?\",\n time: \"10.02\",\n isSender: true\n },\n {\n id: 3,\n name: \"Steven Franklin\",\n msg: \"Yeah everything is fine\",\n time: \"10.06\",\n isSender: false\n },\n {\n id: 4,\n name: \"Steven Franklin\",\n msg: \"& Next meeting tomorrow 10.00AM\",\n time: \"10.06\",\n isSender: false\n },\n {\n id: 5,\n name: \"Admin\",\n msg: \"Wow that's great\",\n time: \"10.07\",\n isSender: true\n }\n];\n\nexport {\n janTopSellingData,\n decTopSellingData,\n novTopSellingData,\n octTopSellingData,\n janEarningData,\n decEarningData,\n novEarningData,\n octEarningData,\n chatData\n};","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport axios from \"axios\";\nimport { useParams } from 'react-router-dom'\nimport { withRouter, Link } from \"react-router-dom\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n// import BootstrapSwitchButton from 'bootstrap-switch-button-react'\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n // getUnits,\n getTests,\n getOfferedTests,\n getLabProfile,\n addNewOfferedTest,\n addNewOfferedMainTest,\n updateOfferedTest,\n deleteOfferedTest,\n} from \"store/offered-tests/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass OfferedTestsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n offeredTests: [],\n tests: [],\n labProfiles: [],\n // units: [],\n offeredTest: \"\",\n type: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n offeredTestListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, offeredTest) => <>{offeredTest.id},\n },\n {\n dataField: \"test_type\",\n text: \"Type\",\n sort: true,\n },\n {\n dataField: \"test_name\",\n text: \"Test\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.test_type != \"Test\" && (\n
\n this.openPatientModal(e, offeredTest)}\n // onMouseEnter={e => this.openPatientModal(e, offeredTest)}\n // onPointerLeave={this.handleMouseExit()}\n >\n \n {offeredTest.test_name}\n \n \n
\n )}\n {offeredTest.test_type == \"Test\" && (\n
\n \n {offeredTest.test_name}\n \n
\n )}\n {/* this.openPatientModal(e, offeredTest)}\n >\n {offeredTest.test_name}\n */}\n
\n \n ), \n },\n // {\n // dataField: \"test_details\",\n // text: \"Details\",\n // sort: true,\n // },\n {\n dataField: \"price\",\n text: \"Price\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n {(\n {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n )}\n \n ),\n\n },\n {\n dataField: \"test_categories\",\n text: \"Test Category\",\n sort: true,\n },\n {\n dataField: \"shared_percentage\",\n text: \"Referrel Fee\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n {(\n {(offeredTest.shared_percentage*100).toFixed()}%\n )}\n \n ),\n },\n {\n dataField: \"duration_type\",\n text: \"Duration\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n {offeredTest.duration_required}{\"\"}\n \n {offeredTest.duration_type}{\" \"}\n \n\n \n ),\n },\n\n {\n dataField: \"sample_type\",\n text: \"Sample Type\",\n sort: true,\n },\n {\n dataField: \"is_eqa_participation\",\n text: \"EQA\",\n sort: true,\n },\n \n {\n dataField: \"is_home_sampling_available\",\n text: \"Home sampling\",\n sort: true,\n },\n {\n dataField: \"is_active\",\n text: \"Active\",\n sort: true,\n },\n {\n dataField: \"is_test_performed\",\n text: \"Test Performed\",\n sort: true,\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, offeredTest) => (\n
\n \n \n this.handleOfferedTestClick(offeredTest)}\n >\n \n {/* \n this.onClickDelete(offeredTest)}\n >\n */}\n
\n ),\n },\n ],\n };\n this.handleOfferedTestClick = this.handleOfferedTestClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleOfferedTestClicks = this.handleOfferedTestClicks.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n\n componentDidMount() {\n // const { units, onGetUnits } = this.props;\n // if (units && !units.length) {\n // onGetUnits();\n // }\n // this.setState({ units });\n\n const { tests, onGetTests } = this.props;\n onGetTests();\n this.setState({ tests });\n\n const { labProfiles, onGetLabProfile } = this.props;\n onGetLabProfile(this.state.user_id);\n this.setState({ \n labProfiles\n });\n console.log(\"state\",labProfiles)\n\n const { offeredTests, onGetOfferedTests, } = this.props;\n onGetOfferedTests(this.state.user_id);\n this.setState({ offeredTests });\n console.log(\"state\",offeredTests)\n\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // Select\n handleSelectGroup = selectedGroup => {\n this.setState({ offeredTest: selectedGroup.value });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n test_details: arg.test_details,\n });\n };\n // handleMouseExit = () => {\n // this.setState({\n // PatientModal: false,\n // isHovered: false,\n \n // });\n // };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n handleOfferedTestClicks = () => {\n this.setState({ offeredTest: \"\", isEdit: false, test_id: \"\" });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { offeredTests } = this.props;\n if (\n !isEmpty(offeredTests) &&\n size(prevProps.offeredTests) !== size(offeredTests)\n ) {\n this.setState({ offeredTests: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = offeredTests => {\n this.setState({ offeredTests: offeredTests });\n this.setState({ deleteModal: true });\n };\n\n handleDeleteOfferedTest = () => {\n const { onDeleteOfferedTest, onGetOfferedTests } = this.props;\n const { offeredTests } = this.state;\n if (offeredTests.id !== undefined) {\n onDeleteOfferedTest(offeredTests);\n setTimeout(() => {\n onGetOfferedTests(this.state.user_id);\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n // handleAPICall = () => {\n // const { onAddNewOfferedMainTest} = this.props;\n // const { offeredTests } = this.state;\n // // if (offeredTests.main_lab_tests == \"Yes\") \n // {\n // onAddNewOfferedMainTest(offeredTests, this.state.user_id);\n // console.log(\"sjdhjd\",offeredTests)\n\n // // setTimeout(() => {\n // // onAddNewOfferedMainTest(this.props.match.params);\n // // }, 1000);\n // }\n // };\n handleAPICall = () => {\n // const { id } = useParams();\n // console.log(\"id is\",id);\n this.setState({\n offeredTests: {\n main_lab_tests: \"Yes\",\n },\n });\n\n // API call to get the checkout items\n const { onAddNewOfferedMainTest, onGetOfferedTests } = this.props;\n setTimeout(() => {\n console.log(\n onAddNewOfferedMainTest(this.state.offeredTests, this.state.user_id)\n );\n },);\n setTimeout(() => {\n onGetOfferedTests(this.state.user_id);\n }, 1000);\n };\n\n handleOfferedTestClick = arg => {\n const offeredTest = arg;\n\n this.setState({\n test_id: offeredTest.test_id,\n offeredTest: {\n id: offeredTest.id,\n test_name: offeredTest.test_name,\n // unit_name: offeredTest.unit_name,\n test_id: offeredTest.test_id,\n // unit_id: offeredTest.unit_id,\n duration_required: offeredTest.duration_required,\n duration_type: offeredTest.duration_type,\n sample_type: offeredTest.sample_type,\n price: offeredTest.price,\n is_eqa_participation: offeredTest.is_eqa_participation,\n is_home_sampling_available: offeredTest.is_home_sampling_available,\n is_test_performed: offeredTest.is_test_performed,\n is_active:offeredTest.is_active,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { offeredTests } = this.props;\n const { tests } = this.props;\n const {labProfiles} = this.props;\n // const { units } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const { onAddNewOfferedTest, onAddNewOfferedMainTest, onUpdateOfferedTest, onGetOfferedTests, onGetLabProfile } =\n this.props;\n const offeredTest = this.state.offeredTest;\n\n const pageOptions = {\n sizePerPage: 10000,\n totalSize: offeredTests.length, // replace later with size(offeredTests),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n const testList = [];\n for (let i = 0; i < tests.length; i++) {\n let flag = 0;\n\n // Check if test available in our database is already being offered by lab\n // If yes then don't push it in testList\n for (let j = 0; j < offeredTests.length; j++) {\n if (tests[i].id == offeredTests[j].test_id) {\n flag = 1;\n }\n }\n\n if (!flag) {\n testList.push({\n label: tests[i].name,\n value: tests[i].id,\n });\n }\n }\n\n return (\n \n this.setState({ deleteModal: false })}\n />\n
\n \n Offered Tests List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n
\n \n Note: If referral fee of any offered test is not entered by Labhazir, all such tests will not be online.\n \n \n
\n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n
\n
\n \n \n \n
\n {this.props.labProfiles.type == \"Main Lab\" && (\n \n {\" \"}\n \n Tests Sheet{\" \"}\n \n )}\n
\n \n\n {/* \n
\n {this.props.labProfiles.type == \"Main Lab\" && (\n \n \n Add New Test\n \n )}\n
\n */}\n \n
\n \n \n \n
\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n\n \n
\n
\n
\n
\n \n\n \n \n {!!isEdit\n ? \"Edit Offered Test\"\n : \"Add Offered Test\"}\n \n \n {\n if (isEdit) {\n const updateOfferedTest = {\n id: offeredTest.id,\n test_id: parseInt(\n values.test_id\n ),\n // unit_id: parseInt(\n // values.unit_id\n // ),\n duration_required:\n values.duration_required,\n duration_type:\n values.duration_type,\n sample_type: values.sample_type,\n price: values.price,\n is_eqa_participation:\n values.is_eqa_participation,\n is_home_sampling_available:\n values.is_home_sampling_available,\n is_test_performed:\n values.is_test_performed,\n is_active:\n values.is_active,\n };\n\n // update OfferedTest\n onUpdateOfferedTest(\n updateOfferedTest,\n this.state.user_id,\n );\n\n setTimeout(() => {\n onGetOfferedTests(\n this.state.user_id\n );\n }, 1000);\n } else {\n // if (!values.unit_id) {\n // values.unit_id = units[0].id;\n // }\n\n const newOfferedTest = {\n id:\n Math.floor(\n Math.random() * (30 - 20)\n ) + 20,\n test_id: this.state.test_id,\n // unit_id: values.unit_id,\n test_type: this.state.test_type,\n test_details: this.state.test_details,\n duration_required:\n values.duration_required,\n duration_type:\n values.duration_type,\n sample_type: values.sample_type,\n price: values.price,\n is_eqa_participation:\n values.is_eqa_participation,\n is_home_sampling_available:\n values.is_home_sampling_available,\n is_test_performed:\n values.is_test_performed,\n is_active:\n values.is_active,\n };\n\n // save new OfferedTest\n onAddNewOfferedTest(\n newOfferedTest,\n this.state.user_id\n );\n\n setTimeout(() => {\n onGetOfferedTests(\n this.state.user_id\n );\n }, 1000);\n }\n this.setState({\n selectedOfferedTest: null,\n });\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n {/* Make field readonly in case of edit form */}\n {offeredTest.test_id &&\n offeredTest.test_id ? (\n
\n \n \n \n {\n offeredTest.test_name\n }\n \n \n
\n ) : (\n
\n \n {/* */}\n \n this.setState({\n test_id:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.test_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.test_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={testList}\n placeholder=\"Select Test...\"\n />\n\n
\n Please select your test\n
\n
\n )}\n\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n {!!isEdit &&(\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
)}\n\n
\n \n \n \n
\n\n
\n \n \n \n \n \n \n \n
\n
\n \n \n \n \n \n
\n
\n \n \n \n \n \n \n \n
\n
\n \n \n \n \n \n \n
\n \n \n
\n \n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n
\n \n
\n {/* \n \n \n \n */}\n
\n )}\n \n )}\n \n
\n
\n \n \n \n {isEmpty(this.props.offeredTests)&&\n this.props.labProfiles.type == \"Collection Point\" &&\n // console.log(\"desh desh\",this.props.offeredTests)\n (\n \n \n \n
\n\n \n \n Do you want to add all tests of main lab as offered tests of this collection point?

Note: Once marked all the tests of main lab will be added to the offered tests of this collection point. However you can update the test details.

Such as reporting time, home sampling, is the test active. If main lab makes any change it will be updated in all collection points except the fields mentioned above.
\n \n
\n
\n
\n\n \n )}\n \n
\n \n \n
\n
\n
\n
\n );\n }\n}\n\nOfferedTestsList.propTypes = {\n match: PropTypes.object,\n tests: PropTypes.array,\n labProfiles: PropTypes.array,\n // units: PropTypes.array,\n offeredTests: PropTypes.array,\n className: PropTypes.any,\n onGetOfferedTests: PropTypes.func,\n onGetLabProfile: PropTypes.func,\n onGetTests: PropTypes.func,\n // onGetUnits: PropTypes.func,\n onAddNewOfferedTest: PropTypes.func,\n onAddNewOfferedMainTest: PropTypes.func,\n onDeleteOfferedTest: PropTypes.func,\n onUpdateOfferedTest: PropTypes.func,\n};\n\nconst mapStateToProps = ({ offeredTests }) => ({\n offeredTests: offeredTests.offeredTests,\n tests: offeredTests.tests,\n labProfiles: offeredTests.labProfiles,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetTests: () => dispatch(getTests()),\n // onGetUnits: () => dispatch(getUnits()),\n onGetOfferedTests: id => dispatch(getOfferedTests(id)),\n onGetLabProfile: id => dispatch(getLabProfile(id)),\n onAddNewOfferedTest: (offeredTest, id) =>\n dispatch(addNewOfferedTest(offeredTest, id)),\n onAddNewOfferedMainTest: (offeredTest, id) =>\n dispatch(addNewOfferedMainTest(offeredTest, id)),\n onUpdateOfferedTest: offeredTest => dispatch(updateOfferedTest(offeredTest)),\n onDeleteOfferedTest: offeredTest => dispatch(deleteOfferedTest(offeredTest)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(OfferedTestsList));\n","import styled from 'styled-components';\n \nexport const Heading = styled.h1`\n text-align: center;\n color: green;\n`;\n \nexport const Content = styled.div`\n overflowY: scroll;\n height: 2500px;\n`;\n \nexport const Button = styled.div`\n position: fixed; \n width: 100%;\n left: 50%;\n bottom: 40px;\n height: 20px;\n font-size: 3rem;\n z-index: 1;\n cursor: pointer;\n color: blue;\n`","import React, { useState } from 'react';\nimport { FaArrowCircleUp } from 'react-icons/fa';\nimport { Button } from './Styles';\n\nconst ScrollButton = () => {\n const [visible, setVisible] = useState(false);\n\n const toggleVisible = () => {\n const scrolled = document.documentElement.scrollTop;\n setVisible(scrolled > 300);\n };\n\n const scrollToTop = () => {\n window.scrollTo({\n top: 0,\n behavior: 'smooth',\n });\n };\n\n window.addEventListener('scroll', toggleVisible);\n\n return (\n \n \n \n );\n};\n\nexport default ScrollButton;\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\n// import Select from \"react-select\";\nimport { Formik, Field, Form } from \"formik\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\nimport * as Yup from \"yup\";\nimport MetaTags from \"react-meta-tags\";\nimport { connect } from \"react-redux\";\nimport { Redirect, Link, withRouter } from \"react-router-dom\";\nimport { v4 as uuidv4 } from \"uuid\";\nimport { Button, Collapse } from \"reactstrap\";\nimport classname from \"classnames\";\nimport logo from \"../../../assets/images/logo.svg\";\nimport mtest from \"../../../assets/images/m.test.png\";\nimport mprofile from \"../../../assets/images/m.profile1.png\";\nimport mpackages from \"../../../assets/images/m.package.png\";\nimport mradiology from \"../../../assets/images/m.radiology.png\";\nimport mappointment from \"../../../assets/images/m.appointment.png\";\nimport discount from \"../../../assets/images/discount.png\";\nimport logoLight from \"../../../assets/images/logo-light.png\";\nimport logoLightSvg from \"../../../assets/images/logo-light.svg\";\nimport Slider from \"react-slick\";\nimport \"slick-carousel/slick/slick.css\";\nimport \"slick-carousel/slick/slick-theme.css\";\nimport Header from \"../../../components/HorizontalLayout/Header\";\nimport Select, { components } from 'react-select';\n\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\n// import \"../../../components/HorizontalLayout/horizontal-navbar.scss\";\nimport {\n Card,\n CardBody,\n CardTitle,\n Col,\n Container,\n Input,\n Label,\n Modal,\n ModalHeader,\n ModalBody,\n Pagination,\n PaginationItem,\n PaginationLink,\n Row,\n} from \"reactstrap\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\n//Import Star Ratings\nimport StarRatings from \"react-star-ratings\";\n\n// RangeSlider\nimport Nouislider from \"nouislider-react\";\nimport \"nouislider/distribute/nouislider.css\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\n//Import data\nimport { productsData } from \"common/data\";\n\n//Import actions\nimport { getNearbyLabs, getAdvLive, getRegionWiseAdvertisement, getPatientProfile } from \"store/labmarket/actions\";\nimport { getLabNamesList } from \"store/lab-names/actions\";\n\nimport { any } from \"prop-types\";\nimport \"./nearbylabs.scss\";\n\nimport { getTerritoriesList } from \"store/territories-list/actions\";\nimport { getCarts, deleteCart, emptyCart } from \"store/carts/actions\";\n\nimport { CITIES } from \"helpers/global_variables_helper\";\nimport offeredTestsList from \"pages/OfferedTests/offered-tests-list\";\nimport ScrollButton from \"components/Common/Scrollbutton\";\n\nfunction formatTime(timeString, labId) {\n if (!timeString || typeof timeString !== \"string\") {\n console.warn(`Invalid time for lab ID ${labId}:`, timeString);\n return \"Invalid Time\";\n }\n\n try {\n const [hours, minutes] = timeString.split(\":\");\n const date = new Date(2000, 0, 1, parseInt(hours), parseInt(minutes), 0);\n\n return date.toLocaleString(\"en-US\", {\n hour: \"numeric\",\n minute: \"numeric\",\n hour12: true,\n timeZone: \"Asia/Karachi\",\n });\n } catch (error) {\n console.error(`Error formatting time for lab ID ${labId}:`, timeString, error);\n return \"Invalid Time\";\n }\n}\n\nclass NearbyLabs extends Component {\n constructor(props) {\n super(props);\n this.state = {\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n patient_name: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).patient_name\n : \"\",\n position: \"right\",\n count: 0,\n ratingvalues: [],\n regionWiseAdvertisement: [],\n isMenuOpened: false,\n nearbyLabs: [],\n territoriesList: [],\n advLives: [],\n patientProfile: [],\n labNamesList: [],\n selectedLabName: \"\", // State to store the selected lab name\n filteredLabs: [], // State to store the filtered labs\n labNameInput: '', // Store the lab name input by the user\n filteredLabNames: [],\n name: \"\",\n advLive: \"\",\n activeTab: \"1\",\n isDropdownOpen: false,\n address: \"\",\n search_type: \"\",\n km: \"30\",\n LabType: \"\",\n city: \"\",\n latitude: \"\",\n longitude: \"\",\n location: \"\",\n currentLatitude: \"\",\n currentLongitude: \"\",\n locationAccessAllowed: \"\",\n selectedLab: null,\n autoplay: true,\n loading: true, // Add loading state property\n discountData: [],\n isFormVisible: false,\n isDivVisible: false,\n showModal: false,\n filters: {\n discount: [],\n price: { min: 0, max: 500 },\n },\n page: 1,\n totalPage: 5, //replace this with total pages of data\n };\n this.toggleTab = this.toggleTab.bind(this);\n this.onSelectRating = this.onSelectRating.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n this.toggleAddressModal = this.toggleAddressModal.bind(this);\n console.log(\"guest_id\", this.props.match.params.guest_id);\n console.log(\"uuid\", this.props.match.params.uuid);\n console.log(\"id\", this.props.match.params.id);\n console.log(\"fid\", this.props.match.params.filnalurl);\n console.log(\"type\", this.state.user_type);\n }\n openMenu = () => {\n this.setState({ isMenuOpened: !this.state.isMenuOpened });\n console.log(this.state.isMenuOpened);\n };\n\n componentDidMount() {\n console.log(\"guest_id\", this.props.match.params.guest_id);\n console.log(\"uuid\", this.props.match.params.uuid);\n console.log(\"id\", this.props.match.params.id);\n console.log(\"fid\", this.props.match.params.filnalurl);\n console.log(\"type\", this.state.user_type);\n const {\n territoriesList,\n onGetTerritoriesList,\n onGetAdvLive,\n onGetNearbyLabs,\n onGetRegionWiseAdvertisement,\n } = this.props;\n if (territoriesList && !territoriesList.length) {\n console.log(onGetTerritoriesList(this.state.user_id));\n }\n const { labNamesList, onGetLabNamesList } = this.props;\n if (labNamesList && !labNamesList.length) {\n console.log(onGetLabNamesList(this.state.user_id));\n }\n const { patientProfile, onGetPatientProfile } = this.props;\n onGetPatientProfile(this.state.user_id);\n this.setState({\n patientProfile,\n });\n console.log(\"state\", patientProfile);\n let latitude;\n let longitude;\n const url = window.location.href;\n const queryString = url.substring(url.indexOf(\"&\"));\n const params = new URLSearchParams(queryString);\n console.log(\"print params in app\", url, queryString, params);\n const latitudeFromUrl = params.get(\"lat\");\n const longitudeFromUrl = params.get(\"lon\");\n console.log(\"Latitude:\", latitudeFromUrl);\n console.log(\"Longitude:\", longitudeFromUrl);\n // Check if latitude and longitude values are present in URL parameters\n if (latitudeFromUrl && longitudeFromUrl) {\n // Parse latitude and longitude from URL\n const latitude = parseFloat(latitudeFromUrl);\n const longitude = parseFloat(longitudeFromUrl);\n console.log(\"print lat log in app\", latitude, longitude);\n\n // Construct the query string (finalUrl)\n const finalUrl = `&lat=${latitude}&lon=${longitude}`;\n\n // Batch state updates and use a callback to handle logic after state update\n this.setState(\n {\n finalUrl: finalUrl,\n currentLatitude: latitude,\n currentLongitude: longitude,\n search_type: \"Current Location\",\n LabType: \"Main\",\n },\n () => {\n // Logging the updated state values\n console.log(\"Final URL after state update:\", this.state.finalUrl, this.state.search_type);\n\n // Lab Advertisement\n const regionWiseAdvLocationDetails = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n };\n if (this.state.currentLatitude && this.state.currentLongitude) {\n onGetRegionWiseAdvertisement(regionWiseAdvLocationDetails);\n setTimeout(() => {\n this.setState({\n regionWiseAdvertisement: this.props.regionWiseAdvertisement,\n });\n }, 500);\n }\n\n // Labhazir Advertisement\n const advLiveLocationDetails = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n };\n if (this.state.currentLatitude && this.state.currentLongitude) {\n onGetAdvLive(advLiveLocationDetails);\n setTimeout(() => {\n this.setState({ advLives: this.props.advLives });\n }, 500);\n }\n\n // Nearby Labs\n const guest_id = uuidv4();\n const nearbyLabsLocationDetails = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n guest_id: guest_id,\n };\n\n console.log(\"guestid in nearby lab:\", guest_id, nearbyLabsLocationDetails.guest_id, this.state.search_type);\n\n this.setState({ guest_id });\n\n if (this.state.currentLatitude && this.state.currentLongitude) {\n onGetNearbyLabs(nearbyLabsLocationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n\n // Additional user-type specific logic for nearby labs\n if (this.state.user_id || this.state.user_type === \"b2bclient\") {\n const nearbyLabsLocationDetailsForB2B = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n locationAccessAllowed: this.state.locationAccessAllowed,\n LabType: this.state.LabType,\n };\n if (this.state.currentLatitude && this.state.currentLongitude) {\n onGetNearbyLabs(nearbyLabsLocationDetailsForB2B);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n }\n if ((!this.state.user_id || this.state.user_type === \"CSR\") &&\n !this.props.match.params.guest_id) {\n const guest_id = uuidv4();\n\n const nearbyLabsLocationDetailsForB2B = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n locationAccessAllowed: this.state.locationAccessAllowed,\n LabType: this.state.LabType,\n guest_id,\n\n };\n this.setState({ guest_id });\n\n if (this.state.currentLatitude && this.state.currentLongitude) {\n onGetNearbyLabs(nearbyLabsLocationDetailsForB2B);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n }\n if (!this.state.user_id && !this.props.match.params.guest_id) {\n const guest_id = uuidv4();\n\n const nearbyLabsLocationDetailsForB2B = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n locationAccessAllowed: this.state.locationAccessAllowed,\n LabType: this.state.LabType,\n guest_id,\n\n };\n this.setState({ guest_id });\n\n if (this.state.currentLatitude && this.state.currentLongitude) {\n onGetNearbyLabs(nearbyLabsLocationDetailsForB2B);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n }\n if (this.state.user_id) {\n\n const nearbyLabsLocationDetailsForB2B = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n locationAccessAllowed: this.state.locationAccessAllowed,\n LabType: this.state.LabType,\n\n };\n\n if (this.state.currentLatitude && this.state.currentLongitude) {\n onGetNearbyLabs(nearbyLabsLocationDetailsForB2B);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n }\n\n }\n );\n }\n\n else {\n if (navigator.geolocation) {\n const geolocationPermission = navigator.permissions.query({ name: 'geolocation' });\n\n geolocationPermission.then((result) => {\n if (!(result.state === 'granted' || result.state === 'denied')) {\n const guest_id = uuidv4();\n const nearbyLabsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n guest_id,\n };\n console.log(\"guestid in nearby lab:\", guest_id, nearbyLabsLocationDetails.guest_id)\n this.setState({ guest_id });\n // Call onGetNearbyLabs before prompting for geolocation\n onGetNearbyLabs(nearbyLabsLocationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n console.log('Geolocation permission status:', result.state);\n return;\n }\n });\n\n navigator.geolocation.getCurrentPosition((position) => {\n latitude = position.coords.latitude;\n longitude = position.coords.longitude;\n console.log(\"web\", latitude, longitude);\n\n this.setState({ currentLatitude: latitude });\n this.setState({ currentLongitude: longitude });\n this.setState({ locationAccessAllowed: true });\n this.setState({ search_type: \"Current Location\" });\n this.setState({ LabType: \"Main\" });\n // Labhazir Advertisement \n const advLiveLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n\n };\n\n if (latitude && longitude) {\n onGetAdvLive(advLiveLocationDetails);\n setTimeout(() => {\n this.setState({ advLives: this.props.advLives });\n }, 500);\n }\n\n // Lab Advertisement \n const regionWiseAdvLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n\n };\n if (latitude && longitude) {\n onGetRegionWiseAdvertisement(regionWiseAdvLocationDetails);\n setTimeout(() => {\n this.setState({ regionWiseAdvertisement: this.props.regionWiseAdvertisement },\n console.log(\"lab advertisement have or not\", this.props.regionWiseAdvertisement, this.state.regionWiseAdvertisement));\n }, 500);\n }\n\n // near by labs\n if ((!this.state.user_id || this.state.user_type === \"CSR\") && !this.props.match.params.guest_id) {\n const guest_id = uuidv4();\n const nearbyLabsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n guest_id,\n };\n console.log(\"guestid in nearby lab:\", guest_id, nearbyLabsLocationDetails.guest_id)\n this.setState({ guest_id });\n console.log(\"differ:\", this.state.guest_id)\n console.log(window.location.href);\n if (latitude && longitude) {\n onGetNearbyLabs(nearbyLabsLocationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n }\n // near by labs\n if (this.state.user_id || this.state.user_type === \"b2bclient\") {\n const nearbyLabsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n if (latitude && longitude) {\n onGetNearbyLabs(nearbyLabsLocationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n }\n if ((!this.state.user_id) && !this.props.match.params.guest_id) {\n const guest_id = uuidv4();\n\n const nearbyLabsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n guest_id,\n };\n console.log(\"guestid in nearby lab:\", guest_id, nearbyLabsLocationDetails.guest_id)\n this.setState({ guest_id });\n console.log(\"differ:\", this.state.guest_id)\n console.log(window.location.href);\n if (latitude && longitude) {\n onGetNearbyLabs(nearbyLabsLocationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n }\n if (this.state.user_id) {\n const nearbyLabsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n name: this.state.name,\n };\n if (latitude && longitude) {\n onGetNearbyLabs(nearbyLabsLocationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n }\n\n }, () => {\n this.setState({ latitude: null, longitude: null });\n if ((!this.state.user_id || this.state.user_type === \"CSR\") && !this.props.match.params.guest_id) {\n const guest_id = uuidv4();\n const nearbyLabsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n guest_id,\n };\n console.log(\"guestid in nearby lab:\", guest_id, nearbyLabsLocationDetails.guest_id)\n this.setState({ guest_id });\n console.log(\"differ:\", this.state.guest_id)\n console.log(window.location.href);\n if (latitude && longitude) {\n onGetNearbyLabs(nearbyLabsLocationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n }\n\n // near by labs\n if (this.state.user_id || this.state.user_type === \"b2bclient\") {\n const nearbyLabsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n name: this.state.name,\n };\n if (latitude && longitude) {\n onGetNearbyLabs(nearbyLabsLocationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n }\n\n if ((!this.state.user_id) && !this.props.match.params.guest_id) {\n const guest_id = uuidv4();\n\n const nearbyLabsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n guest_id,\n };\n console.log(\"guestid in nearby lab:\", guest_id, nearbyLabsLocationDetails.guest_id)\n this.setState({ guest_id });\n console.log(\"differ:\", this.state.guest_id)\n console.log(window.location.href);\n onGetNearbyLabs(nearbyLabsLocationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n if (this.state.user_id) {\n const nearbyLabsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n name: this.state.name,\n };\n onGetNearbyLabs(nearbyLabsLocationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n\n // // region Wise Advertisement \n // const regionWiseAdvLocationDetails = {\n // latitude,\n // longitude,\n // search_type: this.state.search_type,\n // address: this.state.address,\n // city: this.state.city,\n // };\n // onGetRegionWiseAdvertisement(regionWiseAdvLocationDetails);\n // setTimeout(() => {\n // this.setState({ regionWiseAdvertisement: this.props.regionWiseAdvertisement });\n // }, 500);\n }\n );\n } else {\n // Geolocation is not supported by the browser\n console.log(\"Geolocation is not supported by the browser.\");\n // Handle this scenario as needed, e.g., display an error message or provide alternative functionality.\n }\n\n\n }\n // Set loading state to false after 7 seconds (if you want to maintain the same timing)\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n if (this.state.search_type === \"Current Location\") {\n if (navigator.geolocation) {\n navigator.geolocation.getCurrentPosition(position => {\n const latitude = position.coords.latitude;\n const longitude = position.coords.longitude;\n const geocoder = new window.google.maps.Geocoder();\n\n const latlng = {\n lat: latitude,\n lng: longitude\n };\n\n geocoder.geocode({ location: latlng }, (results, status) => {\n if (status === \"OK\") {\n if (results[0]) {\n const formattedAddress = results[0].formatted_address;\n\n // Extract specific components from the formatted address\n const addressComponents = formattedAddress.split(', ');\n const [area, street, city, country] = addressComponents;\n\n // Optionally, you can set these components in the state if needed\n this.setState({\n area,\n street,\n city,\n country,\n });\n\n this.handleAddressChange(formattedAddress);\n } else {\n alert(\"No results found\");\n }\n } else {\n alert(\"Geocoder failed due to: \" + status);\n }\n });\n });\n } else {\n alert(\"Geolocation is not supported by your browser.\");\n }\n }\n }\n\n handleLocationUpdate(latitude, longitude) {\n const { onGetAdvLive, onGetNearbyLabs, onGetRegionWiseAdvertisement } = this.props;\n\n this.setState({ currentLatitude: latitude });\n this.setState({ currentLongitude: longitude });\n\n // region Wise Advertisement\n const advLiveLocationDetails = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n };\n\n if (this.state.currentLatitude && this.state.currentLongitude) {\n onGetAdvLive(advLiveLocationDetails);\n setTimeout(() => {\n this.setState({ advLives: this.props.advLives });\n }, 500);\n }\n\n // near by labs\n if ((!this.state.user_id || this.state.user_type === \"CSR\") && !this.props.match.params.guest_id) {\n const guest_id = uuidv4();\n const nearbyLabsLocationDetails = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n guest_id: guest_id,\n };\n console.log(\"guestid in nearby lab:\", guest_id, nearbyLabsLocationDetails.guest_id)\n this.setState({ guest_id: guest_id });\n console.log(\"differ:\", this.state.guest_id)\n console.log(window.location.href);\n // onGetNearbyLabs(nearbyLabsLocationDetails).then(() => {\n // this.setState({ nearbyLabs: this.props.nearbyLabs });\n // }).catch((error) => {\n // console.log(\"Error fetching nearby labs:\", error);\n // // Handle error if necessary\n // });\n if (this.state.currentLatitude && this.state.currentLongitude) {\n onGetNearbyLabs(nearbyLabsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n }\n\n // region Wise Advertisement\n const regionWiseAdvLocationDetails = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n };\n if (this.state.currentLatitude && this.state.currentLongitude) {\n onGetRegionWiseAdvertisement(regionWiseAdvLocationDetails);\n setTimeout(() => {\n this.setState({ regionWiseAdvertisement: this.props.regionWiseAdvertisement });\n }, 500);\n }\n }\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { nearbyLabs } = this.props;\n if (\n isEmpty(prevProps.nearbyLabs) &&\n !isEmpty(nearbyLabs) &&\n size(nearbyLabs) !== size(prevProps.nearbyLabs)\n ) {\n this.setState({ nearbyLabs });\n }\n }\n\n toggleTab(tab) {\n if (this.state.activeTab !== tab) {\n this.setState({\n activeTab: tab,\n });\n }\n }\n\n onSelectDiscount = e => {\n const { value, checked } = e.target;\n const {\n filters,\n filters: { discount },\n } = this.state;\n this.setState(\n {\n filters: {\n ...filters,\n discount: discount.find(item => item === value)\n ? discount.filter(item => item !== value)\n : [...discount, value],\n },\n },\n () => {\n this.onFilterProducts(value, checked);\n }\n );\n };\n\n onFilterProducts = (value, checked) => {\n const {\n filters: { discount },\n } = this.state;\n let filteredProducts = productsData;\n if (!!checked && parseInt(value) === 0) {\n filteredProducts = productsData.filter(\n nearbyLab => nearbyLab.offer < 100\n );\n } else if (discount.length > 0) {\n filteredProducts = productsData.filter(\n nearbyLab => nearbyLab.offer >= Math.min(...discount)\n );\n }\n this.setState({ nearbyLabs: filteredProducts });\n };\n\n onUpdate = (render, handle, value) => {\n const { carts } = this.props;\n if (!isEmpty(carts) && size(prevProps.carts) !== size(carts)) {\n this.setState({ carts: {} });\n }\n this.setState({\n nearbyLabs: productsData.filter(\n nearbyLab =>\n nearbyLab.newPrice >= value[0] && nearbyLab.newPrice <= value[1]\n ),\n });\n };\n\n /*\n on change rating checkbox method\n */\n onChangeRating = value => {\n this.setState({\n nearbyLabs: productsData.filter(nearbyLab => nearbyLab.rating >= value),\n });\n\n var modifiedRating = [...this.state.ratingvalues];\n modifiedRating.push(value);\n this.setState({ ratingvalues: modifiedRating });\n };\n\n onSelectRating = value => {\n this.setState({\n nearbyLabs: productsData.filter(nearbyLab => nearbyLab.rating === value),\n });\n };\n\n onUncheckMark = value => {\n var modifiedRating = [...this.state.ratingvalues];\n const modifiedData = (modifiedRating || []).filter(x => x !== value);\n /*\n find min values\n */\n var filteredProducts = productsData;\n if (modifiedData && modifiedData.length && value !== 1) {\n var minValue = Math.min(...modifiedData);\n if (minValue && minValue !== Infinity) {\n filteredProducts = productsData.filter(\n nearbyLab => nearbyLab.rating >= minValue\n );\n\n this.setState({ ratingvalues: modifiedData });\n }\n } else {\n filteredProducts = productsData;\n }\n this.setState({ nearbyLabs: filteredProducts });\n };\n\n handlePageClick = page => {\n this.setState({ page });\n };\n\n onChangeAddress = e => {\n // Apply that city's latitude and longitude as city bound so that we see addresses of that city only\n var cityBounds = new google.maps.LatLngBounds(\n new google.maps.LatLng(this.state.latitude, this.state.longitude)\n );\n\n const options = {\n bounds: cityBounds,\n types: [\"establishment\"],\n componentRestrictions: { country: \"pk\" },\n };\n\n var searchBox = new window.google.maps.places.SearchBox(e.target, options);\n\n searchBox.addListener(\"places_changed\", () => {\n const newAddress = e.target.value;\n this.handleAddressChange(newAddress);\n\n // // Find and adjust the z-index of the suggestion list\n // const suggestionList = document.querySelector(\".pac-container\");\n // if (suggestionList) {\n // suggestionList.style.zIndex = \"9999\"; // Adjust the z-index value as needed\n // }\n });\n };\n\n handleAddressChange = newAddress => {\n this.setState({ address: newAddress }, () => {\n // Update other state properties as needed\n // Call the function to update patient address or any other logic\n // this.onChangeAddress({ target: { value: newAddress } });\n console.log(\"address save or note\", this.state.address);\n\n // Extract specific components from the formatted address\n const addressComponents = newAddress.split(', ');\n\n // Assuming the order is area, street, city, country\n const [area, street, city, country] = addressComponents;\n\n // Optionally, you can set these components in the state if needed\n this.setState({\n area,\n street,\n city,\n country,\n });\n\n // Call the necessary APIs with the extracted components\n const { currentLatitude, currentLongitude, LabType, km, name, locationAccessAllowed } = this.state;\n const { onGetNearbyLabs, onGetAdvLive, onGetRegionWiseAdvertisement } = this.props;\n\n const locationDetails = {\n latitude: currentLatitude,\n longitude: currentLongitude,\n search_type: this.state.search_type,\n address: newAddress,\n city,\n LabType,\n km,\n name,\n locationAccessAllowed,\n };\n\n // Call the necessary APIs\n onGetNearbyLabs(locationDetails);\n onGetAdvLive(locationDetails);\n onGetRegionWiseAdvertisement(locationDetails);\n\n // Update state after API calls\n setTimeout(() => {\n this.setState({\n nearbyLabs: this.props.nearbyLabs,\n advLives: this.props.advLives,\n regionWiseAdvertisement: this.props.regionWiseAdvertisement,\n });\n }, 1000);\n });\n };\n\n\n // onChangeSearchType = async e => {\n // this.setState({ search_type: e.target.value });\n\n // // Call nearby labs API only if the search type changes to current location\n // if (e.target.value === \"Current Location\") {\n // this.setState({ city: \"\" });\n // this.setState({ address: \"\" });\n // const { onGetNearbyLabs, onGetAdvLive, onGetRegionWiseAdvertisement } = this.props;\n\n // // Check if the location access is allowed\n // try {\n // const locationPermission = await navigator.permissions.query({ name: 'geolocation' });\n // if (locationPermission.state === 'denied') {\n // // Location access is denied\n // alert('Location access is denied. For accurate results, please allow location access.');\n // return;\n // } else {\n // // Location access is allowed, refresh the page\n // window.location.reload();\n // }\n // } catch (error) {\n // console.error('Error checking location permission:', error);\n // }\n // // Location access is allowed, proceed with API calls\n // var locationDetails = {\n // latitude: this.state.currentLatitude,\n // longitude: this.state.currentLongitude,\n // search_type: e.target.value,\n // address: this.state.address,\n // city: this.state.city,\n // LabType: this.state.LabType,\n // km: this.state.km,\n // name: this.state.name,\n // locationAccessAllowed: this.state.locationAccessAllowed,\n // };\n\n // // region wise advertisement\n // onGetNearbyLabs(locationDetails);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n\n // setTimeout(() => {\n // this.setState({\n // nearbyLabs: this.props.nearbyLabs,\n // advLives: this.props.advLives,\n // regionWiseAdvertisement: this.props.regionWiseAdvertisement,\n // });\n // }, 1000);\n // }\n // };\n\n\n onChangeSearchType = async e => {\n this.setState({ search_type: e.target.value });\n\n if (e.target.value === \"Current Location\") {\n this.setState({ city: \"\" });\n this.setState({ address: \"\" });\n const { onGetNearbyLabs, onGetAdvLive, onGetRegionWiseAdvertisement } = this.props;\n\n // Check if the geolocation API is supported\n if (\"geolocation\" in navigator) {\n try {\n const locationPermission = await navigator.permissions.query({ name: 'geolocation' });\n\n if (locationPermission.state === 'denied' && !this.state.locationAccessAllowed) {\n // Location access is denied\n // Show the PatientModal only when the user explicitly clicks on \"Current Location\"\n this.setState({ PatientModal: true });\n } else {\n // Location access is prompted, ask the user for permission\n const position = await new Promise((resolve, reject) => {\n navigator.geolocation.getCurrentPosition(resolve, reject);\n });\n\n var data = {\n latitude: position.coords.latitude,\n longitude: position.coords.longitude,\n search_type: e.target.value,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n };\n\n onGetNearbyLabs(locationDetails);\n onGetAdvLive(locationDetails);\n onGetRegionWiseAdvertisement(locationDetails);\n setTimeout(() => {\n this.setState({\n nearbyLabs: this.props.nearbyLabs,\n advLives: this.props.advLives,\n regionWiseAdvertisement: this.props.regionWiseAdvertisement,\n });\n }, 1000);\n }\n } catch (error) {\n console.error('Error checking location permission:', error);\n }\n } else {\n // Geolocation API is not supported, show an error message\n this.setState({ PatientModal: true }); // Show the modal for error\n }\n }\n };\n\n onChangeKm = e => {\n this.setState({ km: e.target.value });\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyLabs } = this.props;\n const { onGetAdvLive } = this.props;\n const { onGetRegionWiseAdvertisement } = this.props;\n\n var locationDetails = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n km: e.target.value,\n LabType: this.state.LabType,\n address: this.state.address,\n city: this.state.city,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n };\n // region wise advertisement\n onGetNearbyLabs(locationDetails);\n onGetAdvLive(locationDetails);\n onGetRegionWiseAdvertisement(locationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 1000);\n };\n\n clearSearch = () => {\n this.setState({\n selectedLab: null,\n name: null, // Clear the 'name' property as well if needed\n });\n };\n\n onChangeLabName = (selectedOption) => {\n // Check if selectedOption is not null before accessing its properties\n if (selectedOption && selectedOption.value) {\n this.setState({ name: selectedOption.value });\n } else {\n // Handle the case where selectedOption is null or doesn't have a value property\n this.setState({ name: '' }); // Set the name to an appropriate default value or leave it empty\n }\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyLabs } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var locationDetails = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n name: selectedOption && selectedOption.value ? selectedOption.value : '', // Check if selectedOption is not null and has a value property\n LabType: this.state.LabType,\n km: this.state.km,\n address: this.state.address,\n city: this.state.city,\n locationAccessAllowed: this.state.locationAccessAllowed,\n };\n // region wise advertisement\n onGetNearbyLabs(locationDetails);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 1000);\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n toggleAddressModal = () => {\n this.setState(prevState => ({\n AddressModal: !prevState.AddressModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n onChangeType = e => {\n this.setState({ LabType: e.target.value });\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyLabs } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var locationDetails = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n LabType: e.target.value,\n km: this.state.km,\n address: this.state.address,\n city: this.state.city,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n };\n // region wise advertisement\n onGetNearbyLabs(locationDetails);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 1000);\n };\n\n onChangeCity = selectedGroup => {\n this.setState({ city: selectedGroup.value });\n\n const { onGetNearbyLabs } = this.props;\n const { onGetAdvLive } = this.props;\n const { onGetRegionWiseAdvertisement } = this.props;\n\n var locationDetails = {\n latitude: \"\",\n longitude: \"\",\n search_type: this.state.search_type,\n address: \"\",\n city: selectedGroup.value,\n LabType: this.state.LabType,\n km: this.state.km,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n };\n\n onGetNearbyLabs(locationDetails);\n onGetAdvLive(locationDetails);\n onGetRegionWiseAdvertisement(locationDetails);\n\n setTimeout(() => {\n this.setState({\n nearbyLabs: this.props.nearbyLabs,\n advLives: this.props.advLives,\n regionWiseAdvertisement: this.props.regionWiseAdvertisement,\n });\n }, 1000);\n // ------------- Call API on city name END -------------\n\n var latitude = \"\";\n var longitude = \"\";\n\n setTimeout(() => {\n var geocoder = new google.maps.Geocoder();\n\n // Concatenate city selected with Pakistan, so that it can be set as proper address\n var address = selectedGroup.value + \", Pakistan\";\n\n // Using geocoder search address and get its latitude and longitude\n geocoder.geocode({ address: address }, function (results, status) {\n if (status == google.maps.GeocoderStatus.OK) {\n latitude = results[0].geometry.location.lat();\n longitude = results[0].geometry.location.lng();\n }\n });\n\n // Set the values of simple variables to the state variables of latitude and longitude\n // so that it can be used outside of this function\n setTimeout(() => {\n this.setState({ latitude: latitude });\n this.setState({ longitude: longitude });\n }, 1000);\n }, 1000);\n };\n\n resetVideo = event => {\n event.target.currentTime = 0;\n };\n\n toggleDropdown = () => {\n this.setState(prevState => ({\n isDropdownOpen: !prevState.isDropdownOpen,\n }));\n };\n toggleFormVisibility = () => {\n this.setState((prevState) => ({\n isFormVisible: !prevState.isFormVisible,\n }));\n };\n toggleDivVisibility = () => {\n this.setState((prevState) => ({\n isDivVisible: !prevState.isDivVisible,\n }));\n this.setState({ showModal: true });\n\n };\n hasNextSection(currentSection) {\n // Implement logic to check if there is a next section based on the current section\n // Return true if there is a next section, otherwise return false\n // Example: You might have an array of sections and check if the current section is not the last one\n const sections = ['Section1', 'Section2', 'Section3', 'Section4', 'Section5'];\n const currentIndex = sections.indexOf(currentSection);\n return currentIndex < sections.length - 1;\n };\n handleCancelIconClick = () => {\n // Handle cancel icon click logic here\n // Clear the input field\n this.setState({ address: \"\" });\n };\n\n render() {\n const { search_type } = this.state;\n let borderColor = '2px solid blue'; // Default border color\n\n // Check the selected option and update border color accordingly\n if (search_type === 'Current Location') {\n borderColor = '2px solid red'; // Change to the desired color\n }\n if (search_type === 'Custom Address') {\n borderColor = '2px solid yellow'; // Change to the desired color\n }\n if (search_type === 'City') {\n borderColor = '2px solid green'; // Change to the desired color\n }\n const ClearIndicator = (props) => {\n return (\n \n X\n \n );\n };\n const { selectedLab } = this.state;\n const { showModal } = this.state;\n const { labNameInput, filteredLabNames } = this.state;\n const { isDropdownOpen } = this.state;\n const isSmallScreen = window.innerWidth < 490;\n const sliderStyles = {\n maxWidth: \"100%\",\n maxHeight: \"100%\", // Adjust the height as per your requirements\n objectFit: \"cover\",\n };\n const settings = {\n autoplay: true,\n dots: true, // Add slider dots\n infinite: true,\n speed: 500,\n slidesToShow: 1,\n slidesToScroll: 1,\n };\n\n const customDots = dots => (\n
    \n {dots.map((dot, index) => (\n \n {dot}\n \n ))}\n
\n );\n\n const { history } = this.props;\n const { patientProfile } = this.props;\n const {\n discountData,\n nearbyLabs,\n page,\n totalPage,\n regionWiseAdvertisement,\n } = this.state;\n const { onGetPatientProfile } = this.props;\n const cityList = [];\n for (let i = 0; i < this.props.territoriesList.length; i++) {\n cityList.push({\n label: this.props.territoriesList[i].city,\n value: this.props.territoriesList[i].city,\n });\n }\n const labNames = [];\n for (let i = 0; i < this.props.labNamesList.length; i++) {\n labNames.push({\n label: this.props.labNamesList[i].name,\n value: this.props.labNamesList[i].name,\n });\n }\n\n const openModal = () => {\n const modal = document.getElementById(\"modal\");\n modal.style.display = \"block\";\n };\n\n\n const closeModal = () => {\n this.setState({ PatientModal: false });\n this.setState({ AddressModal: false });\n\n };\n\n const { loading } = this.state;\n\n const closeiconStyle = {\n position: 'absolute',\n top: '50%',\n right: '10px', // Adjust this value to move the icon horizontally\n transform: 'translateY(-50%)',\n cursor: 'pointer',\n color: 'red', // Icon color\n fontSize: '16px'\n };\n\n\n return (\n\n \n
\n
\n \n {this.state.user_id && this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\"\n ? (\n \n
    \n
  • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Labs\n \n
  • \n\n
  • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n My Appointments\n\n \n
  • \n\n )}\n
\n \n ) : null}\n {!this.state.user_id\n ? (\n \n
    \n {this.state.filnalurl && this.state.guest_id ? (\n
  • \n \n Book a Test\n \n
  • \n ) : !this.state.filnalurl && this.state.guest_id ? (\n
  • \n \n Book a Test\n \n
  • \n ) : null}\n {this.state.filnalurl && this.state.guest_id ? (\n
  • \n \n Labs\n \n
  • \n ) : !this.state.filnalurl && this.state.guest_id ? (\n
  • \n \n Labs\n \n
  • \n ) : null}\n\n {this.state.filnalurl && this.state.guest_id ? (\n
  • \n \n Tests\n \n
  • \n ) : !this.state.filnalurl && this.state.guest_id ? (\n
  • \n \n Tests\n \n
  • \n ) : null}\n\n {this.state.filnalurl && this.state.guest_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : !this.state.filnalurl && this.state.guest_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : null}\n\n {this.state.filnalurl && this.state.guest_id ? (\n
  • \n \n Packages\n \n
  • \n ) : !this.state.filnalurl && this.state.guest_id ? (\n
  • \n \n Packages\n \n
  • \n ) : null}\n\n {this.state.filnalurl && this.state.guest_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : !this.state.filnalurl && this.state.guest_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : null}\n\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n My Appointments\n\n \n
  • \n\n )}\n
\n \n\n ) :\n this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\" ? (\n \n
    \n
  • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Labs\n {/* {this.props.t(\"Labs\")} */}\n \n
  • \n\n
  • \n {/* \n {this.props.t(\"Search by Tests\")}\n */}\n \n {/* {this.props.t(\"Tests\")} */}\n Tests\n \n
  • \n
  • \n \n {/* {this.props.t(\"Profiles\")} */}\n Profiles\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n My Appointments\n\n \n
  • \n\n\n\n\n )}\n
\n \n ) :\n this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type === \"b2bclient\" ? (\n \n
    \n
  • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Labs\n {/* {this.props.t(\"Labs\")} */}\n \n
  • \n\n
  • \n {/* \n {this.props.t(\"Search by Tests\")}\n */}\n \n {/* {this.props.t(\"Tests\")} */}\n Tests\n \n
  • \n
  • \n \n {/* {this.props.t(\"Profiles\")} */}\n Profiles\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n My Appointments\n\n \n
  • \n )}\n
\n \n ) : null}\n \n
\n
\n
\n
\n
\n
\n {!isSmallScreen ? (\n \n \n \"\"\n \n \n \"\"\n \n \n ) : null}\n
\n {/* // for mobile app */}\n {isSmallScreen ? (\n \n \n \n ) : (\n \n \n \n )}\n
\n\n
\n {!this.state.user_id ? (\n
\n \n \n {\" \"}\n {/* {!isEmpty(this.props.carts) &&\n \n this.props.carts.slice(-1).pop().cart_quantity+this.state.count\n } */}\n \n \n \n \n {\" \"}\n Login\n \n \n \n \n {\" \"}\n Sign up\n \n \n \n \n {\" \"}\n \n \n
\n ) : this.state.user_type == \"patient\" ? (\n
\n ) : (\n
\n {this.state.user_type == \"labowner\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"b2bclient\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"auditor\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"CSR\" && (\n
\n \n {\" \"}\n \n \n {\" \"}\n {!isEmpty(this.props.carts) &&\n \n this.props.carts.slice(-1).pop().cart_quantity +\n this.state.count\n \n\n }\n \n
\n )}\n\n {this.state.user_type == \"registration-admin\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"auditor-admin\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"csr-admin\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"hr-admin\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"marketer-admin\" && (\n \n {\" \"}\n \n )}\n
\n )}\n
\n
\n
\n \n \n

How to enable location access on your browser

\n
\n \n \n
\n \n \n

On your Chrome browser

\n

\n 1. To the left of the address bar, click the Padlock icon {\" \"}

\n then select “Site Settings.”\n

\n

\n 2. Under Permissions, find Location and change it to\n Allow.\n

\n \n
\n \n Got It!\n \n
\n
\n
\n
\n
\n \n {!isSmallScreen && isEmpty(this.props.advLives) && isEmpty(regionWiseAdvertisement) ? (\n
\n \n {/* */}\n {/*
Need Some Better?
\n

“Let's find the labs,”

*/}\n \n Filter Labs by:\n {/* {this.state.locationAccessAllowed === true ? (\n e.target.style.backgroundColor = \"#DDEEFA\"}\n onMouseOut={(e) => e.target.style.backgroundColor = \"transparent\"}\n >\n {this.state.address}\n \n ) : (this.state.locationAccessAllowed === false ? (\n this.setState({ PatientModal: true })}\n // className=\"text-danger\"\n style={{ cursor: \"pointer\", textDecoration: \"underline\", color: \"inherit\" }}\n onMouseOver={(e) => e.target.style.backgroundColor = \"#DDEEFA\"}\n onMouseOut={(e) => e.target.style.backgroundColor = \"transparent\"}\n >\n We're having trouble finding you. Check your connection and location access. \n \n See how to enable location access.\n \n \n ) : null\n )} */}\n \n {this.state.isDivVisible && (\n
\n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Enter Custom Address\"\n />\n
\n )}\n\n val === \"Custom Address\",\n then: Yup.string().required(\"Please enter your City\"),\n }),\n location: Yup.string().when(\"city\", {\n is: val => val !== \"\",\n then: Yup.string().required(\"Please enter your Location\"),\n }),\n })}\n >\n {({ errors, status, touched }) => (\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n {/* \n Search Types\n */}\n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : (\n \n
\n {/* \n Search Types\n */}\n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n \n
\n \n )}\n {this.state.search_type === 'City' && (\n \n
\n {/* \n By City \n */}\n ({\n ...provided,\n border: '2px solid green',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {this.state.search_type === 'Custom Address' && (\n \n
\n {/* \n Custom Address \n */}\n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Enter Address..\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {this.state.search_type === 'Custom Address' ? (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\"\n className=\"form-control\"\n placeholder=\"\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n ) : (this.state.search_type === 'Current Location' && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\"\n className=\"form-control\"\n placeholder=\"\"\n style={{\n border: '2px solid red',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )\n )}\n \n
\n {/* \n Search By Lab Name\n */}\n option.value === this.state.name)}\n onChange={this.onChangeLabName}\n options={labNames}\n placeholder=\"Lab Name...\"\n isSearchable={true}\n isClearable={true}\n components={{\n ClearIndicator,\n }}\n styles={{\n control: (provided, state) => ({\n ...provided,\n border: '2px solid blue',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n\n {this.state.locationAccessAllowed === true ? (\n \n
\n {/* \n Search By Labs Type\n */}\n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : \n (\n \n
\n {/* \n Search By Labs Type\n */}\n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n )\n }\n\n
\n )}\n \n\n
\n \n {!isEmpty(nearbyLabs) &&\n !this.state.user_id &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.state.guest_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}/${this.state.guest_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n
\n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n \n \n \n ))}\n\n {!isEmpty(nearbyLabs) &&\n this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type !== \"b2bclient\" &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n \n \n \n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n {/* {nearbyLab.email ? (\n
\n \n {\" \"}\n {nearbyLab.email}\n \n
) : null} */}\n {nearbyLab.phone ? (\n
\n \n {\" \"}\n {nearbyLab.phone}\n \n
) : null}\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n {!isEmpty(nearbyLabs) &&\n this.state.user_id &&\n this.state.user_type === \"CSR\" &&\n this.state.user_type !== \"b2bclient\" &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n \n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n {!isEmpty(nearbyLabs) &&\n this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type === \"b2bclient\" &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.uuid}/${this.props.match.params.guest_id}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n \n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n {isEmpty(nearbyLabs) && (\n loading ? (\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n
\n Sorry, No Labs Found In Your Specific Area.....\n
\n \n
\n )\n )}\n\n \n \n \n \n ) : null}\n \n {!isSmallScreen &&\n (!isEmpty(this.props.advLives) ||\n !isEmpty(regionWiseAdvertisement)) ? (\n
\n \n Nearby Labs | Lab Hazir - Dashboard\n \n \n {/* */}\n \n \n Filter Labs by: \n {/* {this.state.locationAccessAllowed === true ? (\n e.target.style.backgroundColor = \"#DDEEFA\"}\n onMouseOut={(e) => e.target.style.backgroundColor = \"transparent\"}\n >\n {this.state.address}\n \n ) : (this.state.locationAccessAllowed === false ? (\n this.setState({ PatientModal: true })}\n // className=\"text-danger\"\n style={{ cursor: \"pointer\", textDecoration: \"underline\", color: \"inherit\" }}\n onMouseOver={(e) => e.target.style.backgroundColor = \"#DDEEFA\"}\n onMouseOut={(e) => e.target.style.backgroundColor = \"transparent\"}\n >\n We're having trouble finding you. Check your connection and location access. \n \n See how to enable location access.\n \n \n ) : null\n )} */}\n \n {this.state.isDivVisible && (\n
\n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Enter Custom Address\"\n />\n
\n )}\n {/* */}\n val === \"Custom Address\",\n then: Yup.string().required(\"Please enter your City\"),\n }),\n location: Yup.string().when(\"city\", {\n is: val => val !== \"\",\n then: Yup.string().required(\"Please enter your Location\"),\n }),\n })}\n >\n {({ errors, status, touched }) => (\n
\n {/* Type field */}\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n {/* \n Search Types\n */}\n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : (\n \n
\n {/* \n Search Types\n */}\n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n \n
\n \n )}\n {this.state.search_type === 'City' && (\n \n
\n {/* \n By City \n */}\n ({\n ...provided,\n border: '2px solid green',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {this.state.search_type === 'Custom Address' && (\n \n
\n {/* \n Custom Address \n */}\n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Enter Address..\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {this.state.search_type === 'Custom Address' ? (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\"\n className=\"form-control\"\n placeholder=\"\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n ) : (this.state.search_type === 'Current Location' && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\"\n className=\"form-control\"\n placeholder=\"\"\n style={{\n border: '2px solid red',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )\n )\n }\n \n
\n {/* \n Search By Lab Name\n */}\n option.value === this.state.name)}\n onChange={this.onChangeLabName}\n options={labNames}\n placeholder=\"Lab Name...\"\n isSearchable={true}\n isClearable={true}\n components={{\n ClearIndicator,\n }}\n styles={{\n control: (provided, state) => ({\n ...provided,\n border: '2px solid blue',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n {/* \n Search By Labs Type\n */}\n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : (\n \n
\n {/* \n Search By Labs Type\n */}\n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) \n // (\n // \n //
\n // {/* \n // Search By Labs Type\n // */}\n // this.onChangeType(e)}\n // value={this.state.LabType}\n // className=\"form-select\"\n // style={{\n // border: '2px solid blue',\n // borderRadius: '5px',\n // // Add more style overrides as needed\n // }}\n // >\n // \n // \n // \n // \n //
\n // \n // )\n }\n
\n
\n )}\n \n {/*
*/}\n\n
\n\n \n {!isEmpty(nearbyLabs) &&\n !this.state.user_id &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.state.guest_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}/${this.state.guest_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n
\n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n \n \n \n ))}\n\n {!isEmpty(nearbyLabs) &&\n this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type !== \"b2bclient\" &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n \n \n \n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n\n {/*
\n \n {\" \"}\n {nearbyLab.email}\n \n
*/}\n\n {nearbyLab.phone ? (\n
\n \n {\" \"}\n {nearbyLab.phone}\n \n
) : null}\n\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n {!isEmpty(nearbyLabs) &&\n this.state.user_id &&\n this.state.user_type === \"CSR\" &&\n this.state.user_type !== \"b2bclient\" &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n \n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n {!isEmpty(nearbyLabs) &&\n this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type === \"b2bclient\" &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.uuid}/${this.props.match.params.guest_id}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n \n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n \n {isEmpty(nearbyLabs) && (\n loading ? (\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n
\n Sorry, No Labs Found In Your Specific Area.....\n
\n \n
\n )\n )}\n \n \n \n Advertisements\n {!isEmpty(this.props.advLives) && Array.isArray(this.props.advLives) && (\n this.props.advLives.map((advLive, key) => (\n \n \n
\n {advLive.poster ? (\n advLive.poster.match(/\\.(jpeg|jpg|gif|png)$/) ? (\n \n ) : (\n \n \n Your browser does not support the video tag.\n \n\n // \n )\n ) : (\n
No media found.
\n )}\n
\n \n \n ))\n )}\n {this.props.regionWiseAdvertisement.map((regionWiseAdvertisement, key) => (\n <>\n {regionWiseAdvertisement.nearby_adv_list.map(\n (nearby_adv_list, key) => (\n \n {!isEmpty(regionWiseAdvertisement) && (\n \n {/*
\n \n
*/}\n
\n \n
\n \n )}\n \n )\n )}\n \n ))}\n \n \n \n ) : isSmallScreen &&\n isEmpty(this.props.advLives) &&\n isEmpty(regionWiseAdvertisement) &&\n this.state.user_type === \"patient\" ? (\n
\n \n Nearby Labs | Lab Hazir - Dashboard\n \n \n \n \n

Categories

\n

\n Sehatmand Pakistan, Khushhaal Pakistan: Aapki Sehat, Hamari Zimmedari!\n

\n\n {/* Horizontal Scrollable Row */}\n
\n \n
\n
\n \n \"\"\n \n
\n

\n Tests\n

\n
\n \n\n \n
\n
\n \n \"\"\n \n
\n

\n Profiles\n

\n
\n \n\n \n
\n
\n \n \"\"\n \n
\n

\n Packages\n

\n
\n \n\n \n
\n
\n \n \"\"\n \n
\n

\n Radiology\n

\n
\n \n\n \n
\n
\n \n \"\"\n \n
\n

\n Discounts\n

\n
\n \n\n \n
\n
\n \n \"\"\n \n
\n

\n Appointments\n

\n
\n \n
\n
\n
\n\n\n \n val === \"Custom Address\",\n then: Yup.string().required(\"Please enter your City\"),\n }),\n location: Yup.string().when(\"city\", {\n is: val => val != \"\",\n then: Yup.string().required(\n \"Please enter your Location\"\n ),\n }),\n })}\n >\n {({ errors, status, touched }) => (\n
\n {/* Type field */}\n {/* Type field */}\n

Search Labs for more result in Pakistan!

\n \n\n \n
\n ({\n ...provided,\n border: '2px solid blue',\n borderRadius: '5px',\n }),\n }}\n isSearchable={true}\n isClearable={true}\n components={{\n ClearIndicator,\n }}\n />\n
\n \n \n {(this.state.search_type === \"Current Location\" || this.state.search_type === \"City\" || this.state.search_type === \"Custom Address\") ? (\n \n
\n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : null}\n\n
\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n {/* \n Search Types\n */}\n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : (\n \n
\n {/* \n Search Types\n */}\n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n \n
\n \n )}\n {/* \n
\n this.onChangeSearchType(e)}\n value={this.state.search_type}\n className=\"form-select\"\n >\n \n \n \n \n \n
\n */}\n \n \n {this.state.search_type === \"Current Location\" && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n placeholder=\"Search By Km...\"\n style={{\n border: '2px solid red',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n placeholder=\"Search By Km...\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )}\n\n \n {/* City field */}\n {this.state.search_type === \"City\" && (\n \n
\n ({\n ...provided,\n border: '2px solid green',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {/* Custom Address field */}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Search Location...\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n
\n
\n )}\n \n
\n {!isEmpty(nearbyLabs) &&\n !this.state.user_id &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.state.guest_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}/${this.state.guest_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n
\n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n {/* */}\n \n {\" \"}\n {nearbyLab.address}\n \n {/* */}\n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n Lab\n has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n \n \n \n ))}\n\n {!isEmpty(nearbyLabs) &&\n this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type !== \"b2bclient\" &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n \n \n \n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n {/*
\n \n {\" \"}\n {nearbyLab.email}\n \n
*/}\n\n {nearbyLab.phone ? (\n
\n \n {\" \"}\n {nearbyLab.phone}\n \n
) : null}\n\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n Lab\n has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n {!isEmpty(nearbyLabs) &&\n this.state.user_id &&\n this.state.user_type === \"CSR\" &&\n this.state.user_type !== \"b2bclient\" &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n \n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n Lab\n has female sample collectors\n \n
\n )}\n
\n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n {!isEmpty(nearbyLabs) &&\n this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type === \"b2bclient\" &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.uuid}/${this.props.match.params.guest_id}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n \n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n Lab\n has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n {isEmpty(nearbyLabs) && (\n loading ? (\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n
\n Sorry, No Labs Found In Your Specific Area.....\n
\n \n
\n )\n )}\n\n \n \n \n ) : isSmallScreen &&\n isEmpty(this.props.advLives) &&\n isEmpty(regionWiseAdvertisement) ? (\n
\n \n Nearby Labs | Lab Hazir - Dashboard\n \n \n \n val === \"Custom Address\",\n then: Yup.string().required(\"Please enter your City\"),\n }),\n location: Yup.string().when(\"city\", {\n is: val => val != \"\",\n then: Yup.string().required(\n \"Please enter your Location\"\n ),\n }),\n })}\n >\n {({ errors, status, touched }) => (\n
\n {/* Type field */}\n {/* Type field */}\n

Search Labs for more result in Pakistan!

\n \n \n
\n ({\n ...provided,\n border: '2px solid blue',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n isSearchable={true}\n isClearable={true}\n components={{\n ClearIndicator,\n }}\n />\n\n
\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n {/* \n Search By Labs Type\n */}\n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : null}\n\n
\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n {/* \n Search Types\n */}\n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : (\n \n
\n {/* \n Search Types\n */}\n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n \n
\n \n )}\n {/* \n
\n this.onChangeSearchType(e)}\n value={this.state.search_type}\n className=\"form-select\"\n >\n \n \n \n \n \n
\n */}\n\n {this.state.search_type === \"Current Location\" && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n placeholder=\"Search By Km...\"\n style={{\n border: '2px solid red',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n placeholder=\"Search By Km...\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )}\n {/* City field */}\n {this.state.search_type === \"City\" && (\n \n
\n ({\n ...provided,\n border: '2px solid green',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {/* Custom Address field */}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Search Location...\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n
\n
\n )}\n \n
\n\n {!isEmpty(nearbyLabs) &&\n !this.state.user_id &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.state.guest_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}/${this.state.guest_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n
\n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n Lab\n has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n \n \n \n ))}\n\n {!isEmpty(nearbyLabs) &&\n this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type !== \"b2bclient\" &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n \n \n \n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n\n {/*
\n \n {\" \"}\n {nearbyLab.email}\n \n
*/}\n\n {nearbyLab.phone ? (\n
\n \n {\" \"}\n {nearbyLab.phone}\n \n
) : null}\n\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n Lab\n has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n {!isEmpty(nearbyLabs) &&\n this.state.user_id &&\n this.state.user_type === \"CSR\" &&\n this.state.user_type !== \"b2bclient\" &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n \n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n Lab\n has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n {!isEmpty(nearbyLabs) &&\n this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type === \"b2bclient\" &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.uuid}/${this.props.match.params.guest_id}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n \n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n Lab\n has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n {isEmpty(nearbyLabs) && (\n loading ? (\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n
\n Sorry, No Labs Found In Your Specific Area.....\n
\n \n
\n )\n )}\n \n \n \n ) : isSmallScreen &&\n (!isEmpty(this.props.advLives) ||\n !isEmpty(regionWiseAdvertisement)) &&\n isEmpty(this.state.user_type) ? (\n
\n \n Nearby Labs | Lab Hazir - Dashboard\n \n \n \n {Array.isArray(this.props.advLives) && this.props.advLives.length > 0 ? (\n this.props.advLives.map((advLive, key) => (\n
\n \n {advLive.poster ? (\n advLive.poster.match(/\\.(jpeg|jpg|gif|png)$/) ? (\n \n ) : (\n \n \n Your browser does not support the video tag.\n \n )\n ) : (\n
No media found.
\n )}\n \n
\n ))\n ) : (\n

No advertisements available.

\n )}\n\n {this.props.regionWiseAdvertisement.map(\n (regionWiseAdvertisement, key) => (\n
\n {regionWiseAdvertisement.nearby_adv_list.map(\n (nearby_adv_list, index) => (\n \n \n \n )\n )}\n
\n )\n )}\n
\n
\n \n \n \n val === \"Custom Address\",\n then: Yup.string().required(\"Please enter your City\"),\n }),\n location: Yup.string().when(\"city\", {\n is: val => val != \"\",\n then: Yup.string().required(\n \"Please enter your Location\"\n ),\n }),\n })}\n >\n {({ errors, status, touched }) => (\n
\n {/* Type field */}\n {/* Type field */}\n

Search Labs for more result in Pakistan!

\n \n \n
\n ({\n ...provided,\n border: '2px solid blue',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n isSearchable={true}\n isClearable={true}\n components={{\n ClearIndicator,\n }}\n />\n\n
\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n {/* \n Search By Labs Type\n */}\n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : null}\n\n
\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n {/* \n Search Types\n */}\n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : (\n \n
\n {/* \n Search Types\n */}\n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n \n
\n \n )}\n {/* \n
\n this.onChangeSearchType(e)}\n value={this.state.search_type}\n className=\"form-select\"\n >\n \n \n \n \n \n
\n */}\n\n {this.state.search_type === \"Current Location\" && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n placeholder=\"Search By Km...\"\n style={{\n border: '2px solid red',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n placeholder=\"Search By Km...\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )}\n {/* City field */}\n {this.state.search_type === \"City\" && (\n \n
\n ({\n ...provided,\n border: '2px solid green',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {/* Custom Address field */}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Search Location...\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n
\n
\n )}\n \n
\n\n \n {!isEmpty(nearbyLabs) &&\n !this.state.user_id &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.state.guest_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}/${this.state.guest_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n
\n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n \n \n \n ))}\n\n {!isEmpty(nearbyLabs) &&\n this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type !== \"b2bclient\" &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n \n \n \n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n {/*
\n \n {\" \"}\n {nearbyLab.email}\n \n
*/}\n\n {nearbyLab.phone ? (\n
\n \n {\" \"}\n {nearbyLab.phone}\n \n
) : null}\n\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n {!isEmpty(nearbyLabs) &&\n this.state.user_id &&\n this.state.user_type === \"CSR\" &&\n this.state.user_type !== \"b2bclient\" &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n \n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n {!isEmpty(nearbyLabs) &&\n this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type === \"b2bclient\" &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.uuid}/${this.props.match.params.guest_id}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n \n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n \n {isEmpty(nearbyLabs) && (\n loading ? (\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n
\n Sorry, No Labs Found In Your Specific Area.....\n
\n \n
\n )\n )}\n \n \n \n \n ) : isSmallScreen &&\n (!isEmpty(this.props.advLives) ||\n !isEmpty(regionWiseAdvertisement)) &&\n this.state.user_type === \"patient\" ? (\n
\n \n Nearby Labs | Lab Hazir - Dashboard\n \n \n \n {Array.isArray(this.props.advLives) && this.props.advLives.length > 0 && (\n this.props.advLives.map((advLive, key) => (\n
\n \n {advLive.poster ? (\n advLive.poster.match(/\\.(jpeg|jpg|gif|png)$/) ? (\n \n ) : (\n \n \n Your browser does not support the video tag.\n \n )\n ) : (\n
No media found.
\n )}\n \n
\n ))\n )}\n {this.props.regionWiseAdvertisement.map(\n (regionWiseAdvertisement, key) => (\n
\n {regionWiseAdvertisement.nearby_adv_list.map(\n (nearby_adv_list, index) => (\n \n \n \n )\n )}\n
\n )\n )}\n
\n
\n \n \n \n

Categories

\n

\n Sehatmand Pakistan, Khushhaal Pakistan: Aapki Sehat, Hamari Zimmedari!\n

\n\n {/* Horizontal Scrollable Row */}\n
\n \n
\n
\n \n \"\"\n \n
\n

\n Tests\n

\n
\n \n\n \n
\n
\n \n \"\"\n \n
\n

\n Profiles\n

\n
\n \n\n \n
\n
\n \n \"\"\n \n
\n

\n Packages\n

\n
\n \n\n \n
\n
\n \n \"\"\n \n
\n

\n Radiology\n

\n
\n \n\n \n
\n
\n \n \"\"\n \n
\n

\n Discounts\n

\n
\n \n\n \n
\n
\n \n \"\"\n \n
\n

\n Appointments\n

\n
\n \n
\n
\n
\n \n \n val === \"Custom Address\",\n then: Yup.string().required(\"Please enter your City\"),\n }),\n location: Yup.string().when(\"city\", {\n is: val => val != \"\",\n then: Yup.string().required(\n \"Please enter your Location\"\n ),\n }),\n })}\n >\n {({ errors, status, touched }) => (\n
\n {/* Type field */}\n {/* Type field */}\n

Search Labs for more result in Pakistan!

\n \n \n
\n ({\n ...provided,\n border: '2px solid blue',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n isSearchable={true}\n isClearable={true}\n components={{\n ClearIndicator,\n }}\n />\n\n
\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n {/* \n Search By Labs Type\n */}\n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : null}\n\n
\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n {/* \n Search Types\n */}\n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : (\n \n
\n {/* \n Search Types\n */}\n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n \n
\n \n )}\n {/* \n
\n this.onChangeSearchType(e)}\n value={this.state.search_type}\n className=\"form-select\"\n >\n \n \n \n \n \n
\n */}\n\n {this.state.search_type === \"Current Location\" && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n placeholder=\"Search By Km...\"\n style={{\n border: '2px solid red',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n placeholder=\"Search By Km...\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )}\n {/* City field */}\n {this.state.search_type === \"City\" && (\n \n
\n ({\n ...provided,\n border: '2px solid green',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {/* Custom Address field */}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Search Location...\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n
\n
\n )}\n \n
\n\n \n {!isEmpty(nearbyLabs) &&\n !this.state.user_id &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.state.guest_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}/${this.state.guest_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n
\n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n\n {/* {!nearbyLab.is_247_opened && nearbyLab.closing_day && (\n
\n \n {\" \"}\n {nearbyLab.closing_day}\n \n
\n )} */}\n\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n \n \n \n ))}\n\n {!isEmpty(nearbyLabs) &&\n this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type !== \"b2bclient\" &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n \n \n \n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n\n {/* {!nearbyLab.is_247_opened && nearbyLab.closing_day && (\n
\n \n {\" \"}\n {nearbyLab.closing_day}\n \n
\n )} */}\n\n {/*
\n \n {\" \"}\n {nearbyLab.email}\n \n
*/}\n\n {nearbyLab.phone ? (\n
\n \n {\" \"}\n {nearbyLab.phone}\n \n
) : null}\n\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n {!isEmpty(nearbyLabs) &&\n this.state.user_id &&\n this.state.user_type === \"CSR\" &&\n this.state.user_type !== \"b2bclient\" &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n \n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n {!isEmpty(nearbyLabs) &&\n this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type === \"b2bclient\" &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.uuid}/${this.props.match.params.guest_id}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n \n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n\n {/* {!nearbyLab.is_247_opened && nearbyLab.closing_day && (\n
\n \n {\" \"}\n {nearbyLab.closing_day}\n \n
\n )} */}\n\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n \n {isEmpty(nearbyLabs) && (\n loading ? (\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n
\n Sorry, No Labs Found In Your Specific Area.....\n
\n \n
\n )\n )}\n \n \n \n \n ) : null}\n
\n );\n }\n}\n\nNearbyLabs.propTypes = {\n history: any,\n location: any,\n match: PropTypes.object,\n advLives: PropTypes.array,\n carts: PropTypes.array,\n regionWiseAdvertisement: PropTypes.array,\n nearbyLabs: PropTypes.array,\n onGetNearbyLabs: PropTypes.func,\n onGetRegionWiseAdvertisement: PropTypes.func,\n onGetAdvLive: PropTypes.func,\n menuOpen: PropTypes.any,\n t: PropTypes.any,\n onGetTerritoriesList: PropTypes.func,\n territoriesList: PropTypes.array,\n onGetPatientProfile: PropTypes.func,\n patientProfile: PropTypes.array,\n onGetLabNamesList: PropTypes.func,\n labNamesList: PropTypes.array,\n className: PropTypes.any,\n\n};\n\nconst mapStateToProps = state => ({\n nearbyLabs: state.LabMarket.nearbyLabs,\n regionWiseAdvertisement: state.LabMarket.regionWiseAdvertisement,\n advLives: state.LabMarket.advLives,\n territoriesList: state.territoriesList.territoriesList,\n patientProfile: state.LabMarket.patientProfile,\n onGetLabNamesList: PropTypes.func,\n labNamesList: PropTypes.array,\n labNamesList: state.labNamesList.labNamesList,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetNearbyLabs: locationDetails => dispatch(getNearbyLabs(locationDetails)),\n onGetRegionWiseAdvertisement: locationDetails =>\n dispatch(getRegionWiseAdvertisement(locationDetails)),\n onGetAdvLive: locationDetails => dispatch(getAdvLive(locationDetails)),\n offeredTestsList: guest_id => dispatch(offeredTestsList(guest_id)),\n onGetTerritoriesList: id => dispatch(getTerritoriesList(id)),\n onGetPatientProfile: id => dispatch(getPatientProfile(id)),\n onGetLabNamesList: id => dispatch(getLabNamesList(id)),\n\n});\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n (stateProps, dispatchProps, ownProps) => {\n // Return an object that merges stateProps, dispatchProps, and ownProps\n return {\n ...stateProps,\n ...dispatchProps,\n ...ownProps,\n };\n }\n)(withRouter(NearbyLabs));\n\n// export default connect(\n// mapStateToProps,\n// mapDispatchToProps\n// )(withRouter(NearbyLabs));","import {\n GET_QUOTES_SUCCESS,\n GET_QUOTES_FAIL,\n DELETE_CART_SUCCESS,\n DELETE_CART_FAIL,\n EMPTY_CART_SUCCESS,\n EMPTY_CART_FAIL,\n ADD_TO_CART_SUCCESS,\n ADD_TO_CART_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n quotes: [],\n error: {},\n success: {},\n};\n\nconst quotes = (state = INIT_STATE, action) => {\n switch (action.type) {\n // case GET_QUOTES_SUCCESS:\n // console.log(\"reducersssssssssssssssssssssss\", action.payload)\n // return {\n // ...state,\n // quotes: action.payload,\n // };\n case GET_QUOTES_SUCCESS:\n return {\n ...state,\n quotes: action.payload.data,\n };\n\n case GET_QUOTES_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case EMPTY_CART_SUCCESS:\n return {\n ...state,\n quotes: state.quotes.filter(\n cart => cart.id.toString() !== action.payload.id.toString()\n ),\n };\n\n case EMPTY_CART_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case DELETE_CART_SUCCESS:\n console.log(\"reducer\", action.payload.id)\n return {\n ...state,\n quotes: state.quotes.filter(\n cart => cart.id.toString() !== action.payload.id.toString()\n ),\n };\n\n case DELETE_CART_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n // case ADD_TO_CART_SUCCESS:\n // return {\n // ...state,\n // success: action.payload,\n // };\n // case ADD_TO_CART_FAIL:\n // return {\n // ...state,\n // error: action.payload,\n // };\n\n default:\n return state;\n }\n};\n\nexport default quotes;\n","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport Select from \"react-select\";\nimport { Collapse } from \"reactstrap\";\nimport { any } from \"prop-types\";\nimport * as Yup from \"yup\";\n\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Table,\n Pagination,\n PaginationItem,\n PaginationLink,\n Button,\n ModalBody,\n ModalHeader,\n Modal,\n Label,\n Input,\n} from \"reactstrap\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport { isEmpty, map, size } from \"lodash\";\nimport { addToCart } from \"store/actions\";\nimport { getCarts } from \"store/carts/actions\";\nimport StarRatings from \"react-star-ratings\";\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form } from \"formik\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { onlyMedicalTestList } from \"store/only-medical-tests-list/actions\";\nimport { getTerritoriesList } from \"store/territories-list/actions\";\nimport { getQuotes } from \"store/quotes/actions\";\n\nimport \"assets/scss/table.scss\";\nimport quotes from \"store/quotes/reducer\";\n\nclass MedicalTestList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n territoriesList: [],\n carts: [],\n onlyMedicalTestList: [],\n test_name: [], // Use an array to store multiple selections\n quotes: [],\n search_type: \"\", // Set the initial value to an empty string or a default value\n km: \"30\",\n address: \"\",\n latitude: \"\",\n longitude: \"\",\n locationAccessAllowed: \"\",\n currentLatitude: \"\",\n currentLongitude: \"\",\n quote: \"\",\n id: \"\",\n searchQuery: \"\", // New state property for search query\n tooltipContent: [\"Worst\", \"Bad\", \"Average\", \"Good\", \"Excellent\"],\n onlyMedicalTestList: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n loading: true, // Add loading state proper\n page: \"1\",\n };\n // this.toggle = this.toggle.bind(this);\n this.handlePatientFeedbackClick =\n this.handlePatientFeedbackClick.bind(this);\n console.log(\"yaha ani chahi hai uuid\", this.props.match.params.id, this.state.user_id, this.props.match.params.filnalurl)\n console.log(this.state.user_type)\n }\n\n componentDidMount() {\n const { carts, onGetCarts } = this.props;\n onGetCarts(this.state.user_id);\n this.setState({\n carts\n });\n const { onlyMedicalTestList, onGetonlyMedicalTestList } = this.props;\n onGetonlyMedicalTestList(this.state.user_id);\n this.setState({ onlyMedicalTestList });\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000); // Set loading state to false after 7 seconds\n const { territoriesList, onGetTerritoriesList } = this.props;\n if (territoriesList && !territoriesList.length) {\n console.log(onGetTerritoriesList(this.state.user_id));\n }\n let latitude;\n let longitude;\n\n const url = window.location.href;\n const queryString = url.substring(url.indexOf('&') + 1);\n const params = new URLSearchParams(queryString);\n console.log(\"print params in app\", url, queryString, params)\n\n const latitudeFromUrl = params.get('lat');\n const longitudeFromUrl = params.get('lon');\n\n console.log('Latitude:', latitudeFromUrl);\n console.log('Longitude:', longitudeFromUrl);\n\n if (latitudeFromUrl && longitudeFromUrl) {\n // Use latitude and longitude from URL\n latitude = parseFloat(latitudeFromUrl);\n longitude = parseFloat(longitudeFromUrl);\n console.log(\"print lat log in app\", latitude, longitude);\n\n // Call the dependent code here or pass the latitude and longitude values as arguments\n this.handleLocationUpdate(latitude, longitude);\n } else {\n if (navigator.geolocation) {\n navigator.geolocation.getCurrentPosition((position) => {\n latitude = position.coords.latitude;\n longitude = position.coords.longitude;\n console.log(\"web\", latitude, longitude);\n\n this.setState({ currentLatitude: latitude });\n this.setState({ currentLongitude: longitude });\n this.setState({ locationAccessAllowed: true });\n\n // Assuming onGetQuotes is a prop, use it from props\n const { onGetQuotes } = this.props;\n onGetQuotes(this.state.city_id, this.state.test_id, this.state.search_type, this.state.address, this.state.currentLongitude, this.state.currentLatitude, this.state.km, this.state.locationAccessAllowed);\n\n // Set loading state\n this.setState({ loading: true });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n\n }, () => {\n this.setState({ latitude: null, longitude: null });\n }\n );\n } else {\n // Geolocation is not supported by the browser\n console.log(\"Geolocation is not supported by the browser.\");\n // Handle this scenario as needed, e.g., display an error message or provide alternative functionality.\n }\n }\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000); // Set loading state to false after 7 seconds\n }\n onchangename = selectedOptions => {\n const selectedValues = selectedOptions.map(option => option.value);\n this.setState({\n test_name: selectedValues, locationAccessAllowed: true,\n });\n };\n handleLocationUpdate(latitude, longitude) {\n const { onGetQuotes } = this.props;\n\n setTimeout(() => {\n this.setState({ currentLatitude: latitude });\n this.setState({ currentLongitude: longitude });\n if (this.state.currentLatitude && this.state.currentLongitude && this.state.test_id) {\n onGetQuotes(this.state.city_id, this.state.test_id, this.state.search_type, this.state.address, this.state.currentLongitude, this.state.currentLatitude, this.state.km, this.state.locationAccessAllowed);\n\n // Set loading state\n this.setState({ loading: true });\n\n // Clear previous quotes\n this.setState({ quotes: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 1000);\n }\n }, 1000);\n }\n\n // Handle search type change\n onChangeSearchType = async e => {\n this.setState({ search_type: e.target.value });\n this.setState({ city_id: \"\" });\n\n console.log(\"search type have to note\", this.state.search_type, e.target.value);\n\n // Check if the search type is \"Current Location\" and test IDs are selected\n if (e.target.value === \"Current Location\" && this.state.test_id) {\n this.handleCurrentLocationSearch();\n }\n }; \n // Add a new function for handling API call when search type is \"Current Location\"\n handleCurrentLocationSearch = async () => {\n this.setState({ city_id: \"\", locationAccessAllowed: true });\n\n // Check if the geolocation API is supported\n if (\"geolocation\" in navigator) {\n try {\n const locationPermission = await navigator.permissions.query({ name: 'geolocation' });\n\n if (locationPermission.state === 'denied' && !this.state.locationAccessAllowed) {\n // Location access is denied\n this.setState({ PatientModal: true });\n } else {\n // Location access is prompted, ask the user for permission\n const position = await new Promise((resolve, reject) => {\n navigator.geolocation.getCurrentPosition(resolve, reject);\n });\n const latitude = position.coords.latitude;\n const longitude = position.coords.longitude;\n const { onGetQuotes } = this.props;\n onGetQuotes(this.state.city_id, this.state.test_id, this.state.search_type, this.state.address, longitude, latitude, this.state.km, this.state.locationAccessAllowed);\n\n // Set loading state\n this.setState({ loading: true, quotes: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n }\n } catch (error) {\n console.error('Error checking location permission:', error);\n }\n } else {\n // Geolocation API is not supported, show an error message\n this.setState({ PatientModal: true });\n }\n };\n onChangeKm = async e => {\n this.setState({ km: e.target.value });\n\n // Check if both city and test name are selected before making the API call\n if (this.state.city_id && this.state.test_id) {\n this.handleApiCall();\n } else if (this.state.search_type === \"Current Location\" && this.state.test_id) {\n this.handleCurrentLocationSearch();\n } \n else if (this.state.search_type === \"Custom Address\" && this.state.test_id && this.state.address) {\n this.makeApiCall();\n }\n };\n\n // Add a new function for handling the API call\n handleApiCall = async () => {\n const { onGetQuotes } = this.props;\n onGetQuotes(\n this.state.city_id,\n this.state.test_id,\n this.state.search_type,\n this.state.address,\n this.state.currentLongitude,\n this.state.currentLatitude,\n this.state.km,\n this.state.locationAccessAllowed\n );\n\n // Set loading state\n this.setState({ loading: true, quotes: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n };\n onChangeAddress = async (e) => {\n // Apply that city's latitude and longitude as city bound so that we see addresses of that city only\n var cityBounds = new google.maps.LatLngBounds(\n new google.maps.LatLng(this.state.latitude, this.state.longitude)\n );\n \n const options = {\n bounds: cityBounds,\n types: [\"establishment\"],\n componentRestrictions: { country: \"pk\" },\n };\n \n var searchBox = new window.google.maps.places.SearchBox(e.target, options);\n \n searchBox.addListener(\"places_changed\", () => {\n this.setState({ address: e.target.value }, () => {\n // Now that the state is updated, make the API call\n this.makeApiCall();\n });\n });\n };\n\n handleCityChange = (selectedGroup) => {\n const selectedCityId = selectedGroup.value;\n this.setState({ city_id: selectedCityId });\n // this.setState({ km: \"\", latitude: \"\", longitude: \"\", locationAccessAllowed: \"\" });\n if (selectedCityId && this.state.test_id) {\n // Call your API here\n const { onGetQuotes } = this.props;\n onGetQuotes(selectedCityId, this.state.test_id, this.state.search_type);\n\n // Set loading state\n this.setState({ loading: true });\n\n // Clear previous quotes\n this.setState({ quotes: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n }\n };\n handleTestsChange = async (selectedTests, e) => {\n const selectedTestIds = selectedTests.map((test) => test.value);\n this.setState({ test_id: selectedTestIds });\n\n // Check if both city and test name are selected before making the API call\n if (this.state.city_id && selectedTestIds.length > 0) {\n // Call your API here\n const { onGetQuotes } = this.props;\n onGetQuotes(this.state.city_id, selectedTestIds, this.state.search_type);\n\n // Set loading state\n this.setState({ loading: true });\n\n // Clear previous quotes\n this.setState({ quotes: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n } else if (this.state.search_type === \"Current Location\" && selectedTestIds.length > 0) {\n this.setState({ city_id: \"\", locationAccessAllowed: true });\n // Check if the geolocation API is supported\n if (\"geolocation\" in navigator) {\n try {\n const locationPermission = await navigator.permissions.query({ name: 'geolocation' });\n\n if (locationPermission.state === 'denied' && !this.state.locationAccessAllowed) {\n // Location access is denied\n // Show the PatientModal only when the user explicitly clicks on \"Current Location\"\n this.setState({ PatientModal: true });\n } else {\n // Location access is prompted, ask the user for permission\n const position = await new Promise((resolve, reject) => {\n navigator.geolocation.getCurrentPosition(resolve, reject);\n });\n const latitude = position.coords.latitude;\n const longitude = position.coords.longitude;\n const { onGetQuotes } = this.props;\n onGetQuotes(this.state.city_id, selectedTestIds, this.state.search_type, this.state.address, longitude, latitude, this.state.km, this.state.locationAccessAllowed);\n\n // Set loading state\n this.setState({ loading: true, quotes: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n }\n } catch (error) {\n console.error('Error checking location permission:', error);\n }\n } else {\n // Geolocation API is not supported, show an error message\n this.setState({ PatientModal: true }); // Show the modal for error\n }\n } else if (this.state.search_type === \"Custom Address\" && selectedTestIds.length > 0) {\n // Apply that city's latitude and longitude as city bound so that we see addresses of that city only\n\n this.setState({ test_id: selectedTestIds }, () => {\n // Now that the state is updated, make the API call\n this.makeApiCall();\n });\n } else {\n console.log(\"City or Test IDs not selected. API call not made.\");\n }\n };\n makeApiCall = () => {\n const { onGetQuotes } = this.props;\n onGetQuotes(\n this.state.city_id,\n this.state.test_id,\n this.state.search_type,\n this.state.address,\n this.state.longitude,\n this.state.latitude,\n this.state.km,\n this.state.locationAccessAllowed\n );\n \n // Set loading state\n this.setState({ loading: true, quotes: [] });\n \n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n };\n handleAddToCart = cart => {\n console.log(\"1stttt\", cart);\n const { onAddToCart } = this.props;\n const { offered_tests } = cart;\n console.log(\"2nd\", offered_tests);\n // Check if there are offered tests in the nearbyTest\n if (offered_tests && offered_tests.length > 0) {\n offered_tests.forEach(offeredTest => {\n console.log(\"3rddd\", offeredTest);\n const { test_name } = offeredTest;\n\n // Check if the test_name already exists in the cart\n const isTestInCart = this.props.carts.some(cartItem => cartItem.test_name === test_name);\n\n if (isTestInCart) {\n // Skip adding to the cart if the test already exists\n return;\n }\n // const { id:id } = offeredTest;\n if (!this.state.user_id) {\n // Check if the item is already in the cart\n if (offeredTest.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n\n this.setState({ guest_id: this.props.match.params.guest_id });\n offeredTest.guest_id = this.props.match.params.guest_id;\n onAddToCart(offeredTest, offeredTest.guest_id);\n\n console.log(\n \"uuid:\",\n offeredTest.guest_id,\n this.props.match.params.guest_id\n );\n } else if (\n this.state.user_type !== \"CSR\" &&\n this.state.user_type !== \"b2bclient\"\n ) {\n // Check if the item is already in the cart\n if (offeredTest.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n\n onAddToCart(offeredTest, this.state.user_id);\n } else if (\n this.state.user_type === \"CSR\" &&\n this.state.user_type !== \"b2bclient\"\n ) {\n // Check if the item is already in the offeredTest\n if (offeredTest.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n\n onAddToCart(offeredTest, this.props.match.params.guest_id);\n } else if (\n this.state.user_type === \"b2bclient\" &&\n this.state.user_type !== \"CSR\"\n ) {\n // Check if the item is already in the offeredTest\n if (offeredTest.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n\n onAddToCart(offeredTest, this.props.match.params.uuid);\n }\n });\n this.showSuccessMessage(\"Item added Successfully\");\n } else {\n // Show error message if there are no offered tests\n this.showErrorMessage(\"No offered tests to add to the cart\");\n }\n };\n showErrorMessage = message => {\n this.showPopup(message, \"red\");\n };\n\n showSuccessMessage = message => {\n this.showPopup(message, \"green\");\n };\n showPopup = (message, textColor) => {\n // Create and style the popup\n const popup = document.createElement(\"div\");\n popup.style.display = \"none\";\n popup.style.position = \"fixed\";\n popup.style.top = \"0\";\n popup.style.left = \"0\";\n popup.style.width = \"100%\";\n popup.style.height = \"100%\";\n popup.style.background = \"rgba(0, 0, 0, 0.5)\";\n popup.style.zIndex = \"1000\";\n\n const popupContent = document.createElement(\"div\");\n popupContent.style.position = \"absolute\";\n popupContent.style.top = \"50%\";\n popupContent.style.left = \"50%\";\n popupContent.style.transform = \"translate(-50%, -50%)\";\n popupContent.style.background = \"#fff\";\n popupContent.style.padding = \"20px\";\n popupContent.style.borderRadius = \"5px\";\n popupContent.style.boxShadow = \"0 0 10px rgba(0, 0, 0, 0.3)\";\n\n const messageElement = document.createElement(\"div\");\n messageElement.style.fontSize = \"18px\";\n messageElement.style.textAlign = \"center\";\n messageElement.style.color = textColor; // Set the text color\n\n // Set the message\n messageElement.textContent = message;\n\n // Append elements to the DOM\n popupContent.appendChild(messageElement);\n popup.appendChild(popupContent);\n document.body.appendChild(popup);\n\n // Show the popup\n popup.style.display = \"block\";\n\n // Hide the popup after a certain duration (e.g., 3 seconds)\n setTimeout(() => {\n popup.style.display = \"none\";\n }, 1000); // 3000 milliseconds = 3 seconds\n };\n handlePatientFeedbackClick = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggle();\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n shouldHighlightTestsLink() {\n const { location } = this.props;\n const currentURL = location.pathname;\n\n // Check if the URL contains \"nearby-test\"\n return currentURL.includes(\"/tests-offered-labhazir/\");\n }\n\n\n\n render() {\n const { onGetCarts } = this.props;\n\n const { carts } = this.props;\n const { search_type } = this.state;\n let borderColor = '2px solid blue'; // Default border color\n\n // Check the selected option and update border color accordingly\n if (search_type === 'Current Location') {\n borderColor = '2px solid red'; // Change to the desired color\n }\n if (search_type === 'City') {\n borderColor = '2px solid green'; // Change to the desired color\n }\n if (search_type === 'Custom Address') {\n borderColor = '2px solid yellow'; // Change to the desired color\n }\n const { SearchBar } = Search;\n const { loading } = this.state;\n const isTestsLinkHighlighted = this.shouldHighlightTestsLink();\n const linkStyles = {\n color: isTestsLinkHighlighted ? \"black\" : \"black\", // Text color\n // backgroundColor: isTestsLinkHighlighted ? '#ffcc00' : 'transparent', // Background color\n fontWeight: isTestsLinkHighlighted ? \"bold\" : \"normal\",\n };\n\n const { onlyMedicalTestList, quotes } = this.props;\n console.log(\"quesots have data or not\", quotes, this.state.city_id, this.state.test_id)\n const { onGetonlyMedicalTestList, onGetQuotes } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: onlyMedicalTestList.length, // replace later with size(onlyMedicalTestList),\n custom: true,\n };\n const { searchQuery } = this.state;\n // const filteredTests = this.props.onlyMedicalTestList.filter(test =>\n // test.name.toLowerCase().includes(searchQuery.toLowerCase())\n // );\n // list of city from territories\n const cityList = [];\n for (let i = 0; i < this.props.territoriesList.length; i++) {\n cityList.push({\n label: this.props.territoriesList[i].city,\n value: this.props.territoriesList[i].id,\n });\n }\n const testList = [];\n for (let i = 0; i < this.props.onlyMedicalTestList.length; i++) {\n testList.push({\n label: this.props.onlyMedicalTestList[i].name,\n value: this.props.onlyMedicalTestList[i].id,\n });\n }\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n const isFilterApplied = this.state.city_id && this.state.test_id && this.state.search_type === \"City\";\n const isFilterApplied2 = this.state.test_id && this.state.search_type === \"Current Location\";\n const isFilterApplied3 = this.state.test_id && this.state.search_type === \"Custom Address\" && this.state.address;\n const renderedRowKeys = []; // Array to store rendered row keys\n console.log(\"have data in the renderedRowKeys\", renderedRowKeys)\n const isSmallScreen = window.innerWidth < 490;\n\n return (\n \n
\n
\n \n {this.state.user_id &&\n this.state.user_type === \"CSR\" &&\n this.state.user_type !== \"b2bclient\" ? (\n \n
    \n
  • \n \n \n Book a Test\n \n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Labs\n \n
  • \n\n
  • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n \n My Appointments\n \n \n
  • \n )}\n
\n \n ) : null}\n {!this.state.user_id ? (\n \n
    \n {this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n \n Book a Test\n \n \n
  • \n ) : !this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n \n Book a Test\n \n \n
  • \n ) : null}\n {this.props.match.params.filnalurl ? (\n
  • \n \n Labs\n \n
  • \n ) : (\n
  • \n \n Labs\n \n
  • \n )}\n\n {this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Tests\n \n
  • \n ) : !this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Tests\n \n
  • \n ) : null}\n {this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : !this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : null}\n\n {this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Packages\n \n
  • \n ) : !this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Packages\n \n
  • \n ) : null}\n\n {this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : !this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : null}\n\n\n {/*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
    \n
  • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n \n My Appointments\n \n \n
  • \n /*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
    \n
  • */\n )}\n
\n \n ) : this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type !== \"b2bclient\" ? (\n \n
    \n
  • \n \n \n Book a Test\n \n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Labs\n {/* {this.props.t(\"Labs\")} */}\n \n
  • \n\n
  • \n {/* \n {this.props.t(\"Search by Tests\")}\n */}\n \n {/* {this.props.t(\"Tests\")} */}\n Tests\n \n
  • \n
  • \n \n {/* {this.props.t(\"Profiles\")} */}\n Profiles\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n\n {/*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
    \n
  • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n \n My Appointments\n \n \n
  • \n /*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
    \n
  • */\n )}\n
\n \n ) : this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type === \"b2bclient\" ? (\n \n
    \n
  • \n \n \n Book a Test\n \n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Labs\n \n
  • \n\n
  • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n \n My Appointments\n \n \n
  • \n )}\n
\n \n ) : null}\n \n
\n
\n
\n \n {/* Approved Donors | Lab Hazir */}\n \n \n {!isSmallScreen ? (\n \n val === \"Custom Address\",\n // then: Yup.string().required(\"Please enter your City\"),\n // }),\n // location: Yup.string().when(\"city\", {\n // is: val => val != \"\",\n // then: Yup.string().required(\"Please enter your Location\"),\n // }),\n })}\n >\n {({ errors, status, touched }) => (\n
\n {/* Type field */}\n \n \n
\n \n Search Types\n \n this.onChangeSearchType(e)\n }\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n\n \n
\n \n {this.state.search_type === 'Custom Address' && (\n \n
\n \n Custom Address \n \n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Address..\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {this.state.search_type === 'Custom Address' && (\n \n
\n \n Km\n \n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\"\n className=\"form-control\"\n placeholder=\"km..\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )}\n {this.state.search_type === 'Current Location' && (\n \n
\n \n Km \n \n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n placeholder=\"\"\n style={{\n border: '2px solid red',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )}\n {this.state.search_type === 'City' && (\n \n
\n \n ({\n ...provided,\n border: '2px solid green',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n \n
\n \n ({\n ...provided,\n border: '2px solid blue',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n

You may Select Single or Multiple Tests to Book.

\n
\n\n \n
\n
\n )}\n \n
\n ) : \n val === \"Custom Address\",\n // then: Yup.string().required(\"Please enter your City\"),\n // }),\n // location: Yup.string().when(\"city\", {\n // is: val => val != \"\",\n // then: Yup.string().required(\"Please enter your Location\"),\n // }),\n })}\n >\n {({ errors, status, touched }) => (\n
\n {/* Type field */}\n \n \n
\n \n Search Types\n \n this.onChangeSearchType(e)\n }\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n\n \n
\n \n {this.state.search_type === 'Custom Address' && (\n \n
\n \n Custom Address\n \n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Address..\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {this.state.search_type === 'Custom Address' && (\n \n
\n \n Km\n \n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\"\n className=\"form-control\"\n placeholder=\"km..\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )}\n {this.state.search_type === 'Current Location' && (\n \n
\n \n Km \n \n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n placeholder=\"\"\n style={{\n border: '2px solid red',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )}\n {this.state.search_type === 'City' && (\n \n
\n \n ({\n ...provided,\n border: '2px solid green',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n )}
\n \n \n
\n \n ({\n ...provided,\n border: '2px solid blue',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n

You may Select Single or Multiple Tests to Book.

\n
\n\n \n
\n
\n )}\n \n
}\n \n \n \n {isFilterApplied ? ( // Only render the table if both city_id and test_id are selected\n
\n \n \n \n \n \n \n \n {/* */}\n \n \n \n \n \n \n {!isEmpty(quotes) &&\n Array.isArray(quotes.top_lab_details_with_tests) && quotes.top_lab_details_with_tests.length > 0 ?\n quotes.top_lab_details_with_tests.map(\n (referrelFeeLab, key) => (\n \n \n \n \n \n \n\n \n \n\n {/* */}\n \n \n )\n ) : (\n
\n

\n "Labhazir will only show labs that offer All the tests you‘ve selected."\n

\n\n
\n )}\n {/* {isEmpty(quotes) && (\n \n
\n

\n Labhazir will only show labs offering All selected tests.\n

\n
\n
\n )} */}\n
Lab NameTest NameReporting TimePrice Total Price Discount (Rs) Price after Discount\n Net Payable\n
\n {!this.state.user_id ? (\n \n {!this.state.user_id ? (\n \n
\n \n \n {referrelFeeLab.name}\n \n
\n {referrelFeeLab.type}\n
\n
\n \n {referrelFeeLab && referrelFeeLab.rating && (\n \n

{referrelFeeLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n)}\n
\n \n
\n
\n ) : null}\n\n
\n ) : null}\n\n {(this.state.user_id) && (this.state.user_type === \"CSR\") && (this.state.user_type !== \"b2bclient\") && (\n
\n \n \n {referrelFeeLab.name}\n \n \n
\n {referrelFeeLab.type}\n
\n
\n \n {referrelFeeLab && referrelFeeLab.rating && (\n

{referrelFeeLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n)}\n
\n \n
\n )}\n\n {(this.state.user_id) && (this.state.user_type !== \"CSR\") && (this.state.user_type !== \"b2bclient\") && (\n
\n \n \n {referrelFeeLab.name}\n \n \n
\n {referrelFeeLab.type}\n
\n
\n \n {referrelFeeLab && referrelFeeLab.rating && (\n

{referrelFeeLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n)}\n
\n \n
\n )}\n\n {(this.state.user_id) && (this.state.user_type !== \"CSR\") && (this.state.user_type === \"b2bclient\") && (\n
\n \n \n {referrelFeeLab.name}\n \n \n
\n {referrelFeeLab.type}\n
\n
\n \n {referrelFeeLab && referrelFeeLab.rating && (\n

{referrelFeeLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n)}\n
\n \n
\n )}\n
\n {!isEmpty(referrelFeeLab.offered_tests) &&\n referrelFeeLab.offered_tests.map(\n (offeredTest, index) => (\n
{offeredTest.test_name}
\n )\n )}\n
\n {!isEmpty(referrelFeeLab.offered_tests) &&\n referrelFeeLab.offered_tests.map(\n (offeredTest, index) => (\n
\n {\" \"}\n {offeredTest.duration_required}{\" \"}\n {offeredTest.duration_type}\n
\n )\n )}\n
\n {!isEmpty(referrelFeeLab.offered_tests) &&\n referrelFeeLab.offered_tests.map(\n (offeredTest, index) => (\n
\n {\" \"}\n {offeredTest.price\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n
\n )\n )}\n
\n {!isEmpty(referrelFeeLab.offered_tests) &&\n referrelFeeLab.offered_tests.map((offeredTest, index) => (\n // Use a Fragment to avoid wrapping with a div\n
\n {((offeredTest.discount + (offeredTest.discount_by_labhazir || 0) + (offeredTest.test_discount || 0)) !== 0) ? (\n \n {((offeredTest.discount + (offeredTest.discount_by_labhazir || 0) + (offeredTest.test_discount || 0)) * 100)} %\n \n ) : (\n '--'\n )}\n
\n ))}\n
\n {referrelFeeLab.offered_tests\n .map((offeredTest, index) => {\n const discountByTest = offeredTest.discount || 0;\n const discountByLabhazir = offeredTest.discount_by_labhazir || 0;\n const discountByAllLabhazir = offeredTest.test_discount || 0;\n const totalDiscount = discountByTest + discountByLabhazir + discountByAllLabhazir;\n const discountedPrice =\n offeredTest.price -\n (offeredTest.price * (totalDiscount * 100)) / 100;\n\n return (\n
\n {discountedPrice\n .toFixed(2)\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n
\n );\n })}\n
\n
\n {referrelFeeLab.offered_tests\n .reduce((total, offeredTest) => {\n const discountByTest = offeredTest.discount || 0;\n const discountByLabhazir = offeredTest.discount_by_labhazir || 0;\n const discountByAllLabhazir = offeredTest.test_discount || 0;\n const totalDiscount = discountByTest + discountByLabhazir\n const discountedPrice = (\n offeredTest.price -\n (offeredTest.price * (totalDiscount * 100)) / 100\n );\n return total + Number(discountedPrice);\n }, 0)\n .toFixed(2)\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n
\n {\n this.handleAddToCart(referrelFeeLab);\n }}\n >\n Add to cart\n \n \n {(() => {\n // Check if all offeredTest.id in this row are already in this.props.carts\n const areAllTestIdsInCart = referrelFeeLab.offered_tests.every(offeredTest =>\n this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id)\n );\n\n console.log(\"all present have or not\", areAllTestIdsInCart);\n\n return (\n {\n const areAllTestIdsInCart = referrelFeeLab.offered_tests.every(offeredTest =>\n this.props.carts.some(cartItem => cartItem.test_name === offeredTest.test_name)\n );\n if (areAllTestIdsInCart) {\n alert(\"An item with the same name but from a different lab is already in the cart. Please remove the previous one first.\");\n } else {\n this.handleAddToCart(referrelFeeLab);\n }\n }}\n disabled={areAllTestIdsInCart}\n style={{\n backgroundColor: 'primary', // Primary color\n borderColor: 'primary', // Primary color\n fontSize: '10px',\n\n }}\n >\n {areAllTestIdsInCart ? 'Already Added' : 'Add to cart'}\n \n );\n })()}\n
\n
\n ) : isFilterApplied2 ? (\n
\n \n \n \n \n \n \n \n {/* */}\n \n \n \n \n \n \n {!isEmpty(quotes) &&\n Array.isArray(quotes.top_lab_details_with_tests) && quotes.top_lab_details_with_tests.length > 0 ?\n quotes.top_lab_details_with_tests.map(\n (referrelFeeLab, key) => (\n \n \n \n \n \n \n\n \n \n\n {/* */}\n \n \n )\n ) : (\n
\n

\n "Labhazir will only show labs that offer All the tests you‘ve selected."\n

\n\n
\n )}\n {/* {isEmpty(quotes) && (\n \n
\n

\n "Labhazir will only show labs that offer all the tests you‘ve selected."\n

\n
\n
\n )} */}\n
Lab NameTest NameReporting TimePrice Total Price Discount Price after Discount\n Net Payable\n
\n {!this.state.user_id ? (\n \n {!this.state.user_id ? (\n \n
\n \n \n {referrelFeeLab.name}\n \n
\n {referrelFeeLab.type}\n
\n
\n \n {referrelFeeLab && referrelFeeLab.rating && (\n

{referrelFeeLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n)}\n
\n \n
\n
\n ) : null}\n\n
\n ) : null}\n\n {(this.state.user_id) && (this.state.user_type === \"CSR\") && (this.state.user_type !== \"b2bclient\") && (\n
\n \n \n {referrelFeeLab.name}\n \n \n
\n {referrelFeeLab.type}\n
\n
\n \n {referrelFeeLab && referrelFeeLab.rating && (\n

{referrelFeeLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n)}\n
\n \n
\n )}\n\n {(this.state.user_id) && (this.state.user_type !== \"CSR\") && (this.state.user_type !== \"b2bclient\") && (\n
\n \n \n {referrelFeeLab.name}\n \n \n
\n {referrelFeeLab.type}\n
\n
\n \n {referrelFeeLab && referrelFeeLab.rating && (\n

{referrelFeeLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n)}\n
\n \n
\n )}\n\n {(this.state.user_id) && (this.state.user_type !== \"CSR\") && (this.state.user_type === \"b2bclient\") && (\n
\n \n \n {referrelFeeLab.name}\n \n \n
\n {referrelFeeLab.type}\n
\n
\n \n {referrelFeeLab && referrelFeeLab.rating && (\n

{referrelFeeLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n)}\n
\n \n
\n )}\n
\n {!isEmpty(referrelFeeLab.offered_tests) &&\n referrelFeeLab.offered_tests.map(\n (offeredTest, index) => (\n
{offeredTest.test_name}
\n )\n )}\n
\n {!isEmpty(referrelFeeLab.offered_tests) &&\n referrelFeeLab.offered_tests.map(\n (offeredTest, index) => (\n
\n {\" \"}\n {offeredTest.duration_required}{\" \"}\n {offeredTest.duration_type}\n
\n )\n )}\n
\n {!isEmpty(referrelFeeLab.offered_tests) &&\n referrelFeeLab.offered_tests.map(\n (offeredTest, index) => (\n
\n {\" \"}\n {offeredTest.price\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n
\n )\n )}\n
\n {!isEmpty(referrelFeeLab.offered_tests) &&\n referrelFeeLab.offered_tests.map((offeredTest, index) => (\n // Use a Fragment to avoid wrapping with a div\n
\n {((offeredTest.discount + (offeredTest.discount_by_labhazir || 0) + (offeredTest.test_discount || 0)) !== 0) ? (\n \n {((offeredTest.discount + (offeredTest.discount_by_labhazir || 0) + (offeredTest.test_discount || 0)) * 100)} %\n \n ) : (\n '--'\n )}\n
\n ))}\n
\n {referrelFeeLab.offered_tests\n .map((offeredTest, index) => {\n const discountByTest = offeredTest.discount || 0;\n const discountByLabhazir = offeredTest.discount_by_labhazir || 0;\n const totalDiscount = discountByTest + discountByLabhazir;\n const discountedPrice =\n offeredTest.price -\n (offeredTest.price * (totalDiscount * 100)) / 100;\n\n return (\n
\n {discountedPrice\n .toFixed(2)\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n
\n );\n })}\n
\n
\n {referrelFeeLab.offered_tests\n .reduce((total, offeredTest) => {\n const discountByTest = offeredTest.discount || 0;\n const discountByLabhazir = offeredTest.discount_by_labhazir || 0;\n const totalDiscount = discountByTest + discountByLabhazir;\n const discountedPrice = (\n offeredTest.price -\n (offeredTest.price * (totalDiscount * 100)) / 100\n );\n return total + Number(discountedPrice);\n }, 0)\n .toFixed(2)\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n
\n {\n this.handleAddToCart(referrelFeeLab);\n }}\n >\n Add to cart\n \n \n {(() => {\n // Check if all offeredTest.id in this row are already in this.props.carts\n const areAllTestIdsInCart = referrelFeeLab.offered_tests.every(offeredTest =>\n this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id)\n );\n\n console.log(\"all present have or not\", areAllTestIdsInCart);\n\n return (\n {\n const areAllTestIdsInCart = referrelFeeLab.offered_tests.every(offeredTest =>\n this.props.carts.some(cartItem => cartItem.test_name === offeredTest.test_name)\n );\n if (areAllTestIdsInCart) {\n alert(\"An item with the same name but from a different lab is already in the cart. Please remove the previous one first.\");\n } else {\n this.handleAddToCart(referrelFeeLab);\n }\n }}\n disabled={areAllTestIdsInCart}\n style={{\n backgroundColor: 'primary', // Primary color\n borderColor: 'primary', // Primary color\n fontSize: '10px',\n }}\n >\n {areAllTestIdsInCart ? 'Already Added' : 'Add to cart'}\n \n );\n })()}\n
\n
\n\n ) : isFilterApplied3 ? (\n
\n \n \n \n \n \n \n \n {/* */}\n \n \n \n \n \n \n {!isEmpty(quotes) &&\n Array.isArray(quotes.top_lab_details_with_tests) && quotes.top_lab_details_with_tests.length > 0 ?\n quotes.top_lab_details_with_tests.map(\n (referrelFeeLab, key) => (\n \n \n \n \n \n \n\n \n \n\n {/* */}\n \n \n )\n ) : (\n
\n

\n "Labhazir will only show labs that offer All the tests you‘ve selected."\n

\n\n
\n )}\n {/* {isEmpty(quotes) && (\n \n
\n

\n "Labhazir will only show labs that offer all the tests you‘ve selected."\n

\n
\n
\n )} */}\n
Lab NameTest NameReporting TimePrice Total Price Discount Price after Discount\n Net Payable\n
\n {!this.state.user_id ? (\n \n {!this.state.user_id ? (\n \n
\n \n \n {referrelFeeLab.name}\n \n
\n {referrelFeeLab.type}\n
\n
\n \n {referrelFeeLab && referrelFeeLab.rating && (\n

{referrelFeeLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n)}\n
\n \n
\n
\n ) : null}\n\n
\n ) : null}\n\n {(this.state.user_id) && (this.state.user_type === \"CSR\") && (this.state.user_type !== \"b2bclient\") && (\n
\n \n \n {referrelFeeLab.name}\n \n \n
\n {referrelFeeLab.type}\n
\n
\n \n {referrelFeeLab && referrelFeeLab.rating && (\n

{referrelFeeLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n)}\n
\n \n
\n )}\n\n {(this.state.user_id) && (this.state.user_type !== \"CSR\") && (this.state.user_type !== \"b2bclient\") && (\n
\n \n \n {referrelFeeLab.name}\n \n \n
\n {referrelFeeLab.type}\n
\n
\n \n {referrelFeeLab && referrelFeeLab.rating && (\n

{referrelFeeLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n)}\n
\n \n
\n )}\n\n {(this.state.user_id) && (this.state.user_type !== \"CSR\") && (this.state.user_type === \"b2bclient\") && (\n
\n \n \n {referrelFeeLab.name}\n \n \n
\n {referrelFeeLab.type}\n
\n
\n \n {referrelFeeLab && referrelFeeLab.rating && (\n

{referrelFeeLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n)}\n
\n \n
\n )}\n
\n {!isEmpty(referrelFeeLab.offered_tests) &&\n referrelFeeLab.offered_tests.map(\n (offeredTest, index) => (\n
{offeredTest.test_name}
\n )\n )}\n
\n {!isEmpty(referrelFeeLab.offered_tests) &&\n referrelFeeLab.offered_tests.map(\n (offeredTest, index) => (\n
\n {\" \"}\n {offeredTest.duration_required}{\" \"}\n {offeredTest.duration_type}\n
\n )\n )}\n
\n {!isEmpty(referrelFeeLab.offered_tests) &&\n referrelFeeLab.offered_tests.map(\n (offeredTest, index) => (\n
\n {\" \"}\n {offeredTest.price\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n
\n )\n )}\n
\n {!isEmpty(referrelFeeLab.offered_tests) &&\n referrelFeeLab.offered_tests.map((offeredTest, index) => (\n // Use a Fragment to avoid wrapping with a div\n
\n {((offeredTest.discount + (offeredTest.discount_by_labhazir || 0) + (offeredTest.test_discount || 0)) !== 0) ? (\n \n {((offeredTest.discount + (offeredTest.discount_by_labhazir || 0) + (offeredTest.test_discount || 0)) * 100)} %\n \n ) : (\n '--'\n )}\n
\n ))}\n
\n {referrelFeeLab.offered_tests\n .map((offeredTest, index) => {\n const discountByTest = offeredTest.discount || 0;\n const discountByLabhazir = offeredTest.discount_by_labhazir || 0;\n const totalDiscount = discountByTest + discountByLabhazir;\n const discountedPrice =\n offeredTest.price -\n (offeredTest.price * (totalDiscount * 100)) / 100;\n\n return (\n
\n {discountedPrice\n .toFixed(2)\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n
\n );\n })}\n
\n
\n {referrelFeeLab.offered_tests\n .reduce((total, offeredTest) => {\n const discountByTest = offeredTest.discount || 0;\n const discountByLabhazir = offeredTest.discount_by_labhazir || 0;\n const totalDiscount = discountByTest + discountByLabhazir;\n const discountedPrice = (\n offeredTest.price -\n (offeredTest.price * (totalDiscount * 100)) / 100\n );\n return total + Number(discountedPrice);\n }, 0)\n .toFixed(2)\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n
\n {\n this.handleAddToCart(referrelFeeLab);\n }}\n >\n Add to cart\n \n \n {(() => {\n // Check if all offeredTest.id in this row are already in this.props.carts\n const areAllTestIdsInCart = referrelFeeLab.offered_tests.every(offeredTest =>\n this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id)\n );\n\n console.log(\"all present have or not\", areAllTestIdsInCart);\n\n return (\n {\n const areAllTestIdsInCart = referrelFeeLab.offered_tests.every(offeredTest =>\n this.props.carts.some(cartItem => cartItem.test_name === offeredTest.test_name)\n );\n if (areAllTestIdsInCart) {\n alert(\"An item with the same name but from a different lab is already in the cart. Please remove the previous one first.\");\n } else {\n this.handleAddToCart(referrelFeeLab);\n }\n }}\n disabled={areAllTestIdsInCart}\n style={{\n backgroundColor: 'primary', // Primary color\n borderColor: 'primary', // Primary color\n fontSize: '10px',\n }}\n >\n {areAllTestIdsInCart ? 'Already Added' : 'Add to cart'}\n \n );\n })()}\n
\n
\n\n ) : (\n
\n \n \n \n \n \n \n \n {/* */}\n \n \n \n \n \n \n
\n

\n Select Your Location or City and Test Names to book an appointment.\n

\n
\n
Lab NameTest NameReporting TimePrice Total Price Discount (Rs) Price after Discount\n Net Payable\n
\n
\n )}\n\n
\n
\n
\n
\n
\n
\n );\n }\n}\n\nMedicalTestList.propTypes = {\n match: PropTypes.object,\n location: any,\n onlyMedicalTestList: PropTypes.array,\n className: PropTypes.any,\n menuOpen: PropTypes.any,\n quotes: PropTypes.array,\n onGetQuotes: PropTypes.func,\n onGetonlyMedicalTestList: PropTypes.func,\n onGetTerritoriesList: PropTypes.func,\n territoriesList: PropTypes.array,\n onAddToCart: PropTypes.func,\n success: PropTypes.any,\n error: PropTypes.any,\n carts: PropTypes.any,\n onGetCarts: PropTypes.func,\n};\nconst mapStateToProps = ({\n onlyMedicalTestList,\n territoriesList,\n quotes,\n carts,\n}) => ({\n onlyMedicalTestList: onlyMedicalTestList.onlyMedicalTestList,\n territoriesList: territoriesList.territoriesList,\n quotes: quotes.quotes,\n success: carts.success,\n error: carts.error,\n carts: carts.carts,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetonlyMedicalTestList: () => dispatch(onlyMedicalTestList()),\n onGetTerritoriesList: id => dispatch(getTerritoriesList(id)),\n onGetQuotes: (city_id, test_id, search_type, address, longitude, latitude, km, locationAccessAllowed) => dispatch(getQuotes(city_id, test_id, search_type, address, longitude, latitude, km, locationAccessAllowed)),\n onAddToCart: (cart, id) => dispatch(addToCart(cart, id)),\n onGetCarts: id => dispatch(getCarts(id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(MedicalTestList));","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\n//Import Star Ratings\nimport StarRatings from \"react-star-ratings\";\n\nimport { connect } from \"react-redux\";\nimport { Media } from \"reactstrap\";\nimport { map } from \"lodash\";\n\nimport { withRouter } from \"react-router-dom\";\nimport { withTranslation } from \"react-i18next\";\n\nimport { Row, Col, Card, CardBody } from \"reactstrap\";\n\nimport { getFeedbacks } from \"store/feedbacks/actions\";\nimport moment from 'moment';\n\n\nclass FeedbackDetail extends Component {\n constructor(props) {\n super(props);\n this.state = {\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n patient_name: \"\",\n rating: \"\",\n review: \"\",\n };\n }\n componentDidMount() {\n this.props.getFeedbacks(this.props.match.params.lab_account_id);\n }\n\n render() {\n return (\n \n {this.props.feedbacks.length > 0 && (\n \n \n
\n
Reviews :
\n {map(this.props.feedbacks, (feedback, k) => (\n \n
\n \n {feedback.patient_name.slice(0, 1)}\n \n
\n\n \n {this.state.user_id == feedback.patient_account_id ? (\n
Your Comment
\n ) : (\n
\n {feedback.patient_name}\n
\n )}\n\n \n \n
\n \n
\n \n \n
\n \n {/* {feedback.date} */}\n {/* {new Date(feedback.rated_at).toLocaleString(\n \"en-US\"\n )} */}\n {moment(feedback.rated_at).format(\"DD MMM YYYY, h:mm A\")}\n
\n \n
\n\n

{feedback.review}

\n\n {/* {comment.childComment\n ? comment.childComment.map((child, key) => (\n \n \n \n
\n {child.name}\n
\n

{child.description}

\n
    \n
  • \n \n Like\n \n
  • \n
  • \n \n {\" \"}\n Comment\n \n
  • \n
\n
\n {\" \"}\n {child.date}\n
\n
\n
\n ))\n : null} */}\n
\n \n ))}\n
\n
\n
\n )}\n
\n );\n }\n}\n\nFeedbackDetail.propTypes = {\n product: PropTypes.object,\n match: PropTypes.object,\n className: PropTypes.any,\n error: PropTypes.any,\n feedbacks: PropTypes.any,\n getFeedbacks: PropTypes.func,\n feedbacks: PropTypes.array,\n};\n\nconst mapStateToProps = state => {\n const { error, feedbacks } = state.feedbacks;\n return { error, feedbacks };\n};\n\nexport default withRouter(\n connect(mapStateToProps, { getFeedbacks })(withTranslation()(FeedbackDetail))\n);\n","import React, { Component } from \"react\";\nimport PropTypes, { number, string } from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\nimport Select from \"react-select\";\nimport { Collapse } from \"reactstrap\";\n\nimport * as Yup from \"yup\";\n\nimport { connect } from \"react-redux\";\nimport { Media } from \"reactstrap\";\nimport { map } from \"lodash\";\n\nimport FeedbackDetail from \"pages/Feedbacks-List/FeedbackDetail\";\n\nimport { withRouter } from \"react-router-dom\";\nimport { withTranslation } from \"react-i18next\";\nimport \"./nearbylabs.scss\";\n//Import Star Ratings\nimport StarRatings from \"react-star-ratings\";\n\nimport { Container, Row, Col, Card, CardBody, Button } from \"reactstrap\";\nimport { Link } from \"react-router-dom\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport { getLabProfile } from \"store/auth/labprofile/actions\";\nimport { getPatientProfile } from \"store/labmarket/actions\";\n\nclass NearbyLabDetail extends Component {\n constructor(props) {\n super(props);\n this.state = {\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n // guest_id: localStorage.getItem(\"guest_id\")\n // ? JSON.parse(localStorage.getItem(\"guest_id\")).guest_id\n // : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n activeTab: \"1\",\n logo: \"\",\n name: \"\",\n rating: undefined,\n address: \"\",\n city: \"\",\n phone: \"\",\n email: \"\",\n offered_tests: \"\",\n offered_profiles: \"\",\n offered_packages: \"\",\n offered_radiologies: \"\",\n pathologists: \"\",\n quality_certificates: \"\",\n sample_collectors: \"\",\n patientProfile: [],\n\n };\n }\n componentDidMount() {\n this.props.getLabProfile(this.props.match.params.lab_account_id);\n console.log(\"hehe gid\", this.props.match.params.guest_id);\n console.log(\"hehe uid\", this.props.match.params.uuid);\n console.log(\"hehe fid\", this.props.match.params.filnalurl);\n const { patientProfile, getPatientProfile } = this.props;\n getPatientProfile(this.state.user_id);\n this.setState({\n patientProfile\n });\n console.log(\"state\", patientProfile);\n }\n\n render() {\n const isSmallScreen = window.innerWidth < 490;\n const { getPatientProfile } = this.props;\n const { patientProfile } = this.props;\n return (\n \n {this.props.patientProfile && this.props.patientProfile.corporate_id == \"undefined\" && this.props.patientProfile.is_assosiatewith_anycorporate == false ? (\n
\n
\n \n {this.state.user_id &&\n this.state.user_type === \"CSR\" &&\n this.state.user_type !== \"b2bclient\" ? (\n \n
    \n
  • \n \n Book a Test\n \n
  • \n
  • \n \n Labs\n \n
  • \n\n
  • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n \n My Appointments\n \n \n
  • \n )}\n
\n \n ) : null}\n {!this.state.user_id ? (\n \n
    \n
  • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Labs\n \n
  • \n\n
  • \n {/* \n {this.props.t(\"Search by Tests\")}\n */}\n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n\n {/*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
    \n
  • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n \n My Appointments\n \n \n
  • \n /*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
    \n
  • */\n )}\n
\n \n ) : this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type !== \"b2bclient\" ? (\n \n
    \n
  • \n \n Book a Test\n \n
  • \n
  • \n \n Labs\n {/* {this.props.t(\"Labs\")} */}\n \n
  • \n\n
  • \n {/* \n {this.props.t(\"Search by Tests\")}\n */}\n \n {/* {this.props.t(\"Tests\")} */}\n Tests\n \n
  • \n
  • \n \n {/* {this.props.t(\"Profiles\")} */}\n Profiles\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n\n\n\n {/*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
    \n
  • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n \n My Appointments\n \n \n
  • \n /*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
    \n
  • */\n )}\n
\n \n ) : this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type === \"b2bclient\" ? (\n \n
    \n
  • \n \n Book a Test\n \n
  • \n
  • \n \n Labs\n \n
  • \n\n
  • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n \n My Appointments\n \n \n
  • \n )}\n
\n \n ) : null}\n \n
\n
) : (\n null\n )}\n
\n \n Nearby Lab Detail | Lab Hazir - Dashboard\n \n\n {this.props.success ? (\n \n \n {!isSmallScreen ? (\n \n \n \n \n
\n \n \n
\n {!this.state.user_id ? (\n \n
\n {(this.props.success.offered_tests === true && this.props.patientProfile && !this.props.patientProfile.corporate_id && !this.props.patientProfile.is_assosiatewith_anycorporate && !this.props.patientProfile.employee_id_card) ? (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-test-by-lab/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-test-by-lab/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Tests\n \n ) : this.props.success.offered_tests === true && this.props.patientProfile && this.props.patientProfile.corporate_id && this.props.patientProfile.is_assosiatewith_anycorporate && this.props.patientProfile.employee_id_card ? (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-test-by-lab-corporate/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-test-by-lab-corporate/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Tests\n \n ) : null}\n\n {this.props.success.offered_tests === false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Tests have not been entered yet!\");\n\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n Offered Tests\n \n )}\n
\n
\n {this.props.success.offered_profiles ===\n true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-profile-by-lab/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-profile-by-lab/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Profiles{\" \"}\n \n )}\n {this.props.success.offered_profiles ===\n false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Profiles not yet entered!\");\n\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n\n >\n \n Offered Profiles{\" \"}\n \n )}\n
\n
\n {this.props.success.offered_packages ===\n true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-package-by-lab/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-package-by-lab/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Packages\n \n )}\n {this.props.success.offered_packages ===\n false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Packages not yet entered!\");\n\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Offered Packages{\" \"}\n \n )}\n
\n
\n {this.props.success\n .offered_radiologies === true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-radiology-by-lab/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-radiology-by-lab/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Radiology{\" \"}\n \n )}\n {this.props.success.offered_radiologies === false && (\n
\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Radiology not yet entered!\");\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Offered Radiology{\" \"}\n \n
\n )}\n\n
\n
\n {this.props.success\n .sample_collectors === true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/lab-sample-collectors/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/lab-sample-collectors/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Sample-Collectors{\" \"}\n \n )}\n {this.props.success\n .sample_collectors === false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Sample Collectors not yet entered!\");\n\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Sample-Collectors{\" \"}\n \n )}\n
\n
\n {this.props.success.pathologists ===\n true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/lab-pathologists/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/lab-pathologists/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Pathologists{\" \"}\n \n )}\n {this.props.success.pathologists ===\n false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Pathologists not yet entered!\");\n\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Pathologists{\" \"}\n \n )}\n
\n
\n {this.props.success\n .quality_certificates === true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/lab-quality-certificates/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/lab-quality-certificates/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Quality-Certificates{\" \"}\n \n )}\n {this.props.success\n .quality_certificates === false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Quality Certificates not yet entered!\");\n\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Quality-Certificates{\" \"}\n \n )}\n
\n
\n ) : null}\n {this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type !== \"b2bclient\" ? (\n \n
\n {/* {this.props.success.offered_tests === true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-test-by-lab/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-test-by-lab`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n\n >\n \n Offered Tests\n \n )} */}\n {(this.props.success.offered_tests === true && this.props.patientProfile && !this.props.patientProfile.corporate_id && !this.props.patientProfile.is_assosiatewith_anycorporate && !this.props.patientProfile.employee_id_card) ? (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-test-by-lab/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-test-by-lab`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Tests\n \n ) : this.props.success.offered_tests === true && this.props.patientProfile && this.props.patientProfile.corporate_id && this.props.patientProfile.is_assosiatewith_anycorporate && this.props.patientProfile.employee_id_card ? (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-test-by-lab-corporate/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-test-by-lab-corporate`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Tests\n \n ) : null}\n {this.props.success.offered_tests === false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Tests have not been entered yet!\");\n\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n Offered Tests\n \n )}\n
\n\n\n \n
\n {(this.props.success.offered_profiles === true && this.props.patientProfile && !this.props.patientProfile.corporate_id && !this.props.patientProfile.is_assosiatewith_anycorporate && !this.props.patientProfile.employee_id_card) ? (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-profile-by-lab/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-profile-by-lab`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Profiles{\" \"}\n \n ) : this.props.success.offered_profiles === true && this.props.patientProfile && this.props.patientProfile.corporate_id && this.props.patientProfile.is_assosiatewith_anycorporate && this.props.patientProfile.employee_id_card ? (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-profile-by-lab-corporate/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-profile-by-lab-corporate`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Profiles{\" \"}\n \n ) : null}\n {this.props.success.offered_profiles ===\n false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Profiles not yet entered!\");\n\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n\n >\n \n Offered Profiles{\" \"}\n \n )}\n
\n
\n {(this.props.success.offered_packages === true && this.props.patientProfile && !this.props.patientProfile.corporate_id && !this.props.patientProfile.is_assosiatewith_anycorporate && !this.props.patientProfile.employee_id_card) ? (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-package-by-lab/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-package-by-lab`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Packages\n \n ) : this.props.success.offered_packages === true && this.props.patientProfile && this.props.patientProfile.corporate_id && this.props.patientProfile.is_assosiatewith_anycorporate && this.props.patientProfile.employee_id_card ? (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-package-by-lab-corporate/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-package-by-lab-corporate`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Packages{\" \"}\n \n ) : null}\n {this.props.success.offered_packages ===\n false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Packages not yet entered!\");\n\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Offered Packages{\" \"}\n \n )}\n
\n
\n {(this.props.success.offered_radiologies === true && this.props.patientProfile && !this.props.patientProfile.corporate_id && !this.props.patientProfile.is_assosiatewith_anycorporate && !this.props.patientProfile.employee_id_card) ? (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-radiology-by-lab/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-radiology-by-lab`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Radiology{\" \"}\n \n ) : this.props.success.offered_radiologies === true && this.props.patientProfile && this.props.patientProfile.corporate_id && this.props.patientProfile.is_assosiatewith_anycorporate && this.props.patientProfile.employee_id_card ? (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-radiology-by-lab-corporate/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-radiology-by-lab-corporate`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Radiology{\" \"}\n \n ) : null}\n {this.props.success.offered_radiologies === false && (\n
\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Radiology not yet entered!\");\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Offered Radiology{\" \"}\n \n
\n )}\n\n
\n
\n {this.props.success\n .sample_collectors === true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/lab-sample-collectors/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/lab-sample-collectors`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Sample-Collectors{\" \"}\n \n )}\n {this.props.success\n .sample_collectors === false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Sample Collectors not yet entered!\");\n\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Sample-Collectors{\" \"}\n \n )}\n
\n
\n {this.props.success.pathologists ===\n true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/lab-pathologists/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/lab-pathologists`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Pathologists{\" \"}\n \n )}\n {this.props.success.pathologists ===\n false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Pathologists not yet entered!\");\n\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Pathologists{\" \"}\n \n )}\n
\n
\n {this.props.success\n .quality_certificates === true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/lab-quality-certificates/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/lab-quality-certificates`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Quality-Certificates{\" \"}\n \n )}\n {this.props.success\n .quality_certificates === false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Quality Certificates not yet entered!\");\n\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Quality-Certificates{\" \"}\n \n )}\n
\n
\n ) : null}\n {this.state.user_id &&\n this.state.user_type === \"CSR\" &&\n this.state.user_type !== \"b2bclient\" ? (\n \n
\n {/* {this.props.success.offered_tests === true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-test-by-lab/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-test-by-lab/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n\n >\n \n Offered Tests\n \n )} */}\n {(this.props.success.offered_tests === true && this.props.patientProfile && !this.props.patientProfile.corporate_id && !this.props.patientProfile.is_assosiatewith_anycorporate && !this.props.patientProfile.employee_id_card) ? (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-test-by-lab/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-test-by-lab/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Tests\n \n ) : this.props.success.offered_tests === true && this.props.patientProfile && this.props.patientProfile.corporate_id && this.props.patientProfile.is_assosiatewith_anycorporate && this.props.patientProfile.employee_id_card ? (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-test-by-lab-corporate/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-test-by-lab-corporate/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Tests\n \n ) : null}\n {this.props.success.offered_tests === false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Tests have not been entered yet!\");\n\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n Offered Tests\n \n )}\n
\n
\n {this.props.success.offered_profiles ===\n true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-profile-by-lab/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-profile-by-lab/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Profiles{\" \"}\n \n )}\n {this.props.success.offered_profiles ===\n false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Profiles not yet entered!\");\n\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n\n >\n \n Offered Profiles{\" \"}\n \n )}\n
\n
\n {this.props.success.offered_packages ===\n true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-package-by-lab/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-package-by-lab/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Packages\n \n )}\n {this.props.success.offered_packages ===\n false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Packages not yet entered!\");\n\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Offered Packages{\" \"}\n \n )}\n
\n
\n {this.props.success\n .offered_radiologies === true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-radiology-by-lab/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-radiology-by-lab/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Radiology{\" \"}\n \n )}\n {this.props.success.offered_radiologies === false && (\n
\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Radiology not yet entered!\");\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Offered Radiology{\" \"}\n \n
\n )}\n\n
\n
\n {this.props.success\n .sample_collectors === true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/lab-sample-collectors/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/lab-sample-collectors/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Sample-Collectors{\" \"}\n \n )}\n {this.props.success\n .sample_collectors === false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Sample Collectors not yet entered!\");\n\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Sample-Collectors{\" \"}\n \n )}\n
\n
\n {this.props.success.pathologists ===\n true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/lab-pathologists/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/lab-pathologists/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Pathologists{\" \"}\n \n )}\n {this.props.success.pathologists ===\n false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Pathologists not yet entered!\");\n\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Pathologists{\" \"}\n \n )}\n
\n
\n {this.props.success\n .quality_certificates === true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/lab-quality-certificates/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/lab-quality-certificates/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Quality-Certificates{\" \"}\n \n )}\n {this.props.success\n .quality_certificates === false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Quality Certificates not yet entered!\");\n\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Quality-Certificates{\" \"}\n \n )}\n
\n
\n ) : null}\n\n {this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type === \"b2bclient\" ? (\n \n
\n {/* {this.props.success.offered_tests === true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-test-by-lab/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-test-by-lab/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n\n >\n \n Offered Tests\n \n )} */}\n {(this.props.success.offered_tests === true && this.props.patientProfile && !this.props.patientProfile.corporate_id && !this.props.patientProfile.is_assosiatewith_anycorporate && !this.props.patientProfile.employee_id_card) ? (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-test-by-lab/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-test-by-lab/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Tests\n \n ) : this.props.success.offered_tests === true && this.props.patientProfile && this.props.patientProfile.corporate_id && this.props.patientProfile.is_assosiatewith_anycorporate && this.props.patientProfile.employee_id_card ? (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-test-by-lab-corporate/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-test-by-lab-corporate/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Tests\n \n ) : null}\n {this.props.success.offered_tests === false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Tests have not been entered yet!\");\n\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n Offered Tests\n \n )}\n
\n
\n {this.props.success.offered_profiles ===\n true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-profile-by-lab/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-profile-by-lab/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Profiles{\" \"}\n \n )}\n {this.props.success.offered_profiles ===\n false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Profiles not yet entered!\");\n\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n\n >\n \n Offered Profiles{\" \"}\n \n )}\n
\n
\n {this.props.success.offered_packages ===\n true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-package-by-lab/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-package-by-lab/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Packages\n \n )}\n {this.props.success.offered_packages ===\n false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Packages not yet entered!\");\n\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Offered Packages{\" \"}\n \n )}\n
\n
\n {this.props.success\n .offered_radiologies === true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-radiology-by-lab/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-radiology-by-lab/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n \n Offered Radiology{\" \"}\n \n )}\n {this.props.success.offered_radiologies === false && (\n
\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Radiology not yet entered!\");\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Offered Radiology{\" \"}\n \n
\n )}\n\n
\n
\n {this.props.success\n .sample_collectors === true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/lab-sample-collectors/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/lab-sample-collectors/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Sample-Collectors{\" \"}\n \n )}\n {this.props.success\n .sample_collectors === false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Sample Collectors not yet entered!\");\n\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Sample-Collectors{\" \"}\n \n )}\n
\n
\n {this.props.success.pathologists ===\n true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/lab-pathologists/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/lab-pathologists/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Pathologists{\" \"}\n \n )}\n {this.props.success.pathologists ===\n false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Pathologists not yet entered!\");\n\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Pathologists{\" \"}\n \n )}\n
\n
\n {this.props.success\n .quality_certificates === true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/lab-quality-certificates/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/lab-quality-certificates/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Quality-Certificates{\" \"}\n \n )}\n {this.props.success\n .quality_certificates === false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Quality Certificates not yet entered!\");\n\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"80%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {\" \"}\n Quality-Certificates{\" \"}\n \n )}\n
\n
\n ) : null}\n
\n \n \n \n \n
\n\n
\n {!this.state.user_id && (\n \n {\" \"}\n Continue Browsing{\" \"}\n \n )}\n {this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type !== \"b2bclient\" && this.props.patientProfile &&\n !this.props.patientProfile.corporate_id && !this.props.patientProfile.is_assosiatewith_anycorporate && !this.props.patientProfile.employee_id_card && (\n\n \n {\" \"}\n Continue Browsing{\" \"}\n \n )}\n {this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type !== \"b2bclient\" && \n this.props.patientProfile &&\n this.props.patientProfile.corporate_id && this.props.patientProfile.is_assosiatewith_anycorporate && this.props.patientProfile.employee_id_card && (\n \n {\" \"}\n Continue Browsing{\" \"}\n \n )}\n {this.state.user_id &&\n this.state.user_type === \"CSR\" &&\n this.state.user_type !== \"b2bclient\" && (\n \n {\" \"}\n Continue Browsing{\" \"}\n \n )}\n {this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type === \"b2bclient\" && (\n \n {\" \"}\n Continue Browsing{\" \"}\n \n )}\n \n Locate to\n the Lab\n \n {/* {(this.props.success.complaint_handling_email ||\n this.props.success\n .complaint_handling_phone) && (\n
\n
Help & Support
\n {this.props.success\n .complaint_handling_email && (\n

\n \n {\n this.props.success\n .complaint_handling_email\n }\n

\n )}\n\n {this.props.success\n .complaint_handling_phone && (\n

\n \n {\n this.props.success\n .complaint_handling_phone\n }\n

\n )}\n
\n )} */}\n {/*
*/}\n
\n \n \n

{this.props.success.name}

\n {this.props.success ? (\n
\n \n
\n ) : null}\n\n

\n {this.props.success.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n

\n \n {this.props.success.address}\n

\n

\n {\" \"}\n {this.props.success.city}\n

\n

\n \n {this.props.success.landline}\n

\n

\n \n {this.props.success.email}\n

\n

\n \n We have {this.props.success.lab_experience}{\" \"}\n years of experience in the market\n

\n
\n \n \n
\n
\n
\n\n {/* Insert Review Section */}\n \n \n
\n ) :\n \n \n \n \n
\n \n \n {/*
\n \n
*/}\n \n \n
\n\n
\n {!this.state.user_id && (\n \n {\" \"}\n Continue Browsing{\" \"}\n \n )}\n {this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type !== \"b2bclient\" && \n this.props.patientProfile &&\n !this.props.patientProfile.corporate_id && !this.props.patientProfile.is_assosiatewith_anycorporate && !this.props.patientProfile.employee_id_card && (\n\n \n {\" \"}\n Continue Browsing{\" \"}\n \n )}\n {this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type !== \"b2bclient\" && \n this.props.patientProfile &&\n this.props.patientProfile.corporate_id && this.props.patientProfile.is_assosiatewith_anycorporate && this.props.patientProfile.employee_id_card && (\n \n {\" \"}\n Continue Browsing{\" \"}\n \n )}\n {this.state.user_id &&\n this.state.user_type === \"CSR\" &&\n this.state.user_type !== \"b2bclient\" && (\n \n {\" \"}\n Continue Browsing{\" \"}\n \n )}\n {this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type === \"b2bclient\" && (\n \n {\" \"}\n Continue Browsing{\" \"}\n \n )}\n \n \n Locate to\n the Lab\n \n {/* {(this.props.success.complaint_handling_email ||\n this.props.success\n .complaint_handling_phone) && (\n
\n
Help & Support
\n {this.props.success\n .complaint_handling_email && (\n

\n \n {\n this.props.success\n .complaint_handling_email\n }\n

\n )}\n\n {this.props.success\n .complaint_handling_phone && (\n

\n \n {\n this.props.success\n .complaint_handling_phone\n }\n

\n )}\n
\n )} */}\n {/*
*/}\n
\n\n \n \n
\n {/* {this.props.success.offered_tests === true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-test-by-lab/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-test-by-lab/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"100%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n\n >\n {/* */}\n {/* Offered Tests\n \n )} */}\n {(this.props.success.offered_tests === true && this.props.patientProfile && !this.props.patientProfile.corporate_id && !this.props.patientProfile.is_assosiatewith_anycorporate && !this.props.patientProfile.employee_id_card) ? (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-test-by-lab/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-test-by-lab/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"100%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {/* */}\n Offered Tests{\" \"}\n \n ) : this.props.success.offered_tests === true && this.props.patientProfile && this.props.patientProfile.corporate_id && this.props.patientProfile.is_assosiatewith_anycorporate && this.props.patientProfile.employee_id_card ? (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-test-by-lab-corporate/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-test-by-lab-corporate/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"100%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {/* */}\n Offered Tests{\" \"}\n \n ) : null}\n {this.props.success.offered_tests === false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Tests have not been entered yet!\");\n\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"100%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {/* */}\n Offered Tests{\" \"}\n \n )}\n
\n
\n {this.props.success.offered_profiles ===\n true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-profile-by-lab/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-profile-by-lab/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"100%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {/* */}\n Offered Profiles{\" \"}\n \n )}\n {this.props.success.offered_profiles ===\n false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Profiles not yet entered!\");\n\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"100%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n\n >\n {/* */}\n Offered Profiles{\" \"}\n \n )}\n
\n
\n {this.props.success.offered_packages ===\n true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-package-by-lab/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-package-by-lab/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"100%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {/* */}\n Offered Packages\n \n )}\n {this.props.success.offered_packages ===\n false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Packages not yet entered!\");\n\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"100%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {/* {\" \"} */}\n Offered Packages{\" \"}\n \n )}\n
\n
\n {this.props.success\n .offered_radiologies === true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/offered-radiology-by-lab/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/offered-radiology-by-lab/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"100%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {/* */}\n Offered Radiology{\" \"}\n \n )}\n {this.props.success.offered_radiologies === false && (\n
\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Radiology not yet entered!\");\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"100%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {/* {\" \"} */}\n Offered Radiology{\" \"}\n \n
\n )}\n\n
\n
\n {this.props.success\n .sample_collectors === true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/lab-sample-collectors/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/lab-sample-collectors/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"100%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {/* {\" \"} */}\n Sample-Collectors{\" \"}\n \n )}\n {this.props.success\n .sample_collectors === false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Sample Collectors not yet entered!\");\n\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"100%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {/* {\" \"} */}\n Sample-Collectors{\" \"}\n \n )}\n
\n
\n {this.props.success.pathologists ===\n true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/lab-pathologists/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/lab-pathologists/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"100%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {/* {\" \"} */}\n Pathologists{\" \"}\n \n )}\n {this.props.success.pathologists ===\n false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Pathologists not yet entered!\");\n\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"100%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {/* {\" \"} */}\n Pathologists{\" \"}\n \n )}\n
\n
\n {this.props.success\n .quality_certificates === true && (\n {\n // Add the logic you want to execute when the button is clicked\n // You can use the history object to navigate to a different route if needed\n this.props.history.push(\n this.props.match.params.uuid\n ? `/${this.props.match.params.lab_account_id}/lab-quality-certificates/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${this.props.match.params.lab_account_id}/lab-quality-certificates/${this.props.match.params.guest_id}`\n );\n }}\n // Add any other button styling or attributes as needed\n className=\"btn btn-primary btn-md\"\n style={{ width: \"100%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {/* {\" \"} */}\n Quality-Certificates{\" \"}\n \n )}\n {this.props.success\n .quality_certificates === false && (\n {\n // Add the logic you want to execute when the button is clicked\n alert(\"Quality Certificates not yet entered!\");\n\n }}\n className=\"btn btn-secondary btn-md\"\n style={{ width: \"100%\", textAlign: \"left\" }} // Set inline style to ensure the same width\n >\n {/* {\" \"} */}\n Quality-Certificates{\" \"}\n \n )}\n
\n \n
\n

{this.props.success.name}

\n {this.props.success ? (\n
\n \n
\n ) : null}\n\n

\n {this.props.success.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n

\n \n {this.props.success.address}\n

\n

\n {\" \"}\n {this.props.success.city}\n

\n

\n \n {this.props.success.landline}\n

\n

\n \n {this.props.success.email}\n

\n

\n \n We have {this.props.success.lab_experience}{\" \"}\n years of experience in the market\n

\n
\n
\n \n
\n
\n
\n\n {/* Insert Review Section */}\n \n \n
\n }\n
\n ) : null}\n
\n
\n );\n }\n}\n\nNearbyLabDetail.propTypes = {\n product: PropTypes.object,\n match: PropTypes.object,\n className: PropTypes.any,\n error: PropTypes.any,\n success: PropTypes.any,\n getLabProfile: PropTypes.func,\n onGetProductDetail: PropTypes.func,\n comments: PropTypes.array,\n menuOpen: PropTypes.any,\n t: PropTypes.any,\n history: PropTypes.any,\n patientProfile: PropTypes.array,\n getPatientProfile: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const patientProfile = state.LabMarket.patientProfile; // Corrected assignment\n const { error, success } = state.LabProfile;\n return { error, success, patientProfile };\n};\n\nexport default withRouter(\n connect(mapStateToProps, { getLabProfile, getPatientProfile, })(\n withTranslation()(NearbyLabDetail)\n )\n);\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\n// import Select from \"react-select\";\nimport { Formik, Field, Form } from \"formik\";\nimport ScrollButton from \"components/Common/Scrollbutton\";\nimport * as Yup from \"yup\";\nimport MetaTags from \"react-meta-tags\";\nimport { connect } from \"react-redux\";\nimport { Redirect, Link, withRouter } from \"react-router-dom\";\nimport { v4 as uuidv4 } from 'uuid';\nimport { Collapse } from \"reactstrap\";\nimport classname from \"classnames\";\nimport logo from \"../../../assets/images/logo.svg\";\nimport logoLight from \"../../../assets/images/logo-light.png\";\nimport logoLightSvg from \"../../../assets/images/logo-light.svg\";\nimport Select, { components } from 'react-select';\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport \"../../../components/HorizontalLayout/horizontal-navbar.scss\";\nimport {\n Card,\n CardBody,\n CardTitle,\n Col,\n Modal,\n ModalBody,\n ModalHeader,\n Container,\n Button,\n Input,\n Label,\n Pagination,\n PaginationItem,\n PaginationLink,\n Row,\n} from \"reactstrap\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\n//Import Star Ratings\nimport StarRatings from \"react-star-ratings\";\n\n// RangeSlider\nimport Nouislider from \"nouislider-react\";\nimport \"nouislider/distribute/nouislider.css\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\n//Import data\nimport { productsData } from \"common/data\";\nimport { getPatientProfile } from \"store/labmarket/actions\";\n\n//Import actions\nimport { getCorporateLabs, getAdvLive } from \"store/labmarket/actions\";\nimport { any } from \"prop-types\";\nimport \"./nearbylabs.scss\";\n\nimport { CITIES } from \"helpers/global_variables_helper\";\nimport { getTerritoriesList } from \"store/territories-list/actions\";\nimport { getLabNamesList } from \"store/lab-names/actions\";\n\nimport offeredTestsList from \"pages/OfferedTests/offered-tests-list\";\n\nfunction formatTime(timeString) {\n const [hours, minutes] = timeString.split(':');\n const date = new Date(2000, 0, 1, parseInt(hours), parseInt(minutes), 0);\n\n // Convert to 12-hour format with AM/PM\n const formattedTime = date.toLocaleString('en-US', {\n hour: 'numeric',\n minute: 'numeric',\n hour12: true,\n timeZone: 'Asia/Karachi', // Adjust to the desired time zone (Islamabad)\n });\n\n return formattedTime;\n}\n\n\nclass NearbyLabs extends Component {\n constructor(props) {\n super(props);\n this.state = {\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n patient_name: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).patient_name\n : \"\",\n position: \"right\",\n ratingvalues: [],\n locationAccessAllowed: \"\",\n corporatepatient: \"\",\n corporateLab: [],\n patientProfile: [],\n advLives: [],\n territoriesList: [],\n labNamesList: [],\n selectedLabName: \"\", // State to store the selected lab name\n filteredLabs: [], // State to store the filtered labs\n labNameInput: '', // Store the lab name input by the user\n filteredLabNames: [],\n name: \"\",\n advLive: \"\",\n activeTab: \"1\",\n address: \"\",\n search_type: \"\",\n city: \"\",\n latitude: \"\",\n km: \"30\",\n LabType: \"\",\n longitude: \"\",\n location: \"\",\n currentLatitude: \"\",\n currentLongitude: \"\",\n discountData: [],\n loading: true, // Add loading state property\n filters: {\n discount: [],\n price: { min: 0, max: 500 },\n },\n page: 1,\n totalPage: 5, //replace this with total pages of data\n };\n this.toggleTab = this.toggleTab.bind(this);\n this.onSelectRating = this.onSelectRating.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n console.log(\"yaha ani chahi hai uuid\", this.props.match.params.uuid, this.state.user_id, this.props.match.params.filnalurl)\n console.log(this.state.user_type)\n }\n\n componentDidMount() {\n\n const { onGetPatientProfile } = this.props;\n\n // Assuming onGetPatientProfile is synchronous\n console.log(\"this is patient profile\", onGetPatientProfile(this.state.user_id));\n\n // Now you can safely access patientProfile from props\n const { patientProfile } = this.props;\n const {\n onGetCorporateLabs,\n } = this.props;\n const { territoriesList, onGetTerritoriesList } = this.props;\n if (territoriesList && !territoriesList.length) {\n console.log(onGetTerritoriesList(this.state.user_id));\n }\n const { labNamesList, onGetLabNamesList } = this.props;\n\n if (labNamesList && !labNamesList.length) {\n console.log(onGetLabNamesList(this.state.user_id));\n }\n let matchingMenuItem = null;\n const ul = document.getElementById(\"navigation\");\n const items = ul.getElementsByTagName(\"a\");\n for (let i = 0; i < items.length; ++i) {\n if (this.props.location.pathname === items[i].pathname) {\n matchingMenuItem = items[i];\n break;\n }\n }\n if (matchingMenuItem) {\n this.activateParentDropdown(matchingMenuItem);\n }\n\n\n\n let latitude;\n let longitude;\n\n const url = window.location.href;\n const queryString = url.substring(url.indexOf('&') + 1);\n const params = new URLSearchParams(queryString);\n console.log(\"print params in app\", url, queryString, params)\n\n const latitudeFromUrl = params.get('lat');\n const longitudeFromUrl = params.get('lon');\n\n console.log('Latitude:', latitudeFromUrl);\n console.log('Longitude:', longitudeFromUrl);\n\n if (latitudeFromUrl && longitudeFromUrl) {\n // Use latitude and longitude from URL\n latitude = parseFloat(latitudeFromUrl);\n longitude = parseFloat(longitudeFromUrl);\n console.log(\"print lat log in app\", latitude, longitude);\n\n // Call the dependent code here or pass the latitude and longitude values as arguments\n this.handleLocationUpdate(latitude, longitude);\n } else {\n if (navigator.geolocation) {\n // const nearbyLabsLocationDetails = {\n // latitude,\n // longitude,\n // search_type: this.state.search_type,\n // address: this.state.address,\n // city: this.state.city,\n // km: this.state.km,\n // LabType: this.state.LabType,\n // name: this.state.name,\n // locationAccessAllowed: this.state.locationAccessAllowed,\n // corporatepatient: this.props.patientProfile.corporate_id,\n // };\n // // Call onGetCorporateLabs before prompting for geolocation\n // onGetCorporateLabs(nearbyLabsLocationDetails);\n // setTimeout(() => {\n // this.setState({ corporateLab: this.props.corporateLab });\n // }, 500);\n navigator.geolocation.getCurrentPosition((position) => {\n latitude = position.coords.latitude;\n longitude = position.coords.longitude;\n console.log(\"web\", latitude, longitude);\n\n this.setState({ currentLatitude: latitude });\n this.setState({ currentLongitude: longitude });\n this.setState({ locationAccessAllowed: true });\n this.setState({ search_type: \"Current Location\" });\n this.setState({ LabType: \"Main\" });\n\n\n // near by labs\n const nearbyLabsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile.corporate_id,\n\n };\n console.log(window.location.href);\n if (latitude && longitude) {\n onGetCorporateLabs(nearbyLabsLocationDetails);\n\n setTimeout(() => {\n this.setState({ corporateLab: this.props.corporateLab });\n }, 500);\n }\n this.setState({ loading: true, corporateLab: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n }, () => {\n this.setState({ latitude: null, longitude: null });\n // near by labs\n const nearbyLabsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile.corporate_id,\n name: this.state.name,\n };\n onGetCorporateLabs(nearbyLabsLocationDetails);\n\n setTimeout(() => {\n this.setState({ corporateLab: this.props.corporateLab });\n }, 500);\n this.setState({ loading: true, corporateLab: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n }\n );\n } else {\n // Geolocation is not supported by the browser\n console.log(\"Geolocation is not supported by the browser.\");\n // Handle this scenario as needed, e.g., display an error message or provide alternative functionality.\n }\n }\n }\n\n // componentWillUnmount() {\n // // Remove the event listener before the component unmounts\n // window.removeEventListener('beforeunload', () => {\n // localStorage.setItem('corporateLab', JSON.stringify(this.state.corporateLab));\n // });\n // }\n\n handleLocationUpdate(latitude, longitude) {\n const { onGetCorporateLabs } = this.props;\n // const guest_id = uuidv4();\n // console.log(\"uuid in nearby lab:\",this.state.user_id)\n\n setTimeout(() => {\n this.setState({ currentLatitude: latitude });\n this.setState({ currentLongitude: longitude });\n // this.setState({ guest_id: guest_id });\n var locationDetails = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile.corporate_id,\n\n };\n if (this.state.currentLatitude && this.state.currentLongitude) {\n onGetCorporateLabs(locationDetails);\n // Clear previous quotes\n setTimeout(() => {\n this.setState({ corporateLab: this.props.corporateLab });\n // console.log(\"guest id in near by labs and backend;\", { corporateLab: this.props.corporateLab, guest_id })\n\n }, 1000);\n this.setState({ loading: true, corporateLab: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n }\n }, 1000);\n }\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { corporateLab } = this.props;\n if (\n isEmpty(prevProps.corporateLab) &&\n !isEmpty(corporateLab) &&\n size(corporateLab) !== size(prevProps.corporateLab)\n ) {\n this.setState({ corporateLab });\n }\n }\n\n toggleTab(tab) {\n if (this.state.activeTab !== tab) {\n this.setState({\n activeTab: tab,\n });\n }\n }\n\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n onSelectDiscount = e => {\n const { value, checked } = e.target;\n const {\n filters,\n filters: { discount },\n } = this.state;\n this.setState(\n {\n filters: {\n ...filters,\n discount: discount.find(item => item === value)\n ? discount.filter(item => item !== value)\n : [...discount, value],\n },\n },\n () => {\n this.onFilterProducts(value, checked);\n }\n );\n };\n\n onFilterProducts = (value, checked) => {\n const {\n filters: { discount },\n } = this.state;\n let filteredProducts = productsData;\n if (!!checked && parseInt(value) === 0) {\n filteredProducts = productsData.filter(\n nearbyLab => nearbyLab.offer < 100\n );\n } else if (discount.length > 0) {\n filteredProducts = productsData.filter(\n nearbyLab => nearbyLab.offer >= Math.min(...discount)\n );\n }\n this.setState({ corporateLab: filteredProducts });\n };\n\n onUpdate = (render, handle, value) => {\n this.setState({\n corporateLab: productsData.filter(\n nearbyLab =>\n nearbyLab.newPrice >= value[0] && nearbyLab.newPrice <= value[1]\n ),\n });\n };\n\n\n /*\n on change rating checkbox method\n */\n onChangeRating = value => {\n this.setState({\n corporateLab: productsData.filter(nearbyLab => nearbyLab.rating >= value),\n });\n\n var modifiedRating = [...this.state.ratingvalues];\n modifiedRating.push(value);\n this.setState({ ratingvalues: modifiedRating });\n };\n\n onSelectRating = value => {\n this.setState({\n corporateLab: productsData.filter(nearbyLab => nearbyLab.rating === value),\n });\n };\n\n onUncheckMark = value => {\n var modifiedRating = [...this.state.ratingvalues];\n const modifiedData = (modifiedRating || []).filter(x => x !== value);\n /*\n find min values\n */\n var filteredProducts = productsData;\n if (modifiedData && modifiedData.length && value !== 1) {\n var minValue = Math.min(...modifiedData);\n if (minValue && minValue !== Infinity) {\n filteredProducts = productsData.filter(\n nearbyLab => nearbyLab.rating >= minValue\n );\n\n this.setState({ ratingvalues: modifiedData });\n }\n } else {\n filteredProducts = productsData;\n }\n this.setState({ corporateLab: filteredProducts });\n };\n\n handlePageClick = page => {\n this.setState({ page });\n };\n\n onChangeAddress = e => {\n const { onGetCorporateLabs } = this.props;\n\n // Apply that city's latitude and longitude as city bound so that we see addresses of that city only\n var cityBounds = new google.maps.LatLngBounds(\n new google.maps.LatLng(this.state.latitude, this.state.longitude)\n );\n\n // Initialize AutocompleteService\n const autocompleteService = new google.maps.places.AutocompleteService();\n\n // Call AutocompleteService to get place predictions\n autocompleteService.getPlacePredictions(\n {\n input: e.target.value,\n bounds: cityBounds,\n types: [\"geocode\", \"establishment\"],\n },\n (predictions, status) => {\n if (status === google.maps.places.PlacesServiceStatus.OK) {\n // Filter predictions to include only those inside Pakistan\n const pakistanPredictions = predictions.filter(prediction => {\n return (\n prediction.structured_formatting.main_text_matched_substrings.some(\n match => match.offset === 0\n ) &&\n prediction.terms.some(term => term.value === \"Pakistan\")\n );\n });\n\n // Handle predictions, e.g., update the state or perform further actions\n const locationDetails = {\n // Extract relevant details from the first prediction\n latitude:\n pakistanPredictions.length > 0\n ? pakistanPredictions[0].geometry.location.lat()\n : \"\",\n longitude:\n pakistanPredictions.length > 0\n ? pakistanPredictions[0].geometry.location.lng()\n : \"\",\n search_type: this.state.search_type,\n address: e.target.value,\n city: this.state.city,\n LabType: this.state.LabType,\n km: this.state.km,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile.corporate_id,\n\n };\n\n // Call the action to get nearby labs\n onGetCorporateLabs(locationDetails);\n\n // Update state after a delay (if needed)\n setTimeout(() => {\n this.setState({ corporateLab: this.props.corporateLab });\n }, 1000);\n } else {\n console.error(\"AutocompleteService failed with status:\", status);\n }\n this.setState({ loading: true, corporateLab: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n }\n );\n };\n\n onChangeSearchType = async e => {\n this.setState({ search_type: e.target.value });\n\n // Call nearby tests API only if the search type changes to current location\n if (e.target.value === \"Current Location\") {\n this.setState({ city: \"\" });\n this.setState({ address: \"\" });\n\n // Check if the geolocation API is supported\n if (\"geolocation\" in navigator) {\n try {\n const locationPermission = await navigator.permissions.query({ name: 'geolocation' });\n\n if (locationPermission.state === 'denied' && !this.state.locationAccessAllowed) {\n // Location access is denied\n // Show the PatientModal only when the user explicitly clicks on \"Current Location\"\n this.setState({ PatientModal: true });\n } else {\n // Location access is prompted, ask the user for permission\n const position = await new Promise((resolve, reject) => {\n navigator.geolocation.getCurrentPosition(resolve, reject);\n });\n\n var data = {\n latitude: position.coords.latitude,\n longitude: position.coords.longitude,\n search_type: e.target.value,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile.corporate_id,\n\n };\n\n const { onGetCorporateLabs } = this.props;\n onGetCorporateLabs(data);\n\n this.setState({ corporateLab: [] });\n\n setTimeout(() => {\n this.setState({ corporateLab: this.props.corporateLab, locationAccessAllowed: true });\n }, 1000);\n }\n } catch (error) {\n console.error('Error checking location permission:', error);\n }\n } else {\n // Geolocation API is not supported, show an error message\n this.setState({ PatientModal: true }); // Show the modal for error\n }\n this.setState({ loading: true, corporateLab: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n }\n };\n\n onChangeKm = e => {\n this.setState({ km: e.target.value });\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetCorporateLabs } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var locationDetails = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n km: e.target.value,\n LabType: this.state.LabType,\n address: this.state.address,\n city: this.state.city,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile.corporate_id,\n\n };\n // region wise advertisement\n onGetCorporateLabs(locationDetails);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n\n setTimeout(() => {\n this.setState({ corporateLab: this.props.corporateLab });\n }, 1000);\n this.setState({ loading: true, corporateLab: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n };\n clearSearch = () => {\n this.setState({\n selectedLab: null,\n name: null, // Clear the 'name' property as well if needed\n });\n };\n\n onChangeLabName = (selectedOption) => {\n // Check if selectedOption is not null before accessing its properties\n if (selectedOption && selectedOption.value) {\n this.setState({ name: selectedOption.value });\n } else {\n // Handle the case where selectedOption is null or doesn't have a value property\n this.setState({ name: '' }); // Set the name to an appropriate default value or leave it empty\n }\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetCorporateLabs } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var locationDetails = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n name: selectedOption && selectedOption.value ? selectedOption.value : '', // Check if selectedOption is not null and has a value property\n LabType: this.state.LabType,\n km: this.state.km,\n address: this.state.address,\n city: this.state.city,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile.corporate_id,\n\n };\n // region wise advertisement\n onGetCorporateLabs(locationDetails);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n\n setTimeout(() => {\n this.setState({ corporateLab: this.props.corporateLab });\n }, 1000);\n this.setState({ loading: true, corporateLab: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n };\n onChangeType = e => {\n this.setState({ LabType: e.target.value });\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetCorporateLabs } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var locationDetails = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n LabType: e.target.value,\n km: this.state.km,\n address: this.state.address,\n city: this.state.city,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile.corporate_id,\n\n };\n // region wise advertisement\n onGetCorporateLabs(locationDetails);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n this.setState({ corporateLab: [] });\n\n setTimeout(() => {\n this.setState({ corporateLab: this.props.corporateLab });\n }, 1000);\n this.setState({ loading: true, corporateLab: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n };\n\n onChangeCity = selectedGroup => {\n this.setState({ city: selectedGroup.value });\n\n const { onGetCorporateLabs } = this.props;\n\n var locationDetails = {\n latitude: \"\",\n longitude: \"\",\n search_type: this.state.search_type,\n address: this.state.address,\n city: selectedGroup.value,\n LabType: this.state.LabType,\n km: this.state.km,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile.corporate_id,\n\n };\n\n onGetCorporateLabs(locationDetails);\n\n this.setState({ corporateLab: [] });\n\n setTimeout(() => {\n this.setState({ corporateLab: this.props.corporateLab });\n }, 1000);\n\n var latitude = \"\";\n var longitude = \"\";\n\n setTimeout(() => {\n var geocoder = new google.maps.Geocoder();\n\n // Concatenate city selected with Pakistan, so that it can be set as proper address\n var address = selectedGroup.value + \", Pakistan\";\n\n // Using geocoder search address and get its latitude and longitude\n geocoder.geocode({ address: address }, function (results, status) {\n if (status == google.maps.GeocoderStatus.OK) {\n latitude = results[0].geometry.location.lat();\n longitude = results[0].geometry.location.lng();\n }\n });\n\n // Set the values of simple variables to the state variables of latitude and longitude\n // so that it can be used outside of this function\n setTimeout(() => {\n this.setState({ latitude: latitude });\n this.setState({ longitude: longitude });\n }, 1000);\n }, 1000);\n this.setState({ loading: true, corporateLab: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n };\n\n activateParentDropdown = item => {\n item.classList.add(\"active\");\n const parent = item.parentElement;\n if (parent) {\n parent.classList.add(\"active\"); // li\n const parent2 = parent.parentElement;\n parent2.classList.add(\"active\"); // li\n const parent3 = parent2.parentElement;\n if (parent3) {\n parent3.classList.add(\"active\"); // li\n const parent4 = parent3.parentElement;\n if (parent4) {\n parent4.classList.add(\"active\"); // li\n const parent5 = parent4.parentElement;\n if (parent5) {\n parent5.classList.add(\"active\"); // li\n const parent6 = parent5.parentElement;\n if (parent6) {\n parent6.classList.add(\"active\"); // li\n }\n }\n }\n }\n }\n return false;\n };\n shouldHighlightTestsLink() {\n const { location } = this.props;\n const currentURL = location.pathname;\n\n // Check if the URL contains \"nearby-test\"\n return currentURL.includes('/labs');\n }\n\n render() {\n const isSmallScreen = window.innerWidth < 490;\n const { patientProfile } = this.props;\n console.log(\"there is patient profile and yes and not\", this.props.patientProfile, this.props.patientProfile.corporate_id)\n\n const { search_type } = this.state;\n let borderColor = '2px solid blue'; // Default border color\n\n // Check the selected option and update border color accordingly\n if (search_type === 'Current Location') {\n borderColor = '2px solid red'; // Change to the desired color\n }\n if (search_type === 'City') {\n borderColor = '2px solid green'; // Change to the desired color\n }\n if (search_type === 'Custom Address') {\n borderColor = '2px solid yellow'; // Change to the desired color\n }\n\n const ClearIndicator = (props) => {\n return (\n \n X\n \n );\n };\n\n const isTestsLinkHighlighted = this.shouldHighlightTestsLink();\n\n const linkStyles = {\n color: isTestsLinkHighlighted ? 'black' : 'black', // Text color\n // backgroundColor: isTestsLinkHighlighted ? '#ffcc00' : 'transparent', // Background color\n fontWeight: isTestsLinkHighlighted ? 'bold' : 'normal',\n };\n\n const { labNameInput, filteredLabNames } = this.state;\n const { history } = this.props;\n const { discountData, corporateLab, page, totalPage } = this.state;\n // const labNames = generateLabNames(corporateLab);\n\n const cityList = [];\n for (let i = 0; i < this.props.territoriesList.length; i++) {\n cityList.push({\n label: this.props.territoriesList[i].city,\n value: this.props.territoriesList[i].city,\n });\n }\n const labNames = [];\n for (let i = 0; i < this.props.labNamesList.length; i++) {\n labNames.push({\n label: this.props.labNamesList[i].name,\n value: this.props.labNamesList[i].name,\n });\n }\n const closeModal = () => {\n this.setState({ PatientModal: false });\n this.setState({ AddressModal: false });\n\n\n };\n const { loading } = this.state;\n\n\n\n\n return (\n \n {this.props.patientProfile.corporate_id == \"undefined\" && this.props.patientProfile.is_assosiatewith_anycorporate == false ? (\n
\n
\n \n {this.state.user_id && this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\"\n ? (\n \n
    \n
  • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Labs\n\n \n
  • \n\n
  • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n {/*
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n {/* \n
  • */}\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n )}\n
\n \n ) : null}\n {!this.state.user_id\n ? (\n \n
    \n {this.props.match.params.filnalurl && this.state.user_id ? (\n
  • \n \n Book a Test\n \n
  • \n ) : !this.props.match.params.filnalurl && this.state.user_id ? (\n
  • \n \n Book a Test\n \n
  • \n ) : null}\n {this.props.match.params.filnalurl && this.state.user_id ? (\n
  • \n \n Labs\n\n \n
  • \n ) : !this.props.match.params.filnalurl && this.state.user_id ? (\n
  • \n \n Labs\n\n \n
  • \n ) : null}\n {this.props.match.params.filnalurl && this.state.user_id ? (\n
  • \n \n Tests\n \n
  • \n ) : !this.props.match.params.filnalurl && this.state.user_id ? (\n
  • \n \n Tests\n \n
  • \n ) : null}\n {this.props.match.params.filnalurl && this.state.user_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : !this.props.match.params.filnalurl && this.state.user_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : null}\n\n {this.props.match.params.filnalurl && this.state.user_id ? (\n
  • \n \n Packages\n \n
  • \n ) : !this.props.match.params.filnalurl && this.state.user_id ? (\n
  • \n \n Packages\n \n
  • \n ) : null}\n\n {this.props.match.params.filnalurl && this.state.user_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : !this.props.match.params.filnalurl && this.state.user_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : null}\n\n\n {/*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
    \n
  • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n /*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
    \n
  • */\n )}\n
\n \n\n ) :\n this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\" ? (\n \n
    \n
  • \n \n Book a Test\n \n
  • \n
  • \n \n Labs\n\n {/* {this.props.t(\"Labs\")} */}\n \n
  • \n\n
  • \n {/* \n {this.props.t(\"Search by Tests\")}\n */}\n \n {/* {this.props.t(\"Tests\")} */}\n Tests\n \n
  • \n
  • \n \n {/* {this.props.t(\"Profiles\")} */}\n Profiles\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n \n
  • \n\n {/*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
    \n
  • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n /*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
    \n
  • */\n )}\n\n
\n \n ) :\n this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type === \"b2bclient\" ? (\n \n
    \n
  • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Labs\n\n \n
  • \n\n
  • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n )}\n
\n \n ) : null}\n\n \n
\n
\n ) : (\n null\n )}\n\n\n
\n \n Nearby Labs | Lab Hazir - Dashboard\n \n \n \n \n {/* \n \n \n Filter\n
\n
Price
\n
\n\n \n
\n\n
\n
Discount
\n {discountData.map((discount, i) => (\n
\n {\" \"}\n \n
\n ))}\n
\n\n
\n
Customer Rating
\n
\n
\n {\n if (e.target.checked) {\n this.onChangeRating(4);\n } else {\n this.onUncheckMark(4);\n }\n }}\n />{\" \"}\n \n 4 & Above\n \n
\n
\n {\n if (e.target.checked) {\n this.onChangeRating(3);\n } else {\n this.onUncheckMark(3);\n }\n }}\n />{\" \"}\n \n 3 & Above\n \n
\n
\n {\n if (e.target.checked) {\n this.onChangeRating(2);\n } else {\n this.onUncheckMark(2);\n }\n }}\n />{\" \"}\n \n 2 & Above\n \n
\n
\n {\n if (e.target.checked) {\n this.onSelectRating(1);\n } else {\n this.onUncheckMark(1);\n }\n }}\n />{\" \"}\n \n 1 \n \n
\n
\n
\n
\n
\n */}\n\n \n \n

How to enable location access on your browser

\n
\n \n \n
\n \n \n

On your Chrome browser

\n

\n 1. To the left of the address bar, click the Padlock icon {\" \"}

\n then select “Site Settings.”\n

\n

\n 2. Under Permissions, find Location and change it to\n Allow.\n

\n \n
\n \n Got It!\n \n
\n
\n
\n
\n
\n \n\n {/* */}\n {!isSmallScreen ? (\n \n (this.formik = formik)}\n enableReinitialize={true}\n initialValues={{\n // search_type:\n // (this.state && this.state.search_type) ||\n // \"Current Location\",\n city: (this.state && this.state.city) || \"\",\n name: (this.state && this.state.name) ||\n \"\",\n location: (this.state && this.state.location) || \"\",\n }}\n validationSchema={Yup.object().shape({\n city: Yup.string().when(\"search_type\", {\n is: val => val === \"Custom Address\",\n then: Yup.string().required(\"Please enter your City\"),\n }),\n location: Yup.string().when(\"city\", {\n is: val => val != \"\",\n then: Yup.string().required(\"Please enter your Location\"),\n }),\n })}\n >\n {({ errors, status, touched }) => (\n
\n {/* Type field */}\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n \n Search Types\n \n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : (\n \n
\n \n Search Types\n \n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n \n
\n \n )}\n {this.state.search_type === 'City' && (\n \n
\n \n By City \n \n ({\n ...provided,\n border: '2px solid green',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {this.state.search_type === 'Custom Address' && (\n \n
\n \n Custom Address \n \n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Address..\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {this.state.search_type === 'Custom Address' ? (\n \n
\n \n Km\n \n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\"\n className=\"form-control\"\n placeholder=\"km..\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n ) : (this.state.search_type === 'Current Location' && (\n \n
\n \n Km\n \n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\"\n className=\"form-control\"\n placeholder=\"km..\"\n style={{\n border: '2px solid red',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )\n )}\n \n
\n \n Search By Lab Name\n \n option.value === this.state.name)}\n onChange={this.onChangeLabName}\n options={labNames}\n placeholder=\"Lab Name...\"\n isSearchable={true}\n isClearable={true}\n components={{\n ClearIndicator,\n }}\n styles={{\n control: (provided, state) => ({\n ...provided,\n border: '2px solid blue',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n {/* \n
\n \n Search By Labs Type\n \n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n */}\n {this.state.locationAccessAllowed === true ? (\n \n
\n \n Search By Labs Type\n \n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : \n (\n \n
\n \n Search By Labs Type\n \n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n )\n }\n
\n
\n )}\n \n
\n ) : \n val === \"Custom Address\",\n then: Yup.string().required(\"Please enter your City\"),\n }),\n location: Yup.string().when(\"city\", {\n is: val => val != \"\",\n then: Yup.string().required(\n \"Please enter your Location\"\n ),\n }),\n })}\n >\n {({ errors, status, touched }) => (\n
\n {/* Type field */}\n {/* Type field */}\n

Search Labs for more result in Pakistan!

\n \n \n
\n option.value === this.state.name)}\n onChange={this.onChangeLabName}\n options={labNames}\n placeholder=\"Lab Name...\"\n isSearchable={true}\n isClearable={true}\n components={{\n ClearIndicator,\n }}\n\n />\n\n
\n \n \n
\n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n >\n \n \n \n \n
\n \n
\n \n \n
\n this.onChangeSearchType(e)}\n value={this.state.search_type}\n className=\"form-select\"\n >\n \n \n \n \n \n
\n \n\n {this.state.search_type === \"Current Location\" && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n style={{ fontSize: \"14px\" }} // Set input font size to 14 pixels\n placeholder=\"Search By Km...\"\n />\n
\n
\n \n )}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n style={{ fontSize: \"14px\" }} // Set input font size to 14 pixels\n placeholder=\"Search By Km...\"\n />\n
\n
\n \n )}\n {/* City field */}\n {this.state.search_type === \"City\" && (\n \n
\n \n
\n \n )}\n {/* Custom Address field */}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Search Location...\"\n />\n
\n \n )}\n
\n
\n )}\n \n
}\n\n\n {/* ROW FOR ADVERTISEMENT */}\n {/* */}\n {!isEmpty(corporateLab) && (!this.state.user_id) && (this.state.user_id) &&\n corporateLab.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/${nearbyLab.account_id}/offered-test-by-lab-corporate/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${nearbyLab.account_id}/offered-test-by-lab-corporate`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n \n \n
\n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n {/*
\n \n {\" \"}\n {nearbyLab.email}\n \n
*/}\n\n {/*
\n \n {\" \"}\n {nearbyLab.phone}\n \n
*/}\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n\n
\n \n \n \n ))}\n {!isEmpty(corporateLab) && (this.state.user_id) && (this.state.user_type !== \"CSR\") && (this.state.user_type !== \"b2bclient\") &&\n corporateLab.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/${nearbyLab.account_id}/offered-test-by-lab-corporate/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${nearbyLab.account_id}/offered-test-by-lab-corporate`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n \n \n \n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n\n {/*
\n \n {\" \"}\n {nearbyLab.email}\n \n
*/}\n\n {/*
\n \n {\" \"}\n {nearbyLab.phone}\n \n
*/}\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n {!isEmpty(corporateLab) && (this.state.user_id) && (this.state.user_type === \"CSR\") && (this.state.user_type !== \"b2bclient\") &&\n corporateLab.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/${nearbyLab.account_id}/offered-test-by-lab-corporate/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${nearbyLab.account_id}/offered-test-by-lab-corporate`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n \n\n\n\n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n\n
\n
\n \n \n ))}\n {!isEmpty(corporateLab) && (this.state.user_id) && (this.state.user_type !== \"CSR\") && (this.state.user_type === \"b2bclient\") &&\n corporateLab.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/${nearbyLab.account_id}/offered-test-by-lab-corporate/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${nearbyLab.account_id}/offered-test-by-lab-corporate`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n \n\n\n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n {isEmpty(corporateLab) && (\n loading ? (\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n
\n Sorry, No Labs Found In Your Specific Area.....\n
\n \n
\n )\n )}\n \n \n\n \n\n \n
\n );\n }\n}\n\nNearbyLabs.propTypes = {\n history: any,\n location: any,\n match: PropTypes.object,\n // carts: PropTypes.array,\n advLives: PropTypes.array,\n corporateLab: PropTypes.array,\n onGetCorporateLabs: PropTypes.func,\n onGetAdvLive: PropTypes.func,\n menuOpen: PropTypes.any,\n t: PropTypes.any,\n onGetTerritoriesList: PropTypes.func,\n territoriesList: PropTypes.array,\n onGetLabNamesList: PropTypes.func,\n labNamesList: PropTypes.array,\n className: PropTypes.any,\n onGetPatientProfile: PropTypes.func,\n patientProfile: PropTypes.array,\n\n};\n\nconst mapStateToProps = state => ({\n corporateLab: state.LabMarket.corporateLab,\n advLives: state.LabMarket.advLives,\n territoriesList: state.territoriesList.territoriesList,\n onGetLabNamesList: PropTypes.func,\n labNamesList: PropTypes.array,\n labNamesList: state.labNamesList.labNamesList,\n patientProfile: state.LabMarket.patientProfile,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetCorporateLabs: locationDetails => dispatch(getCorporateLabs(locationDetails)),\n onGetAdvLive: id => dispatch(getAdvLive(id)),\n onGetTerritoriesList: id => dispatch(getTerritoriesList(id)),\n onGetLabNamesList: id => dispatch(getLabNamesList(id)),\n onGetPatientProfile: id => dispatch(getPatientProfile(id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(NearbyLabs));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\n// import Select from \"react-select\";\nimport { Formik, Field, Form } from \"formik\";\nimport ScrollButton from \"components/Common/Scrollbutton\";\nimport * as Yup from \"yup\";\nimport MetaTags from \"react-meta-tags\";\nimport { connect } from \"react-redux\";\nimport { Redirect, Link, withRouter } from \"react-router-dom\";\nimport { v4 as uuidv4 } from \"uuid\";\nimport { Collapse } from \"reactstrap\";\nimport classname from \"classnames\";\nimport logo from \"../../../assets/images/logo.svg\";\nimport logoLight from \"../../../assets/images/logo-light.png\";\nimport logoLightSvg from \"../../../assets/images/logo-light.svg\";\nimport Select, { components } from \"react-select\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport \"../../../components/HorizontalLayout/horizontal-navbar.scss\";\nimport {\n Card,\n CardBody,\n CardTitle,\n Col,\n Modal,\n ModalBody,\n ModalHeader,\n Container,\n Button,\n Input,\n Label,\n Pagination,\n PaginationItem,\n PaginationLink,\n Row,\n} from \"reactstrap\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\n//Import Star Ratings\nimport StarRatings from \"react-star-ratings\";\n\n// RangeSlider\nimport Nouislider from \"nouislider-react\";\nimport \"nouislider/distribute/nouislider.css\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\n//Import data\nimport { productsData } from \"common/data\";\nimport { getPatientProfile } from \"store/labmarket/actions\";\n\n//Import actions\nimport { getNearbyLabs, getAdvLive } from \"store/labmarket/actions\";\nimport { any } from \"prop-types\";\nimport \"./nearbylabs.scss\";\n\nimport { CITIES } from \"helpers/global_variables_helper\";\nimport { getTerritoriesList } from \"store/territories-list/actions\";\nimport { getLabNamesList } from \"store/lab-names/actions\";\n\nimport offeredTestsList from \"pages/OfferedTests/offered-tests-list\";\n\nfunction formatTime(timeString, labId) {\n if (!timeString || typeof timeString !== \"string\") {\n console.warn(`Invalid time for lab ID ${labId}:`, timeString);\n return \"Invalid Time\";\n }\n\n try {\n const [hours, minutes] = timeString.split(\":\");\n const date = new Date(2000, 0, 1, parseInt(hours), parseInt(minutes), 0);\n\n return date.toLocaleString(\"en-US\", {\n hour: \"numeric\",\n minute: \"numeric\",\n hour12: true,\n timeZone: \"Asia/Karachi\",\n });\n } catch (error) {\n console.error(`Error formatting time for lab ID ${labId}:`, timeString, error);\n return \"Invalid Time\";\n }\n}\n\nclass NearbyLabs extends Component {\n constructor(props) {\n super(props);\n this.state = {\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n patient_name: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).patient_name\n : \"\",\n position: \"right\",\n ratingvalues: [],\n locationAccessAllowed: \"\",\n corporatepatient: \"\",\n nearbyLabs: [],\n patientProfile: [],\n advLives: [],\n territoriesList: [],\n labNamesList: [],\n selectedLabName: \"\", // State to store the selected lab name\n filteredLabs: [], // State to store the filtered labs\n labNameInput: \"\", // Store the lab name input by the user\n filteredLabNames: [],\n name: \"\",\n advLive: \"\",\n activeTab: \"1\",\n address: \"\",\n search_type: \"\",\n city: \"\",\n latitude: \"\",\n km: \"30\",\n LabType: \"\",\n longitude: \"\",\n location: \"\",\n currentLatitude: \"\",\n currentLongitude: \"\",\n discountData: [],\n loading: true, // Add loading state property\n filters: {\n discount: [],\n price: { min: 0, max: 500 },\n },\n page: 1,\n totalPage: 5, //replace this with total pages of data\n };\n this.toggleTab = this.toggleTab.bind(this);\n this.onSelectRating = this.onSelectRating.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n console.log(\n \"yaha ani chahi hai uuid\",\n this.props.match.params.uuid,\n this.props.match.params.guest_id,\n this.props.match.params.filnalurl\n );\n console.log(this.state.user_type);\n }\n\n componentDidMount() {\n // Load nearbyLabs data from local storage when the component mounts\n const nearbyLabsData = localStorage.getItem(\"nearbyLabs\");\n if (nearbyLabsData) {\n try {\n const parsedData = JSON.parse(nearbyLabsData);\n this.setState({ nearbyLabs: parsedData });\n } catch (error) {\n console.error(\"Failed to parse nearbyLabs data from local storage\", error);\n }\n }\n\n // Add event listener to save nearbyLabs data to local storage before the window unloads\n window.addEventListener(\"beforeunload\", () => {\n localStorage.setItem(\"nearbyLabs\", JSON.stringify(this.state.nearbyLabs));\n });\n\n const { onGetPatientProfile } = this.props;\n\n // Assuming onGetPatientProfile is synchronous\n console.log(\n \"this is patient profile\",\n onGetPatientProfile(this.state.user_id)\n );\n\n // Now you can safely access patientProfile from props\n const { patientProfile } = this.props;\n const { onGetNearbyLabs } = this.props;\n const { territoriesList, onGetTerritoriesList } = this.props;\n if (territoriesList && !territoriesList.length) {\n console.log(onGetTerritoriesList(this.state.user_id));\n }\n const { labNamesList, onGetLabNamesList } = this.props;\n\n if (labNamesList && !labNamesList.length) {\n console.log(onGetLabNamesList(this.state.user_id));\n }\n let matchingMenuItem = null;\n const ul = document.getElementById(\"navigation\");\n const items = ul.getElementsByTagName(\"a\");\n for (let i = 0; i < items.length; ++i) {\n if (this.props.location.pathname === items[i].pathname) {\n matchingMenuItem = items[i];\n break;\n }\n }\n if (matchingMenuItem) {\n this.activateParentDropdown(matchingMenuItem);\n }\n\n let latitude;\n let longitude;\n\n const url = window.location.href;\n const queryString = url.substring(url.indexOf(\"&\") + 1);\n const params = new URLSearchParams(queryString);\n console.log(\"print params in app\", url, queryString, params);\n\n const latitudeFromUrl = params.get(\"lat\");\n const longitudeFromUrl = params.get(\"lon\");\n\n console.log(\"Latitude:\", latitudeFromUrl);\n console.log(\"Longitude:\", longitudeFromUrl);\n\n if (latitudeFromUrl && longitudeFromUrl) {\n // Use latitude and longitude from URL\n latitude = parseFloat(latitudeFromUrl);\n longitude = parseFloat(longitudeFromUrl);\n console.log(\"print lat log in app\", latitude, longitude);\n\n // Call the dependent code here or pass the latitude and longitude values as arguments\n this.handleLocationUpdate(latitude, longitude);\n } else {\n if (navigator.geolocation) {\n // const nearbyLabsLocationDetails = {\n // latitude,\n // longitude,\n // search_type: this.state.search_type,\n // address: this.state.address,\n // city: this.state.city,\n // km: this.state.km,\n // LabType: this.state.LabType,\n // name: this.state.name,\n // locationAccessAllowed: this.state.locationAccessAllowed,\n // corporatepatient: this.props.patientProfile ? this.props.patientProfile.corporate_id : undefined,\n // };\n // // Call onGetNearbyLabs before prompting for geolocation\n // onGetNearbyLabs(nearbyLabsLocationDetails);\n // setTimeout(() => {\n // this.setState({ nearbyLabs: this.props.nearbyLabs });\n // }, 500);\n navigator.geolocation.getCurrentPosition(\n position => {\n latitude = position.coords.latitude;\n longitude = position.coords.longitude;\n console.log(\"web\", latitude, longitude);\n\n this.setState({ currentLatitude: latitude });\n this.setState({ currentLongitude: longitude });\n this.setState({ locationAccessAllowed: true });\n this.setState({ search_type: \"Current Location\" });\n this.setState({ LabType: \"Main\" });\n\n // near by labs\n if (this.state.user_id || this.state.user_type === \"CSR\") {\n const nearbyLabsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile\n ? this.props.patientProfile.corporate_id\n : undefined,\n };\n console.log(window.location.href);\n if (latitude && longitude) {\n onGetNearbyLabs(nearbyLabsLocationDetails);\n\n this.setState({ nearbyLabs: [] });\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n }\n // near by labs\n if (this.state.user_id || this.state.user_type === \"b2bclient\") {\n const nearbyLabsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile\n ? this.props.patientProfile.corporate_id\n : undefined,\n };\n if (latitude && longitude) {\n onGetNearbyLabs(nearbyLabsLocationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n }\n\n if (!this.state.user_id || this.props.match.params.guest_id) {\n const nearbyLabsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile\n ? this.props.patientProfile.corporate_id\n : undefined,\n };\n console.log(window.location.href);\n if (latitude && longitude) {\n onGetNearbyLabs(nearbyLabsLocationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n }\n if (\n this.state.user_id &&\n this.props.patientProfile &&\n this.props.patientProfile.is_assosiatewith_anycorporate &&\n this.props.patientProfile.employee_id_card\n ) {\n const nearbyLabsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile\n ? this.props.patientProfile.corporate_id\n : undefined,\n name: this.state.name,\n };\n if (latitude && longitude) {\n onGetNearbyLabs(nearbyLabsLocationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n }\n if (\n this.state.user_id &&\n this.props.patientProfile &&\n !this.props.patientProfile.is_assosiatewith_anycorporate &&\n !this.props.patientProfile.employee_id_card\n ) {\n const nearbyLabsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile\n ? this.props.patientProfile.corporate_id\n : undefined,\n name: this.state.name,\n };\n if (latitude && longitude) {\n onGetNearbyLabs(nearbyLabsLocationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n }\n },\n () => {\n this.setState({ latitude: null, longitude: null });\n // near by labs\n if (\n (this.state.user_id || this.state.user_type === \"CSR\") &&\n this.props.match.params.guest_id\n ) {\n const nearbyLabsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile\n ? this.props.patientProfile.corporate_id\n : undefined,\n };\n console.log(window.location.href);\n if (latitude && longitude) {\n onGetNearbyLabs(nearbyLabsLocationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n }\n\n // near by labs\n if (this.state.user_id || this.state.user_type === \"b2bclient\") {\n const nearbyLabsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile\n ? this.props.patientProfile.corporate_id\n : undefined,\n name: this.state.name,\n };\n if (latitude && longitude) {\n onGetNearbyLabs(nearbyLabsLocationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n }\n\n if (!this.state.user_id && this.props.match.params.guest_id) {\n const nearbyLabsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile\n ? this.props.patientProfile.corporate_id\n : undefined,\n };\n console.log(window.location.href);\n onGetNearbyLabs(nearbyLabsLocationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n if (this.state.user_id) {\n const nearbyLabsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile\n ? this.props.patientProfile.corporate_id\n : undefined,\n name: this.state.name,\n };\n onGetNearbyLabs(nearbyLabsLocationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 500);\n }\n }\n );\n } else {\n // Geolocation is not supported by the browser\n console.log(\"Geolocation is not supported by the browser.\");\n // Handle this scenario as needed, e.g., display an error message or provide alternative functionality.\n }\n }\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000); // Set loading state to false after 7 seconds\n }\n\n componentWillUnmount() {\n // Remove the event listener before the component unmounts\n window.removeEventListener(\"beforeunload\", () => {\n localStorage.setItem(\"nearbyLabs\", JSON.stringify(this.state.nearbyLabs));\n });\n }\n\n handleLocationUpdate(latitude, longitude) {\n const { onGetNearbyLabs } = this.props;\n // const guest_id = uuidv4();\n // console.log(\"uuid in nearby lab:\",this.state.user_id)\n\n setTimeout(() => {\n this.setState({ currentLatitude: latitude });\n this.setState({ currentLongitude: longitude });\n // this.setState({ guest_id: guest_id });\n var locationDetails = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile\n ? this.props.patientProfile.corporate_id\n : undefined,\n };\n if (this.state.currentLatitude && this.state.currentLongitude) {\n onGetNearbyLabs(locationDetails);\n // Clear previous quotes\n this.setState({ nearbyLabs: [] });\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n // console.log(\"guest id in near by labs and backend;\", { nearbyLabs: this.props.nearbyLabs, guest_id })\n }, 1000);\n }\n }, 1000);\n }\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { nearbyLabs } = this.props;\n if (\n isEmpty(prevProps.nearbyLabs) &&\n !isEmpty(nearbyLabs) &&\n size(nearbyLabs) !== size(prevProps.nearbyLabs)\n ) {\n this.setState({ nearbyLabs });\n }\n }\n\n toggleTab(tab) {\n if (this.state.activeTab !== tab) {\n this.setState({\n activeTab: tab,\n });\n }\n }\n\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n onSelectDiscount = e => {\n const { value, checked } = e.target;\n const {\n filters,\n filters: { discount },\n } = this.state;\n this.setState(\n {\n filters: {\n ...filters,\n discount: discount.find(item => item === value)\n ? discount.filter(item => item !== value)\n : [...discount, value],\n },\n },\n () => {\n this.onFilterProducts(value, checked);\n }\n );\n };\n\n onFilterProducts = (value, checked) => {\n const {\n filters: { discount },\n } = this.state;\n let filteredProducts = productsData;\n if (!!checked && parseInt(value) === 0) {\n filteredProducts = productsData.filter(\n nearbyLab => nearbyLab.offer < 100\n );\n } else if (discount.length > 0) {\n filteredProducts = productsData.filter(\n nearbyLab => nearbyLab.offer >= Math.min(...discount)\n );\n }\n this.setState({ nearbyLabs: filteredProducts });\n };\n\n onUpdate = (render, handle, value) => {\n this.setState({\n nearbyLabs: productsData.filter(\n nearbyLab =>\n nearbyLab.newPrice >= value[0] && nearbyLab.newPrice <= value[1]\n ),\n });\n };\n\n /*\n on change rating checkbox method\n */\n onChangeRating = value => {\n this.setState({\n nearbyLabs: productsData.filter(nearbyLab => nearbyLab.rating >= value),\n });\n\n var modifiedRating = [...this.state.ratingvalues];\n modifiedRating.push(value);\n this.setState({ ratingvalues: modifiedRating });\n };\n\n onSelectRating = value => {\n this.setState({\n nearbyLabs: productsData.filter(nearbyLab => nearbyLab.rating === value),\n });\n };\n\n onUncheckMark = value => {\n var modifiedRating = [...this.state.ratingvalues];\n const modifiedData = (modifiedRating || []).filter(x => x !== value);\n /*\n find min values\n */\n var filteredProducts = productsData;\n if (modifiedData && modifiedData.length && value !== 1) {\n var minValue = Math.min(...modifiedData);\n if (minValue && minValue !== Infinity) {\n filteredProducts = productsData.filter(\n nearbyLab => nearbyLab.rating >= minValue\n );\n\n this.setState({ ratingvalues: modifiedData });\n }\n } else {\n filteredProducts = productsData;\n }\n this.setState({ nearbyLabs: filteredProducts });\n };\n\n handlePageClick = page => {\n this.setState({ page });\n };\n\n onChangeAddress = e => {\n const { onGetNearbyLabs } = this.props;\n\n // Apply that city's latitude and longitude as city bound so that we see addresses of that city only\n var cityBounds = new google.maps.LatLngBounds(\n new google.maps.LatLng(this.state.latitude, this.state.longitude)\n );\n\n // Initialize AutocompleteService\n const autocompleteService = new google.maps.places.AutocompleteService();\n\n // Call AutocompleteService to get place predictions\n autocompleteService.getPlacePredictions(\n {\n input: e.target.value,\n bounds: cityBounds,\n types: [\"geocode\", \"establishment\"],\n },\n (predictions, status) => {\n if (status === google.maps.places.PlacesServiceStatus.OK) {\n // Filter predictions to include only those inside Pakistan\n const pakistanPredictions = predictions.filter(prediction => {\n return (\n prediction.structured_formatting.main_text_matched_substrings.some(\n match => match.offset === 0\n ) && prediction.terms.some(term => term.value === \"Pakistan\")\n );\n });\n\n // Handle predictions, e.g., update the state or perform further actions\n const locationDetails = {\n // Extract relevant details from the first prediction\n latitude:\n pakistanPredictions.length > 0\n ? pakistanPredictions[0].geometry.location.lat()\n : \"\",\n longitude:\n pakistanPredictions.length > 0\n ? pakistanPredictions[0].geometry.location.lng()\n : \"\",\n search_type: this.state.search_type,\n address: e.target.value,\n city: this.state.city,\n LabType: this.state.LabType,\n km: this.state.km,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile\n ? this.props.patientProfile.corporate_id\n : undefined,\n };\n\n // Call the action to get nearby labs\n onGetNearbyLabs(locationDetails);\n\n // this.setState({ nearbyLabs: [] });\n\n // Update state after a delay (if needed)\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 1000);\n } else {\n console.error(\"AutocompleteService failed with status:\", status);\n }\n }\n );\n };\n\n onChangeSearchType = async e => {\n this.setState({ search_type: e.target.value });\n\n // Call nearby tests API only if the search type changes to current location\n if (e.target.value === \"Current Location\") {\n this.setState({ city: \"\" });\n this.setState({ address: \"\" });\n\n // Check if the geolocation API is supported\n if (\"geolocation\" in navigator) {\n try {\n const locationPermission = await navigator.permissions.query({\n name: \"geolocation\",\n });\n\n if (\n locationPermission.state === \"denied\" &&\n !this.state.locationAccessAllowed\n ) {\n // Location access is denied\n // Show the PatientModal only when the user explicitly clicks on \"Current Location\"\n this.setState({ PatientModal: true });\n } else {\n // Location access is prompted, ask the user for permission\n const position = await new Promise((resolve, reject) => {\n navigator.geolocation.getCurrentPosition(resolve, reject);\n });\n\n var data = {\n latitude: position.coords.latitude,\n longitude: position.coords.longitude,\n search_type: e.target.value,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile\n ? this.props.patientProfile.corporate_id\n : undefined,\n };\n\n const { onGetNearbyLabs } = this.props;\n onGetNearbyLabs(data);\n\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({\n nearbyLabs: this.props.nearbyLabs,\n locationAccessAllowed: true,\n });\n }, 1000);\n }\n } catch (error) {\n console.error(\"Error checking location permission:\", error);\n }\n } else {\n // Geolocation API is not supported, show an error message\n this.setState({ PatientModal: true }); // Show the modal for error\n }\n }\n };\n\n onChangeKm = e => {\n this.setState({ km: e.target.value });\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyLabs } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var locationDetails = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n km: e.target.value,\n LabType: this.state.LabType,\n address: this.state.address,\n city: this.state.city,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile\n ? this.props.patientProfile.corporate_id\n : undefined,\n };\n // region wise advertisement\n onGetNearbyLabs(locationDetails);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 1000);\n };\n clearSearch = () => {\n this.setState({\n selectedLab: null,\n name: null, // Clear the 'name' property as well if needed\n });\n };\n\n onChangeLabName = selectedOption => {\n // Check if selectedOption is not null before accessing its properties\n if (selectedOption && selectedOption.value) {\n this.setState({ name: selectedOption.value });\n } else {\n // Handle the case where selectedOption is null or doesn't have a value property\n this.setState({ name: \"\" }); // Set the name to an appropriate default value or leave it empty\n }\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyLabs } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var locationDetails = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n name: selectedOption && selectedOption.value ? selectedOption.value : \"\", // Check if selectedOption is not null and has a value property\n LabType: this.state.LabType,\n km: this.state.km,\n address: this.state.address,\n city: this.state.city,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile\n ? this.props.patientProfile.corporate_id\n : undefined,\n };\n // region wise advertisement\n onGetNearbyLabs(locationDetails);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 1000);\n };\n onChangeType = e => {\n this.setState({ LabType: e.target.value });\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyLabs } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var locationDetails = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n LabType: e.target.value,\n km: this.state.km,\n address: this.state.address,\n city: this.state.city,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile\n ? this.props.patientProfile.corporate_id\n : undefined,\n };\n // region wise advertisement\n onGetNearbyLabs(locationDetails);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 1000);\n };\n\n onChangeCity = selectedGroup => {\n this.setState({ city: selectedGroup.value });\n\n const { onGetNearbyLabs } = this.props;\n\n var locationDetails = {\n latitude: \"\",\n longitude: \"\",\n search_type: this.state.search_type,\n address: this.state.address,\n city: selectedGroup.value,\n LabType: this.state.LabType,\n km: this.state.km,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.patientProfile\n ? this.props.patientProfile.corporate_id\n : undefined,\n };\n\n onGetNearbyLabs(locationDetails);\n\n this.setState({ nearbyLabs: [] });\n\n setTimeout(() => {\n this.setState({ nearbyLabs: this.props.nearbyLabs });\n }, 1000);\n\n var latitude = \"\";\n var longitude = \"\";\n\n setTimeout(() => {\n var geocoder = new google.maps.Geocoder();\n\n // Concatenate city selected with Pakistan, so that it can be set as proper address\n var address = selectedGroup.value + \", Pakistan\";\n\n // Using geocoder search address and get its latitude and longitude\n geocoder.geocode({ address: address }, function (results, status) {\n if (status == google.maps.GeocoderStatus.OK) {\n latitude = results[0].geometry.location.lat();\n longitude = results[0].geometry.location.lng();\n }\n });\n\n // Set the values of simple variables to the state variables of latitude and longitude\n // so that it can be used outside of this function\n setTimeout(() => {\n this.setState({ latitude: latitude });\n this.setState({ longitude: longitude });\n }, 1000);\n }, 1000);\n };\n\n activateParentDropdown = item => {\n item.classList.add(\"active\");\n const parent = item.parentElement;\n if (parent) {\n parent.classList.add(\"active\"); // li\n const parent2 = parent.parentElement;\n parent2.classList.add(\"active\"); // li\n const parent3 = parent2.parentElement;\n if (parent3) {\n parent3.classList.add(\"active\"); // li\n const parent4 = parent3.parentElement;\n if (parent4) {\n parent4.classList.add(\"active\"); // li\n const parent5 = parent4.parentElement;\n if (parent5) {\n parent5.classList.add(\"active\"); // li\n const parent6 = parent5.parentElement;\n if (parent6) {\n parent6.classList.add(\"active\"); // li\n }\n }\n }\n }\n }\n return false;\n };\n shouldHighlightTestsLink() {\n const { location } = this.props;\n const currentURL = location.pathname;\n\n // Check if the URL contains \"nearby-test\"\n return currentURL.includes(\"/labs\");\n }\n\n render() {\n const isSmallScreen = window.innerWidth < 490;\n const { patientProfile } = this.props;\n console.log(\n \"there is patient profile and yes and not\",\n this.props.patientProfile\n );\n\n const { search_type } = this.state;\n let borderColor = \"2px solid blue\"; // Default border color\n\n // Check the selected option and update border color accordingly\n if (search_type === \"Current Location\") {\n borderColor = \"2px solid red\"; // Change to the desired color\n }\n if (search_type === \"City\") {\n borderColor = \"2px solid green\"; // Change to the desired color\n }\n if (search_type === \"Custom Address\") {\n borderColor = \"2px solid yellow\"; // Change to the desired color\n }\n\n const ClearIndicator = props => {\n return (\n \n X\n \n );\n };\n\n const isTestsLinkHighlighted = this.shouldHighlightTestsLink();\n\n const linkStyles = {\n color: isTestsLinkHighlighted ? \"black\" : \"black\", // Text color\n // backgroundColor: isTestsLinkHighlighted ? '#ffcc00' : 'transparent', // Background color\n fontWeight: isTestsLinkHighlighted ? \"bold\" : \"normal\",\n };\n\n const { labNameInput, filteredLabNames } = this.state;\n const { history } = this.props;\n const { discountData, nearbyLabs, page, totalPage } = this.state;\n // const labNames = generateLabNames(nearbyLabs);\n\n const cityList = [];\n for (let i = 0; i < this.props.territoriesList.length; i++) {\n cityList.push({\n label: this.props.territoriesList[i].city,\n value: this.props.territoriesList[i].city,\n });\n }\n const labNames = [];\n for (let i = 0; i < this.props.labNamesList.length; i++) {\n labNames.push({\n label: this.props.labNamesList[i].name,\n value: this.props.labNamesList[i].name,\n });\n }\n const closeModal = () => {\n this.setState({ PatientModal: false });\n this.setState({ AddressModal: false });\n };\n const { loading } = this.state;\n\n return (\n \n {this.props.patientProfile &&\n !this.props.patientProfile.corporate_id &&\n this.props.patientProfile.is_assosiatewith_anycorporate == false ? (\n
\n
\n \n {this.state.user_id &&\n this.state.user_type === \"CSR\" &&\n this.state.user_type !== \"b2bclient\" ? (\n \n
    \n
  • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n \n Labs\n \n \n
  • \n\n
  • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n {/*
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n {/* \n
  • */}\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n \n My Appointments\n \n \n
  • \n )}\n
\n \n ) : null}\n {!this.state.user_id ? (\n \n
    \n {this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n \n Book a Test\n \n \n
  • \n ) : !this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n \n Book a Test\n \n \n
  • \n ) : null}\n {this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n \n Labs\n \n \n
  • \n ) : !this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n \n Labs\n \n \n
  • \n ) : null}\n {this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Tests\n \n
  • \n ) : !this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Tests\n \n
  • \n ) : null}\n {this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : !this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : null}\n\n {this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Packages\n \n
  • \n ) : !this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Packages\n \n
  • \n ) : null}\n\n {this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : !this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : null}\n\n {/*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
    \n
  • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n \n My Appointments\n \n \n
  • \n /*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
    \n
  • */\n )}\n
\n \n ) : this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type !== \"b2bclient\" ? (\n \n
    \n
  • \n \n Book a Test\n \n
  • \n
  • \n \n \n Labs\n \n\n {/* {this.props.t(\"Labs\")} */}\n \n
  • \n\n
  • \n {/* \n {this.props.t(\"Search by Tests\")}\n */}\n \n {/* {this.props.t(\"Tests\")} */}\n Tests\n \n
  • \n
  • \n \n {/* {this.props.t(\"Profiles\")} */}\n Profiles\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n \n
  • \n\n {/*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
    \n
  • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n \n My Appointments\n \n \n
  • \n /*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
    \n
  • */\n )}\n
\n \n ) : this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type === \"b2bclient\" ? (\n \n
    \n
  • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n \n Labs\n \n \n
  • \n\n
  • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n \n My Appointments\n \n \n
  • \n )}\n
\n \n ) : null}\n \n
\n
\n ) : null}\n\n
\n \n Nearby Labs | Lab Hazir - Dashboard\n \n \n \n \n {/* \n \n \n Filter\n
\n
Price
\n
\n\n \n
\n\n
\n
Discount
\n {discountData.map((discount, i) => (\n
\n {\" \"}\n \n
\n ))}\n
\n\n
\n
Customer Rating
\n
\n
\n {\n if (e.target.checked) {\n this.onChangeRating(4);\n } else {\n this.onUncheckMark(4);\n }\n }}\n />{\" \"}\n \n 4 & Above\n \n
\n
\n {\n if (e.target.checked) {\n this.onChangeRating(3);\n } else {\n this.onUncheckMark(3);\n }\n }}\n />{\" \"}\n \n 3 & Above\n \n
\n
\n {\n if (e.target.checked) {\n this.onChangeRating(2);\n } else {\n this.onUncheckMark(2);\n }\n }}\n />{\" \"}\n \n 2 & Above\n \n
\n
\n {\n if (e.target.checked) {\n this.onSelectRating(1);\n } else {\n this.onUncheckMark(1);\n }\n }}\n />{\" \"}\n \n 1 \n \n
\n
\n
\n
\n
\n */}\n\n \n \n

\n How to enable location access on your browser\n

\n
\n \n \n
\n \n \n

\n On your Chrome browser\n

\n

\n \n 1.\n {\" \"}\n To the left of the address bar, click the Padlock\n icon{\" \"}\n {\" \"}\n

\n \n then select “Site Settings.”\n \n

\n

\n \n 2.\n {\" \"}\n Under Permissions, find Location and change it to\n Allow.\n

\n \n
\n \n Got It!\n \n
\n \n
\n \n \n \n\n {/* */}\n {!isSmallScreen ? (\n \n (this.formik = formik)}\n enableReinitialize={true}\n initialValues={{\n // search_type:\n // (this.state && this.state.search_type) ||\n // \"Current Location\",\n city: (this.state && this.state.city) || \"\",\n name: (this.state && this.state.name) || \"\",\n location: (this.state && this.state.location) || \"\",\n }}\n validationSchema={Yup.object().shape({\n city: Yup.string().when(\"search_type\", {\n is: val => val === \"Custom Address\",\n then: Yup.string().required(\"Please enter your City\"),\n }),\n location: Yup.string().when(\"city\", {\n is: val => val != \"\",\n then: Yup.string().required(\n \"Please enter your Location\"\n ),\n }),\n })}\n >\n {({ errors, status, touched }) => (\n
\n {/* Type field */}\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n \n Search Types\n \n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: \"5px\",\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : (\n \n
\n \n Search Types\n \n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: \"5px\",\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n \n
\n \n )}\n {this.state.search_type === \"City\" && (\n \n
\n \n \n By City{\" \"}\n \n \n ({\n ...provided,\n border: \"2px solid green\",\n borderRadius: \"5px\",\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n \n \n Custom Address{\" \"}\n \n \n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Address..\"\n style={{\n border: \"2px solid yellow\",\n borderRadius: \"5px\",\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {this.state.search_type === \"Custom Address\" ? (\n \n
\n \n Km\n \n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\"\n className=\"form-control\"\n placeholder=\"km..\"\n style={{\n border: \"2px solid yellow\",\n borderRadius: \"5px\",\n fontSize: \"14px\",\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n ) : (\n this.state.search_type === \"Current Location\" && (\n \n
\n \n Km\n \n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\"\n className=\"form-control\"\n placeholder=\"km..\"\n style={{\n border: \"2px solid red\",\n borderRadius: \"5px\",\n fontSize: \"14px\",\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )\n )}\n \n
\n \n Search By Lab Name\n \n option.value === this.state.name)}\n onChange={this.onChangeLabName}\n options={labNames}\n placeholder=\"Lab Name...\"\n isSearchable={true}\n isClearable={true}\n components={{\n ClearIndicator,\n }}\n styles={{\n control: (provided, state) => ({\n ...provided,\n border: \"2px solid blue\",\n borderRadius: \"5px\",\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n {/* \n
\n \n Search By Labs Type\n \n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n */}\n {\n this.state.locationAccessAllowed === true ? (\n \n
\n \n Search By Labs Type\n \n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: \"2px solid blue\",\n borderRadius: \"5px\",\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : \n (\n \n
\n \n Search By Labs Type\n \n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n )\n }\n
\n
\n )}\n \n
\n ) : (\n \n val === \"Custom Address\",\n then: Yup.string().required(\"Please enter your City\"),\n }),\n location: Yup.string().when(\"city\", {\n is: val => val != \"\",\n then: Yup.string().required(\n \"Please enter your Location\"\n ),\n }),\n })}\n >\n {({ errors, status, touched }) => (\n
\n {/* Type field */}\n {/* Type field */}\n \n {\" \"}\n Search Labs for more result in Pakistan!\n \n \n \n
\n ({\n ...provided,\n border: \"2px solid blue\",\n borderRadius: \"5px\",\n }),\n // Add more style overrides as needed\n }}\n isSearchable={true}\n isClearable={true}\n components={{\n ClearIndicator,\n }}\n />\n
\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n {/* \n Search By Labs Type\n */}\n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: \"2px solid blue\",\n borderRadius: \"5px\",\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : null}\n
\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n {/* \n Search Types\n */}\n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: \"5px\",\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : (\n \n
\n {/* \n Search Types\n */}\n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: \"5px\",\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n \n
\n \n )}\n {/* \n
\n this.onChangeSearchType(e)}\n value={this.state.search_type}\n className=\"form-select\"\n >\n \n \n \n \n \n
\n */}\n\n {this.state.search_type === \"Current Location\" && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n placeholder=\"Search By Km...\"\n style={{\n border: \"2px solid red\",\n borderRadius: \"5px\",\n fontSize: \"14px\",\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n placeholder=\"Search By Km...\"\n style={{\n border: \"2px solid yellow\",\n borderRadius: \"5px\",\n fontSize: \"14px\",\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )}\n {/* City field */}\n {this.state.search_type === \"City\" && (\n \n
\n ({\n ...provided,\n border: \"2px solid green\",\n borderRadius: \"5px\",\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {/* Custom Address field */}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Search Location...\"\n style={{\n border: \"2px solid yellow\",\n borderRadius: \"5px\",\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n
\n \n )}\n \n
\n )}\n\n {/* ROW FOR ADVERTISEMENT */}\n {/* */}\n {!isEmpty(nearbyLabs) &&\n !this.state.user_id &&\n this.props.match.params.guest_id &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.guest_id}`\n )\n }\n style={{ height: \"95%\" }}\n >\n \n \n \n \n
\n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened && nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to{\" \"}\n {formatTime(nearbyLab.closing_time)}\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n {/*
\n \n {\" \"}\n {nearbyLab.email}\n \n
*/}\n\n {/*
\n \n {\" \"}\n {nearbyLab.phone}\n \n
*/}\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
\n ) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n Lab\n has female sample collectors\n \n
\n )}\n\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

\n {nearbyLab.rating\n .toFixed(1)\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n \n \n\n \n
\n \n See Details\n {\" \"}\n \n \n
\n \n
\n \n \n \n ))}\n {!isEmpty(nearbyLabs) &&\n this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type !== \"b2bclient\" &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n }\n style={{ height: \"95%\" }}\n >\n \n \n \n \n \n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened && nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to{\" \"}\n {formatTime(nearbyLab.closing_time)}\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n\n {/*
\n \n {\" \"}\n {nearbyLab.email}\n \n
*/}\n\n {/*
\n \n {\" \"}\n {nearbyLab.phone}\n \n
*/}\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
\n ) : null}\n\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n Lab\n has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

\n {nearbyLab.rating\n .toFixed(1)\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n \n \n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n {!isEmpty(nearbyLabs) &&\n this.state.user_id &&\n this.state.user_type === \"CSR\" &&\n this.state.user_type !== \"b2bclient\" &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.guest_id\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.guest_id}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n }\n style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n \n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened && nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to{\" \"}\n {formatTime(nearbyLab.closing_time)}\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
\n ) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n Lab\n has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

\n {nearbyLab.rating\n .toFixed(1)\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n \n \n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n {!isEmpty(nearbyLabs) &&\n this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type === \"b2bclient\" &&\n nearbyLabs.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.guest_id\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n }\n style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n \n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n {!nearbyLab.is_247_opened && nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to{\" \"}\n {formatTime(nearbyLab.closing_time)}\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
\n ) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n Lab\n has female sample collectors\n \n
\n )}\n\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

\n {nearbyLab.rating\n .toFixed(1)\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n \n \n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n {isEmpty(nearbyLabs) &&\n (loading ? (\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n \n Sorry, No Labs Found In Your Specific Area.....\n \n \n \n ))}\n \n \n \n \n
\n );\n }\n}\n\nNearbyLabs.propTypes = {\n history: any,\n location: any,\n match: PropTypes.object,\n // carts: PropTypes.array,\n advLives: PropTypes.array,\n nearbyLabs: PropTypes.array,\n onGetNearbyLabs: PropTypes.func,\n onGetAdvLive: PropTypes.func,\n menuOpen: PropTypes.any,\n t: PropTypes.any,\n onGetTerritoriesList: PropTypes.func,\n territoriesList: PropTypes.array,\n onGetLabNamesList: PropTypes.func,\n labNamesList: PropTypes.array,\n className: PropTypes.any,\n onGetPatientProfile: PropTypes.func,\n patientProfile: PropTypes.array,\n error: PropTypes.any,\n success: PropTypes.any,\n};\n\nconst mapStateToProps = state => ({\n nearbyLabs: state.LabMarket.nearbyLabs,\n advLives: state.LabMarket.advLives,\n territoriesList: state.territoriesList.territoriesList,\n onGetLabNamesList: PropTypes.func,\n labNamesList: PropTypes.array,\n labNamesList: state.labNamesList.labNamesList,\n patientProfile: state.LabMarket.patientProfile,\n error: state.LabProfile.error,\n success: state.LabProfile.success,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetNearbyLabs: locationDetails => dispatch(getNearbyLabs(locationDetails)),\n onGetAdvLive: id => dispatch(getAdvLive(id)),\n onGetTerritoriesList: id => dispatch(getTerritoriesList(id)),\n onGetLabNamesList: id => dispatch(getLabNamesList(id)),\n onGetPatientProfile: id => dispatch(getPatientProfile(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(NearbyLabs));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select, { components } from 'react-select';\nimport { Formik, Field, Form } from \"formik\";\nimport * as Yup from \"yup\";\nimport MetaTags from \"react-meta-tags\";\nimport { connect } from \"react-redux\";\nimport { Collapse } from \"reactstrap\";\nimport { Link, withRouter } from \"react-router-dom\";\nimport ScrollButton from \"components/Common/Scrollbutton\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\nimport {\n Alert,\n Button,\n Card,\n CardBody,\n CardTitle,\n Col,\n Container,\n ModalBody,\n ModalHeader,\n Modal,\n Input,\n Label,\n Pagination,\n PaginationItem,\n PaginationLink,\n Row,\n} from \"reactstrap\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\n//Import Star Ratings\nimport StarRatings from \"react-star-ratings\";\n\n// RangeSlider\nimport Nouislider from \"nouislider-react\";\nimport \"nouislider/distribute/nouislider.css\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\n//Import data\nimport { productsData } from \"common/data\";\n\n//Import actions\nimport { getAdvertisementLives } from \"store/advertisement-live/actions\";\nimport { getTestss } from \"store/profilemarket/actions\";\nimport { getNearbyTests } from \"store/testmarket/actions\";\nimport { addToCart } from \"store/actions\";\nimport { any } from \"prop-types\";\nimport \"./nearbylabs.scss\";\n\nimport { CITIES } from \"helpers/global_variables_helper\";\nimport { getTerritoriesList } from \"store/territories-list/actions\";\nimport { getLabNamesList } from \"store/lab-names/actions\";\nimport { getCarts } from \"store/carts/actions\";\n\n\nclass NearbyTests extends Component {\n constructor(props) {\n super(props);\n this.state = { value: \"\" };\n this.state = {\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n ratingvalues: [],\n nearbyTests: [],\n Testss: [],\n advertisementLives: [],\n carts: [],\n territoriesList: [],\n labNamesList: [],\n advertisementLive: \"\",\n activeTab: \"1\",\n address: \"\",\n test_name: \"\",\n name: \"\",\n test_type: \"\",\n search_type: \"\",\n city: \"\",\n latitude: \"\",\n longitude: \"\",\n currentLatitude: \"\",\n currentLongitude: \"\",\n location: \"\",\n km: \"30\",\n page: \"1\",\n LabType: \"\",\n success: \"\",\n error: \"\",\n locationAccessAllowed: \"\",\n discountData: [],\n itemsInCart: [],\n loading: true, // Add loading state property\n filters: {\n discount: [],\n price: { min: 0, max: 500 },\n },\n page: 1,\n // totalPage: 1, //replace this with total pages of data\n };\n this.toggleTab = this.toggleTab.bind(this);\n this.onSelectRating = this.onSelectRating.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n console.log(\"guest_id\", this.props.match.params.guest_id);\n console.log(\"uuid\", this.props.match.params.uuid);\n console.log(\"id\", this.props.match.params.id);\n console.log(\"fid\", this.props.match.params.filnalurl);\n }\n\n\n componentDidMount() {\n const { carts, onGetCarts } = this.props;\n onGetCarts(this.state.user_id);\n this.setState({\n carts\n });\n console.log(\"this.props.carts:\", this.props.carts);\n console.log(\"Color:\", (this.state.itemsInCart.some(item => item.id === this.props.carts.offered_test_id) ? 'secondary' : 'primary'));\n console.log(\"offered_test_id:\", this.props.carts.offered_test_id);\n \n const {\n onGetNearbyTests,\n } = this.props;\n const { territoriesList, onGetTerritoriesList } = this.props;\n if (territoriesList && !territoriesList.length) {\n console.log(onGetTerritoriesList(this.state.user_id));\n }\n const { labNamesList, onGetLabNamesList } = this.props;\n\n if (labNamesList && !labNamesList.length) {\n console.log(onGetLabNamesList(this.state.user_id));\n }\n const { Testss, onGetTestss } = this.props;\n\n if (Testss && !Testss.length) {\n console.log(onGetTestss(this.state.user_id));\n }\n\n let latitude;\n let longitude;\n\n const url = window.location.href;\n const queryString = url.substring(url.indexOf('&') + 1);\n const params = new URLSearchParams(queryString);\n console.log(\"print params in app\", url, queryString, params)\n\n const latitudeFromUrl = params.get('lat');\n const longitudeFromUrl = params.get('lon');\n\n console.log('Latitude:', latitudeFromUrl);\n console.log('Longitude:', longitudeFromUrl);\n\n // Check if latitude and longitude values are present in URL parameters\n if (latitudeFromUrl && longitudeFromUrl) {\n // Use latitude and longitude from URL\n latitude = parseFloat(latitudeFromUrl);\n longitude = parseFloat(longitudeFromUrl);\n console.log(\"print lat log in app\", latitude, longitude);\n\n // Call the dependent code here or pass the latitude and longitude values as arguments\n this.handleLocationUpdate(latitude, longitude);\n } else {\n if (navigator.geolocation) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n };\n\n // Call onGetNearbyLabs before prompting for geolocation\n onGetNearbyTests(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 500);\n navigator.geolocation.getCurrentPosition((position) => {\n latitude = position.coords.latitude;\n longitude = position.coords.longitude;\n console.log(\"web\", latitude, longitude);\n\n this.setState({ currentLatitude: latitude });\n this.setState({ currentLongitude: longitude });\n this.setState({ locationAccessAllowed: true });\n this.setState({ search_type: \"Current Location\" });\n this.setState({ LabType: \"Main\" });\n // near by labs\n if ((this.state.user_id || this.state.user_type === \"CSR\")) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n console.log(window.location.href);\n if (latitude && longitude) {\n onGetNearbyTests(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 500);\n }\n }\n\n // near by labs\n if (this.state.user_id || this.state.user_type === \"b2bclient\") {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n if (latitude && longitude) {\n onGetNearbyTests(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 500);\n }\n }\n\n if ((!this.state.user_id) || this.props.match.params.guest_id) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n console.log(window.location.href);\n if (latitude && longitude) {\n onGetNearbyTests(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 500);\n }\n }\n if (this.state.user_id) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n name: this.state.name,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n if (latitude && longitude) {\n onGetNearbyTests(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 500);\n }\n }\n }, () => {\n // Location access denied by the user\n // console.log(\"Location access denied by the user.\");\n // this.setState({ locationAccessAllowed: false });\n // const denialMessage = \"For accurate results, please allow location access.\";\n // alert(denialMessage); // You can use an alert, or create a message element in your UI.\n // // Handle the denial here. You can display a message, set default values, or perform other actions as needed.\n\n // Example:\n this.setState({ latitude: null, longitude: null });\n // near by labs\n if ((this.state.user_id || this.state.user_type === \"CSR\") && this.props.match.params.guest_id) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n console.log(window.location.href);\n if (latitude && longitude) {\n onGetNearbyTests(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 500);\n }\n }\n\n // near by labs\n if (this.state.user_id || this.state.user_type === \"b2bclient\") {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n name: this.state.name,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n if (latitude && longitude) {\n onGetNearbyTests(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 500);\n }\n }\n\n if ((!this.state.user_id) && this.props.match.params.guest_id) {\n\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n console.log(window.location.href);\n onGetNearbyTests(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 500);\n }\n if (this.state.user_id) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n test_name: this.state.test_name,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n name: this.state.name,\n page: this.state.page,\n\n };\n onGetNearbyTests(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 500);\n }\n }\n );\n } else {\n // Geolocation is not supported by the browser\n console.log(\"Geolocation is not supported by the browser.\");\n // Handle this scenario as needed, e.g., display an error message or provide alternative functionality.\n }\n }\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000); // Set loading state to false after 7 seconds\n\n console.log(\"url with ln and log\", window.location.href);\n }\n\n handleLocationUpdate(latitude, longitude) {\n const { Testss, onGetTestss } = this.props;\n if (Testss && !Testss.length) {\n console.log(onGetTestss(this.state.user_id));\n }\n const { onGetNearbyTests } = this.props;\n\n setTimeout(() => {\n this.setState({ currentLatitude: latitude });\n this.setState({ currentLongitude: longitude });\n\n var data = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n name: this.state.name,\n km: this.state.km,\n page: this.state.page,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n\n if (this.state.currentLatitude && this.state.currentLongitude) {\n onGetNearbyTests(data);\n\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 1000);\n }\n }, 1000);\n }\n openDescriptionModal = (e, arg) => {\n this.setState({\n DescriptionModal: true,\n description_in_english: arg.description_in_english,\n description_in_urdu: arg.description_in_urdu,\n test_name: arg.test_name,\n });\n };\n\n toggleDescriptionModal = () => {\n this.setState(prevState => ({\n DescriptionModal: !prevState.DescriptionModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { nearbyTests } = this.props;\n if (\n isEmpty(prevProps.nearbyTests) &&\n !isEmpty(nearbyTests) &&\n size(nearbyTests) !== size(prevProps.nearbyTests)\n ) {\n this.setState({ nearbyTests });\n }\n }\n toggleTab(tab) {\n if (this.state.activeTab !== tab) {\n this.setState({\n activeTab: tab,\n });\n }\n }\n\n onSelectDiscount = e => {\n const { value, checked } = e.target;\n const {\n filters,\n filters: { discount },\n } = this.state;\n this.setState(\n {\n filters: {\n ...filters,\n discount: discount.find(item => item === value)\n ? discount.filter(item => item !== value)\n : [...discount, value],\n },\n },\n () => {\n this.onFilterProducts(value, checked);\n }\n );\n };\n\n onFilterProducts = (value, checked) => {\n const {\n filters: { discount },\n } = this.state;\n let filteredProducts = productsData;\n if (!!checked && parseInt(value) === 0) {\n filteredProducts = productsData.filter(\n nearbyTest => nearbyTest.offer < 10\n );\n } else if (discount.length > 0) {\n filteredProducts = productsData.filter(\n nearbyTest => nearbyTest.offer >= Math.min(...discount)\n );\n }\n this.setState({ nearbyTests: filteredProducts });\n };\n\n onUpdate = (render, handle, value) => {\n this.setState({\n nearbyTests: productsData.filter(\n nearbyTest =>\n nearbyTest.newPrice >= value[0] && nearbyTest.newPrice <= value[1]\n ),\n });\n };\n\n /*\n on change rating checkbox method\n */\n onChangeRating = value => {\n this.setState({\n nearbyTests: productsData.filter(\n nearbyTest => nearbyTest.rating >= value\n ),\n });\n\n var modifiedRating = [...this.state.ratingvalues];\n modifiedRating.push(value);\n this.setState({ ratingvalues: modifiedRating });\n };\n\n onSelectRating = value => {\n this.setState({\n nearbyTests: productsData.filter(\n nearbyTest => nearbyTest.rating === value\n ),\n });\n };\n\n onUncheckMark = value => {\n var modifiedRating = [...this.state.ratingvalues];\n const modifiedData = (modifiedRating || []).filter(x => x !== value);\n /*\n find min values\n */\n var filteredProducts = productsData;\n if (modifiedData && modifiedData.length && value !== 1) {\n var minValue = Math.min(...modifiedData);\n if (minValue && minValue !== Infinity) {\n filteredProducts = productsData.filter(\n nearbyTest => nearbyTest.rating >= minValue\n );\n\n this.setState({ ratingvalues: modifiedData });\n }\n } else {\n filteredProducts = productsData;\n }\n this.setState({ nearbyTests: filteredProducts });\n };\n onChangeLabName = (selectedGroup) => {\n if (!selectedGroup) {\n this.setState({ name: '' });\n } else {\n this.setState({ name: selectedGroup.value });\n }\n \n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyTests } = this.props;\n\n var latitude;\n var longitude;\n\n if (this.state.search_type == \"Current Location\") {\n latitude = this.state.currentLatitude;\n longitude = this.state.currentLongitude;\n } else {\n latitude = \"\";\n longitude = \"\";\n }\n\n if (this)\n var data = {\n latitude: latitude,\n longitude: longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n name: selectedGroup ? selectedGroup.value : '', // Ensure selectedGroup is not null\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n\n onGetNearbyTests(data);\n\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 1000);\n };\n\n onchangename = (selectedGroup) => {\n // Clear the value when the custom clear indicator is clicked\n if (!selectedGroup) {\n this.setState({ test_name: '' });\n } else {\n this.setState({ test_name: selectedGroup.value });\n }\n \n \n // Calling API when focus is out of test name and setting nearby tests array\n const { onGetNearbyTests } = this.props;\n \n var latitude;\n var longitude;\n \n if (this.state.search_type === \"Current Location\") {\n latitude = this.state.currentLatitude;\n longitude = this.state.currentLongitude;\n } else {\n latitude = \"\";\n longitude = \"\";\n }\n \n var data = {\n latitude: latitude,\n longitude: longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n name: this.state.name,\n city: this.state.city,\n test_name: selectedGroup ? selectedGroup.value : '', // Ensure selectedGroup is not null\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n locationAccessAllowed: this.state.locationAccessAllowed,\n };\n \n onGetNearbyTests(data);\n \n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 1000);\n };\n \n onChangeAddress = e => {\n // Apply that city's latitude and longitude as city bound so that we see addresses of that city only\n var cityBounds = new google.maps.LatLngBounds(\n new google.maps.LatLng(this.state.latitude, this.state.longitude)\n );\n\n const options = {\n bounds: cityBounds,\n types: [\"establishment\"],\n componentRestrictions: { country: \"pk\" },\n };\n\n var searchBox = new window.google.maps.places.SearchBox(e.target, options);\n\n searchBox.addListener(\"places_changed\", () => {\n this.setState({ address: e.target.value });\n\n // Calling API whenever address changes and setting nearby tests array\n setTimeout(() => {\n const { onGetNearbyTests } = this.props;\n\n var data = {\n latitude: \"\",\n longitude: \"\",\n search_type: this.state.search_type,\n address: e.target.value,\n city: this.state.city,\n test_name: this.state.test_name,\n name: this.state.name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n\n onGetNearbyTests(data);\n\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 1000);\n }, 1000);\n });\n };\n\n onChangeKm = e => {\n this.setState({ km: e.target.value });\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyTests } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var data = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n km: e.target.value,\n page: this.state.page,\n LabType: this.state.LabType,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n // region wise advertisement\n onGetNearbyTests(data);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 1000);\n };\n\n onChangepage = async (e, pageNumber) => {\n e.preventDefault();\n this.setState({ page: pageNumber }); // Update the page in the state\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyTests } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var data = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n page: pageNumber, // Use the updated page number\n km: this.state.km,\n LabType: this.state.LabType,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n // region wise advertisement\n onGetNearbyTests(data);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 1000);\n };\n\n onChangeSearchType = async e => {\n this.setState({ search_type: e.target.value });\n\n // Call nearby tests API only if the search type changes to current location\n if (e.target.value === \"Current Location\") {\n this.setState({ city: \"\" });\n this.setState({ address: \"\" });\n\n // Check if the geolocation API is supported\n if (\"geolocation\" in navigator) {\n try {\n const locationPermission = await navigator.permissions.query({ name: 'geolocation' });\n\n if (locationPermission.state === 'denied' && !this.state.locationAccessAllowed) {\n // Location access is denied\n // Show the PatientModal only when the user explicitly clicks on \"Current Location\"\n this.setState({ PatientModal: true });\n } else {\n // Location access is prompted, ask the user for permission\n const position = await new Promise((resolve, reject) => {\n navigator.geolocation.getCurrentPosition(resolve, reject);\n });\n\n var data = {\n latitude: position.coords.latitude,\n longitude: position.coords.longitude,\n search_type: e.target.value,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n };\n\n const { onGetNearbyTests } = this.props;\n onGetNearbyTests(data);\n\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests, locationAccessAllowed: true });\n }, 1000);\n }\n } catch (error) {\n console.error('Error checking location permission:', error);\n }\n } else {\n // Geolocation API is not supported, show an error message\n this.setState({ PatientModal: true }); // Show the modal for error\n }\n }\n };\n\n onChangeCity = selectedGroup => {\n this.setState({ city: selectedGroup.value });\n\n const { onGetNearbyTests } = this.props;\n\n // ------------- Call API on city name START -------------\n var data = {\n latitude: \"\",\n longitude: \"\",\n search_type: this.state.search_type,\n address: this.state.address,\n city: selectedGroup.value,\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n\n onGetNearbyTests(data);\n\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 1000);\n\n // ------------- Call API on city name END -------------\n\n var latitude = \"\";\n var longitude = \"\";\n\n setTimeout(() => {\n var geocoder = new google.maps.Geocoder();\n\n // Concatenate city selected with Pakistan, so that it can be set as proper address\n var address = selectedGroup.value + \", Pakistan\";\n\n // Using geocoder search address and get its latitude and longitude\n geocoder.geocode({ address: address }, function (results, status) {\n if (status == google.maps.GeocoderStatus.OK) {\n latitude = results[0].geometry.location.lat();\n longitude = results[0].geometry.location.lng();\n }\n });\n\n // Set the values of simple variables to the state variables of latitude and longitude\n // so that it can be used outside of this function\n setTimeout(() => {\n this.setState({ latitude: latitude });\n this.setState({ longitude: longitude });\n }, 1000);\n }, 1000);\n };\n\n onChangeType = e => {\n this.setState({ LabType: e.target.value });\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyTests } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var data = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n LabType: e.target.value,\n km: this.state.km,\n page: this.state.page,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n // region wise advertisement\n onGetNearbyTests(data);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 1000);\n };\n\n handleAddToCart = (cart) => {\n const { onAddToCart } = this.props;\n\n // Check if the item is already in the cart based on user type\n if (!this.state.user_id) {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n\n this.setState({ guest_id: this.props.match.params.guest_id });\n cart.guest_id = this.props.match.params.guest_id;\n onAddToCart(cart, cart.guest_id);\n\n console.log(\"uuid:\", cart.guest_id, this.props.match.params.guest_id);\n } else if (this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n\n onAddToCart(cart, this.state.user_id);\n } else if (this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n\n onAddToCart(cart, this.props.match.params.guest_id);\n } else if (this.state.user_type === \"b2bclient\" && this.state.user_type !== \"CSR\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n\n onAddToCart(cart, this.props.match.params.uuid);\n }\n\n // Update the state to include the newly added item in the cart\n const updatedItemsInCart = [...this.state.itemsInCart, cart];\n this.setState({ itemsInCart: updatedItemsInCart });\n console.log(\"itemsInCart:\", this.state.itemsInCart);\n this.showSuccessMessage(\"Item added Successfully\");\n };\n\n\n showErrorMessage = (message) => {\n this.showPopup(message, \"red\");\n };\n\n showSuccessMessage = (message) => {\n this.showPopup(message, \"green\");\n };\n\n showPopup = (message, textColor) => {\n // Create and style the popup\n const popup = document.createElement(\"div\");\n popup.style.display = \"none\";\n popup.style.position = \"fixed\";\n popup.style.top = \"0\";\n popup.style.left = \"0\";\n popup.style.width = \"100%\";\n popup.style.height = \"100%\";\n popup.style.background = \"rgba(0, 0, 0, 0.5)\";\n popup.style.zIndex = \"1000\";\n\n const popupContent = document.createElement(\"div\");\n popupContent.style.position = \"absolute\";\n popupContent.style.top = \"50%\";\n popupContent.style.left = \"50%\";\n popupContent.style.transform = \"translate(-50%, -50%)\";\n popupContent.style.background = \"#fff\";\n popupContent.style.padding = \"20px\";\n popupContent.style.borderRadius = \"5px\";\n popupContent.style.boxShadow = \"0 0 10px rgba(0, 0, 0, 0.3)\";\n\n const messageElement = document.createElement(\"div\");\n messageElement.style.fontSize = \"18px\";\n messageElement.style.textAlign = \"center\";\n messageElement.style.color = textColor; // Set the text color\n\n // Set the message\n messageElement.textContent = message;\n\n // Append elements to the DOM\n popupContent.appendChild(messageElement);\n popup.appendChild(popupContent);\n document.body.appendChild(popup);\n\n // Show the popup\n popup.style.display = \"block\";\n\n // Hide the popup after a certain duration (e.g., 3 seconds)\n setTimeout(() => {\n popup.style.display = \"none\";\n }, 1000); // 3000 milliseconds = 3 seconds\n };\n\n // activateParentDropdown = item => {\n // item.classList.add(\"active\");\n // const parent = item.parentElement;\n // if (parent) {\n // parent.classList.add(\"active\"); // li\n // const parent2 = parent.parentElement;\n // parent2.classList.add(\"active\"); // li\n // const parent3 = parent2.parentElement;\n // if (parent3) {\n // parent3.classList.add(\"active\"); // li\n // const parent4 = parent3.parentElement;\n // if (parent4) {\n // parent4.classList.add(\"active\"); // li\n // const parent5 = parent4.parentElement;\n // if (parent5) {\n // parent5.classList.add(\"active\"); // li\n // const parent6 = parent5.parentElement;\n // if (parent6) {\n // parent6.classList.add(\"active\"); // li\n // }\n // }\n // }\n // }\n // }\n // return false;\n // };\n // handlePageClick = e => {\n // this.setState({ page: e.target.value });\n // };\n toggleFullscreen() {\n if (\n !document.fullscreenElement &&\n /* alternative standard method */ !document.mozFullScreenElement &&\n !document.webkitFullscreenElement\n ) {\n // current working methods\n if (document.documentElement.requestFullscreen) {\n document.documentElement.requestFullscreen();\n } else if (document.documentElement.mozRequestFullScreen) {\n document.documentElement.mozRequestFullScreen();\n } else if (document.documentElement.webkitRequestFullscreen) {\n document.documentElement.webkitRequestFullscreen(\n Element.ALLOW_KEYBOARD_INPUT\n );\n }\n } else {\n if (document.cancelFullScreen) {\n document.cancelFullScreen();\n } else if (document.mozCancelFullScreen) {\n document.mozCancelFullScreen();\n } else if (document.webkitCancelFullScreen) {\n document.webkitCancelFullScreen();\n }\n }\n }\n calculateTotalPage = (items) => {\n const itemsPerPage = Math.min(5, items.length); // Number of items to display per page, up to a maximum of 50\n const totalItems = items.length;\n console.log(\"total pahe number\", totalItems)\n return Math.ceil(totalItems / itemsPerPage);\n };\n shouldHighlightTestsLink() {\n const { location } = this.props;\n const currentURL = location.pathname;\n\n // Check if the URL contains \"nearby-test\"\n return currentURL.includes('/nearby-test/');\n }\n render() {\n const { onGetCarts } = this.props;\n\n const { carts } = this.props;\n\n const { search_type } = this.state;\n let borderColor = '2px solid blue'; // Default border color\n\n // Check the selected option and update border color accordingly\n if (search_type === 'Current Location') {\n borderColor = '2px solid red'; // Change to the desired color\n }\n if (search_type === 'City') {\n borderColor = '2px solid green'; // Change to the desired color\n }\n if (search_type === 'Custom Address') {\n borderColor = '2px solid yellow'; // Change to the desired color\n }\n const ClearIndicator = (props) => {\n return (\n \n X\n \n );\n };\n const { Testss } = this.props;\n const { labNamesList } = this.props;\n\n const isSmallScreen = window.innerWidth < 490;\n\n const isTestsLinkHighlighted = this.shouldHighlightTestsLink();\n\n const linkStyles = {\n color: isTestsLinkHighlighted ? 'black' : 'black', // Text color\n // backgroundColor: isTestsLinkHighlighted ? '#ffcc00' : 'transparent', // Background color\n fontWeight: isTestsLinkHighlighted ? 'bold' : 'normal',\n };\n // const { nearbyTests } = this.props;\n const totalPage = !isEmpty(this.props.nearbyTests) ? this.calculateTotalPage(this.props.nearbyTests) : 1;\n console.log(\"total pahe number\", totalPage)\n const { loading } = this.state;\n const isLargeScreen = window.innerWidth < 490;\n const { page } = this.state;\n const cityList = [];\n for (let i = 0; i < this.props.territoriesList.length; i++) {\n cityList.push({\n label: this.props.territoriesList[i].city,\n value: this.props.territoriesList[i].city,\n });\n }\n const labNames = [];\n for (let i = 0; i < this.props.labNamesList.length; i++) {\n labNames.push({\n label: this.props.labNamesList[i].name,\n value: this.props.labNamesList[i].name,\n });\n }\n const closeModal = () => {\n this.setState({ PatientModal: false });\n this.setState({ AddressModal: false });\n\n };\n const testssList = [];\n for (let i = 0; i < this.props.Testss.length; i++) {\n testssList.push({\n label: this.props.Testss[i].name,\n value: this.props.Testss[i].name,\n });\n }\n\n return (\n\n \n
\n
\n \n {this.state.user_id && this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\"\n ? (\n \n
    \n
  • \n \n Book a Test\n \n
  • \n
  • \n \n Labs\n \n
  • \n\n
  • \n \n Tests\n\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n )}\n
\n \n ) : null}\n {!this.state.user_id\n ? (\n \n
    \n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Book a Test\n\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Book a Test\n\n \n
  • \n ) : null}\n {this.props.match.params.filnalurl ? (\n
  • \n \n Labs\n \n
  • \n ) : (\n
  • \n \n Labs\n \n
  • \n )}\n\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Tests\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Tests\n \n
  • \n ) : null}\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : null}\n\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Packages\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Packages\n \n
  • \n ) : null}\n\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : null}\n\n\n {/*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
    \n
  • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n /*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
    \n
  • */\n )}\n
\n \n\n ) :\n this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\" ? (\n \n
    \n
  • \n \n Book a Test\n \n
  • \n
  • \n \n Labs\n {/* {this.props.t(\"Labs\")} */}\n \n
  • \n\n
  • \n {/* \n {this.props.t(\"Search by Tests\")}\n */}\n \n {/* {this.props.t(\"Tests\")} */}\n Tests\n \n
  • \n
  • \n \n {/* {this.props.t(\"Profiles\")} */}\n Profiles\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n {/*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
    \n
  • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n /*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
    \n
  • */\n )}\n\n
\n \n ) :\n this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type === \"b2bclient\" ? (\n \n
    \n
  • \n \n Book a Test\n \n
  • \n
  • \n \n Labs\n \n
  • \n\n
  • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n )}\n
\n \n ) : null}\n\n \n
\n
\n
\n \n Search by Tests | Lab Hazir - Dashboard\n \n \n \n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n

\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n\n \n \n

How to enable location access on your browser

\n
\n \n \n
\n \n \n

On your Chrome browser

\n

\n 1. To the left of the address bar, click the Padlock icon {\" \"}

\n then select “Site Settings.”\n

\n

\n 2. Under Permissions, find Location and change it to\n Allow.\n

\n \n
\n \n Got It!\n \n
\n
\n
\n
\n
\n \n {/* \n \n \n Filter\n \n \n */}\n\n {/* */}\n {!isSmallScreen ? (\n \n val === \"Custom Address\",\n then: Yup.string().required(\"Please enter your City\"),\n }),\n location: Yup.string().when(\"city\", {\n is: val => val != \"\",\n then: Yup.string().required(\"Please enter your Location\"),\n }),\n })}\n >\n {({ errors, status, touched }) => (\n
\n {/* Type field */}\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n \n Search Types\n \n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : (\n \n
\n \n Search Types\n \n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n \n
\n \n )}\n\n {this.state.search_type === 'City' && (\n \n
\n \n By City \n \n ({\n ...provided,\n border: '2px solid green',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {this.state.search_type === 'Custom Address' && (\n \n
\n \n Custom Address \n \n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Address..\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {this.state.search_type === 'Custom Address' ? (\n \n
\n \n Km\n \n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\"\n className=\"form-control\"\n placeholder=\"km..\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n ) : (this.state.search_type === 'Current Location' && (\n \n
\n \n Km\n \n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\"\n className=\"form-control\"\n placeholder=\"km..\"\n style={{\n border: '2px solid red',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )\n )}\n \n
\n \n Search By Test Name\n \n ({\n ...provided,\n border: '2px solid blue',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n\n />\n
\n \n \n \n \n
\n \n Search By Lab Name\n \n ({\n ...provided,\n border: '2px solid blue',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n\n />\n
\n \n {/* \n
\n \n Search By Labs Type\n \n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n */}\n {this.state.locationAccessAllowed === true ? (\n \n
\n \n Search By Labs Type\n \n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : null\n // (\n // \n //
\n // \n // Search By Labs Type\n // \n // this.onChangeType(e)}\n // value={this.state.LabType}\n // className=\"form-select\"\n // style={{\n // border: '2px solid blue',\n // borderRadius: '5px',\n // // Add more style overrides as needed\n // }}\n // >\n // \n // \n // \n // \n //
\n // \n // )\n }\n
\n
\n )}\n \n
\n ) : \n val === \"Custom Address\",\n then: Yup.string().required(\"Please enter your City\"),\n }),\n location: Yup.string().when(\"city\", {\n is: val => val != \"\",\n then: Yup.string().required(\n \"Please enter your Location\"\n ),\n }),\n })}\n >\n {({ errors, status, touched }) => (\n
\n {/* Type field */}\n

Search Tests for more result in Pakistan!

\n \n \n
\n ({\n ...provided,\n border: '2px solid blue',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n options={testssList}\n isSearchable={true}\n isClearable={true}\n components={{\n ClearIndicator,\n }}\n />\n\n
\n \n \n
\n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n
\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n {/* \n Search Types\n */}\n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : (\n \n
\n {/* \n Search Types\n */}\n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n \n
\n \n )}\n {this.state.search_type === \"Current Location\" && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n placeholder=\"Search By Km...\"\n style={{\n border: '2px solid red',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n placeholder=\"Search By Km...\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )}\n {/* City field */}\n {this.state.search_type === \"City\" && (\n \n
\n ({\n ...provided,\n border: '2px solid green',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {/* Custom Address field */}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Search Location...\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n
\n
\n )}\n \n
}\n\n {/* Alerts to show success and error messages when item is added to the cart */}\n {this.state.success ? (\n \n {this.state.success}\n \n ) : this.state.error ? (\n \n {this.state.error}\n \n ) : null}\n\n \n {!isEmpty(this.props.nearbyTests) &&\n this.props.nearbyTests.map((nearbyTest, key) => (\n \n \n \n
\n
\n \n {nearbyTest.test_name} \n \n
\n \n this.openDescriptionModal(e, nearbyTest)\n }\n >\n Test Description\n \n {/*
*/}\n {(nearbyTest.lab_discount >= 0.01) && ((nearbyTest.all_discount_by_labhazir + nearbyTest.discount_by_labhazir) >= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {nearbyTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((nearbyTest.price - (nearbyTest.lab_discount + nearbyTest.all_discount_by_labhazir + nearbyTest.discount_by_labhazir) * nearbyTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n\n {(nearbyTest.lab_discount >= 0.01) && ((nearbyTest.all_discount_by_labhazir + nearbyTest.discount_by_labhazir) <= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {nearbyTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((nearbyTest.price - (nearbyTest.lab_discount + nearbyTest.all_discount_by_labhazir + nearbyTest.discount_by_labhazir) * nearbyTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {(nearbyTest.lab_discount <= 0.01) && ((nearbyTest.all_discount_by_labhazir + nearbyTest.discount_by_labhazir) >= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {nearbyTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((nearbyTest.price - (nearbyTest.lab_discount + nearbyTest.all_discount_by_labhazir + nearbyTest.discount_by_labhazir) * nearbyTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n\n {(nearbyTest.lab_discount <= 0.01) && ((nearbyTest.all_discount_by_labhazir + nearbyTest.discount_by_labhazir) <= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {((nearbyTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n\n\n {nearbyTest.lab_discount >= 0.01 && (\n
\n \n {\" \"}\n Discount Lab: {(nearbyTest.lab_discount * 100).toFixed()} %\n \n\n
\n )}\n {(nearbyTest.all_discount_by_labhazir + nearbyTest.discount_by_labhazir) >= 0.01 && (\n
\n \n {\" \"}\n Discount LabHazir: {((nearbyTest.all_discount_by_labhazir * 100) + (nearbyTest.discount_by_labhazir * 100)).toFixed()} %\n \n\n
\n )}\n {nearbyTest.duration_required ? (\n
\n \n Reporting\n Time: {nearbyTest.duration_required}{\" \"}\n {nearbyTest.duration_type}\n \n
) : null }\n {nearbyTest.is_home_sampling_available ? (\n\n
\n \n Home Sampling:{\" \"}\n {nearbyTest.is_home_sampling_available}\n \n
) : null }\n
\n {\" \"}\n\n \n \n \n \n \n \n {nearbyTest && nearbyTest.rating && (\n

{nearbyTest.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n
\n
\n {\" \"}\n {!this.state.user_id ? (\n \n \n {nearbyTest.lab_name}{\" \"}\n\n \n \n ) : null}\n {(this.state.user_id) && (this.state.user_type === \"CSR\") && (this.state.user_type !== \"b2bclient\") && (\n \n \n {nearbyTest.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !== \"CSR\") && (this.state.user_type !== \"b2bclient\") && (\n \n \n {nearbyTest.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !== \"CSR\") && (this.state.user_type === \"b2bclient\") && (\n \n \n {nearbyTest.lab_name}{\" \"}\n\n \n \n )}\n
\n cartItem.offered_test_id === nearbyTest.id) ? 'secondary' : 'primary'}\n className={`btn mt-3 me-1${this.props.carts.some(cartItem => cartItem.offered_test_id === nearbyTest.id) ? ' disabled' : ''}`}\n // onClick={() => this.handleAddToCart(nearbyTest)}\n onClick={() => {\n // Check if nearbyTest.name is equal to any cartItem.name\n if (this.props.carts.some(cartItem => cartItem.test_name === nearbyTest.test_name)) {\n alert(\"An item with the same name but from a different lab is already in the cart. Please remove the previous one first.\");\n } else {\n // If not, proceed with adding to the cart\n this.handleAddToCart(nearbyTest);\n }\n }}\n disabled={this.props.carts.some(cartItem => cartItem.offered_test_id === nearbyTest.id)}\n>\n {this.props.carts.some(cartItem => cartItem.offered_test_id === nearbyTest.id) ? 'Already Added' : 'Add to cart'}\n\n\n {/* this.handleAddToCart(nearbyTest)}\n disabled={this.state.itemsInCart.includes(this.props.carts)} // Disable the button if the item is in the cart\n>\n {this.state.itemsInCart.includes(this.props.carts) ? 'Already Added' : 'Add to cart'}\n */}\n\n
\n \n \n \n ))}\n {isEmpty(this.props.nearbyTests) && (\n loading ? (\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n
\n Sorry, No Tests Found In Your Specific Area.....\n
\n \n
\n )\n )}\n\n {!isEmpty(this.props.nearbyTests) ? (\n \n \n \n \n this.onChangepage(e, page - 1)}\n />\n \n {Array.from({ length: totalPage }, (_, i) => {\n const pageNumber = i + 1;\n return (\n \n this.onChangepage(e, pageNumber)} href=\"#\">\n {pageNumber}\n \n \n );\n })}\n \n this.onChangepage(e, page + 1)}\n />\n \n \n \n \n ) : null}\n\n \n \n \n \n \n
\n );\n }\n}\n\nNearbyTests.propTypes = {\n history: any,\n location: any,\n match: PropTypes.object,\n nearbyTests: PropTypes.array,\n advertisementLives: PropTypes.array,\n onGetAdvertisementLives: PropTypes.func,\n onGetNearbyTests: PropTypes.func,\n onAddToCart: PropTypes.func,\n success: PropTypes.any,\n error: PropTypes.any,\n className: PropTypes.any,\n TestMarket: PropTypes.any,\n menuOpen: PropTypes.any,\n t: PropTypes.any,\n onGetTerritoriesList: PropTypes.func,\n territoriesList: PropTypes.array,\n onGetTestss: PropTypes.func,\n Testss: PropTypes.array,\n onGetLabNamesList: PropTypes.func,\n labNamesList: PropTypes.array,\n carts: PropTypes.any,\n onGetCarts: PropTypes.func,\n \n};\n\nconst mapStateToProps = ({ TestMarket, carts, advertisementLives, ProfileMarket, labNamesList }) => ({\n nearbyTests: TestMarket.nearbyTests,\n success: carts.success,\n error: carts.error,\n advertisementLives: advertisementLives.advertisementLives,\n territoriesList: TestMarket.territoriesList,\n Testss: ProfileMarket.Testss,\n // onGetLabNamesList: PropTypes.func,\n // labNamesList: PropTypes.array,\n labNamesList: labNamesList.labNamesList,\n carts: carts.carts,\n\n});\n// const mapStateToProps = ({ nearbyTests }) => ({\n// nearbyTests: nearbyTests.nearbyTests,\n// });\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetNearbyTests: data => dispatch(getNearbyTests(data)),\n onAddToCart: (cart, id) => dispatch(addToCart(cart, id)),\n onGetAdvertisementLives: id => dispatch(getAdvertisementLives(id)),\n onGetTerritoriesList: id => dispatch(getTerritoriesList(id)),\n onGetTestss: id => dispatch(getTestss(id)),\n onGetLabNamesList: id => dispatch(getLabNamesList(id)),\n onGetCarts: id => dispatch(getCarts(id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(NearbyTests));","import {\n GET_NEARBY_TESTS,\n GET_NEARBY_TESTS_FAIL,\n GET_NEARBY_TESTS_SUCCESS,\n GET_NEARBY_TESTS_DISCOUNTEDLH,\n GET_NEARBY_TESTS_DISCOUNTEDLH_FAIL,\n GET_NEARBY_TESTS_DISCOUNTEDLH_SUCCESS,\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n} from \"./actionTypes\";\n\nexport const getTerritoriesList = () => ({\n type: GET_TERRITORIES_LIST,\n payload: {},\n});\n\nexport const getTerritoriesListSuccess = territoriesList => ({\n type: GET_TERRITORIES_LIST_SUCCESS,\n payload: territoriesList,\n });\n\nexport const getTerritoriesListFail = error => ({\n type: GET_TERRITORIES_LIST_FAIL,\n payload: error,\n});\n\nexport const getNearbyTests = (search_type, address, id, test_name) => ({\n type: GET_NEARBY_TESTS,\n payload: { search_type, address, id, test_name },\n});\n\nexport const getNearbyTestsSuccess = nearbyTests => ({\n type: GET_NEARBY_TESTS_SUCCESS,\n payload: nearbyTests,\n});\n\n\nexport const getNearbyTestsFail = error => ({\n type: GET_NEARBY_TESTS_FAIL,\n payload: error,\n});\n\n\nexport const getNearbyTestsDiscounted = (search_type, address, id, test_name) => ({\n type: GET_NEARBY_TESTS_DISCOUNTEDLH,\n payload: { search_type, address, id, test_name },\n});\n\nexport const getNearbyTestsDiscountedSuccess = nearbyTests => ({\n type: GET_NEARBY_TESTS_DISCOUNTEDLH_SUCCESS,\n payload: nearbyTests,\n});\n\n\nexport const getNearbyTestsDiscountedFail = error => ({\n type: GET_NEARBY_TESTS_DISCOUNTEDLH_FAIL,\n payload: error,\n});\n\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport { Formik, Field, Form } from \"formik\";\nimport * as Yup from \"yup\";\nimport MetaTags from \"react-meta-tags\";\nimport { connect } from \"react-redux\";\nimport { Collapse } from \"reactstrap\";\nimport { Link, withRouter } from \"react-router-dom\";\nimport ScrollButton from \"components/Common/Scrollbutton\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\n\nimport {\n Alert,\n Button,\n Card,\n CardBody,\n CardTitle,\n Col,\n Container,\n ModalBody,\n ModalHeader,\n Modal,\n Input,\n Label,\n Pagination,\n PaginationItem,\n PaginationLink,\n Row,\n} from \"reactstrap\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\n//Import Star Ratings\nimport StarRatings from \"react-star-ratings\";\n\n// RangeSlider\nimport Nouislider from \"nouislider-react\";\nimport \"nouislider/distribute/nouislider.css\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\n//Import data\nimport { productsData } from \"common/data\";\n\n//Import actions\nimport { getAdvertisementLives } from \"store/advertisement-live/actions\";\nimport { getNearbyTestsDiscounted } from \"store/testmarket/actions\";\nimport { addToCart } from \"store/actions\";\nimport { any } from \"prop-types\";\nimport \"./nearbylabs.scss\";\n\nimport { CITIES } from \"helpers/global_variables_helper\";\nimport { getTerritoriesList } from \"store/territories-list/actions\";\nimport { getCarts } from \"store/carts/actions\";\n\nclass NearbyTests extends Component {\n constructor(props) {\n super(props);\n this.state = { value: \"\" };\n this.state = {\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n ratingvalues: [],\n nearbyTests: [],\n advertisementLives: [],\n carts: [],\n advertisementLive: \"\",\n activeTab: \"1\",\n address: \"\",\n test_name: \"\",\n test_type: \"\",\n search_type: \"Current Location\",\n city: \"\",\n latitude: \"\",\n longitude: \"\",\n currentLatitude: \"\",\n currentLongitude: \"\",\n location: \"\",\n km: \"30\",\n page: \"1\",\n LabType: \"Main\",\n success: \"\",\n error: \"\",\n discountData: [],\n itemsInCart: [],\n loading: true, // Add loading state property\n territoriesList: [],\n filters: {\n discount: [],\n price: { min: 0, max: 500 },\n },\n page: 1,\n // totalPage: 5, //replace this with total pages of data\n };\n this.toggleTab = this.toggleTab.bind(this);\n this.onSelectRating = this.onSelectRating.bind(this);\n console.log(\"yaha ani chahi hai uuid\", this.props.match.params.uuid)\n console.log(\"yaha ani chahi hai guid\", this.props.match.params.guest_id)\n console.log(this.state.user_type) \n }\n\n componentDidMount() {\n const { carts, onGetCarts } = this.props;\n onGetCarts(this.state.user_id);\n this.setState({\n carts\n });\n const { territoriesList, onGetTerritoriesList } = this.props;\n if (territoriesList && !territoriesList.length) {\n console.log(onGetTerritoriesList(this.state.user_id));\n }\n // let matchingMenuItem = null;\n // const ul = document.getElementById(\"navigation\");\n // const items = ul.getElementsByTagName(\"a\");\n // for (let i = 0; i < items.length; ++i) {\n // if (this.props.location.pathname === items[i].pathname) {\n // matchingMenuItem = items[i];\n // break;\n // }\n // }\n // if (matchingMenuItem) {\n // this.activateParentDropdown(matchingMenuItem);\n // }\n const { advertisementLives, onGetAdvertisementLives } = this.props;\n onGetAdvertisementLives(this.state.user_id);\n this.setState({ advertisementLives });\n \n let latitude;\n let longitude;\n \n const url = window.location.href;\n const queryString = url.substring(url.indexOf('&') + 1);\n const params = new URLSearchParams(queryString);\n console.log(\"print params in app\", url, queryString, params)\n \n const latitudeFromUrl = params.get('lat');\n const longitudeFromUrl = params.get('lon');\n \n console.log('Latitude:', latitudeFromUrl);\n console.log('Longitude:', longitudeFromUrl);\n \n // Check if latitude and longitude values are present in URL parameters\n if (latitudeFromUrl && longitudeFromUrl) {\n // Use latitude and longitude from URL\n latitude = parseFloat(latitudeFromUrl);\n longitude = parseFloat(longitudeFromUrl);\n console.log(\"print lat log in app\", latitude, longitude);\n \n // Call the dependent code here or pass the latitude and longitude values as arguments\n this.handleLocationUpdate(latitude, longitude);\n } else {\n navigator.geolocation.getCurrentPosition((position) => {\n latitude = position.coords.latitude;\n longitude = position.coords.longitude;\n console.log(\"web\", latitude, longitude);\n \n // Call the dependent code here or pass the latitude and longitude values as arguments\n this.handleLocationUpdate(latitude, longitude);\n });\n }\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000); // Set loading state to false after 7 seconds\n }\n\n handleLocationUpdate(latitude, longitude) {\n const { onGetNearbyTestsDiscounted } = this.props;\n\n setTimeout(() => {\n this.setState({ currentLatitude: latitude });\n this.setState({ currentLongitude: longitude });\n\n var data = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n km: this.state.km,\n LabType: this.state.LabType,\n page: this.state.page,\n\n };\n\n if (this.state.currentLatitude && this.state.currentLongitude) {\n onGetNearbyTestsDiscounted(data);\n\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 1000);\n }\n }, 1000);\n }\n\n openDescriptionModal = (e, arg) => {\n this.setState({\n DescriptionModal: true,\n description_in_english: arg.description_in_english,\n description_in_urdu: arg.description_in_urdu,\n test_name: arg.test_name,\n });\n };\n\n toggleDescriptionModal = () => {\n this.setState(prevState => ({\n DescriptionModal: !prevState.DescriptionModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { nearbyTests } = this.props;\n if (\n isEmpty(prevProps.nearbyTests) &&\n !isEmpty(nearbyTests) &&\n size(nearbyTests) !== size(prevProps.nearbyTests)\n ) {\n this.setState({ nearbyTests });\n }\n }\n toggleTab(tab) {\n if (this.state.activeTab !== tab) {\n this.setState({\n activeTab: tab,\n });\n }\n }\n\n onSelectDiscount = e => {\n const { value, checked } = e.target;\n const {\n filters,\n filters: { discount },\n } = this.state;\n this.setState(\n {\n filters: {\n ...filters,\n discount: discount.find(item => item === value)\n ? discount.filter(item => item !== value)\n : [...discount, value],\n },\n },\n () => {\n this.onFilterProducts(value, checked);\n }\n );\n };\n\n onFilterProducts = (value, checked) => {\n const {\n filters: { discount },\n } = this.state;\n let filteredProducts = productsData;\n if (!!checked && parseInt(value) === 0) {\n filteredProducts = productsData.filter(\n nearbyTest => nearbyTest.offer < 10\n );\n } else if (discount.length > 0) {\n filteredProducts = productsData.filter(\n nearbyTest => nearbyTest.offer >= Math.min(...discount)\n );\n }\n this.setState({ nearbyTests: filteredProducts });\n };\n\n onUpdate = (render, handle, value) => {\n this.setState({\n nearbyTests: productsData.filter(\n nearbyTest =>\n nearbyTest.newPrice >= value[0] && nearbyTest.newPrice <= value[1]\n ),\n });\n };\n\n /*\n on change rating checkbox method\n */\n onChangeRating = value => {\n this.setState({\n nearbyTests: productsData.filter(\n nearbyTest => nearbyTest.rating >= value\n ),\n });\n\n var modifiedRating = [...this.state.ratingvalues];\n modifiedRating.push(value);\n this.setState({ ratingvalues: modifiedRating });\n };\n\n onSelectRating = value => {\n this.setState({\n nearbyTests: productsData.filter(\n nearbyTest => nearbyTest.rating === value\n ),\n });\n };\n\n onUncheckMark = value => {\n var modifiedRating = [...this.state.ratingvalues];\n const modifiedData = (modifiedRating || []).filter(x => x !== value);\n /*\n find min values\n */\n var filteredProducts = productsData;\n if (modifiedData && modifiedData.length && value !== 1) {\n var minValue = Math.min(...modifiedData);\n if (minValue && minValue !== Infinity) {\n filteredProducts = productsData.filter(\n nearbyTest => nearbyTest.rating >= minValue\n );\n\n this.setState({ ratingvalues: modifiedData });\n }\n } else {\n filteredProducts = productsData;\n }\n this.setState({ nearbyTests: filteredProducts });\n };\n\n handlePageClick = page => {\n this.setState({ page });\n };\n\n handleBlur = () => {\n // Calling API when focus is out of test name and setting nearby tests array\n const { onGetNearbyTestsDiscounted } = this.props;\n\n var latitude;\n var longitude;\n\n if (this.state.search_type == \"Current Location\") {\n latitude = this.state.currentLatitude;\n longitude = this.state.currentLongitude;\n } else {\n latitude = \"\";\n longitude = \"\";\n }\n\n if (this)\n var data = {\n latitude: latitude,\n longitude: longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n\n };\n\n onGetNearbyTestsDiscounted(data);\n\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 1000);\n };\n\n onChangeAddress = e => {\n // Apply that city's latitude and longitude as city bound so that we see addresses of that city only\n var cityBounds = new google.maps.LatLngBounds(\n new google.maps.LatLng(this.state.latitude, this.state.longitude)\n );\n\n const options = {\n bounds: cityBounds,\n types: [\"establishment\"],\n componentRestrictions: { country: \"pk\" },\n };\n\n var searchBox = new window.google.maps.places.SearchBox(e.target, options);\n\n searchBox.addListener(\"places_changed\", () => {\n this.setState({ address: e.target.value });\n\n // Calling API whenever address changes and setting nearby tests array\n setTimeout(() => {\n const { onGetNearbyTestsDiscounted } = this.props;\n\n var data = {\n latitude: \"\",\n longitude: \"\",\n search_type: this.state.search_type,\n address: e.target.value,\n city: this.state.city,\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n\n };\n\n onGetNearbyTestsDiscounted(data);\n\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 1000);\n }, 1000);\n });\n };\n\n onChangeKm = e => {\n this.setState({ km: e.target.value });\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyTestsDiscounted } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var data = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n km: e.target.value,\n LabType: this.state.LabType,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n page: this.state.page,\n\n\n };\n // region wise advertisement\n onGetNearbyTestsDiscounted(data);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 1000);\n };\n\n onChangeSearchType = e => {\n this.setState({ search_type: e.target.value });\n\n // Call nearby labs API only if the search type changes to current location\n if (e.target.value === \"Current Location\") {\n this.setState({ city: \"\" });\n this.setState({ address: \"\" });\n\n const { onGetNearbyTestsDiscounted } = this.props;\n\n var data = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: e.target.value,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n\n };\n\n onGetNearbyTestsDiscounted(data);\n\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 1000);\n }\n };\n\n onChangeCity = selectedGroup => {\n this.setState({ city: selectedGroup.value });\n\n const { onGetNearbyTestsDiscounted } = this.props;\n\n // ------------- Call API on city name START -------------\n var data = {\n latitude: \"\",\n longitude: \"\",\n search_type: this.state.search_type,\n address: this.state.address,\n city: selectedGroup.value,\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n\n };\n\n onGetNearbyTestsDiscounted(data);\n\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 1000);\n\n // ------------- Call API on city name END -------------\n\n var latitude = \"\";\n var longitude = \"\";\n\n setTimeout(() => {\n var geocoder = new google.maps.Geocoder();\n\n // Concatenate city selected with Pakistan, so that it can be set as proper address\n var address = selectedGroup.value + \", Pakistan\";\n\n // Using geocoder search address and get its latitude and longitude\n geocoder.geocode({ address: address }, function (results, status) {\n if (status == google.maps.GeocoderStatus.OK) {\n latitude = results[0].geometry.location.lat();\n longitude = results[0].geometry.location.lng();\n }\n });\n\n // Set the values of simple variables to the state variables of latitude and longitude\n // so that it can be used outside of this function\n setTimeout(() => {\n this.setState({ latitude: latitude });\n this.setState({ longitude: longitude });\n }, 1000);\n }, 1000);\n };\n\n onChangeType = e => {\n this.setState({ LabType: e.target.value });\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyTestsDiscounted } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var data = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n LabType: e.target.value,\n km: this.state.km,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n // region wise advertisement\n onGetNearbyTestsDiscounted(data);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n \n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 1000);\n };\n\n handleAddToCart = (cart) => {\n const { onAddToCart } = this.props;\n \n // Check if the item is already in the cart based on user type\n if (!this.state.user_id) {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n this.setState({ guest_id: this.props.match.params.guest_id });\n cart.guest_id = this.props.match.params.guest_id;\n onAddToCart(cart, cart.guest_id);\n \n console.log(\"uuid:\", cart.guest_id, this.props.match.params.guest_id);\n } else if (this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.state.user_id);\n } else if (this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.props.match.params.guest_id);\n } else if (this.state.user_type === \"b2bclient\" && this.state.user_type !== \"CSR\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.props.match.params.uuid);\n }\n \n // Update the state to include the newly added item in the cart\n const updatedItemsInCart = [...this.state.itemsInCart, cart];\n this.setState({ itemsInCart: updatedItemsInCart });\n \n this.showSuccessMessage(\"Item added Successfully\");\n };\n \n showPopup = (message, textColor) => {\n // Create and style the popup\n const popup = document.createElement(\"div\");\n popup.style.display = \"none\";\n popup.style.position = \"fixed\";\n popup.style.top = \"0\";\n popup.style.left = \"0\";\n popup.style.width = \"100%\";\n popup.style.height = \"100%\";\n popup.style.background = \"rgba(0, 0, 0, 0.5)\";\n popup.style.zIndex = \"1000\";\n \n const popupContent = document.createElement(\"div\");\n popupContent.style.position = \"absolute\";\n popupContent.style.top = \"50%\";\n popupContent.style.left = \"50%\";\n popupContent.style.transform = \"translate(-50%, -50%)\";\n popupContent.style.background = \"#fff\";\n popupContent.style.padding = \"20px\";\n popupContent.style.borderRadius = \"5px\";\n popupContent.style.boxShadow = \"0 0 10px rgba(0, 0, 0, 0.3)\";\n \n const messageElement = document.createElement(\"div\");\n messageElement.style.fontSize = \"18px\";\n messageElement.style.textAlign = \"center\";\n messageElement.style.color = textColor; // Set the text color\n \n // Set the message\n messageElement.textContent = message;\n \n // Append elements to the DOM\n popupContent.appendChild(messageElement);\n popup.appendChild(popupContent);\n document.body.appendChild(popup);\n \n // Show the popup\n popup.style.display = \"block\";\n \n // Hide the popup after a certain duration (e.g., 3 seconds)\n setTimeout(() => {\n popup.style.display = \"none\";\n }, 1000); // 3000 milliseconds = 3 seconds\n };\n \n // activateParentDropdown = item => {\n // item.classList.add(\"active\");\n // const parent = item.parentElement;\n // if (parent) {\n // parent.classList.add(\"active\"); // li\n // const parent2 = parent.parentElement;\n // parent2.classList.add(\"active\"); // li\n // const parent3 = parent2.parentElement;\n // if (parent3) {\n // parent3.classList.add(\"active\"); // li\n // const parent4 = parent3.parentElement;\n // if (parent4) {\n // parent4.classList.add(\"active\"); // li\n // const parent5 = parent4.parentElement;\n // if (parent5) {\n // parent5.classList.add(\"active\"); // li\n // const parent6 = parent5.parentElement;\n // if (parent6) {\n // parent6.classList.add(\"active\"); // li\n // }\n // }\n // }\n // }\n // }\n // return false;\n // };\n handlePageClick = page => {\n this.setState({ page });\n };\n toggleFullscreen() {\n if (\n !document.fullscreenElement &&\n /* alternative standard method */ !document.mozFullScreenElement &&\n !document.webkitFullscreenElement\n ) {\n // current working methods\n if (document.documentElement.requestFullscreen) {\n document.documentElement.requestFullscreen();\n } else if (document.documentElement.mozRequestFullScreen) {\n document.documentElement.mozRequestFullScreen();\n } else if (document.documentElement.webkitRequestFullscreen) {\n document.documentElement.webkitRequestFullscreen(\n Element.ALLOW_KEYBOARD_INPUT\n );\n }\n } else {\n if (document.cancelFullScreen) {\n document.cancelFullScreen();\n } else if (document.mozCancelFullScreen) {\n document.mozCancelFullScreen();\n } else if (document.webkitCancelFullScreen) {\n document.webkitCancelFullScreen();\n }\n }\n }\n\n onChangepage = async (e, pageNumber) => {\n e.preventDefault();\n this.setState({ page: pageNumber }); // Update the page in the state\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyTestsDiscounted } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var data = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n page: pageNumber, // Use the updated page number\n km: this.state.km,\n LabType: this.state.LabType,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n\n };\n // region wise advertisement\n onGetNearbyTestsDiscounted(data);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n\n setTimeout(() => {\n this.setState({ nearbyTests: this.props.nearbyTests });\n }, 1000);\n };\n calculateTotalPage = (items) => {\n const itemsPerPage = Math.min(5, items.length); // Number of items to display per page, up to a maximum of 50\n const totalItems = items.length;\n console.log(\"total pahe number\", totalItems)\n return Math.ceil(totalItems / itemsPerPage);\n };\n\n render() {\n const { onGetCarts } = this.props;\n\n const { carts } = this.props;\n const totalPage = !isEmpty(this.props.nearbyTests) ? this.calculateTotalPage(this.props.nearbyTests) : 1;\n console.log(\"total pahe number\", totalPage)\n const { loading } = this.state;\n const isLargeScreen = window.innerWidth < 490;\n\n const { page } = this.state;\n const cityList = [];\n for (let i = 0; i < this.props.territoriesList.length; i++) {\n cityList.push({\n label: this.props.territoriesList[i].city,\n value: this.props.territoriesList[i].city,\n });\n }\n\n return (\n \n
\n
\n \n {this.state.user_id && this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\"\n ? (\n \n
    \n
  • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Labs\n \n
  • \n\n
  • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n \n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n )}\n
\n \n ) : null}\n {!this.state.user_id\n ? (\n \n
    \n {this.props.match.params.filnalurl ? (\n
  • \n \n Labs\n \n
  • \n ) : (\n
  • \n \n Labs\n \n
  • \n )}\n\n{this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Tests\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Tests\n \n
  • \n ) : null}\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : null}\n\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Packages\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Packages\n \n
  • \n ) : null}\n\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : null}\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Book a Test\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Book a Test\n \n
  • \n ) : null}\n\n\n \n {/*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
    \n
  • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n /*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
    \n
  • */\n )}\n
\n \n\n ) \n : this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\" ? (\n \n
    \n
  • \n \n Labs\n {/* {this.props.t(\"Labs\")} */}\n \n
  • \n\n
  • \n {/* \n {this.props.t(\"Search by Tests\")}\n */}\n \n {/* {this.props.t(\"Tests\")} */}\n Tests\n \n
  • \n
  • \n \n {/* {this.props.t(\"Profiles\")} */}\n Profiles\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n {/*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
    \n
  • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n /*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
    \n
  • */\n )}\n\n
\n \n ) :\n this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type === \"b2bclient\" ? (\n \n
    \n
  • \n \n Labs\n \n
  • \n\n
  • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n )}\n
\n \n ) : null}\n\n \n
\n
\n
\n \n Search by Tests | Lab Hazir - Dashboard\n \n \n \n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n

\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n {/* \n \n \n Filter\n \n \n */}\n\n {/* */}\n \n val === \"Custom Address\",\n then: Yup.string().required(\"Please enter your City\"),\n }),\n location: Yup.string().when(\"city\", {\n is: val => val != \"\",\n then: Yup.string().required(\"Please enter your Location\"),\n }),\n })}\n >\n {({ errors, status, touched }) => (\n \n {/* Type field */}\n \n \n
\n \n Search By Test Name\n \n
\n \n this.setState({\n test_name: e.target.value,\n })\n }\n onBlur={this.handleBlur}\n value={this.state.test_name}\n />\n
\n
\n \n {/* \n
\n \n Search Types\n \n this.onChangeSearchType(e)}\n value={this.state.search_type}\n className=\"form-select\"\n >\n \n \n \n \n
\n \n \n
\n \n Search By Labs Type\n \n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n >\n \n \n \n \n
\n \n {this.state.search_type === \"Current Location\" && (\n \n
\n Search By Kilometers\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n style={{ fontSize: '14px' }} // Set input font size to 14 pixels\n placeholder=\"Search By Km...\"\n\n />\n
\n
\n )}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n Search By Kilometers\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n style={{ fontSize: '14px' }} // Set input font size to 14 pixels\n placeholder=\"Search By Km...\"\n\n />\n
\n
\n )}\n {this.state.search_type === \"City\" && (\n \n
\n \n Search By City\n \n \n
\n )}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n \n Search By Custom Address\n \n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Search Location...\"\n />\n
\n )} */}\n
\n \n )}\n \n
\n\n {/* Alerts to show success and error messages when item is added to the cart */}\n {this.state.success ? (\n \n {this.state.success}\n \n ) : this.state.error ? (\n \n {this.state.error}\n \n ) : null}\n\n \n {!isEmpty(this.props.nearbyTests) &&\n this.props.nearbyTests.map((nearbyTest, key) => (\n \n \n \n {/*
\n \n
*/}\n\n
\n
\n \n {nearbyTest.test_name} \n \n
\n {/*
*/}\n \n this.openDescriptionModal(e, nearbyTest)\n }\n >\n Test Description\n \n\n {(nearbyTest.discount >= 0.01) && ((nearbyTest.all_discount_by_labhazir + nearbyTest.discount_by_labhazir) >= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {nearbyTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((nearbyTest.price - (nearbyTest.discount + nearbyTest.all_discount_by_labhazir + nearbyTest.discount_by_labhazir) * nearbyTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {(nearbyTest.discount >= 0.01) && ((nearbyTest.all_discount_by_labhazir + nearbyTest.discount_by_labhazir) <= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {nearbyTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((nearbyTest.price - (nearbyTest.discount + nearbyTest.all_discount_by_labhazir + nearbyTest.discount_by_labhazir) * nearbyTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {(nearbyTest.discount <= 0.01) && ((nearbyTest.all_discount_by_labhazir + nearbyTest.discount_by_labhazir) >= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {nearbyTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((nearbyTest.price - (nearbyTest.discount + nearbyTest.all_discount_by_labhazir + nearbyTest.discount_by_labhazir) * nearbyTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {/* {(nearbyTest.discount <= 0.01) && ((nearbyTest.all_discount_by_labhazir + nearbyTest.discount_by_labhazir) <= 0.01) && (\n
\n \n Rs {((nearbyTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )} */}\n {nearbyTest.discount>=0.01 && (\n
\n \n {\" \"}\n Discount Lab: {(nearbyTest.discount*100).toFixed()} % \n \n
\n )}\n {(nearbyTest.all_discount_by_labhazir + nearbyTest.discount_by_labhazir) >= 0.01 && (\n
\n \n {\" \"}\n Discount LabHazir: {((nearbyTest.all_discount_by_labhazir * 100) + (nearbyTest.discount_by_labhazir * 100)).toFixed()} %\n \n\n
\n )}\n\n
\n \n Reporting\n Time: {nearbyTest.duration_required}{\" \"}\n {nearbyTest.duration_type}\n \n
\n\n
\n \n Home Sampling:{\" \"}\n {nearbyTest.is_home_sampling_available}\n \n
\n\n
\n {\" \"}\n {!this.state.user_id ? (\n \n \n {nearbyTest.lab_name}{\" \"}\n \n \n \n ): this.state.user_id ? (\n \n \n {nearbyTest.lab_name}{\" \"}\n \n \n \n ):null}\n \n \n \n \n \n \n {nearbyTest && nearbyTest.rating && (\n

{nearbyTest.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n {/* \n Lab:{\" \"}\n {nearbyTest.lab_name}\n */}\n
\n\n
\n {\" \"}\n {(this.state.user_id) && (this.state.user_type ===\"CSR\") && (\n \n \n {nearbyTest.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !==\"CSR\") && (\n \n \n {nearbyTest.lab_name}{\" \"}\n\n \n \n )}\n
\n \n {/* this.handleAddToCart(nearbyTest)}\n disabled={this.state.itemsInCart.includes(nearbyTest)} // Disable the button if the item is in the cart\n>\n {this.state.itemsInCart.includes(nearbyTest) ? 'Already Added' : 'Add to cart'}\n */}\n cartItem.offered_test_id === nearbyTest.id) ? 'secondary' : 'primary'}\n className={`btn mt-3 me-1${this.props.carts.some(cartItem => cartItem.offered_test_id === nearbyTest.id) ? ' disabled' : ''}`}\n // onClick={() => this.handleAddToCart(nearbyTest)}\n onClick={() => {\n // Check if nearbyTest.name is equal to any cartItem.name\n if (this.props.carts.some(cartItem => cartItem.test_name === nearbyTest.test_name)) {\n alert(\"An item with the same name but from a different lab is already in the cart. Please remove the previous one first.\");\n } else {\n // If not, proceed with adding to the cart\n this.handleAddToCart(nearbyTest);\n }\n }}\n disabled={this.props.carts.some(cartItem => cartItem.offered_test_id === nearbyTest.id)}\n>\n {this.props.carts.some(cartItem => cartItem.offered_test_id === nearbyTest.id) ? 'Already Added' : 'Add to cart'}\n\n
\n \n \n \n ))}\n \n {isEmpty(this.props.nearbyTests) && (\n loading ? (\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n
\n Sorry, No Tests Found In Your Specific Area.....\n
\n \n
\n )\n )}\n \n {!isEmpty(this.props.nearbyTests) ? (\n \n \n \n \n this.onChangepage(e, page - 1)}\n />\n \n {Array.from({ length: totalPage }, (_, i) => {\n const pageNumber = i + 1;\n return (\n \n this.onChangepage(e, pageNumber)} href=\"#\">\n {pageNumber}\n \n \n );\n })}\n \n this.onChangepage(e, page + 1)}\n />\n \n \n \n \n ) : null}\n \n \n \n
\n \n );\n }\n}\n\nNearbyTests.propTypes = {\n history: any,\n location: any,\n match: PropTypes.object,\n nearbyTests: PropTypes.array,\n advertisementLives: PropTypes.array,\n onGetAdvertisementLives: PropTypes.func,\n onGetNearbyTestsDiscounted: PropTypes.func,\n onAddToCart: PropTypes.func,\n success: PropTypes.any,\n error: PropTypes.any,\n className: PropTypes.any,\n TestMarket: PropTypes.any,\n menuOpen: PropTypes.any,\n t: PropTypes.any,\n onGetTerritoriesList: PropTypes.func,\n territoriesList: PropTypes.array,\n carts: PropTypes.any,\n onGetCarts: PropTypes.func,\n};\n\nconst mapStateToProps = ({ TestMarket, carts, advertisementLives }) => ({\n nearbyTests: TestMarket.nearbyTests,\n success: carts.success,\n error: carts.error,\n advertisementLives: advertisementLives.advertisementLives,\n territoriesList: TestMarket.territoriesList,\n carts: carts.carts,\n\n});\n// const mapStateToProps = ({ nearbyTests }) => ({\n// nearbyTests: nearbyTests.nearbyTests,\n// });\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetNearbyTestsDiscounted: data => dispatch(getNearbyTestsDiscounted(data)),\n onAddToCart: (cart, id) => dispatch(addToCart(cart, id)),\n onGetAdvertisementLives: id => dispatch(getAdvertisementLives(id)),\n onGetTerritoriesList: id => dispatch(getTerritoriesList(id)),\n onGetCarts: id => dispatch(getCarts(id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(NearbyTests));","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select, { components } from 'react-select';\nimport { Formik, Field, Form } from \"formik\";\nimport { Collapse } from \"reactstrap\";\nimport * as Yup from \"yup\";\nimport MetaTags from \"react-meta-tags\";\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\nimport {\n Alert,\n Button,\n Card,\n CardBody,\n CardTitle,\n Col,\n Modal,\n ModalHeader,\n ModalBody,\n Container,\n Input,\n Label,\n Pagination,\n PaginationItem,\n PaginationLink,\n Row,\n} from \"reactstrap\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\n//Import Star Ratings\nimport StarRatings from \"react-star-ratings\";\n\n// RangeSlider\nimport Nouislider from \"nouislider-react\";\nimport \"nouislider/distribute/nouislider.css\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport ScrollButton from \"components/Common/Scrollbutton\";\n\n//Import data\nimport { productsData } from \"common/data\";\n\n//Import actions\nimport { getNearbyProfiles, getProfiles } from \"store/profilemarket/actions\";\nimport { addToCart } from \"store/actions\";\nimport { any } from \"prop-types\";\nimport \"./nearbylabs.scss\";\n\nimport { CITIES } from \"helpers/global_variables_helper\";\nimport { getTerritoriesList } from \"store/territories-list/actions\";\nimport { getLabNamesList } from \"store/lab-names/actions\";\nimport { getCarts } from \"store/carts/actions\";\n\n\nclass NearbyProfiles extends Component {\n constructor(props) {\n super(props);\n this.state = { value: \"\" };\n this.state = {\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n ratingvalues: [],\n Profiles: [],\n nearbyProfiles: [],\n territoriesList: [],\n labNamesList: [],\n carts: [],\n name: \"\",\n activeTab: \"1\",\n address: \"\",\n test_name: \"\",\n test_type: \"\",\n search_type: \"\",\n city: \"\",\n latitude: \"\",\n longitude: \"\",\n currentLatitude: \"\",\n currentLongitude: \"\",\n location: \"\",\n km: \"30\",\n page: \"1\",\n LabType: \"\",\n locationAccessAllowed: \"\",\n success: \"\",\n error: \"\",\n discountData: [],\n itemsInCart: [],\n loading: true, // Add loading state property\n filters: {\n discount: [],\n price: { min: 0, max: 500 },\n },\n page: 1,\n };\n this.toggleTab = this.toggleTab.bind(this);\n this.onSelectRating = this.onSelectRating.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n console.log(\"yaha ani chahi hai uuid\", this.props.match.params.uuid)\n console.log(\"yaha ani chahi hai guid\", this.props.match.params.guest_id)\n console.log(this.state.user_type)\n }\n\n componentDidMount() {\n const { carts, onGetCarts } = this.props;\n onGetCarts(this.state.user_id);\n this.setState({\n carts\n });\n console.log(\"this.props.carts:\", this.props.carts);\n console.log(\"Color:\", (this.state.itemsInCart.some(item => item.id === this.props.carts.offered_test_id) ? 'secondary' : 'primary'));\n console.log(\"offered_test_id:\", this.props.carts.offered_test_id);\n const {\n onGetNearbyProfiles,\n } = this.props;\n const { territoriesList, onGetTerritoriesList } = this.props;\n if (territoriesList && !territoriesList.length) {\n console.log(onGetTerritoriesList(this.state.user_id));\n }\n const { labNamesList, onGetLabNamesList } = this.props;\n\n if (labNamesList && !labNamesList.length) {\n console.log(onGetLabNamesList(this.state.user_id));\n }\n const { Profiles, onGetProfiles } = this.props;\n\n if (Profiles && !Profiles.length) {\n console.log(onGetProfiles(this.state.user_id));\n }\n // let matchingMenuItem = null;\n // const ul = document.getElementById(\"navigation\");\n // const items = ul.getElementsByTagName(\"a\");\n // for (let i = 0; i < items.length; ++i) {\n // if (this.props.location.pathname === items[i].pathname) {\n // matchingMenuItem = items[i];\n // break;\n // }\n // }\n // if (matchingMenuItem) {\n // this.activateParentDropdown(matchingMenuItem);\n // } \n let latitude;\n let longitude;\n \n const url = window.location.href;\n const queryString = url.substring(url.indexOf('&') + 1);\n const params = new URLSearchParams(queryString);\n console.log(\"print params in app\", url, queryString, params)\n \n const latitudeFromUrl = params.get('lat');\n const longitudeFromUrl = params.get('lon');\n \n console.log('Latitude:', latitudeFromUrl);\n console.log('Longitude:', longitudeFromUrl);\n \n // Check if latitude and longitude values are present in URL parameters\n if (latitudeFromUrl && longitudeFromUrl) {\n // Use latitude and longitude from URL\n latitude = parseFloat(latitudeFromUrl);\n longitude = parseFloat(longitudeFromUrl);\n console.log(\"print lat log in app\", latitude, longitude);\n \n // Call the dependent code here or pass the latitude and longitude values as arguments\n this.handleLocationUpdate(latitude, longitude);\n } else {\n if (navigator.geolocation) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n };\n \n // Call onGetNearbyLabs before prompting for geolocation\n onGetNearbyProfiles(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyProfiles: this.props.nearbyProfiles });\n }, 500);\n navigator.geolocation.getCurrentPosition((position) => {\n latitude = position.coords.latitude;\n longitude = position.coords.longitude;\n console.log(\"web\", latitude, longitude);\n\n this.setState({ currentLatitude: latitude });\n this.setState({ currentLongitude: longitude });\n this.setState({ locationAccessAllowed: true });\n this.setState({ search_type: \"Current Location\" });\n this.setState({ LabType: \"Main\" });\n // near by labs\n if ((this.state.user_id || this.state.user_type === \"CSR\")) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n console.log(window.location.href);\n if (latitude && longitude) {\n onGetNearbyProfiles(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyProfiles: this.props.nearbyProfiles });\n }, 500);\n }\n }\n\n // near by labs\n if (this.state.user_id || this.state.user_type === \"b2bclient\") {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n if (latitude && longitude) {\n onGetNearbyProfiles(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyProfiles: this.props.nearbyProfiles });\n }, 500);\n }\n }\n\n if ((!this.state.user_id) || this.props.match.params.guest_id) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n console.log(window.location.href);\n if (latitude && longitude) {\n onGetNearbyProfiles(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyProfiles: this.props.nearbyProfiles });\n }, 500);\n }\n }\n if (this.state.user_id) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n name: this.state.name,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n if (latitude && longitude) {\n onGetNearbyProfiles(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyProfiles: this.props.nearbyProfiles });\n }, 500);\n }\n }\n }, () => {\n // Location access denied by the user\n // console.log(\"Location access denied by the user.\");\n // this.setState({ locationAccessAllowed: false });\n // const denialMessage = \"For accurate results, please allow location access.\";\n // alert(denialMessage); // You can use an alert, or create a message element in your UI.\n // // Handle the denial here. You can display a message, set default values, or perform other actions as needed.\n\n // Example:\n this.setState({ latitude: null, longitude: null });\n // near by labs\n if ((this.state.user_id || this.state.user_type === \"CSR\") && this.props.match.params.guest_id) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n console.log(window.location.href);\n if (latitude && longitude) {\n onGetNearbyProfiles(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyProfiles: this.props.nearbyProfiles });\n }, 500);\n }\n }\n\n // near by labs\n if (this.state.user_id || this.state.user_type === \"b2bclient\") {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n name: this.state.name,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n if (latitude && longitude) {\n onGetNearbyProfiles(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyProfiles: this.props.nearbyProfiles });\n }, 500);\n }\n }\n\n if ((!this.state.user_id) && this.props.match.params.guest_id) {\n\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n console.log(window.location.href);\n onGetNearbyProfiles(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyProfiles: this.props.nearbyProfiles });\n }, 500);\n }\n if (this.state.user_id) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n test_name: this.state.test_name,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n name: this.state.name,\n page: this.state.page,\n\n };\n onGetNearbyProfiles(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyProfiles: this.props.nearbyProfiles });\n }, 500);\n }\n }\n );\n } else {\n // Geolocation is not supported by the browser\n console.log(\"Geolocation is not supported by the browser.\");\n // Handle this scenario as needed, e.g., display an error message or provide alternative functionality.\n }\n }\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000); // Set loading state to false after 7 seconds\n }\n\n handleLocationUpdate(latitude, longitude) {\n const { Profiles, onGetProfiles } = this.props;\n if (Profiles && !Profiles.length) {\n console.log(onGetProfiles(this.state.user_id));\n }\n const { onGetNearbyProfiles } = this.props;\n\n setTimeout(() => {\n this.setState({ currentLatitude: latitude });\n this.setState({ currentLongitude: longitude });\n\n var data = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n page: this.state.page,\n test_name: this.state.test_name,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n\n if (this.state.currentLatitude && this.state.currentLongitude) {\n onGetNearbyProfiles(data);\n\n setTimeout(() => {\n this.setState({ nearbyProfiles: this.props.nearbyProfiles });\n }, 1000);\n }\n }, 1000);\n }\n\n openDescriptionModal = (e, arg) => {\n this.setState({\n DescriptionModal: true,\n description_in_english: arg.description_in_english,\n description_in_urdu: arg.description_in_urdu,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n toggleDescriptionModal = () => {\n this.setState(prevState => ({\n DescriptionModal: !prevState.DescriptionModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { nearbyProfiles } = this.props;\n if (\n isEmpty(prevProps.nearbyProfiles) &&\n !isEmpty(nearbyProfiles) &&\n size(nearbyProfiles) !== size(prevProps.nearbyProfiles)\n ) {\n this.setState({ nearbyProfiles });\n }\n }\n toggleTab(tab) {\n if (this.state.activeTab !== tab) {\n this.setState({\n activeTab: tab,\n });\n }\n }\n // activateParentDropdown = item => {\n // item.classList.add(\"active\");\n // const parent = item.parentElement;\n // if (parent) {\n // parent.classList.add(\"active\"); // li\n // const parent2 = parent.parentElement;\n // parent2.classList.add(\"active\"); // li\n // const parent3 = parent2.parentElement;\n // if (parent3) {\n // parent3.classList.add(\"active\"); // li\n // const parent4 = parent3.parentElement;\n // if (parent4) {\n // parent4.classList.add(\"active\"); // li\n // const parent5 = parent4.parentElement;\n // if (parent5) {\n // parent5.classList.add(\"active\"); // li\n // const parent6 = parent5.parentElement;\n // if (parent6) {\n // parent6.classList.add(\"active\"); // li\n // }\n // }\n // }\n // }\n // }\n // return false;\n // };\n onSelectDiscount = e => {\n const { value, checked } = e.target;\n const {\n filters,\n filters: { discount },\n } = this.state;\n this.setState(\n {\n filters: {\n ...filters,\n discount: discount.find(item => item === value)\n ? discount.filter(item => item !== value)\n : [...discount, value],\n },\n },\n () => {\n this.onFilterProducts(value, checked);\n }\n );\n };\n\n onFilterProducts = (value, checked) => {\n const {\n filters: { discount },\n } = this.state;\n let filteredProducts = productsData;\n if (!!checked && parseInt(value) === 0) {\n filteredProducts = productsData.filter(\n nearbyProfile => nearbyProfile.offer < 10\n );\n } else if (discount.length > 0) {\n filteredProducts = productsData.filter(\n nearbyProfile => nearbyProfile.offer >= Math.min(...discount)\n );\n }\n this.setState({ nearbyProfiles: filteredProducts });\n };\n\n onUpdate = (render, handle, value) => {\n this.setState({\n nearbyProfiles: productsData.filter(\n nearbyProfile =>\n nearbyProfile.newPrice >= value[0] &&\n nearbyProfile.newPrice <= value[1]\n ),\n });\n };\n\n /*\n on change rating checkbox method\n */\n onChangeRating = value => {\n this.setState({\n nearbyProfiles: productsData.filter(\n nearbyProfile => nearbyProfile.rating >= value\n ),\n });\n\n var modifiedRating = [...this.state.ratingvalues];\n modifiedRating.push(value);\n this.setState({ ratingvalues: modifiedRating });\n };\n\n onSelectRating = value => {\n this.setState({\n nearbyProfiles: productsData.filter(\n nearbyProfile => nearbyProfile.rating === value\n ),\n });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n test_details: arg.test_details,\n });\n };\n\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n onUncheckMark = value => {\n var modifiedRating = [...this.state.ratingvalues];\n const modifiedData = (modifiedRating || []).filter(x => x !== value);\n /*\n find min values\n */\n var filteredProducts = productsData;\n if (modifiedData && modifiedData.length && value !== 1) {\n var minValue = Math.min(...modifiedData);\n if (minValue && minValue !== Infinity) {\n filteredProducts = productsData.filter(\n nearbyProfile => nearbyProfile.rating >= minValue\n );\n\n this.setState({ ratingvalues: modifiedData });\n }\n } else {\n filteredProducts = productsData;\n }\n this.setState({ nearbyProfiles: filteredProducts });\n };\n\n handlePageClick = page => {\n this.setState({ page });\n };\n onChangeLabName = (selectedGroup) => {\n if (!selectedGroup) {\n this.setState({ name: '' });\n } else {\n this.setState({ name: selectedGroup.value });\n }\n \n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyProfiles } = this.props;\n\n var latitude;\n var longitude;\n\n if (this.state.search_type == \"Current Location\") {\n latitude = this.state.currentLatitude;\n longitude = this.state.currentLongitude;\n } else {\n latitude = \"\";\n longitude = \"\";\n }\n\n if (this)\n var data = {\n latitude: latitude,\n longitude: longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n name: selectedGroup ? selectedGroup.value : '', // Ensure selectedGroup is not null\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n locationAccessAllowed: this.state.locationAccessAllowed,\n };\n\n onGetNearbyProfiles(data);\n \n setTimeout(() => {\n this.setState({ nearbyProfiles: this.props.nearbyProfiles });\n }, 1000);\n };\n\n\n onchangename = (selectedGroup) => {\n if (!selectedGroup) {\n this.setState({ test_name: '' }, () => {\n // Calling API when focus is out of test name and setting nearby tests array\n const { onGetNearbyProfiles } = this.props;\n var latitude;\n var longitude;\n \n if (this.state.search_type === \"Current Location\") {\n latitude = this.state.currentLatitude;\n longitude = this.state.currentLongitude;\n } else {\n latitude = \"\";\n longitude = \"\";\n }\n \n var data = {\n latitude: latitude,\n longitude: longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n page: this.state.page,\n test_name: selectedGroup ? selectedGroup.value : '', // Ensure selectedGroup is not null\n LabType: this.state.LabType,\n km: this.state.km,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n };\n \n onGetNearbyProfiles(data);\n \n setTimeout(() => {\n this.setState({ nearbyProfiles: this.props.nearbyProfiles });\n }, 1000);\n });\n } else {\n this.setState({ test_name: selectedGroup.value }, () => {\n // Calling API when focus is out of test name and setting nearby tests array\n const { onGetNearbyProfiles } = this.props;\n var latitude;\n var longitude;\n \n if (this.state.search_type === \"Current Location\") {\n latitude = this.state.currentLatitude;\n longitude = this.state.currentLongitude;\n } else {\n latitude = \"\";\n longitude = \"\";\n }\n \n var data = {\n latitude: latitude,\n longitude: longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n page: this.state.page,\n test_name: selectedGroup ? selectedGroup.value : '', // Ensure selectedGroup is not null\n LabType: this.state.LabType,\n km: this.state.km,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n };\n \n onGetNearbyProfiles(data);\n \n setTimeout(() => {\n this.setState({ nearbyProfiles: this.props.nearbyProfiles });\n }, 1000);\n });\n }\n };\n \n \n onChangeKm = e => {\n this.setState({ km: e.target.value });\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyProfiles } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var data = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n km: e.target.value,\n page: this.state.page,\n LabType: this.state.LabType,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n // region wise advertisement\n onGetNearbyProfiles(data);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n\n setTimeout(() => {\n this.setState({ nearbyProfiles: this.props.nearbyProfiles });\n }, 1000);\n };\n onChangepage = async (e, pageNumber) => {\n e.preventDefault();\n this.setState({ page: pageNumber }); // Update the page in the state\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyProfiles } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var data = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n page: pageNumber, // Use the updated page number\n km: this.state.km,\n LabType: this.state.LabType,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n // region wise advertisement\n onGetNearbyProfiles(data);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n\n setTimeout(() => {\n this.setState({ nearbyProfiles: this.props.nearbyProfiles });\n }, 1000);\n };\n\n onChangeType = e => {\n this.setState({ LabType: e.target.value });\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyProfiles } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var data = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n LabType: e.target.value,\n km: this.state.km,\n page: this.state.page,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n // region wise advertisement\n onGetNearbyProfiles(data);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n\n setTimeout(() => {\n this.setState({ nearbyProfiles: this.props.nearbyProfiles });\n }, 1000);\n };\n\n\n onChangeAddress = e => {\n // Apply that city's latitude and longitude as city bound so that we see addresses of that city only\n var cityBounds = new google.maps.LatLngBounds(\n new google.maps.LatLng(this.state.latitude, this.state.longitude)\n );\n\n const options = {\n bounds: cityBounds,\n types: [\"establishment\"],\n componentRestrictions: { country: \"pk\" },\n };\n\n var searchBox = new window.google.maps.places.SearchBox(e.target, options);\n\n searchBox.addListener(\"places_changed\", () => {\n this.setState({ address: e.target.value });\n\n // Calling API whenever address changes and setting nearby tests array\n setTimeout(() => {\n const { onGetNearbyProfiles } = this.props;\n\n var data = {\n latitude: \"\",\n longitude: \"\",\n search_type: this.state.search_type,\n address: e.target.value,\n city: this.state.city,\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n\n onGetNearbyProfiles(data);\n\n setTimeout(() => {\n this.setState({ nearbyProfiles: this.props.nearbyProfiles });\n }, 1000);\n }, 1000);\n });\n };\n\n onChangeSearchType = async e => {\n this.setState({ search_type: e.target.value });\n \n // Call nearby tests API only if the search type changes to current location\n if (e.target.value === \"Current Location\") {\n this.setState({ city: \"\" });\n this.setState({ address: \"\" });\n \n // Check if the geolocation API is supported\n if (\"geolocation\" in navigator) {\n try {\n const locationPermission = await navigator.permissions.query({ name: 'geolocation' });\n \n if (locationPermission.state === 'denied' && !this.state.locationAccessAllowed) {\n // Location access is denied\n // Show the PatientModal only when the user explicitly clicks on \"Current Location\"\n this.setState({ PatientModal: true });\n } else {\n // Location access is prompted, ask the user for permission\n const position = await new Promise((resolve, reject) => {\n navigator.geolocation.getCurrentPosition(resolve, reject);\n });\n \n var data = {\n latitude: position.coords.latitude,\n longitude: position.coords.longitude,\n search_type: e.target.value,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n };\n \n const { onGetNearbyProfiles } = this.props;\n onGetNearbyProfiles(data);\n \n setTimeout(() => {\n this.setState({ nearbyProfiles: this.props.nearbyProfiles, locationAccessAllowed: true });\n }, 1000);\n }\n } catch (error) {\n console.error('Error checking location permission:', error);\n }\n } else {\n // Geolocation API is not supported, show an error message\n this.setState({ PatientModal: true }); // Show the modal for error\n }\n }\n };\n \n\n onChangeCity = selectedGroup => {\n this.setState({ city: selectedGroup.value });\n\n const { onGetNearbyProfiles } = this.props;\n\n // ------------- Call API on city name START -------------\n var data = {\n latitude: \"\",\n longitude: \"\",\n search_type: this.state.search_type,\n address: this.state.address,\n city: selectedGroup.value,\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n\n };\n\n onGetNearbyProfiles(data);\n\n setTimeout(() => {\n this.setState({ nearbyProfiles: this.props.nearbyProfiles });\n }, 1000);\n\n // ------------- Call API on city name END -------------\n\n var latitude = \"\";\n var longitude = \"\";\n\n setTimeout(() => {\n var geocoder = new google.maps.Geocoder();\n\n // Concatenate city selected with Pakistan, so that it can be set as proper address\n var address = selectedGroup.value + \", Pakistan\";\n\n // Using geocoder search address and get its latitude and longitude\n geocoder.geocode({ address: address }, function (results, status) {\n if (status == google.maps.GeocoderStatus.OK) {\n latitude = results[0].geometry.location.lat();\n longitude = results[0].geometry.location.lng();\n }\n });\n\n // Set the values of simple variables to the state variables of latitude and longitude\n // so that it can be used outside of this function\n setTimeout(() => {\n this.setState({ latitude: latitude });\n this.setState({ longitude: longitude });\n }, 1000);\n }, 1000);\n };\n\n handleAddToCart = (cart) => {\n const { onAddToCart } = this.props;\n \n // Check if the item is already in the cart based on user type\n if (!this.state.user_id) {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n this.setState({ guest_id: this.props.match.params.guest_id });\n cart.guest_id = this.props.match.params.guest_id;\n onAddToCart(cart, cart.guest_id);\n \n console.log(\"uuid:\", cart.guest_id, this.props.match.params.guest_id);\n } else if (this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.state.user_id);\n } else if (this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.props.match.params.guest_id);\n } else if (this.state.user_type === \"b2bclient\" && this.state.user_type !== \"CSR\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.props.match.params.uuid);\n }\n \n // Update the state to include the newly added item in the cart\n const updatedItemsInCart = [...this.state.itemsInCart, cart];\n this.setState({ itemsInCart: updatedItemsInCart });\n\n \n this.showSuccessMessage(\"Item added Successfully\");\n };\n \n showErrorMessage = (message) => {\n this.showPopup(message, \"red\");\n };\n \n showSuccessMessage = (message) => {\n this.showPopup(message, \"green\");\n };\n \n showPopup = (message, textColor) => {\n // Create and style the popup\n const popup = document.createElement(\"div\");\n popup.style.display = \"none\";\n popup.style.position = \"fixed\";\n popup.style.top = \"0\";\n popup.style.left = \"0\";\n popup.style.width = \"100%\";\n popup.style.height = \"100%\";\n popup.style.background = \"rgba(0, 0, 0, 0.5)\";\n popup.style.zIndex = \"1000\";\n \n const popupContent = document.createElement(\"div\");\n popupContent.style.position = \"absolute\";\n popupContent.style.top = \"50%\";\n popupContent.style.left = \"50%\";\n popupContent.style.transform = \"translate(-50%, -50%)\";\n popupContent.style.background = \"#fff\";\n popupContent.style.padding = \"20px\";\n popupContent.style.borderRadius = \"5px\";\n popupContent.style.boxShadow = \"0 0 10px rgba(0, 0, 0, 0.3)\";\n \n const messageElement = document.createElement(\"div\");\n messageElement.style.fontSize = \"18px\";\n messageElement.style.textAlign = \"center\";\n messageElement.style.color = textColor; // Set the text color\n \n // Set the message\n messageElement.textContent = message;\n \n // Append elements to the DOM\n popupContent.appendChild(messageElement);\n popup.appendChild(popupContent);\n document.body.appendChild(popup);\n \n // Show the popup\n popup.style.display = \"block\";\n \n // Hide the popup after a certain duration (e.g., 3 seconds)\n setTimeout(() => {\n popup.style.display = \"none\";\n }, 1000); // 3000 milliseconds = 3 seconds\n };\n \n calculateTotalPage = (items) => {\n const itemsPerPage = Math.min(5, items.length); // Number of items to display per page, up to a maximum of 50\n const totalItems = items.length;\n console.log(\"total pahe number\", totalItems)\n return Math.ceil(totalItems / itemsPerPage);\n };\n \n \nshouldHighlightTestsLink() {\n const { location } = this.props;\n const currentURL = location.pathname;\n\n // Check if the URL contains \"nearby-test\"\n return currentURL.includes('/nearby-profiles/');\n}\n\n render() {\n const { onGetCarts } = this.props;\n\n const { carts } = this.props;\n const { search_type } = this.state;\n let borderColor = '2px solid blue'; // Default border color\n\n // Check the selected option and update border color accordingly\n if (search_type === 'Current Location') {\n borderColor = '2px solid red'; // Change to the desired color\n }\n if (search_type === 'City') {\n borderColor = '2px solid green'; // Change to the desired color\n }\n if (search_type === 'Custom Address') {\n borderColor = '2px solid yellow'; // Change to the desired color\n }\n const ClearIndicator = (props) => {\n return (\n \n X\n \n );\n };\n const isSmallScreen = window.innerWidth < 490;\n\n const isTestsLinkHighlighted = this.shouldHighlightTestsLink();\n\n const linkStyles = {\n color: isTestsLinkHighlighted ? 'black' : 'black', // Text color\n // backgroundColor: isTestsLinkHighlighted ? '#ffcc00' : 'transparent', // Background color\n fontWeight: isTestsLinkHighlighted ? 'bold' : 'normal',\n };\n\n const totalPage = !isEmpty(this.props.nearbyProfiles) ? this.calculateTotalPage(this.props.nearbyProfiles) : 1;\n console.log(\"total pahe number\", totalPage)\n const { loading } = this.state;\n const isLargeScreen = window.innerWidth < 490;\n\n const { page} = this.state;\n const { Profiles } = this.props;\n\n // const profileList = [];\n // for (let i = 0; i < this.props.Profiles.length; i++) {\n // profileList.push({\n // label: this.props.Profiles[i].name,\n // value: this.props.Profiles[i].id,\n // });\n // }\n // const profileList = this.props.Profiles.map((profile) => ({\n // label: profile.name,\n // value: profile.name, // Use the profile ID as the value\n // }));\n const labNames = [];\n for (let i = 0; i < this.props.labNamesList.length; i++) {\n labNames.push({\n label: this.props.labNamesList[i].name,\n value: this.props.labNamesList[i].name,\n });\n }\n const closeModal = () => {\n this.setState({ PatientModal: false });\n this.setState({ AddressModal: false });\n\n };\n const profileList = [];\n for (let i = 0; i < this.props.Profiles.length; i++) {\n profileList.push({\n label: this.props.Profiles[i].name,\n value: this.props.Profiles[i].name,\n });\n }\n\n const cityList = [];\n for (let i = 0; i < this.props.territoriesList.length; i++) {\n cityList.push({\n label: this.props.territoriesList[i].city,\n value: this.props.territoriesList[i].city,\n });\n }\n \n return (\n \n
\n
\n \n {this.state.user_id && this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\"\n ? (\n \n
    \n
  • \n \n Book a Test\n \n
  • \n
  • \n \n Labs\n \n
  • \n\n
  • \n \n Tests\n\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n )}\n
\n \n ) : null}\n {!this.state.user_id\n ? (\n \n
    \n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Book a Test\n\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Book a Test\n\n \n
  • \n ) : null}\n {this.props.match.params.filnalurl ? (\n
  • \n \n Labs\n \n
  • \n ) : (\n
  • \n \n Labs\n \n
  • \n )}\n\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Tests\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Tests\n \n
  • \n ) : null}\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : null}\n\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Packages\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Packages\n \n
  • \n ) : null}\n\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : null}\n\n\n {/*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
    \n
  • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n /*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
    \n
  • */\n )}\n
\n \n\n ) :\n this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\" ? (\n \n
    \n
  • \n \n Book a Test\n \n
  • \n
  • \n \n Labs\n {/* {this.props.t(\"Labs\")} */}\n \n
  • \n\n
  • \n {/* \n {this.props.t(\"Search by Tests\")}\n */}\n \n {/* {this.props.t(\"Tests\")} */}\n Tests\n \n
  • \n
  • \n \n {/* {this.props.t(\"Profiles\")} */}\n Profiles\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n {/*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
    \n
  • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n /*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
    \n
  • */\n )}\n\n
\n \n ) :\n this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type === \"b2bclient\" ? (\n \n
    \n
  • \n \n Book a Test\n \n
  • \n
  • \n \n Labs\n \n
  • \n\n
  • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n )}\n
\n \n ) : null}\n\n \n
\n
\n
\n \n Search by Profiles | Lab Hazir - Dashboard\n \n \n \n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n \n
\n
\n \n
\n
\n < div className=\"mb-3 row\">\n
\n \n
\n
\n \n
\n
\n \n
\n \n \n \n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n \n {/*
\n \n
*/}\n
\n \n
\n
\n
\n
\n \n\n {/* \n \n

How to enable location access on your browser

\n
\n \n \n
\n \n \n

On your Chrome browser

\n

\n 1. To the left of the address bar, click the Padlock icon {\" \"}

\n then select “Site Settings.”\n

\n

\n 2. Under Permissions, find Location and change it to\n Allow.\n

\n \n
\n \n Got It!\n \n
\n
\n
\n
\n
\n */}\n {/* \n \n \n Filter\n \n \n */}\n\n {/* */}\n {!isSmallScreen ? (\n \n val === \"Custom Address\",\n then: Yup.string().required(\"Please enter your City\"),\n }),\n location: Yup.string().when(\"city\", {\n is: val => val != \"\",\n then: Yup.string().required(\"Please enter your Location\"),\n }),\n })}\n >\n {({ errors, status, touched }) => (\n
\n {/* Type field */}\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n \n Search Types\n \n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : (\n \n
\n \n Search Types\n \n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n \n
\n \n )}\n {this.state.search_type === 'City' && (\n \n
\n \n By City \n \n ({\n ...provided,\n border: '2px solid green',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {this.state.search_type === 'Custom Address' && (\n \n
\n \n Custom Address \n \n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Address..\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {this.state.search_type === 'Custom Address' ? (\n \n
\n \n Km\n \n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\"\n className=\"form-control\"\n placeholder=\"km..\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n ) : (this.state.search_type === 'Current Location' && (\n \n
\n \n Km\n \n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\"\n className=\"form-control\"\n placeholder=\"km..\"\n style={{\n border: '2px solid red',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )\n )}\n \n
\n \n Search By Profile Name\n \n ({\n ...provided,\n border: '2px solid blue',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n \n
\n \n Search By Lab Name\n \n ({\n ...provided,\n border: '2px solid blue',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n\n />\n
\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n \n Search By Labs Type\n \n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : null\n // (\n // \n //
\n // \n // Search By Labs Type\n // \n // this.onChangeType(e)}\n // value={this.state.LabType}\n // className=\"form-select\"\n // style={{\n // border: '2px solid blue',\n // borderRadius: '5px',\n // // Add more style overrides as needed\n // }}\n // >\n // \n // \n // \n // \n //
\n // \n // )\n }\n
\n
\n )}\n \n
\n ) : \n val === \"Custom Address\",\n then: Yup.string().required(\"Please enter your City\"),\n }),\n location: Yup.string().when(\"city\", {\n is: val => val != \"\",\n then: Yup.string().required(\n \"Please enter your Location\"\n ),\n }),\n })}\n >\n {({ errors, status, touched }) => (\n
\n {/* Type field */}\n

Search Profiles for more result in Pakistan!

\n \n \n
\n ({\n ...provided,\n border: '2px solid blue',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n isSearchable={true}\n isClearable={true}\n components={{\n ClearIndicator,\n }}\n className=\"defautSelectParent\"\n options={profileList}\n\n />\n\n
\n \n \n
\n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n
\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n {/* \n Search Types\n */}\n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : (\n \n
\n {/* \n Search Types\n */}\n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n \n
\n \n )}\n {this.state.search_type === \"Current Location\" && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n placeholder=\"Search By Km...\"\n style={{\n border: '2px solid red',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n placeholder=\"Search By Km...\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )}\n {/* City field */}\n {this.state.search_type === \"City\" && (\n \n
\n ({\n ...provided,\n border: '2px solid green',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {/* Custom Address field */}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Search Location...\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n
\n
\n )}\n \n
}\n\n {/* Alerts to show success and error messages when item is added to the cart */}\n {this.state.success ? (\n \n {this.state.success}\n \n ) : this.state.error ? (\n \n {this.state.error}\n \n ) : null}\n\n \n {!isEmpty(this.props.nearbyProfiles) &&\n this.props.nearbyProfiles.map((nearbyProfile, key) => (\n \n \n \n
\n \n
\n \n {nearbyProfile.test_name} \n \n
\n
\n this.openPatientModal(e, nearbyProfile)}\n >\n \n Profile Description\n \n \n
\n {(nearbyProfile.discount >= 0.01) && ((nearbyProfile.all_discount_by_labhazir + nearbyProfile.discount_by_labhazir) >= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {nearbyProfile.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((nearbyProfile.price - (nearbyProfile.discount + nearbyProfile.all_discount_by_labhazir + nearbyProfile.discount_by_labhazir) * nearbyProfile.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n\n {(nearbyProfile.discount >= 0.01) && ((nearbyProfile.all_discount_by_labhazir + nearbyProfile.discount_by_labhazir) <= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {nearbyProfile.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((nearbyProfile.price - (nearbyProfile.discount + nearbyProfile.all_discount_by_labhazir + nearbyProfile.discount_by_labhazir) * nearbyProfile.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {(nearbyProfile.discount <= 0.01) && ((nearbyProfile.all_discount_by_labhazir + nearbyProfile.discount_by_labhazir) >= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {nearbyProfile.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((nearbyProfile.price - (nearbyProfile.discount + nearbyProfile.all_discount_by_labhazir + nearbyProfile.discount_by_labhazir) * nearbyProfile.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n\n {(nearbyProfile.discount <= 0.01) && ((nearbyProfile.all_discount_by_labhazir + nearbyProfile.discount_by_labhazir) <= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {((nearbyProfile.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n\n {nearbyProfile.discount >= 0.01 && (\n
\n \n {\" \"}\n Discount: {(nearbyProfile.discount * 100).toFixed()} %\n \n
\n )}\n {nearbyProfile.all_discount_by_labhazir + nearbyProfile.discount_by_labhazir >= 0.01 && (\n
\n \n {\" \"}\n Discount LabHazir: {((nearbyProfile.all_discount_by_labhazir * 100) + (nearbyProfile.discount_by_labhazir * 100)).toFixed()} %\n \n
\n )}\n {nearbyProfile.duration_required ? (\n
\n \n Reporting\n Time: {nearbyProfile.duration_required}{\" \"}\n {nearbyProfile.duration_type}\n \n
) : null }\n {nearbyProfile.is_home_sampling_available ? (\n\n
\n \n Home Sampling:{\" \"}\n {nearbyProfile.is_home_sampling_available}\n \n
) : null }\n\n
\n {!this.state.user_id ? (\n \n \n {nearbyProfile.lab_name}{\" \"}\n \n \n \n ):null}\n {(this.state.user_id) && (this.state.user_type ===\"CSR\") && (this.state.user_type !==\"b2bclient\") && (\n \n \n {nearbyProfile.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !==\"CSR\") && (this.state.user_type !==\"b2bclient\") && (\n \n \n {nearbyProfile.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !==\"CSR\") && (this.state.user_type ===\"b2bclient\") && (\n \n \n {nearbyProfile.lab_name}{\" \"}\n\n \n \n )}
\n\n\n \n \n \n \n \n {nearbyProfile && nearbyProfile.rating && (\n

{nearbyProfile.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n\n\n\n {/* this.handleAddToCart(nearbyProfile)}\n disabled={this.state.itemsInCart.includes(nearbyProfile)} // Disable the button if the item is in the cart\n>\n {this.state.itemsInCart.includes(nearbyProfile) ? 'Already Added' : 'Add to cart'}\n */}\n cartItem.offered_test_id === nearbyProfile.id) ? 'secondary' : 'primary'}\n className={`btn mt-3 me-1${this.props.carts.some(cartItem => cartItem.offered_test_id === nearbyProfile.id) ? ' disabled' : ''}`}\n // onClick={() => this.handleAddToCart(nearbyProfile)}\n onClick={() => {\n // Check if nearbyProfile.name is equal to any cartItem.name\n if (this.props.carts.some(cartItem => cartItem.test_name === nearbyProfile.test_name)) {\n alert(\"An item with the same name but from a different lab is already in the cart. Please remove the previous one first.\");\n } else {\n // If not, proceed with adding to the cart\n this.handleAddToCart(nearbyProfile);\n }\n }}\n disabled={this.props.carts.some(cartItem => cartItem.offered_test_id === nearbyProfile.id)}\n>\n {this.props.carts.some(cartItem => cartItem.offered_test_id === nearbyProfile.id) ? 'Already Added' : 'Add to cart'}\n\n
\n
\n
\n \n ))}\n {isEmpty(this.props.nearbyProfiles) && (\n loading ? (\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n
\n Sorry, No Profiles Found In Your Specific Area.....\n
\n \n
\n )\n )}\n
\n\n \n {!isEmpty(this.props.nearbyProfiles) ? (\n \n \n \n \n this.onChangepage(e, page - 1)}\n />\n \n {Array.from({ length: totalPage }, (_, i) => {\n const pageNumber = i + 1;\n return (\n \n this.onChangepage(e, pageNumber)} href=\"#\">\n {pageNumber}\n \n \n );\n })}\n \n this.onChangepage(e, page + 1)}\n />\n \n \n \n \n\n) : null}\n\n \n\n
\n
\n
\n
\n );\n }\n}\n\nNearbyProfiles.propTypes = {\n history: any,\n location: any,\n className: PropTypes.any,\n match: PropTypes.object,\n nearbyProfiles: PropTypes.array,\n onGetNearbyProfiles: PropTypes.func,\n onGetProfiles: PropTypes.func,\n Profiles: PropTypes.array,\n onAddToCart: PropTypes.func,\n success: PropTypes.any,\n error: PropTypes.any,\n ProfileMarket: PropTypes.any,\n menuOpen: PropTypes.any,\n t: PropTypes.any,\n onGetTerritoriesList: PropTypes.func,\n territoriesList: PropTypes.array,\n onGetLabNamesList: PropTypes.func,\n labNamesList: PropTypes.array,\n carts: PropTypes.any,\n onGetCarts: PropTypes.func,\n};\n\nconst mapStateToProps = ({ ProfileMarket, carts, labNamesList }) => ({\n nearbyProfiles: ProfileMarket.nearbyProfiles,\n Profiles: ProfileMarket.Profiles,\n success: carts.success,\n error: carts.error,\n territoriesList: ProfileMarket.territoriesList,\n labNamesList: labNamesList.labNamesList,\n carts: carts.carts,\n\n});\n// const mapStateToProps = ({ nearbyProfiles }) => ({\n// nearbyProfiles: nearbyProfiles.nearbyProfiles,\n// });\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetNearbyProfiles: data => dispatch(getNearbyProfiles(data)),\n onAddToCart: (cart, id) => dispatch(addToCart(cart, id)),\n onGetProfiles: id => dispatch(getProfiles(id)),\n onGetTerritoriesList: id => dispatch(getTerritoriesList(id)),\n onGetLabNamesList: id => dispatch(getLabNamesList(id)),\n onGetCarts: id => dispatch(getCarts(id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(NearbyProfiles));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select, { components } from 'react-select';\nimport { Formik, Field, Form } from \"formik\";\nimport { Collapse } from \"reactstrap\";\nimport * as Yup from \"yup\";\nimport MetaTags from \"react-meta-tags\";\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\nimport {\n Alert,\n Button,\n Card,\n CardBody,\n CardTitle,\n Col,\n Modal,\n ModalBody,\n ModalHeader,\n Container,\n Input,\n Label,\n Pagination,\n PaginationItem,\n PaginationLink,\n Row,\n} from \"reactstrap\";\n\nimport { isEmpty, map, size } from \"lodash\";\nimport ScrollButton from \"components/Common/Scrollbutton\";\n\n//Import Star Ratings\nimport StarRatings from \"react-star-ratings\";\n\n// RangeSlider\nimport Nouislider from \"nouislider-react\";\nimport \"nouislider/distribute/nouislider.css\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\n//Import data\nimport { productsData } from \"common/data\";\n\n//Import actions\nimport { getNearbyPackages, getPackages } from \"store/packagemarket/actions\";\nimport { addToCart } from \"store/actions\";\nimport { any } from \"prop-types\";\nimport \"./nearbylabs.scss\";\n\nimport { CITIES } from \"helpers/global_variables_helper\";\nimport { getTerritoriesList } from \"store/territories-list/actions\";\nimport { getLabNamesList } from \"store/lab-names/actions\";\nimport { getCarts } from \"store/carts/actions\";\n\nclass NearbyPackage extends Component {\n constructor(props) {\n super(props);\n this.state = { value: \"\" };\n this.state = {\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n ratingvalues: [],\n nearbyPackages: [],\n territoriesList: [],\n Packages: [],\n labNamesList: [],\n carts: [],\n name: \"\",\n activeTab: \"1\",\n address: \"\",\n test_name: \"\",\n test_type: \"\",\n search_type: \"\",\n city: \"\",\n latitude: \"\",\n longitude: \"\",\n currentLatitude: \"\",\n currentLongitude: \"\",\n locationAccessAllowed: \"\",\n location: \"\",\n km: \"30\",\n page: \"1\",\n LabType: \"\",\n success: \"\",\n error: \"\",\n discountData: [],\n itemsInCart: [],\n loading: true, // Add loading state property\n filters: {\n discount: [],\n price: { min: 0, max: 500 },\n },\n page: 1,\n // totalPage: 5, //replace this with total pages of data\n };\n this.toggleTab = this.toggleTab.bind(this);\n this.onSelectRating = this.onSelectRating.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n console.log(\"yaha ani chahi hai uuid\", this.props.match.params.uuid)\n console.log(\"yaha ani chahi hai guid\", this.props.match.params.guest_id)\n console.log(this.state.user_type)\n }\n\n componentDidMount() {\n const { carts, onGetCarts } = this.props;\n onGetCarts(this.state.user_id);\n this.setState({\n carts\n });\n const {\n onGetNearbyPackages,\n } = this.props;\n const { territoriesList, onGetTerritoriesList } = this.props;\n if (territoriesList && !territoriesList.length) {\n console.log(onGetTerritoriesList(this.state.user_id));\n }\n const { labNamesList, onGetLabNamesList } = this.props;\n\n if (labNamesList && !labNamesList.length) {\n console.log(onGetLabNamesList(this.state.user_id));\n }\n const { Packages, onGetPackages } = this.props;\n\n if (Packages && !Packages.length) {\n console.log(onGetPackages(this.state.user_id));\n }\n // let matchingMenuItem = null;\n // const ul = document.getElementById(\"navigation\");\n // const items = ul.getElementsByTagName(\"a\");\n // for (let i = 0; i < items.length; ++i) {\n // if (this.props.location.pathname === items[i].pathname) {\n // matchingMenuItem = items[i];\n // break;\n // }\n // }\n // if (matchingMenuItem) {\n // this.activateParentDropdown(matchingMenuItem);\n // }\n \n let latitude;\n let longitude;\n \n const url = window.location.href;\n const queryString = url.substring(url.indexOf('&') + 1);\n const params = new URLSearchParams(queryString);\n console.log(\"print params in app\", url, queryString, params)\n \n const latitudeFromUrl = params.get('lat');\n const longitudeFromUrl = params.get('lon');\n \n console.log('Latitude:', latitudeFromUrl);\n console.log('Longitude:', longitudeFromUrl);\n \n if (latitudeFromUrl && longitudeFromUrl) {\n // Use latitude and longitude from URL\n latitude = parseFloat(latitudeFromUrl);\n longitude = parseFloat(longitudeFromUrl);\n console.log(\"print lat log in app\", latitude, longitude);\n\n // Call the dependent code here or pass the latitude and longitude values as arguments\n this.handleLocationUpdate(latitude, longitude);\n } else {\n if (navigator.geolocation) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n };\n \n // Call onGetNearbyLabs before prompting for geolocation\n onGetNearbyPackages(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyPackages: this.props.nearbyPackages });\n }, 500);\n navigator.geolocation.getCurrentPosition((position) => {\n latitude = position.coords.latitude;\n longitude = position.coords.longitude;\n console.log(\"web\", latitude, longitude);\n\n this.setState({ currentLatitude: latitude });\n this.setState({ currentLongitude: longitude });\n this.setState({ locationAccessAllowed: true });\n this.setState({ search_type: \"Current Location\" });\n this.setState({ LabType: \"Main\" });\n\n // near by labs\n if ((this.state.user_id || this.state.user_type === \"CSR\")) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n console.log(window.location.href);\n if (latitude && longitude) {\n onGetNearbyPackages(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyPackages: this.props.nearbyPackages });\n }, 500);\n }\n }\n\n // near by labs\n if (this.state.user_id || this.state.user_type === \"b2bclient\") {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n if (latitude && longitude) {\n onGetNearbyPackages(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyPackages: this.props.nearbyPackages });\n }, 500);\n }\n }\n\n if ((!this.state.user_id) || this.props.match.params.guest_id) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n console.log(window.location.href);\n if (latitude && longitude) {\n onGetNearbyPackages(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyPackages: this.props.nearbyPackages });\n }, 500);\n }\n }\n if (this.state.user_id) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n name: this.state.name,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n if (latitude && longitude) {\n onGetNearbyPackages(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyPackages: this.props.nearbyPackages });\n }, 500);\n }\n }\n }, () => {\n // Location access denied by the user\n // console.log(\"Location access denied by the user.\");\n // this.setState({ locationAccessAllowed: false });\n // const denialMessage = \"For accurate results, please allow location access.\";\n // alert(denialMessage); // You can use an alert, or create a message element in your UI.\n // // Handle the denial here. You can display a message, set default values, or perform other actions as needed.\n\n // Example:\n this.setState({ latitude: null, longitude: null });\n // near by labs\n if ((this.state.user_id || this.state.user_type === \"CSR\") && this.props.match.params.guest_id) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n console.log(window.location.href);\n if (latitude && longitude) {\n onGetNearbyPackages(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyPackages: this.props.nearbyPackages });\n }, 500);\n }\n }\n\n // near by labs\n if (this.state.user_id || this.state.user_type === \"b2bclient\") {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n name: this.state.name,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n if (latitude && longitude) {\n onGetNearbyPackages(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyPackages: this.props.nearbyPackages });\n }, 500);\n }\n }\n\n if ((!this.state.user_id) && this.props.match.params.guest_id) {\n\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n console.log(window.location.href);\n onGetNearbyPackages(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyPackages: this.props.nearbyPackages });\n }, 500);\n }\n if (this.state.user_id) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n test_name: this.state.test_name,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n name: this.state.name,\n page: this.state.page,\n\n };\n onGetNearbyPackages(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyPackages: this.props.nearbyPackages });\n }, 500);\n }\n }\n );\n } else {\n // Geolocation is not supported by the browser\n console.log(\"Geolocation is not supported by the browser.\");\n // Handle this scenario as needed, e.g., display an error message or provide alternative functionality.\n }\n }\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n }\n handleLocationUpdate(latitude, longitude) {\n const { Packages, onGetPackages } = this.props;\n if (Packages && !Packages.length) {\n console.log(onGetPackages(this.state.user_id));\n }\n const { onGetNearbyPackages } = this.props;\n\n setTimeout(() => {\n this.setState({ currentLatitude: latitude });\n this.setState({ currentLongitude: longitude });\n\n var data = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n km: this.state.km,\n LabType: this.state.LabType,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n\n if (this.state.currentLatitude && this.state.currentLongitude) {\n onGetNearbyPackages(data);\n\n setTimeout(() => {\n this.setState({ nearbyPackages: this.props.nearbyPackages });\n }, 1000);\n }\n }, 1000);\n }\n\n openDescriptionModal = (e, arg) => {\n this.setState({\n DescriptionModal: true,\n description_in_english: arg.description_in_english,\n description_in_urdu: arg.description_in_urdu,\n });\n };\n toggleDescriptionModal = () => {\n this.setState(prevState => ({\n DescriptionModal: !prevState.DescriptionModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n test_details: arg.test_details,\n });\n };\n\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n // activateParentDropdown = item => {\n // item.classList.add(\"active\");\n // const parent = item.parentElement;\n // if (parent) {\n // parent.classList.add(\"active\"); // li\n // const parent2 = parent.parentElement;\n // parent2.classList.add(\"active\"); // li\n // const parent3 = parent2.parentElement;\n // if (parent3) {\n // parent3.classList.add(\"active\"); // li\n // const parent4 = parent3.parentElement;\n // if (parent4) {\n // parent4.classList.add(\"active\"); // li\n // const parent5 = parent4.parentElement;\n // if (parent5) {\n // parent5.classList.add(\"active\"); // li\n // const parent6 = parent5.parentElement;\n // if (parent6) {\n // parent6.classList.add(\"active\"); // li\n // }\n // }\n // }\n // }\n // }\n // return false;\n // };\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { nearbyPackages } = this.props;\n if (\n isEmpty(prevProps.nearbyPackages) &&\n !isEmpty(nearbyPackages) &&\n size(nearbyPackages) !== size(prevProps.nearbyPackages)\n ) {\n this.setState({ nearbyPackages });\n }\n }\n toggleTab(tab) {\n if (this.state.activeTab !== tab) {\n this.setState({\n activeTab: tab,\n });\n }\n }\n\n onSelectDiscount = e => {\n const { value, checked } = e.target;\n const {\n filters,\n filters: { discount },\n } = this.state;\n this.setState(\n {\n filters: {\n ...filters,\n discount: discount.find(item => item === value)\n ? discount.filter(item => item !== value)\n : [...discount, value],\n },\n },\n () => {\n this.onFilterProducts(value, checked);\n }\n );\n };\n\n onFilterProducts = (value, checked) => {\n const {\n filters: { discount },\n } = this.state;\n let filteredProducts = productsData;\n if (!!checked && parseInt(value) === 0) {\n filteredProducts = productsData.filter(\n nearbyPackage => nearbyPackage.offer < 10\n );\n } else if (discount.length > 0) {\n filteredProducts = productsData.filter(\n nearbyPackage => nearbyPackage.offer >= Math.min(...discount)\n );\n }\n this.setState({ nearbyPackages: filteredProducts });\n };\n\n onUpdate = (render, handle, value) => {\n this.setState({\n nearbyPackages: productsData.filter(\n nearbyPackage =>\n nearbyPackage.newPrice >= value[0] && nearbyPackage.newPrice <= value[1]\n ),\n });\n };\n\n /*\n on change rating checkbox method\n */\n onChangeRating = value => {\n this.setState({\n nearbyPackages: productsData.filter(\n nearbyPackage => nearbyPackage.rating >= value\n ),\n });\n\n var modifiedRating = [...this.state.ratingvalues];\n modifiedRating.push(value);\n this.setState({ ratingvalues: modifiedRating });\n };\n\n onSelectRating = value => {\n this.setState({\n nearbyPackages: productsData.filter(\n nearbyPackage => nearbyPackage.rating === value\n ),\n });\n };\n\n onUncheckMark = value => {\n var modifiedRating = [...this.state.ratingvalues];\n const modifiedData = (modifiedRating || []).filter(x => x !== value);\n /*\n find min values\n */\n var filteredProducts = productsData;\n if (modifiedData && modifiedData.length && value !== 1) {\n var minValue = Math.min(...modifiedData);\n if (minValue && minValue !== Infinity) {\n filteredProducts = productsData.filter(\n nearbyPackage => nearbyPackage.rating >= minValue\n );\n\n this.setState({ ratingvalues: modifiedData });\n }\n } else {\n filteredProducts = productsData;\n }\n this.setState({ nearbyPackages: filteredProducts });\n };\n\n handlePageClick = page => {\n this.setState({ page });\n };\n onChangeLabName = (selectedGroup) => {\n if (!selectedGroup) {\n this.setState({ name: '' });\n } else {\n this.setState({ name: selectedGroup.value });\n }\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyPackages } = this.props;\n\n var latitude;\n var longitude;\n\n if (this.state.search_type == \"Current Location\") {\n latitude = this.state.currentLatitude;\n longitude = this.state.currentLongitude;\n } else {\n latitude = \"\";\n longitude = \"\";\n }\n\n if (this)\n var data = {\n latitude: latitude,\n longitude: longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n name: selectedGroup ? selectedGroup.value : '', // Ensure selectedGroup is not null\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n locationAccessAllowed: this.state.locationAccessAllowed,\n };\n\n onGetNearbyPackages(data);\n \n setTimeout(() => {\n this.setState({ nearbyPackages: this.props.nearbyPackages });\n }, 1000);\n };\n onchangename = (selectedGroup) => {\n if (!selectedGroup) {\n this.setState({ test_name: '' }, () => {\n // Calling API when focus is out of test name and setting nearby packages array\n const { onGetNearbyPackages } = this.props;\n var latitude;\n var longitude;\n \n if (this.state.search_type === \"Current Location\") {\n latitude = this.state.currentLatitude;\n longitude = this.state.currentLongitude;\n } else {\n latitude = \"\";\n longitude = \"\";\n }\n \n var data = {\n latitude: latitude,\n longitude: longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n test_name: '', // Set to an appropriate default value when selectedGroup is null\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n };\n \n onGetNearbyPackages(data);\n \n setTimeout(() => {\n this.setState({ nearbyPackages: this.props.nearbyPackages });\n }, 1000);\n });\n } else {\n this.setState({ test_name: selectedGroup.value }, () => {\n // Calling API when focus is out of test name and setting nearby packages array\n const { onGetNearbyPackages } = this.props;\n var latitude;\n var longitude;\n \n if (this.state.search_type === \"Current Location\") {\n latitude = this.state.currentLatitude;\n longitude = this.state.currentLongitude;\n } else {\n latitude = \"\";\n longitude = \"\";\n }\n \n var data = {\n latitude: latitude,\n longitude: longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n test_name: selectedGroup ? selectedGroup.value : '', // Ensure selectedGroup is not null\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n };\n \n onGetNearbyPackages(data);\n \n setTimeout(() => {\n this.setState({ nearbyPackages: this.props.nearbyPackages });\n }, 1000);\n });\n }\n };\n \n onChangeAddress = e => {\n // Apply that city's latitude and longitude as city bound so that we see addresses of that city only\n var cityBounds = new google.maps.LatLngBounds(\n new google.maps.LatLng(this.state.latitude, this.state.longitude)\n );\n\n const options = {\n bounds: cityBounds,\n types: [\"establishment\"],\n componentRestrictions: { country: \"pk\" },\n };\n\n var searchBox = new window.google.maps.places.SearchBox(e.target, options);\n\n searchBox.addListener(\"places_changed\", () => {\n this.setState({ address: e.target.value });\n\n // Calling API whenever address changes and setting nearby tests array\n setTimeout(() => {\n const { onGetNearbyPackages } = this.props;\n\n var data = {\n latitude: \"\",\n longitude: \"\",\n search_type: this.state.search_type,\n address: e.target.value,\n city: this.state.city,\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n\n onGetNearbyPackages(data);\n\n setTimeout(() => {\n this.setState({ nearbyPackages: this.props.nearbyPackages });\n }, 1000);\n }, 1000);\n });\n };\n\n onChangeSearchType = async e => {\n this.setState({ search_type: e.target.value });\n \n // Call nearby tests API only if the search type changes to current location\n if (e.target.value === \"Current Location\") {\n this.setState({ city: \"\" });\n this.setState({ address: \"\" });\n \n // Check if the geolocation API is supported\n if (\"geolocation\" in navigator) {\n try {\n const locationPermission = await navigator.permissions.query({ name: 'geolocation' });\n \n if (locationPermission.state === 'denied' && !this.state.locationAccessAllowed) {\n // Location access is denied\n // Show the PatientModal only when the user explicitly clicks on \"Current Location\"\n this.setState({ PatientModal: true });\n } else {\n // Location access is prompted, ask the user for permission\n const position = await new Promise((resolve, reject) => {\n navigator.geolocation.getCurrentPosition(resolve, reject);\n });\n \n var data = {\n latitude: position.coords.latitude,\n longitude: position.coords.longitude,\n search_type: e.target.value,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n };\n \n const { onGetNearbyPackages } = this.props;\n onGetNearbyPackages(data);\n \n setTimeout(() => {\n this.setState({ nearbyPackages: this.props.nearbyPackages, locationAccessAllowed: true });\n }, 1000);\n }\n } catch (error) {\n console.error('Error checking location permission:', error);\n }\n } else {\n // Geolocation API is not supported, show an error message\n this.setState({ PatientModal: true }); // Show the modal for error\n }\n }\n };\n \n \n\n onChangeCity = selectedGroup => {\n this.setState({ city: selectedGroup.value });\n\n const { onGetNearbyPackages } = this.props;\n\n // ------------- Call API on city name START -------------\n var data = {\n latitude: \"\",\n longitude: \"\",\n search_type: this.state.search_type,\n address: this.state.address,\n city: selectedGroup.value,\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n\n onGetNearbyPackages(data);\n\n setTimeout(() => {\n this.setState({ nearbyPackages: this.props.nearbyPackages });\n }, 1000);\n\n // ------------- Call API on city name END -------------\n\n var latitude = \"\";\n var longitude = \"\";\n\n setTimeout(() => {\n var geocoder = new google.maps.Geocoder();\n\n // Concatenate city selected with Pakistan, so that it can be set as proper address\n var address = selectedGroup.value + \", Pakistan\";\n\n // Using geocoder search address and get its latitude and longitude\n geocoder.geocode({ address: address }, function (results, status) {\n if (status == google.maps.GeocoderStatus.OK) {\n latitude = results[0].geometry.location.lat();\n longitude = results[0].geometry.location.lng();\n }\n });\n\n // Set the values of simple variables to the state variables of latitude and longitude\n // so that it can be used outside of this function\n setTimeout(() => {\n this.setState({ latitude: latitude });\n this.setState({ longitude: longitude });\n }, 1000);\n }, 1000);\n };\n onChangeType = e => {\n this.setState({ LabType: e.target.value });\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyPackages } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var data = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n LabType: e.target.value,\n km: this.state.km,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n\n };\n // region wise advertisement\n onGetNearbyPackages(data);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n\n setTimeout(() => {\n this.setState({ nearbyPackages: this.props.nearbyPackages });\n }, 1000);\n };\n\n handleAddToCart = (cart) => {\n const { onAddToCart } = this.props;\n \n // Check if the item is already in the cart based on user type\n if (!this.state.user_id) {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n this.setState({ guest_id: this.props.match.params.guest_id });\n cart.guest_id = this.props.match.params.guest_id;\n onAddToCart(cart, cart.guest_id);\n \n console.log(\"uuid:\", cart.guest_id, this.props.match.params.guest_id);\n } else if (this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.state.user_id);\n } else if (this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.props.match.params.guest_id);\n } else if (this.state.user_type === \"b2bclient\" && this.state.user_type !== \"CSR\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.props.match.params.uuid);\n }\n \n // Update the state to include the newly added item in the cart\n const updatedItemsInCart = [...this.state.itemsInCart, cart];\n this.setState({ itemsInCart: updatedItemsInCart });\n\n \n this.showSuccessMessage(\"Item added Successfully\");\n };\n \n showErrorMessage = (message) => {\n this.showPopup(message, \"red\");\n };\n \n showSuccessMessage = (message) => {\n this.showPopup(message, \"green\");\n };\n \n showPopup = (message, textColor) => {\n // Create and style the popup\n const popup = document.createElement(\"div\");\n popup.style.display = \"none\";\n popup.style.position = \"fixed\";\n popup.style.top = \"0\";\n popup.style.left = \"0\";\n popup.style.width = \"100%\";\n popup.style.height = \"100%\";\n popup.style.background = \"rgba(0, 0, 0, 0.5)\";\n popup.style.zIndex = \"1000\";\n \n const popupContent = document.createElement(\"div\");\n popupContent.style.position = \"absolute\";\n popupContent.style.top = \"50%\";\n popupContent.style.left = \"50%\";\n popupContent.style.transform = \"translate(-50%, -50%)\";\n popupContent.style.background = \"#fff\";\n popupContent.style.padding = \"20px\";\n popupContent.style.borderRadius = \"5px\";\n popupContent.style.boxShadow = \"0 0 10px rgba(0, 0, 0, 0.3)\";\n \n const messageElement = document.createElement(\"div\");\n messageElement.style.fontSize = \"18px\";\n messageElement.style.textAlign = \"center\";\n messageElement.style.color = textColor; // Set the text color\n \n // Set the message\n messageElement.textContent = message;\n \n // Append elements to the DOM\n popupContent.appendChild(messageElement);\n popup.appendChild(popupContent);\n document.body.appendChild(popup);\n \n // Show the popup\n popup.style.display = \"block\";\n \n // Hide the popup after a certain duration (e.g., 3 seconds)\n setTimeout(() => {\n popup.style.display = \"none\";\n }, 1000); // 3000 milliseconds = 3 seconds\n };\n\n\n onChangeKm = e => {\n this.setState({ km: e.target.value });\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyPackages } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var data = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n km: e.target.value,\n address: this.state.address,\n city: this.state.city,\n LabType: this.state.LabType,\n test_name: this.state.test_name,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n // region wise advertisement\n onGetNearbyPackages(data);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n\n setTimeout(() => {\n this.setState({ nearbyPackages: this.props.nearbyPackages });\n }, 1000);\n };\n onChangepage = async (e, pageNumber) => {\n e.preventDefault();\n this.setState({ page: pageNumber }); // Update the page in the state\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyPackages } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var data = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n page: pageNumber, // Use the updated page number\n km: this.state.km,\n LabType: this.state.LabType,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n // region wise advertisement\n onGetNearbyPackages(data);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n\n setTimeout(() => {\n this.setState({ nearbyPackages: this.props.nearbyPackages });\n }, 1000);\n };\n calculateTotalPage = (items) => {\n const itemsPerPage = Math.min(5, items.length); // Number of items to display per page, up to a maximum of 50\n const totalItems = items.length;\n console.log(\"total pahe number\", totalItems)\n return Math.ceil(totalItems / itemsPerPage);\n };\n\nshouldHighlightTestsLink() {\n const { location } = this.props;\n const currentURL = location.pathname;\n\n // Check if the URL contains \"nearby-test\"\n return currentURL.includes('/nearby-packages/');\n}\n render() {\n const { onGetCarts } = this.props;\n\n const { carts } = this.props;\n const { search_type } = this.state;\n let borderColor = '2px solid blue'; // Default border color\n\n // Check the selected option and update border color accordingly\n if (search_type === 'Current Location') {\n borderColor = '2px solid red'; // Change to the desired color\n }\n if (search_type === 'City') {\n borderColor = '2px solid green'; // Change to the desired color\n }\n if (search_type === 'Custom Address') {\n borderColor = '2px solid yellow'; // Change to the desired color\n }\n const ClearIndicator = (props) => {\n return (\n \n X\n \n );\n };\n const isSmallScreen = window.innerWidth < 490;\n\n const isTestsLinkHighlighted = this.shouldHighlightTestsLink();\n\n const linkStyles = {\n color: isTestsLinkHighlighted ? 'black' : 'black', // Text color\n // backgroundColor: isTestsLinkHighlighted ? '#ffcc00' : 'transparent', // Background color\n fontWeight: isTestsLinkHighlighted ? 'bold' : 'normal',\n };\n\n const totalPage = !isEmpty(this.props.nearbyPackages) ? this.calculateTotalPage(this.props.nearbyPackages) : 1;\n console.log(\"total pahe number\", totalPage)\n const { loading } = this.state;\n const isLargeScreen = window.innerWidth < 490;\n\n const { page } = this.state;\n const { Packages } = this.props;\n const labNames = [];\n for (let i = 0; i < this.props.labNamesList.length; i++) {\n labNames.push({\n label: this.props.labNamesList[i].name,\n value: this.props.labNamesList[i].name,\n });\n }\n const closeModal = () => {\n this.setState({ PatientModal: false });\n this.setState({ AddressModal: false });\n\n };\n const packageList = [];\n for (let i = 0; i < this.props.Packages.length; i++) {\n packageList.push({\n label: this.props.Packages[i].name,\n value: this.props.Packages[i].name,\n });\n }\n \n const cityList = [];\n for (let i = 0; i < this.props.territoriesList.length; i++) {\n cityList.push({\n label: this.props.territoriesList[i].city,\n value: this.props.territoriesList[i].city,\n });\n }\n return (\n \n
\n
\n \n {this.state.user_id && this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\"\n ? (\n \n
    \n
  • \n \n Book a Test\n \n
  • \n
  • \n \n Labs\n \n
  • \n\n
  • \n \n Tests\n\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n )}\n
\n \n ) : null}\n {!this.state.user_id\n ? (\n \n
    \n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Book a Test\n\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Book a Test\n\n \n
  • \n ) : null}\n {this.props.match.params.filnalurl ? (\n
  • \n \n Labs\n \n
  • \n ) : (\n
  • \n \n Labs\n \n
  • \n )}\n\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Tests\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Tests\n \n
  • \n ) : null}\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : null}\n\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Packages\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Packages\n \n
  • \n ) : null}\n\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : null}\n\n\n {/*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
    \n
  • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n /*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
    \n
  • */\n )}\n
\n \n\n ) :\n this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\" ? (\n \n
    \n
  • \n \n Book a Test\n \n
  • \n
  • \n \n Labs\n {/* {this.props.t(\"Labs\")} */}\n \n
  • \n\n
  • \n {/* \n {this.props.t(\"Search by Tests\")}\n */}\n \n {/* {this.props.t(\"Tests\")} */}\n Tests\n \n
  • \n
  • \n \n {/* {this.props.t(\"Profiles\")} */}\n Profiles\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n {/*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
    \n
  • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n /*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
    \n
  • */\n )}\n\n
\n \n ) :\n this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type === \"b2bclient\" ? (\n \n
    \n
  • \n \n Book a Test\n \n
  • \n
  • \n \n Labs\n \n
  • \n\n
  • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n )}\n
\n \n ) : null}\n\n \n
\n
\n
\n \n Search by Packages | Lab Hazir - Dashboard\n \n \n \n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n \n {/*
\n \n
*/}\n
\n \n
\n
\n
\n
\n \n\n{/* \n \n \n

How to enable location access on your browser

\n
\n \n \n
\n \n \n

On your Chrome browser

\n

\n 1. To the left of the address bar, click the Padlock icon {\" \"}

\n then select “Site Settings.”\n

\n

\n 2. Under Permissions, find Location and change it to\n Allow.\n

\n \n
\n \n Got It!\n \n
\n
\n
\n
\n
\n */}\n {/* \n \n \n Filter\n \n \n */}\n\n {/* */}\n {!isSmallScreen ? (\n \n val === \"Custom Address\",\n then: Yup.string().required(\"Please enter your City\"),\n }),\n location: Yup.string().when(\"city\", {\n is: val => val != \"\",\n then: Yup.string().required(\"Please enter your Location\"),\n }),\n })}\n >\n {({ errors, status, touched }) => (\n
\n {/* Type field */}\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n \n Search Types\n \n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : (\n \n
\n \n Search Types\n \n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n \n
\n \n )}\n {this.state.search_type === 'City' && (\n \n
\n \n By City \n \n ({\n ...provided,\n border: '2px solid green',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {this.state.search_type === 'Custom Address' && (\n \n
\n \n Custom Address \n \n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Address..\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {this.state.search_type === 'Custom Address' ? (\n \n
\n \n Km\n \n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\"\n className=\"form-control\"\n placeholder=\"km..\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n ) : (this.state.search_type === 'Current Location' && (\n \n
\n \n Km\n \n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\"\n className=\"form-control\"\n placeholder=\"km..\"\n style={{\n border: '2px solid red',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )\n )}\n \n
\n \n Search By Package Name\n \n ({\n ...provided,\n border: '2px solid blue',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n \n
\n \n Search By Lab Name\n \n ({\n ...provided,\n border: '2px solid blue',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n\n />\n
\n \n {/* \n
\n \n Search By Labs Type\n \n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n */}\n {this.state.locationAccessAllowed === true ? (\n \n
\n \n Search By Labs Type\n \n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : null\n // (\n // \n //
\n // \n // Search By Labs Type\n // \n // this.onChangeType(e)}\n // value={this.state.LabType}\n // className=\"form-select\"\n // style={{\n // border: '2px solid blue',\n // borderRadius: '5px',\n // // Add more style overrides as needed\n // }}\n // >\n // \n // \n // \n // \n //
\n // \n // )\n }\n
\n
\n )}\n \n
\n ) : \n val === \"Custom Address\",\n then: Yup.string().required(\"Please enter your City\"),\n }),\n location: Yup.string().when(\"city\", {\n is: val => val != \"\",\n then: Yup.string().required(\n \"Please enter your Location\"\n ),\n }),\n })}\n >\n {({ errors, status, touched }) => (\n
\n {/* Type field */}\n

Search Packages for more result in Pakistan!

\n \n \n
\n ({\n ...provided,\n border: '2px solid blue',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n components={{\n ClearIndicator,\n }}\n className=\"defautSelectParent\"\n options={packageList}\n\n />\n\n
\n \n \n
\n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n
\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n {/* \n Search Types\n */}\n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : (\n \n
\n {/* \n Search Types\n */}\n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n \n
\n \n )}\n {this.state.search_type === \"Current Location\" && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n placeholder=\"Search By Km...\"\n style={{\n border: '2px solid red',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n placeholder=\"Search By Km...\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )}\n {/* City field */}\n {this.state.search_type === \"City\" && (\n \n
\n ({\n ...provided,\n border: '2px solid green',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {/* Custom Address field */}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Search Location...\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n
\n
\n )}\n \n
}\n\n {/* Alerts to show success and error messages when item is added to the cart */}\n {this.state.success ? (\n \n {this.state.success}\n \n ) : this.state.error ? (\n \n {this.state.error}\n \n ) : null}\n\n \n {!isEmpty(this.props.nearbyPackages) &&\n this.props.nearbyPackages.map((nearbyPackage, key) => (\n \n \n \n {/*
\n \n
*/}\n\n
\n
\n \n {nearbyPackage.test_name} \n \n
\n
\n this.openPatientModal(e, nearbyPackage)}\n >\n \n Package Description\n \n \n
\n {(nearbyPackage.discount >= 0.01) && ((nearbyPackage.all_discount_by_labhazir + nearbyPackage.discount_by_labhazir) >= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {nearbyPackage.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((nearbyPackage.price - (nearbyPackage.discount + nearbyPackage.all_discount_by_labhazir + nearbyPackage.discount_by_labhazir) * nearbyPackage.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n\n {(nearbyPackage.discount >= 0.01) && ((nearbyPackage.all_discount_by_labhazir + nearbyPackage.discount_by_labhazir) <= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {nearbyPackage.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((nearbyPackage.price - (nearbyPackage.discount + nearbyPackage.all_discount_by_labhazir + nearbyPackage.discount_by_labhazir) * nearbyPackage.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {(nearbyPackage.discount <= 0.01) && ((nearbyPackage.all_discount_by_labhazir + nearbyPackage.discount_by_labhazir) >= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {nearbyPackage.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((nearbyPackage.price - (nearbyPackage.discount + nearbyPackage.all_discount_by_labhazir + nearbyPackage.discount_by_labhazir) * nearbyPackage.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n\n {(nearbyPackage.discount <= 0.01) && ((nearbyPackage.all_discount_by_labhazir + nearbyPackage.discount_by_labhazir) <= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {((nearbyPackage.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n\n {nearbyPackage.discount >= 0.01 && (\n
\n \n {\" \"}\n Discount: {(nearbyPackage.discount * 100).toFixed()} %\n \n
\n )}\n {nearbyPackage.all_discount_by_labhazir + nearbyPackage.discount_by_labhazir >= 0.01 && (\n
\n \n {\" \"}\n Discount LabHazir: {((nearbyPackage.all_discount_by_labhazir * 100) + (nearbyPackage.discount_by_labhazir * 100)).toFixed()} %\n \n\n
\n )}\n {/* {nearbyPackage.discount_by_labhazir>=0.01 && (\n
\n \n {\" \"}\n discount labhazir to Lab: {(nearbyPackage.discount_by_labhazir*100).toFixed()} % \n \n \n
\n )} */}\n
\n \n Reporting\n Time: {nearbyPackage.duration_required}{\" \"}\n {nearbyPackage.duration_type}\n \n
\n\n
\n \n Home Sampling:{\" \"}\n {nearbyPackage.is_home_sampling_available}\n \n
\n
\n {!this.state.user_id ? (\n \n \n {nearbyPackage.lab_name}{\" \"}\n \n \n \n ):null}\n {(this.state.user_id) && (this.state.user_type ===\"CSR\") && (this.state.user_type !==\"b2bclient\") && (\n \n \n {nearbyPackage.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !==\"CSR\") && (this.state.user_type !==\"b2bclient\") && (\n \n \n {nearbyPackage.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !==\"CSR\") && (this.state.user_type ===\"b2bclient\") && (\n \n \n {nearbyPackage.lab_name}{\" \"}\n\n \n \n )}\n
\n\n \n \n \n \n \n \n {nearbyPackage && nearbyPackage.rating && (\n

{nearbyPackage.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n {/*
\n \n EQA\n Participation: {nearbyPackage.is_eqa_participation}\n \n
\n\n
\n \n Test Performed:{\" \"}\n {nearbyPackage.is_test_performed}\n \n
\n\n
\n \n Duration\n Required: {nearbyPackage.duration_required}{\" \"}\n {nearbyPackage.duration_type}\n \n
*/}\n {/* this.handleAddToCart(nearbyPackage)}\n disabled={this.state.itemsInCart.includes(nearbyPackage)} // Disable the button if the item is in the cart\n>\n {this.state.itemsInCart.includes(nearbyPackage) ? 'Already Added' : 'Add to cart'}\n */}\n cartItem.offered_test_id === nearbyPackage.id) ? 'secondary' : 'primary'}\n className={`btn mt-3 me-1${this.props.carts.some(cartItem => cartItem.offered_test_id === nearbyPackage.id) ? ' disabled' : ''}`}\n // onClick={() => this.handleAddToCart(nearbyPackage)}\n onClick={() => {\n // Check if nearbyPackage.name is equal to any cartItem.name\n if (this.props.carts.some(cartItem => cartItem.test_name === nearbyPackage.test_name)) {\n alert(\"An item with the same name but from a different lab is already in the cart. Please remove the previous one first.\");\n } else {\n // If not, proceed with adding to the cart\n this.handleAddToCart(nearbyPackage);\n }\n }}\n disabled={this.props.carts.some(cartItem => cartItem.offered_test_id === nearbyPackage.id)}\n>\n {this.props.carts.some(cartItem => cartItem.offered_test_id === nearbyPackage.id) ? 'Already Added' : 'Add to cart'}\n\n
\n
\n
\n \n ))}\n {isEmpty(this.props.nearbyPackages) && (\n loading ? (\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n
\n Sorry, No Packages Found In Your Specific Area.....\n
\n \n
\n )\n )}\n
\n\n {!isEmpty(this.props.nearbyPackages) ? (\n \n \n \n \n this.onChangepage(e, page - 1)}\n />\n \n {Array.from({ length: totalPage }, (_, i) => {\n const pageNumber = i + 1;\n return (\n \n this.onChangepage(e, pageNumber)} href=\"#\">\n {pageNumber}\n \n \n );\n })}\n \n this.onChangepage(e, page + 1)}\n />\n \n \n \n \n \n ) : null}\n \n
\n
\n
\n
\n );\n }\n}\n\nNearbyPackage.propTypes = {\n history: any,\n location: any,\n match: PropTypes.object,\n nearbyPackages: PropTypes.array,\n onGetNearbyPackages: PropTypes.func,\n onAddToCart: PropTypes.func,\n onGetPackages: PropTypes.func,\n Packages: PropTypes.array,\n success: PropTypes.any,\n className: PropTypes.any,\n error: PropTypes.any,\n PackageMarket: PropTypes.any,\n menuOpen: PropTypes.any,\n t: PropTypes.any,\n onGetTerritoriesList: PropTypes.func,\n territoriesList: PropTypes.array,\n onGetLabNamesList: PropTypes.func,\n labNamesList: PropTypes.array,\n carts: PropTypes.any,\n onGetCarts: PropTypes.func,\n};\n\nconst mapStateToProps = ({ PackageMarket, carts, labNamesList }) => ({\n nearbyPackages: PackageMarket.nearbyPackages,\n Packages: PackageMarket.Packages,\n success: carts.success,\n error: carts.error,\n territoriesList: PackageMarket.territoriesList,\n labNamesList: labNamesList.labNamesList,\n carts: carts.carts,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetNearbyPackages: data => dispatch(getNearbyPackages(data)),\n onAddToCart: (cart, id) => dispatch(addToCart(cart, id)),\n onGetPackages: id => dispatch(getPackages(id)),\n onGetTerritoriesList: id => dispatch(getTerritoriesList(id)),\n onGetLabNamesList: id => dispatch(getLabNamesList(id)),\n onGetCarts: id => dispatch(getCarts(id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(NearbyPackage));\n","import {\n GET_NEARBY_PACKAGES,\n GET_NEARBY_PACKAGES_FAIL,\n GET_NEARBY_PACKAGES_SUCCESS,\n GET_PACKAGES,\n GET_PACKAGES_FAIL,\n GET_PACKAGES_SUCCESS,\n GET_TERRITORIES_LIST,\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n \n} from \"./actionTypes\";\n\nexport const getTerritoriesList = () => ({\n type: GET_TERRITORIES_LIST,\n payload: {},\n});\n\nexport const getTerritoriesListSuccess = territoriesList => ({\n type: GET_TERRITORIES_LIST_SUCCESS,\n payload: territoriesList,\n });\n\nexport const getTerritoriesListFail = error => ({\n type: GET_TERRITORIES_LIST_FAIL,\n payload: error,\n});\n\nexport const getNearbyPackages = (search_type, address, id, test_name) => ({\n type: GET_NEARBY_PACKAGES,\n payload: { search_type, address, id, test_name },\n});\n\nexport const getNearbyPackagesSuccess = nearbyPackages => ({\n type: GET_NEARBY_PACKAGES_SUCCESS,\n payload: nearbyPackages,\n});\n\n\nexport const getNearbyPackagesFail = error => ({\n type: GET_NEARBY_PACKAGES_FAIL,\n payload: error,\n});\n\nexport const getPackages = () => ({\n type: GET_PACKAGES,\n // payload: {},\n});\n\nexport const getPackagesSuccess = Packages => ({\n type: GET_PACKAGES_SUCCESS,\n payload: Packages,\n});\n\nexport const getPackagesFail = error => ({\n type: GET_PACKAGES_FAIL,\n payload: error,\n});\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select, { components } from 'react-select';\nimport { Formik, Field, Form } from \"formik\";\nimport { Collapse } from \"reactstrap\";\nimport * as Yup from \"yup\";\nimport MetaTags from \"react-meta-tags\";\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\nimport {\n Alert,\n Button,\n Card,\n CardBody,\n CardTitle,\n Col,\n Modal,\n ModalBody,\n ModalHeader,\n Container,\n Input,\n Label,\n Pagination,\n PaginationItem,\n PaginationLink,\n Row,\n} from \"reactstrap\";\n\nimport { isEmpty, map, size } from \"lodash\";\nimport ScrollButton from \"components/Common/Scrollbutton\";\n\n//Import Star Ratings\nimport StarRatings from \"react-star-ratings\";\n\n// RangeSlider\nimport Nouislider from \"nouislider-react\";\nimport \"nouislider/distribute/nouislider.css\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\n//Import data\nimport { productsData } from \"common/data\";\n\n//Import actions\nimport { getNearbyRadiology, getRadiology } from \"store/radiologymarket/actions\";\nimport { addToCart } from \"store/actions\";\nimport { any } from \"prop-types\";\nimport \"./nearbylabs.scss\";\n\nimport { CITIES } from \"helpers/global_variables_helper\";\nimport { getTerritoriesList } from \"store/territories-list/actions\";\nimport { getLabNamesList } from \"store/lab-names/actions\";\nimport { getCarts } from \"store/carts/actions\";\n\nclass nearbyRadiology extends Component {\n constructor(props) {\n super(props);\n this.state = { value: \"\" };\n this.state = {\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n ratingvalues: [],\n nearbyRadiology: [],\n territoriesList: [],\n Radiology: [],\n labNamesList: [],\n carts: [],\n name: \"\",\n activeTab: \"1\",\n address: \"\",\n test_name: \"\",\n test_type:\"\",\n search_type: \"\",\n city: \"\",\n latitude: \"\",\n longitude: \"\",\n currentLatitude: \"\",\n currentLongitude: \"\",\n locationAccessAllowed: \"\",\n location: \"\",\n km: \"30\",\n page: \"1\",\n LabType: \"\",\n success: \"\",\n error: \"\",\n discountData: [],\n itemsInCart: [],\n loading: true, // Add loading state property\n filters: {\n discount: [],\n price: { min: 0, max: 500 },\n },\n page: 1,\n // totalPage: 5, //replace this with total pages of data\n };\n this.toggleTab = this.toggleTab.bind(this);\n this.onSelectRating = this.onSelectRating.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n console.log(\"yaha ani chahi hai uuid\", this.props.match.params.uuid)\n console.log(\"yaha ani chahi hai guid\", this.props.match.params.guest_id)\n console.log(this.state.user_type)\n }\n\n componentDidMount() {\n const { carts, onGetCarts } = this.props;\n onGetCarts(this.state.user_id);\n this.setState({\n carts\n });\n const {\n onGetNearbyRadiology,\n } = this.props;\n const { territoriesList, onGetTerritoriesList } = this.props;\n if (territoriesList && !territoriesList.length) {\n console.log(onGetTerritoriesList(this.state.user_id));\n }\n const { labNamesList, onGetLabNamesList } = this.props;\n\n if (labNamesList && !labNamesList.length) {\n console.log(onGetLabNamesList(this.state.user_id));\n }\n const { Radiology, onGetRadiology } = this.props;\n\n if (Radiology && !Radiology.length) {\n console.log(onGetRadiology(this.state.user_id));\n }\n // let matchingMenuItem = null;\n // const ul = document.getElementById(\"navigation\");\n // const items = ul.getElementsByTagName(\"a\");\n // for (let i = 0; i < items.length; ++i) {\n // if (this.props.location.pathname === items[i].pathname) {\n // matchingMenuItem = items[i];\n // break;\n // }\n // }\n // if (matchingMenuItem) {\n // this.activateParentDropdown(matchingMenuItem);\n // }\n \n let latitude;\n let longitude;\n \n const url = window.location.href;\n const queryString = url.substring(url.indexOf('&') + 1);\n const params = new URLSearchParams(queryString);\n console.log(\"print params in app\", url, queryString, params)\n \n const latitudeFromUrl = params.get('lat');\n const longitudeFromUrl = params.get('lon');\n \n console.log('Latitude:', latitudeFromUrl);\n console.log('Longitude:', longitudeFromUrl);\n \n // Check if latitude and longitude values are present in URL parameters\n if (latitudeFromUrl && longitudeFromUrl) {\n // Use latitude and longitude from URL\n latitude = parseFloat(latitudeFromUrl);\n longitude = parseFloat(longitudeFromUrl);\n console.log(\"print lat log in app\", latitude, longitude);\n \n // Call the dependent code here or pass the latitude and longitude values as arguments\n this.handleLocationUpdate(latitude, longitude);\n } else {\n if (navigator.geolocation) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n };\n \n // Call onGetNearbyLabs before prompting for geolocation\n onGetNearbyRadiology(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyRadiology: this.props.nearbyRadiology });\n }, 500);\n navigator.geolocation.getCurrentPosition((position) => {\n latitude = position.coords.latitude;\n longitude = position.coords.longitude;\n console.log(\"web\", latitude, longitude);\n\n this.setState({ currentLatitude: latitude });\n this.setState({ currentLongitude: longitude });\n this.setState({ locationAccessAllowed: true });\n this.setState({ search_type: \"Current Location\" });\n this.setState({ LabType: \"Main\" });\n\n // near by labs\n if ((this.state.user_id || this.state.user_type === \"CSR\")) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n console.log(window.location.href);\n if (latitude && longitude) {\n onGetNearbyRadiology(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyRadiology: this.props.nearbyRadiology });\n }, 500);\n }\n }\n\n // near by labs\n if (this.state.user_id || this.state.user_type === \"b2bclient\") {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n if (latitude && longitude) {\n onGetNearbyRadiology(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyRadiology: this.props.nearbyRadiology });\n }, 500);\n }\n }\n\n if ((!this.state.user_id) || this.props.match.params.guest_id) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n console.log(window.location.href);\n if (latitude && longitude) {\n onGetNearbyRadiology(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyRadiology: this.props.nearbyRadiology });\n }, 500);\n }\n }\n if (this.state.user_id) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n name: this.state.name,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n if (latitude && longitude) {\n onGetNearbyRadiology(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyRadiology: this.props.nearbyRadiology });\n }, 500);\n }\n }\n }, () => {\n // Location access denied by the user\n // console.log(\"Location access denied by the user.\");\n // this.setState({ locationAccessAllowed: false });\n // const denialMessage = \"For accurate results, please allow location access.\";\n // alert(denialMessage); // You can use an alert, or create a message element in your UI.\n // // Handle the denial here. You can display a message, set default values, or perform other actions as needed.\n\n // Example:\n this.setState({ latitude: null, longitude: null });\n // near by labs\n if ((this.state.user_id || this.state.user_type === \"CSR\") && this.props.match.params.guest_id) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n console.log(window.location.href);\n if (latitude && longitude) {\n onGetNearbyRadiology(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyRadiology: this.props.nearbyRadiology });\n }, 500);\n }\n }\n\n // near by labs\n if (this.state.user_id || this.state.user_type === \"b2bclient\") {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n name: this.state.name,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n if (latitude && longitude) {\n onGetNearbyRadiology(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyRadiology: this.props.nearbyRadiology });\n }, 500);\n }\n }\n\n if ((!this.state.user_id) && this.props.match.params.guest_id) {\n\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n test_name: this.state.test_name,\n page: this.state.page,\n\n };\n console.log(window.location.href);\n onGetNearbyRadiology(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyRadiology: this.props.nearbyRadiology });\n }, 500);\n }\n if (this.state.user_id) {\n const nearbyTestsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n test_name: this.state.test_name,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n name: this.state.name,\n page: this.state.page,\n\n };\n onGetNearbyRadiology(nearbyTestsLocationDetails);\n setTimeout(() => {\n this.setState({ nearbyRadiology: this.props.nearbyRadiology });\n }, 500);\n }\n }\n );\n } else {\n // Geolocation is not supported by the browser\n console.log(\"Geolocation is not supported by the browser.\");\n // Handle this scenario as needed, e.g., display an error message or provide alternative functionality.\n }\n }\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000); // Set loading state to false after 7 seconds\n\n }\n\n handleLocationUpdate(latitude, longitude) {\n const { Radiology, onGetRadiology } = this.props;\n if (Radiology && !Radiology.length) {\n console.log(onGetRadiology(this.state.user_id));\n }\n const { onGetNearbyRadiology } = this.props;\n\n setTimeout(() => {\n this.setState({ currentLatitude: latitude });\n this.setState({ currentLongitude: longitude });\n\n var data = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n km: this.state.km,\n LabType: this.state.LabType,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n\n if (this.state.currentLatitude && this.state.currentLongitude) {\n onGetNearbyRadiology(data);\n\n setTimeout(() => {\n this.setState({ nearbyRadiology: this.props.nearbyRadiology });\n }, 1000);\n }\n }, 1000);\n }\n // activateParentDropdown = item => {\n // item.classList.add(\"active\");\n // const parent = item.parentElement;\n // if (parent) {\n // parent.classList.add(\"active\"); // li\n // const parent2 = parent.parentElement;\n // parent2.classList.add(\"active\"); // li\n // const parent3 = parent2.parentElement;\n // if (parent3) {\n // parent3.classList.add(\"active\"); // li\n // const parent4 = parent3.parentElement;\n // if (parent4) {\n // parent4.classList.add(\"active\"); // li\n // const parent5 = parent4.parentElement;\n // if (parent5) {\n // parent5.classList.add(\"active\"); // li\n // const parent6 = parent5.parentElement;\n // if (parent6) {\n // parent6.classList.add(\"active\"); // li\n // }\n // }\n // }\n // }\n // }\n // return false;\n // };\n // openDescriptionModal = (e, arg) => {\n // this.setState({\n // DescriptionModal: true,\n // description_in_english: arg.description_in_english,\n // description_in_urdu: arg.description_in_urdu,\n // });\n // };\n\n toggleDescriptionModal = () => {\n this.setState(prevState => ({\n DescriptionModal: !prevState.DescriptionModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n test_details: arg.test_details,\n });\n };\n \n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { nearbyRadiology } = this.props;\n if (\n isEmpty(prevProps.nearbyRadiology) &&\n !isEmpty(nearbyRadiology) &&\n size(nearbyRadiology) !== size(prevProps.nearbyRadiology)\n ) {\n this.setState({ nearbyRadiology });\n }\n }\n toggleTab(tab) {\n if (this.state.activeTab !== tab) {\n this.setState({\n activeTab: tab,\n });\n }\n }\n\n onSelectDiscount = e => {\n const { value, checked } = e.target;\n const {\n filters,\n filters: { discount },\n } = this.state;\n this.setState(\n {\n filters: {\n ...filters,\n discount: discount.find(item => item === value)\n ? discount.filter(item => item !== value)\n : [...discount, value],\n },\n },\n () => {\n this.onFilterProducts(value, checked);\n }\n );\n };\n\n onFilterProducts = (value, checked) => {\n const {\n filters: { discount },\n } = this.state;\n let filteredProducts = productsData;\n if (!!checked && parseInt(value) === 0) {\n filteredProducts = productsData.filter(\n nearbyRadiology => nearbyRadiology.offer < 10\n );\n } else if (discount.length > 0) {\n filteredProducts = productsData.filter(\n nearbyRadiology => nearbyRadiology.offer >= Math.min(...discount)\n );\n }\n this.setState({ nearbyRadiology: filteredProducts });\n };\n\n onUpdate = (render, handle, value) => {\n this.setState({\n nearbyRadiology: productsData.filter(\n nearbyRadiology =>\n nearbyRadiology.newPrice >= value[0] && nearbyRadiology.newPrice <= value[1]\n ),\n });\n };\n\n /*\n on change rating checkbox method\n */\n onChangeRating = value => {\n this.setState({\n nearbyRadiology: productsData.filter(\n nearbyRadiology => nearbyRadiology.rating >= value\n ),\n });\n\n var modifiedRating = [...this.state.ratingvalues];\n modifiedRating.push(value);\n this.setState({ ratingvalues: modifiedRating });\n };\n\n onSelectRating = value => {\n this.setState({\n nearbyRadiology: productsData.filter(\n nearbyRadiology => nearbyRadiology.rating === value\n ),\n });\n };\n\n onUncheckMark = value => {\n var modifiedRating = [...this.state.ratingvalues];\n const modifiedData = (modifiedRating || []).filter(x => x !== value);\n /*\n find min values\n */\n var filteredProducts = productsData;\n if (modifiedData && modifiedData.length && value !== 1) {\n var minValue = Math.min(...modifiedData);\n if (minValue && minValue !== Infinity) {\n filteredProducts = productsData.filter(\n nearbyRadiology => nearbyRadiology.rating >= minValue\n );\n\n this.setState({ ratingvalues: modifiedData });\n }\n } else {\n filteredProducts = productsData;\n }\n this.setState({ nearbyRadiology: filteredProducts });\n };\n\n handlePageClick = page => {\n this.setState({ page });\n };\n onChangeLabName = (selectedGroup) => {\n if (!selectedGroup) {\n this.setState({ name: '' });\n } else {\n this.setState({ name: selectedGroup.value });\n }\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyRadiology } = this.props;\n\n var latitude;\n var longitude;\n\n if (this.state.search_type == \"Current Location\") {\n latitude = this.state.currentLatitude;\n longitude = this.state.currentLongitude;\n } else {\n latitude = \"\";\n longitude = \"\";\n }\n\n if (this)\n var data = {\n latitude: latitude,\n longitude: longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n name: selectedGroup ? selectedGroup.value : '', // Ensure selectedGroup is not null\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n\n onGetNearbyRadiology(data);\n \n setTimeout(() => {\n this.setState({ nearbyRadiology: this.props.nearbyRadiology });\n }, 1000);\n };\n\n onchangename = (selectedGroup) => {\n if (!selectedGroup) {\n this.setState({ test_name: '' });\n } else {\n this.setState({ test_name: selectedGroup.value });\n }\n // Calling API when focus is out of test name and setting nearby tests array\n const { onGetNearbyRadiology } = this.props;\n\n var latitude;\n var longitude;\n\n if (this.state.search_type == \"Current Location\") {\n latitude = this.state.currentLatitude;\n longitude = this.state.currentLongitude;\n } else {\n latitude = \"\";\n longitude = \"\";\n }\n\n if (this)\n var data = {\n latitude: latitude,\n longitude: longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n test_name: selectedGroup ? selectedGroup.value : '', // Ensure selectedGroup is not null\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n\n onGetNearbyRadiology(data);\n\n setTimeout(() => {\n this.setState({ nearbyRadiology: this.props.nearbyRadiology });\n }, 1000);\n };\n\n onChangeAddress = e => {\n // Apply that city's latitude and longitude as city bound so that we see addresses of that city only\n var cityBounds = new google.maps.LatLngBounds(\n new google.maps.LatLng(this.state.latitude, this.state.longitude)\n );\n\n const options = {\n bounds: cityBounds,\n types: [\"establishment\"],\n componentRestrictions: { country: \"pk\" },\n };\n\n var searchBox = new window.google.maps.places.SearchBox(e.target, options);\n\n searchBox.addListener(\"places_changed\", () => {\n this.setState({ address: e.target.value });\n\n // Calling API whenever address changes and setting nearby tests array\n setTimeout(() => {\n const { onGetNearbyRadiology } = this.props;\n\n var data = {\n latitude: \"\",\n longitude: \"\",\n search_type: this.state.search_type,\n address: e.target.value,\n city: this.state.city,\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n\n onGetNearbyRadiology(data);\n\n setTimeout(() => {\n this.setState({ nearbyRadiology: this.props.nearbyRadiology });\n }, 1000);\n }, 1000);\n });\n };\n\n\n onChangeSearchType = async e => {\n this.setState({ search_type: e.target.value });\n \n // Call nearby tests API only if the search type changes to current location\n if (e.target.value === \"Current Location\") {\n this.setState({ city: \"\" });\n this.setState({ address: \"\" });\n \n // Check if the geolocation API is supported\n if (\"geolocation\" in navigator) {\n try {\n const locationPermission = await navigator.permissions.query({ name: 'geolocation' });\n \n if (locationPermission.state === 'denied' && !this.state.locationAccessAllowed) {\n // Location access is denied\n // Show the PatientModal only when the user explicitly clicks on \"Current Location\"\n this.setState({ PatientModal: true });\n } else {\n // Location access is prompted, ask the user for permission\n const position = await new Promise((resolve, reject) => {\n navigator.geolocation.getCurrentPosition(resolve, reject);\n });\n \n var data = {\n latitude: position.coords.latitude,\n longitude: position.coords.longitude,\n search_type: e.target.value,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n };\n \n const { onGetNearbyRadiology } = this.props;\n onGetNearbyRadiology(data);\n \n setTimeout(() => {\n this.setState({ nearbyRadiology: this.props.nearbyRadiology, locationAccessAllowed: true });\n }, 1000);\n }\n } catch (error) {\n console.error('Error checking location permission:', error);\n }\n } else {\n // Geolocation API is not supported, show an error message\n this.setState({ PatientModal: true }); // Show the modal for error\n }\n }\n };\n \n \n onChangeCity = selectedGroup => {\n this.setState({ city: selectedGroup.value });\n\n const { onGetNearbyRadiology } = this.props;\n\n // ------------- Call API on city name START -------------\n var data = {\n latitude: \"\",\n longitude: \"\",\n search_type: this.state.search_type,\n address: this.state.address,\n city: selectedGroup.value,\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n\n onGetNearbyRadiology(data);\n\n setTimeout(() => {\n this.setState({ nearbyRadiology: this.props.nearbyRadiology });\n }, 1000);\n\n // ------------- Call API on city name END -------------\n\n var latitude = \"\";\n var longitude = \"\";\n\n setTimeout(() => {\n var geocoder = new google.maps.Geocoder();\n\n // Concatenate city selected with Pakistan, so that it can be set as proper address\n var address = selectedGroup.value + \", Pakistan\";\n\n // Using geocoder search address and get its latitude and longitude\n geocoder.geocode({ address: address }, function (results, status) {\n if (status == google.maps.GeocoderStatus.OK) {\n latitude = results[0].geometry.location.lat();\n longitude = results[0].geometry.location.lng();\n }\n });\n\n // Set the values of simple variables to the state variables of latitude and longitude\n // so that it can be used outside of this function\n setTimeout(() => {\n this.setState({ latitude: latitude });\n this.setState({ longitude: longitude });\n }, 1000);\n }, 1000);\n };\n\n handleAddToCart = (cart) => {\n const { onAddToCart } = this.props;\n \n // Check if the item is already in the cart based on user type\n if (!this.state.user_id) {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n this.setState({ guest_id: this.props.match.params.guest_id });\n cart.guest_id = this.props.match.params.guest_id;\n onAddToCart(cart, cart.guest_id);\n \n console.log(\"uuid:\", cart.guest_id, this.props.match.params.guest_id);\n } else if (this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.state.user_id);\n } else if (this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.props.match.params.guest_id);\n } else if (this.state.user_type === \"b2bclient\" && this.state.user_type !== \"CSR\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.props.match.params.uuid);\n }\n \n // Update the state to include the newly added item in the cart\n const updatedItemsInCart = [...this.state.itemsInCart, cart];\n this.setState({ itemsInCart: updatedItemsInCart });\n\n \n this.showSuccessMessage(\"Item added Successfully\");\n };\n \n showErrorMessage = (message) => {\n this.showPopup(message, \"red\");\n };\n \n showSuccessMessage = (message) => {\n this.showPopup(message, \"green\");\n };\n \n showPopup = (message, textColor) => {\n // Create and style the popup\n const popup = document.createElement(\"div\");\n popup.style.display = \"none\";\n popup.style.position = \"fixed\";\n popup.style.top = \"0\";\n popup.style.left = \"0\";\n popup.style.width = \"100%\";\n popup.style.height = \"100%\";\n popup.style.background = \"rgba(0, 0, 0, 0.5)\";\n popup.style.zIndex = \"1000\";\n \n const popupContent = document.createElement(\"div\");\n popupContent.style.position = \"absolute\";\n popupContent.style.top = \"50%\";\n popupContent.style.left = \"50%\";\n popupContent.style.transform = \"translate(-50%, -50%)\";\n popupContent.style.background = \"#fff\";\n popupContent.style.padding = \"20px\";\n popupContent.style.borderRadius = \"5px\";\n popupContent.style.boxShadow = \"0 0 10px rgba(0, 0, 0, 0.3)\";\n \n const messageElement = document.createElement(\"div\");\n messageElement.style.fontSize = \"18px\";\n messageElement.style.textAlign = \"center\";\n messageElement.style.color = textColor; // Set the text color\n \n // Set the message\n messageElement.textContent = message;\n \n // Append elements to the DOM\n popupContent.appendChild(messageElement);\n popup.appendChild(popupContent);\n document.body.appendChild(popup);\n \n // Show the popup\n popup.style.display = \"block\";\n \n // Hide the popup after a certain duration (e.g., 3 seconds)\n setTimeout(() => {\n popup.style.display = \"none\";\n }, 1000); // 3000 milliseconds = 3 seconds\n };\n \n onChangeKm = e => {\n this.setState({ km: e.target.value });\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyRadiology } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var data = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n km: e.target.value,\n LabType: this.state.LabType,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n // region wise advertisement\n onGetNearbyRadiology(data);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n\n setTimeout(() => {\n this.setState({ nearbyRadiology: this.props.nearbyRadiology });\n }, 1000);\n };\n\n onChangeType = e => {\n this.setState({ LabType: e.target.value });\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyRadiology } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var data = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n LabType: e.target.value,\n km: this.state.km,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n // region wise advertisement\n onGetNearbyRadiology(data);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n\n setTimeout(() => {\n this.setState({ nearbyRadiology: this.props.nearbyRadiology });\n }, 1000);\n };\n onChangepage = async (e, pageNumber) => {\n e.preventDefault();\n this.setState({ page: pageNumber }); // Update the page in the state\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetNearbyRadiology } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var data = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n page: pageNumber, // Use the updated page number\n km: this.state.km,\n LabType: this.state.LabType,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n\n };\n // region wise advertisement\n onGetNearbyRadiology(data);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n\n setTimeout(() => {\n this.setState({ nearbyRadiology: this.props.nearbyRadiology });\n }, 1000);\n };\n calculateTotalPage = (items) => {\n const itemsPerPage = Math.min(5, items.length); // Number of items to display per page, up to a maximum of 50\n const totalItems = items.length;\n console.log(\"total pahe number\", totalItems)\n return Math.ceil(totalItems / itemsPerPage);\n };\n\nshouldHighlightTestsLink() {\n const { location } = this.props;\n const currentURL = location.pathname;\n\n // Check if the URL contains \"nearby-test\"\n return currentURL.includes('/nearby-radiology/');\n}\n render() {\n const { onGetCarts } = this.props;\n\n const { carts } = this.props;\n const { search_type } = this.state;\n let borderColor = '2px solid blue'; // Default border color\n\n // Check the selected option and update border color accordingly\n if (search_type === 'Current Location') {\n borderColor = '2px solid red'; // Change to the desired color\n }\n if (search_type === 'City') {\n borderColor = '2px solid green'; // Change to the desired color\n }\n if (search_type === 'Custom Address') {\n borderColor = '2px solid yellow'; // Change to the desired color\n }\n const ClearIndicator = (props) => {\n return (\n \n X\n \n );\n };\n const isSmallScreen = window.innerWidth < 490;\n\n const isTestsLinkHighlighted = this.shouldHighlightTestsLink();\n\n const linkStyles = {\n color: isTestsLinkHighlighted ? 'black' : 'black', // Text color\n // backgroundColor: isTestsLinkHighlighted ? '#ffcc00' : 'transparent', // Background color\n fontWeight: isTestsLinkHighlighted ? 'bold' : 'normal',\n };\n\n const totalPage = !isEmpty(this.props.nearbyRadiology) ? this.calculateTotalPage(this.props.nearbyRadiology) : 1;\n console.log(\"total pahe number\", totalPage)\n const isLargeScreen = window.innerWidth < 490;\n\n const { page } = this.state;\n const { Radiology } = this.props;\n\n const radiologyList = [];\n for (let i = 0; i < this.props.Radiology.length; i++) {\n radiologyList.push({\n label: this.props.Radiology[i].name,\n value: this.props.Radiology[i].name,\n });\n }\n const labNames = [];\n for (let i = 0; i < this.props.labNamesList.length; i++) {\n labNames.push({\n label: this.props.labNamesList[i].name,\n value: this.props.labNamesList[i].name,\n });\n }\n const closeModal = () => {\n this.setState({ PatientModal: false });\n this.setState({ AddressModal: false });\n\n };\n const cityList = [];\n for (let i = 0; i < this.props.territoriesList.length; i++) {\n cityList.push({\n label: this.props.territoriesList[i].city,\n value: this.props.territoriesList[i].city,\n });\n }\n\n const { loading } = this.state;\n return (\n \n
\n
\n \n {this.state.user_id && this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\"\n ? (\n \n
    \n
  • \n \n Book a Test\n \n
  • \n
  • \n \n Labs\n \n
  • \n\n
  • \n \n Tests\n\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n )}\n
\n \n ) : null}\n {!this.state.user_id\n ? (\n \n
    \n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Book a Test\n\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Book a Test\n\n \n
  • \n ) : null}\n {this.props.match.params.filnalurl ? (\n
  • \n \n Labs\n \n
  • \n ) : (\n
  • \n \n Labs\n \n
  • \n )}\n\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Tests\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Tests\n \n
  • \n ) : null}\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : null}\n\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Packages\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Packages\n \n
  • \n ) : null}\n\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : null}\n\n\n {/*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
    \n
  • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n /*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
    \n
  • */\n )}\n
\n \n\n ) :\n this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\" ? (\n \n
    \n
  • \n \n Book a Test\n \n
  • \n
  • \n \n Labs\n {/* {this.props.t(\"Labs\")} */}\n \n
  • \n\n
  • \n {/* \n {this.props.t(\"Search by Tests\")}\n */}\n \n {/* {this.props.t(\"Tests\")} */}\n Tests\n \n
  • \n
  • \n \n {/* {this.props.t(\"Profiles\")} */}\n Profiles\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n {/*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
    \n
  • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n /*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
    \n
  • */\n )}\n\n
\n \n ) :\n this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type === \"b2bclient\" ? (\n \n
    \n
  • \n \n Book a Test\n \n
  • \n
  • \n \n Labs\n \n
  • \n\n
  • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n )}\n
\n \n ) : null}\n\n \n
\n
\n
\n \n Search by Radiology | Lab Hazir - Dashboard\n \n \n \n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n \n {/*
\n \n
*/}\n
\n \n
\n
\n
\n
\n \n\n\n {/* \n \n

How to enable location access on your browser

\n
\n \n \n
\n \n \n

On your Chrome browser

\n

\n 1. To the left of the address bar, click the Padlock icon {\" \"}

\n then select “Site Settings.”\n

\n

\n 2. Under Permissions, find Location and change it to\n Allow.\n

\n \n
\n \n Got It!\n \n
\n
\n
\n
\n
\n */}\n {/* \n \n \n Filter\n \n \n */}\n\n {/* */}\n {!isSmallScreen ? (\n \n val === \"Custom Address\",\n then: Yup.string().required(\"Please enter your City\"),\n }),\n location: Yup.string().when(\"city\", {\n is: val => val != \"\",\n then: Yup.string().required(\"Please enter your Location\"),\n }),\n })}\n >\n {({ errors, status, touched }) => (\n
\n {/* Type field */}\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n \n Search Types\n \n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : (\n \n
\n \n Search Types\n \n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n \n
\n \n )}\n {this.state.search_type === 'City' && (\n \n
\n \n By City \n \n ({\n ...provided,\n border: '2px solid green',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {this.state.search_type === 'Custom Address' && (\n \n
\n \n Custom Address \n \n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Address..\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {this.state.search_type === 'Custom Address' ? (\n \n
\n \n Km\n \n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\"\n className=\"form-control\"\n placeholder=\"km\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n ) : (this.state.search_type === 'Current Location' && (\n \n
\n \n Km\n \n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\"\n className=\"form-control\"\n placeholder=\"km..\"\n style={{\n border: '2px solid red',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )\n )}\n \n
\n \n Search By Radiology Name\n \n ({\n ...provided,\n border: '2px solid blue',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n \n
\n \n Search By Lab Name\n \n ({\n ...provided,\n border: '2px solid blue',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n\n />\n
\n \n \n \n {/* \n
\n \n Search By Labs Type\n \n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n */}\n {this.state.locationAccessAllowed === true ? (\n \n
\n \n Search By Labs Type\n \n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : null\n // (\n // \n //
\n // \n // Search By Labs Type\n // \n // this.onChangeType(e)}\n // value={this.state.LabType}\n // className=\"form-select\"\n // style={{\n // border: '2px solid blue',\n // borderRadius: '5px',\n // // Add more style overrides as needed\n // }}\n // >\n // \n // \n // \n // \n //
\n // \n // )\n }\n
\n
\n )}\n \n
\n ) : \n val === \"Custom Address\",\n then: Yup.string().required(\"Please enter your City\"),\n }),\n location: Yup.string().when(\"city\", {\n is: val => val != \"\",\n then: Yup.string().required(\n \"Please enter your Location\"\n ),\n }),\n })}\n >\n {({ errors, status, touched }) => (\n
\n {/* Type field */}\n {/* Type field */}\n

Search Radiology for more result in Pakistan!

\n \n \n \n
\n ({\n ...provided,\n border: '2px solid blue',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n components={{\n ClearIndicator,\n }}\n options={\n radiologyList\n }\n defaultValue={{\n label:\n Radiology.test_name,\n value:\n Radiology.test_name,\n }}\n\n />\n\n
\n \n \n
\n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n
\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n {/* \n Search Types\n */}\n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : (\n \n
\n {/* \n Search Types\n */}\n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n \n
\n \n )}\n {this.state.search_type === \"Current Location\" && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n placeholder=\"Search By Km...\"\n style={{\n border: '2px solid red',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n placeholder=\"Search By Km...\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )}\n {/* City field */}\n {this.state.search_type === \"City\" && (\n \n
\n ({\n ...provided,\n border: '2px solid green',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {/* Custom Address field */}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Search Location...\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n
\n
\n )}\n \n
}\n\n {/* Alerts to show success and error messages when item is added to the cart */}\n {this.state.success ? (\n \n {this.state.success}\n \n ) : this.state.error ? (\n \n {this.state.error}\n \n ) : null}\n\n \n {!isEmpty(this.props.nearbyRadiology) &&\n this.props.nearbyRadiology.map((nearbyRadiology, key) => (\n \n \n \n {/*
\n \n
*/}\n\n
\n
\n \n {nearbyRadiology.test_name} \n \n
\n
\n this.openPatientModal(e, nearbyRadiology)}\n >\n \n Radiology Description\n \n \n
\n {(nearbyRadiology.discount >= 0.01) && ((nearbyRadiology.all_discount_by_labhazir + nearbyRadiology.discount_by_labhazir) >= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {nearbyRadiology.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((nearbyRadiology.price - (nearbyRadiology.discount + nearbyRadiology.all_discount_by_labhazir + nearbyRadiology.discount_by_labhazir) * nearbyRadiology.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n\n {(nearbyRadiology.discount >= 0.01) && ((nearbyRadiology.all_discount_by_labhazir + nearbyRadiology.discount_by_labhazir) <= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {nearbyRadiology.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((nearbyRadiology.price - (nearbyRadiology.discount + nearbyRadiology.all_discount_by_labhazir + nearbyRadiology.discount_by_labhazir) * nearbyRadiology.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {(nearbyRadiology.discount <= 0.01) && ((nearbyRadiology.all_discount_by_labhazir + nearbyRadiology.discount_by_labhazir) >= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {nearbyRadiology.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((nearbyRadiology.price - (nearbyRadiology.discount + nearbyRadiology.all_discount_by_labhazir + nearbyRadiology.discount_by_labhazir) * nearbyRadiology.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n\n {(nearbyRadiology.discount <= 0.01) && ((nearbyRadiology.all_discount_by_labhazir + nearbyRadiology.discount_by_labhazir) <= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {((nearbyRadiology.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n\n {nearbyRadiology.discount>=0.01 && (\n
\n \n {\" \"}\n Discount: {(nearbyRadiology.discount*100).toFixed()} % \n \n
\n )}\n {nearbyRadiology.all_discount_by_labhazir + nearbyRadiology.discount_by_labhazir>=0.01 && (\n
\n \n {\" \"}\n Discount LabHazir: {((nearbyRadiology.all_discount_by_labhazir*100)+(nearbyRadiology.discount_by_labhazir*100)).toFixed()} % \n \n \n
\n )}\n {/* {nearbyRadiology.discount_by_labhazir>=0.01 && (\n
\n \n {\" \"}\n discount labhazir to Lab: {(nearbyRadiology.discount_by_labhazir*100).toFixed()} % \n \n \n
\n )} */}\n \n
\n \n Reporting\n Time: {nearbyRadiology.duration_required}{\" \"}\n {nearbyRadiology.duration_type}\n \n
\n \n
\n \n Home Sampling:{\" \"}\n {nearbyRadiology.is_home_sampling_available}\n \n
\n
\n {!this.state.user_id ? (\n \n \n {nearbyRadiology.lab_name}{\" \"}\n \n \n \n ):null}\n {(this.state.user_id) && (this.state.user_type ===\"CSR\") && (this.state.user_type !==\"b2bclient\") && (\n \n \n {nearbyRadiology.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !==\"CSR\") && (this.state.user_type !==\"b2bclient\") && (\n \n \n {nearbyRadiology.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !==\"CSR\") && (this.state.user_type ===\"b2bclient\") && (\n \n \n {nearbyRadiology.lab_name}{\" \"}\n\n \n \n )}\n
\n \n \n \n \n \n \n {nearbyRadiology && nearbyRadiology.rating && (\n

{nearbyRadiology.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n\n {/*
\n \n EQA\n Participation: {nearbyRadiology.is_eqa_participation}\n \n
\n\n
\n \n Test Performed:{\" \"}\n {nearbyRadiology.is_test_performed}\n \n
\n\n
\n \n Duration\n Required: {nearbyRadiology.duration_required}{\" \"}\n {nearbyRadiology.duration_type}\n \n
*/}\n {/* this.handleAddToCart(nearbyRadiology)}\n disabled={this.state.itemsInCart.includes(nearbyRadiology)} // Disable the button if the item is in the cart\n>\n {this.state.itemsInCart.includes(nearbyRadiology) ? 'Already Added' : 'Add to cart'}\n */}\n cartItem.offered_test_id === nearbyRadiology.id) ? 'secondary' : 'primary'}\n className={`btn mt-3 me-1${this.props.carts.some(cartItem => cartItem.offered_test_id === nearbyRadiology.id) ? ' disabled' : ''}`}\n // onClick={() => this.handleAddToCart(nearbyRadiology)}\n onClick={() => {\n // Check if nearbyRadiology.name is equal to any cartItem.name\n if (this.props.carts.some(cartItem => cartItem.test_name === nearbyRadiology.test_name)) {\n alert(\"An item with the same name but from a different lab is already in the cart. Please remove the previous one first.\");\n } else {\n // If not, proceed with adding to the cart\n this.handleAddToCart(nearbyRadiology);\n }\n }}\n disabled={this.props.carts.some(cartItem => cartItem.offered_test_id === nearbyRadiology.id)}\n>\n {this.props.carts.some(cartItem => cartItem.offered_test_id === nearbyRadiology.id) ? 'Already Added' : 'Add to cart'}\n\n
\n
\n
\n \n ))}\n {/* {loading ? (\n \n \n
\n Please Wait.....\n
\n \n
\n ) : isEmpty(this.props.nearbyRadiology) ? (\n \n \n
\n Sorry No Result Found.....\n
\n \n
\n ) : null} */}\n {isEmpty(this.props.nearbyRadiology) && (\n loading ? (\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n
\n Sorry, No Radiology Found In Your Specific Area.....\n
\n \n
\n )\n )}\n {!isEmpty(this.props.nearbyRadiology) ? (\n \n \n \n \n this.onChangepage(e, page - 1)}\n />\n \n {Array.from({ length: totalPage }, (_, i) => {\n const pageNumber = i + 1;\n return (\n \n this.onChangepage(e, pageNumber)} href=\"#\">\n {pageNumber}\n \n \n );\n })}\n \n this.onChangepage(e, page + 1)}\n />\n \n \n \n \n \n ) : null}\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nnearbyRadiology.propTypes = {\n history: any,\n location: any,\n match: PropTypes.object,\n nearbyRadiology: PropTypes.array,\n onGetNearbyRadiology: PropTypes.func,\n onAddToCart: PropTypes.func,\n onGetRadiology: PropTypes.func,\n Radiology: PropTypes.array,\n success: PropTypes.any,\n className: PropTypes.any,\n error: PropTypes.any,\n RadiologyMarket: PropTypes.any,\n menuOpen: PropTypes.any,\n t: PropTypes.any,\n onGetTerritoriesList: PropTypes.func,\n territoriesList: PropTypes.array,\n onGetLabNamesList: PropTypes.func,\n labNamesList: PropTypes.array,\n carts: PropTypes.any,\n onGetCarts: PropTypes.func,\n};\n\nconst mapStateToProps = ({ RadiologyMarket, carts, labNamesList }) => ({\n nearbyRadiology: RadiologyMarket.nearbyRadiology,\n Radiology: RadiologyMarket.Radiology,\n success: carts.success,\n error: carts.error,\n territoriesList: RadiologyMarket.territoriesList,\n labNamesList: labNamesList.labNamesList,\n carts: carts.carts,\n\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetNearbyRadiology: data => dispatch(getNearbyRadiology(data)),\n onAddToCart: (cart, id) => dispatch(addToCart(cart, id)),\n onGetRadiology: id => dispatch(getRadiology(id)),\n onGetTerritoriesList: id => dispatch(getTerritoriesList(id)),\n onGetLabNamesList: id => dispatch(getLabNamesList(id)),\n onGetCarts: id => dispatch(getCarts(id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(nearbyRadiology));\n","import {\n GET_NEARBY_RADIOLOGY,\n GET_NEARBY_RADIOLOGY_FAIL,\n GET_NEARBY_RADIOLOGY_SUCCESS,\n GET_RADIOLOGY,\n GET_RADIOLOGY_FAIL,\n GET_RADIOLOGY_SUCCESS,\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n \n} from \"./actionTypes\";\n\nexport const getTerritoriesList = () => ({\n type: GET_TERRITORIES_LIST,\n payload: {},\n});\n\nexport const getTerritoriesListSuccess = territoriesList => ({\n type: GET_TERRITORIES_LIST_SUCCESS,\n payload: territoriesList,\n });\n\nexport const getTerritoriesListFail = error => ({\n type: GET_TERRITORIES_LIST_FAIL,\n payload: error,\n});\n\nexport const getNearbyRadiology = (search_type, address, id, test_name) => ({\n type: GET_NEARBY_RADIOLOGY,\n payload: { search_type, address, id, test_name },\n});\n\nexport const getNearbyRadiologySuccess = nearbyRadiology => ({\n type: GET_NEARBY_RADIOLOGY_SUCCESS,\n payload: nearbyRadiology,\n});\n\n\nexport const getNearbyRadiologyFail = error => ({\n type: GET_NEARBY_RADIOLOGY_FAIL,\n payload: error,\n});\n\nexport const getRadiology = () => ({\n type: GET_RADIOLOGY,\n // payload: {},\n});\n\nexport const getRadiologySuccess = Radiology => ({\n type: GET_RADIOLOGY_SUCCESS,\n payload: Radiology,\n});\n\nexport const getRadiologyFail = error => ({\n type: GET_RADIOLOGY_FAIL,\n payload: error,\n});\n","import React, { Component } from \"react\";\nimport MetaTags from \"react-meta-tags\";\nimport PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport { connect } from \"react-redux\";\nimport { withRouter } from \"react-router-dom\";\n\nimport {\n Alert,\n Card,\n CardBody,\n Col,\n Container,\n Input,\n Label,\n Row,\n FormGroup,\n Button,\n} from \"reactstrap\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"../../components/Common/Breadcrumb\";\nimport { addNewComplaint } from \"store/complaints/actions\";\nimport {\n getLabs,\n} from \"store/inpayments/actions\";\nimport {\n getTerritoriesList\n} from \"store/territories-list/actions\";\n\nclass Contact extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n territoriesList: [],\n complaint: \"\",\n lab_id: \"\",\n labhazir_complainee: \"\",\n name: \"\",\n email: \"\",\n city: \"\",\n phone: \"\",\n subject: \"\",\n message: \"\",\n complainant: \"\",\n complainee: \"\",\n complaintSuccess: \"\",\n };\n }\n handleSelectGroup = selectedGroup => {\n this.setState({ complaint: selectedGroup.value });\n };\n componentDidMount() {\n const { territoriesList, onGetTerritoriesList } = this.props;\n if (territoriesList && !territoriesList.length) {\n console.log(onGetTerritoriesList(this.state.user_id));\n }\n const { labs, onGetlabs } = this.props;\n if (labs && !labs.length) {\n onGetlabs();\n }\n this.setState({ labs });\n }\n\n\n render() {\n const complaint = this.state.complaint;\n const { onAddNewComplaint } = this.props;\n const { labs } = this.props;\n\n const labList = [];\n for (let i = 0; i < labs.length; i++) {\n let flag = 0;\n if (!flag) {\n labList.push({\n label: labs[i].name,\n value: labs[i].id,\n });\n }\n }\n\n const cityList = [];\n for (let i = 0; i < this.props.territoriesList.length; i++) {\n cityList.push({\n label: this.props.territoriesList[i].city,\n value: this.props.territoriesList[i].city,\n });\n }\n function togglePopup(){\n document.getElementById(\"popup1\").classList.toggle(\"active\");\n }\n\n return (\n \n
\n \n \n Lab Hazir | Contact Form\n \n \n \n {this.state.complaintSuccess && (\n \n {this.state.complaintSuccess}\n \n )} \n \n \n \n Call / Email HelpLine\n
\n
\n \n
\n
\n
\n
\n
\n \n {\" \"}\n 0321 8543111\n
\n \n {\" \"}\n labhazir@gmail.com
\n
\n \n {\" \"}\n info@labhazir.com\n \n \n
\n
Available 24/7 for your convenience and peace of mind.
\n
\n\n
\n \n Close\n \n
\n
\n
\n \n \n \n \n \n {\n onAddNewComplaint(values);\n window.scrollTo({ top: 0, left: 0, behavior: 'smooth' });\n\n setTimeout(() => {\n if (this.props.complaint) {\n this.setState({\n complaintSuccess:\n \"Thank you for contacting us. Our customer service representative will get back to you soon.Check your email for Complaint ID\",\n }, () => {\n // Reload the window after 2 seconds\n setTimeout(() => {\n window.location.reload();\n }, 2000);\n });\n }\n }, 1000); \n \n\n setTimeout(() => {\n this.setState({\n complaintSuccess: \"\",\n complainant: \"\",\n complainee: \"\",\n lab_id: \"\",\n labhazir_complainee: \"\",\n name: \"\",\n email: \"\",\n city: \"\",\n phone: \"\",\n subject: \"\",\n message: \"\",\n });\n }, 5000);\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n {/* Type field */}\n
\n \n \n this.setState({\n complainant: e.target.value,\n })\n }\n value={this.state.complainant}\n className=\"form-select\"\n >\n \n \n \n \n \n \n \n
\n \n \n
\n \n \n this.setState({\n complainee: e.target.value,\n })\n }\n value={this.state.complainee}\n className=\"form-select\"\n >\n \n \n \n \n
\n \n {this.state.complainee == \"Lab\" ? (\n\n complaint.lab_id ? (\n\n
\n \n \n \n {complaint.name}\n \n \n
\n ) : (\n
\n \n \n this.setState({\n lab_id: selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.lab_id ? \" is-invalid\" : \"\")\n }\n styles={{\n control: (base, state) => ({\n ...base,\n borderColor: !this.state.lab_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={labList}\n placeholder=\"Select Lab...\"\n />\n\n
\n Please select lab\n
\n\n
\n\n )\n\n ) : null}\n {this.state.complainee === \"LabHazir\" && (\n
\n \n \n this.setState({\n labhazir_complainee: e.target.value,\n })\n }\n value={this.state.labhazir_complainee}\n className={\n \"form-select\" +\n (errors.labhazir_complainee && touched.labhazir_complainee\n ? \" is-invalid\"\n : \"\")\n }\n >\n \n \n \n \n \n \n \n \n
\n)}\n\n \n \n
\n \n \n this.setState({ name: e.target.value })\n }\n value={this.state.name}\n className={\n \"form-control\" +\n (errors.name && touched.name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n \n \n
\n \n \n this.setState({ email: e.target.value })\n }\n value={this.state.email}\n className={\n \"form-control\" +\n (errors.email && touched.email\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n \n
\n\n \n \n
\n \n \n this.setState({ phone: e.target.value })\n }\n value={this.state.phone}\n className={\n \"form-control\" +\n (errors.phone && touched.phone\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n \n \n
\n \n \n this.setState({\n city: selectedGroup.value,\n })\n }\n placeholder=\"Select City...\"\n className={\n \"defautSelectParent\" +\n (!this.state.city ? \" is-invalid\" : \"\")\n }\n options={\n cityList\n }\n // defaultValue={{\n // label:\n // this.state.city,\n // value:\n // this.state.office,\n // }}\n styles={{\n control: (base, state) => ({\n ...base,\n borderColor: !this.state.city\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n\n />\n\n
\n Please select City\n
\n
\n \n
\n \n \n
\n \n \n this.setState({\n message: e.target.value,\n })\n }\n value={this.state.message}\n className={\n \"form-control\" +\n (errors.message && touched.message\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n
\n \n Submit\n \n
\n \n
\n
\n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nContact.propTypes = {\n match: PropTypes.object,\n className: PropTypes.any,\n complaint: PropTypes.any,\n labs: PropTypes.array,\n onGetlabs: PropTypes.func,\n onAddNewComplaint: PropTypes.func,\n addNewComplaint: PropTypes.func,\n onGetTerritoriesList: PropTypes.func,\n territoriesList: PropTypes.array,\n};\nconst mapStateToProps = ({ complaints, territoriesList }) => ({\n complaint: complaints.complaint,\n labs: complaints.labs,\n territoriesList: territoriesList.territoriesList,\n});\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onAddNewComplaint: complaint => dispatch(addNewComplaint(complaint)),\n onGetlabs: () => dispatch(getLabs()),\n onGetTerritoriesList: id => dispatch(getTerritoriesList(id)),\n});\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(Contact));\n","import {\n ADD_NEW_COMPLAINT,\n ADD_COMPLAINT_SUCCESS,\n ADD_COMPLAINT_FAIL,\n GET_LABS,\n GET_LABS_SUCCESS,\n GET_LABS_FAIL,\n GET_HANDLED_COMPLAINTS,\n GET_HANDLED_COMPLAINTS_FAIL,\n GET_HANDLED_COMPLAINTS_SUCCESS,\n GET_UNHANDLED_COMPLAINTS,\n GET_UNHANDLED_COMPLAINTS_FAIL,\n GET_UNHANDLED_COMPLAINTS_SUCCESS,\n UPDATE_UNHANDLED_COMPLAINTS,\n UPDATE_UNHANDLED_COMPLAINTS_SUCCESS,\n UPDATE_UNHANDLED_COMPLAINTS_FAIL,\n} from \"./actionTypes\";\n\nexport const addNewComplaint = complaint => ({\n type: ADD_NEW_COMPLAINT,\n payload: { complaint },\n});\n\nexport const addComplaintSuccess = complaint => ({\n type: ADD_COMPLAINT_SUCCESS,\n payload: complaint,\n});\n\nexport const addComplaintFail = error => ({\n type: ADD_COMPLAINT_FAIL,\n payload: error,\n});\nexport const getLabs = () => ({\n type: GET_LABS,\n});\n\nexport const getLabsSuccess = labs => ({\n type: GET_LABS_SUCCESS,\n payload: labs,\n});\n\nexport const getLabsFail = error => ({\n type: GET_LABS_FAIL,\n payload: error,\n});\n// ----------- Handled Complaints APIs actions -----------------\nexport const getHandledComplaints = id => ({\n type: GET_HANDLED_COMPLAINTS,\n payload: id,\n});\n\nexport const getHandledComplaintsSuccess = handledComplaints => ({\n type: GET_HANDLED_COMPLAINTS_SUCCESS,\n payload: handledComplaints,\n});\n\nexport const getHandledComplaintsFail = error => ({\n type: GET_HANDLED_COMPLAINTS_FAIL,\n payload: error,\n});\n\n// ----------- Unhandled Complaints APIs actions -----------------\nexport const getUnhandledComplaints = id => ({\n type: GET_UNHANDLED_COMPLAINTS,\n payload: id,\n});\n\nexport const getUnhandledComplaintsSuccess = unhandledComplaints => (\n console.log(\"unhandledComplaints: \", unhandledComplaints),\n {\n type: GET_UNHANDLED_COMPLAINTS_SUCCESS,\n payload: unhandledComplaints,\n }\n);\n\nexport const getUnhandledComplaintsFail = error => ({\n type: GET_UNHANDLED_COMPLAINTS_FAIL,\n payload: error,\n});\n\nexport const updateUnhandledComplaints = unhandledComplaints => ({\n type: UPDATE_UNHANDLED_COMPLAINTS,\n payload: { unhandledComplaints }\n});\n\nexport const updateUnhandledComplaintsSuccess = unhandledComplaints => ({\n type: UPDATE_UNHANDLED_COMPLAINTS_SUCCESS,\n payload: unhandledComplaints,\n});\n\nexport const updateUnhandledComplaintsFail = error => ({\n type: UPDATE_UNHANDLED_COMPLAINTS_FAIL,\n payload: error,\n});\n","export default __webpack_public_path__ + \"static/media/affiliate.78255787.jpg\";","import React from \"react\";\nimport affiliate from \"../../../assets/images/affiliate.jpg\";\nimport { Link } from \"react-router-dom\";\nimport \"../../../components/HorizontalLayout/horizontal-navbar.scss\";\nimport {\n Button,\n Col,\n Container,\n Row,\n} from \"reactstrap\";\n\nconst Contact = () => {\n const containerStyle = {\n height: \"300px\",\n backgroundImage: `url(${affiliate})`,\n backgroundSize: \"cover\",\n backgroundPosition: \"center\",\n position: \"relative\",\n marginTop: \"80px\", // Adjust the top margin as needed\n };\n\n const contentStyle = {\n position: \"absolute\",\n top: \"50%\",\n left: \"50%\",\n transform: \"translate(-50%, -50%)\",\n color: \"white\",\n textAlign: \"center\",\n };\n\n const buttonContainerStyle = {\n textAlign: \"center\",\n marginTop: \"20px\",\n };\n\n const buttonStyle = {\n padding: \"15px 30px\",\n fontSize: \"20px\",\n };\n\n return (\n \n
\n
\n

BECOME OUR AFFILIATE PARTNER

\n
Promoting Labhazir is rewarding and simple!
\n
\n
\n \n
\n
\n \n \n Sign Up Now {\" \"}\n \n \n
\n
\n Why you should join
the Labhazir Affiliate Marketing Partnership Program?
\n
\n
\n
\n
\n \n \n \n \n

Attractive Commission Rate

\n

Up to 10%

\n
\n
\n
\n \n \n \n \n

Performance Visibility



\n

Access user-friendly dashboards for you to view and analyse your traffic

\n
\n
\n
\n \n \n \n \n

Seamless & Hassle-free

\n

Get started right away!

\n
\n
\n
\n
\n
\n
\n How does
Labhazir Affiliate Marketing Partnership Program work?
\n
\n
\n
\n
\n \n \n \n \n

SIGN UP & retrieve your UNIQUE TRACKING LINK

\n {/*

Up to 10%

*/}\n
\n
\n
\n \n \n \n \n

PROMOTE Labhazir with your unique tracking link on your website/ app

\n
\n
\n
\n \n \n \n \n

EARN up to 10% commission for every successful order

\n
\n
\n
\n
\n
\n
\n If you require further clarifications, You may write in to labhazir@gmail.com and we will get back to you as soon as possible.{\" \"}\n
\n
\n
\n
\n );\n};\n\nexport default Contact;","import React, { Component } from \"react\";\nimport { Carousel } from \"react-responsive-carousel\";\nimport \"react-responsive-carousel/lib/styles/carousel.min.css\";\nimport { Col } from \"reactstrap\";\n\nexport default class CarouselPage extends Component {\n render() {\n const isLargeScreen = window.innerWidth > 992;\n return (\n \n {isLargeScreen ? (\n \n
\n
\n
\n
\n
\n
\n
\n {window.location.href.includes(\"login\") && (\n
\n

\n \n Welcome on {\" \"}\n Board\n

\n
\n
\n
\n
\n

\n "Please ensure your email has been\n verified and your account has been approved\n by Lab Hazir before you attempt to Login.\n “\n

\n
\n
\n
\n
\n

\n - Team Lab Hazir\n

\n
\n
\n
\n )}\n\n {window.location.href.includes(\"register\") && (\n
\n

\n \n Registration{\" \"}\n Process\n

\n
\n
\n
\n
\n

\n "We have two steps registration process\n for all types of accounts.

\n

\n

Step 1:
\n This is a common page and requires unique\n username, unique email and password from\n you.\n

\n

\n
NOTE:
Each\n type of user will be the admin of his\n respective account.\n

\n

\n Please fill the required information and\n select NEXT button to proceed.“\n

\n
\n
\n
\n

\n - Team Lab Hazir\n

\n
\n
\n
\n
\n )}\n\n {window.location.href.includes(\"lab-information\") && (\n
\n

\n \n Registration{\" \"}\n Process\n

\n
\n
\n
\n
\n

\n "We have two steps registration process\n for all types of accounts.

\n

\n

Step 2:
\n This page requires more detailed information\n about Laboratory, please ensure that Lab is\n registered on Google Map and the address\n entered here is same as on google map, so\n that it is searchable for the patients.\n

\n

\n When Step 2 is completed, check your email\n and click on the verification link to verify\n your account.

\n

\n
NOTE:
If\n marketer is registering your account. Please\n log in and change password afterwards.\n “\n

\n
\n
\n
\n
\n

\n - Team Lab Hazir\n

\n

\n
\n
\n
\n )}\n\n {window.location.href.includes(\"patient-information\") || window.location.href.includes(\"corporate-information\") || window.location.href.includes(\"donor-information\") || window.location.href.includes(\"b2bclient-information\") ? (\n
\n

\n \n Registration{\" \"}\n Process\n

\n
\n
\n
\n
\n

\n "We have two steps registration\n process for all types of accounts.\n

\n

\n

Step 2:
\n When Step 2 is completed, please check\n your email and click on the verification\n link to verify your account. “\n

\n
\n
\n
\n
\n

\n - Team Lab Hazir\n

\n
\n
\n
\n ) : null}\n\n\n {window.location.href.includes(\"forgot-password\") && (\n
\n

\n \n Forget{\" \"}\n Password\n

\n
\n
\n
\n
\n

\n "If you have lost your Password or wish\n to reset it. Please enter your email.
\n
\n You will recive a link to create your new\n password shortly. “\n

\n
\n\n
\n

\n - Team Lab Hazir\n

\n
\n
\n
\n
\n
\n )}\n\n {window.location.href.includes(\"confirm-password\") && (\n
\n

\n \n Confirm{\" \"}\n Password\n

\n
\n
\n
\n
\n
\n

\n "You are just one step away from\n getting your account back.\n
\n
Enter your new password and confirm\n it to reset your new passowrd. “\n

\n
\n\n
\n

\n - Team Lab Hazir\n

\n
\n
\n
\n
\n
\n
\n )}\n
\n
\n
\n
\n
\n
\n \n ) :\n \n
\n
\n
\n
\n
\n
\n
\n {window.location.href.includes(\"login\") && (\n
\n

\n \n Welcome on {\" \"}\n Board\n

\n
\n
\n
\n
\n

\n "Please ensure your email has been\n verified and your account has been approved\n by Lab Hazir before you attempt to Login.\n “\n

\n
\n
\n
\n
\n

\n - Team Lab Hazir\n

\n
\n
\n
\n )}\n\n {window.location.href.includes(\"register\") && (\n
\n

\n \n Registration Process\n

\n
\n
\n
\n
\n

\n "We have two steps registration process for all types of accounts.
\n

Step 1:

\n This is a common page and requires a unique username, unique email, and password from you.
\n

NOTE:

\n Each type of user will be the admin of their respective account.
\n Please fill in the required information and select the NEXT button to proceed.“\n

\n
\n
\n
\n

- Team Lab Hazir

\n
\n
\n
\n
\n )\n }\n\n {window.location.href.includes(\"lab-information\") && (\n
\n

\n \n Registration{\" \"}\n Process\n

\n
\n
\n
\n
\n

\n "We have two steps registration process\n for all types of accounts.

\n

Step 2:

\n This page requires more detailed information\n about Laboratory, please ensure that Lab is\n registered on Google Map and the address\n entered here is same as on google map, so\n that it is searchable for the patients.\n

\n When Step 2 is completed, check your email\n and click on the verification link to verify\n your account.

\n

NOTE:

If\n marketer is registering your account. Please\n log in and change password afterwards.\n “\n

\n
\n
\n
\n
\n

\n - Team Lab Hazir\n

\n

\n
\n
\n
\n )}\n\n {window.location.href.includes(\"patient-information\") || window.location.href.includes(\"donor-information\") || window.location.href.includes(\"corporate-information\") || window.location.href.includes(\"b2bclient-information\") ? (\n
\n

\n \n Registration{\" \"}\n Process\n

\n
\n
\n
\n
\n

\n "We have two steps registration\n process for all types of accounts.\n

\n

Step 2:
\n When Step 2 is completed, please check\n your email and click on the verification\n link to verify your account. “\n

\n
\n
\n
\n
\n

\n - Team Lab Hazir\n

\n
\n
\n
\n ) : null}\n\n\n {window.location.href.includes(\"forgot-password\") && (\n
\n

\n \n Forget{\" \"}\n Password\n

\n
\n
\n
\n
\n

\n "If you have lost your Password or wish\n to reset it. Please enter your email.
\n
\n You will recive a link to create your new\n password shortly. “\n

\n
\n\n
\n

\n - Team Lab Hazir\n

\n
\n
\n
\n
\n
\n )}\n\n {window.location.href.includes(\"confirm-password\") && (\n
\n

\n \n Confirm{\" \"}\n Password\n

\n
\n
\n
\n
\n
\n

\n "You are just one step away from\n getting your account back.\n
\n
Enter your new password and confirm\n it to reset your new passowrd. “\n

\n
\n\n
\n

\n - Team Lab Hazir\n

\n
\n
\n
\n
\n
\n
\n )}\n
\n
\n
\n
\n
\n
\n \n\n }\n\n\n
\n );\n }\n}","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\n\nimport { Alert, Col, Container, Row, Label } from \"reactstrap\";\n\n// Redux\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n// actions\nimport { apiError, loginUser } from \"../../store/actions\";\nimport { getPatientProfile } from \"store/labmarket/actions\";\n// import images\nimport CarouselPage from \"../AuthenticationInner/CarouselPage\";\n\n\nclass Login extends Component {\n constructor(props) {\n super(props);\n this.state = {\n count: 0,\n guest_id: \"\",\n submittedMessage: null,\n patientProfile: [],\n };\n this.togglePermissionModal = this.togglePermissionModal.bind(this);\n\n }\n\n togglePermissionModal = () => {\n this.setState(prevState => ({\n PermissionModal: !prevState.PermissionModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n componentDidMount() {\n\n const url = window.location.href;\n const queryString = url.substring(url.indexOf(\"&\"));\n console.log(queryString);\n const params = new URLSearchParams(queryString);\n console.log(\"print params in app\", url, queryString, params)\n const latitudeFromUrl = params.get('lat');\n const longitudeFromUrl = params.get('lon');\n\n console.log('Latitude:', latitudeFromUrl);\n console.log('Longitude:', longitudeFromUrl);\n if (latitudeFromUrl && longitudeFromUrl) {\n \n // Extract only the query string part from the full URL\n const finalUrl = queryString;\n \n // Setting the final URL in the component's state\n this.setState({ finalUrl: finalUrl }, () => {\n // Logging the final URL after state update\n console.log(\"Final URL after state update:\", this.state.finalUrl);\n });\n const latitudeFromUrl = params.get('lat');\n const longitudeFromUrl = params.get('lon');\n\n if (latitudeFromUrl && longitudeFromUrl) {\n localStorage.setItem('latitude', latitudeFromUrl);\n localStorage.setItem('longitude', longitudeFromUrl);\n this.setState({ finalUrl: queryString }, () => {\n console.log(\"Final URL after state update:\", this.state.finalUrl);\n });\n }\n\n }\n \n // Removing attributes from the body\n const elem = document.getElementsByTagName(\"body\")[0];\n while (elem.attributes.length > 0) {\n elem.removeAttribute(elem.attributes[0].name);\n }\n\n\n if (localStorage.getItem(\"authUser\")) {\n this.props.history.push(\"/logout\");\n }\n this.props.apiError(\"\");\n // console.log(\"finalurl in the app\", finalUrl, this.state.finalUrl)\n console.log(\"guest_id\", this.props.match.params.guest_id)\n console.log(\"uuid\", this.props.match.params.uuid)\n\n const { patientProfile, getPatientProfile } = this.props;\n getPatientProfile(this.state.user_id);\n this.setState({\n patientProfile\n });\n console.log(\"patient state state\", this.state.patientProfile, this.props.patientProfile);\n }\n\n removeAttributes(element, ...attrs) {\n attrs.forEach(attr => element.removeAttribute(attr));\n }\n\n togglePasswordVisibility = () => {\n const passwordInput = document.querySelector('input[name=\"password\"]');\n const eyeIcon = document.getElementById('eye-icon');\n\n if (passwordInput && passwordInput.type === 'password') {\n passwordInput.type = 'text';\n eyeIcon.className = 'mdi mdi-eye-off-outline';\n } else if (passwordInput) {\n passwordInput.type = 'password';\n eyeIcon.className = 'mdi mdi-eye-outline';\n }\n };\n\n\n render() {\n const isLargeScreen = window.innerWidth > 470;\n const { getPatientProfile } = this.props;\n const { patientProfile } = this.props;\n // const closeModal = () => {\n // this.setState({ PermissionModal: false });\n\n\n // };\n const backdropStyle = {\n position: 'fixed',\n top: 0,\n left: 0,\n width: '100%',\n height: '100%',\n backgroundColor: 'rgba(0, 0, 0, 0.8)', // or any value between 0 and 1\n zIndex: 9999,\n display: this.state.PermissionModal ? 'block' : 'none',\n };\n\n const modalStyle = {\n position: 'fixed',\n top: '50%',\n left: '50%',\n transform: 'translate(-50%, -50%)',\n backgroundColor: 'white',\n padding: '20px',\n width: '500px', // Increase width\n height: '400px', // Increase height\n zIndex: 10000,\n display: this.state.PermissionModal ? 'block' : 'none',\n };\n return (\n \n
\n \n Login | Lab Hazir\n \n \n \n
\n
\n
\n \n \n \n Welcome to the Labhazir!\n \n
\n \n We would like to inform you that,\n

\n

\n since you are affiliated with a corporate entity, you will only be shown the specific tests offered by your corporation. If you wish to view different tests, you will need to create a separate regular account.



\n \n Click on ‘Use Another Account‘ for that, or click ‘Continue‘ to proceed.\n

\n \n Thank You For Choosing Labhazir!\n

\n \n\n
\n this.setState({ PermissionModal: false })}\n style={{\n color: \"black\",\n border: \"2px solid blue\",\n // backgroundColor: \"white\",\n }}\n >\n Use another Account\n \n\n {\n this.setState({ PermissionModal: true });\n setTimeout(() => {\n this.props.history.push(\"/test-appointments\");\n }, 1000);\n }}\n >\n Continue\n \n\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
Welcome Back!
\n

\n Sign in to continue to Lab Hazir\n

\n
\n\n
\n {this.props.error && this.props.error && (\n {this.props.error}\n )}\n {/* {this.state.submittedMessage && this.props.error && (\n \n {this.state.submittedMessage}\n \n )} */}\n\n {\n // Check if login is already in progress\n if (this.state.isLoginInProgress) {\n return;\n }\n\n // Set the flag to indicate login is in progress\n this.setState({ isLoginInProgress: true });\n\n try {\n // Call loginUser asynchronously\n await this.props.loginUser(values, this.props.history);\n\n // Handle success logic if needed\n\n setTimeout(() => {\n const success = this.props.success;\n const error = this.props.error;\n console.log(\"total array length\", success.is_associate_with_any_corporate)\n\n if (error) {\n // Handle the error without triggering redirection\n console.error(\"Error:\", error);\n this.props.apiError(error.message); // Dispatch the error message to state\n\n // Automatically remove the error message after 4 minutes (240,000 milliseconds)\n setTimeout(() => {\n this.props.apiError(null); // Clear the error message\n }, 240000);\n } else {\n // No error, redirect logic here\n const isLargeScreen = window.innerWidth > 470;\n\n if (!isLargeScreen) {\n console.log(\"finalUrl in mobile app else case\", this.state.finalUrl);\n if (success.account_type === \"samplecollector\") {\n this.props.history.push(\"/dashboard-samplecollector\");\n } else if (success.account_type === \"patient\" && \n (success.is_associate_with_any_corporate == undefined || success.is_associate_with_any_corporate == false) &&\n !success.employee_id_card) {\n console.log(\"yaha a raha hai mobile mation\")\n this.props.history.push(\n this.state.finalUrl\n ? `/nearby-labs/${this.state.finalUrl}`\n : `/nearby-labs`\n );\n console.log(\"yaha pr aya nahi\",this.state.finalUrl);\n } else if (success.account_type === \"patient\" && \n success.is_associate_with_any_corporate == true &&\n success.employee_id_card) {\n console.log(\"yaha a raha hai mobile mation\")\n this.props.history.push(\n this.state.finalUrl\n ? `/corporate-modal/${this.state.finalUrl}`\n : `/corporate-modal`\n );\n console.log(\"yaha pr aya nahi\",this.state.finalUrl);\n\n }\n } else if (\n !isLargeScreen &&\n !this.state.finalUrl\n ) {\n console.log(\"not finalurl yaha a raha hai mobile mation\")\n if (success.account_type === \"patient\") {\n this.props.history.push(\n this.props.match.params.uuid\n ? `/nearby-labs/${this.props.match.params.uuid}`\n : `/nearby-labs`\n );\n console.log(this.props.match.params.uuid);\n }\n } \n else if (\n isLargeScreen &&\n success.account_type === \"patient\" &&\n (success.is_associate_with_any_corporate == undefined || success.is_associate_with_any_corporate == false) &&\n !success.employee_id_card &&\n !this.state.finalUrl\n ) {\n this.props.history.push(\n this.props.match.params.uuid\n ? `/nearby-labs/${this.props.match.params.uuid}`\n : `/nearby-labs`\n );\n console.log(this.props.match.params.uuid);\n }\n else if (\n isLargeScreen &&\n success.account_type === \"patient\" &&\n success.is_associate_with_any_corporate == true &&\n // success.corporate_id != null &&\n success.employee_id_card &&\n !this.state.finalUrl\n ) {\n console.log(\"Patient Profile:\", success.is_associate_with_any_corporate);\n this.props.history.push(\"/corporate-modal\");\n } else if (success.account_type === \"labowner\") {\n this.props.history.push(\"/dashboard-lab\");\n } else if (success.account_type === \"b2b-admin\") {\n this.props.history.push(\"/b2b-clients-list\");\n } else if (success.account_type === \"b2bclient\") {\n this.props.history.push(\"/dashboard-b2bclient\");\n } else if (success.account_type === \"CSR\") {\n this.props.history.push(\"/dashboard-csr\");\n } else if (success.account_type === \"finance-officer\") {\n this.props.history.push(\"/dashboard-finance\");\n } else if (success.account_type === \"finance-admin\") {\n this.props.history.push(\"/dashboard-financeadmin\");\n } else if (success.account_type === \"auditor\") {\n this.props.history.push(\"/dashboard-auditor\");\n } else if (success.account_type === \"registration-admin\") {\n this.props.history.push(\"/pending-labs\");\n } else if (success.account_type === \"marketer-admin\") {\n this.props.history.push(\"/dashboard-marketeradmin\");\n } else if (success.account_type === \"samplecollector\") {\n this.props.history.push(\"/dashboard-samplecollector\");\n } else if (success.account_type === \"csr-admin\") {\n this.props.history.push(\"/pending-complaints-lab\");\n } else if (success.account_type === \"auditor-admin\") {\n this.props.history.push(\"/lab-list\");\n } else if (success.account_type === \"hr-admin\") {\n this.props.history.push(\"/add-staff\");\n } else if (success.account_type === \"donor\") {\n this.props.history.push(\"/dashboard-donor\");\n } else if (success.account_type === \"corporate\") {\n this.props.history.push(\"/dashboard-corporate\");\n }\n }\n }, 1000);\n } catch (error) {\n // Handle the error without triggering redirection\n console.error(\"Error:\", error);\n this.props.apiError(error.message); // Dispatch the error message to state\n\n // Automatically remove the error message after 4 minutes (240,000 milliseconds)\n setTimeout(() => {\n this.props.apiError(null); // Clear the error message\n }, 240000);\n } finally {\n // Reset the flag after login attempt\n this.setState({ isLoginInProgress: false });\n }\n }}\n\n >\n {({ errors, status, touched }) => (\n
\n\n
\n \n \n \n
\n\n
\n \n
\n \n \n \n \n
\n \n
\n\n
\n \n \n Remember me\n \n
\n\n
\n \n Log In\n \n
\n\n
\n \n Forgot\n your password?\n \n
\n\n
\n {(!isLargeScreen && this.state.finalUrl) ? (\n

\n Do not have an account?{\" \"}\n \n Register\n {\" \"}\n

\n ) : (\n

\n Do not have an account?{\" \"}\n \n Register\n {\" \"}\n

\n )}\n
\n\n \n )}\n \n
\n
\n
\n
\n
\n \n \n \n \n
\n );\n }\n}\n\nLogin.propTypes = {\n match: PropTypes.object,\n apiError: PropTypes.any,\n error: PropTypes.any,\n success: PropTypes.any,\n history: PropTypes.object,\n loginUser: PropTypes.func,\n getPatientProfile: PropTypes.func,\n patientProfile: PropTypes.array,\n\n};\n\nconst mapStateToProps = state => {\n const { error, success } = state.Login;\n const patientProfile = state.LabMarket.patientProfile; // Corrected assignment\n return { error, success, patientProfile };\n};\n\nexport default withRouter(\n connect(mapStateToProps, { loginUser, getPatientProfile, apiError })(Login)\n);","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Col, Container, Row, Label, Alert } from \"reactstrap\";\nimport MetaTags from \"react-meta-tags\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport CarouselPage from \"../AuthenticationInner/CarouselPage\";\n\n// action\nimport {\n apiError,\n registerUser,\n registerUserFailed,\n} from \"../../store/actions\";\n\n// Redux\nimport { connect } from \"react-redux\";\nimport { Link } from \"react-router-dom\";\nimport { Redirect } from \"react-router-dom\";\n\nclass Register extends Component {\n constructor(props) {\n super(props);\n this.state = {\n usernameFieldError: null,\n // emailFieldError: null,\n passwordFieldError: null,\n incompleteRegistrationError: null,\n submittedMessage: null,\n };\n }\n\n componentDidMount() {\n const url = window.location.href;\n const queryString = url.includes('&') ? url.substring(url.indexOf('&') + 1) : '';\n console.log(queryString);\n const params = new URLSearchParams(queryString);\n console.log(\"print params in app\", url, queryString, params)\n const latitudeFromUrl = params.get('lat');\n const longitudeFromUrl = params.get('lon');\n\n console.log('Latitude:', latitudeFromUrl);\n console.log('Longitude:', longitudeFromUrl);\n if (latitudeFromUrl && longitudeFromUrl) {\n\n const url = `https://labhazirapi.com/nearby-labs/&lat=${latitudeFromUrl}&lon=${longitudeFromUrl}`;\n const queryString = url.substring(url.indexOf(\"&\") + 1);\n const finalUrl = (\"&\") + queryString; // Remove the leading question mark ('?') \n this.setState({ finalUrl: finalUrl });\n console.log(\"differ with the final url state:\", this.state.finalUrl);\n\n console.log(finalUrl);\n console.log(\"whsuqi\", this.props.match.params.uuid);\n }\n console.log(\"uuid\", this.props.match.params.uuid)\n console.log(\"guest_id\", this.props.match.params.guest_id)\n\n // Removing attributes from the body\n const elem = document.getElementsByTagName(\"body\")[0];\n while (elem.attributes.length > 0) {\n elem.removeAttribute(elem.attributes[0].name);\n }\n\n this.props.apiError(\"\");\n this.props.registerUserFailed(\"\");\n }\n\n componentDidUpdate(prevProps) {\n\n if (prevProps.usernameError != this.props.usernameError) {\n this.setState({ usernameFieldError: this.props.usernameError });\n }\n\n // if (prevProps.emailError != this.props.emailError) {\n // this.setState({ emailFieldError: this.props.emailError });\n // }\n\n if (prevProps.passwordError != this.props.passwordError) {\n this.setState({ passwordFieldError: this.props.passwordError });\n }\n\n if (\n prevProps.incompleteRegistrationError !=\n this.props.incompleteRegistrationError\n ) {\n this.setState({\n incompleteRegistrationError: this.props.incompleteRegistrationError,\n });\n }\n }\n\n togglePasswordVisibility = () => {\n const passwordInput = document.querySelector('input[name=\"password\"]');\n const eyeIcon = document.getElementById('eye-icon');\n\n if (passwordInput && passwordInput.type === 'password') {\n passwordInput.type = 'text';\n eyeIcon.className = 'mdi mdi-eye-off-outline';\n } else if (passwordInput) {\n passwordInput.type = 'password';\n eyeIcon.className = 'mdi mdi-eye-outline';\n }\n };\n togglePassword2Visibility = () => {\n const passwordInput = document.querySelector('input[name=\"password2\"]');\n const eyeIcon2 = document.getElementById('eye-icon2');\n\n if (passwordInput && passwordInput.type === 'password') {\n passwordInput.type = 'text';\n eyeIcon2.className = 'mdi mdi-eye-off-outline';\n } else if (passwordInput) {\n passwordInput.type = 'password';\n eyeIcon2.className = 'mdi mdi-eye-outline';\n }\n };\n\n render() {\n const isLargeScreen = window.innerWidth > 470;\n if (this.props.userID) {\n if (this.props.userAccountType == \"patient\") {\n if (!this.props.match.params.uuid && !this.props.match.params.guest_id) {\n return (\n \n );\n }\n else if (this.props.match.params.guest_id && this.props.match.params.uuid) {\n return (\n \n )\n }\n else {\n return (\n \n );\n }\n } else if (this.props.userAccountType == \"labowner\") {\n return (\n \n );\n } else if (this.props.userAccountType == \"corporate\") {\n return (\n \n );\n } else if (this.props.userAccountType == \"b2bclient\") {\n return (\n \n );\n }\n else if (this.props.userAccountType == \"donor\") {\n return (\n \n );\n }\n }\n\n return (\n \n
\n \n Register | Lab Hazir\n \n \n \n \n\n \n
\n
\n
\n
\n
\n
\n Register account - Step 1 of 2\n
\n

\n Get your free Lab Hazir account now.\n

\n
\n\n {/* To show submitted message of processing if submission is succesful */}\n
\n {this.state.submittedMessage && (\n \n {this.state.submittedMessage}\n \n )}\n\n {/* To show incomplete registration error to inform user */}\n {this.state.incompleteRegistrationError && (\n
\n \n Your registration process was{\" \"}\n \n incomplete last time when you registered\n \n . If you want to\n regispatient-information/113893749834ter now,\n please click on Next button\n once again.\n \n \n After completing the step 2 of registration,\n please make sure to{\" \"}\n \n verify your account on new verification email\n {\" \"}\n you will receive from us and{\" \"}\n ignore the old one (if any) you\n have received last time.\n \n
\n )}\n\n \n val && val.length > 0 ? true : false,\n then: Yup.string().oneOf(\n [Yup.ref(\"password\")],\n \"Both password need to be the same\"\n ),\n }),\n })}\n onSubmit={values => {\n this.props.registerUser(values);\n // console.log(window.location.href)\n window.scrollTo({ top: 0, left: 0, behavior: 'smooth' });\n // If no error messages then show wait message\n setTimeout(() => {\n if (\n !this.state.usernameFieldError &&\n !this.state.passwordFieldError &&\n // !this.state.emailFieldError &&\n !this.state.incompleteRegistrationError\n ) {\n this.setState({\n submittedMessage:\n \"Please wait for a while we are processing. Thank you for your patience.\",\n });\n }\n }, 1000);\n console.log(\"submit\", values)\n\n }}\n >\n {({ errors, status, touched }) => (\n
\n {/* Username field */}\n
\n \n {\n this.setState({\n usernameFieldError: null,\n });\n }}\n className={\n \"form-control\" +\n ((errors.username && touched.username) ||\n this.state.usernameFieldError\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n\n
\n {this.state.usernameFieldError}\n
\n
\n\n {/* Email field */}\n {/*
\n \n {\n this.setState({ emailFieldError: null });\n }}\n className={\n \"form-control\" +\n ((errors.email && touched.email) ||\n this.state.emailFieldError\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n\n
\n {this.state.emailFieldError}\n
\n
*/}\n\n {/* Password field */}\n\n
\n \n
\n
\n \n \n \n \n {errors.password && touched.password && (\n
\n Password must contain at least 8 characters and one numeric digit.\n
\n )}\n
\n
\n
\n
\n \n \n {/* Updated ID for the eye icon */}\n \n
\n \n
\n
\n {isLargeScreen ? (\n
\n \n Account type\n \n \n \n
\n ) : !isLargeScreen && this.state.finalUrl ? (\n
\n \n Account type\n \n \n \n
\n ) :\n
\n \n Account type\n \n \n \n
\n }\n\n {/* Account type field */}\n\n
\n \n {\" \"}\n Next{\" \"}\n \n
\n
\n )}\n \n
\n

\n Already have an account?{\" \"}\n \n {\" \"}\n Login\n {\" \"}\n

\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nRegister.propTypes = {\n match: PropTypes.object,\n apiError: PropTypes.any,\n registerUser: PropTypes.func,\n registerUserFailed: PropTypes.any,\n usernameError: PropTypes.any,\n // emailError: PropTypes.any,\n passwordError: PropTypes.any,\n incompleteRegistrationError: PropTypes.any,\n userID: PropTypes.any,\n userAccountType: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const {\n userID,\n userAccountType,\n // emailError,\n usernameError,\n passwordError,\n incompleteRegistrationError,\n loading,\n } = state.Account;\n return {\n userID,\n userAccountType,\n // emailError,\n usernameError,\n passwordError,\n incompleteRegistrationError,\n loading,\n };\n};\n\nexport default connect(mapStateToProps, {\n registerUser,\n apiError,\n registerUserFailed,\n})(Register);\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport { withRouter } from \"react-router-dom\";\n\nimport { logoutUser } from \"../../store/actions\";\n\nclass Logout extends Component {\n /**\n * Redirect to login\n */\n componentDidMount = () => {\n // emit the event\n this.props.logoutUser(this.props.history);\n const isSmallScreen = window.innerWidth < 490;\n if (isSmallScreen) {\n const latitude = localStorage.getItem('latitude');\n const longitude = localStorage.getItem('longitude');\n \n this.props.history.push(`/login/&lat=${latitude}&lon=${longitude}`);\n }\n else{\n this.props.history.push(\"/nearby-labs\");\n }\n };\n\n render() {\n return ;\n }\n}\n\nLogout.propTypes = {\n history: PropTypes.any,\n logoutUser: PropTypes.func,\n};\n\nexport default withRouter(connect(null, { logoutUser })(Logout));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Col, Container, Row, Label, Alert } from \"reactstrap\";\nimport MetaTags from \"react-meta-tags\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport CarouselPage from \"../AuthenticationInner/CarouselPage\";\n\n// action\nimport {\n apiError,\n registerUser,\n registerUserFailed,\n} from \"../../store/actions\";\n\n// Redux\nimport { connect } from \"react-redux\";\nimport { Link } from \"react-router-dom\";\nimport { Redirect } from \"react-router-dom\";\n\nclass Register extends Component {\n constructor(props) {\n super(props);\n this.state = {\n usernameFieldError: null,\n // emailFieldError: null,\n passwordFieldError: null,\n incompleteRegistrationError: null,\n submittedMessage: null,\n };\n }\n\n componentDidMount() {\n const url = window.location.href;\n const queryString = url.includes('&') ? url.substring(url.indexOf('&') + 1) : '';\n console.log(queryString);\n const params = new URLSearchParams(queryString);\n console.log(\"print params in app\", url, queryString, params)\n const latitudeFromUrl = params.get('lat');\n const longitudeFromUrl = params.get('lon');\n\n console.log('Latitude:', latitudeFromUrl);\n console.log('Longitude:', longitudeFromUrl);\n if (latitudeFromUrl && longitudeFromUrl) {\n\n const url = `https://labhazirapi.com/nearby-labs/&lat=${latitudeFromUrl}&lon=${longitudeFromUrl}`;\n const queryString = url.substring(url.indexOf(\"&\") + 1);\n const finalUrl = (\"&\") + queryString; // Remove the leading question mark ('?') \n this.setState({ finalUrl: finalUrl });\n console.log(\"differ with the final url state:\", this.state.finalUrl);\n\n console.log(finalUrl);\n console.log(\"whsuqi\", this.props.match.params.uuid);\n }\n console.log(\"uuid\", this.props.match.params.uuid)\n console.log(\"guest_id\", this.props.match.params.guest_id)\n\n // Removing attributes from the body\n const elem = document.getElementsByTagName(\"body\")[0];\n while (elem.attributes.length > 0) {\n elem.removeAttribute(elem.attributes[0].name);\n }\n\n this.props.apiError(\"\");\n this.props.registerUserFailed(\"\");\n }\n\n componentDidUpdate(prevProps) {\n \n if (prevProps.usernameError != this.props.usernameError) {\n this.setState({ usernameFieldError: this.props.usernameError });\n }\n\n // if (prevProps.emailError != this.props.emailError) {\n // this.setState({ emailFieldError: this.props.emailError });\n // }\n\n if (prevProps.passwordError != this.props.passwordError) {\n this.setState({ passwordFieldError: this.props.passwordError });\n }\n\n if (\n prevProps.incompleteRegistrationError !=\n this.props.incompleteRegistrationError\n ) {\n this.setState({\n incompleteRegistrationError: this.props.incompleteRegistrationError,\n });\n }\n }\n\n togglePasswordVisibility = () => {\n const passwordInput = document.querySelector('input[name=\"password\"]');\n const eyeIcon = document.getElementById('eye-icon');\n\n if (passwordInput && passwordInput.type === 'password') {\n passwordInput.type = 'text';\n eyeIcon.className = 'mdi mdi-eye-off-outline';\n } else if (passwordInput) {\n passwordInput.type = 'password';\n eyeIcon.className = 'mdi mdi-eye-outline';\n }\n };\n togglePassword2Visibility = () => {\n const passwordInput = document.querySelector('input[name=\"password2\"]');\n const eyeIcon2 = document.getElementById('eye-icon2');\n\n if (passwordInput && passwordInput.type === 'password') {\n passwordInput.type = 'text';\n eyeIcon2.className = 'mdi mdi-eye-off-outline';\n } else if (passwordInput) {\n passwordInput.type = 'password';\n eyeIcon2.className = 'mdi mdi-eye-outline';\n }\n };\n\n render() {\n const isLargeScreen = window.innerWidth > 470;\n if (this.props.userID) {\n if (this.props.userAccountType == \"patient\") {\n if (!this.props.match.params.uuid && !this.props.match.params.guest_id) {\n return (\n \n );\n } \n else if (this.props.match.params.guest_id && this.props.match.params.uuid) {\n return (\n \n )\n }\n else {\n return (\n \n );\n }\n } else if (this.props.userAccountType == \"labowner\") {\n return (\n \n );\n } else if (this.props.userAccountType == \"corporate\") {\n return (\n \n );\n } else if (this.props.userAccountType == \"b2bclient\") {\n return (\n \n );\n }\n else if (this.props.userAccountType == \"donor\") {\n return (\n \n );\n }\n }\n\n return (\n \n
\n \n Register | Lab Hazir\n \n \n \n \n\n \n
\n
\n
\n
\n
\n
\n Register account - Step 1 of 2\n
\n

\n Get your free Lab Hazir account now.\n

\n
\n\n {/* To show submitted message of processing if submission is succesful */}\n
\n {this.state.submittedMessage && (\n \n {this.state.submittedMessage}\n \n )}\n\n {/* To show incomplete registration error to inform user */}\n {this.state.incompleteRegistrationError && (\n
\n \n Your registration process was{\" \"}\n \n incomplete last time when you registered\n \n . If you want to\n regispatient-information/113893749834ter now,\n please click on Next button\n once again.\n \n \n After completing the step 2 of registration,\n please make sure to{\" \"}\n \n verify your account on new verification email\n {\" \"}\n you will receive from us and{\" \"}\n ignore the old one (if any) you\n have received last time.\n \n
\n )}\n\n value && value.trim() === value\n )\n .matches(\n /^[^\\s]+$/,\n \"Username should not contain spaces\"\n ) \n .required(\"Please enter your username\")\n .when(\"account_type\", {\n is: \"patient\",\n then: Yup.string()\n .test(\n \"no-leading-trailing-spaces-patient\",\n \"Username should not contain spaces at the beginning or end\",\n value => value && value.trim() === value\n )\n .matches(\n /^[^\\s]+$/,\n \"Username should not contain spaces\"\n ), \n }),\n // email: Yup.string()\n // .required(\"Please enter your email\")\n // .email(\"Please enter valid email\"),\n password: Yup.string().required(\n \"Please enter your password\"\n \n )\n .matches(\n /^(?=.*\\d).{8,}$/, // Regex to enforce at least 8 characters in password\n \"Password must contain at least 8 characters and one numeric digit.\"\n ),\n password2: Yup.string()\n .required(\"Please re-enter your password\")\n .when(\"password\", {\n is: val =>\n val && val.length > 0 ? true : false,\n then: Yup.string().oneOf(\n [Yup.ref(\"password\")],\n \"Both password need to be the same\"\n ),\n }),\n })}\n onSubmit={values => {\n this.props.registerUser(values);\n // console.log(window.location.href)\n window.scrollTo({ top: 0, left: 0, behavior: 'smooth' });\n // If no error messages then show wait message\n setTimeout(() => {\n if (\n !this.state.usernameFieldError &&\n !this.state.passwordFieldError &&\n // !this.state.emailFieldError &&\n !this.state.incompleteRegistrationError\n ) {\n this.setState({\n submittedMessage:\n \"Please wait for a while we are processing. Thank you for your patience.\",\n });\n }\n }, 1000);\n console.log(\"submit\", values)\n\n }}\n >\n {({ errors, status, touched }) => (\n
\n {/* Username field */}\n
\n \n {\n this.setState({\n usernameFieldError: null,\n });\n }}\n className={\n \"form-control\" +\n ((errors.username && touched.username) ||\n this.state.usernameFieldError\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n\n
\n {this.state.usernameFieldError}\n
\n
\n\n {/* Email field */}\n {/*
\n \n {\n this.setState({ emailFieldError: null });\n }}\n className={\n \"form-control\" +\n ((errors.email && touched.email) ||\n this.state.emailFieldError\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n\n
\n {this.state.emailFieldError}\n
\n
*/}\n\n {/* Password field */}\n\n
\n \n
\n
\n \n \n \n \n {errors.password && touched.password && (\n
\n Password must contain at least 8 characters and one numeric digit.\n
\n )}\n
\n
\n
\n
\n \n \n {/* Updated ID for the eye icon */}\n \n
\n \n
\n
\n {isLargeScreen ? (\n
\n \n Account type\n \n \n \n \n \n \n \n {/* */}\n \n
\n ) : !isLargeScreen && this.state.finalUrl ?(\n
\n \n Account type\n \n \n \n
\n ) : \n
\n \n Account type\n \n \n \n \n \n \n \n {/* */}\n \n
\n }\n\n {/* Account type field */}\n\n
\n \n {\" \"}\n Next{\" \"}\n \n
\n
\n )}\n \n
\n

\n Already have an account?{\" \"}\n \n {\" \"}\n Login\n {\" \"}\n

\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nRegister.propTypes = {\n match: PropTypes.object,\n apiError: PropTypes.any,\n registerUser: PropTypes.func,\n registerUserFailed: PropTypes.any,\n usernameError: PropTypes.any,\n // emailError: PropTypes.any,\n passwordError: PropTypes.any,\n incompleteRegistrationError: PropTypes.any,\n userID: PropTypes.any,\n userAccountType: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const {\n userID,\n userAccountType,\n // emailError,\n usernameError,\n passwordError,\n incompleteRegistrationError,\n loading,\n } = state.Account;\n return {\n userID,\n userAccountType,\n // emailError,\n usernameError,\n passwordError,\n incompleteRegistrationError,\n loading,\n };\n};\n\nexport default connect(mapStateToProps, {\n registerUser,\n apiError,\n registerUserFailed,\n})(Register);\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Alert, Col, Container, Row, Label } from \"reactstrap\";\nimport MetaTags from \"react-meta-tags\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\nimport Select from \"react-select\";\nimport CarouselPage from \"../AuthenticationInner/CarouselPage\";\nimport { Redirect, Link } from \"react-router-dom\";\nimport axios from 'axios';\n// action\nimport {\n getTerritoriesList,\n getCorporatesList,\n addPatientInformation,\n addPatientInformationFailed,\n} from \"../../store/actions\";\n// Redux\nimport { connect } from \"react-redux\";\nclass PatientInformation extends Component {\n constructor(props) {\n super(props);\n this.state = {\n name: \"\",\n phone: \"\",\n is_assosiatewith_anycorporate: \"No\",\n corporate_id: null, // Updated to initialize as null\n employee_id_card: \"\",\n employee_code: [], // Add this line\n employee_id_cardError: \"\",\n email: \"\",\n city_id: \"\",\n address: \"\",\n guest_id: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n employeeData: [], // New state property for employee data\n };\n console.log(\"empluyee data in state\", this.state.employee_code)\n }\n\n componentDidMount() {\n console.log(\"uuid\", this.props.match.params.uuid)\n console.log(\"guest_id\", this.props.match.params.guest_id)\n console.log(\"id\", this.props.match.params.id)\n console.log(\"user type\", this.state.user_type)\n this.props.addPatientInformationFailed(\"\");\n this.props.getTerritoriesList();\n this.props.getCorporatesList();\n console.log(\"user id\", this.state.user_id)\n // Fetch and set employee codes here\n this.fetchEmployeeCodes();\n }\n // fetchEmployeeCodes = async () => {\n // try {\n // const response = await axios.get(`https://labhazirapi.com/api/corporate/employees-list`);\n // const employeeData = response.data.data;\n \n // if (employeeData && employeeData.length > 0) {\n // const employeeCodes = employeeData.map((item) => item.employee_code);\n // console.log(\"Employee Code Match:\", employeeCodes, employeeData);\n \n // // Update the state with the fetched employee_codes and employeeData\n // this.setState({\n // employee_id_card: \"\", // Reset employee_id_card when corporate changes\n // employee_code: employeeCodes,\n // employeeData: employeeData, // Add this line to set employeeData\n // corporate_id: employeeData.corporate_id,\n // });\n // } else {\n // console.error(\"No employee data found for the given corporate ID\");\n // }\n // } catch (error) {\n // console.error(\"Error fetching employee_code:\", error);\n // }\n // }; \n fetchEmployeeCodes = async () => {\n try {\n const response = await axios.get(\n `https://labhazirapi.com/api/corporate/employees-list`\n );\n const employeeData = response.data.data;\n\n if (employeeData && employeeData.length > 0) {\n const employeeCodes = employeeData.map((item) => item.employee_code);\n console.log(\"Employee Code Match:\", employeeCodes, employeeData);\n\n // Update the state with the fetched employee_codes and employeeData\n this.setState({\n employee_id_card: \"\",\n employee_code: employeeCodes,\n employeeData: employeeData,\n });\n } else {\n console.error(\"No employee data found for the given corporate ID\");\n }\n } catch (error) {\n console.error(\"Error fetching employee_code:\", error);\n }\n };\n validateEmployeeCode = enteredEmployeeIdCard => {\n const { employeeData } = this.state;\n\n const matchedEmployee = employeeData.find(\n item => item.employee_code === enteredEmployeeIdCard\n );\n\n if (!matchedEmployee) {\n this.setState({\n employee_id_cardError:\n \"This ID Card Number does not exist with any Corporation. Please enter your correct ID Card Number.\",\n corporate_id: null,\n });\n } else {\n this.setState({\n employee_id_cardError: \"\",\n corporate_id: matchedEmployee.corporate_id,\n });\n }\n };\n render() {\n // list of city from territories\n const cityList = [];\n for (let i = 0; i < this.props.territoriesList.length; i++) {\n cityList.push({\n label: this.props.territoriesList[i].city,\n value: this.props.territoriesList[i].id,\n });\n }\n const corporatesList = [];\n for (let i = 0; i < this.props.corporatesList.length; i++) {\n corporatesList.push({\n label: this.props.corporatesList[i].name,\n value: this.props.corporatesList[i].id,\n });\n }\n // Redirect to register page if getting access directly from url\n if (typeof this.props.location.state == \"undefined\") {\n return ;\n }\n\n return (\n \n
\n \n Patient Information | Lab Hazirk{\" \"}\n \n \n \n \n\n \n
\n
\n
\n
\n
\n
\n Patient account information - Step 2 of 2\n
\n

\n You are one step away from your free Lab Hazir\n account.\n

\n
\n\n
\n {this.props.patient || this.state.user_id ? (\n this.state.user_type === \"b2bclient\" || this.state.user_type === \"CSR\" ? (\n \n Account Registered Successfully.\n \n ) : (\n \n Your Account Registered Successfully. Please log in to your account.\n \n )\n ) : null}\n\n {this.props.addPatientError &&\n this.props.addPatientError ? (\n \n {this.props.addPatientError}\n \n ) : null}\n\n this.state.employee_code.includes(value)\n ),\n }),\n name: Yup.string()\n .trim()\n .required(\"Please enter your name\")\n .min(3, \"Please enter at least 3 characters\")\n .max(255, \"Please enter maximum 255 characters\")\n .matches(\n /^[a-zA-Z][a-zA-Z ]+$/,\n \"Please enter only alphabets and spaces\"\n ),\n phone: Yup.string()\n .required(\"Please enter your phone no.\")\n .max(255, \"Please enter maximum 255 characters\")\n .matches(\n /^((\\+92)|(0092))-{0,1}\\d{3}-{0,1}\\d{7}$|^\\d{11}$|^\\d{4}-\\d{7}$/,\n \"Please enter a valid Pakistani phone number e.g. 03123456789\"\n ),\n email: Yup.string()\n .required(\"Please enter your Email.\")\n .email(\"Please enter valid Email\")\n })}\n onSubmit={values => {\n this.props.addPatientInformation(\n values,\n this.props.match.params.id\n );\n window.scrollTo({ top: 0, left: 0, behavior: 'smooth' });\n\n // Redirecting back to the login page\n setTimeout(() => {\n if (this.props.patient && !this.state.user_id) {\n console.log(this.props.match.params.uuid);\n // Add a 4-second delay using setTimeout\n setTimeout(() => {\n this.props.history.push(\n this.props.match.params.uuid\n ? `/login/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/login/${this.props.match.params.guest_id}`\n );\n }, 2000); // 4000 milliseconds = 4 seconds\n } else if (\n this.props.patient &&\n this.state.user_id &&\n this.state.user_type === \"b2bclient\"\n ) {\n console.log(this.props.match.params.guest_id);\n this.props.history.push(\n this.props.match.params.guest_id\n ? `/labs/${this.props.match.params.guest_id}/${this.props.match.params.id}`\n : `/labs`\n );\n }\n else if (\n this.props.patient &&\n this.state.user_id &&\n this.state.is_assosiatewith_anycorporate === \"No\" && \n !this.state.employee_id_card &&\n this.state.user_type === \"CSR\"\n ) {\n console.log(this.props.match.params.uuid);\n this.props.history.push(\n this.props.match.params.uuid\n ? `/tests-offered-labhazir/${this.props.match.params.uuid}/${this.props.match.params.id}`\n : `/tests-offered-labhazir/${this.props.match.params.id}`\n );\n }\n else if (\n this.props.patient &&\n this.state.user_id &&\n this.state.is_assosiatewith_anycorporate === \"Yes\" && \n this.state.employee_id_card &&\n this.state.user_type === \"CSR\"\n ){\n const uuid = this.props.match.params.id;\n const accountId = this.state.corporate_id;\n const url = uuid\n ? `/corporate-patients-book-appointments/${uuid}/${accountId}`\n : `/corporate-patients-book-appointments/${accountId}`;\n this.props.history.push(url);\n }\n \n }, 5000);\n\n }}\n >\n {({ errors, status, touched }) => (\n
\n {/* Name field */}\n
\n \n \n this.setState({ name: e.target.value })\n }\n value={this.state.name}\n className={\n \"form-control\" +\n (errors.name && touched.name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n {/* Phone field */}\n
\n \n \n this.setState({ phone: e.target.value })\n }\n value={this.state.phone}\n className={\n \"form-control\" +\n (errors.phone && touched.phone\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n
\n \n \n this.setState({ email: e.target.value })\n }\n value={this.state.email}\n className={\n \"form-control\" +\n (errors.email && touched.email ? \" is-invalid\" : \"\")\n }\n />\n \n
\n {/* city field */}\n
\n \n \n this.setState({ address: e.target.value })\n }\n value={this.state.address}\n className={\n \"form-control\" +\n (errors.address && touched.address\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n
\n\n\n \n \n this.setState({\n city_id: selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (errors.city_id && touched.city_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (base, state) => ({\n ...base,\n borderColor:\n errors.city_id && touched.city_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={\n cityList\n }\n defaultValue={{\n label:\n this.state.city,\n value:\n this.state.id,\n }}\n\n />\n\n \n
\n\n {/* corporates field */}\n
\n \n Are you associated with any corporation?\n \n \n this.setState({\n is_assosiatewith_anycorporate:\n e.target.value,\n })\n }\n value={\n this.state.is_assosiatewith_anycorporate\n }\n\n className=\"form-select\"\n >\n \n \n \n
\n {this.state.is_assosiatewith_anycorporate == \"Yes\" ? (\n
\n \n
\n \n {\n this.setState({ employee_id_card: e.target.value });\n this.validateEmployeeCode(e.target.value);\n }}\n value={this.state.employee_id_card}\n className={\n \"form-control\" +\n (this.state.employee_id_cardError ? \" is-invalid\" : \"\")\n }\n />\n \n {this.state.employee_id_cardError && (\n
{this.state.employee_id_cardError}
\n )}\n
\n
\n \n
\n
\n ) : null} \n\n
\n \n {\" \"}\n Complete Registration{\" \"}\n \n
\n
\n )}\n \n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n );\n }\n}\nPatientInformation.propTypes = {\n history: PropTypes.any,\n match: PropTypes.object,\n location: PropTypes.object,\n addPatientInformation: PropTypes.func,\n addPatientInformationFailed: PropTypes.any,\n addPatientError: PropTypes.any,\n patient: PropTypes.any,\n getTerritoriesList: PropTypes.func,\n getCorporatesList: PropTypes.func,\n territoriesList: PropTypes.array,\n corporatesList: PropTypes.array,\n employeeData: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.number,\n name: PropTypes.string,\n employee_code: PropTypes.string,\n corporate_id: PropTypes.number,\n })\n ),\n};\nconst mapStateToProps = state => {\n const { territoriesList } = state.PatientInformation;\n const { corporatesList } = state.PatientInformation;\n const { patient, addPatientError, loading } = state.PatientInformation;\n return { patient, addPatientError, loading, territoriesList, corporatesList };\n};\nexport default connect(mapStateToProps, {\n getTerritoriesList,\n getCorporatesList,\n addPatientInformation,\n addPatientInformationFailed,\n})(PatientInformation);","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Alert, Col, Input, Container, Row, Label } from \"reactstrap\";\nimport MetaTags from \"react-meta-tags\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\nimport Select from \"react-select\";\nimport CarouselPage from \"../AuthenticationInner/CarouselPage\";\nimport { Redirect, Link } from \"react-router-dom\";\nimport { CITIES, DISTRICTS } from \"helpers/global_variables_helper\";\n\n// action\nimport {\n getTerritoriesList,\n addB2bClientInformation,\n addB2bClientInformationFailed,\n} from \"../../store/auth/b2bclientinformation/actions\";\n\n// Redux\nimport { connect } from \"react-redux\";\n\nclass B2bClientInformation extends Component {\n constructor(props) {\n super(props);\n this.state = {\n name: \"\",\n email: \"\",\n landline: \"\",\n website_url: \"\",\n business_logo: \"\",\n // district: \"\",\n // province: \"Punjab\",\n city_id: \"\",\n };\n }\n\n componentDidMount() {\n this.props.addB2bClientInformationFailed(\"\");\n this.props.getTerritoriesList();\n }\n\n render() {\n\n\n\n const cityList = [];\n for (let i = 0; i < this.props.territoriesList.length; i++) {\n cityList.push({\n label: this.props.territoriesList[i].city,\n value: this.props.territoriesList[i].id,\n });\n }\n\n // const districtList = [];\n // for (let i = 0; i < this.props.territoriesList.length; i++) {\n // districtList.push({\n // label: this.props.territoriesList[i].district,\n // value: this.props.territoriesList[i].id,\n // });\n // }\n // const provinceList = [];\n // for (let i = 0; i < this.props.territoriesList.length; i++) {\n // provinceList.push({\n // label: this.props.territoriesList[i].province,\n // value: this.props.territoriesList[i].id,\n // });\n // }\n\n //Redirect to register page if getting access directly from url\n if (typeof this.props.location.state == \"undefined\") {\n return ;\n }\n\n return (\n \n
\n \n B2B Client Information | Lab Hazir\n \n \n \n \n\n \n
\n
\n
\n
\n
\n
\n B2B Client Account Information\n
\n

\n You are one step away from your free Lab Hazir\n account.\n

\n
\n\n
\n {this.props.b2bclient && this.props.b2bclient ? (\n \n The verification link is sent to your email,\n please verify your account first in order to\n login.{\" \"}\n \n ) : null}\n\n {this.props.b2bclient&& this.props.b2bclient? (\n setTimeout(() => {\n if (this.props.b2bclient) {\n this.props.history.push(\"/login\");\n }\n }, 2000)\n ) : null}\n \n\n {this.props.addB2bClientError &&\n this.props.addB2bClientError ? (\n \n {this.props.addB2bClientError}\n \n ) : null}\n\n {\n this.props.addB2bClientInformation(\n values,\n this.props.match.params.id\n );\n window.scrollTo({top: 0, left: 0, behavior: 'smooth'});\n\n // Redirecting back to the login page\n \n }}\n >\n {({ errors, status, touched }) => (\n
\n {/* Name field */}\n
\n \n \n this.setState({ name: e.target.value })\n }\n value={this.state.name}\n className={\n \"form-control\" +\n (errors.name && touched.name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n
\n \n \n this.setState({\n email: e.target.value,\n })\n }\n type=\"text\"\n value={this.state.email}\n\n className={\n \"form-control\" +\n (errors.email && touched.email\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n\n
\n\n
\n \n \n this.setState({\n business_logo: e.target.files[0],\n })\n }\n className={\n \"form-control\" +\n (errors.business_logo && touched.business_logo\n ? \" is-invalid\"\n : \"\")\n }\n />\n\n \n
\n\n {/* Landline field */}\n
\n \n \n this.setState({\n landline: e.target.value,\n })\n }\n value={this.state.landline}\n className={\n \"form-control\" +\n (errors.phone && touched.phone\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n \n\n {/* Province field */}\n {/*
\n \n \n this.setState({\n province: e.target.value,\n })\n }\n value={this.state.province}\n className=\"form-select\"\n >\n \n \n \n \n \n \n
*/}\n\n\n {/* District field */}\n {/*
\n \n \n this.setState({\n district: selectedGroup.value,\n })\n }\n styles={{\n control: (base, state) => ({\n ...base,\n borderColor:\n errors.district && touched.district\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n className={\n \"defautSelectParent\" +\n (errors.district && touched.district\n ? \" is-invalid\"\n : \"\")\n }\n options={DISTRICTS}\n placeholder=\"Select District...\"\n />\n \n
*/}\n\n\n {/* city field */}\n
\n\n\n \n \n this.setState({\n city_id: selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (errors.city_id && touched.city_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (base, state) => ({\n ...base,\n borderColor:\n errors.city_id && touched.city_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={\n cityList\n }\n defaultValue={{\n label:\n this.state.city,\n value:\n this.state.id, \n }}\n />\n \n
\n \n\n {/* {URL Field} */}\n
\n \n URL\n \n \n this.setState({\n website_url: e.target.value,\n })\n }\n value={this.state.website_url}\n className={\n \"form-control\" +\n (errors.website_url && touched.website_url\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n
\n \n {\" \"}\n Complete Registration{\" \"}\n \n
\n
\n )}\n \n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nB2bClientInformation.propTypes = {\n history: PropTypes.any,\n match: PropTypes.object,\n location: PropTypes.object,\n addB2bClientInformation: PropTypes.func,\n addB2bClientInformationFailed: PropTypes.any,\n addB2bClientError: PropTypes.any,\n b2bclient: PropTypes.any,\n getTerritoriesList:PropTypes.func,\n territoriesList: PropTypes.array,\n};\n\nconst mapStateToProps = state => {\n const { b2bclient, addB2bClientError, loading, territoriesList } = state.B2bClientInformation;\n \n return { b2bclient, addB2bClientError, loading, territoriesList };\n};\n\nexport default connect(mapStateToProps, {\n getTerritoriesList,\n addB2bClientInformation,\n addB2bClientInformationFailed,\n\n})(B2bClientInformation);","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Alert, Col, Container, Row, Label } from \"reactstrap\";\nimport MetaTags from \"react-meta-tags\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\nimport Select from \"react-select\";\nimport CarouselPage from \"../AuthenticationInner/CarouselPage\";\nimport { Redirect, Link } from \"react-router-dom\";\nimport { CITIES, DISTRICTS } from \"helpers/global_variables_helper\";\n\n// action\nimport {\n getTerritoriesList,\n addDonorInformation,\n addDonorInformationFailed,\n} from \"../../store/auth/donorinformation/actions\";\n\n// Redux\nimport { connect } from \"react-redux\";\n\nclass DonorInformation extends Component {\n constructor(props) {\n super(props);\n this.state = {\n name: \"\",\n phone:\"\",\n email: \"\",\n type:\"\",\n cnic:\"\",\n company_name:\"\",\n is_income_tax_payable:\"\",\n national_taxation_no:\"\",\n is_blocked:\"\",\n city_id: \"\",\n // district: \"\",\n // province: \"Punjab\",\n\n\n };\n }\n\n componentDidMount() {\n this.props.addDonorInformationFailed(\"\");\n this.props.getTerritoriesList();\n }\n\n render() {\n const cityList = [];\n for (let i = 0; i < this.props.territoriesList.length; i++) {\n cityList.push({\n label: this.props.territoriesList[i].city,\n value: this.props.territoriesList[i].id,\n });\n }\n\n // const districtList = [];\n // for (let i = 0; i < this.props.territoriesList.length; i++) {\n // districtList.push({\n // label: this.props.territoriesList[i].district,\n // value: this.props.territoriesList[i].id,\n // });\n // }\n // const provinceList = [];\n // for (let i = 0; i < this.props.territoriesList.length; i++) {\n // provinceList.push({\n // label: this.props.territoriesList[i].province,\n // value: this.props.territoriesList[i].id,\n // });\n // }\n //Redirect to register page if getting access directly from url\n if (typeof this.props.location.state == \"undefined\") {\n return ;\n }\n\n return (\n \n
\n \n Donor Information | Lab Hazir\n \n \n \n \n\n \n
\n
\n
\n
\n
\n
\n Donor account information\n
\n

\n You are one step away from your free Lab Hazir\n account.\n

\n
\n\n
\n {this.props.donor&& this.props.donor? (\n \n The verification link is sent to your email,\n please verify your account first in order to\n login.{\" \"}\n \n ) : null}\n\n {this.props.donor&& this.props.donor? (\n setTimeout(() => {\n if (this.props.donor) {\n this.props.history.push(\"/login\");\n }\n }, 2000)\n ) : null}\n\n \n\n {this.props.addDonorError &&\n this.props.addDonorError ? (\n \n {this.props.addDonorError}\n \n ) : null}\n\n {\n this.props.addDonorInformation(\n values,\n this.props.match.params.id\n );\n window.scrollTo({top: 0, left: 0, behavior: 'smooth'});\n // Redirecting back to the login page\n \n }}\n >\n {({ errors, status, touched }) => (\n
\n
\n \n \n this.setState({ name: e.target.value })\n }\n value={this.state.name}\n className={\n \"form-control\" +\n (errors.name && touched.name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n {/* Landline field */}\n
\n \n \n this.setState({ phone: e.target.value })\n }\n value={this.state.phone}\n className={\n \"form-control\" +\n (errors.phone && touched.phone\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n {/* Email field */}\n
\n \n \n this.setState({\n email: e.target.value,\n })\n }\n type=\"text\"\n value={this.state.email}\n\n className={\n \"form-control\" +\n (errors.email && touched.email\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n\n
\n {/* Type field */}\n
\n \n \n this.setState({\n type: e.target.value,\n })\n }\n value={this.state.type}\n className=\"form-select\"\n >\n \n --- Please select the Type\n ---\n \n \n \n \n
\n {/* Name field */}\n {this.state.type === \"Individual\" && (\n
\n \n \n this.setState({ name: e.target.value })\n }\n value={this.state.name}\n className={\n \"form-control\" +\n (errors.name && touched.name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n )}\n {/* Branch name field */}\n {this.state.type === \"Individual\" && (\n
\n \n CNIC\n \n \n this.setState({\n cnic: e.target.value,\n })\n }\n value={this.state.cnic}\n className={\n \"form-control\" +\n (errors.cnic &&\n touched.cnic\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n )}\n {/* Province field */}\n {/*
\n \n \n this.setState({\n province: e.target.value,\n })\n }\n value={this.state.province}\n className=\"form-select\"\n >\n \n \n \n \n \n \n
*/}\n {/* District field */}\n {/*
\n \n \n this.setState({\n district: selectedGroup.value,\n })\n }\n className=\"defautSelectParent\"\n options={\n districtList\n }\n defaultValue={{\n label:\n this.state.district,\n value:\n this.state.id, \n }}\n />\n \n
*/}\n \n {/* City field */}\n
\n \n \n this.setState({\n city_id: selectedGroup.value,\n })\n }\n placeholder=\"Select City...\"\n className=\"defautSelectParent\"\n options={\n cityList\n }\n defaultValue={{\n label:\n this.state.city_id,\n value:\n this.state.id, \n }}\n \n />\n\n \n
\n {/* Branch name field */}\n {this.state.type === \"Company\" && (\n
\n \n Company name\n \n \n this.setState({\n company_name: e.target.value,\n })\n }\n value={this.state.company_name}\n className={\n \"form-control\" +\n (errors.company_name &&\n touched.company_name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n )}\n {/* Main lab name field */}\n {this.state.type === \"Company\" && (\n
\n \n Is Income Tax Payable?\n \n \n this.setState({\n is_income_tax_payable:\n e.target.value,\n })\n }\n value={\n this.state.is_income_tax_payable\n }\n className=\"form-select\"\n >\n \n \n \n
\n )}\n {this.state.type === \"Company\" && (\n
\n \n \n this.setState({\n national_taxation_no: e.target.value,\n })\n }\n type=\"text\"\n value={this.state.national_taxation_no}\n\n className={\n \"form-control\" +\n (errors.national_taxation_no && touched.national_taxation_no\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n\n
\n )}\n
\n \n {\" \"}\n Complete Registration{\" \"}\n \n
\n
\n )}\n \n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nDonorInformation.propTypes = {\n history: PropTypes.any,\n match: PropTypes.object,\n location: PropTypes.object,\n addDonorInformation: PropTypes.func,\n addDonorInformationFailed: PropTypes.any,\n addDonorError: PropTypes.any,\n donor: PropTypes.any,\n getTerritoriesList:PropTypes.func,\n territoriesList: PropTypes.array,\n};\n\nconst mapStateToProps = state => {\n const { donor, addDonorError, loading , territoriesList} = state.DonorInformation;\n return { donor, addDonorError, loading , territoriesList};\n};\n\nexport default connect(mapStateToProps, {\n getTerritoriesList,\n addDonorInformation,\n addDonorInformationFailed,\n})(DonorInformation);","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport { Alert, Col, Container, Row, Label, Input } from \"reactstrap\";\nimport MetaTags from \"react-meta-tags\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport CarouselPage from \"../AuthenticationInner/CarouselPage\";\nimport { Redirect, Link } from \"react-router-dom\";\nimport { CITIES, DISTRICTS } from \"helpers/global_variables_helper\";\n\n// action\nimport {\n getTerritoriesList,\n getMainLabs,\n getMainLabsSuccess,\n addLabInformation,\n addLabInformationFailed,\n} from \"../../store/actions\";\n\n// Redux\nimport { connect } from \"react-redux\";\n\nlet mainLabOptionGroup = [\n {\n options: [],\n },\n];\nlet territoriesOptionGroup = [\n {\n options: [],\n },\n];\n\n// To give error border effect on single value select\nconst errorStyle = {\n control: base => ({\n ...base,\n borderColor: \"#f46a6a\",\n }),\n};\n\n// To remove thick blue border effect\nconst style = {\n control: (base, state) => ({\n ...base,\n // This line disable the blue border\n boxShadow: state.isFocused ? 0 : 1,\n \"&:hover\": {\n border: state.isFocused ? 0 : 1,\n },\n }),\n};\n\nclass LabInformation extends Component {\n constructor(props) {\n super(props);\n this.state = {\n name: \"\",\n type: \"Main Lab\",\n branch_name: \"\",\n main_lab_account_id: \"\",\n logo: \"\",\n national_taxation_no: \"\",\n lab_experience: \"\",\n is_homesampling_offered: \"No\",\n home_sampling_charges: \"\",\n state_sampling_charges: \"\",\n state_sampling_time: \"\",\n landline: \"\",\n address: \"\",\n city_id: \"\",\n email: \"\",\n // province: \"Punjab\",\n is_digital_payment_accepted: \"Yes\",\n is_Receive_Email_On_Booking: \"Yes\",\n registered_by: \"Lab\",\n is_registering_for_first_time: \"No\",\n marketer_name: \"\",\n marketer_cnic: \"\",\n marketer_email: \"\",\n marketer_phone: \"\",\n marketer_city: \"\",\n // territoriesList: [],\n };\n }\n\n componentDidMount() {\n this.props.getMainLabs(); // Calling to get labs list from database\n this.props.addLabInformationFailed(\"\");\n this.props.getTerritoriesList();\n\n // Wait for sometime so that response is loaded from database\n setTimeout(() => {\n if (this.props.labs.length) {\n const labs = this.props.labs;\n // const mainLabs = this.props.labs.filter(lab => lab.type === \"main lab\");\n\n for (let i = 0; i < labs.length; i++) {\n mainLabOptionGroup[0][\"options\"].push({\n label: labs[i].name,\n value: labs[i].account_id,\n });\n }\n }\n }, 2000);\n // setTimeout(() => {\n // if (this.props.territoriesList.length) {\n // const territoriesList = this.props.territoriesList;\n // for (let i = 0; i < territoriesList.length; i++) {\n // territoriesOptionGroup[0][\"options\"].push({\n // label: territoriesList[i].city,\n // value: territoriesList[i].id,\n // });\n // }\n // }\n // }, 2000);\n }\n\n // Select\n handleSelectGroup = selectedGroup => {\n this.setState({ main_lab_account_id: selectedGroup.value });\n };\n\n handleTypeChange = e => {\n this.setState({ lab_experience: e.target.value });\n\n if (this.state.type === \"Collection Point\") {\n }\n };\n\n handleISOCertificateChange = e => {\n this.setState({ iso_certificate: e.target.files[0] });\n this.setState({ iso_certificate_error: \"\" });\n };\n\n render() {\n // list of city from territories\n const cityList = [];\n for (let i = 0; i < this.props.territoriesList.length; i++) {\n cityList.push({\n label: this.props.territoriesList[i].city,\n value: this.props.territoriesList[i].id,\n });\n }\n\n // list of district from territories\n // const districtList = [];\n // for (let i = 0; i < this.props.territoriesList.length; i++) {\n // districtList.push({\n // label: this.props.territoriesList[i].district,\n // value: this.props.territoriesList[i].office,\n // });\n // }\n\n // Redirect to register page if getting access directly from url\n if (typeof this.props.location.state == \"undefined\") {\n return ;\n }\n return (\n \n
\n \n Lab Information | Lab Hazir\n \n \n \n \n\n \n
\n
\n
\n
\n
\n
\n Lab account information - Step 2 of 2\n
\n

\n You are one step away from your free Lab Hazir\n account.\n

\n
\n\n
\n {this.props.lab && this.props.lab ? (\n \n The verification link is sent to your email,\n please verify your account first in order to\n login.{\" \"}\n \n ) : null}\n {this.props.lab && this.props.lab ? (\n // Redirecting back to the login page\n setTimeout(() => {\n if (this.props.lab) {\n this.props.history.push(\"/login\");\n }\n }, 2000)\n ) : null}\n\n\n {this.props.addLabError && this.props.addLabError ? (\n \n {this.props.addLabError}\n \n ) : null}\n\n val === \"Collection Point\",\n then: Yup.string().required(\n \"Please enter your main lab\"\n ),\n }),\n branch_name: Yup.string().when(\"type\", {\n is: val => val === \"Collection Point\",\n then: Yup.string()\n .trim()\n .required(\"Please enter your branch name\")\n .min(3, \"Please enter at least 3 characters\")\n .max(\n 255,\n \"Please enter maximum 255 characters\"\n ),\n }),\n // Validation for logo based on type value\n type: Yup.string(),\n logo: Yup.mixed().test(\n \"required\",\n \"Please upload logo\",\n function (val) {\n const { type, logo } = this.parent;\n if (type === \"Main Lab\") {\n return logo ? true : false;\n } else {\n return true;\n }\n }\n ),\n national_taxation_no: Yup.string().when(\"type\", {\n is: val => val === \"Main Lab\",\n then: Yup.string()\n .trim()\n .required(\"Please enter NTN # of your lab\")\n .max(\n 255,\n \"Please enter maximum 255 characters\"\n ),\n }),\n // Validation for logo based on type value\n type: Yup.string(),\n lab_experience: Yup.number(\n \"Please enter number only\"\n )\n .positive()\n .integer()\n .min(\n 0,\n \"Please enter a number greater than or equal to 0\"\n )\n .max(\n 150,\n \"Please enter a number less than or equal to 150\"\n )\n .test(\n \"required\",\n \"Please enter your lab experience\",\n function (val) {\n const { type, lab_experience } =\n this.parent;\n if (type === \"Main Lab\") {\n return lab_experience ? true : false;\n } else {\n return true;\n }\n }\n ),\n landline: Yup.string()\n .required(\"Please enter your landline no.\")\n .max(\n 255,\n \"Please enter maximum 255 characters\"\n ),\n address: Yup.string()\n .trim()\n .required(\"Please enter your full address\")\n .max(\n 255,\n \"Please enter maximum 255 characters\"\n ),\n // city: Yup.string()\n // .trim()\n // .required(\"Please select your city\")\n // .max(255, \"Please enter maximum 255 characters\")\n // .matches(\n // /^[a-zA-Z][a-zA-Z ]+$/,\n // \"Please enter only alphabets and spaces\"\n // ),\n\n lab_staff_name: Yup.string().when(\n \"registered_by\",\n {\n is: val => val == \"Lab\",\n then: Yup.string()\n .trim()\n .required(\"Please enter your name\")\n .min(\n 3,\n \"Please enter at least 3 characters\"\n )\n .max(\n 255,\n \"Please enter maximum 255 characters\"\n ),\n\n }\n ),\n\n lab_staff_designation: Yup.string().when(\n \"registered_by\",\n {\n is: val => val == \"Lab\",\n then: Yup.string()\n .trim()\n .required(\"Please enter your designation\")\n .min(\n 3,\n \"Please enter at least 3 characters\"\n )\n .max(\n 255,\n \"Please enter maximum 255 characters\"\n )\n .matches(\n /^[a-zA-Z][a-zA-Z ]+$/,\n \"Please enter only alphabets spaces\"\n ),\n }\n ),\n marketer_name: Yup.string().when(\n \"is_registering_for_first_time\",\n {\n is: val => val == \"Yes\",\n then: Yup.string()\n .trim()\n .required(\"Please enter marketer name\")\n .min(\n 3,\n \"Please enter at least 3 characters\"\n )\n .max(\n 255,\n \"Please enter maximum 255 characters\"\n ),\n\n }\n ),\n marketer_cnic: Yup.string().when(\n \"is_registering_for_first_time\",\n {\n is: val => val == \"Yes\",\n then: Yup.string()\n .required(\"Please enter marketer CNIC\")\n .matches(\n /^[0-9]{5}-[0-9]{7}-[0-9]$/,\n \"Please enter a valid CNIC e.g. 37106-8234782-3\"\n )\n .max(\n 255,\n \"Please enter maximum 255 characters\"\n ),\n }\n ),\n\n marketer_email: Yup.string().when(\n \"registered_by\",\n {\n is: val => val == \"Marketer\",\n then: Yup.string()\n .required(\"Please enter marketer email\")\n .email(\"Please enter valid email\")\n .max(\n 255,\n \"Please enter maximum 255 characters\"\n ),\n }\n ),\n email: Yup.string()\n .required(\"Please enter your email\")\n .email(\"Please enter valid email\"),\n marketer_phone: Yup.string().when(\n\n \"is_registering_for_first_time\",\n {\n is: val => val == \"Yes\",\n then: Yup.string()\n .required(\n \"Please enter marketer mobile no.\"\n )\n .max(\n 255,\n \"Please enter maximum 255 characters\"\n )\n .matches(\n /^((\\+92)|(0092))-{0,1}\\d{3}-{0,1}\\d{7}$|^\\d{11}$|^\\d{4}-\\d{7}$/,\n \"Please enter a valid Pakistani phone number e.g. 03123456789\"\n ),\n }\n ),\n marketer_city: Yup.string().when(\n \"is_registering_for_first_time\",\n {\n is: val => val == \"Yes\",\n then: Yup.string()\n .trim()\n .required(\"Please select marketer city\")\n .max(\n 255,\n \"Please enter maximum 255 characters\"\n )\n .matches(\n /^[a-zA-Z][a-zA-Z ]+$/,\n \"Please enter only alphabets and spaces\"\n ),\n }\n ),\n })}\n onSubmit={values => {\n this.props.addLabInformation(\n values,\n this.props.match.params.id\n );\n window.scrollTo({ top: 0, left: 0, behavior: 'smooth' });\n }}\n >\n {({ errors, status, touched }) => (\n
\n {/*
{JSON.stringify(errors, null, 2)}
*/}\n {/* Name field */}\n
\n \n \n this.setState({ name: e.target.value })\n }\n value={this.state.name}\n className={\n \"form-control\" +\n (errors.name && touched.name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n {/* Type field */}\n
\n \n \n this.setState({\n type: e.target.value,\n })\n }\n value={this.state.type}\n className=\"form-select\"\n >\n \n \n \n

Note: once the lab type is selected such as Main Lab or Collection Point, it cannot be changed at any later stage.

\n
\n\n {/* Branch name field */}\n {this.state.type === \"Collection Point\" && (\n
\n \n Branch name\n \n \n this.setState({\n branch_name: e.target.value,\n })\n }\n value={this.state.branch_name}\n className={\n \"form-control\" +\n (errors.branch_name &&\n touched.branch_name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n )}\n\n {/* Main lab name field */}\n {this.state.type === \"Collection Point\" && (\n
\n \n What is your main lab name?\n \n \n\n {touched.main_lab_account_id &&\n errors.main_lab_account_id && (\n \n Please select your main lab\n
\n )}\n
\n )}\n\n {this.state.type !== \"Collection Point\" && (\n
\n {/* Logo field */}\n
\n \n \n this.setState({\n logo: e.target.files[0],\n })\n }\n className={\n \"form-control\" +\n (errors.logo && touched.logo\n ? \" is-invalid\"\n : \"\")\n }\n />\n\n \n
\n\n {/* National Taxation No field */}\n
\n \n Lab NTN # (National Taxation Number)\n \n \n this.setState({\n national_taxation_no:\n e.target.value,\n })\n }\n value={this.state.national_taxation_no}\n className={\n \"form-control\" +\n (errors.national_taxation_no &&\n touched.national_taxation_no\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n {/* Lab experience field */}\n
\n \n Lab Experience (Years)\n \n \n this.setState({\n lab_experience: e.target.value,\n })\n }\n value={this.state.lab_experience}\n className={\n \"form-control\" +\n (errors.lab_experience &&\n touched.lab_experience\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n
\n )}\n\n {/* Email field */}\n
\n \n \n this.setState({\n email: e.target.value,\n })\n }\n type=\"text\"\n value={this.state.email}\n\n className={\n \"form-control\" +\n (errors.email && touched.email\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n\n
\n\n {/* Landline field */}\n
\n \n {\n let value = e.target.value.replace(/\\s+/g, \"\"); // Remove spaces\n this.setState({ landline: value });\n }}\n value={this.state.landline}\n className={\n \"form-control\" + (errors.landline && touched.landline ? \" is-invalid\" : \"\")\n }\n />\n \n
\n\n\n {/* Address field */}\n
\n \n \n this.setState({ address: e.target.value })\n }\n value={this.state.address}\n className={\n \"form-control\" +\n (errors.address && touched.address\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n \n \n Note: Please add the complete valid\n address searchable on google maps.\n \n \n
\n\n {/* Province field */}\n {/*
\n \n \n this.setState({\n province: e.target.value,\n })\n }\n value={this.state.province}\n className=\"form-select\"\n >\n \n \n \n \n \n \n
*/}\n\n\n {/* District field */}\n {/*
\n \n \n this.setState({\n office: selectedGroup.value,\n })\n }\n styles={{\n control: (base, state) => ({\n ...base,\n borderColor:\n errors.office && touched.office\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n className={\n \"defautSelectParent\" +\n (errors.office && touched.office\n ? \" is-invalid\"\n : \"\")\n }\n options={DISTRICTS}\n placeholder=\"Select District...\"\n />\n \n
*/}\n\n\n {/* city field */}\n
\n\n\n \n \n this.setState({\n city_id: selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (errors.city_id && touched.city_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (base, state) => ({\n ...base,\n borderColor:\n errors.city_id && touched.city_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={\n cityList\n }\n defaultValue={{\n label:\n this.state.city,\n value:\n this.state.id,\n }}\n\n />\n\n \n
\n\n\n {/* District field */}\n {/*
\n \n \n this.setState({\n office: selectedGroup.value,\n })\n }\n className=\"defautSelectParent\"\n options={\n districtList\n }\n defaultValue={{\n label:\n this.state.district,\n value:\n this.state.office, \n \n }}\n />\n \n
*/}\n\n {/* City field */}\n {/*
\n \n \n this.setState({\n city: selectedGroup.value,\n })\n }\n placeholder=\"Select City...\"\n className=\"defautSelectParent\"\n options={\n cityList\n }\n defaultValue={{\n label:\n this.state.city,\n value:\n this.state.id, \n }}\n \n />\n \n
*/}\n {/* Accept Digital Payments field */}\n
\n \n Do you accept digital payments?\n \n \n this.setState({\n is_digital_payment_accepted:\n e.target.value,\n })\n }\n value={\n this.state.is_digital_payment_accepted\n }\n className=\"form-select\"\n >\n \n \n \n
\n\n
\n \n Are you Offering Home Sampling?\n \n \n this.setState({\n is_homesampling_offered:\n e.target.value,\n })\n }\n value={\n this.state.is_homesampling_offered\n }\n\n className=\"form-select\"\n >\n \n \n \n
\n {this.state.is_homesampling_offered == \"Yes\" ? (\n
\n
\n \n Charges for Offering Routine Home Sampling\n \n \n this.setState({\n home_sampling_charges: e.target.value,\n })\n }\n placeholder=\"Please enter the Normal Home Sampling Charges\"\n value={this.state.home_sampling_charges}\n className={\n \"form-control\" +\n (errors.home_sampling_charges &&\n touched.home_sampling_charges\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n
\n \n Charges for Offering Urgent Home Sampling\n \n \n this.setState({\n state_sampling_charges: e.target.value,\n })\n }\n value={this.state.state_sampling_charges}\n placeholder=\"Please enter the Urgent Home Sampling Charges\"\n className={\n \"form-control\" +\n (errors.state_sampling_charges &&\n touched.state_sampling_charges\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n
\n \n \n this.setState({\n state_sampling_time: Math.max(0, Math.min(3, e.target.value)),\n })\n }\n value={this.state.state_sampling_time}\n placeholder=\"Please enter Urgent Home Sampling Time (In Hours)\"\n min={0}\n max={3}\n // step={1}\n className={\n \"form-control\" +\n (errors.state_sampling_time && touched.state_sampling_time\n ? \" is-invalid\"\n : \"\")\n }\n />\n

Note: Urgent Home Sampling can be more than 3 hours.

\n \n
\n\n
\n ) : null}\n\n\n {/* Registered by field */}\n
\n \n Who is registering lab?\n \n \n this.setState({\n registered_by: e.target.value,\n })\n }\n defaultValue={this.state.registered_by}\n className=\"form-select\"\n >\n \n \n \n
\n\n {this.state.registered_by === \"Lab\" && (\n
\n {/* Lab Staff Name field */}\n
\n \n Registered by (Name)\n \n \n this.setState({\n lab_staff_name: e.target.value,\n })\n }\n value={this.state.lab_staff_name}\n className={\n \"form-control\" +\n (errors.lab_staff_name &&\n touched.lab_staff_name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n {/* Lab Staff Designation field */}\n
\n \n Lab Staff Designation\n \n \n this.setState({\n lab_staff_designation:\n e.target.value,\n })\n }\n value={this.state.lab_staff_designation}\n className={\n \"form-control\" +\n (errors.lab_staff_designation &&\n touched.lab_staff_designation\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n
\n )}\n\n {/* Marketer's fields */}\n {this.state.registered_by === \"Marketer\" && (\n
\n {/* Is Registering First Time field */}\n
\n \n Are you registering lab for the first\n time?\n \n \n this.setState({\n is_registering_for_first_time:\n e.target.value,\n })\n }\n value={\n this.state\n .is_registering_for_first_time\n }\n className=\"form-select\"\n >\n \n \n \n
\n\n {/* Marketer Email field */}\n
\n \n Marketer Email\n \n \n this.setState({\n marketer_email: e.target.value,\n })\n }\n value={this.state.marketer_email}\n className={\n \"form-control\" +\n (errors.marketer_email &&\n touched.marketer_email\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n {this.state\n .is_registering_for_first_time ===\n \"Yes\" && (\n
\n {/* Marketer Name field */}\n
\n \n Marketer Name\n \n \n this.setState({\n marketer_name: e.target.value,\n })\n }\n value={this.state.marketer_name}\n className={\n \"form-control\" +\n (errors.marketer_name &&\n touched.marketer_name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n {/* Marketer CNIC field */}\n
\n \n Marketer CNIC\n \n \n this.setState({\n marketer_cnic: e.target.value,\n })\n }\n value={this.state.marketer_cnic}\n className={\n \"form-control\" +\n (errors.marketer_cnic &&\n touched.marketer_cnic\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n {/* Marketer Phone field */}\n
\n \n Marketer Mobile No.\n \n \n this.setState({\n marketer_phone: e.target.value,\n })\n }\n value={this.state.marketer_phone}\n className={\n \"form-control\" +\n (errors.marketer_phone &&\n touched.marketer_phone\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n {/* Marketer City field */}\n
\n \n Marketer City\n \n \n this.setState({\n marketer_city:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (errors.marketer_city &&\n touched.marketer_city\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (base, state) => ({\n ...base,\n borderColor:\n errors.marketer_city &&\n touched.marketer_city\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={CITIES}\n placeholder=\"Select City...\"\n />\n\n \n
\n
\n )}\n
\n )}\n
\n \n {\" \"}\n Complete Registration{\" \"}\n \n
\n \n )}\n \n
\n
\n
\n
\n
\n \n \n \n \n
\n );\n }\n}\n\nLabInformation.propTypes = {\n history: PropTypes.any,\n match: PropTypes.object,\n location: PropTypes.object,\n onGetMainLabs: PropTypes.func,\n labs: PropTypes.array,\n getTerritoriesList: PropTypes.func,\n getMainLabs: PropTypes.func,\n getMainLabsSuccess: PropTypes.func,\n addLabInformation: PropTypes.func,\n addLabInformationFailed: PropTypes.any,\n addLabError: PropTypes.any,\n lab: PropTypes.any,\n territoriesList: PropTypes.array,\n};\n\nconst mapStateToProps = state => ({\n addLabError: state.LabInformation.addLabError,\n lab: state.LabInformation.lab,\n labs: state.LabInformation.labs,\n territoriesList: state.LabInformation.territoriesList,\n});\n\nexport default connect(mapStateToProps, {\n getTerritoriesList,\n getMainLabs,\n getMainLabsSuccess,\n addLabInformation,\n addLabInformationFailed,\n})(LabInformation);","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Alert, Col, Container, Row, Label, Input } from \"reactstrap\";\nimport MetaTags from \"react-meta-tags\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\nimport Select from \"react-select\";\n\nimport CarouselPage from \"../AuthenticationInner/CarouselPage\";\nimport { Redirect, Link } from \"react-router-dom\";\n\n// action\nimport {\n getTerritoriesList,\n addCorporateInformation,\n addCorporateInformationFailed,\n} from \"../../store/actions\";\n\n// Redux\nimport { connect } from \"react-redux\";\n\nclass CorporateInformation extends Component {\n constructor(props) {\n super(props);\n this.state = {\n name: \"\",\n logo: \"\",\n national_taxation_no: \"\",\n email: \"\",\n phone: \"\",\n landline: \"\",\n address: \"\",\n city_id: \"\",\n website_url: \"\",\n payment_terms: \"\",\n };\n }\n\n componentDidMount() {\n this.props.addCorporateInformationFailed(\"\");\n this.props.getTerritoriesList();\n }\n\n render() {\n // Redirect to register page if getting access directly from url\n if (typeof this.props.location.state == \"undefined\") {\n return ;\n }\n\n // list of city from territories\n const cityList = [];\n for (let i = 0; i < this.props.territoriesList.length; i++) {\n cityList.push({\n label: this.props.territoriesList[i].city,\n value: this.props.territoriesList[i].id,\n });\n }\n\n return (\n \n
\n \n Corporate Information | Lab Hazir\n \n \n \n \n\n \n
\n
\n
\n
\n
\n
\n Corporate information account\n
\n

\n You are one step away from your free Lab Hazir\n account.\n

\n
\n\n
\n {/* {this.props.corporate && this.props.corporate ? (\n \n You have registered successfully and you can now{\" \"}\n \n {\" \"}\n \n {\" \"}\n login\n {\" \"}\n {\" \"}\n to your account.\n \n ) : null} */}\n\n {this.props.corporate && this.props.corporate ? (\n \n The verification link is sent to your email,\n please verify your account first in order to\n login.{\" \"}\n \n ) : null}\n {this.props.corporate && this.props.corporate ? (\n // Redirecting back to the login page\n setTimeout(() => {\n if (this.props.corporate) {\n this.props.history.push(\"/login\");\n }\n }, 2000)\n ) : null}\n\n {this.props.addCorporateError &&\n this.props.addCorporateError ? (\n \n {this.props.addCorporateError}\n \n ) : null}\n\n {\n const cityIdArray = Array.isArray(values.city_id) ? values.city_id : [values.city_id];\n this.props.addCorporateInformation(\n values,\n this.props.match.params.id,\n cityIdArray\n );\n window.scrollTo({ top: 0, left: 0, behavior: 'smooth' });\n setSubmitting(false); // This line is important to manually set submitting to false after form submission\n }}\n >\n {({ errors, status, touched }) => (\n
\n {/* Name field */}\n
\n \n \n this.setState({ name: e.target.value })\n }\n value={this.state.name}\n className={\n \"form-control\" +\n (errors.name && touched.name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n {/* Logo field */}\n
\n \n \n this.setState({ logo: e.target.files[0] })\n }\n className={\n \"form-control\" +\n (errors.logo && touched.logo\n ? \" is-invalid\"\n : \"\")\n }\n />\n\n \n
\n\n {/* Owner name field */}\n {/*
\n \n Owner name\n \n \n this.setState({\n owner_name: e.target.value,\n })\n }\n value={this.state.owner_name}\n className={\n \"form-control\" +\n (errors.owner_name && touched.owner_name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
*/}\n
\n \n Corporate NTN # (National Taxation Number)\n \n \n this.setState({\n national_taxation_no:\n e.target.value,\n })\n }\n value={this.state.national_taxation_no}\n className={\n \"form-control\" +\n (errors.national_taxation_no &&\n touched.national_taxation_no\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n {/* Email field */}\n
\n \n \n this.setState({ email: e.target.value })\n }\n value={this.state.email}\n className={\n \"form-control\" +\n (errors.email && touched.email\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n {/* Phone field */}\n
\n \n \n this.setState({ phone: e.target.value })\n }\n value={this.state.phone}\n className={\n \"form-control\" +\n (errors.phone && touched.phone\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n {/* Landline field */}\n
\n \n \n this.setState({\n landline: e.target.value,\n })\n }\n value={this.state.landline}\n className={\n \"form-control\" +\n (errors.landline && touched.landline\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n {/* Address field */}\n
\n \n \n this.setState({ address: e.target.value })\n }\n value={this.state.address}\n className={\n \"form-control\" +\n (errors.address && touched.address\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n {/* City field */}\n {/*
\n\n\n \n \n this.setState({\n city_id: selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (errors.city_id && touched.city_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (base, state) => ({\n ...base,\n borderColor:\n errors.city_id && touched.city_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={\n cityList\n }\n defaultValue={{\n label:\n this.state.city,\n value:\n this.state.id,\n }}\n\n />\n\n \n
*/}\n
\n\n \n \n this.setState({\n city_id: selectedGroups.map(group => group.value),\n })\n }\n className={\n \"defautSelectParent\" +\n (errors.city_id && touched.city_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (base, state) => ({\n ...base,\n borderColor:\n errors.city_id && touched.city_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={\n cityList\n }\n // defaultValue={{\n // label:\n // this.state.city,\n // value:\n // this.state.id, \n // }}\n placeholder=\"Select City...\"\n />\n\n \n
\n
\n \n Payment Terms\n \n \n this.setState({\n payment_terms:\n e.target.value,\n })\n }\n value={\n this.state.payment_terms\n }\n className=\"form-select\"\n >\n \n \n \n
\n\n {/* {URL Field} */}\n
\n \n Website URL\n \n \n this.setState({\n website_url: e.target.value,\n })\n }\n value={this.state.website_url}\n className={\n \"form-control\" +\n (errors.website_url && touched.website_url\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n\n
\n \n {\" \"}\n Complete Registration{\" \"}\n \n
\n
\n )}\n \n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nCorporateInformation.propTypes = {\n history: PropTypes.any,\n match: PropTypes.object,\n location: PropTypes.object,\n addCorporateInformation: PropTypes.func,\n addCorporateInformationFailed: PropTypes.any,\n addCorporateError: PropTypes.any,\n corporate: PropTypes.any,\n getTerritoriesList: PropTypes.func,\n territoriesList: PropTypes.array,\n\n};\n\nconst mapStateToProps = state => {\n return {\n territoriesList: state.CorporateInformation.territoriesList,\n corporate: state.CorporateInformation.corporate,\n addCorporateError: state.CorporateInformation.addCorporateError,\n loading: state.CorporateInformation.loading\n };\n};\n\n\nexport default connect(mapStateToProps, {\n getTerritoriesList,\n addCorporateInformation,\n addCorporateInformationFailed,\n})(CorporateInformation);\n","import PropTypes from \"prop-types\";\nimport React, { Component } from \"react\";\nimport MetaTags from \"react-meta-tags\";\nimport { Alert, Card, CardBody, Col, Container, Label, Row } from \"reactstrap\";\n\n// Redux\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n// action\nimport { userForgetPassword } from \"../../store/actions\";\n\nimport CarouselPage from \"../AuthenticationInner/CarouselPage\";\n\nclass ForgetPasswordPage extends Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n handleLoginClick = () => {\n window.location.href = \"/login\";\n };\n\n render() {\n return (\n \n
\n \n Forget Password | Lab Hazir\n \n \n \n \n\n \n
\n
\n
\n
\n
\n
Forget password
\n

\n Do not worry, we will get back you to your account.\n

\n
\n\n
\n {this.props.forgetError && (\n \n {this.props.forgetError}\n \n )}\n\n {this.props.forgetSuccessMsg && (\n \n {this.props.forgetSuccessMsg}\n \n )}\n
\n {\n this.props.userForgetPassword(\n values,\n this.props.history\n );\n window.scrollTo({top: 0, left: 0, behavior: 'smooth'});\n }}\n >\n {({ errors, status, touched }) => (\n
\n
\n \n \n \n
\n
\n \n Reset\n \n
\n
\n )}\n \n
\n
\n

\n Go back to{\" \"}\n \n Login\n {\" \"}\n

\n

© {new Date().getFullYear()} Lab Hazir

\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nForgetPasswordPage.propTypes = {\n forgetError: PropTypes.func,\n forgetSuccessMsg: PropTypes.string,\n history: PropTypes.object,\n userForgetPassword: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const { forgetError, forgetSuccessMsg } = state.ForgetPassword;\n return { forgetError, forgetSuccessMsg };\n};\n\nexport default withRouter(\n connect(mapStateToProps, { userForgetPassword })(ForgetPasswordPage)\n);\n","import PropTypes from \"prop-types\";\nimport React, { Component } from \"react\";\nimport MetaTags from \"react-meta-tags\";\nimport { Alert, Col, Container, Label, Row } from \"reactstrap\";\n\n// Redux\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n// action\nimport { userConfirmPassword } from \"../../store/actions\";\n\nimport CarouselPage from \"../AuthenticationInner/CarouselPage\";\n\nclass ConfirmPasswordPage extends Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n render() {\n return (\n \n
\n \n Confirm Password | Lab Hazir\n \n \n \n \n\n \n
\n
\n
\n
\n
\n
Confirm password
\n

\n You are just one step away from your account.\n

\n
\n\n
\n
\n {this.props.confirmError &&\n this.props.confirmError ? (\n \n {this.props.confirmError}\n \n ) : null}\n {this.props.confirmSuccessMsg ? (\n \n {this.props.confirmSuccessMsg}\n \n ) : null}\n\n \n val && val.length > 0 ? true : false,\n then: Yup.string().oneOf(\n [Yup.ref(\"password\")],\n \"Both password need to be the same\"\n ),\n }),\n })}\n onSubmit={values => {\n this.props.userConfirmPassword(\n values,\n this.props.match.params.token\n );\n window.scrollTo({top: 0, left: 0, behavior: 'smooth'});\n\n }\n }\n >\n {({ errors, status, touched }) => (\n
\n
\n \n
\n {\n this.setState({\n passwordFieldError: null,\n });\n }}\n className={\n \"form-control\" +\n ((errors.password &&\n touched.password) ||\n this.state.passwordFieldError\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n\n
\n {this.state.passwordFieldError}\n
\n
\n
\n \n \n
\n
\n
\n \n Done\n \n
\n
\n )}\n \n
\n
\n

\n Go back to{\" \"}\n \n Login\n {\" \"}\n

\n

© {new Date().getFullYear()} Lab Hazir

\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nConfirmPasswordPage.propTypes = {\n match: PropTypes.object,\n confirmError: PropTypes.any,\n confirmSuccessMsg: PropTypes.string,\n history: PropTypes.object,\n userConfirmPassword: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const { confirmError, confirmSuccessMsg } = state.ConfirmPassword;\n return { confirmError, confirmSuccessMsg };\n};\n\nexport default withRouter(\n connect(mapStateToProps, { userConfirmPassword })(ConfirmPasswordPage)\n);\n","import React, { Component } from \"react\"\nimport PropTypes from 'prop-types';\nimport ReactApexChart from \"react-apexcharts\"\n\nclass StackedColumnChart extends Component {\n constructor(props) {\n super(props)\n\n this.state = {\n options: {\n chart: {\n stacked: true,\n toolbar: {\n show: false,\n },\n zoom: {\n enabled: true,\n },\n\n },\n\n plotOptions: {\n bar: {\n horizontal: false,\n columnWidth: \"15%\",\n endingShape: \"rounded\",\n },\n },\n\n dataLabels: {\n enabled: false,\n },\n xaxis: {\n categories: [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\",\n ],\n },\n colors: [\"#556ee6\", \"#f1b44c\", \"#34c38f\"],\n legend: {\n position: \"bottom\",\n },\n fill: {\n opacity: 1,\n },\n },\n }\n }\n\n render() {\n return (\n \n \n \n )\n }\n}\n\nStackedColumnChart.propTypes = {\n chartSeries: PropTypes.any,\n periodData: PropTypes.any\n}\nexport default StackedColumnChart\n","export default __webpack_public_path__ + \"static/media/profile-img.43b59e59.png\";","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport { Row, Col, Card, CardBody } from \"reactstrap\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { withTranslation } from \"react-i18next\";\n\nimport profileImg from \"../../assets/images/profile-img.png\";\n\n// actions\nimport { getPatientProfile } from \"store/auth/patientprofile/actions\";\n\nclass PatientProfileSummary extends Component {\n constructor(props) {\n super(props);\n this.state = {\n name: \"\",\n address: \"\",\n completedAppointments: \"\",\n inProcessAppointments: \"\",\n monthlyCost: \"\",\n annualCost: \"\",\n };\n }\n\n componentDidMount() {\n this.props.getPatientProfile(this.props.match.params.id);\n\n setTimeout(() => {\n this.setState({\n name: this.props.success.name,\n email: this.props.success.email,\n address: this.props.success.address,\n completedAppointments: this.props.success.completed_appointments,\n inProcessAppointments: this.props.success.inprocess_appointments,\n monthlyCost: this.props.success.monthly_cost,\n annualCost: this.props.success.annual_cost,\n });\n }, 1500);\n }\n\n render() {\n return (\n \n {/* Welcome profile */}\n \n \n
\n \n \n
\n
Welcome Back !
\n

Lab Hazir Dashboard

\n
\n \n \n \"\"\n \n
\n
\n \n \n \n
\n \n \n
\n {this.state.name}\n
\n

\n {this.state.email}\n

\n

\n {this.state.address}\n

\n \n \n
\n \n View Profile{\" \"}\n \n \n
\n \n
\n
\n \n
\n
\n
\n \n\n {/* Revenue and Appointment Details */}\n \n \n \n \n \n
\n
\n

\n Appointments Completed\n

\n

\n {this.state.completedAppointments}\n

\n
\n
\n \n \n \n
\n
\n
\n
\n \n\n \n \n \n
\n
\n

\n Appointments Inprocess\n

\n

\n {this.state.inProcessAppointments}\n

\n
\n
\n \n \n \n
\n
\n
\n
\n \n\n \n \n \n
\n
\n

Monthly Cost

\n

\n {/* Converting number to thousands separator string for readability */}\n $\n {this.state.monthlyCost\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n
\n \n \n \n
\n
\n
\n
\n \n\n \n \n \n
\n
\n

Annual Cost

\n {/* Converting number to thousands separator string for readability */}\n

\n $\n {this.state.annualCost\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n
\n \n \n \n
\n
\n
\n
\n \n
\n \n
\n );\n }\n}\n\nPatientProfileSummary.propTypes = {\n t: PropTypes.any,\n match: PropTypes.object,\n location: PropTypes.object,\n error: PropTypes.any,\n success: PropTypes.any,\n getPatientProfile: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const { error, success } = state.PatientProfile;\n return { error, success };\n};\n\nexport default withRouter(\n connect(mapStateToProps, { getPatientProfile })(\n withTranslation()(PatientProfileSummary)\n )\n);\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\nimport {\n Container,\n Row,\n Col,\n Button,\n Card,\n CardBody,\n CardTitle,\n Modal,\n ModalHeader,\n ModalBody,\n ModalFooter,\n Table,\n Input,\n} from \"reactstrap\";\nimport { Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\n\n//import Charts\nimport StackedColumnChart from \"./StackedColumnChart\";\n\n//import action\nimport { getChartsData } from \"../../store/actions\";\n\n// Pages Components\nimport PatientProfileSummary from \"./PatientProfileSummary\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"../../components/Common/Breadcrumb\";\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport classNames from \"classnames\";\n\nclass Dashboard extends Component {\n constructor(props) {\n super(props);\n this.state = {\n email: [\n { title: \"Week\", linkto: \"#\", isActive: false },\n { title: \"Month\", linkto: \"#\", isActive: false },\n { title: \"Year\", linkto: \"#\", isActive: true },\n ],\n modal: false,\n subscribemodal: false,\n chartSeries: [],\n periodType: \"yearly\",\n };\n\n this.togglemodal.bind(this);\n }\n\n componentDidMount() {\n const { onGetChartsData } = this.props;\n setTimeout(() => this.setState({ subscribemodal: true }), 2000);\n onGetChartsData(\"yearly\");\n }\n\n togglemodal = () => {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n };\n\n togglesubscribemodal = () => {\n this.setState(prevState => ({\n subscribemodal: !prevState.subscribemodal,\n }));\n };\n\n componentDidUpdate(prevProps) {\n if (prevProps !== this.props) {\n this.setState({ ...this.state, chartSeries: this.props.chartsData });\n }\n }\n\n render() {\n return (\n \n
\n \n Dashboard | Patient\n \n \n {/* Render Breadcrumb */}\n \n \n \n\n \n \n \n
\n \n Email Sent\n \n
\n
    \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"weekly\",\n });\n this.props.onGetChartsData(\"weekly\");\n }}\n id=\"one_month\"\n >\n Week\n {\" \"}\n
  • \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"monthly\",\n });\n this.props.onGetChartsData(\"monthly\");\n }}\n id=\"one_month\"\n >\n Month\n \n
  • \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"yearly\",\n });\n this.props.onGetChartsData(\"yearly\");\n }}\n id=\"one_month\"\n >\n Year\n \n
  • \n
\n
\n
\n
\n \n \n \n \n \n \n
\n \n );\n }\n}\n\nDashboard.propTypes = {\n t: PropTypes.any,\n chartsData: PropTypes.any,\n onGetChartsData: PropTypes.func,\n};\n\nconst mapStateToProps = ({ Dashboard }) => ({\n chartsData: Dashboard.chartsData,\n});\n\nconst mapDispatchToProps = dispatch => ({\n onGetChartsData: periodType => dispatch(getChartsData(periodType)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withTranslation()(Dashboard));\n","import React, { Component } from \"react\";\nimport PropTypes from 'prop-types';\nimport ReactApexChart from \"react-apexcharts\";\nimport { Link } from \"react-router-dom\"; // Import Link for navigation\nimport classNames from \"classnames\"; // Import classNames for conditional classNames\n\nclass StackedColumnChart extends Component {\n constructor(props) {\n super(props);\n\n this.state = {\n options: {\n chart: {\n stacked: true,\n toolbar: {\n show: false,\n },\n zoom: {\n enabled: true,\n },\n },\n plotOptions: {\n bar: {\n horizontal: false,\n columnWidth: \"15%\",\n endingShape: \"rounded\",\n },\n },\n dataLabels: {\n enabled: false,\n },\n xaxis: {\n categories: [],\n },\n yaxis: {\n title: {\n text: 'Number of Appointments',\n }\n },\n colors: [\"#556ee6\", \"#f1b44c\", \"#34c38f\", \"#ff0000\", \"#00ff00\"],\n legend: {\n position: \"bottom\",\n },\n fill: {\n opacity: 1,\n },\n },\n series: [{\n name: 'Appointments',\n data: []\n }],\n selectedPeriod: 'monthly', // default period\n };\n }\n\n componentDidMount() {\n // Pass the user_id to fetchData if needed\n this.fetchData(this.state.selectedPeriod, this.props.user_id);\n }\n\n fetchData = (period, labId) => {\n fetch('https://labhazirapi.com/api/patient/ForChartCalculation', {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({ user_id: labId }), // Use the provided lab ID\n })\n .then(response => response.json())\n .then(data => {\n console.log('Fetched data:', data);\n\n // Check if the period exists in the response\n const categories = data[period]?.categories || [];\n const seriesData = data[period]?.data || [];\n\n // Update state\n this.setState({\n options: {\n ...this.state.options,\n xaxis: {\n ...this.state.options.xaxis,\n categories: categories,\n },\n },\n series: [{\n name: 'Appointments',\n data: seriesData,\n }],\n }, () => {\n console.log('Updated state:', this.state);\n });\n })\n .catch(error => {\n console.error('Error fetching data:', error);\n });\n };\n\n handlePeriodChange = (newPeriod) => {\n this.setState({ selectedPeriod: newPeriod }, () => {\n this.fetchData(newPeriod, this.props.user_id); // Fetch data for the newly selected period\n });\n };\n\n render() {\n console.log('Rendering data:', this.state.series);\n\n return (\n \n
\n
    \n
  • \n this.handlePeriodChange('weekly')}\n id=\"one_month\"\n >\n Week\n \n
  • \n
  • \n this.handlePeriodChange('monthly')}\n id=\"one_month\"\n >\n Month\n \n
  • \n
  • \n this.handlePeriodChange('yearly')}\n id=\"one_month\"\n >\n Year\n \n
  • \n
\n
\n\n \n
\n );\n }\n}\n\nStackedColumnChart.propTypes = {\n user_id: PropTypes.string.isRequired, // Add this line to validate user_id prop\n chartSeries: PropTypes.any,\n periodData: PropTypes.any\n};\n\nexport default StackedColumnChart;\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport { Row, Col, Card, CardBody } from \"reactstrap\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { withTranslation } from \"react-i18next\";\n\nimport profileImg from \"../../assets/images/profile-img.png\";\n\n// actions\nimport { getLabProfile } from \"store/auth/labprofile/actions\";\n\nclass LabSummary extends Component {\n constructor(props) {\n super(props);\n this.state = {\n name: \"\",\n address: \"\",\n logo: \"\",\n completedAppointments: \"\",\n inProcessAppointments: \"\",\n monthlyRevenue: \"\",\n annualRevenue: \"\",\n inProcessAppointments: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n componentDidMount() {\n this.props.getLabProfile(this.state.user_id);\n\n setTimeout(() => {\n this.setState({\n name: this.props.success.name,\n address: this.props.success.address,\n logo: process.env.REACT_APP_BACKENDURL + this.props.success.logo,\n completedAppointments: this.props.success.completed_appointments,\n inProcessAppointments: this.props.success.inprocess_appointments,\n monthlyRevenue: this.props.success.monthly_revenue,\n annualRevenue: this.props.success.annual_revenue,\n });\n }, 1500);\n }\n\n render() {\n return (\n \n {/* Welcome profile */}\n \n \n
\n \n \n
\n
Welcome Back !
\n

Lab Hazir Dashboard

\n \n View Profile{\" \"}\n \n \n
\n \n \n \"\"\n \n
\n
\n \n\n \n \n
\n \n
\n \n \n \n
\n {this.state.name}\n
\n

\n {this.state.address}\n

\n \n
\n \n
\n
\n \n\n {/* Revenue and Appointment Details */}\n \n \n \n \n \n
\n
\n

\n Appointments Completed\n

\n

\n {this.state.completedAppointments}\n

\n
\n
\n \n \n \n
\n
\n
\n
\n \n\n \n \n \n
\n
\n

\n Appointments Inprocess\n

\n

\n {this.state.inProcessAppointments}\n

\n
\n
\n \n \n \n
\n
\n
\n
\n \n\n \n \n \n
\n
\n

\n Appointments History\n

\n

\n Activity Log\n

\n
\n
\n \n \n \n \n
\n
\n
\n
\n \n \n \n \n
\n
\n

\n Labs Review\n

\n

\n Audit\n

\n
\n
\n \n \n \n \n
\n
\n
\n
\n \n
\n \n
\n );\n }\n}\n\nLabSummary.propTypes = {\n t: PropTypes.any,\n match: PropTypes.object,\n location: PropTypes.object,\n error: PropTypes.any,\n success: PropTypes.any,\n getLabProfile: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const { error, success } = state.LabProfile;\n return { error, success };\n};\n\nexport default withRouter(\n connect(mapStateToProps, { getLabProfile })(withTranslation()(LabSummary))\n);\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\nimport {\n Container,\n Row,\n Col,\n Button,\n Card,\n CardBody,\n CardTitle,\n Modal,\n ModalHeader,\n ModalBody,\n ModalFooter,\n Table,\n Input,\n} from \"reactstrap\";\nimport { Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\n\n//import Charts\nimport StackedColumnChart from \"./StackedColumnChart\";\n\n//import action\nimport { getChartsData } from \"../../store/actions\";\n\n// Pages Components\nimport LabSummary from \"./LabSummary\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"../../components/Common/Breadcrumb\";\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport classNames from \"classnames\";\n\nclass Dashboard extends Component {\n constructor(props) {\n super(props);\n this.state = {\n email: [\n { title: \"Week\", linkto: \"#\", isActive: false },\n { title: \"Month\", linkto: \"#\", isActive: false },\n { title: \"Year\", linkto: \"#\", isActive: true },\n ],\n modal: false,\n subscribemodal: false,\n chartSeries: [],\n periodType: \"yearly\",\n };\n\n this.togglemodal.bind(this);\n }\n\n componentDidMount() {\n const { onGetChartsData } = this.props;\n setTimeout(() => this.setState({ subscribemodal: true }), 2000);\n onGetChartsData(\"yearly\");\n }\n\n togglemodal = () => {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n };\n\n togglesubscribemodal = () => {\n this.setState(prevState => ({\n subscribemodal: !prevState.subscribemodal,\n }));\n };\n\n componentDidUpdate(prevProps) {\n if (prevProps !== this.props) {\n this.setState({ ...this.state, chartSeries: this.props.chartsData });\n }\n }\n\n render() {\n const userId = localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\";\n return (\n \n
\n \n Dashboard | Lab\n \n \n {/* Render Breadcrumb */}\n \n \n \n\n \n \n \n
\n {/* \n Email Sent\n */}\n
\n
\n \n \n \n \n \n \n
\n \n );\n }\n}\n\nDashboard.propTypes = {\n t: PropTypes.any,\n chartsData: PropTypes.any,\n onGetChartsData: PropTypes.func,\n};\n\nconst mapStateToProps = ({ Dashboard }) => ({\n chartsData: Dashboard.chartsData,\n});\n\nconst mapDispatchToProps = dispatch => ({\n onGetChartsData: periodType => dispatch(getChartsData(periodType)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withTranslation()(Dashboard));\n","import React, { Component } from \"react\"\nimport PropTypes from 'prop-types';\nimport ReactApexChart from \"react-apexcharts\"\n\nclass StackedColumnChart extends Component {\n constructor(props) {\n super(props)\n\n this.state = {\n options: {\n chart: {\n stacked: true,\n toolbar: {\n show: false,\n },\n zoom: {\n enabled: true,\n },\n\n },\n\n plotOptions: {\n bar: {\n horizontal: false,\n columnWidth: \"15%\",\n endingShape: \"rounded\",\n },\n },\n\n dataLabels: {\n enabled: false,\n },\n xaxis: {\n categories: [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\",\n ],\n },\n colors: [\"#556ee6\", \"#f1b44c\", \"#34c38f\"],\n legend: {\n position: \"bottom\",\n },\n fill: {\n opacity: 1,\n },\n },\n }\n }\n\n render() {\n return (\n \n \n \n )\n }\n}\n\nStackedColumnChart.propTypes = {\n chartSeries: PropTypes.any,\n periodData: PropTypes.any\n}\nexport default StackedColumnChart\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport { Row, Col, Card, CardBody } from \"reactstrap\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { withTranslation } from \"react-i18next\";\n\nimport profileImg from \"../../assets/images/profile-img.png\";\n\n// actions\nimport { getB2bProfile } from \"store/auth/b2bprofile/actions\";\n\nclass B2bProfile extends Component {\n constructor(props) {\n super(props);\n this.state = {\n btnText: \"Copy\",\n business_name: \"\",\n email: \"\",\n landline: \"\",\n website_url: \"\",\n uuid:\"\",\n business_logo:\"\",\n completedAppointments: \"\",\n inProcessAppointments: \"\",\n monthlyRevenue: \"\",\n annualRevenue: \"\",\n inProcessAppointments: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n componentDidMount() {\n this.props.getB2bProfile(this.state.user_id);\n\n setTimeout(() => {\n this.setState({\n business_name: this.props.success.business_name,\n uuid: this.props.success.uuid,\n business_logo: process.env.REACT_APP_BACKENDURL + this.props.success.business_logo,\n email: this.props.success.email,\n landline: this.props.success.landline,\n website_url: this.props.success.website_url,\n completedAppointments: this.props.success.completed_appointments,\n inProcessAppointments: this.props.success.inprocess_appointments,\n monthlyRevenue: this.props.success.monthly_revenue,\n annualRevenue: this.props.success.annual_revenue,\n });\n }, 1500);\n }\n\n render() {\n return (\n \n {/* Welcome profile */}\n \n \n
\n \n \n
\n
Welcome Back !
\n

Lab Hazir Dashboard

\n \n View Profile{\" \"}\n \n \n
\n \n \n \"\"\n \n
\n
\n \n \n \n \n
\n \n
\n \n \n \n
\n {this.state.business_name}\n
\n

\n {this.state.website_url}\n

\n \n \n
\n \n
\n
\n \n\n {/* Revenue and Appointment Details */}\n \n \n \n \n \n
\n
\n

\n Appointments Completed\n

\n

\n {this.state.completedAppointments}\n

\n
\n
\n \n \n \n
\n
\n
\n
\n \n\n \n \n \n
\n
\n

\n Appointments Inprocess\n

\n

\n {this.state.inProcessAppointments}\n

\n
\n
\n \n \n \n
\n
\n
\n
\n \n \n \n \n
\n
\n

\n Book On call Appointments\n

\n

\n New Patients\n

\n
\n
\n \n \n \n \n
\n
\n
\n
\n \n \n \n \n
\n
\n

\n Book On call Appointments\n

\n

\n Exist Patients List\n

\n
\n
\n \n \n \n \n
\n
\n
\n
\n \n
\n \n
\n );\n }\n}\n\nB2bProfile.propTypes = {\n t: PropTypes.any,\n match: PropTypes.object,\n location: PropTypes.object,\n error: PropTypes.any,\n success: PropTypes.any,\n getB2bProfile: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const { error, success } = state.B2bProfile;\n return { error, success };\n};\n\nexport default withRouter(\n connect(mapStateToProps, { getB2bProfile })(withTranslation()(B2bProfile))\n);\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\nimport {\n Container,\n Row,\n Col,\n Button,\n Card,\n CardBody,\n CardTitle,\n Modal,\n ModalHeader,\n ModalBody,\n ModalFooter,\n Table,\n Input,\n} from \"reactstrap\";\nimport { Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\n\n//import Charts\nimport StackedColumnChart from \"./StackedColumnChart\";\n\n//import action\nimport { getChartsData } from \"../../store/actions\";\n\n// Pages Components\nimport B2bSummary from \"./B2bSummary\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"../../components/Common/Breadcrumb\";\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport classNames from \"classnames\";\n\nclass Dashboard extends Component {\n constructor(props) {\n super(props);\n this.state = {\n email: [\n { title: \"Week\", linkto: \"#\", isActive: false },\n { title: \"Month\", linkto: \"#\", isActive: false },\n { title: \"Year\", linkto: \"#\", isActive: true },\n ],\n modal: false,\n subscribemodal: false,\n chartSeries: [],\n periodType: \"yearly\",\n };\n\n this.togglemodal.bind(this);\n }\n\n componentDidMount() {\n const { onGetChartsData } = this.props;\n setTimeout(() => this.setState({ subscribemodal: true }), 2000);\n onGetChartsData(\"yearly\");\n }\n\n togglemodal = () => {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n };\n\n togglesubscribemodal = () => {\n this.setState(prevState => ({\n subscribemodal: !prevState.subscribemodal,\n }));\n };\n\n componentDidUpdate(prevProps) {\n if (prevProps !== this.props) {\n this.setState({ ...this.state, chartSeries: this.props.chartsData });\n }\n }\n\n render() {\n return (\n \n
\n \n Dashboard | B2b\n \n \n {/* Render Breadcrumb */}\n \n \n \n\n \n \n \n
\n \n Email Sent\n \n
\n
    \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"weekly\",\n });\n this.props.onGetChartsData(\"weekly\");\n }}\n id=\"one_month\"\n >\n Week\n {\" \"}\n
  • \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"monthly\",\n });\n this.props.onGetChartsData(\"monthly\");\n }}\n id=\"one_month\"\n >\n Month\n \n
  • \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"yearly\",\n });\n this.props.onGetChartsData(\"yearly\");\n }}\n id=\"one_month\"\n >\n Year\n \n
  • \n
\n
\n
\n
\n \n \n \n \n \n \n
\n \n );\n }\n}\n\nDashboard.propTypes = {\n t: PropTypes.any,\n chartsData: PropTypes.any,\n onGetChartsData: PropTypes.func,\n};\n\nconst mapStateToProps = ({ Dashboard }) => ({\n chartsData: Dashboard.chartsData,\n});\n\nconst mapDispatchToProps = dispatch => ({\n onGetChartsData: periodType => dispatch(getChartsData(periodType)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withTranslation()(Dashboard));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport { Row, Col, Card, CardBody } from \"reactstrap\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { withTranslation } from \"react-i18next\";\n\nimport profileImg from \"../../assets/images/profile-img.png\";\n\n// actions\nimport { getStaffProfile } from \"store/auth/staffprofile/actions\";\n\nclass FinanceAdminSummary extends Component {\n constructor(props) {\n super(props);\n this.state = {\n name: \"\",\n email: \"\",\n // approvedLabs: \"\",\n // pendingLabs: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n componentDidMount() {\n this.props.getStaffProfile(this.state.user_id);\n\n setTimeout(() => {\n this.setState({\n // name: this.props.success.name,\n // email: this.props.success.email,\n // approvedLabs: this.props.success.approved_labs,\n // pendingLabs: this.props.success.pending_labs,\n });\n }, 1500);\n }\n\n render() {\n return (\n \n {/* Welcome profile */}\n \n \n
\n \n \n
\n
Welcome Back !
\n

Lab Hazir Dashboard

\n
\n \n \n \"\"\n \n
\n
\n \n \n \n
\n \n \n
\n {this.state.name}\n
\n

\n {this.state.email}\n

\n \n \n
\n \n View Profile{\" \"}\n \n \n
\n \n {/* \n
\n \n Activity Log{\" \"}\n \n \n
\n */}\n
\n
\n \n
\n
\n
\n \n\n {/* Revenue and Appointment Details */}\n {/* \n \n \n \n \n
\n
\n

Assigned Audits

\n

0

\n
\n
\n \n \n \n
\n
\n
\n
\n \n\n \n \n \n
\n
\n

Completed Audits

\n

0

\n
\n
\n \n \n \n
\n
\n
\n
\n \n
\n */}\n
\n );\n }\n}\n\nFinanceAdminSummary.propTypes = {\n t: PropTypes.any,\n match: PropTypes.object,\n location: PropTypes.object,\n error: PropTypes.any,\n success: PropTypes.any,\n getStaffProfile: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const { error, success } = state.StaffProfile;\n return { error, success };\n};\n\nexport default withRouter(\n connect(mapStateToProps, { getStaffProfile })(\n withTranslation()(FinanceAdminSummary)\n )\n);\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\nimport {\n Container,\n Row,\n Col,\n Button,\n Card,\n CardBody,\n CardTitle,\n Modal,\n ModalHeader,\n ModalBody,\n ModalFooter,\n Table,\n Input,\n} from \"reactstrap\";\nimport { Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\n\n//import Charts\n// import StackedColumnChart from \"./StackedColumnChart\";\n\n//import action\nimport { getChartsData } from \"../../store/actions\";\n\n// Pages Components\nimport StaffSummary from \"./FinanceAdminSummary\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"../../components/Common/Breadcrumb\";\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport classNames from \"classnames\";\n\nclass Dashboard extends Component {\n constructor(props) {\n super(props);\n this.state = {\n email: [\n { title: \"Week\", linkto: \"#\", isActive: false },\n { title: \"Month\", linkto: \"#\", isActive: false },\n { title: \"Year\", linkto: \"#\", isActive: true },\n ],\n modal: false,\n subscribemodal: false,\n chartSeries: [],\n periodType: \"yearly\",\n };\n\n this.togglemodal.bind(this);\n }\n\n componentDidMount() {\n const { onGetChartsData } = this.props;\n setTimeout(() => this.setState({ subscribemodal: true }), 2000);\n onGetChartsData(\"yearly\");\n }\n\n togglemodal = () => {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n };\n\n togglesubscribemodal = () => {\n this.setState(prevState => ({\n subscribemodal: !prevState.subscribemodal,\n }));\n };\n\n componentDidUpdate(prevProps) {\n if (prevProps !== this.props) {\n this.setState({ ...this.state, chartSeries: this.props.chartsData });\n }\n }\n\n render() {\n return (\n \n
\n \n Dashboard | Finance Admin\n \n \n {/* Render Breadcrumb */}\n \n \n \n\n \n \n \n
\n \n Email Sent\n \n
\n
    \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"weekly\",\n });\n this.props.onGetChartsData(\"weekly\");\n }}\n id=\"one_month\"\n >\n Week\n {\" \"}\n
  • \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"monthly\",\n });\n this.props.onGetChartsData(\"monthly\");\n }}\n id=\"one_month\"\n >\n Month\n \n
  • \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"yearly\",\n });\n this.props.onGetChartsData(\"yearly\");\n }}\n id=\"one_month\"\n >\n Year\n \n
  • \n
\n
\n
\n
\n {/* */}\n \n \n \n \n \n
\n \n );\n }\n}\n\nDashboard.propTypes = {\n t: PropTypes.any,\n chartsData: PropTypes.any,\n onGetChartsData: PropTypes.func,\n};\n\nconst mapStateToProps = ({ Dashboard }) => ({\n chartsData: Dashboard.chartsData,\n});\n\nconst mapDispatchToProps = dispatch => ({\n onGetChartsData: periodType => dispatch(getChartsData(periodType)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withTranslation()(Dashboard));\n","import React, { Component } from \"react\"\nimport PropTypes from 'prop-types';\nimport ReactApexChart from \"react-apexcharts\"\n\nclass StackedColumnChart extends Component {\n constructor(props) {\n super(props)\n\n this.state = {\n options: {\n chart: {\n stacked: true,\n toolbar: {\n show: false,\n },\n zoom: {\n enabled: true,\n },\n\n },\n\n plotOptions: {\n bar: {\n horizontal: false,\n columnWidth: \"15%\",\n endingShape: \"rounded\",\n },\n },\n\n dataLabels: {\n enabled: false,\n },\n xaxis: {\n categories: [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\",\n ],\n },\n colors: [\"#556ee6\", \"#f1b44c\", \"#34c38f\"],\n legend: {\n position: \"bottom\",\n },\n fill: {\n opacity: 1,\n },\n },\n }\n }\n\n render() {\n return (\n \n \n \n )\n }\n}\n\nStackedColumnChart.propTypes = {\n chartSeries: PropTypes.any,\n periodData: PropTypes.any\n}\nexport default StackedColumnChart\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Row, Col, Card, CardBody } from \"reactstrap\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { withTranslation } from \"react-i18next\";\n\nimport profileImg from \"../../assets/images/profile-img.png\";\n\n// actions\nimport {\n // updateCorporateProfile,\n getCorporateProfile,\n // getCorporateProfileSuccess,\n} from \"../../store/actions\";\n\nclass FinanceAdminSummary extends Component {\n constructor(props) {\n super(props);\n this.state = {\n name: \"\",\n email: \"\",\n \n // approvedLabs: \"\",\n // pendingLabs: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n componentDidMount() {\n this.props.getCorporateProfile(this.state.user_id);\n\n setTimeout(() => {\n this.setState({\n name: this.props.success.name,\n logo: process.env.REACT_APP_BACKENDURL + this.props.success.logo,\n completedAppointments: this.props.success.completed_appointments,\n inProcessAppointments: this.props.success.inprocess_appointments,\n national_taxation_no: this.props.success.national_taxation_no,\n email: this.props.success.email,\n phone: this.props.success.phone,\n landline: this.props.success.landline,\n address: this.props.success.address,\n city: this.props.success.city,\n payment_terms: this.props.success.payment_terms,\n });\n }, 1500);\n }\n\n render() {\n return (\n \n {/* Welcome profile */}\n \n \n
\n \n \n
\n
Welcome Back !
\n

Lab Hazir Dashboard

\n \n View Profile{\" \"}\n \n \n
\n \n \n \"\"\n \n
\n
\n \n\n\n \n
\n\n
\n \n \n \n
\n {this.state.name}\n
\n

\n {this.state.address}\n

\n \n
\n\n
\n
\n \n {/* Revenue and Appointment Details */}\n \n \n \n \n \n
\n
\n

\n Appointments Completed\n

\n

\n {this.state.completedAppointments}\n

\n
\n \n
\n \n \n \n
\n \n
\n
\n
\n \n\n \n \n \n
\n
\n

\n Appointments Inprocess\n

\n

\n {this.state.inProcessAppointments}\n

\n
\n \n
\n \n \n \n
\n \n
\n
\n
\n \n \n \n \n
\n
\n {/*

\n Labs Review\n

*/}\n
\n Lab List\n
\n
\n
\n \n \n \n \n \n
\n
\n
\n
\n \n \n \n \n
\n
\n {/*

\n Appointments History\n

*/}\n
\n Payment Form\n
\n
\n
\n \n \n \n \n \n
\n
\n
\n
\n \n \n
\n \n
\n );\n }\n}\n\nFinanceAdminSummary.propTypes = {\n t: PropTypes.any,\n match: PropTypes.object,\n location: PropTypes.object,\n error: PropTypes.any,\n success: PropTypes.any,\n getCorporateProfile: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const { error, success } = state.CorporateProfile;\n return { error, success };\n};\n\nexport default withRouter(\n connect(mapStateToProps, { getCorporateProfile })(\n withTranslation()(FinanceAdminSummary)\n )\n);\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\nimport {\n Container,\n Row,\n Col,\n Button,\n Card,\n CardBody,\n CardTitle,\n Modal,\n ModalHeader,\n ModalBody,\n ModalFooter,\n Table,\n Input,\n} from \"reactstrap\";\nimport { Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\n\n//import Charts\nimport StackedColumnChart from \"./StackedColumnChart\";\n\n// import StackedColumnChart from \"./StackedColumnChart\";\n\n//import action\nimport { getChartsData } from \"../../store/actions\";\n\n// Pages Components\nimport StaffSummary from \"./FinanceAdminSummary\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"../../components/Common/Breadcrumb\";\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport classNames from \"classnames\";\n\nclass Dashboard extends Component {\n constructor(props) {\n super(props);\n this.state = {\n email: [\n { title: \"Week\", linkto: \"#\", isActive: false },\n { title: \"Month\", linkto: \"#\", isActive: false },\n { title: \"Year\", linkto: \"#\", isActive: true },\n ],\n modal: false,\n subscribemodal: false,\n chartSeries: [],\n periodType: \"yearly\",\n };\n\n this.togglemodal.bind(this);\n }\n\n componentDidMount() {\n const { onGetChartsData } = this.props;\n setTimeout(() => this.setState({ subscribemodal: true }), 2000);\n onGetChartsData(\"yearly\");\n }\n\n togglemodal = () => {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n };\n\n togglesubscribemodal = () => {\n this.setState(prevState => ({\n subscribemodal: !prevState.subscribemodal,\n }));\n };\n\n componentDidUpdate(prevProps) {\n if (prevProps !== this.props) {\n this.setState({ ...this.state, chartSeries: this.props.chartsData });\n }\n }\n\n render() {\n return (\n \n
\n \n Dashboard | Corporate\n \n \n {/* Render Breadcrumb */}\n \n \n \n\n \n \n \n
\n \n Email Sent\n \n
\n
    \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"weekly\",\n });\n this.props.onGetChartsData(\"weekly\");\n }}\n id=\"one_month\"\n >\n Week\n {\" \"}\n
  • \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"monthly\",\n });\n this.props.onGetChartsData(\"monthly\");\n }}\n id=\"one_month\"\n >\n Month\n \n
  • \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"yearly\",\n });\n this.props.onGetChartsData(\"yearly\");\n }}\n id=\"one_month\"\n >\n Year\n \n
  • \n
\n
\n
\n
\n \n \n \n \n \n \n
\n \n );\n }\n}\n\nDashboard.propTypes = {\n t: PropTypes.any,\n chartsData: PropTypes.any,\n onGetChartsData: PropTypes.func,\n};\n\nconst mapStateToProps = ({ Dashboard }) => ({\n chartsData: Dashboard.chartsData,\n});\n\nconst mapDispatchToProps = dispatch => ({\n onGetChartsData: periodType => dispatch(getChartsData(periodType)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withTranslation()(Dashboard));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport { Row, Col, Card, CardBody } from \"reactstrap\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { withTranslation } from \"react-i18next\";\n\nimport profileImg from \"../../assets/images/profile-img.png\";\n\n// actions\nimport { getStaffProfile } from \"store/auth/staffprofile/actions\";\n\nclass FinanceAdminSummary extends Component {\n constructor(props) {\n super(props);\n this.state = {\n name: \"\",\n email: \"\",\n // approvedLabs: \"\",\n // pendingLabs: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n componentDidMount() {\n this.props.getStaffProfile(this.state.user_id);\n\n setTimeout(() => {\n this.setState({\n // name: this.props.success.name,\n // email: this.props.success.email,\n // approvedLabs: this.props.success.approved_labs,\n // pendingLabs: this.props.success.pending_labs,\n });\n }, 1500);\n }\n\n render() {\n return (\n \n {/* Welcome profile */}\n \n \n
\n \n \n
\n
Welcome Back !
\n

Lab Hazir Dashboard

\n
\n \n \n \"\"\n \n
\n
\n \n \n \n
\n \n \n
\n {this.state.name}\n
\n

\n {this.state.email}\n

\n \n {/* \n
\n \n Activity Log{\" \"}\n \n \n
\n */}\n {/* \n
\n \n View Profile{\" \"}\n \n \n
\n */}\n
\n
\n \n
\n
\n
\n \n\n {/* Revenue and Appointment Details */}\n {/* \n \n \n \n \n
\n
\n

Assigned Audits

\n

0

\n
\n
\n \n \n \n
\n
\n
\n
\n \n\n \n \n \n
\n
\n

Completed Audits

\n

0

\n
\n
\n \n \n \n
\n
\n
\n
\n \n
\n */}\n
\n );\n }\n}\n\nFinanceAdminSummary.propTypes = {\n t: PropTypes.any,\n match: PropTypes.object,\n location: PropTypes.object,\n error: PropTypes.any,\n success: PropTypes.any,\n getStaffProfile: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const { error, success } = state.StaffProfile;\n return { error, success };\n};\n\nexport default withRouter(\n connect(mapStateToProps, { getStaffProfile })(\n withTranslation()(FinanceAdminSummary)\n )\n);\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\nimport {\n Container,\n Row,\n Col,\n Button,\n Card,\n CardBody,\n CardTitle,\n Modal,\n ModalHeader,\n ModalBody,\n ModalFooter,\n Table,\n Input,\n} from \"reactstrap\";\nimport { Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\n\n//import Charts\n// import StackedColumnChart from \"./StackedColumnChart\";\n\n//import action\nimport { getChartsData } from \"../../store/actions\";\n\n// Pages Components\nimport StaffSummary from \"./FinanceAdminSummary\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"../../components/Common/Breadcrumb\";\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport classNames from \"classnames\";\n\nclass Dashboard extends Component {\n constructor(props) {\n super(props);\n this.state = {\n email: [\n { title: \"Week\", linkto: \"#\", isActive: false },\n { title: \"Month\", linkto: \"#\", isActive: false },\n { title: \"Year\", linkto: \"#\", isActive: true },\n ],\n modal: false,\n subscribemodal: false,\n chartSeries: [],\n periodType: \"yearly\",\n };\n\n this.togglemodal.bind(this);\n }\n\n componentDidMount() {\n const { onGetChartsData } = this.props;\n setTimeout(() => this.setState({ subscribemodal: true }), 2000);\n onGetChartsData(\"yearly\");\n }\n\n togglemodal = () => {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n };\n\n togglesubscribemodal = () => {\n this.setState(prevState => ({\n subscribemodal: !prevState.subscribemodal,\n }));\n };\n\n componentDidUpdate(prevProps) {\n if (prevProps !== this.props) {\n this.setState({ ...this.state, chartSeries: this.props.chartsData });\n }\n }\n\n render() {\n return (\n \n
\n \n Dashboard | Finance Admin\n \n \n {/* Render Breadcrumb */}\n \n \n \n\n \n \n \n
\n \n Email Sent\n \n
\n
    \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"weekly\",\n });\n this.props.onGetChartsData(\"weekly\");\n }}\n id=\"one_month\"\n >\n Week\n {\" \"}\n
  • \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"monthly\",\n });\n this.props.onGetChartsData(\"monthly\");\n }}\n id=\"one_month\"\n >\n Month\n \n
  • \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"yearly\",\n });\n this.props.onGetChartsData(\"yearly\");\n }}\n id=\"one_month\"\n >\n Year\n \n
  • \n
\n
\n
\n
\n {/* */}\n \n \n \n \n \n
\n \n );\n }\n}\n\nDashboard.propTypes = {\n t: PropTypes.any,\n chartsData: PropTypes.any,\n onGetChartsData: PropTypes.func,\n};\n\nconst mapStateToProps = ({ Dashboard }) => ({\n chartsData: Dashboard.chartsData,\n});\n\nconst mapDispatchToProps = dispatch => ({\n onGetChartsData: periodType => dispatch(getChartsData(periodType)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withTranslation()(Dashboard));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport { Row, Col, Card, CardBody , Container} from \"reactstrap\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { withTranslation } from \"react-i18next\";\n\nimport profileImg from \"../../assets/images/profile-img.png\";\n\n// actions\nimport { getStaffProfile } from \"store/auth/staffprofile/actions\";\n\nclass MarketerAdminSummary extends Component {\n constructor(props) {\n super(props);\n this.state = {\n name: \"\",\n email: \"\",\n // approvedLabs: \"\",\n // pendingLabs: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n componentDidMount() {\n this.props.getStaffProfile(this.state.user_id);\n\n setTimeout(() => {\n this.setState({\n // name: this.props.success.name,\n // email: this.props.success.email,\n // approvedLabs: this.props.success.approved_labs,\n // pendingLabs: this.props.success.pending_labs,\n });\n }, 1500);\n }\n\n render() {\n return (\n \n {/* Welcome profile */}\n \n \n \n
\n \n \n
\n
Welcome Back !
\n

Marketer Admin Dashboard

\n
\n \n \n \"\"\n \n
\n
\n \n \n \n
\n \n \n
\n {this.state.name}\n
\n

\n {this.state.email}\n

\n \n \n
\n \n Change Password{\" \"}\n \n \n
\n \n {/* \n
\n \n View Profile{\" \"}\n \n \n
\n */}\n
\n
\n \n
\n
\n
\n \n
\n {/* Revenue and Appointment Details */}\n {/* \n \n \n \n \n
\n
\n

Assigned Audits

\n

0

\n
\n
\n \n \n \n
\n
\n
\n
\n \n\n \n \n \n
\n
\n

Completed Audits

\n

0

\n
\n
\n \n \n \n
\n
\n
\n
\n \n
\n */}\n
\n );\n }\n}\n\nMarketerAdminSummary.propTypes = {\n t: PropTypes.any,\n match: PropTypes.object,\n location: PropTypes.object,\n error: PropTypes.any,\n success: PropTypes.any,\n getStaffProfile: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const { error, success } = state.StaffProfile;\n return { error, success };\n};\n\nexport default withRouter(\n connect(mapStateToProps, { getStaffProfile })(\n withTranslation()(MarketerAdminSummary)\n )\n);\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\nimport {\n Container,\n Row,\n Col,\n Button,\n Card,\n CardBody,\n CardTitle,\n Modal,\n ModalHeader,\n ModalBody,\n ModalFooter,\n Table,\n Input,\n} from \"reactstrap\";\nimport { Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\n\n//import Charts\n// import StackedColumnChart from \"./StackedColumnChart\";\n\n//import action\nimport { getChartsData } from \"../../store/actions\";\n\n// Pages Components\nimport StaffSummary from \"./MarketerAdminSummary\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"../../components/Common/Breadcrumb\";\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport classNames from \"classnames\";\n\nclass Dashboard extends Component {\n constructor(props) {\n super(props);\n this.state = {\n email: [\n { title: \"Week\", linkto: \"#\", isActive: false },\n { title: \"Month\", linkto: \"#\", isActive: false },\n { title: \"Year\", linkto: \"#\", isActive: true },\n ],\n modal: false,\n subscribemodal: false,\n chartSeries: [],\n periodType: \"yearly\",\n };\n\n this.togglemodal.bind(this);\n }\n\n componentDidMount() {\n const { onGetChartsData } = this.props;\n setTimeout(() => this.setState({ subscribemodal: true }), 2000);\n onGetChartsData(\"yearly\");\n }\n\n togglemodal = () => {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n };\n\n togglesubscribemodal = () => {\n this.setState(prevState => ({\n subscribemodal: !prevState.subscribemodal,\n }));\n };\n\n componentDidUpdate(prevProps) {\n if (prevProps !== this.props) {\n this.setState({ ...this.state, chartSeries: this.props.chartsData });\n }\n }\n\n render() {\n return (\n \n
\n \n Dashboard | Marketer Admin\n \n \n {/* Render Breadcrumb */}\n \n \n \n\n {/* \n \n \n
\n \n Email Sent\n \n
\n
    \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"weekly\",\n });\n this.props.onGetChartsData(\"weekly\");\n }}\n id=\"one_month\"\n >\n Week\n {\" \"}\n
  • \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"monthly\",\n });\n this.props.onGetChartsData(\"monthly\");\n }}\n id=\"one_month\"\n >\n Month\n \n
  • \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"yearly\",\n });\n this.props.onGetChartsData(\"yearly\");\n }}\n id=\"one_month\"\n >\n Year\n \n
  • \n
\n
\n
\n
\n {/* */}\n {/* */}\n {/* */}\n {/* */} \n \n \n
\n \n );\n }\n}\n\nDashboard.propTypes = {\n t: PropTypes.any,\n chartsData: PropTypes.any,\n onGetChartsData: PropTypes.func,\n};\n\nconst mapStateToProps = ({ Dashboard }) => ({\n chartsData: Dashboard.chartsData,\n});\n\nconst mapDispatchToProps = dispatch => ({\n onGetChartsData: periodType => dispatch(getChartsData(periodType)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withTranslation()(Dashboard));\n","import React, { Component } from \"react\";\nimport Select from \"react-select\";\nimport MetaTags from \"react-meta-tags\";\nimport PropTypes from \"prop-types\";\nimport { Field, Formik } from \"formik\";\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\nimport {\n Container,\n Row,\n Col,\n Input,\n Alert,\n Card,\n Form,\n FormGroup,\n Label,\n CardBody,\n CardTitle,\n} from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { isEmpty, map, size } from \"lodash\";\n\n// Import Breadcrumb\nimport Breadcrumbs from \"../../components/Common/Breadcrumb\";\n\nimport {\n addNewCemployeeData,\n getEmployeeCorporate,\n} from \"store/corporatedata/actions\";\n\nimport {\n getCorporateProfile,\n} from \"../../store/actions\";\n\nclass DonorPayment extends Component {\n constructor(props) {\n super(props);\n this.state = {\n cemployeeDatas: [],\n complaintSuccess: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n name: \"\",\n employee_code: \"\",\n type: \"Employee\",\n parent_employee_id: \"\",\n relation: \"\",\n limit: \"\",\n date: \"\",\n CorporateProfile: [],\n payment_terms: \"\",\n isDisabled: true,\n isRequiredFilled: true,\n cemployeeData: \"\",\n checkedoutData: \"\",\n selectedGroup: null,\n errors: {},\n };\n this.handleSelectGroup = this.handleSelectGroup.bind(this);\n }\n\n async componentDidMount() {\n const { cemployeeDatas,onGetEmployeeCorporate, getCorporateProfile } = this.props;\n try {\n const response = await getCorporateProfile(this.state.user_id);\n if (response && response.payment_terms) {\n this.setState({\n payment_terms: response.payment_terms,\n });\n } else {\n console.log('Payment terms not found in response');\n }\n } catch (error) {\n console.error('Error fetching corporate profile:', error);\n }\n \n onGetEmployeeCorporate(this.state.user_id);\n this.setState({ cemployeeDatas });\n }\n \n componentDidUpdate(prevProps, prevState, snapshot) {\n const { cemployeeDatas } = this.props;\n console.log(\"cemployeeDatas\",cemployeeDatas);\n if (\n isEmpty(prevProps.cemployeeDatas) &&\n !isEmpty(cemployeeDatas) &&\n size(cemployeeDatas) !== size(prevProps.cemployeeDatas)\n ) {\n this.setState({ cemployeeDatas });\n }\n if (prevProps.CorporateProfile !== this.props.CorporateProfile) {\n const { CorporateProfile } = this.props;\n if (CorporateProfile && CorporateProfile.payment_terms) {\n this.setState({\n payment_terms: CorporateProfile.payment_terms,\n });\n }\n }\n }\n \n \n\n handleSelectGroup = (selectedGroup) => {\n this.setState({\n parent_employee_id: selectedGroup.label, // Store the name instead of the ID\n errors: { ...this.state.errors, parent_employee_id: \"\" }, // Clear error\n });\n };\n\n handleProceedClick = () => {\n const errors = {};\n\n if (!this.state.name) errors.name = \"Name is required\";\n if (!this.state.employee_code) errors.employee_code = \"ID Card No is required\";\n const existingEmployeeCodes = this.state.cemployeeDatas.map((employee) => employee.employee_code);\n if (existingEmployeeCodes.includes(this.state.employee_code)) {\n errors.employee_code = \"Employee code already exists\";\n }\n \n\n if (this.state.payment_terms === \"Payment by Coorporate to LH\") {\n if (!this.state.limit) errors.limit = \"Amount Limit is required\";\n if (!this.state.date) errors.date = \"Limit Expiry Date is required\";\n }\n\n if (this.state.type === \"Family\") {\n if (!this.state.parent_employee_id) errors.parent_employee_id = \"Parent Employee Name is required\";\n if (!this.state.relation) errors.relation = \"Relation with Employee is required\";\n }\n\n if (Object.keys(errors).length > 0) {\n this.setState({ errors });\n return;\n }\n\n const relation = this.state.type === \"Family\" ? this.state.relation : \"Self\";\n\n this.setState(\n {\n cemployeeData: {\n name: this.state.name,\n employee_code: this.state.employee_code,\n type: this.state.type,\n parent_employee_id: this.state.parent_employee_id,\n relation,\n limit: this.state.limit,\n date: this.state.date,\n },\n CorporateProfile:{\n payment_terms:this.state.payment_terms,\n }\n },\n () => {\n console.log(\"Payment Terms:\", this.state.CorporateProfile.payment_terms);\n const { onAddcemployeeData } = this.props;\n setTimeout(() => {\n onAddcemployeeData(this.state.cemployeeData, this.state.user_id);\n }, 1000);\n setTimeout(() => {\n if (this.state.cemployeeData) {\n this.setState({\n complaintSuccess: \"Data Added Successfully\",\n });\n }\n }, 1000);\n setTimeout(() => {\n this.setState({\n complaintSuccess: \"\",\n employee_code: \"\",\n type: \"\",\n name: \"\",\n parent_employee_id: \"\",\n relation: \"\",\n limit: \"\",\n date: \"\",\n });\n }, 5000);\n setTimeout(() => {\n if (this.state.cemployeeData) {\n this.props.history.push(\"/employee-list\");\n }\n }, 3000);\n }\n );\n };\n\n render() {\n const { cemployeeDatas, errors, payment_terms,CorporateProfile} = this.state;\n console.log(\"cemployeeDatas\",cemployeeDatas);\n console.log(\"State CorporateProfile:\", this.state.CorporateProfile);\n console.log(\"Props CorporateProfile:\", this.props.CorporateProfile);\n \n const employeeList = [];\n for (let i = 0; i < cemployeeDatas.length; i++) {\n if (cemployeeDatas[i].status === \"Active\" && cemployeeDatas[i].type === \"Employee\") {\n employeeList.push({\n label: `${cemployeeDatas[i].id} - ${cemployeeDatas[i].name}`,\n value: cemployeeDatas[i].id,\n });\n }\n }\n \n const relationOptions = [\n { label: \"Mother\", value: \"Mother\" },\n { label: \"Father\", value: \"Father\" },\n { label: \"Spouse\", value: \"Spouse\" },\n { label: \"Son\", value: \"Son\" },\n { label: \"Daughter\", value: \"Daughter\" },\n { label: \"Sibling\", value: \"Sibling\" },\n { label: \"Other\", value: \"Other\" },\n ];\n \n return (\n \n
\n \n Employee | Lab Hazir - Dashboard\n \n \n \n \n
\n \n \n Upload File\n \n
\n \n \n
\n \n \n \n {!this.state.isRequiredFilled ? (\n \n Please fill the required fields.\n \n ) : null}\n {this.state.complaintSuccess && (\n \n {this.state.complaintSuccess}\n \n )}\n \n \n \n
\n \n Employee Information\n \n

\n Fill the Employee Information\n

\n \n \n \n \n this.setState({\n type: e.target.value,\n })\n }\n >\n \n \n \n \n \n {this.state.type === \"Family\" && (\n <>\n \n \n \n ({\n ...base,\n borderColor: !this.state.parent_employee_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={employeeList}\n placeholder=\"Select Employee...\"\n />\n {errors.parent_employee_id && (\n
\n {errors.parent_employee_id}\n
\n )}\n \n
\n \n \n \n \n this.setState({\n relation: selectedOption.value,\n })\n }\n options={relationOptions}\n placeholder=\"Select Relation...\"\n />\n {errors.relation && (\n
\n {errors.relation}\n
\n )}\n \n
\n \n )}\n \n \n \n \n this.setState({\n name: e.target.value,\n errors: { ...this.state.errors, name: \"\" }, // Clear error\n })\n }\n />\n {errors.name && (\n
{errors.name}
\n )}\n \n
\n \n \n \n {\n const value = e.target.value;\n if (value.length <= 13 && /^[0-9]*$/.test(value)) {\n this.setState({\n employee_code: value,\n errors: { ...this.state.errors, employee_code: \"\" }, // Clear error\n });\n }\n }}\n value={this.state.employee_code}\n />\n {errors.employee_code && (\n
\n {errors.employee_code}\n
\n )}\n \n
\n {payment_terms === \"Payment by Coorporate to LH\" && (\n <>\n \n \n \n {\n const value = e.target.value;\n if (value.length <= 13 && /^[0-9]*$/.test(value)) {\n this.setState({\n limit: value,\n errors: { ...this.state.errors, limit: \"\" }, // Clear error\n });\n }\n }}\n value={this.state.limit}\n />\n {errors.limit && (\n
{errors.limit}
\n )}\n \n
\n \n \n \n \n this.setState({\n date: e.target.value,\n errors: { ...this.state.errors, date: \"\" }, // Clear error\n })\n }\n value={this.state.date}\n />\n {errors.date && (\n
{errors.date}
\n )}\n \n
\n \n )}\n
\n
\n
\n \n \n \n
\n \n Create\n \n
\n \n
\n \n
\n \n
\n
\n
\n
\n
\n );\n }\n}\n\nDonorPayment.propTypes = {\n match: PropTypes.object,\n history: PropTypes.any,\n success: PropTypes.any,\n cemployeeDatas: PropTypes.array,\n onAddcemployeeData: PropTypes.func,\n getCorporateProfile: PropTypes.func.isRequired,\n CorporateProfile: PropTypes.object, // Adjusted this to object\n onGetEmployeeCorporate: PropTypes.func,\n};\nconst mapStateToProps = ({ cemployeeData,CorporateProfile }) => ({\n cemployeeDatas: cemployeeData.cemployeeDatas,\n cemployeeData: cemployeeData.cemployeeData,\n CorporateProfile:CorporateProfile.success,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onAddcemployeeData: (cemployeeData, id) =>\n dispatch(addNewCemployeeData(cemployeeData, id)),\n onGetEmployeeCorporate: (id) => dispatch(getEmployeeCorporate(id)),\n getCorporateProfile: (id) => dispatch(getCorporateProfile(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(DonorPayment));\n","import React, { Component } from \"react\";\nimport Select from \"react-select\";\nimport MetaTags from \"react-meta-tags\";\nimport PropTypes from \"prop-types\";\nimport { any } from \"prop-types\";\nimport { Field, Formik } from \"formik\";\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\nimport {\n Container,\n Row,\n Col,\n Table,\n Input,\n Nav,\n NavItem,\n NavLink,\n TabContent,\n TabPane,\n Card,\n Form,\n FormGroup,\n Label,\n CardBody,\n CardTitle,\n Alert,\n} from \"reactstrap\";\nimport * as XLSX from \"xlsx\";\n\nimport classnames from \"classnames\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\n// Import Breadcrumb\nimport Breadcrumbs from \"../../components/Common/Breadcrumb\";\n\nimport {\n addNewCemployeefile,\n} from \"store/corporatedata/actions\";\nimport {\n getCorporateProfile,\n} from \"../../store/actions\";\n\nclass DonorPayment extends Component {\n constructor(props) {\n super(props);\n this.state = {\n cemployeeDatas: [],\n complaintSuccess: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n excel_file: null, // Changed to null to signify no file initially\n corporate_id: \"\",\n isDisabled: true,\n isRequiredFilled: true,\n cemployeeData: \"\",\n checkedoutData: \"\",\n selectedGroup: null,\n };\n this.handleSelectGroup = this.handleSelectGroup.bind(this);\n }\n\n handleSelectGroup = selectedGroup => {\n this.setState({ selectedGroup });\n };\n\n handleProceedClick = () => {\n if (!this.state.excel_file) {\n this.setState({ complaintSuccess: \"Error: No file uploaded.\" });\n setTimeout(() => {\n this.setState({ complaintSuccess: \"\" });\n }, 30000); // Clear message after 30 seconds\n return;\n }\n\n const file = this.state.excel_file;\n const reader = new FileReader();\n reader.onload = () => {\n const data = reader.result;\n const workbook = XLSX.read(data, { type: 'binary' });\n const sheet = workbook.Sheets[workbook.SheetNames[0]];\n const excelData = XLSX.utils.sheet_to_json(sheet);\n\n // Validate file\n const validationErrors = this.validateFile(excelData);\n\n if (validationErrors.length > 0) {\n this.setState({ \n errorMessage: `Error: ${validationErrors.join(', ')}`, \n complaintSuccess: \"\" \n });\n\n // Hide error message after 30 seconds\n setTimeout(() => {\n this.setState({ errorMessage: \"\" });\n }, 30000);\n \n return;\n }\n\n this.setState({\n cemployeeData: { \n excel_file: this.state.excel_file, \n corporate_id: this.state.user_id \n }\n });\n\n // API call\n const { onAddcemployeefile } = this.props;\n setTimeout(() => {\n console.log(onAddcemployeefile(this.state.cemployeeData));\n }, 1000);\n\n setTimeout(() => {\n if (this.state.cemployeeData) {\n this.setState({ complaintSuccess: \"Employee Added Successfully\", errorMessage: \"\" });\n\n setTimeout(() => {\n this.props.history.push(\"/employee-list\");\n }, 3000);\n } else {\n this.setState({ errorMessage: \"Please Provide Correct Data\", complaintSuccess: \"\" });\n }\n }, 1000);\n\n setTimeout(() => {\n this.setState({ complaintSuccess: \"\", excel_file: null });\n }, 5000);\n };\n\n reader.readAsBinaryString(file);\n};\nhandleProceedClick = () => {\n if (!this.state.excel_file) {\n this.setState({ complaintSuccess: \"No file uploaded.\" });\n setTimeout(() => {\n this.setState({ complaintSuccess: \"\" });\n }, 10000); // Hide after 10 seconds\n return;\n }\n\n const file = this.state.excel_file;\n const reader = new FileReader();\n reader.onload = () => {\n const data = reader.result;\n const workbook = XLSX.read(data, { type: 'binary' });\n const sheet = workbook.Sheets[workbook.SheetNames[0]];\n const excelData = XLSX.utils.sheet_to_json(sheet);\n\n // Validate file\n const validationErrors = this.validateFile(excelData);\n\n if (validationErrors.length > 0) {\n this.setState({ \n errorMessage: validationErrors.join(', '), \n complaintSuccess: \"\" \n });\n\n // Hide error message after 10 seconds\n setTimeout(() => {\n this.setState({ errorMessage: \"\" });\n }, 3000);\n \n return;\n }\n\n this.setState({\n cemployeeData: { \n excel_file: this.state.excel_file, \n corporate_id: this.state.user_id \n }\n });\n\n // API call\n const { onAddcemployeefile } = this.props;\n setTimeout(() => {\n console.log(onAddcemployeefile(this.state.cemployeeData));\n }, 1000);\n\n setTimeout(() => {\n if (this.state.cemployeeData) {\n this.setState({ complaintSuccess: \"Employee Added Successfully\", errorMessage: \"\" });\n\n setTimeout(() => {\n this.props.history.push(\"/employee-list\");\n }, 3000);\n } else {\n this.setState({ errorMessage: \"Please Provide Correct Data\", complaintSuccess: \"\" });\n }\n }, 1000);\n\n setTimeout(() => {\n this.setState({ complaintSuccess: \"\", excel_file: null });\n }, 5000);\n };\n\n reader.readAsBinaryString(file);\n};\n\nvalidateFile = (excelData) => {\n const requiredFields = ['name', 'employee_code', 'type'];\n const missingFields = [];\n\n if (excelData) {\n excelData.forEach((row, index) => {\n requiredFields.forEach((field) => {\n if (!row[field] || row[field] === \"\") {\n missingFields.push(`${field} is missing in Row ${index + 1}`);\n }\n });\n if (row[\"employee_code\"] && row[\"employee_code\"] .toString().length > 13) {\n missingFields.push(`Employee_code in Row ${index + 1} exceeds 13 digits`);\n } \n if (row[\"parent_employee_id\"] && row[\"parent_employee_id\"] .toString().length > 13) {\n missingFields.push(`Parent_employee_id in Row ${index + 1} exceeds 13 digits`);\n } \n\n if (row[\"type\"] && ![\"Employee\", \"Family\"].includes(row[\"type\"])) {\n missingFields.push(`Invalid Type in Row ${index + 1}. Expected 'Employee' or 'Family', found '${row[\"type\"]}'`);\n }\n\n if (row[\"type\"] === \"Family\") {\n if (!row[\"relation\"] || row[\"relation\"] === \"\") {\n missingFields.push(`Relation is missing in Row ${index + 1}`);\n }\n if (!row[\"parent_employee_id\"] || row[\"parent_employee_id\"] === \"\") {\n missingFields.push(`Parent_employee_id is missing in Row ${index + 1}`);\n }\n }\n\n if (this.props.CorporateProfile?.payment_terms === \"Payment by Coorporate to LH\") {\n if (!row[\"limit\"] || row[\"limit\"] === \"\") {\n missingFields.push(`limit is required in Row ${index + 1}`);\n }\n if (!row[\"date\"] || row[\"date\"] === \"\") {\n missingFields.push(`Date is required in Row ${index + 1}`);\n }\n }\n });\n } else {\n console.error(\"Excel data is not in the expected format:\", excelData);\n }\n\n return missingFields;\n};\n\n \n\n async componentDidMount() {\n const { getCorporateProfile } = this.props;\n try {\n const response = await getCorporateProfile(this.state.user_id);\n if (response && response.payment_terms) {\n this.setState({\n payment_terms: response.payment_terms,\n });\n } else {\n console.log('Payment terms not found in response');\n }\n } catch (error) {\n console.error('Error fetching corporate profile:', error);\n }\n }\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { cemployeeDatas } = this.props;\n if (\n isEmpty(prevProps.cemployeeDatas) &&\n !isEmpty(cemployeeDatas) &&\n size(cemployeeDatas) !== size(prevProps.cemployeeDatas)\n ) {\n this.setState({ cemployeeDatas });\n }\n }\n\n render() {\n console.log(\"Props CorporateProfile:\", this.props.CorporateProfile);\n console.log(\" payment_terms:\", this.props.CorporateProfile.payment_terms);\n return (\n \n
\n \n Employee | Lab Hazir - Dashboard\n \n \n {/* Render Breadcrumb */}\n \n \n
\n \n \n \n {this.state.errorMessage && (\n \n {this.state.errorMessage}\n \n )}\n {this.state.complaintSuccess && (\n \n {this.state.complaintSuccess}\n \n )}\n
\n {this.props.CorporateProfile.payment_terms === \"Payment by Coorporate to LH\" ? (\n \n \n Download File Format\n \n ) : (\n \n \n Download File Format\n \n )}\n
\n \n \n
\n

Instructions to fill the excel sheet:

\n
\n
    \n
  1. \n Create a file whose format is, .xlsx, .xls, .csv, .ods, .xml, .html, .txt, .dbf\n
  2. \n
  3. \n There should be a file of 4 columns, in while corporate_id, name, employee_code (13 digits National ID Card Number), type\n
  4. \n {/*
  5. \n This is your corporate_id {this.state.user_id}, Please use it for every Employee. \n
  6. */}\n
  7. \n Please use Unique employee_code (13 digits National ID Card Number)\n
  8. \n
  9. \n If the employee_code (13 digits National ID Card Number) is alraedy used, the entries in the file will be auto skipped.\n
  10. \n
  11. \n If you want to get more information, contact\n us at labhazir@gmail.com\n
  12. \n
\n
\n
\n
\n \n \n \n {\n const file = e.target.files[0];\n if (file) {\n const allowedTypes = [\".xlsx\", \".xls\", \".csv\", \".ods\", \".xml\", \".html\", \".txt\", \".dbf\"];\n const fileType = file.name.split(\".\").pop(); // Get the file extension\n if (allowedTypes.includes(\".\" + fileType.toLowerCase())) {\n this.setState({ excel_file: file });\n } else {\n alert(\"Only XLSX, XLS, CSV, ODS, XML, HTML, TXT, and DBF file types are allowed.\");\n e.target.value = null; // Clear the file input\n this.setState({ excel_file: null });\n }\n }\n }}\n className=\"form-control\"\n />\n \n \n
\n
\n
\n \n \n \n
\n \n Upload{\" \"}\n \n
\n \n
\n \n
\n
\n
\n
\n
\n
\n );\n }\n}\n\nDonorPayment.propTypes = {\n match: PropTypes.object,\n history: any,\n cemployeeDatas: PropTypes.array,\n // onGetDonorPaymentItems: PropTypes.func, \n onAddcemployeefile: PropTypes.func,\n cemployeeData: PropTypes.array,\n getCorporateProfile: PropTypes.func.isRequired,\n CorporateProfile: PropTypes.object, // Adjusted this to object\n};\n\nconst mapStateToProps = ({ cemployeeData,CorporateProfile }) => ({\n cemployeeDatas: cemployeeData.cemployeeDatas,\n cemployeeData: cemployeeData.cemployeeData,\n CorporateProfile:CorporateProfile.success,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onAddcemployeefile: (cemployeeData) => \n dispatch(addNewCemployeefile(cemployeeData)),\n getCorporateProfile: (id) => dispatch(getCorporateProfile(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(DonorPayment));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Card, CardBody, Col, Table, Container, Row } from \"reactstrap\";\nimport { isEmpty, map } from \"lodash\";\n\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport { getB2bAccountStatements } from \"store/b2b-account-statements/actions\";\n\nimport \"assets/scss/table.scss\";\n\nclass AccountStatements extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n b2baccountStatements: [],\n b2baccountStatement: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n account_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n if (this.state.user_id && this.state.account_type === \"b2bclient\") {\n const {onGetB2bAccountStatements } = this.props;\n console.log(onGetB2bAccountStatements(this.state.user_id));\n this.setState({ b2baccountStatements: this.props.b2baccountStatements });\n } else if (this.state.user_id && this.state.account_type !== \"b2bclient\"){\n const { onGetB2bAccountStatements } = this.props;\n onGetB2bAccountStatements(this.props.match.params.id);\n this.setState({ b2baccountStatements: this.props.b2baccountStatements });\n }\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { b2baccountStatements } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: b2baccountStatements.length, // replace later with size(b2baccountStatements),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n return (\n \n
\n \n Account Statements | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n {isEmpty(this.props.b2baccountStatements) && (\n \n \n \n \n
\n \n \n \n \n \n \n \n \n {/* */}\n \n \n \n \n \n\n {/* */}\n \n \n
DateIDPatient NameLab NameStatusAmountReferral Fee of Lab HazirReferral Fee of B2B (%)CreditDebitBalanceIs Settled
\n
\n
\n
\n \n
)}\n {!isEmpty(this.props.b2baccountStatements) && (\n \n \n \n \n
\n \n \n \n \n \n \n \n \n {/* */}\n \n \n \n \n \n\n {/* */}\n \n \n \n {b2baccountStatements.map((b2baccountStatement, i) => (\n <>\n {b2baccountStatement.transaction_type == \"Out\" ? (\n // \n \n \n \n \n \n {/* */}\n \n {/* */}\n {/* */}\n \n {/* */}\n \n \n {/* */}\n \n {/* */}\n \n {/* */}\n \n {/* */}\n \n // \n ) : (\n \n \n \n \n \n {/* */}\n \n {/* */}\n {/* */}\n \n {/* */}\n \n \n {/* */}\n \n {/* */}\n \n {/* */}\n \n {/* */}\n \n )}\n\n\n\n \n )\n )}\n \n \n \n \n \n \n \n \n \n {/* \n {b2baccountStatements.map(\n (b2baccountStatement, key) => (\n <>\n \n \n \n \n \n \n \n \n\n {/* {/* {checkoutItem.lab_home_sampling_charges !=\n 0 && (\n \n \n \n )}\n\n {checkoutItem.total_test_cost && (\n \n \n \n )} \n \n )\n )}\n */}\n
DateIDPatient NameLab NameStatusAmountReferral Fee of Lab HazirReferral Fee of B2B (%)CreditDebitBalanceIs Settled
\n

\n {/* {b2baccountStatement.ordered_at} */}\n {new Date(b2baccountStatement.ordered_at).toLocaleString(\"en-US\")}\n\n

\n
\n
\n {b2baccountStatement.order_id}\n
\n
\n
\n {b2baccountStatement.patient_name}\n
\n
\n
\n {b2baccountStatement.lab_name}\n
\n
\n

\n {b2baccountStatement.test_appointment_id}\n

\n
\n {/*

*/}\n {b2baccountStatement.payment_status == \"Not Paid\" ? (\n \n {b2baccountStatement.payment_method},{\" \"}\n {b2baccountStatement.payment_status}\n \n ) : (\n \n {b2baccountStatement.payment_method},{\" \"}\n {b2baccountStatement.payment_status}\n \n )}\n {/*

*/}\n
\n {b2baccountStatement.amount == 0 ? (\n

\n {b2baccountStatement.amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ):(\n

\n {b2baccountStatement.amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n

\n {b2baccountStatement.labhazir_share.toFixed(0).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {b2baccountStatement.labhazir_share == 0 ? (\n

\n {b2baccountStatement.labhazir_share.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ):(\n

\n {b2baccountStatement.labhazir_share.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n

\n {(b2baccountStatement.b2b_share * 100).toFixed()}%\n

\n
\n {b2baccountStatement.b2b_share == 0 ? (\n

\n {b2baccountStatement.b2b_share.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ):(\n

\n {b2baccountStatement.b2b_share.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n

\n {(b2baccountStatement.Credit).toFixed(0)}\n

\n
\n {b2baccountStatement.Credit == 0 ? (\n

\n {b2baccountStatement.Credit.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ):(\n

\n {b2baccountStatement.Credit.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n

\n {(b2baccountStatement.Debit).toFixed(0)}\n

\n
\n {b2baccountStatement.Debit == 0 ? (\n

\n {b2baccountStatement.Debit.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ):(\n

\n {b2baccountStatement.Debit.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n

\n {(b2baccountStatement.balance).toFixed(0)}\n

\n
\n {b2baccountStatement.balance == 0 ? (\n

\n {b2baccountStatement.balance.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ):(\n

\n {b2baccountStatement.balance.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n {b2baccountStatement.is_settled == true ? (\n
\n \n
\n ) : (\n
\n \n
\n )}\n
\n

\n {/* {b2baccountStatement.ordered_at} */}\n {new Date(b2baccountStatement.ordered_at).toLocaleString(\"en-US\")}\n\n

\n
\n
\n {b2baccountStatement.order_id}\n
\n
\n
\n {b2baccountStatement.patient_name}\n
\n
\n
\n {b2baccountStatement.lab_name}\n
\n
\n

\n {b2baccountStatement.test_appointment_id}\n

\n
\n {/*

*/}\n {b2baccountStatement.payment_status == \"Not Paid\" ? (\n \n {b2baccountStatement.payment_method},{\" \"}\n {b2baccountStatement.payment_status}\n \n ) : (\n \n {b2baccountStatement.payment_method},{\" \"}\n {b2baccountStatement.payment_status}\n \n )}\n {/*

*/}\n
\n {b2baccountStatement.amount == 0 ? (\n

\n {b2baccountStatement.amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ):(\n

\n {b2baccountStatement.amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n

\n {b2baccountStatement.labhazir_share.toFixed(0).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {b2baccountStatement.labhazir_share == 0 ? (\n

\n {b2baccountStatement.labhazir_share.toFixed(0).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ):(\n

\n {b2baccountStatement.labhazir_share.toFixed(0).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n

\n {(b2baccountStatement.b2b_share * 100).toFixed()}%\n

\n
\n {b2baccountStatement.b2b_share == 0 ? (\n

\n {(b2baccountStatement.b2b_share * 100).toFixed()}%\n

\n\n ):(\n

\n {(b2baccountStatement.b2b_share * 100).toFixed()}%\n

\n )}\n \n
\n

\n {(b2baccountStatement.Credit).toFixed(0)}\n

\n
\n {b2baccountStatement.Credit == 0 ? (\n

\n {b2baccountStatement.Credit.toFixed(0).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ):(\n

\n {b2baccountStatement.Credit.toFixed(0).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n

\n {(b2baccountStatement.Debit).toFixed(0)}\n

\n
\n {b2baccountStatement.Debit == 0 ? (\n

\n {b2baccountStatement.Debit.toFixed(0).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ):(\n

\n {b2baccountStatement.Debit.toFixed(0).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n

\n {(b2baccountStatement.balance).toFixed(0)}\n

\n
\n {b2baccountStatement.balance == 0 ? (\n \n

\n {b2baccountStatement.balance.toFixed(0).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n ):(\n

\n {b2baccountStatement.balance.toFixed(0).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n {b2baccountStatement.is_settled == true ? (\n
\n \n
\n ) : (\n
\n \n
\n )}\n
\n Total\n \n

\n\n {\n this.props.b2baccountStatements.slice(-1).pop().total_amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n

\n\n {\n this.props.b2baccountStatements.slice(-1).pop().total_labhazir_share.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n\n \n

\n\n {\n this.props.b2baccountStatements.slice(-1).pop().total_Credit.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n

\n\n {\n this.props.b2baccountStatements.slice(-1).pop().total_Debit.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n

\n\n {\n this.props.b2baccountStatements.slice(-1).pop().balance.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n
\n Total\n
\n

\n {b2baccountStatement.total_dues_before_discount}

\n

\n {b2baccountStatement.total_dues_before_discount}

\n

\n {b2baccountStatement.total_dues_before_discount}

\n

\n {b2baccountStatement.total_dues_before_discount}

\n
\n
\n
\n {\" \"}\n Home Sampling Charges{\" \"}\n \n Rs.{\" \"}\n {\n checkoutItem.lab_home_sampling_charges.toString()\n }\n \n
\n
\n
\n
\n
\n {\" \"}\n Sub Total{\" \"}\n \n Rs.{\" \"}\n {\n checkoutItem.total_test_cost.toString()\n }\n \n
\n
\n
\n
\n {/* \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n
\n
\n \n
\n \n \n
\n \n
\n \n
\n {/* \n \n \n \n \n
\n )}\n \n )}\n */}\n
\n
\n \n
\n )}\n\n
\n
\n
\n );\n }\n}\n\nAccountStatements.propTypes = {\n match: PropTypes.object,\n b2baccountStatements: PropTypes.array,\n className: PropTypes.any,\n onGetB2bAccountStatements: PropTypes.func,\n};\n\nconst mapStateToProps = ({ b2baccountStatements }) => ({\n b2baccountStatements: b2baccountStatements.b2baccountStatements,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetB2bAccountStatements: id => dispatch(getB2bAccountStatements(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(AccountStatements));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport axios from \"axios\";\nimport { useParams } from 'react-router-dom'\nimport { withRouter, Link } from \"react-router-dom\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\n\n// import BootstrapSwitchButton from 'bootstrap-switch-button-react'\nimport {\n FormGroup,\n Card,\n Input,\n CardBody,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\nimport {\n // getUnits,\n getEmployeeCorporate,\n updateCemployee,\n deletecedata\n} from \"store/corporatedata/actions\";\nimport { getCLabAccountStatements } from \"store/b2b-account-statements/actions\";\n\n\nimport {\n getCorporateProfile,\n} from \"../../store/actions\";\n\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\nimport b2bAccountStatements from \"pages/AccountStatements/b2b-account-statements\";\n// import { Tooltip } from \"@material-ui/core\";\n\nclass OfferedTestsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n cemployeeDatas: [],\n b2baccountStatements: [],\n tests: [],\n labProfiles: [],\n // units: [],\n offeredTest: \"\",\n type: \"\",\n payment_terms:\"\",\n selectedcorporate: null,\n selectedType: null,\n modal: false,\n deleteModal: false,\n isLoading: true,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n \n };\n this.handleOfferedTestClick = this.handleOfferedTestClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleOfferedTestClicks = this.handleOfferedTestClicks.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n\n async componentDidMount() {\n const { onGetEmployeeCorporate, getCorporateProfile } = this.props;\n \n \n try {\n // Fetch the corporate profile using the user ID from state\n await getCorporateProfile(this.state.user_id);\n } catch (error) {\n console.error('Error fetching corporate profile:', error);\n }\n \n // Fetch the employee corporate data\n onGetEmployeeCorporate(this.state.user_id);\n const { onGetCLabAccountStatements, match } = this.props;\n const userId = match.params.id || this.state.user_id;\n \n if (userId) {\n onGetCLabAccountStatements(userId);\n }\n setTimeout(() => {\n // After data is fetched, update the state\n this.setState({\n b2baccountStatements: [],\n isLoading: false,\n });\n }, 500);\n }\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps) {\n const { CorporateProfile } = this.props;\n\n // Check if CorporateProfile has changed\n if (CorporateProfile !== prevProps.CorporateProfile) {\n const payment_terms = CorporateProfile?.payment_terms;\n\n if (payment_terms) {\n console.log(\"Payment Terms after update:\", payment_terms);\n\n // Update the state with the payment_terms\n this.setState({ payment_terms });\n }\n }\n if (prevProps.b2baccountStatements !== this.props.b2baccountStatements) {\n this.setState({ b2baccountStatements: this.props.b2baccountStatements }, () => {\n // Log updated state inside the callback to ensure it reflects the new state\n console.log(\"b2baccountStatements on component did update\", this.state.b2baccountStatements);\n });\n }\n}\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleSelectGroup = selectedGroup => {\n this.setState({ offeredTest: selectedGroup.value });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n test_details: arg.test_details,\n });\n };\n\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n handleOfferedTestClicks = () => {\n this.setState({ offeredTest: \"\", isEdit: false, });\n this.toggle();\n };\n\n\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = cemployeeDatas => {\n this.setState({ cemployeeDatas: cemployeeDatas });\n this.setState({ deleteModal: true });\n };\n\n handleOfferedTestClick = (e, arg) => {\n this.setState({\n offeredTest: {\n id: arg.id,\n name: arg.name,\n employee_code: arg.employee_code,\n limit: arg.limit,\n date: arg.date,\n status: arg.status,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n handleDeletePathologist = () => {\n const { onDeletecedata, onGetEmployeeCorporate } = this.props;\n const { cemployeeDatas } = this.state;\n if (cemployeeDatas.id !== undefined) {\n onDeletecedata(cemployeeDatas);\n setTimeout(() => {\n onGetEmployeeCorporate(this.state.user_id);\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n getColumns() {\n const { payment_terms } = this.state;\n console.log(\"ongetcolums\",this.state.b2baccountStatements);\n\n // Define columns that are always present\n let columns = [\n {\n text: \"ID\",\n dataField: \"id\",\n sort: true,\n formatter: (cellContent, offeredTest) => <>{offeredTest.id},\n filter: textFilter(),\n },\n {\n dataField: \"name\",\n text: \"Name\",\n sort: true,\n style: { textAlign: \"left\" },\n formatter: (cellContent, offeredTest) => (\n {offeredTest.name}\n ),\n filter: textFilter(),\n },\n {\n dataField: \"employee_code\",\n text: \"ID Card No.\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n {offeredTest.employee_code}\n ),\n filter: textFilter(),\n },\n {\n dataField: \"type\",\n text: \"Type\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n {offeredTest.type === \"Family\" ? \"Family and Friends\" : offeredTest.type}\n ),\n filter: selectFilter({\n options: {\n '': 'All',\n 'Employee': 'Employee',\n 'Family': 'Family and Friends',\n },\n defaultValue: 'All',\n }),\n },\n {\n dataField: \"relation\",\n text: \"Relation with Employee\",\n sort: true,\n formatter: (cellContent, offeredTest) => {\n const relation = \n offeredTest.type === \"Employee\" ? (offeredTest.relation || \"Self\") :\n offeredTest.type === \"Family\" ? (offeredTest.relation || \"Family\") :\n \"--\";\n return {relation};\n },\n filter: selectFilter({\n options: {\n '': 'All',\n 'Self': 'Self',\n 'Mother': 'Mother',\n 'Father': 'Father',\n 'Son': 'Son',\n 'Daughter': 'Daughter',\n 'Spouse': 'Spouse',\n 'Sibling': 'Sibling',\n 'Other': 'Other',\n },\n defaultValue: 'All',\n getFilterValue: (filterText, data) => {\n return data.map(item => ({\n ...item,\n relation:\n item.type === \"Employee\" ? (item.relation || \"Self\") :\n item.type === \"Family\" ? (item.relation || \"Family\") :\n item.relation || \"--\",\n }));\n },\n }),\n \n }, \n {\n dataField: \"parent_employee_id\",\n text: \"Parent Employee\",\n style: { textAlign: \"left\" },\n sort: true,\n formatter: (cellContent, offeredTest) => (\n {offeredTest.parent_employee_id || \"--\"}\n ),\n filter: textFilter(),\n },\n ];\n \n // Conditionally add columns based on payment_terms\n if (payment_terms === \"Payment by Coorporate to LH\") {\n columns = [\n ...columns,\n {\n dataField: \"limit\",\n text: \"Quota\",\n style: { textAlign: \"right\" },\n sort: true,\n formatter: (cellContent, offeredTest) => (\n {offeredTest.limit}\n ),\n filter: textFilter(),\n },\n {\n dataField: \"remening_quota\",\n text: \"Remaining Quota\",\n style: { textAlign: \"right\" },\n sort: true,\n formatter: (cellContent, offeredTest) => (\n {offeredTest.remening_quota}\n ),\n filter: textFilter(),\n },\n {\n dataField: \"start_date\",\n text: \"Starting Date\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => {\n if (!paymentCreatedStatus.start_date) {\n return

-

;\n }\n const date = new Date(paymentCreatedStatus.start_date);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2);\n return

{`${day}-${month}-${year}`}

;\n },\n filter: textFilter(),\n },\n {\n dataField: \"date\",\n text: \"Expiry Date\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => {\n if (!paymentCreatedStatus.date) {\n return

-

;\n }\n const date = new Date(paymentCreatedStatus.date);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2);\n return

{`${day}-${month}-${year}`}

;\n },\n filter: textFilter(),\n },\n // Add any other columns that should be conditionally inserted\n ];\n }\n\n // Add the always-present columns at the end\n columns = [\n ...columns,\n {\n dataField: \"status\",\n text: \"Activity Status\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n {offeredTest.status}\n ),\n filter: selectFilter({\n options: {\n '': 'All',\n 'Active': 'Active',\n 'Inactive': 'Inactive',\n },\n defaultValue: 'All',\n }),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, offeredTest) => (\n
\n \n \n this.handleOfferedTestClick(e, offeredTest)}\n >\n \n \n {/* */}\n {console.log(\"offeredTest id:\", offeredTest.id)}\n {console.log(\"b2baccountStatements ids:\", this.props.b2baccountStatements.map(statement => statement.employee_id))}\n\n {!this.props.b2baccountStatements.some(statement => statement.employee_id === offeredTest.id) && ( \n this.onClickDelete(offeredTest)}\n >\n Delete\n \n )}\n\n {/* */}\n
\n ),\n },\n ];\n\n return columns;\n }\n render() {\n const { cemployeeDatas, CorporateProfile,onUpdateCemployee, onGetEmployeeCorporate } = this.props;\n const { deleteModal, selectedcorporate, selectedType, offeredTest, isEdit,isLoading ,b2baccountStatements } = this.state;\n if (isLoading) {\n return
Loading...
;\n }\n const columns = this.getColumns();\n const payment_terms = CorporateProfile?.payment_terms;\n \n const uniqueCorporateNames = [...new Set(cemployeeDatas.map(data => data.status))];\n \n const corporateEmployeeOptions = uniqueCorporateNames.map((EmployeeStatus, index) => (\n \n ));\n \n const filteredStatements = cemployeeDatas.filter((statement) => { const {\n selectedcorporate, selectedType } = this.state;\n const EmployeeFilter = !selectedcorporate || statement.status === selectedcorporate;\n const TypeFilter = !selectedType || statement.type === selectedType;\n return EmployeeFilter && TypeFilter;\n });\n \n const pageOptions = {\n sizePerPage: 10000,\n totalSize: cemployeeDatas.length,\n custom: true,\n };\n \n const defaultSorted = [\n {\n dataField: \"id\",\n order: \"desc\",\n },\n ];\n \n return (\n \n this.setState({ deleteModal: false })}\n />\n
\n \n Employees List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n
\n \n \n Note: The status will initially be set to inactive and can be activated either through the registration process or by the corporate by edit action on this page.\n \n
\n
\n
\n \n \n \n \n \n
\n \n this.setState({ selectedcorporate: e.target.value })}\n className=\"form-control\"\n >\n \n {corporateEmployeeOptions}\n \n
\n \n \n
\n \n this.setState({ selectedType: e.target.value })}\n className=\"form-control\"\n >\n \n \n \n \n
\n \n
\n \n {Array.isArray(b2baccountStatements || []) && b2baccountStatements.length > 0 ? (\n
\n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n\n \n
\n
\n
\n
\n \n\n \n \n {!!isEdit\n ? \"Edit Employee Data\"\n : \"Add Employee Data\"}\n \n \n {\n console.log(\"Form submitted with values:\", values);\n setSubmitting(false);\n\n const updateCemployee =\n {\n id: offeredTest.id,\n name: values.name,\n employee_code:\n values.employee_code,\n status: values.status,\n limit: values.limit,\n date: values.date,\n };\n\n // update PaymentStatus\n onUpdateCemployee(\n updateCemployee\n );\n setTimeout(() => {\n onGetEmployeeCorporate(\n this.state.user_id\n );\n }, 1000);\n this.toggle();\n }}\n >\n {({ errors, status, touched, isValid }) => (\n
\n \n \n \n\n
\n \n \n \n
\n\n
\n \n \n \n
\n {payment_terms === \"Payment by Coorporate to LH\" && (\n <>\n\n
\n \n \n \n
\n
\n \n \n \n
\n )}\n
\n \n \n \n \n \n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n
\n \n
\n
\n )}\n \n )}\n \n
\n ) : (\n
\n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n\n \n
\n
\n
\n
\n \n\n \n \n {!!isEdit\n ? \"Edit Employee Data\"\n : \"Add Employee Data\"}\n \n \n {\n console.log(\"Form submitted with values:\", values);\n setSubmitting(false);\n\n const updateCemployee =\n {\n id: offeredTest.id,\n name: values.name,\n employee_code:\n values.employee_code,\n status: values.status,\n limit: values.limit,\n date: values.date,\n };\n\n // update PaymentStatus\n onUpdateCemployee(\n updateCemployee\n );\n setTimeout(() => {\n onGetEmployeeCorporate(\n this.state.user_id\n );\n }, 1000);\n this.toggle();\n }}\n >\n {({ errors, status, touched, isValid }) => (\n
\n \n \n \n\n
\n \n \n \n
\n\n
\n \n \n \n
\n {payment_terms === \"Payment by Coorporate to LH\" && (\n <>\n\n
\n \n \n \n
\n
\n \n \n \n
\n )}\n
\n \n \n \n \n \n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n \n \n {!!isEdit\n ? \"Edit Employee Data\"\n : \"Add Employee Data\"}\n \n \n {\n console.log(\"Form submitted with values:\", values);\n setSubmitting(false);\n\n const updateCemployee =\n {\n id: offeredTest.id,\n name: values.name,\n employee_code:\n values.employee_code,\n status: values.status,\n limit: values.limit,\n date: values.date,\n };\n\n // update PaymentStatus\n onUpdateCemployee(\n updateCemployee\n );\n setTimeout(() => {\n onGetEmployeeCorporate(\n this.state.user_id\n );\n }, 1000);\n this.toggle();\n }}\n >\n {({ errors, status, touched, isValid }) => (\n
\n \n \n \n\n
\n \n \n \n
\n\n
\n \n \n \n
\n {payment_terms === \"Payment by Coorporate to LH\" && (\n <>\n\n
\n \n \n \n
\n
\n \n \n \n
\n )}\n
\n \n \n \n \n \n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n \n {!!isEdit\n ? \"Edit Employee Data\"\n : \"Add Employee Data\"}\n \n \n {\n console.log(\"Form submitted with values:\", values);\n setSubmitting(false);\n\n const updateCemployee =\n {\n id: offeredTest.id,\n name: values.name,\n employee_code:\n values.employee_code,\n status: values.status,\n limit: values.limit,\n date: values.date,\n };\n\n // update PaymentStatus\n onUpdateCemployee(\n updateCemployee\n );\n setTimeout(() => {\n onGetEmployeeCorporate(\n this.state.user_id\n );\n }, 1000);\n this.toggle();\n }}\n >\n {({ errors, status, touched, isValid }) => (\n
\n \n \n \n\n
\n \n \n \n
\n\n
\n \n \n \n
\n {payment_terms === \"Payment by Coorporate to LH\" && (\n <>\n\n
\n \n \n \n
\n
\n \n \n \n
\n )}\n
\n \n \n \n \n \n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n
\n \n
\n
\n )}\n \n )}\n \n
\n)}\n
\n
\n \n
\n
\n
\n
\n );\n }\n\n} \nOfferedTestsList.propTypes = {\n match: PropTypes.object,\n tests: PropTypes.array,\n labProfiles: PropTypes.array,\n onDeletePaymentout: PropTypes.func,\n cemployeeDatas: PropTypes.array,\n getCorporateProfile: PropTypes.func.isRequired,\n className: PropTypes.any,\n onGetEmployeeCorporate: PropTypes.func,\n b2baccountStatements: PropTypes.array,\n CorporateProfile: PropTypes.object,\n onUpdateCemployee: PropTypes.func,\n onDeletecedata: PropTypes.func,\n payment_terms: PropTypes.string,\n onGetCLabAccountStatements: PropTypes.func,\n};\n\nconst mapStateToProps = ({ cemployeeData,CorporateProfile,b2baccountStatements }) => ({\n cemployeeDatas: cemployeeData.cemployeeDatas,\n CorporateProfile:CorporateProfile.success,\n b2baccountStatements: b2baccountStatements.b2baccountStatements,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetEmployeeCorporate: id => dispatch(getEmployeeCorporate(id)),\n onUpdateCemployee: offeredTest => dispatch(updateCemployee(offeredTest)),\n onDeletecedata: offeredTest => dispatch(deletecedata(offeredTest)),\n getCorporateProfile: (id) => dispatch(getCorporateProfile(id)),\n onGetCLabAccountStatements: (id) => dispatch(getCLabAccountStatements(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(OfferedTestsList));\n","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport * as Yup from \"yup\";\n\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Button,\n Modal,\n ModalBody,\n ModalHeader,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport \"assets/scss/table.scss\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { getCorporateTestsList } from \"store/test-list/actions\";\nimport {\n // getUnits,\n addNewCorporateTest,\n} from \"store/offered-tests/actions\";\n\nclass TestsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n testsList: [],\n offeredTests: [],\n offeredTest: \"\",\n test_id: \"\",\n assignedTo: \"\",\n TestsList: \"\",\n btnText: \"Copy\",\n testsList: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n testsListListColumns: [\n {\n text: \"Test ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n formatter: (cellContent, testsList) => <>{testsList.id},\n },\n {\n dataField: \"name\",\n text: \"Test name\",\n sort: true,\n formatter: (cellContent, testsList) => (\n <>\n \n {testsList.name}\n \n \n ),\n // filter: textFilter(),\n },\n {\n dataField: \"type\",\n text: \"Type\",\n sort: true,\n // formatter: (cellContent, audit) => (\n // <>\n // \n // {new Date(audit.generated_at).toLocaleString(\"en-US\")}\n // \n // \n // ),\n },\n {\n dataField: \"test_categories\",\n text: \"Category\",\n sort: true,\n // formatter: (cellContent, audit) => (\n // <>\n // {new Date(audit.assigned_at).toLocaleString(\"en-US\")}\n // \n // ),\n },\n {\n dataField: \"sample_type\",\n text: \"Sample Type\",\n sort: true,\n // formatter: (cellContent, audit) => (\n // <>\n // {new Date(audit.audited_at).toLocaleString(\"en-US\")}\n // \n // ),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, testsList) => (\n //
\n
\n this.handleOfferedTestClicks(testsList.id)}\n onClick={e => this.handleOfferedTestClicks(e, testsList.id, testsList.name, testsList.sample_type, testsList.average_price)}\n\n // disabled={testsList.length == 0}\n >\n \n Add Test\n \n
\n //
\n ),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.toggleMessageModal.bind(this);\n this.handleOfferedTestClicks = this.handleOfferedTestClicks.bind(this);\n // this.handleApprovedEvent = this.handleApprovedEvent.bind(this);\n }\n\n componentDidMount() {\n const { testsList, ongetCorporateTestsList } = this.props;\n console.log(ongetCorporateTestsList(this.state.user_id));\n this.setState({ testsList });\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n test_details: arg.test_details,\n description_in_english: arg.description_in_english,\n description_in_urdu: arg.description_in_urdu,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n openOtherModal = (e, arg) => {\n this.setState({\n OtherModal: true,\n test_details: arg.test_details,\n description_in_english: arg.description_in_english,\n description_in_urdu: arg.description_in_urdu,\n });\n };\n // handleMouseExit = () => {\n // this.setState({\n // PatientModal: false,\n // OtherModal: false,\n // isHovered: false,\n\n // });\n // };\n toggleOtherModal = () => {\n this.setState(prevState => ({\n OtherModal: !prevState.OtherModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleApprovedEvent = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggle();\n };\n\n toggleMessageModal = () => {\n this.setState(prevState => ({\n messageModal: !prevState.messageModal,\n }));\n };\n\n openMessageModal = (e, arg) => {\n this.setState({ messageModal: true, message: arg.message });\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n handleApprovedEvent = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggle();\n };\n handleOfferedTestClicks = (e, arg1, arg2, arg3, arg4) => {\n console.log(\"data in arg4\", arg4)\n this.setState({\n offeredTest: \"\",\n isEdit: false,\n initialValues: {\n ...this.state.initialValues,\n test_id: arg1, // set the test_id value to arg\n test_name: arg2,\n sample_type: arg3,\n average_price: arg4\n },\n selectedTest: arg1, // store arg in component state\n selectedname: arg2,\n selectedtype: arg3,\n selectedaveragePrice: arg4\n\n });\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n const { isEdit, deleteModal } = this.state;\n const { offeredTests } = this.props;\n const offeredTest = this.state.offeredTest;\n const { testsList } = this.props;\n const data = this.state.data;\n const { onAddNewCorporateTest, ongetCorporateTestsList } = this.props;\n\n const pageOptions = {\n sizePerPage: testsList.length,\n totalSize: testsList.length, // replace later with size(testsList),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n Corporate Medical Tests | Lab Hazir\n \n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n
\n \n \n Note: The Tests, Profile, and Packages previously added in Offered Tests will not be displayed here.\n .\n \n \n
\n \n
\n
\n \n \n
\n
\n\n \n
\n \n \n
\n \n \n \n {!!isEdit\n ? \"Edit Offered Test\"\n : \"Add Offered Test\"}\n \n \n discount > 0,\n // then: Yup.string().required(\n // \"Please select start date\"\n // ),\n // }),\n // end_date: Yup.string(\n // Yup.number()\n // ).when(\"discount\", {\n // is: discount => discount > 0,\n // then: Yup.string().required(\n // \"Please select end date\"\n // ),\n // }),\n\n start_date: Yup.string(\n Yup.number()\n ).required(\n \"Please select start date\"\n ),\n end_date: Yup.string(\n Yup.number()\n ).required(\n \"Please select end date\"\n ),\n })}\n // in onSubmit function\n onSubmit={values => {\n const { isEdit, selectedTest, selectedname, selectedaveragePrice, selectedtype } = this.state; // get isEdit and selectedTest from component state\n if (isEdit) {\n const updateOfferedTest = {\n id: offeredTest.id,\n test_id: selectedTest, // use selectedTest as the test_id value\n test_name: selectedname,\n price: values.price,\n average_price:values.selectedaveragePrice,\n start_date: values.start_date,\n end_date: values.end_date,\n\n };\n } else {\n const newOfferedTest = {\n test_id: selectedTest, // use selectedTest as the test_id value\n \n test_name: selectedname,\n price: values.price,\n start_date: values.start_date,\n end_date: values.end_date,\n };\n onAddNewCorporateTest(newOfferedTest, this.state.user_id);\n setTimeout(() => {\n ongetCorporateTestsList(this.state.user_id);\n }, 1000);\n }\n this.setState({\n selectedOfferedTest: null,\n });\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n
\n \n \n \n
\n\n
\n \n \n \n
\n
\n \n \n \n
\n
\n \n \n \n
\n
\n \n \n
\n\n \n
\n\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n
\n \n
\n {/* \n
\n
\n \n this.setState({\n messageModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
\n
\n
\n
\n
\n \n
\n
\n\n
\n
\n

\n Audit Message\n

\n

\n {this.state.message}\n

\n
\n
\n
\n
\n
\n */}\n {/* \n \n \n \n */}\n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nTestsList.propTypes = {\n match: PropTypes.object,\n testsList: PropTypes.array,\n className: PropTypes.any,\n ongetCorporateTestsList: PropTypes.func,\n onAddNewCorporateTest: PropTypes.func,\n offeredTests: PropTypes.array,\n onAssignAudit: PropTypes.func,\n};\nconst mapStateToProps = ({ tests }) => ({\n testsList: tests.testsList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n ongetCorporateTestsList: id => dispatch(getCorporateTestsList(id)),\n onAddNewCorporateTest: (offeredTest, id) =>\n dispatch(addNewCorporateTest(offeredTest, id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(TestsList));","import {\n GET_TESTS_LIST,\n GET_TESTS_LIST_SUCCESS,\n GET_TESTS_LIST_FAIL,\n GET_CORPORATE_TESTS_LIST,\n GET_CORPORATE_TESTS_LIST_SUCCESS,\n GET_CORPORATE_TESTS_LIST_FAIL,\n} from \"./actionTypes\";\n\nexport const getTestsList = id => ({\n type: GET_TESTS_LIST,\n payload: id,\n});\n\nexport const getTestsListSuccess =\n tests => ({\n type: GET_TESTS_LIST_SUCCESS,\n payload: tests,\n });\n\nexport const getTestsListFail = error => ({\n type: GET_TESTS_LIST_FAIL,\n payload: error,\n});\nexport const getCorporateTestsList = id => ({\n type: GET_CORPORATE_TESTS_LIST,\n payload: id,\n});\n\nexport const getCorporateTestsListSuccess =\n corporatetests => ({\n type: GET_CORPORATE_TESTS_LIST_SUCCESS,\n payload: corporatetests,\n });\n\nexport const getCorporateTestsListFail = error => ({\n type: GET_CORPORATE_TESTS_LIST_FAIL,\n payload: error,\n});\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport axios from \"axios\";\nimport { useParams } from 'react-router-dom'\nimport { withRouter, Link } from \"react-router-dom\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport moment from 'moment';\n\n// import BootstrapSwitchButton from 'bootstrap-switch-button-react'\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n // getUnits,\n getCorporateTests,\n updateCorporateTest,\n deleteOfferedTest,\n} from \"store/offered-tests/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass OfferedTestsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n offeredTests: [],\n tests: [],\n labProfiles: [],\n // units: [],\n offeredTest: \"\",\n type: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n offeredTestListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, offeredTest) => <>{offeredTest.id},\n },\n {\n dataField: \"added_by\",\n text: \"Added On\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.added_by ? (\n moment(offeredTest.added_by).format(\"DD MMM YYYY, h:mm A\")\n ) : (\n \"--\"\n )}\n \n \n ),\n },\n {\n text: \"Test ID\",\n dataField: \"test_id\",\n sort: true,\n formatter: (cellContent, offeredTest) => <>{offeredTest.test_id},\n },\n {\n dataField: \"test_name\",\n text: \"Test Name\",\n sort: true, \n style: { textAlign: 'left' },\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.test_name}\n \n \n ),\n },\n {\n dataField: \"type\",\n text: \"Type\",\n sort: true,\n },\n // {\n // dataField: \"start_date\",\n // text: \"Start Date\",\n // sort: true,\n // },\n {\n dataField: \"start_date\",\n text: \"Start Date\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.start_date ? (\n moment(offeredTest.start_date).format(\"DD MMM YYYY, h:mm A\")\n ) : (\n \"--\"\n )}\n \n \n ),\n },\n {\n dataField: \"end_date\",\n text: \"End Date\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.end_date ? (\n moment(offeredTest.end_date).format(\"DD MMM YYYY, h:mm A\")\n ) : (\n \"--\"\n )}\n \n \n ),\n },\n {\n dataField: \"date_difference\",\n text: \"Duration/ Days\",\n sort: false, // Sorting might not be straightforward with calculated fields\n formatter: (cellContent, offeredTest) => {\n const startDate = moment(offeredTest.start_date);\n const endDate = moment(offeredTest.end_date);\n const duration = endDate.diff(startDate);\n\n // If either date is missing, show \"--\"\n if (!startDate.isValid() || !endDate.isValid()) {\n return \"--\";\n }\n\n // Calculate the difference in days, hours, and minutes\n const days = moment.duration(duration).days();\n const hours = moment.duration(duration).hours();\n const minutes = moment.duration(duration).minutes();\n\n // Format the duration\n let formattedDuration = \"\";\n if (days > 0) formattedDuration += `${days}`;\n // if (hours > 0) formattedDuration += `${hours}h `;\n // formattedDuration += `${minutes}m`;\n\n return {formattedDuration};\n },\n },\n {\n dataField: \"test_status\",\n text: \"Status\",\n sort: true,\n },\n {\n dataField: \"price\",\n text: \"Price\",\n sort: true,\n \n style: { textAlign: 'right' },\n formatter: (cellContent, offeredTest) => (\n <>\n {(\n {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n )}\n \n ),\n\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, offeredTest) => (\n
\n {offeredTest.test_status == \"Expired\" ? (\n \n \n this.handleOfferedTestClick(offeredTest)}\n >\n \n \n ) : null}\n
\n ),\n },\n ],\n };\n this.handleOfferedTestClick = this.handleOfferedTestClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleOfferedTestClicks = this.handleOfferedTestClicks.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n\n componentDidMount() {\n\n const { offeredTests, onGetCorporateTests, } = this.props;\n onGetCorporateTests(this.state.user_id);\n this.setState({ offeredTests });\n console.log(\"state\", offeredTests)\n\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // Select\n handleSelectGroup = selectedGroup => {\n this.setState({ offeredTest: selectedGroup.value });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n test_details: arg.test_details,\n });\n };\n // handleMouseExit = () => {\n // this.setState({\n // PatientModal: false,\n // isHovered: false,\n\n // });\n // };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n handleOfferedTestClicks = () => {\n this.setState({ offeredTest: \"\", isEdit: false, test_id: \"\" });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { offeredTests } = this.props;\n if (\n !isEmpty(offeredTests) &&\n size(prevProps.offeredTests) !== size(offeredTests)\n ) {\n this.setState({ offeredTests: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = offeredTests => {\n this.setState({ offeredTests: offeredTests });\n this.setState({ deleteModal: true });\n };\n\n handleDeleteOfferedTest = () => {\n const { onDeleteOfferedTest, onGetCorporateTests } = this.props;\n const { offeredTests } = this.state;\n if (offeredTests.id !== undefined) {\n onDeleteOfferedTest(offeredTests);\n setTimeout(() => {\n onGetCorporateTests(this.state.user_id);\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n\n handleOfferedTestClick = arg => {\n const offeredTest = arg;\n\n this.setState({\n test_id: offeredTest.test_id,\n offeredTest: {\n id: offeredTest.id,\n test_name: offeredTest.test_name,\n average_price: offeredTest.average_price,\n test_id: offeredTest.test_id,\n price: offeredTest.price,\n start_date: offeredTest.start_date,\n end_date: offeredTest.end_date,\n // is_active:'Yes',\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { offeredTests } = this.props;\n const { tests } = this.props;\n const { labProfiles } = this.props;\n // const { units } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const { onUpdateCorporateTest, onGetCorporateTests, } =\n this.props;\n const offeredTest = this.state.offeredTest;\n\n const pageOptions = {\n sizePerPage: 10000,\n totalSize: offeredTests.length, // replace later with size(offeredTests),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n const testList = [];\n for (let i = 0; i < tests.length; i++) {\n let flag = 0;\n\n // Check if test available in our database is already being offered by lab\n // If yes then don't push it in testList\n for (let j = 0; j < offeredTests.length; j++) {\n if (tests[i].id == offeredTests[j].test_id) {\n flag = 1;\n }\n }\n\n if (!flag) {\n testList.push({\n label: tests[i].name,\n value: tests[i].id,\n });\n }\n }\n\n return (\n \n this.setState({ deleteModal: false })}\n />\n
\n \n Corporate Offered Tests List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n {/*
\n \n Note: If referral fee of any offered test is not entered by Labhazir, all such tests will not be online.\n \n \n
*/}\n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n
\n
\n \n\n
\n\n \n \n
\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n\n \n
\n
\n
\n
\n \n\n \n \n {!!isEdit\n ? \"Edit Offered Test\"\n : \"Add Offered Test\"}\n \n \n {\n if (isEdit) {\n const updateCorporateTest = {\n id: offeredTest.id,\n test_id: parseInt(\n values.test_id\n ),\n price: values.price,\n start_date: values.start_date,\n end_date: values.end_date,\n\n // is_active:\n // values.is_active,\n };\n\n // update OfferedTest\n onUpdateCorporateTest(\n updateCorporateTest,\n this.state.user_id,\n );\n\n setTimeout(() => {\n onGetCorporateTests(\n this.state.user_id\n );\n }, 1000);\n } else {\n // if (!values.unit_id) {\n // values.unit_id = units[0].id;\n // }\n\n const newOfferedTest = {\n id:\n Math.floor(\n Math.random() * (30 - 20)\n ) + 20,\n test_id: this.state.test_id,\n price: values.price,\n start_date: values.start_date,\n end_date: values.end_date,\n\n // is_active:\n // values.is_active,\n };\n\n // save new OfferedTest\n onAddNewOfferedTest(\n newOfferedTest,\n this.state.user_id\n );\n\n setTimeout(() => {\n onGetCorporateTests(\n this.state.user_id\n );\n }, 1000);\n }\n this.setState({\n selectedOfferedTest: null,\n });\n this.toggle();\n }}\n >\n {({ errors, status, values, touched }) => (\n
\n \n \n {/* Make field readonly in case of edit form */}\n {offeredTest.test_id &&\n offeredTest.test_id ? (\n
\n \n \n \n {\n offeredTest.test_name\n }\n \n \n
\n ) : (\n
\n \n {/* */}\n \n this.setState({\n test_id:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.test_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.test_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={testList}\n placeholder=\"Select Test...\"\n />\n\n
\n Please select your test\n
\n
\n )}\n
\n \n \n \n
\n
\n \n \n \n
\n
\n \n \n \n
\n
\n \n \n \n {\n offeredTest.average_price\n }\n \n \n
\n\n \n
\n\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n
\n \n
\n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nOfferedTestsList.propTypes = {\n match: PropTypes.object,\n tests: PropTypes.array,\n labProfiles: PropTypes.array,\n // units: PropTypes.array,\n offeredTests: PropTypes.array,\n className: PropTypes.any,\n onGetCorporateTests: PropTypes.func,\n onDeleteOfferedTest: PropTypes.func,\n onUpdateCorporateTest: PropTypes.func,\n};\n\nconst mapStateToProps = ({ offeredTests }) => ({\n offeredTests: offeredTests.offeredTests,\n tests: offeredTests.tests,\n labProfiles: offeredTests.labProfiles,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n // onGetUnits: () => dispatch(getUnits()),\n onGetCorporateTests: id => dispatch(getCorporateTests(id)),\n onUpdateCorporateTest: offeredTest => dispatch(updateCorporateTest(offeredTest)),\n onDeleteOfferedTest: offeredTest => dispatch(deleteOfferedTest(offeredTest)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(OfferedTestsList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card, CardBody, Col, Button, Table, Container, Label, Row, Modal,\n ModalHeader,\n ModalBody,\n} from \"reactstrap\";\nimport { isEmpty, map } from \"lodash\";\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { getCLabAccountStatements } from \"store/b2b-account-statements/actions\";\nimport \"assets/scss/table.scss\";\nimport { saveAs } from \"file-saver\";\nimport * as XLSX from \"xlsx\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n\nclass AccountStatements extends Component {\n constructor(props) {\n super(props);\n this.state = {\n b2baccountStatements: [],\n b2baccountStatement: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n account_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n selectedCorporate: \"\", // Added state for selected corporate name\n isSettledFilter: \"\",\n };\n this.toggle = this.toggle.bind(this);\n this.toggleLabModal = this.toggleLabModal.bind(this);\n }\n\n handleFilterChange = (isSettledFilter) => {\n this.setState({ isSettledFilter });\n }\n\n componentDidMount() {\n const { onGetCLabAccountStatements, match } = this.props;\n const userId = match.params.id || this.state.user_id;\n \n if (userId) {\n onGetCLabAccountStatements(userId);\n }\n }\n\n toggle() {\n this.setState((prevState) => ({\n modal: !prevState.modal,\n }));\n }\n\n handleCorporateSelect = (selectedCorporate) => {\n this.setState({ selectedCorporate });\n };\n\n getFilteredTotal = (data) => {\n const totalAmount = data.reduce((acc, statement) => acc + statement.amount, 0);\n const totalReceivable = data.reduce((acc, statement) => acc + statement.receivable, 0);\n const totalPayable = data.reduce((acc, statement) => acc + statement.plateform_fees, 0);\n\n return {\n totalAmount,\n totalReceivable,\n totalPayable,\n };\n };\n\n onPaginationPageChange = (page) => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n exportToExcel = () => {\n const { b2baccountStatements } = this.props;\n const fileType = \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\n const fileExtension = \".xlsx\";\n\n // Define fields to export\n const fieldsToExport = [\n \"lab_name\",\n \"order_id\",\n // \"employee_id\",\n \"employee_name\",\n \"appointment_status\",\n \"payment_method\",\n \"payment_status\",\n \"amount\",\n \"receivable\",\n \"plateform_fees\",\n \"is_settled\",\n ];\n\n // Map each row to an object with only the desired fields\n const dataToExport = b2baccountStatements.map(statement => {\n const rowData = {};\n fieldsToExport.forEach(field => {\n rowData[field] = statement[field];\n });\n return rowData;\n });\n\n // Convert data to Excel format and save as file\n const ws = XLSX.utils.json_to_sheet(dataToExport);\n const wb = { Sheets: { data: ws }, SheetNames: [\"data\"] };\n const excelBuffer = XLSX.write(wb, { bookType: \"xlsx\", type: \"array\" });\n const data = new Blob([excelBuffer], { type: fileType });\n const fileName = \"account_statements\" + fileExtension;\n saveAs(data, fileName);\n };\n\n openLabModal = (e, arg) => {\n this.setState({\n LabModal: true,\n\n lab_phone: arg.lab_phone,\n lab_city: arg.lab_city,\n lab_address: arg.lab_address,\n });\n };\n toggleLabModal = () => {\n this.setState(prevState => ({\n LabModal: !prevState.LabModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n render() {\n const { isSettledFilter } = this.state;\n const { SearchBar } = Search;\n\n const { b2baccountStatements } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: b2baccountStatements.length,\n custom: true,\n };\n const uniqueLabNames = [...new Set(b2baccountStatements.map((statement) => statement.lab_name))];\n\n const filteredData = b2baccountStatements.filter(\n (statement) =>\n (!this.state.selectedCorporate || statement.lab_name === this.state.selectedCorporate) &&\n (!this.state.isSettledFilter ||\n (this.state.isSettledFilter === \"true\" ? statement.is_settled === true : statement.is_settled === false))\n );\n\n const filteredTotal = this.getFilteredTotal(filteredData);\n\n return (\n \n
\n \n Appointments Statement | Lab Hazir\n \n \n \n \n \n \n \n
\n \n \n Note: Settled Appointements indicate that payment has been made to both the respective lab where the corporate employee tests were performed and to Lab Hazir.\n.\n \n \n
\n
\n {isEmpty(this.props.b2baccountStatements) && (\n \n \n \n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Employee IDEmployee NameOrder IDLab NameLab TypeAppointment StatusPayment Method/ StatusInvoice ValueLab PayableLabhazir PayableIs Settled
\n
\n
\n
\n \n
\n )}\n {!isEmpty(this.props.b2baccountStatements) && (\n \n \n \n \n
\n {/* Add filter field */}\n \n \n \n Filter by Lab Name:\n \n this.handleCorporateSelect(e.target.value)}\n value={this.state.selectedCorporate}\n >\n \n {uniqueLabNames.map((labName, i) => (\n \n ))}\n \n \n\n \n \n Filter by Is Settled:\n \n this.handleFilterChange(e.target.value)}\n value={this.state.isSettledFilter}\n >\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {b2baccountStatements\n .filter(\n (statement) =>\n (!this.state.selectedCorporate || statement.lab_name === this.state.selectedCorporate) &&\n (!this.state.isSettledFilter ||\n (this.state.isSettledFilter === \"true\" ? statement.is_settled === true : statement.is_settled === false))\n )\n\n .map((b2baccountStatement, i) => (\n <>\n \n \n \n \n \n \n \n \n \n \n \n\n \n \n\n \n \n \n ))} \n \n \n \n \n \n \n \n \n
Employee IDEmployee NameOrder IDLab NameLab TypeAppointment StatusPayment Method/ StatusInvoice ValueLab PayableLabhazir PayableIs Settled
\n
\n {b2baccountStatement.employee_id}\n
\n
\n
\n {b2baccountStatement.employee_name}\n
\n
\n
\n \n {b2baccountStatement.order_id && (\n \n {b2baccountStatement.order_id}\n \n )}\n \n
\n
\n
\n {/* {b2baccountStatement.lab_name} */}\n this.openLabModal(e, b2baccountStatement)}\n onMouseEnter={e => this.openLabModal(e, b2baccountStatement)}\n >\n {b2baccountStatement.lab_name}\n \n
\n
\n
\n {b2baccountStatement.lab_type}\n
\n
\n
\n {b2baccountStatement.appointment_status}\n
\n
\n {/*

*/}\n {b2baccountStatement.payment_status == \"Not Paid\" ? (\n \n {b2baccountStatement.payment_method == \"Cash\" ? (\n \"Patient to Lab\"\n ) :\n {b2baccountStatement.payment_method}},{\" \"}\n {b2baccountStatement.payment_status}\n \n ) : (\n \n {b2baccountStatement.payment_method == \"Cash\" ? (\n \"Patient to Lab\"\n ) :\n {b2baccountStatement.payment_method}},{\" \"}\n {b2baccountStatement.payment_status}\n \n )}\n {/*

*/}\n
\n {b2baccountStatement.amount == 0 ? (\n

\n {b2baccountStatement.amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {b2baccountStatement.amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n {b2baccountStatement.receivable == 0 ? (\n

\n ---\n

\n\n ) : (\n

\n {b2baccountStatement.receivable.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n {b2baccountStatement.plateform_fees == 0 ? (\n

\n ---\n

\n\n ) : (\n

\n {parseInt(b2baccountStatement.plateform_fees).toString()}\n

\n )}\n\n
\n {b2baccountStatement.is_settled == true ? (\n
\n \n
\n ) : (\n
\n \n
\n )}\n\n
\n Total\n \n

\n {filteredTotal.totalAmount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n

\n {filteredTotal.totalReceivable.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n

\n {filteredTotal.totalPayable.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n \n \n Lab Details: \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n
\n \n
\n )}\n
\n
\n
\n );\n }\n}\n\nAccountStatements.propTypes = {\n match: PropTypes.object,\n b2baccountStatements: PropTypes.array,\n className: PropTypes.any,\n onGetCLabAccountStatements: PropTypes.func,\n};\n\nconst mapStateToProps = ({ b2baccountStatements }) => ({\n b2baccountStatements: b2baccountStatements.b2baccountStatements,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetCLabAccountStatements: (id) => dispatch(getCLabAccountStatements(id)),\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(withRouter(AccountStatements));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport axios from \"axios\";\nimport { useParams } from 'react-router-dom'\nimport { withRouter, Link } from \"react-router-dom\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport filterFactory, { textFilter ,selectFilter} from 'react-bootstrap-table2-filter';\n\n// import BootstrapSwitchButton from 'bootstrap-switch-button-react'\nimport {\n FormGroup,\n Card,\n Input,\n CardBody,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\nimport {\n // getUnits,\n getLabsCorporate,\n updateCemployee,\n} from \"store/corporatedata/actions\";\n\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass OfferedTestsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n cemployeeDatas: [],\n tests: [],\n labProfiles: [],\n // units: [],\n offeredTest: \"\",\n type: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n offeredTestListColumns: [\n {\n text: \"Id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, offeredTest) => <>{offeredTest.id},\n },\n // {\n // dataField: \"lab_name\",\n // text: \"Lab Name\",\n // sort: true,\n // formatter: (cellContent, offeredTest) => (\n // <>\n //

\n // {offeredTest.lab_name}\n //

\n // \n // ), filter: textFilter(),\n // },\n {\n dataField: \"lab_name\",\n text: \"Lab Name\",\n sort: true,\n headerFormatter: (column, colIndex, { sortElement, filterElement }) => {\n return (\n
\n {filterElement}\n
\n {column.text} {sortElement}\n
\n
\n );\n },\n formatter: (cellContent, offeredTest) => (\n <>\n \n

\n {offeredTest.lab_name}\n

\n
\n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"lab_type\",\n text: \"Lab Type\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.lab_type}\n \n \n ), filter: textFilter(),\n },\n {\n dataField: \"lab_phone\",\n text: \"Phone\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.lab_phone}\n \n \n ), filter: textFilter(),\n },\n {\n dataField: \"lab_email\",\n text: \"Email\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.lab_email}\n \n \n ), filter: textFilter(),\n },\n {\n dataField: \"lab_city\",\n text: \"City\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.lab_city}\n \n \n ), filter: textFilter(),\n },\n // {\n // dataField: \"lab_address\",\n // text: \"Address\",\n // sort: true,\n // formatter: (cellContent, offeredTest) => (\n // <>\n // \n // \n // {offeredTest.lab_address}\n // \n // \n // ), filter: textFilter(),\n // },\n {\n dataField: \"lab_address\",\n text: \"Address\",\n sort: true,\n headerFormatter: (column, colIndex, { sortElement, filterElement }) => {\n return (\n
\n {filterElement}\n
\n {column.text} {sortElement}\n
\n
\n );\n },\n formatter: (cellContent, offeredTest) => (\n <>\n \n

\n {offeredTest.lab_address}\n

\n
\n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"Status\",\n text: \"Status\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.Status}\n \n \n ), filter: selectFilter({\n options: {\n '': 'All',\n 'Accept': 'Accept',\n 'Renew': 'Renew',\n 'Complete': 'Complete',\n },\n defaultValue: 'All',\n }),\n },\n\n // {\n // dataField: \"menu\",\n // isDummyField: true,\n // editable: false,\n // text: \"Action\",\n // formatter: (cellContent, offeredTest) => (\n //
\n // \n // \n // this.handleOfferedTestClick(e, offeredTest)}\n // >\n // \n // \n //
\n // ),\n // },\n ],\n };\n this.handleOfferedTestClick = this.handleOfferedTestClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleOfferedTestClicks = this.handleOfferedTestClicks.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n\n componentDidMount() {\n\n const { cemployeeDatas, onGetLabsCorporate, } = this.props;\n onGetLabsCorporate(this.state.user_id);\n this.setState({ cemployeeDatas });\n console.log(\"state\", cemployeeDatas)\n\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // Select\n handleSelectGroup = selectedGroup => {\n this.setState({ offeredTest: selectedGroup.value });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n test_details: arg.test_details,\n });\n };\n // handleMouseExit = () => {\n // this.setState({\n // PatientModal: false,\n // isHovered: false,\n\n // });\n // };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n handleOfferedTestClicks = () => {\n this.setState({ offeredTest: \"\", isEdit: false, });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { cemployeeDatas } = this.props;\n if (\n !isEmpty(cemployeeDatas) &&\n size(prevProps.cemployeeDatas) !== size(cemployeeDatas)\n ) {\n this.setState({ cemployeeDatas: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = cemployeeDatas => {\n this.setState({ cemployeeDatas: cemployeeDatas });\n this.setState({ deleteModal: true });\n };\n\n handleOfferedTestClick = (e, arg) => {\n this.setState({\n offeredTest: {\n id: arg.id,\n name: arg.name,\n employee_code: arg.employee_code,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n // handleSaveButtonClick = () => {\n // // Your other logic...\n \n // const { offeredTest } = this.state;\n \n // const updateCemployee = {\n // id: offeredTest.id,\n // name: this.state.name,\n // employee_code: this.state.employee_code,\n // };\n \n // // Dispatch the action\n // this.props.onUpdateCemployee(updateCemployee);\n \n // // Optionally, you can handle the asynchronous behavior here\n // // For example, use a promise or callback function\n // setTimeout(() => {\n // this.props.onGetLabsCorporate(\n // this.state.user_id\n // );\n // }, 1000);\n \n // // Close the modal or perform other actions as needed\n // this.toggle();\n // };\n\n render() {\n const { SearchBar } = Search;\n\n const { cemployeeDatas } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const { onUpdateCemployee, onGetLabsCorporate, } =\n this.props;\n const offeredTest = this.state.offeredTest;\n\n const pageOptions = {\n sizePerPage: 10000,\n totalSize: cemployeeDatas.length, // replace later with size(cemployeeDatas),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n Labs List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n
\n \n Note: The labs listed here has accepted the corporate pricing for all required tests.\n \n \n
\n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n {/* \n \n
\n
\n \n \n
\n
\n \n\n
*/}\n\n \n \n
\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n\n \n
\n
\n
\n
\n \n\n \n \n {!!isEdit\n ? \"Edit Employee Data\"\n : \"Add Employee Data\"}\n \n \n {\n console.log(\"Form submitted with values:\", values);\n setSubmitting(false);\n\n const updateCemployee =\n {\n id: offeredTest.id,\n name: values.name,\n employee_code:\n values.employee_code,\n };\n\n // update PaymentStatus\n onUpdateCemployee(\n updateCemployee\n );\n setTimeout(() => {\n onGetLabsCorporate(\n this.state.user_id\n );\n }, 1000);\n this.toggle();\n }}\n >\n {({ errors, status, touched, isValid }) => (\n
\n \n \n \n\n
\n \n Employee Name\n \n *\n \n \n {this.setState({\n offeredTest: {\n id: offeredTest.id,\n employee_code:\n offeredTest.employee_code,\n name:\n e.target.value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.name &&\n touched.name\n ? \" is-invalid\"\n : \"\")\n } \n />\n
\n\n
\n \n Employee Code\n \n *\n \n \n {\n this.setState({\n offeredTest: {\n id: offeredTest.id,\n name:\n offeredTest.name,\n employee_code:\n e.target.value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.employee_code &&\n touched.employee_code\n ? \" is-invalid\"\n : \"\")\n } \n />\n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n
\n \n
\n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nOfferedTestsList.propTypes = {\n match: PropTypes.object,\n tests: PropTypes.array,\n labProfiles: PropTypes.array,\n // units: PropTypes.array,\n cemployeeDatas: PropTypes.array,\n className: PropTypes.any,\n onGetLabsCorporate: PropTypes.func,\n onUpdateCemployee: PropTypes.func,\n};\n\nconst mapStateToProps = ({ cemployeeData }) => ({\n cemployeeDatas: cemployeeData.cemployeeDatas,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetLabsCorporate: id => dispatch(getLabsCorporate(id)),\n onUpdateCemployee: offeredTest => dispatch(updateCemployee(offeredTest)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(OfferedTestsList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\n\nimport {\n Container,\n Row,\n Col,\n Table,\n Input,\n Nav,\n NavItem,\n NavLink,\n TabContent,\n TabPane,\n Card,\n FormGroup,\n Label,\n CardBody,\n CardTitle,\n Alert,\n} from \"reactstrap\";\n\nimport classnames from \"classnames\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport {\n getLabsc,\n getListDonationAppointment,\n addNewCorporatePayment,\n getCorporateProfileforpayment\n} from \"store/outpayments/actions\";\n// import { getCorporateProfile } from \"store/auth/staffprofile/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport ConfirmModal from \"components/Common/ConfirmModal\";\nimport \"assets/scss/table.scss\";\n\nclass OutPaymentsForm extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n outPayments: [],\n corporateProfiles: [],\n outPayment: \"\",\n modal: false,\n addmodal: false,\n confirmModal: false,\n id: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n payment_for: \"\",\n lab_id: \"\",\n test_appointment_id: \"\",\n current_amount: \"\",\n // invoice_id: \"\",\n // bankaccount_id: \"\",\n // bank_id: \"\",\n originalAmount: 0, // Initialize originalAmount\n\n amount: \"\",\n tax: \"\",\n payment_at: \"\",\n payment_method: \"Cheque\",\n cheque_no: \"\",\n cheque_image: \"\",\n // cleared_at: \"\",\n // is_cleared: \"\",\n payment_status: \"\",\n comments: \"\",\n checkedoutData: \"\",\n successMessage: \"\",\n // transection_type: \"Other\",\n amountExceedsLimit: false,\n selectedOption: null,\n selectedAmount: 0, // Initialize with 0, it will be updated later\n };\n // this.toggleTab = this.toggleTab.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleSelectGroup = this.handleSelectGroup.bind(this);\n }\n\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n handleSubmitClicks = () => {\n this.setState({\n outPayment: {\n payment_for: this.state.payment_for,\n // transection_type: this.state.transection_type,\n lab_id: this.state.lab_id,\n test_appointment_id: this.state.test_appointment_id,\n // b2b_id: this.state.b2b_id,\n tax: this.state.tax,\n // bankaccount_id: this.state.bankaccount_id,\n amount: this.state.amount,\n payment_method: this.state.payment_method,\n payment_at: this.state.payment_at,\n cheque_no: this.state.cheque_no,\n cheque_image: this.state.cheque_image,\n // is_cleared: this.state.is_cleared,\n payment_status: \"Submit\",\n comments: this.state.comments,\n },\n });\n\n // API call to create a new outPayment record\n const { onAddNewCorporatePayment } = this.props;\n setTimeout(() => {\n console.log(\n onAddNewCorporatePayment(this.state.outPayment, this.state.user_id)\n );\n }, 1000);\n setTimeout(() => {\n this.props.history.push(\"/corporate-payment-form-status\");\n }, 2000)\n };\n\n\n\n handleProceedClick = () => {\n this.setState({\n outPayment: {\n payment_for: this.state.payment_for,\n lab_id: this.state.lab_id,\n test_appointment_id: this.state.test_appointment_id,\n amount: this.state.amount,\n tax: this.state.tax,\n payment_method: this.state.payment_method,\n payment_at: this.state.payment_at,\n cheque_no: this.state.cheque_no,\n cheque_image: this.state.cheque_image,\n payment_status: \"Created\",\n comments: this.state.comments,\n },\n });\n\n // API call to get the checkout items\n const { onAddNewCorporatePayment } = this.props;\n setTimeout(() => {\n console.log(\n onAddNewCorporatePayment(this.state.outPayment, this.state.user_id)\n\n );\n window.scrollTo({ top: 0, left: 0, behavior: 'smooth' });\n }, 2000);\n\n setTimeout(() => {\n this.props.history.push(\"/corporate-payment-form-status\");\n // window.location.reload()\n\n }, 2000)\n };\n\n componentDidMount() {\n const { corporateProfiles, onGetCorporateProfileforpayment } = this.props;\n onGetCorporateProfileforpayment(this.state.user_id);\n this.setState({\n corporateProfiles\n });\n console.log(\"state\", corporateProfiles)\n\n // const { labsMof, onGetLabsc } = this.props;\n // if (labsMof && !labsMof.length) {\n // onGetLabsc(this.state.user_id);\n // }\n // this.setState({ labsMof });\n\n const { labsMof, onGetLabsc, } = this.props;\n onGetLabsc(this.state.user_id);\n this.setState({ labsMof });\n console.log(\"state\", labsMof)\n\n const { listDonation, onGetListDonationAppointment } = this.props;\n if (listDonation && !listDonation.length) {\n onGetListDonationAppointment();\n }\n this.setState({ listDonation });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // Select\n handleSelectGroup = selectedGroup => {\n this.setState({ outPayment: selectedGroup.value });\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { outPayments } = this.props;\n if (\n !isEmpty(outPayments) &&\n size(prevProps.outPayments) !== size(outPayments)\n ) {\n this.setState({ outPayments: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n handleAmountChange = e => {\n const enteredAmount = parseFloat(e.target.value);\n\n if (!isNaN(enteredAmount)) {\n const absoluteSelectedAmount = Math.abs(this.state.selectedAmount);\n\n if (enteredAmount <= absoluteSelectedAmount && enteredAmount >= -absoluteSelectedAmount) {\n // If the entered amount is within the limit, update the state with the absolute value\n this.setState({\n amount: Math.abs(enteredAmount),\n amountExceedsLimit: false,\n });\n } else {\n // If the entered amount exceeds the limit, display a warning\n this.setState({\n amountExceedsLimit: true,\n });\n }\n } else {\n // If the entered amount is not a valid number, reset the state\n this.setState({\n amount: '',\n amountExceedsLimit: false,\n });\n }\n };\n\n handleTaxChange = e => {\n const enteredTax = parseFloat(e.target.value);\n const totalAmount = parseFloat(this.state.selectedAmount); // Get the total amount from state\n\n if (!isNaN(enteredTax)) {\n if (enteredTax <= totalAmount) {\n // Calculate the new amount by subtracting the tax from the total amount\n const newAmount = totalAmount - enteredTax;\n\n // Update the state with the new calculated value, and ensure it's rounded to two decimal places\n this.setState({\n tax: enteredTax,\n amount: Math.round(newAmount * 100) / 100, // Round to two decimal places\n amountExceedsLimit: false, // Reset the flag\n taxInputError: false, // Reset the tax input error flag\n });\n } else {\n // If the entered tax exceeds the total amount, set the tax input error flag\n this.setState({\n taxInputError: true,\n });\n }\n } else {\n // If the entered tax is not a valid number or is cleared, set the amount to the total amount\n this.setState({\n tax: '',\n amount: totalAmount, // Set the amount to the total amount without subtracting tax\n amountExceedsLimit: false, // Reset the flag\n taxInputError: false, // Reset the tax input error flag\n });\n }\n };\n\n\n\n\n render() {\n const { SearchBar } = Search;\n // const isDonation = this.state.transection_type === \"Donation\";\n const { outPayments } = this.props;\n const { labsMof } = this.props;\n const { listDonation } = this.props;\n const { corporateProfiles } = this.props;\n\n\n // const { units } = this.props;\n\n const { onAddNewCorporatePayment, onGetCorporateProfileforpayment } =\n this.props;\n const outPayment = this.state.outPayment;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: outPayments.length, // replace later with size(outPayments),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n // const labList = [];\n\n // for (let i = 0; i < labsMof.length; i++) {\n // // if (labsMof[i].office === this.props.corporateProfiles.territory_office && labsMof[i].current_amount < 0) {\n // // const formattedAmount = Math.abs(labsMof[i].current_amount); // Use Math.abs to get the absolute (positive) value\n // labList.push({\n // label: `${labsMof[i].name} - ${labsMof[i].type} - ${labsMof[i].city}`,\n // label1: `${labsMof[i].name}`,\n // value: labsMof[i].id,\n // // data: { dues: labsMof[i].current_amount }, // Include the 'dues' property in the data field\n // });\n // // }\n // }\n\n const donationlabList = [];\n for (let i = 0; i < labsMof.length; i++) {\n // if ((labsMof[i].office === this.props.corporateProfiles.territory_office) && (labsMof[i].donation_amount > 0)) {\n donationlabList.push({\n label: `${labsMof[i].name} - ${labsMof[i].type} - ${labsMof[i].city}`,\n label1: `${labsMof[i].name}`,\n label2: `${labsMof[i].account_id}`,\n value: labsMof[i].lab_id,\n // data: { dues: labsMof[i].donation_amount }, // Include the 'dues' property in the data field\n });\n // }\n }\n // .filter(\n // labslist =>\n // labslist.type == \"Main Lab\"\n // )\n // .map(labslist => ({\n // label: `(Lab Name: ${labslist.name}) - (Type: ${labslist.type}) - (City: ${labslist.city})`,\n // label1: `${labslist.name}`,\n // label2: `${labslist.account_id}`,\n // value: labslist.lab_id,\n // // data: { dues: labslist.dues },\n // }));\n\n // Assuming you have a state variable to store the selected lab id (this.state.selectedLabId)\n const selectedLab = donationlabList.find(lab => lab.value === this.state.lab_id);\n\n // const DonationAppointmentList = [];\n // for (let i = 0; i < listDonation.length; i++) {\n // let flag = 0;\n // // for (let j = 0; j < outPayments.length; j++) {\n // // if (listDonation[i].id == outPayments[j].lab_id) {\n // // flag = 1;\n // // }\n // // }\n // if (!flag) {\n // DonationAppointmentList.push({\n // label: listDonation[i].id,\n // value: listDonation[i].id,\n // });\n // }\n // }\n let DonationAppointmentList = listDonation\n .filter(\n donation => {\n const corporationId = String(donation.corporation);\n const profileId = String(this.props.corporateProfiles.id);\n \n // Check conditions\n const isFeesValid = donation.plateform_fees > 0 && donation.plateform_fees !== undefined;\n const isCorporationValid = corporationId === profileId;\n const isPaymentStatusValid = donation.payment_status === \"Allocate\";\n const hasDues = donation.dues !== undefined;\n const hasValidLabNameOrBranch = donation.lab_name === (selectedLab ? selectedLab.label1 : null) || \n donation.mainbranch === (selectedLab ? selectedLab.label2 : null);\n \n \n // Perform filtering based on all conditions\n return (\n isFeesValid &&\n isCorporationValid &&\n isPaymentStatusValid &&\n donation.corporation != null &&\n donation.status == \"Result Uploaded\" &&\n hasDues &&\n hasValidLabNameOrBranch\n );\n }\n )\n .map(donation => ({\n label: `(Appointment ID: ${donation.order_id}) - (Amount: ${donation.dues})`,\n value: donation.id,\n data: { dues: donation.dues },\n }));\n\n // Add \"All\" option if there are appointments available\n if (DonationAppointmentList.length > 0) {\n DonationAppointmentList.unshift({ label: \"All Appointments\", value: \"all\" });\n }\n\n // Filter out \"All Appointments\" from the labels\n const labelsToShow = DonationAppointmentList\n .filter(option => option.value !== \"all\")\n .map(option => option.label);\n\n // const DonationAppointmentList = [];\n // for (let i = 0; i < listDonation.length; i++) {\n // if (listDonation[i].status === \"Result Uploaded\" && listDonation[i].payment_method === \"Donation\" && listDonation[i].payment_status === \"Allocate\") {\n // if (listDonation[i].lab_office === this.props.corporateProfiles.territory_office) {\n // DonationAppointmentList.push({\n // label: `${listDonation[i].id} - ${listDonation[i].lab_name} - ${listDonation[i].lab_type} - ${listDonation[i].lab_city}`,\n // value: `${listDonation[i].id}`,\n // });\n // }\n // }\n // }\n const CardAppointmentList = listDonation\n .filter(\n donation =>{\n const corporationId = String(donation.corporation);\n const profileId = String(this.props.corporateProfiles.id);\n\n const isFeesValid = donation.plateform_fees > 0 && donation.plateform_fees !== undefined;\n const isCorporationValid = corporationId === profileId;\n return (isFeesValid && isCorporationValid &&\n donation.status == \"Result Uploaded\");\n}\n )\n .map(donation => ({\n label: `(Appointment ID: ${donation.order_id}) - (Plateform charges: ${donation.plateform_fees})`,\n value: donation.id,\n data: { plateform_fees: donation.plateform_fees }, // Include the 'dues' property in the data field\n }));\n\n if (CardAppointmentList.length > 0) {\n CardAppointmentList.unshift({ label: \"All Appointments\", value: \"all\" });\n }\n // Filter out \"All Appointments\" from the labels\n const labelsToShow2 = CardAppointmentList\n .filter(option => option.value !== \"all\")\n .map(option => option.label);\n\n // const CardAppointmentList = [];\n // for (let i = 0; i < listDonation.length; i++) {\n // if (listDonation[i].status === \"Result Uploaded\" && listDonation[i].payment_method === \"Card\" && listDonation[i].payment_status === \"Submit\" && listDonation[i].is_settled == false) {\n // if (listDonation[i].lab_office === this.props.corporateProfiles.territory_office) {\n // CardAppointmentList.push({\n // label: `${listDonation[i].id} - ${listDonation[i].lab_name} - ${listDonation[i].lab_type} - ${listDonation[i].lab_city}`,\n // value: `${listDonation[i].id}`,\n // });\n // }\n // }\n // }\n\n return (\n \n
\n \n Payment Form | Lab Hazir - Dashboard\n \n \n \n \n
\n {this.state.successMessage &&
{this.state.successMessage}
}\n
\n \n Note: Make Payment for Lab or Labhazir.\n \n \n

\n
\n \n\n \n \n \n \n \n
\n \n \n \n this.setState({\n payment_for: e.target.value,\n })\n }\n defaultValue={this.state.payment_for}\n className=\"form-select\"\n >\n \n --- Please select the Type\n ---\n \n \n \n \n\n \n\n {this.state.payment_for == \"Lab\" ? (\n outPayment.lab_id ? (\n
\n \n \n \n {\n outPayment.lab_name\n }\n \n \n
\n ) : (\n
\n \n \n this.setState({\n lab_id:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.lab_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.lab_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={donationlabList}\n placeholder=\"Select Lab...\"\n />\n\n
\n Please select your Lab\n
\n
)\n ) : null}\n {this.state.payment_for == \"Labhazir\" ? (\n
\n \n {\n const selectedValues = selectedGroup.map(option => option.value);\n if (selectedValues.includes(\"all\")) {\n // If \"All Appointments\" option is selected, select all appointments\n const allAppointmentIds = CardAppointmentList\n .filter(option => option.value !== \"all\")\n .map(option => option.value);\n this.setState({ test_appointment_id: allAppointmentIds });\n\n const selectedData = CardAppointmentList\n .filter(option => option.value !== \"all\")\n .map(option => option.data || {});\n const totalAmount = selectedData.reduce(\n (total, appointment) => total + (parseFloat(appointment.plateform_fees) || 0),\n 0\n );\n this.setState({\n selectedAmount: totalAmount,\n amountExceedsLimit: false,\n });\n\n // Auto-set the amount field\n this.setState({ amount: totalAmount || '0' });\n console.log(\"amount arahi h yah nahi\", selectedData, totalAmount);\n } else {\n this.setState({ test_appointment_id: selectedValues });\n\n const selectedData = selectedGroup.map(option => option.data || {});\n const totalAmount = selectedData.reduce(\n (total, appointment) => total + (parseFloat(appointment.plateform_fees) || 0),\n 0\n );\n this.setState({\n selectedAmount: totalAmount,\n amountExceedsLimit: false,\n });\n\n // Auto-set the amount field\n this.setState({ amount: totalAmount || '0' });\n console.log(\"amount arahi h yah nahi\", selectedData, totalAmount);\n }\n }}\n className={\n \"defautSelectParent\" +\n (!this.state.test_appointment_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.test_appointment_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={CardAppointmentList}\n placeholder=\"Select Appointment...\"\n />\n\n
\n Please select Appointment\n
\n
\n ) : null}\n {this.state.payment_for === \"Lab\" && (\n
\n \n {\n const selectedValues = selectedGroup.map(option => option.value);\n if (selectedValues.includes(\"all\")) {\n // If \"All Appointments\" option is selected, select all appointments\n const allAppointmentIds = DonationAppointmentList\n .filter(option => option.value !== \"all\")\n .map(option => option.value);\n this.setState({ test_appointment_id: allAppointmentIds });\n\n const selectedData = DonationAppointmentList\n .filter(option => option.value !== \"all\")\n .map(option => option.data || {});\n const totalAmount = selectedData.reduce(\n (total, appointment) => total + (parseFloat(appointment.dues) || 0),\n 0\n );\n this.setState({\n selectedAmount: totalAmount,\n amountExceedsLimit: false,\n });\n\n // Auto-set the amount field\n this.setState({ amount: totalAmount || '0' });\n console.log(\"amount arahi h yah nahi\", selectedData, totalAmount);\n } else {\n this.setState({ test_appointment_id: selectedValues });\n\n const selectedData = selectedGroup.map(option => option.data || {});\n const totalAmount = selectedData.reduce(\n (total, appointment) => total + (parseFloat(appointment.dues) || 0),\n 0\n );\n this.setState({\n selectedAmount: totalAmount,\n amountExceedsLimit: false,\n });\n\n // Auto-set the amount field\n this.setState({ amount: totalAmount || '0' });\n console.log(\"amount arahi h yah nahi\", selectedData, totalAmount);\n }\n }}\n className={\n \"defautSelectParent\" +\n (!this.state.test_appointment_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.test_appointment_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={DonationAppointmentList}\n placeholder=\"Select Appointment...\"\n />\n\n
\n Please select Appointment\n
\n
\n )}\n\n\n \n \n this.handleAmountChange(e)}\n />\n {this.state.amountExceedsLimit && (\n \n Warning: The entered amount cannot exceed the Lab Payable Amount.\n \n )}\n \n\n\n \n \n \n {this.state.taxInputError && (\n
\n Tax amount cannot exceed the total amount.\n
\n )}\n
\n\n\n \n \n \n this.setState({\n payment_method: e.target.value,\n })\n }\n defaultValue={this.state.payment_method}\n className=\"form-select\"\n >\n \n --- Please select the Payment Type\n ---\n \n \n \n\n \n \n\n \n \n \n this.setState({\n cheque_no: e.target.value,\n })\n }\n />\n \n\n \n \n \n this.setState({\n payment_at:\n e.target.value,\n })\n }\n />\n \n \n \n {\n this.setState({\n cheque_image:\n e.target.files[0],\n });\n }}\n // className=\"form-control is-invalid\"\n className={\n \"form-control\" +\n (this.state.cheque_image.length >\n 0 && !this.state.cheque_image\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n \n \n \n this.setState({\n comments: e.target.value,\n })\n }\n />\n \n\n \n \n \n \n
\n \n Created{\" \"}\n \n
\n \n \n \n \n Submit\n \n \n
\n\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n );\n }\n}\n\nOutPaymentsForm.propTypes = {\n match: PropTypes.object,\n labsMof: PropTypes.array,\n listDonation: PropTypes.array,\n history: PropTypes.object,\n // units: PropTypes.array,\n outPayments: PropTypes.array,\n className: PropTypes.any,\n onGetLabsc: PropTypes.func,\n onGetListDonationAppointment: PropTypes.func,\n // onGetUnits: PropTypes.func,\n onAddNewCorporatePayment: PropTypes.func,\n onGetCorporateProfileforpayment: PropTypes.func,\n corporateProfiles: PropTypes.func,\n\n};\n\nconst mapStateToProps = ({ outPayments }) => ({\n outPayments: outPayments.outPayments,\n labsMof: outPayments.labsMof,\n listDonation: outPayments.listDonation,\n corporateProfiles: outPayments.corporateProfiles,\n\n // units: outPayments.units,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetLabsc: id => dispatch(getLabsc(id)),\n onGetListDonationAppointment: () => dispatch(getListDonationAppointment()),\n onAddNewCorporatePayment: (outPayment, id) =>\n dispatch(addNewCorporatePayment(outPayment, id)),\n onGetCorporateProfileforpayment: id => dispatch(getCorporateProfileforpayment(id)),\n\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(OutPaymentsForm)); ","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport Select from \"react-select\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\nimport {\n getCCreatedOutStatuss,\n updatePaymentInBouncedStatus,\n updatePaymentOutCCreatedStatuss,\n getBankAccounts,\n deletePaymentout,\n\n} from \"store/payment-statuss/actions\";\n\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass PaymentStatussList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n paymentStatuss: [],\n paymentCreatedStatus: \"\",\n modal: false,\n payment_status: \"\",\n selectedcorporate: null,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n\n };\n this.handleCreateClick = this.handleCreateClick.bind(this);\n this.handleSubmitClick = this.handleSubmitClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n\n }\n // The code for converting \"image source\" (url) to \"Base64\"\n toDataURL = url =>\n fetch(url)\n .then(response => response.blob())\n .then(\n blob =>\n new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.onerror = reject;\n reader.readAsDataURL(blob);\n })\n );\n\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n componentDidMount() {\n\n const { bankAccounts, onGetbankAccounts } = this.props;\n if (bankAccounts && !bankAccounts.length) {\n onGetbankAccounts();\n }\n this.setState({ bankAccounts });\n\n const { paymentStatuss, onGetCCreatedOutStatuss } = this.props;\n onGetCCreatedOutStatuss(this.state.user_id);\n this.setState({ paymentStatuss });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handlePaymentStatusClicks = () => {\n this.setState({\n paymentCreatedStatus: \"\",\n deposit_slip: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { paymentStatuss } = this.props;\n if (\n !isEmpty(paymentStatuss) &&\n size(prevProps.paymentStatuss) !== size(paymentStatuss)\n ) {\n this.setState({ paymentStatuss: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n \n onClickDelete = paymentStatuss => {\n this.setState({ paymentStatuss: paymentStatuss });\n this.setState({ deleteModal: true });\n };\n handleDeletePathologist = () => {\n const { onDeletePaymentout, onGetCCreatedOutStatuss} = this.props;\n const { paymentStatuss } = this.state;\n if (paymentStatuss.id !== undefined) {\n onDeletePaymentout(paymentStatuss);\n setTimeout(() => {\n onGetCCreatedOutStatuss(this.state.user_id);\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n\n handlePaymentStatusClick = (e, arg) => {\n this.setState({\n paymentCreatedStatus: {\n id: arg.id,\n verified_by: arg.verified_by,\n bankaccount_id: arg.bankaccount_id,\n deposit_slip: arg.deposit_slip,\n payment_for: arg.payment_for,\n payment_status: \"Pending Clearance\",\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n handleSubmitClick = (e, arg) => {\n const paymentCreatedStatus = arg;\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n cheque_image: process.env.REACT_APP_BACKENDURL + paymentCreatedStatus.cheque_image,\n payment_for: paymentCreatedStatus.payment_for,\n test_appointment_id: paymentCreatedStatus.test_appointment_id,\n tax: paymentCreatedStatus.tax,\n lab_id: paymentCreatedStatus.lab_id,\n amount: paymentCreatedStatus.amount,\n payment_at: paymentCreatedStatus.payment_at,\n payment_method: paymentCreatedStatus.payment_method,\n cheque_no: paymentCreatedStatus.cheque_no,\n payment_status: \"Submit\",\n comments: paymentCreatedStatus.comments,\n },\n cheque_image: \"\",\n isEdit: true,\n });\n \n this.toggle();\n };\n handleSelectChange = (event) => {\n const selectedValue = event.target.value;\n // Perform navigation based on the selected value\n if (selectedValue === 'Created') {\n this.props.history.push('/payment-status');\n }\n if (selectedValue === 'Pending Clearence') {\n this.props.history.push('/payment-in-pending-clearence-status');\n }\n if (selectedValue === 'Cleared') {\n this.props.history.push('/clear-status');\n }\n if (selectedValue === 'Bounced') {\n this.props.history.push('/bounced-status');\n }\n }\n handleCreateClick = (e, arg) => {\n const paymentCreatedStatus = arg;\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n cheque_image: process.env.REACT_APP_BACKENDURL + paymentCreatedStatus.cheque_image,\n payment_for: paymentCreatedStatus.payment_for,\n test_appointment_id: paymentCreatedStatus.test_appointment_id,\n tax: paymentCreatedStatus.tax,\n lab_id: paymentCreatedStatus.lab_id,\n amount: paymentCreatedStatus.amount,\n payment_at: paymentCreatedStatus.payment_at,\n payment_method: paymentCreatedStatus.payment_method,\n cheque_no: paymentCreatedStatus.cheque_no,\n payment_status: \"Created\",\n comments: paymentCreatedStatus.comments,\n },\n cheque_image: \"\",\n isEdit: true,\n });\n \n this.toggle();\n };\n render() {\n \n\n const columns= [\n {\n text: \"Payment Form ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n {paymentCreatedStatus.id}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_for\",\n text: \"Payment To\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n {paymentCreatedStatus.payment_for}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n // {\n // dataField: \"test_appointment_id\",\n // text: \"Test Appointments ID's\",\n // sort: true,\n // formatter: (cellContent, paymentCreatedStatus) => (\n // <>\n // {paymentCreatedStatus.test_appointment_id}\n // \n // ),filter: textFilter(),\n // headerStyle: { backgroundColor: '#DCDCDC' },\n // },\n {\n dataField: \"lab_name\",\n text: \"Lab Name\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => (\n \n {paymentCreatedStatus.lab_name != null ? paymentCreatedStatus.lab_name : \"---\"}\n \n ),\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' }\n }, \n {\n dataField: \"payment_method\",\n text: \"Payment Type.\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n {paymentCreatedStatus.payment_method}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n \n \n {\n dataField: \"cheque_no\",\n text: \"Cheque/Online Ref#\",\n sort: true,\n formatter: (cellContent, paymentOutStatus) => (\n <>\n \n \n {paymentOutStatus.cheque_no}\n \n \n \n \n \n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_at\",\n text: \"Payment Date\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => {\n const date = new Date(paymentCreatedStatus.payment_at);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2); // Get the last 2 digits of the year\n \n return (\n

\n {`${day}-${month}-${year}`}\n

\n );\n },\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"amount\",\n text: \"Amount\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n
\n {paymentCreatedStatus && typeof paymentCreatedStatus.amount !== 'undefined' ? (\n {Math.abs(paymentCreatedStatus.amount).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n ) : (\n N/A // or any default value you want to display when amount is undefined\n )}\n
\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"payment_status\",\n text: \"Payment Status\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n {paymentCreatedStatus.payment_status}\n \n ),\n filter: selectFilter({\n options: {\n '': 'All',\n 'Created': 'Created',\n 'Submit': 'Submit',\n 'Paid': 'Paid',\n },\n defaultValue: 'All',\n }),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n {paymentCreatedStatus.payment_status !== \"Paid\" && paymentCreatedStatus.payment_status !== \"Submit\" ? ( \n
\n this.handleCreateClick(e, paymentCreatedStatus)}\n \n >\n Edit\n \n \n this.handleSubmitClick(e, paymentCreatedStatus)}\n \n >\n Update\n \n \n
\n ) : (\n \"---\"\n )}\n \n \n \n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Comments/ Voucher\",\n formatter: (cellContent, paymentCreatedStatus) => (\n
\n \n \n \n
\n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n }\n \n \n \n ];\n const { SearchBar } = Search;\n const isDonation = this.state.paymentCreatedStatus.payment_for === \"Donor\";\n\n console.log(\"what payment type\", isDonation)\n const { paymentStatuss } = this.props;\n const uniqueCorporateNames = [...new Set(paymentStatuss.map((statement) => statement.lab_name))];\n \n // Generate labOptions for the \n
\n \n
\n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n \n \n\n \n \n \n
\n \n \n \n {!!isEdit\n ? \"UpdateMOF\"\n : \"Add Pathologist\"}\n \n \n {\n if (isEdit) {\n if (!this.state.cheque_image) {\n this.toDataURL(\n paymentCreatedStatus.cheque_image\n ).then(dataUrl => {\n var fileData =\n this.dataURLtoFile(\n dataUrl,\n paymentCreatedStatus.cheque_image\n .split(\"/\")\n .at(-1)\n );\n this.setState({\n cheque_image: fileData,\n });\n\n const updatePaymentOutCCreatedStatuss = {\n id: paymentCreatedStatus.id,\n cheque_image: this.state.cheque_image,\n amount: values.amount,\n payment_at: values.payment_at,\n cheque_no: values.cheque_no,\n comments: values.comments,\n payment_for:\n values.payment_for,\n test_appointment_id: values.test_appointment_id,\n tax: values.tax,\n lab_id:\n values.lab_id,\n payment_status:\n values.payment_status,\n payment_method:\n values.payment_method,\n // payment_method:\n // values.payment_method,\n };\n // update QualityCertificate\n onUpdatePaymentOutCCreatedStatuss(\n updatePaymentOutCCreatedStatuss\n );\n setTimeout(() => {\n onGetCCreatedOutStatuss(\n this.state.user_id\n );\n }, 1000);\n });\n } else {\n const updatePaymentOutCCreatedStatuss = {\n id: paymentCreatedStatus.id,\n cheque_image: this.state.cheque_image,\n amount: values.amount,\n payment_at: values.payment_at,\n cheque_no: values.cheque_no,\n comments: values.comments,\n payment_for:\n values.payment_for,\n test_appointment_id: values.test_appointment_id,\n tax: values.tax,\n lab_id:\n values.lab_id,\n payment_status:\n values.payment_status,\n payment_method:\n values.payment_method,\n // payment_method:\n // values.payment_method,\n };\n\n // update Pathologist\n onUpdatePaymentOutCCreatedStatuss(\n updatePaymentOutCCreatedStatuss\n );\n setTimeout(() => {\n onGetCCreatedOutStatuss(\n this.state.user_id\n );\n }, 1000);\n }\n }\n\n this.setState({\n // selectedPathologist: null,\n });\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n \n\n\n\n
\n \n \n this.setState({\n payment_for: e.target.value,\n })\n }\n // value={this.state.payment_for}\n className={\n \"form-control\" +\n (errors.payment_for &&\n touched.payment_for\n ? \" is-invalid\"\n : \"\")\n } >\n {/* \n */}\n \n
\n\n
\n \n \n this.setState({\n test_appointment_id: e.target.value,\n })\n }\n // value={this.state.test_appointment_id}\n className={\n \"form-control\" +\n (errors.test_appointment_id &&\n touched.test_appointment_id\n ? \" is-invalid\"\n : \"\")\n } >\n {/* \n */}\n \n
\n\n
\n \n {\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n lab_id:\n paymentCreatedStatus.lab_id,\n invoice_id:\n paymentCreatedStatus.invoice_id,\n amount:\n e.target\n .value,\n\n payment_method:\n paymentCreatedStatus.payment_method,\n payment_for:\n paymentCreatedStatus.payment_for,\n payment_at:\n paymentCreatedStatus.payment_at,\n cheque_no: paymentCreatedStatus.cheque_no,\n \n cheque_image:\n paymentCreatedStatus.cheque_image,\n \n payment_status: paymentCreatedStatus.payment_status,\n comments:\n paymentCreatedStatus.comments,\n\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.amount &&\n touched.amount\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n
\n \n \n this.setState({\n tax: e.target.value,\n })\n }\n // value={this.state.tax}\n className={\n \"form-control\" +\n (errors.tax &&\n touched.tax\n ? \" is-invalid\"\n : \"\")\n } >\n {/* \n */}\n \n
\n\n \n\n
\n \n Payment Date\n \n {\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n lab_id:\n paymentCreatedStatus.lab_id,\n invoice_id:\n paymentCreatedStatus.invoice_id,\n payment_at:\n e.target\n .value,\n\n payment_method:\n paymentCreatedStatus.payment_method,\n amount:\n paymentCreatedStatus.amount,\n cheque_no:\n paymentCreatedStatus.cheque_no,\n payment_for: paymentCreatedStatus.payment_for,\n cheque_image:\n paymentCreatedStatus.cheque_image,\n \n payment_status: paymentCreatedStatus.payment_status,\n comments:\n paymentCreatedStatus.comments,\n\n },\n });\n }}\n min={new Date(\n new Date().toString().split(\"GMT\")[0] +\n \" UTC\"\n )\n .toISOString()\n .slice(0, -8)}\n className=\"form-control\"\n \n />\n
\n\n
\n \n {\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n lab_id:\n paymentCreatedStatus.lab_id,\n invoice_id:\n paymentCreatedStatus.invoice_id,\n cheque_no:\n e.target\n .value,\n\n payment_method:\n paymentCreatedStatus.payment_method,\n payment_for:\n paymentCreatedStatus.payment_for,\n payment_at:\n paymentCreatedStatus.payment_at,\n comments: paymentCreatedStatus.comments,\n \n cheque_image:\n paymentCreatedStatus.cheque_image,\n \n payment_status: paymentCreatedStatus.payment_status,\n amount:\n paymentCreatedStatus.amount,\n\n },\n });\n }}\n />\n
\n\n
\n \n Payment Copy\n \n *\n \n \n \n this.setState({\n cheque_image:\n e.target.files[0],\n })\n }\n className={\n \"form-control\" +\n (errors.cheque_image &&\n touched.cheque_image\n ? \" is-invalid\"\n : \"\")\n }\n />\n\n \n
\n\n
\n \n {\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n lab_id:\n paymentCreatedStatus.lab_id,\n invoice_id:\n paymentCreatedStatus.invoice_id,\n payment_method:\n e.target\n .value,\n\n comments:\n paymentCreatedStatus.comments,\n payment_for:\n paymentCreatedStatus.payment_for,\n payment_at:\n paymentCreatedStatus.payment_at,\n cheque_no: paymentCreatedStatus.cheque_no,\n cheque_image:\n paymentCreatedStatus.cheque_image,\n \n payment_status: paymentCreatedStatus.payment_status,\n amount:\n paymentCreatedStatus.amount,\n\n },\n });\n }}\n >\n \n ----- Please select\n Type -----\n \n \n \n \n
\n\n
\n \n {\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n lab_id:\n paymentCreatedStatus.lab_id,\n invoice_id:\n paymentCreatedStatus.invoice_id,\n comments:\n e.target\n .value,\n\n payment_method:\n paymentCreatedStatus.payment_method,\n payment_for:\n paymentCreatedStatus.payment_for,\n payment_at:\n paymentCreatedStatus.payment_at,\n cheque_no: paymentCreatedStatus.cheque_no,\n \n cheque_image:\n paymentCreatedStatus.cheque_image,\n \n payment_status: paymentCreatedStatus.payment_status,\n amount:\n paymentCreatedStatus.amount,\n\n },\n });\n }}\n />\n \n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n
\n \n
\n {hasData && (\n \n \n \n \n \n )}\n
\n )}\n \n )}\n \n \n \n \n \n
\n
\n
\n );\n }\n}\n\nPaymentStatussList.propTypes = {\n match: PropTypes.object,\n paymentStatuss: PropTypes.array,\n bankAccounts: PropTypes.array,\n className: PropTypes.any,\n onGetCCreatedOutStatuss: PropTypes.func,\n onUpdatePaymentOutCCreatedStatuss: PropTypes.func,\n onGetbankAccounts: PropTypes.func,\n history: PropTypes.any,\n paymentStatuss: PropTypes.array,\n onDeletePaymentout: PropTypes.func,\n};\n\nconst mapStateToProps = ({ paymentStatuss }) => ({\n paymentStatuss: paymentStatuss.paymentStatuss,\n bankAccounts: paymentStatuss.bankAccounts,\n paymentStatuss: paymentStatuss.paymentStatuss,\n\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetbankAccounts: () => dispatch(getBankAccounts()),\n\n onGetCCreatedOutStatuss: id => dispatch(getCCreatedOutStatuss(id)),\n onUpdatePaymentOutCCreatedStatuss: paymentCreatedStatus =>\n dispatch(updatePaymentOutCCreatedStatuss(paymentCreatedStatus)),\n onDeletePaymentout: paymentCreatedStatus => dispatch(deletePaymentout(paymentCreatedStatus)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PaymentStatussList));\n","export default __webpack_public_path__ + \"static/media/avatar-1.3921191a.jpg\";","export default __webpack_public_path__ + \"static/media/avatar-2.feb0f89d.jpg\";","export default __webpack_public_path__ + \"static/media/avatar-3.2cfd5ba6.jpg\";","export default __webpack_public_path__ + \"static/media/avatar-4.b23e41d9.jpg\";","export default __webpack_public_path__ + \"static/media/avatar-5.a5c59cee.jpg\";","export default __webpack_public_path__ + \"static/media/avatar-6.dc44eabf.jpg\";","export default __webpack_public_path__ + \"static/media/avatar-7.5ba5195e.jpg\";","export default __webpack_public_path__ + \"static/media/avatar-8.ad5418a9.jpg\";","export default __webpack_public_path__ + \"static/media/img-7.0c27f0b4.png\";","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport Select from \"react-select\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\nimport {\n getCCreatedOutStatuss,\n updatePaymentInBouncedStatus,\n updatePaymentOutCCreatedStatuss,\n getBankAccounts,\n deletePaymentout,\n\n} from \"store/payment-statuss/actions\";\n\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass PaymentStatussList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n paymentStatuss: [],\n paymentCreatedStatus: \"\",\n modal: false,\n payment_status: \"\",\n selectedcorporate: null,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n\n };\n this.handleCreateClick = this.handleCreateClick.bind(this);\n this.handleSubmitClick = this.handleSubmitClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n\n }\n // The code for converting \"image source\" (url) to \"Base64\"\n toDataURL = url =>\n fetch(url)\n .then(response => response.blob())\n .then(\n blob =>\n new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.onerror = reject;\n reader.readAsDataURL(blob);\n })\n );\n\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n componentDidMount() {\n\n const { bankAccounts, onGetbankAccounts } = this.props;\n if (bankAccounts && !bankAccounts.length) {\n onGetbankAccounts();\n }\n this.setState({ bankAccounts });\n\n const { paymentStatuss, onGetCCreatedOutStatuss } = this.props;\n onGetCCreatedOutStatuss(this.state.user_id);\n this.setState({ paymentStatuss });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handlePaymentStatusClicks = () => {\n this.setState({\n paymentCreatedStatus: \"\",\n deposit_slip: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { paymentStatuss } = this.props;\n if (\n !isEmpty(paymentStatuss) &&\n size(prevProps.paymentStatuss) !== size(paymentStatuss)\n ) {\n this.setState({ paymentStatuss: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n \n onClickDelete = paymentStatuss => {\n this.setState({ paymentStatuss: paymentStatuss });\n this.setState({ deleteModal: true });\n };\n handleDeletePathologist = () => {\n const { onDeletePaymentout, onGetCCreatedOutStatuss} = this.props;\n const { paymentStatuss } = this.state;\n if (paymentStatuss.id !== undefined) {\n onDeletePaymentout(paymentStatuss);\n setTimeout(() => {\n onGetCCreatedOutStatuss(this.state.user_id);\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n\n handlePaymentStatusClick = (e, arg) => {\n this.setState({\n paymentCreatedStatus: {\n id: arg.id,\n verified_by: arg.verified_by,\n bankaccount_id: arg.bankaccount_id,\n deposit_slip: arg.deposit_slip,\n payment_for: arg.payment_for,\n payment_status: \"Pending Clearance\",\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n // handleSubmitClick = (e, arg) => {\n // const paymentCreatedStatus = arg;\n // this.setState({\n // paymentCreatedStatus: {\n // id: paymentCreatedStatus.id,\n // // cheque_image: process.env.REACT_APP_BACKENDURL + paymentCreatedStatus.cheque_image,\n // // payment_for: paymentCreatedStatus.payment_for,\n // // test_appointment_id: paymentCreatedStatus.test_appointment_id,\n // // tax: paymentCreatedStatus.tax,\n // // lab_id: paymentCreatedStatus.lab_id,\n // // amount: paymentCreatedStatus.amount,\n // // payment_at: paymentCreatedStatus.payment_at,\n // // payment_method: paymentCreatedStatus.payment_method,\n // // cheque_no: paymentCreatedStatus.cheque_no,\n // payment_status: \"Paid\",\n // // comments: paymentCreatedStatus.comments,\n // },\n // // cheque_image: \"\",\n // });\n \n // };\n handleSubmitClick = (e, arg) => {\n e.preventDefault(); // Prevent default form behavior\n \n const { onUpdatePaymentOutCCreatedStatuss, onGetCCreatedOutStatuss } = this.props;\n const paymentCreatedStatus = arg;\n \n // Create the payload for the API call\n const payload = {\n id: paymentCreatedStatus.id,\n payment_status: \"Paid\",\n cheque_image: \"\", // Make sure this is the correct URL\n payment_for: paymentCreatedStatus.payment_for,\n test_appointment_id: paymentCreatedStatus.test_appointment_id,\n tax: paymentCreatedStatus.tax,\n lab_id: paymentCreatedStatus.lab_id,\n amount: paymentCreatedStatus.amount,\n payment_at: paymentCreatedStatus.payment_at,\n payment_method: paymentCreatedStatus.payment_method,\n cheque_no: paymentCreatedStatus.cheque_no,\n comments: paymentCreatedStatus.comments,\n };\n \n // Dispatch the action with the updated status\n onUpdatePaymentOutCCreatedStatuss(payload);\n \n // Refresh the payment status list\n setTimeout(() => {\n onGetCCreatedOutStatuss(this.state.user_id);\n }, 1000);\n };\n \n // handleSubmitClick = (e, arg) => {\n // const paymentCreatedStatus = arg;\n // // Dispatch an action to update the status in Redux\n // const { onUpdatePaymentOutCCreatedStatuss, onGetCCreatedOutStatuss} = this.props;\n \n // onUpdatePaymentOutCCreatedStatuss({ \n // id: paymentCreatedStatus.id, \n // payment_status: \"Paid\",\n // cheque_image: process.env.REACT_APP_BACKENDURL + paymentCreatedStatus.cheque_image,\n // payment_for: paymentCreatedStatus.payment_for,\n // test_appointment_id: paymentCreatedStatus.test_appointment_id,\n // tax: paymentCreatedStatus.tax,\n // lab_id: paymentCreatedStatus.lab_id,\n // amount: paymentCreatedStatus.amount,\n // payment_at: paymentCreatedStatus.payment_at,\n // payment_method: paymentCreatedStatus.payment_method,\n // cheque_no: paymentCreatedStatus.cheque_no,\n // comments: paymentCreatedStatus.comments,\n\n // });\n \n // setTimeout(() => {\n // onGetCCreatedOutStatuss(this.state.user_id);\n // }, 1000);\n // };\n handleSelectChange = (event) => {\n const selectedValue = event.target.value;\n // Perform navigation based on the selected value\n if (selectedValue === 'Created') {\n this.props.history.push('/payment-status');\n }\n if (selectedValue === 'Pending Clearence') {\n this.props.history.push('/payment-in-pending-clearence-status');\n }\n if (selectedValue === 'Cleared') {\n this.props.history.push('/clear-status');\n }\n if (selectedValue === 'Bounced') {\n this.props.history.push('/bounced-status');\n }\n }\n handleCreateClick = (e, arg) => {\n const paymentCreatedStatus = arg;\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n cheque_image: process.env.REACT_APP_BACKENDURL + paymentCreatedStatus.cheque_image,\n payment_for: paymentCreatedStatus.payment_for,\n test_appointment_id: paymentCreatedStatus.test_appointment_id,\n tax: paymentCreatedStatus.tax,\n lab_id: paymentCreatedStatus.lab_id,\n amount: paymentCreatedStatus.amount,\n payment_at: paymentCreatedStatus.payment_at,\n payment_method: paymentCreatedStatus.payment_method,\n cheque_no: paymentCreatedStatus.cheque_no,\n payment_status: \"Created\",\n comments: paymentCreatedStatus.comments,\n },\n cheque_image: \"\",\n isEdit: true,\n });\n \n this.toggle();\n };\n render() {\n \n\n const columns= [\n {\n text: \"Payment Form ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n {paymentCreatedStatus.id}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_for\",\n text: \"Payment To\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n {paymentCreatedStatus.payment_for}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n // {\n // dataField: \"test_appointment_id\",\n // text: \"Test Appointments ID's\",\n // sort: true,\n // formatter: (cellContent, paymentCreatedStatus) => (\n // <>\n // {paymentCreatedStatus.test_appointment_id}\n // \n // ),filter: textFilter(),\n // headerStyle: { backgroundColor: '#DCDCDC' },\n // },\n {\n dataField: \"corporate_name\",\n text: \"Corporate Name\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => (\n \n {paymentCreatedStatus.corporate_name != null ? paymentCreatedStatus.corporate_name : \"---\"}\n \n ),\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' }\n }, \n {\n dataField: \"payment_method\",\n text: \"Payment Type.\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n {paymentCreatedStatus.payment_method}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n \n \n {\n dataField: \"cheque_no\",\n text: \"Cheque/Online Ref#\",\n sort: true,\n formatter: (cellContent, paymentOutStatus) => (\n <>\n \n \n {paymentOutStatus.cheque_no}\n \n \n \n \n \n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_at\",\n text: \"Payment Date\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => {\n const date = new Date(paymentCreatedStatus.payment_at);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2); // Get the last 2 digits of the year\n \n return (\n

\n {`${day}-${month}-${year}`}\n

\n );\n },\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"amount\",\n text: \"Amount\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n
\n {paymentCreatedStatus && typeof paymentCreatedStatus.amount !== 'undefined' ? (\n {Math.abs(paymentCreatedStatus.amount).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n ) : (\n N/A // or any default value you want to display when amount is undefined\n )}\n
\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"payment_status\",\n text: \"Payment Status\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n {paymentCreatedStatus.payment_status}\n \n ),\n filter: selectFilter({\n options: {\n '': 'All',\n 'Created': 'Created',\n 'Submit': 'Submit',\n 'Paid': 'Paid',\n },\n defaultValue: 'All',\n }),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n {paymentCreatedStatus.payment_status == \"Submit\" ? ( \n
\n this.handleSubmitClick(e, paymentCreatedStatus)}\n \n >\n Received\n \n \n
\n ) : (\n \"---\"\n )}\n \n \n \n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Comments/ Voucher\",\n formatter: (cellContent, paymentCreatedStatus) => (\n
\n \n \n
\n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n }\n \n \n \n ];\n const { SearchBar } = Search;\n const isDonation = this.state.paymentCreatedStatus.payment_for === \"Donor\";\n\n console.log(\"what payment type\", isDonation)\n const { paymentStatuss } = this.props;\n const uniqueCorporateNames = [...new Set(paymentStatuss.map((statement) => statement.lab_name))];\n \n // Generate labOptions for the \n
\n */}\n
\n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n \n \n\n \n \n \n
\n \n \n \n {!!isEdit\n ? \"UpdateMOF\"\n : \"Add Pathologist\"}\n \n \n {\n if (isEdit) {\n if (!this.state.cheque_image) {\n this.toDataURL(\n paymentCreatedStatus.cheque_image\n ).then(dataUrl => {\n var fileData =\n this.dataURLtoFile(\n dataUrl,\n paymentCreatedStatus.cheque_image\n .split(\"/\")\n .at(-1)\n );\n this.setState({\n cheque_image: fileData,\n });\n\n const updatePaymentOutCCreatedStatuss = {\n id: paymentCreatedStatus.id,\n cheque_image: this.state.cheque_image,\n amount: values.amount,\n payment_at: values.payment_at,\n cheque_no: values.cheque_no,\n comments: values.comments,\n payment_for:\n values.payment_for,\n test_appointment_id: values.test_appointment_id,\n tax: values.tax,\n lab_id:\n values.lab_id,\n payment_status:\n values.payment_status,\n payment_method:\n values.payment_method,\n // payment_method:\n // values.payment_method,\n };\n // update QualityCertificate\n onUpdatePaymentOutCCreatedStatuss(\n updatePaymentOutCCreatedStatuss\n );\n setTimeout(() => {\n onGetCCreatedOutStatuss(\n this.state.user_id\n );\n }, 1000);\n });\n } else {\n const updatePaymentOutCCreatedStatuss = {\n id: paymentCreatedStatus.id,\n cheque_image: this.state.cheque_image,\n amount: values.amount,\n payment_at: values.payment_at,\n cheque_no: values.cheque_no,\n comments: values.comments,\n payment_for:\n values.payment_for,\n test_appointment_id: values.test_appointment_id,\n tax: values.tax,\n lab_id:\n values.lab_id,\n payment_status:\n values.payment_status,\n payment_method:\n values.payment_method,\n // payment_method:\n // values.payment_method,\n };\n\n // update Pathologist\n onUpdatePaymentOutCCreatedStatuss(\n updatePaymentOutCCreatedStatuss\n );\n setTimeout(() => {\n onGetCCreatedOutStatuss(\n this.state.user_id\n );\n }, 1000);\n }\n }\n\n this.setState({\n // selectedPathologist: null,\n });\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n \n\n\n\n
\n \n \n this.setState({\n payment_for: e.target.value,\n })\n }\n // value={this.state.payment_for}\n className={\n \"form-control\" +\n (errors.payment_for &&\n touched.payment_for\n ? \" is-invalid\"\n : \"\")\n } >\n {/* \n */}\n \n
\n\n
\n \n \n this.setState({\n test_appointment_id: e.target.value,\n })\n }\n // value={this.state.test_appointment_id}\n className={\n \"form-control\" +\n (errors.test_appointment_id &&\n touched.test_appointment_id\n ? \" is-invalid\"\n : \"\")\n } >\n {/* \n */}\n \n
\n\n
\n \n {\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n lab_id:\n paymentCreatedStatus.lab_id,\n invoice_id:\n paymentCreatedStatus.invoice_id,\n amount:\n e.target\n .value,\n\n payment_method:\n paymentCreatedStatus.payment_method,\n payment_for:\n paymentCreatedStatus.payment_for,\n payment_at:\n paymentCreatedStatus.payment_at,\n cheque_no: paymentCreatedStatus.cheque_no,\n \n cheque_image:\n paymentCreatedStatus.cheque_image,\n \n payment_status: paymentCreatedStatus.payment_status,\n comments:\n paymentCreatedStatus.comments,\n\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.amount &&\n touched.amount\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n
\n \n \n this.setState({\n tax: e.target.value,\n })\n }\n // value={this.state.tax}\n className={\n \"form-control\" +\n (errors.tax &&\n touched.tax\n ? \" is-invalid\"\n : \"\")\n } >\n {/* \n */}\n \n
\n\n \n\n
\n \n Payment Date\n \n {\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n lab_id:\n paymentCreatedStatus.lab_id,\n invoice_id:\n paymentCreatedStatus.invoice_id,\n payment_at:\n e.target\n .value,\n\n payment_method:\n paymentCreatedStatus.payment_method,\n amount:\n paymentCreatedStatus.amount,\n cheque_no:\n paymentCreatedStatus.cheque_no,\n payment_for: paymentCreatedStatus.payment_for,\n cheque_image:\n paymentCreatedStatus.cheque_image,\n \n payment_status: paymentCreatedStatus.payment_status,\n comments:\n paymentCreatedStatus.comments,\n\n },\n });\n }}\n min={new Date(\n new Date().toString().split(\"GMT\")[0] +\n \" UTC\"\n )\n .toISOString()\n .slice(0, -8)}\n className=\"form-control\"\n \n />\n
\n\n
\n \n {\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n lab_id:\n paymentCreatedStatus.lab_id,\n invoice_id:\n paymentCreatedStatus.invoice_id,\n cheque_no:\n e.target\n .value,\n\n payment_method:\n paymentCreatedStatus.payment_method,\n payment_for:\n paymentCreatedStatus.payment_for,\n payment_at:\n paymentCreatedStatus.payment_at,\n comments: paymentCreatedStatus.comments,\n \n cheque_image:\n paymentCreatedStatus.cheque_image,\n \n payment_status: paymentCreatedStatus.payment_status,\n amount:\n paymentCreatedStatus.amount,\n\n },\n });\n }}\n />\n
\n\n
\n \n Payment Copy\n \n *\n \n \n \n this.setState({\n cheque_image:\n e.target.files[0],\n })\n }\n className={\n \"form-control\" +\n (errors.cheque_image &&\n touched.cheque_image\n ? \" is-invalid\"\n : \"\")\n }\n />\n\n \n
\n\n
\n \n {\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n lab_id:\n paymentCreatedStatus.lab_id,\n invoice_id:\n paymentCreatedStatus.invoice_id,\n payment_method:\n e.target\n .value,\n\n comments:\n paymentCreatedStatus.comments,\n payment_for:\n paymentCreatedStatus.payment_for,\n payment_at:\n paymentCreatedStatus.payment_at,\n cheque_no: paymentCreatedStatus.cheque_no,\n cheque_image:\n paymentCreatedStatus.cheque_image,\n \n payment_status: paymentCreatedStatus.payment_status,\n amount:\n paymentCreatedStatus.amount,\n\n },\n });\n }}\n >\n \n ----- Please select\n Type -----\n \n \n \n \n
\n\n
\n \n {\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n lab_id:\n paymentCreatedStatus.lab_id,\n invoice_id:\n paymentCreatedStatus.invoice_id,\n comments:\n e.target\n .value,\n\n payment_method:\n paymentCreatedStatus.payment_method,\n payment_for:\n paymentCreatedStatus.payment_for,\n payment_at:\n paymentCreatedStatus.payment_at,\n cheque_no: paymentCreatedStatus.cheque_no,\n \n cheque_image:\n paymentCreatedStatus.cheque_image,\n \n payment_status: paymentCreatedStatus.payment_status,\n amount:\n paymentCreatedStatus.amount,\n\n },\n });\n }}\n />\n \n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n
\n \n
\n {hasData && (\n \n \n \n \n \n )}\n
\n )}\n \n )}\n \n \n \n \n \n
\n
\n
\n );\n }\n}\n\nPaymentStatussList.propTypes = {\n match: PropTypes.object,\n paymentStatuss: PropTypes.array,\n bankAccounts: PropTypes.array,\n className: PropTypes.any,\n onGetCCreatedOutStatuss: PropTypes.func,\n onUpdatePaymentOutCCreatedStatuss: PropTypes.func,\n onGetbankAccounts: PropTypes.func,\n history: PropTypes.any,\n paymentStatuss: PropTypes.array,\n onDeletePaymentout: PropTypes.func,\n};\n\nconst mapStateToProps = ({ paymentStatuss }) => ({\n paymentStatuss: paymentStatuss.paymentStatuss,\n bankAccounts: paymentStatuss.bankAccounts,\n paymentStatuss: paymentStatuss.paymentStatuss,\n\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetbankAccounts: () => dispatch(getBankAccounts()),\n\n onGetCCreatedOutStatuss: id => dispatch(getCCreatedOutStatuss(id)),\n onUpdatePaymentOutCCreatedStatuss: paymentCreatedStatus =>\n dispatch(updatePaymentOutCCreatedStatuss(paymentCreatedStatus)),\n onDeletePaymentout: paymentCreatedStatus => dispatch(deletePaymentout(paymentCreatedStatus)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PaymentStatussList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport Select from \"react-select\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\nimport {\n getCCreatedOutStatuss,\n updatePaymentInBouncedStatus,\n updatePaymentOutCCreatedStatuss,\n getBankAccounts,\n deletePaymentout,\n\n} from \"store/payment-statuss/actions\";\n\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass PaymentStatussList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n paymentStatuss: [],\n paymentCreatedStatus: \"\",\n modal: false,\n payment_status: \"\",\n selectedcorporate: null,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n\n };\n this.handleCreateClick = this.handleCreateClick.bind(this);\n this.handleSubmitClick = this.handleSubmitClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n\n }\n // The code for converting \"image source\" (url) to \"Base64\"\n toDataURL = url =>\n fetch(url)\n .then(response => response.blob())\n .then(\n blob =>\n new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.onerror = reject;\n reader.readAsDataURL(blob);\n })\n );\n\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n componentDidMount() {\n\n const { bankAccounts, onGetbankAccounts } = this.props;\n if (bankAccounts && !bankAccounts.length) {\n onGetbankAccounts();\n }\n this.setState({ bankAccounts });\n\n const { paymentStatuss, onGetCCreatedOutStatuss } = this.props;\n onGetCCreatedOutStatuss(this.state.user_id);\n this.setState({ paymentStatuss });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handlePaymentStatusClicks = () => {\n this.setState({\n paymentCreatedStatus: \"\",\n deposit_slip: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { paymentStatuss } = this.props;\n if (\n !isEmpty(paymentStatuss) &&\n size(prevProps.paymentStatuss) !== size(paymentStatuss)\n ) {\n this.setState({ paymentStatuss: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n \n onClickDelete = paymentStatuss => {\n this.setState({ paymentStatuss: paymentStatuss });\n this.setState({ deleteModal: true });\n };\n handleDeletePathologist = () => {\n const { onDeletePaymentout, onGetCCreatedOutStatuss} = this.props;\n const { paymentStatuss } = this.state;\n if (paymentStatuss.id !== undefined) {\n onDeletePaymentout(paymentStatuss);\n setTimeout(() => {\n onGetCCreatedOutStatuss(this.state.user_id);\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n\n handlePaymentStatusClick = (e, arg) => {\n this.setState({\n paymentCreatedStatus: {\n id: arg.id,\n verified_by: arg.verified_by,\n bankaccount_id: arg.bankaccount_id,\n deposit_slip: arg.deposit_slip,\n payment_for: arg.payment_for,\n payment_status: \"Pending Clearance\",\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n // handleSubmitClick = (e, arg) => {\n // const paymentCreatedStatus = arg;\n // this.setState({\n // paymentCreatedStatus: {\n // id: paymentCreatedStatus.id,\n // // cheque_image: process.env.REACT_APP_BACKENDURL + paymentCreatedStatus.cheque_image,\n // // payment_for: paymentCreatedStatus.payment_for,\n // // test_appointment_id: paymentCreatedStatus.test_appointment_id,\n // // tax: paymentCreatedStatus.tax,\n // // lab_id: paymentCreatedStatus.lab_id,\n // // amount: paymentCreatedStatus.amount,\n // // payment_at: paymentCreatedStatus.payment_at,\n // // payment_method: paymentCreatedStatus.payment_method,\n // // cheque_no: paymentCreatedStatus.cheque_no,\n // payment_status: \"Paid\",\n // // comments: paymentCreatedStatus.comments,\n // },\n // // cheque_image: \"\",\n // });\n \n // };\n handleSubmitClick = (e, arg) => {\n e.preventDefault(); // Prevent default form behavior\n \n const { onUpdatePaymentOutCCreatedStatuss, onGetCCreatedOutStatuss } = this.props;\n const paymentCreatedStatus = arg;\n \n // Create the payload for the API call\n const payload = {\n id: paymentCreatedStatus.id,\n payment_status: \"Paid\",\n cheque_image: \"\", // Make sure this is the correct URL\n payment_for: paymentCreatedStatus.payment_for,\n test_appointment_id: paymentCreatedStatus.test_appointment_id,\n tax: paymentCreatedStatus.tax,\n lab_id: paymentCreatedStatus.lab_id,\n amount: paymentCreatedStatus.amount,\n payment_at: paymentCreatedStatus.payment_at,\n payment_method: paymentCreatedStatus.payment_method,\n cheque_no: paymentCreatedStatus.cheque_no,\n comments: paymentCreatedStatus.comments,\n };\n \n // Dispatch the action with the updated status\n onUpdatePaymentOutCCreatedStatuss(payload);\n \n // Refresh the payment status list\n setTimeout(() => {\n onGetCCreatedOutStatuss(this.state.user_id);\n }, 1000);\n };\n \n // handleSubmitClick = (e, arg) => {\n // const paymentCreatedStatus = arg;\n // // Dispatch an action to update the status in Redux\n // const { onUpdatePaymentOutCCreatedStatuss, onGetCCreatedOutStatuss} = this.props;\n \n // onUpdatePaymentOutCCreatedStatuss({ \n // id: paymentCreatedStatus.id, \n // payment_status: \"Paid\",\n // cheque_image: process.env.REACT_APP_BACKENDURL + paymentCreatedStatus.cheque_image,\n // payment_for: paymentCreatedStatus.payment_for,\n // test_appointment_id: paymentCreatedStatus.test_appointment_id,\n // tax: paymentCreatedStatus.tax,\n // lab_id: paymentCreatedStatus.lab_id,\n // amount: paymentCreatedStatus.amount,\n // payment_at: paymentCreatedStatus.payment_at,\n // payment_method: paymentCreatedStatus.payment_method,\n // cheque_no: paymentCreatedStatus.cheque_no,\n // comments: paymentCreatedStatus.comments,\n\n // });\n \n // setTimeout(() => {\n // onGetCCreatedOutStatuss(this.state.user_id);\n // }, 1000);\n // };\n handleSelectChange = (event) => {\n const selectedValue = event.target.value;\n // Perform navigation based on the selected value\n if (selectedValue === 'Created') {\n this.props.history.push('/payment-status');\n }\n if (selectedValue === 'Pending Clearence') {\n this.props.history.push('/payment-in-pending-clearence-status');\n }\n if (selectedValue === 'Cleared') {\n this.props.history.push('/clear-status');\n }\n if (selectedValue === 'Bounced') {\n this.props.history.push('/bounced-status');\n }\n }\n handleCreateClick = (e, arg) => {\n const paymentCreatedStatus = arg;\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n cheque_image: process.env.REACT_APP_BACKENDURL + paymentCreatedStatus.cheque_image,\n payment_for: paymentCreatedStatus.payment_for,\n test_appointment_id: paymentCreatedStatus.test_appointment_id,\n tax: paymentCreatedStatus.tax,\n lab_id: paymentCreatedStatus.lab_id,\n amount: paymentCreatedStatus.amount,\n payment_at: paymentCreatedStatus.payment_at,\n payment_method: paymentCreatedStatus.payment_method,\n cheque_no: paymentCreatedStatus.cheque_no,\n payment_status: \"Created\",\n comments: paymentCreatedStatus.comments,\n },\n cheque_image: \"\",\n isEdit: true,\n });\n \n this.toggle();\n };\n render() {\n \n\n const columns= [\n {\n text: \"Payment Form ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n {paymentCreatedStatus.id}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_for\",\n text: \"Payment To\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n {paymentCreatedStatus.payment_for}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n // {\n // dataField: \"test_appointment_id\",\n // text: \"Test Appointments ID's\",\n // sort: true,\n // formatter: (cellContent, paymentCreatedStatus) => (\n // <>\n // {paymentCreatedStatus.test_appointment_id}\n // \n // ),filter: textFilter(),\n // headerStyle: { backgroundColor: '#DCDCDC' },\n // },\n {\n dataField: \"lab_name\",\n text: \"Lab Name\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => (\n \n {paymentCreatedStatus.lab_name != null ? paymentCreatedStatus.lab_name : \"---\"}\n \n ),\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' }\n }, \n {\n dataField: \"payment_method\",\n text: \"Payment Type.\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n {paymentCreatedStatus.payment_method}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n \n \n {\n dataField: \"cheque_no\",\n text: \"Cheque/Online Ref#\",\n sort: true,\n formatter: (cellContent, paymentOutStatus) => (\n <>\n \n \n {paymentOutStatus.cheque_no}\n \n \n \n \n \n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_at\",\n text: \"Payment Date\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => {\n const date = new Date(paymentCreatedStatus.payment_at);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2); // Get the last 2 digits of the year\n \n return (\n

\n {`${day}-${month}-${year}`}\n

\n );\n },\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"amount\",\n text: \"Amount\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n
\n {paymentCreatedStatus && typeof paymentCreatedStatus.amount !== 'undefined' ? (\n {Math.abs(paymentCreatedStatus.amount).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n ) : (\n N/A // or any default value you want to display when amount is undefined\n )}\n
\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"payment_status\",\n text: \"Payment Status\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n {paymentCreatedStatus.payment_status}\n \n ),\n filter: selectFilter({\n options: {\n '': 'All',\n 'Created': 'Created',\n 'Submit': 'Submit',\n 'Paid': 'Paid',\n },\n defaultValue: 'All',\n }),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n {paymentCreatedStatus.payment_status == \"Submit\" ? ( \n
\n this.handleSubmitClick(e, paymentCreatedStatus)}\n \n >\n Received\n \n \n
\n ) : (\n \"---\"\n )}\n \n \n \n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Comments/ Voucher\",\n formatter: (cellContent, paymentCreatedStatus) => (\n
\n \n \n
\n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n }\n \n \n \n ];\n const { SearchBar } = Search;\n const isDonation = this.state.paymentCreatedStatus.payment_for === \"Donor\";\n\n console.log(\"what payment type\", isDonation)\n const { paymentStatuss } = this.props;\n const uniqueCorporateNames = [...new Set(paymentStatuss.map((statement) => statement.lab_name))];\n \n // Generate labOptions for the \n
\n */}\n
\n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n \n \n\n \n \n \n
\n \n \n \n {!!isEdit\n ? \"UpdateMOF\"\n : \"Add Pathologist\"}\n \n \n {\n if (isEdit) {\n if (!this.state.cheque_image) {\n this.toDataURL(\n paymentCreatedStatus.cheque_image\n ).then(dataUrl => {\n var fileData =\n this.dataURLtoFile(\n dataUrl,\n paymentCreatedStatus.cheque_image\n .split(\"/\")\n .at(-1)\n );\n this.setState({\n cheque_image: fileData,\n });\n\n const updatePaymentOutCCreatedStatuss = {\n id: paymentCreatedStatus.id,\n cheque_image: this.state.cheque_image,\n amount: values.amount,\n payment_at: values.payment_at,\n cheque_no: values.cheque_no,\n comments: values.comments,\n payment_for:\n values.payment_for,\n test_appointment_id: values.test_appointment_id,\n tax: values.tax,\n lab_id:\n values.lab_id,\n payment_status:\n values.payment_status,\n payment_method:\n values.payment_method,\n // payment_method:\n // values.payment_method,\n };\n // update QualityCertificate\n onUpdatePaymentOutCCreatedStatuss(\n updatePaymentOutCCreatedStatuss\n );\n setTimeout(() => {\n onGetCCreatedOutStatuss(\n this.state.user_id\n );\n }, 1000);\n });\n } else {\n const updatePaymentOutCCreatedStatuss = {\n id: paymentCreatedStatus.id,\n cheque_image: this.state.cheque_image,\n amount: values.amount,\n payment_at: values.payment_at,\n cheque_no: values.cheque_no,\n comments: values.comments,\n payment_for:\n values.payment_for,\n test_appointment_id: values.test_appointment_id,\n tax: values.tax,\n lab_id:\n values.lab_id,\n payment_status:\n values.payment_status,\n payment_method:\n values.payment_method,\n // payment_method:\n // values.payment_method,\n };\n\n // update Pathologist\n onUpdatePaymentOutCCreatedStatuss(\n updatePaymentOutCCreatedStatuss\n );\n setTimeout(() => {\n onGetCCreatedOutStatuss(\n this.state.user_id\n );\n }, 1000);\n }\n }\n\n this.setState({\n // selectedPathologist: null,\n });\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n \n\n\n\n
\n \n \n this.setState({\n payment_for: e.target.value,\n })\n }\n // value={this.state.payment_for}\n className={\n \"form-control\" +\n (errors.payment_for &&\n touched.payment_for\n ? \" is-invalid\"\n : \"\")\n } >\n {/* \n */}\n \n
\n\n
\n \n \n this.setState({\n test_appointment_id: e.target.value,\n })\n }\n // value={this.state.test_appointment_id}\n className={\n \"form-control\" +\n (errors.test_appointment_id &&\n touched.test_appointment_id\n ? \" is-invalid\"\n : \"\")\n } >\n {/* \n */}\n \n
\n\n
\n \n {\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n lab_id:\n paymentCreatedStatus.lab_id,\n invoice_id:\n paymentCreatedStatus.invoice_id,\n amount:\n e.target\n .value,\n\n payment_method:\n paymentCreatedStatus.payment_method,\n payment_for:\n paymentCreatedStatus.payment_for,\n payment_at:\n paymentCreatedStatus.payment_at,\n cheque_no: paymentCreatedStatus.cheque_no,\n \n cheque_image:\n paymentCreatedStatus.cheque_image,\n \n payment_status: paymentCreatedStatus.payment_status,\n comments:\n paymentCreatedStatus.comments,\n\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.amount &&\n touched.amount\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n
\n \n \n this.setState({\n tax: e.target.value,\n })\n }\n // value={this.state.tax}\n className={\n \"form-control\" +\n (errors.tax &&\n touched.tax\n ? \" is-invalid\"\n : \"\")\n } >\n {/* \n */}\n \n
\n\n \n\n
\n \n Payment Date\n \n {\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n lab_id:\n paymentCreatedStatus.lab_id,\n invoice_id:\n paymentCreatedStatus.invoice_id,\n payment_at:\n e.target\n .value,\n\n payment_method:\n paymentCreatedStatus.payment_method,\n amount:\n paymentCreatedStatus.amount,\n cheque_no:\n paymentCreatedStatus.cheque_no,\n payment_for: paymentCreatedStatus.payment_for,\n cheque_image:\n paymentCreatedStatus.cheque_image,\n \n payment_status: paymentCreatedStatus.payment_status,\n comments:\n paymentCreatedStatus.comments,\n\n },\n });\n }}\n min={new Date(\n new Date().toString().split(\"GMT\")[0] +\n \" UTC\"\n )\n .toISOString()\n .slice(0, -8)}\n className=\"form-control\"\n \n />\n
\n\n
\n \n {\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n lab_id:\n paymentCreatedStatus.lab_id,\n invoice_id:\n paymentCreatedStatus.invoice_id,\n cheque_no:\n e.target\n .value,\n\n payment_method:\n paymentCreatedStatus.payment_method,\n payment_for:\n paymentCreatedStatus.payment_for,\n payment_at:\n paymentCreatedStatus.payment_at,\n comments: paymentCreatedStatus.comments,\n \n cheque_image:\n paymentCreatedStatus.cheque_image,\n \n payment_status: paymentCreatedStatus.payment_status,\n amount:\n paymentCreatedStatus.amount,\n\n },\n });\n }}\n />\n
\n\n
\n \n Payment Copy\n \n *\n \n \n \n this.setState({\n cheque_image:\n e.target.files[0],\n })\n }\n className={\n \"form-control\" +\n (errors.cheque_image &&\n touched.cheque_image\n ? \" is-invalid\"\n : \"\")\n }\n />\n\n \n
\n\n
\n \n {\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n lab_id:\n paymentCreatedStatus.lab_id,\n invoice_id:\n paymentCreatedStatus.invoice_id,\n payment_method:\n e.target\n .value,\n\n comments:\n paymentCreatedStatus.comments,\n payment_for:\n paymentCreatedStatus.payment_for,\n payment_at:\n paymentCreatedStatus.payment_at,\n cheque_no: paymentCreatedStatus.cheque_no,\n cheque_image:\n paymentCreatedStatus.cheque_image,\n \n payment_status: paymentCreatedStatus.payment_status,\n amount:\n paymentCreatedStatus.amount,\n\n },\n });\n }}\n >\n \n ----- Please select\n Type -----\n \n \n \n \n
\n\n
\n \n {\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n lab_id:\n paymentCreatedStatus.lab_id,\n invoice_id:\n paymentCreatedStatus.invoice_id,\n comments:\n e.target\n .value,\n\n payment_method:\n paymentCreatedStatus.payment_method,\n payment_for:\n paymentCreatedStatus.payment_for,\n payment_at:\n paymentCreatedStatus.payment_at,\n cheque_no: paymentCreatedStatus.cheque_no,\n \n cheque_image:\n paymentCreatedStatus.cheque_image,\n \n payment_status: paymentCreatedStatus.payment_status,\n amount:\n paymentCreatedStatus.amount,\n\n },\n });\n }}\n />\n \n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n
\n \n
\n {hasData && (\n \n \n \n \n \n )}\n
\n )}\n \n )}\n \n \n \n \n \n
\n
\n
\n );\n }\n}\n\nPaymentStatussList.propTypes = {\n match: PropTypes.object,\n paymentStatuss: PropTypes.array,\n bankAccounts: PropTypes.array,\n className: PropTypes.any,\n onGetCCreatedOutStatuss: PropTypes.func,\n onUpdatePaymentOutCCreatedStatuss: PropTypes.func,\n onGetbankAccounts: PropTypes.func,\n history: PropTypes.any,\n paymentStatuss: PropTypes.array,\n onDeletePaymentout: PropTypes.func,\n};\n\nconst mapStateToProps = ({ paymentStatuss }) => ({\n paymentStatuss: paymentStatuss.paymentStatuss,\n bankAccounts: paymentStatuss.bankAccounts,\n paymentStatuss: paymentStatuss.paymentStatuss,\n\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetbankAccounts: () => dispatch(getBankAccounts()),\n\n onGetCCreatedOutStatuss: id => dispatch(getCCreatedOutStatuss(id)),\n onUpdatePaymentOutCCreatedStatuss: paymentCreatedStatus =>\n dispatch(updatePaymentOutCCreatedStatuss(paymentCreatedStatus)),\n onDeletePaymentout: paymentCreatedStatus => dispatch(deletePaymentout(paymentCreatedStatus)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PaymentStatussList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\nimport moment from 'moment';\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport { getCorporateCommit } from \"store/activtylogfinance/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass MsgsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n activitylogfinance: [],\n activitylogfinance: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { activitylogfinance, onGetCorporateCommit } = this.props;\n onGetCorporateCommit(this.props.match.params.id);\n this.setState({ activitylogfinance });\n console.log(\"helllloooo\",this.state.activitylogfinance)\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { activitylogfinance } = this.props;\n if (\n !isEmpty(activitylogfinance) &&\n size(prevProps.activitylogfinance) !== size(activitylogfinance)\n ) {\n this.setState({ activitylogfinance: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { activitylogfinance } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onGetCorporateCommit,\n } = this.props;\n const pageOptions = {\n sizePerPage: 10,\n totalSize: activitylogfinance.length, // replace later with size(activitylogfinance),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n Comments List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {!isEmpty(this.props.activitylogfinance) &&\n this.props.activitylogfinance.map((activitylogfinance, key) => (\n \n \n \n {activitylogfinance.actions === \"Created\" && (\n
\n {`${activitylogfinance.name}`} Created a {\" \"}\n {activitylogfinance.type} form for{\" \"}\n \n {activitylogfinance.payment_for}{\" \"}\n {activitylogfinance.payment_for === \"Lab\" ? (\n <>({activitylogfinance.lab_name})\n ) : null}\n\n {\" \"}\n {/* on{\" \"}\n {moment(activitylogfinance.payment_at).format(\"DD MMM YYYY, h:mm A\")}\n {\" \"} */}\n at{\" \"}\n {moment(activitylogfinance.created_at).format(\"DD MMM YYYY, h:mm A\")}{\" \"}\n with ID{\" \"}\n \n {activitylogfinance.corporate_payment_id }\n \n .\n
\n )}\n\n {activitylogfinance.actions === \"Paid\" && (\n
\n {`${activitylogfinance.name}`} Changed Status of{\" \"}\n {activitylogfinance.type} with ID{\" \"}\n {activitylogfinance.corporate_payment_id }{\" \"}\n for {activitylogfinance.payment_for}{\" \"}\n {activitylogfinance.payment_for}{\" \"}\n {activitylogfinance.payment_for === \"Lab\" ? (\n <>({activitylogfinance.lab_name})\n ) : null}\n\n \n {\" \"}\n from {activitylogfinance.old_value} to{\" \"}\n {activitylogfinance.new_value} \n \n {\" \"}\n at{\" \"}\n {moment(activitylogfinance.created_at).format(\"DD MMM YYYY, h:mm A\")}\n\n .\n
\n )}\n {activitylogfinance.actions === \"Submit\" && (\n
\n {`${activitylogfinance.name}`} Changed Status of{\" \"}\n {activitylogfinance.type} with ID{\" \"}\n {activitylogfinance.corporate_payment_id }{\" \"}\n for {activitylogfinance.payment_for}{\" \"}\n {activitylogfinance.payment_for}{\" \"}\n {activitylogfinance.payment_for === \"Lab\" ? (\n <>({activitylogfinance.lab_name})\n ) : null}\n\n \n {\" \"}\n from Unpaid to{\" \"}\n Submit \n \n {\" \"}\n at{\" \"}\n {moment(activitylogfinance.created_at).format(\"DD MMM YYYY, h:mm A\")}\n\n .\n
\n )}\n\n {activitylogfinance.actions == \"Synchronize\" && (\n
\n {activitylogfinance.lab_name} Synchronizes its\n main lab tests on{\" \"}\n {moment(activitylogfinance.created_at).format(\"DD MMM YYYY, h:mm A\")}{\" \"}\n at{\" \"}\n {moment(activitylogfinance.created_at).format(\"DD MMM YYYY, h:mm A\")}\n .\n
\n )}\n \n \n
\n
\n \n ))}\n {isEmpty(this.props.activitylogfinance) && (\n \n \n
\n
\n No Comments exists.....\n
\n
\n \n
\n )}\n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nMsgsList.propTypes = {\n match: PropTypes.object,\n activitylogfinance: PropTypes.array,\n className: PropTypes.any,\n onGetCorporateCommit: PropTypes.func,\n};\n\nconst mapStateToProps = ({ activitylogfinance }) => ({\n activitylogfinance: activitylogfinance.activitylogfinance,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetCorporateCommit: id => dispatch(getCorporateCommit(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(MsgsList));\n","import {\n GET_ACTIVITY_LOG_FINANCE,\n GET_ACTIVITY_LOG_FINANCE_FAIL,\n GET_ACTIVITY_LOG_FINANCE_SUCCESS,\n GET_CORPORATE_COMMIT,\n GET_CORPORATE_COMMIT_FAIL,\n GET_CORPORATE_COMMIT_SUCCESS,\n} from \"./actionTypes\";\n\n// ----------- financeofficer actions -----------------\nexport const getActivityLogFinance = id => ({\n type: GET_ACTIVITY_LOG_FINANCE,\n payload: id,\n});\n\nexport const getActivityLogFinanceSuccess = activitylogfinance => ({\n type: GET_ACTIVITY_LOG_FINANCE_SUCCESS,\n payload: activitylogfinance,\n});\n\nexport const getActivityLogFinanceFail = error => ({\n type: GET_ACTIVITY_LOG_FINANCE_FAIL,\n payload: error,\n});\n\n// ----------- corporate actions -----------------\nexport const getCorporateCommit = id => ({\n type: GET_CORPORATE_COMMIT,\n payload: id,\n});\n\nexport const getCorporateCommitSuccess = activitylogfinance => ({\n type: GET_CORPORATE_COMMIT_SUCCESS,\n payload: activitylogfinance,\n});\n\nexport const getCorporateCommitFail = error => ({\n type: GET_CORPORATE_COMMIT_FAIL,\n payload: error,\n});\n\n","import React, { useState, useEffect, useRef } from \"react\";\nimport PropTypes from \"prop-types\";\nimport axios from \"axios\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter } from \"react-router-dom\";\nimport { Card, CardBody, Col, Container, Row, Button, Table } from \"reactstrap\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport jsPDF from \"jspdf\";\nimport html2canvas from \"html2canvas\";\nimport { isEmpty, map, split } from \"lodash\";\nimport moment from 'moment';\n\n\nconst PaymentStatussList = (props) => {\n const [paymentStatuss, setPaymentStatuss] = useState({});\n const { id } = props.match.params;\n const printRef = useRef();\n\n useEffect(() => {\n const fetchPaymentStatuss = async () => {\n try {\n const response = await axios.get(`https://labhazirapi.com/api/corporate/corporate-payment-detail/${id}`);\n setPaymentStatuss(response.data);\n } catch (error) {\n console.error(\"Error fetching payment details:\", error);\n }\n };\n\n fetchPaymentStatuss();\n }, [id]);\n\n const paymentDetail = paymentStatuss.data ? paymentStatuss.data[0] : {};\n\n useEffect(() => {\n console.log(\"Payment Detail:\", paymentDetail);\n }, [paymentDetail]);\n\n const handlePrint = () => {\n window.print();\n };\n\n const handleDownload = async () => {\n if (printRef.current) {\n const canvas = await html2canvas(printRef.current);\n const imgData = canvas.toDataURL('image/png');\n const doc = new jsPDF();\n const imgWidth = 210; // A4 width in mm\n const pageHeight = 295; // A4 height in mm\n const imgHeight = canvas.height * imgWidth / canvas.width;\n let heightLeft = imgHeight;\n\n doc.addImage(imgData, 'PNG', 0, 0, imgWidth, imgHeight);\n heightLeft -= pageHeight;\n\n while (heightLeft >= 0) {\n doc.addPage();\n doc.addImage(imgData, 'PNG', 0, -heightLeft, imgWidth, imgHeight);\n heightLeft -= pageHeight;\n }\n\n doc.save('payment_details.pdf');\n }\n };\n\n return (\n
\n \n Payments Detail | Lab Hazir\n \n \n \n\n \n \n \n \n
\n {paymentDetail ? (\n
\n \n \n
\n Corporate ID: \n {paymentDetail.corporate_id} \n
\n \n \n
\n Payment Form ID: \n {paymentDetail.id} \n
\n \n
\n \n \n \n
\n Amount: \n {paymentDetail.amount} \n
\n \n \n
\n Payment Method: \n {paymentDetail.payment_method} \n
\n \n
\n \n \n
\n Payment For: \n {paymentDetail.payment_for} \n
\n \n \n
\n Payment Date: \n {/*
*/}\n {paymentDetail.payment_at} \n {/*
*/}\n
\n \n
\n
\n

Detail of Appointment

\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n {paymentDetail.items && paymentDetail.items.length > 0 ? (\n paymentDetail.items.map((item, key) =>\n item.test_appointment_id ? item.test_appointment_id.split(',').map((appointment_id, subKey) => (\n \n \n \n \n \n \n \n \n \n )) : null\n )\n ) : (\n paymentDetail.test_appointment_id ? paymentDetail.test_appointment_id.split(',').map((appointment_id, key) => (\n \n \n \n \n \n \n \n \n \n )) : null\n )}\n \n
Lab NameTypeEmployee NameEmployee TypeAppointment IDLab PayableLabhazir Payable
{item.lab_name}{item.payment_for}{item.employee_name || ''}{item.employee_type || ''}{appointment_id.trim()}\n {item.payment_for.toLowerCase() === 'lab' ? item.amount : '0'}\n \n {item.payment_for.toLowerCase() === 'labhazir' ? item.amount : '0'}\n
{paymentDetail.lab_name || ''}{paymentDetail.payment_for || ''}{paymentDetail.employee_name || ''}{paymentDetail.employee_type || ''}{appointment_id.trim() || ''}\n {paymentDetail.payment_for.toLowerCase() === 'lab' ? paymentDetail.amount : '0'}\n \n {paymentDetail.payment_for.toLowerCase() === 'labhazir' ? paymentDetail.amount : '0'}\n
\n\n\n
\n
\n ) : (\n

No payment details available.

\n )}\n
\n \n \n
\n
\n\n \n
\n
\n
\n );\n};\n\nPaymentStatussList.propTypes = {\n match: PropTypes.object,\n};\n\nexport default withRouter(PaymentStatussList);\n","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n ModalHeader,\n Row,\n Label,\n Modal,\n ModalBody,\n Button,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\"; \n\nimport { saveAs } from \"file-saver\";\nimport * as XLSX from \"xlsx\";\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { getCorporateList } from \"store/labs-list/actions\";\nimport { updateCorporateProfile } from \"../../store/actions\";\nclass LabsLists extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n labsList: [],\n id: \"\",\n LabsLists: \"\",\n btnText: \"Copy\",\n labsList: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n labsListListColumns: [\n {\n dataField: \"id\",\n text: \"Corporate ID\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.id}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n // {\n // dataField: \"id\",\n // text: \"Corporate ID\",\n // sort: true,\n // formatter: (cellContent, labsList) => (\n // <>\n // {/* {labsList.id} */}\n // \n // {labsList.id}\n // \n // \n // ),filter: textFilter(), // Add a text filter for this column\n // },\n {\n dataField: \"city\",\n text: \"City\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.city}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"user_name\",\n text: \"Corporate Name\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.user_name}\n \n ),filter: textFilter(), // Add a text filter for this column\n formatter: (cellContent, labsList) => (\n <>\n \n this.openPatientModal(e, labsList)}\n >\n {labsList.user_name}\n \n \n \n ),\n },\n \n {\n dataField: \"email\",\n text: \"Email\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.email}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"payment_terms\",\n text: \"Pyment Type\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {(labsList.payment_terms || \"--\").toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"payment_request\",\n text: \"Request for Change Payment\",\n sort: true,\n formatter: (cellContent, labsList) => {\n const paymentRequest = labsList.payment_request;\n \n // Conditionally render based on the value of paymentRequest\n return (\n
\n {paymentRequest === 'Approved Payment Method' ? (\n {paymentRequest} // Display as plain text\n ) : (\n paymentRequest ? (\n this.toggles(labsList)} // Pass the entire labsList\n >\n Request for Accept\n \n ) : (\n -- // Display placeholder if no paymentRequest\n )\n )}\n
\n );\n },\n filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"phone\",\n text: \"Phone\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.phone}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"lab_payable\",\n text: \"Total Lab Payable\",\n sort: true,\n formatter: (cellContent, labsList) => (\n \n {(labsList.lab_payable || \"--\").toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"lh_payable\",\n text: \"Total LH Payable\",\n sort: true,\n formatter: (cellContent, labsList) => (\n \n {(labsList.lh_payable || \"--\").toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"account_id\",\n text: \"Account Statement\",\n sort: true,\n formatter: (cellContent, labsList) => (\n \n Account statement\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n\n ],\n };\n this.handlePaymentStatusClick =this.handlePaymentStatusClick.bind(this);\n this.toggles = this.toggles.bind(this);\n }\n\n\n // componentDidMount() {\n // const { labsList, onGetDonorsList } = this.props;\n // console.log(onGetDonorsList());\n // this.setState({ labsList });\n // }\n componentDidMount() {\n const { labsList, onGetDonorsList } = this.props;\n onGetDonorsList(this.state.user_id);\n console.log(onGetDonorsList());\n this.setState({ labsList });\n }\n\n // eslint-disable-next-line no-unused-vars\n // componentDidUpdate(prevProps, prevState, snapshot) {\n // const { banks } = this.props;\n // if (\n // !isEmpty(banks) &&\n // size(prevProps.banks) !== size(banks)\n // ) {\n // this.setState({ banks: {}, isEdit: false });\n // }\n // }\n\n // componentDidMount() {\n // const { b2bAllClients, onGetB2bAllClientsList } = this.props;\n // onGetB2bAllClientsList(this.state.user_id);\n // this.setState({ b2bAllClients });\n // }\n toggles = (labsList) => {\n console.log(\"labsList:\", labsList);\n \n let city;\n if (typeof labsList.city_id === 'string') {\n // Split the city_ids if they are in a comma-separated string format\n city = labsList.city_id.split(',').map(id => id.trim()).join(', ');\n } else if (Array.isArray(labsList.city_id)) {\n // Join array elements if city_ids is already an array\n city = labsList.city_id.join(', ');\n } else {\n // Handle unexpected cases\n city = labsList.city_id || ''; // Default to an empty string if city_id is undefined or null\n }\n \n console.log(\"Processed City:\", city);\n \n this.setState({\n modal: !this.state.modal,\n selectedLabId: labsList.account_id,\n selectedLabName: labsList.name,\n selectedLabEmail: labsList.email,\n selectedLabPhone: labsList.phone,\n selectedLabLandline: labsList.landline,\n selectedLabAddress: labsList.address,\n selectedLabCity: city,\n selectedLabNTN: labsList.national_taxation_no,\n selectedLablogo: labsList.logo,\n selectedLabPT: labsList.payment_terms,\n });\n };\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n // The code for converting \"image source\" (url) to \"Base64\"\n toDataURL = url =>\n fetch(url)\n .then(response => response.blob())\n .then(\n blob =>\n new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.onerror = reject;\n reader.readAsDataURL(blob);\n })\n );\n\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n handlePaymentStatusClick = async () => {\n const { selectedLabId, selectedLabName, selectedLabEmail, selectedLabPhone, selectedLabLandline, selectedLabAddress, selectedLabCity, selectedLabNTN, selectedLablogo, selectedLabPT } = this.state;\n \n // Function to convert image URL to Base64 Data URL\n const urlToDataURL = async (url) => {\n const response = await fetch(url);\n const blob = await response.blob();\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.onerror = reject;\n reader.readAsDataURL(blob);\n });\n };\n \n // Check if selectedLablogo is a string (URL) and convert it\n if (typeof selectedLablogo === 'string') {\n try {\n console.log(\"Converting logo URL to Base64...\");\n const imageUrl = process.env.REACT_APP_BACKENDURL + selectedLablogo;\n console.log(\"sdggfhjhdf\",imageUrl )\n const dataUrl = await urlToDataURL(imageUrl);\n const fileData = this.dataURLtoFile(dataUrl, selectedLablogo.split(\"/\").pop());\n console.log(\"File converted from Base64:\", fileData);\n \n // Prepare form values\n const values = {\n payment_request: \"Approved Payment Method\",\n limit: \"\",\n end_date: \"\",\n reason: \"\",\n name: selectedLabName,\n logo: fileData,\n national_taxation_no: selectedLabNTN,\n payment_terms: \"Payment by Patient to Lab\",\n city_id: selectedLabCity,\n address: selectedLabAddress,\n landline: selectedLabLandline,\n phone: selectedLabPhone,\n email: selectedLabEmail,\n };\n \n // Call the prop method with the prepared values\n this.props.updateCorporateProfile(values, selectedLabId);\n setTimeout(() => {\n this.props.onGetDonorsList(this.state.user_id);\n }, 1000);\n setTimeout(() => {\n this.setState({ modal: false });\n }, 1000);\n } catch (error) {\n console.error(\"Error converting logo to Base64:\", error);\n }\n } \n };\n\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n corporate_address: arg.address,\n corporate_phone: arg.landline,\n corporate_email: arg.email,\n\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n exportToExcel = () => {\n const { labsList } = this.props;\n const fileType = \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\n const fileExtension = \".xlsx\";\n\n // Define fields to export\n const fieldsToExport = [\n \"id\",\n \"city\",\n \"user_name\",\n \"email\",\n \"phone\",\n ];\n\n // Map each row to an object with only the desired fields\n const dataToExport = labsList.map(statement => {\n const rowData = {};\n fieldsToExport.forEach(field => {\n rowData[field] = statement[field];\n });\n return rowData;\n });\n\n // Convert data to Excel format and save as file\n const ws = XLSX.utils.json_to_sheet(dataToExport);\n const wb = { Sheets: { data: ws }, SheetNames: [\"data\"] };\n const excelBuffer = XLSX.write(wb, { bookType: \"xlsx\", type: \"array\" });\n const data = new Blob([excelBuffer], { type: fileType });\n const fileName = \"corporate_list\" + fileExtension;\n saveAs(data, fileName);\n };\n\n render() {\n const { SearchBar } = Search;\n const { updateCorporateProfile } = this.props;\n const { labsList } = this.props;\n const data = this.state.data;\n const { onGetDonorsList } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: labsList.length, // replace later with size(labsList),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n return (\n \n
\n \n Corporate List | Lab Hazir\n \n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n {/*
\n \n \n
*/}\n
\n \n
\n \n \n
\n \n \n \n Alert:\n \n \n
\n \n
\n
    \n
  1. First Check all appointemnt which is in process or pending of this corporation
  2. \n
  3. After that Corporate payment term will be change from corporate pament to lab to patient to lab
  4. \n
  5. After that all employees quota equal to zero
  6. \n
\n
\n
\n \n \n \n \n \n
\n\n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n\n
\n {\n navigator.clipboard.writeText(\n this.state\n .corporate_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
\n
\n \n
\n
\n
\n
\n \n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nLabsLists.propTypes = {\n match: PropTypes.object,\n labsList: PropTypes.array,\n className: PropTypes.any,\n onGetDonorsList: PropTypes.func,\n updateCorporateProfile: PropTypes.func,\n};\nconst mapStateToProps = ({ labsList}) => ({\n labsList: labsList.labsList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetDonorsList: id => dispatch(getCorporateList(id)),\n updateCorporateProfile: (profile, id) => dispatch(updateCorporateProfile(profile, id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(LabsLists));\n","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport * as Yup from \"yup\";\n\nimport {\n Alert,\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Button,\n Modal,\n ModalBody,\n ModalHeader,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport \"assets/scss/table.scss\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { getTestsList } from \"store/test-list/actions\";\nimport {\n // getUnits,\n addNewOfferedTest,\n} from \"store/offered-tests/actions\";\n\nclass TestsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n testsList: [],\n offeredTests: [],\n offeredTest: \"\",\n test_id: \"\",\n assignedTo: \"\",\n TestsList: \"\",\n btnText: \"Copy\",\n isPaymentUpdated: false,\n disabledTests: [], // an array to keep track of disabled test IDs\n testsList: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n testsListListColumns: [\n {\n text: \"Test ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n formatter: (cellContent, testsList) => <>{testsList.id},\n },\n {\n dataField: \"name\",\n text: \"Test name\",\n sort: true,\n // headerStyle: {\n // width: \"330px\",\n // textAlign: \"left\",\n // },\n formatter: (cellContent, testsList) => (\n <>\n {testsList.type == \"Test\" ? (\n \n

\n this.openPatientModal(e, testsList)}\n // onMouseEnter={e => this.openPatientModal(e, testsList)}\n // onPointerLeave={this.handleMouseExit()}\n >\n {testsList.name}\n

\n
\n ) : (\n \n

\n this.openOtherModal(e, testsList)}\n // onMouseEnter={e => this.openOtherModal(e, testsList)}\n // onPointerLeave={this.handleMouseExit()}\n >\n {testsList.name}\n

\n
\n )}\n \n ),\n },\n {\n dataField: \"type\",\n text: \"Type\",\n sort: true,\n // formatter: (cellContent, audit) => (\n // <>\n // \n // {new Date(audit.generated_at).toLocaleString(\"en-US\")}\n // \n // \n // ),\n },\n {\n dataField: \"test_categories\",\n text: \"Category\",\n sort: true,\n // formatter: (cellContent, audit) => (\n // <>\n // {new Date(audit.assigned_at).toLocaleString(\"en-US\")}\n // \n // ),\n },\n {\n dataField: \"sample_type\",\n text: \"Sample Type\",\n sort: true,\n // formatter: (cellContent, audit) => (\n // <>\n // {new Date(audit.audited_at).toLocaleString(\"en-US\")}\n // \n // ),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, testsList) => (\n //
\n
\n this.handleOfferedTestClicks(e, testsList.id, testsList.name, testsList.sample_type)}\n disabled={this.state.disabledTests.includes(testsList.id)} // Disable the button if the item is in the cart\n >\n {this.state.disabledTests.includes(testsList.id) ? 'Already Added' : 'Add Test'}\n \n
\n //
\n ),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.toggleMessageModal.bind(this);\n this.handleOfferedTestClicks = this.handleOfferedTestClicks.bind(this);\n // this.handleApprovedEvent = this.handleApprovedEvent.bind(this);\n }\n\n componentDidMount() {\n const { testsList, ongetTestsList } = this.props;\n console.log(ongetTestsList(this.state.user_id));\n this.setState({ testsList });\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n test_details: arg.test_details,\n description_in_english: arg.description_in_english,\n description_in_urdu: arg.description_in_urdu,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n openOtherModal = (e, arg) => {\n this.setState({\n OtherModal: true,\n test_details: arg.test_details,\n description_in_english: arg.description_in_english,\n description_in_urdu: arg.description_in_urdu,\n });\n };\n // handleMouseExit = () => {\n // this.setState({\n // PatientModal: false,\n // OtherModal: false,\n // isHovered: false,\n \n // });\n // };\n toggleOtherModal = () => {\n this.setState(prevState => ({\n OtherModal: !prevState.OtherModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleApprovedEvent = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggle();\n };\n\n toggleMessageModal = () => {\n this.setState(prevState => ({\n messageModal: !prevState.messageModal,\n }));\n };\n\n openMessageModal = (e, arg) => {\n this.setState({ messageModal: true, message: arg.message });\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n handleApprovedEvent = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggle();\n };\n handleOfferedTestClicks = (e, arg1, arg2, arg3) => {\n this.setState({\n offeredTest: \"\",\n isEdit: false,\n initialValues: {\n ...this.state.initialValues,\n test_id: arg1, // set the test_id value to arg\n test_name: arg2,\n sample_type: arg3,\n },\n selectedTest: arg1, // store arg in component state\n selectedname: arg2,\n selectedtype: arg3,\n // Check if the test is already disabled\n });\n if (!this.state.disabledTests.includes(arg1)) {\n // Add the test ID to the disabledTests array\n this.setState((prevState) => ({\n disabledTests: [...prevState.disabledTests, arg1],\n }));\n }\n this.toggle();\n };\n \n // handleOfferedTestClicks = (e, arg) => {\n // this.setState(\n // console.log(\"fuction call\",{\n // offeredTest: \"\",\n // isEdit: false,\n // initialValues: {\n // ...this.state.initialValues,\n // test_id: arg // set the test_id value to arg\n // }\n // }));\n // this.toggle();\n // };\n // handleOfferedTestClicks = (e, arg) => {\n // this.setState(\n // console.log(\"id in function\",{\n // test_id: arg,\n // offeredTest: \"\",\n // isEdit: false\n // }));\n // this.toggle();\n // };\n // handleOfferedTestClick = arg => {\n // const offeredTest = arg;\n // const testsList =arg;\n\n // this.setState({\n // test_id: offeredTest.test_id,\n // offeredTest: {\n // id: offeredTest.id,\n // test_name: offeredTest.name,\n // // unit_name: offeredTest.unit_name,\n // test_id: offeredTest.test_id,\n // // unit_id: offeredTest.unit_id,\n // duration_required: offeredTest.duration_required,\n // duration_type: offeredTest.duration_type,\n // sample_type: offeredTest.sample_type,\n // price: offeredTest.price,\n // is_eqa_participation: offeredTest.is_eqa_participation,\n // is_home_sampling_available: offeredTest.is_home_sampling_available,\n // is_test_performed: offeredTest.is_test_performed,\n // is_active:'Yes',\n // },\n // isEdit: true,\n // });\n\n // this.toggle();\n // };\n\n render() {\n const { SearchBar } = Search;\n const { isEdit, deleteModal } = this.state;\n const { offeredTests } = this.props;\n const offeredTest = this.state.offeredTest;\n const { testsList } = this.props;\n const data = this.state.data;\n const { onAddNewOfferedTest, ongetTestsList } = this.props;\n\n const pageOptions = {\n sizePerPage: testsList.length,\n totalSize: testsList.length, // replace later with size(testsList),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n Medical Tests | Lab Hazir\n \n\n \n {/* Render Breadcrumbs */}\n \n \n {\n this.state.isPaymentUpdated && this.state.isPaymentUpdated ? (\n Offered Test Added Successfully.\n ) : null}\n\n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n
\n \n \n Note: The Tests, Profile and Packages already added will not be displayed here.\n.\n \n \n
\n \n
\n
\n \n \n
\n
\n \n \n
\n \n \n
\n \n \n \n {!!isEdit\n ? \"Edit Offered Test\"\n : \"Add Offered Test\"}\n \n \n {\n const { isEdit, selectedTest , selectedname, selectedtype } = this.state; // get isEdit and selectedTest from component state\n if (isEdit) {\n const updateOfferedTest = {\n id: offeredTest.id,\n test_id: selectedTest, // use selectedTest as the test_id value\n test_name: selectedTest,\n duration_required: values.duration_required,\n duration_type: values.duration_type,\n sample_type: values.sample_type,\n price: values.price,\n is_eqa_participation: values.is_eqa_participation,\n is_home_sampling_available: values.is_home_sampling_available,\n is_test_performed: values.is_test_performed,\n is_active: values.is_active,\n };\n } else {\n const newOfferedTest = {\n test_id: selectedTest, // use selectedTest as the test_id value\n test_name: selectedname,\n test_type: this.state.test_type,\n test_details: this.state.test_details,\n duration_required: values.duration_required,\n duration_type: values.duration_type,\n sample_type: selectedtype,\n price: values.price,\n is_eqa_participation: values.is_eqa_participation,\n is_home_sampling_available: values.is_home_sampling_available,\n is_test_performed: values.is_test_performed,\n is_active: values.is_active,\n };\n onAddNewOfferedTest(newOfferedTest, this.state.user_id);\n // setTimeout(() => {\n this.setState({ isPaymentUpdated: true }); \n // }, 1000);\n setTimeout(() => {\n ongetTestsList(this.state.user_id);\n this.setState({ isPaymentUpdated: false }); \n }, 2000);\n }\n this.setState({\n selectedOfferedTest: null,\n });\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n
\n \n \n \n
\n\n
\n \n \n \n {\n // this.setState({\n // offeredTest: {\n // id: this.state\n // .offeredTest\n // .id,\n // duration_required:\n // e.target.value,\n // lab_id:\n // this.props.match\n // .params.id,\n // },\n // });\n // }}\n className={\n \"form-control\" +\n (errors.duration_required &&\n touched.duration_required\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n
\n \n \n \n
\n\n \n \n\n
\n \n \n \n
\n\n
\n \n \n \n \n \n \n \n
\n
\n \n \n \n \n \n \n \n
\n
\n \n \n \n \n \n \n
\n\n
\n \n \n \n \n \n
\n\n \n
\n\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n \n
\n \n
\n
\n \n this.setState({\n messageModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
\n
\n
\n
\n
\n \n
\n
\n\n
\n
\n

\n Audit Message\n

\n

\n {this.state.message}\n

\n
\n
\n
\n
\n
\n \n {/* \n \n \n \n */}\n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nTestsList.propTypes = {\n match: PropTypes.object,\n testsList: PropTypes.array,\n className: PropTypes.any,\n ongetTestsList: PropTypes.func,\n onAddNewOfferedTest: PropTypes.func,\n offeredTests: PropTypes.array,\n\n onAssignAudit: PropTypes.func,\n};\nconst mapStateToProps = ({ tests }) => ({\n testsList: tests.testsList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n ongetTestsList: id => dispatch(getTestsList(id)),\n onAddNewOfferedTest: (offeredTest, id) =>\n dispatch(addNewOfferedTest(offeredTest, id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(TestsList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Card, CardBody, Col, Container, Row, Label, Alert } from \"reactstrap\";\nimport MetaTags from \"react-meta-tags\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\n// action\nimport {\n apiError,\n registerUser,\n registerUserFailed,\n} from \"../../store/actions\";\n\n// Redux\nimport { connect } from \"react-redux\";\nimport { Link } from \"react-router-dom\";\nimport { Redirect } from \"react-router-dom\";\n\nclass SampleCollectorRegister extends Component {\n constructor(props) {\n super(props);\n this.state = {\n usernameFieldError: null,\n // emailFieldError: null,\n passwordFieldError: null,\n incompleteRegistrationError: null,\n submittedMessage: null,\n };\n }\n\n componentDidMount() {\n // Removing attributes from the body\n const elem = document.getElementsByTagName(\"body\")[0];\n while (elem.attributes.length > 0) {\n elem.removeAttribute(elem.attributes[0].name);\n }\n\n this.props.apiError(\"\");\n this.props.registerUserFailed(\"\");\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.usernameError != this.props.usernameError) {\n this.setState({ usernameFieldError: this.props.usernameError });\n }\n\n // if (prevProps.emailError != this.props.emailError) {\n // this.setState({ emailFieldError: this.props.emailError });\n // }\n\n if (prevProps.passwordError != this.props.passwordError) {\n this.setState({ passwordFieldError: this.props.passwordError });\n }\n\n if (\n prevProps.incompleteRegistrationError !=\n this.props.incompleteRegistrationError\n ) {\n this.setState({\n incompleteRegistrationError: this.props.incompleteRegistrationError,\n });\n }\n }\n togglePasswordVisibility = () => {\n const passwordInput = document.querySelector('input[name=\"password\"]');\n const eyeIcon = document.getElementById('eye-icon');\n\n if (passwordInput && passwordInput.type === 'password') {\n passwordInput.type = 'text';\n eyeIcon.className = 'mdi mdi-eye-off-outline';\n } else if (passwordInput) {\n passwordInput.type = 'password';\n eyeIcon.className = 'mdi mdi-eye-outline';\n }\n };\n togglePassword1Visibility = () => {\n const passwordInput = document.querySelector('input[name=\"password2\"]');\n const eyeIcon2 = document.getElementById('eye-icon1');\n\n if (passwordInput && passwordInput.type === 'password') {\n passwordInput.type = 'text';\n eyeIcon2.className = 'mdi mdi-eye-off-outline';\n } else if (passwordInput) {\n passwordInput.type = 'password';\n eyeIcon2.className = 'mdi mdi-eye-outline';\n }\n };\n\n render() {\n if (this.props.userID) {\n if (this.props.userAccountType == \"samplecollector\") {\n return (\n \n );\n }\n }\n\n return (\n \n
\n \n Sample Collector | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n
\n \n Note: Use UNIQUE Name and Email ID of the sample Collector. Do not use Email ID of the Lab already used at Lab Registration \n
\n {/* To show submitted message of processing if submission is succesful */}\n
\n \n {this.state.submittedMessage && (\n \n {this.state.submittedMessage}\n \n )}\n\n {/* To show incomplete registration error to inform user */}\n {this.state.incompleteRegistrationError && (\n
\n \n The Username or Email Already Used,{\" \"}\n \n Please Enter Your Unique Username and Email.\n \n {/* . If you want to\n regispatient-information/113893749834ter now, please\n click on Next button once again. */}\n \n {/* \n After completing the step 2 of registration, please\n make sure to{\" \"}\n \n verify your account on new verification email\n {\" \"}\n you will receive from us and{\" \"}\n ignore the old one (if any) you\n have received last time.\n */}\n
\n )}\n\n (val && val.length > 0 ? true : false),\n then: Yup.string().oneOf(\n [Yup.ref(\"password\")],\n \"Both password need to be the same\"\n ),\n }),\n })}\n onSubmit={values => {\n this.props.registerUser(values);\n\n // If no error messages then show wait message\n setTimeout(() => {\n if (\n !this.state.usernameFieldError &&\n !this.state.passwordFieldError &&\n // !this.state.emailFieldError &&\n !this.state.incompleteRegistrationError\n ) {\n this.setState({\n submittedMessage:\n \"Please wait for a while we are processing. Thank you for your patience.\",\n });\n }\n }, 1000);\n }}\n >\n {({ errors, status, touched }) => (\n
\n {/* Username field */}\n
\n \n {\n this.setState({\n usernameFieldError: null,\n });\n }}\n className={\n \"form-control\" +\n ((errors.username && touched.username) ||\n this.state.usernameFieldError\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n\n
\n {this.state.usernameFieldError}\n
\n
\n\n {/* Email field */}\n {/*
\n \n {\n this.setState({\n emailFieldError: null,\n });\n }}\n className={\n \"form-control\" +\n ((errors.email && touched.email) ||\n this.state.emailFieldError\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n\n
\n {this.state.emailFieldError}\n
\n
*/}\n\n {/* Password field */}\n
\n \n
\n {\n this.setState({\n passwordFieldError: null,\n });\n }}\n className={\n \"form-control\" +\n ((errors.password && touched.password) ||\n this.state.passwordFieldError\n ? \" is-invalid\"\n : \"\")\n }\n />\n
\n \n \n \n
\n
\n \n \n \n\n
\n {this.state.passwordFieldError}\n
\n \n
\n \n
\n \n \n \n
\n
\n \n \n \n
\n \n\n {/* Account type field */}\n \n\n {/*
\n \n {\" \"}\n Next{\" \"}\n \n
*/}\n\n \n \n
\n \n Next\n \n
\n \n
\n \n )}\n \n
\n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nSampleCollectorRegister.propTypes = {\n match: PropTypes.object,\n apiError: PropTypes.any,\n registerUser: PropTypes.func,\n registerUserFailed: PropTypes.any,\n usernameError: PropTypes.any,\n // emailError: PropTypes.any,\n passwordError: PropTypes.any,\n incompleteRegistrationError: PropTypes.any,\n userID: PropTypes.any,\n userAccountType: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const {\n userID,\n userAccountType,\n // emailError,\n usernameError,\n passwordError,\n incompleteRegistrationError,\n loading,\n } = state.Account;\n return {\n userID,\n userAccountType,\n // emailError,\n usernameError,\n passwordError,\n incompleteRegistrationError,\n loading,\n };\n};\n\nexport default connect(mapStateToProps, {\n registerUser,\n apiError,\n registerUserFailed,\n})(SampleCollectorRegister);\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter } from \"react-router-dom\";\nimport { Card, CardBody, Col, Container, Row, Label, Input } from \"reactstrap\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport { addNewSampleCollector } from \"store/sample-collectors/actions\";\n\nclass SampleCollectorsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n sampleCollectors: [],\n sampleCollector: \"\",\n collectorImg: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n componentDidMount() {}\n\n render() {\n const { onAddNewSampleCollector } = this.props;\n const sampleCollector = this.state.sampleCollector;\n\n return (\n \n
\n \n Home Sample Collectors List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n {\n const newSampleCollector = {\n id: Math.floor(Math.random() * (30 - 20)) + 20,\n name: values.name,\n gender: values.gender,\n cnic: values.cnic,\n phone: values.phone,\n photo: this.state.collectorImg,\n account_id: this.props.match.params.id,\n };\n\n // save new SampleCollector\n onAddNewSampleCollector(\n newSampleCollector,\n this.state.user_id\n );\n\n setTimeout(() => {\n this.props.history.push(\"/sample-collectors\");\n }, 1000);\n\n this.setState({\n selectedSampleCollector: null,\n });\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n
\n \n {\n this.setState({\n sampleCollector: {\n name: e.target.value,\n gender: sampleCollector.gender,\n cnic: sampleCollector.cnic,\n phone: sampleCollector.phone,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.name && touched.name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n
\n \n {\n this.setState({\n sampleCollector: {\n name: sampleCollector.name,\n gender: e.target.value,\n cnic: sampleCollector.cnic,\n phone: sampleCollector.phone,\n },\n });\n }}\n multiple={false}\n >\n \n \n \n
\n\n
\n \n {\n this.setState({\n sampleCollector: {\n name: sampleCollector.name,\n gender: sampleCollector.gender,\n cnic: e.target.value,\n phone: sampleCollector.phone,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.cnic && touched.cnic\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n
\n \n {\n this.setState({\n sampleCollector: {\n name: sampleCollector.name,\n gender: sampleCollector.gender,\n cnic: sampleCollector.cnic,\n phone: e.target.value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.phone && touched.phone\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n {/* Photo field */}\n
\n \n \n this.setState({\n collectorImg: e.target.files[0],\n })\n }\n className={\n \"form-control\" +\n (errors.photo && touched.photo\n ? \" is-invalid\"\n : \"\")\n }\n />\n\n \n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nSampleCollectorsList.propTypes = {\n history: PropTypes.any,\n match: PropTypes.object,\n sampleCollectors: PropTypes.array,\n className: PropTypes.any,\n onAddNewSampleCollector: PropTypes.func,\n};\n\nconst mapStateToProps = ({ sampleCollectors }) => ({\n sampleCollectors: sampleCollectors.sampleCollectors,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onAddNewSampleCollector: (sampleCollector, id) =>\n dispatch(addNewSampleCollector(sampleCollector, id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(SampleCollectorsList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getSampleCollectors,\n addNewSampleCollector,\n updateSampleCollector,\n deleteSampleCollector,\n} from \"store/sample-collectors/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass SampleCollectorsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n sampleCollectors: [],\n sampleCollector: \"\",\n collectorImg: \"\",\n modal: false,\n deleteModal: false,\n sampleCollectorListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, sampleCollector) => (\n <>{sampleCollector.id}\n ),\n },\n {\n dataField: \"name\",\n text: \"Name\",\n sort: true,\n },\n {\n dataField: \"gender\",\n text: \"Gender\",\n sort: true,\n },\n {\n dataField: \"cnic\",\n text: \"CNIC\",\n sort: true,\n },\n {\n dataField: \"phone\",\n text: \"Mobile No.\",\n sort: true,\n },\n {\n dataField: \"photo\",\n text: \"Photo\",\n sort: true,\n formatter: (cellContent, sampleCollector) => (\n <>\n \n View\n \n \n ),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, sampleCollector) => (\n
\n \n \n \n this.handleSampleCollectorClick(e, sampleCollector)\n }\n >\n \n \n \n this.onClickDelete(sampleCollector)}\n >\n \n
\n ),\n },\n ],\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n this.handleSampleCollectorClick =\n this.handleSampleCollectorClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleSampleCollectorClicks =\n this.handleSampleCollectorClicks.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n\n // The code for converting \"image source\" (url) to \"Base64\"\n toDataURL = url =>\n fetch(url)\n .then(response => response.blob())\n .then(\n blob =>\n new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.onerror = reject;\n reader.readAsDataURL(blob);\n })\n );\n\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n componentDidMount() {\n const { onGetSampleCollectors } = this.props;\n onGetSampleCollectors(this.state.user_id);\n this.setState({ sampleCollectors: this.props.sampleCollectors });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleSampleCollectorClicks = () => {\n this.setState({ sampleCollector: \"\", collectorImg: \"\", isEdit: false });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { sampleCollectors } = this.props;\n if (\n !isEmpty(sampleCollectors) &&\n size(prevProps.sampleCollectors) !== size(sampleCollectors)\n ) {\n this.setState({ sampleCollectors: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = sampleCollectors => {\n this.setState({ sampleCollectors: sampleCollectors });\n this.setState({ deleteModal: true });\n };\n\n handleDeleteSampleCollector = () => {\n const { onDeleteSampleCollector, onGetSampleCollectors } = this.props;\n const { sampleCollectors } = this.state;\n if (sampleCollectors.id !== undefined) {\n onDeleteSampleCollector(sampleCollectors);\n setTimeout(() => {\n onGetSampleCollectors(this.state.user_id);\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n\n handleSampleCollectorClick = (e, arg) => {\n const sampleCollector = arg;\n\n this.setState({\n sampleCollector: {\n id: sampleCollector.id,\n name: sampleCollector.name,\n gender: sampleCollector.gender,\n cnic: sampleCollector.cnic,\n phone: sampleCollector.phone,\n photo: process.env.REACT_APP_BACKENDURL + sampleCollector.photo,\n },\n collectorImg: \"\",\n isEdit: true,\n });\n\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { sampleCollectors } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onAddNewSampleCollector,\n onUpdateSampleCollector,\n onGetSampleCollectors,\n } = this.props;\n const { selectedSampleCollector } = this.state;\n const sampleCollector = this.state.sampleCollector;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: sampleCollectors.length, // replace later with size(sampleCollectors),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n this.setState({ deleteModal: false })}\n />\n
\n \n Home Sample Collectors List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n
\n
\n \n \n
\n {/* \n \n Add New Collector\n */}\n \n \n Add New Collector\n \n
\n \n
\n \n \n
\n \n\n \n \n {!!isEdit\n ? \"Edit Home Sample Collector\"\n : \"Add Home Sample Collector\"}\n \n \n \n hiddenEditFlag == false, //just an e.g. you can return a function\n then: Yup.string().required(\n \"Please upload photo\"\n ),\n }\n ),\n })}\n onSubmit={values => {\n if (isEdit) {\n if (!this.state.collectorImg) {\n this.toDataURL(\n sampleCollector.photo\n ).then(dataUrl => {\n var fileData =\n this.dataURLtoFile(\n dataUrl,\n sampleCollector.photo\n .split(\"/\")\n .at(-1)\n );\n this.setState({\n collectorImg: fileData,\n });\n\n const updateSampleCollector =\n {\n id: sampleCollector.id,\n name: values.name,\n gender: values.gender,\n cnic: values.cnic,\n phone: values.phone,\n photo:\n this.state.collectorImg,\n };\n\n // update SampleCollector\n onUpdateSampleCollector(\n updateSampleCollector\n );\n setTimeout(() => {\n onGetSampleCollectors(\n this.state.user_id\n );\n }, 1000);\n });\n } else {\n const updateSampleCollector = {\n id: sampleCollector.id,\n name: values.name,\n gender: values.gender,\n cnic: values.cnic,\n phone: values.phone,\n photo:\n this.state.collectorImg,\n };\n\n // update SampleCollector\n onUpdateSampleCollector(\n updateSampleCollector\n );\n setTimeout(() => {\n onGetSampleCollectors(\n this.state.user_id\n );\n }, 1000);\n }\n } else {\n const newSampleCollector = {\n id:\n Math.floor(\n Math.random() * (30 - 20)\n ) + 20,\n name: values.name,\n gender: values.gender,\n cnic: values.cnic,\n phone: values.phone,\n photo: this.state.collectorImg,\n };\n\n // save new SampleCollector\n onAddNewSampleCollector(\n newSampleCollector,\n this.state.user_id\n );\n setTimeout(() => {\n onGetSampleCollectors(\n this.state.user_id\n );\n }, 1000);\n }\n this.setState({\n selectedSampleCollector: null,\n });\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n \n\n
\n \n {\n if (isEdit) {\n this.setState({\n sampleCollector: {\n id: sampleCollector.id,\n name: e.target\n .value,\n gender:\n sampleCollector.gender,\n cnic: sampleCollector.cnic,\n phone:\n sampleCollector.phone,\n photo:\n sampleCollector.photo,\n },\n });\n } else {\n this.setState({\n sampleCollector: {\n name: e.target\n .value,\n gender:\n sampleCollector.gender,\n cnic: sampleCollector.cnic,\n phone:\n sampleCollector.phone,\n },\n });\n }\n }}\n className={\n \"form-control\" +\n (errors.name &&\n touched.name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n
\n \n {\n if (isEdit) {\n this.setState({\n sampleCollector: {\n id: sampleCollector.id,\n name: sampleCollector.name,\n gender:\n e.target.value,\n cnic: sampleCollector.cnic,\n phone:\n sampleCollector.phone,\n photo:\n sampleCollector.photo,\n },\n });\n } else {\n this.setState({\n sampleCollector: {\n name: sampleCollector.name,\n gender:\n e.target.value,\n cnic: sampleCollector.cnic,\n phone:\n sampleCollector.phone,\n },\n });\n }\n }}\n multiple={false}\n >\n \n \n \n
\n\n
\n \n {\n if (isEdit) {\n this.setState({\n sampleCollector: {\n id: sampleCollector.id,\n name: sampleCollector.name,\n gender:\n sampleCollector.gender,\n cnic: e.target\n .value,\n phone:\n sampleCollector.phone,\n photo:\n sampleCollector.photo,\n },\n });\n } else {\n this.setState({\n sampleCollector: {\n name: sampleCollector.name,\n gender:\n sampleCollector.gender,\n cnic: e.target\n .value,\n phone:\n sampleCollector.phone,\n },\n });\n }\n }}\n className={\n \"form-control\" +\n (errors.cnic &&\n touched.cnic\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n
\n \n {\n if (isEdit) {\n this.setState({\n sampleCollector: {\n id: sampleCollector.id,\n name: sampleCollector.name,\n gender:\n sampleCollector.gender,\n cnic: sampleCollector.cnic,\n phone:\n e.target.value,\n photo:\n sampleCollector.photo,\n },\n });\n } else {\n this.setState({\n sampleCollector: {\n name: sampleCollector.name,\n gender:\n sampleCollector.gender,\n cnic: sampleCollector.cnic,\n phone:\n e.target.value,\n },\n });\n }\n }}\n className={\n \"form-control\" +\n (errors.phone &&\n touched.phone\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n {/* Photo field */}\n
\n \n Photo\n \n \n this.setState({\n collectorImg:\n e.target.files[0],\n })\n }\n className={\n \"form-control\" +\n (errors.photo &&\n touched.photo\n ? \" is-invalid\"\n : \"\")\n }\n />\n\n \n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nSampleCollectorsList.propTypes = {\n match: PropTypes.object,\n sampleCollectors: PropTypes.array,\n className: PropTypes.any,\n onGetSampleCollectors: PropTypes.func,\n onAddNewSampleCollector: PropTypes.func,\n onDeleteSampleCollector: PropTypes.func,\n onUpdateSampleCollector: PropTypes.func,\n};\n\nconst mapStateToProps = ({ sampleCollectors }) => ({\n sampleCollectors: sampleCollectors.sampleCollectors,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetSampleCollectors: id => dispatch(getSampleCollectors(id)),\n onAddNewSampleCollector: (sampleCollector, id) =>\n dispatch(addNewSampleCollector(sampleCollector, id)),\n onUpdateSampleCollector: sampleCollector =>\n dispatch(updateSampleCollector(sampleCollector)),\n onDeleteSampleCollector: sampleCollector =>\n dispatch(deleteSampleCollector(sampleCollector)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(SampleCollectorsList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getQualityCertificates,\n addNewQualityCertificate,\n updateQualityCertificate,\n deleteQualityCertificate,\n addNewCollectionPointQuality,\n getLabProfile,\n} from \"store/quality-certificates/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass QualityCertificatesList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n qualityCertificates: [],\n labProfiles: [],\n qualityCertificate: \"\",\n certificateImg: \"\",\n main_lab_quality: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n qualityCertificateListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, qualityCertificate) => (\n <>{qualityCertificate.id}\n ),\n },\n {\n dataField: \"name\",\n text: \"Title\",\n sort: true,\n },\n {\n dataField: \"type\",\n text: \"Type\",\n sort: true,\n },\n {\n dataField: \"certificate\",\n text: \"Certificate\",\n sort: true,\n formatter: (cellContent, qualityCertificate) => (\n <>\n \n View Certificate\n \n \n ),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, qualityCertificate) => (\n
\n \n \n \n this.handleQualityCertificateClick(e, qualityCertificate)\n }\n >\n \n \n \n this.onClickDelete(qualityCertificate)}\n >\n \n
\n ),\n },\n ],\n };\n this.handleQualityCertificateClick =\n this.handleQualityCertificateClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleQualityCertificateClicks =\n this.handleQualityCertificateClicks.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n\n // The code for converting \"image source\" (url) to \"Base64\"\n toDataURL = url =>\n fetch(url)\n .then(response => response.blob())\n .then(\n blob =>\n new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.onerror = reject;\n reader.readAsDataURL(blob);\n })\n );\n\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n componentDidMount() {\n const { qualityCertificates, onGetQualityCertificates } = this.props;\n onGetQualityCertificates(this.state.user_id);\n this.setState({ qualityCertificates });\n\n const { labProfiles, onGetLabProfile } = this.props;\n onGetLabProfile(this.state.user_id);\n this.setState({\n labProfiles\n });\n console.log(\"state\", labProfiles)\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleQualityCertificateClicks = () => {\n this.setState({\n qualityCertificate: \"\",\n certificateImg: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { qualityCertificates } = this.props;\n if (\n !isEmpty(qualityCertificates) &&\n size(prevProps.qualityCertificates) !== size(qualityCertificates)\n ) {\n this.setState({ qualityCertificates: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = qualityCertificates => {\n this.setState({ qualityCertificates: qualityCertificates });\n this.setState({ deleteModal: true });\n };\n\n handleDeleteQualityCertificate = () => {\n const { onDeleteQualityCertificate, onGetQualityCertificates } = this.props;\n const { qualityCertificates } = this.state;\n if (qualityCertificates.id !== undefined) {\n onDeleteQualityCertificate(qualityCertificates);\n setTimeout(() => {\n onGetQualityCertificates(this.state.user_id);\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n\n handleQualityCertificateClick = (e, arg) => {\n this.setState({\n qualityCertificate: {\n id: arg.id,\n certificate_type: arg.certificate_type,\n name: arg.name,\n type: arg.type,\n certificate: process.env.REACT_APP_BACKENDURL + arg.certificate,\n expiry_date: arg.expiry_date,\n start_date: arg.start_date,\n end_date: arg.end_date,\n main_lab_quality: arg.main_lab_quality,\n },\n certificateImg: \"\",\n isEdit: true,\n });\n\n this.toggle();\n };\n\n handleAPICall = () => {\n // const { id } = useParams();\n // console.log(\"id is\",id);\n this.setState({\n qualityCertificates: {\n main_lab_quality: \"Yes\",\n },\n });\n\n // API call to get the checkout items\n const { onAddNewCollectionPointQuality, onGetQualityCertificates } = this.props;\n setTimeout(() => {\n console.log(\n onAddNewCollectionPointQuality(this.state.qualityCertificates, this.state.user_id)\n );\n },);\n setTimeout(() => {\n onGetQualityCertificates(this.state.user_id);\n }, 3000);\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { qualityCertificates } = this.props;\n\n const { labProfiles } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onAddNewQualityCertificate,\n onUpdateQualityCertificate,\n onGetQualityCertificates,\n onGetLabProfile,\n onAddNewCollectionPointQuality\n\n } = this.props;\n const qualityCertificate = this.state.qualityCertificate;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: qualityCertificates.length, // replace later with size(qualityCertificates),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n this.setState({ deleteModal: false })}\n />\n
\n \n Quality Certificates List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n
\n
\n \n \n
\n \n \n Add New Certificate\n \n
\n \n
\n \n \n
\n \n\n \n \n {!!isEdit\n ? \"Edit Quality Certificate\"\n : \"Add Quality Certificate\"}\n \n \n val === \"Others\",\n // then: Yup.string()\n // .trim()\n // .required(\n // \"Please enter test name\"\n // )\n // .min(\n // 3,\n // \"Please enter at least 3 characters\"\n // )\n // .max(\n // 255,\n // \"Please enter maximum 255 characters\"\n // )\n // .matches(\n // /^[a-zA-Z][a-zA-Z ]+$/,\n // \"Please enter only alphabets and spaces\"\n // ),\n // }\n // ),\n\n certificate: Yup.string().when(\n \"hiddenEditFlag\",\n {\n is: hiddenEditFlag =>\n hiddenEditFlag == false, //just an e.g. you can return a function\n then: Yup.string().required(\n \"Please upload certificate\"\n ),\n }\n ),\n\n certificate_type:\n Yup.string().required(\n \"Please select certificate type\"\n ),\n\n type: Yup.string().required(\n \"Please select certificate is for lab or test\"\n ),\n })}\n onSubmit={values => {\n // if (\n // values.certificate_type !=\n // \"Others\"\n // ) \n {\n values.name =\n values.certificate_type;\n }\n\n if (isEdit) {\n if (!this.state.certificateImg) {\n this.toDataURL(\n qualityCertificate.certificate\n ).then(dataUrl => {\n var fileData =\n this.dataURLtoFile(\n dataUrl,\n qualityCertificate.certificate\n .split(\"/\")\n .at(-1)\n );\n this.setState({\n certificateImg: fileData,\n });\n\n const updateQualityCertificate =\n {\n id: qualityCertificate.id,\n certificate_type:\n values.certificate_type,\n name: values.name,\n type: values.type,\n certificate:\n this.state\n .certificateImg,\n expiry_date:\n values.expiry_date,\n start_date:\n values.start_date,\n end_date:\n values.end_date,\n };\n\n // update QualityCertificate\n onUpdateQualityCertificate(\n updateQualityCertificate\n );\n setTimeout(() => {\n onGetQualityCertificates(\n this.state.user_id\n );\n }, 1000);\n });\n } else {\n const updateQualityCertificate =\n {\n id: qualityCertificate.id,\n certificate_type:\n values.certificate_type,\n name: values.name,\n type: values.type,\n certificate:\n this.state.certificateImg,\n expiry_date:\n values.expiry_date,\n start_date:\n values.start_date,\n end_date:\n values.end_date,\n };\n\n // update QualityCertificate\n onUpdateQualityCertificate(\n updateQualityCertificate\n );\n setTimeout(() => {\n onGetQualityCertificates(\n this.state.user_id\n );\n }, 1000);\n }\n } else {\n // if (\n // values.certificate_type !=\n // \"Others\"\n // ) {\n // values.name =\n // values.certificate_type;\n // }\n\n const newQualityCertificate = {\n certificate_type:\n values.certificate_type,\n name: values.name,\n type: values.type,\n certificate:\n this.state.certificateImg,\n expiry_date: values.expiry_date,\n start_date:\n values.start_date,\n end_date:\n values.end_date,\n };\n\n // save new QualityCertificate\n onAddNewQualityCertificate(\n newQualityCertificate,\n this.state.user_id\n );\n setTimeout(() => {\n onGetQualityCertificates(\n this.state.user_id\n );\n }, 1000);\n }\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n \n {/* Certificate Type field */}\n
\n \n {\n this.setState({\n qualityCertificate: {\n id: qualityCertificate.id,\n certificate_type:\n e.target.value,\n name: qualityCertificate.name,\n type: qualityCertificate.type,\n certificate:\n qualityCertificate.certificate,\n expiry_date:\n qualityCertificate.expiry_date,\n start_date:\n qualityCertificate.start_date,\n end_date:\n qualityCertificate.end_date,\n\n },\n });\n }}\n multiple={false}\n value={\n this.state\n .qualityCertificate\n .certificate_type\n }\n >\n \n \n \n \n \n \n \n \n \n \n \n
\n\n {this.state.qualityCertificate\n .certificate_type ===\n \"EQA Certificate\" && (\n
\n \n {\n this.setState({\n qualityCertificate: {\n id: qualityCertificate.id,\n sub_certificate_type:\n e.target.value,\n certificate_type: qualityCertificate.certificate_type,\n name: qualityCertificate.name,\n type: qualityCertificate.type,\n certificate:\n qualityCertificate.certificate,\n expiry_date:\n qualityCertificate.expiry_date,\n start_date:\n qualityCertificate.start_date,\n end_date:\n qualityCertificate.end_date,\n\n },\n });\n }}\n multiple={false}\n value={\n this.state\n .qualityCertificate\n .sub_certificate_type\n }\n >\n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n )}\n\n {/* Certificate Title field\n {this.state.qualityCertificate\n .certificate_type ===\n \"Others\" && (\n
\n \n {\n this.setState({\n qualityCertificate:\n {\n id: qualityCertificate.id,\n certificate_type:\n qualityCertificate.certificate_type,\n name: e.target\n .value,\n type: qualityCertificate.type,\n certificate:\n qualityCertificate.certificate,\n expiry_date:\n qualityCertificate.expiry_date,\n start_date:\n qualityCertificate.start_date,\n end_date:\n qualityCertificate.end_date,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.name &&\n touched.name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n )} */}\n\n {/* Type field */}\n
\n \n {\n this.setState({\n qualityCertificate: {\n id: qualityCertificate.id,\n certificate_type:\n qualityCertificate.certificate_type,\n name: qualityCertificate.name,\n type: e.target\n .value,\n certificate:\n qualityCertificate.certificate,\n expiry_date:\n qualityCertificate.expiry_date,\n start_date:\n qualityCertificate.start_date,\n end_date:\n qualityCertificate.end_date,\n },\n });\n }}\n multiple={false}\n >\n \n \n \n \n \n
\n\n {/* Certificate field */}\n
\n \n Certificate\n \n *\n \n \n \n this.setState({\n certificateImg:\n e.target.files[0],\n })\n }\n className={\n \"form-control\" +\n (errors.certificate &&\n touched.certificate\n ? \" is-invalid\"\n : \"\")\n }\n />\n\n \n
\n\n {/* Certificate Expiry date field */}\n {this.state.qualityCertificate.certificate_type != \"EQA Certificate\" && (\n
\n \n {\n this.setState({\n qualityCertificate: {\n id: qualityCertificate.id,\n certificate_type:\n qualityCertificate.certificate_type,\n name: qualityCertificate.name,\n type: qualityCertificate.type,\n certificate:\n qualityCertificate.certificate,\n expiry_date:\n e.target.value,\n start_date:\n qualityCertificate.start_date,\n end_date:\n qualityCertificate.end_date,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.expiry_date &&\n touched.expiry_date\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n )}\n {this.state.qualityCertificate\n .certificate_type ===\n \"EQA Certificate\" && (\n
\n \n

\n \n {\n this.setState({\n qualityCertificate: {\n id: qualityCertificate.id,\n certificate_type:\n qualityCertificate.certificate_type,\n name: qualityCertificate.name,\n type: qualityCertificate.type,\n certificate:\n qualityCertificate.certificate,\n start_date:\n e.target.value,\n end_date: qualityCertificate.end_date,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.start_date &&\n touched.start_date\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n )}\n {this.state.qualityCertificate\n .certificate_type ===\n \"EQA Certificate\" && (\n
\n \n {\n this.setState({\n qualityCertificate: {\n id: qualityCertificate.id,\n certificate_type:\n qualityCertificate.certificate_type,\n name: qualityCertificate.name,\n type: qualityCertificate.type,\n certificate:\n qualityCertificate.certificate,\n end_date:\n e.target.value,\n start_date:\n qualityCertificate.start_date,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.end_date &&\n touched.end_date\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n )}\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n \n \n {\n isEmpty(this.props.qualityCertificates) &&\n this.props.labProfiles.type == \"Collection Point\" &&\n // console.log(\"desh desh\",this.props.offeredTests)\n (\n \n \n \n
\n\n \n\n Do you want to add your main lab Quality Certificates as yours ?

Note: if you mark this, the Quality Certificates by your main lab with all the details will be added
\n\n
\n
\n
\n\n \n )}\n\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nQualityCertificatesList.propTypes = {\n match: PropTypes.object,\n qualityCertificates: PropTypes.array,\n className: PropTypes.any,\n onGetQualityCertificates: PropTypes.func,\n onAddNewQualityCertificate: PropTypes.func,\n onDeleteQualityCertificate: PropTypes.func,\n onUpdateQualityCertificate: PropTypes.func,\n onGetLabProfile: PropTypes.func,\n labProfiles: PropTypes.array,\n onAddNewCollectionPointQuality: PropTypes.func,\n\n\n};\n\nconst mapStateToProps = ({ qualityCertificates }) => ({\n qualityCertificates: qualityCertificates.qualityCertificates,\n labProfiles: qualityCertificates.labProfiles,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetQualityCertificates: id => dispatch(getQualityCertificates(id)),\n onAddNewQualityCertificate: (qualityCertificate, id) =>\n dispatch(addNewQualityCertificate(qualityCertificate, id)),\n onUpdateQualityCertificate: qualityCertificate =>\n dispatch(updateQualityCertificate(qualityCertificate)),\n onDeleteQualityCertificate: qualityCertificate =>\n dispatch(deleteQualityCertificate(qualityCertificate)),\n onGetLabProfile: id => dispatch(getLabProfile(id)),\n onAddNewCollectionPointQuality: (qualityCertificate, id) =>\n dispatch(addNewCollectionPointQuality(qualityCertificate, id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(QualityCertificatesList));","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getPathologists,\n addNewPathologist,\n updatePathologist,\n deletePathologist,\n} from \"store/pathologists/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass PathologistsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n pathologists: [],\n pathologist: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n pathologistListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, pathologist) => <>{pathologist.id},\n },\n {\n dataField: \"name\",\n text: \"Name\",\n sort: true,\n },\n {\n dataField: \"email\",\n text: \"Email\",\n sort: true,\n },\n {\n dataField: \"phone\",\n text: \"Phone No.\",\n sort: true,\n },\n {\n dataField: \"landline\",\n text: \"Landline\",\n sort: true,\n },\n {\n dataField: \"qualification\",\n text: \"Qualification\",\n sort: true,\n },\n {\n dataField: \"speciality\",\n text: \"Speciality\",\n sort: true,\n },\n {\n dataField: \"pmdc_reg_no\",\n text: \"PMDC Reg No.\",\n sort: true,\n },\n {\n dataField: \"designation\",\n text: \"Designation\",\n sort: true,\n },\n {\n dataField: \"is_available_for_consultation\",\n text: \"Available for consultation\",\n sort: true,\n },\n {\n dataField: \"is_available_on_whatsapp\",\n text: \"Available on WhatsApp\",\n sort: true,\n },\n {\n dataField: \"is_associated_with_pap\",\n text: \"Associated with PAP\",\n sort: true,\n },\n {\n dataField: \"photo\",\n text: \"Photo\",\n sort: true,\n formatter: (cellContent, pathologist) => (\n <>\n \n View\n \n \n ),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, pathologist) => (\n
\n \n \n this.handlePathologistClick(e, pathologist)}\n >\n \n \n \n this.onClickDelete(pathologist)}\n >\n \n
\n ),\n },\n ],\n };\n this.handlePathologistClick = this.handlePathologistClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handlePathologistClicks = this.handlePathologistClicks.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n componentDidMount() {\n const { pathologists, onGetPathologists } = this.props;\n onGetPathologists(this.state.user_id);\n this.setState({ pathologists });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handlePathologistClicks = () => {\n this.setState({ pathologist: \"\", photo: \"\", isEdit: false });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { pathologists } = this.props;\n if (\n !isEmpty(pathologists) &&\n size(prevProps.pathologists) !== size(pathologists)\n ) {\n this.setState({ pathologists: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = pathologists => {\n this.setState({ pathologists: pathologists });\n this.setState({ deleteModal: true });\n };\n\n // The code for converting \"image source\" (url) to \"Base64\"\n toDataURL = url =>\n fetch(url)\n .then(response => response.blob())\n .then(\n blob =>\n new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.onerror = reject;\n reader.readAsDataURL(blob);\n })\n );\n\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n handleDeletePathologist = () => {\n const { onDeletePathologist, onGetPathologists } = this.props;\n const { pathologists } = this.state;\n if (pathologists.id !== undefined) {\n onDeletePathologist(pathologists);\n setTimeout(() => {\n onGetPathologists(this.state.user_id);\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n\n handlePathologistClick = (e, arg) => {\n const pathologist = arg;\n\n this.setState({\n pathologist: {\n id: pathologist.id,\n photo: process.env.REACT_APP_BACKENDURL + pathologist.photo,\n name: pathologist.name,\n email: pathologist.email,\n phone: pathologist.phone,\n landline: pathologist.landline,\n qualification: pathologist.qualification,\n speciality: pathologist.speciality,\n pmdc_reg_no: pathologist.pmdc_reg_no,\n designation: pathologist.designation,\n is_available_for_consultation:\n pathologist.is_available_for_consultation,\n is_available_on_whatsapp: pathologist.is_available_on_whatsapp,\n is_associated_with_pap: pathologist.is_associated_with_pap,\n },\n photo: \"\",\n isEdit: true,\n });\n\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { pathologists } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const { onAddNewPathologist, onUpdatePathologist, onGetPathologists } =\n this.props;\n const pathologist = this.state.pathologist;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: pathologists.length, // replace later with size(pathologists),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n this.setState({ deleteModal: false })}\n />\n
\n \n Pathologists List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n

Note: Pathologist Information will scale the rating of your lab.

\n\n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n
\n
\n \n \n
\n \n \n Add New Pathologist\n \n
\n \n
\n \n \n
\n \n\n \n \n {!!isEdit\n ? \"Edit Pathologist\"\n : \"Add Pathologist\"}\n \n \n \n is_available_for_consultation === \"Yes\",\n then: Yup.string().required(\n \"Please enter phone\"\n ),\n }\n ),\n is_available_on_whatsapp:\n Yup.string()\n .trim()\n .required(\n \"Please select one option from dropdown\"\n ),\n photo: Yup.string().when(\n \"hiddenEditFlag\",\n {\n is: hiddenEditFlag =>\n hiddenEditFlag == false, //just an e.g. you can return a function\n then: Yup.string().required(\n \"Please upload photo\"\n ),\n }\n ),\n })}\n onSubmit={values => {\n if (isEdit) {\n if (!this.state.photo) {\n this.toDataURL(\n pathologist.photo\n ).then(dataUrl => {\n var fileData =\n this.dataURLtoFile(\n dataUrl,\n pathologist.photo\n .split(\"/\")\n .at(-1)\n );\n this.setState({\n photo: fileData,\n });\n\n const updatePathologist = {\n id: pathologist.id,\n photo: this.state.photo,\n name: values.name,\n email: values.email,\n phone: values.phone,\n landline: values.landline,\n qualification:\n values.qualification,\n speciality:\n values.speciality,\n pmdc_reg_no:\n values.pmdc_reg_no,\n designation:\n values.designation,\n is_available_for_consultation:\n values.is_available_for_consultation,\n is_available_on_whatsapp:\n values.is_available_on_whatsapp,\n is_associated_with_pap:\n values.is_associated_with_pap,\n };\n\n // update QualityCertificate\n onUpdatePathologist(\n updatePathologist\n );\n setTimeout(() => {\n onGetPathologists(\n this.state.user_id\n );\n }, 1000);\n });\n } else {\n const updatePathologist = {\n id: pathologist.id,\n photo: this.state.photo,\n name: values.name,\n email: values.email,\n phone: values.phone,\n landline: values.landline,\n qualification:\n values.qualification,\n speciality: values.speciality,\n pmdc_reg_no:\n values.pmdc_reg_no,\n designation:\n values.designation,\n is_available_for_consultation:\n values.is_available_for_consultation,\n is_available_on_whatsapp:\n values.is_available_on_whatsapp,\n is_associated_with_pap:\n values.is_associated_with_pap,\n };\n\n // update Pathologist\n onUpdatePathologist(\n updatePathologist\n );\n setTimeout(() => {\n onGetPathologists(\n this.state.user_id\n );\n }, 1000);\n }\n } else {\n const newPathologist = {\n id:\n Math.floor(\n Math.random() * (30 - 20)\n ) + 20,\n photo: this.state.photo,\n name: values.name,\n email: values.email,\n phone: values.phone,\n landline: values.landline,\n qualification:\n values.qualification,\n speciality: values.speciality,\n pmdc_reg_no: values.pmdc_reg_no,\n designation: values.designation,\n is_available_for_consultation:\n values.is_available_for_consultation,\n is_available_on_whatsapp:\n values.is_available_on_whatsapp,\n is_associated_with_pap:\n values.is_associated_with_pap,\n };\n\n // save new Pathologist\n onAddNewPathologist(\n newPathologist,\n this.state.user_id\n );\n setTimeout(() => {\n onGetPathologists(\n this.state.user_id\n );\n }, 1000);\n }\n this.setState({\n selectedPathologist: null,\n });\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n \n
\n \n \n this.setState({\n pathologist: {\n id: pathologist.id,\n photo:\n pathologist.photo,\n name: e.target\n .value,\n email:\n pathologist.email,\n phone:\n pathologist.phone,\n landline:\n pathologist.landline,\n qualification:\n pathologist.qualification,\n speciality:\n pathologist.speciality,\n pmdc_reg_no:\n pathologist.pmdc_reg_no,\n designation:\n pathologist.designation,\n is_available_for_consultation:\n pathologist.is_available_for_consultation,\n is_available_on_whatsapp:\n pathologist.is_available_on_whatsapp,\n is_associated_with_pap:\n pathologist.is_associated_with_pap,\n },\n })\n }\n />\n \n
\n\n
\n \n \n this.setState({\n pathologist: {\n id: pathologist.id,\n photo:\n pathologist.photo,\n name: pathologist.name,\n email:\n e.target.value,\n phone:\n pathologist.phone,\n landline:\n pathologist.landline,\n qualification:\n pathologist.qualification,\n speciality:\n pathologist.speciality,\n pmdc_reg_no:\n pathologist.pmdc_reg_no,\n designation:\n pathologist.designation,\n is_available_for_consultation:\n pathologist.is_available_for_consultation,\n is_available_on_whatsapp:\n pathologist.is_available_on_whatsapp,\n is_associated_with_pap:\n pathologist.is_associated_with_pap,\n },\n })\n }\n />\n \n
\n\n
\n \n \n this.setState({\n pathologist: {\n id: pathologist.id,\n photo:\n pathologist.photo,\n name: pathologist.name,\n email:\n pathologist.email,\n phone:\n pathologist.phone,\n landline:\n pathologist.landline,\n qualification:\n pathologist.qualification,\n speciality:\n pathologist.speciality,\n pmdc_reg_no:\n pathologist.pmdc_reg_no,\n designation:\n pathologist.designation,\n is_available_for_consultation:\n e.target.value,\n is_available_on_whatsapp:\n pathologist.is_available_on_whatsapp,\n is_associated_with_pap:\n pathologist.is_associated_with_pap,\n },\n })\n }\n >\n \n \n \n \n\n \n\n \n \n Note: Your contact\n information will be\n shared publicly for\n consultation of the\n patients with you if you\n select YES.\n \n \n
\n\n
\n \n \n this.setState({\n pathologist: {\n id: pathologist.id,\n photo:\n pathologist.photo,\n name: pathologist.name,\n email:\n pathologist.email,\n phone:\n pathologist.phone,\n landline:\n pathologist.landline,\n qualification:\n pathologist.qualification,\n speciality:\n pathologist.speciality,\n pmdc_reg_no:\n pathologist.pmdc_reg_no,\n designation:\n pathologist.designation,\n is_available_for_consultation:\n pathologist.is_available_for_consultation,\n is_available_on_whatsapp:\n e.target.value,\n is_associated_with_pap:\n pathologist.is_associated_with_pap,\n },\n })\n }\n >\n \n \n \n \n\n \n
\n {pathologist.is_available_for_consultation == \"Yes\" || \n pathologist.is_available_on_whatsapp == \"Yes\" ? (\n
\n \n \n this.setState({\n pathologist: {\n id: pathologist.id,\n photo:\n pathologist.photo,\n name: pathologist.name,\n email:\n pathologist.email,\n phone:\n e.target.value,\n landline:\n pathologist.landline,\n qualification:\n pathologist.qualification,\n speciality:\n pathologist.speciality,\n pmdc_reg_no:\n pathologist.pmdc_reg_no,\n designation:\n pathologist.designation,\n is_available_for_consultation:\n pathologist.is_available_for_consultation,\n is_available_on_whatsapp:\n pathologist.is_available_on_whatsapp,\n is_associated_with_pap:\n pathologist.is_associated_with_pap,\n },\n })\n }\n />\n \n
\n ): null}\n\n
\n \n \n this.setState({\n pathologist: {\n id: pathologist.id,\n photo:\n pathologist.photo,\n name: pathologist.name,\n email:\n pathologist.email,\n phone:\n pathologist.phone,\n landline:\n e.target.value,\n qualification:\n pathologist.qualification,\n speciality:\n pathologist.speciality,\n pmdc_reg_no:\n pathologist.pmdc_reg_no,\n designation:\n pathologist.designation,\n is_available_for_consultation:\n pathologist.is_available_for_consultation,\n is_available_on_whatsapp:\n pathologist.is_available_on_whatsapp,\n is_associated_with_pap:\n pathologist.is_associated_with_pap,\n },\n })\n }\n />\n
\n\n
\n \n Photo\n \n *\n \n \n \n this.setState({\n photo:\n e.target.files[0],\n })\n }\n className={\n \"form-control\" +\n (errors.photo &&\n touched.photo\n ? \" is-invalid\"\n : \"\")\n }\n />\n\n \n
\n\n
\n \n \n this.setState({\n pathologist: {\n id: pathologist.id,\n photo:\n pathologist.photo,\n name: pathologist.name,\n email:\n pathologist.email,\n phone:\n pathologist.phone,\n landline:\n pathologist.landline,\n qualification:\n pathologist.qualification,\n speciality:\n pathologist.speciality,\n pmdc_reg_no:\n e.target.value,\n designation:\n pathologist.designation,\n is_available_for_consultation:\n pathologist.is_available_for_consultation,\n is_available_on_whatsapp:\n pathologist.is_available_on_whatsapp,\n is_associated_with_pap:\n pathologist.is_associated_with_pap,\n },\n })\n }\n />\n \n
\n\n
\n \n \n this.setState({\n pathologist: {\n id: pathologist.id,\n photo:\n pathologist.photo,\n name: pathologist.name,\n email:\n pathologist.email,\n phone:\n pathologist.phone,\n landline:\n pathologist.landline,\n qualification:\n e.target.value,\n speciality:\n pathologist.speciality,\n pmdc_reg_no:\n pathologist.pmdc_reg_no,\n designation:\n pathologist.designation,\n is_available_for_consultation:\n pathologist.is_available_for_consultation,\n is_available_on_whatsapp:\n pathologist.is_available_on_whatsapp,\n is_associated_with_pap:\n pathologist.is_associated_with_pap,\n },\n })\n }\n />\n {/* */}\n
\n
\n \n \n this.setState({\n pathologist: {\n id: pathologist.id,\n photo:\n pathologist.photo,\n name: pathologist.name,\n email:\n pathologist.email,\n phone:\n pathologist.phone,\n landline:\n pathologist.landline,\n qualification:\n pathologist.qualification,\n speciality:\n e.target.value,\n pmdc_reg_no:\n pathologist.pmdc_reg_no,\n designation:\n pathologist.designation,\n is_available_for_consultation:\n pathologist.is_available_for_consultation,\n is_available_on_whatsapp:\n pathologist.is_available_on_whatsapp,\n is_associated_with_pap:\n pathologist.is_associated_with_pap,\n },\n })\n }\n />\n {/* */}\n
\n\n
\n \n \n this.setState({\n pathologist: {\n id: pathologist.id,\n photo:\n pathologist.photo,\n name: pathologist.name,\n email:\n pathologist.email,\n phone:\n pathologist.phone,\n landline:\n pathologist.landline,\n qualification:\n pathologist.qualification,\n speciality:\n pathologist.speciality,\n pmdc_reg_no:\n pathologist.pmdc_reg_no,\n designation:\n e.target.value,\n is_available_for_consultation:\n pathologist.is_available_for_consultation,\n is_available_on_whatsapp:\n pathologist.is_available_on_whatsapp,\n is_associated_with_pap:\n pathologist.is_associated_with_pap,\n },\n })\n }\n />\n {/* */}\n
\n
\n \n \n this.setState({\n pathologist: {\n id: pathologist.id,\n photo:\n pathologist.photo,\n name: pathologist.name,\n email:\n pathologist.email,\n phone:\n pathologist.phone,\n landline:\n pathologist.landline,\n qualification:\n pathologist.qualification,\n speciality:\n pathologist.speciality,\n pmdc_reg_no:\n pathologist.pmdc_reg_no,\n designation:\n pathologist.designation,\n is_available_for_consultation:\n pathologist.is_available_for_consultation,\n is_available_on_whatsapp:\n pathologist.is_available_on_whatsapp,\n is_associated_with_pap:\n e.target.value,\n },\n })\n }\n >\n \n ----- Please select\n Yes/No -----\n \n \n \n \n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nPathologistsList.propTypes = {\n match: PropTypes.object,\n pathologists: PropTypes.array,\n className: PropTypes.any,\n onGetPathologists: PropTypes.func,\n onAddNewPathologist: PropTypes.func,\n onDeletePathologist: PropTypes.func,\n onUpdatePathologist: PropTypes.func,\n};\n\nconst mapStateToProps = ({ pathologists }) => ({\n pathologists: pathologists.pathologists,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetPathologists: id => dispatch(getPathologists(id)),\n onAddNewPathologist: (pathologist, id) =>\n dispatch(addNewPathologist(pathologist, id)),\n onUpdatePathologist: pathologist => dispatch(updatePathologist(pathologist)),\n onDeletePathologist: pathologist => dispatch(deletePathologist(pathologist)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PathologistsList));","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport moment from 'moment';\nimport DatePicker from 'react-datepicker';\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Modal,\n Button,\n Input,\n ModalHeader,\n ModalBody,\n Label,\n FormGroup,\n} from \"reactstrap\";\nimport Flatpickr from 'react-flatpickr';\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport {\n getTestAppointmentsPendingList,\n updateTestAppointment,\n addNewCollectionPointTestAppointment,\n getLabProfile,\n} from \"store/test-appointments/actions\";\n\nimport { updatePaymentInfo } from \"store/invoices/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport ConfirmModal from \"components/Common/ConfirmModal\";\n\nimport \"assets/scss/table.scss\";\n\nclass TestAppointmentsPendingList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n const now = moment();\n\n this.state = {\n testAppointments: [],\n labProfiles: [],\n testAppointment: \"\",\n main_lab_appointments: \"Main\",\n end_date: now.clone().endOf('month').format('DD MMM YYYY'),\n start_date: now.clone().startOf('month').format('DD MMM YYYY'),\n modal: false,\n btnText: \"Copy\",\n confirmModal: false,\n appointmentmodal: false,\n appointmentId: \"\",\n type: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n testAppointmentListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, testAppointment) => (\n <>{testAppointment.id}\n ),\n },\n {\n dataField: \"order_id\",\n text: \"Order ID\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.order_id}\n

\n {/* \n {testAppointment.type}{\" (\"}\n {testAppointment.address}{\")\"}\n */}\n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"address\",\n text: \"Lab Address\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n \n {testAppointment.address}\n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"patient_name\",\n text: \"Patient name\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n \n \n this.openPatientModal(e, testAppointment)}\n // onMouseEnter={e => this.openPatientModal(e, testAppointment)}\n // onPointerLeave={this.handleMouseExit()}\n >\n {testAppointment.patient_name}\n \n \n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"booked_at\",\n text: \"Booked at\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n \n {/* {new Date(testAppointment.booked_at).toLocaleString(\"en-US\")} */}\n {moment(testAppointment.booked_at).format(\n \"DD MMM YYYY, h:mm A\"\n )}\n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"appointment_requested_at\",\n text: \"Sampling time by Patient\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n \n {/* {new Date(\n testAppointment.appointment_requested_at\n ).toLocaleString(\"en-US\")} */}\n {moment(testAppointment.appointment_requested_at).format(\n \"DD MMM YYYY, h:mm A\"\n )}\n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"is_home_sampling_availed\",\n text: \"Home sampling\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.is_home_sampling_availed == true ||\n testAppointment.is_state_sampling_availed == true ? (\n Yes\n ) : (\n No\n )}\n \n ),\n filter: selectFilter({\n options: {\n \"\": \"All\",\n true: \"Yes\",\n false: \"No\",\n },\n defaultValue: \"All\",\n }),\n },\n // {\n // dataField: \"is_state_sampling_availed\",\n // text: \"Urgent sampling\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // {testAppointment.is_state_sampling_availed == true ? (\n // Yes\n // ) : (\n // No\n // )}\n // \n // \n // ),\n // filter: selectFilter({\n // options: {\n // '': 'All',\n // 'true': 'Yes',\n // 'false': 'No',\n // },\n // defaultValue: 'All',\n // }),\n // },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, testAppointment) => (\n
\n \n \n \n this.handleTestAppointmentClick(testAppointment)\n }\n >\n \n \n \n \n \n
\n ),\n },\n ],\n };\n this.handleTestAppointmentClick =\n this.handleTestAppointmentClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleTestAppointmentClicks =\n this.handleTestAppointmentClicks.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n this.toggleappointmentmodal = this.toggleappointmentmodal.bind(this);\n }\n \n componentDidMount() {\n const { testAppointments, onAddNewCollectionPointTestAppointment, onGetTestAppointmentsPendingList, onGetLabProfile } = this.props;\n const user_id = this.state.user_id; // Use state to get user_id\n\n // Fetch the test appointments\n onGetTestAppointmentsPendingList(user_id);\n\n // Fetch lab profiles\n onGetLabProfile(user_id);\n }\n componentDidUpdate(prevProps) {\n // Check if labProfiles.type has changed\n if (prevProps.labProfiles.type !== this.props.labProfiles.type) {\n // Update the state based on the new labProfiles.type\n // const newLabType = this.props.labProfiles.type === \"Collection Point\" ? \"Collection\" : \"Main\";\n // this.setState({ main_lab_appointments: newLabType }, () => {\n const { onAddNewCollectionPointTestAppointment, onGetTestAppointmentsPendingList } = this.props;\n const { start_date, end_date, main_lab_appointments, user_id } = this.state;\n const updatedTestAppointments = { main_lab_appointments, start_date, end_date };\n \n // API call with updated dates and lab type\n onAddNewCollectionPointTestAppointment(updatedTestAppointments, user_id);\n setTimeout(() => {\n onGetTestAppointmentsPendingList(user_id);\n }, 1000);\n // });\n }\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n toggleappointmentmodal = () => {\n this.setState(prevState => ({\n appointmentmodal: !prevState.appointmentmodal,\n }));\n };\n rowStyleFormat = (row, rowIdx) => {\n if (row.is_state_sampling_availed === true) {\n return { color: \"red\" };\n }\n };\n toggleConfirmModal = () => {\n this.setState(prevState => ({\n confirmModal: !prevState.confirmModal,\n }));\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n patient_age: arg.patient_age,\n ageFormat: arg.ageFormat,\n patient_gender: arg.patient_gender,\n patient_address: arg.patient_address,\n patient_city: arg.patient_city,\n patient_phone: arg.patient_phone,\n });\n };\n // handleMouseExit = () => {\n // this.setState({\n // PatientModal: false,\n // isHovered: false,\n\n // });\n // };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n handleTestAppointmentClicks = () => {\n this.setState({ testAppointment: \"\" });\n this.toggle();\n };\n\n onClickAccept = id => {\n this.setState({ appointmentId: id });\n this.setState({ confirmModal: true });\n };\n\n handeAcceptPayment = () => {\n const { onGetTestAppointmentsPendingList, onUpdatePaymentInfo } =\n this.props;\n\n onUpdatePaymentInfo(this.state.appointmentId); // Calling Payment API to update the payment info when payment is accepted by lab\n\n setTimeout(() => {\n onGetTestAppointmentsPendingList(this.state.user_id);\n }, 1000);\n\n this.setState({ confirmModal: false });\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n handleTestAppointmentClick = arg => {\n const testAppointment = arg;\n\n this.setState({\n testAppointment: {\n id: testAppointment.id,\n estimated_sample_collection_at:\n testAppointment.estimated_sample_collection_at,\n appointment_requested_at: testAppointment.appointment_requested_at,\n },\n });\n\n this.toggle();\n };\n\n\n handleDateChange(date, field) {\n this.setState({ [field]: moment(date).format('DD MMM YYYY') }, () => {\n // Make the API call after the state has been updated\n const { onAddNewCollectionPointTestAppointment, onGetTestAppointmentsPendingList } = this.props;\n const { start_date, end_date, main_lab_appointments, user_id } = this.state;\n const updatedTestAppointments = { main_lab_appointments, start_date, end_date };\n \n // API call with updated dates and lab type\n onAddNewCollectionPointTestAppointment(updatedTestAppointments, user_id);\n setTimeout(() => {\n onGetTestAppointmentsPendingList(this.state.user_id);\n }, 1000);\n });\n }\n\n handleTestAppointmentType = e => {\n const { value } = e.target;\n this.setState({ main_lab_appointments: value }, () => {\n const { onAddNewCollectionPointTestAppointment, onGetTestAppointmentsPendingList } = this.props;\n const { start_date, end_date, main_lab_appointments, user_id } = this.state;\n const updatedTestAppointments = { main_lab_appointments, start_date, end_date };\n onAddNewCollectionPointTestAppointment(updatedTestAppointments, user_id);\n setTimeout(() => {\n onGetTestAppointmentsPendingList(this.state.user_id);\n }, 1000);\n\n });\n };\n \n\n render() {\n const { SearchBar } = Search;\n const { start_date, end_date } = this.state.testAppointments;\n const { testAppointments, labProfiles } = this.props;\n const { confirmModal } = this.state;\n\n const {\n onGetLabProfile,\n onAddNewCollectionPointTestAppointment,\n onUpdateTestAppointment,\n onGetTestAppointmentsPendingList,\n } = this.props;\n const testAppointment = this.state.testAppointment;\n const pageOptions = {\n sizePerPage: 10,\n totalSize: testAppointments.length, // replace later with size(testAppointments),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n Lab Hazir | Test Appointments List\n \n this.setState({ confirmModal: false })}\n />\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n \n \n \n this.handleDateChange(date[0], 'start_date')}\n />\n \n \n\n \n \n \n this.handleDateChange(date[0], 'end_date')}\n />\n \n \n \n
\n
\n {this.props.labProfiles.type === \"Main Lab\" && (\n
\n \n \n \n \n \n \n

Filter all completed appointments at your collection points.

\n\n
\n )}\n
\n
\n {/* {this.props.labProfiles.type === \"Collection Point\" && (\n
\n
\n \n \n
\n
)} */}\n \n
\n
\n \n \n
\n \n \n
\n
\n \n this.setState({\n appointmentmodal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
\n
\n
\n
\n
\n \n
\n
\n\n
\n
\n

\n New Orders !\n

\n

\n You have new orders, Kindly\n Check the Pending Appointment\n list..\n

\n\n {/*
\n \n \n\n
*/}\n
\n
\n
\n
\n
\n \n \n \n Patient Information\n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n {this.state.patient_address &&\n this.state.patient_address !==\n \"undefined\" ? (\n
\n
\n \n
\n
\n \n
\n
\n ) : null}\n\n {/*
\n
\n \n
\n
\n \n
\n
*/}\n\n
\n
\n \n
\n
\n \n
\n\n
\n {\n navigator.clipboard.writeText(\n this.state\n .patient_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
\n
\n \n
\n
\n
\n
\n \n \n \n Appointment Confirmation\n \n \n {\n const updateTestAppointment = {\n id: testAppointment.id,\n estimated_sample_collection_at:\n values.estimated_sample_collection_at,\n // estimated_result_uploading_at:\n // values.estimated_result_uploading_at,\n status: \"Confirmed\",\n process: \"pending\",\n };\n\n // update TestAppointment\n onUpdateTestAppointment(\n updateTestAppointment\n );\n\n setTimeout(() => {\n onGetTestAppointmentsPendingList(\n this.state.user_id\n );\n }, 1000);\n\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n {/*
\n \n \n
*/}\n\n {/*
\n \n \n
*/}\n\n {/*
\n \n \n
*/}\n\n {/*
\n \n \n
*/}\n\n {/*
\n \n \n
*/}\n\n
\n \n {\n this.setState({\n testAppointment: {\n id: testAppointment.id,\n estimated_sample_collection_at:\n e.target.value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.estimated_sample_collection_at &&\n touched.estimated_sample_collection_at\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n {/*
\n \n Estimated result uploading\n at\n \n {\n this.setState({\n testAppointment: {\n id: testAppointment.id,\n estimated_sample_collection_at:\n testAppointment.estimated_sample_collection_at,\n estimated_result_uploading_at:\n e.target.value +\n \":00Z\",\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.estimated_result_uploading_at &&\n touched.estimated_result_uploading_at\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
*/}\n\n {/*
\n \n {\n this.setState({\n testAppointment: {\n id: testAppointment.id,\n patient_id:\n testAppointment.patient_id,\n patient_name:\n testAppointment.patient_name,\n patient_age:\n testAppointment.patient_age,\n patient_gender:\n testAppointment.patient_gender,\n booked_at:\n testAppointment.booked_at,\n appointment_requested_at:\n testAppointment.appointment_requested_at,\n estimated_sample_collection_at:\n testAppointment.estimated_sample_collection_at,\n estimated_result_uploading_at:\n testAppointment.estimated_result_uploading_at,\n patient_unique_id:\n e.target.value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.patient_unique_id &&\n touched.patient_unique_id\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
*/}\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nTestAppointmentsPendingList.propTypes = {\n match: PropTypes.object,\n testAppointments: PropTypes.array,\n labProfiles: PropTypes.array,\n className: PropTypes.any,\n onGetTestAppointmentsPendingList: PropTypes.func,\n onUpdateTestAppointment: PropTypes.func,\n onUpdatePaymentInfo: PropTypes.func,\n onAddNewCollectionPointTestAppointment: PropTypes.func,\n onGetLabProfile: PropTypes.func,\n};\n\nconst mapStateToProps = ({ testAppointments }) => ({\n testAppointments: testAppointments.testAppointmentsPendingList,\n labProfiles: testAppointments.labProfiles,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetTestAppointmentsPendingList: id =>\n dispatch(getTestAppointmentsPendingList(id)),\n onGetLabProfile: id => dispatch(getLabProfile(id)),\n onUpdateTestAppointment: testAppointment =>\n dispatch(updateTestAppointment(testAppointment)),\n onAddNewCollectionPointTestAppointment: (testAppointment, id) =>\n dispatch(addNewCollectionPointTestAppointment(testAppointment, id)),\n onUpdatePaymentInfo: id => dispatch(updatePaymentInfo(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(TestAppointmentsPendingList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport BootstrapTable from 'react-bootstrap-table-next';\nimport filterFactory, { textFilter,selectFilter } from 'react-bootstrap-table2-filter';\nimport moment from \"moment\";\n\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n FormGroup\n} from \"reactstrap\";\nimport Flatpickr from \"react-flatpickr\";\n\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport { getLabToken,getLabProfile,addNewCollectionPointTestAppointment } from \"store/test-appointments/actions\";\n\nimport \"assets/scss/table.scss\";\n\nclass LabTokens extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n const now = moment();\n this.state = {\n labProfiles:[],\n token: \"\",\n rating:\"\",\n main_lab_appointments: \"Main\",\n end_date: now.clone().endOf('month').format('DD MMM YYYY'),\n start_date: now.clone().startOf('month').format('DD MMM YYYY'),\n modal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n feedbackListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, token) => (\n <>{token.id}\n ),\n },\n {\n dataField: \"token\",\n text: \"Token #\",\n sort: true,\n formatter: (cellContent, token) => (\n <>\n {token.token}\n

\n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"order_id\",\n text: \"Order ID\",\n sort: true,\n formatter: (cellContent, token) => (\n <>\n {token.order_id}\n

\n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"lab_name\",\n text: \"Lab Name\",\n sort: true,\n formatter: (cellContent, token) => (\n
\n {token.lab_name}\n
\n
\n ),\n filter: textFilter(),\n },\n {\n dataField: \"lab_type\",\n text: \"Lab Type\",\n sort: true,\n formatter: (cellContent, token) => (\n <>\n {token.lab_type == \"Main Lab\" && (\n \n {token.lab_type}\n \n\n )}\n {token.lab_type == \"Collection Point\" && (\n \n {token.lab_type}\n \n )}\n \n ),\n filter: selectFilter({\n options: {\n '': 'Both',\n 'Main Lab': 'Main Lab',\n 'Collection Point': 'Collection Point',\n },\n defaultValue: 'All',\n }),\n },\n {\n dataField: \"patient_name\",\n text: \"Patient Name\",\n sort: true,\n formatter: (cellContent, token) => (\n <>\n {token.patient_name}\n

\n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"appointment_status\",\n text: \"Appointment Status\",\n sort: true,\n formatter: (cellContent, token) => (\n <>\n {token.appointment_status == \"Pending\" && (\n \n {token.appointment_status}\n \n\n )}\n {token.appointment_status == \"Confirmed\" && (\n \n {token.appointment_status}\n \n )}\n\n {token.appointment_status == \"Sample Collected\" && (\n \n {token.appointment_status}\n \n )}\n\n {token.appointment_status == \"Rescheduled\" && (\n \n {token.appointment_status}\n \n )}\n\n\n {token.appointment_status == \"Result Uploaded\" && (\n \n {token.appointment_status}\n \n )}\n\n \n ),\n filter: selectFilter({\n options: {\n '': 'All',\n 'Pending': 'Pending',\n 'Confirmed': 'Confirmed',\n 'Sample Collected': 'Sample Collected',\n 'Rescheduled': 'Rescheduled',\n 'Result Uploaded': 'Result Uploaded',\n },\n defaultValue: 'All',\n }),\n }, \n ],\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { onGetLabTokens, onGetLabProfile } = this.props;\n\n if (this.state.user_id) {\n onGetLabTokens(this.state.user_id);\n onGetLabProfile(this.state.user_id);\n } else {\n console.error(\"User ID is not defined\");\n }\n }\n componentDidUpdate(prevProps) {\n if (prevProps.labTokens !== this.props.labTokens) {\n console.log(\"labTokens updated:\", this.props.labTokens);\n // Any additional logic can go here\n }\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleDateChange(date, field) {\n this.setState({ [field]: moment(date).format('DD MMM YYYY') }, () => {\n // Make the API call after the state has been updated\n const { onAddNewCollectionPointTestAppointment, onGetLabTokens } = this.props;\n const { start_date, end_date, main_lab_appointments, user_id } = this.state;\n const updatedTestAppointments = { main_lab_appointments, start_date, end_date };\n \n // API call with updated dates and lab type\n onAddNewCollectionPointTestAppointment(updatedTestAppointments, user_id);\n setTimeout(() => {\n onGetLabTokens(this.state.user_id);\n }, 1000);\n });\n }\n\n handleTestAppointmentType = e => {\n const { value } = e.target;\n this.setState({ main_lab_appointments: value }, () => {\n const { onAddNewCollectionPointTestAppointment, onGetLabTokens } = this.props;\n const { start_date, end_date, main_lab_appointments, user_id } = this.state;\n const updatedTestAppointments = { main_lab_appointments, start_date, end_date };\n setTimeout(() => {\n console.log(onAddNewCollectionPointTestAppointment(updatedTestAppointments, user_id));\n });\n setTimeout(() => {\n onGetLabTokens(this.state.user_id);\n }, 1000);\n\n });\n };\n \n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n \n\n render() { \n const { SearchBar } = Search;\n\n const { lab, appointments, labTokens } = this.props;\n\n console.log(\"Lab in Render:\", lab); // Log lab data\n console.log(\"Lab Tokens in Render:\", labTokens); // Log labTokens\n console.log(\"Appointments in Render:\", appointments); \n\n // const labprofile=this.state.labprofile;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: appointments.length, // replace later with size(labTokens),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n console.log(\"hello\",this.props.labProfiles.type),\n \n
\n \n Lab Token Detail Page | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n
\n \n last Token Series Generated:{\" \"}{lab.token_starting_value} {\"-\"}{lab.token_ending_value}\n \n
\n {/*
\n \n last Token Used:{\" \"}{lab.last_used_token} \n \n
*/}\n
\n \n Total Tokens:{\" \"}{lab.total_tokens} \n \n
\n
\n \n Used Tokens:{\" \"}{lab.used_tokens} \n \n
\n
\n \n Remaining Tokens:{\" \"}{lab.remaining_tokens} \n \n
\n
\n

\n
\n
\n \n Total Pending appointments Tokens :{\" \"}{lab.pending_appointments_count} \n \n
\n
\n \n Total Confirmed appointments Tokens :{\" \"}{lab.confirmed_appointments_count} \n \n
\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n \n {toolkitprops => (\n \n \n \n \n \n this.handleDateChange(date[0], 'start_date')}\n />\n \n \n\n \n \n \n this.handleDateChange(date[0], 'end_date')}\n />\n \n \n {/* \n
\n
\n {this.props.labProfiles.type === \"Main Lab\" && (\n
\n \n \n \n \n \n \n

Filter all completed appointments at your collection points.

\n\n
\n )}\n
\n
\n */}\n
\n \n \n
\n \n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nLabTokens.propTypes = {\n match: PropTypes.object,\n labTokens: PropTypes.array,\n lab: PropTypes.object,\n labProfiles: PropTypes.array,\n appointments: PropTypes.array,\n className: PropTypes.any,\n onGetLabTokens: PropTypes.func,\n match: PropTypes.object,\n labProfiles: PropTypes.array,\n onGetLabProfile: PropTypes.func,\n location: PropTypes.object,\n onAddNewCollectionPointTestAppointment: PropTypes.func,\n error: PropTypes.any,\n success: PropTypes.any,\n};\n\nconst mapStateToProps = ({ testAppointments }) => {\n console.log(\"State in mapStateToProps:\", testAppointments); // Log the whole state\n return {\n lab: testAppointments.lab || {}, // Access the lab directly\n appointments: testAppointments.appointments || [],\n labTokens: testAppointments.labTokens || [], // Ensure labTokens is always an array\n labProfiles: testAppointments.labProfiles || [], // Correcting this to labProfiles\n };\n};\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetLabTokens: id => dispatch(getLabToken(id)),\n onGetLabProfile: id => dispatch(getLabProfile(id)),\n onAddNewCollectionPointTestAppointment: (token, id) =>\n dispatch(addNewCollectionPointTestAppointment(token, id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(LabTokens));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport moment from 'moment';\n\nimport {\n Alert,\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Modal,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n FormGroup\n} from \"reactstrap\";\n\nimport Flatpickr from 'react-flatpickr';\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport {\n getTestAppointmentsInProcessList,\n updateTestAppointment,\n addNewCollectionPointTestAppointment,\n getLabProfile\n\n} from \"store/test-appointments/actions\";\n\nimport { updatePaymentInfo } from \"store/invoices/actions\";\n\nimport { getSampleCollectors } from \"store/sample-collectors/actions\";\n\nimport { isEmpty, size } from \"lodash\";\n\nimport \"assets/scss/table.scss\";\n\nclass TestAppointmentsInProcessList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n const now = moment();\n this.state = {\n labs: [],\n testAppointments: [],\n labProfiles: [],\n patient: [],\n sampleCollectors: [],\n main_lab_appointments: \"Main\",\n end_date: now.clone().endOf('month').format('DD MMM YYYY'),\n start_date: now.clone().startOf('month').format('DD MMM YYYY'),\n sampleCollector: \"\",\n btnText: \"Copy\",\n resultFile: \"\",\n testAppointment: \"\",\n modal: false,\n PaymentModal: false,\n ReshedualModal: false,\n reasonModal: false,\n isRescheduled: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n testAppointmentListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, testAppointment) => (\n <>{testAppointment.id}\n ),\n },\n {\n dataField: \"order_id\",\n text: \"Order ID\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.order_id}\n {/* \n {testAppointment.type}{\" (\"}\n {testAppointment.address}{\")\"}\n */}\n \n ), filter: textFilter(),\n },\n {\n dataField: \"address\",\n text: \"Lab Address\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n \n {testAppointment.address}\n\n \n ), filter: textFilter(),\n },\n {\n dataField: \"patient_name\",\n text: \"Patient name\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n \n \n this.openPatientModal(e, testAppointment)}\n // onMouseEnter={e => this.openPatientModal(e, testAppointment)}\n // onPointerLeave={this.handleMouseExit()}\n >\n {testAppointment.patient_name}\n \n \n \n \n ),\n filter: textFilter(),\n\n },\n // {\n // dataField: \"booked_at\",\n // text: \"Booked at\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // \n // {new Date(testAppointment.booked_at).toLocaleString(\"en-US\")}\n // \n // \n // ),\n // },\n \n {\n dataField: \"is_home_sampling_availed\",\n text: \"Home sampling\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.is_home_sampling_availed == true || testAppointment.is_state_sampling_availed == true ? (\n Yes\n ) : (\n No\n )}\n \n ),\n filter: selectFilter({\n options: {\n '': 'All',\n 'true': 'Yes',\n 'false': 'No',\n },\n defaultValue: 'All',\n }),\n },\n\n // {\n // dataField: \"estimated_sample_collection_at\",\n // text: \"Sampling time by Lab\",\n // sort: true,\n // formatter: (cellContent, patientTestAppointment) => (\n // <>\n // {patientTestAppointment.status == \"Pending\" ? (\n // Not available yet\n // ) : (\n // \n // {/* {new Date(\n // patientTestAppointment.estimated_sample_collection_at\n // ).toLocaleString(\"en-US\")} */}\n // {patientTestAppointment.estimated_sample_collection_at\n // ? moment(patientTestAppointment.estimated_sample_collection_at).format(\"DD MMM YYYY, h:mm A\")\n // : \"--\"}\n // \n // )}\n // \n // ), filter: textFilter(),\n // },\n {\n dataField: \"estimated_result_uploading_at\",\n text: \"Reporting Time by Lab\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.status == \"Pending\" ? (\n Not available yet\n ) : null}\n\n {testAppointment.status != \"Pending\" ? (\n \n {/* {new Date(\n testAppointment.estimated_result_uploading_at\n ).toLocaleString(\"en-US\")} */}\n {testAppointment.estimated_result_uploading_at\n ? moment(testAppointment.estimated_result_uploading_at).format(\"DD MMM YYYY, h:mm A\")\n : \"--\"}\n \n ) : null}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"sample_collected_at\",\n text: \"Sampling Time\",\n sort: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>\n {patientTestAppointment.status == \"Pending\" ||\n patientTestAppointment.status == \"Confirmed\" ||\n // patientTestAppointment.status == \"Sample Collected\" ||\n patientTestAppointment.status == \"Rescheduled\" ? (\n {moment(patientTestAppointment.estimated_sample_collection_at).format(\"DD MMM YYYY, h:mm A\")}\n \n ) : (\n \n {/* {new Date(\n patientTestAppointment.sample_collected_at\n ).toLocaleString(\"en-US\")} */}\n {patientTestAppointment.sample_collected_at\n ? moment(patientTestAppointment.sample_collected_at).format(\"DD MMM YYYY, h:mm A\")\n : \"--\"}\n\\ \n )}\n \n ), filter: textFilter(),\n },\n \n // {\n // dataField: \"sample_collector\",\n // text: \"Sample Collector\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // \n // \n // {testAppointment.is_home_sampling_availed &&\n // !testAppointment.collector_name && (\n // \n // Not assigned\n // \n // )}\n\n // {testAppointment.is_home_sampling_availed &&\n // testAppointment.collector_name && (\n // {testAppointment.collector_name}\n // )}\n\n // {!testAppointment.is_home_sampling_availed && (\n // \n // Not availed\n // \n // )}\n // {testAppointment.is_home_sampling_availed &&\n // !testAppointment.collection_status && (\n // \n // Pending\n // \n // )} \n\n\n // \n // \n // \n // ),\n // },\n // {\n // dataField: \"collection status\",\n // text: \"Sample Collection Status\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // \n // \n // {/* {testAppointment.is_home_sampling_availed &&\n // !testAppointment.collector_name && (\n // \n // Not assigned\n // \n // )}\n\n // {testAppointment.is_home_sampling_availed &&\n // testAppointment.collector_name && (\n // {testAppointment.collector_name}\n // )}\n\n // {!testAppointment.is_home_sampling_availed && (\n // \n // Not availed\n // \n // )} */}\n // {/* {testAppointment.is_home_sampling_availed &&\n // !testAppointment.collection_status && (\n // \n // Pending\n // \n // )} */}\n\n // {testAppointment.is_home_sampling_availed &&\n // testAppointment.collection_status == \"Assigned\" && (\n // \n // {testAppointment.collection_status}\n // \n // )}\n\n // {testAppointment.is_home_sampling_availed &&\n // testAppointment.collection_status == \"On way\" && (\n // \n // {testAppointment.collection_status}\n // \n // )}\n\n // {testAppointment.is_home_sampling_availed &&\n // testAppointment.collection_status == \"Reached\" && (\n // \n // {testAppointment.collection_status}\n // \n // )}\n\n // {testAppointment.is_home_sampling_availed &&\n // testAppointment.collection_status == \"Patient Unavailable\" && (\n // \n // {testAppointment.collection_status}\n // \n // )}\n // {testAppointment.is_home_sampling_availed &&\n // testAppointment.collection_status == \"Sample+Payment Collected\" && (\n // \n // {testAppointment.collection_status}\n // \n // )}\n\n // {testAppointment.is_home_sampling_availed &&\n // testAppointment.collection_status == \"Sample+Payment Delivered\" && (\n // \n // {testAppointment.collection_status}\n // \n // )}\n\n // {!testAppointment.is_home_sampling_availed && (\n // \n // Not availed\n // \n // )}\n // \n // \n // \n // ),\n // },\n {\n dataField: \"collection_status\",\n text: \"Sample Collector\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n \n \n {(testAppointment.is_home_sampling_availed || testAppointment.is_state_sampling_availed) &&\n !testAppointment.collector_name ? (\n \n Not assigned\n \n ):(\n {testAppointment.collector_name}\n )}\n {(testAppointment.is_home_sampling_availed || testAppointment.is_state_sampling_availed) &&\n !testAppointment.collection_status ? (\n \n Pending\n \n ): testAppointment.collection_status == \"Assigned\" ? (\n \n {testAppointment.collection_status}\n \n ): testAppointment.collection_status == \"On way\" ? (\n \n {testAppointment.collection_status}\n \n ): testAppointment.collection_status == \"Reached\" ? (\n \n {testAppointment.collection_status}\n \n ): testAppointment.collection_status == \"Patient Unavailable\" ? (\n \n {testAppointment.collection_status}\n \n ): testAppointment.collection_status == \"Sample+Payment Collected\" ? (\n \n {testAppointment.collection_status}\n \n ): testAppointment.collection_status == \"Sample+Payment Delivered\" && (\n \n {testAppointment.collection_status}\n \n )}\n\n {!testAppointment.is_home_sampling_availed &&\n !testAppointment.is_state_sampling_availed && (\n \n Not availed\n \n )}\n \n \n \n ), filter: textFilter(),\n },\n {\n dataField: 'status',\n text: 'Appointment Status',\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.status == \"Pending\" && (\n \n {testAppointment.status}\n \n\n )}\n {testAppointment.status == \"Confirmed\" && (\n \n {testAppointment.status}\n \n )}\n\n {testAppointment.status == \"Sample Collected\" && (\n \n {testAppointment.status}\n \n )}\n\n {testAppointment.status == \"Rescheduled\" && (\n \n {testAppointment.status}\n \n )}\n\n\n {testAppointment.status == \"Result Uploaded\" && (\n \n {testAppointment.status}\n \n )}\n\n \n ),\n filter: selectFilter({\n options: {\n '': 'All',\n 'Pending': 'Pending',\n 'Confirmed': 'Confirmed',\n 'Sample Collected': 'Sample Collected',\n 'Rescheduled': 'Rescheduled',\n 'Result Uploaded': 'Result Uploaded',\n },\n defaultValue: 'All',\n }),\n },\n\n // {\n // dataField: \"reschedule_count\",\n // text: \"Rescheduling\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // \n // \n // {testAppointment.reschedule_count > 1 && (\n // \n // {testAppointment.reschedule_count} Used, Limit Reached\n // \n // )}\n\n // {(!testAppointment.reschedule_reason ||\n // testAppointment.reschedule_count < 2) && (\n // \n // {testAppointment.reschedule_count} Used,{\" \"}\n // {2 - testAppointment.reschedule_count} Left\n // \n // )}\n // {testAppointment.reschedule_reason &&\n // testAppointment.reschedule_reason == \"Other\" && (\n // this.openReasonModal(e, testAppointment)}\n // >\n // {testAppointment.reason.slice(0, 10) + \"...\"}\n // \n // )}\n\n // {testAppointment.reschedule_reason &&\n // testAppointment.reschedule_reason != \"Other\" && (\n // \n // {testAppointment.reschedule_reason}\n // \n // )}\n\n // {!testAppointment.reschedule_reason && (\n // \n // Not Rescheduled\n // \n // )}\n // {/* this.openMessageModal(e, testAppointment)}\n // >\n // {testAppointment.reschedule_reason.slice(0, 10) + \"...\"}\n // {\" \"} */}\n // \n // \n // \n // ),\n // },\n {\n dataField: \"payment_status\",\n text: \"Payment Status\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.payment_status == \"Not Paid\" ? (\n \n {testAppointment.payment_method},{\" \"}\n {testAppointment.payment_status}\n \n ) : (\n \n {testAppointment.payment_method},{\" \"}\n {testAppointment.payment_status}\n \n )}\n \n ),\n filter: selectFilter({\n options: {\n '': 'All',\n 'Paid': 'Paid',\n 'Not Paid': 'Not Paid',\n 'Allocate': 'Allocate',\n },\n defaultValue: 'All',\n }),\n },\n\n // {\n // dataField: \"invoice\",\n // text: \"Invoice\",\n // isDummyField: true,\n // editable: false,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // \n // Invoice\n // \n // \n // ),\n // },\n // {\n // dataField: \"payment\",\n // text: \"Payment\",\n // isDummyField: true,\n // editable: false,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // \n // Payment\n // \n // \n // ),\n // },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Menu\",\n formatter: (cellContent, testAppointment) => (\n\n\n
\n {testAppointment.payment_status == \"Not Paid\" && (\n \n \n \n \n\n )}\n \n \n this.openReshedualModal(e, testAppointment)\n }\n >\n \n\n \n {testAppointment.payment_status === \"Not Paid\" ? (\n \n \n \n ) : (\n \n \n \n )}\n
\n ),\n },\n\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, testAppointment) => (\n\n\n
\n \n \n \n this.handleTestAppointmentClick(testAppointment)\n }\n >\n \n \n \n \n \n
\n ),\n },\n ],\n\n };\n\n // this.openPaymentModal =\n // this.openPaymentModal.bind(this); \n this.handleTestAppointmentClick =\n this.handleTestAppointmentClick.bind(this);\n this.toggleReasonModal = this.toggleReasonModal.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleTestAppointmentClicks =\n this.handleTestAppointmentClicks.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n this.toggleReshedualModal = this.toggleReshedualModal.bind(this);\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { testAppointments, onAddNewCollectionPointTestAppointment, onGetTestAppointmentsInProcessList, onGetLabProfile } = this.props;\n const user_id = this.state.user_id; // Use state to get user_id\n\n // Fetch the test appointments\n onGetTestAppointmentsInProcessList(user_id);\n\n // Fetch lab profiles\n onGetLabProfile(user_id);\n }\n componentDidUpdate(prevProps) {\n // Check if labProfiles.type has changed\n if (prevProps.labProfiles.type !== this.props.labProfiles.type) {\n // Update the state based on the new labProfiles.type\n // const newLabType = this.props.labProfiles.type === \"Collection Point\" ? \"Collection\" : \"Main\";\n // this.setState({ main_lab_appointments: newLabType }, () => {\n const { onAddNewCollectionPointTestAppointment, onGetTestAppointmentsInProcessList } = this.props;\n const { start_date, end_date, main_lab_appointments, user_id } = this.state;\n const updatedTestAppointments = { main_lab_appointments, start_date, end_date };\n \n // API call with updated dates and lab type\n onAddNewCollectionPointTestAppointment(updatedTestAppointments, user_id);\n setTimeout(() => {\n onGetTestAppointmentsInProcessList(this.state.user_id);\n }, 1000);\n\n // });\n }\n }\n\n\n \n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n openReasonModal = (e, arg) => {\n this.setState({ reasonModal: true, reason: arg.reason });\n };\n\n toggleReasonModal = () => {\n this.setState(prevState => ({\n reasonModal: !prevState.reasonModal,\n }));\n };\n\n handleTestAppointmentClicks = () => {\n this.setState({ testAppointment: \"\", resultFile: \"\" });\n this.toggle();\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n handleTestAppointmentClick = arg => {\n const testAppointment = arg;\n\n console.log(\"payment_status: \");\n\n this.setState({\n testAppointment: {\n id: testAppointment.id,\n payment_status: testAppointment.payment_status,\n patient_unique_id: testAppointment.patient_unique_id,\n status: testAppointment.status,\n reschedule_reason: testAppointment.reschedule_reason,\n estimated_sample_collection_at:\n testAppointment.estimated_sample_collection_at,\n reason: testAppointment.reason,\n reschedule_count: testAppointment.reschedule_count,\n rescheduled_at: testAppointment.rescheduled_at,\n is_home_sampling_availed: testAppointment.is_home_sampling_availed,\n is_state_sampling_availed: testAppointment.is_state_sampling_availed,\n result_type: \"File\",\n url: \"\",\n result: \"\",\n collector_name: testAppointment.collector_name,\n assigned_to: testAppointment.assigned_to,\n },\n resultFile: \"\",\n isRescheduled: false,\n });\n\n this.toggle();\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n appointment_requested_at: arg.appointment_requested_at,\n patient_unique_id: arg.patient_unique_id,\n patient_gender: arg.patient_gender,\n patient_age: arg.patient_age,\n ageFormat: arg.ageFormat,\n patient_city: arg.patient_city,\n patient_phone: arg.patient_phone,\n booked_at: arg.booked_at,\n });\n };\n // handleMouseExit = () => {\n // this.setState({\n // PatientModal: false,\n // isHovered: false,\n \n // });\n // };\n openReshedualModal = (e, arg) => {\n this.setState({\n ReshedualModal: true,\n reschedule_reason: arg.reschedule_reason,\n reason: arg.reason,\n reschedule_count: arg.reschedule_count,\n rescheduled_at: arg.rescheduled_at,\n });\n };\n\n\n\n handleAPICall = () => {\n const { onGetTestAppointmentsInProcessList, onUpdatePaymentInfo } =\n this.props;\n\n if (this.state.testAppointment) {\n onUpdatePaymentInfo(this.state.testAppointment);\n\n setTimeout(() => {\n onGetTestAppointmentsInProcessList(this.state.user_id);\n }, 1000);\n }\n };\n\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n toggleReshedualModal = () => {\n this.setState(prevState => ({\n ReshedualModal: !prevState.ReshedualModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n // openPaymentModal = (e, arg) => {\n // this.setState({\n // // patient_id: testAppointment.patient_id,\n // amount_received: arg.amount_received,\n // conflict_reason: arg.conflict_reason,\n\n // });\n // this.togglePaymentModal();\n // };\n\n // togglePaymentModal = () => {\n // this.setState(prevState => ({\n // PaymentModal: !prevState.PaymentModal,\n // }));\n // };\n handleDateChange(date, field) {\n this.setState({ [field]: moment(date).format('DD MMM YYYY') }, () => {\n // Make the API call after the state has been updated\n const { onAddNewCollectionPointTestAppointment, onGetTestAppointmentsInProcessList } = this.props;\n const { start_date, end_date, main_lab_appointments, user_id } = this.state;\n const updatedTestAppointments = { main_lab_appointments, start_date, end_date };\n \n // API call with updated dates and lab type\n onAddNewCollectionPointTestAppointment(updatedTestAppointments, user_id);\n setTimeout(() => {\n onGetTestAppointmentsInProcessList(this.state.user_id);\n }, 1000);\n });\n }\n\n handleTestAppointmentType = e => {\n const { value } = e.target;\n this.setState({ main_lab_appointments: value }, () => {\n const { onAddNewCollectionPointTestAppointment, onGetTestAppointmentsInProcessList } = this.props;\n const { start_date, end_date, main_lab_appointments, user_id } = this.state;\n const updatedTestAppointments = { main_lab_appointments, start_date, end_date };\n setTimeout(() => {\n console.log(onAddNewCollectionPointTestAppointment(updatedTestAppointments, user_id));\n });\n setTimeout(() => {\n onGetTestAppointmentsInProcessList(this.state.user_id);\n }, 1000);\n\n });\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { testAppointments } = this.props;\n\n const { onGetLabProfile, onAddNewCollectionPointTestAppointment, onUpdateTestAppointment, onGetTestAppointmentsInProcessList } =\n this.props;\n const testAppointment = this.state.testAppointment;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: testAppointments.length, // replace later with size(testAppointments),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n const sampleCollectorList = [];\n for (let i = 0; i < this.props.sampleCollectors.length; i++) {\n sampleCollectorList.push({\n label: this.props.sampleCollectors[i].name,\n value: this.props.sampleCollectors[i].id,\n });\n }\n\n return (\n \n
\n \n Test Appointments List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n

NOte: Sampling Time shows test appointment time by lab before sample collection and once the sample is collected the same column shows the Sample Collected Time.

\n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n \n \n this.handleDateChange(date[0], 'start_date')}\n />\n \n \n\n \n \n \n this.handleDateChange(date[0], 'end_date')}\n />\n \n \n \n
\n
\n {this.props.labProfiles.type === \"Main Lab\" && (\n
\n \n \n \n \n \n \n

Filter all completed appointments at your collection points.

\n\n
\n )}\n
\n
\n {/* {this.props.labProfiles.type === \"Collection Point\" && (\n
\n
\n \n \n
\n
)} */}\n \n
\n \n \n
\n \n \n \n Patient Information\n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n\n {this.state.patient_address && this.state.patient_address !== \"undefined\" ? (\n
\n
\n \n
\n
\n \n
\n
\n ): null}\n\n {/*
\n
\n \n
\n
\n \n
\n
*/}\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n\n
\n {\n navigator.clipboard.writeText(\n this.state\n .patient_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
\n
\n \n
\n
\n
\n
\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n {this.state.testAppointment\n .reschedule_reason ==\n \"Other\" &&\n
\n
\n \n
\n
\n \n
\n
}\n\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n \n \n \n \n \n \n status ===\n \"Result Uploaded\" &&\n result_type === \"Link\",\n then: Yup.string().required(\n \"Please enter url to the patient's result\"\n ),\n }),\n reschedule_reason:\n Yup.string().when(\"status\", {\n is: status =>\n status === \"Rescheduled\",\n then: Yup.string().required(\n \"Please select rescheduling reason\"\n ),\n }),\n reason: Yup.string().when(\n \"reschedule_reason\",\n {\n is: reschedule_reason =>\n reschedule_reason === \"Other\",\n then: Yup.string().required(\n \"Please enter rescheduling reason\"\n ),\n }\n ),\n result: Yup.string().when(\n [\"status\", \"result_type\"],\n {\n is: (status, result_type) =>\n status ===\n \"Result Uploaded\" &&\n result_type === \"File\",\n then: Yup.string().required(\n \"Please upload the file of patient's result\"\n ),\n }\n ),\n })}\n onSubmit={values => {\n if (this.state.isRescheduled) {\n const data = {\n id: testAppointment.id,\n reschedule_reason:\n values.reschedule_reason,\n estimated_sample_collection_at:\n values.estimated_sample_collection_at,\n reason: values.reason,\n rescheduledBy: \"Lab\",\n status: \"Rescheduled\",\n process: \"rescheduling\",\n assigned_to:\n values.assigned_to,\n };\n\n // update TestAppointment\n onUpdateTestAppointment(data);\n } else {\n const updateTestAppointment = {\n id: testAppointment.id,\n patient_unique_id:\n values.patient_unique_id,\n status: values.status,\n // reschedule_reason:\n // values.reschedule_reason,\n // reason: values.reason,\n result_type: values.result_type,\n url: values.url,\n result: this.state.resultFile,\n assigned_to:\n values.assigned_to,\n process: \"inprocess\",\n };\n\n // update TestAppointment\n onUpdateTestAppointment(\n updateTestAppointment\n );\n }\n\n setTimeout(() => {\n onGetTestAppointmentsInProcessList(\n this.state.user_id\n );\n }, 1000);\n\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n {testAppointment.reschedule_count >=\n 2 && (\n \n We've disabled{\" \"}\n \n rescheduling option\n {\" \"}\n from this appointment as\n you reached the{\" \"}\n \n maximum limit\n {\" \"}\n of rescheduling that is 2.\n \n )}\n\n {testAppointment.payment_status ==\n \"Not Paid\" &&\n testAppointment.status ==\n \"Sample Collected\" &&\n (\n \n We've disabled{\" \"}\n \n result uploading\n {\" \"}\n option from this\n appointment as\n patient's payment\n status is{\" \"}\n \n Not Paid\n \n .\n \n )}\n {/* {testAppointment.payment_status ==\n \"Paid\" &&\n testAppointment.status ==\n // \"Sample Collected\" && \n \"rescheduling\" && (\n \n We've disabled{\" \"}\n \n result uploading\n {\" \"}\n option from this\n appointment as\n patient's payment\n status is{\" \"}\n \n Paid\n \n .\n \n )} */}\n {/*
\n \n \n
*/}\n {/*
\n \n \n
*/}\n {/*
\n \n \n
*/}\n {/*
\n \n \n
*/}\n {/*
\n \n \n
*/}\n {/*
\n \n \n
*/}\n {/*
\n \n \n
*/}\n\n {/* */}\n\n
\n \n {\n this.setState({\n testAppointment: {\n id: testAppointment.id,\n payment_status:\n testAppointment.payment_status,\n patient_unique_id:\n e.target.value,\n is_home_sampling_availed:\n testAppointment.is_home_sampling_availed,\n is_state_sampling_availed:\n testAppointment.is_state_sampling_availed,\n status:\n testAppointment.status,\n reschedule_reason:\n testAppointment.reschedule_reason,\n estimated_sample_collection_at:\n testAppointment.estimated_sample_collection_at,\n reschedule_count:\n testAppointment.reschedule_count,\n reason:\n testAppointment.reason,\n result_type:\n testAppointment.result_type,\n url: testAppointment.url,\n result:\n this.state\n .resultFile,\n assigned_to:\n testAppointment.assigned_to,\n },\n });\n }}\n className=\"form-control\"\n />\n
\n\n
\n \n {\n if (\n e.target.value ==\n \"Rescheduled\"\n ) {\n this.setState({\n isRescheduled: true,\n testAppointment: {\n id: testAppointment.id,\n payment_status:\n testAppointment.payment_status,\n patient_unique_id:\n testAppointment.patient_unique_id,\n is_home_sampling_availed:\n testAppointment.is_home_sampling_availed,\n is_state_sampling_availed:\n testAppointment.is_state_sampling_availed,\n status:\n e.target.value,\n reschedule_reason:\n testAppointment.reschedule_reason,\n estimated_sample_collection_at:\n testAppointment.estimated_sample_collection_at,\n reschedule_count:\n testAppointment.reschedule_count,\n reason:\n testAppointment.reason,\n result_type:\n testAppointment.result_type,\n url: testAppointment.url,\n result:\n this.state\n .resultFile,\n assigned_to:\n testAppointment.assigned_to,\n },\n });\n } else {\n this.setState({\n isRescheduled: false,\n testAppointment: {\n id: testAppointment.id,\n payment_status:\n testAppointment.payment_status,\n patient_unique_id:\n testAppointment.patient_unique_id,\n is_home_sampling_availed:\n testAppointment.is_home_sampling_availed,\n is_state_sampling_availed:\n testAppointment.is_state_sampling_availed,\n status:\n e.target.value,\n estimated_sample_collection_at:\n testAppointment.estimated_sample_collection_at,\n reschedule_reason:\n testAppointment.reschedule_reason,\n reschedule_count:\n testAppointment.reschedule_count,\n reason:\n testAppointment.reason,\n result_type:\n testAppointment.result_type,\n url: testAppointment.url,\n result:\n this.state\n .resultFile,\n assigned_to:\n testAppointment.assigned_to,\n },\n });\n }\n }}\n className=\"form-control\"\n readOnly={false}\n multiple={false}\n >\n {/* */}\n\n \n\n \n\n {testAppointment.reschedule_count <\n 2 && (\n \n )}\n\n {testAppointment.payment_status !== \"Not Paid\" && testAppointment.status !== \"Rescheduled\" && (\n )}\n\n \n
\n\n {this.state.testAppointment\n .status == \"Rescheduled\" &&\n testAppointment.reschedule_count <\n 2 && (\n
\n \n {\n this.setState({\n isRescheduled: true,\n testAppointment: {\n id: testAppointment.id,\n payment_status:\n testAppointment.payment_status,\n patient_unique_id:\n testAppointment.patient_unique_id,\n is_home_sampling_availed:\n testAppointment.is_home_sampling_availed,\n is_state_sampling_availed:\n testAppointment.is_state_sampling_availed,\n status:\n testAppointment.status,\n reschedule_reason:\n e.target\n .value,\n estimated_sample_collection_at:\n testAppointment.estimated_sample_collection_at,\n reschedule_count:\n testAppointment.reschedule_count,\n reason:\n testAppointment.reason,\n result_type:\n testAppointment.result_type,\n url: testAppointment.url,\n result:\n this.state\n .resultFile,\n assigned_to:\n testAppointment.assigned_to,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.reschedule_reason &&\n touched.reschedule_reason\n ? \" is-invalid\"\n : \"\")\n }\n readOnly={false}\n multiple={false}\n >\n \n \n \n \n \n \n\n \n
\n )}\n {this.state.testAppointment\n .status == \"Rescheduled\" &&\n testAppointment.reschedule_count <\n 2 && (\n
\n \n Please select date and time for sample collection\n \n {\n this.setState({\n isRescheduled: true,\n testAppointment: {\n id: testAppointment.id,\n payment_status:\n testAppointment.payment_status,\n patient_unique_id:\n testAppointment.patient_unique_id,\n is_home_sampling_availed:\n testAppointment.is_home_sampling_availed,\n is_state_sampling_availed:\n testAppointment.is_state_sampling_availed,\n status:\n testAppointment.status,\n reschedule_reason:\n testAppointment.reschedule_reason,\n estimated_sample_collection_at:\n e.target\n .value,\n reschedule_count:\n testAppointment.reschedule_count,\n reason:\n testAppointment.reason,\n result_type:\n testAppointment.result_type,\n url: testAppointment.url,\n result:\n this.state\n .resultFile,\n assigned_to:\n testAppointment.assigned_to,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.estimated_sample_collection_at &&\n touched.estimated_sample_collection_at\n ? \" is-invalid\"\n : \"\")\n }\n readOnly={false}\n multiple={false}\n />\n \n
\n )}\n \n {this.state.testAppointment\n .reschedule_reason ==\n \"Other\" &&\n this.state.testAppointment\n .reschedule_count < 2 && (\n
\n \n {\n this.setState({\n testAppointment: {\n id: testAppointment.id,\n payment_status:\n testAppointment.payment_status,\n patient_unique_id:\n testAppointment.patient_unique_id,\n is_home_sampling_availed:\n testAppointment.is_home_sampling_availed,\n is_state_sampling_availed:\n testAppointment.is_state_sampling_availed,\n status:\n testAppointment.status,\n reschedule_reason:\n testAppointment.reschedule_reason,\n reschedule_count:\n testAppointment.reschedule_count,\n reason:\n e.target\n .value,\n result_type:\n testAppointment.result_type,\n url: testAppointment.url,\n result:\n this.state\n .resultFile,\n assigned_to:\n testAppointment.assigned_to,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.reason &&\n touched.reason\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n )}\n\n {(this.state.testAppointment.is_state_sampling_availed || this.state.testAppointment.is_home_sampling_availed) &&\n (this.state.testAppointment.status === \"Sample Collected\" ||\n this.state.testAppointment.status === \"Confirmed\" ||\n this.state.testAppointment.status === \"Rescheduled\") ? (\n
\n \n {\n this.setState({\n testAppointment: {\n id: testAppointment.id,\n payment_status: testAppointment.payment_status,\n patient_unique_id: testAppointment.patient_unique_id,\n is_state_sampling_availed: testAppointment.is_state_sampling_availed,\n is_home_sampling_availed: testAppointment.is_home_sampling_availed,\n status: testAppointment.status,\n reschedule_reason: testAppointment.reschedule_reason,\n estimated_sample_collection_at:\n testAppointment.estimated_sample_collection_at,\n reschedule_count: testAppointment.reschedule_count,\n reason: testAppointment.reason,\n result_type: testAppointment.result_type,\n url: testAppointment.url,\n result: this.state.resultFile,\n assigned_to: selectedGroup.value,\n },\n });\n }}\n className=\"defautSelectParent\"\n options={sampleCollectorList}\n defaultValue={{\n label: testAppointment.collector_name,\n value: testAppointment.assigned_to,\n }}\n />\n
\n ) : null}\n\n {this.state.testAppointment\n .status ===\n \"Result Uploaded\" && (\n
\n \n {\n this.setState({\n testAppointment: {\n id: testAppointment.id,\n patient_unique_id:\n testAppointment.patient_unique_id,\n is_home_sampling_availed:\n testAppointment.is_home_sampling_availed,\n is_state_sampling_availed:\n testAppointment.is_state_sampling_availed,\n status:\n testAppointment.status,\n reschedule_reason:\n testAppointment.reschedule_reason,\n reschedule_count:\n testAppointment.reschedule_count,\n reason:\n testAppointment.reason,\n estimated_sample_collection_at:\n testAppointment.estimated_sample_collection_at,\n result_type:\n e.target.value,\n url: testAppointment.url,\n result:\n this.state\n .resultFile,\n assigned_to:\n testAppointment.assigned_to,\n },\n });\n }}\n className=\"form-control\"\n readOnly={false}\n multiple={false}\n >\n \n \n \n
\n )}\n {this.state.testAppointment\n .status ===\n \"Result Uploaded\" &&\n this.state.testAppointment\n .result_type ===\n \"Link\" && (\n
\n \n {\n this.setState({\n testAppointment: {\n id: testAppointment.id,\n patient_unique_id:\n testAppointment.patient_unique_id,\n is_home_sampling_availed:\n testAppointment.is_home_sampling_availed,\n is_state_sampling_availed:\n testAppointment.is_state_sampling_availed,\n status:\n testAppointment.status,\n reschedule_reason:\n testAppointment.reschedule_reason,\n reschedule_count:\n testAppointment.reschedule_count,\n reason:\n testAppointment.reason,\n estimated_sample_collection_at:\n testAppointment.estimated_sample_collection_at,\n result_type:\n testAppointment.result_type,\n url: e.target\n .value,\n result:\n this.state\n .resultFile,\n assigned_to:\n testAppointment.assigned_to,\n },\n });\n }}\n />\n \n
\n )}\n {/* Display current image in edit form only */}\n {this.state.testAppointment\n .status ===\n \"Result Uploaded\" &&\n this.state.testAppointment\n .result_type ===\n \"File\" && (\n
\n \n {\n this.setState({\n resultFile:\n e.target\n .files[0],\n });\n }}\n className={\n \"form-control\" +\n (errors.result &&\n touched.result\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n )}\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n\n \n
\n
\n \n this.setState({\n reasonModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
\n
\n
\n {/*
\n
\n \n
\n
*/}\n\n
\n
\n

\n Rescheduling Reason\n

\n

\n {this.state.reason}\n

\n
\n
\n
\n
\n
\n \n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nTestAppointmentsInProcessList.propTypes = {\n match: PropTypes.object,\n testAppointments: PropTypes.array,\n sampleCollectors: PropTypes.array,\n className: PropTypes.any,\n onGetTestAppointmentsInProcessList: PropTypes.func,\n onGetSampleCollectors: PropTypes.func,\n onUpdateTestAppointment: PropTypes.func,\n onUpdatePaymentInfo: PropTypes.func,\n labProfiles: PropTypes.array,\n onAddNewCollectionPointTestAppointment: PropTypes.func,\n onGetLabProfile: PropTypes.func,\n};\n\nconst mapStateToProps = ({ testAppointments, sampleCollectors }) => ({\n sampleCollectors: sampleCollectors.sampleCollectors,\n testAppointments: testAppointments.testAppointmentsInProcessList,\n labProfiles: testAppointments.labProfiles,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetLabProfile: id => dispatch(getLabProfile(id)),\n onAddNewCollectionPointTestAppointment: (testAppointment, id) =>\n dispatch(addNewCollectionPointTestAppointment(testAppointment, id)),\n onGetTestAppointmentsInProcessList: id =>\n dispatch(getTestAppointmentsInProcessList(id)),\n onGetSampleCollectors: id => dispatch(getSampleCollectors(id)),\n onUpdateTestAppointment: testAppointment =>\n dispatch(updateTestAppointment(testAppointment)),\n onUpdatePaymentInfo: id => dispatch(updatePaymentInfo(id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(TestAppointmentsInProcessList));","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Card, CardBody, Col, Container, Row, Modal, Label, ModalBody, ModalHeader, FormGroup, } from \"reactstrap\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport filterFactory, { textFilter ,selectFilter} from 'react-bootstrap-table2-filter';\nimport moment from 'moment';\nimport Flatpickr from 'react-flatpickr';\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport {\n getTestAppointmentsCompletedList,\n updateTestAppointment,\n addNewCollectionPointTestAppointment,\n getLabProfile\n} from \"store/test-appointments/actions\";\n\nimport \"assets/scss/table.scss\";\n\nclass TestAppointmentsCompletedList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n const now = moment();\n this.state = {\n testAppointments: [],\n labProfiles: [],\n testAppointment: \"\",\n main_lab_appointments: \"Main\",\n end_date: now.clone().endOf('month').format('DD MMM YYYY'),\n start_date: now.clone().startOf('month').format('DD MMM YYYY'),\n btnText: \"Copy\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n testAppointmentListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, testAppointment) => (\n <>{testAppointment.id}\n ),\n },\n {\n dataField: \"order_id\",\n text: \"Order ID\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.order_id}\n {/* \n {testAppointment.type}{\" (\"}\n {testAppointment.address}{\")\"}\n */}\n \n ), filter: textFilter(),\n },\n {\n dataField: \"address\",\n text: \"Lab Address\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n \n {testAppointment.address}\n\n \n ), filter: textFilter(),\n },\n {\n dataField: \"patient_name\",\n text: \"Patient name\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n \n \n this.openPatientModal(e, testAppointment)}\n // onMouseEnter={e => this.openPatientModal(e, testAppointment)}\n // onPointerLeave={this.handleMouseExit()}\n >\n {testAppointment.patient_name}\n \n \n \n \n ),\n filter: textFilter(),\n\n },\n // {\n // dataField: \"booked_at\",\n // text: \"Booked at\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // \n // {new Date(testAppointment.booked_at).toLocaleString(\"en-US\")}\n // \n // \n // ),\n // },\n {\n dataField: \"is_home_sampling_availed\",\n text: \"Home Sampling\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.is_home_sampling_availed == true || testAppointment.is_state_sampling_availed == true ? (\n Yes\n ) : (\n No\n )}\n {/* {testAppointment.is_state_sampling_availed == true ? (\n Yes\n ) : (\n No\n )} */}\n \n ),\n filter: selectFilter({\n options: {\n '': 'All',\n 'true': 'Yes',\n 'false': 'No',\n },\n defaultValue: 'All',\n }),\n },\n\n // {\n // dataField: \"estimated_sample_collection_at\",\n // text: \"Sampling time by Lab\",\n // sort: true,\n // formatter: (cellContent, patientTestAppointment) => (\n // <>\n // {patientTestAppointment.status == \"Pending\" ? (\n // Not available yet\n // ) : (\n // \n // {/* {new Date(\n // patientTestAppointment.estimated_sample_collection_at\n // ).toLocaleString(\"en-US\")} */}\n // {patientTestAppointment.estimated_sample_collection_at\n // ? moment(patientTestAppointment.estimated_sample_collection_at).format(\"DD MMM YYYY, h:mm A\")\n // : \"--\"}\n // \n // )}\n // \n // ), filter: textFilter(),\n // },\n // {\n // dataField: \"sample_collected_at\",\n // text: \"Sample collected at\",\n // sort: true,\n // formatter: (cellContent, patientTestAppointment) => (\n // <>\n // {patientTestAppointment.status == \"Pending\" ||\n // patientTestAppointment.status == \"Confirmed\" ||\n // // patientTestAppointment.status == \"Sample Collected\" ||\n // patientTestAppointment.status == \"Rescheduled\" ? (\n // ----\n // ) : (\n // \n // {/* {new Date(\n // patientTestAppointment.sample_collected_at\n // ).toLocaleString(\"en-US\")} */}\n // {patientTestAppointment.sample_collected_at\n // ? moment(patientTestAppointment.sample_collected_at).format(\"DD MMM YYYY, h:mm A\")\n // : \"--\"}\n\n // \n // )}\n // \n // ), filter: textFilter(),\n // },\n {\n dataField: \"sample_collected_at\",\n text: \"Sampling Time\",\n sort: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>\n {patientTestAppointment.status == \"Pending\" ||\n patientTestAppointment.status == \"Confirmed\" ||\n // patientTestAppointment.status == \"Sample Collected\" ||\n patientTestAppointment.status == \"Rescheduled\" ? (\n {moment(patientTestAppointment.estimated_sample_collection_at).format(\"DD MMM YYYY, h:mm A\")}\n \n ) : (\n \n {/* {new Date(\n patientTestAppointment.sample_collected_at\n ).toLocaleString(\"en-US\")} */}\n {patientTestAppointment.sample_collected_at\n ? moment(patientTestAppointment.sample_collected_at).format(\"DD MMM YYYY, h:mm A\")\n : \"--\"}\n \n )}\n \n ), filter: textFilter(),\n },\n\n // {\n // dataField: \"sample_collector\",\n // text: \"Sample Collector\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // \n // \n // {testAppointment.is_home_sampling_availed &&\n // !testAppointment.collector_name && (\n // \n // Not assigned\n // \n // )}\n\n // {testAppointment.is_home_sampling_availed &&\n // testAppointment.collector_name && (\n // {testAppointment.collector_name}\n // )}\n\n // {!testAppointment.is_home_sampling_availed && (\n // \n // Not availed\n // \n // )}\n // {testAppointment.is_home_sampling_availed &&\n // !testAppointment.collection_status && (\n // \n // Pending\n // \n // )} \n\n\n // \n // \n // \n // ),\n // },\n // {\n // dataField: \"collection status\",\n // text: \"Sample Collection Status\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // \n // \n // {/* {testAppointment.is_home_sampling_availed &&\n // !testAppointment.collector_name && (\n // \n // Not assigned\n // \n // )}\n\n // {testAppointment.is_home_sampling_availed &&\n // testAppointment.collector_name && (\n // {testAppointment.collector_name}\n // )}\n\n // {!testAppointment.is_home_sampling_availed && (\n // \n // Not availed\n // \n // )} */}\n // {/* {testAppointment.is_home_sampling_availed &&\n // !testAppointment.collection_status && (\n // \n // Pending\n // \n // )} */}\n\n // {testAppointment.is_home_sampling_availed &&\n // testAppointment.collection_status == \"Assigned\" && (\n // \n // {testAppointment.collection_status}\n // \n // )}\n\n // {testAppointment.is_home_sampling_availed &&\n // testAppointment.collection_status == \"On way\" && (\n // \n // {testAppointment.collection_status}\n // \n // )}\n\n // {testAppointment.is_home_sampling_availed &&\n // testAppointment.collection_status == \"Reached\" && (\n // \n // {testAppointment.collection_status}\n // \n // )}\n\n // {testAppointment.is_home_sampling_availed &&\n // testAppointment.collection_status == \"Patient Unavailable\" && (\n // \n // {testAppointment.collection_status}\n // \n // )}\n // {testAppointment.is_home_sampling_availed &&\n // testAppointment.collection_status == \"Sample+Payment Collected\" && (\n // \n // {testAppointment.collection_status}\n // \n // )}\n\n // {testAppointment.is_home_sampling_availed &&\n // testAppointment.collection_status == \"Sample+Payment Delivered\" && (\n // \n // {testAppointment.collection_status}\n // \n // )}\n\n // {!testAppointment.is_home_sampling_availed && (\n // \n // Not availed\n // \n // )}\n // \n // \n // \n // ),\n // },\n {\n dataField: \"estimated_result_uploading_at\",\n text: \"Reporting Time by Lab\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.status == \"Pending\" ? (\n Not available yet\n ) : null}\n\n {testAppointment.status != \"Pending\" ? (\n \n {/* {new Date(\n testAppointment.estimated_result_uploading_at\n ).toLocaleString(\"en-US\")} */}\n {testAppointment.estimated_result_uploading_at\n ? moment(testAppointment.estimated_result_uploading_at).format(\"DD MMM YYYY, h:mm A\")\n : \"--\"}\n \n ) : null}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"collection_status\",\n text: \"Sample Collector\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n \n \n {testAppointment.is_home_sampling_availed &&\n !testAppointment.collector_name && (\n \n Not assigned\n \n )}\n\n {testAppointment.is_home_sampling_availed &&\n testAppointment.collector_name && (\n {testAppointment.collector_name}\n )}\n\n {!testAppointment.is_home_sampling_availed && (\n \n Not availed\n \n )}\n {testAppointment.is_home_sampling_availed &&\n !testAppointment.collection_status && (\n \n Pending\n \n )}\n\n {testAppointment.is_home_sampling_availed &&\n testAppointment.collection_status == \"Assigned\" && (\n \n {testAppointment.collection_status}\n \n )}\n\n {testAppointment.is_home_sampling_availed &&\n testAppointment.collection_status == \"On way\" && (\n \n {testAppointment.collection_status}\n \n )}\n\n {testAppointment.is_home_sampling_availed &&\n testAppointment.collection_status == \"Reached\" && (\n \n {testAppointment.collection_status}\n \n )}\n\n {testAppointment.is_home_sampling_availed &&\n testAppointment.collection_status == \"Patient Unavailable\" && (\n \n {testAppointment.collection_status}\n \n )}\n\n {testAppointment.is_home_sampling_availed &&\n testAppointment.collection_status == \"Sample+Payment Collected\" && (\n \n {testAppointment.collection_status}\n \n )}\n {testAppointment.is_home_sampling_availed &&\n testAppointment.collection_status == \"Sample+Payment Delivered\" && (\n \n {testAppointment.collection_status}\n \n )}\n\n {!testAppointment.is_home_sampling_availed && (\n \n Not availed\n \n )}\n \n \n \n ), filter: textFilter(),\n },\n {\n dataField: 'status',\n text: 'Appointment Status',\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.status == \"Pending\" && (\n \n {testAppointment.status}\n \n\n )}\n {testAppointment.status == \"Pending Cancel\" && (\n \n {testAppointment.status}\n \n\n )}\n {testAppointment.status == \"Cancel\" && (\n \n {testAppointment.status}\n \n\n )}\n {testAppointment.status == \"Confirmed\" && (\n \n {testAppointment.status}\n \n )}\n\n {testAppointment.status == \"Sample Collected\" && (\n \n {testAppointment.status}\n \n )}\n\n {testAppointment.status == \"Rescheduled\" && (\n \n {testAppointment.status}\n \n )}\n\n\n {testAppointment.status == \"Result Uploaded\" && (\n \n {testAppointment.status}\n \n )}\n\n \n ),\n filter: selectFilter({\n options: {\n '': 'All',\n 'Cancel': 'Cancel',\n 'Pending Cancel': 'Pending Cancel',\n 'Result Uploaded': 'Result Uploaded',\n },\n defaultValue: 'All',\n }),\n },\n\n // {\n // dataField: \"reschedule_count\",\n // text: \"Rescheduling\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // \n // \n // {testAppointment.reschedule_count > 1 && (\n // \n // {testAppointment.reschedule_count} Used, Limit Reached\n // \n // )}\n\n // {(!testAppointment.reschedule_reason ||\n // testAppointment.reschedule_count < 2) && (\n // \n // {testAppointment.reschedule_count} Used,{\" \"}\n // {2 - testAppointment.reschedule_count} Left\n // \n // )}\n // {testAppointment.reschedule_reason &&\n // testAppointment.reschedule_reason == \"Other\" && (\n // this.openReasonModal(e, testAppointment)}\n // >\n // {testAppointment.reason.slice(0, 10) + \"...\"}\n // \n // )}\n\n // {testAppointment.reschedule_reason &&\n // testAppointment.reschedule_reason != \"Other\" && (\n // \n // {testAppointment.reschedule_reason}\n // \n // )}\n\n // {!testAppointment.reschedule_reason && (\n // \n // Not Rescheduled\n // \n // )}\n // {/* this.openMessageModal(e, testAppointment)}\n // >\n // {testAppointment.reschedule_reason.slice(0, 10) + \"...\"}\n // {\" \"} */}\n // \n // \n // \n // ),\n // },\n {\n dataField: \"payment_status\",\n text: \"Payment Status\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.payment_status == \"Not Paid\" ? (\n \n {testAppointment.payment_method},{\" \"}\n {testAppointment.payment_status}\n \n ) : (\n \n {testAppointment.payment_method},{\" \"}\n {testAppointment.payment_status}\n \n )}\n \n ),\n // filter: selectFilter({\n // options: {\n // '': 'All',\n // 'Paid': 'Paid',\n // 'Not Paid': 'Not Paid',\n // 'Allocate': 'Allocate',\n // },\n // defaultValue: 'All',\n // }),\n },\n\n // {\n // dataField: \"invoice\",\n // text: \"Invoice\",\n // isDummyField: true,\n // editable: false,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // \n // Invoice\n // \n // \n // ),\n // },\n // {\n // dataField: \"payment\",\n // text: \"Payment\",\n // isDummyField: true,\n // editable: false,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // \n // Payment\n // \n // \n // ),\n // },\n \n\n {\n dataField: process.env.REACT_APP_BACKENDURL + \"result\",\n text: \"Actions\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n
\n \n \n this.openReshedualModal(e, testAppointment)\n }\n >\n \n \n \n \n \n \n \n \n\n \n {testAppointment.status !== \"Pending Cancel\" && testAppointment.status !== \"Cancel\" && (\n testAppointment.result_type === \"File\" ? (\n \n Report\n \n ) : (\n \n View\n \n )\n )}\n \n
\n \n ),\n },\n\n\n ],\n };\n // this.toggle = this.toggle.bind(this);\n this.toggleReasonModal = this.toggleReasonModal.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n this.toggleReshedualModal = this.toggleReshedualModal.bind(this);\n\n }\n\n componentDidMount() {\n const { testAppointments, onAddNewCollectionPointTestAppointment, onGetTestAppointmentsCompletedList, onGetLabProfile } = this.props;\n const user_id = this.state.user_id; // Use state to get user_id\n\n // Fetch the test appointments\n onGetTestAppointmentsCompletedList(user_id);\n\n // Fetch lab profiles\n onGetLabProfile(user_id);\n }\n componentDidUpdate(prevProps) {\n // Check if labProfiles.type has changed\n if (prevProps.labProfiles.type !== this.props.labProfiles.type) {\n // Update the state based on the new labProfiles.type\n // const newLabType = this.props.labProfiles.type === \"Collection Point\" ? \"Collection\" : \"Main\";\n // this.setState({ main_lab_appointments: newLabType }, () => {\n const { onAddNewCollectionPointTestAppointment, onGetTestAppointmentsCompletedList } = this.props;\n const { start_date, end_date, main_lab_appointments, user_id } = this.state;\n const updatedTestAppointments = { main_lab_appointments, start_date, end_date };\n \n // API call with updated dates and lab type\n onAddNewCollectionPointTestAppointment(updatedTestAppointments, user_id);\n setTimeout(() => {\n onGetTestAppointmentsCompletedList(this.state.user_id);\n }, 1000);\n\n // });\n }\n }\n\n // toggle() {\n // this.setState(prevState => ({\n // modal: !prevState.modal,\n // }));\n // }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n appointment_requested_at: arg.appointment_requested_at,\n patient_unique_id: arg.patient_unique_id,\n patient_gender: arg.patient_gender,\n patient_age: arg.patient_age,\n ageFormat: arg.ageFormat,\n patient_city: arg.patient_city,\n patient_phone: arg.patient_phone,\n booked_at: arg.booked_at,\n });\n };\n // handleMouseExit = () => {\n // this.setState({\n // PatientModal: false,\n // isHovered: false,\n \n // });\n // };\n openReshedualModal = (e, arg) => {\n this.setState({\n ReshedualModal: true,\n reschedule_reason: arg.reschedule_reason,\n reason: arg.reason,\n reschedule_count: arg.reschedule_count,\n rescheduled_at: arg.rescheduled_at,\n });\n };\n\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n toggleReshedualModal = () => {\n this.setState(prevState => ({\n ReshedualModal: !prevState.ReshedualModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n openReasonModal = (e, arg) => {\n this.setState({ reasonModal: true, reason: arg.reason });\n };\n\n toggleReasonModal = () => {\n this.setState(prevState => ({\n reasonModal: !prevState.reasonModal,\n }));\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n handleDateChange(date, field) {\n this.setState({ [field]: moment(date).format('DD MMM YYYY') }, () => {\n // Make the API call after the state has been updated\n const { onAddNewCollectionPointTestAppointment, onGetTestAppointmentsCompletedList } = this.props;\n const { start_date, end_date, main_lab_appointments, user_id } = this.state;\n const updatedTestAppointments = { main_lab_appointments, start_date, end_date };\n \n // API call with updated dates and lab type\n onAddNewCollectionPointTestAppointment(updatedTestAppointments, user_id);\n setTimeout(() => {\n onGetTestAppointmentsCompletedList(this.state.user_id);\n }, 1000);\n });\n }\n\n handleTestAppointmentType = e => {\n const { value } = e.target;\n this.setState({ main_lab_appointments: value }, () => {\n const { onAddNewCollectionPointTestAppointment, onGetTestAppointmentsCompletedList } = this.props;\n const { start_date, end_date, main_lab_appointments, user_id } = this.state;\n const updatedTestAppointments = { main_lab_appointments, start_date, end_date };\n setTimeout(() => {\n console.log(onAddNewCollectionPointTestAppointment(updatedTestAppointments, user_id));\n });\n setTimeout(() => {\n onGetTestAppointmentsCompletedList(this.state.user_id);\n }, 1000);\n\n });\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { testAppointments } = this.props;\n const { onGetLabProfile, onAddNewCollectionPointTestAppointment, onGetTestAppointmentsCompletedList } =\n this.props;\n const testAppointment = this.state.testAppointment;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: testAppointments.length, // replace later with size(testAppointments),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n Test Appointments List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n \n \n this.handleDateChange(date[0], 'start_date')}\n />\n \n \n\n \n \n \n this.handleDateChange(date[0], 'end_date')}\n />\n \n \n \n
\n
\n {this.props.labProfiles.type === \"Main Lab\" && (\n
\n \n \n \n \n \n \n

Filter all completed appointments at your collection points.

\n\n
\n )}\n
\n
\n {/* {this.props.labProfiles.type === \"Collection Point\" && (\n
\n
\n \n \n
\n
)} */}\n \n
\n \n \n
\n \n
\n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n\n {this.state.patient_address && this.state.patient_address !== \"undefined\" ? (\n
\n
\n \n
\n
\n \n
\n
\n ): null}\n\n {/*
\n
\n \n
\n
\n \n
\n
*/}\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n\n
\n {\n navigator.clipboard.writeText(\n this.state\n .patient_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
\n
\n \n
\n
\n
\n
\n \n \n \n \n \n \n \n
\n \n \n {/*
\n
\n \n
\n
\n \n
\n
*/}\n
\n
\n \n
\n
\n \n
\n
\n {this.state.testAppointment\n .reschedule_reason ==\n \"Other\" &&\n
\n
\n \n
\n
\n \n
\n
}\n\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n \n
\n
\n \n this.setState({\n reasonModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
\n
\n
\n {/*
\n
\n \n
\n
*/}\n\n
\n
\n

\n Rescheduling Reason\n

\n

\n {this.state.reason}\n

\n
\n
\n
\n
\n
\n \n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nTestAppointmentsCompletedList.propTypes = {\n match: PropTypes.object,\n testAppointments: PropTypes.array,\n className: PropTypes.any,\n onGetTestAppointmentsCompletedList: PropTypes.func,\n labProfiles: PropTypes.array,\n onAddNewCollectionPointTestAppointment: PropTypes.func,\n onGetLabProfile: PropTypes.func,\n\n // onUpdateTestAppointment: PropTypes.func,\n};\n\nconst mapStateToProps = ({ testAppointments }) => ({\n testAppointments: testAppointments.testAppointmentsCompletedList,\n labProfiles: testAppointments.labProfiles,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetLabProfile: id => dispatch(getLabProfile(id)),\n onAddNewCollectionPointTestAppointment: (testAppointment, id) =>\n dispatch(addNewCollectionPointTestAppointment(testAppointment, id)),\n onGetTestAppointmentsCompletedList: id =>\n dispatch(getTestAppointmentsCompletedList(id)),\n // onUpdateTestAppointment: testAppointment =>\n // dispatch(updateTestAppointment(testAppointment)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(TestAppointmentsCompletedList));","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport StarRatings from \"react-star-ratings\";\nimport BootstrapTable from 'react-bootstrap-table-next';\nimport filterFactory, { textFilter } from 'react-bootstrap-table2-filter';\n\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport { getFeedbacks } from \"store/feedbacks/actions\";\nimport { getLabProfile } from \"../../store/actions\";\nimport { isEmpty, size } from \"lodash\";\n\nimport \"assets/scss/table.scss\";\n\nclass FeedbacksList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n feedbacks: [],\n labProfile:[],\n feedback: \"\",\n rating:\"\",\n modal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n feedbackListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, feedback) => <>{feedback.id},\n filter: textFilter(),\n },\n {\n dataField: \"order_id\",\n text: \"Order id\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"patient_name\",\n text: \"Name\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"city\",\n text: \"City\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"rating\",\n text: \"Rating\",\n sort: true,\n formatter: (cellContent, feedback) => (\n \n ),\n filter: textFilter(),\n },\n \n {\n dataField: \"review\",\n text: \"Review\",\n sort: true,\n filter: textFilter(),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { feedbacks, onGetFeedbacks } = this.props;\n onGetFeedbacks(this.state.user_id);\n this.setState({ feedbacks });\n const { labProfile, onGetLabProfile } = this.props;\n console.log(onGetLabProfile(this.state.user_id));\n this.setState({ labProfile }); \n console.log(\"state\",labProfile)\n console.log(\"state tyoeeee\", typeof labProfile)\n\n }\n \n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { feedbacks } = this.props;\n if (!isEmpty(feedbacks) && size(prevProps.feedbacks) !== size(feedbacks)) {\n this.setState({ feedbacks: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { feedbacks, labProfile } = this.props;\n console.log(\"type render\", typeof labProfile)\n\n\n const { onGetFeedbacks, onGetLabProfile } = this.props;\n const feedback = this.state.feedback;\n // const labprofile=this.state.labprofile;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: feedbacks.length, // replace later with size(feedbacks),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n console.log(\"hello\",this.props.labProfile.type),\n \n
\n \n Feedbacks List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n \n {toolkitprops => (\n \n \n {/* \n
\n
\n \n \n
\n
\n */}\n \n
\n Total Rating of the Lab:\n \n \n
\n \n
\n \n \n
\n \n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nFeedbacksList.propTypes = {\n match: PropTypes.object,\n feedbacks: PropTypes.array,\n labProfile: PropTypes.array,\n className: PropTypes.any,\n onGetFeedbacks: PropTypes.func,\n match: PropTypes.object,\n onGetLabProfile: PropTypes.func,\n location: PropTypes.object,\n error: PropTypes.any,\n success: PropTypes.any,\n};\n\nconst mapStateToProps = ({ feedbacks}) => ({\n feedbacks: feedbacks.feedbacks,\n labProfile:feedbacks.labProfile,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetFeedbacks: id => dispatch(getFeedbacks(id)),\n onGetLabProfile: id => dispatch(getLabProfile(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(FeedbacksList));\n","export default __webpack_public_path__ + \"static/media/logo-dark.4e471040.png\";","import React, { Component } from \"react\";\nimport MetaTags from \"react-meta-tags\";\nimport { Link, withRouter } from \"react-router-dom\";\nimport { Card, CardBody, Col, Container, Row, Table } from \"reactstrap\";\nimport { isEmpty, map } from \"lodash\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"../../components/Common/Breadcrumb\";\nimport logo from \"../../assets/images/logo-dark.png\";\nimport jsPDF from 'jspdf';\nimport html2canvas from 'html2canvas';\nimport moment from 'moment';\n\n\nimport PropTypes from \"prop-types\";\nimport { getInvoiceDetail } from \"store/invoices/actions\";\nimport { connect } from \"react-redux\";\nimport QRCode from \"qrcode.react\";\n\nclass InvoiceDetail extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n }\n\n componentDidMount() {\n const { onGetInvoiceDetail } = this.props;\n onGetInvoiceDetail(this.props.match.params.id);\n }\n\n //Print the Invoice\n printInvoice = () => {\n window.print();\n };\n\n sendInvoice = () => {\n const { node } = this;\n \n if (node && node.current) {\n const scale = 2; // Adjust this value as needed\n const options = {\n scale: scale,\n dpi: 300, // Adjust the DPI value as needed\n };\n \n html2canvas(node.current, options).then((canvas) => {\n const imgData = canvas.toDataURL('image/png');\n const pdf = new jsPDF('l', 'mm', 'a4'); // 'l' for landscape\n pdf.addImage(imgData, 'PNG', 0, 0, 297, 210); // Swap width and height for landscape\n pdf.save('LabHazir_Invoice.pdf');\n });\n }\n };\n \n \n\n render() {\n return (\n \n
\n \n Invoice | Lab Hazir - Dashboard\n \n \n {/* Render Breadcrumbs */}\n \n {!isEmpty(this.props.invoiceDetail) && (\n \n \n \n \n
\n

\n Order ID: {this.props.invoiceDetail[0].order_id}\n

\n
\n \"logo\"\n
\n
\n
\n \n \n
\n Patient Detail:\n
\n Name: {this.props.invoiceDetail[0].patient_name}\n
\n Phone: {this.props.invoiceDetail[0].patient_phone}\n
\n Email: {this.props.invoiceDetail[0].patient_email}\n
\n Age: {this.props.invoiceDetail[0].patient_age} ({this.props.invoiceDetail[0].ageFormat})\n {this.props.invoiceDetail[0].patient_address != null ? (\n
\n Address: {this.props.invoiceDetail[0].patient_address}\n
\n ) : null}\n
\n \n\n \n
\n Lab Detail:\n
\n NTN #: {this.props.invoiceDetail[0].lab_ntn}\n
\n Token #: {this.props.invoiceDetail[0].token}\n
\n Lab Name: {this.props.invoiceDetail[0].lab_name}\n
\n Lab Email: {this.props.invoiceDetail[0].lab_email}\n
\n Lab Address: {this.props.invoiceDetail[0].lab_address}\n
\n {this.props.invoiceDetail[0].estimated_sample_collection_at !== null ? (\n <>\n Sampling Date Time by Lab:{\" \"}\n {this.props.invoiceDetail[0].estimated_sample_collection_at\n ? moment(this.props.invoiceDetail[0].estimated_sample_collection_at).format(\"DD MMM YYYY, h:mm A\")\n : \"--\"}\n {/* {new Date(this.props.invoiceDetail[0].estimated_sample_collection_at).toLocaleString(\"en-US\")} */}\n \n ) : null}\n
\n \n\n\n \n
\n \n
\n \n
\n\n \n \n
\n Payment Detail:\n
\n {this.props.invoiceDetail[0].payment_method}\n
\n {this.props.invoiceDetail[0].payment_status}\n
\n {this.props.invoiceDetail[0].payment_method ==\n \"Card\" ? (\n <>\n {/* {new Date(\n this.props.invoiceDetail[0].paid_at\n ).toLocaleString(\"en-US\")} */}\n {this.props.invoiceDetail[0].paid_at\n ? moment(this.props.invoiceDetail[0].paid_at).format(\"DD MMM YYYY, h:mm A\")\n : \"--\"}\n \n ) : null}\n
\n \n\n \n
\n Order Detail:\n
Invoice Generated Date Time: \n \n {this.props.invoiceDetail[0].invoice_generated_at\n ? moment(this.props.invoiceDetail[0].invoice_generated_at).format(\"DD MMM YYYY, h:mm A\")\n : \"--\"}\n
\n
\n
\n \n \n \n
\n\n
\n

\n Order summary\n

\n
\n
\n \n \n \n \n \n \n \n \n \n {/* */}\n \n\n \n \n \n {map(\n this.props.invoiceDetail[0].items,\n (item, key) => (\n \n \n \n \n \n \n \n {/* */}\n \n \n )\n )}\n \n \n \n \n \n \n \n \n \n \n \n \n \n
No.Test NameTest TypePriceDiscount By Lab (Rs)Discount By LabHazir (Rs)Discount\n Sub Total\n
{key + 1}{item.test_name}{item.test_categories}{item.price.toFixed(0).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}{item.discount.toFixed(0)}{\"%\"}{(item.discount_by_labhazir + item.discount_by_labhazird_by_test).toFixed(0)}{\"%\"}{item.discount_by_labhazird_by_test}\n {item.total_appointment.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n // -\n // this.props.invoiceDetail[0]\n // .home_sampling_charges\n }\n
\n Sampling Fee\n \n {\n this.props.invoiceDetail[0]\n .home_sampling_charges.toFixed(0).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n
\n Platform Charges\n \n {\n this.props.invoiceDetail[0]\n .charges_except_total_dues.toFixed(0).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n
\n Total\n \n

\n {(this.props.invoiceDetail[0].total_dues +\n this.props.invoiceDetail[0]\n .home_sampling_charges).toFixed(0).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n
\n
\n \n Note: Numbers may not add up due to rounding, it is inconsequential enough to be ignored.\n \n \n
\n\n
\n\n
\n \n \n {\" \"}\n {/* \n Send\n */}\n \n\n
\n
\n
\n
\n \n
\n )}\n
\n
\n
\n );\n }\n}\n\nInvoiceDetail.propTypes = {\n match: PropTypes.object,\n invoiceDetail: PropTypes.object,\n onGetInvoiceDetail: PropTypes.func,\n};\n\nconst mapStateToProps = ({ invoices }) => ({\n invoiceDetail: invoices.invoiceDetail,\n});\n\nconst mapDispatchToProps = dispatch => ({\n onGetInvoiceDetail: id => dispatch(getInvoiceDetail(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(InvoiceDetail));","import React, { Component } from \"react\";\nimport MetaTags from \"react-meta-tags\";\nimport { Link, withRouter } from \"react-router-dom\";\nimport { Card, CardBody, Col, Container, Row, Table } from \"reactstrap\";\nimport { isEmpty, map } from \"lodash\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"../../components/Common/Breadcrumb\";\nimport logo from \"../../assets/images/logo-dark.png\";\nimport jsPDF from 'jspdf';\nimport html2canvas from 'html2canvas';\nimport moment from 'moment';\n\nimport PropTypes from \"prop-types\";\nimport { getInvoiceDetail } from \"store/invoices/actions\";\nimport { connect } from \"react-redux\";\nimport QRCode from \"qrcode.react\";\nclass InvoiceDetail extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n }\n\n componentDidMount() {\n const { onGetInvoiceDetail } = this.props;\n onGetInvoiceDetail(this.props.match.params.id);\n }\n\n //Print the Invoice\n printInvoice = () => {\n window.print();\n };\n\n sendInvoice = () => {\n const { node } = this;\n \n if (node && node.current) {\n const scale = 2; // Adjust this value as needed\n const options = {\n scale: scale,\n dpi: 300, // Adjust the DPI value as needed\n };\n \n html2canvas(node.current, options).then((canvas) => {\n const imgData = canvas.toDataURL('image/png');\n const pdf = new jsPDF('l', 'mm', 'a4'); // 'l' for landscape\n pdf.addImage(imgData, 'PNG', 0, 0, 297, 210); // Swap width and height for landscape\n pdf.save('LabHazir_Invoice.pdf');\n });\n }\n };\n \n \n\n render() {\n return (\n \n
\n \n Appointment Detail | Lab Hazir - Dashboard\n \n \n {/* Render Breadcrumbs */}\n \n {!isEmpty(this.props.invoiceDetail) && (\n \n \n \n \n
\n

\n Order ID: {this.props.invoiceDetail[0].order_id}\n

\n
\n \"logo\"\n
\n
\n
\n \n \n
\n Patient Detail:\n
\n Name: {this.props.invoiceDetail[0].patient_name}\n
\n Phone: {this.props.invoiceDetail[0].patient_phone}\n
\n Email: {this.props.invoiceDetail[0].patient_email}\n
\n Age: {this.props.invoiceDetail[0].patient_age} ({this.props.invoiceDetail[0].ageFormat})\n {this.props.invoiceDetail[0].patient_address != null ? (\n
\n Address: {this.props.invoiceDetail[0].patient_address}\n
\n ) : null}\n
\n \n\n \n
\n Lab Detail:\n
\n NTN #: {this.props.invoiceDetail[0].lab_ntn}\n
\n Token #: {this.props.invoiceDetail[0].token}\n
\n Lab Name: {this.props.invoiceDetail[0].lab_name}\n
\n Lab Email: {this.props.invoiceDetail[0].lab_email}\n
\n Lab Address: {this.props.invoiceDetail[0].lab_address}\n
\n {this.props.invoiceDetail[0].estimated_sample_collection_at !== null ? (\n <>\n Sampling Date Time by Lab:{\" \"}\n {this.props.invoiceDetail[0].estimated_sample_collection_at\n ? moment(this.props.invoiceDetail[0].estimated_sample_collection_at).format(\"DD MMM YYYY, h:mm A\")\n : \"--\"}\n \n ) : null}\n
\n \n\n\n \n
\n \n
\n \n
\n\n \n \n
\n Payment Detail:\n
\n {this.props.invoiceDetail[0].payment_method}\n
\n {this.props.invoiceDetail[0].payment_status}\n
\n {this.props.invoiceDetail[0].payment_method ==\n \"Card\" ? (\n <>\n {/* {new Date(\n this.props.invoiceDetail[0].paid_at\n ).toLocaleString(\"en-US\")} */}\n {this.props.invoiceDetail[0].paid_at\n ? moment(this.props.invoiceDetail[0].paid_at).format(\"DD MMM YYYY, h:mm A\")\n : \"--\"}\n \n ) : null}\n
\n \n\n \n
\n Order Detail:\n
Invoice Generated Date Time: \n {this.props.invoiceDetail[0].invoice_generated_at\n ? moment(this.props.invoiceDetail[0].invoice_generated_at).format(\"DD MMM YYYY, h:mm A\")\n : \"--\"}\n {/* {new Date(\n this.props.invoiceDetail[0].invoice_generated_at\n ).toLocaleString(\"en-US\")} */}\n
\n
\n
\n \n \n \n
\n\n
\n

\n Order summary\n

\n
\n
\n \n \n \n \n \n \n \n \n \n {/* */}\n \n\n \n \n \n {map(\n this.props.invoiceDetail[0].items,\n (item, key) => (\n \n \n \n \n \n \n \n {/* */}\n \n \n )\n )}\n \n \n \n \n \n \n \n \n \n \n \n \n \n
No.Test NameTest TypePriceDiscount By Lab (Rs)Discount By LabHazir (Rs)Discount\n Sub Total\n
{key + 1}{item.test_name}{item.test_categories}{item.price.toFixed(0).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}{item.discount.toFixed(0)}{(item.discount_by_labhazir + item.discount_by_labhazird_by_test).toFixed(0)}{item.discount_by_labhazird_by_test}\n {item.total_appointment.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n // -\n // this.props.invoiceDetail[0]\n // .home_sampling_charges\n }\n
\n Sampling Fee\n \n {\n this.props.invoiceDetail[0]\n .home_sampling_charges.toFixed(0).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n
\n Platform Charges\n \n {\n this.props.invoiceDetail[0]\n .charges_except_total_dues.toFixed(0).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n
\n Total\n \n

\n {(this.props.invoiceDetail[0].total_dues +\n this.props.invoiceDetail[0]\n .home_sampling_charges).toFixed(0).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n
\n
\n \n Note: Numbers may not add up due to rounding, it is inconsequential enough to be ignored.\n \n \n
\n\n
\n\n
\n \n \n {\" \"}\n {/* \n Send\n */}\n \n\n
\n
\n
\n
\n \n
\n )}\n
\n
\n
\n );\n }\n}\n\nInvoiceDetail.propTypes = {\n match: PropTypes.object,\n invoiceDetail: PropTypes.object,\n onGetInvoiceDetail: PropTypes.func,\n};\n\nconst mapStateToProps = ({ invoices }) => ({\n invoiceDetail: invoices.invoiceDetail,\n});\n\nconst mapDispatchToProps = dispatch => ({\n onGetInvoiceDetail: id => dispatch(getInvoiceDetail(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(InvoiceDetail));","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport Select from \"react-select\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { CITIES, DISTRICTS } from \"helpers/global_variables_helper\";\n\n\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport { getAdvertisementPriceLists } from \"store/advertisement-price-lists/actions\";\nimport {\n // getAdvertisementPriceLists,\n getLabAdvertisements,\n addNewLabAdvertisement,\n updateLabAdvertisement,\n deleteLabAdvertisement,\n} from \"store/lab-advertisements/actions\";\n\nimport {\n getTerritoriesList\n} from \"store/territories-list/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\nimport { Tooltip } from \"@material-ui/core\";\nimport moment from 'moment';\nclass AdvertisementsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n labAdvertisements: [],\n advertisementPriceLists: [],\n territoriesList: [],\n labAdvertisement: \"\",\n advertisementImg: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n advertisementListColumns: [\n {\n text: \"ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n formatter: (cellContent, labAdvertisement) => <>{labAdvertisement.id},\n },\n {\n dataField: \"poster\",\n text: \"Adv Image\",\n formatter: (cellContent, labAdvertisement) => (\n <>\n {!labAdvertisement.poster ? (\n
\n \n {/* {labAdvertisement.name.charAt(0)} */}\n \n
\n ) : (\n \n \n \n )}\n \n ),\n },\n {\n dataField: \"title\",\n text: \"Title\",\n sort: true,\n },\n {\n dataField: \"request_status\",\n text: \"Status\",\n sort: true,\n formatter: (cellContent, labAdvertisement) => (\n <>\n {labAdvertisement.request_status == \"Pending\" && (\n \n {labAdvertisement.request_status}\n \n )}\n\n\n {labAdvertisement.request_status == \"Accepted\" && (\n \n {labAdvertisement.request_status}\n \n )}\n\n {/* {labAdvertisement.request_status == \"Recreated\" && (\n \n Recreated\n \n )} */}\n {labAdvertisement.request_status == \"Recreated\" && (\n \n this.openPatientModal(e, labAdvertisement)}\n >\n {labAdvertisement.request_status}\n \n \n )}\n \n ),\n },\n {\n dataField: \"number_of_days\",\n text: \"Duration In Days\",\n sort: true,\n },\n {\n dataField: \"amount\",\n text: \"Price\",\n sort: true,\n formatter: (cellContent, labAdvertisement) => (\n <>\n {(\n {labAdvertisement.amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n )}\n \n ),\n },\n {\n dataField: \"payment_status\",\n text: \"Payment Status\",\n sort: true,\n formatter: (cellContent, labAdvertisement) => (\n <>\n {labAdvertisement.payment_status == \"Cleared\" ? (\n \n {labAdvertisement.payment_method},{\" \"}\n {labAdvertisement.payment_status}\n \n ) : (\n --\n\n )}\n \n ),\n },\n {\n dataField: \"invoice\",\n text: \"Invoice\",\n isDummyField: true,\n editable: false,\n formatter: (cellContent, labAdvertisement) => (\n <>\n \n Invoice\n \n \n ),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, labAdvertisement) => (\n
\n \n {labAdvertisement.payment_status !== \"Cleared\" && labAdvertisement.payment_status !== \"Created\" && labAdvertisement.payment_status !== \"Bounced\" && (labAdvertisement.request_status === \"Pending\" || labAdvertisement.request_status === \"Recreated\") && (\n \n \n this.handleAdvertisementClick(e, labAdvertisement)}\n >\n \n \n )}\n {labAdvertisement.payment_status !== \"Cleared\" && labAdvertisement.payment_status !== \"Created\" && labAdvertisement.payment_status !== \"Bounced\" && (labAdvertisement.request_status === \"Pending\" || labAdvertisement.request_status === \"Recreated\") && (\n \n \n this.onClickDelete(labAdvertisement)}\n >\n \n \n )}\n \n \n \n
\n ),\n },\n ],\n };\n this.handleAdvertisementClick = this.handleAdvertisementClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleAdvertisementClicks = this.handleAdvertisementClicks.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n }\n\n // The code for converting \"image source\" (url) to \"Base64\"\n toDataURL = url =>\n fetch(url)\n .then(response => response.blob())\n .then(\n blob =>\n new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.onerror = reject;\n reader.readAsDataURL(blob);\n })\n );\n\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n componentDidMount() {\n const { territoriesList, onGetTerritoriesList } = this.props;\n if (territoriesList && !territoriesList.length) {\n console.log(onGetTerritoriesList(this.state.user_id));\n }\n const { labAdvertisements, onGetLabAdvertisements } = this.props;\n if (labAdvertisements && !labAdvertisements.length) {\n console.log(onGetLabAdvertisements(this.state.user_id));\n }\n\n const { advertisementPriceLists, onGetAdvertisementPriceLists } = this.props;\n if (advertisementPriceLists && !advertisementPriceLists.length) {\n console.log(onGetAdvertisementPriceLists(this.state.user_id));\n }\n\n // this.setState({ labAdvertisements });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n declined_reason: arg.declined_reason,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n handleAdvertisementClicks = () => {\n this.setState({\n labAdvertisement: \"\",\n advertisementImg: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { labAdvertisements } = this.props;\n if (\n !isEmpty(labAdvertisements) &&\n size(prevProps.labAdvertisements) !== size(labAdvertisements)\n ) {\n this.setState({ labAdvertisements: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = labAdvertisements => {\n this.setState({ labAdvertisements: labAdvertisements });\n this.setState({ deleteModal: true });\n };\n\n handleDeleteAdvertisement = () => {\n const { onDeleteAdvertisement, onGetLabAdvertisements } = this.props;\n const { labAdvertisements } = this.state;\n if (labAdvertisements.id !== undefined) {\n onDeleteAdvertisement(labAdvertisements);\n setTimeout(() => {\n onGetLabAdvertisements(this.state.user_id);\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n\n handleAdvertisementClick = (e, arg) => {\n const labAdvertisement = arg;\n const formatDateForInput = (dateString) => {\n return moment(dateString).format('YYYY-MM-DDTHH:mm'); // 'YYYY-MM-DDTHH:mm'\n };\n this.setState({\n labAdvertisement: {\n id: labAdvertisement.id,\n title: labAdvertisement.title,\n poster: process.env.REACT_APP_BACKENDURL + labAdvertisement.poster,\n posted_at: formatDateForInput(labAdvertisement.posted_at),\n posted_till: formatDateForInput(labAdvertisement.posted_till),\n km: labAdvertisement.km,\n request_status: labAdvertisement.request_status,\n payment_status: labAdvertisement.payment_status,\n },\n advertisementImg: \"\",\n isEdit: true,\n }, () => {\n this.toggle();\n });\n };\n\n render() {\n\n // list of city from territories\n const cityList = [];\n for (let i = 0; i < this.props.territoriesList.length; i++) {\n cityList.push({\n label: this.props.territoriesList[i].city,\n value: this.props.territoriesList[i].id,\n });\n }\n\n const myadvertisementPriceList = [];\n for (let i = 0; i < this.props.advertisementPriceLists.length; i++) {\n myadvertisementPriceList.push({\n label: this.props.advertisementPriceLists[i].number_of_days,\n value: this.props.advertisementPriceLists[i].id,\n });\n }\n const { SearchBar } = Search;\n\n const { labAdvertisements } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onAddNewLabAdvertisement,\n onUpdateLabAdvertisement,\n onGetLabAdvertisements,\n } = this.props;\n const labAdvertisement = this.state.labAdvertisement;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: 10, // replace later with size(labAdvertisements),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n // const advertisementNumberOfDaysList = [];\n // for (let i = 0; i < this.props.advertisementPriceLists.length; i++) {\n // advertisementNumberOfDaysList.push({\n // label: this.props.advertisementPriceLists[i].number_of_days,\n // value: this.props.advertisementPriceLists[i].number_of_days,\n\n // });\n // }\n\n return (\n \n this.setState({ deleteModal: false })}\n />\n
\n \n Advertisement List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n
\n
\n \n \n
\n \n \n Add New Advertisement\n \n
\n \n
\n \n \n
\n \n \n \n \n \n \n \n
\n \n \n
\n \n
\n \n
\n
\n \n
\n
\n
\n
\n \n \n \n {!!isEdit ? \"Edit Advertisement\" : \"Add New Advertisement\"}\n \n \n val === \"Others\",\n // then: Yup.string()\n // .trim()\n // .required(\"Please enter test name\")\n // .min(\n // 3,\n // \"Please enter at least 3 characters\"\n // )\n // .max(\n // 255,\n // \"Please enter maximum 255 characters\"\n // )\n // .matches(\n // /^[a-zA-Z][a-zA-Z ]+$/,\n // \"Please enter only alphabets and spaces\"\n // ),\n // }\n // ),\n title: Yup.string().trim()\n .matches(\n /^[a-zA-Z][a-zA-Z ]+$/,\n \"Please enter only alphabets and spaces\"\n ).required(\n \"Please enter title it is necessary\"\n ).min(\n 3,\n \"Please enter at least 3 characters\"\n )\n .max(\n 255,\n \"Please enter maximum 255 characters\"\n ),\n\n poster: Yup.string().when(\n \"hiddenEditFlag\",\n {\n is: hiddenEditFlag =>\n hiddenEditFlag == false, //just an e.g. you can return a function\n then: Yup.string().required(\n \"Please upload poster it is necessary\"\n ),\n }\n ),\n })}\n onSubmit={values => {\n if (isEdit) {\n if (\n !this.state.advertisementImg\n ) {\n this.toDataURL(\n labAdvertisement.poster\n ).then(dataUrl => {\n var fileData =\n this.dataURLtoFile(\n dataUrl,\n labAdvertisement.poster\n .split(\"/\")\n .at(-1)\n );\n this.setState({\n advertisementImg: fileData,\n });\n\n const updateLabAdvertisement = {\n id: labAdvertisement.id,\n\n title: values.title,\n poster:\n this.state\n .advertisementImg,\n\n posted_at: values.posted_at,\n posted_till:\n values.posted_till,\n km: values.km,\n // number_of_days: values.number_of_days,\n // amount: values.amount,\n\n\n\n };\n\n // update Advertisement\n onUpdateLabAdvertisement(\n updateLabAdvertisement\n );\n setTimeout(() => {\n onGetLabAdvertisements(\n this.state.user_id\n );\n }, 1000);\n });\n } else {\n const updateLabAdvertisement = {\n id: labAdvertisement.id,\n\n title: values.title,\n poster:\n this.state.advertisementImg,\n\n posted_at: values.posted_at,\n posted_till:\n values.posted_till,\n km: values.km,\n // number_of_days: values.number_of_days,\n // amount: values.amount,\n\n\n\n };\n\n // update Advertisement\n onUpdateLabAdvertisement(\n updateLabAdvertisement\n );\n setTimeout(() => {\n onGetLabAdvertisements(\n this.state.user_id\n );\n }, 1000);\n }\n } else {\n const newAdvertisement = {\n id:\n Math.floor(\n Math.random() * (30 - 20)\n ) + 20,\n\n title: values.title,\n poster:\n this.state.advertisementImg,\n\n posted_at: values.posted_at,\n posted_till: values.posted_till,\n km: values.km,\n // number_of_days: values.number_of_days,\n // amount: values.amount,\n\n\n };\n\n // save new Advertisement\n onAddNewLabAdvertisement(\n newAdvertisement,\n this.state.user_id\n );\n setTimeout(() => {\n onGetLabAdvertisements(\n this.state.user_id\n );\n }, 1000);\n }\n this.toggle();\n }}\n >\n {({ values, errors, status, touched }) => (\n
\n \n \n \n\n {/* Advertisement Title field\n {this.state.labAdvertisement\n .region_type ===\n \"Others\" && (\n \n
\n \n {\n \n this.setState({\n labAdvertisement:\n {\n id: labAdvertisement.id,\n region_type: labAdvertisement.region_type,\n name: e.target\n .value,\n type: labAdvertisement.type,\n poster:\n labAdvertisement.poster,\n expiry_date: labAdvertisement.expiry_date,\n },\n });\n } \n }\n className={\n \"form-control\" +\n (errors.name &&\n touched.name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n \n )} */}\n {/* Region Type field */}\n
\n \n {\n this.setState({\n labAdvertisement: {\n id: labAdvertisement.id,\n\n title:\n e.target.value,\n poster:\n labAdvertisement.poster,\n posted_at:\n labAdvertisement.posted_at,\n posted_till:\n labAdvertisement.posted_till,\n km: labAdvertisement.km,\n // number_of_days:\n // labAdvertisement.number_of_days,\n // amount: labAdvertisement.amount,\n\n },\n });\n }}\n multiple={false}\n value={this.state.labAdvertisement.title}\n >\n \n \n \n
\n\n {/* Display current image in edit form only */}\n\n {labAdvertisement.poster &&\n labAdvertisement.poster ? (\n \n ) : null}\n\n\n {/* Advertisement field */}\n {(labAdvertisement.request_status === \"Accepted\" && labAdvertisement.payment_status !== \"Approved\") ||\n (labAdvertisement.request_status !== \"Accepted\" && labAdvertisement.payment_status === \"Approved\") ||\n (labAdvertisement.request_status !== \"Accepted\" && labAdvertisement.payment_status !== \"Approved\") ? (\n
\n \n \n this.setState({\n advertisementImg: e.target.files[0],\n })\n }\n className={\n \"form-control\" +\n (errors.poster && touched.poster ? \" is-invalid\" : \"\")\n }\n />\n\n \n
\n ) : null}\n\n\n\n {/* {labAdvertisement.request_status != \"Accepted\" && \n labAdvertisement.payment_status != \"Approved\" ? (\n \n ) : null} */}\n\n\n {/* Advertisement posted date field */}\n\n
\n \n \n this.setState({\n posted_at:\n e.target.value,\n })\n }\n />\n
\n {/* Advertisement expiry date field */}\n\n
\n \n \n this.setState({\n posted_till:\n e.target.value,\n })\n }\n />\n
\n\n\n {/* Advertisement number of days field */}\n\n
\n \n {\n this.setState({\n labAdvertisement: {\n id: labAdvertisement.id,\n km:\n e.target.value,\n poster:\n labAdvertisement.poster,\n title:\n labAdvertisement.title,\n posted_at:\n labAdvertisement.posted_at,\n posted_till:\n labAdvertisement.posted_till,\n description: labAdvertisement.description,\n // labAdvertisement.number_of_days,\n // amount: labAdvertisement.amount,\n\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.km &&\n touched.km\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nAdvertisementsList.propTypes = {\n match: PropTypes.object,\n labAdvertisements: PropTypes.array,\n className: PropTypes.any,\n advertisementPriceLists: PropTypes.array,\n territoriesList: PropTypes.array,\n onGetAdvertisementPriceLists: PropTypes.func,\n onGetTerritoriesList: PropTypes.func,\n onGetLabAdvertisements: PropTypes.func,\n onAddNewLabAdvertisement: PropTypes.func,\n onDeleteAdvertisement: PropTypes.func,\n onUpdateLabAdvertisement: PropTypes.func,\n};\n\nconst mapStateToProps = ({ advertisementPriceLists, labAdvertisements, territoriesList }) => ({\n labAdvertisements: labAdvertisements.labAdvertisements,\n advertisementPriceLists: advertisementPriceLists.advertisementPriceLists,\n territoriesList: territoriesList.territoriesList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetAdvertisementPriceLists: id => dispatch(getAdvertisementPriceLists(id)),\n onGetTerritoriesList: id => dispatch(getTerritoriesList(id)),\n onGetLabAdvertisements: id => dispatch(getLabAdvertisements(id)),\n onAddNewLabAdvertisement: (labAdvertisement, id) =>\n dispatch(addNewLabAdvertisement(labAdvertisement, id)),\n onUpdateLabAdvertisement: labAdvertisement =>\n dispatch(updateLabAdvertisement(labAdvertisement)),\n onDeleteAdvertisement: labAdvertisement =>\n dispatch(deleteLabAdvertisement(labAdvertisement)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(AdvertisementsList));","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Card, CardBody, Col, Table, Container, Row } from \"reactstrap\";\nimport { isEmpty, map } from \"lodash\";\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { getCLabAccountStatements } from \"store/b2b-account-statements/actions\";\nimport \"assets/scss/table.scss\";\n\nclass AccountStatements extends Component {\n constructor(props) {\n super(props);\n this.state = {\n b2baccountStatements: [],\n b2baccountStatement: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n account_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n selectedCorporate: \"\", // Added state for selected corporate name\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n if (this.state.user_id) {\n const { onGetCLabAccountStatements } = this.props;\n onGetCLabAccountStatements(this.state.user_id);\n }\n }\n\n toggle() {\n this.setState((prevState) => ({\n modal: !prevState.modal,\n }));\n }\n\n handleCorporateSelect = (selectedCorporate) => {\n this.setState({ selectedCorporate });\n };\n\n getFilteredTotal = (data) => {\n const totalAmount = data.reduce((acc, statement) => acc + statement.amount, 0);\n const totalReceivable = data.reduce((acc, statement) => acc + statement.receivable, 0);\n const totalPayable = data.reduce((acc, statement) => acc + statement.payable, 0);\n \n return {\n totalAmount,\n totalReceivable,\n totalPayable,\n };\n };\n\n onPaginationPageChange = (page) => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { b2baccountStatements } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: b2baccountStatements.length,\n custom: true,\n };\n const uniqueLabNames = [...new Set(b2baccountStatements.map((statement) => statement.corporate_name))];\n\n const filteredData = b2baccountStatements.filter(\n (statement) =>\n !this.state.selectedCorporate || statement.corporate_name === this.state.selectedCorporate\n );\n \n const filteredTotal = this.getFilteredTotal(filteredData);\n\n return (\n \n
\n \n Lab Corporate Statements | Lab Hazir\n \n \n \n {isEmpty(this.props.b2baccountStatements) && (\n \n \n \n \n
\n \n \n \n \n \n \n \n \n \n \n\n {/* */}\n \n \n
Corporate NameOrder IDPayment Status/ MethodInvoice ValueLab PayableLabhazir PayableIs SettledIs Settled
\n
\n
\n
\n \n
\n )}\n {!isEmpty(this.props.b2baccountStatements) && (\n \n \n \n \n
\n {/* Add filter field */}\n {/* \n \n Filter by Corporate Name:\n \n this.handleCorporateSelect(e.target.value)}\n value={this.state.selectedCorporate}\n >\n \n {this.props.b2baccountStatements.map((statement, i) => (\n \n ))}\n \n */}\n \n \n Filter by Corporate Name:\n \n this.handleCorporateSelect(e.target.value)}\n value={this.state.selectedCorporate}\n >\n \n {uniqueLabNames.map((CorporateName, i) => (\n \n ))}\n \n \n \n \n \n \n \n \n \n \n \n \n\n {/* */}\n \n \n \n {b2baccountStatements\n .filter(\n (statement) =>\n !this.state.selectedCorporate ||\n statement.corporate_name === this.state.selectedCorporate\n )\n .map((b2baccountStatement, i) => (\n <>\n \n \n \n \n \n\n \n \n\n \n \n \n ))}\n {/* \n \n \n \n \n \n */}\n \n \n \n \n \n \n \n \n
Corporate NameOrder IDPayment Status/ MethodInvoice ValueLab PayableLabhazir PayableIs SettledIs Settled
\n
\n {b2baccountStatement.corporate_name}\n
\n
\n
\n {b2baccountStatement.order_id}\n
\n
\n {/*

*/}\n {b2baccountStatement.payment_status == \"Not Paid\" ? (\n \n {b2baccountStatement.payment_method},{\" \"}\n {b2baccountStatement.payment_status}\n \n ) : (\n \n {b2baccountStatement.payment_method},{\" \"}\n {b2baccountStatement.payment_status}\n \n )}\n {/*

*/}\n
\n {b2baccountStatement.amount == 0 ? (\n

\n {b2baccountStatement.amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {b2baccountStatement.amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n {b2baccountStatement.receivable == 0 ? (\n

\n ---\n

\n\n ) : (\n

\n {b2baccountStatement.receivable.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n {b2baccountStatement.plateform_fees == 0 ? (\n

\n ---\n

\n\n ) : (\n

\n {parseInt(b2baccountStatement.plateform_fees).toString()}\n

\n )}\n\n
\n {b2baccountStatement.is_settled == true ? (\n
\n \n
\n ) : (\n
\n \n
\n )}\n\n
\n Total\n \n

\n {this.props.b2baccountStatements\n .slice(-1)\n .pop()\n .total_amount.toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n

\n {this.props.b2baccountStatements\n .slice(-1)\n .pop()\n .total_receivable.toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n

\n {this.props.b2baccountStatements\n .slice(-1)\n .pop()\n .total_payable.toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n Total\n \n

\n {filteredTotal.totalAmount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n

\n {filteredTotal.totalReceivable.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n

\n {filteredTotal.totalPayable.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n
\n
\n
\n \n
\n )}\n
\n
\n
\n );\n }\n}\n\nAccountStatements.propTypes = {\n match: PropTypes.object,\n b2baccountStatements: PropTypes.array,\n className: PropTypes.any,\n onGetCLabAccountStatements: PropTypes.func,\n};\n\nconst mapStateToProps = ({ b2baccountStatements }) => ({\n b2baccountStatements: b2baccountStatements.b2baccountStatements,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetCLabAccountStatements: (id) => dispatch(getCLabAccountStatements(id)),\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(withRouter(AccountStatements));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport axios from \"axios\";\nimport { Collapse } from \"reactstrap\";\nimport { useParams } from 'react-router-dom'\nimport { withRouter, Link } from \"react-router-dom\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport moment from 'moment';\n\n// import BootstrapSwitchButton from 'bootstrap-switch-button-react'\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n // getUnits,\n getCorporateTests,\n updateCorporateTest,\n} from \"store/offered-tests/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass OfferedTestsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n offeredTests: [],\n tests: [],\n offeredTest: \"\",\n type: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n newEntries: [], // Store new entries here\n offeredTestListColumns: [\n {\n text: \"Offered Test ID\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, offeredTest) => <>{offeredTest.id},\n },\n {\n dataField: \"added_by\",\n text: \"Added On\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.added_by ? (\n moment(offeredTest.added_by).format(\"DD MMM YYYY, h:mm A\")\n ) : (\n \"--\"\n )}\n \n \n ),\n },\n {\n text: \"Test ID\",\n dataField: \"test_id\",\n sort: true,\n formatter: (cellContent, offeredTest) => <>{offeredTest.test_id},\n },\n {\n dataField: \"test_name\",\n text: \"Test Name\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n 0 ? 'red' : 'inherit',\n width: '140px', // Set your desired width here\n fontSize: '14px',\n textOverflow: 'ellipsis',\n whiteSpace: 'prewrap',\n textAlign: 'left', // Align text to the left\n display: 'block',\n }}>\n {offeredTest.test_name}\n\n \n\n ),\n },\n {\n dataField: \"type\",\n text: \"Type\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n \n {/* {offeredTest.test_name} */}\n {offeredTest.type != \"Test\" && (\n
\n this.openPatientModal(e, offeredTest)}\n // onMouseEnter={e => this.openPatientModal(e, offeredTest)}\n // onPointerLeave={this.handleMouseExit()}\n >\n \n {offeredTest.type}\n \n \n
\n )}\n {offeredTest.type == \"Test\" && (\n
\n \n {offeredTest.type}\n \n
\n )}\n
\n\n ),\n },\n {\n dataField: \"start_date\",\n text: \"Start Date\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.start_date ? (\n moment(offeredTest.start_date).format(\"DD MMM YYYY, h:mm A\")\n ) : (\n \"--\"\n )}\n \n \n ),\n },\n {\n dataField: \"end_date\",\n text: \"End Date\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.end_date ? (\n moment(offeredTest.end_date).format(\"DD MMM YYYY, h:mm A\")\n ) : (\n \"--\"\n )}\n \n \n ),\n },\n {\n dataField: \"date_difference\",\n text: \"Duration Days\",\n sort: false, // Sorting might not be straightforward with calculated fields\n formatter: (cellContent, offeredTest) => {\n const startDate = moment(offeredTest.start_date);\n const endDate = moment(offeredTest.end_date);\n const duration = endDate.diff(startDate);\n\n // If either date is missing, show \"--\"\n if (!startDate.isValid() || !endDate.isValid()) {\n return \"--\";\n }\n\n // Calculate the difference in days, hours, and minutes\n const days = moment.duration(duration).days();\n const hours = moment.duration(duration).hours();\n const minutes = moment.duration(duration).minutes();\n\n // Format the duration\n let formattedDuration = \"\";\n if (days > 0) formattedDuration += `${days}`;\n // if (hours > 0) formattedDuration += `${hours}h `;\n // formattedDuration += `${minutes}m`;\n\n return {formattedDuration};\n },\n },\n {\n dataField: \"test_status\",\n text: \"Activity Status\",\n sort: true,\n },\n {\n dataField: \"price\",\n text: \"Price\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n {(\n {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n )}\n \n ),\n },\n {\n dataField: \"sum_appointments\",\n text: \"Total Appointments\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n {(\n {offeredTest.sum_appointments.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n )}\n \n ),\n\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n }\n componentDidMount() {\n const { onGetCorporateTests, offeredTests } = this.props;\n const { id } = this.props.match.params;\n const userId = id ? id : this.state.user_id;\n onGetCorporateTests(userId);\n this.setState({ user_id: userId });\n\n // Fetch the current timestamp\n const currentTimestamp = Math.floor(Date.now() / 1000);\n\n // Filter new entries based on timestamp comparison\n const newEntries = offeredTests.filter(test => {\n const timestampDifference = currentTimestamp - test.timestamp;\n return timestampDifference < 24 * 60 * 60; // Entries within 24 hours\n });\n console.log(\"new entries\", newEntries)\n // Store the IDs of new entries\n const newEntryIds = newEntries.map(entry => entry.id);\n\n // Update state with new entries and existing entries count\n this.setState({\n newEntries: newEntryIds,\n existingEntriesCount: offeredTests.length\n }, () => {\n console.log(\"exist entries\", this.state.existingEntriesCount);\n });\n }\n\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // Select\n handleSelectGroup = selectedGroup => {\n this.setState({ offeredTest: selectedGroup.value });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n test_details: arg.test_details,\n });\n };\n\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { offeredTests } = this.props;\n if (\n !isEmpty(offeredTests) &&\n size(prevProps.offeredTests) !== size(offeredTests)\n ) {\n this.setState({ offeredTests: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n\n\n render() {\n const { SearchBar } = Search;\n\n const { existingEntriesCount } = this.state;\n\n const { offeredTests } = this.props;\n console.log(\"All offered tests:\", offeredTests); // Log all offered tests\n\n const defaultSorted = [\n {\n dataField: \"test_status\",\n order: \"asc\", // Sort in ascending order to bring \"Active\" tests to the top\n },\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n const filteredTests = offeredTests.filter(test => test.test_status === \"Active\");\n\n console.log(\"filter list\", filteredTests)\n\n // const { units } = this.props;\n const offeredTest = this.state.offeredTest;\n\n const pageOptions = {\n sizePerPage: 10000,\n totalSize: offeredTests ? offeredTests.length : 0, // replace later with size(offeredTests),\n custom: true,\n };\n\n // const defaultSorted = [\n // {\n // dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n // order: \"desc\", // desc or asc\n // },\n // ];\n const uniqueCorporateNames = Array.from(new Set(\n offeredTests.map(corporate => corporate.corporate_name).filter(name => name)\n ));\n\n // Extract unique employee codes\n const uniqueEmployeeCodes = Array.from(new Set(\n offeredTests.map(corporate => corporate.employee_code).filter(code => code)\n ));\n\n return (\n \n
\n \n Corporate Offered Tests List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n
\n {uniqueCorporateNames.length > 0 ? (\n
\n {uniqueCorporateNames.map((name, index) => (\n
\n Corporations Name: \n {name}\n
\n ))}\n
\n ) : (\n
No Corporate Names Available
\n )}\n
\n \n \n
\n {uniqueEmployeeCodes.length > 0 ? (\n
\n {uniqueEmployeeCodes.map((code, index) => (\n
\n Number of Total Employees: \n {code}\n
\n ))}\n
\n ) : (\n
\n Number of Total Employees: \n 0\n\n
\n )}\n
\n \n
\n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n
\n
\n \n\n
\n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n\n \n
\n
\n
\n
\n \n\n \n \n
\n \n
\n \n
\n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nOfferedTestsList.propTypes = {\n match: PropTypes.object,\n // units: PropTypes.array,\n offeredTests: PropTypes.array,\n className: PropTypes.any,\n onGetCorporateTests: PropTypes.func,\n};\n\nconst mapStateToProps = ({ offeredTests }) => ({\n offeredTests: offeredTests.offeredTests,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n // onGetUnits: () => dispatch(getUnits()),\n onGetCorporateTests: id => dispatch(getCorporateTests(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(OfferedTestsList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\n\nimport {\n Container,\n Row,\n Col,\n Table,\n Input,\n Nav,\n NavItem,\n NavLink,\n TabContent,\n TabPane,\n Card,\n FormGroup,\n Label,\n CardBody,\n CardTitle,\n Alert,\n} from \"reactstrap\";\n\nimport classnames from \"classnames\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport {\n getAcceptedLabAdvertisements,\n getLabs,\n getDonors,\n getLabsc,\n addNewInPayment,\n getInPayment,\n getStaffProfile\n} from \"store/inpayments/actions\";\nimport {\n getListDonationAppointment,\n getListCLabs\n} from \"store/outpayments/actions\";\n\n\nimport { isEmpty, size } from \"lodash\";\nimport ConfirmModal from \"components/Common/ConfirmModal\";\nimport \"assets/scss/table.scss\";\n\nclass InPaymentsForm extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n inPayments: [],\n staffProfiles: [],\n inPayment: \"\",\n modal: false,\n addmodal: false,\n confirmModal: false,\n id: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n payment_for: \"\",\n lab_id: \"\",\n tax: \"\",\n donor_id: \"\",\n advertisement_id: \"\",\n recieved_by: \"\",\n handover_to: \"\",\n amount: \"\",\n paid_at: \"\",\n cheque_payment_date: \"\",\n\n // deposit_bank: \"\",\n payment_method: \"Cash\",\n // card_number: \"\",\n cheque_no: \"\",\n refered_no: \"\",\n cheque_image: \"\",\n test_appointment_id: \"\",\n // invoice_id: \"\",\n // cleared_at: \"\",\n // verified_by: \"\",\n payment_status: \"\",\n // isDisabled: true,\n // isRequiredFilled: true,\n checkedoutData: \"\",\n };\n // this.toggleTab = this.toggleTab.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleSelectGroup = this.handleSelectGroup.bind(this);\n // console.log(\"finance officer office\", this.props.staffProfiles.territory_office);\n\n }\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n handleProceedClick = () => {\n this.setState({\n inPayment: {\n payment_for: this.state.payment_for,\n lab_id: this.state.lab_id,\n test_appointment_id: this.state.test_appointment_id,\n donor_id: this.state.donor_id,\n advertisement_id: this.state.advertisement_id,\n amount: this.state.amount,\n tax: this.state.tax,\n payment_method: this.state.payment_method,\n recieved_by: this.state.recieved_by,\n handover_to: this.state.handover_to,\n paid_at: this.state.paid_at,\n // invoice_id: this.state.invoice_id,\n cheque_payment_date: this.state.cheque_payment_date,\n cheque_no: this.state.cheque_no,\n cheque_image: this.state.cheque_image,\n refered_no: this.state.refered_no,\n payment_status: \"Created\",\n },\n });\n\n // API call to get the checkout items\n const { onAddInPaymentData } = this.props;\n setTimeout(() => {\n console.log(\n onAddInPaymentData(this.state.inPayment, this.state.user_id)\n );\n // window.location.reload()\n }, 2000);\n setTimeout(() => {\n this.props.history.push(\"/payment-status\");\n window.location.reload()\n }, 2000)\n };\n\n componentDidMount() {\n\n const { staffProfiles, onGetStaffProfile } = this.props;\n onGetStaffProfile(this.state.user_id);\n this.setState({ \n staffProfiles\n });\n console.log(\"state\",staffProfiles)\n \n const { listDonation, onGetListDonationAppointment } = this.props;\n if (listDonation && !listDonation.length) {\n onGetListDonationAppointment();\n }\n this.setState({ listDonation });\n\n const { listCLabs, onGetListCLabs } = this.props;\n if (listCLabs && !listCLabs.length) {\n onGetListCLabs();\n }\n this.setState({ listCLabs });\n\n const { labs, onGetlabs } = this.props;\n if (labs && !labs.length) {\n onGetlabs();\n }\n this.setState({ labs });\n\n const { advertisements, onGetAcceptedLabAdvertisements } = this.props;\n if (advertisements && !advertisements.length) {\n onGetAcceptedLabAdvertisements(this.props.match.params.id);\n }\n this.setState({ advertisements });\n\n const { donors, onGetdonors } = this.props;\n if (donors && !donors.length) {\n onGetdonors();\n }\n this.setState({ donors });\n\n const { inPayments, onGetInPayment } = this.props;\n if (inPayments && !inPayments.length) {\n onGetInPayment(this.props.match.params.id);\n }\n this.setState({ inPayments });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // Select\n handleSelectGroup = selectedGroup => {\n this.setState({ inPayment: selectedGroup.value });\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { inPayments } = this.props;\n if (\n !isEmpty(inPayments) &&\n size(prevProps.inPayments) !== size(inPayments)\n ) {\n this.setState({ inPayments: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n patient_age: arg.patient_age,\n patient_gender: arg.patient_gender,\n patient_address: arg.patient_address,\n patient_city: arg.patient_city,\n patient_phone: arg.patient_phone,\n });\n };\n calculateTotalAmount = selectedTestAppointments => {\n const totalAmount = selectedTestAppointments.reduce(\n (total, appointment) => total + (parseFloat(appointment.dues) || 0),\n 0\n );\n return totalAmount;\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { inPayments } = this.props;\n const { labs } = this.props;\n const { advertisements } = this.props;\n const { listDonation, listCLabs } = this.props;\n const {staffProfiles} = this.props;\n const { donors } = this.props;\n\n // const { units } = this.props;\n\n const { onAddInPaymentData, onGetInPayment, onGetStaffProfile } =\n this.props;\n const inPayment = this.state.inPayment;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: inPayments.length, // replace later with size(inPayments),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n const labList = [];\n for (let i = 0; i < labs.length; i++) {\n if (console.log( \"dfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdf\", labs[i].office )=== console.log(\"fdfdfdfdfdfdfdfdf\", this.props.staffProfiles.territory_office)) {\n \n labList.push({\n label: `${labs[i].name} - ${labs[i].type} - ${labs[i].city}`,\n label1: `${labs[i].name}`,\n value: labs[i].id,\n });\n }\n }\n\n const listCorporateLabs = []\n for (let i = 0; i < listCLabs.length; i++) {\n if (listCLabs[i].office === this.props.staffProfiles.territory_office) {\n listCorporateLabs.push({\n label: `${listCLabs[i].name} - ${listCLabs[i].corporate_name} - ${listCLabs[i].status}`,\n label1: `${listCLabs[i].name}`,\n label2: `${listCLabs[i].account_id}`,\n value: listCLabs[i].lab_id,\n });\n }\n }\n \n // Assuming you have a state variable to store the selected lab id (this.state.selectedLabId)\n const selectedLab = labList.find(lab => lab.value === this.state.lab_id);\n \n // const CashAppointmentList = listDonation\n // .filter(\n // donation =>\n // donation.payment_method === \"Cash\" &&\n // donation.payment_status === \"Paid\" &&\n // donation.is_settled === false &&\n // donation.lab_office === this.props.staffProfiles.territory_office &&\n // donation.dues !== undefined &&\n // donation.lab_name === (selectedLab ? selectedLab.label1 : null) // Compare with the selected lab's lab_name\n // )\n // .map(donation => ({\n // label: `(Appointment ID: ${donation.id}) - (Amount: ${donation.dues})`,\n // value: donation.id,\n // data: { dues: donation.dues },\n // }));\n\n const corporatelabsList = listDonation\n .filter(\n donation =>\n // donation.payment_method === \"Donation\" &&\n donation.refrell_fees > 0 &&\n donation.corporation != null &&\n donation.refrell_fees !== undefined &&\n donation.lab_name === (selectedLab ? selectedLab.label1 : null) || donation.mainbranch === (selectedLab ? selectedLab.label2 : null)\n\n )\n .map(donation => ({\n label: `(Appointment ID: ${donation.order_id}) - (Amount: ${donation.refrell_fees})`,\n value: donation.id,\n data: { refrell_fees: donation.refrell_fees }, // Include the 'dues' property in the data field\n }));\n \n const advertisementList = [];\n for (let i = 0; i < advertisements.length; i++) {\n if (advertisements[i].lab_office === this.props.staffProfiles.territory_office && advertisements[i].payment_status != \"Cleared\") {\n advertisementList.push({\n label: `${advertisements[i].id} - (Lab: ${advertisements[i].lab_name}) - (Price: ${advertisements[i].amount})`,\n value: `${advertisements[i].id}`,\n data: {dues: `${advertisements[i].amount}`} \n });\n }\n }\n \n const donorList = [];\n for (let i = 0; i < donors.length; i++) {\n if (donors[i].office === this.props.staffProfiles.territory_office) {\n donorList.push({\n label: donors[i].name,\n value: donors[i].id,\n });\n }\n }\n\n return (\n \n
\n \n InPayment | Lab Hazir - Dashboard\n \n \n \n \n
\n \n
\n \n Note: There will be that Labs, Donors and B2b Clients whose terriotory will match this staff.\n \n \n

\n
\n \n \n \n \n \n
\n \n \n \n this.setState({\n payment_for: e.target.value,\n })\n }\n defaultValue={this.state.payment_for}\n className=\"form-select\"\n >\n \n --- Please select the Type\n ---\n \n \n \n \n \n \n\n \n {this.state.payment_for == \"Corporate Lab\" ? (\n inPayment.lab_id ? (\n
\n \n \n \n {\n inPayment.lab_name\n }\n \n \n
\n ) : (\n
\n \n \n this.setState({\n lab_id:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.lab_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.lab_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={listCorporateLabs}\n placeholder=\"Select Lab...\"\n />\n\n
\n Please select your Lab\n
\n
)\n ) : null}\n {this.state.payment_for == \"Corporate Lab\" ? (\n
\n \n {\n this.setState({\n test_appointment_id: selectedGroup.map(option => option.value),\n });\n \n \n const selectedData = selectedGroup.map(option => option.data || {});\n const totalAmount = selectedData.reduce(\n (total, appointment) => total + (parseFloat(appointment.refrell_fees) || 0),\n 0\n );\n this.setState({\n selectedAmount: totalAmount,\n amountExceedsLimit: false, // Reset the flag when a new lab is selected\n });\n \n // Auto-set the amount field\n this.setState({ amount: totalAmount || '0' });\n console.log(\"amount arahi h yah nahi\", selectedData, totalAmount);\n }}\n className={\n \"defautSelectParent\" +\n (!this.state.test_appointment_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.test_appointment_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={corporatelabsList}\n placeholder=\"Select Appointment...\"\n />\n \n
\n Please select Appointment\n
\n
\n ) : null}\n {this.state.payment_for == \"Lab\" ? (\n inPayment.lab_id ? (\n
\n \n \n \n {\n inPayment.lab_name\n }\n \n \n
\n ) : (\n
\n \n \n this.setState({\n lab_id:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.lab_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.lab_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={labList}\n placeholder=\"Select Lab...\"\n />\n\n
\n Please select your Lab\n
\n
)\n ) : null}\n {this.state.payment_for == \"Donor\" ? (\n inPayment.donor_id ? (\n
\n \n \n \n {\n inPayment.donor_name\n }\n \n \n
\n ) : (\n
\n \n \n this.setState({\n donor_id:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.donor_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.donor_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={donorList}\n placeholder=\"Select Donor...\"\n />\n\n
\n Please select Donor\n
\n
\n )\n\n ) : null}\n \n {this.state.payment_for == \"Advertisement\" ? (\n inPayment.advertisement_id ? (\n
\n \n \n \n {\n inPayment.advertisement_title\n }\n \n \n
\n \n ) : (\n
\n \n {\n const selectedData = selectedGroup.data || {};\n const totalAmount = parseFloat(selectedData.dues) || 0;\n \n this.setState({\n advertisement_id: selectedGroup.value,\n amount: totalAmount || '0'\n });\n }}\n \n \n className={\n \"defautSelectParent\" +\n (!this.state.advertisement_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.advertisement_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={advertisementList}\n placeholder=\"Select Advertisements...\"\n />\n\n
\n Please select Advertisement\n
\n
\n )\n\n \n ) : null}\n\n \n \n this.setState({\n amount: e.target.value,\n })\n }\n />\n\n{this.state.payment_for == \"Advertisement\" || this.state.payment_for == \"Lab\" ? (\n\n \n \n this.setState({\n tax: e.target.value,\n })\n }\n />\n) : null}\n
\n \n
\n
\n \n this.setState({\n payment_method: e.target.value,\n })\n }\n />\n \n {\" \"}\n Cash\n \n
\n
\n \n this.setState({\n payment_method: e.target.value,\n })\n }\n />\n \n {\" \"}\n Cheque\n \n
\n
\n \n this.setState({\n payment_method: e.target.value,\n })\n }\n />\n \n {\" \"}\n Online\n \n
\n
\n\n {this.state.payment_method == \"Cash\" ? (\n
\n
\n For Cash Payment\n
\n
\n
\n \n \n \n this.setState({\n paid_at:\n e.target.value,\n })\n }\n />\n \n \n \n \n this.setState({\n recieved_by: e.target.value,\n })\n }\n />\n \n\n \n \n \n this.setState({\n handover_to: e.target.value,\n })\n }\n />\n \n\n
\n
\n
\n ) : null}\n\n {this.state.payment_method == \"Cheque\" ? (\n
\n
\n For Cheque Payment\n
\n
\n
\n \n \n \n this.setState({\n paid_at:\n e.target.value,\n })\n }\n />\n \n \n \n \n \n this.setState({\n cheque_payment_date:\n e.target.value,\n })\n }\n />\n \n\n \n \n \n \n \n this.setState({\n cheque_no: e.target.value,\n })\n }\n />\n \n \n \n \n \n {\n this.setState({\n cheque_image:\n e.target.files[0],\n });\n }}\n // className=\"form-control is-invalid\"\n className={\n \"form-control\" +\n (this.state.cheque_image.length >\n 0 && !this.state.cheque_image\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n \n \n
\n
\n
\n ) : null}\n\n {this.state.payment_method == \"Card\" ? (\n
\n
\n For Online Payment\n
\n
\n
\n \n \n \n this.setState({\n paid_at:\n e.target.value,\n })\n }\n />\n \n \n \n \n \n \n this.setState({\n refered_no: e.target.value,\n })\n }\n />\n \n \n \n \n \n {\n this.setState({\n cheque_image:\n e.target.files[0],\n });\n }}\n // className=\"form-control is-invalid\"\n className={\n \"form-control\" +\n (this.state.cheque_image.length >\n 0 && !this.state.cheque_image\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n \n \n
\n
\n
\n ) : null}\n\n
\n {/* \n \n \n this.setState({\n payment_status: e.target.value,\n })\n }\n defaultValue={this.state.payment_status}\n className=\"form-select\"\n >\n \n --- Please select the Type\n ---\n \n \n \n \n\n \n */}\n\n
\n \n \n \n \n \n
\n \n Created{\" \"}\n \n
\n \n
\n\n
\n
\n \n
\n
\n
\n
\n
\n
\n );\n }\n}\n\nInPaymentsForm.propTypes = {\n match: PropTypes.object,\n labs: PropTypes.array,\n donors: PropTypes.array,\n advertisements: PropTypes.array,\n // units: PropTypes.array,\n inPayments: PropTypes.array,\n className: PropTypes.any,\n onGetlabs: PropTypes.func,\n onGetdonors: PropTypes.func,\n history: PropTypes.object,\n onGetInPayment: PropTypes.func,\n // onGetUnits: PropTypes.func,\n onAddInPaymentData: PropTypes.func,\n onGetAcceptedLabAdvertisements: PropTypes.func,\n onGetStaffProfile: PropTypes.func,\n staffProfiles: PropTypes.func,\n onGetListDonationAppointment: PropTypes.func,\n listDonation: PropTypes.array,\n onGetListCLabs: PropTypes.func,\n listCLabs: PropTypes.array,\n\n};\n\nconst mapStateToProps = ({ inPayments, outPayments }) => ({\n inPayments: inPayments.inPayments,\n labs: inPayments.labs,\n donors: inPayments.donors,\n advertisements: inPayments.advertisements,\n staffProfiles: inPayments.staffProfiles,\n listDonation: outPayments.listDonation,\n listCLabs: outPayments.listCLabs,\n\n\n // units: inPayments.units,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n \n onGetlabs: () => dispatch(getLabs()),\n onGetAcceptedLabAdvertisements: () => dispatch(getAcceptedLabAdvertisements()),\n onGetdonors: () => dispatch(getDonors()),\n onGetInPayment: id => dispatch(getInPayment(id)),\n onGetListDonationAppointment: () => dispatch(getListDonationAppointment()),\n onGetListCLabs: () => dispatch(getListCLabs()),\n onAddInPaymentData: (inPayment, id) =>\n dispatch(addNewInPayment(inPayment, id)),\n onGetStaffProfile: id => dispatch(getStaffProfile(id)),\n\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(InPaymentsForm)); \n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport Select from \"react-select\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getPaymentStatuss,\n updatePaymentInBouncedStatus,\n getBankAccounts,\n deletePaymentout,\n\n} from \"store/payment-statuss/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass PaymentStatussList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n paymentStatuss: [],\n paymentStatus: \"\",\n modal: false,\n payment_status: \"\",\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n\n };\n this.handlePaymentStatusClick =\n this.handlePaymentStatusClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handlePaymentStatusClicks =\n this.handlePaymentStatusClicks.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n\n }\n // The code for converting \"image source\" (url) to \"Base64\"\n toDataURL = url =>\n fetch(url)\n .then(response => response.blob())\n .then(\n blob =>\n new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.onerror = reject;\n reader.readAsDataURL(blob);\n })\n );\n\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n componentDidMount() {\n\n const { bankAccounts, onGetbankAccounts } = this.props;\n if (bankAccounts && !bankAccounts.length) {\n onGetbankAccounts();\n }\n this.setState({ bankAccounts });\n\n const { paymentStatuss, onGetPaymentStatuss } = this.props;\n onGetPaymentStatuss(this.state.user_id);\n this.setState({ paymentStatuss });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handlePaymentStatusClicks = () => {\n this.setState({\n paymentStatus: \"\",\n deposit_slip: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { paymentStatuss } = this.props;\n if (\n !isEmpty(paymentStatuss) &&\n size(prevProps.paymentStatuss) !== size(paymentStatuss)\n ) {\n this.setState({ paymentStatuss: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n \n onClickDelete = paymentStatuss => {\n this.setState({ paymentStatuss: paymentStatuss });\n this.setState({ deleteModal: true });\n };\n handleDeletePathologist = () => {\n const { onDeletePaymentout, onGetPaymentStatuss } = this.props;\n const { paymentStatuss } = this.state;\n if (paymentStatuss.id !== undefined) {\n onDeletePaymentout(paymentStatuss);\n setTimeout(() => {\n onGetPaymentStatuss(this.state.user_id);\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n\n handlePaymentStatusClick = (e, arg) => {\n this.setState({\n paymentStatus: {\n id: arg.id,\n verified_by: arg.verified_by,\n bankaccount_id: arg.bankaccount_id,\n deposit_slip: arg.deposit_slip,\n payment_for: arg.payment_for,\n payment_status: \"Pending Clearance\",\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n\n handleSelectChange = (event) => {\n const selectedValue = event.target.value;\n // Perform navigation based on the selected value\n if (selectedValue === 'Created') {\n this.props.history.push('/payment-status');\n }\n if (selectedValue === 'Pending Clearence') {\n this.props.history.push('/payment-in-pending-clearence-status');\n }\n if (selectedValue === 'Cleared') {\n this.props.history.push('/clear-status');\n }\n if (selectedValue === 'Bounced') {\n this.props.history.push('/bounced-status');\n }\n }\n\n render() {\n const columns= [\n {\n text: \"MIF ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n formatter: (cellContent, paymentStatus) => (\n <>{paymentStatus.id}\n ), filter: textFilter(),\n \n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"invoice_id\",\n text: \"invoice ID\",\n sort: true,\n hidden: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.invoice_id}\n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_for\",\n text: \"Payment From\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.payment_for}\n \n ), filter: textFilter(),\n \n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"lab_name\",\n text: \"Client Name\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n \n {paymentStatus.donor_name}{\" \"}\n {paymentStatus.lab_name}{\" \"}\n {paymentStatus.advertisement_title}\n \n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n \n },\n\n {\n dataField: \"payment_method\",\n text: \"Payment Method\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.payment_method}\n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n \n \n },\n {\n dataField: \"cheque_no\",\n text: \"Cheque/Ref#\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.cheque_image && paymentStatus.cheque_no\n ? \n {paymentStatus.cheque_no && (\n \n {paymentStatus.cheque_no}\n \n )}\n \n : paymentStatus.cheque_image && paymentStatus.refered_no\n ? \n {paymentStatus.refered_no && (\n \n {paymentStatus.refered_no}\n \n )}\n \n : --\n }\n \n ),\n filter: textFilter({\n placeholder: \"Filter Cheque/Ref#\",\n getFilter: (filter) => ({\n // Custom filter logic for both fields\n comparator: (filterValue, cellValue, row) => {\n return (\n row.cheque_no.includes(filterValue) ||\n row.refered_no.includes(filterValue)\n );\n },\n }),\n }),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"amount\",\n text: \"Amount\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n
\n {paymentStatus.amount}
\n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n\n // {\n // dataField: \"bank\",\n // text: \"Cheque/Reffer#\",\n // sort: true,\n // formatter: (cellContent, paymentStatus) => (\n // <>\n // \n // \n // {paymentStatus.bank_name},{\" \"}\n // {paymentStatus.account_no}\n // \n // \n // \n // ),\n // },\n {\n dataField: \"paid_at\",\n text: \"Payment Received Date\",\n sort: true,\n formatter: (cellContent, paymentStatus) => {\n const date = new Date(paymentStatus.paid_at);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2); // Get the last 2 digits of the year\n\n return (\n

\n {`${day}-${month}-${year}`}\n

\n );\n },\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n \n },\n \n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, paymentStatus) => (\n
\n this.handlePaymentStatusClick(e, paymentStatus)}\n\n >\n Update\n \n this.onClickDelete(paymentStatus)}\n\n >\n Delete\n \n
\n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Comments\",\n formatter: (cellContent, paymentStatus) => (\n \n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n ];\n const { SearchBar } = Search;\n const isDonation = this.state.paymentStatus.payment_for === \"Donor\";\n // const isamount = this.state.paymentStatus.amount\n\n const { paymentStatuss } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onUpdatePaymentInBouncedStatus,\n onGetPaymentStatuss,\n } = this.props;\n const paymentStatus = this.state.paymentStatus;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: this.props.paymentStatuss.length, // Replace with the actual data length\n custom: true,\n };\n \n // Check if there are items in the paymentStatuss array\n const hasData = paymentStatuss && paymentStatuss.length > 0;\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n const { bankAccounts } = this.props;\n const bankaccountList = [];\n // for (let i = 0; i < bankAccounts.length; i++) {\n // let flag = 0;\n // if (!flag) {\n // bankaccountList.push({\n // label: `${bankAccounts[i].bank_name} - ${bankAccounts[i].account_no} - ${bankAccounts[i].account_type}`,\n // value: `${bankAccounts[i].id}`,\n // });\n // }\n // }\n for (let i = 0; i < bankAccounts.length; i++) {\n if (isDonation) {\n if (bankAccounts[i].account_type === \"DONATION\") {\n bankaccountList.push({\n label: `${bankAccounts[i].bank_name} - ${bankAccounts[i].account_no} - ${bankAccounts[i].account_type}`,\n value: `${bankAccounts[i].id}`,\n });\n }\n } else {\n if (bankAccounts[i].account_type != \"DONATION\") {\n bankaccountList.push({\n label: `${bankAccounts[i].bank_name} - ${bankAccounts[i].account_no} - ${bankAccounts[i].account_type}`,\n value: `${bankAccounts[i].id}`,\n });\n }\n }\n \n }\n\n // const bankaccountList = bankAccounts\n // .filter(bankaccount => {\n // if (isDonation) {\n // return bankaccount.current_balance > Math.abs(this.state.amount) && bankaccount.account_type === \"DONATION\";\n // } else {\n // return bankaccount.current_balance > Math.abs(this.state.amount) && bankaccount.account_type !== \"DONATION\";\n // }\n // })\n // .map(bankaccount => ({\n // label: `(Bank Name: ${bankaccount.bank_name}) - (Account No: ${bankaccount.account_no}) - (Account Type: ${bankaccount.account_type}) - (Current Balance: ${bankaccount.current_balance})`,\n // value: bankaccount.id,\n // }));\n\n return (\n \n this.setState({ deleteModal: false })}\n />\n
\n \n MIF List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n \n \n \n \n \n
\n
\n \n\n
\n \n \n
\n \n\n \n \n {!!isEdit\n ? \"Update MIF Created\"\n : \"Add Quality Certificate\"}\n \n \n {\n const updatePaymentInBouncedStatus =\n {\n id: paymentStatus.id,\n verified_by:\n values.verified_by,\n bankaccount_id: values.bankaccount_id,\n deposit_slip: values.deposit_slip,\n deposited_at: values.deposited_at,\n payment_status:\n values.payment_status,\n };\n\n // update PaymentStatus\n onUpdatePaymentInBouncedStatus(\n updatePaymentInBouncedStatus\n );\n setTimeout(() => {\n onGetPaymentStatuss(\n this.state.user_id\n );\n }, 1000);\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n \n\n {paymentStatus.bankaccount_id &&\n paymentStatus.bankaccount_id ? (\n
\n \n Bank Account Name\n\n \n \n {\n paymentStatus.account_no\n\n }\n \n \n
\n ) : (\n
\n \n Bank Account Name\n\n \n this.setState({\n bankaccount_id:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.bankaccount_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.bankaccount_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={bankaccountList}\n placeholder=\"Select Bank Account...\"\n />\n
\n )}\n\n {/* Certificate field */}\n
\n \n {\n // this.setState({\n // deposit_slip:\n // e.target.files[0],\n // });\n // }}\n onChange={e => {\n this.setState({\n paymentStatus: {\n id: paymentStatus.id,\n payment_status:\n paymentStatus.payment_status,\n deposited_at: paymentStatus.deposited_at,\n verified_by: paymentStatus.verified_by,\n\n deposit_slip:\n e.target.files[0],\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.deposit_slip &&\n touched.deposit_slip\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n
\n \n {\n this.setState({\n paymentStatus: {\n id: paymentStatus.id,\n payment_status:\n paymentStatus.payment_status,\n deposited_at: paymentStatus.deposited_at,\n deposit_slip: paymentStatus.deposit_slip,\n\n verified_by:\n e.target.value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.verified_by &&\n touched.verified_by\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n
\n \n \n this.setState({\n deposited_at:\n e.target.value,\n })\n }\n className={\n \"form-control\" +\n (errors.deposited_at &&\n touched.deposited_at\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n \n
\n \n \n
\n \n Submit\n \n
\n \n
\n
\n )}\n \n
\n \n
\n \n
\n {hasData && (\n \n \n \n \n \n )}\n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nPaymentStatussList.propTypes = {\n match: PropTypes.object,\n paymentStatuss: PropTypes.array,\n bankAccounts: PropTypes.array,\n className: PropTypes.any,\n onGetPaymentStatuss: PropTypes.func,\n onUpdatePaymentInBouncedStatus: PropTypes.func,\n onGetbankAccounts: PropTypes.func,\n history: PropTypes.any,\n paymentStatuss: PropTypes.array,\n onDeletePaymentout: PropTypes.func,\n};\n\nconst mapStateToProps = ({ paymentStatuss }) => ({\n paymentStatuss: paymentStatuss.paymentStatuss,\n bankAccounts: paymentStatuss.bankAccounts,\n paymentStatuss: paymentStatuss.paymentStatuss,\n\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetbankAccounts: () => dispatch(getBankAccounts()),\n\n onGetPaymentStatuss: id => dispatch(getPaymentStatuss(id)),\n onUpdatePaymentInBouncedStatus: paymentStatus =>\n dispatch(updatePaymentInBouncedStatus(paymentStatus)),\n onDeletePaymentout: paymentCreatedStatus => dispatch(deletePaymentout(paymentCreatedStatus)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PaymentStatussList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getDepositStatuss,\n updatePaymentInStatus,\n} from \"store/payment-statuss/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass PaymentStatussList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n paymentStatuss: [],\n paymentStatus: \"\",\n cheque_image: \"\",\n modal: false,\n payment_status: \"Pending Clearance\",\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n\n };\n this.handlePaymentStatusClick =\n this.handlePaymentStatusClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handlePaymentStatusClicks =\n this.handlePaymentStatusClicks.bind(this);\n }\n\n componentDidMount() {\n const { paymentStatuss, onGetDepositStatuss } = this.props;\n onGetDepositStatuss(this.state.user_id);\n this.setState({ paymentStatuss });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handlePaymentStatusClicks = () => {\n this.setState({\n paymentStatus: \"\",\n deposit_slip: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n handleSubmit = () => {\n // Validate the form before submission\n if (this.state.paymentStatus.is_cleared === \"No\" && !this.state.cheque_image) {\n // If payment status is \"No\" and no image is selected, prevent form submission\n // You can display an error message or handle it as per your UI/UX design\n alert(\"Please select a bank voucher image.\");\n return;\n }\n };\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { paymentStatuss } = this.props;\n if (\n !isEmpty(paymentStatuss) &&\n size(prevProps.paymentStatuss) !== size(paymentStatuss)\n ) {\n this.setState({ paymentStatuss: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n\n handlePaymentStatusClick = (e, arg) => {\n this.setState({\n paymentStatus: {\n id: arg.id,\n cleared_at: arg.cleared_at,\n is_cleared: arg.is_cleared,\n payment_status: arg.payment_status,\n cheque_image: arg.cheque_image,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n\n handleSelectChange = (event) => {\n const selectedValue = event.target.value;\n\n // Perform navigation based on the selected value\n if (selectedValue === 'Created') {\n this.props.history.push('/payment-status');\n }\n if (selectedValue === 'Pending Clearence') {\n this.props.history.push('/payment-in-pending-clearence-status');\n }\n if (selectedValue === 'Cleared') {\n this.props.history.push('/clear-status');\n }\n if (selectedValue === 'Bounced') {\n this.props.history.push('/bounced-status');\n }\n }\n\n render() {\n const columns = [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, paymentStatus) => (\n <>{paymentStatus.id}\n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n text: \"MIF ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n formatter: (cellContent, paymentStatus) => (\n <>{paymentStatus.id}\n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"invoice_id\",\n text: \"invoice ID\",\n sort: true,\n hidden: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.invoice_id}\n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_for\",\n text: \"Payment From\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.payment_for}\n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"lab_name\",\n text: \"Client Name\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n \n \n {paymentStatus.lab_name}{\" \"}\n {paymentStatus.donor_name}\n {paymentStatus.advertisement_title}\n \n \n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_method\",\n text: \"Payment Method\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.payment_method}\n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"cheque_no\",\n text: \"Cheque/Ref#\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.deposit_slip && paymentStatus.cheque_no\n ? \n {paymentStatus.cheque_no && (\n \n {paymentStatus.cheque_no}\n \n )}\n \n : paymentStatus.deposit_slip && paymentStatus.refered_no\n ? \n {paymentStatus.refered_no && (\n \n {paymentStatus.refered_no}\n \n )}\n \n : --\n }\n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"amount\",\n text: \"Amount\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n
\n {paymentStatus.amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}
\n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"bank\",\n text: \"Bank/Account#\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n \n \n \n {paymentStatus.bank_name},{\" \"}\n {paymentStatus.account_no}\n \n \n\n \n\n \n ),\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"deposited_at\",\n text: \"Deposite Date\",\n sort: true,\n formatter: (cellContent, paymentStatus) => {\n const date = new Date(paymentStatus.deposited_at);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2); // Get the last 2 digits of the year\n\n return (\n

\n {`${day}-${month}-${year}`}\n

\n );\n },\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n // {\n // dataField: \"deposit_slip\",\n // text: \"Deposite Slip\",\n // sort: true,\n // formatter: (cellContent, paymentStatus) => (\n // <>\n // \n // View Slip\n // \n // \n // ),\n // },\n // {\n // dataField: \"payment_status\",\n // text: \"Status\",\n // sort: true,\n // },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, paymentStatus) => (\n
\n\n this.handlePaymentStatusClick(e, paymentStatus)}\n\n >\n Update\n \n\n
\n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Comments\",\n formatter: (cellContent, paymentStatus) => (\n \n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n ];\n const { SearchBar } = Search;\n\n const { paymentStatuss } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onUpdatePaymentInStatus,\n onGetDepositStatuss,\n } = this.props;\n const paymentStatus = this.state.paymentStatus;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: this.props.paymentStatuss.length, // Replace with the actual data length\n custom: true,\n };\n \n // Check if there are items in the paymentStatuss array\n const hasData = paymentStatuss && paymentStatuss.length > 0;\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n MIF List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n \n \n \n \n \n
\n \n
\n \n \n
\n \n\n \n \n {!!isEdit\n ? \"UpdateMIF\"\n : \"Add Quality Certificate\"}\n \n \n {\n const updatePaymentInStatus =\n {\n id: paymentStatus.id,\n\n is_cleared: values.is_cleared,\n cleared_at: values.cleared_at,\n cheque_image: values.cheque_image,\n \n };\n\n // update PaymentStatus\n onUpdatePaymentInStatus(\n updatePaymentInStatus\n );\n setTimeout(() => {\n onGetDepositStatuss(\n this.state.user_id\n );\n }, 1000);\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n \n\n
\n \n {\n this.setState({\n paymentStatus: {\n id: paymentStatus.id,\n cleared_at: paymentStatus.cleared_at,\n is_cleared:\n e.target.value,\n },\n });\n }}\n multiple={false}\n value={\n this.state\n .paymentStatus\n .is_cleared\n }\n >\n \n \n \n\n\n \n \n
\n\n {this.state.paymentStatus.is_cleared == \"Yes\" ? (\n
\n\n \n {\n this.setState({\n paymentStatus: {\n id: paymentStatus.id,\n is_cleared: paymentStatus.is_cleared,\n cleared_at:\n e.target.value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.is_cleared &&\n touched.is_cleared\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n ) : null}\n {this.state.paymentStatus.is_cleared == \"No\" ? (\n
\n\n \n {\n this.setState({\n paymentStatus: {\n id: paymentStatus.id,\n is_cleared: paymentStatus.is_cleared,\n cheque_image:\n e.target.files[0],\n },\n });\n }}\n // className=\"form-control is-invalid\"\n className={\n \"form-control\" +\n (errors.is_cleared &&\n touched.is_cleared\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n ) : null}\n\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n
\n \n
\n {hasData && (\n \n \n \n \n \n )}\n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nPaymentStatussList.propTypes = {\n match: PropTypes.object,\n paymentStatuss: PropTypes.array,\n className: PropTypes.any,\n onGetDepositStatuss: PropTypes.func,\n onUpdatePaymentInStatus: PropTypes.func,\n history: PropTypes.any,\n\n};\n\nconst mapStateToProps = ({ paymentStatuss }) => ({\n paymentStatuss: paymentStatuss.paymentStatuss,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetDepositStatuss: id => dispatch(getDepositStatuss(id)),\n onUpdatePaymentInStatus: paymentStatus =>\n dispatch(updatePaymentInStatus(paymentStatus)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PaymentStatussList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport filterFactory, { textFilter ,selectFilter} from 'react-bootstrap-table2-filter';\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getClearStatuss,\n} from \"store/payment-statuss/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass PaymentStatussList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n paymentStatuss: [],\n paymentStatus: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n\n };\n // this.handlePaymentStatusClick =\n // this.handlePaymentStatusClick.bind(this);\n this.toggle = this.toggle.bind(this);\n // this.handlePaymentStatusClicks =\n // this.handlePaymentStatusClicks.bind(this);\n }\n\n // // The code for converting \"image source\" (url) to \"Base64\"\n // toDataURL = url =>\n // fetch(url)\n // .then(response => response.blob())\n // .then(\n // blob =>\n // new Promise((resolve, reject) => {\n // const reader = new FileReader();\n // reader.onloadend = () => resolve(reader.result);\n // reader.onerror = reject;\n // reader.readAsDataURL(blob);\n // })\n // );\n\n // // The code for converting \"Base64\" to javascript \"File Object\"\n // dataURLtoFile = (dataurl, filename) => {\n // var arr = dataurl.split(\",\"),\n // mime = arr[0].match(/:(.*?);/)[1],\n // bstr = atob(arr[1]),\n // n = bstr.length,\n // u8arr = new Uint8Array(n);\n // while (n--) {\n // u8arr[n] = bstr.charCodeAt(n);\n // }\n // return new File([u8arr], filename, { type: mime });\n // };\n\n componentDidMount() {\n const { paymentStatuss, onGetClearStatuss } = this.props;\n onGetClearStatuss(this.state.user_id);\n this.setState({ paymentStatuss });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // handlePaymentStatusClicks = () => {\n // this.setState({\n // paymentStatus: \"\",\n // deposit_slip: \"\",\n // isEdit: false,\n // });\n // this.toggle();\n // };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { paymentStatuss } = this.props;\n if (\n !isEmpty(paymentStatuss) &&\n size(prevProps.paymentStatuss) !== size(paymentStatuss)\n ) {\n this.setState({ paymentStatuss: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n\n // handlePaymentStatusClick = (e, arg) => {\n // this.setState({\n // paymentStatus: {\n // id: arg.id,\n // deposit_at: arg.deposit_at,\n // deposit_bank: arg.deposit_bank,\n // deposit_slip: arg.deposit_slip,\n // status: arg.status,\n // },\n // isEdit: true,\n // });\n\n // this.toggle();\n // };\n handleSelectChange = (event) => {\n const selectedValue = event.target.value;\n\n // Perform navigation based on the selected value\n if (selectedValue === 'Created') {\n this.props.history.push('/payment-status');\n }\n if (selectedValue === 'Pending Clearence') {\n this.props.history.push('/payment-in-pending-clearence-status');\n }\n if (selectedValue === 'Cleared') {\n this.props.history.push('/clear-status');\n }\n if (selectedValue === 'Bounced') {\n this.props.history.push('/bounced-status');\n }\n}\n\n render() {\n const columns= [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, paymentStatus) => (\n <>{paymentStatus.id}\n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n \n },\n {\n text: \"MIF ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n \n formatter: (cellContent, paymentStatus) => (\n <>{paymentStatus.id}\n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"invoice_id\",\n text: \"invoice ID\",\n sort: true,\n hidden: true,\n style: { backgroundColor: ' #ffe6cc' },\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.invoice_id}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_for\",\n text: \"Payment From\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.payment_for}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n \n\n },\n \n {\n dataField: \"lab_name\",\n text: \"Client Name\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n \n \n {paymentStatus.lab_name}{\" \"}\n {paymentStatus.donor_name}\n {paymentStatus.advertisement_title}\n\n \n \n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_method\",\n text: \"Payment Method\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.payment_method}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"cheque_no\",\n text: \"Cheque/Ref#\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.deposit_slip && paymentStatus.cheque_no\n ? \n {paymentStatus.cheque_no && (\n \n {paymentStatus.cheque_no}\n \n )}\n \n : paymentStatus.deposit_slip && paymentStatus.refered_no\n ? \n {paymentStatus.refered_no && (\n \n {paymentStatus.refered_no}\n \n )}\n \n : --\n }\n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"amount\",\n text: \"Amount\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n
\n {paymentStatus.amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}
\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"bank\",\n text: \"Bank/Account#\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n \n \n \n {paymentStatus.bank_name},{\" \"}\n {paymentStatus.account_no}\n \n \n\n \n\n \n ),\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n \n // {\n // dataField: \"is_settled\",\n // text: \"Is Settled\",\n // sort: true,\n // },\n // {\n // dataField: \"verified_by\",\n // text: \"Verified By\",\n // sort: true,\n // },\n {\n dataField: \"cleared_at\",\n text: \"Cleared Date\",\n sort: true,\n formatter: (cellContent, approvedInPayment) => {\n const date = new Date(approvedInPayment.cleared_at);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2); // Get the last 2 digits of the year\n \n return (\n

\n {`${day}-${month}-${year}`}\n

\n );\n },\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n }, \n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Comments\",\n formatter: (cellContent, approvedInPayment) => (\n \n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n // {\n // dataField: \"deposit_slip\",\n // text: \"Deposit Slip\",\n // sort: true,\n // formatter: (cellContent, approvedInPayment) => (\n // <>\n // \n // View Slip\n // \n // \n // ),\n // },\n // {\n // dataField: \"payment_status\",\n // text: \"Status\",\n // sort: true,\n // },\n // {\n // dataField: \"menu\",\n // isDummyField: true,\n // editable: false,\n // text: \"Action\",\n // formatter: (cellContent, paymentStatus) => (\n //
\n // \n // \n // this.handlePaymentStatusClick(e, paymentStatus)\n // }\n // >\n // \n \n //
\n // ),\n // },\n ];\n const { SearchBar } = Search;\n\n const { paymentStatuss } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onGetClearStatuss,\n } = this.props;\n const paymentStatus = this.state.paymentStatus;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: this.props.paymentStatuss.length, // Replace with the actual data length\n custom: true,\n };\n \n // Check if there are items in the paymentStatuss array\n const hasData = paymentStatuss && paymentStatuss.length > 0;\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n MIF List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n \n \n \n \n \n
\n \n
\n \n \n
\n \n\n {/* \n \n {!!isEdit\n ? \"UpdateQuality Certificate\"\n : \"Add Quality Certificate\"}\n \n \n \n // hiddenEditFlag == false, //just an e.g. you can return a function\n // then: Yup.string().required(\n // \"Please upload deposit at\"\n // ),\n // }\n // ),\n // Validation for logo based on type value\n // type: Yup.string(),\n // logo: Yup.mixed().test(\n // \"required\",\n // \"Please upload logo\",\n // ),\n\n \n })}\n onSubmit={values => {\n const updatePaymentStatus =\n {\n id: paymentStatus.id,\n deposit_at:\n values.deposit_at,\n deposit_bank: values.deposit_bank,\n deposit_slip: values.deposit_slip,\n \n status:\n values.status,\n };\n\n // update PaymentStatus\n onUpdatePaymentStatus(\n updatePaymentStatus\n );\n setTimeout(() => {\n onGetDepositStatuss(\n this.state.user_id\n );\n }, 1000);\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n \n {/* Payment Cleared Date and Time */}\n\n {/*
\n \n Cleared at\n \n {\n this.setState({\n paymentStatus: {\n id: paymentStatus.id,\n cleared_at:\n e.target.value +\n \":00Z\",\n // estimated_result_uploading_at:\n // paymentStatus.estimated_result_uploading_at,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.cleared_at &&\n touched.cleared_at\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
*/}\n\n {/*
\n \n {\n this.setState({\n paymentStatus: {\n id: paymentStatus.id,\n status:\n paymentStatus.status,\n deposit_at: paymentStatus.verified_by,\n deposit_slip: paymentStatus.deposit_slip,\n verified_by:\n e.target.value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.verified_by &&\n touched.verified_by\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
*/}\n \n {/* Certificate Type field */}\n {/*
\n \n {\n this.setState({\n paymentStatus: {\n id: paymentStatus.id,\n deposit_bank:\n paymentStatus.status,\n deposit_at: paymentStatus.deposit_bank,\n deposit_slip: paymentStatus.deposit_slip,\n status :\n e.target.value,\n },\n });\n }}\n multiple={false}\n value={\n this.state\n .paymentStatus\n .status\n }\n >\n \n \n \n \n \n \n \n
\n\n \n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n */}\n
\n \n
\n {hasData && (\n \n \n \n \n \n )}\n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nPaymentStatussList.propTypes = {\n match: PropTypes.object,\n paymentStatuss: PropTypes.array,\n className: PropTypes.any,\n onGetClearStatuss: PropTypes.func,\n history: PropTypes.any,\n\n};\n\nconst mapStateToProps = ({ paymentStatuss }) => ({\n paymentStatuss: paymentStatuss.paymentStatuss,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetClearStatuss: id => dispatch(getClearStatuss(id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PaymentStatussList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport Select from \"react-select\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport moment from 'moment';\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n FormGroup,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getLabs,\n getDonors,\n getBouncedInStatuss,\n updatePaymentStatus,\n} from \"store/payment-statuss/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass PaymentStatussList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n paymentBouncedInStatuss: [],\n paymentBouncedInStatus: \"\",\n modal: false,\n payment_status: \"Created\",\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n\n };\n this.handlePaymentStatusClick =\n this.handlePaymentStatusClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handlePaymentStatusClicks =\n this.handlePaymentStatusClicks.bind(this);\n }\n // The code for converting \"image source\" (url) to \"Base64\"\n toDataURL = url =>\n fetch(url)\n .then(response => response.blob())\n .then(\n blob =>\n new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.onerror = reject;\n reader.readAsDataURL(blob);\n })\n );\n\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n componentDidMount() {\n\n const { labs, onGetlabs } = this.props;\n if (labs && !labs.length) {\n onGetlabs();\n }\n this.setState({ labs });\n\n const { donors, onGetdonors } = this.props;\n if (donors && !donors.length) {\n onGetdonors();\n }\n this.setState({ donors });\n\n\n const { paymentBouncedInStatuss, onGetBouncedInStatuss } = this.props;\n onGetBouncedInStatuss(this.state.user_id);\n this.setState({ paymentBouncedInStatuss });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handlePaymentStatusClicks = () => {\n this.setState({\n paymentBouncedInStatus: \"\",\n deposit_slip: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { paymentBouncedInStatuss } = this.props;\n if (\n !isEmpty(paymentBouncedInStatuss) &&\n size(prevProps.paymentBouncedInStatuss) !== size(paymentBouncedInStatuss)\n ) {\n this.setState({ paymentBouncedInStatuss: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n\n handlePaymentStatusClick = (e, arg) => {\n const paymentBouncedInStatus = arg;\n this.setState({\n paymentBouncedInStatus: {\n id: paymentBouncedInStatus.id,\n cheque_image: process.env.REACT_APP_BACKENDURL + paymentBouncedInStatus.cheque_image,\n payment_for: paymentBouncedInStatus.payment_for,\n lab_id: paymentBouncedInStatus.lab_id,\n donor_id: paymentBouncedInStatus.donor_id,\n recieved_by: paymentBouncedInStatus.recieved_by,\n handover_to: paymentBouncedInStatus.handover_to,\n amount: paymentBouncedInStatus.amount,\n paid_at: paymentBouncedInStatus.paid_at,\n payment_method: paymentBouncedInStatus.payment_method,\n cheque_no: paymentBouncedInStatus.cheque_no,\n refered_no: paymentBouncedInStatus.refered_no,\n cheque_image: paymentBouncedInStatus.cheque_image,\n payment_status: \"Created\",\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n\n handleSelectChange = (event) => {\n const selectedValue = event.target.value;\n\n // Perform navigation based on the selected value\n if (selectedValue === 'Created') {\n this.props.history.push('/payment-status');\n }\n if (selectedValue === 'Pending Clearence') {\n this.props.history.push('/payment-in-pending-clearence-status');\n }\n if (selectedValue === 'Cleared') {\n this.props.history.push('/clear-status');\n }\n if (selectedValue === 'Bounced') {\n this.props.history.push('/bounced-status');\n }\n }\n\n render() {\n const columns= [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, paymentBouncedInStatus) => (\n <>{paymentBouncedInStatus.id}\n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n text: \"MIF ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n formatter: (cellContent, paymentBouncedInStatus) => (\n <>{paymentBouncedInStatus.id}\n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"invoice_id\",\n text: \"invoice ID\",\n sort: true,\n hidden: true,\n formatter: (cellContent, paymentBouncedInStatus) => (\n <>\n {paymentBouncedInStatus.invoice_id}\n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n // {\n // dataField: \"payment_for\",\n // text: \"Payment From\",\n // sort: true,\n // formatter: (cellContent, paymentBouncedInStatus) => (\n // <>\n // {paymentBouncedInStatus.payment_for}\n // \n // ), filter: textFilter(),\n // },\n {\n dataField: \"lab_name\",\n text: \"Client Name\",\n sort: true,\n formatter: (cellContent, paymentBouncedInStatus) => (\n <>\n \n \n {paymentBouncedInStatus.lab_name}{\" \"}\n {paymentBouncedInStatus.donor_name}\n {paymentBouncedInStatus.advertisement_title}\n \n \n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_method\",\n text: \"Payment Method\",\n sort: true,\n formatter: (cellContent, paymentBouncedInStatus) => (\n <>\n {paymentBouncedInStatus.payment_method}\n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"cheque_no\",\n text: \"Cheque/Ref#\",\n sort: true,\n formatter: (cellContent, paymentBouncedInStatus) => (\n <>\n {paymentBouncedInStatus.deposit_slip && paymentBouncedInStatus.cheque_no\n ? \n {paymentBouncedInStatus.cheque_no && (\n \n {paymentBouncedInStatus.cheque_no}\n \n )}\n \n : paymentBouncedInStatus.deposit_slip && paymentBouncedInStatus.refered_no\n ? \n {paymentBouncedInStatus.refered_no && (\n \n {paymentBouncedInStatus.refered_no}\n \n )}\n \n : --\n }\n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"amount\",\n text: \"Amount\",\n sort: true,\n formatter: (cellContent, paymentBouncedInStatus) => (\n <>\n
\n {paymentBouncedInStatus.amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}
\n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"bank\",\n text: \"Bank/Account#\",\n sort: true,\n formatter: (cellContent, paymentBouncedInStatus) => (\n <>\n \n \n \n {paymentBouncedInStatus.bank_name},{\" \"}\n {paymentBouncedInStatus.account_no}\n \n \n\n \n\n \n ),\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"verified_by\",\n text: \"Deposited By\",\n sort: true,\n formatter: (cellContent, paymentBouncedInStatus) => (\n <>\n {paymentBouncedInStatus.verified_by}\n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n\n {\n dataField: \"deposited_at\",\n text: \"Deposited Date\",\n sort: true,\n formatter: (cellContent, paymentBouncedInStatus) => {\n // const date = new Date(paymentBouncedInStatus.deposited_at);\n // const day = date.getDate();\n // const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n // const month = monthNames[date.getMonth()];\n // const year = date.getFullYear().toString().slice(-2); // Get the last 2 digits of the year\n\n return (\n

\n {moment(paymentBouncedInStatus.deposited_at).format(\"DD MMM YYYY, h:mm A\")}\n

\n );\n },\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n \n \n // {\n // dataField: \"is_settled\",\n // text: \"Is Settled\",\n // sort: true,\n // },\n \n {\n dataField: \"cleared_at\",\n text: \"Bounced Date\",\n sort: true,\n formatter: (cellContent, paymentBouncedInStatus) => {\n // const date = new Date(paymentBouncedInStatus.cleared_at);\n // const day = date.getDate();\n // const month = date.getMonth() + 1; // Adding 1 to get the correct month\n // const year = date.getFullYear();\n\n return (\n

\n { moment(paymentBouncedInStatus.cleared_at).format(\"DD MMM YYYY, h:mm A\")}\n

\n );\n },\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n \n \n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, paymentBouncedInStatus) => (\n
\n this.handlePaymentStatusClick(e, paymentBouncedInStatus)}\n\n >\n Update\n \n\n
\n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Comments\",\n formatter: (cellContent, paymentBouncedInStatus) => (\n \n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n ];\n const { SearchBar } = Search;\n\n const { paymentBouncedInStatuss } = this.props;\n\n const { labs } = this.props;\n const { donors } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onUpdatePaymentStatus,\n onGetBouncedInStatuss,\n } = this.props;\n const paymentBouncedInStatus = this.state.paymentBouncedInStatus;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: this.props.paymentBouncedInStatuss.length, // Replace with the actual data length\n custom: true,\n };\n \n // Check if there are items in the paymentBouncedInStatuss array\n const hasData = paymentBouncedInStatuss && paymentBouncedInStatuss.length > 0;\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n const labList = [];\n for (let i = 0; i < labs.length; i++) {\n let flag = 0;\n // for (let j = 0; j < inPayments.length; j++) {\n // if (labs[i].id == inPayments[j].lab_id) {\n // flag = 1;\n // }\n // }\n if (!flag) {\n labList.push({\n label: labs[i].name,\n value: labs[i].id,\n });\n }\n }\n\n const donorList = [];\n for (let i = 0; i < donors.length; i++) {\n let flag = 0;\n\n // Check if test available in our database is already being offered by lab\n // If yes then don't push it in labList\n // for (let j = 0; j < inPayments.length; j++) {\n // if (donors[i].id == inPayments[j].donor_id) {\n // flag = 1;\n // }\n // }\n if (!flag) {\n donorList.push({\n label: donors[i].name,\n value: donors[i].id,\n });\n }\n }\n\n return (\n \n
\n \n MIF List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n \n \n \n \n \n
\n \n
\n \n \n
\n \n\n \n \n {!!isEdit\n ? \"UpdateMIF\"\n : \"Add Quality Certificate\"}\n \n \n \n // hiddenEditFlag == false, //just an e.g. you can return a function\n // then: Yup.string().required(\n // \"Please upload Payment Slip\"\n // ),\n // }\n // ),\n // Validation for logo based on type value\n // type: Yup.string(),\n // logo: Yup.mixed().test(\n // \"required\",\n // \"Please upload logo\",\n // ),\n\n\n })}\n onSubmit={values => {\n if (isEdit) {\n if (!this.state.cheque_image) {\n this.toDataURL(\n paymentBouncedInStatus.cheque_image\n ).then(dataUrl => {\n var fileData =\n this.dataURLtoFile(\n dataUrl,\n paymentBouncedInStatus.cheque_image\n .split(\"/\")\n .at(-1)\n );\n this.setState({\n cheque_image: fileData,\n });\n\n const updatePaymentStatus = {\n id: paymentBouncedInStatus.id,\n cheque_image: this.state.cheque_image,\n amount: values.amount,\n paid_at: values.paid_at,\n cheque_no: values.cheque_no,\n handover_to: values.handover_to,\n payment_for:\n values.payment_for,\n lab_id:\n values.lab_id,\n donor_id:\n values.donor_id,\n recieved_by:\n values.recieved_by,\n payment_status:\n values.payment_status,\n payment_method:\n values.payment_method,\n refered_no:\n values.refered_no,\n };\n // update QualityCertificate\n onUpdatePaymentStatus(\n updatePaymentStatus\n );\n setTimeout(() => {\n onGetBouncedInStatuss(\n this.state.user_id\n );\n }, 1000);\n });\n } else {\n const updatePaymentStatus = {\n id: paymentBouncedInStatus.id,\n cheque_image: this.state.cheque_image,\n amount: values.amount,\n paid_at: values.paid_at,\n cheque_no: values.cheque_no,\n handover_to: values.handover_to,\n payment_for:\n values.payment_for,\n lab_id:\n values.lab_id,\n donor_id:\n values.donor_id,\n recieved_by:\n values.recieved_by,\n payment_status:\n values.payment_status,\n payment_method:\n values.payment_method,\n refered_no:\n values.refered_no,\n };\n\n // update Pathologist\n onUpdatePaymentStatus(\n updatePaymentStatus\n );\n setTimeout(() => {\n onGetBouncedInStatuss(\n this.state.user_id\n );\n }, 1000);\n }\n }\n\n this.setState({\n // selectedPathologist: null,\n });\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n \n\n {/*
\n \n \n \n this.setState({\n payment_for: e.target.value,\n })\n }\n defaultValue={this.state.payment_for}\n className=\"form-select\"\n >\n \n --- Please select the Type\n ---\n \n \n \n \n\n \n\n {this.state.payment_for == \"Lab\" ? (\n paymentBouncedInStatus.lab_id ? (\n
\n \n \n \n {\n paymentBouncedInStatus.lab_name\n }\n \n \n
\n ) : (\n
\n \n \n this.setState({\n lab_id:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.lab_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.lab_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={labList}\n placeholder=\"Select Lab...\"\n />\n\n
\n Please select your Lab\n
\n
)\n ) : null}\n\n {this.state.payment_for == \"Donor\" ? (\n paymentBouncedInStatus.donor_id ? (\n
\n \n \n \n {\n paymentBouncedInStatus.donor_name\n }\n \n \n
\n ) : (\n
\n \n \n this.setState({\n donor_id:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.donor_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.donor_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={b2bList}\n placeholder=\"Select Donor...\"\n />\n\n
\n Please select Donor\n
\n
\n )\n\n ) : null}\n\n
\n \n {\n this.setState({\n paymentBouncedInStatus: {\n id: paymentBouncedInStatus.id,\n lab_id:\n paymentBouncedInStatus.lab_id,\n donor_id:\n paymentBouncedInStatus.donor_id,\n invoice_id:\n paymentBouncedInStatus.invoice_id,\n amount:\n e.target\n .value,\n\n payment_method:\n paymentBouncedInStatus.payment_method,\n payment_for:\n paymentBouncedInStatus.payment_for,\n paid_at:\n paymentBouncedInStatus.paid_at,\n cheque_no: paymentBouncedInStatus.cheque_no,\n \n cheque_image:\n paymentBouncedInStatus.cheque_image,\n is_cleared:\n paymentBouncedInStatus.is_cleared,\n cleared_at: paymentBouncedInStatus.cleared_at,\n recieved_by:\n paymentBouncedInStatus.recieved_by,\n status: paymentBouncedInStatus.status,\n handover_to:\n paymentBouncedInStatus.handover_to,\n\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.amount &&\n touched.amount\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n
\n \n {\n this.setState({\n paymentBouncedInStatus: {\n id: paymentBouncedInStatus.id,\n lab_id:\n paymentBouncedInStatus.lab_id,\n donor_id:\n paymentBouncedInStatus.donor_id,\n invoice_id:\n paymentBouncedInStatus.invoice_id,\n cheque_no:\n e.target\n .value,\n\n payment_method:\n paymentBouncedInStatus.payment_method,\n payment_for:\n paymentBouncedInStatus.payment_for,\n paid_at:\n paymentBouncedInStatus.paid_at,\n handover_to: paymentBouncedInStatus.handover_to,\n cheque_image:\n paymentBouncedInStatus.cheque_image,\n is_cleared:\n paymentBouncedInStatus.is_cleared,\n cleared_at: paymentBouncedInStatus.cleared_at,\n recieved_by:\n paymentBouncedInStatus.recieved_by,\n status: paymentBouncedInStatus.status,\n amount:\n paymentBouncedInStatus.amount,\n\n },\n });\n }}\n />\n
\n\n
\n \n Payment Date\n \n {\n this.setState({\n paymentBouncedInStatus: {\n id: paymentBouncedInStatus.id,\n lab_id:\n paymentBouncedInStatus.lab_id,\n donor_id:\n paymentBouncedInStatus.donor_id,\n invoice_id:\n paymentBouncedInStatus.invoice_id,\n paid_at:\n e.target\n .value,\n\n payment_method:\n paymentBouncedInStatus.payment_method,\n amount:\n paymentBouncedInStatus.amount,\n cheque_no:\n paymentBouncedInStatus.cheque_no,\n payment_for: paymentBouncedInStatus.payment_for,\n cheque_image:\n paymentBouncedInStatus.cheque_image,\n is_cleared:\n paymentBouncedInStatus.is_cleared,\n cleared_at: paymentBouncedInStatus.cleared_at,\n recieved_by:\n paymentBouncedInStatus.recieved_by,\n status: paymentBouncedInStatus.status,\n handover_to:\n paymentBouncedInStatus.handover_to,\n\n },\n });\n }}\n min={new Date(\n new Date().toString().split(\"GMT\")[0] +\n \" UTC\"\n )\n .toISOString()\n .slice(0, -8)}\n className=\"form-control\"\n // onChange={e =>\n // this.setState({\n // paid_at:\n // e.target.value,\n // })\n // }\n />\n
\n\n\n {/* {paymentBouncedInStatus.recieved_by &&\n paymentBouncedInStatus.recieved_by ? (\n
\n \n Bank Account Name\n\n \n \n {\n paymentBouncedInStatus.account_no\n\n }\n \n \n
\n ) : (\n
\n \n Bank Account Name\n\n \n this.setState({\n recieved_by:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.recieved_by\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.recieved_by\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={bankaccountList}\n placeholder=\"Select Bank Account...\"\n />\n
\n Please select your Bank Account\n
\n
\n )} \n\n
\n \n Cheque Image\n \n *\n \n \n \n this.setState({\n cheque_image:\n e.target.files[0],\n })\n }\n className={\n \"form-control\" +\n (errors.cheque_image &&\n touched.cheque_image\n ? \" is-invalid\"\n : \"\")\n }\n />\n\n \n
\n\n
\n \n {\n this.setState({\n paymentBouncedInStatus: {\n id: paymentBouncedInStatus.id,\n lab_id:\n paymentBouncedInStatus.lab_id,\n donor_id:\n paymentBouncedInStatus.donor_id,\n invoice_id:\n paymentBouncedInStatus.invoice_id,\n payment_method:\n e.target\n .value,\n\n handover_to:\n paymentBouncedInStatus.handover_to,\n payment_for:\n paymentBouncedInStatus.payment_for,\n paid_at:\n paymentBouncedInStatus.paid_at,\n cheque_no: paymentBouncedInStatus.cheque_no,\n cheque_image:\n paymentBouncedInStatus.cheque_image,\n is_cleared:\n paymentBouncedInStatus.is_cleared,\n cleared_at: paymentBouncedInStatus.cleared_at,\n recieved_by:\n paymentBouncedInStatus.recieved_by,\n status: paymentBouncedInStatus.status,\n amount:\n paymentBouncedInStatus.amount,\n\n },\n });\n }}\n >\n \n ----- Please select\n Type -----\n \n \n \n \n
\n\n \n\n
\n \n {\n this.setState({\n paymentBouncedInStatus: {\n id: paymentBouncedInStatus.id,\n lab_id:\n paymentBouncedInStatus.lab_id,\n donor_id:\n paymentBouncedInStatus.donor_id,\n invoice_id:\n paymentBouncedInStatus.invoice_id,\n handover_to:\n e.target\n .value,\n\n payment_method:\n paymentBouncedInStatus.payment_method,\n payment_for:\n paymentBouncedInStatus.payment_for,\n paid_at:\n paymentBouncedInStatus.paid_at,\n cheque_no: paymentBouncedInStatus.cheque_no,\n cheque_image:\n paymentBouncedInStatus.cheque_image,\n is_cleared:\n paymentBouncedInStatus.is_cleared,\n cleared_at: paymentBouncedInStatus.cleared_at,\n recieved_by:\n paymentBouncedInStatus.recieved_by,\n status: paymentBouncedInStatus.status,\n amount:\n paymentBouncedInStatus.amount,\n\n },\n });\n }}\n />\n \n
\n
*/}\n\n
\n {/* \n Payment information\n \n

\n Fill the Cheque payment only if your payment method\n is Cheque\n

*/}\n {/* \n \n \n this.setState({\n payment_for: e.target.value,\n })\n }\n defaultValue={this.state.payment_for}\n className=\"form-select\"\n >\n \n --- Please select the Type\n ---\n \n \n \n \n\n */}\n\n {/* {this.state.payment_for == \"Lab\" ? (\n paymentBouncedInStatus.lab_id ? (\n
\n \n \n \n {\n paymentBouncedInStatus.lab_name\n }\n \n \n
\n ) : (\n
\n \n \n this.setState({\n lab_id:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.lab_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.lab_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={labList}\n placeholder=\"Select Lab...\"\n />\n\n
\n Please select your Lab\n
\n
)\n ) : null} */}\n\n {/* {this.state.payment_for == \"Donor\" ? (\n paymentBouncedInStatus.donor_id ? (\n
\n \n \n \n {\n paymentBouncedInStatus.donor_name\n }\n \n \n
\n ) : (\n
\n \n \n this.setState({\n donor_id:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.donor_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.donor_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={donorList}\n placeholder=\"Select Donor...\"\n />\n\n
\n Please select Donor\n
\n
\n )\n\n ) : null} */}\n\n
\n \n {\n this.setState({\n paymentBouncedInStatus: {\n id: paymentBouncedInStatus.id,\n lab_id:\n paymentBouncedInStatus.lab_id,\n donor_id:\n paymentBouncedInStatus.donor_id,\n invoice_id:\n paymentBouncedInStatus.invoice_id,\n amount:\n e.target\n .value,\n\n payment_method:\n paymentBouncedInStatus.payment_method,\n payment_for:\n paymentBouncedInStatus.payment_for,\n paid_at:\n paymentBouncedInStatus.paid_at,\n cheque_no: paymentBouncedInStatus.cheque_no,\n\n cheque_image:\n paymentBouncedInStatus.cheque_image,\n is_cleared:\n paymentBouncedInStatus.is_cleared,\n cleared_at: paymentBouncedInStatus.cleared_at,\n recieved_by:\n paymentBouncedInStatus.recieved_by,\n payment_status: paymentBouncedInStatus.payment_status,\n handover_to:\n paymentBouncedInStatus.handover_to,\n\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.amount &&\n touched.amount\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n
\n \n
\n
\n \n this.setState({\n payment_method: e.target.value,\n })\n }\n />\n \n {\" \"}\n Cash\n \n
\n
\n \n this.setState({\n payment_method: e.target.value,\n })\n }\n />\n \n {\" \"}\n Cheque\n \n
\n
\n \n this.setState({\n payment_method: e.target.value,\n })\n }\n />\n \n {\" \"}\n Online\n \n
\n
\n\n {this.state.payment_method == \"Cash\" ? (\n
\n
\n For Cash Payment\n
\n
\n \n \n \n \n this.setState({\n paid_at:\n e.target.value,\n })\n }\n />\n \n\n
\n \n {\n this.setState({\n paymentBouncedInStatus: {\n id: paymentBouncedInStatus.id,\n lab_id:\n paymentBouncedInStatus.lab_id,\n donor_id:\n paymentBouncedInStatus.donor_id,\n invoice_id:\n paymentBouncedInStatus.invoice_id,\n handover_to:\n e.target\n .value,\n\n payment_method:\n paymentBouncedInStatus.payment_method,\n payment_for:\n paymentBouncedInStatus.payment_for,\n paid_at:\n paymentBouncedInStatus.paid_at,\n cheque_no: paymentBouncedInStatus.cheque_no,\n cheque_image:\n paymentBouncedInStatus.cheque_image,\n is_cleared:\n paymentBouncedInStatus.is_cleared,\n cleared_at: paymentBouncedInStatus.cleared_at,\n recieved_by:\n paymentBouncedInStatus.recieved_by,\n payment_status: paymentBouncedInStatus.payment_status,\n amount:\n paymentBouncedInStatus.amount,\n\n },\n });\n }}\n />\n \n
\n\n
\n \n {\n this.setState({\n paymentBouncedInStatus: {\n id: paymentBouncedInStatus.id,\n lab_id:\n paymentBouncedInStatus.lab_id,\n donor_id:\n paymentBouncedInStatus.donor_id,\n invoice_id:\n paymentBouncedInStatus.invoice_id,\n recieved_by:\n e.target\n .value,\n\n payment_method:\n paymentBouncedInStatus.payment_method,\n payment_for:\n paymentBouncedInStatus.payment_for,\n paid_at:\n paymentBouncedInStatus.paid_at,\n cheque_no: paymentBouncedInStatus.cheque_no,\n cheque_image:\n paymentBouncedInStatus.cheque_image,\n is_cleared:\n paymentBouncedInStatus.is_cleared,\n cleared_at: paymentBouncedInStatus.cleared_at,\n handover_to:\n paymentBouncedInStatus.handover_to,\n payment_status: paymentBouncedInStatus.payment_status,\n amount:\n paymentBouncedInStatus.amount,\n\n },\n });\n }}\n />\n \n
\n\n \n
\n
\n ) : null}\n\n {this.state.payment_method == \"Cheque\" ? (\n
\n
\n For Cheque Payment\n
\n
\n
\n \n \n \n this.setState({\n paid_at:\n e.target.value,\n })\n }\n />\n \n
\n \n {\n this.setState({\n paymentBouncedInStatus: {\n id: paymentBouncedInStatus.id,\n lab_id:\n paymentBouncedInStatus.lab_id,\n donor_id:\n paymentBouncedInStatus.donor_id,\n invoice_id:\n paymentBouncedInStatus.invoice_id,\n cheque_no:\n e.target\n .value,\n\n payment_method:\n paymentBouncedInStatus.payment_method,\n payment_for:\n paymentBouncedInStatus.payment_for,\n paid_at:\n paymentBouncedInStatus.paid_at,\n handover_to: paymentBouncedInStatus.handover_to,\n cheque_image:\n paymentBouncedInStatus.cheque_image,\n is_cleared:\n paymentBouncedInStatus.is_cleared,\n cleared_at: paymentBouncedInStatus.cleared_at,\n recieved_by:\n paymentBouncedInStatus.recieved_by,\n payment_status: paymentBouncedInStatus.payment_status,\n amount:\n paymentBouncedInStatus.amount,\n\n },\n });\n }}\n />\n
\n
\n \n Cheque Image\n \n *\n \n \n \n this.setState({\n cheque_image:\n e.target.files[0],\n })\n }\n className={\n \"form-control\" +\n (errors.cheque_image &&\n touched.cheque_image\n ? \" is-invalid\"\n : \"\")\n }\n />\n\n \n
\n\n
\n
\n
\n ) : null}\n\n {this.state.payment_method == \"Card\" ? (\n
\n
\n For Online Payment\n
\n
\n
\n \n \n \n this.setState({\n paid_at:\n e.target.value,\n })\n }\n />\n \n
\n \n {\n this.setState({\n paymentBouncedInStatus: {\n id: paymentBouncedInStatus.id,\n lab_id:\n paymentBouncedInStatus.lab_id,\n donor_id:\n paymentBouncedInStatus.donor_id,\n invoice_id:\n paymentBouncedInStatus.invoice_id,\n refered_no:\n e.target\n .value,\n\n payment_method:\n paymentBouncedInStatus.payment_method,\n payment_for:\n paymentBouncedInStatus.payment_for,\n paid_at:\n paymentBouncedInStatus.paid_at,\n handover_to: paymentBouncedInStatus.handover_to,\n cheque_image:\n paymentBouncedInStatus.cheque_image,\n is_cleared:\n paymentBouncedInStatus.is_cleared,\n cleared_at: paymentBouncedInStatus.cleared_at,\n recieved_by:\n paymentBouncedInStatus.recieved_by,\n payment_status: paymentBouncedInStatus.payment_status,\n amount:\n paymentBouncedInStatus.amount,\n\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.refered_no &&\n touched.refered_no\n ? \" is-invalid\"\n : \"\")\n }\n\n />\n
\n\n
\n \n Ref Copy\n \n *\n \n \n \n this.setState({\n cheque_image:\n e.target.files[0],\n })\n }\n className={\n \"form-control\" +\n (errors.cheque_image &&\n touched.cheque_image\n ? \" is-invalid\"\n : \"\")\n }\n />\n\n \n
\n
\n
\n
\n ) : null}\n\n
\n\n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n \n )}\n \n
\n \n
\n \n
\n {hasData && (\n \n \n \n \n \n )}\n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nPaymentStatussList.propTypes = {\n match: PropTypes.object,\n paymentBouncedInStatuss: PropTypes.array,\n labs: PropTypes.array,\n donors: PropTypes.array,\n className: PropTypes.any,\n onGetBouncedInStatuss: PropTypes.func,\n onUpdatePaymentStatus: PropTypes.func,\n onGetlabs: PropTypes.func,\n onGetdonors: PropTypes.func,\n onGetInPayment: PropTypes.func,\n history: PropTypes.any,\n\n\n};\n\nconst mapStateToProps = ({ paymentStatuss }) => ({\n paymentBouncedInStatuss: paymentStatuss.paymentBouncedInStatuss,\n bankAccounts: paymentStatuss.bankAccounts,\n labs: paymentStatuss.labs,\n donors: paymentStatuss.donors,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetlabs: () => dispatch(getLabs()),\n onGetdonors: () => dispatch(getDonors()),\n onGetBouncedInStatuss: id => dispatch(getBouncedInStatuss(id)),\n onUpdatePaymentStatus: paymentBouncedInStatus =>\n dispatch(updatePaymentStatus(paymentBouncedInStatus)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PaymentStatussList));\n","import {\n GET_BANKACCOUNTS_SUCCESS,\n GET_BANKACCOUNTS_FAIL,\n\n UPDATE_BANKACCOUNT_SUCCESS,\n UPDATE_BANKACCOUNT_FAIL,\n // DELETE_BANKACCOUNT_SUCCESS,\n // DELETE_BANKACCOUNT_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n bankaccounts: [],\n error: {},\n};\n\nconst bankaccounts = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_BANKACCOUNTS_SUCCESS:\n return {\n ...state,\n bankaccounts: action.payload.data,\n };\n\n case GET_BANKACCOUNTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_BANKACCOUNT_SUCCESS:\n return {\n ...state,\n bankaccounts: state.bankaccounts.map(bankaccount =>\n bankaccount.id.toString() === action.payload.id.toString()\n ? { bankaccount, ...action.payload }\n : bankaccount\n ),\n };\n\n case UPDATE_BANKACCOUNT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n // case DELETE_BANKACCOUNT_SUCCESS:\n // return {\n // ...state,\n // bankaccounts: state.bankaccounts.filter(\n // bankaccount =>\n // bankaccount.id.toString() !== action.payload.id.toString()\n // ),\n // };\n\n // case DELETE_BANKACCOUNT_FAIL:\n // return {\n // ...state,\n // error: action.payload,\n // };\n\n default:\n return state;\n }\n};\n\nexport default bankaccounts;\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\n\nimport {\n Container,\n Row,\n Col,\n Table,\n Input,\n Nav,\n NavItem,\n NavLink,\n TabContent,\n TabPane,\n Card,\n FormGroup,\n Label,\n CardBody,\n CardTitle,\n Alert,\n} from \"reactstrap\";\n\nimport classnames from \"classnames\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport {\n getBanks,\n getLabsMof,\n getListDonationAppointment,\n getBankAccounts,\n getB2bClients,\n addNewOutPayment,\n getOutPayment,\n getStaffProfile\n} from \"store/outpayments/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport ConfirmModal from \"components/Common/ConfirmModal\";\nimport \"assets/scss/table.scss\";\nimport bankaccounts from \"store/bankaccounts/reducer\";\n\nclass OutPaymentsForm extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n outPayments: [],\n staffProfiles: [],\n outPayment: \"\",\n modal: false,\n addmodal: false,\n confirmModal: false,\n id: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n payment_for: \"\",\n lab_id: \"\",\n test_appointment_id: \"\",\n b2b_id: \"\",\n current_amount: \"\",\n invoice_id: \"\",\n bankaccount_id: \"\",\n bank_id: \"\",\n amount: \"\",\n tax: \"\",\n payment_at: \"\",\n payment_method: \"Cheque\",\n cheque_no: \"\",\n deposit_copy: \"\",\n cleared_at: \"\",\n is_cleared: \"\",\n status: \"\",\n comments: \"\",\n checkedoutData: \"\",\n successMessage: \"\",\n transection_type: \"Other\",\n amountExceedsLimit: false,\n selectedOption: null,\n selectedAmount: 0, // Initialize with 0, it will be updated later\n };\n // this.toggleTab = this.toggleTab.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleSelectGroup = this.handleSelectGroup.bind(this);\n }\n\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n handleSubmitClicks = () => {\n this.setState({\n outPayment: {\n payment_for: this.state.payment_for,\n transection_type: this.state.transection_type,\n lab_id: this.state.lab_id,\n test_appointment_id: this.state.test_appointment_id,\n b2b_id: this.state.b2b_id,\n tax: this.state.tax,\n bankaccount_id: this.state.bankaccount_id,\n amount: this.state.amount,\n payment_method: this.state.payment_method,\n payment_at: this.state.payment_at,\n cheque_no: this.state.cheque_no,\n deposit_copy: this.state.deposit_copy,\n is_cleared: this.state.is_cleared,\n status: \"Pending Clearance\",\n comments: this.state.comments,\n },\n });\n\n // API call to create a new outPayment record\n const { onAddNewOutPayment } = this.props;\n setTimeout(() => {\n console.log(\n onAddNewOutPayment(this.state.outPayment, this.state.user_id)\n );\n }, 2000);\n setTimeout(() => {\n this.props.history.push(\"/payment-out-pending-clearence-status\");\n }, 2000)\n };\n\n\n\n handleProceedClick = () => {\n this.setState({\n outPayment: {\n payment_for: this.state.payment_for,\n transection_type: this.state.transection_type,\n lab_id: this.state.lab_id,\n test_appointment_id: this.state.test_appointment_id,\n b2b_id: this.state.b2b_id,\n bank_id: this.state.bank_id,\n bankaccount_id: this.state.bankaccount_id,\n amount: this.state.amount,\n tax: this.state.tax,\n payment_method: this.state.payment_method,\n payment_at: this.state.payment_at,\n cheque_no: this.state.cheque_no,\n deposit_copy: this.state.deposit_copy,\n is_cleared: this.state.is_cleared,\n status: \"Created\",\n comments: this.state.comments,\n },\n });\n\n // API call to get the checkout items\n const { onAddNewOutPayment } = this.props;\n setTimeout(() => {\n console.log(\n onAddNewOutPayment(this.state.outPayment, this.state.user_id)\n\n );\n window.scrollTo({ top: 0, left: 0, behavior: 'smooth' });\n }, 2000);\n\n setTimeout(() => {\n this.props.history.push(\"/payment-out-created-status\");\n window.location.reload()\n\n }, 2000)\n };\n\n componentDidMount() {\n const { staffProfiles, onGetStaffProfile } = this.props;\n onGetStaffProfile(this.state.user_id);\n this.setState({\n staffProfiles\n });\n console.log(\"state\", staffProfiles)\n\n const { labsMof, onGetlabsMof } = this.props;\n if (labsMof && !labsMof.length) {\n onGetlabsMof();\n }\n this.setState({ labsMof });\n\n const { listDonation, onGetListDonationAppointment } = this.props;\n if (listDonation && !listDonation.length) {\n onGetListDonationAppointment();\n }\n this.setState({ listDonation });\n\n const { banks, onGetbanks } = this.props;\n if (banks && !banks.length) {\n onGetbanks();\n }\n this.setState({ banks });\n\n const { bankAccounts, onGetbankAccounts } = this.props;\n if (bankAccounts && !bankAccounts.length) {\n onGetbankAccounts();\n }\n this.setState({ bankAccounts });\n\n const { b2bClients, onGetB2bClients } = this.props;\n if (b2bClients && !b2bClients.length) {\n onGetB2bClients();\n }\n this.setState({ b2bClients });\n\n const { outPayments, onGetOutPayment } = this.props;\n if (outPayments && !outPayments.length) {\n onGetOutPayment(this.props.match.params.id);\n }\n this.setState({ outPayments });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // Select\n handleSelectGroup = selectedGroup => {\n this.setState({ outPayment: selectedGroup.value });\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { outPayments } = this.props;\n if (\n !isEmpty(outPayments) &&\n size(prevProps.outPayments) !== size(outPayments)\n ) {\n this.setState({ outPayments: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n handleAmountChange = e => {\n const enteredAmount = parseFloat(e.target.value);\n \n if (!isNaN(enteredAmount)) {\n const absoluteSelectedAmount = Math.abs(this.state.selectedAmount);\n \n if (enteredAmount <= absoluteSelectedAmount && enteredAmount >= -absoluteSelectedAmount) {\n // If the entered amount is within the limit, update the state with the absolute value\n this.setState({\n amount: Math.abs(enteredAmount),\n amountExceedsLimit: false,\n });\n } else {\n // If the entered amount exceeds the limit, display a warning\n this.setState({\n amountExceedsLimit: true,\n });\n }\n } else {\n // If the entered amount is not a valid number, reset the state\n this.setState({\n amount: '',\n amountExceedsLimit: false,\n });\n }\n };\n \n \n\n render() {\n const { SearchBar } = Search;\n const isDonation = this.state.transection_type === \"Donation\";\n const { outPayments } = this.props;\n const { labsMof } = this.props;\n const { listDonation } = this.props;\n const { b2bClients } = this.props;\n const { staffProfiles } = this.props;\n\n\n // const { units } = this.props;\n\n const { onAddNewOutPayment, onGetOutPayment, onGetStaffProfile } =\n this.props;\n const outPayment = this.state.outPayment;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: outPayments.length, // replace later with size(outPayments),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n const labList = [];\n\n for (let i = 0; i < labsMof.length; i++) {\n if (labsMof[i].office === this.props.staffProfiles.territory_office && labsMof[i].current_amount < 0) {\n const formattedAmount = Math.abs(labsMof[i].current_amount); // Use Math.abs to get the absolute (positive) value\n labList.push({\n label: `${labsMof[i].name} - ${labsMof[i].type} - ${labsMof[i].city} - (Total Payable Amount: ${formattedAmount})`,\n label1: `${labsMof[i].name}`,\n value: labsMof[i].id,\n data: { dues: labsMof[i].current_amount }, // Include the 'dues' property in the data field\n });\n }\n }\n \n const donationlabList = [];\n for (let i = 0; i < labsMof.length; i++) {\n if ((labsMof[i].office === this.props.staffProfiles.territory_office) && (labsMof[i].donation_amount > 0)) {\n donationlabList.push({\n label: `${labsMof[i].name} - ${labsMof[i].type} - ${labsMof[i].city} - (Total Payable Amount: ${labsMof[i].donation_amount})`,\n label1: `${labsMof[i].name}`,\n value: labsMof[i].id,\n // data: { dues: labsMof[i].donation_amount }, // Include the 'dues' property in the data field\n });\n }\n }\n \n // Assuming you have a state variable to store the selected lab id (this.state.selectedLabId)\n const selectedLab = donationlabList.find(lab => lab.value === this.state.lab_id);\n\n // const DonationAppointmentList = [];\n // for (let i = 0; i < listDonation.length; i++) {\n // let flag = 0;\n // // for (let j = 0; j < outPayments.length; j++) {\n // // if (listDonation[i].id == outPayments[j].lab_id) {\n // // flag = 1;\n // // }\n // // }\n // if (!flag) {\n // DonationAppointmentList.push({\n // label: listDonation[i].id,\n // value: listDonation[i].id,\n // });\n // }\n // }\n const DonationAppointmentList = listDonation\n .filter(\n donation =>\n donation.payment_method === \"Donation\" &&\n donation.payment_status === \"Allocate\" &&\n donation.status === \"Result Uploaded\" &&\n donation.lab_office === this.props.staffProfiles.territory_office &&\n donation.dues !== undefined &&\n donation.lab_name === (selectedLab ? selectedLab.label1 : null) // Compare with the selected lab's lab_name\n\n )\n .map(donation => ({\n label: `(Appointment ID: ${donation.order_id}) - (Amount: ${donation.dues})`,\n value: donation.id,\n data: { dues: donation.dues }, // Include the 'dues' property in the data field\n }));\n\n // const DonationAppointmentList = [];\n // for (let i = 0; i < listDonation.length; i++) {\n // if (listDonation[i].status === \"Result Uploaded\" && listDonation[i].payment_method === \"Donation\" && listDonation[i].payment_status === \"Allocate\") {\n // if (listDonation[i].lab_office === this.props.staffProfiles.territory_office) {\n // DonationAppointmentList.push({\n // label: `${listDonation[i].id} - ${listDonation[i].lab_name} - ${listDonation[i].lab_type} - ${listDonation[i].lab_city}`,\n // value: `${listDonation[i].id}`,\n // });\n // }\n // }\n // }\n const CardAppointmentList = listDonation\n .filter(\n donation =>\n donation.payment_method === \"Card\" &&\n donation.payment_status === \"Paid\" &&\n donation.status === \"Result Uploaded\" &&\n donation.is_settled == false &&\n donation.lab_office === this.props.staffProfiles.territory_office &&\n donation.dues !== undefined &&\n donation.lab_name === (selectedLab ? selectedLab.label : null) // Compare with the selected lab's lab_name\n )\n .map(donation => ({\n label: `${donation.id} - ${donation.lab_name} - ${donation.lab_type} - ${donation.lab_city}`,\n value: donation.id,\n data: { dues: donation.dues }, // Include the 'dues' property in the data field\n }));\n // const CardAppointmentList = [];\n // for (let i = 0; i < listDonation.length; i++) {\n // if (listDonation[i].status === \"Result Uploaded\" && listDonation[i].payment_method === \"Card\" && listDonation[i].payment_status === \"Paid\" && listDonation[i].is_settled == false) {\n // if (listDonation[i].lab_office === this.props.staffProfiles.territory_office) {\n // CardAppointmentList.push({\n // label: `${listDonation[i].id} - ${listDonation[i].lab_name} - ${listDonation[i].lab_type} - ${listDonation[i].lab_city}`,\n // value: `${listDonation[i].id}`,\n // });\n // }\n // }\n // }\n\n // const b2bList = [];\n // for (let i = 0; i < b2bClients.length; i++) {\n // let flag = 0;\n\n // // Check if test available in our database is already being offered by lab\n // // If yes then don't push it in labList\n // // for (let j = 0; j < outPayments.length; j++) {\n // // if (b2bClients[i].id == outPayments[j].b2b_id) {\n // // flag = 1;\n // // }\n // // }\n // if (!flag) {\n // b2bList.push({\n // label: `${b2bClients[i].business_name} - ${b2bClients[i].current_amount}`,\n // value: `${b2bClients[i].id}`,\n\n // });\n\n // }\n // }\n const b2bList = [];\n for (let i = 0; i < b2bClients.length; i++) {\n if (b2bClients[i].office === this.props.staffProfiles.territory_office) {\n b2bList.push({\n label: `${b2bClients[i].business_name} - ${b2bClients[i].current_amount}`,\n value: `${b2bClients[i].id}`,\n });\n }\n }\n\n // const { bankAccounts } = this.props;\n // const bankaccountList = [];\n // for (let i = 0; i < bankAccounts.length; i++) {\n // let flag = 0;\n // if (!flag) {\n // bankaccountList.push(\n // {\n // label: `${bankAccounts[i].bank_name} - ${bankAccounts[i].account_no} - ${bankAccounts[i].account_type}`,\n // value: `${bankAccounts[i].id}`,\n // }\n // );\n // }\n // }\n const { bankAccounts } = this.props;\n // const bankaccountList = [];\n\n const bankaccountList = bankAccounts\n .filter(bankaccount => {\n if (isDonation) {\n return bankaccount.current_balance > Math.abs(this.state.amount) && bankaccount.account_type === \"DONATION\";\n } else {\n return bankaccount.current_balance > Math.abs(this.state.amount) && bankaccount.account_type !== \"DONATION\";\n }\n })\n .map(bankaccount => ({\n label: `(Bank Name: ${bankaccount.bank_name}) - (Account No: ${bankaccount.account_no}) - (Account Type: ${bankaccount.account_type}) - (Current Balance: ${bankaccount.current_balance})`,\n value: bankaccount.id,\n }));\n \n\n const { banks } = this.props;\n const bankList = [];\n for (let i = 0; i < banks.length; i++) {\n let flag = 0;\n // for (let j = 0; j < bankAccounts.length; j++) {\n // if (banks[i].id == bankAccounts[j].bank_id) {\n // flag = 1;\n // }\n // }\n if (!flag) {\n bankList.push({\n label: banks[i].name,\n value: banks[i].id,\n });\n }\n }\n\n return (\n \n
\n \n OutPayment | Lab Hazir - Dashboard\n \n \n \n \n
\n {this.state.successMessage &&
{this.state.successMessage}
}\n
\n \n Note: There will be that Labs, Donors and B2b Clients whose terriotory will match this staff.\n \n \n

\n\n \n 1: If Payment to Lab and Transection type is Other, the List of Lab only show Lab Name having Payable amount as per Lab Account statement.\n

\n 2: If Payment to Lab and Transection type is Donation, the List of Lab only show Lab Name having Apppoitments with status Donation Allocate and Result Uploaded.\n

\n 3: Only the Bank Accounts List having Balance, greater then to or Equal to Payable Amount.\n

\n
\n

\n
\n \n \n \n \n \n \n \n
\n \n \n \n this.setState({\n payment_for: e.target.value,\n })\n }\n defaultValue={this.state.payment_for}\n className=\"form-select\"\n >\n \n --- Please select the Type\n ---\n \n \n \n \n\n \n\n {this.state.payment_for == \"Lab\" ? (\n \n \n \n this.setState({\n transection_type: e.target.value,\n })\n }\n defaultValue={this.state.transection_type}\n className=\"form-select\"\n >\n \n \n \n\n \n ) : null}\n\n {this.state.payment_for == \"Lab\" && this.state.transection_type == \"Other\" ? (\n outPayment.lab_id ? (\n
\n \n \n \n {\n outPayment.lab_name\n }\n \n \n
\n ) : (\n
\n \n {\n const selectedValue = selectedOption ? selectedOption.value : null;\n const selectedData = selectedOption ? selectedOption.data || {} : {};\n const totalAmount = parseFloat(selectedData.dues) || 0;\n \n this.setState({\n lab_id: selectedValue,\n selectedOption,\n selectedAmount: totalAmount,\n amountExceedsLimit: false, // Reset the flag when a new lab is selected\n });\n \n // Auto-set the amount field\n this.setState({ amount: totalAmount.toString() });\n console.log(\"amount arahi h yah nahi\", selectedData, totalAmount);\n }}\n \n className={\n \"defautSelectParent\" +\n (!this.state.lab_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.lab_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={labList}\n placeholder=\"Select Lab...\"\n />\n\n
\n Please select your Lab\n
\n
)\n ) : null}\n {this.state.payment_for == \"Lab\" && this.state.transection_type == \"Donation\" ? (\n outPayment.lab_id ? (\n
\n \n \n \n {\n outPayment.lab_name\n }\n \n \n
\n ) : (\n
\n \n \n this.setState({\n lab_id:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.lab_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.lab_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={donationlabList}\n placeholder=\"Select Lab...\"\n />\n\n
\n Please select your Lab\n
\n
)\n ) : null}\n\n {this.state.transection_type == \"Donation\" && this.state.payment_for == \"Lab\" ? (\n outPayment.test_appointment_id ? (\n
\n \n \n {/* Render options for each selected test_appointment_id */}\n {outPayment.test_appointment_id.map(value => (\n \n ))}\n \n
\n ) : (\n
\n \n {\n this.setState({\n test_appointment_id: selectedGroup.map(option => option.value),\n });\n \n \n const selectedData = selectedGroup.map(option => option.data || {});\n const totalAmount = selectedData.reduce(\n (total, appointment) => total + (parseFloat(appointment.dues) || 0),\n 0\n );\n this.setState({\n selectedAmount: totalAmount,\n amountExceedsLimit: false, // Reset the flag when a new lab is selected\n });\n \n // Auto-set the amount field\n this.setState({ amount: totalAmount || '0' });\n console.log(\"amount arahi h yah nahi\", selectedData, totalAmount);\n }}\n className={\n \"defautSelectParent\" +\n (!this.state.test_appointment_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.test_appointment_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={DonationAppointmentList}\n placeholder=\"Select Appointment...\"\n />\n\n
\n Please select Appointment\n
\n
)\n ) : null}\n\n {this.state.payment_for == \"B2BClient\" ? (\n outPayment.b2b_id ? (\n
\n \n \n \n {\n outPayment.business_name\n }\n \n \n
\n ) : (\n
\n \n \n this.setState({\n b2b_id:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.b2b_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.b2b_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={b2bList}\n placeholder=\"Select B2b...\"\n />\n\n
\n Please select B2BClient\n
\n
\n )\n\n ) : null}\n\n {/* {this.state.b2b_id ? (\n
\n \n {\n const selectedB2B = b2bList.find(b2b_id => b2b_id.value === selectedGroup.value);\n this.setState({\n b2b_id: selectedGroup.value,\n current_amount: selectedB2B.current_amount,\n });\n }}\n className=\"form-control\"\n readOnly={true}\n multiple={false}\n >\n \n \n
\n ) : null} */}\n\n\n\n \n this.handleAmountChange(e)}\n />\n {this.state.amountExceedsLimit && (\n \n Warning: The entered amount cannot exceed the Lab Payable Amount.\n \n )}\n\n\n\n\n \n \n this.setState({\n tax: e.target.value,\n })\n }\n />\n\n \n\n \n \n \n this.setState({\n payment_method: e.target.value,\n })\n }\n defaultValue={this.state.payment_method}\n className=\"form-select\"\n >\n \n --- Please select the Payment Type\n ---\n \n \n \n\n \n \n\n \n \n \n this.setState({\n cheque_no: e.target.value,\n })\n }\n />\n \n\n \n \n \n this.setState({\n payment_at:\n e.target.value,\n })\n }\n />\n \n\n {/* {outPayment.bank_id &&\n outPayment.bank_id ? (\n
\n \n Bank Name\n\n \n \n {\n outPayment.bank_name\n }\n \n \n
\n ) : (\n
\n \n Bank Name\n\n \n this.setState({\n bank_id:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.bank_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.bank_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={bankList}\n placeholder=\"Select Bank...\"\n />\n
\n Please select your Bank\n
\n
\n )} */}\n\n {isDonation ? (\n <>\n \n \n this.setState({\n bankaccount_id: selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.bankaccount_id ? \" is-invalid\" : \"\")\n }\n styles={{\n control: (base, state) => ({\n ...base,\n borderColor: !this.state.bankaccount_id ? \"#f46a6a\" : \"#ced4da\",\n }),\n }}\n options={bankaccountList}\n placeholder=\"Select Bank Account...\"\n />\n \n ) : (\n <>\n \n Bank Name\n \n this.setState({\n bankaccount_id: selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.bankaccount_id ? \" is-invalid\" : \"\")\n }\n styles={{\n control: (base, state) => ({\n ...base,\n borderColor: !this.state.bankaccount_id ? \"#f46a6a\" : \"#ced4da\",\n }),\n }}\n options={bankaccountList}\n placeholder=\"Select Bank Account...\"\n />\n )}\n\n {!isDonation && (\n
Please select your Bank Account
\n )}\n\n\n \n \n {\n this.setState({\n deposit_copy:\n e.target.files[0],\n });\n }}\n // className=\"form-control is-invalid\"\n className={\n \"form-control\" +\n (this.state.deposit_copy.length >\n 0 && !this.state.deposit_copy\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n\n\n\n {/* \n \n \n this.setState({\n is_cleared: e.target.value,\n })\n }\n defaultValue={this.state.is_cleared}\n className=\"form-select\"\n >\n \n --- Please select the Type\n ---\n \n \n \n\n \n */}\n\n \n \n \n this.setState({\n comments: e.target.value,\n })\n }\n />\n \n\n \n \n
\n \n Created{\" \"}\n \n
\n \n \n \n \n Pending Clearance\n \n \n
\n\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n );\n }\n}\n\nOutPaymentsForm.propTypes = {\n match: PropTypes.object,\n labsMof: PropTypes.array,\n listDonation: PropTypes.array,\n banks: PropTypes.array,\n bankAccounts: PropTypes.array,\n history: PropTypes.object,\n b2bClients: PropTypes.array,\n // units: PropTypes.array,\n outPayments: PropTypes.array,\n className: PropTypes.any,\n onGetlabsMof: PropTypes.func,\n onGetListDonationAppointment: PropTypes.func,\n onGetB2bClients: PropTypes.func,\n onGetOutPayment: PropTypes.func,\n // onGetUnits: PropTypes.func,\n onAddNewOutPayment: PropTypes.func,\n onGetbanks: PropTypes.func,\n onGetbankAccounts: PropTypes.func,\n onGetStaffProfile: PropTypes.func,\n staffProfiles: PropTypes.func,\n\n};\n\nconst mapStateToProps = ({ outPayments }) => ({\n outPayments: outPayments.outPayments,\n labsMof: outPayments.labsMof,\n listDonation: outPayments.listDonation,\n b2bClients: outPayments.b2bClients,\n banks: outPayments.banks,\n bankAccounts: outPayments.bankAccounts,\n staffProfiles: outPayments.staffProfiles,\n\n\n // units: outPayments.units,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetbanks: () => dispatch(getBanks()),\n onGetbankAccounts: () => dispatch(getBankAccounts()),\n onGetlabsMof: () => dispatch(getLabsMof()),\n onGetListDonationAppointment: () => dispatch(getListDonationAppointment()),\n onGetB2bClients: () => dispatch(getB2bClients()),\n onGetOutPayment: id => dispatch(getOutPayment(id)),\n onAddNewOutPayment: (outPayment, id) =>\n dispatch(addNewOutPayment(outPayment, id)),\n onGetStaffProfile: id => dispatch(getStaffProfile(id)),\n\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(OutPaymentsForm)); \n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter ,selectFilter} from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getPaymentOutStatuss,\n updatePaymentOutStatus,\n} from \"store/payment-statuss/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass PaymentStatussList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n paymentOutStatuss: [],\n paymentOutStatus: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n\n };\n this.handlePaymentStatusClick =\n this.handlePaymentStatusClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handlePaymentStatusClicks =\n this.handlePaymentStatusClicks.bind(this);\n }\n // The code for converting \"image source\" (url) to \"Base64\"\n // toDataURL = url =>\n // fetch(url)\n // .then(response => response.blob())\n // .then(\n // blob =>\n // new Promise((resolve, reject) => {\n // const reader = new FileReader();\n // reader.onloadend = () => resolve(reader.deposit_slip);\n // reader.onerror = reject;\n // reader.readAsDataURL(blob);\n // })\n // );\n\n // // The code for converting \"Base64\" to javascript \"File Object\"\n // dataURLtoFile = (dataurl, filename) => {\n // var arr = dataurl.split(\",\"),\n // mime = arr[0].match(/:(.*?);/)[1],\n // bstr = atob(arr[1]),\n // n = bstr.length,\n // u8arr = new Uint8Array(n);\n // while (n--) {\n // u8arr[n] = bstr.charCodeAt(n);\n // }\n // return new File([u8arr], filename, { type: mime });\n // };\n componentDidMount() {\n const { paymentOutStatuss, onGetPaymentOutStatuss } = this.props;\n onGetPaymentOutStatuss(this.state.user_id);\n this.setState({ paymentOutStatuss });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handlePaymentStatusClicks = () => {\n this.setState({\n paymentOutStatus: \"\",\n deposit_slip: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { paymentOutStatuss } = this.props;\n if (\n !isEmpty(paymentOutStatuss) &&\n size(prevProps.paymentOutStatuss) !== size(paymentOutStatuss)\n ) {\n this.setState({ paymentOutStatuss: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n\n handlePaymentStatusClick = (e, arg) => {\n this.setState({\n paymentOutStatus: {\n id: arg.id,\n // cleared_at: arg.cleared_at,\n is_cleared: arg.is_cleared,\n cleared_at: arg.cleared_at,\n status: arg.status,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n handleSelectChange = (event) => {\n const selectedValue = event.target.value;\n // Perform navigation based on the selected value\n if (selectedValue === 'Created') {\n this.props.history.push('/payment-out-created-status');\n }\n if (selectedValue === 'Pending Clearence') {\n this.props.history.push('/payment-out-pending-clearence-status');\n }\n if (selectedValue === 'Cleared') {\n this.props.history.push('/payment-out-clear-status');\n }\n if (selectedValue === 'Bounced') {\n this.props.history.push('/payment-out-bounced-status');\n }\n }\n\n render() {\n const columns= [\n {\n text: \"MOF ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n formatter: (cellContent, paymentOutStatus) => (\n <>{paymentOutStatus.id}\n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"invoice_id\",\n text: \"invoice ID\",\n sort: true,\n hidden: true,\n formatter: (cellContent, paymentOutStatus) => (\n <>\n {paymentOutStatus.invoice_id}\n \n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_method\",\n text: \"Payment Method\",\n sort: true,\n formatter: (cellContent, paymentOutStatus) => (\n <>\n {paymentOutStatus.payment_method}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_for\",\n text: \"Payment To\",\n sort: true,\n formatter: (cellContent, paymentOutStatus) => (\n <>\n {paymentOutStatus.payment_for}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"lab_name\",\n text: \"Client Name\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n \n \n {paymentCreatedStatus.lab_name}{\" \"}\n {paymentCreatedStatus.b2b_id}\n \n \n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_at\",\n text: \"Payment Date\",\n sort: true,\n formatter: (cellContent, paymentOutStatus) => {\n const date = new Date(paymentOutStatus.payment_at);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2); // Get the last 2 digits of the year\n \n return (\n

\n {`${day}-${month}-${year}`}\n

\n );\n },\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"cheque_no\",\n text: \"Cheque/Online Ref#\",\n sort: true,\n formatter: (cellContent, paymentOutStatus) => (\n <>\n \n \n {paymentOutStatus.cheque_no}\n\n \n\n \n\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"amount\",\n text: \"Payment\",\n sort: true,\n formatter: (cellContent, paymentOutStatus) => (\n <>\n
\n {Math.abs(paymentOutStatus.amount).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}
\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"bank\",\n text: \"Bank/Account#\",\n sort: true,\n formatter: (cellContent, paymentOutStatus) => (\n <>\n \n \n {paymentOutStatus.bank_name},{\" \"}\n {paymentOutStatus.account_no}\n \n \n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n // {\n // dataField: \"status\",\n // text: \"Status\",\n // sort: true,\n // },\n // {\n // dataField: \"deposit_copy\",\n // text: \"Deposite Copy\",\n // sort: true,\n // formatter: (cellContent, paymentOutStatus) => (\n // <>\n // \n // View\n // \n // \n // ),\n // },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, paymentOutStatus) => (\n
\n \n this.handlePaymentStatusClick(e, paymentOutStatus)}\n\n >\n Update\n \n\n
\n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Comments\",\n formatter: (cellContent, paymentOutStatus) => (\n \n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n ];\n const { SearchBar } = Search;\n\n const { paymentOutStatuss } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onUpdatePaymentOutStatus,\n onGetPaymentOutStatuss,\n } = this.props;\n const paymentOutStatus = this.state.paymentOutStatus;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: this.props.paymentOutStatuss.length, // Replace with the actual data length\n custom: true,\n };\n \n // Check if there are items in the paymentOutStatuss array\n const hasData = paymentOutStatuss && paymentOutStatuss.length > 0;\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n MOF List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n \n \n \n \n \n \n \n
\n \n
\n \n \n
\n \n\n \n \n {!!isEdit\n ? \"UpdateMOF\"\n : \"Add Quality Certificate\"}\n \n \n \n hiddenEditFlag == false, //just an e.g. you can return a function\n then: Yup.string().required(\n \"Please upload Payment Slip\"\n ),\n }\n ),\n // Validation for logo based on type value\n // type: Yup.string(),\n // logo: Yup.mixed().test(\n // \"required\",\n // \"Please upload logo\",\n // ),\n\n \n })}\n onSubmit={values => {\n const updatePaymentOutStatus =\n {\n id: paymentOutStatus.id,\n // cleared_at:\n // values.cleared_at,\n is_cleared: values.is_cleared,\n cleared_at: values.cleared_at,\n \n // comments:\n // values.comments,\n \n };\n\n // update PaymentStatus\n onUpdatePaymentOutStatus(\n updatePaymentOutStatus\n );\n setTimeout(() => {\n onGetPaymentOutStatuss(\n this.state.user_id\n );\n }, 1000);\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n \n {/* payments out pending clearence field */}\n\n
\n \n {\n this.setState({\n paymentOutStatus: {\n id: paymentOutStatus.id,\n // deposit_bank:\n // paymentOutStatus.deposit_bank,\n // // deposited_at: paymentOutStatus.deposit_bank,\n cleared_at: paymentOutStatus.cleared_at,\n is_cleared :\n e.target.value,\n },\n });\n }}\n multiple={false}\n value={\n this.state\n .paymentOutStatus\n .is_cleared\n }\n >\n \n \n \n \n \n \n \n
\n\n {this.state.paymentOutStatus.is_cleared == \"Yes\" ? (\n
\n\n \n {\n this.setState({\n paymentOutStatus: {\n id: paymentOutStatus.id,\n is_cleared: paymentOutStatus.is_cleared,\n cleared_at: e.target.value,\n },\n });\n }}\n />\n
\n ) : null}\n\n \n
\n \n \n
\n \n Submit\n \n
\n \n
\n
\n )}\n \n
\n \n
\n \n
\n {hasData && (\n \n \n \n \n \n )}\n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nPaymentStatussList.propTypes = {\n match: PropTypes.object,\n paymentOutStatuss: PropTypes.array,\n className: PropTypes.any,\n onGetPaymentOutStatuss: PropTypes.func,\n onUpdatePaymentOutStatus: PropTypes.func,\n history: PropTypes.any,\n\n};\n\nconst mapStateToProps = ({ paymentStatuss }) => ({\n paymentOutStatuss: paymentStatuss.paymentOutStatuss,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetPaymentOutStatuss: id => dispatch(getPaymentOutStatuss(id)),\n onUpdatePaymentOutStatus: paymentOutStatus =>\n dispatch(updatePaymentOutStatus(paymentOutStatus)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PaymentStatussList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect, createDispatchHook } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter ,selectFilter} from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getCreatedOutStatuss,\n updatePaymentOutCreatedStatuss,\n deletePaymentout,\n} from \"store/payment-statuss/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass PathologistsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n paymentCreatedStatuss: [],\n paymentCreatedStatus: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n\n };\n this.handleCreateClick = this.handleCreateClick.bind(this);\n this.handleSubmitClick = this.handleSubmitClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n componentDidMount() {\n const { paymentCreatedStatuss, onGetCreatedOutStatuss } = this.props;\n onGetCreatedOutStatuss(this.state.user_id);\n this.setState({ paymentCreatedStatuss });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { paymentCreatedStatuss } = this.props;\n if (\n !isEmpty(paymentCreatedStatuss) &&\n size(prevProps.paymentCreatedStatuss) !== size(paymentCreatedStatuss)\n ) {\n this.setState({ paymentCreatedStatuss: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = paymentCreatedStatuss => {\n this.setState({ paymentCreatedStatuss: paymentCreatedStatuss });\n this.setState({ deleteModal: true });\n };\n\n // The code for converting \"image source\" (url) to \"Base64\"\n toDataURL = url =>\n fetch(url)\n .then(response => response.blob())\n .then(\n blob =>\n new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.onerror = reject;\n reader.readAsDataURL(blob);\n })\n );\n\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n handleDeletePathologist = () => {\n const { onDeletePaymentout, onGetCreatedOutStatuss } = this.props;\n const { paymentCreatedStatuss } = this.state;\n if (paymentCreatedStatuss.id !== undefined) {\n onDeletePaymentout(paymentCreatedStatuss);\n setTimeout(() => {\n onGetCreatedOutStatuss(this.state.user_id);\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n handleSubmitClick = (e, arg) => {\n const paymentCreatedStatus = arg;\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n deposit_copy: process.env.REACT_APP_BACKENDURL + paymentCreatedStatus.deposit_copy,\n payment_for: paymentCreatedStatus.payment_for,\n lab_id: paymentCreatedStatus.lab_id,\n b2b_id: paymentCreatedStatus.b2b_id,\n bankaccount_id: paymentCreatedStatus.bankaccount_id,\n amount: paymentCreatedStatus.amount,\n payment_at: paymentCreatedStatus.payment_at,\n payment_method: paymentCreatedStatus.payment_method,\n cheque_no: paymentCreatedStatus.cheque_no,\n status: \"Pending Clearance\",\n comments: paymentCreatedStatus.comments,\n },\n deposit_copy: \"\",\n isEdit: true,\n });\n\n this.toggle();\n };\n\n handleCreateClick = (e, arg) => {\n const paymentCreatedStatus = arg;\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n deposit_copy: process.env.REACT_APP_BACKENDURL + paymentCreatedStatus.deposit_copy,\n payment_for: paymentCreatedStatus.payment_for,\n lab_id: paymentCreatedStatus.lab_id,\n b2b_id: paymentCreatedStatus.b2b_id,\n bankaccount_id: paymentCreatedStatus.bankaccount_id,\n amount: paymentCreatedStatus.amount,\n payment_at: paymentCreatedStatus.payment_at,\n payment_method: paymentCreatedStatus.payment_method,\n cheque_no: paymentCreatedStatus.cheque_no,\n status: \"Created\",\n comments: paymentCreatedStatus.comments,\n },\n deposit_copy: \"\",\n isEdit: true,\n });\n\n this.toggle();\n };\n\n handleSelectChange = (event) => {\n const selectedValue = event.target.value;\n // Perform navigation based on the selected value\n if (selectedValue === 'Created') {\n this.props.history.push('/payment-out-created-status');\n }\n if (selectedValue === 'Pending Clearence') {\n this.props.history.push('/payment-out-pending-clearence-status');\n }\n if (selectedValue === 'Cleared') {\n this.props.history.push('/payment-out-clear-status');\n }\n if (selectedValue === 'Bounced') {\n this.props.history.push('/payment-out-bounced-status');\n }\n }\n\n render() {\n const columns= [\n {\n text: \"MOF ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n {paymentCreatedStatus.id}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_for\",\n text: \"Payment From\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n {paymentCreatedStatus.payment_for}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n \n {\n dataField: \"lab_name\",\n text: \"Client Name\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n \n \n {paymentCreatedStatus.lab_name}{\" \"}\n {paymentCreatedStatus.business_name}\n \n \n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n // {\n // dataField: \"b2b_id\",\n // text: \"B2b Name\",\n // sort: true,\n // },\n {\n dataField: \"payment_method\",\n text: \"Payment Type.\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n {paymentCreatedStatus.payment_method}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"cheque_no\",\n text: \"Cheque/Online Ref#\",\n sort: true,\n formatter: (cellContent, paymentOutStatus) => (\n <>\n \n \n {paymentOutStatus.cheque_no}\n\n \n\n \n\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_at\",\n text: \"Deposite Date\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => {\n const date = new Date(paymentCreatedStatus.payment_at);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2); // Get the last 2 digits of the year\n \n return (\n

\n {`${day}-${month}-${year}`}\n

\n );\n },\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"amount\",\n text: \"Payment\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n
\n {paymentCreatedStatus && typeof paymentCreatedStatus.amount !== 'undefined' ? (\n {Math.abs(paymentCreatedStatus.amount).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n ) : (\n N/A // or any default value you want to display when amount is undefined\n )}\n
\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"bank\",\n text: \"Bank/Account#\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n \n \n {paymentCreatedStatus.bank_name},{\" \"}\n {paymentCreatedStatus.bank_account_no}\n \n \n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n \n // {\n // dataField: \"status\",\n // text: \"Status\",\n // sort: true,\n // },\n // {\n // dataField: \"deposit_copy\",\n // text: \"Deposite Copy\",\n // sort: true,\n // formatter: (cellContent, paymentCreatedStatus) => (\n // <>\n // \n // View\n // \n // \n // ),\n // },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, paymentCreatedStatus) => (\n
\n this.handleCreateClick(e, paymentCreatedStatus)}\n\n >\n Edit\n \n\n this.handleSubmitClick(e, paymentCreatedStatus)}\n\n >\n Update\n \n this.onClickDelete(paymentCreatedStatus)}\n\n >\n Delete\n \n
\n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Comments\",\n formatter: (cellContent, paymentCreatedStatus) => (\n \n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n ];\n const { SearchBar } = Search;\n\n const { paymentCreatedStatuss } = this.props;\n\n const { isEdit, deleteModal, status } = this.state;\n\n\n const { onUpdatePaymentOutCreatedStatuss, onGetCreatedOutStatuss } =\n this.props;\n const paymentCreatedStatus = this.state.paymentCreatedStatus;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: this.props.paymentCreatedStatuss.length, // Replace with the actual data length\n custom: true,\n };\n \n // Check if there are items in the paymentCreatedStatuss array\n const hasData = paymentCreatedStatuss && paymentCreatedStatuss.length > 0;\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n this.setState({ deleteModal: false })}\n />\n
\n \n MOF List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n \n \n \n \n \n
\n
\n \n\n
\n \n \n
\n \n\n \n \n {!!isEdit\n ? \"UpdateMOF\"\n : \"Add Pathologist\"}\n \n \n \n // hiddenEditFlag == false, //just an e.g. you can return a function\n // then: Yup.string().required(\n // \"Please upload deposit_copy\"\n // ),\n // }\n // ),\n })}\n onSubmit={values => {\n if (isEdit) {\n if (!this.state.deposit_copy) {\n this.toDataURL(\n paymentCreatedStatus.deposit_copy\n ).then(dataUrl => {\n var fileData =\n this.dataURLtoFile(\n dataUrl,\n paymentCreatedStatus.deposit_copy\n .split(\"/\")\n .at(-1)\n );\n this.setState({\n deposit_copy: fileData,\n });\n\n const updatePaymentOutCreatedStatuss = {\n id: paymentCreatedStatus.id,\n deposit_copy: this.state.deposit_copy,\n amount: values.amount,\n payment_at: values.payment_at,\n cheque_no: values.cheque_no,\n comments: values.comments,\n payment_for:\n values.payment_for,\n lab_id:\n values.lab_id,\n b2b_id:\n values.b2b_id,\n bankaccount_id:\n values.bankaccount_id,\n status:\n values.status,\n payment_method:\n values.payment_method,\n // payment_method:\n // values.payment_method,\n };\n // update QualityCertificate\n onUpdatePaymentOutCreatedStatuss(\n updatePaymentOutCreatedStatuss\n );\n setTimeout(() => {\n onGetCreatedOutStatuss(\n this.state.user_id\n );\n }, 1000);\n });\n } else {\n const updatePaymentOutCreatedStatuss = {\n id: paymentCreatedStatus.id,\n deposit_copy: this.state.deposit_copy,\n amount: values.amount,\n payment_at: values.payment_at,\n cheque_no: values.cheque_no,\n comments: values.comments,\n payment_for:\n values.payment_for,\n lab_id:\n values.lab_id,\n b2b_id:\n values.b2b_id,\n bankaccount_id:\n values.bankaccount_id,\n status:\n values.status,\n payment_method:\n values.payment_method,\n // payment_method:\n // values.payment_method,\n };\n\n // update Pathologist\n onUpdatePaymentOutCreatedStatuss(\n updatePaymentOutCreatedStatuss\n );\n setTimeout(() => {\n onGetCreatedOutStatuss(\n this.state.user_id\n );\n }, 1000);\n }\n }\n\n this.setState({\n // selectedPathologist: null,\n });\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n \n\n\n
\n \n {\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n lab_id:\n paymentCreatedStatus.lab_id,\n b2b_id:\n paymentCreatedStatus.b2b_id,\n invoice_id:\n paymentCreatedStatus.invoice_id,\n payment_for:\n e.target\n .value,\n\n payment_method:\n paymentCreatedStatus.payment_method,\n amount:\n paymentCreatedStatus.amount,\n payment_at:\n paymentCreatedStatus.payment_at,\n cheque_no: paymentCreatedStatus.cheque_no,\n bank_id:\n paymentCreatedStatus.bank_id,\n deposit_copy:\n paymentCreatedStatus.deposit_copy,\n is_cleared:\n paymentCreatedStatus.is_cleared,\n cleared_at: paymentCreatedStatus.cleared_at,\n bankaccount_id:\n paymentCreatedStatus.bankaccount_id,\n status: paymentCreatedStatus.status,\n comments:\n paymentCreatedStatus.comments,\n\n },\n });\n }}\n >\n \n \n \n \n\n \n\n {/* \n \n Note: Your contact\n information will be\n shared publicly for\n consultation of the\n patients with you if you\n select YES.\n \n */}\n
\n\n
\n \n {\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n lab_id:\n paymentCreatedStatus.lab_id,\n b2b_id:\n paymentCreatedStatus.b2b_id,\n invoice_id:\n paymentCreatedStatus.invoice_id,\n amount:\n e.target\n .value,\n\n payment_method:\n paymentCreatedStatus.payment_method,\n payment_for:\n paymentCreatedStatus.payment_for,\n payment_at:\n paymentCreatedStatus.payment_at,\n cheque_no: paymentCreatedStatus.cheque_no,\n bank_id:\n paymentCreatedStatus.bank_id,\n deposit_copy:\n paymentCreatedStatus.deposit_copy,\n is_cleared:\n paymentCreatedStatus.is_cleared,\n cleared_at: paymentCreatedStatus.cleared_at,\n bankaccount_id:\n paymentCreatedStatus.bankaccount_id,\n status: paymentCreatedStatus.status,\n comments:\n paymentCreatedStatus.comments,\n\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.amount &&\n touched.amount\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n
\n \n Payment Date\n \n {\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n lab_id:\n paymentCreatedStatus.lab_id,\n b2b_id:\n paymentCreatedStatus.b2b_id,\n invoice_id:\n paymentCreatedStatus.invoice_id,\n payment_at:\n e.target\n .value,\n\n payment_method:\n paymentCreatedStatus.payment_method,\n amount:\n paymentCreatedStatus.amount,\n cheque_no:\n paymentCreatedStatus.cheque_no,\n payment_for: paymentCreatedStatus.payment_for,\n bank_id:\n paymentCreatedStatus.bank_id,\n deposit_copy:\n paymentCreatedStatus.deposit_copy,\n is_cleared:\n paymentCreatedStatus.is_cleared,\n cleared_at: paymentCreatedStatus.cleared_at,\n bankaccount_id:\n paymentCreatedStatus.bankaccount_id,\n status: paymentCreatedStatus.status,\n comments:\n paymentCreatedStatus.comments,\n\n },\n });\n }}\n min={new Date(\n new Date().toString().split(\"GMT\")[0] +\n \" UTC\"\n )\n .toISOString()\n .slice(0, -8)}\n className=\"form-control\"\n // onChange={e =>\n // this.setState({\n // payment_at:\n // e.target.value,\n // })\n // }\n />\n
\n\n
\n \n {\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n lab_id:\n paymentCreatedStatus.lab_id,\n b2b_id:\n paymentCreatedStatus.b2b_id,\n invoice_id:\n paymentCreatedStatus.invoice_id,\n cheque_no:\n e.target\n .value,\n\n payment_method:\n paymentCreatedStatus.payment_method,\n payment_for:\n paymentCreatedStatus.payment_for,\n payment_at:\n paymentCreatedStatus.payment_at,\n comments: paymentCreatedStatus.comments,\n bank_id:\n paymentCreatedStatus.bank_id,\n deposit_copy:\n paymentCreatedStatus.deposit_copy,\n is_cleared:\n paymentCreatedStatus.is_cleared,\n cleared_at: paymentCreatedStatus.cleared_at,\n bankaccount_id:\n paymentCreatedStatus.bankaccount_id,\n status: paymentCreatedStatus.status,\n amount:\n paymentCreatedStatus.amount,\n\n },\n });\n }}\n />\n
\n\n
\n \n Deposite Copy\n \n *\n \n \n \n this.setState({\n deposit_copy:\n e.target.files[0],\n })\n }\n className={\n \"form-control\" +\n (errors.deposit_copy &&\n touched.deposit_copy\n ? \" is-invalid\"\n : \"\")\n }\n />\n\n \n
\n\n
\n \n {\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n lab_id:\n paymentCreatedStatus.lab_id,\n b2b_id:\n paymentCreatedStatus.b2b_id,\n invoice_id:\n paymentCreatedStatus.invoice_id,\n payment_method:\n e.target\n .value,\n\n comments:\n paymentCreatedStatus.comments,\n payment_for:\n paymentCreatedStatus.payment_for,\n payment_at:\n paymentCreatedStatus.payment_at,\n cheque_no: paymentCreatedStatus.cheque_no,\n bank_id:\n paymentCreatedStatus.bank_id,\n deposit_copy:\n paymentCreatedStatus.deposit_copy,\n is_cleared:\n paymentCreatedStatus.is_cleared,\n cleared_at: paymentCreatedStatus.cleared_at,\n bankaccount_id:\n paymentCreatedStatus.bankaccount_id,\n status: paymentCreatedStatus.status,\n amount:\n paymentCreatedStatus.amount,\n\n },\n });\n }}\n >\n \n ----- Please select\n Type -----\n \n \n \n \n
\n\n
\n \n {\n this.setState({\n paymentCreatedStatus: {\n id: paymentCreatedStatus.id,\n lab_id:\n paymentCreatedStatus.lab_id,\n b2b_id:\n paymentCreatedStatus.b2b_id,\n invoice_id:\n paymentCreatedStatus.invoice_id,\n comments:\n e.target\n .value,\n\n payment_method:\n paymentCreatedStatus.payment_method,\n payment_for:\n paymentCreatedStatus.payment_for,\n payment_at:\n paymentCreatedStatus.payment_at,\n cheque_no: paymentCreatedStatus.cheque_no,\n bank_id:\n paymentCreatedStatus.bank_id,\n deposit_copy:\n paymentCreatedStatus.deposit_copy,\n is_cleared:\n paymentCreatedStatus.is_cleared,\n cleared_at: paymentCreatedStatus.cleared_at,\n bankaccount_id:\n paymentCreatedStatus.bankaccount_id,\n status: paymentCreatedStatus.status,\n amount:\n paymentCreatedStatus.amount,\n\n },\n });\n }}\n />\n \n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n
\n \n
\n {hasData && (\n \n \n \n \n \n )}\n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nPathologistsList.propTypes = {\n match: PropTypes.object,\n className: PropTypes.any,\n onGetCreatedOutStatuss: PropTypes.func,\n paymentCreatedStatuss: PropTypes.array,\n onDeletePaymentout: PropTypes.func,\n onUpdatePaymentOutCreatedStatuss: PropTypes.func,\n history: PropTypes.any,\n\n};\n\nconst mapStateToProps = ({ paymentStatuss }) => ({\n paymentCreatedStatuss: paymentStatuss.paymentCreatedStatuss,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetCreatedOutStatuss: id => dispatch(getCreatedOutStatuss(id)),\n onUpdatePaymentOutCreatedStatuss: paymentCreatedStatus => dispatch(updatePaymentOutCreatedStatuss(paymentCreatedStatus)),\n onDeletePaymentout: paymentCreatedStatus => dispatch(deletePaymentout(paymentCreatedStatus)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PathologistsList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter ,selectFilter} from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getPaymentOutClearStatuss,\n} from \"store/payment-statuss/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass PaymentStatussList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n paymentStatuss: [],\n paymentStatus: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n\n };\n this.toggle = this.toggle.bind(this);\n // this.handlePaymentStatusClicks =\n // this.handlePaymentStatusClicks.bind(this);\n }\n\n componentDidMount() {\n const { paymentStatuss, onGetPaymentOutClearStatuss } = this.props;\n onGetPaymentOutClearStatuss(this.state.user_id);\n this.setState({ paymentStatuss });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { paymentStatuss } = this.props;\n if (\n !isEmpty(paymentStatuss) &&\n size(prevProps.paymentStatuss) !== size(paymentStatuss)\n ) {\n this.setState({ paymentStatuss: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n handleSelectChange = (event) => {\n const selectedValue = event.target.value;\n // Perform navigation based on the selected value\n if (selectedValue === 'Created') {\n this.props.history.push('/payment-out-created-status');\n }\n if (selectedValue === 'Pending Clearence') {\n this.props.history.push('/payment-out-pending-clearence-status');\n }\n if (selectedValue === 'Cleared') {\n this.props.history.push('/payment-out-clear-status');\n }\n if (selectedValue === 'Bounced') {\n this.props.history.push('/payment-out-bounced-status');\n }\n }\n\n render() {\n const columns= [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, paymentStatus) => (\n <>{paymentStatus.id}\n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n text: \"MOF ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n formatter: (cellContent, paymentStatus) => (\n <>{paymentStatus.id}\n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"invoice_id\",\n text: \"invoice ID\",\n sort: true,\n hidden: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.invoice_id}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n \n },\n {\n dataField: \"payment_method\",\n text: \"Payment Method\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.payment_method}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_for\",\n text: \"Payment To\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.payment_for}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"lab_name\",\n text: \"Client Name\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n \n \n {paymentStatus.lab_name}{\" \"}\n {paymentStatus.donor_name}\n {paymentStatus.advertisement_title}\n\n \n \n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"amount\",\n text: \"Amount\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n
\n {Math.abs(paymentStatus.amount).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}
\n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"cheque_no\",\n text: \"Cheque/Online Ref#\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n \n \n {paymentStatus.cheque_no}\n\n \n\n \n\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n // {\n // dataField: \"deposited_at\",\n // text: \"Deposited Date\",\n // sort: true,\n // },\n \n {\n dataField: \"bank\",\n text: \"Bank/Account#\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n \n \n {paymentStatus.bank_name},{\" \"}\n {paymentStatus.account_no}\n \n \n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n \n // {\n // dataField: \"is_settled\",\n // text: \"Is Settled\",\n // sort: true,\n // },\n // {\n // dataField: \"verified_by\",\n // text: \"Verified By\",\n // sort: true,\n // },\n {\n dataField: \"cleared_at\",\n text: \"Cleared Date\",\n sort: true,\n formatter: (cellContent, approvedInPayment) => {\n const date = new Date(approvedInPayment.cleared_at);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2); // Get the last 2 digits of the year\n \n return (\n

\n {`${day}-${month}-${year}`}\n

\n );\n },\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n // {\n // dataField: \"deposit_slip\",\n // text: \"Slip\",\n // sort: true,\n // formatter: (cellContent, approvedInPayment) => (\n // <>\n // \n // View Slip\n // \n // \n // ),\n // },\n // {\n // dataField: \"status\",\n // text: \"Status\",\n // sort: true,\n // },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Comments\",\n formatter: (cellContent, approvedInPayment) => (\n \n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n ];\n const { SearchBar } = Search;\n\n const { paymentStatuss } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onGetPaymentOutClearStatuss,\n } = this.props;\n const paymentStatus = this.state.paymentStatus;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: this.props.paymentStatuss.length, // Replace with the actual data length\n custom: true,\n };\n \n // Check if there are items in the paymentStatuss array\n const hasData = paymentStatuss && paymentStatuss.length > 0;\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n MOF List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n \n \n \n \n \n \n \n
\n \n
\n \n \n
\n \n
\n \n
\n {hasData && (\n \n \n \n \n \n )}\n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nPaymentStatussList.propTypes = {\n match: PropTypes.object,\n paymentStatuss: PropTypes.array,\n className: PropTypes.any,\n onGetPaymentOutClearStatuss: PropTypes.func,\n history: PropTypes.any,\n\n};\n\nconst mapStateToProps = ({ paymentStatuss }) => ({\n paymentStatuss: paymentStatuss.paymentStatuss,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetPaymentOutClearStatuss: id => dispatch(getPaymentOutClearStatuss(id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PaymentStatussList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect, createDispatchHook } from \"react-redux\";\nimport Select from \"react-select\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n FormGroup,\n CardTitle,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter ,selectFilter} from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\n// import {\n// addNewOutPayment,\n// } from \"store/outpayments/actions\";\nimport {\n getLabs,\n getBankAccounts,\n\n // addNewOutPayment,\n getBouncedStatuss,\n updatePaymentOutCreatedStatuss,\n} from \"store/payment-statuss/actions\";\nimport {\n addNewOutPayment,\n} from \"store/outpayments/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass paymentCreatedList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n paymentBouncedStatuss: [],\n paymentBouncedStatus: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n\n };\n this.handleCreateClick = this.handleCreateClick.bind(this);\n this.handleSubmitClick = this.handleSubmitClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handlePaymentStatusClicks =\n this.handlePaymentStatusClicks.bind(this);\n }\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n \n componentDidMount() {\n const { labs, onGetlabs } = this.props;\n if (labs && !labs.length) {\n onGetlabs();\n }\n this.setState({ labs });\n\n const { bankAccounts, onGetbankAccounts } = this.props;\n if (bankAccounts && !bankAccounts.length) {\n onGetbankAccounts();\n }\n this.setState({ bankAccounts });\n\n\n const { paymentBouncedStatuss, onGetBouncedStatuss } = this.props;\n onGetBouncedStatuss(this.state.user_id);\n this.setState({ paymentBouncedStatuss });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handlePaymentStatusClicks = () => {\n this.setState({\n paymentBouncedStatus: \"\",\n deposit_slip: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n\n const { paymentBouncedStatuss } = this.props;\n if (\n !isEmpty(paymentBouncedStatuss) &&\n size(prevProps.paymentBouncedStatuss) !== size(paymentBouncedStatuss)\n ) {\n this.setState({ paymentBouncedStatuss: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n // The code for converting \"image source\" (url) to \"Base64\"\n toDataURL = url =>\n fetch(url)\n .then(response => response.blob())\n .then(\n blob =>\n new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.onerror = reject;\n reader.readAsDataURL(blob);\n })\n );\n\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n handleSubmitClick = (e, arg) => {\n const paymentBouncedStatus = arg;\n this.setState({\n paymentBouncedStatus: {\n id: paymentBouncedStatus.id,\n deposit_copy: process.env.REACT_APP_BACKENDURL + paymentBouncedStatus.deposit_copy,\n payment_for: paymentBouncedStatus.payment_for,\n lab_id: paymentBouncedStatus.lab_id,\n b2b_id: paymentBouncedStatus.b2b_id,\n bankaccount_id: paymentBouncedStatus.bankaccount_id,\n amount: paymentBouncedStatus.amount,\n payment_at: paymentBouncedStatus.payment_at,\n payment_method: paymentBouncedStatus.payment_method,\n cheque_no: paymentBouncedStatus.cheque_no,\n status: \"Pending Clearance\",\n comments: paymentBouncedStatus.comments,\n },\n deposit_copy: \"\",\n isEdit: true,\n });\n\n this.toggle();\n };\n\n handleCreateClick = (e, arg) => {\n const paymentBouncedStatus = arg;\n this.setState({\n paymentBouncedStatus: {\n id: paymentBouncedStatus.id,\n deposit_copy: process.env.REACT_APP_BACKENDURL + paymentBouncedStatus.deposit_copy,\n payment_for: paymentBouncedStatus.payment_for,\n lab_id: paymentBouncedStatus.lab_id,\n b2b_id: paymentBouncedStatus.b2b_id,\n bankaccount_id: paymentBouncedStatus.bankaccount_id,\n amount: paymentBouncedStatus.amount,\n payment_at: paymentBouncedStatus.payment_at,\n payment_method: paymentBouncedStatus.payment_method,\n cheque_no: paymentBouncedStatus.cheque_no,\n status: \"Created\",\n comments: paymentBouncedStatus.comments,\n },\n deposit_copy: \"\",\n isEdit: true,\n });\n\n this.toggle();\n };\n\n handleSelectChange = (event) => {\n const selectedValue = event.target.value;\n // Perform navigation based on the selected value\n if (selectedValue === 'Created') {\n this.props.history.push('/payment-out-created-status');\n }\n if (selectedValue === 'Pending Clearence') {\n this.props.history.push('/payment-out-pending-clearence-status');\n }\n if (selectedValue === 'Cleared') {\n this.props.history.push('/payment-out-clear-status');\n }\n if (selectedValue === 'Bounced') {\n this.props.history.push('/payment-out-bounced-status');\n }\n }\n\n render() {\n const columns= [\n {\n text: \"MOF ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n formatter: (cellContent, paymentBouncedStatus) => (\n <>{paymentBouncedStatus.id}\n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"invoice_id\",\n text: \"Invoice ID\",\n sort: true,\n hidden: true,\n formatter: (cellContent, paymentBouncedStatus) => (\n <>\n {paymentBouncedStatus.invoice_id}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_method\",\n text: \"Payment Method\",\n sort: true,\n formatter: (cellContent, paymentBouncedStatus) => (\n <>\n {paymentBouncedStatus.payment_method}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n // {\n // dataField: \"payment_for\",\n // text: \"Payment To\",\n // sort: true,\n // formatter: (cellContent, paymentBouncedStatus) => {\n // const date = new Date(paymentBouncedStatus.payment_for);\n // const day = date.getDate();\n // const month = date.getMonth() + 1; // Adding 1 to get the correct month\n // const year = date.getFullYear();\n \n // return (\n //

\n // {`${day}/${month}/${year}`}\n //

\n // );\n // },filter: textFilter(),\n // },\n {\n dataField: \"lab_name\",\n text: \"Client Name\",\n sort: true,\n formatter: (cellContent, paymentBouncedStatus) => (\n <>\n \n \n {paymentBouncedStatus.lab_name}{\" \"}\n {paymentBouncedStatus.b2b_id}\n \n \n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_at\",\n text: \"Payment Date\",\n sort: true,\n formatter: (cellContent, paymentBouncedStatus) => (\n <>\n {paymentBouncedStatus.payment_at}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"cheque_no\",\n text: \"Cheque/Online Ref#\",\n sort: true,\n formatter: (cellContent, paymentBouncedStatus) => (\n <>\n \n \n {paymentBouncedStatus.cheque_no}\n\n \n\n \n\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"amount\",\n text: \"Payment\",\n sort: true,\n formatter: (cellContent, paymentBouncedStatus) => (\n <>\n {Math.abs(paymentBouncedStatus.amount).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n // {\n // dataField: \"bank\",\n // text: \"Bank/Account#\",\n // sort: true,\n // formatter: (cellContent, paymentBouncedStatus) => (\n // <>\n // \n // \n // {paymentBouncedStatus.bank_name},{\" \"}\n // {paymentBouncedStatus.account_no}\n // \n // \n // \n // ),filter: textFilter(),\n // },\n \n {\n dataField: \"is_cleared\",\n text: \"Cleared\",\n sort: true,\n formatter: (cellContent, paymentBouncedStatus) => (\n <>\n {paymentBouncedStatus.is_cleared}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"cleared_at\",\n text: \"Cleared Date\",\n sort: true,\n formatter: (cellContent, paymentBouncedStatus) => {\n const date = new Date(paymentBouncedStatus.cleared_at);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2); // Get the last 2 digits of the year\n \n return (\n

\n {`${day}-${month}-${year}`}\n

\n );\n },\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n // {\n // dataField: \"deposit_copy\",\n // text: \"Deposite Copy\",\n // sort: true,\n // formatter: (cellContent, paymentBouncedStatus) => (\n // <>\n // \n // View\n // \n // \n // ),\n // },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, paymentBouncedStatus) => (\n
\n \n \n this.handleCreateClick(e, paymentBouncedStatus)}\n\n >\n Edit\n \n\n this.handleSubmitClick(e, paymentBouncedStatus)}\n\n >\n Update\n \n\n
\n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Comments\",\n formatter: (cellContent, paymentBouncedStatus) => (\n \n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n ];\n const { SearchBar } = Search;\n const { labs } = this.props;\n\n const { paymentBouncedStatuss } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onAddNewOutPayment,\n onUpdatePaymentOutCreatedStatuss,\n onGetBouncedStatuss,\n } = this.props;\n const paymentBouncedStatus = this.state.paymentBouncedStatus;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: this.props.paymentBouncedStatuss.length, // Replace with the actual data length\n custom: true,\n };\n \n // Check if there are items in the paymentBouncedStatuss array\n const hasData = paymentBouncedStatuss && paymentBouncedStatuss.length > 0;\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n const labList = [];\n for (let i = 0; i < labs.length; i++) {\n let flag = 0;\n // for (let j = 0; j < paymentBouncedStatuss.length; j++) {\n // if (labs[i].id == paymentBouncedStatuss[j].lab_id) {\n // flag = 1;\n // }\n // }\n if (!flag) {\n labList.push({\n label: labs[i].name,\n value: labs[i].id,\n });\n }\n }\n\n const { bankAccounts } = this.props;\n const bankaccountList = [];\n for (let i = 0; i < bankAccounts.length; i++) {\n let flag = 0;\n // for (let j = 0; j < bankAccounts.length; j++) {\n // if (banks[i].id == bankAccounts[j].bank_id) {\n // flag = 1;\n // }\n // }\n if (!flag) {\n bankaccountList.push({\n label: bankAccounts[i].account_no,\n value: bankAccounts[i].id,\n });\n }\n }\n\n return (\n \n
\n \n MOF List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n \n \n \n \n \n \n \n
\n \n
\n \n \n
\n \n \n \n {!!isEdit\n ? \"UpdateMOF\"\n : \"Add Quality Certificate\"}\n \n \n \n // hiddenEditFlag == false, //just an e.g. you can return a function\n // then: Yup.string().required(\n // \"Please upload Payment Slip\"\n // ),\n // }\n // ),\n // Validation for logo based on type value\n // type: Yup.string(),\n // logo: Yup.mixed().test(\n // \"required\",\n // \"Please upload logo\",\n // ),\n\n\n })}\n onSubmit={values => {\n if (isEdit) {\n if (!this.state.deposit_copy) {\n this.toDataURL(\n paymentBouncedStatus.deposit_copy\n ).then(dataUrl => {\n var fileData =\n this.dataURLtoFile(\n dataUrl,\n paymentBouncedStatus.deposit_copy\n .split(\"/\")\n .at(-1)\n );\n this.setState({\n deposit_copy: fileData,\n });\n\n const updatePaymentOutCreatedStatuss = {\n id: paymentBouncedStatus.id,\n deposit_copy: this.state.deposit_copy,\n amount: values.amount,\n payment_at: values.payment_at,\n cheque_no: values.cheque_no,\n comments: values.comments,\n payment_for:\n values.payment_for,\n lab_id:\n values.lab_id,\n b2b_id:\n values.b2b_id,\n bankaccount_id:\n values.bankaccount_id,\n status:\n values.status,\n payment_method:\n values.payment_method,\n // payment_method:\n // values.payment_method,\n };\n // update QualityCertificate\n onUpdatePaymentOutCreatedStatuss(\n updatePaymentOutCreatedStatuss\n );\n setTimeout(() => {\n onGetBouncedStatuss(\n this.state.user_id\n );\n }, 1000);\n });\n } else {\n const updatePaymentOutCreatedStatuss = {\n id: paymentBouncedStatus.id,\n deposit_copy: this.state.deposit_copy,\n amount: values.amount,\n payment_at: values.payment_at,\n cheque_no: values.cheque_no,\n comments: values.comments,\n payment_for:\n values.payment_for,\n lab_id:\n values.lab_id,\n b2b_id:\n values.b2b_id,\n bankaccount_id:\n values.bankaccount_id,\n status:\n values.status,\n payment_method:\n values.payment_method,\n // payment_method:\n // values.payment_method,\n };\n\n // update Pathologist\n onUpdatePaymentOutCreatedStatuss(\n updatePaymentOutCreatedStatuss\n );\n setTimeout(() => {\n onGetBouncedStatuss(\n this.state.user_id\n );\n }, 1000);\n }\n }\n\n this.setState({\n // selectedPathologist: null,\n });\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n \n\n
\n \n \n \n this.setState({\n payment_for: e.target.value,\n })\n }\n defaultValue={this.state.payment_for}\n className=\"form-select\"\n >\n \n --- Please select the Type\n ---\n \n \n \n \n\n \n\n {this.state.payment_for == \"Lab\" ? (\n paymentBouncedStatus.lab_id ? (\n
\n \n \n \n {\n paymentBouncedStatus.lab_name\n }\n \n \n
\n ) : (\n
\n \n \n this.setState({\n lab_id:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.lab_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.lab_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={labList}\n placeholder=\"Select Lab...\"\n />\n\n
\n Please select your Lab\n
\n
)\n ) : null}\n\n {this.state.payment_for == \"B2BClient\" ? (\n paymentBouncedStatus.b2b_id ? (\n
\n \n \n \n {\n paymentBouncedStatus.donor_name\n }\n \n \n
\n ) : (\n
\n \n \n this.setState({\n b2b_id:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.b2b_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.b2b_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={b2bList}\n placeholder=\"Select Donor...\"\n />\n\n
\n Please select B2BClient\n
\n
\n )\n\n ) : null}\n\n
\n \n {\n this.setState({\n paymentBouncedStatus: {\n id: paymentBouncedStatus.id,\n lab_id:\n paymentBouncedStatus.lab_id,\n b2b_id:\n paymentBouncedStatus.b2b_id,\n invoice_id:\n paymentBouncedStatus.invoice_id,\n amount:\n e.target\n .value,\n\n payment_method:\n paymentBouncedStatus.payment_method,\n payment_for:\n paymentBouncedStatus.payment_for,\n payment_at:\n paymentBouncedStatus.payment_at,\n cheque_no: paymentBouncedStatus.cheque_no,\n bank_id:\n paymentBouncedStatus.bank_id,\n deposit_copy:\n paymentBouncedStatus.deposit_copy,\n is_cleared:\n paymentBouncedStatus.is_cleared,\n cleared_at: paymentBouncedStatus.cleared_at,\n bankaccount_id:\n paymentBouncedStatus.bankaccount_id,\n status: paymentBouncedStatus.status,\n comments:\n paymentBouncedStatus.comments,\n\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.amount &&\n touched.amount\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n
\n \n {\n this.setState({\n paymentBouncedStatus: {\n id: paymentBouncedStatus.id,\n lab_id:\n paymentBouncedStatus.lab_id,\n b2b_id:\n paymentBouncedStatus.b2b_id,\n invoice_id:\n paymentBouncedStatus.invoice_id,\n cheque_no:\n e.target\n .value,\n\n payment_method:\n paymentBouncedStatus.payment_method,\n payment_for:\n paymentBouncedStatus.payment_for,\n payment_at:\n paymentBouncedStatus.payment_at,\n comments: paymentBouncedStatus.comments,\n bank_id:\n paymentBouncedStatus.bank_id,\n deposit_copy:\n paymentBouncedStatus.deposit_copy,\n is_cleared:\n paymentBouncedStatus.is_cleared,\n cleared_at: paymentBouncedStatus.cleared_at,\n bankaccount_id:\n paymentBouncedStatus.bankaccount_id,\n status: paymentBouncedStatus.status,\n amount:\n paymentBouncedStatus.amount,\n\n },\n });\n }}\n />\n
\n\n
\n \n Payment Date\n \n {\n this.setState({\n paymentBouncedStatus: {\n id: paymentBouncedStatus.id,\n lab_id:\n paymentBouncedStatus.lab_id,\n b2b_id:\n paymentBouncedStatus.b2b_id,\n invoice_id:\n paymentBouncedStatus.invoice_id,\n payment_at:\n e.target\n .value,\n\n payment_method:\n paymentBouncedStatus.payment_method,\n amount:\n paymentBouncedStatus.amount,\n cheque_no:\n paymentBouncedStatus.cheque_no,\n payment_for: paymentBouncedStatus.payment_for,\n bank_id:\n paymentBouncedStatus.bank_id,\n deposit_copy:\n paymentBouncedStatus.deposit_copy,\n is_cleared:\n paymentBouncedStatus.is_cleared,\n cleared_at: paymentBouncedStatus.cleared_at,\n bankaccount_id:\n paymentBouncedStatus.bankaccount_id,\n status: paymentBouncedStatus.status,\n comments:\n paymentBouncedStatus.comments,\n\n },\n });\n }}\n min={new Date(\n new Date().toString().split(\"GMT\")[0] +\n \" UTC\"\n )\n .toISOString()\n .slice(0, -8)}\n className=\"form-control\"\n // onChange={e =>\n // this.setState({\n // payment_at:\n // e.target.value,\n // })\n // }\n />\n
\n\n\n {paymentBouncedStatus.bankaccount_id &&\n paymentBouncedStatus.bankaccount_id ? (\n
\n \n Bank Account Name\n\n \n \n {\n paymentBouncedStatus.account_no\n\n }\n \n \n
\n ) : (\n
\n \n Bank Account Name\n\n \n this.setState({\n bankaccount_id:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.bankaccount_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.bankaccount_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={bankaccountList}\n placeholder=\"Select Bank Account...\"\n />\n
\n Please select your Bank Account\n
\n
\n )}\n\n
\n \n Deposite Copy\n \n *\n \n \n \n this.setState({\n deposit_copy:\n e.target.files[0],\n })\n }\n className={\n \"form-control\" +\n (errors.deposit_copy &&\n touched.deposit_copy\n ? \" is-invalid\"\n : \"\")\n }\n />\n\n \n
\n\n
\n \n {\n this.setState({\n paymentBouncedStatus: {\n id: paymentBouncedStatus.id,\n lab_id:\n paymentBouncedStatus.lab_id,\n b2b_id:\n paymentBouncedStatus.b2b_id,\n invoice_id:\n paymentBouncedStatus.invoice_id,\n payment_method:\n e.target\n .value,\n\n comments:\n paymentBouncedStatus.comments,\n payment_for:\n paymentBouncedStatus.payment_for,\n payment_at:\n paymentBouncedStatus.payment_at,\n cheque_no: paymentBouncedStatus.cheque_no,\n bank_id:\n paymentBouncedStatus.bank_id,\n deposit_copy:\n paymentBouncedStatus.deposit_copy,\n is_cleared:\n paymentBouncedStatus.is_cleared,\n cleared_at: paymentBouncedStatus.cleared_at,\n bankaccount_id:\n paymentBouncedStatus.bankaccount_id,\n status: paymentBouncedStatus.status,\n amount:\n paymentBouncedStatus.amount,\n\n },\n });\n }}\n >\n \n ----- Please select\n Type -----\n \n \n \n \n
\n\n \n\n
\n \n {\n this.setState({\n paymentBouncedStatus: {\n id: paymentBouncedStatus.id,\n lab_id:\n paymentBouncedStatus.lab_id,\n b2b_id:\n paymentBouncedStatus.b2b_id,\n invoice_id:\n paymentBouncedStatus.invoice_id,\n comments:\n e.target\n .value,\n\n payment_method:\n paymentBouncedStatus.payment_method,\n payment_for:\n paymentBouncedStatus.payment_for,\n payment_at:\n paymentBouncedStatus.payment_at,\n cheque_no: paymentBouncedStatus.cheque_no,\n bank_id:\n paymentBouncedStatus.bank_id,\n deposit_copy:\n paymentBouncedStatus.deposit_copy,\n is_cleared:\n paymentBouncedStatus.is_cleared,\n cleared_at: paymentBouncedStatus.cleared_at,\n bankaccount_id:\n paymentBouncedStatus.bankaccount_id,\n status: paymentBouncedStatus.status,\n amount:\n paymentBouncedStatus.amount,\n\n },\n });\n }}\n />\n \n
\n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n
\n \n
\n {hasData && (\n \n \n \n \n \n )}\n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\npaymentCreatedList.propTypes = {\n match: PropTypes.object,\n labs: PropTypes.array,\n paymentBouncedStatuss: PropTypes.array,\n className: PropTypes.any,\n bankAccounts: PropTypes.array,\n onAddNewOutPayment: PropTypes.func,\n onGetBouncedStatuss: PropTypes.func,\n onUpdatePaymentOutCreatedStatuss: PropTypes.func,\n onGetlabs: PropTypes.func,\n onGetbankAccounts: PropTypes.func,\n history: PropTypes.any,\n\n};\n\nconst mapStateToProps = ({ paymentStatuss }) => ({\n paymentBouncedStatuss: paymentStatuss.paymentBouncedStatuss,\n labs: paymentStatuss.labs,\n bankAccounts: paymentStatuss.bankAccounts,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetlabs: () => dispatch(getLabs()),\n onGetbankAccounts: () => dispatch(getBankAccounts()),\n onGetBouncedStatuss: id => dispatch(getBouncedStatuss(id)),\n onUpdatePaymentOutCreatedStatuss: paymentOutCreatedStatuss =>\n dispatch(updatePaymentOutCreatedStatuss(paymentOutCreatedStatuss)),\n onAddNewOutPayment: (paymentBouncedStatus, id) =>\n dispatch(addNewOutPayment(paymentBouncedStatus, id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(paymentCreatedList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport moment from 'moment';\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\n\n\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Modal,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport {\n getSampleCollectionInProcessList,\n updateSampleCollectionStatus,\n} from \"store/sample-collector-test-appointments/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport { Tooltip } from \"@material-ui/core\";\n\nclass SampleCollectorTestAppointmentsInProcessList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n testAppointments: [],\n patient: [],\n btnText: \"Copy\",\n btnTextaddress: \"Copy\",\n sampleCollector: \"\",\n resultFile: \"\",\n testAppointment: \"\",\n modal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n testAppointmentListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, testAppointment) => (\n <>{testAppointment.id}\n ),\n },\n {\n dataField: \"order_id\",\n text: \"Order ID\",\n sort: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>\n {patientTestAppointment.order_id}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"name\",\n text: \"Patient name\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n \n this.openPatientModal(e, testAppointment)}\n // onMouseEnter={e => this.openPatientModal(e, testAppointment)}\n // onPointerLeave={this.handleMouseExit()}\n >\n {testAppointment.patient_name}\n \n \n \n ),filter: textFilter(),\n },\n // {\n // dataField: \"booked_at\",\n // text: \"Booked at\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // \n // {new Date(testAppointment.booked_at).toLocaleString(\"en-US\")}\n // \n // \n // ),\n // },\n // {\n // dataField: \"appointment_requested_at\",\n // text: \"Schedule time by Patient\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // \n // {new Date(\n // testAppointment.appointment_requested_at\n // ).toLocaleString(\"en-US\")}\n // \n // \n // ),\n // },\n {\n dataField: \"estimated_sample_collection_at\",\n text: \"Sampling time by Lab\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n \n {/* {new Date(\n testAppointment.estimated_sample_collection_at\n ).toLocaleString(\"en-US\")} */}\n {testAppointment.estimated_sample_collection_at\n ? moment(testAppointment.estimated_sample_collection_at).format(\"DD MMM YYYY, h:mm A\")\n : \"--\"}\n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"status\",\n text: \"Appointment Status\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.status == \"Pending\" && (\n \n {testAppointment.status}\n \n )}\n\n {testAppointment.status == \"Confirmed\" && (\n \n {testAppointment.status}\n \n )}\n\n {testAppointment.status == \"Sample Collected\" && (\n \n {testAppointment.status}\n \n )}\n\n {testAppointment.status == \"Rescheduled\" && (\n \n {testAppointment.status}\n \n )}\n\n {testAppointment.status == \"Result Uploaded\" && (\n \n {testAppointment.status}\n \n )}\n \n ),filter: selectFilter({\n options: {\n '': 'All',\n 'Pending': 'Pending',\n 'Confirmed': 'Confirmed',\n 'Sample Collected': 'Sample Collected',\n 'Rescheduled': 'Rescheduled',\n 'Result Uploaded': 'Result Uploaded',\n },\n defaultValue: 'All',\n }),\n },\n {\n dataField: \"collection_status\",\n text: \"Collection Status\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {(testAppointment.is_home_sampling_availed || testAppointment.is_state_sampling_availed) &&\n !testAppointment.collection_status ? (\n \n Pending\n \n ): testAppointment.collection_status == \"Assigned\" ? (\n \n {testAppointment.collection_status}\n \n ): testAppointment.collection_status == \"On way\" ? (\n \n {testAppointment.collection_status}\n \n ): testAppointment.collection_status == \"Reached\" ? (\n \n {testAppointment.collection_status}\n \n ): testAppointment.collection_status == \"Patient Unavailable\" ? (\n \n {testAppointment.collection_status}\n \n ): testAppointment.collection_status == \"Sample+Payment Collected\" ? (\n \n {testAppointment.collection_status}\n \n ): testAppointment.collection_status == \"Sample+Payment Delivered\" && (\n \n {testAppointment.collection_status}\n \n )}\n\n {!testAppointment.is_home_sampling_availed || !testAppointment.is_state_sampling_availed && (\n \n Not availed\n \n )}\n \n ),filter: selectFilter({\n options: {\n '': 'All',\n 'Assigned': 'Assigned',\n 'On way': 'On way',\n 'Reached': 'Reached',\n 'Patient Unavailable': 'Patient Unavailable',\n 'Sample+Payment Collected': 'Sample+Payment Collected',\n 'Sample+Payment Delivered': 'Sample+Payment Delivered',\n },\n defaultValue: 'All',\n }),\n },\n // {\n // dataField: \"dues\",\n // text: \"Dues\",\n // sort: true,\n // },\n // {\n // dataField: \"amount_recieved_by_collector\",\n // text: \"Amount Received\",\n // sort: true,\n // },\n {\n dataField: \"payment_status\",\n text: \"Payment Status\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.payment_status == \"Not Paid\" ? (\n \n {testAppointment.payment_method},{\" \"}\n {testAppointment.payment_status}\n \n ) : (\n \n {testAppointment.payment_method},{\" \"}\n {testAppointment.payment_status}\n \n )}\n \n ),filter: selectFilter({\n options: {\n '': 'All',\n 'Paid': 'Paid',\n 'Not Paid': 'Not Paid',\n 'Allocate': 'Allocate',\n },\n defaultValue: 'All',\n }),\n },\n {\n dataField: \"invoice\",\n text: \"Invoice\",\n isDummyField: true,\n editable: false,\n formatter: (cellContent, sampleCollector) => (\n <>\n {sampleCollector.payment_status === \"Not Paid\" ? (\n \n \n \n ) : (\n \n \n \n )}\n {/* \n Invoice\n */}\n \n ),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, testAppointment) => (\n
\n \n \n \n this.handleTestAppointmentClick(testAppointment)\n }\n >\n \n \n
\n ),\n },\n ],\n };\n this.handleTestAppointmentClick =\n this.handleTestAppointmentClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleTestAppointmentClicks =\n this.handleTestAppointmentClicks.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n }\n componentDidMount() {\n const { onGetTestAppointmentsInProcessList } = this.props;\n onGetTestAppointmentsInProcessList(this.state.user_id);\n this.setState({ testAppointments: this.props.testAppointments });\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n patient_age: arg.patient_age,\n patient_gender: arg.patient_gender,\n patient_address: arg.patient_address,\n ageFormat: arg.ageFormat,\n patient_city: arg.patient_city,\n patient_phone: arg.patient_phone,\n appointment_requested_at: arg.appointment_requested_at\n });\n };\n // handleMouseExit = () => {\n // this.setState({\n // PatientModal: false,\n // isHovered: false,\n \n // });\n // };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n btnText: prevState.btnText === \"Copy\" ? \"Copied\" : \"Copy\",\n btnTextaddress: prevState.btnTextaddress === \"Copy\" ? \"Copied\" : \"Copy\",\n }));\n };\n \n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleTestAppointmentClicks = () => {\n this.setState({ testAppointment: \"\", resultFile: \"\" });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { testAppointments } = this.props;\n if (\n !isEmpty(testAppointments) &&\n size(prevProps.testAppointments) !== size(testAppointments)\n ) {\n this.setState({ testAppointments: {} });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n handleTestAppointmentClick = arg => {\n const testAppointment = arg;\n\n this.setState({\n testAppointment: {\n id: testAppointment.id,\n patient_name: testAppointment.patient_name,\n patient_id: testAppointment.patient_id,\n patient_age: testAppointment.patient_age,\n patient_gender: testAppointment.patient_gender,\n booked_at: testAppointment.booked_at,\n appointment_requested_at: testAppointment.appointment_requested_at,\n estimated_sample_collection_at:\n testAppointment.estimated_sample_collection_at,\n estimated_result_uploading_at:\n testAppointment.estimated_result_uploading_at,\n patient_unique_id: testAppointment.patient_unique_id,\n status: testAppointment.status,\n collection_status: testAppointment.collection_status,\n payment_status: testAppointment.payment_status,\n\n \n result_type: \"File\",\n url: \"\",\n result: \"\",\n collector_name: testAppointment.collector_name,\n assigned_to: testAppointment.assigned_to,\n dues: testAppointment.dues,\n // amount_recieved_by_collector: testAppointment.amount_recieved_by_collector,\n is_exact_amount_collected: testAppointment.is_exact_amount_collected,\n },\n\n resultFile: \"\",\n });\n\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { testAppointments } = this.props;\n\n const {\n onUpdateSampleCollectionStatus,\n onGetTestAppointmentsInProcessList,\n } = this.props;\n const testAppointment = this.state.testAppointment;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: 1, // replace later with size(testAppointments),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n Sample Collection Assigned | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n {\n // Check if lab_name is defined and not null\n if (lab.lab_name !== undefined && lab.lab_name !== null) {\n // Return a div for each lab_name\n return (\n
\n {lab.lab_name}\n -Sample Collector\n
\n );\n }\n // Don't render anything for labs without lab_name\n return null;\n })}\n \n />\n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n {/*
\n
\n \n \n
\n
*/}\n \n
\n \n \n
\n \n \n \n Patient Details: \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n {\n navigator.clipboard.writeText(this.state.patient_address);\n this.setState({ btnTextaddress: \"Copied\" });\n }}\n >\n {this.state.btnTextaddress}\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n {\n navigator.clipboard.writeText(this.state.patient_phone);\n this.setState({ btnText: \"Copied\" });\n }}\n >\n {this.state.btnText}\n \n
\n
\n \n
\n
\n
\n
\n \n \n \n Edit Test Appointment\n \n \n {\n const updateSampleCollectionStatus =\n {\n id: testAppointment.id,\n patient_id: parseInt(\n values.patient_id\n ),\n collection_status:\n values.collection_status,\n // amount_recieved_by_collector:\n // values.amount_recieved_by_collector,\n payment_status: testAppointment.payment_status,\n dues:\n testAppointment.dues,\n is_exact_amount_collected:\n values.is_exact_amount_collected,\n };\n\n // update TestAppointment\n onUpdateSampleCollectionStatus(\n updateSampleCollectionStatus\n );\n\n setTimeout(() => {\n onGetTestAppointmentsInProcessList(\n this.state.user_id\n );\n }, 2000);\n\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n\n{/* \n { this.state.testAppointment\n .collection_status ==\n \"Sample+Payment Collected\" && \n this.state.testAppointment.payment_status == \"Not Paid\" &&(\n
\n
\n \n
\n
\n \n
\n \n \n {\n \n this.setState({\n testAppointment: {\n id: testAppointment.id,\n collection_status:\n e.target.value,\n payment_status: testAppointment.payment_status,\n // amount_recieved_by_collector: testAppointment.amount_recieved_by_collector,\n is_exact_amount_collected: e.target.value,\n dues: testAppointment.dues,\n },\n });\n } \n }\n />\n
\n )} */}\n {/* Certificate Amount field */}\n {/* {this.state.testAppointment\n .collection_status ===\n \"Sample+Payment Collected\" &&(\n
\n
\n \n
\n
\n \n
\n
\n )} */}\n {/* Certificate Collection status field */}\n
\n \n {\n this.setState({\n testAppointment: {\n id: testAppointment.id,\n collection_status:\n e.target.value,\n // amount_recieved_by_collector: testAppointment.amount_recieved_by_collector,\n\n is_exact_amount_collected: testAppointment.is_exact_amount_collected,\n dues: testAppointment.dues,\n payment_status: testAppointment.payment_status,\n },\n });\n }}\n className=\"form-control\"\n readOnly={false}\n multiple={false}\n >\n \n \n \n \n \n \n \n
\n\n {/* {this.state.testAppointment\n .collection_status ===\n \"Sample+Payment Collected\" &&(\n
\n \n {\n \n this.setState({\n testAppointment: {\n id: testAppointment.id,\n collection_status:\n testAppointment.collection_status,\n amount_recieved_by_collector: e.target.value,\n dues: testAppointment.dues,\n },\n });\n } \n }\n className={\n \"form-control\" +\n (errors.amount_recieved_by_collector &&\n touched.amount_recieved_by_collector\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n )} */}\n\n \n {/* {this.state.testAppointment\n .collection_status ===\n \"Sample+Payment Collected\" &&(\n \n
\n \n \n {\n \n this.setState({\n testAppointment: {\n id: testAppointment.id,\n collection_status:\n testAppointment.collection_status,\n // amount_recieved_by_collector: testAppointment.amount_recieved_by_collector,\n is_exact_amount_collected: e.target.value,\n dues: testAppointment.dues,\n },\n });\n } \n }\n />\n
\n )} */}\n \n { this.state.testAppointment\n .collection_status ==\n \"Sample+Payment Collected\" && \n this.state.testAppointment.payment_status == \"Not Paid\" &&(\n
\n
\n \n
\n
\n \n
\n\n
\n \n \n {\n \n this.setState({\n testAppointment: {\n id: testAppointment.id,\n collection_status:\n testAppointment.collection_status,\n payment_status: testAppointment.payment_status,\n // amount_recieved_by_collector: testAppointment.amount_recieved_by_collector,\n is_exact_amount_collected: e.target.value,\n dues: testAppointment.dues,\n },\n });\n } \n }\n />\n
\n
\n )} \n \n
\n \n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nSampleCollectorTestAppointmentsInProcessList.propTypes = {\n match: PropTypes.object,\n testAppointments: PropTypes.array,\n className: PropTypes.any,\n onGetTestAppointmentsInProcessList: PropTypes.func,\n onUpdateSampleCollectionStatus: PropTypes.func,\n};\n\nconst mapStateToProps = ({ sampleCollectorDatas }) => ({\n testAppointments: sampleCollectorDatas.sampleCollectorDatasInProcessList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetTestAppointmentsInProcessList: id =>\n dispatch(getSampleCollectionInProcessList(id)),\n onUpdateSampleCollectionStatus: testAppointment =>\n dispatch(updateSampleCollectionStatus(testAppointment)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(SampleCollectorTestAppointmentsInProcessList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Card, CardBody, Col, Container, Row, Label,ModalHeader, Modal,ModalBody } from \"reactstrap\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport moment from 'moment';\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\n\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport { getSampleCollectionCompletedList } from \"store/sample-collector-test-appointments/actions\";\n\nclass TestAppointmentsCompletedList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n testAppointments: [],\n testAppointment: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n btnText: \"Copy\",\n btnTextaddress: \"Copy\",\n testAppointmentListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, testAppointment) => (\n <>{testAppointment.id}\n ),\n },\n {\n dataField: \"order_id\",\n text: \"Order ID\",\n sort: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>\n {patientTestAppointment.order_id}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"name\",\n text: \"Patient name\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n \n this.openPatientModal(e, testAppointment)}\n // onMouseEnter={e => this.openPatientModal(e, testAppointment)}\n // onPointerLeave={this.handleMouseExit()}\n >\n {testAppointment.patient_name}\n \n \n \n ),filter: textFilter(),\n },\n // {\n // dataField: \"name\",\n // text: \"Patient name\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // \n // this.openPatientModal(e, testAppointment)}\n // // onMouseEnter={e => this.openPatientModal(e, testAppointment)}\n // // onPointerLeave={this.handleMouseExit()}\n // >\n // {testAppointment.patient_name}\n // \n // \n // \n // ),filter: textFilter(),\n // },\n // {\n // dataField: \"booked_at\",\n // text: \"Booked at\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // \n // {new Date(testAppointment.booked_at).toLocaleString(\"en-US\")}\n // \n // \n // ),\n // },\n // {\n // dataField: \"appointment_requested_at\",\n // text: \"Sampling time by Patient\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // \n // {new Date(\n // testAppointment.appointment_requested_at\n // ).toLocaleString(\"en-US\")}\n // \n // \n // ),\n // },\n {\n dataField: \"estimated_sample_collection_at\",\n text: \"Sampling time by Lab\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.status == \"Pending\" ? (\n Not available yet\n ) : null}\n\n {testAppointment.status != \"Pending\" ? (\n \n {/* {new Date(\n testAppointment.estimated_sample_collection_at\n ).toLocaleString(\"en-US\")} */}\n {testAppointment.estimated_sample_collection_at\n ? moment(testAppointment.estimated_sample_collection_at).format(\"DD MMM YYYY, h:mm A\")\n : \"--\"}\n \n ) : null}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"handovered_at\",\n text: \"Sample+payment Delivered at\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n \n {/* {new Date(testAppointment.handovered_at).toLocaleString(\n \"en-US\"\n )} */}\n {testAppointment.handovered_at\n ? moment(testAppointment.handovered_at).format(\"DD MMM YYYY, h:mm A\")\n : \"--\"}\n \n \n ),filter: textFilter(),\n },\n // {\n // dataField: \"dues\",\n // text: \"Dues\",\n // sort: true,\n // },\n {\n dataField: \"dues\",\n text: \"Dues\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <> \n
\n {testAppointment.dues.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}
\n ),filter: textFilter(),\n },\n {\n dataField: \"payment_status\",\n text: \"Payment Status\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.payment_status == \"Not Paid\" ? (\n \n {testAppointment.payment_method},{\" \"}\n {testAppointment.payment_status}\n \n ) : (\n \n {testAppointment.payment_method},{\" \"}\n {testAppointment.payment_status}\n \n )}\n \n ),filter: selectFilter({\n options: {\n '': 'All',\n 'Paid': 'Paid',\n 'Not Paid': 'Not Paid',\n 'Allocate': 'Allocate',\n },\n defaultValue: 'All',\n }),\n },\n // {\n // dataField: process.env.REACT_APP_BACKENDURL + \"result\",\n // text: \"Result\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // {testAppointment.result_type == \"File\" ? (\n // \n // {\" \"}\n // View Result\n // \n // ) : (\n // \n // {\" \"}\n // View Result\n // \n // )}\n // \n // ),\n // },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n }\n\n componentDidMount() {\n const { onGetTestAppointmentsCompletedList } = this.props;\n onGetTestAppointmentsCompletedList(this.state.user_id);\n this.setState({ testAppointments: this.props.testAppointments });\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n patient_age: arg.patient_age,\n patient_gender: arg.patient_gender,\n patient_address: arg.patient_address,\n ageFormat: arg.ageFormat,\n patient_city: arg.patient_city,\n patient_phone:arg.patient_phone,\n });\n };\n // handleMouseExit = () => {\n // this.setState({\n // PatientModal: false,\n // isHovered: false,\n // });\n // };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n btnText: prevState.btnText === \"Copy\" ? \"Copied\" : \"Copy\",\n btnTextaddress: prevState.btnTextaddress === \"Copy\" ? \"Copied\" : \"Copy\",\n }));\n };\n \n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { testAppointments } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: testAppointments.length, // replace later with size(testAppointments),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n Sample Collection Completed | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n {\n // Check if lab_name is defined and not null\n if (lab.lab_name !== undefined && lab.lab_name !== null) {\n // Return a div for each lab_name\n return (\n
\n {lab.lab_name}\n -Sample Collector\n
\n );\n }\n // Don't render anything for labs without lab_name\n return null;\n })}\n >\n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n {/*
\n
\n \n \n
\n
*/}\n \n
\n \n \n
\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n {\n navigator.clipboard.writeText(this.state.patient_address);\n this.setState({ btnTextaddress: \"Copied\" });\n }}\n >\n {this.state.btnTextaddress}\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n {\n navigator.clipboard.writeText(this.state.patient_phone);\n this.setState({ btnText: \"Copied\" });\n }}\n >\n {this.state.btnText}\n \n
\n
\n \n
\n
\n
\n
\n \n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nTestAppointmentsCompletedList.propTypes = {\n match: PropTypes.object,\n testAppointments: PropTypes.array,\n className: PropTypes.any,\n onGetTestAppointmentsCompletedList: PropTypes.func,\n // onUpdateTestAppointment: PropTypes.func,\n};\n\nconst mapStateToProps = ({ sampleCollectorDatas }) => ({\n testAppointments: sampleCollectorDatas.sampleCollectorDatasCompletedList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetTestAppointmentsCompletedList: id =>\n dispatch(getSampleCollectionCompletedList(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(TestAppointmentsCompletedList));\n","import i18n from \"i18next\"\nimport detector from \"i18next-browser-languagedetector\"\nimport { initReactI18next } from \"react-i18next\"\n\nimport translationGr from \"./locales/gr/translation.json\"\nimport translationIT from \"./locales/it/translation.json\"\nimport translationRS from \"./locales/rs/translation.json\"\nimport translationSP from \"./locales/sp/translation.json\"\nimport translationENG from \"./locales/en/translation.json\"\n\n// the translations\nconst resources = {\n gr: {\n translation: translationGr,\n },\n it: {\n translation: translationIT,\n },\n rs: {\n translation: translationRS,\n },\n sp: {\n translation: translationSP,\n },\n eng: {\n translation: translationENG,\n },\n}\n\nconst language = localStorage.getItem(\"I18N_LANGUAGE\")\nif (!language) {\n localStorage.setItem(\"I18N_LANGUAGE\", \"en\")\n}\n\ni18n\n .use(detector)\n .use(initReactI18next) // passes i18n down to react-i18next\n .init({\n resources,\n lng: localStorage.getItem(\"I18N_LANGUAGE\") || \"en\",\n fallbackLng: \"en\", // use en if detected lng is not available\n\n keySeparator: false, // we do not use keys in form messages.welcome\n\n interpolation: {\n escapeValue: false, // react already safes from xss\n },\n })\n\nexport default i18n\n","import React from \"react\";\nimport { Link } from \"react-router-dom\";\nimport { Container, Row, Col } from \"reactstrap\";\n\nconst Footer = () => {\n // Media query checks for responsiveness\n const isLargeScreen = window.innerWidth > 768;\n const isSmallScreen = window.innerWidth >= 576 && window.innerWidth <= 768;\n const isExtraSmallScreen = window.innerWidth < 576;\n\n // Styles for the fixed footer on large screens\n const largFixFooter = {\n position: \"fixed\",\n bottom: 0,\n width: \"100%\",\n backgroundColor: \"#f8f9fa\",\n fontSize: \"12px\",\n display: \"flex\",\n justifyContent: \"center\",\n };\n const extrasmallFixFooter = {\n position: \"fixed\",\n bottom: 0,\n width: \"100%\",\n backgroundColor: \"#f8f9fa\",\n fontSize: \"8px\",\n display: \"flex\",\n justifyContent: \"center\",\n };\n\n return (\n
\n \n {isLargeScreen && (\n \n {/* Column 1 */}\n \n
\n \n \n \"\"\n \n \n
\n
\n {/* Add your Terms, Privacy Policy, and Disclaimer links here */}\n \n Terms & Conditions\n {\" \"}\n |{\" \"}\n \n Privacy Policy\n {\" \"}\n |{\" \"}\n \n Disclaimer\n \n
\n \n\n {/* Column 2 */}\n \n

Company

\n
\n {/* Add your About Us, Contact Us, Careers, and Help & Support links here */}\n \n About Us\n \n
\n
\n \n Contact Us\n \n
\n
\n \n Careers\n \n
\n
\n \n Help & Support\n \n
\n \n\n {/* Column 3 */}\n \n

Quick Links

\n
\n {/* Add your quick links here */}\n \n Register Your Lab\n \n
\n
\n \n How to API's Integrations?\n \n
\n
\n \n Corporate Customer\n \n
\n
\n \n Become an affiliate\n \n
\n \n\n {/* Column 4 */}\n \n

Get Connected

\n
\n {/* Add your contact information here */}\n \n {\" \"}\n info@labhazir.com{\" \"}\n \n
\n
\n {\" \"}\n 0300-LABHAZIR{\" \"}\n
\n
\n {/* Add your social media links here */}\n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n
\n \n {new Date().getFullYear()} © Lab Hazir (Private) Limited. All Rights Reserved\n \n
\n
\n )}\n\n {/* Footer for small screens */}\n {isSmallScreen && (\n \n {/* Add your small screen footer content here */}\n \n
\n {new Date().getFullYear()} © Lab Hazir (Private) Limited. All Rights Reserved\n
\n \n \n
\n \n About Us\n {\" \"}\n |{\" \"}\n \n Terms & Conditions\n {\" \"}\n |{\" \"}\n \n Privacy Policy\n {\" \"}\n |{\" \"}\n \n Disclaimer\n \n
\n \n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n\n
\n
\n
\n )}\n\n {/* Footer for extra small screens */}\n {isExtraSmallScreen && (\n // You can add content for extra small screens here if needed\n \n {/* Add your small screen footer content here */}\n \n
\n {new Date().getFullYear()} © Lab Hazir (Private) Limited. All Rights Reserved\n
\n \n \n
\n \n About Us\n {\" \"}\n |{\" \"}\n \n Terms & Conditions\n {\" \"}\n |{\" \"}\n \n Privacy Policy\n {\" \"}\n |{\" \"}\n \n Disclaimer\n \n
\n \n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n\n
\n
\n
\n )}\n
\n
\n );\n};\n\nexport default Footer;\n","const layoutTypes = {\n HORIZONTAL: \"horizontal\",\n VERTICAL: \"vertical\",\n}\n\nconst layoutWidthTypes = {\n FLUID: \"fluid\",\n BOXED: \"boxed\",\n SCROLLABLE: \"scrollable\",\n}\n\nconst topBarThemeTypes = {\n LIGHT: \"light\",\n DARK: \"dark\",\n COLORED: \"colored\",\n}\n\nconst leftBarThemeImageTypes = {\n NONE: \"none\",\n IMG1: \"img1\",\n IMG2: \"img2\",\n IMG3: \"img3\",\n IMG4: \"img4\",\n}\n\nconst leftSidebarTypes = {\n DEFAULT: \"default\",\n COMPACT: \"compact\",\n ICON: \"icon\",\n}\n\nconst leftSideBarThemeTypes = {\n LIGHT: \"light\",\n COLORED: \"colored\",\n DARK: \"dark\",\n WINTER: \"winter\",\n LADYLIP: \"ladylip\",\n PLUMPLATE: \"plumplate\",\n STRONGBLISS: \"strongbliss\",\n GREATWHALE: \"greatwhale\",\n}\n\nexport {\n layoutTypes,\n layoutWidthTypes,\n topBarThemeTypes,\n leftBarThemeImageTypes,\n leftSidebarTypes,\n leftSideBarThemeTypes,\n}\n","export default __webpack_public_path__ + \"static/media/img1.5d30e3f4.jpg\";","export default __webpack_public_path__ + \"static/media/img2.f153f12d.jpg\";","export default __webpack_public_path__ + \"static/media/img3.38bebc7d.jpg\";","export default __webpack_public_path__ + \"static/media/img4.508ca487.jpg\";","export default __webpack_public_path__ + \"static/media/layout-1.d6de7ba6.jpg\";","export default __webpack_public_path__ + \"static/media/layout-2.39f5fc81.jpg\";","export default __webpack_public_path__ + \"static/media/layout-3.ab7913ef.jpg\";","import PropTypes from \"prop-types\";\nimport React, { Component } from \"react\";\nimport { Col, FormGroup, Row } from \"reactstrap\";\n\nimport { connect } from \"react-redux\";\n\n/** Import actions */\nimport {\n hideRightSidebar,\n changeLayout,\n changeLayoutWidth,\n changeSidebarTheme,\n changeSidebarThemeImage,\n changeSidebarType,\n changePreloader,\n changeTopbarTheme,\n toggleRightSidebar\n} from \"../../store/actions\";\n\n//constants\nimport {\n layoutTypes,\n layoutWidthTypes,\n topBarThemeTypes,\n leftBarThemeImageTypes,\n leftSidebarTypes,\n leftSideBarThemeTypes,\n} from \"../../constants/layout\";\n\n//SimpleBar\nimport SimpleBar from \"simplebar-react\";\n\nimport { Link } from \"react-router-dom\";\n\nimport \"./rightbar.scss\";\n\n//Import images\nimport bgimg1 from \"../../assets/images/sidebar/img1.jpg\";\nimport bgimg2 from \"../../assets/images/sidebar/img2.jpg\";\nimport bgimg3 from \"../../assets/images/sidebar/img3.jpg\";\nimport bgimg4 from \"../../assets/images/sidebar/img4.jpg\";\n\nimport layout4 from \"../../assets/images/layouts/layout-1.jpg\";\nimport layout5 from \"../../assets/images/layouts/layout-2.jpg\";\nimport layout6 from \"../../assets/images/layouts/layout-3.jpg\";\n\nclass RightSidebar extends Component {\n constructor(props) {\n super(props);\n this.state = {\n layoutType: this.props.layoutType,\n sidebarType: this.props.leftSideBarType,\n layoutWidth: this.props.layoutWidth,\n sidebarTheme: this.props.leftSideBarTheme,\n sidebarThemeImage: this.props.leftSideBarThemeImage,\n topbarTheme: this.props.topbarTheme,\n };\n this.hideRightbar = this.hideRightbar.bind(this);\n this.changeLayout = this.changeLayout.bind(this);\n this.changeLayoutWidth = this.changeLayoutWidth.bind(this);\n this.changeLeftSidebarTheme = this.changeLeftSidebarTheme.bind(this);\n this.changeLeftSidebarThemeImage =\n this.changeLeftSidebarThemeImage.bind(this);\n this.changeLeftSidebarType = this.changeLeftSidebarType.bind(this);\n this.changeTopbarTheme = this.changeTopbarTheme.bind(this);\n this.changeThemePreloader = this.changeThemePreloader.bind(this);\n }\n\n /**\n * Hides the right sidebar\n */\n hideRightbar(e) {\n e.preventDefault();\n this.props.hideRightSidebar();\n }\n componentDidMount() {\n this.setState({\n layoutType: this.props.layoutType,\n sidebarType: this.props.leftSideBarType,\n layoutWidth: this.props.layoutWidth,\n sidebarTheme: this.props.leftSideBarTheme,\n sidebarThemeImage: this.props.leftSideBarThemeImage,\n topbarTheme: this.props.topbarTheme,\n });\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps !== this.props) {\n this.setState({\n layoutType: this.props.layoutType,\n sidebarType: this.props.leftSideBarType,\n layoutWidth: this.props.layoutWidth,\n sidebarTheme: this.props.leftSideBarTheme,\n sidebarThemeImage: this.props.leftSideBarThemeImage,\n topbarTheme: this.props.topbarTheme,\n });\n }\n }\n\n changeThemePreloader = () => {\n this.props.changePreloader(!this.props.isPreloader);\n };\n /**\n * Change the layout\n * @param {*} e\n */\n changeLayout(e) {\n if (e.target.checked) {\n this.props.changeLayout(e.target.value);\n }\n }\n\n /**\n * Changes layout width\n * @param {*} e\n */\n changeLayoutWidth(e) {\n if (e.target.checked) {\n this.props.changeLayoutWidth(e.target.value);\n }\n }\n\n // change left sidebar design\n changeLeftSidebarType(e) {\n if (e.target.checked) {\n this.props.changeSidebarType(e.target.value);\n }\n }\n\n // change left sidebar theme\n changeLeftSidebarTheme(e) {\n if (e.target.checked) {\n this.props.changeSidebarTheme(e.target.value);\n }\n }\n\n changeLeftSidebarThemeImage(e) {\n if (e.target.checked) {\n this.props.changeSidebarThemeImage(e.target.value);\n }\n }\n\n // change topbar theme\n changeTopbarTheme(e) {\n if (e.target.checked) {\n this.props.changeTopbarTheme(e.target.value);\n }\n }\n\n render() {\n return (\n \n
\n \n
\n
\n {\n e.preventDefault()\n this.props.toggleRightSidebar(false)\n }}\n className=\"right-bar-toggle float-end\"\n >\n \n \n
Settings
\n
\n\n
\n\n
\n
\n Layouts\n \n \n {\" \"}\n \n \n
\n\n
\n\n
\n \n Layout Width\n \n \n \n {\" \"}\n \n \n \n \n
\n\n
\n\n
\n \n Topbar Theme\n \n \n\n \n {\" \"}\n \n \n {this.state.layoutType === \"vertical\" ? null : (\n <>\n {\" \"}\n \n {\" \"}\n \n )}\n
\n\n {this.state.layoutType === \"vertical\" ? (\n \n
\n
\n \n Left Sidebar Type\n \n \n\n \n {\" \"}\n \n \n {\" \"}\n \n \n
\n\n
\n\n
\n \n Left Sidebar Color Options\n \n \n \n \n\n \n {\" \"}\n \n \n \n \n \n \n \n \n \n \n {\" \"}\n \n \n {\" \"}\n \n \n {\" \"}\n \n \n\n \n \n \n \n
\n\n
\n\n
\n \n Left Sidebar Bg Image\n \n
\n \n\n \n {\" \"}\n\n \n\n \n {\" \"}\n\n \n\n \n {\" \"}\n\n \n\n \n {\" \"}\n\n \n \n {\" \"}\n
\n
\n\n
\n
\n ) : null}\n\n \n \n Preloader\n \n\n
\n \n \n
\n
\n\n
Choose Layouts
\n\n
\n \n \n \n
\n\n
\n \n \n \n
\n\n
\n \n \n \n
\n\n \n Purchase Now\n \n
\n
\n
\n
\n
\n \n );\n }\n}\n\nRightSidebar.propTypes = {\n changeLayout: PropTypes.func,\n changeLayoutWidth: PropTypes.func,\n changePreloader: PropTypes.func,\n changeSidebarTheme: PropTypes.func,\n changeSidebarThemeImage: PropTypes.func,\n changeSidebarType: PropTypes.func,\n changeTopbarTheme: PropTypes.func,\n hideRightSidebar: PropTypes.func,\n isPreloader: PropTypes.bool,\n layoutType: PropTypes.any,\n layoutWidth: PropTypes.any,\n leftSideBarTheme: PropTypes.any,\n leftSideBarThemeImage: PropTypes.any,\n leftSideBarType: PropTypes.any,\n toggleRightSidebar: PropTypes.func,\n topbarTheme: PropTypes.any,\n};\n\nconst mapStatetoProps = state => {\n return { ...state.Layout };\n};\n\nexport default connect(mapStatetoProps, {\n hideRightSidebar,\n changeLayout,\n changeSidebarTheme,\n changeSidebarThemeImage,\n changeSidebarType,\n changeLayoutWidth,\n changeTopbarTheme,\n changePreloader,\n toggleRightSidebar\n})(RightSidebar);\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport { withRouter } from \"react-router-dom\";\nimport { I18nextProvider } from \"react-i18next\";\nimport i18n from \"../../i18n\";\n\nimport {\n changeLayout,\n changeTopbarTheme,\n toggleRightSidebar,\n changeLayoutWidth,\n} from \"../../store/actions\";\n\n// Other Layout related Component\nimport Navbar from \"./Navbar\";\nimport Header from \"./Header\";\nimport Footer from \"./Footer\";\nimport RightSidebar from \"../CommonForBoth/RightSidebar\";\n\nclass HorizontalLayout extends Component {\n constructor(props) {\n super(props);\n this.state = {\n isMenuOpened: false,\n };\n this.toggleRightSidebar = this.toggleRightSidebar.bind(this);\n this.hideRightbar = this.hideRightbar.bind(this);\n }\n\n /**\n * Open/close right sidebar\n */\n toggleRightSidebar() {\n this.props.toggleRightSidebar();\n }\n\n componentDidMount() {\n document.body.addEventListener(\"click\", this.hideRightbar, true);\n\n if (this.props.isPreloader === true) {\n document.getElementById(\"preloader\").style.display = \"block\";\n document.getElementById(\"status\").style.display = \"block\";\n\n setTimeout(function () {\n document.getElementById(\"preloader\").style.display = \"none\";\n document.getElementById(\"status\").style.display = \"none\";\n }, 2500);\n } else {\n document.getElementById(\"preloader\").style.display = \"none\";\n document.getElementById(\"status\").style.display = \"none\";\n }\n\n // Scrollto 0,0\n window.scrollTo(0, 0);\n\n // const title = this.props.location.pathname\n // let currentage = title.charAt(1).toUpperCase() + title.slice(2)\n\n // document.title =\n // currentage + \" | Lab Hazir - Dashboard\"\n\n this.props.changeLayout(\"horizontal\");\n if (this.props.topbarTheme) {\n this.props.changeTopbarTheme(this.props.topbarTheme);\n }\n if (this.props.layoutWidth) {\n this.props.changeLayoutWidth(this.props.layoutWidth);\n }\n }\n\n /**\n * Opens the menu - mobile\n */\n openMenu = e => {\n this.setState({ isMenuOpened: !this.state.isMenuOpened });\n };\n\n //hides right sidebar on body click\n hideRightbar = event => {\n var rightbar = document.getElementById(\"right-bar\");\n //if clicked in inside right bar, then do nothing\n if (rightbar && rightbar.contains(event.target)) {\n return;\n } else {\n if (document.body.classList.contains(\"right-bar-enabled\")) {\n this.props.toggleRightSidebar(false);\n }\n }\n };\n\n render() {\n return (\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
{this.props.children}
\n
\n
\n {this.props.showRightSidebar ? : null}\n
\n
\n );\n }\n}\n\nHorizontalLayout.propTypes = {\n changeLayout: PropTypes.func,\n changeLayoutWidth: PropTypes.func,\n changeTopbarTheme: PropTypes.func,\n children: PropTypes.object,\n isPreloader: PropTypes.bool,\n layoutWidth: PropTypes.string,\n location: PropTypes.object,\n showRightSidebar: PropTypes.any,\n toggleRightSidebar: PropTypes.func,\n topbarTheme: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n return {\n ...state.Layout,\n };\n};\nexport default connect(mapStateToProps, {\n changeTopbarTheme,\n toggleRightSidebar,\n changeLayout,\n changeLayoutWidth,\n})(withRouter(HorizontalLayout));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\nimport {\n Card,\n Button,\n CardBody,\n Col,\n Container,\n Pagination,\n PaginationItem,\n PaginationLink,\n Row,\n} from \"reactstrap\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\nimport \"nouislider/distribute/nouislider.css\";\n\n// import Header\nimport Header from \"components/HorizontalLayout/Header\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { any } from \"prop-types\";\n\nimport { getQualityCertificates } from \"store/quality-certificates/actions\";\nimport HorizontalLayout from \"components/HorizontalLayout\";\n\nclass LabQualityCertificates extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n qualityCertificates: [],\n qualityCertificate: \"\",\n certificateImg: \"\",\n modal: false,\n deleteModal: false,\n lab_name : \"\"\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { qualityCertificates, onGetQualityCertificates } = this.props;\n onGetQualityCertificates();\n this.setState({\n qualityCertificates,\n lab_name: this.props.qualityCertificates.length > 0 ? this.props.qualityCertificates[0].lab_name : \"\"\n });\n }\n componentDidUpdate(prevProps) {\n if (prevProps.qualityCertificates !== this.props.qualityCertificates) {\n this.setState({\n qualityCertificates: this.props.qualityCertificates,\n lab_name: this.props.qualityCertificates.length > 0 ? this.props.qualityCertificates[0].lab_name : \"\"\n });\n }\n }\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // eslint-disable-next-line no-unused-vars\n // componentDidUpdate(prevProps, prevState, snapshot) {\n // const { qualityCertificates } = this.props;\n // if (\n // isEmpty(prevProps.qualityCertificates) &&\n // !isEmpty(qualityCertificates) &&\n // size(qualityCertificates) !== size(prevProps.qualityCertificates)\n // ) {\n // this.setState({ qualityCertificates });\n // }\n // }\n\n toggleTab(tab) {\n if (this.state.activeTab !== tab) {\n this.setState({\n activeTab: tab,\n });\n }\n }\n\n handlePageClick = page => {\n this.setState({ page });\n };\n\n render() {\n const { page, totalPage } = this.state;\n const { qualityCertificates } = this.props.qualityCertificates;\n const { lab_name } = this.state;\n return (\n \n
\n \n Quality Certificates List | Lab Hazir\n \n \n {/* */}\n

Quality Certificates of {lab_name}

\n \n {!isEmpty(this.props.qualityCertificates) && (\n
ISO Certificates
\n )}\n {!isEmpty(this.props.qualityCertificates) &&\n this.props.qualityCertificates.map(\n (qualityCertificate, key) => (\n qualityCertificate.certificate_type == \"ISO 9001 Certificate\" || qualityCertificate.certificate_type == \"ISO 15189 Certificate\" ? (\n\n \n \n \n\n\n
\n
\n {qualityCertificate.name}{\" \"}\n
\n
\n {qualityCertificate.lab_name}{\" \"}\n
\n\n
\n \n Certificate\n For : {qualityCertificate.type}{\" \"}\n \n
\n\n
\n \n {\" \"}\n Expiry Date:{\" \"}\n {new Date(\n qualityCertificate.expiry_date\n ).toLocaleDateString(\"en-US\")}\n \n
\n\n
\n \n {\" \"}\n View Certificate\n {\" \"}\n
\n
\n
\n
\n \n ) : null\n )\n )}\n
\n \n \n {!isEmpty(this.props.qualityCertificates) && (\n
EQA Certificates
\n )}\n {!isEmpty(this.props.qualityCertificates) &&\n this.props.qualityCertificates.map(\n (qualityCertificate, key) => (\n qualityCertificate.certificate_type == \"EQA Certificate\" && (\n\n \n \n \n\n\n
\n
\n {qualityCertificate.name}{\" \"}\n
\n
\n {qualityCertificate.lab_name}{\" \"}\n
\n\n
\n \n Certificate\n For : {qualityCertificate.type}{\" \"}\n \n
\n\n
\n \n {\" \"}\n Expiry Date:{\" \"}\n {new Date(\n qualityCertificate.expiry_date\n ).toLocaleDateString(\"en-US\")}\n \n
\n\n
\n \n {\" \"}\n View Certificate\n {\" \"}\n
\n
\n
\n
\n \n )\n )\n )}\n
\n \n {!isEmpty(this.props.qualityCertificates) && (\n
Others Certificates
\n )} {!isEmpty(this.props.qualityCertificates) &&\n this.props.qualityCertificates.map(\n (qualityCertificate, key) => (\n qualityCertificate.certificate_type !== \"EQA Certificate\" && qualityCertificate.certificate_type !== \"ISO 9001 Certificate\" && qualityCertificate.certificate_type !== \"ISO 15189 Certificate\" && (\n \n \n \n\n\n
\n
\n {qualityCertificate.name}{\" \"}\n
\n
\n {qualityCertificate.lab_name}{\" \"}\n
\n\n
\n \n Certificate\n For : {qualityCertificate.type}{\" \"}\n \n
\n\n
\n \n {\" \"}\n Expiry Date:{\" \"}\n {new Date(\n qualityCertificate.expiry_date\n ).toLocaleDateString(\"en-US\")}\n \n
\n\n
\n \n {\" \"}\n View Certificate\n {\" \"}\n
\n
\n
\n
\n \n )\n )\n )}\n\n
\n \n {isEmpty(this.props.qualityCertificates) && (\n \n \n
\n

\n Sorry, no result found.\n

\n
\n \n
\n )}\n
\n\n \n \n \n \n this.handlePageClick(page - 1)}\n />\n \n {map(Array(totalPage), (item, i) => (\n \n this.handlePageClick(i + 1)}\n href=\"#\"\n >\n {i + 1}\n \n \n ))}\n \n this.handlePageClick(page + 1)}\n />\n \n \n \n \n
\n
\n
\n
\n );\n }\n}\n\nLabQualityCertificates.propTypes = {\n match: PropTypes.object,\n qualityCertificates: PropTypes.array,\n className: PropTypes.any,\n onGetQualityCertificates: PropTypes.func,\n};\n\nconst mapStateToProps = ({ qualityCertificates }) => ({\n qualityCertificates: qualityCertificates.qualityCertificates,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetQualityCertificates: () =>\n dispatch(getQualityCertificates(ownProps.match.params.lab_account_id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(LabQualityCertificates));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Pagination,\n PaginationItem,\n PaginationLink,\n Modal,\n} from \"reactstrap\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\nimport \"nouislider/distribute/nouislider.css\";\n\n// import Header\nimport Header from \"components/HorizontalLayout/Header\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { any } from \"prop-types\";\n\nimport { getSampleCollectors } from \"store/sample-collectors/actions\";\nimport HorizontalLayout from \"components/HorizontalLayout\";\n\nclass LabSampleCollectors extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n sampleCollectors: [],\n sampleCollector: \"\",\n collectorImg: \"\",\n modal: false,\n deleteModal: false,\n lab_name: \"\",\n // sampleCollectorListColumns: [\n // {\n // text: \"id\",\n // dataField: \"id\",\n // sort: true,\n // hidden: true,\n // formatter: (cellContent, sampleCollector) => (\n // <>{sampleCollector.id}\n // ),\n // },\n // {\n // dataField: \"img\",\n // text: \"#\",\n // formatter: (cellContent, sampleCollector) => (\n // <>\n // {!sampleCollector.photo ? (\n //
\n // \n // {sampleCollector.name.charAt(0)}\n // \n //
\n // ) : (\n //
\n // \n //
\n // )}\n // \n // ),\n // },\n // {\n // dataField: \"name\",\n // text: \"Name\",\n // sort: true,\n // },\n // {\n // dataField: \"gender\",\n // text: \"Gender\",\n // sort: true,\n // },\n // {\n // dataField: \"cnic\",\n // text: \"CNIC\",\n // sort: true,\n // },\n // {\n // dataField: \"phone\",\n // text: \"Mobile No.\",\n // sort: true,\n // },\n // ],\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { sampleCollectors, onGetSampleCollectors } = this.props;\n onGetSampleCollectors();\n this.setState({ sampleCollectors,\n lab_name: this.props.sampleCollectors.length > 0 ? this.props.sampleCollectors[0].lab_name : \"\"\n });\n }\n componentDidUpdate(prevProps) {\n if (prevProps.sampleCollectors !== this.props.sampleCollectors) {\n this.setState({\n sampleCollectors: this.props.sampleCollectors,\n lab_name: this.props.sampleCollectors.length > 0 ? this.props.sampleCollectors[0].lab_name : \"\"\n });\n }\n }\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // eslint-disable-next-line no-unused-vars\n // componentDidUpdate(prevProps, prevState, snapshot) {\n // const { sampleCollectors } = this.props;\n // if (\n // isEmpty(prevProps.sampleCollectors) &&\n // !isEmpty(sampleCollectors) &&\n // size(sampleCollectors) !== size(prevProps.sampleCollectors)\n // ) {\n // this.setState({ sampleCollectors });\n // }\n // }\n\n toggleTab(tab) {\n if (this.state.activeTab !== tab) {\n this.setState({\n activeTab: tab,\n });\n }\n }\n\n handlePageClick = page => {\n this.setState({ page });\n };\n\n render() {\n const { page, totalPage } = this.state;\n const { sampleCollectors } = this.props.sampleCollectors;\n const {lab_name } = this.state;\n return (\n \n
\n \n Home Sample Collectors List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n {/* */}\n

Sample Collectors of {lab_name}

\n \n \n {!isEmpty(this.props.sampleCollectors) &&\n this.props.sampleCollectors.map((sampleCollector, key) => (\n \n \n \n
\n \n
\n\n
\n
\n {sampleCollector.lab_name}{\" \"}\n
\n
\n {sampleCollector.name}{\" \"}\n
\n \n\n {/*
\n \n {\" \"}\n Gender: {sampleCollector.gender}{\" \"}\n \n
*/}\n {/*
\n \n {\" \"}\n CNIC: {sampleCollector.cnic}{\" \"}\n \n
*/}\n {/*
\n \n {\" \"}\n Mobile No : {sampleCollector.phone}{\" \"}\n \n
*/}\n
\n
\n
\n \n ))}\n\n {isEmpty(this.props.sampleCollectors) && (\n \n \n
\n

\n Sorry, no result found.\n

\n
\n \n
\n )}\n
\n\n {/* \n \n \n \n this.handlePageClick(page - 1)}\n />\n \n {map(Array(totalPage), (item, i) => (\n \n this.handlePageClick(i + 1)}\n href=\"#\"\n >\n {i + 1}\n \n \n ))}\n \n this.handlePageClick(page + 1)}\n />\n \n \n \n */}\n
\n
\n
\n
\n );\n }\n}\n\nLabSampleCollectors.propTypes = {\n match: PropTypes.object,\n sampleCollectors: PropTypes.array,\n className: PropTypes.any,\n onGetSampleCollectors: PropTypes.func,\n};\n\nconst mapStateToProps = ({ sampleCollectors }) => ({\n sampleCollectors: sampleCollectors.sampleCollectors,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetSampleCollectors: () =>\n dispatch(getSampleCollectors(ownProps.match.params.lab_account_id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(LabSampleCollectors));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Pagination,\n PaginationItem,\n PaginationLink,\n Modal,\n} from \"reactstrap\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\nimport \"nouislider/distribute/nouislider.css\";\n\n// import Header\nimport Header from \"components/HorizontalLayout/Header\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { any } from \"prop-types\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport {\n getPathologists,\n addNewPathologist,\n updatePathologist,\n deletePathologist,\n} from \"store/pathologists/actions\";\n\nimport HorizontalLayout from \"components/HorizontalLayout\";\n\nclass LabPathologists extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n pathologists: [],\n pathologist: \"\",\n modal: false,\n deleteModal: false,\n lab_name: \"\",\n // pathologistListColumns: [\n // {\n // text: \"id\",\n // dataField: \"id\",\n // sort: true,\n // hidden: true,\n // formatter: (cellContent, pathologist) => <>{pathologist.id},\n // },\n // {\n // dataField: \"name\",\n // text: \"Name\",\n // sort: true,\n // },\n // {\n // dataField: \"email\",\n // text: \"Email\",\n // sort: true,\n // },\n // {\n // dataField: \"phone\",\n // text: \"Phone No.\",\n // sort: true,\n // },\n // {\n // dataField: \"landline\",\n // text: \"Landline\",\n // sort: true,\n // },\n // {\n // dataField: \"designation\",\n // text: \"Designation\",\n // sort: true,\n // },\n // {\n // dataField: \"is_available_for_consultation\",\n // text: \"Available for consultation\",\n // sort: true,\n // },\n // {\n // dataField: \"is_available_on_whatsapp\",\n // text: \"Available on WhatsApp\",\n // sort: true,\n // },\n // {\n // dataField: \"is_associated_with_pap\",\n // text: \"Associated with PAP\",\n // sort: true,\n // },\n // ],\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { pathologists, onGetPathologists } = this.props;\n onGetPathologists();\n this.setState({ \n pathologists,\n lab_name: this.props.pathologists.length > 0 ? this.props.pathologists[0].lab_name : \"\"\n });\n }\n componentDidUpdate(prevProps) {\n if (prevProps.pathologists !== this.props.pathologists) {\n this.setState({\n pathologists: this.props.pathologists,\n lab_name: this.props.pathologists.length > 0 ? this.props.pathologists[0].lab_name : \"\"\n });\n }\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // eslint-disable-next-line no-unused-vars\n // componentDidUpdate(prevProps, prevState, snapshot) {\n // const { pathologists } = this.props;\n // if (\n // isEmpty(prevProps.pathologists) &&\n // !isEmpty(pathologists) &&\n // size(pathologists) !== size(prevProps.pathologists)\n // ) {\n // this.setState({ pathologists });\n // }\n // }\n\n // onPaginationPageChange = page => {\n // if (\n // this.node &&\n // this.node.current &&\n // this.node.current.props &&\n // this.node.current.props.pagination &&\n // this.node.current.props.pagination.options\n // ) {\n // this.node.current.props.pagination.options.onPageChange(page);\n // }\n // };\n\n render() {\n const { page, totalPage } = this.state;\n const { pathologists } = this.props.pathologists;\n const {lab_name } = this.state;\n return (\n \n
\n \n Pathologists List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n {/* {\" \"} */}\n

Pathologists of {lab_name}

\n \n \n {!isEmpty(this.props.pathologists) &&\n this.props.pathologists.map((pathologist, key) => (\n \n \n \n {pathologist.photo && (\n
\n \n
\n )}\n\n
\n
\n {pathologist.lab_name}{\" \"}\n
\n
\n {pathologist.name}{\" \"}\n
\n \n {/* {pathologist.designation &&
\n \n {\" \"}\n Designation : {pathologist.designation}{\" \"}\n \n
\n }\n {pathologist.email &&
\n \n Email :{\" \"}\n {pathologist.email}{\" \"}\n \n
\n }\n {pathologist.phone && (\n
\n \n {\" \"}\n Mobile No/ WhatsApp: {pathologist.phone}{\" \"}\n \n
\n )} */}\n\n {/* {\n pathologist.landline && (\n
\n \n Landline\n No : {pathologist.landline}{\" \"}\n \n
\n )} */}\n {/*
\n \n \n {\" \"}\n Available for Consultation : {pathologist.is_available_for_consultation}{\" \"}\n \n
*/}\n {/*
\n \n \n {\" \"}\n Available on WhatsApp : {pathologist.is_available_on_whatsapp}{\" \"}\n \n
*/}\n\n {pathologist.qualification && (\n
\n \n {\" \"}\n Qualification: {pathologist.qualification}{\" \"}\n \n
\n )}\n\n {pathologist.speciality && (\n
\n \n {\" \"}\n Speciality: {pathologist.speciality}{\" \"}\n \n
\n )}\n\n {pathologist.pmdc_reg_no && (\n
\n \n {\" \"}\n PMDC Reg No: {pathologist.pmdc_reg_no}{\" \"}\n \n
\n )}\n\n {this.state.pathologists.is_available_for_consultation == \"Yes\" &&\n
\n \n {\" \"}\n Available for Online Consultation:{\" \"}\n {pathologist.is_available_for_consultation}{\" \"}\n \n
\n }\n {this.state.pathologists.is_available_on_whatsapp == \"Yes\"\n &&
\n \n {\" \"}\n Available on WhatsApp:{\" \"}\n {pathologist.is_available_on_whatsapp}{\" \"}\n \n
\n }\n {this.state.pathologists.is_associated_with_pap == \"Yes\"\n &&
\n \n {\" \"}\n Associated with PAP :{\" \"}\n {pathologist.is_associated_with_pap}{\" \"}\n \n
\n }\n
\n
\n
\n \n ))}\n\n {isEmpty(this.props.pathologists) && (\n \n \n
\n

\n Sorry, no result found.\n

\n
\n \n
\n )}\n
\n \n \n \n \n this.handlePageClick(page - 1)}\n />\n \n {map(Array(totalPage), (item, i) => (\n \n this.handlePageClick(i + 1)}\n href=\"#\"\n >\n {i + 1}\n \n \n ))}\n \n this.handlePageClick(page + 1)}\n />\n \n \n \n \n
\n
\n
\n
\n );\n }\n}\n\nLabPathologists.propTypes = {\n match: PropTypes.object,\n pathologists: PropTypes.array,\n className: PropTypes.any,\n onGetPathologists: PropTypes.func,\n};\n\nconst mapStateToProps = ({ pathologists }) => ({\n pathologists: pathologists.pathologists,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetPathologists: () =>\n dispatch(getPathologists(ownProps.match.params.lab_account_id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(LabPathologists));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\n// import Select from \"react-select\";\nimport { Formik, Field, Form } from \"formik\";\nimport ScrollButton from \"components/Common/Scrollbutton\";\nimport * as Yup from \"yup\";\nimport MetaTags from \"react-meta-tags\";\nimport { connect } from \"react-redux\";\nimport { Redirect, Link, withRouter } from \"react-router-dom\";\nimport { v4 as uuidv4 } from 'uuid';\nimport { Collapse } from \"reactstrap\";\nimport classname from \"classnames\";\nimport logo from \"../../../assets/images/logo.svg\";\nimport logoLight from \"../../../assets/images/logo-light.png\";\nimport logoLightSvg from \"../../../assets/images/logo-light.svg\";\nimport Select, { components } from 'react-select';\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport \"../../../components/HorizontalLayout/horizontal-navbar.scss\";\nimport {\n Card,\n CardBody,\n CardTitle,\n Col,\n Modal,\n ModalBody,\n ModalHeader,\n Container,\n Button,\n Input,\n Label,\n Pagination,\n PaginationItem,\n PaginationLink,\n Row,\n} from \"reactstrap\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\n//Import Star Ratings\nimport StarRatings from \"react-star-ratings\";\n\n// RangeSlider\nimport Nouislider from \"nouislider-react\";\nimport \"nouislider/distribute/nouislider.css\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\n//Import data\nimport { productsData } from \"common/data\";\n// import { getPatientProfile } from \"store/labmarket/actions\";\n\n//Import actions\nimport { getCorporateLabs, getAdvLive } from \"store/labmarket/actions\";\nimport { any } from \"prop-types\";\nimport \"./nearbylabs.scss\";\n\nimport { CITIES } from \"helpers/global_variables_helper\";\nimport { getTerritoriesList } from \"store/territories-list/actions\";\nimport { getLabNamesList } from \"store/lab-names/actions\";\n\nimport offeredTestsList from \"pages/OfferedTests/offered-tests-list\";\n\nfunction formatTime(timeString) {\n const [hours, minutes] = timeString.split(':');\n const date = new Date(2000, 0, 1, parseInt(hours), parseInt(minutes), 0);\n\n // Convert to 12-hour format with AM/PM\n const formattedTime = date.toLocaleString('en-US', {\n hour: 'numeric',\n minute: 'numeric',\n hour12: true,\n timeZone: 'Asia/Karachi', // Adjust to the desired time zone (Islamabad)\n });\n\n return formattedTime;\n}\n\n\nclass NearbyLabs extends Component {\n constructor(props) {\n super(props);\n this.state = {\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n patient_name: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).patient_name\n : \"\",\n position: \"right\",\n ratingvalues: [],\n locationAccessAllowed: \"\",\n corporatepatient: \"\",\n corporateLab: [],\n // patientProfile: [],\n advLives: [],\n territoriesList: [],\n labNamesList: [],\n selectedLabName: \"\", // State to store the selected lab name\n filteredLabs: [], // State to store the filtered labs\n labNameInput: '', // Store the lab name input by the user\n filteredLabNames: [],\n name: \"\",\n advLive: \"\",\n activeTab: \"1\",\n address: \"\",\n search_type: \"\",\n city: \"\",\n latitude: \"\",\n km: \"30\",\n LabType: \"\",\n longitude: \"\",\n location: \"\",\n currentLatitude: \"\",\n currentLongitude: \"\",\n discountData: [],\n loading: true, // Add loading state property\n filters: {\n discount: [],\n price: { min: 0, max: 500 },\n },\n page: 1,\n totalPage: 5, //replace this with total pages of data\n };\n this.toggleTab = this.toggleTab.bind(this);\n this.onSelectRating = this.onSelectRating.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n console.log(\"yaha ani chahi hai uuid\", this.props.match.params.id, this.props.match.params.guest_id, this.state.user_id, this.props.match.params.filnalurl)\n console.log(this.state.user_type)\n }\n\n componentDidMount() {\n\n // const { onGetPatientProfile } = this.props;\n\n // // Assuming onGetPatientProfile is synchronous\n // console.log(\"this is patient profile\", onGetPatientProfile(this.state.user_id));\n\n // // Now you can safely access patientProfile from props\n // const { patientProfile } = this.props;\n const {\n onGetCorporateLabs,\n } = this.props;\n const { territoriesList, onGetTerritoriesList } = this.props;\n if (territoriesList && !territoriesList.length) {\n console.log(onGetTerritoriesList(this.state.user_id));\n }\n const { labNamesList, onGetLabNamesList } = this.props;\n\n if (labNamesList && !labNamesList.length) {\n console.log(onGetLabNamesList(this.state.user_id));\n }\n let matchingMenuItem = null;\n const ul = document.getElementById(\"navigation\");\n const items = ul.getElementsByTagName(\"a\");\n for (let i = 0; i < items.length; ++i) {\n if (this.props.location.pathname === items[i].pathname) {\n matchingMenuItem = items[i];\n break;\n }\n }\n if (matchingMenuItem) {\n this.activateParentDropdown(matchingMenuItem);\n }\n\n\n\n let latitude;\n let longitude;\n\n const url = window.location.href;\n const queryString = url.substring(url.indexOf('&') + 1);\n const params = new URLSearchParams(queryString);\n console.log(\"print params in app\", url, queryString, params)\n\n const latitudeFromUrl = params.get('lat');\n const longitudeFromUrl = params.get('lon');\n\n console.log('Latitude:', latitudeFromUrl);\n console.log('Longitude:', longitudeFromUrl);\n\n if (latitudeFromUrl && longitudeFromUrl) {\n // Use latitude and longitude from URL\n latitude = parseFloat(latitudeFromUrl);\n longitude = parseFloat(longitudeFromUrl);\n console.log(\"print lat log in app\", latitude, longitude);\n\n // Call the dependent code here or pass the latitude and longitude values as arguments\n this.handleLocationUpdate(latitude, longitude);\n } else {\n if (navigator.geolocation) {\n // const nearbyLabsLocationDetails = {\n // latitude,\n // longitude,\n // search_type: this.state.search_type,\n // address: this.state.address,\n // city: this.state.city,\n // km: this.state.km,\n // LabType: this.state.LabType,\n // name: this.state.name,\n // locationAccessAllowed: this.state.locationAccessAllowed,\n // corporatepatient: this.props.match.params.id,\n // };\n // // Call onGetCorporateLabs before prompting for geolocation\n // onGetCorporateLabs(nearbyLabsLocationDetails);\n // setTimeout(() => {\n // this.setState({ corporateLab: this.props.corporateLab });\n // }, 500);\n navigator.geolocation.getCurrentPosition((position) => {\n latitude = position.coords.latitude;\n longitude = position.coords.longitude;\n console.log(\"web\", latitude, longitude);\n\n this.setState({ currentLatitude: latitude });\n this.setState({ currentLongitude: longitude });\n this.setState({ locationAccessAllowed: true });\n this.setState({ search_type: \"Current Location\" });\n this.setState({ LabType: \"Main\" });\n\n\n // near by labs\n const nearbyLabsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.match.params.id,\n\n };\n console.log(window.location.href);\n if (latitude && longitude) {\n onGetCorporateLabs(nearbyLabsLocationDetails);\n\n setTimeout(() => {\n this.setState({ corporateLab: this.props.corporateLab });\n }, 500);\n }\n this.setState({ loading: true, corporateLab: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n }, () => {\n this.setState({ latitude: null, longitude: null });\n // near by labs\n const nearbyLabsLocationDetails = {\n latitude,\n longitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.match.params.id,\n name: this.state.name,\n };\n onGetCorporateLabs(nearbyLabsLocationDetails);\n\n setTimeout(() => {\n this.setState({ corporateLab: this.props.corporateLab });\n }, 500);\n this.setState({ loading: true, corporateLab: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n }\n );\n } else {\n // Geolocation is not supported by the browser\n console.log(\"Geolocation is not supported by the browser.\");\n // Handle this scenario as needed, e.g., display an error message or provide alternative functionality.\n }\n }\n }\n\n // componentWillUnmount() {\n // // Remove the event listener before the component unmounts\n // window.removeEventListener('beforeunload', () => {\n // localStorage.setItem('corporateLab', JSON.stringify(this.state.corporateLab));\n // });\n // }\n\n handleLocationUpdate(latitude, longitude) {\n const { onGetCorporateLabs } = this.props;\n // const guest_id = uuidv4();\n // console.log(\"uuid in nearby lab:\",this.state.user_id)\n\n setTimeout(() => {\n this.setState({ currentLatitude: latitude });\n this.setState({ currentLongitude: longitude });\n // this.setState({ guest_id: guest_id });\n var locationDetails = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n address: this.state.address,\n city: this.state.city,\n km: this.state.km,\n LabType: this.state.LabType,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.match.params.id,\n\n };\n if (this.state.currentLatitude && this.state.currentLongitude) {\n onGetCorporateLabs(locationDetails);\n // Clear previous quotes\n setTimeout(() => {\n this.setState({ corporateLab: this.props.corporateLab });\n // console.log(\"guest id in near by labs and backend;\", { corporateLab: this.props.corporateLab, guest_id })\n\n }, 1000);\n this.setState({ loading: true, corporateLab: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n }\n }, 1000);\n }\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { corporateLab } = this.props;\n if (\n isEmpty(prevProps.corporateLab) &&\n !isEmpty(corporateLab) &&\n size(corporateLab) !== size(prevProps.corporateLab)\n ) {\n this.setState({ corporateLab });\n }\n }\n\n toggleTab(tab) {\n if (this.state.activeTab !== tab) {\n this.setState({\n activeTab: tab,\n });\n }\n }\n\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n onSelectDiscount = e => {\n const { value, checked } = e.target;\n const {\n filters,\n filters: { discount },\n } = this.state;\n this.setState(\n {\n filters: {\n ...filters,\n discount: discount.find(item => item === value)\n ? discount.filter(item => item !== value)\n : [...discount, value],\n },\n },\n () => {\n this.onFilterProducts(value, checked);\n }\n );\n };\n\n onFilterProducts = (value, checked) => {\n const {\n filters: { discount },\n } = this.state;\n let filteredProducts = productsData;\n if (!!checked && parseInt(value) === 0) {\n filteredProducts = productsData.filter(\n nearbyLab => nearbyLab.offer < 100\n );\n } else if (discount.length > 0) {\n filteredProducts = productsData.filter(\n nearbyLab => nearbyLab.offer >= Math.min(...discount)\n );\n }\n this.setState({ corporateLab: filteredProducts });\n };\n\n onUpdate = (render, handle, value) => {\n this.setState({\n corporateLab: productsData.filter(\n nearbyLab =>\n nearbyLab.newPrice >= value[0] && nearbyLab.newPrice <= value[1]\n ),\n });\n };\n\n\n /*\n on change rating checkbox method\n */\n onChangeRating = value => {\n this.setState({\n corporateLab: productsData.filter(nearbyLab => nearbyLab.rating >= value),\n });\n\n var modifiedRating = [...this.state.ratingvalues];\n modifiedRating.push(value);\n this.setState({ ratingvalues: modifiedRating });\n };\n\n onSelectRating = value => {\n this.setState({\n corporateLab: productsData.filter(nearbyLab => nearbyLab.rating === value),\n });\n };\n\n onUncheckMark = value => {\n var modifiedRating = [...this.state.ratingvalues];\n const modifiedData = (modifiedRating || []).filter(x => x !== value);\n /*\n find min values\n */\n var filteredProducts = productsData;\n if (modifiedData && modifiedData.length && value !== 1) {\n var minValue = Math.min(...modifiedData);\n if (minValue && minValue !== Infinity) {\n filteredProducts = productsData.filter(\n nearbyLab => nearbyLab.rating >= minValue\n );\n\n this.setState({ ratingvalues: modifiedData });\n }\n } else {\n filteredProducts = productsData;\n }\n this.setState({ corporateLab: filteredProducts });\n };\n\n handlePageClick = page => {\n this.setState({ page });\n };\n\n onChangeAddress = e => {\n const { onGetCorporateLabs } = this.props;\n\n // Apply that city's latitude and longitude as city bound so that we see addresses of that city only\n var cityBounds = new google.maps.LatLngBounds(\n new google.maps.LatLng(this.state.latitude, this.state.longitude)\n );\n\n // Initialize AutocompleteService\n const autocompleteService = new google.maps.places.AutocompleteService();\n\n // Call AutocompleteService to get place predictions\n autocompleteService.getPlacePredictions(\n {\n input: e.target.value,\n bounds: cityBounds,\n types: [\"geocode\", \"establishment\"],\n },\n (predictions, status) => {\n if (status === google.maps.places.PlacesServiceStatus.OK) {\n // Filter predictions to include only those inside Pakistan\n const pakistanPredictions = predictions.filter(prediction => {\n return (\n prediction.structured_formatting.main_text_matched_substrings.some(\n match => match.offset === 0\n ) &&\n prediction.terms.some(term => term.value === \"Pakistan\")\n );\n });\n\n // Handle predictions, e.g., update the state or perform further actions\n const locationDetails = {\n // Extract relevant details from the first prediction\n latitude:\n pakistanPredictions.length > 0\n ? pakistanPredictions[0].geometry.location.lat()\n : \"\",\n longitude:\n pakistanPredictions.length > 0\n ? pakistanPredictions[0].geometry.location.lng()\n : \"\",\n search_type: this.state.search_type,\n address: e.target.value,\n city: this.state.city,\n LabType: this.state.LabType,\n km: this.state.km,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.match.params.id,\n\n };\n\n // Call the action to get nearby labs\n onGetCorporateLabs(locationDetails);\n\n // Update state after a delay (if needed)\n setTimeout(() => {\n this.setState({ corporateLab: this.props.corporateLab });\n }, 1000);\n } else {\n console.error(\"AutocompleteService failed with status:\", status);\n }\n this.setState({ loading: true, corporateLab: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n }\n );\n };\n\n onChangeSearchType = async e => {\n this.setState({ search_type: e.target.value });\n\n // Call nearby tests API only if the search type changes to current location\n if (e.target.value === \"Current Location\") {\n this.setState({ city: \"\" });\n this.setState({ address: \"\" });\n\n // Check if the geolocation API is supported\n if (\"geolocation\" in navigator) {\n try {\n const locationPermission = await navigator.permissions.query({ name: 'geolocation' });\n\n if (locationPermission.state === 'denied' && !this.state.locationAccessAllowed) {\n // Location access is denied\n // Show the PatientModal only when the user explicitly clicks on \"Current Location\"\n this.setState({ PatientModal: true });\n } else {\n // Location access is prompted, ask the user for permission\n const position = await new Promise((resolve, reject) => {\n navigator.geolocation.getCurrentPosition(resolve, reject);\n });\n\n var data = {\n latitude: position.coords.latitude,\n longitude: position.coords.longitude,\n search_type: e.target.value,\n address: this.state.address,\n city: this.state.city,\n test_name: this.state.test_name,\n LabType: this.state.LabType,\n km: this.state.km,\n page: this.state.page,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.match.params.id,\n\n };\n\n const { onGetCorporateLabs } = this.props;\n onGetCorporateLabs(data);\n\n this.setState({ corporateLab: [] });\n\n setTimeout(() => {\n this.setState({ corporateLab: this.props.corporateLab, locationAccessAllowed: true });\n }, 1000);\n }\n } catch (error) {\n console.error('Error checking location permission:', error);\n }\n } else {\n // Geolocation API is not supported, show an error message\n this.setState({ PatientModal: true }); // Show the modal for error\n }\n this.setState({ loading: true, corporateLab: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n }\n };\n\n onChangeKm = e => {\n this.setState({ km: e.target.value });\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetCorporateLabs } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var locationDetails = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n km: e.target.value,\n LabType: this.state.LabType,\n address: this.state.address,\n city: this.state.city,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.match.params.id,\n\n };\n // region wise advertisement\n onGetCorporateLabs(locationDetails);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n\n setTimeout(() => {\n this.setState({ corporateLab: this.props.corporateLab });\n }, 1000);\n this.setState({ loading: true, corporateLab: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n };\n clearSearch = () => {\n this.setState({\n selectedLab: null,\n name: null, // Clear the 'name' property as well if needed\n });\n };\n\n onChangeLabName = (selectedOption) => {\n // Check if selectedOption is not null before accessing its properties\n if (selectedOption && selectedOption.value) {\n this.setState({ name: selectedOption.value });\n } else {\n // Handle the case where selectedOption is null or doesn't have a value property\n this.setState({ name: '' }); // Set the name to an appropriate default value or leave it empty\n }\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetCorporateLabs } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var locationDetails = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n name: selectedOption && selectedOption.value ? selectedOption.value : '', // Check if selectedOption is not null and has a value property\n LabType: this.state.LabType,\n km: this.state.km,\n address: this.state.address,\n city: this.state.city,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.match.params.id,\n\n };\n // region wise advertisement\n onGetCorporateLabs(locationDetails);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n\n setTimeout(() => {\n this.setState({ corporateLab: this.props.corporateLab });\n }, 1000);\n this.setState({ loading: true, corporateLab: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n };\n onChangeType = e => {\n this.setState({ LabType: e.target.value });\n\n // Call nearby labs API only if the search type changes to current location\n\n const { onGetCorporateLabs } = this.props;\n // const { onGetAdvLive } = this.props;\n // const { onGetRegionWiseAdvertisement } = this.props;\n\n var locationDetails = {\n latitude: this.state.currentLatitude,\n longitude: this.state.currentLongitude,\n search_type: this.state.search_type,\n LabType: e.target.value,\n km: this.state.km,\n address: this.state.address,\n city: this.state.city,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.match.params.id,\n\n };\n // region wise advertisement\n onGetCorporateLabs(locationDetails);\n // onGetAdvLive(locationDetails);\n // onGetRegionWiseAdvertisement(locationDetails);\n this.setState({ corporateLab: [] });\n\n setTimeout(() => {\n this.setState({ corporateLab: this.props.corporateLab });\n }, 1000);\n this.setState({ loading: true, corporateLab: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n };\n\n onChangeCity = selectedGroup => {\n this.setState({ city: selectedGroup.value });\n\n const { onGetCorporateLabs } = this.props;\n\n var locationDetails = {\n latitude: \"\",\n longitude: \"\",\n search_type: this.state.search_type,\n address: this.state.address,\n city: selectedGroup.value,\n LabType: this.state.LabType,\n km: this.state.km,\n name: this.state.name,\n locationAccessAllowed: this.state.locationAccessAllowed,\n corporatepatient: this.props.match.params.id,\n\n };\n\n onGetCorporateLabs(locationDetails);\n\n this.setState({ corporateLab: [] });\n\n setTimeout(() => {\n this.setState({ corporateLab: this.props.corporateLab });\n }, 1000);\n\n var latitude = \"\";\n var longitude = \"\";\n\n setTimeout(() => {\n var geocoder = new google.maps.Geocoder();\n\n // Concatenate city selected with Pakistan, so that it can be set as proper address\n var address = selectedGroup.value + \", Pakistan\";\n\n // Using geocoder search address and get its latitude and longitude\n geocoder.geocode({ address: address }, function (results, status) {\n if (status == google.maps.GeocoderStatus.OK) {\n latitude = results[0].geometry.location.lat();\n longitude = results[0].geometry.location.lng();\n }\n });\n\n // Set the values of simple variables to the state variables of latitude and longitude\n // so that it can be used outside of this function\n setTimeout(() => {\n this.setState({ latitude: latitude });\n this.setState({ longitude: longitude });\n }, 1000);\n }, 1000);\n this.setState({ loading: true, corporateLab: [] });\n\n // Set loading state to false after 7 seconds\n setTimeout(() => {\n this.setState({ loading: false });\n }, 7000);\n };\n\n activateParentDropdown = item => {\n item.classList.add(\"active\");\n const parent = item.parentElement;\n if (parent) {\n parent.classList.add(\"active\"); // li\n const parent2 = parent.parentElement;\n parent2.classList.add(\"active\"); // li\n const parent3 = parent2.parentElement;\n if (parent3) {\n parent3.classList.add(\"active\"); // li\n const parent4 = parent3.parentElement;\n if (parent4) {\n parent4.classList.add(\"active\"); // li\n const parent5 = parent4.parentElement;\n if (parent5) {\n parent5.classList.add(\"active\"); // li\n const parent6 = parent5.parentElement;\n if (parent6) {\n parent6.classList.add(\"active\"); // li\n }\n }\n }\n }\n }\n return false;\n };\n shouldHighlightTestsLink() {\n const { location } = this.props;\n const currentURL = location.pathname;\n\n // Check if the URL contains \"nearby-test\"\n return currentURL.includes('/labs');\n }\n\n render() {\n const isSmallScreen = window.innerWidth < 490;\n // const { patientProfile } = this.props;\n // console.log(\"there is patient profile and yes and not\", this.props.patientProfile, this.props.match.params.id)\n\n const { search_type } = this.state;\n let borderColor = '2px solid blue'; // Default border color\n\n // Check the selected option and update border color accordingly\n if (search_type === 'Current Location') {\n borderColor = '2px solid red'; // Change to the desired color\n }\n if (search_type === 'City') {\n borderColor = '2px solid green'; // Change to the desired color\n }\n if (search_type === 'Custom Address') {\n borderColor = '2px solid yellow'; // Change to the desired color\n }\n\n const ClearIndicator = (props) => {\n return (\n \n X\n \n );\n };\n\n const isTestsLinkHighlighted = this.shouldHighlightTestsLink();\n\n const linkStyles = {\n color: isTestsLinkHighlighted ? 'black' : 'black', // Text color\n // backgroundColor: isTestsLinkHighlighted ? '#ffcc00' : 'transparent', // Background color\n fontWeight: isTestsLinkHighlighted ? 'bold' : 'normal',\n };\n\n const { labNameInput, filteredLabNames } = this.state;\n const { history } = this.props;\n const { discountData, corporateLab, page, totalPage } = this.state;\n // const labNames = generateLabNames(corporateLab);\n\n const cityList = [];\n for (let i = 0; i < this.props.territoriesList.length; i++) {\n cityList.push({\n label: this.props.territoriesList[i].city,\n value: this.props.territoriesList[i].city,\n });\n }\n const labNames = [];\n for (let i = 0; i < this.props.labNamesList.length; i++) {\n labNames.push({\n label: this.props.labNamesList[i].name,\n value: this.props.labNamesList[i].name,\n });\n }\n const closeModal = () => {\n this.setState({ PatientModal: false });\n this.setState({ AddressModal: false });\n\n\n };\n const { loading } = this.state;\n\n\n\n\n return (\n \n
\n
\n \n \n
    \n\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n
\n \n\n \n
\n
\n
\n \n Nearby Labs | Lab Hazir - Dashboard\n \n \n \n \n {/* \n \n \n Filter\n
\n
Price
\n
\n\n \n
\n\n
\n
Discount
\n {discountData.map((discount, i) => (\n
\n {\" \"}\n \n
\n ))}\n
\n\n
\n
Customer Rating
\n
\n
\n {\n if (e.target.checked) {\n this.onChangeRating(4);\n } else {\n this.onUncheckMark(4);\n }\n }}\n />{\" \"}\n \n 4 & Above\n \n
\n
\n {\n if (e.target.checked) {\n this.onChangeRating(3);\n } else {\n this.onUncheckMark(3);\n }\n }}\n />{\" \"}\n \n 3 & Above\n \n
\n
\n {\n if (e.target.checked) {\n this.onChangeRating(2);\n } else {\n this.onUncheckMark(2);\n }\n }}\n />{\" \"}\n \n 2 & Above\n \n
\n
\n {\n if (e.target.checked) {\n this.onSelectRating(1);\n } else {\n this.onUncheckMark(1);\n }\n }}\n />{\" \"}\n \n 1 \n \n
\n
\n
\n
\n
\n */}\n\n \n \n

How to enable location access on your browser

\n
\n \n \n
\n \n \n

On your Chrome browser

\n

\n 1. To the left of the address bar, click the Padlock icon {\" \"}

\n then select “Site Settings.”\n

\n

\n 2. Under Permissions, find Location and change it to\n Allow.\n

\n \n
\n \n Got It!\n \n
\n
\n
\n
\n
\n \n\n {/* */}\n {!isSmallScreen ? (\n \n (this.formik = formik)}\n enableReinitialize={true}\n initialValues={{\n // search_type:\n // (this.state && this.state.search_type) ||\n // \"Current Location\",\n city: (this.state && this.state.city) || \"\",\n name: (this.state && this.state.name) ||\n \"\",\n location: (this.state && this.state.location) || \"\",\n }}\n validationSchema={Yup.object().shape({\n city: Yup.string().when(\"search_type\", {\n is: val => val === \"Custom Address\",\n then: Yup.string().required(\"Please enter your City\"),\n }),\n location: Yup.string().when(\"city\", {\n is: val => val != \"\",\n then: Yup.string().required(\"Please enter your Location\"),\n }),\n })}\n >\n {({ errors, status, touched }) => (\n
\n {/* Type field */}\n \n {this.state.locationAccessAllowed === true ? (\n \n
\n \n Search Types\n \n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : (\n \n
\n \n Search Types\n \n this.onChangeSearchType(e)}\n value={search_type}\n className=\"form-select\"\n style={{\n border: borderColor,\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n \n
\n \n )}\n {this.state.search_type === 'City' && (\n \n
\n \n By City \n \n ({\n ...provided,\n border: '2px solid green',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {this.state.search_type === 'Custom Address' && (\n \n
\n \n Custom Address \n \n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Address..\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n />\n
\n \n )}\n {this.state.search_type === 'Custom Address' ? (\n \n
\n \n Km\n \n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\"\n className=\"form-control\"\n placeholder=\"km..\"\n style={{\n border: '2px solid yellow',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n ) : (this.state.search_type === 'Current Location' && (\n \n
\n \n Km\n \n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\"\n className=\"form-control\"\n placeholder=\"km..\"\n style={{\n border: '2px solid red',\n borderRadius: '5px',\n fontSize: '14px'\n // Add more style overrides as needed\n }}\n />\n
\n
\n \n )\n )}\n \n
\n \n Search By Lab Name\n \n option.value === this.state.name)}\n onChange={this.onChangeLabName}\n options={labNames}\n placeholder=\"Lab Name...\"\n isSearchable={true}\n isClearable={true}\n components={{\n ClearIndicator,\n }}\n styles={{\n control: (provided, state) => ({\n ...provided,\n border: '2px solid blue',\n borderRadius: '5px',\n }),\n // Add more style overrides as needed\n }}\n />\n
\n \n {/* \n
\n \n Search By Labs Type\n \n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n */}\n {this.state.locationAccessAllowed === true ? (\n \n
\n \n Search By Labs Type\n \n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n style={{\n border: '2px solid blue',\n borderRadius: '5px',\n // Add more style overrides as needed\n }}\n >\n \n \n \n \n
\n \n ) : null\n // (\n // \n //
\n // \n // Search By Labs Type\n // \n // this.onChangeType(e)}\n // value={this.state.LabType}\n // className=\"form-select\"\n // style={{\n // border: '2px solid blue',\n // borderRadius: '5px',\n // // Add more style overrides as needed\n // }}\n // >\n // \n // \n // \n // \n //
\n // \n // )\n }\n
\n
\n )}\n \n
\n ) : \n val === \"Custom Address\",\n then: Yup.string().required(\"Please enter your City\"),\n }),\n location: Yup.string().when(\"city\", {\n is: val => val != \"\",\n then: Yup.string().required(\n \"Please enter your Location\"\n ),\n }),\n })}\n >\n {({ errors, status, touched }) => (\n
\n {/* Type field */}\n {/* Type field */}\n

Search Labs for more result in Pakistan!

\n \n \n
\n option.value === this.state.name)}\n onChange={this.onChangeLabName}\n options={labNames}\n placeholder=\"Lab Name...\"\n isSearchable={true}\n isClearable={true}\n components={{\n ClearIndicator,\n }}\n\n />\n\n
\n \n \n
\n this.onChangeType(e)}\n value={this.state.LabType}\n className=\"form-select\"\n >\n \n \n \n \n
\n \n
\n \n \n
\n this.onChangeSearchType(e)}\n value={this.state.search_type}\n className=\"form-select\"\n >\n \n \n \n \n \n
\n \n\n {this.state.search_type === \"Current Location\" && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n style={{ fontSize: \"14px\" }} // Set input font size to 14 pixels\n placeholder=\"Search By Km...\"\n />\n
\n
\n \n )}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n
\n this.onChangeKm(e)}\n id=\"pac-input\"\n type=\"number\" // Change \"numbers\" to \"number\"\n className=\"form-control\"\n style={{ fontSize: \"14px\" }} // Set input font size to 14 pixels\n placeholder=\"Search By Km...\"\n />\n
\n
\n \n )}\n {/* City field */}\n {this.state.search_type === \"City\" && (\n \n
\n \n
\n \n )}\n {/* Custom Address field */}\n {this.state.search_type === \"Custom Address\" && (\n \n
\n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Search Location...\"\n />\n
\n \n )}\n
\n
\n )}\n \n
}\n\n\n {/* ROW FOR ADVERTISEMENT */}\n {/* */}\n {!isEmpty(corporateLab) && (!this.state.user_id) && (this.state.user_id) &&\n corporateLab.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.guest_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n \n \n
\n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n {/*
\n \n {\" \"}\n {nearbyLab.email}\n \n
*/}\n\n {/*
\n \n {\" \"}\n {nearbyLab.phone}\n \n
*/}\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n\n
\n \n \n \n ))}\n {!isEmpty(corporateLab) && (this.state.user_id) && (this.state.user_type !== \"CSR\") && (this.state.user_type !== \"b2bclient\") &&\n corporateLab.map((nearbyLab, key) => (\n \n \n history.push(\n this.props.match.params.uuid\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n \n \n
\n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n\n {/*
\n \n {\" \"}\n {nearbyLab.email}\n \n
*/}\n\n {/*
\n \n {\" \"}\n {nearbyLab.phone}\n \n
*/}\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n
\n \n ))}\n {!isEmpty(corporateLab) && (this.state.user_id) && (this.state.user_type === \"CSR\") && (this.state.user_type !== \"b2bclient\") &&\n corporateLab.map((nearbyLab, key) => (\n \n \n // history.push(\n // this.state.user_id\n // ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.props.match.params.guest_id}`\n // : `/nearby-lab-detail/${nearbyLab.account_id}`\n // )\n history.push(\n this.props.match.params.uuid\n ? `/${nearbyLab.account_id}/offered-test-by-lab-corporate/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/${nearbyLab.account_id}/offered-test-by-lab-corporate/${this.props.match.params.guest_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n
\n\n\n\n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n\n
\n \n \n \n ))}\n {!isEmpty(corporateLab) && (this.state.user_id) && (this.state.user_type !== \"CSR\") && (this.state.user_type === \"b2bclient\") &&\n corporateLab.map((nearbyLab, key) => (\n \n \n history.push(\n this.state.user_id\n ? `/nearby-lab-detail/${nearbyLab.account_id}/${this.state.user_id}/${this.props.match.params.uuid}`\n : `/nearby-lab-detail/${nearbyLab.account_id}`\n )\n } style={{ height: \"95%\" }}\n >\n \n \n {/*
\n \n
*/}\n \n \n \n\n\n \n\n
\n
\n \n {nearbyLab.name}{\" \"}\n \n
\n\n {nearbyLab.opening_time &&\n nearbyLab.closing_time &&\n nearbyLab.is_247_opened && (\n
\n \n {\" \"}\n Open for 24 Hours\n \n
\n )}\n\n
\n \n \n {\" \"}\n {nearbyLab.address}\n \n \n
\n {!nearbyLab.is_247_opened &&\n nearbyLab.opening_time && (\n
\n \n {\" \"}\n {formatTime(nearbyLab.opening_time)} to {formatTime(nearbyLab.closing_time)}\n\n\n \n
\n )}\n {!nearbyLab.is_247_opened && nearbyLab.opening_day && (\n
\n \n {\" \"}\n {nearbyLab.opening_day} to{\" \"}\n {nearbyLab.closing_day}\n \n
\n )}\n {nearbyLab.landline ? (\n
\n \n {\" \"}\n {nearbyLab.landline}\n \n
) : null}\n {nearbyLab.female_collectors == \"Yes\" && (\n
\n \n {\" \"}\n Lab has female sample collectors\n \n
\n )}\n \n \n \n \n \n \n {nearbyLab && nearbyLab.rating && (\n

{nearbyLab.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n \n
\n \n See Details\n {\" \"}\n \n
\n \n
\n
\n \n \n ))}\n {isEmpty(corporateLab) && (\n loading ? (\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n
\n Sorry, No Labs Found In Your Specific Area.....\n
\n \n
\n )\n )}\n \n \n\n \n\n \n
\n );\n }\n}\n\nNearbyLabs.propTypes = {\n history: any,\n location: any,\n match: PropTypes.object,\n // carts: PropTypes.array,\n advLives: PropTypes.array,\n corporateLab: PropTypes.array,\n onGetCorporateLabs: PropTypes.func,\n onGetAdvLive: PropTypes.func,\n menuOpen: PropTypes.any,\n t: PropTypes.any,\n onGetTerritoriesList: PropTypes.func,\n territoriesList: PropTypes.array,\n onGetLabNamesList: PropTypes.func,\n labNamesList: PropTypes.array,\n className: PropTypes.any,\n // onGetPatientProfile: PropTypes.func,\n // patientProfile: PropTypes.array,\n\n};\n\nconst mapStateToProps = state => ({\n corporateLab: state.LabMarket.corporateLab,\n advLives: state.LabMarket.advLives,\n territoriesList: state.territoriesList.territoriesList,\n onGetLabNamesList: PropTypes.func,\n labNamesList: PropTypes.array,\n labNamesList: state.labNamesList.labNamesList,\n // patientProfile: state.LabMarket.patientProfile,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetCorporateLabs: locationDetails => dispatch(getCorporateLabs(locationDetails)),\n onGetAdvLive: id => dispatch(getAdvLive(id)),\n onGetTerritoriesList: id => dispatch(getTerritoriesList(id)),\n onGetLabNamesList: id => dispatch(getLabNamesList(id)),\n // onGetPatientProfile: id => dispatch(getPatientProfile(id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(NearbyLabs));\n","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport * as Yup from \"yup\";\nimport { isEmpty, size } from \"lodash\";\nimport moment from 'moment';\n\nimport {\n Alert,\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalHeader,\n ModalBody,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport RatingTooltip from \"react-rating-tooltip\";\nimport { getPatientTestAppointmentsList } from \"store/patient-test-appointments/actions\";\nimport { addNewPatientFeedback } from \"store/patient-feedback/actions\";\nimport { updateTestAppointment } from \"store/test-appointments/actions\";\nimport { getPatientProfile } from \"store/labmarket/actions\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport { getNotes } from \"store/csr-comments/actions\";\nimport \"assets/scss/table.scss\";\n\nclass TestAppointmentsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n patientTestAppointments: [],\n btnText: \"Copy\",\n id: \"\",\n reschedule_reason: \"\",\n tooltipContent: [\"Worst\", \"Bad\", \"Average\", \"Good\", \"Excellent\"],\n patientTestAppointment: \"\",\n patientProfile: [],\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n patientTestAppointmentListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>{patientTestAppointment.id}\n ),\n },\n {\n dataField: \"order_id\",\n text: \"Order ID\",\n sort: true,\n\n formatter: (cellContent, patientTestAppointment) => (\n <>\n \n this.openPatientModal(e, patientTestAppointment)}\n // onMouseEnter={e => this.openPatientModal(e, patientTestAppointment)}\n // onPointerLeave={this.handleMouseExit()}\n >\n {patientTestAppointment.order_id}\n \n \n \n ),\n },\n // {\n // dataField: \"patient_unique_id\",\n // text: \"Patient ID\",\n // sort: true,\n // },\n {\n dataField: \"patient_name\",\n text: \"Patient Name\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n \n this.openPatientModal2(e, testAppointment)}\n // onMouseEnter={e => this.openPatientModal2(e, testAppointment)}\n // onPointerLeave={this.handleMouseExit()}\n >\n {testAppointment.patient_name}\n \n \n \n ),\n },\n // {\n // dataField: \"lab_name\",\n // text: \"Lab Name\",\n // sort: true,\n // },\n {\n dataField: \"lab_name\",\n text: \"Lab Name\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n \n this.openLabModal(e, testAppointment)}\n onMouseEnter={e => this.openLabModal(e, testAppointment)}\n >\n {testAppointment.lab_name}\n \n \n \n ),\n },\n // {\n // dataField: \"patient_district\",\n // text: \"District\",\n // sort: true,\n // },\n // {\n // dataField: \"booked_at\",\n // text: \"Booked at\",\n // sort: true,\n // formatter: (cellContent, patientTestAppointment) => (\n // <>\n // \n // {new Date(patientTestAppointment.booked_at).toLocaleString(\n // \"en-US\"\n // )}\n // \n // \n // ),\n // },\n // {\n // dataField: \"appointment_requested_at\",\n // text: \"Schedule time by Patient\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // \n // {new Date(\n // testAppointment.appointment_requested_at\n // ).toLocaleString(\"en-US\")}\n // \n // \n // ),\n // },\n {\n dataField: \"is_home_sampling_availed\",\n text: \"Home Sampling\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.is_home_sampling_availed == true || testAppointment.is_state_sampling_availed == true ? (\n Yes\n ) : (\n No\n )}\n {/* {testAppointment.is_state_sampling_availed == true ? (\n Yes\n ) : (\n No\n )} */}\n \n ),\n // filter: selectFilter({\n // options: {\n // '': 'All',\n // 'true': 'Yes',\n // 'false': 'No',\n // },\n // defaultValue: 'All',\n // }),\n },\n {\n dataField: \"estimated_sample_collection_at\",\n text: \"Sampling time by Lab\",\n sort: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>\n {patientTestAppointment.status == \"Pending\" ? (\n --\n ) : (\n \n {/* {new Date(\n patientTestAppointment.estimated_sample_collection_at\n ).toLocaleString(\"en-US\")} */}\n {patientTestAppointment.estimated_sample_collection_at\n ? moment(patientTestAppointment.estimated_sample_collection_at).format(\"DD MMM YYYY, h:mm A\")\n : \"--\"}\n \n )}\n \n ),\n },\n\n // {\n // dataField: \"sample_collected_at\",\n // text: \"Sample collected at\",\n // sort: true,\n // formatter: (cellContent, patientTestAppointment) => (\n // <>\n // {patientTestAppointment.status == \"Pending\" ||\n // patientTestAppointment.status == \"Confirmed\" ||\n // patientTestAppointment.status == \"Rescheduled\" ? (\n // Not available yet\n // ) : (\n // \n // {new Date(\n // patientTestAppointment.sample_collected_at\n // ).toLocaleString(\"en-US\")}\n // \n // )}\n // \n // ),\n // },\n {\n dataField: \"collection_status\",\n text: \"Sampling Status\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n \n {(testAppointment.is_home_sampling_availed || testAppointment.is_state_sampling_availed) &&\n !testAppointment.collector_name ? (\n \n\n \n ) : (\n \n )}\n {testAppointment.is_home_sampling_availed &&\n !testAppointment.collector_name && (\n \n --\n \n )}\n\n {testAppointment.is_home_sampling_availed &&\n testAppointment.collector_name && (\n \n\n this.openCollectorModal(e, testAppointment)}\n >\n {testAppointment.collector_name}\n \n \n )}\n {(testAppointment.is_home_sampling_availed || testAppointment.is_state_sampling_availed) &&\n !testAppointment.collection_status ? (\n \n \n ) : testAppointment.collection_status == \"Assigned\" ? (\n \n {testAppointment.collection_status}\n \n ) : testAppointment.collection_status == \"On way\" ? (\n \n {testAppointment.collection_status}\n \n ) : testAppointment.collection_status == \"Reached\" ? (\n \n {testAppointment.collection_status}\n \n ) : testAppointment.collection_status == \"Patient Unavailable\" ? (\n \n {testAppointment.collection_status}\n \n ) : testAppointment.collection_status == \"Sample+Payment Collected\" ? (\n \n {testAppointment.collection_status}\n \n ) : testAppointment.collection_status == \"Sample+Payment Delivered\" && (\n \n {testAppointment.collection_status}\n \n )}\n\n {!testAppointment.is_home_sampling_availed &&\n !testAppointment.is_state_sampling_availed && (\n \n --\n \n )}\n \n \n ),\n },\n\n // {\n // dataField: \"reschedule_count\",\n // text: \"Reschedule Limit\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // {testAppointment.reschedule_count > 1 && (\n // \n // {testAppointment.reschedule_count} Used, Limit Reached\n // \n // )}\n\n // {(!testAppointment.reschedule_reason ||\n // testAppointment.reschedule_count < 2) && (\n // \n // {testAppointment.reschedule_count} Used,{\" \"}\n // {2 - testAppointment.reschedule_count} Left\n // \n // )}\n // \n // ),\n // },\n // {\n // dataField: \"reschedule_reason\",\n // text: \"Rescheduling Reason\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // {testAppointment.reschedule_reason &&\n // testAppointment.reschedule_reason == \"Other\" && (\n // this.openReasonModal(e, testAppointment)}\n // >\n // {testAppointment.reason.slice(0, 10) + \"...\"}\n // \n // )}\n\n // {testAppointment.reschedule_reason &&\n // testAppointment.reschedule_reason != \"Other\" && (\n // \n // {testAppointment.reschedule_reason}\n // \n // )}\n\n // {!testAppointment.reschedule_reason && (\n // \n // Not Rescheduled\n // \n // )}\n // {/* this.openMessageModal(e, testAppointment)}\n // >\n // {testAppointment.reschedule_reason.slice(0, 10) + \"...\"}\n // {\" \"} */}\n // \n // ),\n // },\n // {\n // dataField: \"reschedule\",\n // text: \"Rescheduling option\",\n // isDummyField: true,\n // editable: false,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // {testAppointment.reschedule_count < 2 &&\n // testAppointment.is_home_sampling_availed &&\n // testAppointment.collection_status == \"Patient Unavailable\" && (\n // \n // this.handleReschedulingClick(e, testAppointment.id)\n // }\n // >\n // Reschedule\n // \n // )}\n\n // {testAppointment.reschedule_count >= 2 &&\n // testAppointment.is_home_sampling_availed && (\n // \n // Limit Exceeded\n // \n // )}\n\n // {(!testAppointment.is_home_sampling_availed ||\n // (testAppointment.reschedule_count < 2 &&\n // testAppointment.is_home_sampling_availed &&\n // testAppointment.collection_status !=\n // \"Patient Unavailable\")) && (\n // \n // Not available\n // \n // )}\n // \n // ),\n // },\n\n {\n dataField: \"status\",\n text: \"Appointment Status\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.status == \"Pending\" && (\n \n {testAppointment.status}\n \n )}\n {testAppointment.status == \"Cancel\" && (\n \n {testAppointment.status}\n \n )}\n {testAppointment.status == \"Pending Cancel\" && (\n \n {testAppointment.status}\n \n )}\n {testAppointment.status == \"Confirmed\" && (\n \n {testAppointment.status}\n \n )}\n\n {testAppointment.status == \"Sample Collected\" && (\n \n {testAppointment.status}\n \n )}\n\n {testAppointment.status == \"Rescheduled\" && (\n \n {testAppointment.status}\n\n \n )}\n\n {testAppointment.status == \"Result Uploaded\" && (\n \n {testAppointment.status}\n \n )}\n \n ),\n },\n // {\n // dataField: \"result_uploaded_at\",\n // text: \"Result uploaded at\",\n // sort: true,\n // formatter: (cellContent, patientTestAppointment) => (\n // <>\n // {patientTestAppointment.status != \"Result Uploaded\" ? (\n // Not available yet\n // ) : (\n // \n // {new Date(\n // patientTestAppointment.result_uploaded_at\n // ).toLocaleString(\"en-US\")}\n // \n // )}\n // \n // ),\n // },\n // {\n // dataField: \"dues\",\n // text: \"Dues\",\n // sort: true,\n // },\n {\n dataField: \"payment_status\",\n text: \"Payment Status\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.payment_status == \"Not Paid\" ? (\n \n {testAppointment.payment_method},{\" \"}\n {testAppointment.payment_status}\n \n ) : (\n \n {testAppointment.payment_method},{\" \"}\n {testAppointment.payment_status}\n \n )}\n \n ),\n },\n {\n dataField: \"estimated_result_uploading_at\",\n text: \"Reporting Time by Lab\",\n sort: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>\n {patientTestAppointment.status == \"Pending\" ? (\n --\n ) : (\n \n {/* {new Date(\n patientTestAppointment.estimated_result_uploading_at\n ).toLocaleString(\"en-US\")} */}\n {patientTestAppointment.estimated_result_uploading_at\n ? moment(patientTestAppointment.estimated_result_uploading_at).format(\"DD MMM YYYY, h:mm A\")\n : \"--\"}\n \n )}\n \n ),\n },\n {\n dataField: process.env.REACT_APP_BACKENDURL + \"result\",\n text: \"Report\",\n sort: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>\n {patientTestAppointment.status === \"Result Uploaded\" &&\n (patientTestAppointment.result_type === \"File\" || patientTestAppointment.result_type === \"Link\") ? (\n this.downloadFile(process.env.REACT_APP_BACKENDURL + patientTestAppointment.result)}\n >\n Report\n \n ) : (\n --\n )}\n \n ),\n },\n\n // {\n // dataField: \"collector_name\",\n // text: \"Collector Detail\",\n // sort: true,\n // formatter: (cellContent, testAppointment, patientTestAppointment) => (\n // <>\n // {testAppointment.is_home_sampling_availed &&\n // !testAppointment.collector_name && (\n // \n // --\n // \n // )}\n\n // {testAppointment.is_home_sampling_availed &&\n // testAppointment.collector_name && (\n // \n\n // this.openCollectorModal(e, testAppointment)}\n // >\n // View\n // \n // \n // )}\n\n // {!testAppointment.is_home_sampling_availed && (\n // \n // --\n // \n // )}\n // \n // ),\n // },\n {\n dataField: \"invoice\",\n text: \"Actions\",\n isDummyField: true,\n editable: false,\n formatter: (cellContent, patientTestAppointment, testAppointment) => (\n <>\n
\n \n {patientTestAppointment.status == \"Result Uploaded\" &&\n !patientTestAppointment.does_feedback_exist ? (\n \n this.handlePatientFeedbackClick(\n e,\n patientTestAppointment.id\n )\n }\n >\n \n \n ) : patientTestAppointment.status == \"Result Uploaded\" &&\n patientTestAppointment.does_feedback_exist ? (\n \n \n \n ) : (\n \n {/* */}\n \n )}\n \n \n\n {patientTestAppointment.reschedule_count == 0 ? (\n \n \n ) : \n this.openReshedualModal(e, patientTestAppointment)\n }\n >\n }\n \n\n {patientTestAppointment.payment_status === \"Not Paid\" ? (\n \n \n \n ) : (\n \n \n \n )}\n \n
\n {patientTestAppointment.commentsCount}\n \n
\n
\n\n\n
\n \n ),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.toggleCollectorModal = this.toggleCollectorModal.bind(this);\n this.toggleReschedulingModal = this.toggleReschedulingModal.bind(this);\n this.handlePatientFeedbackClick =\n this.handlePatientFeedbackClick.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n this.togglePatientModal2 = this.togglePatientModal2.bind(this);\n this.togglecancelModal = this.togglecancelModal.bind(this);\n this.toggleReshedualModal = this.toggleReshedualModal.bind(this);\n this.toggleLabModal = this.toggleLabModal.bind(this);\n\n // this.handlePatientFeedbackClicks = this.handlePatientFeedbackClicks.bind(this);\n }\n\n componentDidMount() {\n const { patientTestAppointments, onGetPatientTestAppointmentsList ,onGetNotes} =\n this.props;\n onGetPatientTestAppointmentsList(this.state.user_id);\n \n // Set patientTestAppointments to state\n this.setState({ patientTestAppointments });\n // Fetch comments count for each appointment\n this.props.patientTestAppointments.forEach(appointment => {\n onGetNotes(appointment.id);\n });\n }\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { patientTestAppointments } = this.props;\n if (\n !isEmpty(patientTestAppointments) &&\n size(prevProps.patientTestAppointments) !== size(patientTestAppointments)\n ) {\n this.setState({ patientTestAppointments: {}, isEdit: false });\n }\n }\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n openLabModal = (e, arg) => {\n this.setState({\n LabModal: true,\n\n lab_phone: arg.lab_phone,\n lab_city: arg.lab_city,\n });\n };\n toggleLabModal = () => {\n this.setState(prevState => ({\n LabModal: !prevState.LabModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n toggleReshedualModal = () => {\n this.setState(prevState => ({\n ReshedualModal: !prevState.ReshedualModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n // relationsip_with_patient: arg.relationsip_with_patient,\n booked_at: arg.booked_at,\n appointment_requested_at: arg.appointment_requested_at,\n // patient_city: arg.patient_city,\n // patient_phone: arg.patient_phone,\n });\n };\n // Add this method to your class component\n downloadFile = async (url) => {\n try {\n const response = await fetch(url);\n const blob = await response.blob();\n\n const link = document.createElement('a');\n link.href = window.URL.createObjectURL(blob);\n link.download = 'report';\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n } catch (error) {\n console.error('Error downloading file:', error);\n }\n }\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n opencancelModal = (e, arg) => {\n this.setState({\n cancelModal: true,\n });\n };\n\n togglecancelModal = () => {\n this.setState(prevState => ({\n cancelModal: !prevState.cancelModal,\n }));\n };\n\n openPatientModal2 = (e, arg) => {\n this.setState({\n PatientModal2: true,\n patient_age: arg.patient_age,\n patient_gender: arg.patient_gender,\n patient_address: arg.patient_address,\n ageFormat: arg.ageFormat,\n patient_city: arg.patient_city,\n patient_phone: arg.patient_phone,\n });\n };\n // handleMouseExit = () => {\n // this.setState({\n // PatientModal: false,\n // PatientModal2: false,\n // isHovered: false,\n\n // });\n // };\n togglePatientModal2 = () => {\n this.setState(prevState => ({\n PatientModal2: !prevState.PatientModal2,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n openReshedualModal = (e, arg) => {\n this.setState({\n ReshedualModal: true,\n reschedule_reason: arg.reschedule_reason,\n reason: arg.reason,\n reschedule_count: arg.reschedule_count,\n rescheduled_at: arg.rescheduled_at,\n });\n };\n\n openCollectorModal = (e, arg) => {\n this.setState({\n collectorModal: true,\n lab_name: arg.lab_name,\n collector_name: arg.collector_name,\n collector_cnic: arg.collector_cnic,\n collector_phone: arg.collector_phone,\n collector_photo: arg.collector_photo,\n sample_collected_at: arg.sample_collected_at,\n collection_status: arg.collection_status,\n });\n };\n\n toggleCollectorModal = () => {\n this.setState(prevState => ({\n collectorModal: !prevState.collectorModal,\n }));\n\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n openReasonModal = (e, arg) => {\n this.setState({ reasonModal: true, reason: arg.reason });\n };\n\n toggleReasonModal = () => {\n this.setState(prevState => ({\n reasonModal: !prevState.reasonModal,\n }));\n };\n\n toggleReschedulingModal = () => {\n this.setState(prevState => ({\n reschedulingModal: !prevState.reschedulingModal,\n }));\n };\n\n handlePatientFeedbackClick = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggle();\n };\n\n handleReschedulingClick = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggleReschedulingModal();\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n const { isEdit, deleteModal } = this.state;\n\n const {\n onGetNotes,\n } = this.props;\n const { patientTestAppointments } = this.props;\n const feedback = this.state.feedback;\n const { onAddNewPatientFeedback, onGetPatientTestAppointmentsList } =\n this.props;\n\n const pageOptions = {\n sizePerPage: 100,\n totalSize: patientTestAppointments.length, // replace later with size(patientTestAppointments),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n return (\n \n
\n \n Test Appointments List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n
\n \n Note: If you want to reschedule your appointment, please call the Lab.\n \n \n
\n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n
\n
\n \n
\n \n \n
\n \n\n \n \n Requested by Patient\n \n \n \n
\n \n \n {/*
\n
\n \n
\n
\n \n
\n
*/}\n\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n \n \n Lab Details: \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n\n
\n {\n navigator.clipboard.writeText(\n this.state.lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
\n
\n \n
\n
\n
\n
\n \n \n \n To be Done By Lab\n \n\n \n\n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n\n {this.state\n .reschedule_reason ==\n \"Other\" &&\n
\n
\n \n
\n
\n \n
\n
}\n\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n\n \n
\n
\n
\n
\n \n \n \n \n \n \n {\n const newPatientFeedback = {\n id: this.state.id,\n rating: this.state.rating,\n review: values.review,\n };\n\n // save new Feedback\n onAddNewPatientFeedback(\n newPatientFeedback\n );\n\n // Calling to update list record\n setTimeout(() => {\n onGetPatientTestAppointmentsList(\n this.state.user_id\n );\n }, 2000);\n\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n
\n \n

\n {errors.rating}\n

\n \n this.setState({\n rating: rating,\n })\n }\n value={this.state.rating}\n ActiveComponent={\n \n }\n InActiveComponent={\n \n }\n />\n \n
\n\n
\n \n \n this.setState({\n review:\n e.target.value,\n })\n }\n />\n \n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n \n \n {!!isEdit\n ? \"Edit Pending Appointment\"\n : \"Cancel Appointment\"}\n \n \n {\n const data = {\n id: this.state.id,\n appointment_option:\n values.appointment_option,\n };\n\n // update PaymentStatus\n this.ptops.onUpdateTestAppointment(\n data\n );\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n \n
\n \n Select\n \n \n this.setState({\n appointment_option:\n e.target.value,\n })\n }\n value={\n this.state\n .appointment_option\n }\n className=\"form-select\"\n >\n \n \n \n
\n \n\n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n\n \n \n Patient Details\n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n\n {this.state.patient_address && this.state.patient_address !== \"undefined\" ? (\n
\n
\n \n
\n
\n \n
\n
\n ) : null}\n\n {/*
\n
\n \n
\n
\n \n
\n
*/}\n\n
\n
\n \n
\n
\n \n
\n\n
\n {\n navigator.clipboard.writeText(\n this.state\n .patient_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
\n
\n \n
\n
\n
\n
\n \n\n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n {this.state.sample_collected_at != null ? (\n
\n
\n \n
\n
\n \n
\n
\n ) : null}\n
\n
\n \n
\n
\n \n
\n\n
\n {\n navigator.clipboard.writeText(\n this.state\n .collector_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
\n
\n \n
\n
\n
\n
\n \n\n \n \n \n \n \n {\n const data = {\n id: this.state.id,\n reschedule_reason:\n values.reschedule_reason,\n rescheduledBy: \"Patient\",\n status: \"Rescheduled\",\n process: \"rescheduling\",\n };\n\n // save new Feedback\n console.log(\n this.props.onUpdateTestAppointment(\n data\n )\n );\n\n // Calling to update list record\n setTimeout(() => {\n onGetPatientTestAppointmentsList(\n this.state.user_id\n );\n }, 1000);\n\n this.toggleReschedulingModal();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n
\n \n \n \n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n\n \n
\n
\n \n this.setState({\n reasonModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
\n
\n
\n {/*
\n
\n \n
\n
*/}\n\n
\n
\n

\n Rescheduling Reason\n

\n

\n {this.state.reason}\n

\n
\n
\n
\n
\n
\n \n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nTestAppointmentsList.propTypes = {\n match: PropTypes.object,\n patientTestAppointments: PropTypes.array,\n className: PropTypes.any,\n onGetPatientTestAppointmentsList: PropTypes.func,\n onAddNewPatientFeedback: PropTypes.func,\n onUpdateTestAppointment: PropTypes.func,\n onGetNotes: PropTypes.func,\n patientProfile: PropTypes.array,\n};\nconst mapStateToProps = state => ({\n patientTestAppointments: state.patientTestAppointments.patientTestAppointmentsList,\n patientProfile: state.LabMarket.patientProfile,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetNotes: id => dispatch(getNotes(id)),\n onAddNewPatientFeedback: feedback =>\n dispatch(addNewPatientFeedback(feedback)),\n onGetPatientTestAppointmentsList: id =>\n dispatch(getPatientTestAppointmentsList(id)),\n onUpdateTestAppointment: testAppointment =>\n dispatch(updateTestAppointment(testAppointment)),\n onGetPatientProfile: id => dispatch(getPatientProfile(id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(TestAppointmentsList));\n","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport * as Yup from \"yup\";\nimport { isEmpty, size } from \"lodash\";\nimport moment from 'moment';\n\nimport {\n Alert,\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalHeader,\n ModalBody,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport RatingTooltip from \"react-rating-tooltip\";\nimport { getPatientTestAppointmentsList } from \"store/patient-test-appointments/actions\";\nimport { addNewPatientFeedback } from \"store/patient-feedback/actions\";\nimport { updateTestAppointment } from \"store/test-appointments/actions\";\nimport { getPatientProfile } from \"store/labmarket/actions\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\n\nimport \"assets/scss/table.scss\";\n\nclass TestAppointmentsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n patientTestAppointments: [],\n btnText: \"Copy\",\n id: \"\",\n reschedule_reason: \"\",\n tooltipContent: [\"Worst\", \"Bad\", \"Average\", \"Good\", \"Excellent\"],\n patientTestAppointment: \"\",\n patientProfile: [],\n PermissionModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n patientTestAppointmentListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>{patientTestAppointment.id}\n ),\n },\n {\n dataField: \"order_id\",\n text: \"Order ID\",\n sort: true,\n\n formatter: (cellContent, patientTestAppointment) => (\n <>\n \n this.openPatientModal(e, patientTestAppointment)}\n // onMouseEnter={e => this.openPatientModal(e, patientTestAppointment)}\n // onPointerLeave={this.handleMouseExit()}\n >\n {patientTestAppointment.order_id}\n \n \n \n ),\n },\n // {\n // dataField: \"patient_unique_id\",\n // text: \"Patient ID\",\n // sort: true,\n // },\n {\n dataField: \"patient_name\",\n text: \"Patient Name\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n \n this.openPatientModal2(e, testAppointment)}\n // onMouseEnter={e => this.openPatientModal2(e, testAppointment)}\n // onPointerLeave={this.handleMouseExit()}\n >\n {testAppointment.patient_name}\n \n \n \n ),\n },\n // {\n // dataField: \"lab_name\",\n // text: \"Lab Name\",\n // sort: true,\n // },\n {\n dataField: \"lab_name\",\n text: \"Lab Name\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n \n this.openLabModal(e, testAppointment)}\n onMouseEnter={e => this.openLabModal(e, testAppointment)}\n >\n {testAppointment.lab_name}\n \n \n \n ),\n },\n // {\n // dataField: \"patient_district\",\n // text: \"District\",\n // sort: true,\n // },\n // {\n // dataField: \"booked_at\",\n // text: \"Booked at\",\n // sort: true,\n // formatter: (cellContent, patientTestAppointment) => (\n // <>\n // \n // {new Date(patientTestAppointment.booked_at).toLocaleString(\n // \"en-US\"\n // )}\n // \n // \n // ),\n // },\n // {\n // dataField: \"appointment_requested_at\",\n // text: \"Schedule time by Patient\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // \n // {new Date(\n // testAppointment.appointment_requested_at\n // ).toLocaleString(\"en-US\")}\n // \n // \n // ),\n // },\n {\n dataField: \"is_home_sampling_availed\",\n text: \"Home Sampling\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.is_home_sampling_availed == true || testAppointment.is_state_sampling_availed == true ? (\n Yes\n ) : (\n No\n )}\n {/* {testAppointment.is_state_sampling_availed == true ? (\n Yes\n ) : (\n No\n )} */}\n \n ),\n // filter: selectFilter({\n // options: {\n // '': 'All',\n // 'true': 'Yes',\n // 'false': 'No',\n // },\n // defaultValue: 'All',\n // }),\n },\n {\n dataField: \"estimated_sample_collection_at\",\n text: \"Sampling time by Lab\",\n sort: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>\n {patientTestAppointment.status == \"Pending\" ? (\n --\n ) : (\n \n {/* {new Date(\n patientTestAppointment.estimated_sample_collection_at\n ).toLocaleString(\"en-US\")} */}\n {patientTestAppointment.estimated_sample_collection_at\n ? moment(patientTestAppointment.estimated_sample_collection_at).format(\"DD MMM YYYY, h:mm A\")\n : \"--\"}\n \n )}\n \n ),\n },\n\n // {\n // dataField: \"sample_collected_at\",\n // text: \"Sample collected at\",\n // sort: true,\n // formatter: (cellContent, patientTestAppointment) => (\n // <>\n // {patientTestAppointment.status == \"Pending\" ||\n // patientTestAppointment.status == \"Confirmed\" ||\n // patientTestAppointment.status == \"Rescheduled\" ? (\n // Not available yet\n // ) : (\n // \n // {new Date(\n // patientTestAppointment.sample_collected_at\n // ).toLocaleString(\"en-US\")}\n // \n // )}\n // \n // ),\n // },\n\n {\n dataField: \"collection_status\",\n text: \"Sampling Status\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n \n {(testAppointment.is_home_sampling_availed || testAppointment.is_state_sampling_availed) &&\n !testAppointment.collector_name ? (\n \n\n \n ) : (\n {testAppointment.collector_name}\n )}\n {(testAppointment.is_home_sampling_availed || testAppointment.is_state_sampling_availed) &&\n !testAppointment.collection_status ? (\n \n --\n \n ) : testAppointment.collection_status == \"Assigned\" ? (\n \n {testAppointment.collection_status}\n \n ) : testAppointment.collection_status == \"On way\" ? (\n \n {testAppointment.collection_status}\n \n ) : testAppointment.collection_status == \"Reached\" ? (\n \n {testAppointment.collection_status}\n \n ) : testAppointment.collection_status == \"Patient Unavailable\" ? (\n \n {testAppointment.collection_status}\n \n ) : testAppointment.collection_status == \"Sample+Payment Collected\" ? (\n \n {testAppointment.collection_status}\n \n ) : testAppointment.collection_status == \"Sample+Payment Delivered\" && (\n \n {testAppointment.collection_status}\n \n )}\n\n {!testAppointment.is_home_sampling_availed &&\n !testAppointment.is_state_sampling_availed && (\n \n --\n \n )}\n \n \n ),\n },\n\n // {\n // dataField: \"reschedule_count\",\n // text: \"Reschedule Limit\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // {testAppointment.reschedule_count > 1 && (\n // \n // {testAppointment.reschedule_count} Used, Limit Reached\n // \n // )}\n\n // {(!testAppointment.reschedule_reason ||\n // testAppointment.reschedule_count < 2) && (\n // \n // {testAppointment.reschedule_count} Used,{\" \"}\n // {2 - testAppointment.reschedule_count} Left\n // \n // )}\n // \n // ),\n // },\n // {\n // dataField: \"reschedule_reason\",\n // text: \"Rescheduling Reason\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // {testAppointment.reschedule_reason &&\n // testAppointment.reschedule_reason == \"Other\" && (\n // this.openReasonModal(e, testAppointment)}\n // >\n // {testAppointment.reason.slice(0, 10) + \"...\"}\n // \n // )}\n\n // {testAppointment.reschedule_reason &&\n // testAppointment.reschedule_reason != \"Other\" && (\n // \n // {testAppointment.reschedule_reason}\n // \n // )}\n\n // {!testAppointment.reschedule_reason && (\n // \n // Not Rescheduled\n // \n // )}\n // {/* this.openMessageModal(e, testAppointment)}\n // >\n // {testAppointment.reschedule_reason.slice(0, 10) + \"...\"}\n // {\" \"} */}\n // \n // ),\n // },\n // {\n // dataField: \"reschedule\",\n // text: \"Rescheduling option\",\n // isDummyField: true,\n // editable: false,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // {testAppointment.reschedule_count < 2 &&\n // testAppointment.is_home_sampling_availed &&\n // testAppointment.collection_status == \"Patient Unavailable\" && (\n // \n // this.handleReschedulingClick(e, testAppointment.id)\n // }\n // >\n // Reschedule\n // \n // )}\n\n // {testAppointment.reschedule_count >= 2 &&\n // testAppointment.is_home_sampling_availed && (\n // \n // Limit Exceeded\n // \n // )}\n\n // {(!testAppointment.is_home_sampling_availed ||\n // (testAppointment.reschedule_count < 2 &&\n // testAppointment.is_home_sampling_availed &&\n // testAppointment.collection_status !=\n // \"Patient Unavailable\")) && (\n // \n // Not available\n // \n // )}\n // \n // ),\n // },\n\n {\n dataField: \"status\",\n text: \"Appointment Status\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.status == \"Pending\" && (\n \n {testAppointment.status}\n \n )}\n {testAppointment.status == \"Cancel\" && (\n \n {testAppointment.status}\n \n )}\n {testAppointment.status == \"Pending Cancel\" && (\n \n {testAppointment.status}\n \n )}\n {testAppointment.status == \"Confirmed\" && (\n \n {testAppointment.status}\n \n )}\n\n {testAppointment.status == \"Sample Collected\" && (\n \n {testAppointment.status}\n \n )}\n\n {testAppointment.status == \"Rescheduled\" && (\n \n {testAppointment.status}\n\n \n )}\n\n {testAppointment.status == \"Result Uploaded\" && (\n \n {testAppointment.status}\n \n )}\n \n ),\n },\n // {\n // dataField: \"result_uploaded_at\",\n // text: \"Result uploaded at\",\n // sort: true,\n // formatter: (cellContent, patientTestAppointment) => (\n // <>\n // {patientTestAppointment.status != \"Result Uploaded\" ? (\n // Not available yet\n // ) : (\n // \n // {new Date(\n // patientTestAppointment.result_uploaded_at\n // ).toLocaleString(\"en-US\")}\n // \n // )}\n // \n // ),\n // },\n // {\n // dataField: \"dues\",\n // text: \"Dues\",\n // sort: true,\n // },\n {\n dataField: \"payment_status\",\n text: \"Payment Status\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.payment_status == \"Not Paid\" ? (\n \n {testAppointment.payment_method},{\" \"}\n {testAppointment.payment_status}\n \n ) : (\n \n {testAppointment.payment_method},{\" \"}\n {testAppointment.payment_status}\n \n )}\n \n ),\n },\n {\n dataField: \"estimated_result_uploading_at\",\n text: \"Reporting Time by Lab\",\n sort: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>\n {patientTestAppointment.status == \"Pending\" ? (\n --\n ) : (\n \n {/* {new Date(\n patientTestAppointment.estimated_result_uploading_at\n ).toLocaleString(\"en-US\")} */}\n {patientTestAppointment.estimated_result_uploading_at\n ? moment(patientTestAppointment.estimated_result_uploading_at).format(\"DD MMM YYYY, h:mm A\")\n : \"--\"}\n \n )}\n \n ),\n },\n {\n dataField: process.env.REACT_APP_BACKENDURL + \"result\",\n text: \"Report\",\n sort: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>\n {patientTestAppointment.status === \"Result Uploaded\" &&\n (patientTestAppointment.result_type === \"File\" || patientTestAppointment.result_type === \"Link\") ? (\n this.downloadFile(process.env.REACT_APP_BACKENDURL + patientTestAppointment.result)}\n >\n Report\n \n ) : (\n --\n )}\n \n ),\n },\n\n {\n dataField: \"collector_name\",\n text: \"Collector Detail\",\n sort: true,\n formatter: (cellContent, testAppointment, patientTestAppointment) => (\n <>\n {testAppointment.is_home_sampling_availed &&\n !testAppointment.collector_name && (\n \n --\n \n )}\n\n {testAppointment.is_home_sampling_availed &&\n testAppointment.collector_name && (\n \n\n this.openCollectorModal(e, testAppointment)}\n >\n View\n \n \n )}\n\n {!testAppointment.is_home_sampling_availed && (\n \n --\n \n )}\n \n ),\n },\n {\n dataField: \"invoice\",\n text: \"Actions\",\n isDummyField: true,\n editable: false,\n formatter: (cellContent, patientTestAppointment, testAppointment) => (\n <>\n
\n \n {patientTestAppointment.status == \"Result Uploaded\" &&\n !patientTestAppointment.does_feedback_exist ? (\n \n this.handlePatientFeedbackClick(\n e,\n patientTestAppointment.id\n )\n }\n >\n \n \n ) : patientTestAppointment.status == \"Result Uploaded\" &&\n patientTestAppointment.does_feedback_exist ? (\n \n \n \n ) : (\n \n {/* */}\n \n )}\n \n \n\n {patientTestAppointment.reschedule_count == 0 ? (\n \n \n ) : \n this.openReshedualModal(e, patientTestAppointment)\n }\n >\n }\n \n\n {patientTestAppointment.payment_status === \"Not Paid\" ? (\n \n \n \n ) : (\n \n \n \n )}\n \n \n \n\n\n
\n \n ),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.toggleCollectorModal = this.toggleCollectorModal.bind(this);\n this.toggleReschedulingModal = this.toggleReschedulingModal.bind(this);\n this.handlePatientFeedbackClick =\n this.handlePatientFeedbackClick.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n this.togglePatientModal2 = this.togglePatientModal2.bind(this);\n this.togglecancelModal = this.togglecancelModal.bind(this);\n this.toggleReshedualModal = this.toggleReshedualModal.bind(this);\n this.toggleLabModal = this.toggleLabModal.bind(this);\n this.togglePermissionModal = this.togglePermissionModal.bind(this);\n\n // this.handlePatientFeedbackClicks = this.handlePatientFeedbackClicks.bind(this);\n }\n\n componentDidMount() {\n const { onGetPatientTestAppointmentsList, onGetPatientProfile } = this.props;\n \n // Fetch patient test appointments and profile\n onGetPatientTestAppointmentsList(this.state.user_id);\n onGetPatientProfile(this.state.user_id);\n}\n\ncomponentDidUpdate(prevProps) {\n const { patientProfile, patientTestAppointments } = this.props;\n\n // Check if patientProfile has been updated and is valid to show the modal\n if (\n patientProfile !== prevProps.patientProfile && // Ensure the profile has been updated\n patientProfile.is_assosiatewith_anycorporate && \n patientProfile.employee_id_card\n ) {\n this.setState({ PermissionModal: true });\n }\n\n // Handle updates to patientTestAppointments as before\n if (\n !isEmpty(patientTestAppointments) &&\n size(prevProps.patientTestAppointments) !== size(patientTestAppointments)\n ) {\n this.setState({ patientTestAppointments: {}, isEdit: false });\n }\n}\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n openLabModal = (e, arg) => {\n this.setState({\n LabModal: true,\n\n lab_phone: arg.lab_phone,\n lab_city: arg.lab_city,\n });\n };\n toggleLabModal = () => {\n this.setState(prevState => ({\n LabModal: !prevState.LabModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n toggleReshedualModal = () => {\n this.setState(prevState => ({\n ReshedualModal: !prevState.ReshedualModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n // relationsip_with_patient: arg.relationsip_with_patient,\n booked_at: arg.booked_at,\n appointment_requested_at: arg.appointment_requested_at,\n // patient_city: arg.patient_city,\n // patient_phone: arg.patient_phone,\n });\n };\n // Add this method to your class component\n downloadFile = async (url) => {\n try {\n const response = await fetch(url);\n const blob = await response.blob();\n\n const link = document.createElement('a');\n link.href = window.URL.createObjectURL(blob);\n link.download = 'report';\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n } catch (error) {\n console.error('Error downloading file:', error);\n }\n }\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n opencancelModal = (e, arg) => {\n this.setState({\n cancelModal: true,\n });\n };\n\n togglecancelModal = () => {\n this.setState(prevState => ({\n cancelModal: !prevState.cancelModal,\n }));\n };\n\n openPatientModal2 = (e, arg) => {\n this.setState({\n PatientModal2: true,\n patient_age: arg.patient_age,\n patient_gender: arg.patient_gender,\n patient_address: arg.patient_address,\n ageFormat: arg.ageFormat,\n patient_city: arg.patient_city,\n patient_phone: arg.patient_phone,\n });\n };\n // handleMouseExit = () => {\n // this.setState({\n // PatientModal: false,\n // PatientModal2: false,\n // isHovered: false,\n\n // });\n // };\n togglePatientModal2 = () => {\n this.setState(prevState => ({\n PatientModal2: !prevState.PatientModal2,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n openReshedualModal = (e, arg) => {\n this.setState({\n ReshedualModal: true,\n reschedule_reason: arg.reschedule_reason,\n reason: arg.reason,\n reschedule_count: arg.reschedule_count,\n rescheduled_at: arg.rescheduled_at,\n });\n };\n\n openCollectorModal = (e, arg) => {\n this.setState({\n collectorModal: true,\n lab_name: arg.lab_name,\n collector_name: arg.collector_name,\n collector_cnic: arg.collector_cnic,\n collector_phone: arg.collector_phone,\n collector_photo: arg.collector_photo,\n sample_collected_at: arg.sample_collected_at,\n collection_status: arg.collection_status,\n });\n };\n\n toggleCollectorModal = () => {\n this.setState(prevState => ({\n collectorModal: !prevState.collectorModal,\n }));\n\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n openReasonModal = (e, arg) => {\n this.setState({ reasonModal: true, reason: arg.reason });\n };\n\n toggleReasonModal = () => {\n this.setState(prevState => ({\n reasonModal: !prevState.reasonModal,\n }));\n };\n\n toggleReschedulingModal = () => {\n this.setState(prevState => ({\n reschedulingModal: !prevState.reschedulingModal,\n }));\n };\n\n handlePatientFeedbackClick = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggle();\n };\n\n handleReschedulingClick = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggleReschedulingModal();\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n togglePermissionModal = () => {\n this.setState(prevState => ({\n PermissionModal: !prevState.PermissionModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n render() {\n const { SearchBar } = Search;\n const { isEdit, deleteModal } = this.state;\n\n const { patientProfile } = this.props;\n const isSmallScreen = window.innerWidth <490;\n\n const { patientTestAppointments } = this.props;\n const feedback = this.state.feedback;\n const { onAddNewPatientFeedback, onGetPatientTestAppointmentsList } =\n this.props;\n\n const pageOptions = {\n sizePerPage: 100,\n totalSize: patientTestAppointments ? patientTestAppointments.length : 0,\n custom: true,\n };\n \n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n const backdropStyle = {\n position: 'fixed',\n top: 0,\n left: 0,\n width: '100%',\n height: '100%',\n backgroundColor: 'rgba(0, 0, 0, 0.88)', // or any value between 0 and 1\n zIndex: 9999,\n display: this.state.PermissionModal ? 'block' : 'none',\n };\n\n const modalStyle = {\n position: 'fixed',\n top: '50%',\n left: '50%',\n transform: 'translate(-50%, -50%)',\n backgroundColor: 'white',\n padding: '20px',\n width: '500px', // Increase width\n height: '400px', // Increase height\n zIndex: 10000,\n display: this.state.PermissionModal ? 'block' : 'none',\n };\n\n const modalmobileStyle = {\n position: 'fixed',\n top: '50%',\n left: '50%',\n transform: 'translate(-50%, -50%)',\n backgroundColor: 'white',\n padding: '10px',\n width: '90%', // Increase width\n height: 'auto', // Increase height\n zIndex: 10000,\n display: this.state.PermissionModal ? 'block' : 'none',\n };\n\n return (\n \n
\n \n Test Appointments List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n
\n
\n {!isSmallScreen?(\n
\n \n \n \n Welcome to the Labhazir!\n \n
\n \n We would like to inform you that,\n

\n

\n since you are affiliated with a corporate entity, you will only be shown the specific tests offered by your corporation. If you wish to view different tests, you will need to create a separate regular account.



\n \n Click on ‘Use Another Account‘ for that, or click ‘Continue‘ to proceed.\n

\n \n Thank You For Choosing Labhazir!\n

\n \n\n
\n this.setState({ PermissionModal: false })}\n style={{\n color: \"black\",\n border: \"2px solid blue\",\n // backgroundColor: \"white\",\n }}\n >\n Use another Account\n \n\n {\n this.setState({ PermissionModal: true });\n setTimeout(() => {\n this.props.history.push(\"/corporate-labs\");\n }, 1000);\n }}\n >\n Continue\n \n\n
\n
\n ):null}\n {isSmallScreen?(\n
\n \n \n \n Welcome to the Labhazir!\n \n
\n \n We would like to inform you that,\n

\n

\n since you are affiliated with a corporate entity, you will only be shown the specific tests offered by your corporation. If you wish to view different tests, you will need to create a separate regular account.



\n \n Click on ‘Use Another Account‘ for that, or click ‘Continue‘ to proceed.\n

\n \n Thank You For Choosing Labhazir!\n

\n \n\n
\n this.setState({ PermissionModal: false })}\n style={{\n color: \"black\",\n border: \"2px solid blue\",\n // backgroundColor: \"white\",\n }}\n >\n Use another Account\n \n\n {\n this.setState({ PermissionModal: true });\n setTimeout(() => {\n this.props.history.push(\"/corporate-labs\");\n }, 1000);\n }}\n >\n Continue\n \n\n
\n
\n ):null}\n \n
\n \n Note: If you want to reschedule your appointment, please call the Lab.\n \n \n
\n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n
\n
\n \n
\n \n \n
\n \n\n \n \n Requested by Patient\n \n \n \n
\n \n \n {/*
\n
\n \n
\n
\n \n
\n
*/}\n\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n \n \n Lab Details: \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n\n
\n {\n navigator.clipboard.writeText(\n this.state.lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
\n
\n \n
\n
\n
\n
\n \n \n \n To be Done By Lab\n \n\n \n\n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n\n {this.state\n .reschedule_reason ==\n \"Other\" &&\n
\n
\n \n
\n
\n \n
\n
}\n\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n\n \n
\n
\n
\n
\n \n \n \n \n \n \n {\n const newPatientFeedback = {\n id: this.state.id,\n rating: this.state.rating,\n review: values.review,\n };\n\n // save new Feedback\n onAddNewPatientFeedback(\n newPatientFeedback\n );\n\n // Calling to update list record\n setTimeout(() => {\n onGetPatientTestAppointmentsList(\n this.state.user_id\n );\n }, 2000);\n\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n
\n \n

\n {errors.rating}\n

\n \n this.setState({\n rating: rating,\n })\n }\n value={this.state.rating}\n ActiveComponent={\n \n }\n InActiveComponent={\n \n }\n />\n \n
\n\n
\n \n \n this.setState({\n review:\n e.target.value,\n })\n }\n />\n \n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n \n \n {!!isEdit\n ? \"Edit Pending Appointment\"\n : \"Cancel Appointment\"}\n \n \n {\n const data = {\n id: this.state.id,\n appointment_option:\n values.appointment_option,\n };\n\n // update PaymentStatus\n this.ptops.onUpdateTestAppointment(\n data\n );\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n \n
\n \n Select\n \n \n this.setState({\n appointment_option:\n e.target.value,\n })\n }\n value={\n this.state\n .appointment_option\n }\n className=\"form-select\"\n >\n \n \n \n
\n \n\n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n\n \n \n Patient Details\n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n\n {this.state.patient_address && this.state.patient_address !== \"undefined\" ? (\n
\n
\n \n
\n
\n \n
\n
\n ) : null}\n\n {/*
\n
\n \n
\n
\n \n
\n
*/}\n\n
\n
\n \n
\n
\n \n
\n\n
\n {\n navigator.clipboard.writeText(\n this.state\n .patient_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
\n
\n \n
\n
\n
\n
\n \n\n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n {this.state.sample_collected_at != null ? (\n
\n
\n \n
\n
\n \n
\n
\n ) : null}\n
\n
\n \n
\n
\n \n
\n\n
\n {\n navigator.clipboard.writeText(\n this.state\n .collector_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
\n
\n \n
\n
\n
\n
\n \n\n \n \n \n \n \n {\n const data = {\n id: this.state.id,\n reschedule_reason:\n values.reschedule_reason,\n rescheduledBy: \"Patient\",\n status: \"Rescheduled\",\n process: \"rescheduling\",\n };\n\n // save new Feedback\n console.log(\n this.props.onUpdateTestAppointment(\n data\n )\n );\n\n // Calling to update list record\n setTimeout(() => {\n onGetPatientTestAppointmentsList(\n this.state.user_id\n );\n }, 1000);\n\n this.toggleReschedulingModal();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n
\n \n \n \n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n\n \n
\n
\n \n this.setState({\n reasonModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
\n
\n
\n {/*
\n
\n \n
\n
*/}\n\n
\n
\n

\n Rescheduling Reason\n

\n

\n {this.state.reason}\n

\n
\n
\n
\n
\n
\n \n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n \n \n \n
\n );\n }\n}\n\nTestAppointmentsList.propTypes = {\n match: PropTypes.object,\n patientTestAppointments: PropTypes.array,\n className: PropTypes.any,\n onGetPatientTestAppointmentsList: PropTypes.func,\n onAddNewPatientFeedback: PropTypes.func,\n onUpdateTestAppointment: PropTypes.func,\n history: PropTypes.object,\n onGetPatientProfile: PropTypes.func,\n patientProfile: PropTypes.array,\n\n};\nconst mapStateToProps = state => ({\n patientTestAppointments: state.patientTestAppointments.patientTestAppointmentsList,\n patientProfile: state.LabMarket.patientProfile,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onAddNewPatientFeedback: feedback =>\n dispatch(addNewPatientFeedback(feedback)),\n onGetPatientTestAppointmentsList: id =>\n dispatch(getPatientTestAppointmentsList(id)),\n onUpdateTestAppointment: testAppointment =>\n dispatch(updateTestAppointment(testAppointment)),\n onGetPatientProfile: id => dispatch(getPatientProfile(id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(TestAppointmentsList));\n","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport * as Yup from \"yup\";\nimport { isEmpty, size } from \"lodash\";\nimport moment from 'moment';\n\nimport {\n Alert,\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalHeader,\n ModalBody,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport RatingTooltip from \"react-rating-tooltip\";\nimport { getPatientTestAppointmentsList } from \"store/patient-test-appointments/actions\";\nimport { addNewPatientFeedback } from \"store/patient-feedback/actions\";\nimport { updateTestAppointment } from \"store/test-appointments/actions\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\n\nimport \"assets/scss/table.scss\";\n\nclass TestAppointmentsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n patientTestAppointments: [],\n btnText: \"Copy\",\n id: \"\",\n reschedule_reason: \"\",\n tooltipContent: [\"Worst\", \"Bad\", \"Average\", \"Good\", \"Excellent\"],\n patientTestAppointment: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n patientTestAppointmentListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>{patientTestAppointment.id}\n ),\n },\n {\n dataField: \"order_id\",\n text: \"Order ID\",\n sort: true,\n \n formatter: (cellContent, patientTestAppointment) => (\n <>\n \n this.openPatientModal(e, patientTestAppointment)}\n // onMouseEnter={e => this.openPatientModal(e, patientTestAppointment)}\n // onPointerLeave={this.handleMouseExit()}\n >\n {patientTestAppointment.order_id}\n \n \n \n ),\n },\n // {\n // dataField: \"patient_unique_id\",\n // text: \"Patient ID\",\n // sort: true,\n // },\n {\n dataField: \"patient_name\",\n text: \"Patient Name\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n \n this.openPatientModal2(e, testAppointment)}\n // onMouseEnter={e => this.openPatientModal2(e, testAppointment)}\n // onPointerLeave={this.handleMouseExit()}\n >\n {testAppointment.patient_name}\n \n \n \n ),\n },\n {\n dataField: \"lab_name\",\n text: \"Lab Name\",\n sort: true,\n },\n // {\n // dataField: \"patient_district\",\n // text: \"District\",\n // sort: true,\n // },\n // {\n // dataField: \"booked_at\",\n // text: \"Booked at\",\n // sort: true,\n // formatter: (cellContent, patientTestAppointment) => (\n // <>\n // \n // {new Date(patientTestAppointment.booked_at).toLocaleString(\n // \"en-US\"\n // )}\n // \n // \n // ),\n // },\n // {\n // dataField: \"appointment_requested_at\",\n // text: \"Schedule time by Patient\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // \n // {new Date(\n // testAppointment.appointment_requested_at\n // ).toLocaleString(\"en-US\")}\n // \n // \n // ),\n // },\n {\n dataField: \"is_home_sampling_availed\",\n text: \"Home Sampling\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.is_home_sampling_availed == true || testAppointment.is_state_sampling_availed == true ? (\n Yes\n ) : (\n No\n )}\n {/* {testAppointment.is_state_sampling_availed == true ? (\n Yes\n ) : (\n No\n )} */}\n \n ),\n // filter: selectFilter({\n // options: {\n // '': 'All',\n // 'true': 'Yes',\n // 'false': 'No',\n // },\n // defaultValue: 'All',\n // }),\n },\n {\n dataField: \"estimated_sample_collection_at\",\n text: \"Sampling time by Lab\",\n sort: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>\n {patientTestAppointment.status == \"Pending\" ? (\n --\n ) : (\n \n {/* {new Date(\n patientTestAppointment.estimated_sample_collection_at\n ).toLocaleString(\"en-US\")} */}\n {patientTestAppointment.estimated_sample_collection_at\n ? moment(patientTestAppointment.estimated_sample_collection_at).format(\"DD MMM YYYY, h:mm A\")\n : \"--\"}\n \n )}\n \n ),\n },\n\n // {\n // dataField: \"sample_collected_at\",\n // text: \"Sample collected at\",\n // sort: true,\n // formatter: (cellContent, patientTestAppointment) => (\n // <>\n // {patientTestAppointment.status == \"Pending\" ||\n // patientTestAppointment.status == \"Confirmed\" ||\n // patientTestAppointment.status == \"Rescheduled\" ? (\n // Not available yet\n // ) : (\n // \n // {new Date(\n // patientTestAppointment.sample_collected_at\n // ).toLocaleString(\"en-US\")}\n // \n // )}\n // \n // ),\n // },\n \n {\n dataField: \"collection_status\",\n text: \"Sampling Status\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n \n {(testAppointment.is_home_sampling_availed || testAppointment.is_state_sampling_availed) &&\n !testAppointment.collector_name ? (\n \n \n \n ):(\n {testAppointment.collector_name}\n )}\n {(testAppointment.is_home_sampling_availed || testAppointment.is_state_sampling_availed) &&\n !testAppointment.collection_status ? (\n \n --\n \n ): testAppointment.collection_status == \"Assigned\" ? (\n \n {testAppointment.collection_status}\n \n ): testAppointment.collection_status == \"On way\" ? (\n \n {testAppointment.collection_status}\n \n ): testAppointment.collection_status == \"Reached\" ? (\n \n {testAppointment.collection_status}\n \n ): testAppointment.collection_status == \"Patient Unavailable\" ? (\n \n {testAppointment.collection_status}\n \n ): testAppointment.collection_status == \"Sample+Payment Collected\" ? (\n \n {testAppointment.collection_status}\n \n ): testAppointment.collection_status == \"Sample+Payment Delivered\" && (\n \n {testAppointment.collection_status}\n \n )}\n\n {!testAppointment.is_home_sampling_availed &&\n !testAppointment.is_state_sampling_availed && (\n \n --\n \n )}\n \n \n ),\n },\n\n // {\n // dataField: \"reschedule_count\",\n // text: \"Reschedule Limit\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // {testAppointment.reschedule_count > 1 && (\n // \n // {testAppointment.reschedule_count} Used, Limit Reached\n // \n // )}\n\n // {(!testAppointment.reschedule_reason ||\n // testAppointment.reschedule_count < 2) && (\n // \n // {testAppointment.reschedule_count} Used,{\" \"}\n // {2 - testAppointment.reschedule_count} Left\n // \n // )}\n // \n // ),\n // },\n // {\n // dataField: \"reschedule_reason\",\n // text: \"Rescheduling Reason\",\n // sort: true,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // {testAppointment.reschedule_reason &&\n // testAppointment.reschedule_reason == \"Other\" && (\n // this.openReasonModal(e, testAppointment)}\n // >\n // {testAppointment.reason.slice(0, 10) + \"...\"}\n // \n // )}\n\n // {testAppointment.reschedule_reason &&\n // testAppointment.reschedule_reason != \"Other\" && (\n // \n // {testAppointment.reschedule_reason}\n // \n // )}\n\n // {!testAppointment.reschedule_reason && (\n // \n // Not Rescheduled\n // \n // )}\n // {/* this.openMessageModal(e, testAppointment)}\n // >\n // {testAppointment.reschedule_reason.slice(0, 10) + \"...\"}\n // {\" \"} */}\n // \n // ),\n // },\n // {\n // dataField: \"reschedule\",\n // text: \"Rescheduling option\",\n // isDummyField: true,\n // editable: false,\n // formatter: (cellContent, testAppointment) => (\n // <>\n // {testAppointment.reschedule_count < 2 &&\n // testAppointment.is_home_sampling_availed &&\n // testAppointment.collection_status == \"Patient Unavailable\" && (\n // \n // this.handleReschedulingClick(e, testAppointment.id)\n // }\n // >\n // Reschedule\n // \n // )}\n\n // {testAppointment.reschedule_count >= 2 &&\n // testAppointment.is_home_sampling_availed && (\n // \n // Limit Exceeded\n // \n // )}\n\n // {(!testAppointment.is_home_sampling_availed ||\n // (testAppointment.reschedule_count < 2 &&\n // testAppointment.is_home_sampling_availed &&\n // testAppointment.collection_status !=\n // \"Patient Unavailable\")) && (\n // \n // Not available\n // \n // )}\n // \n // ),\n // },\n \n {\n dataField: \"status\",\n text: \"Appointment Statusssssssss\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.status == \"Pending\" && (\n \n {testAppointment.status}\n \n )}\n\n {testAppointment.status == \"Confirmed\" && (\n \n {testAppointment.status}\n \n )}\n\n {testAppointment.status == \"Sample Collected\" && (\n \n {testAppointment.status}\n \n )}\n\n {testAppointment.status == \"Rescheduled\" && (\n \n {testAppointment.status}\n \n \n )}\n\n {testAppointment.status == \"Result Uploaded\" && (\n \n {testAppointment.status}\n \n )}\n \n ),\n },\n // {\n // dataField: \"result_uploaded_at\",\n // text: \"Result uploaded at\",\n // sort: true,\n // formatter: (cellContent, patientTestAppointment) => (\n // <>\n // {patientTestAppointment.status != \"Result Uploaded\" ? (\n // Not available yet\n // ) : (\n // \n // {new Date(\n // patientTestAppointment.result_uploaded_at\n // ).toLocaleString(\"en-US\")}\n // \n // )}\n // \n // ),\n // },\n // {\n // dataField: \"dues\",\n // text: \"Dues\",\n // sort: true,\n // },\n {\n dataField: \"payment_status\",\n text: \"Payment Status\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.payment_status == \"Not Paid\" ? (\n \n {testAppointment.payment_method},{\" \"}\n {testAppointment.payment_status}\n \n ) : (\n \n {testAppointment.payment_method},{\" \"}\n {testAppointment.payment_status}\n \n )}\n \n ),\n },\n {\n dataField: \"estimated_result_uploading_at\",\n text: \"Reporting Time by Lab\",\n sort: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>\n {patientTestAppointment.status == \"Pending\" ? (\n --\n ) : (\n \n {/* {new Date(\n patientTestAppointment.estimated_result_uploading_at\n ).toLocaleString(\"en-US\")} */}\n {patientTestAppointment.estimated_result_uploading_at\n ? moment(patientTestAppointment.estimated_result_uploading_at).format(\"DD MMM YYYY, h:mm A\")\n : \"--\"}\n \n )}\n \n ),\n },\n {\n dataField: process.env.REACT_APP_BACKENDURL + \"result\",\n text: \"Report\",\n sort: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>\n {patientTestAppointment.status === \"Result Uploaded\" &&\n (patientTestAppointment.result_type === \"File\" || patientTestAppointment.result_type === \"Link\") ? (\n this.downloadFile(process.env.REACT_APP_BACKENDURL + patientTestAppointment.result)}\n >\n Report\n \n ) : (\n --\n )}\n \n ),\n },\n \n {\n dataField: \"collector_name\",\n text: \"Collector Detail\",\n sort: true,\n formatter: (cellContent, testAppointment, patientTestAppointment) => (\n <>\n {testAppointment.is_home_sampling_availed &&\n !testAppointment.collector_name && (\n \n --\n \n )}\n\n {testAppointment.is_home_sampling_availed &&\n testAppointment.collector_name && (\n \n\n this.openCollectorModal(e, testAppointment)}\n >\n View\n \n \n )}\n\n {!testAppointment.is_home_sampling_availed && (\n \n --\n \n )}\n \n ),\n },\n {\n dataField: \"invoice\",\n text: \"Actions\",\n isDummyField: true,\n editable: false,\n formatter: (cellContent, patientTestAppointment, testAppointment) => (\n <> \n
\n \n {patientTestAppointment.status == \"Result Uploaded\" &&\n !patientTestAppointment.does_feedback_exist ? (\n \n this.handlePatientFeedbackClick(\n e,\n patientTestAppointment.id\n )\n }\n >\n \n \n ) : patientTestAppointment.status == \"Result Uploaded\" &&\n patientTestAppointment.does_feedback_exist ? (\n \n \n \n ) : (\n \n {/* */}\n \n )}\n \n \n\n {patientTestAppointment.reschedule_count == 0 ?(\n \n \n ): \n this.openReshedualModal(e, patientTestAppointment)\n }\n >\n } \n \n \n {patientTestAppointment.payment_status === \"Not Paid\" ? (\n \n \n \n) : (\n \n \n \n)}\n\n\n
\n \n ),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.toggleCollectorModal = this.toggleCollectorModal.bind(this);\n this.toggleReschedulingModal = this.toggleReschedulingModal.bind(this);\n this.handlePatientFeedbackClick =\n this.handlePatientFeedbackClick.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n this.togglePatientModal2 = this.togglePatientModal2.bind(this);\n this.togglecancelModal = this.togglecancelModal.bind(this);\n this.toggleReshedualModal = this.toggleReshedualModal.bind(this);\n\n // this.handlePatientFeedbackClicks = this.handlePatientFeedbackClicks.bind(this);\n }\n\n componentDidMount() {\n const { patientTestAppointments, onGetPatientTestAppointmentsList } =\n this.props;\n const { id } = this.props.match.params;\n\n // Check if id exists in the route params\n const userId = id\n ? id\n : this.state.user_id; // Use the existing state value if id doesn't exist\n \n onGetPatientTestAppointmentsList(userId);\n this.setState({ patientTestAppointments });\n\n // const { onGetCorporateTests } = this.props;\n // const { id } = this.props.match.params;\n \n // // Check if id exists in the route params\n // const userId = id\n // ? id\n // : this.state.user_id; // Use the existing state value if id doesn't exist\n \n // // Fetch corporate tests using the determined user_id\n // onGetCorporateTests(userId);\n \n // // Set user_id in the state\n // this.setState({ user_id: userId });\n }\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { patientTestAppointments } = this.props;\n if (\n !isEmpty(patientTestAppointments) &&\n size(prevProps.patientTestAppointments) !== size(patientTestAppointments)\n ) {\n this.setState({ patientTestAppointments: {}, isEdit: false });\n }\n }\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n toggleReshedualModal = () => {\n this.setState(prevState => ({\n ReshedualModal: !prevState.ReshedualModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n // relationsip_with_patient: arg.relationsip_with_patient,\n booked_at: arg.booked_at,\n appointment_requested_at: arg.appointment_requested_at,\n // patient_city: arg.patient_city,\n // patient_phone: arg.patient_phone,\n });\n };\n// Add this method to your class component\ndownloadFile = async (url) => {\n try {\n const response = await fetch(url);\n const blob = await response.blob();\n\n const link = document.createElement('a');\n link.href = window.URL.createObjectURL(blob);\n link.download = 'report';\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n } catch (error) {\n console.error('Error downloading file:', error);\n }\n}\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n opencancelModal = (e, arg) => {\n this.setState({\n cancelModal: true,\n });\n };\n\n togglecancelModal = () => {\n this.setState(prevState => ({\n cancelModal: !prevState.cancelModal,\n }));\n };\n\n openPatientModal2 = (e, arg) => {\n this.setState({\n PatientModal2: true,\n patient_age: arg.patient_age,\n patient_gender: arg.patient_gender,\n patient_address: arg.patient_address,\n ageFormat: arg.ageFormat,\n patient_city: arg.patient_city,\n patient_phone: arg.patient_phone,\n });\n };\n // handleMouseExit = () => {\n // this.setState({\n // PatientModal: false,\n // PatientModal2: false,\n // isHovered: false,\n \n // });\n // };\n togglePatientModal2 = () => {\n this.setState(prevState => ({\n PatientModal2: !prevState.PatientModal2,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n openReshedualModal = (e, arg) => {\n this.setState({\n ReshedualModal: true,\n reschedule_reason: arg.reschedule_reason,\n reason: arg.reason,\n reschedule_count: arg.reschedule_count,\n rescheduled_at: arg.rescheduled_at,\n });\n };\n\n openCollectorModal = (e, arg) => {\n this.setState({\n collectorModal: true,\n lab_name: arg.lab_name,\n collector_name: arg.collector_name,\n collector_cnic: arg.collector_cnic,\n collector_phone: arg.collector_phone,\n collector_photo: arg.collector_photo,\n sample_collected_at: arg.sample_collected_at,\n collection_status: arg.collection_status,\n });\n };\n\n toggleCollectorModal = () => {\n this.setState(prevState => ({\n collectorModal: !prevState.collectorModal,\n }));\n\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n openReasonModal = (e, arg) => {\n this.setState({ reasonModal: true, reason: arg.reason });\n };\n\n toggleReasonModal = () => {\n this.setState(prevState => ({\n reasonModal: !prevState.reasonModal,\n }));\n };\n\n toggleReschedulingModal = () => {\n this.setState(prevState => ({\n reschedulingModal: !prevState.reschedulingModal,\n }));\n };\n\n handlePatientFeedbackClick = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggle();\n };\n\n handleReschedulingClick = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggleReschedulingModal();\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n const { isEdit, deleteModal } = this.state;\n\n\n const { patientTestAppointments } = this.props;\n const feedback = this.state.feedback;\n const { onAddNewPatientFeedback, onGetPatientTestAppointmentsList } =\n this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: patientTestAppointments.length, // replace later with size(patientTestAppointments),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n Test Appointments List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n
\n \n Note: If you want to reschedule your appointment, please call the Lab.\n \n \n
\n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n
\n
\n \n
\n \n \n
\n \n \n \n \n Requested by Patient\n \n \n \n
\n \n \n {/*
\n
\n \n
\n
\n \n
\n
*/}\n\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n \n \n To be Done By Lab\n \n\n \n\n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n \n {this.state\n .reschedule_reason ==\n \"Other\" &&\n
\n
\n \n
\n
\n \n
\n
}\n\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n\n \n
\n
\n
\n
\n \n \n \n \n \n \n {\n const newPatientFeedback = {\n id: this.state.id,\n rating: this.state.rating,\n review: values.review,\n };\n\n // save new Feedback\n onAddNewPatientFeedback(\n newPatientFeedback\n );\n\n // Calling to update list record\n setTimeout(() => {\n onGetPatientTestAppointmentsList(\n this.state.user_id\n );\n }, 2000);\n\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n
\n \n

\n {errors.rating}\n

\n \n this.setState({\n rating: rating,\n })\n }\n value={this.state.rating}\n ActiveComponent={\n \n }\n InActiveComponent={\n \n }\n />\n \n
\n\n
\n \n \n this.setState({\n review:\n e.target.value,\n })\n }\n />\n \n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n \n \n {!!isEdit\n ? \"Edit Pending Appointment\"\n : \"Cancel Appointment\"}\n \n \n {\n const data = {\n id: this.state.id,\n appointment_option:\n values.appointment_option,\n };\n\n // update PaymentStatus\n this.ptops.onUpdateTestAppointment(\n data\n );\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n \n
\n \n Select\n \n \n this.setState({\n appointment_option:\n e.target.value,\n })\n }\n value={\n this.state\n .appointment_option\n }\n className=\"form-select\"\n >\n \n \n \n
\n \n\n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n\n \n \n Patient Details\n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n\n {this.state.patient_address && this.state.patient_address !== \"undefined\" ? (\n
\n
\n \n
\n
\n \n
\n
\n ): null}\n\n {/*
\n
\n \n
\n
\n \n
\n
*/}\n\n
\n
\n \n
\n
\n \n
\n\n
\n {\n navigator.clipboard.writeText(\n this.state\n .patient_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
\n
\n \n
\n
\n
\n
\n \n\n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n {this.state.sample_collected_at != null ? (\n
\n
\n \n
\n
\n \n
\n
\n ): null}\n
\n
\n \n
\n
\n \n
\n\n
\n {\n navigator.clipboard.writeText(\n this.state\n .collector_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
\n
\n \n
\n
\n
\n
\n \n\n \n \n \n \n \n {\n const data = {\n id: this.state.id,\n reschedule_reason:\n values.reschedule_reason,\n rescheduledBy: \"Patient\",\n status: \"Rescheduled\",\n process: \"rescheduling\",\n };\n\n // save new Feedback\n console.log(\n this.props.onUpdateTestAppointment(\n data\n )\n );\n\n // Calling to update list record\n setTimeout(() => {\n onGetPatientTestAppointmentsList(\n this.state.user_id\n );\n }, 1000);\n\n this.toggleReschedulingModal();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n
\n \n \n \n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n\n \n
\n
\n \n this.setState({\n reasonModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
\n
\n
\n {/*
\n
\n \n
\n
*/}\n\n
\n
\n

\n Rescheduling Reason\n

\n

\n {this.state.reason}\n

\n
\n
\n
\n
\n
\n \n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nTestAppointmentsList.propTypes = {\n match: PropTypes.object,\n patientTestAppointments: PropTypes.array,\n className: PropTypes.any,\n onGetPatientTestAppointmentsList: PropTypes.func,\n onAddNewPatientFeedback: PropTypes.func,\n onUpdateTestAppointment: PropTypes.func,\n};\nconst mapStateToProps = ({ patientTestAppointments }) => ({\n patientTestAppointments: patientTestAppointments.patientTestAppointmentsList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onAddNewPatientFeedback: feedback =>\n dispatch(addNewPatientFeedback(feedback)),\n onGetPatientTestAppointmentsList: id =>\n dispatch(getPatientTestAppointmentsList(id)),\n onUpdateTestAppointment: testAppointment =>\n dispatch(updateTestAppointment(testAppointment)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(TestAppointmentsList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\nimport { connect } from \"react-redux\";\nimport { Link } from \"react-router-dom\";\nimport { withRouter } from \"react-router-dom\";\nimport { Formik, Field, Form } from \"formik\";\nimport { Collapse } from \"reactstrap\";\nimport logo from \"../../../assets/images/logo.svg\";\nimport logoLight from \"../../../assets/images/logo-light.png\";\nimport logoLightSvg from \"../../../assets/images/logo-light.svg\";\nimport StarRatings from \"react-star-ratings\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport \"../../../components/HorizontalLayout/horizontal-navbar.scss\";\n\n\nimport ScrollButton from \"components/Common/Scrollbutton\";\nimport {\n Card,\n Button,\n CardBody,\n Label,\n Modal,\n ModalBody,\n ModalHeader,\n Col,\n Input,\n Container,\n Pagination,\n PaginationItem,\n PaginationLink,\n Row,\n Alert,\n} from \"reactstrap\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\nimport \"nouislider/distribute/nouislider.css\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { any } from \"prop-types\";\n\nimport { getOfferedTestsReferrel } from \"store/offered-tests/actions\";\nimport { addToCart } from \"store/actions\";\nimport { getCarts } from \"store/carts/actions\";\n\nclass TestsOffered extends Component {\n constructor(props) {\n super(props);\n this.state = {\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n patient_name: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).patient_name\n : \"\",\n position: \"right\",\n activeTab: \"1\",\n offeredTests: [],\n carts: [],\n cart: \"\",\n success: \"\",\n error: \"\",\n testtype: \"test\",\n applied: true,\n loading: true, // Add loading state property\n page: 1,\n searchQuery: \"\", // New state property for search query\n totalPage: 5, //replace this with total pages of data\n itemsInCart: [],\n lab_name: \"\",\n };\n this.toggleTab = this.toggleTab.bind(this);\n console.log(\"yaha ani chahi hai uuid\", this.props.match.params.uuid)\n console.log(\"yaha ani chahi hai guid\", this.props.match.params.guest_id)\n console.log(\"yaha ani chahi hai fuid\", this.props.match.params.filnalurl)\n\n }\n\n componentDidMount() {\n const { carts, onGetCarts } = this.props;\n onGetCarts(this.state.user_id);\n this.setState({\n carts\n });\n const { ongetOfferedTestsReferrel } = this.props;\n if (this.state.applied) {\n ongetOfferedTestsReferrel();\n this.setState({ \n offeredTests: this.props.offeredTests,\n lab_name: this.props.offeredTests.length > 0 ? this.props.offeredTests[0].lab_name : \"\"\n });\n }\n setTimeout(() => {\n this.setState({ loading: false });\n }, 70000); // Set loading state to false after 7 seconds\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.offeredTests !== this.props.offeredTests) {\n this.setState({\n offeredTests: this.props.offeredTests,\n lab_name: this.props.offeredTests.length > 0 ? this.props.offeredTests[0].lab_name : \"\"\n });\n }\n }\n\n toggleTab(tab) {\n if (this.state.activeTab !== tab) {\n this.setState({\n activeTab: tab,\n });\n }\n }\n\n handlePageClick = page => {\n this.setState({ page });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n test_details: arg.test_details,\n });\n };\n\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n openDescriptionModal = (e, arg) => {\n this.setState({\n DescriptionModal: true,\n description_in_english: arg.description_in_english,\n description_in_urdu: arg.description_in_urdu,\n test_details: arg.test_details,\n test_name:arg.test_name,\n });\n };\n\n toggleDescriptionModal = () => {\n this.setState(prevState => ({\n DescriptionModal: !prevState.DescriptionModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n handleAddToCart = (cart) => {\n const { onAddToCart } = this.props;\n \n // Check if the item is already in the cart based on user type\n if (!this.state.user_id) {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n this.setState({ guest_id: this.props.match.params.guest_id });\n cart.guest_id = this.props.match.params.guest_id;\n onAddToCart(cart, cart.guest_id);\n \n console.log(\"uuid:\", cart.guest_id, this.props.match.params.guest_id);\n } else if (this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.state.user_id);\n } else if (this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.props.match.params.guest_id);\n } else if (this.state.user_type === \"b2bclient\" && this.state.user_type !== \"CSR\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.props.match.params.uuid);\n }\n \n // Update the state to include the newly added item in the cart\n const updatedItemsInCart = [...this.state.itemsInCart, cart];\n this.setState({ itemsInCart: updatedItemsInCart });\n \n this.showSuccessMessage(\"Item added Successfully\");\n };\n \n showErrorMessage = (message) => {\n this.showPopup(message, \"red\");\n };\n \n showSuccessMessage = (message) => {\n this.showPopup(message, \"green\");\n };\n \n showPopup = (message, textColor) => {\n // Create and style the popup\n const popup = document.createElement(\"div\");\n popup.style.display = \"none\";\n popup.style.position = \"fixed\";\n popup.style.top = \"0\";\n popup.style.left = \"0\";\n popup.style.width = \"100%\";\n popup.style.height = \"100%\";\n popup.style.background = \"rgba(0, 0, 0, 0.5)\";\n popup.style.zIndex = \"1000\";\n \n const popupContent = document.createElement(\"div\");\n popupContent.style.position = \"absolute\";\n popupContent.style.top = \"50%\";\n popupContent.style.left = \"50%\";\n popupContent.style.transform = \"translate(-50%, -50%)\";\n popupContent.style.background = \"#fff\";\n popupContent.style.padding = \"20px\";\n popupContent.style.borderRadius = \"5px\";\n popupContent.style.boxShadow = \"0 0 10px rgba(0, 0, 0, 0.3)\";\n \n const messageElement = document.createElement(\"div\");\n messageElement.style.fontSize = \"18px\";\n messageElement.style.textAlign = \"center\";\n messageElement.style.color = textColor; // Set the text color\n \n // Set the message\n messageElement.textContent = message;\n \n // Append elements to the DOM\n popupContent.appendChild(messageElement);\n popup.appendChild(popupContent);\n document.body.appendChild(popup);\n \n // Show the popup\n popup.style.display = \"block\";\n \n // Hide the popup after a certain duration (e.g., 3 seconds)\n setTimeout(() => {\n popup.style.display = \"none\";\n }, 1000); // 3000 milliseconds = 3 seconds\n };\n\n activateParentDropdown = item => {\n item.classList.add(\"active\");\n const parent = item.parentElement;\n if (parent) {\n parent.classList.add(\"active\"); // li\n const parent2 = parent.parentElement;\n parent2.classList.add(\"active\"); // li\n const parent3 = parent2.parentElement;\n if (parent3) {\n parent3.classList.add(\"active\"); // li\n const parent4 = parent3.parentElement;\n if (parent4) {\n parent4.classList.add(\"active\"); // li\n const parent5 = parent4.parentElement;\n if (parent5) {\n parent5.classList.add(\"active\"); // li\n const parent6 = parent5.parentElement;\n if (parent6) {\n parent6.classList.add(\"active\"); // li\n }\n }\n }\n }\n }\n return false;\n };\n handlePageClick = page => {\n this.setState({ page });\n };\n toggleFullscreen() {\n if (\n !document.fullscreenElement &&\n /* alternative standard method */ !document.mozFullScreenElement &&\n !document.webkitFullscreenElement\n ) {\n // current working methods\n if (document.documentElement.requestFullscreen) {\n document.documentElement.requestFullscreen();\n } else if (document.documentElement.mozRequestFullScreen) {\n document.documentElement.mozRequestFullScreen();\n } else if (document.documentElement.webkitRequestFullscreen) {\n document.documentElement.webkitRequestFullscreen(\n Element.ALLOW_KEYBOARD_INPUT\n );\n }\n } else {\n if (document.cancelFullScreen) {\n document.cancelFullScreen();\n } else if (document.mozCancelFullScreen) {\n document.mozCancelFullScreen();\n } else if (document.webkitCancelFullScreen) {\n document.webkitCancelFullScreen();\n }\n }\n }\n onUpdate = (render, handle, value) => {\n const { carts } = this.props;\n if (\n !isEmpty(carts) &&\n size(prevProps.carts) !== size(carts)\n ) {\n this.setState({ carts: {} });\n }\n this.setState({\n nearbyLabs: productsData.filter(\n nearbyLab =>\n nearbyLab.newPrice >= value[0] && nearbyLab.newPrice <= value[1]\n ),\n });\n };\n\n render() {\n const { onGetCarts } = this.props;\n const {lab_name } = this.state;\n const { carts } = this.props;\n const { loading } = this.state;\n const isLargeScreen = window.innerWidth < 490;\n\n const { page, totalPage } = this.state;\n const { offeredTests } = this.props.offeredTests;\n const offeredTest = this.state.offeredTest;\n const { searchQuery } = this.state;\n const filteredTests = this.props.offeredTests.filter((test) =>\n test.test_name.toLowerCase().includes(searchQuery.toLowerCase())\n );\nconsole.log(\"lab name is \",lab_name)\n return (\n \n \n
\n \n Tests Offered | Lab Hazir\n \n \n {/* */}\n

Tests Offered by {lab_name}

\n {this.state.success ? (\n \n {this.state.success}\n \n ) : this.state.error ? (\n \n {this.state.error}\n \n ) : null}\n\n \n
\n \n Search By Test Name\n \n
\n this.setState({ searchQuery: e.target.value })}\n />\n
\n
\n \n\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n

\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n \n
\n \n
\n
\n
\n
\n \n \n {filteredTests.length > 0 ? (\n filteredTests.map((offeredTest, key) => (\n \n \n \n
\n
\n {/* {offeredTest.test_name} */}\n \n {offeredTest.test_name} \n \n
\n {offeredTest.test_type != \"Test\" && (\n //
\n \n this.openPatientModal(e, offeredTest)\n }\n >\n Test Description\n \n //
\n )}\n {offeredTest.test_type == \"Test\" && (\n //
\n \n this.openDescriptionModal(e, offeredTest)\n }\n >\n Test Description\n \n //
\n )}\n \n {(offeredTest.discount >= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {(offeredTest.discount >= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) <= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {(offeredTest.discount <= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {(offeredTest.discount <= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) <= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {((offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {offeredTest.discount>=0.01 && (\n
\n \n {\" \"}\n Discount Lab: {(offeredTest.discount*100).toFixed()} % \n \n
\n )}\n {(offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01 && (\n
\n \n {\" \"}\n Discount LabHazir: {((offeredTest.all_discount_by_labhazir * 100) + (offeredTest.discount_by_labhazir * 100)).toFixed()} %\n \n\n
\n )}\n \n
\n \n Reporting\n Time: {offeredTest.duration_required}{\" \"}\n {offeredTest.duration_type}\n \n
\n\n
\n \n Home Sampling:{\" \"}\n {offeredTest.is_home_sampling_available}\n \n
\n
\n {\" \"}\n {!this.state.user_id ? (\n \n \n {offeredTest.lab_name}{\" \"}\n \n \n \n ):null}\n {(this.state.user_id) && (this.state.user_type ===\"CSR\") && (this.state.user_type !==\"b2bclient\") && (\n \n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !==\"CSR\") && (this.state.user_type !==\"b2bclient\") && (\n \n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !==\"CSR\") && (this.state.user_type ===\"b2bclient\") && (\n \n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n \n \n \n \n \n \n \n {offeredTest && offeredTest.rating && (\n

{offeredTest.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n
\n {/* this.handleAddToCart(offeredTest)}\n disabled={this.state.itemsInCart.includes(offeredTest)} // Disable the button if the item is in the cart\n>\n {this.state.itemsInCart.includes(offeredTest) ? 'Already Added' : 'Add to cart'}\n */}\n cartItem.offered_test_id === offeredTest.id) ? 'secondary' : 'primary'}\n className={`btn mt-3 me-1${this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id) ? ' disabled' : ''}`}\n // onClick={() => this.handleAddToCart(offeredTest)}\n onClick={() => {\n // Check if offeredTest.name is equal to any cartItem.name\n if (this.props.carts.some(cartItem => cartItem.test_name === offeredTest.test_name)) {\n alert(\"An item with the same name but from a different lab is already in the cart. Please remove the previous one first.\");\n } else {\n // If not, proceed with adding to the cart\n this.handleAddToCart(offeredTest);\n }\n }}\n disabled={this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id)}\n>\n {this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id) ? 'Already Added' : 'Add to cart'}\n\n
\n
\n
\n \n ))\n ) : isEmpty(this.props.offeredTests) && loading ? (\n // Loading state\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n
\n Sorry, No tests were found at your specified lab.....\n
\n \n
\n )\n }\n {/* {isEmpty(nearbyLabs) && (\n loading ? (\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n
\n Sorry, No Labs Found In Your Specific Area.....\n
\n \n
\n )\n )} */}\n \n \n
\n
\n
\n
\n );\n }\n}\n\nTestsOffered.propTypes = {\n match: PropTypes.object,\n history: any,\n location: PropTypes.any,\n offeredTests: PropTypes.array,\n ongetOfferedTestsReferrel: PropTypes.func,\n onAddToCart: PropTypes.func,\n success: PropTypes.any,\n error: PropTypes.any,\n className: PropTypes.any,\n carts: PropTypes.array,\n menuOpen: PropTypes.any,\n t: PropTypes.any,\n carts: PropTypes.any,\n onGetCarts: PropTypes.func,\n};\n\nconst mapStateToProps = ({ offeredTests, carts }) => ({\n offeredTests: offeredTests.offeredTests,\n carts: carts.carts,\n success: carts.success,\n error: carts.error,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n ongetOfferedTestsReferrel: () =>\n dispatch(getOfferedTestsReferrel(ownProps.match.params.lab_account_id)),\n onAddToCart: (cart, id) => dispatch(addToCart(cart, id)),\n onGetCarts: id => dispatch(getCarts(id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(TestsOffered));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\nimport { connect } from \"react-redux\";\nimport { Link } from \"react-router-dom\";\nimport { withRouter } from \"react-router-dom\";\nimport { Formik, Field, Form } from \"formik\";\nimport { Collapse } from \"reactstrap\";\nimport logo from \"../../../assets/images/logo.svg\";\nimport logoLight from \"../../../assets/images/logo-light.png\";\nimport logoLightSvg from \"../../../assets/images/logo-light.svg\";\nimport StarRatings from \"react-star-ratings\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport \"../../../components/HorizontalLayout/horizontal-navbar.scss\";\n\n\nimport ScrollButton from \"components/Common/Scrollbutton\";\nimport {\n Card,\n Button,\n CardBody,\n Label,\n Modal,\n ModalBody,\n ModalHeader,\n Col,\n Input,\n Container,\n Pagination,\n PaginationItem,\n PaginationLink,\n Row,\n Alert,\n} from \"reactstrap\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\nimport \"nouislider/distribute/nouislider.css\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { any } from \"prop-types\";\n\nimport { getCOfferedTestsReferrel } from \"store/offered-tests/actions\";\nimport { getPatientProfile } from \"store/labmarket/actions\";\nimport { addToCart } from \"store/actions\";\nimport { getCarts } from \"store/carts/actions\";\n\nclass TestsOffered extends Component {\n constructor(props) {\n super(props);\n this.state = {\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n patient_name: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).patient_name\n : \"\",\n position: \"right\",\n activeTab: \"1\",\n offeredTests: [],\n patientProfile: [],\n carts: [],\n cart: \"\",\n success: \"\",\n error: \"\",\n testtype: \"test\",\n applied: true,\n loading: true, // Add loading state property\n page: 1,\n searchQuery: \"\", // New state property for search query\n totalPage: 5, //replace this with total pages of data\n itemsInCart: [],\n\n };\n this.toggleTab = this.toggleTab.bind(this);\n console.log(\"yaha ani chahi hai uuid\", this.props.match.params.uuid)\n console.log(\"yaha ani chahi hai guid\", this.props.match.params.guest_id)\n console.log(\"yaha ani chahi hai fuid\", this.props.match.params.filnalurl)\n\n }\n\n componentDidMount() {\n const url = window.location.href;\n console.log(\"url\", url)\n\n // Extract the segment '59' from the URL\n const urlid = url.split('/')[3]; // Split by '/' and get the 3rd index (0-based)\n console.log(\"Extracted ID:\", urlid);\n this.setState({urlid: urlid});\n\n const { onGetPatientProfile } = this.props;\n // Assuming onGetPatientProfile is synchronous\n onGetPatientProfile(this.state.user_id);\n // Now you can safely access patientProfile from props\n const { patientProfile } = this.props; console.log(\"patient info\",this.state.payment_method)\n const { carts, onGetCarts } = this.props;\n onGetCarts(this.state.user_id);\n this.setState({\n carts\n });\n const { ongetCOfferedTestsReferrel } = this.props;\n if (this.state.applied) {\n ongetCOfferedTestsReferrel();\n this.setState({ offeredTests: this.props.offeredTests });\n }\n setTimeout(() => {\n this.setState({ loading: false });\n }, 70000); // Set loading state to false after 7 seconds\n }\n toggleTab(tab) {\n if (this.state.activeTab !== tab) {\n this.setState({\n activeTab: tab,\n });\n }\n }\n\n handlePageClick = page => {\n this.setState({ page });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n test_details: arg.test_details,\n });\n };\n\n openLabModal = (e, arg) => {\n this.setState({\n LabModal: true,\n lab_city: arg.lab_city,\n lab_type: arg.lab_type,\n lab_address: arg.lab_address,\n lab_phone: arg.lab_phone,\n });\n };\n\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n toggleLabModal = () => {\n this.setState(prevState => ({\n LabModal: !prevState.LabModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n openDescriptionModal = (e, arg) => {\n this.setState({\n DescriptionModal: true,\n description_in_english: arg.description_in_english,\n description_in_urdu: arg.description_in_urdu,\n test_details: arg.test_details,\n test_name: arg.test_name,\n });\n };\n\n toggleDescriptionModal = () => {\n this.setState(prevState => ({\n DescriptionModal: !prevState.DescriptionModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n handleAddToCart = (cart) => {\n const { onAddToCart } = this.props;\n\n // Check if the item is already in the cart based on user type\n if (!this.state.user_id) {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n\n this.setState({ guest_id: this.props.match.params.guest_id });\n cart.guest_id = this.props.match.params.guest_id;\n onAddToCart(cart, cart.guest_id);\n\n console.log(\"uuid:\", cart.guest_id, this.props.match.params.guest_id);\n } else if (this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n\n onAddToCart(cart, this.state.user_id);\n } else if (this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n\n onAddToCart(cart, this.props.match.params.guest_id);\n } else if (this.state.user_type === \"b2bclient\" && this.state.user_type !== \"CSR\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n\n onAddToCart(cart, this.props.match.params.uuid);\n }\n\n // Update the state to include the newly added item in the cart\n const updatedItemsInCart = [...this.state.itemsInCart, cart];\n this.setState({ itemsInCart: updatedItemsInCart });\n\n this.showSuccessMessage(\"Item added Successfully\");\n };\n\n showErrorMessage = (message) => {\n this.showPopup(message, \"red\");\n };\n\n showSuccessMessage = (message) => {\n this.showPopup(message, \"green\");\n };\n\n showPopup = (message, textColor) => {\n // Create and style the popup\n const popup = document.createElement(\"div\");\n popup.style.display = \"none\";\n popup.style.position = \"fixed\";\n popup.style.top = \"0\";\n popup.style.left = \"0\";\n popup.style.width = \"100%\";\n popup.style.height = \"100%\";\n popup.style.background = \"rgba(0, 0, 0, 0.5)\";\n popup.style.zIndex = \"1000\";\n\n const popupContent = document.createElement(\"div\");\n popupContent.style.position = \"absolute\";\n popupContent.style.top = \"50%\";\n popupContent.style.left = \"50%\";\n popupContent.style.transform = \"translate(-50%, -50%)\";\n popupContent.style.background = \"#fff\";\n popupContent.style.padding = \"20px\";\n popupContent.style.borderRadius = \"5px\";\n popupContent.style.boxShadow = \"0 0 10px rgba(0, 0, 0, 0.3)\";\n\n const messageElement = document.createElement(\"div\");\n messageElement.style.fontSize = \"18px\";\n messageElement.style.textAlign = \"center\";\n messageElement.style.color = textColor; // Set the text color\n\n // Set the message\n messageElement.textContent = message;\n\n // Append elements to the DOM\n popupContent.appendChild(messageElement);\n popup.appendChild(popupContent);\n document.body.appendChild(popup);\n\n // Show the popup\n popup.style.display = \"block\";\n\n // Hide the popup after a certain duration (e.g., 3 seconds)\n setTimeout(() => {\n popup.style.display = \"none\";\n }, 1000); // 3000 milliseconds = 3 seconds\n };\n\n activateParentDropdown = item => {\n item.classList.add(\"active\");\n const parent = item.parentElement;\n if (parent) {\n parent.classList.add(\"active\"); // li\n const parent2 = parent.parentElement;\n parent2.classList.add(\"active\"); // li\n const parent3 = parent2.parentElement;\n if (parent3) {\n parent3.classList.add(\"active\"); // li\n const parent4 = parent3.parentElement;\n if (parent4) {\n parent4.classList.add(\"active\"); // li\n const parent5 = parent4.parentElement;\n if (parent5) {\n parent5.classList.add(\"active\"); // li\n const parent6 = parent5.parentElement;\n if (parent6) {\n parent6.classList.add(\"active\"); // li\n }\n }\n }\n }\n }\n return false;\n };\n handlePageClick = page => {\n this.setState({ page });\n };\n toggleFullscreen() {\n if (\n !document.fullscreenElement &&\n /* alternative standard method */ !document.mozFullScreenElement &&\n !document.webkitFullscreenElement\n ) {\n // current working methods\n if (document.documentElement.requestFullscreen) {\n document.documentElement.requestFullscreen();\n } else if (document.documentElement.mozRequestFullScreen) {\n document.documentElement.mozRequestFullScreen();\n } else if (document.documentElement.webkitRequestFullscreen) {\n document.documentElement.webkitRequestFullscreen(\n Element.ALLOW_KEYBOARD_INPUT\n );\n }\n } else {\n if (document.cancelFullScreen) {\n document.cancelFullScreen();\n } else if (document.mozCancelFullScreen) {\n document.mozCancelFullScreen();\n } else if (document.webkitCancelFullScreen) {\n document.webkitCancelFullScreen();\n }\n }\n }\n onUpdate = (render, handle, value) => {\n const { carts } = this.props;\n if (\n !isEmpty(carts) &&\n size(prevProps.carts) !== size(carts)\n ) {\n this.setState({ carts: {} });\n }\n this.setState({\n nearbyLabs: productsData.filter(\n nearbyLab =>\n nearbyLab.newPrice >= value[0] && nearbyLab.newPrice <= value[1]\n ),\n });\n };\n\n render() {\n const { onGetCarts } = this.props;\n const { patientProfile } = this.props;\n const { carts } = this.props;\n const { loading } = this.state;\n const { onGetPatientProfile } = this.props;\n const isLargeScreen = window.innerWidth < 490;\n\n const { page, totalPage } = this.state;\n const { offeredTests } = this.props.offeredTests;\n const offeredTest = this.state.offeredTests;\n console.log(\"offered test and patient profile\", offeredTest, patientProfile)\n const { searchQuery } = this.state;\n const filteredTests = this.props.offeredTests.filter((test) =>\n test.test_name.toLowerCase().includes(searchQuery.toLowerCase())\n );\n\n return (\n \n
\n
\n \n \n
    \n
  • \n \n Labs\n \n
  • \n\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n
\n \n\n \n
\n
\n
\n \n Tests Offered | Lab Hazir\n \n \n \n\n {this.state.success ? (\n \n {this.state.success}\n \n ) : this.state.error ? (\n \n {this.state.error}\n \n ) : null}\n\n \n
\n \n Search By Test Name\n \n
\n this.setState({ searchQuery: e.target.value })}\n />\n
\n
\n \n\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n

\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n \n
\n \n
\n
\n
\n
\n \n \n \n Lab Details\n \n \n\n \n
\n \n \n\n {/*
\n
\n \n
\n
\n \n
\n
*/}\n\n\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n \n Locate to\n the Lab\n \n
\n \n
\n \n
\n
\n \n\n {filteredTests.length > 0 && this.props.patientProfile ? (\n filteredTests\n .filter(offeredTest => (\n String(offeredTest.corporate_id) === String(this.props.patientProfile.corporate_id) && String(offeredTest.lab_account_id) === String(this.state.urlid)\n ))\n .map((offeredTest, key) => (\n \n \n \n
\n
\n {/* {offeredTest.test_name} */}\n \n {offeredTest.test_name} \n ({offeredTest.test_type})\n
\n {offeredTest.test_type != \"Test\" && (\n //
\n \n this.openPatientModal(e, offeredTest)\n }\n >\n Test Description\n \n //
\n )}\n {offeredTest.test_type == \"Test\" && (\n //
\n \n this.openDescriptionModal(e, offeredTest)\n }\n >\n Test Description\n \n //
\n )}\n\n {(offeredTest.discount >= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {(offeredTest.discount >= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) <= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {(offeredTest.discount <= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {(offeredTest.discount <= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) <= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {((offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {offeredTest.discount >= 0.01 && (\n
\n \n {\" \"}\n Discount Lab: {(offeredTest.discount * 100).toFixed()} %\n \n
\n )}\n {(offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01 && (\n
\n \n {\" \"}\n Discount LabHazir: {((offeredTest.all_discount_by_labhazir * 100) + (offeredTest.discount_by_labhazir * 100)).toFixed()} %\n \n\n
\n )}\n\n
\n \n Reporting\n Time: {offeredTest.duration_required}{\" \"}\n {offeredTest.duration_type}\n \n
\n\n
\n \n Home Sampling:{\" \"}\n {offeredTest.is_home_sampling_available}\n \n
\n
\n {\" \"}\n {!this.state.user_id ? (\n \n this.openLabModal(e, offeredTest)\n }\n >\n \n {offeredTest.lab_name}{\" \"}\n\n \n \n\n ) : null}\n {(this.state.user_id) && (this.state.user_type === \"CSR\") && (this.state.user_type !== \"b2bclient\") && (\n \n this.openLabModal(e, offeredTest)\n }\n >\n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !== \"CSR\") && (this.state.user_type !== \"b2bclient\") && (\n \n this.openLabModal(e, offeredTest)\n }\n >\n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !== \"CSR\") && (this.state.user_type === \"b2bclient\") && (\n \n this.openLabModal(e, offeredTest)\n }\n >\n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n\n \n \n \n \n \n \n {offeredTest && offeredTest.rating && (\n

{offeredTest.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n
\n cartItem.offered_test_id === offeredTest.id) ? 'secondary' : 'primary'}\n className={`btn mt-3 me-1${this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id) ? ' disabled' : ''}`}\n // onClick={() => this.handleAddToCart(offeredTest)}\n onClick={() => {\n\n //TOTAL BEFORE CLICK\n const cartTotalBalance = this.props.carts.reduce((sum, cartItem) => sum + cartItem.total_balance, 0);\n console.log(\"Current cart total:\", cartTotalBalance);\n\n // Calculate the total after adding the new test\n const checktotal = offeredTest.price + cartTotalBalance;\n console.log(\"Total after adding test:\", checktotal);\n\n if (this.props.carts.some(cartItem => cartItem.test_name === offeredTest.test_name)) {\n alert(\"An item with the same name but from a different lab is already in the cart. Please remove the previous one first.\");\n } else if (\n this.props.patientProfile && this.props.patientProfile.corporate_id !== \"undefined\" && this.props.patientProfile.is_assosiatewith_anycorporate == true && this.props.patientProfile.corporate_payment === \"Payment by Coorporate to LH\" && checktotal> this.props.patientProfile.quota\n ) {\n alert(\"Unfortunately, there are no funds available in your allocated quota for this test. For more information, please contact your corporation.\");\n } else {\n this.handleAddToCart(offeredTest);\n }\n }}\n disabled={this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id)}\n >\n {this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id) ? 'Already Added' : 'Add to cart'}\n \n
\n
\n
\n ))\n\n ) : isEmpty(this.props.offeredTests) && loading ? (\n // Loading state\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n
\n Sorry, No tests were found at your specified lab.....\n
\n \n
\n )\n }\n\n \n
\n
\n
\n
\n );\n }\n}\n\nTestsOffered.propTypes = {\n match: PropTypes.object,\n history: any,\n location: PropTypes.any,\n offeredTests: PropTypes.array,\n ongetCOfferedTestsReferrel: PropTypes.func,\n onAddToCart: PropTypes.func,\n success: PropTypes.any,\n error: PropTypes.any,\n className: PropTypes.any,\n carts: PropTypes.array,\n menuOpen: PropTypes.any,\n t: PropTypes.any,\n carts: PropTypes.any,\n onGetCarts: PropTypes.func,\n onGetPatientProfile: PropTypes.func,\n patientProfile: PropTypes.array,\n\n};\n\nconst mapStateToProps = ({ offeredTests, carts, LabMarket }) => ({\n offeredTests: offeredTests.offeredTests,\n carts: carts.carts,\n success: carts.success,\n error: carts.error,\n patientProfile: LabMarket.patientProfile,\n\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n ongetCOfferedTestsReferrel: () =>\n dispatch(getCOfferedTestsReferrel(ownProps.match.params.lab_account_id)),\n onAddToCart: (cart, id) => dispatch(addToCart(cart, id)),\n onGetCarts: id => dispatch(getCarts(id)),\n onGetPatientProfile: id => dispatch(getPatientProfile(id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(TestsOffered));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\nimport { connect } from \"react-redux\";\nimport { Link } from \"react-router-dom\";\nimport { withRouter } from \"react-router-dom\";\nimport { Formik, Field, Form } from \"formik\";\nimport { Collapse } from \"reactstrap\";\nimport logo from \"../../../assets/images/logo.svg\";\nimport logoLight from \"../../../assets/images/logo-light.png\";\nimport logoLightSvg from \"../../../assets/images/logo-light.svg\";\nimport StarRatings from \"react-star-ratings\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport \"../../../components/HorizontalLayout/horizontal-navbar.scss\";\n\n\nimport ScrollButton from \"components/Common/Scrollbutton\";\nimport {\n Card,\n Button,\n CardBody,\n Label,\n Modal,\n ModalBody,\n ModalHeader,\n Col,\n Input,\n Container,\n Pagination,\n PaginationItem,\n PaginationLink,\n Row,\n Alert,\n} from \"reactstrap\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\nimport \"nouislider/distribute/nouislider.css\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { any } from \"prop-types\";\n\nimport { getCOfferedProfilesReferrel } from \"store/offered-tests/actions\";\nimport { addToCart } from \"store/actions\";\nimport { getCarts } from \"store/carts/actions\";\n\nclass TestsOffered extends Component {\n constructor(props) {\n super(props);\n this.state = {\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n patient_name: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).patient_name\n : \"\",\n position: \"right\",\n activeTab: \"1\",\n offeredTests: [],\n carts: [],\n cart: \"\",\n success: \"\",\n error: \"\",\n testtype: \"test\",\n applied: true,\n loading: true, // Add loading state property\n page: 1,\n searchQuery: \"\", // New state property for search query\n totalPage: 5, //replace this with total pages of data\n itemsInCart: [],\n };\n this.toggleTab = this.toggleTab.bind(this);\n console.log(\"yaha ani chahi hai uuid\", this.props.match.params.uuid)\n console.log(\"yaha ani chahi hai guid\", this.props.match.params.guest_id)\n console.log(\"yaha ani chahi hai fuid\", this.props.match.params.filnalurl)\n\n }\n\n componentDidMount() {\n const { carts, onGetCarts } = this.props;\n onGetCarts(this.state.user_id);\n this.setState({\n carts\n });\n const { ongetCOfferedProfilesReferrel } = this.props;\n if (this.state.applied) {\n ongetCOfferedProfilesReferrel();\n this.setState({ offeredTests: this.props.offeredTests });\n }\n setTimeout(() => {\n this.setState({ loading: false });\n }, 70000); // Set loading state to false after 7 seconds\n }\n toggleTab(tab) {\n if (this.state.activeTab !== tab) {\n this.setState({\n activeTab: tab,\n });\n }\n }\n\n handlePageClick = page => {\n this.setState({ page });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n test_details: arg.test_details,\n });\n };\n\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n openDescriptionModal = (e, arg) => {\n this.setState({\n DescriptionModal: true,\n description_in_english: arg.description_in_english,\n description_in_urdu: arg.description_in_urdu,\n test_details: arg.test_details,\n test_name:arg.test_name,\n });\n };\n\n toggleDescriptionModal = () => {\n this.setState(prevState => ({\n DescriptionModal: !prevState.DescriptionModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n handleAddToCart = (cart) => {\n const { onAddToCart } = this.props;\n \n // Check if the item is already in the cart based on user type\n if (!this.state.user_id) {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n this.setState({ guest_id: this.props.match.params.guest_id });\n cart.guest_id = this.props.match.params.guest_id;\n onAddToCart(cart, cart.guest_id);\n \n console.log(\"uuid:\", cart.guest_id, this.props.match.params.guest_id);\n } else if (this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.state.user_id);\n } else if (this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.props.match.params.guest_id);\n } else if (this.state.user_type === \"b2bclient\" && this.state.user_type !== \"CSR\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.props.match.params.uuid);\n }\n \n // Update the state to include the newly added item in the cart\n const updatedItemsInCart = [...this.state.itemsInCart, cart];\n this.setState({ itemsInCart: updatedItemsInCart });\n \n this.showSuccessMessage(\"Item added Successfully\");\n };\n \n showErrorMessage = (message) => {\n this.showPopup(message, \"red\");\n };\n \n showSuccessMessage = (message) => {\n this.showPopup(message, \"green\");\n };\n \n showPopup = (message, textColor) => {\n // Create and style the popup\n const popup = document.createElement(\"div\");\n popup.style.display = \"none\";\n popup.style.position = \"fixed\";\n popup.style.top = \"0\";\n popup.style.left = \"0\";\n popup.style.width = \"100%\";\n popup.style.height = \"100%\";\n popup.style.background = \"rgba(0, 0, 0, 0.5)\";\n popup.style.zIndex = \"1000\";\n \n const popupContent = document.createElement(\"div\");\n popupContent.style.position = \"absolute\";\n popupContent.style.top = \"50%\";\n popupContent.style.left = \"50%\";\n popupContent.style.transform = \"translate(-50%, -50%)\";\n popupContent.style.background = \"#fff\";\n popupContent.style.padding = \"20px\";\n popupContent.style.borderRadius = \"5px\";\n popupContent.style.boxShadow = \"0 0 10px rgba(0, 0, 0, 0.3)\";\n \n const messageElement = document.createElement(\"div\");\n messageElement.style.fontSize = \"18px\";\n messageElement.style.textAlign = \"center\";\n messageElement.style.color = textColor; // Set the text color\n \n // Set the message\n messageElement.textContent = message;\n \n // Append elements to the DOM\n popupContent.appendChild(messageElement);\n popup.appendChild(popupContent);\n document.body.appendChild(popup);\n \n // Show the popup\n popup.style.display = \"block\";\n \n // Hide the popup after a certain duration (e.g., 3 seconds)\n setTimeout(() => {\n popup.style.display = \"none\";\n }, 1000); // 3000 milliseconds = 3 seconds\n };\n\n activateParentDropdown = item => {\n item.classList.add(\"active\");\n const parent = item.parentElement;\n if (parent) {\n parent.classList.add(\"active\"); // li\n const parent2 = parent.parentElement;\n parent2.classList.add(\"active\"); // li\n const parent3 = parent2.parentElement;\n if (parent3) {\n parent3.classList.add(\"active\"); // li\n const parent4 = parent3.parentElement;\n if (parent4) {\n parent4.classList.add(\"active\"); // li\n const parent5 = parent4.parentElement;\n if (parent5) {\n parent5.classList.add(\"active\"); // li\n const parent6 = parent5.parentElement;\n if (parent6) {\n parent6.classList.add(\"active\"); // li\n }\n }\n }\n }\n }\n return false;\n };\n handlePageClick = page => {\n this.setState({ page });\n };\n toggleFullscreen() {\n if (\n !document.fullscreenElement &&\n /* alternative standard method */ !document.mozFullScreenElement &&\n !document.webkitFullscreenElement\n ) {\n // current working methods\n if (document.documentElement.requestFullscreen) {\n document.documentElement.requestFullscreen();\n } else if (document.documentElement.mozRequestFullScreen) {\n document.documentElement.mozRequestFullScreen();\n } else if (document.documentElement.webkitRequestFullscreen) {\n document.documentElement.webkitRequestFullscreen(\n Element.ALLOW_KEYBOARD_INPUT\n );\n }\n } else {\n if (document.cancelFullScreen) {\n document.cancelFullScreen();\n } else if (document.mozCancelFullScreen) {\n document.mozCancelFullScreen();\n } else if (document.webkitCancelFullScreen) {\n document.webkitCancelFullScreen();\n }\n }\n }\n onUpdate = (render, handle, value) => {\n const { carts } = this.props;\n if (\n !isEmpty(carts) &&\n size(prevProps.carts) !== size(carts)\n ) {\n this.setState({ carts: {} });\n }\n this.setState({\n nearbyLabs: productsData.filter(\n nearbyLab =>\n nearbyLab.newPrice >= value[0] && nearbyLab.newPrice <= value[1]\n ),\n });\n };\n\n render() {\n const { onGetCarts } = this.props;\n\n const { carts } = this.props;\n const { loading } = this.state;\n const isLargeScreen = window.innerWidth < 490;\n\n const { page, totalPage } = this.state;\n const { offeredTests } = this.props.offeredTests;\n const offeredTest = this.state.offeredTest;\n const { searchQuery } = this.state;\n const filteredTests = this.props.offeredTests.filter((test) =>\n test.test_name.toLowerCase().includes(searchQuery.toLowerCase())\n );\n\n return (\n \n \n
\n \n Tests Offered | Lab Hazir\n \n \n \n\n {this.state.success ? (\n \n {this.state.success}\n \n ) : this.state.error ? (\n \n {this.state.error}\n \n ) : null}\n\n \n
\n \n Search By Test Name\n \n
\n this.setState({ searchQuery: e.target.value })}\n />\n
\n
\n \n\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n

\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n \n
\n \n
\n
\n
\n
\n \n \n {filteredTests.length > 0 ? (\n filteredTests.map((offeredTest, key) => (\n \n \n \n
\n
\n {/* {offeredTest.test_name} */}\n \n {offeredTest.test_name} \n \n
\n {offeredTest.test_type != \"Test\" && (\n //
\n \n this.openPatientModal(e, offeredTest)\n }\n >\n Test Description\n \n //
\n )}\n {offeredTest.test_type == \"Test\" && (\n //
\n \n this.openDescriptionModal(e, offeredTest)\n }\n >\n Test Description\n \n //
\n )}\n \n {(offeredTest.discount >= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {(offeredTest.discount >= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) <= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {(offeredTest.discount <= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {(offeredTest.discount <= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) <= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {((offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {offeredTest.discount>=0.01 && (\n
\n \n {\" \"}\n Discount Lab: {(offeredTest.discount*100).toFixed()} % \n \n
\n )}\n {(offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01 && (\n
\n \n {\" \"}\n Discount LabHazir: {((offeredTest.all_discount_by_labhazir * 100) + (offeredTest.discount_by_labhazir * 100)).toFixed()} %\n \n\n
\n )}\n \n
\n \n Reporting\n Time: {offeredTest.duration_required}{\" \"}\n {offeredTest.duration_type}\n \n
\n\n
\n \n Home Sampling:{\" \"}\n {offeredTest.is_home_sampling_available}\n \n
\n
\n {\" \"}\n {!this.state.user_id ? (\n \n \n {offeredTest.lab_name}{\" \"}\n \n \n \n ):null}\n {(this.state.user_id) && (this.state.user_type ===\"CSR\") && (this.state.user_type !==\"b2bclient\") && (\n \n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !==\"CSR\") && (this.state.user_type !==\"b2bclient\") && (\n \n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !==\"CSR\") && (this.state.user_type ===\"b2bclient\") && (\n \n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n \n \n \n \n \n \n \n {offeredTest && offeredTest.rating && (\n

{offeredTest.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n
\n {/* this.handleAddToCart(offeredTest)}\n disabled={this.state.itemsInCart.includes(offeredTest)} // Disable the button if the item is in the cart\n>\n {this.state.itemsInCart.includes(offeredTest) ? 'Already Added' : 'Add to cart'}\n */}\n cartItem.offered_test_id === offeredTest.id) ? 'secondary' : 'primary'}\n className={`btn mt-3 me-1${this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id) ? ' disabled' : ''}`}\n // onClick={() => this.handleAddToCart(offeredTest)}\n onClick={() => {\n // Check if offeredTest.name is equal to any cartItem.name\n if (this.props.carts.some(cartItem => cartItem.test_name === offeredTest.test_name)) {\n alert(\"An item with the same name but from a different lab is already in the cart. Please remove the previous one first.\");\n } else {\n // If not, proceed with adding to the cart\n this.handleAddToCart(offeredTest);\n }\n }}\n disabled={this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id)}\n>\n {this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id) ? 'Already Added' : 'Add to cart'}\n\n
\n
\n
\n \n ))\n ) : isEmpty(this.props.offeredTests) && loading ? (\n // Loading state\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n
\n Sorry, No tests were found at your specified lab.....\n
\n \n
\n )\n }\n {/* {isEmpty(nearbyLabs) && (\n loading ? (\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n
\n Sorry, No Labs Found In Your Specific Area.....\n
\n \n
\n )\n )} */}\n \n \n
\n
\n
\n
\n );\n }\n}\n\nTestsOffered.propTypes = {\n match: PropTypes.object,\n history: any,\n location: PropTypes.any,\n offeredTests: PropTypes.array,\n ongetCOfferedProfilesReferrel: PropTypes.func,\n onAddToCart: PropTypes.func,\n success: PropTypes.any,\n error: PropTypes.any,\n className: PropTypes.any,\n carts: PropTypes.array,\n menuOpen: PropTypes.any,\n t: PropTypes.any,\n carts: PropTypes.any,\n onGetCarts: PropTypes.func,\n};\n\nconst mapStateToProps = ({ offeredTests, carts }) => ({\n offeredTests: offeredTests.offeredTests,\n carts: carts.carts,\n success: carts.success,\n error: carts.error,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n ongetCOfferedProfilesReferrel: () =>\n dispatch(getCOfferedProfilesReferrel(ownProps.match.params.lab_account_id)),\n onAddToCart: (cart, id) => dispatch(addToCart(cart, id)),\n onGetCarts: id => dispatch(getCarts(id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(TestsOffered));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\nimport { connect } from \"react-redux\";\nimport { Link } from \"react-router-dom\";\nimport { withRouter } from \"react-router-dom\";\nimport { Formik, Field, Form } from \"formik\";\nimport { Collapse } from \"reactstrap\";\nimport logo from \"../../../assets/images/logo.svg\";\nimport logoLight from \"../../../assets/images/logo-light.png\";\nimport logoLightSvg from \"../../../assets/images/logo-light.svg\";\nimport StarRatings from \"react-star-ratings\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport \"../../../components/HorizontalLayout/horizontal-navbar.scss\";\n\n\nimport ScrollButton from \"components/Common/Scrollbutton\";\nimport {\n Card,\n Button,\n CardBody,\n Label,\n Modal,\n ModalBody,\n ModalHeader,\n Col,\n Input,\n Container,\n Pagination,\n PaginationItem,\n PaginationLink,\n Row,\n Alert,\n} from \"reactstrap\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\nimport \"nouislider/distribute/nouislider.css\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { any } from \"prop-types\";\n\nimport { getCOfferedRadiologysReferrel } from \"store/offered-tests/actions\";\nimport { addToCart } from \"store/actions\";\nimport { getCarts } from \"store/carts/actions\";\n\nclass TestsOffered extends Component {\n constructor(props) {\n super(props);\n this.state = {\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n patient_name: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).patient_name\n : \"\",\n position: \"right\",\n activeTab: \"1\",\n offeredTests: [],\n carts: [],\n cart: \"\",\n success: \"\",\n error: \"\",\n testtype: \"test\",\n applied: true,\n loading: true, // Add loading state property\n page: 1,\n searchQuery: \"\", // New state property for search query\n totalPage: 5, //replace this with total pages of data\n itemsInCart: [],\n };\n this.toggleTab = this.toggleTab.bind(this);\n console.log(\"yaha ani chahi hai uuid\", this.props.match.params.uuid)\n console.log(\"yaha ani chahi hai guid\", this.props.match.params.guest_id)\n console.log(\"yaha ani chahi hai fuid\", this.props.match.params.filnalurl)\n\n }\n\n componentDidMount() {\n const { carts, onGetCarts } = this.props;\n onGetCarts(this.state.user_id);\n this.setState({\n carts\n });\n const { ongetCOfferedRadiologysReferrel } = this.props;\n if (this.state.applied) {\n ongetCOfferedRadiologysReferrel();\n this.setState({ offeredTests: this.props.offeredTests });\n }\n setTimeout(() => {\n this.setState({ loading: false });\n }, 70000); // Set loading state to false after 7 seconds\n }\n toggleTab(tab) {\n if (this.state.activeTab !== tab) {\n this.setState({\n activeTab: tab,\n });\n }\n }\n\n handlePageClick = page => {\n this.setState({ page });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n test_details: arg.test_details,\n });\n };\n\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n openDescriptionModal = (e, arg) => {\n this.setState({\n DescriptionModal: true,\n description_in_english: arg.description_in_english,\n description_in_urdu: arg.description_in_urdu,\n test_details: arg.test_details,\n test_name:arg.test_name,\n });\n };\n\n toggleDescriptionModal = () => {\n this.setState(prevState => ({\n DescriptionModal: !prevState.DescriptionModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n handleAddToCart = (cart) => {\n const { onAddToCart } = this.props;\n \n // Check if the item is already in the cart based on user type\n if (!this.state.user_id) {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n this.setState({ guest_id: this.props.match.params.guest_id });\n cart.guest_id = this.props.match.params.guest_id;\n onAddToCart(cart, cart.guest_id);\n \n console.log(\"uuid:\", cart.guest_id, this.props.match.params.guest_id);\n } else if (this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.state.user_id);\n } else if (this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.props.match.params.guest_id);\n } else if (this.state.user_type === \"b2bclient\" && this.state.user_type !== \"CSR\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.props.match.params.uuid);\n }\n \n // Update the state to include the newly added item in the cart\n const updatedItemsInCart = [...this.state.itemsInCart, cart];\n this.setState({ itemsInCart: updatedItemsInCart });\n \n this.showSuccessMessage(\"Item added Successfully\");\n };\n \n showErrorMessage = (message) => {\n this.showPopup(message, \"red\");\n };\n \n showSuccessMessage = (message) => {\n this.showPopup(message, \"green\");\n };\n \n showPopup = (message, textColor) => {\n // Create and style the popup\n const popup = document.createElement(\"div\");\n popup.style.display = \"none\";\n popup.style.position = \"fixed\";\n popup.style.top = \"0\";\n popup.style.left = \"0\";\n popup.style.width = \"100%\";\n popup.style.height = \"100%\";\n popup.style.background = \"rgba(0, 0, 0, 0.5)\";\n popup.style.zIndex = \"1000\";\n \n const popupContent = document.createElement(\"div\");\n popupContent.style.position = \"absolute\";\n popupContent.style.top = \"50%\";\n popupContent.style.left = \"50%\";\n popupContent.style.transform = \"translate(-50%, -50%)\";\n popupContent.style.background = \"#fff\";\n popupContent.style.padding = \"20px\";\n popupContent.style.borderRadius = \"5px\";\n popupContent.style.boxShadow = \"0 0 10px rgba(0, 0, 0, 0.3)\";\n \n const messageElement = document.createElement(\"div\");\n messageElement.style.fontSize = \"18px\";\n messageElement.style.textAlign = \"center\";\n messageElement.style.color = textColor; // Set the text color\n \n // Set the message\n messageElement.textContent = message;\n \n // Append elements to the DOM\n popupContent.appendChild(messageElement);\n popup.appendChild(popupContent);\n document.body.appendChild(popup);\n \n // Show the popup\n popup.style.display = \"block\";\n \n // Hide the popup after a certain duration (e.g., 3 seconds)\n setTimeout(() => {\n popup.style.display = \"none\";\n }, 1000); // 3000 milliseconds = 3 seconds\n };\n\n activateParentDropdown = item => {\n item.classList.add(\"active\");\n const parent = item.parentElement;\n if (parent) {\n parent.classList.add(\"active\"); // li\n const parent2 = parent.parentElement;\n parent2.classList.add(\"active\"); // li\n const parent3 = parent2.parentElement;\n if (parent3) {\n parent3.classList.add(\"active\"); // li\n const parent4 = parent3.parentElement;\n if (parent4) {\n parent4.classList.add(\"active\"); // li\n const parent5 = parent4.parentElement;\n if (parent5) {\n parent5.classList.add(\"active\"); // li\n const parent6 = parent5.parentElement;\n if (parent6) {\n parent6.classList.add(\"active\"); // li\n }\n }\n }\n }\n }\n return false;\n };\n handlePageClick = page => {\n this.setState({ page });\n };\n toggleFullscreen() {\n if (\n !document.fullscreenElement &&\n /* alternative standard method */ !document.mozFullScreenElement &&\n !document.webkitFullscreenElement\n ) {\n // current working methods\n if (document.documentElement.requestFullscreen) {\n document.documentElement.requestFullscreen();\n } else if (document.documentElement.mozRequestFullScreen) {\n document.documentElement.mozRequestFullScreen();\n } else if (document.documentElement.webkitRequestFullscreen) {\n document.documentElement.webkitRequestFullscreen(\n Element.ALLOW_KEYBOARD_INPUT\n );\n }\n } else {\n if (document.cancelFullScreen) {\n document.cancelFullScreen();\n } else if (document.mozCancelFullScreen) {\n document.mozCancelFullScreen();\n } else if (document.webkitCancelFullScreen) {\n document.webkitCancelFullScreen();\n }\n }\n }\n onUpdate = (render, handle, value) => {\n const { carts } = this.props;\n if (\n !isEmpty(carts) &&\n size(prevProps.carts) !== size(carts)\n ) {\n this.setState({ carts: {} });\n }\n this.setState({\n nearbyLabs: productsData.filter(\n nearbyLab =>\n nearbyLab.newPrice >= value[0] && nearbyLab.newPrice <= value[1]\n ),\n });\n };\n\n render() {\n const { onGetCarts } = this.props;\n\n const { carts } = this.props;\n const { loading } = this.state;\n const isLargeScreen = window.innerWidth < 490;\n\n const { page, totalPage } = this.state;\n const { offeredTests } = this.props.offeredTests;\n const offeredTest = this.state.offeredTest;\n const { searchQuery } = this.state;\n const filteredTests = this.props.offeredTests.filter((test) =>\n test.test_name.toLowerCase().includes(searchQuery.toLowerCase())\n );\n\n return (\n \n \n
\n \n Tests Offered | Lab Hazir\n \n \n \n\n {this.state.success ? (\n \n {this.state.success}\n \n ) : this.state.error ? (\n \n {this.state.error}\n \n ) : null}\n\n \n
\n \n Search By Test Name\n \n
\n this.setState({ searchQuery: e.target.value })}\n />\n
\n
\n \n\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n

\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n \n
\n \n
\n
\n
\n
\n \n \n {filteredTests.length > 0 ? (\n filteredTests.map((offeredTest, key) => (\n \n \n \n
\n
\n {/* {offeredTest.test_name} */}\n \n {offeredTest.test_name} \n \n
\n {offeredTest.test_type != \"Test\" && (\n //
\n \n this.openPatientModal(e, offeredTest)\n }\n >\n Test Description\n \n //
\n )}\n {offeredTest.test_type == \"Test\" && (\n //
\n \n this.openDescriptionModal(e, offeredTest)\n }\n >\n Test Description\n \n //
\n )}\n \n {(offeredTest.discount >= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {(offeredTest.discount >= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) <= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {(offeredTest.discount <= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {(offeredTest.discount <= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) <= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {((offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {offeredTest.discount>=0.01 && (\n
\n \n {\" \"}\n Discount Lab: {(offeredTest.discount*100).toFixed()} % \n \n
\n )}\n {(offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01 && (\n
\n \n {\" \"}\n Discount LabHazir: {((offeredTest.all_discount_by_labhazir * 100) + (offeredTest.discount_by_labhazir * 100)).toFixed()} %\n \n\n
\n )}\n \n
\n \n Reporting\n Time: {offeredTest.duration_required}{\" \"}\n {offeredTest.duration_type}\n \n
\n\n
\n \n Home Sampling:{\" \"}\n {offeredTest.is_home_sampling_available}\n \n
\n
\n {\" \"}\n {!this.state.user_id ? (\n \n \n {offeredTest.lab_name}{\" \"}\n \n \n \n ):null}\n {(this.state.user_id) && (this.state.user_type ===\"CSR\") && (this.state.user_type !==\"b2bclient\") && (\n \n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !==\"CSR\") && (this.state.user_type !==\"b2bclient\") && (\n \n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !==\"CSR\") && (this.state.user_type ===\"b2bclient\") && (\n \n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n \n \n \n \n \n \n \n {offeredTest && offeredTest.rating && (\n

{offeredTest.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n
\n {/* this.handleAddToCart(offeredTest)}\n disabled={this.state.itemsInCart.includes(offeredTest)} // Disable the button if the item is in the cart\n>\n {this.state.itemsInCart.includes(offeredTest) ? 'Already Added' : 'Add to cart'}\n */}\n cartItem.offered_test_id === offeredTest.id) ? 'secondary' : 'primary'}\n className={`btn mt-3 me-1${this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id) ? ' disabled' : ''}`}\n // onClick={() => this.handleAddToCart(offeredTest)}\n onClick={() => {\n // Check if offeredTest.name is equal to any cartItem.name\n if (this.props.carts.some(cartItem => cartItem.test_name === offeredTest.test_name)) {\n alert(\"An item with the same name but from a different lab is already in the cart. Please remove the previous one first.\");\n } else {\n // If not, proceed with adding to the cart\n this.handleAddToCart(offeredTest);\n }\n }}\n disabled={this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id)}\n>\n {this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id) ? 'Already Added' : 'Add to cart'}\n\n
\n
\n
\n \n ))\n ) : isEmpty(this.props.offeredTests) && loading ? (\n // Loading state\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n
\n Sorry, No tests were found at your specified lab.....\n
\n \n
\n )\n }\n {/* {isEmpty(nearbyLabs) && (\n loading ? (\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n
\n Sorry, No Labs Found In Your Specific Area.....\n
\n \n
\n )\n )} */}\n \n \n
\n
\n
\n
\n );\n }\n}\n\nTestsOffered.propTypes = {\n match: PropTypes.object,\n history: any,\n location: PropTypes.any,\n offeredTests: PropTypes.array,\n ongetCOfferedRadiologysReferrel: PropTypes.func,\n onAddToCart: PropTypes.func,\n success: PropTypes.any,\n error: PropTypes.any,\n className: PropTypes.any,\n carts: PropTypes.array,\n menuOpen: PropTypes.any,\n t: PropTypes.any,\n carts: PropTypes.any,\n onGetCarts: PropTypes.func,\n};\n\nconst mapStateToProps = ({ offeredTests, carts }) => ({\n offeredTests: offeredTests.offeredTests,\n carts: carts.carts,\n success: carts.success,\n error: carts.error,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n ongetCOfferedRadiologysReferrel: () =>\n dispatch(getCOfferedRadiologysReferrel(ownProps.match.params.lab_account_id)),\n onAddToCart: (cart, id) => dispatch(addToCart(cart, id)),\n onGetCarts: id => dispatch(getCarts(id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(TestsOffered));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\nimport { connect } from \"react-redux\";\nimport { Link } from \"react-router-dom\";\nimport { withRouter } from \"react-router-dom\";\nimport { Formik, Field, Form } from \"formik\";\nimport { Collapse } from \"reactstrap\";\nimport logo from \"../../../assets/images/logo.svg\";\nimport logoLight from \"../../../assets/images/logo-light.png\";\nimport logoLightSvg from \"../../../assets/images/logo-light.svg\";\nimport StarRatings from \"react-star-ratings\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport \"../../../components/HorizontalLayout/horizontal-navbar.scss\";\n\n\nimport ScrollButton from \"components/Common/Scrollbutton\";\nimport {\n Card,\n Button,\n CardBody,\n Label,\n Modal,\n ModalBody,\n ModalHeader,\n Col,\n Input,\n Container,\n Pagination,\n PaginationItem,\n PaginationLink,\n Row,\n Alert,\n} from \"reactstrap\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\nimport \"nouislider/distribute/nouislider.css\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { any } from \"prop-types\";\n\nimport { getCOfferedPackagesReferrel } from \"store/offered-tests/actions\";\nimport { addToCart } from \"store/actions\";\nimport { getCarts } from \"store/carts/actions\";\n\nclass TestsOffered extends Component {\n constructor(props) {\n super(props);\n this.state = {\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n patient_name: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).patient_name\n : \"\",\n position: \"right\",\n activeTab: \"1\",\n offeredTests: [],\n carts: [],\n cart: \"\",\n success: \"\",\n error: \"\",\n testtype: \"test\",\n applied: true,\n loading: true, // Add loading state property\n page: 1,\n searchQuery: \"\", // New state property for search query\n totalPage: 5, //replace this with total pages of data\n itemsInCart: [],\n };\n this.toggleTab = this.toggleTab.bind(this);\n console.log(\"yaha ani chahi hai uuid\", this.props.match.params.uuid)\n console.log(\"yaha ani chahi hai guid\", this.props.match.params.guest_id)\n console.log(\"yaha ani chahi hai fuid\", this.props.match.params.filnalurl)\n\n }\n\n componentDidMount() {\n const { carts, onGetCarts } = this.props;\n onGetCarts(this.state.user_id);\n this.setState({\n carts\n });\n const { ongetCOfferedPackegesReferrel } = this.props;\n if (this.state.applied) {\n ongetCOfferedPackegesReferrel();\n this.setState({ offeredTests: this.props.offeredTests });\n }\n setTimeout(() => {\n this.setState({ loading: false });\n }, 70000); // Set loading state to false after 7 seconds\n }\n toggleTab(tab) {\n if (this.state.activeTab !== tab) {\n this.setState({\n activeTab: tab,\n });\n }\n }\n\n handlePageClick = page => {\n this.setState({ page });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n test_details: arg.test_details,\n });\n };\n\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n openDescriptionModal = (e, arg) => {\n this.setState({\n DescriptionModal: true,\n description_in_english: arg.description_in_english,\n description_in_urdu: arg.description_in_urdu,\n test_details: arg.test_details,\n test_name:arg.test_name,\n });\n };\n\n toggleDescriptionModal = () => {\n this.setState(prevState => ({\n DescriptionModal: !prevState.DescriptionModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n handleAddToCart = (cart) => {\n const { onAddToCart } = this.props;\n \n // Check if the item is already in the cart based on user type\n if (!this.state.user_id) {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n this.setState({ guest_id: this.props.match.params.guest_id });\n cart.guest_id = this.props.match.params.guest_id;\n onAddToCart(cart, cart.guest_id);\n \n console.log(\"uuid:\", cart.guest_id, this.props.match.params.guest_id);\n } else if (this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.state.user_id);\n } else if (this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.props.match.params.guest_id);\n } else if (this.state.user_type === \"b2bclient\" && this.state.user_type !== \"CSR\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.props.match.params.uuid);\n }\n \n // Update the state to include the newly added item in the cart\n const updatedItemsInCart = [...this.state.itemsInCart, cart];\n this.setState({ itemsInCart: updatedItemsInCart });\n \n this.showSuccessMessage(\"Item added Successfully\");\n };\n \n showErrorMessage = (message) => {\n this.showPopup(message, \"red\");\n };\n \n showSuccessMessage = (message) => {\n this.showPopup(message, \"green\");\n };\n \n showPopup = (message, textColor) => {\n // Create and style the popup\n const popup = document.createElement(\"div\");\n popup.style.display = \"none\";\n popup.style.position = \"fixed\";\n popup.style.top = \"0\";\n popup.style.left = \"0\";\n popup.style.width = \"100%\";\n popup.style.height = \"100%\";\n popup.style.background = \"rgba(0, 0, 0, 0.5)\";\n popup.style.zIndex = \"1000\";\n \n const popupContent = document.createElement(\"div\");\n popupContent.style.position = \"absolute\";\n popupContent.style.top = \"50%\";\n popupContent.style.left = \"50%\";\n popupContent.style.transform = \"translate(-50%, -50%)\";\n popupContent.style.background = \"#fff\";\n popupContent.style.padding = \"20px\";\n popupContent.style.borderRadius = \"5px\";\n popupContent.style.boxShadow = \"0 0 10px rgba(0, 0, 0, 0.3)\";\n \n const messageElement = document.createElement(\"div\");\n messageElement.style.fontSize = \"18px\";\n messageElement.style.textAlign = \"center\";\n messageElement.style.color = textColor; // Set the text color\n \n // Set the message\n messageElement.textContent = message;\n \n // Append elements to the DOM\n popupContent.appendChild(messageElement);\n popup.appendChild(popupContent);\n document.body.appendChild(popup);\n \n // Show the popup\n popup.style.display = \"block\";\n \n // Hide the popup after a certain duration (e.g., 3 seconds)\n setTimeout(() => {\n popup.style.display = \"none\";\n }, 1000); // 3000 milliseconds = 3 seconds\n };\n\n activateParentDropdown = item => {\n item.classList.add(\"active\");\n const parent = item.parentElement;\n if (parent) {\n parent.classList.add(\"active\"); // li\n const parent2 = parent.parentElement;\n parent2.classList.add(\"active\"); // li\n const parent3 = parent2.parentElement;\n if (parent3) {\n parent3.classList.add(\"active\"); // li\n const parent4 = parent3.parentElement;\n if (parent4) {\n parent4.classList.add(\"active\"); // li\n const parent5 = parent4.parentElement;\n if (parent5) {\n parent5.classList.add(\"active\"); // li\n const parent6 = parent5.parentElement;\n if (parent6) {\n parent6.classList.add(\"active\"); // li\n }\n }\n }\n }\n }\n return false;\n };\n handlePageClick = page => {\n this.setState({ page });\n };\n toggleFullscreen() {\n if (\n !document.fullscreenElement &&\n /* alternative standard method */ !document.mozFullScreenElement &&\n !document.webkitFullscreenElement\n ) {\n // current working methods\n if (document.documentElement.requestFullscreen) {\n document.documentElement.requestFullscreen();\n } else if (document.documentElement.mozRequestFullScreen) {\n document.documentElement.mozRequestFullScreen();\n } else if (document.documentElement.webkitRequestFullscreen) {\n document.documentElement.webkitRequestFullscreen(\n Element.ALLOW_KEYBOARD_INPUT\n );\n }\n } else {\n if (document.cancelFullScreen) {\n document.cancelFullScreen();\n } else if (document.mozCancelFullScreen) {\n document.mozCancelFullScreen();\n } else if (document.webkitCancelFullScreen) {\n document.webkitCancelFullScreen();\n }\n }\n }\n onUpdate = (render, handle, value) => {\n const { carts } = this.props;\n if (\n !isEmpty(carts) &&\n size(prevProps.carts) !== size(carts)\n ) {\n this.setState({ carts: {} });\n }\n this.setState({\n nearbyLabs: productsData.filter(\n nearbyLab =>\n nearbyLab.newPrice >= value[0] && nearbyLab.newPrice <= value[1]\n ),\n });\n };\n\n render() {\n const { onGetCarts } = this.props;\n\n const { carts } = this.props;\n const { loading } = this.state;\n const isLargeScreen = window.innerWidth < 490;\n\n const { page, totalPage } = this.state;\n const { offeredTests } = this.props.offeredTests;\n const offeredTest = this.state.offeredTest;\n const { searchQuery } = this.state;\n const filteredTests = this.props.offeredTests.filter((test) =>\n test.test_name.toLowerCase().includes(searchQuery.toLowerCase())\n );\n\n return (\n \n \n
\n \n Tests Offered | Lab Hazir\n \n \n \n\n {this.state.success ? (\n \n {this.state.success}\n \n ) : this.state.error ? (\n \n {this.state.error}\n \n ) : null}\n\n \n
\n \n Search By Test Name\n \n
\n this.setState({ searchQuery: e.target.value })}\n />\n
\n
\n \n\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n

\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n \n
\n \n
\n
\n
\n
\n \n \n {filteredTests.length > 0 ? (\n filteredTests.map((offeredTest, key) => (\n \n \n \n
\n
\n {/* {offeredTest.test_name} */}\n \n {offeredTest.test_name} \n \n
\n {offeredTest.test_type != \"Test\" && (\n //
\n \n this.openPatientModal(e, offeredTest)\n }\n >\n Test Description\n \n //
\n )}\n {offeredTest.test_type == \"Test\" && (\n //
\n \n this.openDescriptionModal(e, offeredTest)\n }\n >\n Test Description\n \n //
\n )}\n \n {(offeredTest.discount >= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {(offeredTest.discount >= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) <= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {(offeredTest.discount <= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {(offeredTest.discount <= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) <= 0.01) && (\n
\n \n {/* {\" \"} */}\n Rs {((offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n )}\n {offeredTest.discount>=0.01 && (\n
\n \n {\" \"}\n Discount Lab: {(offeredTest.discount*100).toFixed()} % \n \n
\n )}\n {(offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01 && (\n
\n \n {\" \"}\n Discount LabHazir: {((offeredTest.all_discount_by_labhazir * 100) + (offeredTest.discount_by_labhazir * 100)).toFixed()} %\n \n\n
\n )}\n \n
\n \n Reporting\n Time: {offeredTest.duration_required}{\" \"}\n {offeredTest.duration_type}\n \n
\n\n
\n \n Home Sampling:{\" \"}\n {offeredTest.is_home_sampling_available}\n \n
\n
\n {\" \"}\n {!this.state.user_id ? (\n \n \n {offeredTest.lab_name}{\" \"}\n \n \n \n ):null}\n {(this.state.user_id) && (this.state.user_type ===\"CSR\") && (this.state.user_type !==\"b2bclient\") && (\n \n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !==\"CSR\") && (this.state.user_type !==\"b2bclient\") && (\n \n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !==\"CSR\") && (this.state.user_type ===\"b2bclient\") && (\n \n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n \n \n \n \n \n \n \n {offeredTest && offeredTest.rating && (\n

{offeredTest.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

\n )}\n
\n \n
\n
\n {/* this.handleAddToCart(offeredTest)}\n disabled={this.state.itemsInCart.includes(offeredTest)} // Disable the button if the item is in the cart\n>\n {this.state.itemsInCart.includes(offeredTest) ? 'Already Added' : 'Add to cart'}\n */}\n cartItem.offered_test_id === offeredTest.id) ? 'secondary' : 'primary'}\n className={`btn mt-3 me-1${this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id) ? ' disabled' : ''}`}\n // onClick={() => this.handleAddToCart(offeredTest)}\n onClick={() => {\n // Check if offeredTest.name is equal to any cartItem.name\n if (this.props.carts.some(cartItem => cartItem.test_name === offeredTest.test_name)) {\n alert(\"An item with the same name but from a different lab is already in the cart. Please remove the previous one first.\");\n } else {\n // If not, proceed with adding to the cart\n this.handleAddToCart(offeredTest);\n }\n }}\n disabled={this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id)}\n>\n {this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id) ? 'Already Added' : 'Add to cart'}\n\n
\n
\n
\n \n ))\n ) : isEmpty(this.props.offeredTests) && loading ? (\n // Loading state\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n
\n Sorry, No tests were found at your specified lab.....\n
\n \n
\n )\n }\n {/* {isEmpty(nearbyLabs) && (\n loading ? (\n \n \n
\n Please Wait.....\n
\n \n
\n ) : (\n \n \n
\n Sorry, No Labs Found In Your Specific Area.....\n
\n \n
\n )\n )} */}\n \n \n
\n
\n
\n
\n );\n }\n}\n\nTestsOffered.propTypes = {\n match: PropTypes.object,\n history: any,\n location: PropTypes.any,\n offeredTests: PropTypes.array,\n ongetCOfferedPackegesReferrel: PropTypes.func,\n onAddToCart: PropTypes.func,\n success: PropTypes.any,\n error: PropTypes.any,\n className: PropTypes.any,\n carts: PropTypes.array,\n menuOpen: PropTypes.any,\n t: PropTypes.any,\n carts: PropTypes.any,\n onGetCarts: PropTypes.func,\n};\n\nconst mapStateToProps = ({ offeredTests, carts }) => ({\n offeredTests: offeredTests.offeredTests,\n carts: carts.carts,\n success: carts.success,\n error: carts.error,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n ongetCOfferedPackegesReferrel: () =>\n dispatch(getCOfferedPackagesReferrel(ownProps.match.params.lab_account_id)),\n onAddToCart: (cart, id) => dispatch(addToCart(cart, id)),\n onGetCarts: id => dispatch(getCarts(id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(TestsOffered));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link, Redirect } from \"react-router-dom\";\nimport { Card, CardBody, Col, Container, Row } from \"reactstrap\";\nimport { Collapse } from \"reactstrap\";\nimport logo from \"../../../src/assets/images/logo.svg\";\nimport logoLight from \"../../../src/assets/images/logo-light.png\";\nimport logoLightSvg from \"../../../src/assets/images/logo-light.svg\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport { getCarts, deleteCart, emptyCart } from \"store/carts/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport { getPatientProfile } from \"store/labmarket/actions\";\n\nimport \"assets/scss/table.scss\";\nimport carts from \"pages/CartsList/carts\";\n\nclass CartList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n carts: [],\n patientProfile: [],\n isMenuOpened: false,\n cart: \"\",\n abc: \"\",\n isDropdownOpen: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n patient_name: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).patient_name\n : \"\",\n modal: false,\n deleteModal: false,\n isDisabled: true,\n cartListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, cart) => <>{cart.id},\n },\n {\n dataField: \"lab_name\",\n text: \"Lab name\",\n sort: true,\n },\n {\n dataField: \"test_name\",\n text: \"Test name\",\n sort: true,\n headerStyle: () => {\n return { width: \"30%\" };\n },\n },\n {\n dataField: \"price\",\n text: \"Price\",\n sort: true,\n formatter: (cellContent, cart) => (\n <>\n {\n \n {cart.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n }\n \n ),\n },\n {\n dataField: \"lab_discount\",\n text: \"Discount By Lab\",\n sort: true,\n formatter: (cellContent, cart) => (\n <>{{(cart.lab_discount * 100).toFixed()}%}\n ),\n },\n {\n dataField: \"labhazir_discount\",\n text: \"Discount By Labhazir\",\n sort: true,\n formatter: (cellContent, cart) => {\n const labhaz_discount_percentage = cart.labhaz_discount_test * 100;\n const discount_by_labhazir_percentage = cart.discount_by_labhazir * 100;\n \n const combined_discount_percentage = labhaz_discount_percentage + discount_by_labhazir_percentage;\n \n return {combined_discount_percentage.toFixed()}%;\n },\n },\n {\n dataField: \"total_balance\",\n text: \"After Discount\",\n sort: true,\n formatter: (cellContent, cart) => (\n <>\n {\n // {cart.total_balance.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n {Math.round(cart.total_balance)\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n }\n \n ),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, cart) => (\n \n \n \n this.onClickDelete(cart)}\n >\n \n \n \n ),\n },\n ],\n };\n this.handleCartClick = this.handleCartClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n console.log(\"uuid\", this.props.match.params.uuid);\n console.log(\"guest_id\", this.props.match.params.guest_id);\n }\n\n componentDidMount() {\n const { onGetCarts } = this.props;\n\n // onGetCarts(this.props.match.params.id);\n // this.setState({ carts: this.props.carts });\n if (!this.state.user_id) {\n console.log(onGetCarts(this.props.match.params.guest_id));\n this.setState({ carts: this.props.carts });\n console.log(\"carts:\", this.props.match.params.guest_id);\n console.log(\"userr\", this.state.user_id);\n }\n if (\n this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type !== \"b2bclient\"\n ) {\n onGetCarts(this.state.user_id);\n this.setState({ carts: this.props.carts });\n console.log(\"carts:\", this.props.match.params.guest_id);\n console.log(\"userr\", this.state.user_id);\n }\n if (\n this.state.user_id &&\n this.state.user_type === \"CSR\" &&\n this.state.user_type !== \"b2bclient\"\n ) {\n onGetCarts(this.props.match.params.guest_id);\n this.setState({ carts: this.props.carts });\n console.log(\"carts:\", this.props.match.params.guest_id);\n console.log(\"userr\", this.state.user_id);\n }\n if (\n this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type === \"b2bclient\"\n ) {\n onGetCarts(this.props.match.params.uuid);\n this.setState({ carts: this.props.carts });\n console.log(\"carts:\", this.props.match.params.uuid);\n console.log(\"userr\", this.state.user_id);\n }\n const { onGetPatientProfile } = this.props;\n\n // Assuming onGetPatientProfile is synchronous\n console.log(\"this is patient profile\",onGetPatientProfile(this.state.user_id));\n\n // Now you can safely access patientProfile from props\n const { patientProfile } = this.props;\n console.log(\"state\", patientProfile);\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { carts } = this.props;\n if (!isEmpty(carts) && size(prevProps.carts) !== size(carts)) {\n this.setState({ carts: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = carts => {\n this.setState({ carts: carts });\n this.setState({ deleteModal: true });\n };\n\n handleDeleteCart = () => {\n const { onDeleteCart, onGetCarts } = this.props;\n const { carts } = this.state;\n\n if (carts.id !== undefined) {\n onDeleteCart(carts);\n // onDeleteAllCart(id);\n setTimeout(() => {\n if (!this.state.user_id) {\n console.log(onGetCarts(this.props.match.params.guest_id));\n this.setState({ carts: this.props.carts });\n console.log(\"carts:\", this.props.match.params.uuid);\n }\n if (this.state.user_id && this.state.user_type !== \"CSR\") {\n onGetCarts(this.state.user_id);\n this.setState({ carts: this.props.carts });\n console.log(\"carts:\", this.state.user_id);\n console.log(\"carts:\", carts);\n }\n if (this.state.user_id && this.state.user_type === \"CSR\") {\n onGetCarts(this.props.match.params.guest_id);\n this.setState({ carts: this.props.carts });\n console.log(\"carts:\", this.props.match.params.guest_id);\n console.log(\"carts:\", carts);\n }\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n\n handleCart = () => {\n if (\n this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type !== \"b2bclient\"\n ) {\n this.props.match.params.uuid = this.props.match.params.guest_id;\n console.log(this.props.match.params.uuid);\n this.props.history.push(\n this.props.match.params.uuid\n ? `/checkout/${this.props.match.params.uuid}`\n : `/checkout`\n );\n }\n if (\n this.state.user_id &&\n this.state.user_type === \"CSR\" &&\n this.state.user_type !== \"b2bclient\"\n ) {\n console.log(this.state.user_id);\n console.log(this.state.user_type);\n console.log(this.props.match.params.guest_id);\n console.log(this.props.match.params.filnalurl);\n console.log(this.props.match.params.uuid);\n this.props.history.push(\n this.props.match.params.guest_id\n ? `/checkout-csr/${this.props.match.params.guest_id}`\n : `/checkout-csr`\n );\n }\n if (\n this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type === \"b2bclient\"\n ) {\n console.log(this.state.user_id);\n console.log(this.state.user_type);\n console.log(this.props.match.params.guest_id);\n console.log(this.props.match.params.filnalurl);\n console.log(this.props.match.params.uuid);\n this.props.history.push(\n this.props.match.params.guest_id\n ? `/checkout-b2b/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/checkout-b2b`\n );\n }\n if (!this.state.user_id) {\n this.props.history.push(\n this.props.match.params.uuid\n ? `/login/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/login/${this.props.match.params.guest_id}`\n );\n // this.props.history.push(\"/login\");\n }\n };\n\n handleEmptyCart = () => {\n const { onGetCarts, onEmptyCart } = this.props;\n const { carts } = this.state;\n\n onEmptyCart(this.state.user_id);\n\n setTimeout(() => {\n if (!this.state.user_id) {\n console.log(onGetCarts(this.props.match.params.guest_id));\n this.setState({ carts: this.props.carts });\n console.log(\"carts:\", this.props.match.params.uuid);\n }\n if (this.state.user_id && this.state.user_type !== \"CSR\") {\n onGetCarts(this.state.user_id);\n this.setState({ carts: this.props.carts });\n console.log(\"carts:\", this.state.user_id);\n console.log(\"carts:\", carts);\n }\n if (this.state.user_id && this.state.user_type === \"CSR\") {\n onGetCarts(this.props.match.params.guest_id);\n this.setState({ carts: this.props.carts });\n console.log(\"carts:\", this.props.match.params.guest_id);\n console.log(\"carts:\", carts);\n }\n }, 1000);\n\n this.setState({ carts });\n\n this.props.history.push(\n this.props.match.params.uuid\n ? `/nearby-labs/${this.props.match.params.uuid}`\n : `/nearby-labs`\n );\n };\n\n handleCartClick = (e, arg) => {\n const cart = arg;\n\n this.setState({\n cart: {\n id: cart.id,\n patient_id: cart.patient_id,\n lab_id: cart.lab_id,\n offered_test_id: cart.offered_test_id,\n test_appointment_id: cart.test_appointment_id,\n invoice_id: cart.invoice_id,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n toggleDropdown = () => {\n this.setState(prevState => ({\n isDropdownOpen: !prevState.isDropdownOpen,\n }));\n };\n openMenu = () => {\n this.setState({ isMenuOpened: !this.state.isMenuOpened });\n console.log(this.state.isMenuOpened);\n };\n\n render() {\n const isLargeScreen = window.innerWidth > 992;\n const isSmallScreen = window.innerWidth < 540;\n const { isDropdownOpen } = this.state;\n // const { getPatientProfile } = this.props;\n const { patientProfile } = this.props;\n\n const { SearchBar } = Search;\n\n const { carts,total_balance_sum } = this.props;\n\n const { deleteModal } = this.state;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: carts.length, // replace later with size(carts),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n this.setState({ deleteModal: false })}\n />\n
\n
\n
\n \n {this.state.user_id &&\n this.state.user_type === \"CSR\" &&\n this.state.user_type !== \"b2bclient\" ? (\n \n
    \n
  • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Labs\n \n
  • \n\n
  • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n \n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n \n My Appointments\n \n \n
  • \n )}\n
\n \n ) : null}\n {!this.state.user_id ? (\n \n
    \n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Book a Test\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Book a Test\n \n
  • \n ) : null}\n {this.props.match.params.filnalurl ? (\n
  • \n \n Labs\n \n
  • \n ) : (\n
  • \n \n Labs\n \n
  • \n )}\n\n {this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Tests\n \n
  • \n ) : !this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Tests\n \n
  • \n ) : null}\n {this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : !this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : null}\n\n {this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Packages\n \n
  • \n ) : !this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Packages\n \n
  • \n ) : null}\n\n {this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : !this.props.match.params.filnalurl &&\n this.props.match.params.guest_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : null}\n \n\n {/*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
    \n
  • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n \n My Appointments\n \n \n
  • \n /*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
    \n
  • */\n )}\n
\n \n ) : this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type !== \"b2bclient\" ? (\n \n
    \n {!this.props.patientProfile.corporate_id && !this.props.patientProfile.is_assosiatewith_anycorporate && !this.props.patientProfile.employee_id_card ? (\n<>\n
  • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Labs\n {/* {this.props.t(\"Labs\")} */}\n \n
  • \n
  • \n {/* \n {this.props.t(\"Search by Tests\")}\n */}\n \n {/* {this.props.t(\"Tests\")} */}\n Tests\n \n
  • \n
  • \n \n {/* {this.props.t(\"Profiles\")} */}\n Profiles\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n ) : (this.props.patientProfile.corporate_id && this.props.patientProfile.is_assosiatewith_anycorporate && this.props.patientProfile.employee_id_card) ? (\n
  • \n \n Labs\n {/* {this.props.t(\"Labs\")} */}\n \n
  • \n ) : null}\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n \n My Appointments\n \n \n
  • \n )}\n
\n \n ) : this.state.user_id &&\n this.state.user_type !== \"CSR\" &&\n this.state.user_type === \"b2bclient\" ? (\n \n
    \n
  • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Labs\n \n
  • \n\n
  • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n \n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n \n My Appointments\n \n \n
  • \n )}\n
\n \n ) : null}\n \n
\n
\n
\n\n
\n
\n
\n {isLargeScreen ? (\n
\n \n \n \"\"\n \n \n \"\"\n \n \n\n \n \n \"\"\n \n \n \"\"\n \n \n
\n ) : null}\n\n {!isLargeScreen ? (\n \n \n \n ) : (\n \n \n \n )}\n
\n\n
\n {/* Display login and signup links if the user is not logged in,\n otherwise show logout and cart links to the user with patient account and is logged in */}\n {!this.state.user_id ? (\n
\n \n {\" \"}\n {/* {!isEmpty(this.props.carts) &&\n \n this.props.carts.slice(-1).pop().cart_quantity+this.state.count\n } */}\n \n \n {\" \"}\n Login\n \n\n \n {\" \"}\n Sign up\n \n\n \n {\" \"}\n \n
\n ) : this.state.user_type == \"patient\" ? (\n
\n \n {\" \"}\n \n {this.state.patient_name.split(\" \")[0]}\n \n {\" \"}\n \n \n \n {isDropdownOpen && (\n \n
    \n
  • \n \n {\" \"}\n \n Password\n \n
    \n \n
  • \n
  • \n \n {\" \"}\n \n Contact Us{\" \"}\n \n
    \n \n
  • \n
  • \n \n {\" \"}\n \n Log Out\n \n \n
  • \n
\n
\n )}\n
\n ) : (\n
\n {this.state.user_type == \"labowner\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"b2bclient\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"auditor\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"CSR\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"registration-admin\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"auditor-admin\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"csr-admin\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"hr-admin\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"marketer-admin\" && (\n \n {\" \"}\n \n )}\n
\n )}\n
\n \n
\n\n
\n \n Cart List | Lab Hazir\n \n \n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n
\n
\n \n
\n\n \n \n
\n \n
\n \n
\n \n \n
\n \n
Total After Discount : \n {Math.round(total_balance_sum)\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n
\n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n\n \n \n {/* {this.state.user_type !== \"CSR\" && !this.props.patientProfile.corporate_id && !this.props.patientProfile.is_assosiatewith_anycorporate && !this.props.patientProfile.employee_id_card ? (\n \n \n Empty Cart\n \n ) : this.state.user_type !== \"CSR\" && this.props.patientProfile.corporate_id && this.props.patientProfile.is_assosiatewith_anycorporate && this.props.patientProfile.employee_id_card ? (\n \n \n Empty Cart\n \n ) : null} */}\n {this.state.user_type !== \"CSR\" && !this.props.patientProfile.corporate_id && !this.props.patientProfile.is_assosiatewith_anycorporate && !this.props.patientProfile.employee_id_card ? (\n \n \n Empty Cart\n \n) : this.state.user_type !== \"CSR\" && this.props.patientProfile.corporate_id && this.props.patientProfile.is_assosiatewith_anycorporate && this.props.patientProfile.employee_id_card ? (\n \n \n Empty Cart\n \n) : null}\n \n \n
\n \n {\" \"}\n Checkout{\" \"}\n \n
\n \n
\n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nCartList.propTypes = {\n history: PropTypes.any,\n location: PropTypes.any,\n match: PropTypes.object,\n carts: PropTypes.array,\n total_balance_sum: PropTypes.array,\n className: PropTypes.any,\n onGetCarts: PropTypes.func,\n onDeleteCart: PropTypes.func,\n onEmptyCart: PropTypes.func,\n menuOpen: PropTypes.any,\n t: PropTypes.any,\n onGetPatientProfile: PropTypes.func,\n patientProfile: PropTypes.array,\n \n};\n\nconst mapStateToProps = ({ carts, LabMarket }) => ({\n carts: carts.carts,\n total_balance_sum: carts.total_balance_sum,\n patientProfile: LabMarket.patientProfile,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetCarts: id => dispatch(getCarts(id)),\n onDeleteCart: cartItem => dispatch(deleteCart(cartItem)),\n onEmptyCart: id => dispatch(emptyCart(id)),\n onGetPatientProfile: id => dispatch(getPatientProfile(id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(CartList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link, Redirect } from \"react-router-dom\";\nimport { Card, CardBody, Col,Table, Container, Row } from \"reactstrap\";\nimport { Collapse } from \"reactstrap\";\nimport logo from \"../../../src/assets/images/logo.svg\";\nimport logoLight from \"../../../src/assets/images/logo-light.png\";\nimport logoLightSvg from \"../../../src/assets/images/logo-light.svg\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport { getQuotes, deleteCart } from \"store/quotes/actions\";\n\nimport { isEmpty, size , map} from \"lodash\";\n\nimport \"assets/scss/table.scss\";\n\nclass CartList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n quotes: [],\n isMenuOpened: false,\n quote: \"\",\n abc: \"\",\n isDropdownOpen: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n patient_name: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).patient_name\n : \"\",\n modal: false,\n deleteModal: false,\n isDisabled: true,\n };\n this.handleCartClick = this.handleCartClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n console.log(\"uuid\", this.props.match.params.uuid);\n console.log(\"guest_id\", this.props.match.params.guest_id);\n }\n\n componentDidMount() {\n const { onGetQuotes } = this.props;\n if ((!this.state.user_id)) {\n console.log(\"quotesssssssssssssssssssssssssssssss\",onGetQuotes(this.props.match.params.guest_id));\n this.setState({ quotes: this.props.quotes });\n console.log(\"quotessssssssssssssssssssssssssssssshshshhdhhsdhdhdhhdhdhdh\",this.props.quotes );\n\n console.log(\"quotes:\", this.props.match.params.guest_id)\n console.log(\"userr\", this.state.user_id)\n }\n if ((this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\"))\n {\n onGetQuotes(this.state.user_id);\n this.setState({ quotes: this.props.quotes });\n console.log(\"quotes:\", this.props.match.params.guest_id)\n console.log(\"userr\", this.state.user_id)\n }\n if((this.state.user_id && this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\"))\n {\n onGetQuotes(this.props.match.params.guest_id);\n this.setState({ quotes: this.props.quotes });\n console.log(\"quotes:\", this.props.match.params.guest_id)\n console.log(\"userr\", this.state.user_id)\n }\n if((this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type === \"b2bclient\"))\n {\n onGetQuotes(this.props.match.params.uuid);\n this.setState({ quotes: this.props.quotes });\n console.log(\"quotes:\", this.props.match.params.uuid)\n console.log(\"userr\", this.state.user_id)\n }\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { quotes } = this.props;\n if (!isEmpty(quotes) && size(prevProps.quotes) !== size(quotes)) {\n this.setState({ quotes: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = quotes => {\n this.setState({ quotes: quotes });\n this.setState({ deleteModal: true });\n };\n\n handleDeleteCart = () => {\n const { onDeleteCart, onGetQuotes } = this.props;\n const { quotes } = this.state;\n\n if (quotes.id !== undefined) {\n onDeleteCart(quotes);\n // onDeleteAllCart(id);\n setTimeout(() => {\n if ((!this.state.user_id)) {\n console.log(onGetQuotes(this.props.match.params.guest_id));\n this.setState({ quotes: this.props.quotes });\n console.log(\"quotes:\", this.props.match.params.uuid)\n }\n if ((this.state.user_id && this.state.user_type !== \"CSR\"))\n {\n onGetQuotes(this.state.user_id);\n this.setState({ quotes: this.props.quotes });\n console.log(\"quotes:\", this.state.user_id)\n console.log(\"quotes:\", quotes)\n }\n if((this.state.user_id && this.state.user_type === \"CSR\"))\n {\n onGetQuotes(this.props.match.params.guest_id);\n this.setState({ quotes: this.props.quotes });\n console.log(\"quotes:\", this.props.match.params.guest_id)\n console.log(\"quotes:\", quotes)\n }\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n\n handleCart = () => {\n\n if (this.state.user_id && this.state.user_type !==\"CSR\" && this.state.user_type !==\"b2bclient\") {\n this.props.match.params.uuid = this.props.match.params.guest_id\n console.log(this.props.match.params.uuid)\n this.props.history.push(\n this.props.match.params.uuid\n ? `/checkout/${this.props.match.params.uuid}`\n : `/checkout`\n );\n }\n if (this.state.user_id && this.state.user_type ===\"CSR\" && this.state.user_type !==\"b2bclient\") {\n console.log(this.state.user_id)\n console.log(this.state.user_type)\n console.log(this.props.match.params.guest_id)\n console.log(this.props.match.params.filnalurl)\n console.log(this.props.match.params.uuid)\n this.props.history.push(\n this.props.match.params.guest_id\n ? `/checkout-csr/${this.props.match.params.guest_id}`\n : `/checkout-csr`\n );\n }\n if (this.state.user_id && this.state.user_type !==\"CSR\" && this.state.user_type ===\"b2bclient\") {\n console.log(this.state.user_id)\n console.log(this.state.user_type)\n console.log(this.props.match.params.guest_id)\n console.log(this.props.match.params.filnalurl)\n console.log(this.props.match.params.uuid)\n this.props.history.push(\n this.props.match.params.guest_id\n ? `/checkout-b2b/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/checkout-b2b`\n );\n }\n if (!this.state.user_id) {\n this.props.history.push(\n this.props.match.params.uuid\n ? `/login/${this.props.match.params.guest_id}/${this.props.match.params.uuid}`\n : `/login/${this.props.match.params.guest_id}`\n );\n // this.props.history.push(\"/login\");\n }\n };\n\n handleCartClick = (e, arg) => {\n const quote = arg;\n\n this.setState({\n quote: {\n id: quote.id,\n patient_id: quote.patient_id,\n lab_id: quote.lab_id,\n offered_test_id: quote.offered_test_id,\n test_appointment_id: quote.test_appointment_id,\n invoice_id: quote.invoice_id,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n toggleDropdown = () => {\n this.setState((prevState) => ({\n isDropdownOpen: !prevState.isDropdownOpen,\n }));\n };\n openMenu = () => {\n this.setState({ isMenuOpened: !this.state.isMenuOpened });\n console.log(this.state.isMenuOpened)\n };\n\n render() {\n const isLargeScreen = window.innerWidth > 992;\n const isSmallScreen = window.innerWidth < 540;\n const { isDropdownOpen } = this.state;\n\n const { SearchBar } = Search;\n\n const { quotes } = this.props;\n\n const { deleteModal } = this.state;\n\n // const pageOptions = {\n // sizePerPage: 10,\n // totalSize: quotes.length, // replace later with size(quotes),\n // custom: true,\n // };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n this.setState({ deleteModal: false })}\n />\n
\n
\n
\n \n {this.state.user_id && this.state.user_type ===\"CSR\" && this.state.user_type !== \"b2bclient\"\n ? (\n \n
    \n
  • \n \n Labs\n \n
  • \n\n
  • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n )}\n
\n \n ): null}\n {!this.state.user_id\n ? (\n \n
    \n {this.props.match.params.filnalurl ? (\n
  • \n \n Labs\n \n
  • \n ) : (\n
  • \n \n Labs\n \n
  • \n )}\n\n{this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Tests\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Tests\n \n
  • \n ) : null}\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Profiles\n \n
  • \n ) : null}\n\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Packages\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Packages\n \n
  • \n ) : null}\n\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
  • \n \n Radiology\n \n
  • \n ) : null}\n\n \n {/*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
    \n
  • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n /*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
    \n
  • */\n )}\n
\n \n\n ) : \n this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\" ? (\n \n
    \n
  • \n \n Labs\n {/* {this.props.t(\"Labs\")} */}\n \n
  • \n\n
  • \n {/* \n {this.props.t(\"Search by Tests\")}\n */}\n \n {/* {this.props.t(\"Tests\")} */}\n Tests\n \n
  • \n
  • \n \n {/* {this.props.t(\"Profiles\")} */}\n Profiles\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n {/*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
    \n
  • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n /*
  • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
    \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
    \n
  • */\n )}\n\n
\n \n ) : \n this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type === \"b2bclient\" ? (\n \n
    \n
  • \n \n Labs\n \n
  • \n\n
  • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
  • \n
  • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
  • \n
  • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n
  • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
  • \n {this.state.user_id && this.state.user_type == \"patient\" && (\n
  • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
  • \n )}\n
\n \n ) : null}\n\n \n
\n
\n
\n \n
\n
\n
\n {isLargeScreen ? (\n
\n \n \n \"\"\n \n \n \"\"\n \n \n\n \n \n \"\"\n \n \n \"\"\n \n \n
\n\n\n ) : null}\n\n {!isLargeScreen ? (\n\n \n \n \n\n ) : \n \n }\n
\n\n
\n {/* Display login and signup links if the user is not logged in,\n otherwise show logout and cart links to the user with patient account and is logged in */}\n {!this.state.user_id ? (\n
\n \n {\" \"}\n\n {/* {!isEmpty(this.props.quotes) &&\n \n this.props.quotes.slice(-1).pop().cart_quantity+this.state.count\n } */}\n \n \n {\" \"}\n Login\n \n\n \n {\" \"}\n Sign up\n \n\n \n {\" \"}\n \n
\n )\n : this.state.user_type == \"patient\" ? (\n
\n \n {\" \"}\n \n {this.state.patient_name.split(\" \")[0]} \n \n {\" \"}\n \n \n \n\n {isDropdownOpen && (\n
\n
    \n
  • \n \n {\" \"}\n \n Password\n \n
    \n \n
  • \n
  • \n \n {\" \"}\n \n Contact Us \n
    \n \n
  • \n
  • \n \n {\" \"}\n \n Log Out \n \n \n
  • \n
\n
\n )}\n
\n ) : (\n
\n {this.state.user_type == \"labowner\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"b2bclient\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"auditor\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"CSR\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"registration-admin\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"auditor-admin\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"csr-admin\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"hr-admin\" && (\n \n {\" \"}\n \n )}\n\n {this.state.user_type == \"marketer-admin\" && (\n \n {\" \"}\n \n )}\n
\n )}\n
\n
\n
\n\n
\n \n Quote List | Lab Hazir\n \n \n \n \n \n \n \n {/* \n {({ paginationProps, paginationTableProps }) => (\n \n {(toolkitprops) => (\n \n \n \n
\n
\n \n \n
\n
\n \n \n \n \n See Quote\n \n \n
\n \n \n \n
\n \n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n */}\n {!isEmpty(this.props.quotes.labs_offering_tests) ? (\n this.props.quotes.labs_offering_tests.map((lab, labIndex) => (\n
\n

{lab.lab_details.lab_name}

\n \n \n \n \n \n {/* Add more column headings if needed */}\n \n \n \n {!isEmpty(lab.tests_offered) ? (\n lab.tests_offered.map((test, testIndex) => (\n \n \n \n {/* Add more columns if needed */}\n \n ))\n ) : (\n \n \n \n )}\n \n
Test NameTest Details
{test.test_name}{test.test_details}
No tests offered by this lab.
\n
\n ))\n) : (\n
Sorry! No labs found near you offering these tests.
\n)}\n\n\n\n\n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nCartList.propTypes = {\n history: PropTypes.any,\n location: PropTypes.any,\n match: PropTypes.object,\n quotes: PropTypes.any,\n className: PropTypes.any,\n onGetQuotes: PropTypes.func,\n onDeleteCart: PropTypes.func,\n menuOpen: PropTypes.any,\n t: PropTypes.any,\n};\n\nconst mapStateToProps = ({ quotes }) => ({\n quotes: quotes.quotes,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetQuotes: id => dispatch(getQuotes(id)),\n onDeleteCart: cartItem => dispatch(deleteCart(cartItem)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(CartList));\n","import React, { Component } from \"react\";\nimport Select from \"react-select\";\nimport MetaTags from \"react-meta-tags\";\nimport PropTypes from \"prop-types\";\nimport { any } from \"prop-types\";\nimport axios from 'axios';\nimport { connect } from \"react-redux\";\nimport flatpickr from 'flatpickr';\nimport 'flatpickr/dist/flatpickr.min.css';\nimport { Table, Thead, Tbody, Tr, Th, Td } from \"react-super-responsive-table\";\nimport \"react-super-responsive-table/dist/SuperResponsiveTableStyle.css\";\nimport { Link, withRouter } from \"react-router-dom\";\nimport {\n Container,\n Row,\n Col,\n Input,\n Nav,\n NavItem,\n NavLink,\n TabContent,\n TabPane,\n Card,\n Form,\n FormGroup,\n Label,\n CardBody,\n CardTitle,\n Modal,\n ModalHeader,\n ModalBody,\n Alert,\n} from \"reactstrap\";\n\nimport classnames from \"classnames\";\n\nimport { every, isEmpty, map, size } from \"lodash\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"../../components/Common/Breadcrumb\";\n\nimport {\n getHomeSampledTests,\n getCheckoutItems,\n addCheckoutData,\n getDonationCheck,\n} from \"store/checkout/actions\";\nimport { getTerritoriesList } from \"store/territories-list/actions\";\nimport { getPatientProfile } from \"store/labmarket/actions\";\n\nimport { CITIES, DISTRICTS } from \"helpers/global_variables_helper\";\n\n\nclass Checkout extends Component {\n constructor(props) {\n super(props);\n this.state = {\n homeSampledTests: [],\n checkoutItems: [],\n territoriesList: [],\n donationCheck: [],\n patientProfile: [],\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n patient_name: \"\", // Set default to an empty string if patientProfile.name is undefined\n patient_age: \"\",\n patient_gender: \"Male\",\n patient_phone: \"\",\n booked_by: \"\",\n csr_id: \"\",\n // relationsip_with_patient: \"Self\",\n patient_address: \"\",\n city_id: \"\",\n city: \"\",\n email: \"\",\n address: \"\",\n // patient_district: \"\",\n appointment_requested_at: \"\",\n is_home_sampling_availed: \"\",\n is_state_sampling_availed: \"\",\n payment_method: \"Cash\",\n donation: \"\",\n isDisabled: true,\n isRequiredFilled: true,\n checkoutData: \"\",\n checkedoutData: \"\",\n activeTab: \"1\",\n selectedGroup: null,\n checkoutSuccess: \"\",\n ageFormat: 'years', // default to years\n };\n\n this.toggleTab = this.toggleTab.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n this.handleSelectGroup = this.handleSelectGroup.bind(this);\n\n console.log(\"guest_id\", this.props.match.params.guest_id);\n console.log(\"uuid\", this.props.match.params.uuid);\n console.log(\"id\", this.props.match.params.id);\n console.log(\"fid\", this.props.match.params.filnalurl);\n }\n\n toggleTab(tab) {\n if (this.state.activeTab !== tab) {\n this.setState({\n activeTab: tab,\n });\n }\n }\n\n handleSelectGroup = selectedGroup => {\n this.setState({ selectedGroup });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n handleStateSamplingChange = e => {\n this.setState({\n is_state_sampling_availed: \"Yes\",\n is_home_sampling_availed: \"No\",\n });\n\n\n // API call to get the checkout items\n const { onGetCheckoutItems } = this.props;\n if (this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\") {\n setTimeout(() => {\n onGetCheckoutItems(\n this.state.user_id,\n this.state.is_home_sampling_availed,\n this.state.is_state_sampling_availed\n );\n }, 1000);\n } else if (this.state.user_id && this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\") {\n setTimeout(() => {\n onGetCheckoutItems(\n this.props.match.params.id,\n this.state.is_home_sampling_availed,\n this.state.is_state_sampling_availed\n );\n }, 1000);\n } else if (this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type === \"b2bclient\") {\n setTimeout(() => {\n onGetCheckoutItems(\n this.props.match.params.guest_id,\n this.state.is_home_sampling_availed,\n this.state.is_state_sampling_availed\n );\n }, 1000);\n }\n setTimeout(() => {\n this.setState({ checkoutItems: this.props.checkoutItems });\n }, 2000);\n };\n\n handleHomeSamplingChange = e => {\n this.setState({\n is_home_sampling_availed: \"Yes\",\n is_state_sampling_availed: \"No\",\n });\n\n // API call to get the checkout items\n const { onGetCheckoutItems } = this.props;\n if (this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\") {\n setTimeout(() => {\n onGetCheckoutItems(\n this.state.user_id,\n this.state.is_home_sampling_availed,\n this.state.is_state_sampling_availed\n );\n }, 1000);\n } else if (this.state.user_id && this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\") {\n setTimeout(() => {\n onGetCheckoutItems(\n this.props.match.params.id,\n this.state.is_home_sampling_availed,\n this.state.is_state_sampling_availed\n );\n }, 1000);\n } else if (this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type === \"b2bclient\") {\n setTimeout(() => {\n onGetCheckoutItems(\n this.props.match.params.guest_id,\n this.state.is_home_sampling_availed,\n this.state.is_state_sampling_availed\n );\n }, 1000);\n }\n\n setTimeout(() => {\n this.setState({ checkoutItems: this.props.checkoutItems });\n }, 2000);\n };\n\n handleFullProceedClick = () => {\n const canProceed = this.checkForFullValidations();\n if (canProceed) {\n // Get total appointment cost\n const totalAppointmentCost = this.state.checkoutItems.reduce((acc, item) => acc + (item.total_test_cost || 0), 0);\n const walletBalance = this.props.donationCheck.length > 0 ? this.props.donationCheck[0].available_credit : 0;\n\n // Prevent booking if corporate and wallet balance is insufficient\n if (this.props.patientProfile.corporate_payment === \"Payment by Coorporate to LH\" && totalAppointmentCost > walletBalance) {\n alert(\"Insufficient wallet balance to book this appointment.\");\n return;\n }\n let paymentMethod;\n if (this.state.user_id && this.state.user_type !== \"CSR\") {\n paymentMethod =\n this.props.patientProfile.corporate_payment === \"Payment by Coorporate to LH\"\n ? \"Corporate to Lab\"\n : this.state.payment_method;\n } else {\n paymentMethod = this.state.payment_method;\n }\n \n if (this.state.user_id && this.state.user_type !== \"CSR\") {\n this.setState({\n checkoutData: {\n uuid: this.props.match.params.uuid ? this.props.match.params.uuid : \"\",\n patient_name: this.state.patient_name,\n patient_age: this.state.patient_age,\n ageFormat: this.state.ageFormat,\n patient_gender: this.state.patient_gender,\n patient_phone: this.state.patient_phone,\n patient_address: this.state.patient_address,\n appointment_requested_at: this.state.appointment_requested_at,\n is_home_sampling_availed: this.state.is_home_sampling_availed,\n is_state_sampling_availed: this.state.is_state_sampling_availed,\n payment_method: paymentMethod,\n donation: this.state.donation,\n },\n });\n } else if (this.state.user_id && this.state.user_type === \"CSR\") {\n this.setState({\n checkoutData: {\n uuid: this.props.match.params.uuid ? this.props.match.params.uuid : \"\",\n csr_id: this.state.user_id,\n booked_by: \"CSR\",\n patient_name: this.state.patient_name,\n patient_age: this.state.patient_age,\n ageFormat: this.state.ageFormat,\n patient_gender: this.state.patient_gender,\n patient_phone: this.state.patient_phone,\n patient_address: this.state.patient_address,\n appointment_requested_at: this.state.appointment_requested_at,\n is_home_sampling_availed: this.state.is_home_sampling_availed,\n is_state_sampling_availed: this.state.is_state_sampling_availed,\n payment_method: this.state.payment_method,\n donation: this.state.donation,\n },\n });\n }\n \n // API call to add checkout data\n const { onAddCheckoutData } = this.props;\n const userId = this.state.user_id;\n const guestId = this.props.match.params.guest_id;\n const csrId = this.props.match.params.id;\n \n setTimeout(() => {\n if (userId && this.state.user_type !== \"CSR\") {\n onAddCheckoutData(this.state.checkoutData, userId);\n } else if (userId && this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\") {\n onAddCheckoutData(this.state.checkoutData, csrId);\n } else if (userId && this.state.user_type !== \"CSR\" && this.state.user_type === \"b2bclient\") {\n onAddCheckoutData(this.state.checkoutData, guestId);\n }\n }, 2000);\n \n // Set state to show checkout success modal\n if (this.props.checkedoutData) {\n this.setState({\n checkoutSuccess: true,\n PatientModal: true,\n });\n }\n \n // Redirect to respective dashboard after timeout\n setTimeout(() => {\n if (userId && this.state.user_type !== \"CSR\" && this.state.user_type === \"b2bclient\") {\n this.props.history.push(\"/dashboard-b2bclient\");\n }\n }, 7000);\n }\n };\n \n\n checkForFullValidations = () => {\n // Check if patient's name, age and appointment Booked for is filled\n if (\n this.state.patient_name &&\n this.state.patient_age &&\n this.state.ageFormat &&\n this.state.appointment_requested_at\n ) {\n\n if (this.state.payment_method == \"Donation\") {\n if (\n this.state.donation\n ) {\n this.setState({ isRequiredFilled: true });\n return true;\n } else {\n this.setState({ isRequiredFilled: false });\n this.toggleTab(\"3\"); // Redirect to Tab \"3\" if card information is missing\n return false;\n }\n }\n if (this.state.payment_method) {\n this.setState({ isRequiredFilled: true });\n return true;\n } else {\n this.setState({ isRequiredFilled: false });\n this.toggleTab(\"3\"); // Redirect to Tab \"3\" if card information is missing\n return false;\n }\n } else {\n this.setState({ isRequiredFilled: false });\n return false;\n }\n };\n\n handleProceedClick4 = () => {\n const canProceed = this.checkForValidationssample();\n if (canProceed) {\n this.setState({\n checkoutData: {\n uuid: this.props.match.params.uuid\n ? this.props.match.params.uuid\n : \"\",\n patient_name: this.state.patient_name,\n patient_age: this.state.patient_age,\n ageFormat: this.state.ageFormat,\n patient_gender: this.state.patient_gender,\n patient_phone: this.state.patient_phone,\n appointment_requested_at: this.state.appointment_requested_at,\n },\n });\n window.scrollTo({ top: 0, left: 0, behavior: \"smooth\" });\n setTimeout(() => {\n if (this.props.checkedoutData) {\n this.toggleTab(\"4\");\n }\n }, 1000);\n }\n };\n\n handleProceedClick = () => {\n const canProceed = this.checkForValidations();\n if (canProceed) {\n this.setState({\n checkoutData: {\n uuid: this.props.match.params.uuid\n ? this.props.match.params.uuid\n : \"\",\n patient_name: this.state.patient_name,\n patient_age: this.state.patient_age,\n ageFormat: this.state.ageFormat,\n patient_gender: this.state.patient_gender,\n patient_phone: this.state.patient_phone,\n appointment_requested_at: this.state.appointment_requested_at,\n },\n });\n window.scrollTo({ top: 0, left: 0, behavior: \"smooth\" });\n setTimeout(() => {\n if (this.props.checkedoutData) {\n this.toggleTab(\"2\");\n }\n }, 1000);\n }\n };\n\n checkForValidations = () => {\n if (\n this.state.patient_name &&\n this.state.patient_age &&\n this.state.ageFormat &&\n this.state.appointment_requested_at\n ) {\n this.setState({ isRequiredFilled: true });\n return true;\n } else {\n this.setState({ isRequiredFilled: false });\n return false;\n }\n };\n checkForValidationssample = () => {\n if (\n this.state.is_home_sampling_availed === 'Yes' ||\n this.state.is_state_sampling_availed === 'Yes'\n ) {\n const { patient_address } = this.state;\n\n // Check if all the required fields for card payment are filled\n if (patient_address) {\n this.setState({ isRequiredFilled: true });\n return true;\n } else {\n this.setState({ isRequiredFilled: false });\n return false;\n }\n } else {\n this.setState({ isRequiredFilled: true });\n return true;\n }\n };\n\n componentDidMount() {\n const { onGetPatientProfile } = this.props;\n // Assuming onGetPatientProfile is synchronous\n onGetPatientProfile(this.state.user_id);\n // Now you can safely access patientProfile from props\n const { patientProfile } = this.props; console.log(\"patient info\",this.state.payment_method)\n // Update the state with the fetched patientProfile\n if (this.state.user_id && this.state.user_type !== \"CSR\") {\n setTimeout(() => {\n this.setState({\n patientProfile,\n patient_name: this.props.patientProfile.name, // Set patient_name if needed\n patient_phone: this.props.patientProfile.phone, // Set patient_name if needed\n patient_email: this.props.patientProfile.email, // Set patient_name if needed\n patient_city: this.props.patientProfile.city, // Set patient_name if needed\n patient_address: this.props.patientProfile.address, // Set patient_name if needed\n\n // Add other state updates as needed\n });\n }, 1000);\n } else if (this.state.user_id && this.state.user_type === \"CSR\") {\n setTimeout(() => {\n this.setState({\n patientProfile,\n patient_name: this.state.patient_name, // Set patient_name if needed\n patient_phone: this.state.patient_phone, // Set patient_name if needed\n patient_email: this.state.patient_email, // Set patient_name if needed\n patient_address: this.state.patient_address, // Set patient_name if needed\n patient_city: this.state.patient_city, // Set patient_name if needed\n\n // Add other state updates as needed\n });\n }, 1000);\n }\n \n \n console.log(\"state in the componentdidmount\", patientProfile, this.state.patient_name);\n const { onGetDonationCheck } = this.props;\n if (this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\") {\n setTimeout(() => {\n onGetDonationCheck(this.state.user_id);\n }, 1000);\n } else if (this.state.user_id && this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\") {\n setTimeout(() => {\n onGetDonationCheck(this.props.match.params.id);\n }, 1000);\n } else if (this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type === \"b2bclient\") {\n setTimeout(() => {\n onGetDonationCheck(this.props.match.params.guest_id);\n }, 1000);\n }\n this.setState({ donationCheck: this.props.donationCheck });\n console.log(\"heeeeeee\", this.props.donationCheck);\n // API call to get the home sampled tests\n const { onGetHomeSampledTests } = this.props;\n if (this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\") {\n setTimeout(() => {\n onGetHomeSampledTests(this.state.user_id);\n }, 1000);\n } else if (this.state.user_id && this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\") {\n setTimeout(() => {\n onGetHomeSampledTests(this.props.match.params.id);\n }, 1000);\n } else if (this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type === \"b2bclient\") {\n setTimeout(() => {\n onGetHomeSampledTests(this.props.match.params.guest_id);\n }, 1000);\n }\n this.setState({ homeSampledTests: this.props.homeSampledTests });\n\n // API call to get the checkout items\n const { onGetCheckoutItems } = this.props;\n if (this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\") {\n setTimeout(() => {\n onGetCheckoutItems(this.state.user_id);\n }, 1000);\n } else if (this.state.user_id && this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\") {\n setTimeout(() => {\n onGetCheckoutItems(this.props.match.params.id);\n }, 1000);\n } else if (this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type === \"b2bclient\") {\n setTimeout(() => {\n onGetCheckoutItems(this.props.match.params.guest_id);\n }, 1000);\n }\n this.setState({ checkoutItems: this.props.checkoutItems});\n\n const { territoriesList, onGetTerritoriesList } = this.props;\n if (territoriesList && !territoriesList.length) {\n console.log(onGetTerritoriesList(this.state.user_id));\n }\n flatpickr(\"#flatpickrInput\", {\n enableTime: false,\n dateFormat: \"Y-m-d\", // Use \"Y-m-d\" to include only the date\n minDate: new Date().toISOString().split(\"T\")[0], // Set minimum date to today\n onChange: (selectedDates, dateStr, instance) => {\n // Get current time\n const now = new Date();\n const currentTime = `${now.getHours().toString().padStart(2, '0')}:${now.getMinutes().toString().padStart(2, '0')}`;\n\n // Append current time to the selected date\n const dateTimeStr = `${dateStr}T${currentTime}`;\n\n // Set the state with the combined date and time\n this.setState({ appointment_requested_at: dateTimeStr });\n },\n });\n }\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { homeSampledTests } = this.props;\n if (\n isEmpty(prevProps.homeSampledTests) &&\n !isEmpty(homeSampledTests) &&\n size(homeSampledTests) !== size(prevProps.homeSampledTests)\n ) {\n this.setState({ homeSampledTests });\n }\n\n const { checkoutItems } = this.props;\n if (\n isEmpty(prevProps.checkoutItems) &&\n !isEmpty(checkoutItems) &&\n size(checkoutItems) !== size(prevProps.checkoutItems)\n ) {\n this.setState({ checkoutItems });\n }\n }\n\n handleClickAddPayment = () => {\n this.toggleTab(\"3\"); // Switch to the \"Payment Info\" tab with the id of \"3\"\n };\n\n handlePaymentMethodChange = (e) => {\n const { value, name } = e.target;\n this.setState(\n {\n [name]: value,\n },\n () => {\n if (this.state.payment_method === 'Card') {\n setTimeout(() => {\n this.toggleTab('2');\n }, 2000);\n }\n if (this.state.payment_method === 'Donation') {\n const {\n donation,\n } = this.state;\n if (donation) {\n setTimeout(() => {\n this.toggleTab('2');\n }, 2000);\n }\n }\n else {\n setTimeout(() => {\n this.toggleTab('2');\n }, 2000);\n // For other payment methods, do not switch to Tab 4\n }\n }\n );\n };\n\n onChangeAddress = e => {\n // Apply that city's latitude and longitude as city bound so that we see addresses of that city only\n var cityBounds = new google.maps.LatLngBounds(\n new google.maps.LatLng(this.state.latitude, this.state.longitude)\n );\n\n const options = {\n bounds: cityBounds,\n types: [\"establishment\"],\n componentRestrictions: { country: \"pk\" },\n };\n\n var searchBox = new window.google.maps.places.SearchBox(e.target, options);\n searchBox.addListener(\"places_changed\", () => {\n const places = searchBox.getPlaces();\n if (places.length > 0) {\n const formattedAddress = places[0].formatted_address;\n this.setState({ patient_address: formattedAddress });\n }\n });\n\n // Update patient_address state when the user types in the input field\n this.setState({ patient_address: e.target.value });\n };\n\n handleLocatorIconClick = () => {\n if (navigator.geolocation) {\n navigator.geolocation.getCurrentPosition(position => {\n const latitude = position.coords.latitude;\n const longitude = position.coords.longitude;\n const geocoder = new window.google.maps.Geocoder();\n\n const latlng = {\n lat: latitude,\n lng: longitude\n };\n\n geocoder.geocode({ location: latlng }, (results, status) => {\n if (status === \"OK\") {\n if (results[0]) {\n const formattedAddress = results[0].formatted_address;\n this.setState({ patient_address: formattedAddress }, () => {\n // Call the function to update patient address\n this.onChangeAddress({ target: { value: formattedAddress } });\n });\n } else {\n alert(\"No results found\");\n }\n } else {\n alert(\"Geocoder failed due to: \" + status);\n }\n });\n });\n } else {\n alert(\"Geolocation is not supported by your browser.\");\n }\n };\n handleCancelIconClick = () => {\n this.setState({ patient_address: \"\" });\n };\n handleAgeChange = (e) => {\n this.setState({\n patient_age: e.target.value,\n });\n };\n\n handleAgeFormatChange = (e) => {\n this.setState({\n ageFormat: e.target.value,\n });\n };\n handleFormGroupClick = () => {\n this.datePickerRef.setFocus(); // Use the correct reference here\n }\n printInvoice = () => {\n window.print();\n };\n handlePayment = async () => {\n console.log(\"state in the componentdidmount\", this.props.patientProfile, this.state.patient_name);\n\n const { current_amount, total_sampling_charges, test_name } = this.state.checkoutItems;\n const { patient_name, patient_phone, patient_email, patient_address, patient_city } = this.state;\n\n // Log the state values to ensure they are set correctly\n console.log('checkoutItems:', this.state.checkoutItems);\n console.log('patient_name:', patient_name);\n console.log('patient_phone:', patient_phone);\n console.log('patient_email:', patient_email);\n console.log('patient_city:', patient_city);\n console.log('patient_address:', patient_address);\n\n if (current_amount == \"200\" || total_sampling_charges == \"100\") {\n console.error('SUBTOTAL or SHIPPING_COST is undefined');\n return;\n }\n\n const paymentData = {\n customer_id: this.props.patientProfile.id,\n customer_name: patient_name,\n customer_email: patient_email,\n customer_phone: patient_phone,\n customer_address: patient_address,\n customer_city: patient_city,\n mdd1: \"WC\",\n mdd2: \"Yes\",\n mdd4: \"Medical Test\",\n mdd5: \"Yes\",\n mdd7: \"1\",\n mdd20: \"No\",\n\n };\n\n console.log('Payment Data:', paymentData); // Log the payment data\n\n // try {\n // const response = await axios.post('https://labhazirapi.com/api/patient/hblcartpayments', paymentData);\n // console.log('Response:', response); // Log the response for debugging\n\n // if (response.data.message === 'Success') {\n // this.setState({ checkoutSuccess: true });\n // // Handle success response\n // } else {\n // // Handle failure response\n // console.error('Payment failed:', response.data);\n // }\n // } catch (error) {\n // console.error('Error making payment:', error);\n // }\n try {\n const response = await axios.post('https://labhazirapi.com/api/patient/hblcartpayments', paymentData);\n console.log('Response:', response); // Log the response for debugging\n\n if (response.data.message === 'Success') {\n this.setState({ checkoutSuccess: true, pay_now_url: response.data.pay_now_url }, () => {\n // Redirect to the payment URL\n window.location.href = this.state.pay_now_url;\n });\n } else {\n // Handle failure response\n console.error('Payment failed:', response.data);\n }\n } catch (error) {\n console.error('Error making payment:', error);\n }\n};\ngetCommonPaymentMethods = (checkoutItems) => {\n console.log('checkoutItems:', checkoutItems);\n\n const allPaymentMethods = checkoutItems.map(item => \n item.is_digital_payment_accepted === 'Yes' ? ['Cash', 'Card'] : ['Cash']\n );\n \n console.log('allPaymentMethods:', allPaymentMethods);\n\n // If checkoutItems is empty, return an empty array\n if (allPaymentMethods.length === 0) {\n console.log('No payment methods found. Returning empty array.');\n return [];\n }\n\n // Find the common payment methods across all labs with an initial value\n const commonMethods = allPaymentMethods.reduce((acc, methods) => {\n console.log('Current acc:', acc);\n console.log('Current methods:', methods);\n const filteredMethods = acc.filter(method => methods.includes(method));\n console.log('Filtered methods (intersection):', filteredMethods);\n return filteredMethods;\n }, allPaymentMethods[0]); // Use the first set of methods as the initial value\n \n console.log('Final commonMethods:', commonMethods);\n\n return commonMethods;\n};\n\n\n\n render() {\n\n\n console.log(\"checkoutItems\",this.props.checkoutItems);\n const iconStyle = {\n position: 'absolute',\n top: '50%',\n right: '10px', // Adjust this value to move the icon horizontally\n transform: 'translateY(-50%)',\n cursor: 'pointer',\n color: 'blue', // Icon color\n fontSize: '16px',\n marginLeft: '6px'\n };\n const closeiconStyle = {\n position: 'absolute',\n top: '50%',\n right: '10px', // Adjust this value to move the icon horizontally\n transform: 'translateY(-50%)',\n cursor: 'pointer',\n color: 'red', // Icon color\n fontSize: '16px'\n };\n\n const inputGroupStyle = {\n position: 'relative',\n };\n\n // list of city from territories\n const isLargeScreen = window.innerWidth > 645;\n const cityList = [];\n for (let i = 0; i < this.props.territoriesList.length; i++) {\n cityList.push({\n label: this.props.territoriesList[i].city,\n value: this.props.territoriesList[i].id,\n });\n }\n const { patientProfile } = this.props;\n const { onGetPatientProfile } = this.props;\n const openModal = () => {\n const modal = document.getElementById(\"modal\");\n modal.style.display = \"block\";\n };\n\n const closeModal = () => {\n this.setState({ PatientModal: false });\n\n };\n const backdropStyle = {\n position: 'fixed',\n top: 0,\n left: 0,\n width: '100%',\n height: '100%',\n backgroundColor: 'rgba(0, 0, 0, 0.7)', // Adjust the opacity to control the blur\n zIndex: 9999,\n display: this.state.PatientModal ? 'block' : 'none',\n };\n\n const modalStyle = {\n position: 'fixed',\n top: '50%',\n left: '50%',\n transform: 'translate(-50%, -50%)',\n backgroundColor: 'white',\n padding: '20px',\n width: '500px', // Increase width\n height: '400px', // Increase height\n zIndex: 10000,\n display: this.state.PatientModal ? 'block' : 'none',\n };\n\n const commonPaymentMethods = this.getCommonPaymentMethods(this.props.checkoutItems);\n return (\n console.log(\"donation check here\",this.state.donationCheck),\n (\n \n
\n \n Checkout | Lab Hazir - Dashboard\n \n \n {/* Render Breadcrumb */}\n \n {/* {this.state.checkoutSuccess && (\n \n {this.state.checkoutSuccess}\n \n )} */}\n \n
\n
\n
\n \n \n \n
\n \n Order has been placed successfully,\n \n

\n Your booking detail has been sent to you by Email.\n

\n \n Thank You For Choosing Labhazir!\n \n \n {this.props.patientProfile && this.props.patientProfile.corporate_id == \"undefined\" && this.props.patientProfile.is_assosiatewith_anycorporate == false ? (\n <>\n
\n \n Search More Tests\n \n \n Track Appointments\n \n
\n
\n \n Go Back To Home Page\n \n
\n\n ): this.state.user_type === \"CSR\" ? (\n <>\n
\n \n Go Back To Home Page\n \n \n Track Appointments\n \n
\n ) : <>\n
\n \n Go Back To Home Page\n \n \n Track Appointments\n \n
\n }\n
\n
\n
\n \n \n \n \n \n \n \n {!this.state.isRequiredFilled ? (\n \n Please fill the required fields.\n \n ) : null}\n\n \n \n \n \n \n
\n Patient information\n

\n Fill all the information for the patient below\n

\n \n
\n \n \n \n this.setState({ patient_name: e.target.value })}\n />\n \n \n\n \n \n \n \n this.setState({\n patient_phone: e.target.value,\n })\n }\n />\n \n \n\n \n \n \n \n this.setState({\n patient_gender: e.target.value,\n })\n }\n >\n \n \n \n \n \n \n \n \n {/* Adds margin-bottom for smaller screens */}\n \n \n \n \n \n \n \n \n \n\n\n
\n \n \n
\n \n
\n \n \n Note:\n {' '}\n Once the lab confirms, you will receive a confirmation email for this time.\n \n \n
\n\n
\n
\n \n \n \n
\n \n Next\n \n
\n \n
\n
\n
\n\n \n
\n
\n
\n Home Sampling Information for Tests.\n \n Note: \n Please choose if you want to avail Routine / Urgent Home Sampling services for the following tests\n \n \n

\n {this.props.patientProfile && this.props.patientProfile.corporate_payment === \"Payment by Coorporate to LH\" && (\n \n \n Note:\n {\" \"}\n Your test may not be booked if total sum exceeds Available Credit.\n \n )}\n\n
\n Home Sampling: \n {this.state.homeSampledTests.find(homeSampledTest => homeSampledTest.is_homesampling_offered == \"Yes\") ? (\n
\n \n \n
\n ) : (\n
\n \n \n
\n )}\n\n {this.state.homeSampledTests.find(homeSampledTest => homeSampledTest.state_sampling_charges > 0) ? (\n
\n \n \n
\n ) :
\n \n \n
}\n
\n\n {this.state.is_home_sampling_availed === \"Yes\" && (\n <>\n \n \n \n
\n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Search Location...\"\n value={this.state.patient_address}\n required={this.state.is_home_sampling_availed === \"Yes\"} // Set required based on the condition\n />\n {this.state.patient_address ? (\n \n \n \n ) : (\n \n \n Current Location\n \n \n )}\n
\n {/* Error message */}\n {this.state.is_home_sampling_availed === \"Yes\" && !this.state.patient_address && (\n Address is required\n )}\n \n
\n \n )}\n\n {this.state.is_state_sampling_availed === \"Yes\" && (\n <>\n \n \n \n
\n this.onChangeAddress(e)}\n id=\"pac-input\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"Search Location...\"\n value={this.state.patient_address}\n required={this.state.is_home_sampling_availed === \"Yes\"} // Set required based on the condition\n />\n {this.state.patient_address ? (\n \n \n \n ) : (\n \n \n Current Location\n \n \n )}\n
\n {/* Error message */}\n {this.state.is_home_sampling_availed === \"Yes\" && !this.state.patient_address && (\n Address is required\n )}\n \n
\n \n \n \n \n {this.state.homeSampledTests.map((homeSampledTest, key) => {\n if (homeSampledTest.state_sampling_charges && homeSampledTest.state_sampling_time) {\n return (\n
\n
\n \n Lab Name: \n \n {homeSampledTest.lab_name}\n \n \n Urgent Sampling Time: \n \n {homeSampledTest.state_sampling_time}h\n \n \n Urgent Sampling Charges : \n \n {homeSampledTest.state_sampling_charges}\n \n\n \n
\n
\n );\n } else {\n return null; // Skip rendering if sampling charges and fees are missing\n }\n })}\n
\n
\n \n\n )}\n\n {/*
*/}\n {isLargeScreen ? (\n \n \n \n \n \n \n \n \n \n {this.state.homeSampledTests.map(\n (homeSampledTest, key) => (\n \n

\n

\n

\n\n \n

\n

\n

\n \n )\n )}\n \n
Home Sampling OfferedTest nameLab name
\n {\n homeSampledTest.is_home_sampling_available\n }\n \n
\n \n {homeSampledTest.test_name}{\" \"}\n

\n
\n
{homeSampledTest.lab_name}
\n ) : (\n \n \n \n \n \n \n \n \n \n {this.state.homeSampledTests.map(\n (homeSampledTest, key) => (\n \n {/*

*/}\n

\n {/*

*/}\n\n \n {/*

*/}\n

\n {/*

*/}\n \n )\n )}\n \n
Home Sampling OfferedTest nameLab name
\n {\n homeSampledTest.is_home_sampling_available\n }\n \n {/*
*/}\n \n {homeSampledTest.test_name}{\" \"}\n \n {/*
*/}\n
{homeSampledTest.lab_name}
\n\n )}\n {/* \n \n \n
\n \n Next\n \n
\n \n
*/}\n
\n
\n
\n
\n \n \n \n Order Summary\n \n
\n
\n \n \n \n \n \n \n \n \n \n \n {this.state.checkoutItems.map((checkoutItem, key) => (\n <>\n {checkoutItem.items.map((item, key) => (\n \n \n\n \n \n \n \n ))}\n \n ))}\n \n \n {this.state.checkoutItems.slice(-1).map(\n (checkoutItem, key) => (\n <>\n {\n // Check if any lab in the checkout list has sampling enabled or charges greater than 0\n this.props.checkoutItems.some(\n (item) =>\n item.lab_home_sampling_charges > 0 ||\n item.lab_state_sampling_charges > 0\n ) && (\n \n \n \n )\n }\n\n\n\n {checkoutItem.plateformcharges_roundoff ? (\n \n \n \n ) : null}\n\n \n \n \n \n \n \n )\n )}\n \n
\n Test Name\n \n Price\n \n Sum Of Discounts
(Lab + Labhazir)\n
\n Net Payable\n
\n

\n

{item.test_name}
\n

{item.lab_name}

\n

\n
\n

\n {item.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n

\n {item.discount_per +\n item.discount_by_labhazir_per +\n item.discount_by_labhazird_by_test_per}\n

\n
\n

\n {item.current_amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {this.state.is_home_sampling_availed === \"Yes\" && (\n
\n
\n Sum of Home Sampling Charges{\" \"}\n \n Rs.{\" \"}\n {checkoutItem.total_sampling_charges\n ? checkoutItem.total_sampling_charges\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n : \"0\"}\n \n
\n
\n )}\n {this.state.is_state_sampling_availed === \"Yes\" && (\n
\n
\n Sum of Urgent Sampling Charges{\" \"}\n \n Rs.{\" \"}\n {checkoutItem.total_sampling_charges\n ? checkoutItem.total_sampling_charges\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n : \"0\"}\n \n
\n
\n )}\n
\n
\n
\n {\" \"}\n Plateform Charges{\" \"}\n \n Rs.{\" \"}\n {(checkoutItem.total_plateformcharges_sum || 0) // Use 0 if undefined\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
\n
\n
\n
\n
\n {\" \"}\n Sub Total\n \n Rs.{\" \"}\n {checkoutItem.total_test_cost\n .toString()\n .replace(\n /\\B(?=(\\d{3})+(?!\\d))/g,\n \",\"\n )}\n \n
\n
\n
\n
\n
\n\n
\n\n {!isEmpty(this.state.payment_method) && (\n \n \n \n \n Payment Method\n \n\n {this.state.payment_method !== \"Card\" && (\n
\n

\n {this.props.patientProfile && this.props.patientProfile.corporate_payment === \"Payment by Coorporate to LH\" && this.state.payment_method === \"Cash\" ? (\n // this.setState({ payment_method: \"Corporate to Lab\" }), // Setting the state directly\n Corporate to Lab\n ) : (\n {this.state.payment_method}\n )}\n

\n
\n )}\n\n {this.state.payment_method === \"Card\" && (\n
\n

\n Provide Your Card Details:\n

\n
\n )}\n\n {this.state.payment_method === \"Donation\" && (\n
\n

\n Sub Total After Donation = Rs. 0\n

\n
\n )}\n\n {this.props.patientProfile && this.props.patientProfile.corporate_payment !== \"Payment by Coorporate to LH\" && this.props.patientProfile.corporate_payment !== \"Payment by Patient to Lab\" && (\n
\n
\n \n \n Change Your Payment Method\n \n
\n
\n )}\n
\n
\n)}\n\n {isEmpty(this.state.payment_method) && (\n \n \n {/* \n \n Payment method\n */}\n
\n
\n \n \n Add Payment Method\n \n
\n
\n
\n
\n )}\n\n \n \n \n Back\n to Cart{\" \"}\n \n \n {this.state.payment_method !== \"Card\" ? (\n \n
\n acc + (item.total_test_cost || 0), 0) >\n (this.props.donationCheck.length > 0 ? this.props.donationCheck[0].available_credit : 0)\n }\n>\n Book Appointment\n\n\n
\n \n ) : (\n \n
\n \n Proceed Card Details\n \n
\n \n )}\n \n
\n
\n\n
\n \n\n \n
\n \n Payment information\n \n

\n Fill the card payment only if your payment\n method is card\n

\n {this.props.patientProfile && this.props.patientProfile.corporate_id == \"undefined\" && this.props.patientProfile.is_assosiatewith_anycorporate == false && this.props.patientProfile.corporate_payment == \"Payment by Patient to Lab\" ? (\n
\n \n \n {/* {\" \"} */}\n \n\n Cash on Spot\n \n
\n ) : this.props.patientProfile && this.props.patientProfile.corporate_payment == \"Payment by Coorporate to LH\" ? (\n
\n \n \n {/* {\" \"} */}\n \n Corporate to Lab\n \n
\n\n ) :
\n
\n {commonPaymentMethods.includes('Cash') && (\n
\n \n \n \n Cash on Spot\n \n
\n )}\n\n {commonPaymentMethods.includes('Card') && (\n
\n \n \n \n Credit / Debit Card\n \n
\n )}\n
\n
\n {!isEmpty(this.props.donationCheck) &&\n this.props.donationCheck.map(\n (donationcheck, key) => {\n return (\n
\n {donationcheck.bankaccount ===\n true ? (\n
\n \n \n \n Avail Donation\n \n
\n ) : donationcheck.bankaccount ===\n false ? (\n
\n ) : null}\n
\n );\n }\n )}\n
\n
\n {this.props.donationCheck.map(\n (donationcheck, key) => {\n return (\n
\n {donationcheck.available_credit >= donationcheck.grand_total_test_cost ? (\n
\n \n \n \n My Wallet\n \n
\n ) : null}\n
\n );\n }\n )}\n
\n\n
\n {this.state.payment_method === \"My Wallet\" && (\n this.props.donationCheck.map((donationcheck, key) => (\n
\n
\n
Available Credit in your Wallet
\n
\n Rs. {donationcheck.available_credit}\n
\n
\n
\n ))\n )}\n
\n\n\n\n\n {this.state.payment_method == \"Donation\" ? (\n
\n
\n For Donation\n
\n
\n
\n \n \n \n {\" \"}\n I hereby confirm that I am deserving\n individual who fall into eligible\n category to avail obligatory charity\n / donation money.\n \n \n
\n
\n
\n ) : null}\n
}\n \n
\n {/* \n \n\n \n
\n {\n this.toggleTab(\"4\");\n }}\n to=\"/checkout\"\n className=\"btn btn-success mb-4\"\n >\n {\" \"}\n Next{\" \"}\n \n
\n \n
*/}\n \n\n \n \n \n \n \n
\n \n
\n \n )\n );\n }\n}\n\nCheckout.propTypes = {\n match: PropTypes.object,\n history: any,\n homeSampledTests: PropTypes.array,\n donationCheck: PropTypes.array,\n onGetHomeSampledTests: PropTypes.func,\n onGetDonationCheck: PropTypes.func,\n checkoutItems: PropTypes.array,\n onGetCheckoutItems: PropTypes.func,\n onAddCheckoutData: PropTypes.func,\n checkedoutData: PropTypes.array,\n onGetTerritoriesList: PropTypes.func,\n territoriesList: PropTypes.array,\n onGetPatientProfile: PropTypes.func,\n patientProfile: PropTypes.array,\n className: PropTypes.any,\n\n};\n\nconst mapStateToProps = state => ({\n homeSampledTests: state.checkout.homeSampledTests,\n donationCheck: state.checkout.donationCheck,\n patientProfile: state.LabMarket.patientProfile,\n checkoutItems: state.checkout.checkoutItems,\n checkedoutData: state.checkout.checkedoutData,\n territoriesList: state.territoriesList.territoriesList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetHomeSampledTests: id => dispatch(getHomeSampledTests(id)),\n onGetDonationCheck: id => dispatch(getDonationCheck(id)),\n onGetPatientProfile: id => dispatch(getPatientProfile(id)),\n onGetCheckoutItems: (\n id,\n is_home_sampling_availed,\n is_state_sampling_availed,\n ) =>\n dispatch(\n getCheckoutItems(id, is_home_sampling_availed, is_state_sampling_availed)\n ),\n onAddCheckoutData: (checkoutData, id) =>\n dispatch(addCheckoutData(checkoutData, id)),\n onGetTerritoriesList: id => dispatch(getTerritoriesList(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(Checkout));\n","import {\n GET_HOME_SAMPLED_TESTS,\n GET_HOME_SAMPLED_TESTS_FAIL,\n GET_HOME_SAMPLED_TESTS_SUCCESS,\n GET_DONATION_CHECK,\n GET_DONATION_CHECK_FAIL,\n GET_DONATION_CHECK_SUCCESS,\n GET_CHECKOUT_ITEMS,\n GET_CHECKOUT_ITEMS_FAIL,\n GET_CHECKOUT_ITEMS_SUCCESS,\n ADD_CHECKOUT_DATA,\n ADD_CHECKOUT_DATA_SUCCESS,\n ADD_CHECKOUT_DATA_FAIL,\n} from \"./actionTypes\";\n\nexport const getHomeSampledTests = id => ({\n type: GET_HOME_SAMPLED_TESTS,\n payload: id,\n});\n\nexport const getHomeSampledTestsSuccess = homeSampledTests => ({\n type: GET_HOME_SAMPLED_TESTS_SUCCESS,\n payload: homeSampledTests,\n});\n\nexport const getHomeSampledTestsFail = error => ({\n type: GET_HOME_SAMPLED_TESTS_FAIL,\n payload: error,\n});\nexport const getDonationCheck = id => ({\n type: GET_DONATION_CHECK,\n payload: id,\n});\n\nexport const getDonationCheckSuccess = donationCheck => ({\n type: GET_DONATION_CHECK_SUCCESS,\n payload: donationCheck,\n});\n\nexport const getDonationCheckFail = error => ({\n type: GET_DONATION_CHECK_FAIL,\n payload: error,\n});\n\nexport const getCheckoutItems = (id, is_home_sampling_availed, is_state_sampling_availed) => ({\n type: GET_CHECKOUT_ITEMS,\n payload: { id, is_home_sampling_availed, is_state_sampling_availed},\n});\n\nexport const getCheckoutItemsSuccess = checkoutItems => ({\n type: GET_CHECKOUT_ITEMS_SUCCESS,\n payload: checkoutItems,\n});\n\nexport const getCheckoutItemsFail = error => ({\n type: GET_CHECKOUT_ITEMS_FAIL,\n payload: error,\n});\n\nexport const addCheckoutData = (checkoutData, id) => ({\n type: ADD_CHECKOUT_DATA,\n payload: { checkoutData, id },\n});\n\nexport const addCheckoutDataSuccess = checkoutData => ({\n type: ADD_CHECKOUT_DATA_SUCCESS,\n payload: checkoutData,\n});\n\nexport const addCheckoutDataFail = error => ({\n type: ADD_CHECKOUT_DATA_FAIL,\n payload: error,\n});\n","import PropTypes from \"prop-types\";\nimport React, { Component } from \"react\";\nimport {\n Alert,\n Button,\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Input,\n} from \"reactstrap\";\nimport Select from \"react-select\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n// Redux\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\n\n//Import Breadcrumb\nimport Breadcrumb from \"../../components/Common/Breadcrumb\";\nimport {\n getBanks,\n} from \"store/createbank/actions\";\n// actions\nimport { updateLabSettings, getLabSettings } from \"../../store/actions\";\n\nclass LabSettings extends Component {\n constructor(props) {\n super(props);\n this.state = {\n banks: [],\n bank: \"\",\n is_247_opened: \"\",\n phone: \"\",\n opening_time: \"\",\n closing_time: \"\",\n opening_day: \"\",\n closing_day: \"\",\n is_homesampling_offered: \"\",\n home_sampling_charges: \"\",\n state_sampling_charges: \"\",\n state_sampling_time: \"\",\n health_dept_certified: \"\",\n health_dept_certificate: \"\",\n registration_no: \"\",\n license_no: \"\",\n lab_experience: \"\",\n complaint_handling_email: \"\",\n complaint_handling_phone: \"\",\n token_starting_value:\"\",\n token_ending_value:\"\",\n is_digital_payment_accepted: \"\",\n is_Receive_Email_On_Booking:\"\",\n is_active: \"\",\n is_radiologyservices_active: \"\",\n account_number: \"\",\n type: \"\",\n branch_code: \"\",\n isSettingsUpdated: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n // The code for converting \"image source\" (url) to \"Base64\"\n toDataURL = url =>\n fetch(url)\n .then(response => response.blob())\n .then(\n blob =>\n new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.onerror = reject;\n reader.readAsDataURL(blob);\n })\n );\n\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n componentDidMount() {\n // this.props.getLabSettings(this.state.user_id);\n const { banks, getBanks, getLabSettings } = this.props;\n getBanks(this.state.user_id);\n getLabSettings(this.state.user_id)\n\n console.log(\"bank list are: \", this.props.banks)\n setTimeout(() => {\n if (\n typeof this.props.success.health_dept_certified === \"string\" &&\n this.props.success.health_dept_certified !== \"\"\n ) {\n this.setState({\n health_dept_certificate:\n process.env.REACT_APP_BACKENDURL +\n this.props.success.health_dept_certificate,\n });\n }\n\n let is247Opened = \"No\";\n if (this.props.success.is_247_opened === true) {\n is247Opened = \"Yes\";\n }\n\n this.setState({\n home_sampling_charges: this.props.success.home_sampling_charges,\n state_sampling_charges: this.props.success.state_sampling_charges,\n state_sampling_time: this.props.success.state_sampling_time,\n is_247_opened: is247Opened,\n opening_time: this.props.success.opening_time,\n closing_time: this.props.success.closing_time,\n opening_day: this.props.success.opening_day,\n closing_day: this.props.success.closing_day,\n phone: this.props.success.phone,\n type: this.props.success.type,\n complaint_handling_email: this.props.success.complaint_handling_email,\n complaint_handling_phone: this.props.success.complaint_handling_phone,\n token_starting_value:this.props.success.token_starting_value,\n token_ending_value: this.props.success.token_ending_value,\n registration_no: this.props.success.registration_no,\n lab_experience: this.props.success.lab_experience,\n license_no: this.props.success.license_no,\n health_dept_certified: this.props.success.health_dept_certified,\n // is_iso_15189_certified: this.props.success.is_iso_15189_certified,\n // is_iso_9001_certified: this.props.success.is_iso_9001_certified,\n is_digital_payment_accepted:\n this.props.success.is_digital_payment_accepted,\n is_Receive_Email_On_Booking:\n this.props.success.is_Receive_Email_On_Booking,\n is_active: this.props.success.is_active,\n is_radiologyservices_active: this.props.success.is_radiologyservices_active,\n is_homesampling_offered: this.props.success.is_homesampling_offered,\n bank: this.props.success.bank,\n branch_code: this.props.success.branch_code,\n account_number: this.props.success.account_number,\n });\n }, 1500);\n }\n componentDidUpdate(prevProps) {\n if (prevProps.success !== this.props.success || prevProps.banks !== this.props.banks) {\n const { success } = this.props;\n \n if (success) {\n this.setState({\n health_dept_certificate: success.health_dept_certificate\n ? process.env.REACT_APP_BACKENDURL + success.health_dept_certificate\n : \"\",\n home_sampling_charges: success.home_sampling_charges,\n state_sampling_charges: success.state_sampling_charges,\n state_sampling_time: success.state_sampling_time,\n is_247_opened: success.is_247_opened ? \"Yes\" : \"No\",\n opening_time: success.opening_time,\n closing_time: success.closing_time,\n opening_day: success.opening_day,\n closing_day: success.closing_day,\n phone: success.phone,\n type: success.type,\n complaint_handling_email: success.complaint_handling_email,\n complaint_handling_phone: success.complaint_handling_phone,\n token_starting_value:success.token_starting_value,\n token_ending_value:success.token_ending_value,\n registration_no: success.registration_no,\n lab_experience: success.lab_experience,\n license_no: success.license_no,\n health_dept_certified: success.health_dept_certified,\n is_digital_payment_accepted: success.is_digital_payment_accepted,\n is_Receive_Email_On_Booking: success.is_Receive_Email_On_Booking,\n is_active: success.is_active,\n is_radiologyservices_active: success.is_radiologyservices_active,\n is_homesampling_offered: success.is_homesampling_offered,\n bank: success.bank,\n branch_code: success.branch_code,\n account_number: success.account_number,\n });\n }\n \n const bankList = this.props.banks.map(bank => ({\n label: bank.name,\n value: bank.id\n }));\n \n this.setState({ banks: bankList });\n }\n }\n render() {\n // Generate bank list from props\n const bankList = this.props.banks.map(bank => ({\n label: bank.name,\n value: bank.id\n }));\n\n // Debugging logs\n console.log(\"bankList:\", bankList);\n console.log(\"bank value is:\", this.state.bank);\n console.log(\"branch_code is:\", this.state.branch_code);\n // Find the selected option\n const selectedOption = bankList.find(option => option.value === Number(this.state.bank)) || null;\n\n console.log(\"selectedOption:\", selectedOption);\n\n return (\n \n
\n \n {/* Render Breadcrumb */}\n \n\n {this.state.isSettingsUpdated && this.state.isSettingsUpdated ? (\n Your settings are updated.\n ) : null}\n\n \n \n {\n values.health_dept_certificate =\n this.state.health_dept_certificate;\n\n // If health dept certified is selected and certificate is uploaded\n if (\n (this.state.health_dept_certified.length > 0 &&\n this.state.health_dept_certificate) ||\n this.state.health_dept_certified.length == 0\n ) {\n if (typeof values.health_dept_certificate == \"string\") {\n // if no file was selected for logo then get current image from url and convert to file\n this.toDataURL(this.state.health_dept_certificate).then(\n dataUrl => {\n values.health_dept_certificate = this.dataURLtoFile(\n dataUrl,\n this.state.health_dept_certificate\n .split(\"/\")\n .at(-1)\n );\n }\n );\n\n values.health_dept_certificate = \"\";\n }\n\n // Check if the lab is open for 24/7 then set opening and closing time to 00:00:00\n if (values.is_247_opened == \"Yes\") {\n values.opening_time = \"00:00:00\";\n values.closing_time = \"00:00:00\";\n values.opening_day = \"Monday\";\n values.closing_day = \"Monday\";\n }\n\n // To show success message of update\n this.setState({ isSettingsUpdated: true });\n window.scrollTo({ top: 0, left: 0, behavior: \"smooth\" });\n\n setTimeout(() => {\n this.props.updateLabSettings(\n values,\n this.state.user_id\n );\n\n // To get updated settings again\n setTimeout(() => {\n this.props.getLabSettings(this.state.user_id);\n }, 1000);\n\n // To make success message disappear after sometime\n setTimeout(() => {\n this.setState({\n isSettingsUpdated: false,\n });\n }, 5000);\n }, 2000);\n }\n }}\n >\n {({ errors, status, touched }) => (\n
\n

{errors.health_dept_certificate}

\n {/* Operational Hours Fields */}\n {/* Health Dept Certified */}\n
\n \n \n this.setState({\n is_247_opened: e.target.value,\n })\n }\n value={this.state.is_247_opened}\n className=\"form-select\"\n >\n \n \n \n
\n\n {this.state.is_247_opened == \"No\" && (\n \n \n
\n \n Opening Time\n \n
\n {\n this.setState({\n opening_time: e.target.value, // Concatenating seconds for handling on Django side\n });\n }}\n defaultValue={this.state.opening_time}\n />\n
\n
\n \n\n \n
\n \n Closing Time\n \n
\n {\n this.setState({\n closing_time: e.target.value, // Concatenating seconds for handling on Django side\n });\n }}\n defaultValue={this.state.closing_time}\n />\n
\n
\n \n
\n )}\n {this.state.is_247_opened == \"No\" && (\n \n \n
\n \n From\n \n
\n\n {\n this.setState({\n opening_day: e.target.value, // Update the state when the value changes\n });\n }}\n className={\n \"form-control\" +\n (errors.opening_day && touched.opening_day ? \" is-invalid\" : \"\")\n }\n >\n \n \n \n \n \n \n \n \n \n\n
\n
\n \n\n \n
\n \n To\n \n
\n {\n this.setState({\n closing_day: e.target.value, // Update the state when the value changes\n });\n }}\n className={\n \"form-control\" +\n (errors.closing_day && touched.closing_day ? \" is-invalid\" : \"\")\n }\n >\n \n \n \n \n \n \n \n \n \n\n
\n
\n \n
\n )}\n
\n
\n \n \n this.setState({ bank: selectedGroup ? selectedGroup.value : \"\" })\n }\n className={\n \"defautSelectParent\" +\n (errors.bank && touched.bank\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (base, state) => ({\n ...base,\n borderColor:\n errors.bank && touched.bank\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={bankList}\n />\n \n
\n {/* \n \n this.setState({\n bank: e.target.value,\n })\n }\n value={this.state.bank}\n className=\"form-select\"\n >\n \n --- Select Bank ---\n \n\n \n \n \n \n \n \n \n \n \n \n \n \n */}\n
\n {this.state.bank && (\n
\n \n \n this.setState({\n branch_code: e.target.value,\n })\n }\n value={this.state.branch_code}\n className={\n \"form-control\" +\n (errors.branch_code && touched.branch_code\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n )}\n {this.state.bank && (\n
\n \n \n this.setState({\n account_number: e.target.value,\n })\n }\n value={this.state.account_number}\n className={\n \"form-control\" +\n (errors.account_number && touched.account_number\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n )}\n {/* Health Dept Certified */}\n
\n \n Certified Health Department\n \n \n this.setState({\n health_dept_certified: e.target.value,\n })\n }\n value={this.state.health_dept_certified}\n className={\n \"form-select\" +\n (errors.health_dept_certified && touched.health_dept_certified\n ? \" is-invalid\"\n : \"\")\n }\n >\n \n \n \n \n \n \n \n \n \n \n
\n\n {this.state.health_dept_certified && (\n
\n {/* Health Dept Certificate field */}\n
\n \n \n \n {\n this.setState({\n health_dept_certificate:\n e.target.files[0],\n });\n }}\n // className=\"form-control is-invalid\"\n className={\n \"form-control\" +\n (this.state.health_dept_certified.length >\n 0 && !this.state.health_dept_certificate\n ? \" is-invalid\"\n : \"\")\n }\n />\n\n
\n Please upload health dept certificate\n
\n \n\n \n {typeof this.props.success\n .health_dept_certified === \"string\" &&\n this.props.success.health_dept_certified !==\n \"\" && (\n
\n Currently: {\" \"}\n \n Health Dept Certificate\n \n
\n )}\n \n
\n
\n {/* Registration No. field */}\n
\n \n \n this.setState({\n registration_no: e.target.value,\n })\n }\n value={this.state.registration_no}\n className={\n \"form-control\" +\n (errors.registration_no &&\n touched.registration_no\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n {/* License No. field */}\n
\n \n \n this.setState({\n license_no: e.target.value,\n })\n }\n value={this.state.license_no}\n className={\n \"form-control\" +\n (errors.license_no && touched.license_no\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n
\n )}\n
\n \n \n this.setState({ lab_experience: e.target.value })\n }\n value={this.state.lab_experience}\n className={\n \"form-control\" +\n (errors.lab_experience && touched.lab_experience\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n {/* Phone field */}\n
\n \n \n this.setState({ phone: e.target.value })\n }\n value={this.state.phone}\n className=\"form-control\"\n />\n
\n\n {/* Complaint Handling Email field */}\n
\n \n Help & Support Email\n \n \n this.setState({\n complaint_handling_email: e.target.value,\n })\n }\n value={this.state.complaint_handling_email}\n className={\n \"form-control\" +\n (errors.complaint_handling_email &&\n touched.complaint_handling_email\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n {/* Complaint Handling Phone field */}\n
\n \n Help & Support Phone No.\n \n \n this.setState({\n complaint_handling_phone: e.target.value,\n })\n }\n value={this.state.complaint_handling_phone}\n className={\n \"form-control\" +\n (errors.complaint_handling_phone &&\n touched.complaint_handling_phone\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n \n {\n const value = e.target.value;\n this.setState({\n is_homesampling_offered: value,\n ...(value === \"No\" ? {\n home_sampling_charges: null,\n state_sampling_charges: null,\n state_sampling_time: null\n } : {})\n });\n }}\n value={this.state.is_homesampling_offered}\n className=\"form-select\"\n >\n \n \n \n \n
\n {this.state.is_homesampling_offered == \"Yes\" ? (\n
\n
\n \n Charges for Offering Routine Home Sampling\n \n \n this.setState({\n home_sampling_charges: e.target.value,\n })\n }\n value={this.state.home_sampling_charges}\n className={\n \"form-control\" +\n (errors.home_sampling_charges &&\n touched.home_sampling_charges\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n
\n \n Charges for Offering Urgent Home Sampling\n \n \n this.setState({\n state_sampling_charges: e.target.value,\n })\n }\n value={this.state.state_sampling_charges}\n className={\n \"form-control\" +\n (errors.state_sampling_charges &&\n touched.state_sampling_charges\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n
\n \n \n this.setState({\n state_sampling_time: Math.max(0, Math.min(3, e.target.value)),\n })\n }\n value={this.state.state_sampling_time}\n placeholder=\"Please enter Urgent Home Sampling Time (In Hours)\"\n min={0}\n max={3}\n // step={1}\n className={\n \"form-control\" +\n (errors.state_sampling_time && touched.state_sampling_time\n ? \" is-invalid\"\n : \"\")\n }\n />\n

Note: Urgent Home Sampling can be more than 3 hours.

\n \n
\n
\n ) : null}\n\n
\n \n {/* this.props.history.push('/token-detail-page')}\n style={{ cursor: 'pointer', marginLeft: '8px' }}\n>\n See Detail\n */}\n
\n {/* From Field */}\n
\n \n \n this.setState({\n token_starting_value: e.target.value,\n })\n }\n value={this.state.token_starting_value}\n className={\n \"form-control\" +\n (errors.token_starting_value && touched.token_starting_value ? \" is-invalid\" : \"\")\n }\n disabled={this.state.type === \"Collection Point\"}\n />\n \n
\n\n {/* To Field */}\n
\n \n \n this.setState({\n token_ending_value: e.target.value,\n })\n }\n value={this.state.token_ending_value}\n className={\n \"form-control\" +\n (errors.token_ending_value && touched.token_ending_value ? \" is-invalid\" : \"\")\n }\n disabled={this.state.type === \"Collection Point\"}\n />\n \n
\n \n \n NOTE: Can Only generate tokens if tokens left is zero.\n \n
\n
\n\n {/* Accept Credit Card for Payment field */}\n
\n \n Do you accept digital payments?\n \n \n this.setState({\n is_digital_payment_accepted: e.target.value,\n })\n }\n value={this.state.is_digital_payment_accepted}\n className=\"form-select\"\n >\n \n \n \n
\n \n\n\n {/* //EMAIL */}\n
\n \n Do you want to receive an email when a patient books an appointment?\n \n \n this.setState({\n is_Receive_Email_On_Booking: e.target.value,\n })\n }\n value={this.state.is_Receive_Email_On_Booking}\n className=\"form-select\"\n >\n \n \n \n
\n\n
\n \n \n this.setState({\n type: e.target.value,\n })\n }\n value={this.state.type}\n className=\"form-select\"\n >\n {/* \n */}\n \n
\n {/* Is radiology Active */}\n {this.state.type === \"Collection Point\" &&(\n
\n \n \n this.setState({\n is_radiologyservices_active: e.target.value,\n })\n }\n value={this.state.is_radiologyservices_active}\n className=\"form-select\"\n >\n \n \n \n
\n ) }\n {/* Is Active */}\n \n
\n \n \n this.setState({\n is_active: e.target.value,\n })\n }\n value={this.state.is_active}\n className=\"form-select\"\n >\n \n \n \n
\n
\n \n Update Settings\n \n
\n
\n )}\n \n
\n
\n
\n
\n
\n );\n }\n}\n\nLabSettings.propTypes = {\n history: PropTypes.any,\n match: PropTypes.object,\n location: PropTypes.object,\n updateLabSettings: PropTypes.func,\n error: PropTypes.any,\n success: PropTypes.any,\n banks: PropTypes.any,\n getLabSettings: PropTypes.func,\n getBanks: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const { error, success } = state.LabSettings;\n const {banks} = state.createBank\n return { error, success, banks };\n};\n\nexport default withRouter(\n connect(mapStateToProps, {\n updateLabSettings,\n getLabSettings,\n getBanks,\n })(LabSettings)\n);\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport { getTestDescriptions } from \"store/test-descriptions/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass testDescriptionsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n testDescriptions: [],\n testDescription: \"\",\n modal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n testDescriptionListColumns: [\n {\n text: \"id\",\n dataField: \"test_id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, testDescription) => (\n <>{testDescription.id}\n ),\n },\n {\n dataField: \"name\",\n text: \"Name\",\n sort: true,\n },\n // {\n // dataField: \"method\",\n // text: \"Method\",\n // sort: true,\n // },\n {\n dataField: \"description_in_english\",\n text: \"Description_in_English\",\n sort: true,\n },\n {\n dataField: \"description_in_urdu\",\n text: \"Description_in_Urdu\",\n sort: true,\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { testDescriptions, onGetTestDescriptions } = this.props;\n onGetTestDescriptions(this.props.match.params.id);\n this.setState({ testDescriptions });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { testDescriptions } = this.props;\n if (\n !isEmpty(testDescriptions) &&\n size(prevProps.testDescriptions) !== size(testDescriptions)\n ) {\n this.setState({ testDescriptions: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { testDescriptions } = this.props;\n\n const { onGetTestDescriptions } = this.props;\n const testDescription = this.state.testDescription;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: testDescriptions.length, // replace later with size(testDescriptions),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n Test Description | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n
\n
\n \n
\n \n \n
\n \n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\ntestDescriptionsList.propTypes = {\n match: PropTypes.object,\n testDescriptions: PropTypes.array,\n className: PropTypes.any,\n onGetTestDescriptions: PropTypes.func,\n};\n\nconst mapStateToProps = ({ testDescriptions }) => ({\n testDescriptions: testDescriptions.testDescriptions,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetTestDescriptions: id => dispatch(getTestDescriptions(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(testDescriptionsList));\n","import {\n GET_TEST_DESCRIPTIONS,\n GET_TEST_DESCRIPTIONS_FAIL,\n GET_TEST_DESCRIPTIONS_SUCCESS,\n\n} from \"./actionTypes\";\n\nexport const getTestDescriptions = id => ({\n type: GET_TEST_DESCRIPTIONS,\n payload: id,\n});\n\nexport const getTestDescriptionsSuccess = TestDescriptions => ({\n type: GET_TEST_DESCRIPTIONS_SUCCESS,\n payload: TestDescriptions,\n});\n\nexport const getTestDescriptionsFail = error => ({\n type: GET_TEST_DESCRIPTIONS_FAIL,\n payload: error,\n});\n\n","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { any } from \"prop-types\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport logo from \"../../assets/images/logo-dark.png\";\nimport moment from 'moment';\n\nimport {\n Alert,\n Card,\n CardBody,\n Col,\n Table,\n Container,\n Input,\n Label,\n Modal,\n Row,\n Button,\n ModalBody,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\nimport QRCode from \"qrcode.react\";\n\nimport { isEmpty, map } from \"lodash\";\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n//Import Breadcrumb\nimport \"assets/scss/table.scss\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { getAdvInvoice } from \"store/adv-invoice/actions\";\n\nclass LabAudits extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n advinvoice: [],\n // id: \"\",\n // assignedTo: \"\",\n // LabAudits: \"\",\n // auditModal: false,\n // reason_of_reaudit:\"\",\n advinvoice: \"\",\n // audit_status:\"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n // AdvInvoiceListColumns: [\n // {\n // text: \"id\",\n // dataField: \"id\",\n // sort: true,\n // hidden: true,\n // formatter: (cellContent, advinvoice) => <>{advinvoice.id},\n // },\n // {\n // dataField: \"actions\",\n // text: \"Action Performed\",\n // sort: true,\n // },\n // {\n // dataField: \"lab_name\",\n // text: \"Done by\",\n // sort: true,\n // },\n \n // {\n // dataField: \"created_at\",\n // text: \"Done at at\",\n // sort: true,\n // formatter: (cellContent, advinvoice) => (\n // <>\n // {new Date(advinvoice.created_at).toLocaleString(\"en-US\")}\n // \n // ),\n // },\n // {\n // dataField: \"test_name\",\n // text: \"Test Name\",\n // sort: true,\n // },\n // {\n // dataField: \"field_name\",\n // text: \"Field\",\n // sort: true,\n // },\n // {\n // dataField: \"old_value\",\n // text: \"Previous Value\",\n // sort: true,\n // },\n // {\n // dataField: \"new_value\",\n // text: \"New Value\",\n // sort: true,\n // },\n // ],\n };\n // this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { advinvoice, onGetAdvInvoice } = this.props;\n console.log(onGetAdvInvoice(this.props.match.params.id));\n this.setState({ advinvoice });\n console.log(advinvoice)\n }\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { advinvoice, } = this.props;\n const { onGetAdvInvoice } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: advinvoice.length, // replace later with size(advinvoice),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n Invoice | Lab Hazir - Dashboard\n \n \n {/* Render Breadcrumbs */}\n \n \n {!isEmpty(this.props.advinvoice) &&\n this.props.advinvoice.map((advinvoice, key) => (\n \n \n \n
\n

\n Order ID: {this.props.advinvoice[0].id}\n

\n
\n \"logo\"\n
\n
\n
\n \n \n
\n Lab Detail:\n
\n NTN # {this.props.advinvoice[0].lab_ntn}\n
\n {this.props.advinvoice[0].lab_name}\n
\n {this.props.advinvoice[0].lab_email}\n
\n {this.props.advinvoice[0].lab_address}\n
\n \n \n
\n Advertisement Detail:\n
\n Advertisement id: {this.props.advinvoice[0].advertisement_id}\n
\n Title: {this.props.advinvoice[0].title}\n
\n Posted for: {this.props.advinvoice[0].number_of_days} days\n
\n Kilometers: {this.props.advinvoice[0].km} km‘s\n
\n
\n Total: {this.props.advinvoice[0].price} price‘s\n
\n
\n \n \n
\n \n
\n \n
\n \n \n
\n Payment Detail:\n
\n {this.props.advinvoice[0].payment_method ==\n \"Card\" ? (\n <>\n {new Date(\n this.props.advinvoice[0].paid_at\n ).toLocaleString(\"en-US\")}\n \n ) : \n Not Paid}\n
\n {this.props.advinvoice[0].payment_method}\n
\n {this.props.advinvoice[0].payment_status}\n
\n \n
\n \n\n \n
\n Order Detail:\n
\n {moment(this.props.advinvoice[0].invoice_generated_at).format(\"DD MMM YYYY, h:mm A\")}\n
\n
\n
\n \n \n \n
\n
\n

\n Order summary\n

\n
\n
\n \n \n \n \n \n \n \n \n \n\n {/* */}\n {/* */}\n \n\n \n \n \n {map(\n this.props.advinvoice,\n (item, key) => (\n \n \n \n \n \n \n \n\n {/* */}\n {/* */}\n {/* */}\n \n )\n )}\n \n {/* \n \n \n */}\n \n
No.Advertisement IDAdvertisement nameDaysKilometersTotalPriceDiscount
{key + 1}{item.advertisement_id}{item.title}{item.number_of_days}{item.km}{item.price}{(item.discount_by_labhazir+item.discount_by_labhazird_by_test).toFixed(0)}{\"%\"}{item.discount_by_labhazird_by_test}\n {item.total_test_cost.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n // -\n // this.props.advinvoice[0]\n // .home_sampling_charges\n }\n
\n Total\n \n

\n {(this.props.advinvoice[0].price).toFixed(0).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n
\n
\n
\n \n ))} \n \n \n
\n
\n
\n );\n }\n}\n\nLabAudits.propTypes = {\n match: PropTypes.object,\n advinvoice: PropTypes.array,\n className: PropTypes.any,\n onGetAdvInvoice: PropTypes.func,\n history: any,\n success: PropTypes.any,\n error: PropTypes.any,\n};\nconst mapStateToProps = ({ advinvoice }) => ({\n advinvoice: advinvoice.advinvoice,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetAdvInvoice: id => dispatch(getAdvInvoice(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(LabAudits));\n","import {\n GET_ADV_INVOICE,\n GET_ADV_INVOICE_FAIL,\n GET_ADV_INVOICE_SUCCESS,\n} from \"./actionTypes\";\n\n// ----------- Pathologist list APIs actions -----------------\nexport const getAdvInvoice = id => ({\n type: GET_ADV_INVOICE,\n payload: id,\n});\n\nexport const getAdvInvoiceSuccess = advinvoice => ({\n type: GET_ADV_INVOICE_SUCCESS,\n payload: advinvoice,\n});\n\nexport const getAdvInvoiceFail = error => ({\n type: GET_ADV_INVOICE_FAIL,\n payload: error,\n});\n\n\n\n","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport moment from 'moment';\n\nimport {\n Card,\n CardBody,\n Col,\n Container,\n ModalHeader,\n Row,\n Label,\n Modal,\n ModalBody,\n} from \"reactstrap\";\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { getB2bReferredPatientsList } from \"store/b2b-referred-patients/actions\";\nimport \"assets/scss/table.scss\";\n\nclass ReferredPatientsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n b2bReferredPatients: [],\n id: \"\",\n b2bReferredPatient: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n b2bReferredPatientListColumns: [\n {\n dataField: \"order_id\",\n text: \"Order ID\",\n sort: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>\n \n \n this.openbookedModal(e, patientTestAppointment)}\n // onMouseEnter={e => this.openbookedModal(e, patientTestAppointment)}\n // onPointerLeave={this.handleMouseExit()}\n >\n {patientTestAppointment.order_id}\n \n \n \n {/* {patientTestAppointment.order_id} */}\n \n ),\n },\n {\n dataField: \"name\",\n text: \"Patient name\",\n sort: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>\n \n \n this.openPatientModal(e, patientTestAppointment)}\n // onMouseEnter={e => this.openPatientModal(e, patientTestAppointment)}\n // onPointerLeave={this.handleMouseExit()}\n >\n {patientTestAppointment.patient_name}\n \n \n \n \n ),\n },\n \n {\n dataField: \"name\",\n text: \"Lab Name\",\n sort: true,\n formatter: (cellContent, b2bReferredPatient) => (\n <>\n \n \n this.openLabModal(e, b2bReferredPatient)}\n // onMouseEnter={e => this.openLabModal(e, b2bReferredPatient)}\n // onPointerLeave={this.handleMouseExit()}\n >\n {b2bReferredPatient.name}\n \n \n \n \n ),\n },\n // {\n // dataField: \"city\",\n // text: \"Lab City\",\n // sort: true,\n // },\n \n {\n dataField: \"dues\",\n text: \"Payment\",\n sort: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>\n {patientTestAppointment.dues.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ),\n },\n {\n dataField: \"is_home_sampling_availed\",\n text: \"Home sampling\",\n sort: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>\n {patientTestAppointment.is_home_sampling_availed == true ? (\n Yes\n ) : (\n No\n )}\n \n ),\n },\n // {\n // dataField: \"booked_at\",\n // text: \"Booked at\",\n // sort: true,\n // formatter: (cellContent, b2bReferredPatient) => (\n // <>\n // \n // {new Date(b2bReferredPatient.booked_at).toLocaleString(\"en-US\")}\n // \n // \n // ),\n // },\n // {\n // dataField: \"payment_status\",\n // text: \"Payment Status\",\n // sort: true,\n // formatter: (cellContent, b2bReferredPatient) => (\n // <>\n // {/* {b2bReferredPatient.payment_status == \"Not Paid\" ? (\n // \n // {b2bReferredPatient.payment_status}\n // \n // ) : (\n // \n // {b2bReferredPatient.payment_status}\n // \n // )} */}\n // {b2bReferredPatient.payment_status}\n // \n // ),\n // },\n\n {\n dataField: \"status\",\n text: \"Appointment Status\",\n sort: true,\n formatter: (cellContent, b2bReferredPatient) => (\n <>\n {b2bReferredPatient.status == \"Pending\" ? (\n \n {b2bReferredPatient.status}\n \n ) : null}\n\n {b2bReferredPatient.status == \"Confirmed\" ? (\n \n {b2bReferredPatient.status}\n \n ) : null}\n\n {b2bReferredPatient.status == \"Sample Collected\" ? (\n \n {b2bReferredPatient.status}\n \n ) : null}\n\n {b2bReferredPatient.status == \"Result Uploaded\" ? (\n \n {b2bReferredPatient.status}\n \n ) : null}\n \n ),\n },\n {\n dataField: \"payment_status\",\n text: \"Payment Status\",\n sort: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>\n {patientTestAppointment.payment_status == \"Not Paid\" ? (\n \n {patientTestAppointment.payment_method},{\" \"}\n {patientTestAppointment.payment_status}\n \n ) : (\n \n {patientTestAppointment.payment_method},{\" \"}\n {patientTestAppointment.payment_status}\n \n )}\n \n ),\n },\n {\n dataField: \"result\",\n isDummyField: true,\n editable: false,\n text: \"Result\",\n formatter: (cellContent, patientTestAppointment) => (\n <>\n {patientTestAppointment.status == \"Result Uploaded\" &&\n patientTestAppointment.result_type == \"File\" ? (\n \n {\" \"}\n Report\n \n ) : patientTestAppointment.status == \"Result Uploaded\" &&\n patientTestAppointment.result_type == \"Link\" ? (\n \n {\" \"}\n Report\n \n ) : (\n Not uploaded\n )}\n \n ),\n // formatter: (cellContent, b2bReferredPatient) => (\n //
\n // \n // \n // \n // \n // \n // \n //
\n // ),\n },\n //comments patient invoive in b2b reffered patient list \n // {\n // dataField: \"menu\",\n // isDummyField: true,\n // editable: false,\n // text: \"Action\",\n // formatter: (cellContent, b2bReferredPatient) => (\n //
\n // \n // \n // \n // \n // \n // \n //
\n // ),\n // },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.togglebookModal = this.togglebookModal.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n this.toggleLabModal = this.toggleLabModal.bind(this);\n\n }\n\n componentDidMount() {\n const { b2bReferredPatients, onGetB2bReferredPatientsList } = this.props;\n onGetB2bReferredPatientsList(this.state.user_id);\n this.setState({ b2bReferredPatients });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n togglebookModal = () => {\n this.setState(prevState => ({\n bookModal: !prevState.bookModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n openbookedModal = (e, arg) => {\n this.setState({\n bookModal: true,\n booked_at: arg.booked_at,\n });\n };\n // handleMouseExit = () => {\n // this.setState({\n // PatientModal: false,\n // bookModal: false,\n // LabModal: false,\n // isHovered: false,\n // });\n // };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n toggleLabModal = () => {\n this.setState(prevState => ({\n LabModal: !prevState.LabModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n appointment_requested_at: arg.appointment_requested_at,\n patient_unique_id: arg.patient_unique_id,\n patient_gender: arg.patient_gender,\n patient_address: arg.patient_address,\n patient_age: arg.patient_age,\n patient_unique_id: arg.patient_unique_id,\n patient_city: arg.patient_city,\n patient_phone: arg.patient_phone,\n booked_at: arg.booked_at,\n });\n };\n openLabModal = (e, arg) => {\n this.setState({\n LabModal: true,\n // appointment_requested_at: arg.appointment_requested_at,\n // patient_unique_id: arg.patient_unique_id,\n // patient_gender: arg.patient_gender,\n // patient_address: arg.patient_address,\n city: arg.city,\n // patient_phone: arg.patient_phone,\n // booked_at: arg.booked_at,\n });\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { b2bReferredPatients } = this.props;\n const { onGetB2bReferredPatientsList } = this.props;\n\n const pageOptions = {\n sizePerPage: b2bReferredPatients.length,\n totalSize: b2bReferredPatients.length, // replace later with size(b2bReferredPatients),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n B2B Referred Patients List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n\n {/*

{\"https://labhazir.com/nearby-labs/?uuid=\" + \"b2bReferredPatients.uuid\"}

*/}\n
\n
\n \n
\n \n \n
\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n\n {/*
\n
\n \n
\n
\n \n
\n\n
\n {\n navigator.clipboard.writeText(\n this.state\n .patient_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
*/}\n {/*
*/}\n \n
\n
\n
\n
\n \n \n \n \n \n \n \n
\n \n \n\n
\n
\n \n
\n
\n \n
\n
\n \n\n
\n
\n \n
\n
\n \n
\n
\n \n \n
\n
\n
\n
\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n \n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nReferredPatientsList.propTypes = {\n match: PropTypes.object,\n b2bReferredPatients: PropTypes.array,\n className: PropTypes.any,\n onGetB2bReferredPatientsList: PropTypes.func,\n};\nconst mapStateToProps = ({ b2bReferredPatients }) => ({\n b2bReferredPatients: b2bReferredPatients.b2bReferredPatientsList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetB2bReferredPatientsList: id => dispatch(getB2bReferredPatientsList(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(ReferredPatientsList));","import {\n GET_B2B_REFERRED_PATIENTS_LIST,\n GET_B2B_REFERRED_PATIENTS_LIST_SUCCESS,\n GET_B2B_REFERRED_PATIENTS_LIST_FAIL,\n} from \"./actionTypes\";\n\nexport const getB2bReferredPatientsList = id => ({\n type: GET_B2B_REFERRED_PATIENTS_LIST,\n payload: id,\n});\n\nexport const getB2bReferredPatientsListSuccess =\n b2bReferredPatients => ({\n type: GET_B2B_REFERRED_PATIENTS_LIST_SUCCESS,\n payload: b2bReferredPatients,\n });\n\nexport const getB2bReferredPatientsListFail = error => ({\n type: GET_B2B_REFERRED_PATIENTS_LIST_FAIL,\n payload: error,\n});\n","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalBody,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { getB2bSharesLabList } from \"store/b2b-lab-shares/actions\";\nimport \"assets/scss/table.scss\";\n\nclass B2bLabSharesList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n b2bLabShares: [],\n id: \"\",\n b2bLabShare: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n b2bLabShareListColumns: [\n {\n dataField: \"lab_id\",\n text: \"Lab ID\",\n sort: true,\n formatter: (cellContent, b2bLabShare) => (\n <>\n {b2bLabShare.lab_id}\n \n ),\n },\n {\n dataField: \"name\",\n text: \"Lab Name\",\n sort: true,\n style: { width: \"400px\"},\n formatter: (cellContent, b2bLabShare) => (\n \n

{b2bLabShare.name}

\n
\n ),\n },\n {\n dataField: \"city\",\n text: \"Lab City\",\n sort: true,\n },\n // {\n // dataField: \"b2b_shares\",\n // text: \"B2B Shares\",\n // sort: true,\n // formatter: (cellContent, b2bLabShare) => (\n // <>\n // {(\n // {(b2bLabShare.b2b_shares*100).toFixed()}%\n // )}\n // \n // ),\n // },\n ],\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { b2bLabShares, onGetB2bSharesLabList } = this.props;\n onGetB2bSharesLabList(this.state.user_id);\n this.setState({ b2bLabShares });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { b2bLabShares } = this.props;\n const { onGetB2bSharesLabList } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: b2bLabShares.length, // replace later with size(b2bLabShares),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n B2B Client Shares | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n\n {/*

{\"https://labhazir.com/nearby-labs/?uuid=\" + \"b2bLabShares.uuid\"}

*/}\n
\n
\n \n
\n \n \n
\n \n \n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nB2bLabSharesList.propTypes = {\n match: PropTypes.object,\n b2bLabShares: PropTypes.array,\n className: PropTypes.any,\n onGetB2bSharesLabList: PropTypes.func,\n};\nconst mapStateToProps = ({ b2bLabShares }) => ({\n b2bLabShares: b2bLabShares.b2bLabSharesList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetB2bSharesLabList: id => dispatch(getB2bSharesLabList(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(B2bLabSharesList));","import {\n GET_LABS,\n GET_LABS_SUCCESS,\n GET_LABS_FAIL,\n GET_B2B_LAB_SHARES_LIST,\n GET_B2B_LAB_SHARES_LIST_SUCCESS,\n GET_B2B_LAB_SHARES_LIST_FAIL,\n GET_B2B_SHARES_LAB_LIST,\n GET_B2B_SHARES_LAB_LIST_SUCCESS,\n GET_B2B_SHARES_LAB_LIST_FAIL,\n UPDATE_LAB_SHARE,\n UPDATE_LAB_SHARE_SUCCESS,\n UPDATE_LAB_SHARE_FAIL,\n UPDATE_ALL_LAB_SHARE,\n UPDATE_ALL_LAB_SHARE_SUCCESS,\n UPDATE_ALL_LAB_SHARE_FAIL,\n ADD_NEW_LAB_SHARE,\n ADD_LAB_SHARE_SUCCESS,\n ADD_LAB_SHARE_FAIL,\n} from \"./actionTypes\";\n\n\nexport const getLabs = () => ({\n type: GET_LABS,\n});\n\nexport const getLabsSuccess = labs => ({\n type: GET_LABS_SUCCESS,\n payload: labs,\n});\n\nexport const getLabsFail = error => ({\n type: GET_LABS_FAIL,\n payload: error,\n});\nexport const getB2bLabSharesList = id => ({\n type: GET_B2B_LAB_SHARES_LIST,\n payload: id,\n});\n\nexport const getB2bLabSharesListSuccess = b2bLabShares => ({\n type: GET_B2B_LAB_SHARES_LIST_SUCCESS,\n payload: b2bLabShares,\n});\n\nexport const getB2bLabSharesListFail = error => ({\n type: GET_B2B_LAB_SHARES_LIST_FAIL,\n payload: error,\n});\n\nexport const getB2bSharesLabList = id => ({\n type: GET_B2B_SHARES_LAB_LIST,\n payload: id,\n});\n\nexport const getB2bSharesLabListSuccess = b2bLabShares => ({\n type: GET_B2B_SHARES_LAB_LIST_SUCCESS,\n payload: b2bLabShares,\n});\n\nexport const getB2bSharesLabListFail = error => ({\n type: GET_B2B_SHARES_LAB_LIST_FAIL,\n payload: error,\n});\nexport const updateLabShare = b2bLabShare => ({\n type: UPDATE_LAB_SHARE,\n payload: b2bLabShare,\n});\n\nexport const updateLabShareSuccess = labShares => ({\n type: UPDATE_LAB_SHARE_SUCCESS,\n payload: labShares,\n});\n\nexport const updateLabShareFail = error => ({\n type: UPDATE_LAB_SHARE_FAIL,\n payload: error,\n});\nexport const updateAllLabShare = b2bLabShare => ({\n type: UPDATE_ALL_LAB_SHARE,\n payload: b2bLabShare,\n});\n\nexport const updateAllLabShareSuccess = labShares => ({\n type: UPDATE_ALL_LAB_SHARE_SUCCESS,\n payload: labShares,\n});\n\nexport const updateAllLabShareFail = error => ({\n type: UPDATE_ALL_LAB_SHARE_FAIL,\n payload: error,\n});\nexport const addNewLabShare = (b2bLabShare, id) => ({\n type: ADD_NEW_LAB_SHARE,\n payload: { b2bLabShare, id },\n});\n\nexport const addLabShareSuccess = b2bLabShare => ({\n type: ADD_LAB_SHARE_SUCCESS,\n payload: b2bLabShare,\n});\n\nexport const addLabShareFail = error => ({\n type: ADD_LAB_SHARE_FAIL,\n payload: error,\n});","import PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport React, { Component } from \"react\";\nimport {\n Alert,\n Button,\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n// Redux\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\n\n//Import Breadcrumb\nimport Breadcrumb from \"../../components/Common/Breadcrumb\";\n\n// actions\nimport { updateB2bProfile, getB2bProfile } from \"store/auth/b2bprofile/actions\";\n\nclass B2bProfile extends Component {\n constructor(props) {\n super(props);\n this.state = {\n btnText: \"Copy\",\n btnText1: \"Copy\",\n business_name: \"\",\n business_logo: \"\",\n email: \"\",\n landline: \"\",\n website_url: \"\",\n access_token:\"\",\n isProfileUpdated: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n // The code for converting \"image source\" (url) to \"Base64\"\n toDataURL = url =>\n fetch(url)\n .then(response => response.blob())\n .then(\n blob =>\n new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.onerror = reject;\n reader.readAsDataURL(blob);\n })\n );\n\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n componentDidMount() {\n this.props.getB2bProfile(this.state.user_id);\n\n setTimeout(() => {\n this.setState({\n business_name: this.props.success.business_name,\n business_logo: process.env.REACT_APP_BACKENDURL + this.props.success.business_logo,\n email: this.props.success.email,\n landline: this.props.success.landline,\n website_url: this.props.success.website_url,\n access_token: this.props.success.access_token,\n });\n }, 1000);\n }\n\n render() {\n return (\n \n
\n \n {/* Render Breadcrumb */}\n \n\n {this.state.isProfileUpdated && this.state.isProfileUpdated ? (\n Your profile is updated.\n ) : null}\n\n {/*

Update B2BClient Profile

*/}\n\n \n \n {\n // if no file was selected for business_logo then get current image from url and convert to file\n if (typeof values.business_logo == \"string\") {\n this.toDataURL(values.business_logo).then(dataUrl => {\n var fileData = this.dataURLtoFile(\n dataUrl,\n values.business_logo.split(\"/\").at(-1)\n );\n values.business_logo = fileData;\n\n this.props.updateB2bProfile(values, this.state.user_id);\n });\n }\n\n // Otherwise just call update method\n else {\n this.props.updateB2bProfile(values, this.state.user_id);\n }\n // To show success message of update\n this.setState({ isProfileUpdated: true });\n window.scrollTo({top: 0, left: 0, behavior: 'smooth'});\n\n\n // To get updated profile again\n setTimeout(() => {\n this.props.getB2bProfile(this.state.user_id);\n }, 1000);\n\n setTimeout(() => {\n this.setState({\n business_logo:\n process.env.REACT_APP_BACKENDURL +\n this.props.success.business_logo,\n });\n }, 2000);\n\n // To make success message disappear after sometime\n setTimeout(() => {\n this.setState({\n isProfileUpdated: false,\n });\n }, 5000);\n }}\n >\n {({ errors, status, touched }) => (\n
\n {/* Name field */}\n
\n \n \n this.setState({ business_name: e.target.value })\n }\n value={this.state.business_name}\n className={\n \"form-control\" +\n (errors.business_name && touched.business_name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n
\n \n \n \n \n this.setState({\n business_logo: e.target.files[0],\n })\n }\n className=\"form-control\"\n />\n \n\n \n
\n Currently: {\" \"}\n \n Logo\n \n
\n \n
\n
\n {/* Email field */}\n
\n \n \n this.setState({ email: e.target.value })\n }\n value={this.state.email}\n className={\n \"form-control\" +\n (errors.email && touched.email ? \" is-invalid\" : \"\")\n }\n />\n \n
\n {/* Landline field */}\n
\n \n \n this.setState({\n landline: e.target.value,\n })\n }\n value={this.state.landline}\n className={\n \"form-control\" +\n (errors.landline && touched.landline\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n {/* Address field */}\n
\n \n \n this.setState({ website_url: e.target.value })\n }\n value={this.state.website_url}\n className={\n \"form-control\" +\n (errors.website_url && touched.website_url\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n\n
\n \n \n\n {\n navigator.clipboard.writeText(\n \"https://labhazirapi.com/nearby-labs/\" +\n this.props.success.uuid\n );\n this.setState({ btnText: \"Copied\" });\n }}\n style={{ marginTop: '10px' }} // Add margin to the button element\n >\n {this.state.btnText}\n \n
\n
\n \n \n\n {\n navigator.clipboard.writeText(\n this.props.success.access_token\n );\n this.setState({ btnText1: \"Copied\" });\n }}\n style={{ marginTop: '10px' }} // Add margin to the button element\n >\n {this.state.btnText1}\n \n
\n\n
\n \n
\n
\n )}\n \n
\n
\n
\n
\n
\n );\n }\n}\n\nB2bProfile.propTypes = {\n match: PropTypes.object,\n location: PropTypes.object,\n updateB2bProfile: PropTypes.func,\n error: PropTypes.any,\n success: PropTypes.any,\n getB2bProfile: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const { error, success } = state.B2bProfile;\n return { error, success };\n};\n\nexport default withRouter(\n connect(mapStateToProps, {\n updateB2bProfile,\n getB2bProfile,\n })(B2bProfile)\n);\n","import React, { Component } from \"react\"\nimport PropTypes from 'prop-types';\nimport ReactApexChart from \"react-apexcharts\"\n\nclass StackedColumnChart extends Component {\n constructor(props) {\n super(props)\n\n this.state = {\n options: {\n chart: {\n stacked: true,\n toolbar: {\n show: false,\n },\n zoom: {\n enabled: true,\n },\n\n },\n\n plotOptions: {\n bar: {\n horizontal: false,\n columnWidth: \"15%\",\n endingShape: \"rounded\",\n },\n },\n\n dataLabels: {\n enabled: false,\n },\n xaxis: {\n categories: [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\",\n ],\n },\n colors: [\"#556ee6\", \"#f1b44c\", \"#34c38f\"],\n legend: {\n position: \"bottom\",\n },\n fill: {\n opacity: 1,\n },\n },\n }\n }\n\n render() {\n return (\n \n \n \n )\n }\n}\n\nStackedColumnChart.propTypes = {\n chartSeries: PropTypes.any,\n periodData: PropTypes.any\n}\nexport default StackedColumnChart\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport { Row, Col, Card, CardBody } from \"reactstrap\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { withTranslation } from \"react-i18next\";\n\nimport profileImg from \"../../assets/images/profile-img.png\";\n\n// actions\nimport { getDonorProfile } from \"store/auth/donorprofile/actions\";\n\nclass DonorProfile extends Component {\n constructor(props) {\n super(props);\n this.state = {\n current_amount: \"\",\n name: \"\",\n email: \"\",\n landline: \"\",\n website_url: \"\",\n business_logo:\"\",\n completedAppointments: \"\",\n inProcessAppointments: \"\",\n monthlyRevenue: \"\",\n annualRevenue: \"\",\n inProcessAppointments: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n componentDidMount() {\n this.props.getDonorProfile(this.state.user_id);\n\n setTimeout(() => {\n this.setState({\n current_amount: this.props.success.current_amount,\n name: this.props.success.name,\n business_logo: process.env.REACT_APP_BACKENDURL + this.props.success.business_logo,\n email: this.props.success.email,\n landline: this.props.success.landline,\n website_url: this.props.success.website_url,\n completedAppointments: this.props.success.completed_appointments,\n inProcessAppointments: this.props.success.inprocess_appointments,\n monthlyRevenue: this.props.success.monthly_revenue,\n annualRevenue: this.props.success.annual_revenue,\n });\n }, 1500);\n }\n\n render() {\n return (\n \n {/* Welcome profile */}\n \n \n
\n \n \n
\n
Welcome Back !
\n

Your Dashboard

\n \n \n
\n \n \n \"\"\n \n
\n
\n \n \n \n
\n \n \n
\n {this.state.name}\n
\n

\n {this.state.email}\n

\n \n \n
\n \n View Profile{\" \"}\n \n \n
\n \n {/* \n
\n \n Online Booking{\" \"}\n \n \n
\n */}\n\n
\n
\n \n
\n
\n
\n \n\n {/* Revenue and Appointment Details */}\n \n \n \n \n \n
\n
\n

\n Appointments Completed\n

\n

\n {this.state.completedAppointments}\n

\n
\n
\n \n \n \n
\n
\n
\n
\n \n\n \n \n \n
\n
\n

\n Appointments Inprocess\n

\n

\n {this.state.inProcessAppointments}\n

\n
\n
\n \n \n \n
\n
\n
\n
\n \n\n \n \n \n
\n
\n

\n Current Amount

\n

\n {/* Converting number to thousands separator string for readability */}\n {\"Rs. \"}{\" \"}{this.state.current_amount\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {/*
\n \n \n \n
*/}\n
\n
\n
\n \n\n \n \n \n
\n
\n

Give Donation

\n {/* Converting number to thousands separator string for readability */}\n {/*

\n $\n {this.state.annualRevenue\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

*/}\n
\n
\n \n {/* */}\n Top Up\n \n
\n
\n
\n
\n \n
\n \n
\n );\n }\n}\n\nDonorProfile.propTypes = {\n t: PropTypes.any,\n match: PropTypes.object,\n location: PropTypes.object,\n error: PropTypes.any,\n success: PropTypes.any,\n getDonorProfile: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const { error, success } = state.DonorProfile;\n return { error, success };\n};\n\nexport default withRouter(\n connect(mapStateToProps, { getDonorProfile })(withTranslation()(DonorProfile))\n);\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\nimport {\n Container,\n Row,\n Col,\n Button,\n Card,\n CardBody,\n CardTitle,\n Modal,\n ModalHeader,\n ModalBody,\n ModalFooter,\n Table,\n Input,\n} from \"reactstrap\";\nimport { Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\n\n//import Charts\nimport StackedColumnChart from \"./StackedColumnChart\";\n\n//import action\nimport { getChartsData } from \"../../store/actions\";\n\n// Pages Components\nimport DonorSummary from \"./DonorSummary\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"../../components/Common/Breadcrumb\";\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport classNames from \"classnames\";\n\nclass Dashboard extends Component {\n constructor(props) {\n super(props);\n this.state = {\n email: [\n { title: \"Week\", linkto: \"#\", isActive: false },\n { title: \"Month\", linkto: \"#\", isActive: false },\n { title: \"Year\", linkto: \"#\", isActive: true },\n ],\n modal: false,\n subscribemodal: false,\n chartSeries: [],\n periodType: \"yearly\",\n };\n\n this.togglemodal.bind(this);\n }\n\n componentDidMount() {\n const { onGetChartsData } = this.props;\n setTimeout(() => this.setState({ subscribemodal: true }), 2000);\n onGetChartsData(\"yearly\");\n }\n\n togglemodal = () => {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n };\n\n togglesubscribemodal = () => {\n this.setState(prevState => ({\n subscribemodal: !prevState.subscribemodal,\n }));\n };\n\n componentDidUpdate(prevProps) {\n if (prevProps !== this.props) {\n this.setState({ ...this.state, chartSeries: this.props.chartsData });\n }\n }\n\n render() {\n return (\n \n
\n \n Dashboard | B2b\n \n \n {/* Render Breadcrumb */}\n \n \n \n\n \n \n \n
\n \n Email Sent\n \n
\n
    \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"weekly\",\n });\n this.props.onGetChartsData(\"weekly\");\n }}\n id=\"one_month\"\n >\n Week\n {\" \"}\n
  • \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"monthly\",\n });\n this.props.onGetChartsData(\"monthly\");\n }}\n id=\"one_month\"\n >\n Month\n \n
  • \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"yearly\",\n });\n this.props.onGetChartsData(\"yearly\");\n }}\n id=\"one_month\"\n >\n Year\n \n
  • \n
\n
\n
\n
\n \n \n \n \n \n \n
\n \n );\n }\n}\n\nDashboard.propTypes = {\n t: PropTypes.any,\n chartsData: PropTypes.any,\n onGetChartsData: PropTypes.func,\n};\n\nconst mapStateToProps = ({ Dashboard }) => ({\n chartsData: Dashboard.chartsData,\n});\n\nconst mapDispatchToProps = dispatch => ({\n onGetChartsData: periodType => dispatch(getChartsData(periodType)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withTranslation()(Dashboard));\n","import PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport React, { Component } from \"react\";\nimport {\n Alert,\n Button,\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n// Redux\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\n\n//Import Breadcrumb\nimport Breadcrumb from \"../../components/Common/Breadcrumb\";\n\n// actions\nimport { updateDonorProfile, getDonorProfile } from \"store/auth/donorprofile/actions\";\n\nclass DonorProfile extends Component {\n constructor(props) {\n super(props);\n this.state = {\n name: \"\",\n phone: \"\",\n email: \"\",\n type:\"\",\n cnic:\"\",\n company_name:\"\",\n is_income_tax_payable:\"\",\n is_blocked:\"\",\n isProfileUpdated: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n componentDidMount() {\n console.log(\"user id: \", this.state.user_id);\n setTimeout(() => {\n console.log(this.props.getDonorProfile(this.state.user_id));\n }, 1000);\n\n setTimeout(() => {\n this.setState({\n name: this.props.success.name,\n phone: this.props.success.phone,\n email: this.props.success.email,\n type: this.props.success.type,\n cnic: this.props.success.cnic,\n company_name: this.props.success.company_name,\n is_income_tax_payable: this.props.success.is_income_tax_payable,\n is_blocked: this.props.success.is_blocked,\n });\n }, 2000);\n }\n\n render() {\n console.log(\" name: \", this.props.success.name);\n\n return (\n \n
\n \n {/* Render Breadcrumb */}\n \n\n {this.state.isProfileUpdated && this.state.isProfileUpdated ? (\n Your profile is updated.\n ) : null}\n\n {/*

Update B2BClient Profile

*/}\n\n \n \n {\n this.props.updateDonorProfile(\n values,\n this.state.user_id\n );\n // To show success message of update\n this.setState({ isProfileUpdated: true });\n window.scrollTo({top: 0, left: 0, behavior: 'smooth'});\n\n\n // To get updated profile again\n setTimeout(() => {\n this.props.getDonorProfile(this.state.user_id);\n }, 1000);\n\n // To make success message disappear after sometime\n setTimeout(() => {\n this.setState({\n isProfileUpdated: false,\n });\n }, 5000);\n }}\n >\n {({ errors, status, touched }) => (\n
\n {/* Name field */}\n
\n \n \n this.setState({ name: e.target.value })\n }\n value={this.state.name}\n className={\n \"form-control\" +\n (errors.name && touched.name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n {/* Email field */}\n
\n \n \n this.setState({ email: e.target.value })\n }\n value={this.state.email}\n className={\n \"form-control\" +\n (errors.email && touched.email ? \" is-invalid\" : \"\")\n }\n />\n \n
\n {/* phone field */}\n
\n \n \n this.setState({\n phone: e.target.value,\n })\n }\n value={this.state.phone}\n className={\n \"form-control\" +\n (errors.phone && touched.phone\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n \n\n
\n \n
\n
\n )}\n \n
\n
\n
\n
\n
\n );\n }\n}\n\nDonorProfile.propTypes = {\n match: PropTypes.object,\n location: PropTypes.object,\n updateDonorProfile: PropTypes.func,\n error: PropTypes.any,\n success: PropTypes.any,\n getDonorProfile: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const { error, success } = state.DonorProfile;\n console.log(\"B2B Profile: \", state.DonorProfile.success);\n return { error, success };\n};\n\nexport default withRouter(\n connect(mapStateToProps, {\n updateDonorProfile,\n getDonorProfile,\n })(DonorProfile)\n);\n","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\n\n\nimport {\n Card,\n CardBody,\n Col,\n ModalHeader,\n Container,\n Row,\n Label,\n Modal,\n ModalBody,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { getDonorReferredAppointmentsList } from \"store/donor-referred-appointments/actions\";\nimport { uniqueId } from \"lodash\";\nimport { b2bclientAuthProtectedRoutes } from \"routes\";\n\nclass ReferredPatientsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n donorReferredAppointments: [],\n id: \"\",\n donorReferredAppointment: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n donorReferredAppointmentListColumns: [\n {\n dataField: \"booked_at\",\n text: \"Booked at\",\n sort: true,\n formatter: (cellContent, donorReferredAppointment) => {\n const date = new Date(donorReferredAppointment.booked_at);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2); // Get the last 2 digits of the year\n\n return (\n

\n {`${day}-${month}-${year}`}\n

\n );\n },filter: textFilter(),\n },\n {\n dataField: \"order_id\",\n text: \"Order ID\",\n sort: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>\n {patientTestAppointment.order_id}\n \n ),filter: textFilter(),\n },\n // {\n // dataField: \"donated_by\",\n // text: \"Donor ID\",\n // sort: true,\n // },\n // {\n // dataField: \"patient_name\",\n // text: \"Patient Name\",\n // sort: true,\n // },\n {\n dataField: \"patient_name\",\n text: \"Patient Name\",\n sort: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>\n \n \n this.openPatientModal(e, patientTestAppointment)}\n // onMouseEnter={e => this.openPatientModal(e, patientTestAppointment)}\n // onPointerLeave={this.handleMouseExit()}\n >\n {patientTestAppointment.patient_name}\n \n \n \n \n ),filter: textFilter(),\n },\n // {\n // dataField: \"lab_name\",\n // text: \"Lab Name\",\n // sort: true,\n // },\n {\n dataField: \"lab_name\",\n text: \"Lab Name\",\n sort: true,\n formatter: (cellContent, donorReferredAppointment) => (\n <>\n \n \n this.openLabModal(e, donorReferredAppointment)}\n // onMouseEnter={e => this.openLabModal(e, donorReferredAppointment)}\n // onPointerLeave={this.handleMouseExit()}\n >\n {donorReferredAppointment.lab_name}\n \n \n \n \n ),filter: textFilter(),\n },\n \n\n \n // {\n // dataField: \"payment_method\",\n // text: \"Payment method\",\n // sort: true,\n // },\n {\n dataField: \"payment_status\",\n text: \"Payments status\",\n sort: true,\n formatter: (cellContent, donorReferredAppointment) => (\n <>\n {donorReferredAppointment.payment_status == \"Not Paid\" ? (\n \n {donorReferredAppointment.payment_status}\n \n ) : (\n \n {donorReferredAppointment.payment_status}\n \n )}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"status\",\n text: \"Appointments Status\",\n sort: true,\n formatter: (cellContent, donorReferredAppointment) => (\n <>\n {donorReferredAppointment.status == \"Pending\" ? (\n \n {donorReferredAppointment.status}\n \n ) : null}\n {donorReferredAppointment.status == \"Cancel\" ? (\n \n {donorReferredAppointment.status}\n \n ) : null}\n {donorReferredAppointment.status == \"Pending Cancel\" && (\n \n {donorReferredAppointment.status}\n \n )}\n\n {donorReferredAppointment.status == \"Confirmed\" ? (\n \n {donorReferredAppointment.status}\n \n ) : null}\n\n {donorReferredAppointment.status == \"Sample Collected\" ? (\n \n {donorReferredAppointment.status}\n \n ) : null}\n\n {donorReferredAppointment.status == \"Result Uploaded\" ? (\n \n {donorReferredAppointment.status}\n \n ) : null}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"donortesting\",\n text: \"Status\",\n sort: true,\n formatter: (cellContent, patientTestAppointment) => (\n <>\n {patientTestAppointment.donortesting}\n \n ),filter: textFilter(),\n },\n\n {\n dataField: \"dues\",\n text: \"Invoice Amount\",\n sort: true,\n formatter: (cellContent, donorReferredAppointment) => (\n <>\n
\n {donorReferredAppointment.dues.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}
\n \n ), filter: textFilter(),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n\n }\n\n componentDidMount() {\n const { donorReferredAppointments, onGetB2bReferredPatientsList } =\n this.props;\n if (donorReferredAppointments && !donorReferredAppointments.length) {\n console.log(this.state.user_id);\n setTimeout(() => {\n onGetB2bReferredPatientsList(this.state.user_id);\n }, 3000);\n }\n\n this.setState({ donorReferredAppointments });\n }\n\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n }\n toggleLabModal = () => {\n this.setState(prevState => ({\n LabModal: !prevState.LabModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n appointment_requested_at: arg.appointment_requested_at,\n patient_unique_id: arg.patient_unique_id,\n patient_gender: arg.patient_gender,\n patient_address: arg.patient_address,\n patient_age: arg.patient_age,\n ageFormat: arg.ageFormat,\n patient_unique_id: arg.patient_unique_id,\n // patient_city: arg.patient_city,\n patient_phone: arg.patient_phone,\n booked_at: arg.booked_at,\n });\n };\n // handleMouseExit = () => {\n // this.setState({\n // PatientModal: false,\n // isHovered: false,\n // LabModal: false,\n // });\n // };\n openLabModal = (e, arg) => {\n this.setState({\n LabModal: true,\n lab_city: arg.lab_city,\n lab_type: arg.lab_type,\n lab_address: arg.lab_address,\n });\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { donorReferredAppointments } = this.props;\n const { onGetB2bReferredPatientsList } =\n this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: donorReferredAppointments.length, // replace later with size(donorReferredAppointments),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n Donor Appointments List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n \n {/*

{\"https://labhazir.com/nearby-labs/?uuid=\" + \"donorReferredAppointments.uuid\"}

*/}\n\n
\n
\n \n
\n \n \n
\n \n \n \n \n \n Lab Details\n \n \n\n \n
\n \n \n\n {/*
\n
\n \n
\n
\n \n
\n
*/}\n \n\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n \n \n
\n
\n
\n
\n \n \n \n Patient Details\n \n \n\n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n\n {this.state.patient_address && this.state.patient_address !== \"undefined\" ? (\n
\n
\n \n
\n
\n \n
\n
\n ): null}\n\n {/*
\n
\n \n
\n
\n \n
\n
*/}\n {/*
\n
\n \n
\n
\n \n
\n
*/}\n {/*
\n
\n \n
\n
\n \n
\n
*/}\n\n\n {/*
\n
\n \n
\n
\n \n
\n\n
\n {\n navigator.clipboard.writeText(\n this.state\n .patient_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
\n
*/}\n \n
\n
\n
\n
\n \n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nReferredPatientsList.propTypes = {\n match: PropTypes.object,\n donorReferredAppointments: PropTypes.array,\n className: PropTypes.any,\n onGetB2bReferredPatientsList: PropTypes.func,\n};\nconst mapStateToProps = ({ donorReferredAppointments }) => ({\n donorReferredAppointments: donorReferredAppointments.donorReferredAppointmentsList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetB2bReferredPatientsList: id =>\n dispatch(getDonorReferredAppointmentsList(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(ReferredPatientsList));\n","import {\n GET_DONOR_REFERRED_APPOINTMENTS_LIST,\n GET_DONOR_REFERRED_APPOINTMENTS_LIST_SUCCESS,\n GET_DONOR_REFERRED_APPOINTMENTS_LIST_FAIL,\n} from \"./actionTypes\";\n\nexport const getDonorReferredAppointmentsList = id => ({\n type: GET_DONOR_REFERRED_APPOINTMENTS_LIST,\n payload: id,\n});\n\nexport const getDonorReferredAppointmentsListSuccess =\n donorReferredAppointments => ({\n type: GET_DONOR_REFERRED_APPOINTMENTS_LIST_SUCCESS,\n payload: donorReferredAppointments,\n });\n\nexport const getDonorReferredAppointmentsListFail = error => ({\n type: GET_DONOR_REFERRED_APPOINTMENTS_LIST_FAIL,\n payload: error,\n});\n","import React, { Component } from \"react\";\nimport Select from \"react-select\";\nimport MetaTags from \"react-meta-tags\";\nimport PropTypes from \"prop-types\";\nimport { any } from \"prop-types\";\nimport { Field, Formik } from \"formik\";\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\nimport {\n Container,\n Row,\n Col,\n Table,\n Input,\n Nav,\n NavItem,\n NavLink,\n TabContent,\n TabPane,\n Card,\n Form,\n FormGroup,\n Label,\n CardBody,\n CardTitle,\n Alert,\n} from \"reactstrap\";\n\nimport classnames from \"classnames\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"../../components/Common/Breadcrumb\";\n\nimport {\n addNewDonorPayment,\n} from \"store/donorcheckout/actions\";\n\nclass DonorPayment extends Component {\n constructor(props) {\n super(props);\n this.state = {\n donorPayments: [],\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n // donor_name: \"\",\n address_type: \"\",\n address: \"\",\n amount: \"\",\n paid_at: \"\",\n deposited_at: \"\",\n deposit_bank: \"\",\n payment_method: \"Card\",\n card_number: \"\",\n name_on_card: \"\",\n expiry_date: \"\",\n cvv_code: \"\",\n cheque_no: \"\",\n cheque_image: \"\",\n deposit_slip: \"\",\n is_cleared: \"\",\n cleared_at: \"\",\n is_settled: \"\",\n isDisabled: true,\n isRequiredFilled: true,\n donorPayment: \"\", \n checkedoutData: \"\",\n activeTab: \"1\",\n selectedGroup: null,\n };\n this.toggleTab = this.toggleTab.bind(this);\n this.handleSelectGroup = this.handleSelectGroup.bind(this);\n }\n\n toggleTab(tab) {\n if (this.state.activeTab !== tab) {\n this.setState({\n activeTab: tab,\n });\n }\n }\n\n handleSelectGroup = selectedGroup => {\n this.setState({ selectedGroup });\n };\n\n handleProceedClick = () => {\n const canProceed = this.checkForValidations();\n if (canProceed) {\n console.log(\"Can call API......\");\n this.setState({\n donorPayment: {\n amount: this.state.amount,\n payment_method: this.state.payment_method,\n card_number: this.state.card_number,\n name_on_card: this.state.name_on_card,\n expiry_date: this.state.expiry_date,\n cvv_code: this.state.cvv_code,\n address_type: this.state.address_type,\n address: this.state.address,\n paid_at: this.state.paid_at,\n deposited_at: this.state.deposited_at,\n deposit_bank: this.state.deposit_bank,\n cheque_no: this.state.cheque_no,\n cheque_image: this.state.cheque_image,\n deposit_slip: this.state.deposit_slip,\n is_cleared: this.state.is_cleared,\n cleared_at: this.state.cleared_at,\n is_settled: this.state.is_settled,\n },\n });\n\n // API call to get the checkout items\n const { onAddDonorPaymentData } = this.props;\n setTimeout(() => {\n console.log(\n onAddDonorPaymentData(this.state.donorPayment, this.state.user_id)\n );\n }, 2000);\n\n setTimeout(() => {\n this.setState({ donorPayment: this.props.donorPayment });\n\n // If checkout operation is successful.\n if (this.props.donorPayment) {\n this.props.history.push(\"/donor-appointment\");\n }\n }, 2000);\n }\n };\n\n checkForValidations = () => {\n // Check if patient's name, age and appointment Booked for is filled\n if (\n this.state.amount\n ) {\n // Check if card information is filled in case of payment method is Card\n if (this.state.payment_method == \"Card\") {\n if (\n this.state.card_number &&\n this.state.name_on_card &&\n this.state.expiry_date &&\n this.state.cvv_code\n ) {\n this.setState({ isRequiredFilled: true });\n return true;\n } else {\n this.setState({ isRequiredFilled: false });\n return false;\n }\n }\n // If patient's payment method is not Card (Cash) then set isRequiredFilled to true\n else {\n this.setState({ isRequiredFilled: true });\n return true;\n }\n } else {\n this.setState({ isRequiredFilled: false });\n return false;\n }\n };\n\n // componentDidMount() {\n\n // // API call to get the checkout items\n // const { onGetDonorPaymentItems } = this.props;\n // setTimeout(() => {\n // onGetDonorPaymentItems(this.state.user_id, \"Yes\");\n // }, 1000);\n\n // setTimeout(() => {\n // this.setState({ donorPayments: this.props.donorPayments });\n // }, 2000);\n // }\n // componentDidMount() {\n // // API call to get the checkout items\n // const { onGetDonorPaymentItems } = this.props;\n // onGetDonorPaymentItems(this.state.user_id, \"Yes\");\n // this.setState({ donorPayments: this.props.donorPayments });\n // }\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n\n const { donorPayments } = this.props;\n if (\n isEmpty(prevProps.donorPayments) &&\n !isEmpty(donorPayments) &&\n size(donorPayments) !== size(prevProps.donorPayments)\n ) {\n this.setState({ donorPayments });\n }\n\n // Timeout functions to hide alerts after sometime......\n // setTimeout(() => {\n // this.setState({ isRequiredFilled: true });\n // }, 10000);\n }\n\n render() {\n return (\n \n
\n \n DonorPayment | Lab Hazir - Dashboard\n \n \n {/* Render Breadcrumb */}\n \n \n
\n \n \n \n \n \n {!this.state.isRequiredFilled ? (\n \n Please fill the required fields.\n \n ) : null}\n\n \n \n \n \n
\n \n Payment information\n \n

\n Fill the card payment only if your payment method\n is card\n

\n
\n
\n \n this.setState({\n payment_method: e.target.value,\n })\n }\n />\n \n {\" \"}\n Cash on Spot\n \n
\n\n
\n \n this.setState({\n payment_method: e.target.value,\n })\n }\n />\n \n {\" \"}\n Cheque\n \n
\n
\n \n this.setState({\n payment_method: e.target.value,\n })\n }\n />\n \n {\" \"}\n Credit / Debit Card\n \n
\n
\n\n \n \n \n this.setState({\n amount: e.target.value,\n })\n }\n />\n \n\n {this.state.payment_method == \"Card\" ? (\n
\n
\n For card Payment\n
\n
\n
\n \n \n \n this.setState({\n card_number: e.target.value,\n })\n }\n />\n \n \n \n \n \n \n this.setState({\n name_on_card: e.target.value,\n })\n }\n />\n \n \n \n \n \n \n this.setState({\n expiry_date: e.target.value,\n })\n }\n />\n \n \n \n \n \n \n this.setState({\n cvv_code: e.target.value,\n })\n }\n />\n \n \n \n
\n
\n
\n ) : null}\n\n {this.state.payment_method == \"Cheque\" ? (\n
\n
\n For Cheque Payment\n
\n
\n
\n \n \n \n this.setState({\n Cheque: e.target.value,\n })\n }\n defaultValue={this.state.Cheque}\n className=\"form-select\"\n >\n \n --- Please select the Type\n ---\n \n \n \n \n \n\n {this.state.Cheque == \"Pick_from\" ? (\n
\n \n Pick From\n \n \n this.setState({\n Pick_from: e.target.value,\n })\n }\n />\n
\n ) : null}\n\n {this.state.Cheque == \"Deliever_to\" ? (\n
\n \n Delivered To\n \n \n // this.setState({\n // picked_from: e.target.value,\n // })\n // }\n />\n
\n ) : null}\n\n
\n
\n
\n\n ) : null}\n\n {this.state.payment_method == \"Cash\" ? (\n
\n
\n For Cash Payment\n
\n
\n
\n \n \n \n this.setState({\n Cash: e.target.value,\n })\n }\n defaultValue={this.state.Cash}\n className=\"form-select\"\n >\n \n --- Please select the Type\n ---\n \n \n \n \n \n\n {this.state.Cash == \"Pick_from\" ? (\n
\n \n Pick From\n \n \n this.setState({\n Pick_from: e.target.value,\n })\n }\n />\n
\n ) : null}\n\n {this.state.Cash == \"Deliever_to\" ? (\n
\n \n Delivered To\n \n \n // this.setState({\n // picked_from: e.target.value,\n // })\n // }\n />\n
\n ) : null}\n\n
\n\n
\n
\n ) : null}\n\n
\n \n
\n
\n
\n \n \n {/* \n Back to-\nShopping Cart{\" \"}\n */}\n \n \n
\n \n Proceed to\n Shipping{\" \"}\n \n
\n \n
\n \n
\n
\n
\n
\n
\n
\n );\n }\n}\n\nDonorPayment.propTypes = {\n match: PropTypes.object,\n history: any,\n donorPayments: PropTypes.array,\n // onGetDonorPaymentItems: PropTypes.func,\n onAddDonorPaymentData: PropTypes.func,\n donorPayment: PropTypes.array,\n};\n\n// const mapStateToProps = state => ({\n// donorPayments: state.donorcheckout.donorPayments,\n// checkedoutData: state.donorcheckout.checkedoutData,\n// });\nconst mapStateToProps = ({ donorPayments }) => ({\n donorPayments: donorPayments.donorPayments,\n donorPayment: donorPayments.donorPayment,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n\n onAddDonorPaymentData: (donorPayment, id) =>\n dispatch(addNewDonorPayment(donorPayment, id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(DonorPayment));\n\n","import {\n // GET_DONOR_PAYMENTS,\n // GET_DONOR_PAYMENTS_FAIL,\n // GET_DONOR_PAYMENTS_SUCCESS,\n ADD_NEW_DONOR_PAYMENT,\n ADD_DONOR_PAYMENT_SUCCESS,\n ADD_DONOR_PAYMENT_FAIL,\n} from \"./actionTypes\";\n\n// export const getDonorPayments = id => ({\n// type: GET_DONOR_PAYMENTS,\n// payload: id,\n// });\n\n// export const getDonorPaymentsSuccess = donorPayments => ({\n// type: GET_DONOR_PAYMENTS_SUCCESS,\n// payload: donorPayments,\n// });\n\n// export const getDonorPaymentsFail = error => ({\n// type: GET_DONOR_PAYMENTS_FAIL,\n// payload: error,\n// });\n\nexport const addNewDonorPayment = (donorPayment, id) => ({\n type: ADD_NEW_DONOR_PAYMENT,\n payload: { donorPayment, id },\n});\n\nexport const addDonorPaymentSuccess = donorPayment => ({\n type: ADD_DONOR_PAYMENT_SUCCESS,\n payload: donorPayment,\n});\n\nexport const addDonorPaymentFail = error => ({\n type: ADD_DONOR_PAYMENT_FAIL,\n payload: error,\n});\n","import PropTypes from \"prop-types\";\nimport React, { Component } from \"react\";\nimport Select from \"react-select\";\nimport {\n Alert,\n Button,\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n// Redux\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\n\nimport { CITIES, DISTRICTS } from \"helpers/global_variables_helper\";\n\n\n//Import Breadcrumb\nimport Breadcrumb from \"../../components/Common/Breadcrumb\";\n\n// actions\nimport { updateDonorSettings, getDonorSettings } from \"../../store/actions\";\n\n\nlet mainLabOptionGroup = [\n {\n options: [],\n },\n];\n\nclass LabSettings extends Component {\n constructor(props) {\n super(props);\n this.state = {\n donation_to: \"\",\n lab_id: \"\",\n province: \"\",\n district: \"\",\n city: \"\",\n main_lab_account_id: \"\",\n isSettingsUpdated: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n componentDidMount() {\n // this.props.getTerritoriesList();\n setTimeout(() => {\n this.props.getDonorSettings(this.state.user_id);\n }, 1000);\n\n setTimeout(() => {\n this.setState({\n donation_to: this.props.success.donation_to,\n lab_id: this.props.success.lab_id,\n province: this.props.success.province,\n district: this.props.success.district,\n city: this.props.success.city,\n });\n }, 2000);\n }\n\n render() {\n\n // const cityList = [];\n // for (let i = 0; i < this.props.territoriesList.length; i++) {\n // cityList.push({\n // label: this.props.territoriesList[i].city,\n // value: this.props.territoriesList[i].id,\n // });\n // }\n\n // const districtList = [];\n // for (let i = 0; i < this.props.territoriesList.length; i++) {\n // districtList.push({\n // label: this.props.territoriesList[i].district,\n // value: this.props.territoriesList[i].id,\n // });\n // }\n\n\n return (\n \n
\n \n {/* Render Breadcrumb */}\n \n\n {this.state.isSettingsUpdated && this.state.isSettingsUpdated ? (\n Your settings are updated.\n ) : null}\n\n \n \n val === \"lab\",\n then: Yup.string().required(\n \"Please enter your main lab\"\n ),\n }),\n })}\n onSubmit={values => {\n console.log(\"values: \", values);\n // If health dept certified is selected and certificate is uploaded\n if (\n (this.state.donation_to.length > 0 &&\n this.state.donation_to) ||\n this.state.donation_to.length == 0\n ) {\n \n // To show success message of update\n this.setState({ isSettingsUpdated: true });\n window.scrollTo({top: 0, left: 0, behavior: 'smooth'});\n\n setTimeout(() => {\n this.props.updateDonorSettings(\n values,\n this.state.user_id\n );\n\n // To get updated settings again\n setTimeout(() => {\n this.props.getDonorSettings(this.state.user_id);\n }, 2000);\n\n // To make success message disappear after sometime\n setTimeout(() => {\n this.setState({\n isSettingsUpdated: false,\n });\n }, 5000);\n }, 2000);\n }\n }}\n >\n {({ errors, status, touched }) => (\n
\n

{errors.donation_to}

\n {/* Operational Hours Fields */}\n \n\n {/* Health Dept Certified */}\n
\n \n Donation To\n \n \n this.setState({\n donation_to: e.target.value,\n })\n }\n defaultValue={this.state.donation_to}\n className=\"form-select\"\n >\n \n \n \n \n \n\n \n
\n {this.state.donation_to === \"Province\" && (\n\n
\n \n \n this.setState({\n province: e.target.value,\n })\n }\n value={this.state.province}\n className=\"form-select\"\n >\n \n \n \n \n \n \n
\n\n )}\n {/* disctrict field */}\n {this.state.donation_to === \"District\" && (\n
\n \n \n this.setState({\n district: selectedGroup.value,\n })\n }\n styles={{\n control: (base, state) => ({\n ...base,\n borderColor:\n errors.district && touched.district\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n className={\n \"defautSelectParent\" +\n (errors.district && touched.district\n ? \" is-invalid\"\n : \"\")\n }\n options={DISTRICTS}\n placeholder=\"Select District...\"\n />\n\n \n
\n\n )}\n {/* city field */}\n {this.state.donation_to === \"City\" && (\n
\n \n \n this.setState({\n city: selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (errors.city && touched.city\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (base, state) => ({\n ...base,\n borderColor:\n errors.city && touched.city\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={CITIES}\n placeholder=\"Select City...\"\n />\n\n \n
\n )}\n {/* {this.state.donation_to === \"Lab\" && (\n
\n \n What is your main lab name?\n \n \n\n {touched.main_lab_account_id &&\n errors.main_lab_account_id && (\n \n Please select your main lab\n
\n )}\n
\n )} */}\n \n
\n \n
\n \n )}\n \n
\n
\n
\n
\n
\n );\n }\n}\n\nLabSettings.propTypes = {\n match: PropTypes.object,\n location: PropTypes.object,\n updateDonorSettings: PropTypes.func,\n error: PropTypes.any,\n success: PropTypes.any,\n getDonorSettings: PropTypes.func,\n territoriesList: PropTypes.array,\n // getTerritoriesList:PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n \n const { error, success } = state.LabSettings;\n return { error, success };\n \n};\n\nexport default withRouter(\n connect(mapStateToProps, {\n // getTerritoriesList,\n updateDonorSettings,\n getDonorSettings,\n })(LabSettings)\n);\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Card, CardBody, Col, Table, Container, Row } from \"reactstrap\";\nimport { isEmpty, map } from \"lodash\";\nimport moment from 'moment';\n\n\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport { getDonorAccountStatements } from \"store/donor-account-statements/actions\";\n\nimport \"assets/scss/table.scss\";\n\nclass AccountStatements extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n donoraccountStatements: [],\n donoraccountStatement: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n account_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n if (this.state.user_id && this.state.account_type === \"donor\") {\n const { onGetDonorAccountStatements } = this.props;\n onGetDonorAccountStatements(this.state.user_id);\n this.setState({ donoraccountStatements: this.props.donoraccountStatements });\n } else if (this.state.user_id && this.state.account_type !== \"donor\"){\n const { onGetDonorAccountStatements } = this.props;\n onGetDonorAccountStatements(this.props.match.params.id);\n this.setState({ donoraccountStatements: this.props.donoraccountStatements });;\n }\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { donoraccountStatements } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: donoraccountStatements.length, // replace later with size(donoraccountStatements),\n custom: true,\n };\n\n const thStyle = {\n border: '1px solid white',\n textAlign: 'center',\n verticalAlign: 'middle',\n }; \n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n // var total_testby_labhazir = this.props.donoraccountStatements.total_testby_labhazir\n // // var authenticated = \"{{total_testby_labhazir}}\"\n // console.log(total_testby_labhazir)\n\n return (\n \n
\n \n Account Statements | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n {isEmpty(this.props.donoraccountStatements) && (\n \n
\n \n Note: Only payments with the Cleared and Approved status will show here.\n\n \n

\n \n Note: If patient appointment is canceled the money will be refunded back. All such cancel Appointments can be tracked in the Appointment Tracibility page.\n\n \n
\n
\n \n \n \n
\n \n \n \n \n {/* */}\n {/* */}\n \n \n \n \n\n {/* */}\n \n \n
Date TimePayment DateIDDescriptionCreditDebitBalanceIs Settled
\n
\n
\n
\n \n
)}\n {!isEmpty(this.props.donoraccountStatements) && (\n \n
\n \n Note: Only MIF with the Cleared and Approved status will show here.\n\n \n

\n \n Note: If patient appointment is canceled the money will be refunded back. All such cancel Appointments can be tracked in the Appointment Tracibility page.\n\n \n
\n
\n {/*
\n \n Note: MIF Payments Means: (Payment Credited in Account) \n \n
\n
\n \n Note: INVOICE Payments Means: (Payment Debited in Account) \n \n
*/}\n \n \n \n
\n \n \n \n \n {/* */}\n {/* */}\n \n \n \n \n\n {/* */}\n \n \n \n {donoraccountStatements.map((donoraccountStatement, i) => (\n <>\n {donoraccountStatement.transaction_type == \"In\" ? (\n // \n \n \n \n \n\n \n \n \n \n ) : (\n \n \n \n {/* */}\n \n \n \n \n \n )}\n \n )\n )}\n \n \n \n \n \n \n \n
DatePayment DateIDDescriptionCreditDebitBalanceIs Settled
\n {donoraccountStatement.clearedat ? ( \n

\n {/* {donoraccountStatement.PaidAt} */}\n {/* {new Date(donoraccountStatement.PaidAt).toLocaleString(\"en-US\")} */}\n {moment(donoraccountStatement.clearedat).format(\"DD MMM YYYY\")}\n\n\n

\n ) :

\n {/* {donoraccountStatement.PaidAt} */}\n {/* {new Date(donoraccountStatement.PaidAt).toLocaleString(\"en-US\")} */}\n {moment(donoraccountStatement.generated_at).format(\"DD MMM YYYY\")}\n\n\n

}\n
\n {donoraccountStatement.cancel_appintment_status === \"Cancel\" ? (\n \n \n INVOICE ID: {donoraccountStatement.paymentin},\n Payment Method: {donoraccountStatement.PaidMethod},\n {donoraccountStatement.Status},\n \n {donoraccountStatement.cancel_appintment_status} , Auto MIF\n \n \n \n ) : (\n \n \n MIF ID: {donoraccountStatement.paymentin},\n Payment Method: {donoraccountStatement.PaidMethod}\n {donoraccountStatement.PaidMethod === \"Donation\" ? (\n {donoraccountStatement.Status}\n ) : }\n \n {donoraccountStatement.PaidMethod === \"Cheque\" || donoraccountStatement.PaidMethod === \"Card\" || donoraccountStatement.PaidMethod === \"Cash\" ? (\n \n Payment Date: {moment(donoraccountStatement.PaidAt).format(\"DD MMM YYYY\")}\n \n ) : (\n \n {donoraccountStatement.cancel_appintment_status}\n \n )}\n \n \n )}\n\n {donoraccountStatement.Debit == 0 ? (\n

\n {donoraccountStatement.Debit.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ):(\n

\n {donoraccountStatement.Debit.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n \n {donoraccountStatement.Credit == 0 ? (\n

\n {donoraccountStatement.Credit.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ):(\n

\n {donoraccountStatement.Credit.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n {donoraccountStatement.Debit == 0 ? (\n

\n {donoraccountStatement.Debit.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ):(\n

\n {donoraccountStatement.Debit.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n {donoraccountStatement.Balance == 0 ? (\n

\n {donoraccountStatement.Balance.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ):(\n

\n {donoraccountStatement.Balance.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n

\n {/* {donoraccountStatement.PaidAt} */}\n {/* {new Date(donoraccountStatement.PaidAt).toLocaleString(\"en-US\")} */}\n {moment(donoraccountStatement.PaidAt).format(\"DD MMM YYYY\")}\n\n\n

\n
\n
\n {donoraccountStatement.paymentin}\n
\n
\n \n {Lab Name: {donoraccountStatement.lab_name} , {\" \"} Lab City: {donoraccountStatement.lab_city} , {\" \"} Patient Name: {donoraccountStatement.patient_name} , {\" \"} INVOICE ID: {donoraccountStatement.paymentin}}{\" \"}\n {/* {donoraccountStatement.Status} */}\n \n {/*

*/}\n
\n {donoraccountStatement.Credit == 0 ? (\n

\n {donoraccountStatement.Credit.toFixed(0).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ):(\n

\n {donoraccountStatement.Credit.toFixed(0).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n {donoraccountStatement.Debit == 0 ? (\n

\n {donoraccountStatement.Debit.toFixed(0).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ):(\n

\n {donoraccountStatement.Debit.toFixed(0).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n {donoraccountStatement.Balance == 0 ? (\n \n

\n {donoraccountStatement.Balance.toFixed(0).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n ):(\n

\n {donoraccountStatement.Balance.toFixed(0).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n Total\n \n

\n {\n this.props.donoraccountStatements.slice(-1).pop().total_Credit.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n

\n {\n this.props.donoraccountStatements.slice(-1).pop().total_Debit.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n

\n {\n this.props.donoraccountStatements.slice(-1).pop().Balance.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n
\n \n
\n
\n \n
\n )}\n\n
\n
\n
\n );\n }\n}\n\nAccountStatements.propTypes = {\n match: PropTypes.object,\n donoraccountStatements: PropTypes.array,\n className: PropTypes.any,\n onGetDonorAccountStatements: PropTypes.func,\n};\n\nconst mapStateToProps = ({ donoraccountStatements }) => ({\n donoraccountStatements: donoraccountStatements.donoraccountStatements,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetDonorAccountStatements: id => dispatch(getDonorAccountStatements(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(AccountStatements));\n","import {\n GET_DONOR_ACCOUNT_STATEMENTS,\n GET_DONOR_ACCOUNT_STATEMENTS_SUCCESS,\n GET_DONOR_ACCOUNT_STATEMENTS_FAIL,\n} from \"./actionTypes\";\n\nexport const getDonorAccountStatements = id => ({\n type: GET_DONOR_ACCOUNT_STATEMENTS,\n payload: id,\n});\n\nexport const getDonorAccountStatementsSuccess = donoraccountStatements => ({\n type: GET_DONOR_ACCOUNT_STATEMENTS_SUCCESS,\n payload: donoraccountStatements,\n});\n\nexport const getDonorAccountStatementsFail = error => ({\n type: GET_DONOR_ACCOUNT_STATEMENTS_FAIL,\n payload: error,\n});\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Card, CardBody, Col, Table, Container, Row } from \"reactstrap\";\nimport { isEmpty, map } from \"lodash\";\nimport moment from 'moment';\n\n\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport { getDonorsAccountStatements } from \"store/donors-account-statements/actions\";\n\nimport \"assets/scss/table.scss\";\n\nclass AccountStatements extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n donorsaccountStatements: [],\n donoraccountStatement: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n account_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n if (this.state.user_id && this.state.account_type === \"donor\") {\n const { onGetDonorAccountStatements } = this.props;\n onGetDonorAccountStatements(this.state.user_id);\n this.setState({ donorsaccountStatements: this.props.donorsaccountStatements });\n } else if (this.state.user_id && this.state.account_type !== \"donor\"){\n const { onGetDonorAccountStatements } = this.props;\n onGetDonorAccountStatements(this.props.match.params.id);\n this.setState({ donorsaccountStatements: this.props.donorsaccountStatements });;\n }\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { donorsaccountStatements } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: donorsaccountStatements.length, // replace later with size(donorsaccountStatements),\n custom: true,\n };\n\n const thStyle = {\n border: '1px solid white',\n textAlign: 'center',\n verticalAlign: 'middle',\n }; \n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n // var total_testby_labhazir = this.props.donorsaccountStatements.total_testby_labhazir\n // // var authenticated = \"{{total_testby_labhazir}}\"\n // console.log(total_testby_labhazir)\n\n return (\n \n
\n \n Account Statements | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n {isEmpty(this.props.donorsaccountStatements) && (\n \n
\n \n Note: Only payments with the Cleared and Approved status will show here.\n\n \n

\n \n Note: If patient appointment is canceled the money will be refunded back. All such cancel Appointments can be tracked in the Appointment Tracibility page.\n\n \n
\n
\n \n \n \n
\n \n \n \n \n {/* */}\n {/* */}\n \n \n \n \n\n {/* */}\n \n \n
Date TimePayment DateIDDescriptionCreditDebitBalanceIs Settled
\n
\n
\n
\n \n
)}\n {!isEmpty(this.props.donorsaccountStatements) && (\n \n
\n \n Note: Only MIFfeeeeeeeee with the Cleared and Approved status will show here.\n\n \n

\n \n Note: If patient appointment is canceled the money will be refunded back. All such cancel Appointments can be tracked in the Appointment Tracibility page.\n\n \n
\n
\n {/*
\n \n Note: MIF Payments Means: (Payment Credited in Account) \n \n
\n
\n \n Note: INVOICE Payments Means: (Payment Debited in Account) \n \n
*/}\n \n \n \n
\n \n \n \n \n {/* */}\n {/* */}\n \n \n \n \n\n {/* */}\n \n \n \n {donorsaccountStatements.map((donoraccountStatement, i) => (\n <>\n {donoraccountStatement.transaction_type == \"In\" ? (\n // \n \n \n \n \n\n \n \n \n \n ) : (\n \n \n \n {/* */}\n \n \n \n \n \n )}\n \n )\n )}\n \n \n \n \n \n \n \n
DatePayment DateIDDescriptionCreditDebitBalanceIs Settled
\n {donoraccountStatement.clearedat ? ( \n

\n {/* {donoraccountStatement.PaidAt} */}\n {/* {new Date(donoraccountStatement.PaidAt).toLocaleString(\"en-US\")} */}\n {moment(donoraccountStatement.clearedat).format(\"DD MMM YYYY\")}\n\n\n

\n ) :

\n {/* {donoraccountStatement.PaidAt} */}\n {/* {new Date(donoraccountStatement.PaidAt).toLocaleString(\"en-US\")} */}\n {moment(donoraccountStatement.generated_at).format(\"DD MMM YYYY\")}\n\n\n

}\n
\n {donoraccountStatement.cancel_appintment_status === \"Cancel\" ? (\n \n \n INVOICE ID: {donoraccountStatement.paymentin},\n Payment Method: {donoraccountStatement.PaidMethod},\n {donoraccountStatement.Status},\n \n {donoraccountStatement.cancel_appintment_status} , Auto MIF\n \n \n \n ) : (\n \n \n MIF ID: {donoraccountStatement.paymentin},\n Payment Method: {donoraccountStatement.PaidMethod}\n {donoraccountStatement.PaidMethod === \"Donation\" ? (\n {donoraccountStatement.Status}\n ) : }\n \n {donoraccountStatement.PaidMethod === \"Cheque\" || donoraccountStatement.PaidMethod === \"Card\" || donoraccountStatement.PaidMethod === \"Cash\" ? (\n \n Payment Date: {moment(donoraccountStatement.PaidAt).format(\"DD MMM YYYY\")}\n \n ) : (\n \n {donoraccountStatement.cancel_appintment_status}\n \n )}\n \n \n )}\n\n {donoraccountStatement.Debit == 0 ? (\n

\n {donoraccountStatement.Debit.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ):(\n

\n {donoraccountStatement.Debit.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n \n {donoraccountStatement.Credit == 0 ? (\n

\n {donoraccountStatement.Credit.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ):(\n

\n {donoraccountStatement.Credit.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n {donoraccountStatement.Debit == 0 ? (\n

\n {donoraccountStatement.Debit.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ):(\n

\n {donoraccountStatement.Debit.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n {donoraccountStatement.Balance == 0 ? (\n

\n {donoraccountStatement.Balance.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ):(\n

\n {donoraccountStatement.Balance.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n

\n {/* {donoraccountStatement.PaidAt} */}\n {/* {new Date(donoraccountStatement.PaidAt).toLocaleString(\"en-US\")} */}\n {moment(donoraccountStatement.PaidAt).format(\"DD MMM YYYY\")}\n\n\n

\n
\n
\n {donoraccountStatement.paymentin}\n
\n
\n \n {Lab Name: {donoraccountStatement.lab_name} , {\" \"} Lab City: {donoraccountStatement.lab_city} , {\" \"} Patient Name: {donoraccountStatement.patient_name} , {\" \"} INVOICE ID: {donoraccountStatement.paymentin}}{\" \"}\n {/* {donoraccountStatement.Status} */}\n \n {/*

*/}\n
\n {donoraccountStatement.Credit == 0 ? (\n

\n {donoraccountStatement.Credit.toFixed(0).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ):(\n

\n {donoraccountStatement.Credit.toFixed(0).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n {donoraccountStatement.Debit == 0 ? (\n

\n {donoraccountStatement.Debit.toFixed(0).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ):(\n

\n {donoraccountStatement.Debit.toFixed(0).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n {donoraccountStatement.Balance == 0 ? (\n \n

\n {donoraccountStatement.Balance.toFixed(0).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n ):(\n

\n {donoraccountStatement.Balance.toFixed(0).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n \n
\n Total\n \n

\n {\n this.props.donorsaccountStatements.slice(-1).pop().total_Credit.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n

\n {\n this.props.donorsaccountStatements.slice(-1).pop().total_Debit.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n

\n {\n this.props.donorsaccountStatements.slice(-1).pop().Balance.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n
\n \n
\n
\n \n
\n )}\n\n
\n
\n
\n );\n }\n}\n\nAccountStatements.propTypes = {\n match: PropTypes.object,\n donorsaccountStatements: PropTypes.array,\n className: PropTypes.any,\n onGetDonorAccountStatements: PropTypes.func,\n};\n\nconst mapStateToProps = ({ donorsaccountStatements }) => ({\n donorsaccountStatements: donorsaccountStatements.donorsaccountStatements,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetDonorAccountStatements: id => dispatch(getDonorsAccountStatements(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(AccountStatements));\n","import {\n GET_DONORS_ACCOUNT_STATEMENTS,\n GET_DONORS_ACCOUNT_STATEMENTS_SUCCESS,\n GET_DONORS_ACCOUNT_STATEMENTS_FAIL,\n} from \"./actionTypes\";\n\nexport const getDonorsAccountStatements = id => ({\n type: GET_DONORS_ACCOUNT_STATEMENTS,\n payload: id,\n});\n\nexport const getDonorsAccountStatementsSuccess = donoraccountStatements => ({\n type: GET_DONORS_ACCOUNT_STATEMENTS_SUCCESS,\n payload: donoraccountStatements,\n});\n\nexport const getDonorsAccountStatementsFail = error => ({\n type: GET_DONORS_ACCOUNT_STATEMENTS_FAIL,\n payload: error,\n});\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Card, CardBody, Col, Table, Container, Row, Label } from \"reactstrap\";\nimport { isEmpty, map } from \"lodash\";\nimport Select from \"react-select\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport moment from 'moment';\nimport 'react-datepicker/dist/react-datepicker.css';\nimport DatePicker from 'react-datepicker';\n\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getBankaccounts,\n} from \"store/bankaccounts/actions\";\nimport { getBankStatements } from \"store/account-statements/actions\";\n\nimport \"assets/scss/table.scss\";\n// Define the custom footer component\n\nclass AccountStatements extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n bankStatements: [],\n bankStatement: \"\",\n startDate: null,\n endDate: null,\n bankaccount_id: null,\n prevStatement: null,\n filteredBankStatements: [],\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { onGetBankaccounts } = this.props;\n onGetBankaccounts(this.state.user_id);\n\n // Call the asynchronous functions initially\n this.getData();\n\n // Set an interval to call the asynchronous functions every 2 seconds\n this.interval = setInterval(this.getData, 1000);\n }\n\n componentWillUnmount() {\n clearInterval(this.interval);\n } \n\n componentDidUpdate(prevProps, prevState) {\n if (\n prevState.startDate !== this.state.startDate ||\n prevState.endDate !== this.state.endDate\n ) {\n // Fetch data based on date filters\n this.getData();\n }\n\n if (\n this.props.bankStatements.length > 0 &&\n this.props.bankStatements !== prevProps.bankStatements\n ) {\n // Find the index of the last statement that falls within the date range\n const lastIndex = this.props.bankStatements.findIndex((statement) => {\n const statementDate = new Date(statement.clearence_datetime);\n return (\n statementDate >= this.state.startDate &&\n statementDate <= this.state.endDate\n );\n });\n\n // Check if there's a previous statement\n const newPrevStatement =\n lastIndex > 0\n ? this.props.bankStatements[lastIndex - 1].account_balance\n : 0;\n\n if (newPrevStatement !== this.state.prevStatement) {\n this.setState({\n prevStatement: newPrevStatement,\n });\n }\n }\n }\n\n getData = async () => {\n const { onGetBankStatements, match } = this.props;\n \n // Fetch bank statements\n await onGetBankStatements(match.params.id);\n const { bankStatements } = this.props;\n const { startDate, endDate, bankaccount_id } = this.state;\n \n // Apply date range and bank account filters\n const filteredStatements = bankStatements.filter((statement) => {\n const statementDate = moment(statement.clearence_datetime);\n const isDateInRange =\n (!startDate || statementDate.isSameOrAfter(startDate)) &&\n (!endDate || statementDate.isSameOrBefore(endDate));\n \n const isBankAccountMatch = (!bankaccount_id || statement.bankaccount_id === bankaccount_id);\n \n return isDateInRange && isBankAccountMatch;\n });\n\n // Update the filteredBankStatements state\n this.setState({ filteredBankStatements: filteredStatements });\n };\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n render() {\n // Calculate the total balance for the footer\n const { bankStatements } = this.props;\n const { prevStatement } = this.state;\n\n const totalCredit = bankStatements.reduce((acc, statement) => acc + (statement.credit || 0), 0);\n const totalDebit = bankStatements.reduce((acc, statement) => acc + (statement.Debit || 0), 0);\n const totalBalance = bankStatements.length > 0\n ? bankStatements[bankStatements.length - 1].account_balance\n : 0;\n\n const { SearchBar } = Search;\n const bankStatement = this.state.bankStatement;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: bankStatements.length,\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\",\n order: \"desc\",\n },\n ];\n\n const { filteredBankStatements, startDate, endDate, bankaccount_id } = this.state;\n\n\n // Define the structure of your table headers\n const tableHeaders = [\n {\n dataField: 'clearence_datetime',\n text: 'Clearance Date',\n sort: true,\n footer: '', // Empty footer for this column\n formatter: (cellContent, bankStatement) => {\n\n return (\n \n {moment(bankStatement.clearence_datetime).format(\"DD MMM YYYY, h:mm A\")}\n \n\n );\n },\n filter: textFilter(),\n },\n {\n dataField: 'account_name',\n text: 'Description',\n footer: '', // Empty footer for this column\n formatter: (cellContent, bankStatement) => (\n <>\n

\n {/* {bankStatement.account_name}{\", \"}\n {bankStatement.account_no}{\", \"} */}\n {bankStatement.mif_id && bankStatement.lab_name\n ? (\n \n MIF ID: {bankStatement.mif_id},\n Lab Name: {bankStatement.lab_name},\n Payment Mode: {bankStatement.payment_method},\n Status: {bankStatement.Status}\n \n ): bankStatement.mif_id && bankStatement.donor_name\n ? (\n \n MIF ID: {bankStatement.mif_id}, \n Donor Name: {bankStatement.donor_name}, \n Payment Mode: {bankStatement.payment_method}, \n Status: {bankStatement.Status}\n \n ) : bankStatement.mif_id && bankStatement.title\n ? (\n \n MIF ID: {bankStatement.mif_id}, \n Adv Title: {bankStatement.title}, \n Payment Mode: {bankStatement.payment_method}, \n Status: {bankStatement.Status}\n \n ): bankStatement.mof_id && bankStatement.lab_name\n ? (\n \n MOF ID: {bankStatement.mof_id}, \n Lab Name: {bankStatement.lab_name}, \n Payment Mode: {bankStatement.payment_method}, \n Status: {bankStatement.Status}\n \n ): bankStatement.mof_id && bankStatement.business_name\n ? (\n \n MOF ID: {bankStatement.mof_id}, \n Lab Name: {bankStatement.business_name}, \n Payment Mode: {bankStatement.payment_method}, \n Status: {bankStatement.Status}\n \n ): \n BTD ID: {bankStatement.btd_id}, \n Payment Mode: {bankStatement.payment_method}, \n Status: {bankStatement.Status}\n \n }

\n \n ), filter: textFilter(), // Add a text filter for this column // Add a text filter for this column\n },\n // {\n // dataField: 'Status',\n // text: 'Payment Mode',\n // footer: '', // Empty footer for this column\n // formatter: (cellContent, bankStatement) => (\n // <>\n // {bankStatement.payment_method}{\", \"}\n // {bankStatement.Status}\n // \n // ), filter: textFilter(), // Add a text filter for this column\n // },\n {\n dataField: 'credit',\n text: 'Credit',\n footer: `Total Credit: ${(totalCredit || \"--\").toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}`,\n footerClasses: 'text-end', // Set the color of the footer to red\n formatter: (cellContent, bankStatement) => (\n
\n {(bankStatement.credit || \"--\").toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n
\n ),\n filter: textFilter(),\n },\n {\n dataField: 'Debit',\n text: 'Debit',\n footer: `Total Debit: ${(totalDebit || \"--\").toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}`,\n footerClasses: 'text-end', // Set the color of the footer to red\n formatter: (cellContent, bankStatement) => (\n
\n {(bankStatement.Debit || \"--\").toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n
\n ),\n filter: textFilter(),\n },\n {\n dataField: 'account_balance',\n text: 'Balance',\n footer: `Total Balance: ${totalBalance.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}`,\n footerClasses: 'text-end', // Set the color of the footer to red\n formatter: (cellContent, bankStatement) => (\n
\n {bankStatement.account_balance.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n
\n ),\n filter: textFilter(),\n },\n ];\n\n // Check if bankStatements is empty\n const isDataEmpty = isEmpty(bankStatements);\n // Calculate the total balance for the footer\n const { bankaccounts } = this.props;\n const bankaccountList = [];\n for (let i = 0; i < bankaccounts.length; i++) {\n let flag = 0;\n // for (let j = 0; j < bankaccounts.length; j++) {\n // if (banks[i].id == bankaccounts[j].bank_id) {\n // flag = 1;\n // }\n // }\n if (!flag) {\n bankaccountList.push(\n {\n label: `${bankaccounts[i].bank_name} - ${bankaccounts[i].account_no}`,\n value: `${bankaccounts[i].id}`,\n }\n );\n }\n }\n\n return (\n \n
\n \n Bank Account Statements | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n \n {bankStatement.bankaccount_id ? (\n
\n \n\n {\n const selectedAccountId = e.target.value;\n this.props.history.push(`/bank-account-statements/${selectedAccountId}`);\n }}\n >\n \n \n
\n ) : (\n
\n \n\n {\n const selectedAccountId = selectedOption.value;\n this.props.history.push(`/bank-account-statements/${selectedAccountId}`);\n }}\n options={bankaccountList}\n placeholder=\"Select Bank Account...\"\n />\n
\n )}\n \n \n
\n \n this.setState({ startDate: date })}\n className=\"form-control\"\n dateFormat=\"d MMM yyyy\"\n />\n
\n \n \n
\n \n this.setState({ endDate: date })}\n className=\"form-control\"\n dateFormat=\"d MMM yyyy\"\n />\n
\n \n
\n
\n

\n Previous Balance:{\" \"}\n \n {prevStatement !== null && prevStatement !== undefined\n ? prevStatement.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n : \"N/A\"}\n\n

\n
\n
\n {/* Add filter and footer to BootstrapTable */}\n \n {props => (\n
\n {/* */}\n \n
\n )}\n \n
\n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nAccountStatements.propTypes = {\n match: PropTypes.object,\n bankStatements: PropTypes.array,\n className: PropTypes.any,\n onGetBankStatements: PropTypes.func,\n onGetBankaccounts: PropTypes.func,\n bankaccounts: PropTypes.array,\n history: PropTypes.any,\n\n};\n\nconst mapStateToProps = ({ accountStatements, bankaccounts }) => ({\n bankStatements: accountStatements.bankStatements,\n bankaccounts: bankaccounts.bankaccounts,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetBankStatements: id => dispatch(getBankStatements(id)),\n onGetBankaccounts: id => dispatch(getBankaccounts(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(AccountStatements));","import {\n GET_ACCOUNT_STATEMENTS,\n GET_ACCOUNT_STATEMENTS_SUCCESS,\n GET_ACCOUNT_STATEMENTS_FAIL,\n GET_BANK_STATEMENTS,\n GET_BANK_STATEMENTS_SUCCESS,\n GET_BANK_STATEMENTS_FAIL,\n} from \"./actionTypes\";\n\n\nexport const getBankStatements = id => ({\n type: GET_BANK_STATEMENTS,\n payload: id,\n});\n\nexport const getBankStatementsSuccess = bankStatements => ({\n type: GET_BANK_STATEMENTS_SUCCESS,\n payload: bankStatements,\n});\n\nexport const getBankStatementsFail = error => ({\n type: GET_BANK_STATEMENTS_FAIL,\n payload: error,\n});\n\n\nexport const getAccountStatements = id => ({\n type: GET_ACCOUNT_STATEMENTS,\n payload: id,\n});\n\nexport const getAccountStatementsSuccess = accountStatements => ({\n type: GET_ACCOUNT_STATEMENTS_SUCCESS,\n payload: accountStatements,\n});\n\nexport const getAccountStatementsFail = error => ({\n type: GET_ACCOUNT_STATEMENTS_FAIL,\n payload: error,\n});\n","export default __webpack_public_path__ + \"static/media/CREDITCARDFAILED.3b89640e.png\";","import React from 'react';\nimport { Container, Card, CardBody, Button } from 'reactstrap';\nimport creditCardFailedImage from '../../assets/images/CREDITCARDFAILED.png';\n\nconst CreditCardCheckout = () => {\n return (\n
\n \n
\n \n \n \n
Payment Failed
\n

\n Your transaction has failed due to some technical
error.\n Please try again.\n

\n
\n \n
\n
\n
\n
\n
\n );\n};\n\nexport default CreditCardCheckout;","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Col, Modal, ModalBody, Row } from \"reactstrap\";\n\nclass ApproveUnapproveModal extends Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n render() {\n return (\n \n \n \n \n \n
\n \n

Are you sure?

\n

You won&t be able to revert this!

\n
\n \n
\n \n \n
\n \n Yes\n \n \n Cancel\n \n
\n \n
\n
\n \n
\n );\n }\n}\n\nApproveUnapproveModal.propTypes = {\n onCloseClick: PropTypes.func,\n onYesClick: PropTypes.func,\n show: PropTypes.any,\n};\n\nexport default ApproveUnapproveModal;\n","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalBody,\n} from \"reactstrap\";\nimport filterFactory, { textFilter} from 'react-bootstrap-table2-filter';\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getAllLabsList,\n // approveUnapproveB2BClient,\n} from \"store/finance-admin/actions\";\n\nimport ApproveUnapproveModal from \"components/Common/ApproveUnapproveModal\";\nimport \"assets/scss/table.scss\";\n\nclass PendingB2BClients extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n allLabsList: [],\n id: \"\",\n isApproved: false,\n unapprovedModal: false,\n tooltipContent: [\"Worst\", \"Bad\", \"Average\", \"Good\", \"Excellent\"],\n pendingB2BClient: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n pendingB2BClientListColumns: [\n \n {\n text: \"Lab ID\",\n dataField: \"id\",\n sort: true,\n // hidden: true,\n formatter: (cellContent, pendingB2BClient) => (\n <>{pendingB2BClient.id}\n ),filter: textFilter(),\n },\n {\n dataField: \"type\",\n text: \"Lab Type\",\n sort: true,\n\n formatter: (cellContent, pendingB2BClient) => (\n <>\n \n {/* {patientTestAppointment.payment_status == \"Not Paid\" ? ( */}\n {pendingB2BClient.type}\n \n \n ),filter: textFilter(),\n },\n // {\n // dataField: \"name\",\n // text: \"Lab Name\",\n // sort: true,\n // },\n {\n dataField: \"name\",\n text: \"Lab Name\",\n sort: true,\n\n formatter: (cellContent, pendingB2BClient) => (\n <>\n \n {/* {patientTestAppointment.payment_status == \"Not Paid\" ? ( */}\n \n {pendingB2BClient.name}\n \n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"city\",\n text: \"Lab City\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"office\",\n text: \"Lab Office\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"donation_amount\",\n text: \"Total Donation Appointment Payable\",\n sort: true,\n formatter: (cellContent, pendingB2BClient) => (\n <>\n
\n {pendingB2BClient.donation_amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}
\n \n ),filter: textFilter(),\n },\n // {\n // dataField: \"email\",\n // text: \"Email\",\n // sort: true,\n // },\n // {\n // dataField: \"landline\",\n // text: \"Landline\",\n // sort: true,\n // },\n // {\n // dataField: \"registered_at\",\n // text: \"Registered at\",\n // sort: true,\n // formatter: (cellContent, pendingB2BClient) => (\n // <>\n // \n // {new Date(pendingB2BClient.registered_at).toLocaleString(\n // \"en-US\"\n // )}\n // \n // \n // ),\n // },\n // {\n // dataField: \"website_url\",\n // text: \"Website URL\",\n // sort: true,\n // formatter: (cellContent, pendingB2BClient) => (\n // <>\n // \n // {pendingB2BClient.website_url}\n // \n // \n // ),\n // },\n // {\n // dataField: \"data\",\n // text: \"id\",\n // isDummyField: true,\n // editable: false,\n // text: \"Action\",\n // formatter: (cellContent, pendingB2BClient) => (\n // <>\n // this.handleApprovedEvent(pendingB2BClient.id)}\n // >\n // \n // {\" \"}\n // this.handleUnapprovedEvent(pendingB2BClient.id)}\n // >\n // \n // \n // \n // ),\n // },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.handleApprovedEvent = this.handleApprovedEvent.bind(this);\n }\n\n // componentDidMount() {\n // const { allLabsList, onGetAllLabsList } = this.props;\n // onGetAllLabsList();\n // this.setState({ allLabsList });\n // }\n componentDidMount() {\n const { allLabsList, onGetAllLabsList } = this.props;\n onGetAllLabsList(this.state.user_id);\n this.setState({ allLabsList });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleApprovedEvent = id => {\n this.setState({ id: id, isApproved: true, unapprovedModal: true });\n };\n\n handleUnapprovedEvent = id => {\n this.setState({ id: id, isApproved: false, unapprovedModal: true });\n };\n\n // callOnApproveUnapproveB2BClient = () => {\n // const { onApproveUnapproveB2BClient, onGetAllLabsList } = this.props;\n\n // const data = {\n // id: this.state.user_id,\n // b2bId: this.state.id,\n // isApproved: this.state.isApproved,\n // };\n\n // // calling to unapprove lab\n // onApproveUnapproveB2BClient(data);\n\n // // Calling to update list record\n // setTimeout(() => {\n // onGetAllLabsList();\n // }, 2000);\n\n // this.setState({ unapprovedModal: false });\n // };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { allLabsList } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: allLabsList.length, // replace later with size(allLabsList),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n Labs List | Lab Hazir\n \n\n this.setState({ unapprovedModal: false })}\n />\n\n \n {/* Render Breadcrumbs */}\n \n \n

Note: Only those Labs will be shown here whose total Payable Amount of All Donation Allocate and Result Uploaded Appointments.

\n

Note: Click on Lab Name to See List of Appointments.

\n\n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n {/*
\n \n \n
*/}\n
\n \n \n \n {allLabsList.map((lab, index) => {\n if (lab.donor_balance !== undefined && lab.donor_balance !== null) {\n return (\n
\n Donation Available Balance: {lab.donor_balance.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n
\n );\n }\n return null; // Don't render anything for labs without donor_balance\n })}\n\n\n\n\n
\n \n \n
\n \n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nPendingB2BClients.propTypes = {\n match: PropTypes.object,\n allLabsList: PropTypes.array,\n className: PropTypes.any,\n onGetAllLabsList: PropTypes.func,\n // onApproveUnapproveB2BClient: PropTypes.func,\n};\nconst mapStateToProps = ({ financeAdmin }) => ({\n allLabsList: financeAdmin.allLabsList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n // onApproveUnapproveB2BClient: data =>\n // dispatch(approveUnapproveB2BClient(data)),\n onGetAllLabsList: () => dispatch(getAllLabsList()),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PendingB2BClients));\n","import React, { Component } from \"react\";\nimport Select from \"react-select\";\nimport MetaTags from \"react-meta-tags\";\nimport PropTypes from \"prop-types\";\nimport { any } from \"prop-types\";\nimport { Field, Formik } from \"formik\";\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\nimport { CITIES, DISTRICTS } from \"helpers/global_variables_helper\";\n\nimport {\n Container,\n Row,\n Col,\n Table,\n Input,\n Nav,\n NavItem,\n NavLink,\n TabContent,\n TabPane,\n Card,\n Form,\n FormGroup,\n Label,\n CardBody,\n CardTitle,\n Alert,\n} from \"reactstrap\";\n\nimport classnames from \"classnames\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"../../components/Common/Breadcrumb\";\n\nimport {\n addNewCreateBank,\n} from \"store/createbank/actions\";\n\nclass DonorPayment extends Component {\n constructor(props) {\n super(props);\n this.state = {\n createBanks: [],\n complaintSuccess:\"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n name: \"\",\n phone: \"\",\n email: \"\",\n registered_at: \"\",\n registered_by: \"\",\n isDisabled: true,\n isRequiredFilled: true,\n createBank: \"\",\n checkedoutData: \"\",\n selectedGroup: null,\n };\n this.handleSelectGroup = this.handleSelectGroup.bind(this);\n }\n\n handleSelectGroup = selectedGroup => {\n this.setState({ selectedGroup });\n };\n\n handleProceedClick = () => {\n this.setState({\n createBank: {\n name: this.state.name,\n phone: this.state.phone,\n email: this.state.email,\n registered_at: this.state.registered_at,\n registered_by: this.state.registered_by,\n },\n });\n\n // API call to get the checkout items\n const { onAddCreateBankData } = this.props;setTimeout(() => {\n console.log(\n onAddCreateBankData(this.state.createBank, this.state.user_id)\n );\n }, 1000);\n // If no error messages then show wait message\n setTimeout(() => {\n if (this.state.createBank) {\n this.setState({\n complaintSuccess:\n \"Bank Added Successfully\",\n });\n }\n }, 1000);\n setTimeout(() => {\n this.setState({\n complaintSuccess: \"\",\n phone: \"\",\n name: \"\",\n email: \"\",\n registered_at: \"\",\n registered_by: \"\",\n });\n }, 5000);\n setTimeout(() => {\n if (this.state.createBank) {\n this.props.history.push(\"/banks-list\");\n }\n }, 3000)\n };\n\n\n\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n\n const { createBanks } = this.props;\n if (\n isEmpty(prevProps.createBanks) &&\n !isEmpty(createBanks) &&\n size(createBanks) !== size(prevProps.createBanks)\n ) {\n this.setState({ createBanks });\n }\n }\n\n render() {\n return (\n \n
\n \n Bank | Lab Hazir - Dashboard\n \n \n {/* Render Breadcrumb */}\n \n \n
\n \n \n \n \n {!this.state.isRequiredFilled ? (\n \n Please fill the required fields.\n \n ) : null}\n {this.state.complaintSuccess && (\n \n {this.state.complaintSuccess}\n \n )}\n\n \n \n
\n\n \n {/* Bank Information */}\n \n {/*

\n Fill the Bank Information\n

*/}\n \n \n Bank Name\n \n *\n \n \n \n \n this.setState({\n name: e.target.value,\n })\n }\n />\n \n \n \n \n Phone\n \n *\n \n \n \n \n this.setState({\n phone: e.target.value,\n })\n }\n value={this.state.phone}\n // className={\n // \"form-control\" +\n // (errors.phone &&\n // touched.phone\n // ? \" is-invalid\"\n // : \"\")\n // }\n />\n \n \n \n \n Email\n \n *\n \n \n \n \n this.setState({\n email: e.target.value,\n })\n }\n value={this.state.email}\n // className={\n // \"form-control\" +\n // (errors.phone &&\n // touched.phone\n // ? \" is-invalid\"\n // : \"\")\n // }\n />\n \n \n \n \n \n Registered By\n \n *\n \n \n \n \n this.setState({\n registered_by: e.target.value,\n })\n }\n value={this.state.registered_by}\n // className={\n // \"form-control\" +\n // (errors.phone &&\n // touched.phone\n // ? \" is-invalid\"\n // : \"\")\n // }\n />\n \n \n\n
\n {/* \n */}\n
\n
\n \n \n \n \n
\n \n Register Bank{\" \"}\n \n
\n \n
\n \n
\n
\n
\n
\n
\n
\n );\n }\n}\n\nDonorPayment.propTypes = {\n match: PropTypes.object,\n history: any,\n createBanks: PropTypes.array,\n // onGetDonorPaymentItems: PropTypes.func,\n onAddCreateBankData: PropTypes.func,\n createBank: PropTypes.array,\n};\n\nconst mapStateToProps = ({ createBank }) => ({\n createBanks: createBank.createBanks,\n createBank: createBank.createBank,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n\n onAddCreateBankData: (createBank, id) =>\n dispatch(addNewCreateBank(createBank, id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(DonorPayment));\n\n","import React, { Component } from \"react\";\nimport Select from \"react-select\";\nimport MetaTags from \"react-meta-tags\";\nimport PropTypes from \"prop-types\";\nimport { any } from \"prop-types\";\nimport { Field, Formik } from \"formik\";\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\nimport {\n Container,\n Row,\n Col,\n Table,\n Input,\n Nav,\n NavItem,\n NavLink,\n TabContent,\n TabPane,\n Card,\n Form,\n FormGroup,\n Label,\n CardBody,\n CardTitle,\n Alert,\n} from \"reactstrap\";\n\nimport classnames from \"classnames\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"../../components/Common/Breadcrumb\";\n\nimport {\n getBanks,\n addNewBankAccount,\n getBankAccounts\n} from \"store/bankaccount/actions\";\n\nimport { CITIES, DISTRICTS } from \"helpers/global_variables_helper\";\n\n\nclass DonorPayment extends Component {\n constructor(props) {\n super(props);\n this.state = {\n bankAccounts: [],\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n complaintSuccess:\"\",\n bank_id: \"\",\n account_no: \"\",\n categorey: \"\",\n account_type:\"\",\n currency: \"\",\n opening_balance: \"\",\n creating_at: \"\",\n status: \"\",\n isDisabled: true,\n isRequiredFilled: true,\n bankAccount: \"\",\n checkedoutData: \"\",\n city: \"\",\n address: \"\",\n branch_no: \"\",\n selectedGroup: null,\n };\n this.handleSelectGroup = this.handleSelectGroup.bind(this);\n }\n\n handleSelectGroup = selectedGroup => {\n this.setState({ selectedGroup });\n };\n\n handleProceedClick = () => {\n this.setState({\n bankAccount: {\n bank_id: this.state.bank_id,\n account_no: this.state.account_no,\n categorey: this.state.categorey,\n account_type: this.state.account_type,\n currency: this.state.currency,\n opening_balance: this.state.opening_balance,\n creating_at: this.state.creating_at,\n status: this.state.status,\n city: this.state.city,\n address: this.state.address,\n branch_no: this.state.branch_no,\n },\n });\n const { onAddBankAccountData } = this.props;\n setTimeout(() => {\n console.log(\n onAddBankAccountData(this.state.bankAccount, this.state.user_id)\n );\n }, 2000);\n // If no error messages then show wait message\n setTimeout(() => {\n if (this.state.bankAccount) {\n window.scrollTo({top: 0, left: 0, behavior: 'smooth'});\n this.setState({\n complaintSuccess:\n \"Bank Account Added Successfully\",\n });\n }\n }, 1000);\n setTimeout(() => {\n this.setState({\n complaintSuccess: \"\",\n bank_id: \"\",\n account_no: \"\",\n categorey: \"\",\n account_type:\"\",\n currency: \"\",\n opening_balance: \"\",\n creating_at: \"\",\n status: \"\",\n city: \"\",\n address: \"\",\n branch_no: \"\",\n });\n }, 4000);\n setTimeout(() => {\n if (this.state.bankAccount) {\n this.props.history.push(\"/bankaccounts-list\");\n }\n }, 3000)\n \n };\n\n componentDidMount() {\n const { banks, onGetbanks } = this.props;\n if (banks && !banks.length) {\n onGetbanks();\n }\n this.setState({ banks });\n\n const { bankAccounts, onGetBankAccounts } = this.props;\n if (bankAccounts && !bankAccounts.length) {\n onGetBankAccounts(this.props.match.params.id);\n }\n this.setState({ bankAccounts });\n }\n\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n\n const { bankAccounts } = this.props;\n if (\n isEmpty(prevProps.bankAccounts) &&\n !isEmpty(bankAccounts) &&\n size(bankAccounts) !== size(prevProps.bankAccounts)\n ) {\n this.setState({ bankAccounts });\n }\n }\n\n render() {\n const { banks } = this.props;\n const { bankAccounts } = this.props;\n const bankAccount = this.state.bankAccount;\n\n\n\n const bankList = [];\n for (let i = 0; i < banks.length; i++) {\n let flag = 0;\n // for (let j = 0; j < bankAccounts.length; j++) {\n // if (banks[i].id == bankAccounts[j].bank_id) {\n // flag = 1;\n // }\n // }\n if (!flag) {\n bankList.push({\n label: banks[i].name,\n value: banks[i].id,\n });\n }\n }\n\n return (\n \n
\n \n Create Bank Account | Lab Hazir - Dashboard\n \n \n {/* Render Breadcrumb */}\n \n {this.state.complaintSuccess && (\n \n {this.state.complaintSuccess}\n \n )}\n \n
\n \n \n \n \n {!this.state.isRequiredFilled ? (\n \n Please fill the required fields.\n \n ) : null}\n\n \n \n
\n\n \n {/* Bank Account Information */}\n \n

\n Fill in the necessary Information to create a Bank Account.\n

\n \n {/* Make field readonly in case of edit form */}\n {bankAccount.bank_id &&\n bankAccount.bank_id ? (\n
\n \n Bank Name\n \n\n \n \n {\n bankAccount.bank_name\n }\n \n \n \n
\n ) : (\n
\n \n Bank Name\n \n\n \n this.setState({\n bank_id:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.bank_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.bank_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={bankList}\n placeholder=\"Select Bank...\"\n />\n
\n Please select your Bank\n
\n \n
\n )}\n
\n \n \n Account No\n \n *\n \n \n \n \n this.setState({\n account_no: e.target.value,\n })\n }\n />\n \n \n \n \n Account Type\n \n *\n \n \n \n \n this.setState({\n account_type: e.target.value,\n })\n }\n defaultValue={this.state.account_type}\n className=\"form-select\"\n >\n \n --- Please select the Account Type ---\n \n \n \n\n \n \n \n \n \n Categorey\n \n *\n \n \n \n \n this.setState({\n categorey: e.target.value,\n })\n }\n defaultValue={this.state.categorey}\n className=\"form-select\"\n >\n \n --- Please select the Categorey\n ---\n \n \n \n \n\n \n \n \n\n \n \n Currency\n \n *\n \n \n \n \n this.setState({\n currency: e.target.value,\n })\n }\n defaultValue={this.state.currency}\n className=\"form-select\"\n >\n {/* \n --- Please select the C\n ---\n */}\n \n \n \n \n \n \n \n \n \n \n \n this.setState({\n opening_balance: e.target.value,\n })\n }\n />\n \n \n \n \n Bank City\n \n *\n \n \n \n \n this.setState({\n city: selectedGroup.value,\n })\n }\n className=\"defautSelectParent\"\n options={CITIES}\n placeholder=\"Select City...\"\n />\n \n \n \n \n Bank Address\n \n *\n \n \n \n \n this.setState({\n address: e.target.value,\n })\n }\n />\n \n \n \n \n \n \n this.setState({\n branch_no: e.target.value,\n })\n }\n />\n \n \n\n
\n {/* \n */}\n
\n
\n \n \n \n \n
\n \n Create{\" \"}\n \n
\n \n
\n \n
\n
\n
\n
\n
\n
\n );\n }\n}\n\nDonorPayment.propTypes = {\n match: PropTypes.object,\n banks: PropTypes.array,\n history: any,\n bankAccounts: PropTypes.array,\n onGetbanks: PropTypes.func,\n // onGetDonorPaymentItems: PropTypes.func,\n onAddBankAccountData: PropTypes.func,\n bankAccount: PropTypes.array,\n onGetBankAccounts: PropTypes.array,\n};\n\nconst mapStateToProps = ({ bankAccount }) => ({\n bankAccounts: bankAccount.bankAccounts,\n bankAccount: bankAccount.bankAccount,\n banks: bankAccount.banks,\n\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetbanks: () => dispatch(getBanks()),\n onGetBankAccounts: id => dispatch(getBankAccounts(id)),\n onAddBankAccountData: (bankAccount, id) =>\n dispatch(addNewBankAccount(bankAccount, id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(DonorPayment));\n\n","import {\n GET_BANK_ACCOUNTS,\n GET_BANK_ACCOUNTS_FAIL,\n GET_BANK_ACCOUNTS_SUCCESS,\n GET_BANKS,\n GET_BANKS_SUCCESS,\n GET_BANKS_FAIL,\n ADD_NEW_BANK_ACCOUNT,\n ADD_BANK_ACCOUNT_SUCCESS,\n ADD_BANK_ACCOUNT_FAIL,\n} from \"./actionTypes\";\n\nexport const getBanks = () => ({\n type: GET_BANKS,\n});\n\nexport const getBanksSuccess = banks => ({\n type: GET_BANKS_SUCCESS,\n payload: banks,\n});\n\nexport const getBanksFail = error => ({\n type: GET_BANKS_FAIL,\n payload: error,\n});\nexport const getBankAccounts = id => ({\n type: GET_BANK_ACCOUNTS,\n payload: id,\n});\n\nexport const getBankAccountsSuccess = bankAccounts => ({\n type: GET_BANK_ACCOUNTS_SUCCESS,\n payload: bankAccounts,\n});\n\nexport const getBankAccountsFail = error => ({\n type: GET_BANK_ACCOUNTS_FAIL,\n payload: error,\n});\n\nexport const addNewBankAccount = (bankAccount, id) => ({\n type: ADD_NEW_BANK_ACCOUNT,\n payload: { bankAccount, id },\n});\n\nexport const addBankAccountSuccess = bankAccount => ({\n type: ADD_BANK_ACCOUNT_SUCCESS,\n payload: bankAccount,\n});\n\nexport const addBankAccountFail = error => ({\n type: ADD_BANK_ACCOUNT_FAIL,\n payload: error,\n});\n","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalBody,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { getB2bAllClientsList } from \"store/b2b-all-clients/actions\";\nimport \"assets/scss/table.scss\";\n\nclass B2bAllClientsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n b2bAllClients: [],\n // id: \"\",\n b2bAllClient: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n b2bAllClientListColumns: [\n {\n dataField: \"id\",\n text: \"B2B ID\",\n sort: true,\n formatter: (cellContent, b2bAllClient) => (\n <>\n {b2bAllClient.id}\n \n ),\n },\n {\n dataField: \"business_name\",\n text: \"Business Name\",\n sort: true,\n formatter: (cellContent, b2bAllClient) => (\n <>\n {/* {patientTestAppointment.payment_status == \"Not Paid\" ? ( */}\n \n {b2bAllClient.business_name}\n \n \n ),\n },\n {\n dataField: \"email\",\n text: \"Email\",\n sort: true,\n },\n {\n dataField: \"landline\",\n text: \"Landline\",\n sort: true,\n },\n {\n dataField: \"website_url\",\n text: \"Website\",\n sort: true,\n formatter: (cellContent, b2bAllClient) => (\n <>\n \n {b2bAllClient.website_url}\n \n \n ),\n },\n \n ],\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { b2bAllClients, onGetB2bAllClientsList } = this.props;\n onGetB2bAllClientsList(this.state.user_id);\n this.setState({ b2bAllClients });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { b2bAllClients } = this.props;\n const { onGetB2bAllClientsList } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: b2bAllClients.length, // replace later with size(b2bAllClients),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n B2B Clients List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n
\n
\n \n
\n \n \n
\n \n \n
\n \n
\n {/* \n \n \n \n */}\n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nB2bAllClientsList.propTypes = {\n match: PropTypes.object,\n b2bAllClients: PropTypes.array,\n className: PropTypes.any,\n onGetB2bAllClientsList: PropTypes.func,\n};\nconst mapStateToProps = ({ b2bAllClients }) => ({\n b2bAllClients: b2bAllClients.b2bAllClientsList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetB2bAllClientsList: id => dispatch(getB2bAllClientsList(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(B2bAllClientsList));\n","import {\n GET_B2B_ALL_CLIENTS_LIST,\n GET_B2B_ALL_CLIENTS_LIST_SUCCESS,\n GET_B2B_ALL_CLIENTS_LIST_FAIL,\n} from \"./actionTypes\";\n\nexport const getB2bAllClientsList = () => ({\n type: GET_B2B_ALL_CLIENTS_LIST,\n payload: {},\n});\n\nexport const getB2bAllClientsListSuccess =\n b2bAllClients => ({\n type: GET_B2B_ALL_CLIENTS_LIST_SUCCESS,\n payload: b2bAllClients,\n });\n\nexport const getB2bAllClientsListFail = error => ({\n type: GET_B2B_ALL_CLIENTS_LIST_FAIL,\n payload: error,\n});\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Tooltip } from \"@material-ui/core\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Button,\n Row,\n Modal,\n ModalHeader,\n ModalBody,\n Label,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport {\n getLabs,\n addNewLabShare,\n getB2bLabSharesList,\n updateLabShare,\n updateAllLabShare,\n} from \"store/b2b-lab-shares/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport ConfirmModal from \"components/Common/ConfirmModal\";\nimport \"assets/scss/table.scss\";\n\nclass B2bLabSharesList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n b2bLabSharesList: [],\n b2bLabShare: \"\",\n modal: false,\n addmodal: false,\n confirmModal: false,\n isEditAll: true,\n id: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n b2bLabShareListColumns: [\n {\n dataField: \"id\",\n text: \"Lab ID\",\n sort: true,\n formatter: (cellContent, b2bLabShare) => (\n <>\n {b2bLabShare.id}\n \n ),\n },\n {\n dataField: \"name\",\n text: \"Lab Name\",\n sort: true,\n \n },\n {\n dataField: \"city\",\n text: \"Lab City\",\n sort: true,\n },\n {\n dataField: \"b2b_shares\",\n text: \"B2B Shares\",\n sort: true,\n formatter: (cellContent, b2bLabShare) => (\n <>\n {(b2bLabShare.b2b_shares* 100).toFixed()}%\n \n ),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, b2bLabShare) => (\n \n \n \n this.handleEditBtnClick(b2bLabShare)}\n >\n \n \n \n ),\n },\n ],\n };\n this.handleEditBtnClick = this.handleEditBtnClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleEditAllBtnClick = this.handleEditAllBtnClick.bind(this);\n this.handleb2bLabShareClicks = this.handleb2bLabShareClicks.bind(this);\n\n\n }\n\n componentDidMount() {\n const { labs, onGetlabs } = this.props;\n if (labs && !labs.length) {\n onGetlabs();\n }\n this.setState({ labs });\n\n const { b2bLabSharesList, onGetb2bLabSharesList } = this.props;\n if (b2bLabSharesList && !b2bLabSharesList.length) {\n onGetb2bLabSharesList(this.props.match.params.id);\n }\n this.setState({ b2bLabSharesList });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleEditAllBtnClicks = () => {\n this.setState({ b2bLabShare: \"\", isEdit: false, lab_id: \"\" });\n this.toggle();\n };\n handleEditAllBtnClick = () => {\n this.setState({ isEditAll: true, b2bLabShare: \"\" });\n\n this.toggle();\n };\n // Select\n handleSelectGroup = selectedGroup => {\n this.setState({ b2bLabShare: selectedGroup.value });\n };\n\n handleAPICall = () => {\n const { onGetb2bLabSharesList, onUpdateAllLabShare, onUpdateLabShare } =\n this.props;\n\n if (this.state.isEditAll) {\n onUpdateAllLabShare(this.state.b2bLabShare);\n\n // console.log(onAddNewLabShare(this.state.b2bLabShare));\n\n setTimeout(() => {\n onGetb2bLabSharesList(this.props.match.params.id);\n\n setTimeout(() => {\n this.setState({ b2bLabSharesList: this.props.b2bLabSharesList });\n }, 1000);\n }, 1000);\n } else {\n onUpdateLabShare(this.state.b2bLabShare);\n\n setTimeout(() => {\n onGetb2bLabSharesList(this.props.match.params.id);\n\n setTimeout(() => {\n this.setState({ b2bLabSharesList: this.props.b2bLabSharesList });\n }, 1000);\n }, 1000);\n }\n };\n\n handleb2bLabShareClicks = () => {\n this.setState({ b2bLabShare: \"\", isEdit: false, lab_id: \"\" });\n this.setState({ addmodal: true }); };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { b2bLabSharesList } = this.props;\n if (\n !isEmpty(b2bLabSharesList) &&\n size(prevProps.b2bLabSharesList) !== size(b2bLabSharesList)\n ) {\n this.setState({ b2bLabSharesList: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n\n handleEditBtnClick = arg => {\n const b2bLabShare = arg;\n\n this.setState({\n isEditAll: false,\n b2bLabShare: b2bLabShare,\n // id: discountLab.id,\n });\n\n this.toggle();\n };\n\n // /* Insert,Update Delete data */\n // handleEditBtnClick = arg => {\n // const b2bLabShare = arg;\n\n // this.setState({\n // b2bLabShare: {\n // id: b2bLabShare.id,\n // lab_name: b2bLabShare.lab_name,\n // // unit_name: offeredTest.unit_name,\n // lab_id: b2bLabShare.lab_id,\n // b2b_shares: b2bLabShare.b2b_shares,\n // },\n // isEdit: true,\n // });\n\n // this.toggle();\n // };\n\n\n render() {\n const { SearchBar } = Search;\n\n const { b2bLabSharesList } = this.props;\n const { labs } = this.props;\n // const { units } = this.props;\n\n const { isEdit, isEditAll, deleteModal } = this.state;\n\n const { onAddNewLabShare, onUpdateLabShare, onGetb2bLabSharesList } =\n this.props;\n const b2bLabShare = this.state.b2bLabShare;\n\n const pageOptions = {\n sizePerPage: 10000,\n totalSize: b2bLabSharesList.length, // replace later with size(b2bLabSharesList),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n const labList = [];\n for (let i = 0; i < labs.length; i++) {\n let flag = 0;\n\n // Check if test available in our database is already being offered by lab\n // If yes then don't push it in labList\n for (let j = 0; j < b2bLabSharesList.length; j++) {\n if (labs[i].id == b2bLabSharesList[j].lab_id) {\n flag = 1;\n }\n }\n if (!flag) {\n labList.push({\n label: labs[i].name,\n value: labs[i].id,\n });\n }\n }\n\n return (\n \n
\n \n Lab Hazir | B2B Client Shares\n \n this.setState({ confirmModal: false })}\n />\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n
\n
\n \n \n {/*
\n \n Edit All\n \n
*/}\n \n \n
\n \n Edit All\n \n {/* \n \n Add New Lab\n */}\n
\n \n
\n \n \n
\n \n\n \n\n \n {!!isEdit\n? \"Edit B2B Share\"\n: \"Add B2B Shares\"}\n \n \n {\n const updateLabShare = {\n id: b2bLabShare.id,\n b2b_shares: values.b2b_shares,\n };\n\n // update TestAppointment\n onUpdateLabShare(updateLabShare);\n\n setTimeout(() => {\n onGetb2bLabSharesList(\n this.props.match.params.id\n );\n }, 1000);\n\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n \n
\n \n {\n this.setState({\n b2bLabShare: {\n id: this.state\n .b2bLabShare.id,\n b2b_id:\n this.props.match\n .params.id,\n b2b_shares:\n e.target.value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.b2b_shares &&\n touched.b2b_shares\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n \n
\n

Add New Lab

\n \n this.setState({\n addmodal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
\n \n {\n console.log(\"Inside on submit..\")\n if (isEdit) {\n const updateLabShare = {\n id: b2bLabShare.id,\n lab_id: parseInt(\n values.lab_id\n ),\n b2b_shares: values.b2b_shares,\n };\n\n // update b2bLabShare\n onUpdateLabShare(\n updateLabShare,\n this.props.match.params.id\n );\n\n setTimeout(() => {\n onGetb2bLabSharesList(\n this.props.match.params.id\n );\n }, 1000);\n } else {\n console.log(\"Inside else..\");\n const newLabShare = {\n id:\n Math.floor(\n Math.random() * (30 - 20)\n ) + 20,\n lab_id: this.state.lab_id,\n b2b_shares:\n values.b2b_shares,\n };\n\n // save new b2bLabShare\n onAddNewLabShare(\n newLabShare,\n this.props.match.params.id\n );\n\n setTimeout(() => {\n onGetb2bLabSharesList(\n this.props.match.params.id\n );\n }, 1000);\n }\n this.setState({\n addmodal: false,\n });\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n {/* Make field readonly in case of edit form */}\n {b2bLabShare.lab_id &&\n b2bLabShare.lab_id ? (\n
\n \n \n \n {\n b2bLabShare.lab_name\n }\n \n \n
\n ) : (\n
\n \n \n this.setState({\n lab_id:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.lab_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.lab_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={labList}\n placeholder=\"Select Lab...\"\n />\n\n
\n Please select your Lab\n
\n
\n )}\n
\n \n {\n this.setState({\n b2bLabShare: {\n id: this.state\n .b2bLabShare.id,\n b2b_id:\n this.props.match\n .params.id,\n b2b_shares:\n e.target.value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.b2b_shares &&\n touched.b2b_shares\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n \n
\n \n
\n {/* \n \n \n \n */}\n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nB2bLabSharesList.propTypes = {\n match: PropTypes.object,\n labs: PropTypes.array,\n // units: PropTypes.array,\n b2bLabSharesList: PropTypes.array,\n className: PropTypes.any,\n onGetb2bLabSharesList: PropTypes.func,\n onGetlabs: PropTypes.func,\n // onGetUnits: PropTypes.func,\n onAddNewLabShare: PropTypes.func,\n onUpdateLabShare: PropTypes.func,\n onUpdateAllLabShare: PropTypes.func,\n\n};\n\nconst mapStateToProps = ({ b2bLabShares }) => ({\n b2bLabSharesList: b2bLabShares.b2bLabSharesList,\n labs: b2bLabShares.labs,\n // units: b2bLabSharesList.units,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetlabs: () => dispatch(getLabs()),\n // onGetUnits: () => dispatch(getUnits()),\n onGetb2bLabSharesList: id => dispatch(getB2bLabSharesList(id)),\n onAddNewLabShare: (b2bLabShare, id) =>\n dispatch(addNewLabShare(b2bLabShare, id)),\n onUpdateLabShare: b2bLabShare => dispatch(updateLabShare(b2bLabShare)),\n onUpdateAllLabShare: b2bLabShare => dispatch(updateAllLabShare(b2bLabShare)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(B2bLabSharesList));","import React, { Component } from \"react\";\nimport Select from \"react-select\";\nimport MetaTags from \"react-meta-tags\";\nimport PropTypes from \"prop-types\";\nimport { any } from \"prop-types\";\nimport { Field, Formik } from \"formik\";\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\nimport {\n Container,\n Row,\n Col,\n Table,\n Input,\n Nav,\n NavItem,\n NavLink,\n TabContent,\n TabPane,\n Card,\n Form,\n FormGroup,\n Label,\n CardBody,\n CardTitle,\n Alert,\n} from \"reactstrap\";\n\nimport classnames from \"classnames\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"../../components/Common/Breadcrumb\";\n\nimport {\n addNewB2bPayment,\n} from \"store/b2bcheckout/actions\";\n\nclass B2bPayment extends Component {\n constructor(props) {\n super(props);\n this.state = {\n b2bPayments: [],\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n // b2b_name: \"\",\n address_type: \"\",\n address: \"\",\n amount: \"\",\n paid_at: \"\",\n deposited_at: \"\",\n deposit_bank: \"\",\n payment_method: \"Card\",\n card_number: \"\",\n name_on_card: \"\",\n expiry_date: \"\",\n cvv_code: \"\",\n cheque_no: \"\",\n cheque_image: \"\",\n deposit_slip: \"\",\n is_cleared: \"\",\n cleared_at: \"\",\n is_settled: \"\",\n isDisabled: true,\n isRequiredFilled: true,\n b2bPayment: \"\", \n checkedoutData: \"\",\n activeTab: \"1\",\n selectedGroup: null,\n };\n this.toggleTab = this.toggleTab.bind(this);\n this.handleSelectGroup = this.handleSelectGroup.bind(this);\n }\n\n toggleTab(tab) {\n if (this.state.activeTab !== tab) {\n this.setState({\n activeTab: tab,\n });\n }\n }\n\n handleSelectGroup = selectedGroup => {\n this.setState({ selectedGroup });\n };\n\n handleProceedClick = () => {\n const canProceed = this.checkForValidations();\n if (canProceed) {\n console.log(\"Can call API......\");\n this.setState({\n b2bPayment: {\n amount: this.state.amount,\n payment_method: this.state.payment_method,\n card_number: this.state.card_number,\n name_on_card: this.state.name_on_card,\n expiry_date: this.state.expiry_date,\n cvv_code: this.state.cvv_code,\n address_type: this.state.address_type,\n address: this.state.address,\n paid_at: this.state.paid_at,\n deposited_at: this.state.deposited_at,\n deposit_bank: this.state.deposit_bank,\n cheque_no: this.state.cheque_no,\n cheque_image: this.state.cheque_image,\n deposit_slip: this.state.deposit_slip,\n is_cleared: this.state.is_cleared,\n cleared_at: this.state.cleared_at,\n is_settled: this.state.is_settled,\n },\n });\n\n // API call to get the checkout items\n const { onAddB2bPaymentData } = this.props;\n setTimeout(() => {\n console.log(\n onAddB2bPaymentData(this.state.b2bPayment, this.state.user_id)\n );\n }, 2000);\n\n setTimeout(() => {\n this.setState({ b2bPayment: this.props.b2bPayment });\n\n // If checkout operation is successful.\n if (this.props.b2bPayment) {\n this.props.history.push(\"/b2b-appointment\");\n }\n }, 2000);\n }\n };\n\n checkForValidations = () => {\n // Check if patient's name, age and appointment Booked for is filled\n if (\n this.state.amount\n ) {\n // Check if card information is filled in case of payment method is Card\n if (this.state.payment_method == \"Card\") {\n if (\n this.state.card_number &&\n this.state.name_on_card &&\n this.state.expiry_date &&\n this.state.cvv_code\n ) {\n this.setState({ isRequiredFilled: true });\n return true;\n } else {\n this.setState({ isRequiredFilled: false });\n return false;\n }\n }\n // If patient's payment method is not Card (Cash) then set isRequiredFilled to true\n else {\n this.setState({ isRequiredFilled: true });\n return true;\n }\n } else {\n this.setState({ isRequiredFilled: false });\n return false;\n }\n };\n\n // componentDidMount() {\n\n // // API call to get the checkout items\n // const { onGetB2bPaymentItems } = this.props;\n // setTimeout(() => {\n // onGetB2bPaymentItems(this.state.user_id, \"Yes\");\n // }, 1000);\n\n // setTimeout(() => {\n // this.setState({ b2bPayments: this.props.b2bPayments });\n // }, 2000);\n // }\n // componentDidMount() {\n // // API call to get the checkout items\n // const { onGetB2bPaymentItems } = this.props;\n // onGetB2bPaymentItems(this.state.user_id, \"Yes\");\n // this.setState({ b2bPayments: this.props.b2bPayments });\n // }\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n\n const { b2bPayments } = this.props;\n if (\n isEmpty(prevProps.b2bPayments) &&\n !isEmpty(b2bPayments) &&\n size(b2bPayments) !== size(prevProps.b2bPayments)\n ) {\n this.setState({ b2bPayments });\n }\n\n // Timeout functions to hide alerts after sometime......\n // setTimeout(() => {\n // this.setState({ isRequiredFilled: true });\n // }, 10000);\n }\n\n render() {\n return (\n \n
\n \n B2bPayment | Lab Hazir - Dashboard\n \n \n {/* Render Breadcrumb */}\n \n \n
\n \n \n \n \n \n {!this.state.isRequiredFilled ? (\n \n Please fill the required fields.\n \n ) : null}\n\n \n \n \n \n
\n \n Payment information\n \n

\n Fill the card payment only if your payment method\n is card\n

\n
\n
\n \n this.setState({\n payment_method: e.target.value,\n })\n }\n />\n \n {\" \"}\n Cash on Spot\n \n
\n\n
\n \n this.setState({\n payment_method: e.target.value,\n })\n }\n />\n \n {\" \"}\n Cheque\n \n
\n
\n \n this.setState({\n payment_method: e.target.value,\n })\n }\n />\n \n {\" \"}\n Credit / Debit Card\n \n
\n
\n\n \n \n \n this.setState({\n amount: e.target.value,\n })\n }\n />\n \n\n {this.state.payment_method == \"Card\" ? (\n
\n
\n For card Payment\n
\n
\n
\n \n \n \n this.setState({\n card_number: e.target.value,\n })\n }\n />\n \n \n \n \n \n \n this.setState({\n name_on_card: e.target.value,\n })\n }\n />\n \n \n \n \n \n \n this.setState({\n expiry_date: e.target.value,\n })\n }\n />\n \n \n \n \n \n \n this.setState({\n cvv_code: e.target.value,\n })\n }\n />\n \n \n \n
\n
\n
\n ) : null}\n\n {this.state.payment_method == \"Cheque\" ? (\n
\n
\n For Cheque Payment\n
\n
\n
\n \n \n \n this.setState({\n Cheque: e.target.value,\n })\n }\n defaultValue={this.state.Cheque}\n className=\"form-select\"\n >\n \n --- Please select the Type\n ---\n \n \n \n \n \n\n {this.state.Cheque == \"Pick_from\" ? (\n
\n \n Pick From\n \n \n this.setState({\n Pick_from: e.target.value,\n })\n }\n />\n
\n ) : null}\n\n {this.state.Cheque == \"Deliever_to\" ? (\n
\n \n Delivered To\n \n \n // this.setState({\n // picked_from: e.target.value,\n // })\n // }\n />\n
\n ) : null}\n\n
\n
\n
\n\n ) : null}\n\n {this.state.payment_method == \"Cash\" ? (\n
\n
\n For Cash Payment\n
\n
\n
\n \n \n \n this.setState({\n Cash: e.target.value,\n })\n }\n defaultValue={this.state.Cash}\n className=\"form-select\"\n >\n \n --- Please select the Type\n ---\n \n \n \n \n \n\n {this.state.Cash == \"Pick_from\" ? (\n
\n \n Pick From\n \n \n this.setState({\n Pick_from: e.target.value,\n })\n }\n />\n
\n ) : null}\n\n {this.state.Cash == \"Deliever_to\" ? (\n
\n \n Delivered To\n \n \n // this.setState({\n // picked_from: e.target.value,\n // })\n // }\n />\n
\n ) : null}\n\n
\n\n
\n
\n ) : null}\n\n
\n \n
\n
\n
\n \n \n {/* \n Back to-\nShopping Cart{\" \"}\n */}\n \n \n
\n \n Proceed to\n Shipping{\" \"}\n \n
\n \n
\n \n
\n
\n
\n
\n
\n
\n );\n }\n}\n\nB2bPayment.propTypes = {\n match: PropTypes.object,\n history: any,\n b2bPayments: PropTypes.array,\n // onGetB2bPaymentItems: PropTypes.func,\n onAddB2bPaymentData: PropTypes.func,\n b2bPayment: PropTypes.array,\n};\n\n// const mapStateToProps = state => ({\n// b2bPayments: state.b2bcheckout.b2bPayments,\n// checkedoutData: state.b2bcheckout.checkedoutData,\n// });\nconst mapStateToProps = ({ b2bPayments }) => ({\n b2bPayments: b2bPayments.b2bPayments,\n b2bPayment: b2bPayments.b2bPayment,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n\n onAddB2bPaymentData: (b2bPayment, id) =>\n dispatch(addNewB2bPayment(b2bPayment, id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(B2bPayment));\n\n","import {\n // GET_DONOR_PAYMENTS,\n // GET_DONOR_PAYMENTS_FAIL,\n // GET_DONOR_PAYMENTS_SUCCESS,\n ADD_NEW_B2B_PAYMENT,\n ADD_B2B_PAYMENT_SUCCESS,\n ADD_B2B_PAYMENT_FAIL,\n} from \"./actionTypes\";\n\n// export const getB2bPayments = id => ({\n// type: GET_DONOR_PAYMENTS,\n// payload: id,\n// });\n\n// export const getB2bPaymentsSuccess = b2bPayments => ({\n// type: GET_DONOR_PAYMENTS_SUCCESS,\n// payload: b2bPayments,\n// });\n\n// export const getB2bPaymentsFail = error => ({\n// type: GET_DONOR_PAYMENTS_FAIL,\n// payload: error,\n// });\n\nexport const addNewB2bPayment = (b2bPayment, id) => ({\n type: ADD_NEW_B2B_PAYMENT,\n payload: { b2bPayment, id },\n});\n\nexport const addB2bPaymentSuccess = b2bPayment => ({\n type: ADD_B2B_PAYMENT_SUCCESS,\n payload: b2bPayment,\n});\n\nexport const addB2bPaymentFail = error => ({\n type: ADD_B2B_PAYMENT_FAIL,\n payload: error,\n});\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Card, CardBody, Col, Table, Container, Row } from \"reactstrap\";\nimport { isEmpty, map } from \"lodash\";\nimport moment from 'moment';\n\nimport 'react-datepicker/dist/react-datepicker.css';\nimport DatePicker from 'react-datepicker';\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport { getAccountStatements } from \"store/account-statements/actions\";\n\nimport \"assets/scss/table.scss\";\n\nclass AccountStatements extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n accountStatements: [],\n accountStatement: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n account_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n prevStatement: null,\n startDate: null,\n endDate: null,\n };\n this.toggle = this.toggle.bind(this);\n }\n fetchData = () => {\n if (this.state.user_id) {\n const { onGetAccountStatements } = this.props;\n const userId =\n this.state.account_type === \"labowner\"\n ? this.state.user_id\n : this.props.match.params.id;\n\n // Only make the API call if both start and end dates are selected\n if (this.state.startDate && this.state.endDate) {\n onGetAccountStatements(userId);\n }\n }\n };\n componentDidMount() {\n const currentMonthStart = moment().startOf('month');\n const currentMonthEnd = moment().endOf('month');\n\n this.setState({\n startDate: currentMonthStart.toDate(),\n endDate: currentMonthEnd.toDate(),\n });\n\n this.fetchData();\n }\n\n componentDidUpdate(prevProps, prevState) {\n if (\n prevState.startDate !== this.state.startDate ||\n prevState.endDate !== this.state.endDate\n ) {\n // Fetch data based on date filters\n this.fetchData();\n }\n\n if (\n this.props.accountStatements.length > 0 &&\n this.props.accountStatements !== prevProps.accountStatements\n ) {\n // Find the index of the last statement that falls within the date range\n const lastIndex = this.props.accountStatements.findIndex((statement) => {\n const statementDate = new Date(statement.ordered_at);\n return (\n statementDate >= this.state.startDate &&\n statementDate <= this.state.endDate\n );\n });\n\n // Check if there's a previous statement\n const newPrevStatement =\n lastIndex > 0\n ? this.props.accountStatements[lastIndex - 1].statement\n : 0;\n\n if (newPrevStatement !== this.state.prevStatement) {\n this.setState({\n prevStatement: newPrevStatement,\n });\n }\n }\n }\n\n\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n const { accountStatements } = this.props;\n const { startDate, endDate } = this.state;\n\n // Filter data based on selected dates\n const filteredStatements = accountStatements.filter((statement) => {\n const orderedAt = moment(statement.ordered_at);\n return (\n (!startDate || orderedAt.isSameOrAfter(startDate)) &&\n (!endDate || orderedAt.isSameOrBefore(endDate))\n );\n });\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: accountStatements.length, // replace later with size(accountStatements),\n custom: true,\n };\n\n // Sort statements based on ordered_at in ascending order\n // filteredStatements.sort((a, b) => {\n // return moment(a.ordered_at) - moment(b.ordered_at);\n // });\n const thStyle = {\n border: '1px solid white',\n textAlign: 'center',\n verticalAlign: 'middle',\n };\n\n // var total_testby_labhazir = this.props.accountStatements.total_testby_labhazir\n // // var authenticated = \"{{total_testby_labhazir}}\"\n // console.log(total_testby_labhazir)\n\n return (\n \n
\n \n Account Statements | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n
\n \n this.setState({ startDate: date })}\n className=\"form-control\"\n dateFormat=\"d MMM yyyy\"\n\n />\n
\n \n
\n \n this.setState({ endDate: date })}\n className=\"form-control\"\n dateFormat=\"d MMM yyyy\"\n\n />\n
\n\n \n
\n \n
\n {/*
\n Credit: Amount that Lab has to pay LabHazir.

\n Debit: Amount that Lab will receive from LabHazir.\n
*/}\n
\n \n NOte: Auto Email will be send to Lab of monthly statement.\n \n
\n
\n \n Note: If Balance is positive value that means Lab will pay the same amount to LabHazir and if Balance is negative that means Lab will receive the same amount from LabHazir.\n\n \n
\n
\n \n Margin of Lab = Total without Discount - (LH Referral fee) - (Discount by Lab) - (Counter Discount by Lab) + (Home Sampling Amount)\n \n
\n
\n \n Referral Fee of Lab Hazir = Decided Percentage referral free of Total without Discount - (Discount by Lab Hazir)\n \n
\n\n
\n
\n

\n Previous Balance:{\" \"}\n \n {this.state.prevStatement !== null\n ? this.state.prevStatement.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n : \"N/A\"}\n \n

\n
\n \n \n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {/* \n \n */}\n \n {/* */}\n \n \n {filteredStatements.length > 0 ? (\n\n \n {filteredStatements.map((accountStatement, i) => (\n <>\n {accountStatement.transaction_type == \"In\" ? (\n \n \n \n \n {accountStatement.payment_status == \"Not Paid\" ? (\n \n ) : (\n \n\n )}\n {/* */}\n \n\n {/* */}\n \n {/* */}\n \n \n {/* */}\n \n {/* */}\n \n\n \n\n {/* */}\n \n \n\n {/* */}\n\n {/* \n\n \n */}\n \n {/* */}\n \n ) : accountStatement.transaction_type == \"Out\" ? (\n\n \n \n \n \n {accountStatement.payment_status == \"Not Paid\" ? (\n \n ) : (\n \n\n )}\n \n \n \n \n \n \n\n \n \n\n\n \n\n\n\n {/* \n \n */}\n \n {/* */}\n \n ) :\n accountStatement.payment_status == \"Paid\" ? (\n\n \n \n \n \n {/*

*/}\n {accountStatement.payment_status == \"Not Paid\" ? (\n

\n ) : (\n \n\n )}\n {/*

*/}\n {/* */}\n \n\n {/* */}\n \n {/* */}\n \n \n {/* */}\n \n {/* */}\n \n \n {accountStatement.after_counterdiscount_lab_share === 0 ? (\n \n ) : (\n (accountStatement.after_counterdiscount_lab_share !== 0 && accountStatement.payment_method === \"Card\") ? (\n \n ) : (\n \n\n )\n )}\n\n {/* */}\n {accountStatement.labhazir_share === 0 ? (\n \n ) : (\n (accountStatement.labhazir_share !== 0 && (accountStatement.payment_method === \"Cash\" || accountStatement.payment_method === \"Donation\")) ? (\n \n\n\n\n ) : (\n \n\n )\n )}\n\n\n\n {/* \n \n */}\n \n {/* */}\n \n\n ) : accountStatement.payment_status == \"Allocate\" ? (\n \n \n \n \n {accountStatement.payment_status == \"Not Paid\" ? (\n \n ) : (\n \n\n )}\n \n\n {/* */}\n \n {/* */}\n \n \n {/* */}\n \n {/* */}\n \n \n\n \n\n {/* */}\n \n\n {/* */}\n\n {/* \n \n */}\n \n {/* */}\n \n ) : (null)\n }\n \n )\n )}\n \n \n \n \n \n \n \n \n \n\n \n \n\n {/* */}\n {/* \n */}\n \n \n \n \n ) : (\n null)}\n
DateIDPatient NameStatusTotal Without DiscountHome Sampling AmountDiscount By LabCounter Discount By LabDiscount By LabHazirPayable After DiscountPayment Received ByMargin of LabReferrel Fee of LabHazirPayment Received By LabHazirCreditDebitBalanceIs Settled
\n

\n {moment(accountStatement.ordered_at).format(\"DD MMM YYYY\")}\n

\n
\n
\n MIF ID: {accountStatement.order_id}\n
\n
\n

\n {accountStatement.patient_name}\n

\n
\n\n \n {accountStatement.payment_method},{\" \"}\n {accountStatement.payment_status}\n \n\n \n {accountStatement.payment_method},{\" \"}\n {accountStatement.payment_status}\n \n

\n {accountStatement.dues_before_discount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {accountStatement.dues_before_discount == 0 ? (\n

\n {accountStatement.dues_before_discount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.dues_before_discount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n

\n {accountStatement.sample_collector_amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {accountStatement.sample_collector_amount == 0 ? (\n

\n {accountStatement.sample_collector_amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.sample_collector_amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n

\n {accountStatement.discounted_by_lab.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {accountStatement.discounted_by_lab == 0 ? (\n

\n {accountStatement.discounted_by_lab.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.discounted_by_lab.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n {accountStatement.lab_counter_discount == 0 ? (\n

\n {accountStatement.lab_counter_discount.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.lab_counter_discount.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n

\n {accountStatement.discounted_by_labhazir.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {accountStatement.tax_amount == 0 ? (\n

\n {accountStatement.tax_amount.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n //

\n // Tax =\n //

\n null\n )}\n\n
\n

\n {accountStatement.dues.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {accountStatement.tax_amount == 0 ? (\n

\n {accountStatement.tax_amount}\n

\n\n ) : (\n //

\n // {accountStatement.tax_amount.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n //

\n null\n )}\n\n
\n {accountStatement.after_counterdiscount_lab_share == 0 ? (\n

\n {accountStatement.after_counterdiscount_lab_share.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.after_counterdiscount_lab_share.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n

\n {accountStatement.labhazir_share.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {accountStatement.labhazir_share == 0 ? (\n

\n {accountStatement.payment_method == \"Cash\" ? (\n \n {accountStatement.dues.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null\n )}

\n\n ) : (\n

\n {accountStatement.payment_method == \"Cash\" ? (\n \n {accountStatement.dues.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null\n )}

\n )}\n\n
\n

\n {accountStatement.payment_method === \"Cash\" ? (\n \n {accountStatement.tax_amount != 0 ? (\n

\n {accountStatement.Receivable.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")} - {accountStatement.tax_amount.toFixed(0).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}tax\n -\n

\n ) : (\n

\n {accountStatement.Receivable.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n -\n\n

\n )}\n \n ) : (\n accountStatement.payment_method === \"Donation\" ? (\n \n {accountStatement.payable.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : null\n )}\n

\n
\n

\n {accountStatement.payment_method == \"Cash\" ? (\n \n {accountStatement.dues.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null\n )}\n

\n
\n

\n {accountStatement.payment_method == \"Card\" ? (\n \n {accountStatement.dues.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null\n )}\n {accountStatement.payment_method == \"Donation\" ? (\n \n {accountStatement.dues.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null\n )}\n

\n
\n

\n {accountStatement.payment_method == \"Card\" ? (\n \n {accountStatement.tax_amount.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null\n )}\n {accountStatement.payment_method == \"Donation\" ? (\n

\n {accountStatement.tax_amount == 0 ? (\n \n {accountStatement.tax_amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null\n )}

\n\n ) : (\n

\n {accountStatement.tax_amount != 0 ? (\n \n {accountStatement.tax_amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null\n )}

\n )}\n

\n
\n

\n {accountStatement.payment_method == \"Cash\" ? (\n \n {accountStatement.Receivable.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null\n )}\n {accountStatement.payment_method == \"Donation\" ? (\n \n {accountStatement.Receivable.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null\n )}\n

\n
\n

\n {accountStatement.statement.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {accountStatement.is_settled == true ? (\n //
\n // \n //
\n \"--\"\n ) : (\n //
\n // \n //
\n \"--\"\n )}\n
\n

\n {moment(accountStatement.ordered_at).format(\"DD MMM YYYY\")}\n

\n
\n
\n MOF ID: {accountStatement.order_id}\n
\n
\n

\n {accountStatement.patient_name}\n

\n
\n\n \n {accountStatement.payment_method},{\" \"}\n {accountStatement.payment_status}\n \n\n \n {accountStatement.payment_method},{\" \"}\n {accountStatement.payment_status}\n \n {accountStatement.dues_before_discount == 0 ? (\n

\n {accountStatement.dues_before_discount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.dues_before_discount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n {accountStatement.sample_collector_amount == 0 ? (\n

\n {accountStatement.sample_collector_amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.sample_collector_amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n {accountStatement.discounted_by_lab == 0 ? (\n

\n {accountStatement.discounted_by_lab.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.discounted_by_lab.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n {accountStatement.lab_counter_discount == 0 ? (\n

\n {accountStatement.lab_counter_discount.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.lab_counter_discount.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n {accountStatement.tax_amount == 0 ? (\n

\n {accountStatement.tax_amount}\n

\n\n ) : (\n null\n )}\n\n
\n {accountStatement.tax_amount == 0 ? (\n

\n {accountStatement.tax_amount}\n

\n\n ) : (\n

\n {accountStatement.tax_amount.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n {/* {accountStatement.after_counterdiscount_lab_share == 0 ? (\n

\n {accountStatement.after_counterdiscount_lab_share.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.after_counterdiscount_lab_share.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )} */}\n\n
\n

\n {accountStatement.payment_method === \"Card\" ? (\n \n {accountStatement.tax_amount !== 0 ? (\n

\n {accountStatement.payable.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")} - {accountStatement.tax_amount.toFixed(0).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")} tax\n -\n\n

\n ) : (\n

\n {accountStatement.payable.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n -\n\n

\n )}\n \n ) : (\n accountStatement.payment_method === \"Donation\" ? (\n \n {accountStatement.payable.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n accountStatement.payment_method === \"Cheque\" ? (\n \n {accountStatement.tax_amount !== 0 ? (\n

\n {accountStatement.payable.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")} - {accountStatement.tax_amount.toFixed(0).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")} tax\n -\n

\n ) : (\n

\n {accountStatement.payable.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n -\n\n

\n )}\n
\n ) : null\n )\n )}\n

\n
\n {accountStatement.labhazir_share == 0 ? (\n

\n {accountStatement.labhazir_share.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.labhazir_share.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n

\n {accountStatement.payment_method == \"Cash\" ? (\n \n {accountStatement.payable.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null\n )}\n

\n
\n

\n {accountStatement.payment_method == \"Cash\" ? (\n \n {accountStatement.payable.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null\n )}\n

\n
\n

\n {accountStatement.payment_method == \"Card\" ? (\n \n {accountStatement.payable.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null\n )}\n {accountStatement.payment_method == \"Donation\" ? (\n \n {accountStatement.payable.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null\n )}\n {accountStatement.payment_method == \"Cheque\" ? (\n \n {accountStatement.payable.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null\n )}\n

\n
\n

\n {accountStatement.statement.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {accountStatement.is_settled == true ? (\n //
\n // \n //
\n \"--\"\n ) : (\n //
\n // \n //
\n \"--\"\n )}\n
\n

\n {moment(accountStatement.ordered_at).format(\"DD MMM YYYY\")}\n

\n
\n
\n {accountStatement.order_id}\n
\n
\n

\n {accountStatement.patient_name}\n

\n
\n\n \n {accountStatement.payment_method},{\" \"}\n {accountStatement.payment_status}\n \n\n \n {accountStatement.payment_method},{\" \"}\n {accountStatement.payment_status}\n \n

\n {accountStatement.dues_before_discount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {accountStatement.dues_before_discount == 0 ? (\n

\n {accountStatement.dues_before_discount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.dues_before_discount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n

\n {accountStatement.sample_collector_amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {accountStatement.sample_collector_amount == 0 ? (\n

\n {accountStatement.sample_collector_amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.sample_collector_amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n

\n {accountStatement.discounted_by_lab.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {accountStatement.discounted_by_lab == 0 ? (\n

\n {accountStatement.discounted_by_lab.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.discounted_by_lab.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n {accountStatement.lab_counter_discount == 0 ? (\n

\n {accountStatement.lab_counter_discount.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.lab_counter_discount.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n

\n {accountStatement.discounted_by_labhazir.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {accountStatement.discounted_by_labhazir == 0 ? (\n

\n {accountStatement.discounted_by_labhazir.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.discounted_by_labhazir.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n

\n {accountStatement.dues.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {accountStatement.dues == 0 ? (\n

\n {accountStatement.dues.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.dues.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n {!isEmpty(accountStatement.Receivable) ? (\n

\n {accountStatement.payment_method == \"Card\" ? (\n \n {\"Labhazir\"}\n \n ) : (\n null\n )}

\n\n ) : (\n

\n {accountStatement.payment_method == \"Cash\" || accountStatement.payment_method == \"Donation\" ? (\n \n {\"Lab\"}\n \n ) : (\n null\n )}

\n )}\n {!isEmpty(accountStatement.payable) ? (\n

\n {accountStatement.payment_method == \"Cash\" || accountStatement.payment_method == \"Donation\" ? (\n \n {\"Lab\"}\n \n ) : (\n null\n )}

\n ) : (\n

\n {accountStatement.payment_method == \"Card\" ? (\n \n {\"Labhazir\"}\n \n ) : (\n null\n )}

\n\n )}\n\n
\n

\n {accountStatement.after_counterdiscount_lab_share.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n

\n {accountStatement.after_counterdiscount_lab_share.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n -\n

\n
\n

\n {accountStatement.after_counterdiscount_lab_share.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n

\n {accountStatement.labhazir_share.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n

\n {accountStatement.labhazir_share.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n

\n {accountStatement.labhazir_share.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n +\n

\n
\n

\n {accountStatement.labhazir_share.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n

\n {accountStatement.payment_method == \"Card\" ? (\n \n {\"Labhazir\"}\n \n ) : (\n null\n )}\n\n

\n
\n

\n {accountStatement.payment_method == \"Cash\" ? (\n \n {accountStatement.payable.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null\n )}\n {accountStatement.payment_method == \"Donation\" ? (\n \n {accountStatement.payable.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null\n )}\n

\n
\n

\n {accountStatement.payment_method == \"Card\" ? (\n \n {accountStatement.Receivable.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null\n )}\n

\n
\n

\n {accountStatement.statement.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {accountStatement.is_settled == true ? (\n
\n \n
\n ) : (\n
\n \n
\n )}\n
\n

\n {moment(accountStatement.ordered_at).format(\"DD MMM YYYY\")}\n

\n
\n
\n {accountStatement.order_id}\n
\n
\n

\n {accountStatement.patient_name}\n

\n
\n\n \n {accountStatement.payment_method},{\" \"}\n {accountStatement.payment_status}\n \n\n \n {accountStatement.payment_method},{\" \"}\n {accountStatement.payment_status}\n \n {accountStatement.dues_before_discount == 0 ? (\n

\n {accountStatement.dues_before_discount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.dues_before_discount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n

\n {accountStatement.sample_collector_amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {accountStatement.sample_collector_amount == 0 ? (\n

\n {accountStatement.sample_collector_amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.sample_collector_amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n

\n {accountStatement.discounted_by_lab.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {accountStatement.discounted_by_lab == 0 ? (\n

\n {accountStatement.discounted_by_lab.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.discounted_by_lab.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n {accountStatement.lab_counter_discount == 0 ? (\n

\n {accountStatement.lab_counter_discount.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.lab_counter_discount.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n

\n {accountStatement.discounted_by_labhazir.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {accountStatement.discounted_by_labhazir == 0 ? (\n

\n {accountStatement.discounted_by_labhazir.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.discounted_by_labhazir.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n

\n {accountStatement.dues.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {accountStatement.dues == 0 ? (\n

\n {accountStatement.dues.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.dues.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n {accountStatement.labhazir_share == 0 ? (\n

\n {accountStatement.payment_method == \"Cash\" ? (\n \n {accountStatement.dues.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null\n )}

\n\n ) : (\n

\n {accountStatement.payment_method == \"Cash\" ? (\n \n {accountStatement.dues.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n LabHazir\n )}

\n )}\n\n
\n {accountStatement.after_counterdiscount_lab_share == 0 ? (\n

\n {accountStatement.after_counterdiscount_lab_share.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.after_counterdiscount_lab_share.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n

\n {accountStatement.labhazir_share.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n
\n {accountStatement.labhazir_share == 0 ? (\n

\n {accountStatement.labhazir_share.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n\n ) : (\n

\n {accountStatement.labhazir_share.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

\n )}\n\n
\n

\n {accountStatement.payment_method == \"Cash\" ? (\n \n {accountStatement.dues.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null\n )}\n

\n
\n

\n {accountStatement.payment_method == \"Card\" ? (\n \n {accountStatement.dues.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null)}\n

\n
\n

\n {accountStatement.payment_method == \"Cash\" ? (\n \n {accountStatement.payable.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null\n )}\n

\n
\n

\n {accountStatement.payment_method == \"Card\" ? (\n \n {accountStatement.Receivable.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ) : (\n null\n )}\n\n

\n
\n

\n {accountStatement.statement.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n // ? (\n // \"--\"\n // ) : (\n // \"--\"\n // )\n }\n

\n
\n {accountStatement.is_settled == true ? (\n
\n \n
\n ) : (\n
\n \n
\n )}\n
\n Total\n \n

\n {\n this.props.accountStatements.slice(-1).pop().total_testby_labhazir.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n

\n {\n this.props.accountStatements.slice(-1).pop().total_sample_collector.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n

\n {\n this.props.accountStatements.slice(-1).pop().total_discount_lab.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n

\n {\n this.props.accountStatements.slice(-1).pop().total_labcounterdiscount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n

\n {\n this.props.accountStatements.slice(-1).pop().total_discount_labhazir.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n

\n {\n this.props.accountStatements.slice(-1).pop().total_dues.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n

\n {\n \"--\"}\n

\n
\n

\n {\n this.props.accountStatements.slice(-1).pop().total_labshare.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n

\n {\n this.props.accountStatements.slice(-1).pop().total_labhazirshare.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n

\n {\n this.props.accountStatements.slice(-1).pop().total_payment_labhazir.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n

\n {\n this.props.accountStatements.slice(-1).pop().total_payable.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n

\n {\n this.props.accountStatements.slice(-1).pop().total_Receivable.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n

\n {\n this.props.accountStatements.slice(-1).pop().statement.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n }\n

\n
\n {\n }\n
\n
\n
\n
\n \n \n {/* Display the total count of statements here */}\n

Total Statements: {filteredStatements.length}

\n \n
\n
\n
\n
\n );\n }\n}\n\nAccountStatements.propTypes = {\n match: PropTypes.object,\n accountStatements: PropTypes.array,\n className: PropTypes.any,\n onGetAccountStatements: PropTypes.func,\n};\n\nconst mapStateToProps = ({ accountStatements }) => ({\n accountStatements: accountStatements.accountStatements,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetAccountStatements: id => dispatch(getAccountStatements(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(AccountStatements));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\n\nimport { Alert, Col, Container, Row, Label, Card, CardBody } from \"reactstrap\";\n\n// Redux\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nclass MedicalTestSheet extends Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n render() {\n return (\n \n
\n \n Offered Tests List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n
\n
\n

Instructions to fill the excel sheet:

\n
\n
    \n
  1. \n Add all the tests you are providing with details of\n the test in the corresponding row.\n
  2. \n
  3. \n If you are not offering the test that is in the\n list, leave the row empty. Please{\" \"}\n do not delete the row.\n
  4. \n {/*
  5. \n If you are offering a test that is not in the list,\n add the test at the end.\n
  6. */}\n
  7. \n Select from the drop down where drop down is\n provided.\n
  8. \n
  9. \n Enter within the limits applied to the fields.\n
  10. \n
  11. \n After correctly filling the sheet, email the file to\n us at labhazir@gmail.com\n
  12. \n
\n
\n
\n

\n \n Note: This sheet can be added only once by labhazir, After that you can change test details from your own portal.\n {/* Download button below:{\" \"} */}\n {\" \"}\n

\n

\n \n You can download the excel sheet by clicking the\n Download button below:{\" \"}\n {\" \"}\n

\n \n \n Download\n {\" \"}\n
\n
\n
\n
\n
\n
\n
\n
\n
\n );\n }\n}\n\nMedicalTestSheet.propTypes = {};\n\nconst mapStateToProps = state => {\n const { error } = state;\n return { error };\n};\n\nexport default withRouter(connect(mapStateToProps)(MedicalTestSheet));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\n\nimport { Alert, Col, Container, Row, Label, Card, CardBody } from \"reactstrap\";\n\n// Redux\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nclass CSRCheckout extends Component {\n constructor(props) {\n super(props);\n this.state = {\n guest_id: \"\",\n };\n }\n\n render() {\n return (\n // \n //
\n // \n // CSR Checkout | Lab Hazir\n // \n // \n // {/* Render Breadcrumbs */}\n // \n // \n // \n // \n //
\n //
\n //

Please Select

\n //
\n //

\n // Do not have an account?{\" \"}\n // \n // {\" \"}\n // Register\n // {\" \"}\n //

\n //
\n //
\n //

\n // Already have an account?{\" \"}\n // \n // {\" \"}\n // Proceed\n // {\" \"}\n //

\n //
\n //
\n \n //
\n //
\n //
\n //
\n //
\n //
\n //
\n \n
\n \n CSR Checkout | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n
\n
\n
Please Select
\n
\n

\n Do not have an account?{\" \"}\n \n {\" \"}\n Register\n {\" \"}{\" \"}\n

\n
\n
\n
\n

\n Already have an account?{\" \"}\n \n {\" \"}{\" \"}{\" \"}\n \n Proceed\n {\" \"}{\" \"}{\" \"}\n

\n
\n
\n
\n
\n
\n
\n
\n
\n );\n }\n}\n\nCSRCheckout.propTypes = {\n match: PropTypes.object,\n};\n\nconst mapStateToProps = state => {\n const { error } = state;\n return { error };\n};\n\nexport default withRouter(connect(mapStateToProps)(CSRCheckout));\n","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { isEmpty, map } from \"lodash\";\n\nimport {\n Card,\n Input,\n CardBody,\n Col,\n Container,\n Row,\n Table,\n Label,\n Modal,\n ModalBody,\n} from \"reactstrap\";\nimport filterFactory, { textFilter } from \"react-bootstrap-table2-filter\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { getPatientsList } from \"store/patients-list/actions\";\nimport \"assets/scss/table.scss\";\n// import { color } from \"html2canvas/dist/types/css/types/color\";\n\nclass PatientsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n patients: [],\n // id: \"\",\n patient: \"\",\n phone: \"\",\n guest_id: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n showNoResultMessage: false,\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n console.log(\"uuuuuuid\", this.props.match.params.uuid);\n const { patients, onGetPatientsList } = this.props;\n onGetPatientsList(this.state.user_id);\n this.setState({ patients });\n console.log(\"guest\", this.props.match.params.guest_id);\n }\n handleBlur = () => {\n // Reset the showNoResultMessage state to false before performing the search\n this.setState({ showNoResultMessage: false });\n\n // Calling API when focus is out of the text name and setting nearby tests array\n const { onGetPatientsList } = this.props;\n const data = {\n phone: this.state.phone,\n };\n\n onGetPatientsList(data);\n\n setTimeout(() => {\n // Update the patients state with the search results\n this.setState({ patients: this.props.patients }, () => {\n // Check if the patients array is empty after the search\n if (isEmpty(this.props.patients)) {\n // Show the \"Sorry no result found\" message immediately\n this.setState({ showNoResultMessage: true });\n }\n });\n }, 200);\n };\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { patients } = this.props;\n const { onGetPatientsList } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: patients.length, // replace later with size(patients),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n Patients Search | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n
\n \n Search By Phone No\n \n
\n \n this.setState({\n phone: e.target.value,\n })\n }\n value={this.state.phone}\n style={{ width: \"300px\" }} // Set the width for the input\n />\n \n
\n
\n \n
\n \n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n {patients.length > 0\n ? patients.map((patient, key) => (\n \n \n \n \n \n \n \n \n \n \n ))\n : null}\n
Account idNameEmailCity\n is_assosiatewith_anycorporate\n employee_id_cardAppointments
\n {patient.account_id}\n \n {patient.name}\n \n {patient.email}\n \n {patient.city}\n \n {patient.is_assosiatewith_anycorporate}\n \n {patient.employee_id_card}\n \n \n \n {console.log(\n \"corporate patient\",\n patient.is_assosiatewith_anycorporate,\n patient.employee_id_card\n )}\n {patient.is_assosiatewith_anycorporate &&\n patient.employee_id_card ? (\n {\n const uuid = this.props.match.params.uuid;\n const accountId = patient.corporate_id;\n const patientaccountId = patient.account_id;\n const url = uuid\n ? `/corporate-patients-book-appointments/${uuid}/${patientaccountId}/${accountId}`\n : `/corporate-patients-book-appointments/${patientaccountId}/${accountId}`;\n\n // Perform any additional actions or navigation logic here\n\n // For navigation, you can use react-router-dom's history or other navigation methods\n this.props.history.push(url);\n }}\n >\n Book Appointment\n \n ) : (\n {\n const uuid = this.props.match.params.uuid;\n const accountId = patient.account_id;\n const url = uuid\n ? `/tests-offered-labhazir/${uuid}/${accountId}`\n : `/tests-offered-labhazir/${accountId}`;\n\n // Perform any additional actions or navigation logic here\n\n // For navigation, you can use react-router-dom's history or other navigation methods\n this.props.history.push(url);\n }}\n >\n Book Appointment\n \n )}\n
\n
\n {isEmpty(patients) && (\n \n
\n \n "Labhazir will display patient details only

\n when you provide the correct phone number."\n \n
\n
\n )}\n
\n
\n
\n
\n
\n
\n
\n );\n }\n}\n\nPatientsList.propTypes = {\n match: PropTypes.object,\n patients: PropTypes.array,\n className: PropTypes.any,\n onGetPatientsList: PropTypes.func,\n history: PropTypes.any,\n};\nconst mapStateToProps = ({ patients }) => ({\n patients: patients.patientsList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetPatientsList: data => dispatch(getPatientsList(data)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PatientsList));\n","import {\n GET_PATIENTS_LIST,\n GET_PATIENTS_LIST_SUCCESS,\n GET_PATIENTS_LIST_FAIL,\n} from \"./actionTypes\";\n\nexport const getPatientsList = (phone) => ({\n type: GET_PATIENTS_LIST,\n payload: {phone},\n});\n\nexport const getPatientsListSuccess =\n patients => ({\n type: GET_PATIENTS_LIST_SUCCESS,\n payload: patients,\n });\n\nexport const getPatientsListFail = error => ({\n type: GET_PATIENTS_LIST_FAIL,\n payload: error,\n});\n","import React, { Component } from \"react\";\nimport MetaTags from \"react-meta-tags\";\n\nimport { Container, Row, Card, CardBody } from \"reactstrap\";\n\n// Redux\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nclass Disclaimer extends Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n render() {\n return (\n \n
\n \n Disclaimer | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n

Disclaimer

\n \n \n \n
\n
\n
\n

Lab Hazir is an online market place that connects patients with different laboratories for testing for wellness monitoring \n and does not guarantee a state of health. Results provided to you are for informational purposes only and not intended to replace the care of a medical practitioner. \n We do not diagnose, treat or cure medical conditions.

\n Lab Hazir does not replace the care of a medical practitioner or counselor and does not recommend self-diagnosis or self-medication. \n Depending on the nature of your testing, if you receive a "positive" or "indeterminate result", confirmatory testing may be recommended and \n may involve additional charges. You will be encouraged to seek medical attention for additional follow up.

\n \n

There is always a small possibility of an error or failure in laboratory testing. This is inherent to complex testing in any laboratory. Extensive measures are taken to avoid these errors** by the Laboratories. \n As a client of Lab Hazir, you have access to our extensive list of Laboratories and Diagnostic Centers.

\n \n

**False negative results can have two possible meanings; a person can be infected, but their body has not yet produced the appropriate indicators or your body is producing the appropriate indicators but for some reason the test failed to detect it. **False positive result can indicate that you tested positive for the appropriate indicators, when in fact, you are negative. Errors could also be broken test tubes, lost specimens, etc.

\n\n

Lab Hazir shall not be liable to you or anyone else for loss or injury caused in whole or part by procuring, compiling, interpreting, delivering, or reporting information through this website. Also, in no event shall Lab Hazir be held liable to you or anyone else for any decisions made or action taken or not taken by you in reliance on such information.

\n
\n
\n
\n
\n
\n
\n
\n
\n
\n );\n }\n}\n\nDisclaimer.propTypes = {};\n\nconst mapStateToProps = state => {\n const { error } = state;\n return { error };\n};\n\nexport default withRouter(connect(mapStateToProps)(Disclaimer));\n","import React, { Component } from \"react\";\nimport MetaTags from \"react-meta-tags\";\n\nimport { Container, Row, Card, CardBody } from \"reactstrap\";\n\n// Redux\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nclass AboutUs extends Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n render() {\n return (\n \n
\n \n About Us | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n

About Us

\n \n \n \n
\n
\n
\n

Lab Hazir, founded in 2022, is a privately held business that is comprised of advanced degreed business professionals who wanted to offer direct to consumer access to pathology lab testing in a fast, discrete, and affordable way.

\n \n

Our clients are comprised of people who are in need of laboratory testing, they like the convenience of our service and open market place to choose the lab. Lab Hazir ensures that our clients get as much information as they need to make the best testing choice.

\n \n

Through our website and help section defining the basic info about each test, we strive to offer the most complete information. From pricing, to incubation periods, general disease information and testing requirements.

\n\n

Early detection of any disease is important so that treatment may begin as soon as possible and to assist with delaying the onset of serious complications. Whether you want to take a preventive approach or need to monitor an existing condition, take this time explore the best lab on Lab Hazir that suits your needs.

\n
\n
\n
\n
\n
\n
\n
\n
\n
\n );\n }\n}\n\nAboutUs.propTypes = {};\n\nconst mapStateToProps = state => {\n const { error } = state;\n return { error };\n};\n\nexport default withRouter(connect(mapStateToProps)(AboutUs));\n","import React, { Component } from \"react\";\nimport MetaTags from \"react-meta-tags\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport { withRouter } from \"react-router-dom\";\n\nimport {\n Alert,\n Card,\n CardBody,\n Col,\n Container,\n Input,\n Label,\n Row,\n Button,\n} from \"reactstrap\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"../../components/Common/Breadcrumb\";\n\n// action\nimport { userChangePassword } from \"store/auth/changepwd/actions\";\n\nclass ChangePassword extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n old_password: \"\",\n new_password: \"\",\n new_password2: \"\",\n passwordFieldError: \"\",\n changeSuccessMsg: \"\",\n };\n }\n\n \n togglePasswordVisibility = () => {\n const passwordInput = document.querySelector('input[name=\"new_password\"]');\n const eyeIcon = document.getElementById('eye-icon');\n\n if (passwordInput && passwordInput.type === 'password') {\n passwordInput.type = 'text';\n eyeIcon.className = 'mdi mdi-eye-off-outline';\n } else if (passwordInput) {\n passwordInput.type = 'password';\n eyeIcon.className = 'mdi mdi-eye-outline';\n }\n };\n togglePassword2Visibility = () => {\n const passwordInput = document.querySelector('input[name=\"new_password2\"]');\n const eyeIcon2 = document.getElementById('eye-icon2');\n\n if (passwordInput && passwordInput.type === 'password') {\n passwordInput.type = 'text';\n eyeIcon2.className = 'mdi mdi-eye-off-outline';\n } else if (passwordInput) {\n passwordInput.type = 'password';\n eyeIcon2.className = 'mdi mdi-eye-outline';\n }\n };\n\n togglePassword3Visibility = () => {\n const passwordInput = document.querySelector('input[name=\"old_password\"]');\n const eyeIcon3 = document.getElementById('eye-icon3');\n\n if (passwordInput && passwordInput.type === 'password') {\n passwordInput.type = 'text';\n eyeIcon3.className = 'mdi mdi-eye-off-outline';\n } else if (passwordInput) {\n passwordInput.type = 'password';\n eyeIcon3.className = 'mdi mdi-eye-outline';\n }\n };\n render() {\n\n // Define a custom validation function\nconst checkOldPassword = (value) => {\n // Replace this with your actual logic to check if the old password is correct\n const isOldPasswordCorrect = checkOldPasswordFunction(value);\n\n return isOldPasswordCorrect;\n};\n\n// Define your validation schema\nconst validationSchema = Yup.object().shape({\n old_password: Yup.string()\n .required(\"Please enter your old password\")\n .test(\"old-password-match\", \"Old password is incorrect\", checkOldPassword),\n new_password: Yup.string().required(\"Please enter your new password\"),\n new_password2: Yup.string()\n .required(\"Please re-enter your new password\")\n .when(\"new_password\", {\n is: (val) => val && val.length > 0,\n then: Yup.string().oneOf(\n [Yup.ref(\"new_password\")],\n \"Passwords must match\"\n ),\n }),\n});\n // const { onAddNewComplaint } = this.props;\n\n return (\n \n \n
\n \n Lab Hazir | Change Password\n \n \n \n {this.state.changeSuccessMsg && (\n \n {this.state.changeSuccessMsg}\n \n )}\n\n \n \n \n \n (val && val.length > 0 ? true : false),\n then: Yup.string().oneOf(\n [Yup.ref(\"new_password\")],\n \"Both password need to be the same\"\n ),\n }),\n })}\n \n onSubmit={values => {\n this.props.userChangePassword(values);\n window.scrollTo({top: 0, left: 0, behavior: 'smooth'});\n\n setTimeout(() => {\n this.setState({\n passwordFieldError: this.props.changeError,\n changeSuccessMsg: this.props.changeSuccessMsg,\n });\n }, 1000);\n\n setTimeout(() => {\n this.setState({\n changeSuccessMsg: \"\",\n });\n\n values.old_password = \"\";\n values.new_password = \"\";\n values.new_password2 = \"\";\n this.props.history.push(\"/change-password\");\n }, 5000);\n }}\n >\n {({ errors, status, touched }) => (\n
\n
\n \n
\n {\n this.setState({\n passwordFieldError: null,\n });\n }}\n className={\n \"form-control\" +\n ((errors.old_password &&\n touched.old_password) ||\n this.state.passwordFieldError\n ? \" is-invalid\"\n : \"\")\n }\n />\n
\n \n \n \n
\n
\n \n
\n {this.state.passwordFieldError}\n
\n
\n\n
\n \n \n
\n {\n this.setState({\n passwordFieldError: null,\n });\n }}\n className={\n \"form-control\" +\n (errors.new_password && touched.new_password\n ? \" is-invalid\"\n : \"\")\n }\n />\n
\n \n \n \n
\n \n
\n
\n
\n \n
\n \n \n \n
\n
\n \n
\n
\n
\n \n Done\n \n
\n
\n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nChangePassword.propTypes = {\n match: PropTypes.object,\n changeError: PropTypes.any,\n changeSuccessMsg: PropTypes.string,\n history: PropTypes.object,\n userChangePassword: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const { changeError, changeSuccessMsg } = state.ChangePassword;\n return { changeError, changeSuccessMsg };\n};\n\nexport default withRouter(\n connect(mapStateToProps, { userChangePassword })(ChangePassword)\n);\n","import React, { Component } from \"react\"\nimport PropTypes from 'prop-types';\nimport ReactApexChart from \"react-apexcharts\"\n\nclass StackedColumnChart extends Component {\n constructor(props) {\n super(props)\n\n this.state = {\n options: {\n chart: {\n stacked: true,\n toolbar: {\n show: false,\n },\n zoom: {\n enabled: true,\n },\n\n },\n\n plotOptions: {\n bar: {\n horizontal: false,\n columnWidth: \"15%\",\n endingShape: \"rounded\",\n },\n },\n\n dataLabels: {\n enabled: false,\n },\n xaxis: {\n categories: [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\",\n ],\n },\n colors: [\"#556ee6\", \"#f1b44c\", \"#34c38f\"],\n legend: {\n position: \"bottom\",\n },\n fill: {\n opacity: 1,\n },\n },\n }\n }\n\n render() {\n return (\n \n \n \n )\n }\n}\n\nStackedColumnChart.propTypes = {\n chartSeries: PropTypes.any,\n periodData: PropTypes.any\n}\nexport default StackedColumnChart\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport { Row, Col, Card, CardBody } from \"reactstrap\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { withTranslation } from \"react-i18next\";\n\nimport profileImg from \"../../assets/images/profile-img.png\";\n\n// actions\nimport { getStaffProfile } from \"store/auth/staffprofile/actions\";\n\nclass AuditorSummary extends Component {\n constructor(props) {\n super(props);\n this.state = {\n name: \"\",\n email: \"\",\n photo:\"\",\n approvedLabs: \"\",\n pendingLabs: \"\",\n completedAudits: \"\",\n inProcessAudits: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n componentDidMount() {\n this.props.getStaffProfile(this.state.user_id);\n\n setTimeout(() => {\n this.setState({\n name: this.props.success.name,\n email: this.props.success.email,\n photo: process.env.REACT_APP_BACKENDURL + this.props.success.photo,\n completedAudits: this.props.success.completed_audits,\n inProcessAudits: this.props.success.inprocess_audits,\n approvedLabs: this.props.success.approved_labs,\n pendingLabs: this.props.success.pending_labs,\n });\n }, 1500);\n }\n\n render() {\n return (\n \n {/* Welcome profile */}\n \n \n
\n \n \n
\n
Welcome Back !
\n

Lab Hazir Dashboard

\n
\n \n \n \"\"\n \n
\n
\n \n \n \n
\n \n \n
\n \n
\n
\n {this.state.name}\n
\n

\n {this.state.email}\n

\n \n \n
\n \n View Profile{\" \"}\n \n \n
\n \n
\n
\n \n
\n
\n
\n \n\n {/* Revenue and Appointment Details */}\n \n \n \n \n \n
\n
\n

Assigned Audits

\n

{this.state.inProcessAudits}

\n
\n
\n \n \n \n
\n
\n
\n
\n \n\n \n \n \n
\n
\n

Completed Audits

\n

{this.state.completedAudits}

\n
\n
\n \n \n \n
\n
\n
\n
\n \n
\n \n
\n );\n }\n}\n\nAuditorSummary.propTypes = {\n t: PropTypes.any,\n match: PropTypes.object,\n location: PropTypes.object,\n error: PropTypes.any,\n success: PropTypes.any,\n getStaffProfile: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const { error, success } = state.StaffProfile;\n return { error, success };\n};\n\nexport default withRouter(\n connect(mapStateToProps, { getStaffProfile })(\n withTranslation()(AuditorSummary)\n )\n);\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\nimport {\n Container,\n Row,\n Col,\n Button,\n Card,\n CardBody,\n CardTitle,\n Modal,\n ModalHeader,\n ModalBody,\n ModalFooter,\n Table,\n Input,\n} from \"reactstrap\";\nimport { Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\n\n//import Charts\nimport StackedColumnChart from \"./StackedColumnChart\";\n\n//import action\nimport { getChartsData } from \"../../store/actions\";\n\n// Pages Components\nimport AuditorSummary from \"./AuditorSummary\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"../../components/Common/Breadcrumb\";\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport classNames from \"classnames\";\n\nclass Dashboard extends Component {\n constructor(props) {\n super(props);\n this.state = {\n email: [\n { title: \"Week\", linkto: \"#\", isActive: false },\n { title: \"Month\", linkto: \"#\", isActive: false },\n { title: \"Year\", linkto: \"#\", isActive: true },\n ],\n modal: false,\n subscribemodal: false,\n chartSeries: [],\n periodType: \"yearly\",\n };\n\n this.togglemodal.bind(this);\n }\n\n componentDidMount() {\n const { onGetChartsData } = this.props;\n setTimeout(() => this.setState({ subscribemodal: true }), 2000);\n onGetChartsData(\"yearly\");\n }\n\n togglemodal = () => {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n };\n\n togglesubscribemodal = () => {\n this.setState(prevState => ({\n subscribemodal: !prevState.subscribemodal,\n }));\n };\n\n componentDidUpdate(prevProps) {\n if (prevProps !== this.props) {\n this.setState({ ...this.state, chartSeries: this.props.chartsData });\n }\n }\n\n render() {\n return (\n \n
\n \n Dashboard | Lab\n \n \n {/* Render Breadcrumb */}\n \n \n \n\n \n \n \n
\n \n Email Sent\n \n
\n
    \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"weekly\",\n });\n this.props.onGetChartsData(\"weekly\");\n }}\n id=\"one_month\"\n >\n Week\n {\" \"}\n
  • \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"monthly\",\n });\n this.props.onGetChartsData(\"monthly\");\n }}\n id=\"one_month\"\n >\n Month\n \n
  • \n
  • \n {\n this.setState({\n ...this.state,\n periodType: \"yearly\",\n });\n this.props.onGetChartsData(\"yearly\");\n }}\n id=\"one_month\"\n >\n Year\n \n
  • \n
\n
\n
\n
\n \n \n \n \n \n \n
\n \n );\n }\n}\n\nDashboard.propTypes = {\n t: PropTypes.any,\n chartsData: PropTypes.any,\n onGetChartsData: PropTypes.func,\n};\n\nconst mapStateToProps = ({ Dashboard }) => ({\n chartsData: Dashboard.chartsData,\n});\n\nconst mapDispatchToProps = dispatch => ({\n onGetChartsData: periodType => dispatch(getChartsData(periodType)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withTranslation()(Dashboard));\n","import React, { Component } from \"react\";\nimport PropTypes from 'prop-types';\nimport ReactApexChart from \"react-apexcharts\";\nimport { Link } from \"react-router-dom\"; // Import Link for navigation\nimport classNames from \"classnames\"; // Import classNames for conditional classNames\n\nclass StackedColumnChart extends Component {\n constructor(props) {\n super(props);\n\n this.state = {\n options: {\n chart: {\n stacked: true,\n toolbar: {\n show: false,\n },\n zoom: {\n enabled: true,\n },\n },\n plotOptions: {\n bar: {\n horizontal: false,\n columnWidth: \"15%\",\n endingShape: \"rounded\",\n },\n },\n dataLabels: {\n enabled: false,\n },\n xaxis: {\n categories: [],\n },\n yaxis: {\n title: {\n text: 'Number of Appointments',\n }\n },\n colors: [\"#556ee6\", \"#f1b44c\", \"#34c38f\", \"#ff0000\", \"#00ff00\"],\n legend: {\n position: \"bottom\",\n },\n fill: {\n opacity: 1,\n },\n },\n series: [{\n name: 'Appointments',\n data: []\n }],\n selectedPeriod: 'monthly', // default period\n };\n }\n\n componentDidMount() {\n // Pass the user_id to fetchData if needed\n this.fetchData(this.state.selectedPeriod, this.props.user_id);\n }\n\n fetchData = (period, labId) => {\n fetch('https://labhazirapi.com/api/patient/ForSampleCollectorChartCalculation', {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({ user_id: labId }), // Use the provided lab ID\n })\n .then(response => response.json())\n .then(data => {\n console.log('Fetched data:', data);\n\n // Check if the period exists in the response\n const categories = data[period]?.categories || [];\n const seriesData = data[period]?.data || [];\n\n // Update state\n this.setState({\n options: {\n ...this.state.options,\n xaxis: {\n ...this.state.options.xaxis,\n categories: categories,\n },\n },\n series: [{\n name: 'Appointments',\n data: seriesData,\n }],\n }, () => {\n console.log('Updated state:', this.state);\n });\n })\n .catch(error => {\n console.error('Error fetching data:', error);\n });\n };\n\n handlePeriodChange = (newPeriod) => {\n this.setState({ selectedPeriod: newPeriod }, () => {\n this.fetchData(newPeriod, this.props.user_id); // Fetch data for the newly selected period\n });\n };\n\n render() {\n console.log('Rendering data:', this.state.series);\n\n return (\n \n
\n
    \n
  • \n this.handlePeriodChange('weekly')}\n id=\"one_month\"\n >\n Week\n \n
  • \n
  • \n this.handlePeriodChange('monthly')}\n id=\"one_month\"\n >\n Month\n \n
  • \n
  • \n this.handlePeriodChange('yearly')}\n id=\"one_month\"\n >\n Year\n \n
  • \n
\n
\n\n \n
\n );\n }\n}\n\nStackedColumnChart.propTypes = {\n user_id: PropTypes.string.isRequired, // Add this line to validate user_id prop\n chartSeries: PropTypes.any,\n periodData: PropTypes.any\n};\n\nexport default StackedColumnChart;\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport { Row, Col, Card, CardBody } from \"reactstrap\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { withTranslation } from \"react-i18next\";\n\nimport profileImg from \"../../assets/images/profile-img.png\";\n\n// actions\nimport { getSampleCollectorProfile } from \"store/auth/samplecollectorprofile/actions\";\n\nclass SampleCollectorSummary extends Component {\n constructor(props) {\n super(props);\n this.state = {\n name: \"\",\n phone: \"\",\n photo: \"\",\n samples_collected: \"\",\n samples_inprocess: \"\",\n monthlyRevenue: \"\",\n annualRevenue: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n componentDidMount() {\n this.props.getSampleCollectorProfile(this.state.user_id);\n\n setTimeout(() => {\n this.setState({\n name: this.props.success.name,\n phone: this.props.success.phone,\n photo: process.env.REACT_APP_BACKENDURL + this.props.success.photo,\n samples_collected: this.props.success.samples_collected,\n samples_inprocess: this.props.success.samples_inprocess,\n monthlyRevenue: this.props.success.monthly_revenue,\n annualRevenue: this.props.success.annual_revenue,\n });\n }, 1500);\n }\n\n render() {\n return (\n \n {/* Welcome profile */}\n \n \n
\n \n \n
\n
Welcome Back !
\n

Lab Hazir Dashboard

\n \n View Profile{\" \"}\n \n \n
\n \n \n \"\"\n \n
\n
\n \n\n \n \n
\n \n
\n \n \n \n
\n {this.state.name}\n
\n

\n {this.state.phone}\n

\n \n
\n \n
\n
\n \n\n {/* Revenue and Appointment Details */}\n \n \n \n \n \n
\n
\n

\n Appointments Completed\n

\n

\n {this.state.samples_collected}\n

\n
\n
\n \n \n \n
\n
\n
\n
\n \n\n \n \n \n
\n
\n

\n Appointments Inprocess\n

\n

\n {this.state.samples_inprocess}\n

\n
\n
\n \n \n \n
\n
\n
\n
\n \n
\n \n
\n );\n }\n}\n\nSampleCollectorSummary.propTypes = {\n t: PropTypes.any,\n match: PropTypes.object,\n location: PropTypes.object,\n error: PropTypes.any,\n success: PropTypes.any,\n getSampleCollectorProfile: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const { error, success } = state.SampleCollectorProfile;\n return { error, success };\n};\n\nexport default withRouter(\n connect(mapStateToProps, { getSampleCollectorProfile })(withTranslation()(SampleCollectorSummary))\n);\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\nimport {\n Container,\n Row,\n Col,\n Button,\n Card,\n CardBody,\n CardTitle,\n Modal,\n ModalHeader,\n ModalBody,\n ModalFooter,\n Table,\n Input,\n} from \"reactstrap\";\nimport { Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\n\n//import Charts\nimport StackedColumnChart from \"./StackedColumnChart\";\n\n//import action\nimport { getChartsData } from \"../../store/actions\";\n\n// Pages Components\nimport SampleCollectorSummary from \"./SampleCollectorSummary\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"../../components/Common/Breadcrumb\";\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport classNames from \"classnames\";\n\nclass Dashboard extends Component {\n constructor(props) {\n super(props);\n this.state = {\n email: [\n { title: \"Week\", linkto: \"#\", isActive: false },\n { title: \"Month\", linkto: \"#\", isActive: false },\n { title: \"Year\", linkto: \"#\", isActive: true },\n ],\n modal: false,\n subscribemodal: false,\n chartSeries: [],\n periodType: \"yearly\",\n };\n\n this.togglemodal.bind(this);\n }\n\n componentDidMount() {\n const { onGetChartsData } = this.props;\n setTimeout(() => this.setState({ subscribemodal: true }), 2000);\n onGetChartsData(\"yearly\");\n }\n\n togglemodal = () => {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n };\n\n togglesubscribemodal = () => {\n this.setState(prevState => ({\n subscribemodal: !prevState.subscribemodal,\n }));\n };\n\n componentDidUpdate(prevProps) {\n if (prevProps !== this.props) {\n this.setState({ ...this.state, chartSeries: this.props.chartsData });\n }\n }\n\n render() {\n const userId = localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\";\n return (\n \n
\n \n Dashboard | Lab\n \n \n {/* Render Breadcrumb */}\n \n \n \n\n \n \n \n
\n {/* \n Email Sent\n */}\n \n
\n
\n \n \n \n \n \n \n
\n \n );\n }\n}\n\nDashboard.propTypes = {\n t: PropTypes.any,\n chartsData: PropTypes.any,\n onGetChartsData: PropTypes.func,\n};\n\nconst mapStateToProps = ({ Dashboard }) => ({\n chartsData: Dashboard.chartsData,\n});\n\nconst mapDispatchToProps = dispatch => ({\n onGetChartsData: periodType => dispatch(getChartsData(periodType)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withTranslation()(Dashboard));\n","\nimport React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport { Tooltip } from \"@material-ui/core\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalHeader,\n ModalBody,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getPendingCorporate,\n approveUnapproveCorporate,\n} from \"store/registration-admin/actions\";\n\nimport ApproveUnapproveModal from \"components/Common/ApproveUnapproveModal\";\nimport \"assets/scss/table.scss\";\n\nclass PendingLabs extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n pendingCorporate: [],\n id: \"\",\n btnText: \"Copy\",\n isApproved: false,\n unapprovedModal: false,\n tooltipContent: [\"Worst\", \"Bad\", \"Average\", \"Good\", \"Excellent\"],\n pendingCorporates: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n pendingCorporatesListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, pendingCorporates) => <>{pendingCorporates.id},\n },\n {\n dataField: \"name\",\n text: \"Corporate name\",\n sort: true,\n formatter: (cellContent, pendingCorporates) => (\n <>\n \n {/* this.openLabModal(e, pendingCorporates)}\n onMouseEnter={e => this.openLabModal(e, pendingCorporates)}\n onPointerLeave={this.handleMouseExit()}\n > */}\n {pendingCorporates.name}\n {/* */}\n \n \n ), filter: textFilter(),\n },\n {\n dataField: \"email\",\n text: \"Email\",\n sort: true,\n formatter: (cellContent, pendingCorporates) => (\n <>\n \n \n {pendingCorporates.email}\n \n \n \n ), filter: textFilter(),\n },\n {\n dataField: \"city\",\n text: \"City\",\n sort: true,\n formatter: (cellContent, pendingCorporates) => (\n <>\n \n {pendingCorporates.city}\n\n \n \n ), filter: textFilter(),\n },\n \n {\n dataField: \"address\",\n text: \"Address\",\n sort: true,\n formatter: (cellContent, pendingCorporates) => (\n \n {pendingCorporates.address}\n\n \n ), filter: textFilter(),\n\n },\n\n {\n dataField: \"landline\",\n text: \"Phone No\",\n sort: true,\n formatter: (cellContent, pendingCorporates) => (\n \n {pendingCorporates.landline}\n\n \n ), filter: textFilter(),\n },\n {\n dataField: \"data\",\n text: \"id\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, pendingCorporates) => (\n <>\n \n this.handleApprovedEvent(pendingCorporates.id)}\n\n >\n \n \n \n {\" \"}\n \n this.handleUnapprovedEvent(pendingCorporates.id)}\n >\n \n \n \n \n ),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.handleApprovedEvent = this.handleApprovedEvent.bind(this);\n // this.togglePatientModal = this.togglePatientModal.bind(this);\n this.toggleMarketerModal = this.toggleMarketerModal.bind(this);\n\n\n }\n\n componentDidMount() {\n const { pendingCorporate, onGetPendingLabs } = this.props;\n onGetPendingLabs();\n this.setState({ pendingCorporate });\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n lab_staff_name: arg.lab_staff_name,\n lab_staff_designation: arg.lab_staff_designation,\n\n });\n };\n toggleLabModal = () => {\n this.setState(prevState => ({\n LabModal: !prevState.LabModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n openLabModal = (e, arg) => {\n this.setState({\n LabModal: true,\n landline: arg.landline,\n email: arg.email,\n });\n };\n handleMouseExit = () => {\n this.setState({\n PatientModal: false,\n MarketerModal: false,\n LabModal: false,\n isHovered: false,\n });\n };\n // togglePatientModal = () => {\n // this.setState(prevState => ({\n // PatientModal: !prevState.PatientModal,\n // }));\n // this.state.btnText === \"Copy\"\n // ? this.setState({ btnText: \"Copied\" })\n // : this.setState({ btnText: \"Copy\" });\n // };\n openMarketerModal = (e, arg) => {\n this.setState({\n MarketerModal: true,\n marketer_name: arg.marketer_name,\n marketer_phone: arg.marketer_phone,\n\n });\n };\n toggleMarketerModal = () => {\n this.setState(prevState => ({\n MarketerModal: !prevState.MarketerModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleApprovedEvent = id => {\n this.setState({ id: id, isApproved: true, unapprovedModal: true });\n };\n\n\n handleUnapprovedEvent = id => {\n this.setState({ id: id, isApproved: false, unapprovedModal: true });\n\n };\n\n callOnapproveUnapproveCorporate = () => {\n const { onapproveUnapproveCorporate, onGetPendingLabs } = this.props;\n\n const data = {\n id: this.state.user_id,\n corporate_id: this.state.id,\n isApproved: this.state.isApproved,\n };\n\n // calling to unapprove lab\n onapproveUnapproveCorporate(data);\n\n // Calling to update list record\n setTimeout(() => {\n onGetPendingLabs();\n }, 1000);\n\n this.setState({ unapprovedModal: false });\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { pendingCorporate } = this.props;\n const data = this.state.data;\n const { onapproveUnapproveCorporate, onGetPendingLabs } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: pendingCorporate.length, // replace later with size(pendingCorporate),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n Pending Corporates | Lab Hazir\n \n\n this.setState({ unapprovedModal: false })}\n />\n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n
\n
\n \n
\n \n \n
\n \n {/* \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n\n
\n {\n navigator.clipboard.writeText(\n this.state\n .lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
\n
\n \n
\n
\n
\n
\n */}\n {/* \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n\n
\n {\n navigator.clipboard.writeText(\n this.state\n .marketer_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
\n
\n \n
\n
\n
\n
\n */}\n {/* \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n */}\n {/* \n
\n \n this.setState({\n modal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
\n \n {\n const data = {\n id: this.state.user_id,\n corporate_id: this.state.id,\n refereree_percentage:\n values.refereree_percentage,\n };\n\n // approve lab\n onapproveUnapproveCorporate(data);\n\n // Calling to update list record\n setTimeout(() => {\n onGetPendingLabs();\n }, 1000);\n\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n
\n \n \n \n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n */}\n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nPendingLabs.propTypes = {\n match: PropTypes.object,\n pendingCorporate: PropTypes.array,\n className: PropTypes.any,\n onGetPendingLabs: PropTypes.func,\n onapproveUnapproveCorporate: PropTypes.func,\n};\nconst mapStateToProps = ({ registrationAdmin }) => ({\n pendingCorporate: registrationAdmin.pendingCorporate,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onapproveUnapproveCorporate: data => dispatch(approveUnapproveCorporate(data)),\n onGetPendingLabs: () => dispatch(getPendingCorporate()),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PendingLabs));\n","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n FormGroup,\n Label,\n} from \"reactstrap\";\n\nimport { isEmpty, map } from \"lodash\";\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getReviewPerformance,\n getReviewPerformanceTest\n} from \"store/review-performance/actions\";\nimport Flatpickr from 'react-flatpickr';\n\n\nclass ReviewPerformance extends Component {\n constructor(props) {\n super(props);\n const today = new Date();\n const startOfDay = new Date(Date.UTC(today.getFullYear(), today.getMonth(), today.getDate(), 0, 0, 0));\n const endOfDay = new Date(today.getFullYear(), today.getMonth(), today.getDate(), 23, 59, 59);\n\n this.state = {\n ReviewPerformance: [],\n ReviewPerformanceTest: [],\n start_date: startOfDay,\n end_date: endOfDay,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n componentDidMount() {\n this.fetchPerformanceData();\n }\n\n fetchPerformanceData = () => {\n const { onGetReviewPerformance, onGetReviewPerformanceTest } = this.props;\n const { start_date, end_date } = this.state;\n onGetReviewPerformance({ start_date, end_date });\n onGetReviewPerformanceTest({ start_date, end_date });\n };\n handleDateChange = (date, field) => {\n if (date) {\n let adjustedDate;\n \n if (field === 'end_date') {\n // Set end date to 23:59:59\n adjustedDate = new Date(Date.UTC(\n date.getFullYear(),\n date.getMonth(),\n date.getDate(),\n 23, 59, 59\n ));\n } else {\n // Set start date to 00:00:00\n adjustedDate = new Date(Date.UTC(\n date.getFullYear(),\n date.getMonth(),\n date.getDate(),\n 0, 0, 0\n ));\n }\n \n this.setState({ [field]: adjustedDate }, () => {\n const { start_date, end_date } = this.state;\n if (start_date && end_date && start_date <= end_date) {\n this.fetchPerformanceData();\n }\n });\n }\n };\n \n render() {\n const { ReviewPerformance,ReviewPerformanceTest } = this.props;\n const { start_date, end_date } = this.state;\n console.log(\"RENDER CONSOLE\",ReviewPerformance)\n return (\n \n
\n \n Review Performance | Lab Hazir\n \n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n \n this.handleDateChange(date[0], 'start_date')}\n />\n \n \n\n \n \n \n this.handleDateChange(date[0], 'end_date')}\n />\n \n \n \n \n {start_date > end_date && (\n
Start date should not be after end date. It may result in incorrect count.
\n )}\n {(this.props.ReviewPerformance) && (this.props.ReviewPerformanceTest) && (\n <>\n \n \n \n
\n
\n

\n Total Labs Registered\n

\n

\n {ReviewPerformance?.total_labs || 0}\n

\n
\n
\n \n \n \n
\n
\n
\n
\n \n
\n\n \n \n \n
\n
\n

\n Total Tests Added\n

\n

\n {ReviewPerformanceTest?.total_offered_tests || 0}\n

\n
\n
\n \n \n \n
\n
\n
\n
\n \n
\n )}\n
\n
\n
\n );\n }\n}\n\nReviewPerformance.propTypes = {\n match: PropTypes.object,\n className: PropTypes.any,\n onGetReviewPerformance: PropTypes.func,\n ReviewPerformance: PropTypes.object,\n ReviewPerformanceTest: PropTypes.object,\n onGetReviewPerformanceTest: PropTypes.func,\n};\n\nconst mapStateToProps = (state) => {\n console.log(\"Mapped state to props - ReviewPerformance:\", state.ReviewPerformance);\n return {\n ReviewPerformance: state.ReviewPerformance.ReviewPerformance || {}, \n ReviewPerformanceTest: state.ReviewPerformance.ReviewPerformanceTest || {}, \n };\n};\n\n\nconst mapDispatchToProps = (dispatch) => ({\n onGetReviewPerformance: ({ start_date, end_date }) => \n dispatch(getReviewPerformance(start_date, end_date)),\n \n onGetReviewPerformanceTest: ({ start_date, end_date }) => \n dispatch(getReviewPerformanceTest(start_date, end_date)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(ReviewPerformance));\n","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalBody,\n ModalHeader,\n\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { getApprovedCorporate } from \"store/registration-admin/actions\";\nimport \"assets/scss/table.scss\";\nimport { Tooltip } from \"@material-ui/core\";\nclass ApprovedLabs extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n approvedCorporate: [],\n id: \"\",\n btnText: \"Copy\",\n isHovered: false,\n tooltipContent: [\"Worst\", \"Bad\", \"Average\", \"Good\", \"Excellent\"],\n pendingCorporates: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n pendingCorporatesListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, pendingCorporates) => <>{pendingCorporates.id},\n },\n {\n dataField: \"name\",\n text: \"Corporate name\",\n sort: true,\n formatter: (cellContent, pendingCorporates) => (\n <>\n \n \n {pendingCorporates.name}\n \n \n \n ), filter: textFilter(),\n },\n {\n dataField: \"email\",\n text: \"Email\",\n sort: true,\n formatter: (cellContent, pendingCorporates) => (\n <>\n \n \n {pendingCorporates.email}\n \n \n \n ), filter: textFilter(),\n },\n \n {\n dataField: \"city\",\n text: \"City\",\n sort: true,\n formatter: (cellContent, pendingCorporates) => (\n <>\n \n {pendingCorporates.city}\n \n \n \n ), filter: textFilter(),\n },\n \n {\n dataField: \"address\",\n text: \"Address\",\n sort: true,\n formatter: (cellContent, pendingCorporates) => (\n \n {pendingCorporates.address}\n \n \n ), filter: textFilter(),\n \n },\n \n {\n dataField: \"landline\",\n text: \"Phone No\",\n sort: true,\n formatter: (cellContent, pendingCorporates) => (\n \n {pendingCorporates.landline}\n \n \n ), filter: textFilter(),\n },\n // {\n // dataField: \"data\",\n // text: \"id\",\n // isDummyField: true,\n // editable: false,\n // text: \"Action\",\n // formatter: (cellContent, pendingCorporates) => (\n // <>\n // \n // this.handleApprovedEvent(pendingCorporates.id)}\n \n // >\n // \n // \n // \n // {\" \"}\n // \n // this.handleUnapprovedEvent(pendingCorporates.id)}\n // >\n // \n // \n // \n // \n // ),\n // },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.handlePatientFeedbackClick =\n this.handlePatientFeedbackClick.bind(this);\n }\n\n componentDidMount() {\n const { onGetApprovedLabs } = this.props;\n onGetApprovedLabs(this.state.user_id);\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // openPatientModal = (e, arg) => {\n // this.setState({\n // PatientModal: true,\n // lab_address: arg.lab_address,\n // lab_name: arg.lab_name,\n // lab_city: arg.lab_city,\n // registered_at: arg.registered_at,\n // done_at: arg.done_at,\n // isHovered: true,\n // });\n // };\n // handleMouseExit = () => {\n // this.setState({\n // PatientModal: false,\n // isHovered: false,\n // });\n // };\n // togglePatientModal = () => {\n // this.setState(prevState => ({\n // PatientModal: !prevState.PatientModal,\n // }));\n // this.state.btnText === \"Copy\"\n // ? this.setState({ btnText: \"Copied\" })\n // : this.setState({ btnText: \"Copy\" });\n // };\n\n handlePatientFeedbackClick = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggle();\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n const { approvedCorporate } = this.props;\n const data = this.state.data;\n const { onGetApprovedLabs } = this.props;\n\n const pageOptions = {\n sizePerPage: 50,\n totalSize: approvedCorporate.length, // replace later with size(approvedCorporate),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n const iconStyle = { color: 'red' }; // Customize the color here\n\n return (\n \n
\n \n Approved Corporates | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n
\n \n Note: There will be Approved and Active Corporates Shown on it.\n \n \n
\n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n
\n
\n \n
\n \n \n
\n order === 'desc' ? : }} // Customize sort caret icons\n\n />\n {/* {this.state.isHovered && (\n \n \n \n \n \n \n
\n \n \n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n\n \n
\n \n
\n
\n
\n
\n \n )} */}\n
\n \n
\n\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nApprovedLabs.propTypes = {\n match: PropTypes.object,\n approvedCorporate: PropTypes.array,\n className: PropTypes.any,\n onGetApprovedLabs: PropTypes.func,\n};\nconst mapStateToProps = ({ registrationAdmin }) => ({\n approvedCorporate: registrationAdmin.approvedCorporate,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetApprovedLabs: () => dispatch(getApprovedCorporate()),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(ApprovedLabs));\n","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport { Tooltip } from \"@material-ui/core\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalBody,\n ModalHeader,\n\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getUnapprovedCorporate,\n approveUnapproveCorporate,\n} from \"store/registration-admin/actions\";\nimport \"assets/scss/table.scss\";\n\nclass UnapprovedLabs extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n UnapprovedCorporate: [],\n id: \"\",\n tooltipContent: [\"Worst\", \"Bad\", \"Average\", \"Good\", \"Excellent\"],\n pendingCorporates: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n pendingCorporatesListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, pendingCorporates) => <>{pendingCorporates.id},\n },\n {\n dataField: \"name\",\n text: \"Corporate name\",\n sort: true,\n formatter: (cellContent, pendingCorporates) => (\n <>\n \n \n {pendingCorporates.name}\n \n \n \n ), filter: textFilter(),\n },\n {\n dataField: \"email\",\n text: \"Email\",\n sort: true,\n formatter: (cellContent, pendingCorporates) => (\n <>\n \n \n {pendingCorporates.email}\n \n \n \n ), filter: textFilter(),\n },\n \n {\n dataField: \"city\",\n text: \"City\",\n sort: true,\n formatter: (cellContent, pendingCorporates) => (\n <>\n \n {pendingCorporates.city}\n \n \n \n ), filter: textFilter(),\n },\n \n {\n dataField: \"address\",\n text: \"Address\",\n sort: true,\n formatter: (cellContent, pendingCorporates) => (\n \n {pendingCorporates.address}\n \n \n ), filter: textFilter(),\n \n },\n \n {\n dataField: \"landline\",\n text: \"Phone No\",\n sort: true,\n formatter: (cellContent, pendingCorporates) => (\n \n {pendingCorporates.landline}\n \n \n ), filter: textFilter(),\n },\n // {\n // dataField: \"data\",\n // text: \"id\",\n // isDummyField: true,\n // editable: false,\n // text: \"Action\",\n // formatter: (cellContent, pendingCorporates) => (\n // <>\n // \n // this.handleApprovedEvent(pendingCorporates.id)}\n \n // >\n // \n // \n // \n // {\" \"}\n // \n // this.handleUnapprovedEvent(pendingCorporates.id)}\n // >\n // \n // \n // \n // \n // ),\n // },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.handleApprovedEvent = this.handleApprovedEvent.bind(this);\n }\n\n componentDidMount() {\n const { UnapprovedCorporate, onGetUnapprovedLabs } = this.props;\n onGetUnapprovedLabs(this.state.user_id);\n this.setState({ UnapprovedCorporate });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleApprovedEvent = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggle();\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { UnapprovedCorporate } = this.props;\n const data = this.state.data;\n const { onapproveUnapproveCorporate, onGetUnapprovedLabs } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: UnapprovedCorporate.length, // replace later with size(UnapprovedCorporate),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n Unapproved Corporates | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n
\n \n Note: There will be UnapprovedApproved and Inactive Corporates Shown on it.\n \n \n
\n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n
\n
\n \n
\n \n \n
\n \n \n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nUnapprovedLabs.propTypes = {\n match: PropTypes.object,\n UnapprovedCorporate: PropTypes.array,\n className: PropTypes.any,\n onGetUnapprovedLabs: PropTypes.func,\n onapproveUnapproveCorporate: PropTypes.func,\n};\nconst mapStateToProps = ({ registrationAdmin }) => ({\n UnapprovedCorporate: registrationAdmin.UnapprovedCorporate,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onapproveUnapproveCorporate: data => dispatch(approveUnapproveCorporate(data)),\n onGetUnapprovedLabs: () => dispatch(getUnapprovedCorporate()),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(UnapprovedLabs));\n","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport { Tooltip } from \"@material-ui/core\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalHeader,\n ModalBody,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getPendingLabs,\n approveUnapproveLab,\n} from \"store/registration-admin/actions\";\n\nimport ApproveUnapproveModal from \"components/Common/ApproveUnapproveModal\";\nimport \"assets/scss/table.scss\";\n\nclass PendingLabs extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n pendingLabs: [],\n id: \"\",\n btnText: \"Copy\",\n isApproved: false,\n unapprovedModal: false,\n tooltipContent: [\"Worst\", \"Bad\", \"Average\", \"Good\", \"Excellent\"],\n pendingLab: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n pendingLabListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, pendingLab) => <>{pendingLab.id},\n },\n {\n dataField: \"city\",\n text: \"Lab City\",\n sort: true,\n formatter: (cellContent, pendingLab) => (\n <>\n \n {pendingLab.city}\n\n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"name\",\n text: \"Lab name\",\n sort: true,\n formatter: (cellContent, pendingLab) => (\n <>\n \n this.openLabModal(e, pendingLab)}\n onMouseEnter={e => this.openLabModal(e, pendingLab)}\n onPointerLeave={this.handleMouseExit()}\n >\n {pendingLab.name}\n \n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"type\",\n text: \"Lab Type\",\n sort: true,\n formatter: (cellContent, pendingLab) => (\n <>\n {pendingLab.type}\n \n \n ),filter: textFilter(), \n },\n {\n dataField: \"address\",\n text: \"Address\",\n sort: true, \n formatter: (cellContent, pendingLab) => (\n \n {pendingLab.address}\n \n \n ),filter: textFilter(), \n \n },\n // {\n // dataField: \"city\",\n // text: \"City\",\n // sort: true,\n // },\n {\n dataField: \"landline\",\n text: \"Lab Phone No\",\n sort: true,\n formatter: (cellContent, pendingLab) => (\n <>\n {pendingLab.landline}\n \n \n ),filter: textFilter(), \n },\n {\n dataField: \"registered_by\",\n text: \"Registered by\",\n sort: true,\n formatter: (cellContent, pendingLab) => (\n <>\n {pendingLab.registered_by == 'Lab' ? (\n this.openPatientModal(e, pendingLab)}\n onMouseEnter={e => this.openPatientModal(e, pendingLab)}\n onPointerLeave={this.handleMouseExit()}\n >\n {pendingLab.registered_by}\n \n \n ) : (\n \n this.openMarketerModal(e, pendingLab)}\n onMouseEnter={e => this.openMarketerModal(e, pendingLab)}\n onPointerLeave={this.handleMouseExit()}\n >\n {pendingLab.registered_by}\n \n \n )}\n \n ),filter: textFilter(),\n },\n \n // {\n // dataField: \"registered_at\",\n // text: \"Registered at\",\n // sort: true,\n // formatter: (cellContent, pendingLab) => (\n // <>\n // \n // {new Date(pendingLab.registered_at).toLocaleString(\"en-US\")}\n // \n // \n // ),\n // },\n {\n dataField: \"data\",\n text: \"id\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, pendingLab) => (\n <>\n \n this.handleApprovedEvent(pendingLab.id)}\n \n >\n \n \n \n {\" \"}\n \n this.handleUnapprovedEvent(pendingLab.id)}\n >\n \n \n \n \n ),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.handleApprovedEvent = this.handleApprovedEvent.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n this.toggleMarketerModal = this.toggleMarketerModal.bind(this);\n\n \n }\n\n componentDidMount() {\n const { pendingLabs, onGetPendingLabs } = this.props;\n onGetPendingLabs();\n this.setState({ pendingLabs });\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n lab_staff_name: arg.lab_staff_name,\n lab_staff_designation: arg.lab_staff_designation,\n\n });\n };\n toggleLabModal = () => {\n this.setState(prevState => ({\n LabModal: !prevState.LabModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n openLabModal = (e, arg) => {\n this.setState({\n LabModal: true,\n landline: arg.landline,\n email: arg.email,\n });\n };\n handleMouseExit = () => {\n this.setState({\n PatientModal: false,\n MarketerModal: false,\n LabModal: false,\n isHovered: false,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n openMarketerModal = (e, arg) => {\n this.setState({\n MarketerModal: true,\n marketer_name: arg.marketer_name,\n marketer_phone: arg.marketer_phone,\n\n });\n };\n toggleMarketerModal = () => {\n this.setState(prevState => ({\n MarketerModal: !prevState.MarketerModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleApprovedEvent = id => {\n this.setState({ id: id, isApproved: true, unapprovedModal: true });\n };\n\n\n handleUnapprovedEvent = id => {\n this.setState({ id: id, isApproved: false, unapprovedModal: true });\n\n };\n\n callOnApproveUnapproveLab = () => {\n const { onApproveUnapproveLab, onGetPendingLabs } = this.props;\n\n const data = {\n id: this.state.user_id,\n labId: this.state.id,\n isApproved: this.state.isApproved,\n };\n\n // calling to unapprove lab\n onApproveUnapproveLab(data);\n\n // Calling to update list record\n setTimeout(() => {\n onGetPendingLabs();\n }, 1000);\n\n this.setState({ unapprovedModal: false });\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { pendingLabs } = this.props;\n const data = this.state.data;\n const { onApproveUnapproveLab, onGetPendingLabs } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: pendingLabs.length, // replace later with size(pendingLabs),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
\n \n Pending Labs | Lab Hazir\n \n\n this.setState({ unapprovedModal: false })}\n />\n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
\n
\n \n \n
\n
\n \n
\n \n \n
\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n\n
\n {\n navigator.clipboard.writeText(\n this.state\n .lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
\n
\n \n
\n
\n
\n
\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n\n
\n {\n navigator.clipboard.writeText(\n this.state\n .marketer_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
\n
\n \n
\n
\n
\n
\n \n \n \n \n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n {/* \n
\n \n this.setState({\n modal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
\n \n {\n const data = {\n id: this.state.user_id,\n labId: this.state.id,\n refereree_percentage:\n values.refereree_percentage,\n };\n\n // approve lab\n onApproveUnapproveLab(data);\n\n // Calling to update list record\n setTimeout(() => {\n onGetPendingLabs();\n }, 1000);\n\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
\n \n \n
\n \n \n \n
\n \n
\n \n \n
\n \n Save\n \n
\n \n
\n
\n )}\n \n
\n */}\n
\n \n
\n \n \n \n \n \n
\n )}\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nPendingLabs.propTypes = {\n match: PropTypes.object,\n pendingLabs: PropTypes.array,\n className: PropTypes.any,\n onGetPendingLabs: PropTypes.func,\n onApproveUnapproveLab: PropTypes.func,\n};\nconst mapStateToProps = ({ registrationAdmin }) => ({\n pendingLabs: registrationAdmin.pendingLabs,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onApproveUnapproveLab: data => dispatch(approveUnapproveLab(data)),\n onGetPendingLabs: () => dispatch(getPendingLabs()),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PendingLabs));\n","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalBody,\n Table,\n} from \"reactstrap\";\n\nimport { isEmpty, map } from \"lodash\";\n\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getLabsListApprovedFee,\n} from \"store/labs-list-pending/actions\";\n\n\nclass LabsLists extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n labsListApprovedFee: [],\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n filters: {\n name: '',\n landline: '',\n email: '',\n address: '',\n city: '',\n type: '',\n },\n currentPage: 1,\n itemsPerPage: 10,\n };\n }\n\n componentDidMount() {\n const { onGetLabsListApprovedFee } = this.props;\n const { user_id, currentPage, itemsPerPage } = this.state;\n onGetLabsListApprovedFee(user_id, currentPage, itemsPerPage);\n }\n \n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n handleFilterChange = (field, value) => {\n this.setState(\n (prevState) => ({\n filters: {\n ...prevState.filters,\n [field]: value,\n },\n currentPage: 1, // Reset to first page on new filter\n }),\n () => {\n const { onGetLabsListApprovedFee } = this.props;\n const { user_id, currentPage, itemsPerPage, filters } = this.state;\n onGetLabsListApprovedFee(user_id, currentPage, itemsPerPage, filters);\n }\n );\n };\n handlePageChange = (pageNumber) => {\n this.setState({ currentPage: pageNumber }, () => {\n const { onGetLabsListApprovedFee } = this.props;\n const { user_id, currentPage, itemsPerPage } = this.state;\n onGetLabsListApprovedFee(user_id, currentPage, itemsPerPage);\n });\n };\n\n render() {\n const { filters, currentPage, itemsPerPage } = this.state;\n const { labsListApprovedFee } = this.props;\n // const indexOfLastItem = currentPage * itemsPerPage;\n // const indexOfFirstItem = indexOfLastItem - itemsPerPage;\n const filteredLabsList = (labsListApprovedFee?.data || []).filter((lab_list) => {\n return (\n (lab_list.city && lab_list.city.toLowerCase().includes(filters.city.toLowerCase())) &&\n (lab_list.name && lab_list.name.toLowerCase().includes(filters.name.toLowerCase())) &&\n (lab_list.type && lab_list.type.toLowerCase().includes(filters.type.toLowerCase())) &&\n (lab_list.landline && lab_list.landline.includes(filters.landline)) &&\n (lab_list.email && lab_list.email.toLowerCase().includes(filters.email.toLowerCase())) &&\n (lab_list.address && lab_list.address.toLowerCase().includes(filters.address.toLowerCase()))\n );\n });\n \n const columns = [\n { dataField: 'city', text: 'City' },\n { dataField: 'name', text: 'Lab Name' },\n { dataField: 'type', text: 'Lab Type' },\n { dataField: 'landline', text: 'Phone' },\n { dataField: 'email', text: 'Email' },\n { dataField: 'address', text: 'Address' },\n ];\n const currentItems = filteredLabsList;\n\n const totalPages = labsListApprovedFee.total_pages;\n\n // Calculate the range of page numbers to display\n const pageRange = 3; // Adjust this value based on your requirement\n let startPage = Math.max(1, currentPage - Math.floor(pageRange / 2));\n let endPage = Math.min(totalPages, startPage + pageRange - 1);\n \n // Adjust startPage and endPage to always show pageRange page numbers\n if (endPage - startPage + 1 < pageRange) {\n startPage = Math.max(1, endPage - pageRange + 1);\n }\n \n // Render the page numbers\n const pageNumbers = Array.from({ length: endPage - startPage + 1 }, (_, index) => startPage + index);\n\n const headerCells = columns.map((column) => (\n \n
\n {column.text}\n this.handleFilterChange(column.dataField, e.target.value)}\n // style={{ width: '140px', padding: '6px' }} // Adjust the width and padding as needed\n />\n
\n \n ));\n \n return (\n \n
\n \n Labs List | Lab Hazir\n \n\n \n {/* Render Breadcrumbs */}\n \n {!isEmpty(this.props.labsListApprovedFee) && (\n \n \n \n \n \n \n \n
\n

\n Lab Shared Percentage Approved\n

\n
\n
\n \n \n {headerCells}\n\n \n \n \n {(currentItems || []).length > 0 ? (\n currentItems.map((lab_list, key) => (\n \n \n \n \n \n \n \n \n ))\n ) : (\n \n \n \n )}\n \n\n \n
{lab_list?.city || \"N/A\"}\n \n \n {lab_list?.name || \"N/A\"}\n \n \n {lab_list?.type || \"N/A\"}{lab_list?.landline || \"N/A\"}{lab_list?.email || \"N/A\"}{lab_list?.address || \"N/A\"}
\n No data available\n
\n
\n
\n {/* Pagination */}\n \n \n {startPage > 1 && (\n
  • \n \n
  • \n )}\n\n {pageNumbers.map((pageNumber) => (\n
  • \n \n
  • \n ))}\n\n {endPage < totalPages && (\n
  • \n \n
  • \n )}\n \n
    \n
    \n
    \n \n
    \n )}\n
    \n
    \n
    \n );\n }\n}\n\nLabsLists.propTypes = {\n match: PropTypes.object,\n labsListApprovedFee: PropTypes.array,\n className: PropTypes.any,\n onGetLabsListApprovedFee: PropTypes.func,\n};\nconst mapStateToProps = ({ labsListPendingFee}) => ({\n labsListApprovedFee: labsListPendingFee.labsListApprovedFee,\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n onGetLabsListApprovedFee: (id, page, limit, filters) =>\n dispatch(getLabsListApprovedFee(id, page, limit, filters)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(LabsLists));\n","import {\n GET_LABS_LIST_PENDING_FEE,\n GET_LABS_LIST_PENDING_FEE_SUCCESS,\n GET_LABS_LIST_PENDING_FEE_FAIL,\n GET_LABS_LIST_APPROVED_FEE,\n GET_LABS_LIST_APPROVED_FEE_SUCCESS,\n GET_LABS_LIST_APPROVED_FEE_FAIL,\n} from \"./actionTypes\";\nexport const getLabsListApprovedFee = (id, page, limit, filters) => {\n return {\n type: GET_LABS_LIST_APPROVED_FEE,\n payload: { id, page, limit, filters },\n };\n};\n\nexport const getLabsListApprovedFeeSuccess =\n labsListApprovedFee => ({\n type: GET_LABS_LIST_APPROVED_FEE_SUCCESS,\n payload: labsListApprovedFee,\n });\n\nexport const getLabsListApprovedFeeFail = error => ({\n type: GET_LABS_LIST_APPROVED_FEE_FAIL,\n payload: error,\n});\n\nexport const getLabsListPendingFee = (id, page, limit, filters) => ({\n type: GET_LABS_LIST_PENDING_FEE,\n payload: { id, page, limit, filters},\n});\n\nexport const getLabsListPendingFeeSuccess =\n labsListPendingFee => ({\n type: GET_LABS_LIST_PENDING_FEE_SUCCESS,\n payload: labsListPendingFee,\n });\n\nexport const getLabsListPendingFeeFail = error => ({\n type: GET_LABS_LIST_PENDING_FEE_FAIL,\n payload: error,\n});\n","import React, { Component } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Table,\n} from \"reactstrap\";\n\nimport { getLabsListPendingFee } from \"store/labs-list-pending/actions\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nclass LabsLists extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n labsListPendingFee: [],\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n filters: {\n name: '',\n landline: '',\n email: '',\n address: '',\n city: '',\n type: '',\n },\n currentPage: 1,\n itemsPerPage: 10,\n };\n }\n \n componentDidMount() {\n const { onGetLabsListPendingFee } = this.props;\n const { user_id, currentPage, itemsPerPage } = this.state;\n onGetLabsListPendingFee(user_id, currentPage, itemsPerPage);\n }\n\n handleFilterChange = (field, value) => {\n this.setState(\n (prevState) => ({\n filters: {\n ...prevState.filters,\n [field]: value,\n },\n currentPage: 1, // Reset to first page on new filter\n }),\n () => {\n const { onGetLabsListPendingFee } = this.props;\n const { user_id, currentPage, itemsPerPage, filters } = this.state;\n onGetLabsListPendingFee(user_id, currentPage, itemsPerPage, filters);\n }\n );\n };\n handlePageChange = (pageNumber) => {\n this.setState({ currentPage: pageNumber }, () => {\n const { onGetLabsListPendingFee } = this.props;\n const { user_id, currentPage, itemsPerPage } = this.state;\n onGetLabsListPendingFee(user_id, currentPage, itemsPerPage);\n });\n };\n\n render() {\n const { filters, currentPage, itemsPerPage } = this.state;\n const { labsListPendingFee } = this.props;\n // const indexOfLastItem = currentPage * itemsPerPage;\n // const indexOfFirstItem = indexOfLastItem - itemsPerPage;\n const filteredLabsList = (labsListPendingFee?.data || []).filter((lab_list) => {\n return (\n (lab_list.city && lab_list.city.toLowerCase().includes(filters.city.toLowerCase())) &&\n (lab_list.name && lab_list.name.toLowerCase().includes(filters.name.toLowerCase())) &&\n (lab_list.type && lab_list.type.toLowerCase().includes(filters.type.toLowerCase())) &&\n (lab_list.landline && lab_list.landline.includes(filters.landline)) &&\n (lab_list.email && lab_list.email.toLowerCase().includes(filters.email.toLowerCase())) &&\n (lab_list.address && lab_list.address.toLowerCase().includes(filters.address.toLowerCase()))\n );\n });\n\n const currentItems = filteredLabsList;\n\n const totalPages = labsListPendingFee.total_pages;\n\n // Calculate the range of page numbers to display\n const pageRange = 3; // Adjust this value based on your requirement\n let startPage = Math.max(1, currentPage - Math.floor(pageRange / 2));\n let endPage = Math.min(totalPages, startPage + pageRange - 1);\n \n // Adjust startPage and endPage to always show pageRange page numbers\n if (endPage - startPage + 1 < pageRange) {\n startPage = Math.max(1, endPage - pageRange + 1);\n }\n \n // Render the page numbers\n const pageNumbers = Array.from({ length: endPage - startPage + 1 }, (_, index) => startPage + index);\n \n\n const columns = [\n { dataField: 'city', text: 'City' },\n { dataField: 'name', text: 'Lab Name' },\n { dataField: 'type', text: 'Lab Type' },\n { dataField: 'landline', text: 'Phone' },\n { dataField: 'email', text: 'Email' },\n { dataField: 'address', text: 'Address' },\n ];\n\n const headerCells = columns.map((column) => (\n \n
    \n {column.text}\n this.handleFilterChange(column.dataField, e.target.value)}\n // style={{ width: '140px', padding: '6px' }} // Adjust the width and padding as needed\n />\n
    \n \n ));\n\n return (\n \n
    \n \n Labs List | Lab Hazir\n \n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n
    \n

    \n Lab Shared Percentage Pending\n

    \n
    \n
    \n \n \n {headerCells}\n \n \n {(currentItems || []).length > 0 ? (\n currentItems.map((lab_list, key) => (\n \n \n \n \n \n \n \n \n ))\n ) : (\n \n \n \n )}\n \n\n \n
    {lab_list?.city || \"N/A\"}\n \n \n {lab_list?.name || \"N/A\"}\n \n \n {lab_list?.type || \"N/A\"}{lab_list?.landline || \"N/A\"}{lab_list?.email || \"N/A\"}{lab_list?.address || \"N/A\"}
    \n No data available\n
    \n
    \n
    \n {/* Pagination */}\n \n \n {startPage > 1 && (\n
  • \n \n
  • \n )}\n\n {pageNumbers.map((pageNumber) => (\n
  • \n \n
  • \n ))}\n\n {endPage < totalPages && (\n
  • \n \n
  • \n )}\n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nLabsLists.propTypes = {\n match: PropTypes.object,\n labsListPendingFee: PropTypes.array,\n className: PropTypes.any,\n onGetLabsListPendingFee: PropTypes.func,\n};\n\nconst mapStateToProps = ({ labsListPendingFee }) => ({\n labsListPendingFee: labsListPendingFee.labsListPendingFee,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetLabsListPendingFee: (id, page, limit, filters) => dispatch(getLabsListPendingFee(id, page, limit, filters)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(LabsLists));","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport { Tooltip } from \"@material-ui/core\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Button,\n Row,\n Modal,\n ModalHeader,\n ModalBody,\n Label,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport {\n getSharedPercentagePendingFeeTests,\n updateSharedPercentagePendingFeeTest,\n updateSharedPercentageAllPendingFeeTest,\n} from \"store/shared-percentage-pending-fee/actions\";\nimport { isEmpty, size } from \"lodash\";\nimport ConfirmModal from \"components/Common/ConfirmModal\";\n\nimport \"assets/scss/table.scss\";\n\nclass SharedPercentageLabHazirList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n sharedPercentagePendingFeeTests: [],\n sharedPercentagePendingFeeTest: \"\",\n modal: false,\n confirmModal: false,\n // isEditAll: true,\n // id: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n discountLabHazirListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, sharedPercentagePendingFeeTests) => <>{sharedPercentagePendingFeeTests.id},\n },\n {\n text: \"Test ID\",\n dataField: \"test_id\",\n sort: true,\n formatter: (cellContent, sharedPercentageApprovedFeeTests) => (\n <>\n
    \n {sharedPercentageApprovedFeeTests.test_id}\n
    \n \n ),filter: textFilter(),\n },\n {\n dataField: \"test_name\",\n text: \"Test Name\",\n sort: true,\n // headerStyle: () => {\n // return { width: \"30%\" };\n // } \n formatter: (cellContent, sharedPercentageApprovedFeeTests) => (\n <>\n
    \n {sharedPercentageApprovedFeeTests.test_name}\n
    \n \n ),filter: textFilter(),\n },\n {\n dataField: \"test_categories\",\n text: \"Test Categories\",\n sort: true,\n // headerStyle: () => {\n // return { width: \"30%\" };\n // } \n formatter: (cellContent, sharedPercentageApprovedFeeTests) => (\n <>\n \n {sharedPercentageApprovedFeeTests?.test_categories || \"-\"}\n
    \n \n ),filter: textFilter(),\n },\n {\n dataField: \"price\",\n text: \"Test Price\",\n sort: true,\n formatter: (cellContent, sharedPercentageApprovedFeeTests) => (\n <>\n
    \n {sharedPercentageApprovedFeeTests.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n
    \n \n ),filter: textFilter(),\n },\n {\n dataField: \"status\",\n text: \"Status\",\n sort: true,\n formatter: (cellContent, sharedPercentageApprovedFeeTests) => (\n <>\n
    \n {sharedPercentageApprovedFeeTests.status}\n
    \n \n ),filter: textFilter(),\n },\n \n {\n dataField: \"shared_percentage\",\n text: \"Referrel (%)\",\n sort: true,\n formatter: (cellContent, sharedPercentageApprovedFeeTests) => (\n <>\n {( \n
    \n {(sharedPercentageApprovedFeeTests.shared_percentage * 100).toFixed()}%
    \n \n )}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"shared_percentage\",\n text: \"Referrel Value\",\n sort: true,\n formatter: (cellContent, sharedPercentageApprovedFeeTests) => (\n <>\n {(
    \n \n {(sharedPercentageApprovedFeeTests.price * sharedPercentageApprovedFeeTests.shared_percentage).toFixed()}
    \n \n )}\n \n ),filter: textFilter(),\n },\n\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, sharedPercentagePendingFeeTest) => (\n
    \n \n \n this.handleEditBtnClick(sharedPercentagePendingFeeTest)}\n >\n \n \n
    \n ),\n },\n ],\n };\n this.handleEditBtnClick = this.handleEditBtnClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleEditAllBtnClick = this.handleEditAllBtnClick.bind(this);\n }\n\n// componentDidMount() {\n// const { onGetSharedPercentagePendingFeeTests } = this.props;\n// setTimeout(() => {\n// console.log(onGetSharedPercentagePendingFeeTests());\n\n// setTimeout(() => {\n// this.setState({ sharedPercentagePendingFeeTests: this.props.sharedPercentagePendingFeeTests });\n// }, 1000);\n// }, 1000);\n// }\n\n componentDidMount() {\n // const { labs, onGetlabs } = this.props;\n // if (labs && !labs.length) {\n // onGetlabs();\n // }\n // this.setState({ labs });\n\n const { sharedPercentagePendingFeeTests, onGetSharedPercentagePendingFeeTests } = this.props;\n // if (sharedPercentagePendingFeeTests && !sharedPercentagePendingFeeTests.length) {\n onGetSharedPercentagePendingFeeTests(this.props.match.params.id);\n \n this.setState({ sharedPercentagePendingFeeTests });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleEditAllBtnClick = () => {\n this.setState({ isEditAll: true, sharedPercentagePendingFeeTest: \"\" });\n\n this.toggle();\n };\n\n handleAPICall = () => {\n const {\n onGetSharedPercentagePendingFeeTests,\n onUpdateSharedPercentageAllPendingFeeTest,\n onUpdateSharedPercentagePendingFeeTest,\n } = this.props;\n\n if (this.state.isEditAll) {\n onUpdateSharedPercentageAllPendingFeeTest(this.state.sharedPercentagePendingFeeTest);\n\n onGetSharedPercentagePendingFeeTests();\n\n setTimeout(() => {\n this.setState({ sharedPercentagePendingFeeTests: this.props.match.params.id});\n }, 1000);\n } else {\n onUpdateSharedPercentagePendingFeeTest(this.state.sharedPercentagePendingFeeTest);\n\n onGetSharedPercentagePendingFeeTests();\n\n setTimeout(() => {\n this.setState({ sharedPercentagePendingFeeTests: this.props.match.params.id });\n }, 1000);\n }\n\n this.toggle();\n };\n\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { sharedPercentagePendingFeeTests } = this.props;\n if (\n !isEmpty(sharedPercentagePendingFeeTests) &&\n size(prevProps.sharedPercentagePendingFeeTests) !== size(sharedPercentagePendingFeeTests)\n ) {\n this.setState({\n sharedPercentagePendingFeeTests: {},\n isEdit: false,\n });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n handleEditBtnClick = arg => {\n const sharedPercentagePendingFeeTest = arg;\n\n this.setState({\n isEditAll: false,\n sharedPercentagePendingFeeTest: sharedPercentagePendingFeeTest,\n // id: sharedPercentagePendingFeeTest.id,\n });\n\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { sharedPercentagePendingFeeTests } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const sharedPercentagePendingFeeTest = this.state.sharedPercentagePendingFeeTest;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: sharedPercentagePendingFeeTests.length, // replace later with size(sharedPercentagePendingFeeTests),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n const {\n onGetSharedPercentagePendingFeeTests,\n onUpdateSharedPercentageAllPendingFeeTest,\n onUpdateSharedPercentagePendingFeeTest,\n } = this.props;\n\n return (\n \n
    \n \n Lab Hazir | Discount Lab Hazir\n \n this.setState({ confirmModal: false })}\n />\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n \n Add Referrel Fee\n All\n \n
    \n \n
    \n \n \n
    \n \n\n \n \n {!this.state.isEditAll\n ? \"Shared Percentage on one test\"\n : \"Shared Percentage on all tests\"}\n \n \n {\n if (this.state.isEditAll) {\n onUpdateSharedPercentageAllPendingFeeTest(\n this.state.sharedPercentagePendingFeeTest\n );\n } else {\n onUpdateSharedPercentagePendingFeeTest(\n this.state.sharedPercentagePendingFeeTest\n );\n }\n\n setTimeout(() => {\n onGetSharedPercentagePendingFeeTests(\n this.props.match.params.id\n );\n\n setTimeout(() => {\n this.setState({\n sharedPercentagePendingFeeTests:\n this.props\n .sharedPercentagePendingFeeTests,\n });\n }, 1000);\n }, 1000);\n\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n
    \n \n {\n this.setState({\n sharedPercentagePendingFeeTest: {\n id: this.state\n .sharedPercentagePendingFeeTest\n .id,\n shared_percentage:\n e.target.value,\n lab_id:\n this.props.match\n .params.id,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.shared_percentage &&\n touched.shared_percentage\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n \n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nSharedPercentageLabHazirList.propTypes = {\n match: PropTypes.object,\n sharedPercentagePendingFeeTests: PropTypes.array,\n className: PropTypes.any,\n onGetSharedPercentagePendingFeeTests: PropTypes.func,\n onUpdateSharedPercentagePendingFeeTest: PropTypes.func,\n onUpdateSharedPercentageAllPendingFeeTest: PropTypes.func,\n};\n\nconst mapStateToProps = ({ sharedPercentagePendingFeeTests }) => ({\n sharedPercentagePendingFeeTests: sharedPercentagePendingFeeTests.sharedPercentagePendingFeeTests,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetSharedPercentagePendingFeeTests: id => dispatch(getSharedPercentagePendingFeeTests(id)),\n onUpdateSharedPercentagePendingFeeTest: sharedPercentagePendingFeeTest =>\n dispatch(updateSharedPercentagePendingFeeTest(sharedPercentagePendingFeeTest)),\n onUpdateSharedPercentageAllPendingFeeTest: sharedPercentagePendingFeeTest =>\n dispatch(updateSharedPercentageAllPendingFeeTest(sharedPercentagePendingFeeTest)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(SharedPercentageLabHazirList));","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport { Tooltip } from \"@material-ui/core\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Button,\n Row,\n Modal,\n ModalHeader,\n ModalBody,\n Label,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport {\n getSharedPercentageApprovedFeeTests,\n updateSharedPercentagePendingFeeTest,\n updateSharedPercentageAllPendingFeeTest,\n} from \"store/shared-percentage-pending-fee/actions\";\nimport { isEmpty, size } from \"lodash\";\nimport ConfirmModal from \"components/Common/ConfirmModal\";\n\nimport \"assets/scss/table.scss\";\n\nclass SharedPercentageLabHazirList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n sharedPercentageApprovedFeeTests: [],\n sharedPercentageApprovedFeeTest: \"\",\n modal: false,\n confirmModal: false,\n // isEditAll: true,\n // id: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n discountLabHazirListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, sharedPercentageApprovedFeeTests) => <>{sharedPercentageApprovedFeeTests.id},\n },\n {\n text: \"Test ID\",\n dataField: \"test_id\",\n sort: true,\n formatter: (cellContent, sharedPercentageApprovedFeeTests) => (\n <>\n
    \n {sharedPercentageApprovedFeeTests.test_id}\n
    \n \n ),filter: textFilter(),\n },\n {\n dataField: \"test_name\",\n text: \"Test Name\",\n sort: true,\n // headerStyle: () => {\n // return { width: \"30%\" };\n // } \n formatter: (cellContent, sharedPercentageApprovedFeeTests) => (\n <>\n
    \n {sharedPercentageApprovedFeeTests.test_name}\n
    \n \n ),filter: textFilter(),\n },\n {\n dataField: \"test_categories\",\n text: \"Test Categories\",\n sort: true,\n // headerStyle: () => {\n // return { width: \"30%\" };\n // } \n formatter: (cellContent, sharedPercentageApprovedFeeTests) => (\n <>\n \n {sharedPercentageApprovedFeeTests?.test_categories || \"-\"}\n
    \n \n ),filter: textFilter(),\n },\n {\n dataField: \"price\",\n text: \"Test Price\",\n sort: true,\n formatter: (cellContent, sharedPercentageApprovedFeeTests) => (\n <>\n
    \n {sharedPercentageApprovedFeeTests.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n
    \n \n ),filter: textFilter(),\n },\n {\n dataField: \"status\", \n text: \"Status\",\n sort: true,\n // filter: selectFilter({\n // options: {\n // 'Approved': 'Approved',\n // 'Unapproved': 'Unapproved',\n // },\n // defaultValue: 'All',\n // }),\n formatter: (cellContent, sharedPercentageApprovedFeeTests) => (\n <>\n
    \n {sharedPercentageApprovedFeeTests.status}\n
    \n \n ),filter: textFilter(),\n },\n {\n dataField: \"shared_percentage\",\n text: \"Referrel (%)\",\n sort: true,\n formatter: (cellContent, sharedPercentageApprovedFeeTests) => (\n <>\n {( \n
    \n {(sharedPercentageApprovedFeeTests.shared_percentage * 100).toFixed()}%
    \n \n )}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"shared_percentage\",\n text: \"Referrel Value\",\n sort: true,\n formatter: (cellContent, sharedPercentageApprovedFeeTests) => (\n <>\n {(
    \n \n {(sharedPercentageApprovedFeeTests.price * sharedPercentageApprovedFeeTests.shared_percentage).toFixed()}
    \n \n )}\n \n ),filter: textFilter(),\n },\n\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, sharedPercentageApprovedFeeTest) => (\n
    \n \n \n this.handleEditBtnClick(sharedPercentageApprovedFeeTest)}\n >\n \n \n
    \n ),\n },\n ],\n };\n this.handleEditBtnClick = this.handleEditBtnClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleEditAllBtnClick = this.handleEditAllBtnClick.bind(this);\n }\n\n// componentDidMount() {\n// const { onGetSharedPercentageApprovedFeeTests } = this.props;\n// setTimeout(() => {\n// console.log(onGetSharedPercentageApprovedFeeTests());\n\n// setTimeout(() => {\n// this.setState({ sharedPercentageApprovedFeeTests: this.props.sharedPercentageApprovedFeeTests });\n// }, 1000);\n// }, 1000);\n// }\n\n componentDidMount() {\n // const { labs, onGetlabs } = this.props;\n // if (labs && !labs.length) {\n // onGetlabs();\n // }\n // this.setState({ labs });\n\n const { sharedPercentageApprovedFeeTests, onGetSharedPercentageApprovedFeeTests } = this.props;\n // if (sharedPercentageApprovedFeeTests && !sharedPercentageApprovedFeeTests.length) {\n onGetSharedPercentageApprovedFeeTests(this.props.match.params.id);\n \n this.setState({ sharedPercentageApprovedFeeTests });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleEditAllBtnClick = () => {\n this.setState({ isEditAll: true, sharedPercentageApprovedFeeTest: \"\" });\n\n this.toggle();\n };\n\n handleAPICall = () => {\n const {\n onGetSharedPercentageApprovedFeeTests,\n onUpdateSharedPercentageAllPendingFeeTest,\n onUpdateSharedPercentagePendingFeeTest,\n } = this.props;\n\n if (this.state.isEditAll) {\n onUpdateSharedPercentageAllPendingFeeTest(this.state.sharedPercentageApprovedFeeTest);\n\n onGetSharedPercentageApprovedFeeTests();\n\n setTimeout(() => {\n this.setState({ sharedPercentageApprovedFeeTests: this.props.match.params.id});\n }, 1000);\n } else {\n onUpdateSharedPercentagePendingFeeTest(this.state.sharedPercentageApprovedFeeTest);\n\n onGetSharedPercentageApprovedFeeTests();\n\n setTimeout(() => {\n this.setState({ sharedPercentageApprovedFeeTests: this.props.match.params.id });\n }, 1000);\n }\n\n this.toggle();\n };\n\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { sharedPercentageApprovedFeeTests } = this.props;\n if (\n !isEmpty(sharedPercentageApprovedFeeTests) &&\n size(prevProps.sharedPercentageApprovedFeeTests) !== size(sharedPercentageApprovedFeeTests)\n ) {\n this.setState({\n sharedPercentageApprovedFeeTests: {},\n isEdit: false,\n });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n handleEditBtnClick = arg => {\n const sharedPercentageApprovedFeeTest = arg;\n\n this.setState({\n isEditAll: false,\n sharedPercentageApprovedFeeTest: sharedPercentageApprovedFeeTest,\n // id: sharedPercentageApprovedFeeTest.id,\n });\n\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { sharedPercentageApprovedFeeTests } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const sharedPercentageApprovedFeeTest = this.state.sharedPercentageApprovedFeeTest;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: sharedPercentageApprovedFeeTests.length, // replace later with size(sharedPercentageApprovedFeeTests),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n const {\n onGetSharedPercentageApprovedFeeTests,\n onUpdateSharedPercentageAllPendingFeeTest,\n onUpdateSharedPercentagePendingFeeTest,\n } = this.props;\n\n return (\n \n
    \n \n Lab Hazir | Discount Lab Hazir\n \n this.setState({ confirmModal: false })}\n />\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n \n Add Referrel Fee\n All\n \n
    \n \n
    \n {/* \n \n
    \n {console.log(\"lab\",this.props.lab_name}\n
    \n \n
    */}\n \n \n
    \n \n\n \n \n {!this.state.isEditAll\n ? \"Shared Percentage on one test\"\n : \"Shared Percentage on all tests\"}\n \n \n {\n if (this.state.isEditAll) {\n onUpdateSharedPercentageAllPendingFeeTest(\n this.state.sharedPercentageApprovedFeeTest\n );\n } else {\n onUpdateSharedPercentagePendingFeeTest(\n this.state.sharedPercentageApprovedFeeTest\n );\n }\n\n setTimeout(() => {\n onGetSharedPercentageApprovedFeeTests(\n this.props.match.params.id\n );\n\n setTimeout(() => {\n this.setState({\n sharedPercentageApprovedFeeTests:\n this.props\n .sharedPercentageApprovedFeeTests,\n });\n }, 1000);\n }, 1000);\n\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n
    \n \n {\n this.setState({\n sharedPercentageApprovedFeeTest: {\n id: this.state\n .sharedPercentageApprovedFeeTest\n .id,\n shared_percentage:\n e.target.value,\n lab_id:\n this.props.match\n .params.id,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.shared_percentage &&\n touched.shared_percentage\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n \n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nSharedPercentageLabHazirList.propTypes = {\n match: PropTypes.object,\n lab_name: PropTypes.any,\n sharedPercentageApprovedFeeTests: PropTypes.array,\n className: PropTypes.any,\n onGetSharedPercentageApprovedFeeTests: PropTypes.func,\n onUpdateSharedPercentagePendingFeeTest: PropTypes.func,\n onUpdateSharedPercentageAllPendingFeeTest: PropTypes.func,\n};\n\nconst mapStateToProps = ({ sharedPercentagePendingFeeTests}) => ({\n sharedPercentageApprovedFeeTests: sharedPercentagePendingFeeTests.sharedPercentageApprovedFeeTests,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetSharedPercentageApprovedFeeTests: id => dispatch(getSharedPercentageApprovedFeeTests(id)),\n onUpdateSharedPercentagePendingFeeTest: sharedPercentageApprovedFeeTest =>\n dispatch(updateSharedPercentagePendingFeeTest(sharedPercentageApprovedFeeTest)),\n onUpdateSharedPercentageAllPendingFeeTest: sharedPercentageApprovedFeeTest =>\n dispatch(updateSharedPercentageAllPendingFeeTest(sharedPercentageApprovedFeeTest)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(SharedPercentageLabHazirList));","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport { saveAs } from \"file-saver\";\nimport * as XLSX from \"xlsx\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalBody,\n ModalHeader,\n Button,\n\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { getApprovedLabs } from \"store/registration-admin/actions\";\nimport \"assets/scss/table.scss\";\n\nclass ApprovedLabs extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n approvedLabs: [],\n id: \"\",\n btnText: \"Copy\",\n isHovered: false,\n tooltipContent: [\"Worst\", \"Bad\", \"Average\", \"Good\", \"Excellent\"],\n approvedLab: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n approvedLabListColumns: [\n {\n text: \"S#\", // Column header for row numbers\n formatter: (cellContent, approvedLab, rowIndex) => (\n <>\n {rowIndex + 1}\n \n ),\n },\n {\n text: \"id\",\n dataField: \"id\",\n // sort: true,\n hidden: true,\n formatter: (cellContent, approvedLab) => <>{approvedLab.id},\n },\n {\n dataField: \"city\",\n text: \"Lab City\",\n // sort: true,\n formatter: (cellContent, approvedLab) => (\n <>\n \n {approvedLab.city}\n \n \n ), filter: textFilter(),\n },\n {\n dataField: \"district\",\n text: \"District\",\n // sort: true,\n formatter: (cellContent, approvedLab) => (\n <>\n \n {approvedLab.district}\n \n \n ), filter: textFilter(),\n },\n {\n dataField: \"name\",\n text: \"Lab Name\",\n // sort: true,\n formatter: (cellContent, approvedLab) => (\n <>\n \n this.openPatientModal(e, approvedLab)}\n onPointerLeave={this.handleMouseExit()}\n >\n {approvedLab.name}\n \n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"type\",\n text: \"Lab Type\",\n // sort: true,\n formatter: (cellContent, approvedLab) => (\n <>\n \n {approvedLab.type == \"Main Lab\" ? (\n Main\n ) : (\n Collection\n )}\n \n \n ),\n filter: selectFilter({\n options: {\n // '': 'All',\n 'Main Lab': 'Main',\n 'Collection Point': 'Collection',\n },\n // defaultValue: 'Main Lab',\n }),\n },\n {\n dataField: \"email\",\n text: \"Email\",\n // sort: true,\n formatter: (cellContent, approvedLab) => (\n <>\n \n {approvedLab.email}\n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"lab_phone\",\n text: \"Phone\",\n // sort: true,\n formatter: (cellContent, approvedLab) => (\n <>\n \n {approvedLab.lab_phone}\n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"offered_tests\",\n text: \"Offered Tests\",\n sort: true,\n formatter: (cellContent, approvedLab) => (\n <>\n \n {approvedLab.offered_tests}\n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"pathologists\",\n text: \"Pathologist\",\n sort: true,\n formatter: (cellContent, approvedLab) => (\n <>\n \n {approvedLab.pathologists}\n \n \n ), filter: textFilter(),\n },\n {\n dataField: \"sample_collectors\",\n text: \"Sample Collector\",\n sort: true,\n formatter: (cellContent, approvedLab) => (\n <>\n \n {approvedLab.sample_collectors}\n \n \n ), filter: textFilter(),\n },\n {\n dataField: \"quality_certificates\",\n text: \"Quality Certificate\",\n sort: true,\n formatter: (cellContent, approvedLab) => (\n <>\n \n {approvedLab.quality_certificates}\n \n \n ), filter: textFilter(),\n },\n\n // {\n // dataField: \"registered_at\",\n // text: \"Registeration\",\n // // sort: true,\n // formatter: (cellContent, approvedLab) => (\n // <>\n // \n // {new Date(approvedLab.registered_at).toLocaleDateString(\"en-US\", {\n // year: \"numeric\",\n // month: \"2-digit\",\n // day: \"2-digit\",\n // }).replace(/\\//g, '-')}\n // \n // \n // ), filter: textFilter(),\n // },\n // {\n // dataField: \"done_at\",\n // text: \"Approvel\",\n // // sort: true,\n // formatter: (cellContent, approvedLab) => (\n // <>\n // \n // {new Date(approvedLab.done_at).toLocaleDateString(\"en-US\", {\n // year: \"numeric\",\n // month: \"2-digit\",\n // day: \"2-digit\",\n // }).replace(/\\//g, '-')}\n // \n // \n // ),\n // filter: textFilter(),\n // },\n\n // {\n // dataField: \"is_blocked\",\n // text: \"Blocked\",\n // sort: true,\n // formatter: (cellContent, donor) => (\n // <>\n // {donor.is_blocked == true ? (\n // \n // Yes\n // \n // ) : (\n // \n // No\n // \n // )}\n // \n // ),\n // },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.handlePatientFeedbackClick =\n this.handlePatientFeedbackClick.bind(this);\n }\n\n componentDidMount() {\n const { onGetApprovedLabs } = this.props;\n onGetApprovedLabs(this.state.user_id);\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n lab_address: arg.lab_address,\n lab_name: arg.lab_name,\n lab_city: arg.lab_city,\n registered_at: arg.registered_at,\n done_at: arg.done_at,\n isHovered: true,\n });\n };\n handleMouseExit = () => {\n this.setState({\n PatientModal: false,\n isHovered: false,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n handlePatientFeedbackClick = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggle();\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n exportToExcel = () => {\n const { approvedLabs } = this.props;\n const fileType = \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\n const fileExtension = \".xlsx\";\n\n // Define fields to export\n const fieldsToExport = [\n \"lab_name\",\n \"lab_address\",\n \"lab_city\",\n \"email\",\n \"lab_phone\",\n \"type\",\n ];\n\n // Map each row to an object with only the desired fields\n const dataToExport = approvedLabs.map(statement => {\n const rowData = {};\n fieldsToExport.forEach(field => {\n rowData[field] = statement[field];\n });\n return rowData;\n });\n\n // Convert data to Excel format and save as file\n const ws = XLSX.utils.json_to_sheet(dataToExport);\n const wb = { Sheets: { data: ws }, SheetNames: [\"data\"] };\n const excelBuffer = XLSX.write(wb, { bookType: \"xlsx\", type: \"array\" });\n const data = new Blob([excelBuffer], { type: fileType });\n const fileName = \"approved_labs\" + fileExtension;\n saveAs(data, fileName);\n };\n\n render() {\n const { SearchBar } = Search;\n const { approvedLabs } = this.props;\n const data = this.state.data;\n const { onGetApprovedLabs } = this.props;\n\n const pageOptions = {\n sizePerPage: 50,\n totalSize: approvedLabs.length, // replace later with size(approvedLabs),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n const iconStyle = { color: 'red' }; // Customize the color here\n\n return (\n \n
    \n \n Approved Labs | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n \n
    \n \n Note: When lab is approved audit for the lab is auto generated. \nWhen lab is approved b2b shares for all the existing b2b clients is automatically added (Share is predefined by Labhazir).\n \n \n
    \n
    \n \n Note: There will be Approved and Active Labs Shown on it.\n \n
    \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n order === 'desc' ? : }} // Customize sort caret icons\n\n />\n {this.state.isHovered && (\n \n \n \n \n \n \n
    \n \n \n {/*
    \n
    \n \n
    \n
    \n \n
    \n
    */}\n {/*
    \n
    \n \n
    \n
    \n \n
    \n
    */}\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n\n \n
    \n \n
    \n
    \n
    \n
    \n \n )}\n
    \n \n
    \n\n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nApprovedLabs.propTypes = {\n match: PropTypes.object,\n approvedLabs: PropTypes.array,\n className: PropTypes.any,\n onGetApprovedLabs: PropTypes.func,\n};\nconst mapStateToProps = ({ registrationAdmin }) => ({\n approvedLabs: registrationAdmin.approvedLabs,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetApprovedLabs: () => dispatch(getApprovedLabs()),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(ApprovedLabs));\n","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport { Tooltip } from \"@material-ui/core\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalBody,\n ModalHeader,\n\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getUnapprovedLabs,\n approveUnapproveLab,\n} from \"store/registration-admin/actions\";\nimport \"assets/scss/table.scss\";\n\nclass UnapprovedLabs extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n unapprovedLabs: [],\n id: \"\",\n tooltipContent: [\"Worst\", \"Bad\", \"Average\", \"Good\", \"Excellent\"],\n approvedLab: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n approvedLabListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, approvedLab) => <>{approvedLab.id},\n },\n {\n dataField: \"city\",\n text: \"Lab City\",\n sort: true,\n formatter: (cellContent, approvedLab) => (\n <>\n {approvedLab.city}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"name\",\n text: \"Lab Name\",\n // sort: true,\n formatter: (cellContent, approvedLab) => (\n <>\n \n this.openPatientModal(e, approvedLab)}\n onPointerLeave={this.handleMouseExit()}\n >\n {approvedLab.name}\n \n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"type\",\n text: \"Lab Type\",\n // sort: true,\n formatter: (cellContent, approvedLab) => (\n <>\n \n {approvedLab.type == \"Main Lab\" ? (\n Main\n ) : (\n Collection\n )}\n \n \n ),\n filter: selectFilter({\n options: {\n // '': 'All',\n 'Main Lab': 'Main',\n 'Collection Point': 'Collection',\n },\n // defaultValue: 'Main Lab',\n }),\n },\n {\n dataField: \"email\",\n text: \"Email\",\n // sort: true,\n formatter: (cellContent, approvedLab) => (\n <>\n \n {approvedLab.email}\n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"lab_phone\",\n text: \"Phone\",\n // sort: true,\n formatter: (cellContent, approvedLab) => (\n <>\n \n {approvedLab.lab_phone}\n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"address\",\n text: \"Address\",\n sort: true,\n formatter: (cellContent, approvedLab) => (\n \n {approvedLab.address}\n \n ),filter: textFilter(),\n },\n // {\n // dataField: \"data\",\n // text: \"id\",\n // isDummyField: true,\n // editable: false,\n // text: \"Action\",\n // formatter: (cellContent, pendingLab) => (\n // <>\n // \n // this.handleApprovedEvent(e, pendingLab.id)}\n // >\n // \n // {\" \"}\n // \n // ),\n // },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.handleApprovedEvent = this.handleApprovedEvent.bind(this);\n }\n\n componentDidMount() {\n const { unapprovedLabs, onGetUnapprovedLabs } = this.props;\n onGetUnapprovedLabs(this.state.user_id);\n this.setState({ unapprovedLabs });\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n name: arg.name,\n registered_at: arg.registered_at,\n done_at: arg.done_at,\n isHovered: true,\n });\n };\n handleMouseExit = () => {\n this.setState({\n PatientModal: false,\n isHovered: false,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleApprovedEvent = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggle();\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { unapprovedLabs } = this.props;\n const data = this.state.data;\n const { onApproveUnapproveLab, onGetUnapprovedLabs } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: unapprovedLabs.length, // replace later with size(unapprovedLabs),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Unapproved Labs | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n
    \n \n Note: There will be UnapprovedApproved and Inactive Labs Shown on it.\n \n \n
    \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n \n {this.state.isHovered && (\n \n \n \n \n \n \n
    \n \n \n {/*
    \n
    \n \n
    \n
    \n \n
    \n
    */}\n {/*
    \n
    \n \n
    \n
    \n \n
    \n
    */}\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n )}\n \n
    \n \n this.setState({\n modal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n \n {\n const data = {\n id: this.state.user_id,\n labId: this.state.id,\n refereree_percentage:\n values.refereree_percentage,\n };\n\n // approve lab\n onApproveUnapproveLab(data);\n\n // Calling to update list record\n setTimeout(() => {\n onGetUnapprovedLabs();\n }, 1000);\n\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n
    \n \n \n \n
    \n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nUnapprovedLabs.propTypes = {\n match: PropTypes.object,\n unapprovedLabs: PropTypes.array,\n className: PropTypes.any,\n onGetUnapprovedLabs: PropTypes.func,\n onApproveUnapproveLab: PropTypes.func,\n};\nconst mapStateToProps = ({ registrationAdmin }) => ({\n unapprovedLabs: registrationAdmin.unapprovedLabs,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onApproveUnapproveLab: data => dispatch(approveUnapproveLab(data)),\n onGetUnapprovedLabs: () => dispatch(getUnapprovedLabs()),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(UnapprovedLabs));\n","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalBody,\n} from \"reactstrap\";\nimport { Tooltip } from \"@material-ui/core\";\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getPendingB2BClients,\n approveUnapproveB2BClient,\n} from \"store/registration-admin/actions\";\n\nimport ApproveUnapproveModal from \"components/Common/ApproveUnapproveModal\";\nimport \"assets/scss/table.scss\";\n\nclass PendingB2BClients extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n pendingB2BClients: [],\n id: \"\",\n isApproved: false,\n unapprovedModal: false,\n tooltipContent: [\"Worst\", \"Bad\", \"Average\", \"Good\", \"Excellent\"],\n pendingB2BClient: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n pendingB2BClientListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, pendingB2BClient) => (\n <>{pendingB2BClient.id}\n ),\n },\n {\n dataField: \"business_name\",\n text: \"Business name\",\n sort: true,\n },\n {\n dataField: \"email\",\n text: \"Email\",\n sort: true,\n },\n {\n dataField: \"landline\",\n text: \"Landline\",\n sort: true,\n },\n {\n dataField: \"registered_at\",\n text: \"Registered at\",\n sort: true,\n formatter: (cellContent, pendingB2BClient) => (\n <>\n \n {new Date(pendingB2BClient.registered_at).toLocaleString(\n \"en-US\"\n )}\n \n \n ),\n },\n {\n dataField: \"website_url\",\n text: \"Website URL\",\n sort: true,\n formatter: (cellContent, pendingB2BClient) => (\n <>\n \n {pendingB2BClient.website_url}\n \n \n ),\n },\n {\n dataField: \"data\",\n text: \"id\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, pendingB2BClient) => (\n <>\n \n this.handleApprovedEvent(pendingB2BClient.id)}\n >\n \n \n {\" \"}\n \n this.handleUnapprovedEvent(pendingB2BClient.id)}\n >\n \n \n \n \n ),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.handleApprovedEvent = this.handleApprovedEvent.bind(this);\n }\n\n componentDidMount() {\n const { pendingB2BClients, onGetPendingB2BClients } = this.props;\n onGetPendingB2BClients();\n this.setState({ pendingB2BClients });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleApprovedEvent = id => {\n this.setState({ id: id, isApproved: true, unapprovedModal: true });\n };\n\n handleUnapprovedEvent = id => {\n this.setState({ id: id, isApproved: false, unapprovedModal: true });\n };\n\n callOnApproveUnapproveB2BClient = () => {\n const { onApproveUnapproveB2BClient, onGetPendingB2BClients } = this.props;\n\n const data = {\n id: this.state.user_id,\n b2bId: this.state.id,\n isApproved: this.state.isApproved,\n };\n\n // calling to unapprove lab\n onApproveUnapproveB2BClient(data);\n\n // Calling to update list record\n setTimeout(() => {\n onGetPendingB2BClients();\n }, 2000);\n\n this.setState({ unapprovedModal: false });\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { pendingB2BClients } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: pendingB2BClients.length, // replace later with size(pendingB2BClients),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Pending B2B Clients | Lab Hazir\n \n\n this.setState({ unapprovedModal: false })}\n />\n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nPendingB2BClients.propTypes = {\n match: PropTypes.object,\n pendingB2BClients: PropTypes.array,\n className: PropTypes.any,\n onGetPendingB2BClients: PropTypes.func,\n onApproveUnapproveB2BClient: PropTypes.func,\n};\nconst mapStateToProps = ({ registrationAdmin }) => ({\n pendingB2BClients: registrationAdmin.pendingB2BClients,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onApproveUnapproveB2BClient: data =>\n dispatch(approveUnapproveB2BClient(data)),\n onGetPendingB2BClients: () => dispatch(getPendingB2BClients()),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PendingB2BClients));\n","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Card, CardBody, Col, Container, Row } from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { getApprovedB2BClients } from \"store/registration-admin/actions\";\nimport \"assets/scss/table.scss\";\n\nclass ApprovedB2BClients extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n approvedB2BClients: [],\n id: \"\",\n tooltipContent: [\"Worst\", \"Bad\", \"Average\", \"Good\", \"Excellent\"],\n approvedB2BClient: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n approvedB2BClientListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, pendingB2BClient) => (\n <>{pendingB2BClient.id}\n ),\n },\n {\n dataField: \"business_name\",\n text: \"Business name\",\n sort: true,\n },\n {\n dataField: \"email\",\n text: \"Email\",\n sort: true,\n },\n {\n dataField: \"landline\",\n text: \"Landline\",\n sort: true,\n },\n {\n dataField: \"registered_at\",\n text: \"Registered at\",\n sort: true,\n formatter: (cellContent, pendingB2BClient) => (\n <>\n \n {new Date(pendingB2BClient.registered_at).toLocaleString(\n \"en-US\"\n )}\n \n \n ),\n },\n {\n dataField: \"done_at\",\n text: \"Approved at\",\n sort: true,\n formatter: (cellContent, approvedLab) => (\n <>\n \n {new Date(approvedLab.done_at).toLocaleString(\"en-US\")}\n \n \n ),\n },\n {\n dataField: \"is_blocked\",\n text: \"Blocked\",\n sort: true,\n formatter: (cellContent, donor) => (\n <>\n {donor.is_blocked == true ? (\n \n Yes\n \n ) : (\n \n No\n \n )}\n \n ),\n },\n {\n dataField: \"website_url\",\n text: \"Website URL\",\n sort: true,\n formatter: (cellContent, pendingB2BClient) => (\n <>\n \n {pendingB2BClient.website_url}\n \n \n ),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.handlePatientFeedbackClick =\n this.handlePatientFeedbackClick.bind(this);\n }\n\n componentDidMount() {\n const { approvedB2BClients, onGetApprovedB2BClients } = this.props;\n onGetApprovedB2BClients(this.state.user_id);\n this.setState({ approvedB2BClients });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handlePatientFeedbackClick = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggle();\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { approvedB2BClients } = this.props;\n const { onGetApprovedB2BClients } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: approvedB2BClients.length, // replace later with size(approvedB2BClients),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Approved B2B Clients | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nApprovedB2BClients.propTypes = {\n match: PropTypes.object,\n approvedB2BClients: PropTypes.array,\n className: PropTypes.any,\n onGetApprovedB2BClients: PropTypes.func,\n};\nconst mapStateToProps = ({ registrationAdmin }) => ({\n approvedB2BClients: registrationAdmin.approvedB2BClients,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetApprovedB2BClients: () => dispatch(getApprovedB2BClients()),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(ApprovedB2BClients));\n","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Card, CardBody, Col, Container, Row } from \"reactstrap\";\nimport { Tooltip } from \"@material-ui/core\";\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getUnapprovedB2BClients,\n approveUnapproveB2BClient,\n} from \"store/registration-admin/actions\";\n\nimport ApproveUnapproveModal from \"components/Common/ApproveUnapproveModal\";\nimport \"assets/scss/table.scss\";\n\nclass UnapprovedB2BClients extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n unapprovedB2BClients: [],\n id: \"\",\n isApproved: false,\n unapprovedModal: false,\n tooltipContent: [\"Worst\", \"Bad\", \"Average\", \"Good\", \"Excellent\"],\n approvedB2BClient: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n approvedB2BClientListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, pendingB2BClient) => (\n <>{pendingB2BClient.id}\n ),\n },\n {\n dataField: \"business_name\",\n text: \"Business name\",\n sort: true,\n },\n {\n dataField: \"email\",\n text: \"Email\",\n sort: true,\n },\n {\n dataField: \"landline\",\n text: \"Landline\",\n sort: true,\n },\n {\n dataField: \"registered_at\",\n text: \"Registered at\",\n sort: true,\n formatter: (cellContent, pendingB2BClient) => (\n <>\n \n {new Date(pendingB2BClient.registered_at).toLocaleString(\n \"en-US\"\n )}\n \n \n ),\n },\n {\n dataField: \"done_at\",\n text: \"Unapproved at\",\n sort: true,\n formatter: (cellContent, approvedLab) => (\n <>\n \n {new Date(approvedLab.done_at).toLocaleString(\"en-US\")}\n \n \n ),\n },\n {\n dataField: \"website_url\",\n text: \"Website URL\",\n sort: true,\n formatter: (cellContent, pendingB2BClient) => (\n <>\n \n {pendingB2BClient.website_url}\n \n \n ),\n },\n {\n dataField: \"data\",\n text: \"id\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, pendingB2BClient) => (\n
    \n \n this.handleApprovedEvent(pendingB2BClient.id)}\n >\n \n \n \n
    \n ),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.handleApprovedEvent = this.handleApprovedEvent.bind(this);\n }\n\n componentDidMount() {\n const { unapprovedB2BClients, onGetUnapprovedB2BClients } = this.props;\n onGetUnapprovedB2BClients(this.state.user_id);\n this.setState({ unapprovedB2BClients });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleApprovedEvent = id => {\n this.setState({ id: id, isApproved: true, unapprovedModal: true });\n };\n\n callOnApproveUnapproveB2BClient = () => {\n const { onApproveUnapproveB2BClient, onGetUnapprovedB2BClients } =\n this.props;\n\n const data = {\n id: this.state.user_id,\n b2bId: this.state.id,\n isApproved: this.state.isApproved,\n };\n\n // calling to unapprove lab\n onApproveUnapproveB2BClient(data);\n\n // Calling to update list record\n setTimeout(() => {\n onGetUnapprovedB2BClients();\n }, 2000);\n\n this.setState({ unapprovedModal: false });\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { unapprovedB2BClients } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: unapprovedB2BClients.length, // replace later with size(unapprovedB2BClients),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Unapproved B2B Clients | Lab Hazir\n \n\n this.setState({ unapprovedModal: false })}\n />\n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nUnapprovedB2BClients.propTypes = {\n match: PropTypes.object,\n unapprovedB2BClients: PropTypes.array,\n className: PropTypes.any,\n onGetUnapprovedB2BClients: PropTypes.func,\n onApproveUnapproveB2BClient: PropTypes.func,\n};\nconst mapStateToProps = ({ registrationAdmin }) => ({\n unapprovedB2BClients: registrationAdmin.unapprovedB2BClients,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onApproveUnapproveB2BClient: data =>\n dispatch(approveUnapproveB2BClient(data)),\n onGetUnapprovedB2BClients: () => dispatch(getUnapprovedB2BClients()),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(UnapprovedB2BClients));\n","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalBody,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\nimport { Tooltip } from \"@material-ui/core\";\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getPendingDonors,\n approveUnapproveDonor,\n} from \"store/registration-admin/actions\";\n\nimport ApproveUnapproveModal from \"components/Common/ApproveUnapproveModal\";\nimport \"assets/scss/table.scss\";\n\nclass PendingDonors extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n pendingDonors: [],\n id: \"\",\n isApproved: false,\n unapprovedModal: false,\n tooltipContent: [\"Worst\", \"Bad\", \"Average\", \"Good\", \"Excellent\"],\n pendingDonor: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n pendingDonorListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, pendingDonor) => <>{pendingDonor.id},\n },\n {\n dataField: \"name\",\n text: \"Name\",\n sort: true,\n },\n {\n dataField: \"email\",\n text: \"Email\",\n sort: true,\n },\n {\n dataField: \"phone\",\n text: \"Phone No.\",\n sort: true,\n },\n {\n dataField: \"cnic\",\n text: \"CNIC\",\n sort: true,\n },\n {\n dataField: \"type\",\n text: \"Type\",\n sort: true,\n },\n {\n dataField: \"company_name\",\n text: \"Company Name\",\n sort: true,\n formatter: (cellContent, donor) => (\n <>\n {donor.type == \"Individual\" ? (\n None\n ) : (\n {donor.company_name}\n )}\n \n ),\n },\n {\n dataField: \"is_income_tax_payable\",\n text: \"Income tax payable\",\n sort: true,\n formatter: (cellContent, donor) => (\n <>\n {donor.is_income_tax_payable == true ? (\n Yes\n ) : (\n No\n )}\n \n \n \n ),\n },\n {\n dataField: \"registered_at\",\n text: \"Registered at\",\n sort: true,\n formatter: (cellContent, pendingDonor) => (\n <>\n \n {new Date(pendingDonor.registered_at).toLocaleString(\"en-US\")}\n \n \n ),\n },\n {\n dataField: \"data\",\n text: \"id\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, donor) => (\n <>\n \n this.handleApprovedEvent(donor.id)}\n >\n \n \n {\" \"}\n \n this.handleUnapprovedEvent(donor.id)}\n >\n \n \n \n \n ),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.handleApprovedEvent = this.handleApprovedEvent.bind(this);\n }\n\n componentDidMount() {\n const { pendingDonors, onGetPendingDonors } = this.props;\n onGetPendingDonors();\n this.setState({ pendingDonors });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleApprovedEvent = id => {\n this.setState({ id: id, isApproved: true, unapprovedModal: true });\n console.log(\"ID: \", this.state.id);\n };\n\n handleUnapprovedEvent = id => {\n this.setState({ id: id, isApproved: false, unapprovedModal: true });\n };\n\n callOnApproveUnapproveDonor = () => {\n const { onApproveUnapproveDonor, onGetPendingDonors } = this.props;\n\n const data = {\n id: this.state.user_id,\n donorId: this.state.id,\n isApproved: this.state.isApproved,\n };\n\n // calling to unapprove lab\n onApproveUnapproveDonor(data);\n\n // Calling to update list record\n setTimeout(() => {\n onGetPendingDonors();\n }, 2000);\n\n this.setState({ unapprovedModal: false });\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { pendingDonors } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: pendingDonors.length, // replace later with size(pendingDonors),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Pending Donors | Lab Hazir\n \n\n this.setState({ unapprovedModal: false })}\n />\n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nPendingDonors.propTypes = {\n match: PropTypes.object,\n pendingDonors: PropTypes.array,\n className: PropTypes.any,\n onGetPendingDonors: PropTypes.func,\n onApproveUnapproveDonor: PropTypes.func,\n};\nconst mapStateToProps = ({ registrationAdmin }) => ({\n pendingDonors: registrationAdmin.pendingDonors,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onApproveUnapproveDonor: data => dispatch(approveUnapproveDonor(data)),\n onGetPendingDonors: () => dispatch(getPendingDonors()),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PendingDonors));\n","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Card, CardBody, Col, Container, Row } from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { getApprovedDonors } from \"store/registration-admin/actions\";\nimport \"assets/scss/table.scss\";\n\nclass ApprovedDonors extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n approvedDonors: [],\n id: \"\",\n tooltipContent: [\"Worst\", \"Bad\", \"Average\", \"Good\", \"Excellent\"],\n approvedDonor: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n approvedDonorListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, pendingDonor) => <>{pendingDonor.id},\n },\n {\n dataField: \"name\",\n text: \"Name\",\n sort: true,\n },\n {\n dataField: \"email\",\n text: \"Email\",\n sort: true,\n },\n {\n dataField: \"phone\",\n text: \"Phone No.\",\n sort: true,\n },\n {\n dataField: \"cnic\",\n text: \"CNIC\",\n sort: true,\n },\n {\n dataField: \"type\",\n text: \"Type\",\n sort: true,\n },\n {\n dataField: \"company_name\",\n text: \"Company Name\",\n sort: true,\n formatter: (cellContent, donor) => (\n <>\n {donor.type == \"Individual\" ? (\n None\n ) : (\n {donor.company_name}\n )}\n \n ),\n },\n {\n dataField: \"is_income_tax_payable\",\n text: \"Income tax payable\",\n sort: true,\n formatter: (cellContent, donor) => (\n <>\n {donor.is_income_tax_payable == true ? (\n Yes\n ) : (\n No\n )}\n \n ),\n },\n {\n dataField: \"registered_at\",\n text: \"Registered at\",\n sort: true,\n formatter: (cellContent, pendingDonor) => (\n <>\n \n {new Date(pendingDonor.registered_at).toLocaleString(\"en-US\")}\n \n \n ),\n },\n {\n dataField: \"done_at\",\n text: \"Approved at\",\n sort: true,\n formatter: (cellContent, approvedLab) => (\n <>\n \n {new Date(approvedLab.done_at).toLocaleString(\"en-US\")}\n \n \n ),\n },\n {\n dataField: \"is_blocked\",\n text: \"Blocked\",\n sort: true,\n formatter: (cellContent, donor) => (\n <>\n {donor.is_blocked == true ? (\n \n Yes\n \n ) : (\n \n No\n \n )}\n \n ),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.handlePatientFeedbackClick =\n this.handlePatientFeedbackClick.bind(this);\n }\n\n componentDidMount() {\n const { approvedDonors, onGetApprovedDonors } = this.props;\n onGetApprovedDonors(this.state.user_id);\n this.setState({ approvedDonors });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handlePatientFeedbackClick = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggle();\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { approvedDonors } = this.props;\n const { onGetApprovedDonors } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: approvedDonors.length, // replace later with size(approvedDonors),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Approved Donors | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nApprovedDonors.propTypes = {\n match: PropTypes.object,\n approvedDonors: PropTypes.array,\n className: PropTypes.any,\n onGetApprovedDonors: PropTypes.func,\n};\nconst mapStateToProps = ({ registrationAdmin }) => ({\n approvedDonors: registrationAdmin.approvedDonors,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetApprovedDonors: () => dispatch(getApprovedDonors()),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(ApprovedDonors));\n","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Card, CardBody, Col, Container, Row } from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getUnapprovedDonors,\n approveUnapproveDonor,\n} from \"store/registration-admin/actions\";\nimport { Tooltip } from \"@material-ui/core\";\nimport ApproveUnapproveModal from \"components/Common/ApproveUnapproveModal\";\nimport \"assets/scss/table.scss\";\n\nclass UnapprovedDonors extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n unapprovedDonors: [],\n id: \"\",\n isApproved: false,\n unapprovedModal: false,\n tooltipContent: [\"Worst\", \"Bad\", \"Average\", \"Good\", \"Excellent\"],\n approvedDonor: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n approvedDonorListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, pendingDonor) => <>{pendingDonor.id},\n },\n {\n dataField: \"name\",\n text: \"Name\",\n sort: true,\n },\n {\n dataField: \"email\",\n text: \"Email\",\n sort: true,\n },\n {\n dataField: \"phone\",\n text: \"Phone No.\",\n sort: true,\n },\n {\n dataField: \"cnic\",\n text: \"CNIC\",\n sort: true,\n },\n {\n dataField: \"type\",\n text: \"Type\",\n sort: true,\n },\n {\n dataField: \"company_name\",\n text: \"Company Name\",\n sort: true,\n formatter: (cellContent, donor) => (\n <>\n {donor.type == \"Individual\" ? (\n None\n ) : (\n {donor.company_name}\n )}\n \n ),\n },\n {\n dataField: \"is_income_tax_payable\",\n text: \"Income tax payable\",\n sort: true,\n formatter: (cellContent, donor) => (\n <>\n {donor.is_income_tax_payable == true ? (\n Yes\n ) : (\n No\n )}\n \n ),\n },\n {\n dataField: \"done_at\",\n text: \"Unapproved at\",\n sort: true,\n formatter: (cellContent, approvedLab) => (\n <>\n \n {new Date(approvedLab.done_at).toLocaleString(\"en-US\")}\n \n \n ),\n },\n {\n dataField: \"data\",\n text: \"id\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, pendingDonor) => (\n <>\n \n this.handleApprovedEvent(pendingDonor.id)}\n >\n \n \n \n \n ),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.handleApprovedEvent = this.handleApprovedEvent.bind(this);\n }\n\n componentDidMount() {\n const { unapprovedDonors, onGetUnapprovedDonors } = this.props;\n onGetUnapprovedDonors(this.state.user_id);\n this.setState({ unapprovedDonors });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleApprovedEvent = id => {\n this.setState({ id: id, isApproved: true, unapprovedModal: true });\n };\n\n callOnApproveUnapproveDonor = () => {\n const { onApproveUnapproveDonor, onGetUnapprovedDonors } = this.props;\n\n const data = {\n id: this.state.user_id,\n donorId: this.state.id,\n isApproved: this.state.isApproved,\n };\n\n // calling to unapprove lab\n onApproveUnapproveDonor(data);\n\n // Calling to update list record\n setTimeout(() => {\n onGetUnapprovedDonors();\n }, 2000);\n\n this.setState({ unapprovedModal: false });\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { unapprovedDonors } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: unapprovedDonors.length, // replace later with size(unapprovedDonors),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Unapproved B2B Clients | Lab Hazir\n \n\n this.setState({ unapprovedModal: false })}\n />\n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nUnapprovedDonors.propTypes = {\n match: PropTypes.object,\n unapprovedDonors: PropTypes.array,\n className: PropTypes.any,\n onGetUnapprovedDonors: PropTypes.func,\n onApproveUnapproveDonor: PropTypes.func,\n};\nconst mapStateToProps = ({ registrationAdmin }) => ({\n unapprovedDonors: registrationAdmin.unapprovedDonors,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onApproveUnapproveDonor: data => dispatch(approveUnapproveDonor(data)),\n onGetUnapprovedDonors: () => dispatch(getUnapprovedDonors()),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(UnapprovedDonors));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\n\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Button,\n Row,\n Modal,\n ModalHeader,\n ModalBody,\n Label,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport {\n getReferrelFeeLabs,\n updateReferrelFeeLab,\n updateReferrelAllFeeLab,\n} from \"store/referrel-fee-to-lab/actions\";\nimport { isEmpty, size } from \"lodash\";\nimport ConfirmModal from \"components/Common/ConfirmModal\";\n\nimport \"assets/scss/table.scss\";\n\nclass ReferrelLabFee extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n referrelFeeLabs: [],\n referrelFeeLab: \"\",\n modal: false,\n confirmModal: false,\n isEditAll: true,\n id: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n referrelFeeLabColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, referrelFeeLabs) => <>{referrelFeeLabs.id},\n },\n {\n dataField: \"lab_name\",\n text: \"Lab Name\",\n sort: true,\n },\n {\n dataField: \"test_name\",\n text: \"Test Name\",\n sort: true,\n headerStyle: () => {\n return { width: \"30%\" };\n } \n },\n // {\n // dataField: \"duration_required\",\n // text: \"Turn Around Time\",\n // sort: true,\n // },\n // {\n // dataField: \"duration_type\",\n // text: \"Duration type\",\n // sort: true,\n // },\n // {\n // dataField: \"sample_type\",\n // text: \"Sample Type\",\n // sort: true,\n // },\n // {\n // dataField: \"price\",\n // text: \"Price\",\n // sort: true,\n // },\n // {\n // dataField: \"is_eqa_participation\",\n // text: \"EQA participation\",\n // sort: true,\n // },\n // {\n // dataField: \"is_home_sampling_available\",\n // text: \"Home sampling\",\n // sort: true,\n // },\n // {\n // dataField: \"is_test_performed\",\n // text: \"Test Performed\",\n // sort: true,\n // },\n {\n dataField: \"shared_percentage\",\n text: \"Referrel Fee\",\n sort: true,\n },\n // {\n // dataField: \"start_date_by_labhazir\",\n // text: \"Start Date\",\n // sort: true,\n // formatter: (cellContent, test) => (\n // <>\n // {!test.start_date_by_labhazir ? (\n // \n // Date not set\n // \n // ) : (\n // {new Date(test.start_date_by_labhazir).toLocaleString(\"en-US\")}\n // )}\n // \n // ),\n // },\n // {\n // dataField: \"end_date_by_labhazir\",\n // text: \"End Date\",\n // sort: true,\n // formatter: (cellContent, test) => (\n // <>\n // {!test.end_date_by_labhazir ? (\n // \n // Date not set\n // \n // ) : (\n // {new Date(test.end_date_by_labhazir).toLocaleString(\"en-US\")}\n // )}\n // \n // ),\n // },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, referrelFeeLab) => (\n
    \n \n this.handleEditBtnClick(referrelFeeLab)}\n >\n \n
    \n ),\n },\n ],\n };\n this.handleEditBtnClick = this.handleEditBtnClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleEditAllBtnClick = this.handleEditAllBtnClick.bind(this);\n\n }\n\n// componentDidMount() {\n// const { ongetReferrelFeeLabs } = this.props;\n// setTimeout(() => {\n// console.log(ongetReferrelFeeLabs());\n\n// setTimeout(() => {\n// this.setState({ referrelFeeLabs: this.props.referrelFeeLabs });\n// }, 1000);\n// }, 1000);\n// }\n\n componentDidMount() {\n // const { labs, onGetlabs } = this.props;\n // if (labs && !labs.length) {\n // onGetlabs();\n // }\n // this.setState({ labs });\n\n const { referrelFeeLabs, ongetReferrelFeeLabs } = this.props;\n // if (referrelFeeLabs && !referrelFeeLabs.length) {\n ongetReferrelFeeLabs(this.props.match.params.id);\n \n this.setState({ referrelFeeLabs });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n handleEditAllBtnClick = () => {\n this.setState({ isEditAll: true, referrelFeeLab: \"\"});\n\n this.toggle();\n };\n\n // handleAPICall = () => {\n // const {\n // ongetReferrelFeeLabs,\n // onupdateReferrelAllFeeLab,\n // onupdateReferrelFeeLab,\n // } = this.props;\n\n // if (this.state.isEditAll) {\n // onupdateReferrelAllFeeLab(this.state.referrelFeeLab);\n\n // // console.log(onAddNewLabShare(this.state.b2bLabShare));\n\n // setTimeout(() => {\n // ongetReferrelFeeLabs(this.props.match.params.id);\n\n // setTimeout(() => {\n // this.setState({ referrelFeeLabs: this.props.referrelFeeLabs });\n // }, 1000);\n // }, 1000);\n // } else {\n // onupdateReferrelFeeLab(this.state.b2bLabShare);\n\n // setTimeout(() => {\n // ongetReferrelFeeLabs(this.props.match.params.id);\n\n // setTimeout(() => {\n // this.setState({ referrelFeeLabs: this.props.referrelFeeLabs });\n // }, 1000);\n // }, 1000);\n // }\n handleAPICall = () => {\n const {\n ongetReferrelFeeLabs,\n onupdateReferrelAllFeeLab,\n onupdateReferrelFeeLab,\n } = this.props;\n \n if (this.state.isEditAll) {\n onupdateReferrelAllFeeLab(this.state.referrelFeeLab);\n \n ongetReferrelFeeLabs();\n \n setTimeout(() => {\n this.setState({ referrelFeeLabs: this.props.match.params.id });\n }, 1000);\n } else {\n onupdateReferrelFeeLab(this.state.referrelFeeLab);\n \n ongetReferrelFeeLabs();\n \n setTimeout(() => {\n this.setState({ referrelFeeLabs: this.props.match.params.id });\n }, 1000);\n }\n \n this.toggle();\n };\n // if (this.state.isEditAll) {\n // onupdateReferrelAllFeeLab(this.state.referrelFeeLab);\n\n // ongetReferrelFeeLabs();\n\n // setTimeout(() => {\n // this.setState({ referrelFeeLabs: this.props.user_id});\n // }, 1000);\n // } else {\n // onupdateReferrelFeeLab(this.state.referrelFeeLab);\n\n // ongetReferrelFeeLabs();\n\n // setTimeout(() => {\n // this.setState({ referrelFeeLabs: this.props.user_id });\n // }, 1000);\n // }\n\n // this.toggle();\n // };\n\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { referrelFeeLabs } = this.props;\n if (\n !isEmpty(referrelFeeLabs) &&\n size(prevProps.referrelFeeLabs) !== size(referrelFeeLabs)\n ) {\n this.setState({\n referrelFeeLabs: {},\n isEdit: false,\n });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n handleEditBtnClick = arg => {\n const referrelFeeLab = arg;\n\n this.setState({\n isEditAll: false,\n referrelFeeLab: referrelFeeLab,\n // id: referrelFeeLab.id,\n });\n\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { referrelFeeLabs } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const referrelFeeLab = this.state.referrelFeeLab;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: referrelFeeLabs.length, // replace later with size(referrelFeeLabs),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n const {\n ongetReferrelFeeLabs,\n onupdateReferrelAllFeeLab,\n onupdateReferrelFeeLab,\n } = this.props;\n\n return (\n \n
    \n \n Lab Hazir | Referrel Fee Lab Hazir\n \n this.setState({ confirmModal: false })}\n />\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n \n Referrel Fee\n All\n \n
    \n \n
    \n \n \n
    \n \n\n \n \n {!this.state.isEditAll\n ? \"Referrel on one test\"\n : \"Referrel on all tests\"}\n \n \n {\n if (this.state.isEditAll) {\n onupdateReferrelAllFeeLab(\n this.state.referrelFeeLab\n );\n } else {\n onupdateReferrelFeeLab(\n this.state.referrelFeeLab\n );\n }\n\n setTimeout(() => {\n ongetReferrelFeeLabs(\n this.props.match.params.id\n );\n\n setTimeout(() => {\n this.setState({\n referrelFeeLabs:\n this.props\n .referrelFeeLabs,\n });\n }, 1000);\n }, 1000);\n\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n
    \n \n {\n this.setState({\n referrelFeeLab: {\n id: this.state\n .referrelFeeLab\n .id,\n lab_id:\n this.props.match\n .params.id,\n shared_percentage:\n e.target.value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.shared_percentage &&\n touched.shared_percentage\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nReferrelLabFee.propTypes = {\n match: PropTypes.object,\n referrelFeeLabs: PropTypes.array,\n className: PropTypes.any,\n ongetReferrelFeeLabs: PropTypes.func,\n onupdateReferrelFeeLab: PropTypes.func,\n onupdateReferrelAllFeeLab: PropTypes.func,\n};\n\nconst mapStateToProps = ({ referrelFeeLabs }) => ({\n referrelFeeLabs: referrelFeeLabs.referrelFeeLabs,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n ongetReferrelFeeLabs: () => dispatch(getReferrelFeeLabs()),\n onupdateReferrelFeeLab: referrelFeeLab =>\n dispatch(updateReferrelFeeLab(referrelFeeLab)),\n onupdateReferrelAllFeeLab: referrelFeeLab =>\n dispatch(updateReferrelAllFeeLab(referrelFeeLab)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(ReferrelLabFee));\n","\nimport React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { isEmpty, map } from \"lodash\";\nimport Select from \"react-select\";\n\nimport {\n Card,\n Input,\n CardBody,\n Col,\n Container,\n Row,\n Table,\n Label,\n Modal,\n ModalHeader,\n ModalBody,\n} from \"reactstrap\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { onlyMedicalTestList } from \"store/only-medical-tests-list/actions\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getPutReferrelFeeLabs,\n updateReferrelFeeLab,\n updateReferrelAllFeeLab,\n} from \"store/referrel-fee-to-lab/actions\";\nimport \"assets/scss/table.scss\";\nimport ConfirmModal from \"components/Common/ConfirmModal\";\n\nimport \"assets/scss/table.scss\";\n// import { color } from \"html2canvas/dist/types/css/types/color\";\n\nclass ReferrelLabFee extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n referrelFeeLabs: [],\n referrelFeeLab: \"\",\n onlyMedicalTestList: [],\n selectedTest: null,\n modal: false,\n confirmModal: false,\n isEditAll: true,\n test_name: \"\",\n id: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n showNoResultMessage: false,\n };\n this.toggle = this.toggle.bind(this);\n console.log(\"test name in the state\", this.state.test_name)\n }\n\n componentDidMount() {\n const { onlyMedicalTestList, ononlyMedicalTestList } = this.props;\n\n if (onlyMedicalTestList && !onlyMedicalTestList.length) {\n console.log(ononlyMedicalTestList(this.state.user_id));\n }\n console.log(\"uuuuuuid\", this.props.match.params.uuid)\n const { referrelFeeLabs, ongetPutReferrelFeeLabs } = this.props;\n ongetPutReferrelFeeLabs(this.state.user_id);\n this.setState({ referrelFeeLabs });\n console.log(\"guest\", this.props.match.params.guest_id)\n }\n handleBlur = () => {\n // Reset the showNoResultMessage state to false before performing the search\n this.setState({ showNoResultMessage: false });\n\n // Calling API when focus is out of the text name and setting nearby tests array\n const { ongetPutReferrelFeeLabs } = this.props;\n const data = {\n test_name: this.state.test_name,\n };\n\n ongetPutReferrelFeeLabs(data);\n\n setTimeout(() => {\n // Update the referrelFeeLabs state with the search results\n this.setState({ referrelFeeLabs: this.props.referrelFeeLabs }, () => {\n // Check if the referrelFeeLabs array is empty after the search\n if (isEmpty(this.props.referrelFeeLabs)) {\n // Show the \"Sorry no result found\" message immediately\n this.setState({ showNoResultMessage: true });\n }\n });\n }, 200);\n };\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n onChangeTest = selectedOption => {\n this.setState({ test_name: selectedOption ? selectedOption.value : \"\" });\n };\n\n\n\n handleEditAllBtnClicks = () => {\n this.setState({ referrelFeeLab: \"\", isEdit: false, lab_id: \"\" });\n this.toggle();\n };\n handleEditAllBtnClick = () => {\n this.setState({ isEditAll: true, referrelFeeLab: \"\" });\n\n this.toggle();\n };\n\n handleAPICall = () => {\n const {\n ongetPutReferrelFeeLabs,\n onupdateReferrelAllFeeLab,\n onupdateReferrelFeeLab,\n } = this.props;\n\n if (this.state.isEditAll) {\n onupdateReferrelAllFeeLab(this.state.referrelFeeLab);\n\n // console.log(onAddNewLabShare(this.state.b2bLabShare));\n\n setTimeout(() => {\n ongetPutReferrelFeeLabs(this.state.user_id);\n\n setTimeout(() => {\n this.setState({ referrelFeeLabs: this.props.referrelFeeLabs });\n }, 1000);\n }, 1000);\n } else {\n onupdateReferrelFeeLab(this.state.b2bLabShare);\n\n setTimeout(() => {\n ongetPutReferrelFeeLabs(this.state.user_id);\n\n setTimeout(() => {\n this.setState({ referrelFeeLabs: this.props.referrelFeeLabs });\n }, 1000);\n }, 1000);\n }\n\n this.toggle();\n };\n\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n handleEditBtnClick = arg => {\n const referrelFeeLab = arg;\n\n this.setState({\n isEditAll: false,\n referrelFeeLab: referrelFeeLab,\n // id: referrelFeeLab.id,\n });\n\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { referrelFeeLabs } = this.props;\n const { isEdit, deleteModal } = this.state;\n const referrelFeeLab = this.state.referrelFeeLab;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: referrelFeeLabs.length,\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\",\n order: \"desc\",\n },\n ];\n\n const columns = [\n {\n dataField: \"test_id\",\n text: \"Test ID\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"test_name\",\n text: \"Test Name\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"test_categories\",\n text: \"Test Categories\",\n sort: true,\n formatter: (cellContent, referrelFeeLab) => (\n <>\n \n {referrelFeeLab?.test_categories || \"-\"}\n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"lab_city\",\n text: \"Lab City\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"lab_name\",\n text: \"Lab Name\",\n sort: true,\n formatter: (cellContent, referrelFeeLab) => (\n \n \n {referrelFeeLab?.lab_name || \"N/A\"}\n \n \n ), filter: textFilter(),\n \n },\n {\n dataField: \"type\",\n text: \"Lab Type\",\n // sort: true,\n formatter: (cellContent, referrelFeeLab) => (\n <>\n \n {referrelFeeLab.type == \"Main Lab\" ? (\n Main\n ) : (\n Collection\n )}\n \n \n ),\n filter: selectFilter({\n options: {\n // '': 'All',\n 'Main Lab': 'Main',\n 'Collection Point': 'Collection',\n },\n // defaultValue: 'Main Lab',\n }),\n },\n {\n dataField: \"price\",\n text: \"Price\",\n sort: true,\n formatter: (cellContent, referrelFeeLab) => (\n <>\n {referrelFeeLab.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ), filter: textFilter(),\n },\n {\n dataField: \"is_eqa_participation\",\n text: \"Is EQA Participation\",\n sort: true,\n formatter: (cellContent, referrelFeeLab) => (\n <>\n \n {referrelFeeLab?.is_eqa_participation || \"-\"}\n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"is_home_sampling_available\",\n text: \"Is Home Sampling Available\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"is_test_performed\",\n text: \"Is Test Performed\",\n sort: true,\n formatter: (cellContent, referrelFeeLab) => (\n <>\n \n {referrelFeeLab?.is_test_performed || \"-\"}\n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"shared_percentage\",\n text: \"Shared Percentage\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"shared_percentage_value\",\n text: \"Shared Value\",\n sort: true,\n formatter: (cellContent, referrelFeeLab) => (\n <>\n {(referrelFeeLab.price * referrelFeeLab.shared_percentage).toFixed().toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ), filter: textFilter(),\n },\n ];\n const testList = this.props.onlyMedicalTestList.map((test) => ({\n label: test.name,\n value: test.name,\n // isDisabled: this.state.selectedTest && test.name !== this.state.selectedTest.value,\n }));\n\n const {\n ongetPutReferrelFeeLabs,\n onupdateReferrelAllFeeLab,\n onupdateReferrelFeeLab,\n } = this.props;\n\n return (\n \n
    \n \n Lab Hazir | Referrel Fee Lab Hazir\n \n this.setState({ confirmModal: false })}\n />\n \n {/* Render Breadcrumbs */}\n \n \n \n
    \n \n Search By Test Name\n \n item.value === this.state.test_name)}\n className=\"defautSelectParent\"\n options={testList}\n style={{\n minWidth: \"300px\", // Set the width for the Select component\n // other styles if needed\n }}\n />\n
    \n \n \n
    \n \n
    \n \n
    \n \n \n \n {props => (\n
    \n {/* */}\n \n
    \n )}\n \n
    \n
    \n {this.state.showNoResultMessage && (\n \n
    \n

    \n Sorry no result found.\n

    \n
    \n
    \n )}\n
    \n
    \n
    \n );\n }\n}\n\nReferrelLabFee.propTypes = {\n match: PropTypes.object,\n referrelFeeLabs: PropTypes.array,\n className: PropTypes.any,\n ongetPutReferrelFeeLabs: PropTypes.func,\n onupdateReferrelFeeLab: PropTypes.func,\n onupdateReferrelAllFeeLab: PropTypes.func,\n ononlyMedicalTestList: PropTypes.func,\n onlyMedicalTestList: PropTypes.array,\n};\n\nconst mapStateToProps = ({ referrelFeeLabs, onlyMedicalTestList }) => ({\n referrelFeeLabs: referrelFeeLabs.referrelFeeLabs,\n onlyMedicalTestList: onlyMedicalTestList.onlyMedicalTestList,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n ongetPutReferrelFeeLabs: (data) => dispatch(getPutReferrelFeeLabs(data)),\n onupdateReferrelFeeLab: referrelFeeLab =>\n dispatch(updateReferrelFeeLab(referrelFeeLab)),\n onupdateReferrelAllFeeLab: referrelFeeLab =>\n dispatch(updateReferrelAllFeeLab(referrelFeeLab)),\n\n ononlyMedicalTestList: id => dispatch(onlyMedicalTestList(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(ReferrelLabFee));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport StarRatings from \"react-star-ratings\";\nimport BootstrapTable from 'react-bootstrap-table-next';\nimport filterFactory, { textFilter } from 'react-bootstrap-table2-filter';\n\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport { getLabsRating } from \"store/labs-rating/actions\";\nimport { getLabProfile } from \"../../store/actions\";\nimport { isEmpty, size } from \"lodash\";\n\nimport \"assets/scss/table.scss\";\n\nclass LabsRating extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n labsRating: [],\n labProfile:[],\n labsrating: \"\",\n rating:\"\",\n modal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n \n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { labsRating, onGetLabsRating } = this.props;\n onGetLabsRating(this.state.user_id);\n this.setState({ labsRating });\n const { labProfile, onGetLabProfile } = this.props;\n console.log(onGetLabProfile(this.state.user_id));\n this.setState({ labProfile }); \n console.log(\"state\",labProfile)\n console.log(\"state tyoeeee\", typeof labProfile)\n\n }\n \n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { labsRating } = this.props;\n if (!isEmpty(labsRating) && size(prevProps.labsRating) !== size(labsRating)) {\n this.setState({ labsRating: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n\n const columns=[\n \n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, labsrating) => <>{labsrating.id},\n filter: textFilter(),\n // headerStyle: { backgroundColor: '#DCDCDC' },\n },\n // {\n // dataField: \"order_id\",\n // text: \"Order id\",\n // sort: true,\n // filter: textFilter(),\n // },\n \n{\n dataField: \"name\",\n text: \"Lab Name\",\n sort: true,\n filter: textFilter(),\n formatter: (cellContent, labsrating) => (\n
    \n {cellContent}
    \n ),\n // headerStyle: { backgroundColor: '#B05450',fontFamily: 'Calibri', fontSize: '16px' },\n // style: {backgroundColor: '#D3A2A1',fontFamily: 'Calibri', fontSize: '16px' },\n},\n{\n dataField: \"city\",\n text: \"City\",\n sort: true,\n filter: textFilter(),\n formatter: (cellContent, labsrating) => (\n \n {cellContent}\n \n ),\n // headerStyle: { backgroundColor: '#B05450',fontFamily: 'Calibri', fontSize: '16px' },\n // style: {backgroundColor: '#ECB6B3',fontFamily: 'Calibri', fontSize: '16px' },\n},\n{\n dataField: \"rating\",\n text: \"Rating\",\n sort: true,\n formatter: (cellContent, labsrating) => ( \n \n ),\n // headerStyle: { backgroundColor: '#B05450',fontFamily: 'Calibri', fontSize: '16px' },\n // style: {backgroundColor: '#C57E7C',fontFamily: 'Calibri', fontSize: '16px' },\n filter: textFilter(),\n},\n \n // {\n // dataField: \"review\",\n // text: \"Review\",\n // sort: true,\n // filter: textFilter(),\n // },\n \n ]\n const { SearchBar } = Search;\n\n const { labsRating } = this.props;\n console.log(\"type render\", typeof labProfile)\n\n\n const { onGetLabsRating } = this.props;\n const labsrating = this.state.labsRating;\n // const labprofile=this.state.labprofile;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: labsRating.length, // replace later with size(labsRating),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n // console.log(\"hello\",this.props.labProfile.type),\n \n
    \n \n Labs Rating List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n \n {toolkitprops => (\n \n \n {/* \n
    \n
    \n \n \n
    \n
    \n */}\n {/* \n
    \n \n \n
    \n */}\n
    \n \n \n
    \n \n \n\n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nLabsRating.propTypes = {\n match: PropTypes.object,\n labsRating: PropTypes.array,\n labProfile: PropTypes.array,\n className: PropTypes.any,\n onGetLabsRating: PropTypes.func,\n match: PropTypes.object,\n onGetLabProfile: PropTypes.func,\n location: PropTypes.object,\n error: PropTypes.any,\n success: PropTypes.any,\n};\n\nconst mapStateToProps = ({ labsRating}) => ({\n labsRating: labsRating.labsRating,\n labProfile:labsRating.labProfile,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetLabsRating: () => dispatch(getLabsRating()),\n onGetLabProfile: id => dispatch(getLabProfile(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(LabsRating));\n","import {\n GET_LABS_RATING,\n GET_LABS_RATING_FAIL,\n GET_LABS_RATING_SUCCESS,\n\n} from \"./actionTypes\";\n\nexport const getLabsRating = () => ({\n type: GET_LABS_RATING,\n payload: {},\n});\n\nexport const getLabsRatingSuccess = labsRating => ({\n type: GET_LABS_RATING_SUCCESS,\n payload: labsRating,\n});\n\nexport const getLabsRatingFail = error => ({\n type: GET_LABS_RATING_FAIL,\n payload: error,\n});","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport axios from \"axios\";\nimport { useParams } from 'react-router-dom'\nimport { withRouter, Link } from \"react-router-dom\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n// import BootstrapSwitchButton from 'bootstrap-switch-button-react'\nimport {\n FormGroup,\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\nimport {\n // getUnits,\n getACorporate,\n} from \"store/corporatedata/actions\";\nimport {\n // getUnits,\n updateACorporateStatus,\n} from \"store/offered-tests/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass OfferedTestsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n cemployeeDatas: [],\n tests: [],\n labProfiles: [],\n selectedcorporate: null,\n // units: [],\n offeredTest: \"\",\n type: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n offeredTestListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, offeredTest) => <>{offeredTest.id},\n },\n {\n dataField: \"name\",\n text: \"Corporate Name\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n {/* \n {offeredTest.name}\n */}\n this.openPatientModal(e, offeredTest)}\n onPointerLeave={this.handleMouseExit()}\n >\n {offeredTest.name}\n \n \n\n ),\n },\n {\n dataField: \"offered_tests\",\n text: \"Test List\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n {/* \n {offeredTest.offered_tests} \n */}\n {offeredTest.offered_tests}\n\n \n ),\n },\n {\n dataField: \"payment_terms\",\n text: \"Payment Terms\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.payment_terms}\n \n \n ),\n },\n {\n dataField: \"status\",\n text: \"Status\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.status}\n \n \n ),\n },\n {\n dataField: \"plateform_charges\",\n text: \"PlateForm Charges\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n\n {(offeredTest.plateform_charges * 100).toFixed(0)}%\n\n \n ),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, offeredTest) => (\n
    \n \n \n this.handleOfferedTestClick(e, offeredTest)}\n >\n \n \n
    \n ),\n },\n ],\n };\n this.handleOfferedTestClick = this.handleOfferedTestClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleOfferedTestClicks = this.handleOfferedTestClicks.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n handleMouseExit = () => {\n this.setState({\n PatientModal: false,\n isHovered: false,\n });\n };\n componentDidMount() {\n const { cemployeeDatas, onGetACorporate } = this.props;\n console.log(onGetACorporate(this.state.user_id));\n this.setState({ cemployeeDatas });\n }\n\n\n\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // Select\n handleSelectGroup = selectedGroup => {\n this.setState({ offeredTest: selectedGroup.value });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n phone: arg.phone,\n city: arg.city,\n address: arg.address,\n\n });\n };\n // handleMouseExit = () => {\n // this.setState({\n // PatientModal: false,\n // isHovered: false,\n\n // });\n // };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n handleOfferedTestClicks = () => {\n this.setState({ offeredTest: \"\", isEdit: false, });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { cemployeeDatas } = this.props;\n if (\n !isEmpty(cemployeeDatas) &&\n size(prevProps.cemployeeDatas) !== size(cemployeeDatas)\n ) {\n this.setState({ cemployeeDatas: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = cemployeeDatas => {\n this.setState({ cemployeeDatas: cemployeeDatas });\n this.setState({ deleteModal: true });\n };\n\n handleOfferedTestClick = (e, arg) => {\n this.setState({\n offeredTest: {\n id: arg.id,\n plateform_charges: arg.plateform_charges,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n handleSaveButtonClick = () => {\n // Your other logic...\n\n const { offeredTest } = this.state;\n\n const updateACorporateStatus = {\n id: offeredTest.id,\n plateform_charges: this.state.plateform_charges,\n };\n\n // Dispatch the action\n this.props.onUpdateACorporateStatus(updateACorporateStatus);\n\n // Optionally, you can handle the asynchronous behavior here\n // For example, use a promise or callback function\n setTimeout(() => {\n this.props.onGetACorporate(\n this.state.user_id\n );\n }, 1000);\n\n // Close the modal or perform other actions as needed\n this.toggle();\n };\n handleSelectCorporate = (selectedOption) => {\n this.setState({ selectedcorporate: selectedOption });\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { cemployeeDatas } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const { onUpdateACorporateStatus, onGetACorporate, } =\n this.props;\n const uniqueCorporateNames = [...new Set(cemployeeDatas.map(data => data.name))];\n\n // Generate labOptions for the \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n \n \n \n \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n \n
    \n
    \n
    \n
    \n \n\n \n \n {!!isEdit\n ? \"Update PlateForm Charges\"\n : \"Add Offered Test\"}\n \n \n {\n console.log(\"Form submitted with values:\", values);\n setSubmitting(false);\n\n const updateACorporateStatus =\n {\n id: offeredTest.id,\n plateform_charges:\n values.plateform_charges,\n };\n\n // update PaymentStatus\n onUpdateACorporateStatus(\n updateACorporateStatus\n );\n setTimeout(() => {\n onGetACorporate(\n this.state.user_id\n );\n }, 1000);\n this.toggle();\n }}\n >\n {({ errors, status, touched, isValid }) => (\n
    \n \n \n \n PlateForm Charges\n \n *\n \n \n {\n let value = parseFloat(e.target.value);\n if (value > 1) {\n value = 1;\n }\n this.setState({ plateform_charges: value });\n }}\n className={\n \"form-control\" +\n (errors.plateform_charges &&\n touched.plateform_charges\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n \n \n\n \n \n
    \n this.handleSaveButtonClick()}\n >\n Save\n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n
    \n )}\n \n )}\n \n \n \n \n \n \n \n
    \n );\n }\n}\n\nOfferedTestsList.propTypes = {\n match: PropTypes.object,\n tests: PropTypes.array,\n labProfiles: PropTypes.array,\n // units: PropTypes.array,\n cemployeeDatas: PropTypes.array,\n className: PropTypes.any,\n onGetACorporate: PropTypes.func,\n onUpdateACorporateStatus: PropTypes.func,\n};\n\nconst mapStateToProps = ({ cemployeeData }) => ({\n cemployeeDatas: cemployeeData.cemployeeDatas,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetACorporate: id => dispatch(getACorporate(id)),\n onUpdateACorporateStatus: offeredTest => dispatch(updateACorporateStatus(offeredTest)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(OfferedTestsList));"," import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport axios from \"axios\";\nimport { useParams } from 'react-router-dom'\nimport { withRouter, Link } from \"react-router-dom\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n// import BootstrapSwitchButton from 'bootstrap-switch-button-react'\nimport {\n FormGroup,\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\nimport {\n // getUnits,\n getRFeeCorporate,\n} from \"store/corporatedata/actions\";\nimport {\n // getUnits,\n updateCorporateStatus,\n} from \"store/offered-tests/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass OfferedTestsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n cemployeeDatas: [],\n tests: [],\n labProfiles: [],\n // units: [],\n offeredTest: \"\",\n type: \"\",\n selectedcorporate: null,\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n offeredTestListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, offeredTest) => <>{offeredTest.id},\n },\n {\n dataField: \"corporate_name\",\n text: \"Corporate Name\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n {/* \n {offeredTest.corporate_name}\n */}\n this.openPatientModal(e, offeredTest)}\n onPointerLeave={this.handleMouseExit()}\n >\n {offeredTest.corporate_name}\n \n \n ),\n },\n {\n dataField: \"lab_name\",\n text: \"Lab Name\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.lab_name}\n \n \n ),\n },\n {\n dataField: \"shared_percentage\",\n text: \"Referral Fee\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n\n {(offeredTest.shared_percentage * 100).toFixed(0)}%\n\n \n ),\n },\n {\n dataField: \"status\",\n text: \"Status\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.status}\n \n \n ),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, offeredTest) => (\n
    \n \n \n this.handleOfferedTestClick(e, offeredTest)}\n >\n \n \n
    \n ),\n },\n ],\n };\n this.handleOfferedTestClick = this.handleOfferedTestClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleOfferedTestClicks = this.handleOfferedTestClicks.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n\n componentDidMount() {\n const { cemployeeDatas, onGetRFeeCorporate } = this.props;\n console.log(onGetRFeeCorporate(this.state.user_id));\n this.setState({ cemployeeDatas });\n }\n\n\n handleMouseExit = () => {\n this.setState({\n PatientModal: false,\n isHovered: false,\n });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n phone: arg.phone,\n city: arg.city,\n address: arg.address,\n\n });\n };\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // Select\n handleSelectGroup = selectedGroup => {\n this.setState({ offeredTest: selectedGroup.value });\n };\n\n // handleMouseExit = () => {\n // this.setState({\n // PatientModal: false,\n // isHovered: false,\n\n // });\n // };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n handleOfferedTestClicks = () => {\n this.setState({ offeredTest: \"\", isEdit: false, });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { cemployeeDatas } = this.props;\n if (\n !isEmpty(cemployeeDatas) &&\n size(prevProps.cemployeeDatas) !== size(cemployeeDatas)\n ) {\n this.setState({ cemployeeDatas: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = cemployeeDatas => {\n this.setState({ cemployeeDatas: cemployeeDatas });\n this.setState({ deleteModal: true });\n };\n\n handleOfferedTestClick = (e, arg) => {\n this.setState({\n offeredTest: {\n id: arg.id,\n shared_percentage: arg.shared_percentage,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n handleSaveButtonClick = () => {\n // Your other logic...\n\n const { offeredTest } = this.state;\n\n const updateCorporateStatus = {\n id: offeredTest.id,\n shared_percentage: this.state.shared_percentage,\n status: 'Accept'\n\n };\n\n // Dispatch the action\n this.props.onUpdateCorporateStatus(updateCorporateStatus);\n\n // Optionally, you can handle the asynchronous behavior here\n // For example, use a promise or callback function\n setTimeout(() => {\n this.props.onGetRFeeCorporate(\n this.state.user_id\n );\n }, 1000);\n\n // Close the modal or perform other actions as needed\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { cemployeeDatas } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const { onUpdateCorporateStatus, onGetRFeeCorporate, } =\n this.props;\n const uniqueCorporateNames = [...new Set(cemployeeDatas.map(data => data.corporate_name\n ))];\n\n // Generate labOptions for the \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n \n \n \n \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n \n
    \n
    \n
    \n
    \n \n\n \n \n {!!isEdit\n ? \"Edit Offered Test\"\n : \"Add Offered Test\"}\n \n \n {\n console.log(\"Form submitted with values:\", values);\n setSubmitting(false);\n\n const updateCorporateStatus =\n {\n id: offeredTest.id,\n shared_percentage:\n values.shared_percentage,\n status: 'Accept'\n };\n\n // update PaymentStatus\n onUpdateCorporateStatus(\n updateCorporateStatus\n );\n setTimeout(() => {\n onGetRFeeCorporate(\n this.state.user_id\n );\n }, 1000);\n this.toggle();\n }}\n >\n {({ errors, status, touched, isValid }) => (\n
    \n \n \n \n Referral Fee\n \n *\n \n \n {\n let value = parseFloat(e.target.value);\n if (value > 1) {\n value = 1;\n }\n this.setState({ shared_percentage: value });\n }}\n className={\n \"form-control\" +\n (errors.shared_percentage &&\n touched.shared_percentage\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n \n \n\n \n \n
    \n this.handleSaveButtonClick()}\n >\n Save\n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n
    \n )}\n \n )}\n \n \n \n \n \n \n \n \n );\n }\n}\n\nOfferedTestsList.propTypes = {\n match: PropTypes.object,\n tests: PropTypes.array,\n labProfiles: PropTypes.array,\n // units: PropTypes.array,\n cemployeeDatas: PropTypes.array,\n className: PropTypes.any,\n onGetRFeeCorporate: PropTypes.func,\n onUpdateCorporateStatus: PropTypes.func,\n};\n\nconst mapStateToProps = ({ cemployeeData }) => ({\n cemployeeDatas: cemployeeData.cemployeeDatas,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetRFeeCorporate: id => dispatch(getRFeeCorporate(id)),\n onUpdateCorporateStatus: offeredTest => dispatch(updateCorporateStatus(offeredTest)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(OfferedTestsList));","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getDepositStatuss,\n updatePaymentInStatus,\n} from \"store/payment-statuss/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass PaymentStatussList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n paymentStatuss: [],\n paymentStatus: \"\",\n modal: false,\n payment_status: \"Pending Clearance\",\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n\n };\n this.handlePaymentStatusClick =\n this.handlePaymentStatusClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handlePaymentStatusClicks =\n this.handlePaymentStatusClicks.bind(this);\n }\n\n componentDidMount() {\n const { paymentStatuss, onGetDepositStatuss } = this.props;\n onGetDepositStatuss(this.state.user_id);\n this.setState({ paymentStatuss });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handlePaymentStatusClicks = () => {\n this.setState({\n paymentStatus: \"\",\n deposit_slip: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { paymentStatuss } = this.props;\n if (\n !isEmpty(paymentStatuss) &&\n size(prevProps.paymentStatuss) !== size(paymentStatuss)\n ) {\n this.setState({ paymentStatuss: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n\n handlePaymentStatusClick = (e, arg) => {\n this.setState({\n paymentStatus: {\n id: arg.id,\n cleared_at: arg.cleared_at,\n is_cleared: arg.is_cleared,\n payment_status: arg.payment_status,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n\n handleSelectChange = (event) => {\n const selectedValue = event.target.value;\n\n // Perform navigation based on the selected value\n if (selectedValue === 'Payment Out Cleared') {\n this.props.history.push('/approved-in-payments');\n }\n if (selectedValue === 'Payment In Cleared') {\n this.props.history.push('/cleared-in-payments');\n }\n if (selectedValue === 'Payment In Pending') {\n this.props.history.push('/pending-in-payments');\n }\n if (selectedValue === 'Payment Out Pending') {\n this.props.history.push('/pending-out-payments');\n }\n}\n\n render() {\n const columns = [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, paymentStatus) => (\n <>{paymentStatus.id}\n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n text: \"MIF ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n formatter: (cellContent, paymentStatus) => (\n <>{paymentStatus.id}\n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"invoice_id\",\n text: \"invoice ID\",\n sort: true,\n hidden: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.invoice_id}\n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_for\",\n text: \"Payment From\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.payment_for}\n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"lab_name\",\n text: \"Client Name\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n \n \n {paymentStatus.lab_name}{\" \"}\n {paymentStatus.donor_name}\n {paymentStatus.advertisement_title}\n \n \n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_method\",\n text: \"Payment Method\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.payment_method}\n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"cheque_no\",\n text: \"Cheque/Ref#\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.deposit_slip && paymentStatus.cheque_no\n ? \n {paymentStatus.cheque_no && (\n \n {paymentStatus.cheque_no}\n \n )}\n \n : paymentStatus.deposit_slip && paymentStatus.refered_no\n ? \n {paymentStatus.refered_no && (\n \n {paymentStatus.refered_no}\n \n )}\n \n : --\n }\n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"amount\",\n text: \"Amount\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n
    \n {paymentStatus.amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}
    \n \n ), filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"bank\",\n text: \"Bank/Account#\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n \n \n \n {paymentStatus.bank_name},{\" \"}\n {paymentStatus.account_no}\n \n \n\n \n\n \n ),\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"deposited_at\",\n text: \"Deposite Date\",\n sort: true,\n formatter: (cellContent, paymentStatus) => {\n const date = new Date(paymentStatus.deposited_at);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2); // Get the last 2 digits of the year\n\n return (\n

    \n {`${day}-${month}-${year}`}\n

    \n );\n },\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n // {\n // dataField: \"deposit_slip\",\n // text: \"Deposite Slip\",\n // sort: true,\n // formatter: (cellContent, paymentStatus) => (\n // <>\n // \n // View Slip\n // \n // \n // ),\n // },\n // {\n // dataField: \"payment_status\",\n // text: \"Status\",\n // sort: true,\n // },\n \n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Comments\",\n formatter: (cellContent, paymentStatus) => (\n \n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n ];\n const { SearchBar } = Search;\n\n const { paymentStatuss } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onUpdatePaymentInStatus,\n onGetDepositStatuss,\n } = this.props;\n const paymentStatus = this.state.paymentStatus;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: this.props.paymentStatuss.length, // Replace with the actual data length\n custom: true,\n };\n \n // Check if there are items in the paymentStatuss array\n const hasData = paymentStatuss && paymentStatuss.length > 0;\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n MIF List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n
    \n \n
    \n \n \n
    \n \n\n \n \n {!!isEdit\n ? \"UpdateMIF\"\n : \"Add Quality Certificate\"}\n \n \n {\n const updatePaymentInStatus =\n {\n id: paymentStatus.id,\n\n is_cleared: values.is_cleared,\n cleared_at: values.cleared_at,\n\n\n };\n\n // update PaymentStatus\n onUpdatePaymentInStatus(\n updatePaymentInStatus\n );\n setTimeout(() => {\n onGetDepositStatuss(\n this.state.user_id\n );\n }, 1000);\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n {/*
    \n \n {\n this.setState({\n paymentStatus: {\n id: paymentStatus.id,\n status:\n paymentStatus.status,\n cleared_at: paymentStatus.cleared_at,\n is_cleared:\n e.target.value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.is_cleared &&\n touched.is_cleared\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    */}\n\n
    \n \n {\n this.setState({\n paymentStatus: {\n id: paymentStatus.id,\n // deposit_bank:\n // paymentStatus.deposit_bank,\n // // deposited_at: paymentStatus.deposit_bank,\n cleared_at: paymentStatus.cleared_at,\n is_cleared:\n e.target.value,\n },\n });\n }}\n multiple={false}\n value={\n this.state\n .paymentStatus\n .is_cleared\n }\n >\n \n \n \n\n\n \n \n
    \n\n {this.state.paymentStatus.is_cleared == \"Yes\" ? (\n
    \n\n \n {\n this.setState({\n paymentStatus: {\n id: paymentStatus.id,\n // deposit_bank:\n // paymentStatus.deposit_bank,\n // // deposited_at: paymentStatus.deposit_bank,\n is_cleared: paymentStatus.is_cleared,\n cleared_at:\n e.target.value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.is_cleared &&\n touched.is_cleared\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n ) : null}\n {/* Certificate Type field */}\n {/*
    \n \n {\n this.setState({\n paymentStatus: {\n id: paymentStatus.id,\n cleared_at: paymentStatus.cleared_at,\n is_cleared: paymentStatus.is_cleared,\n status :\n e.target.value,\n },\n });\n }}\n multiple={false}\n value={\n this.state\n .paymentStatus\n .status\n }\n >\n \n \n \n \n \n \n \n
    */}\n\n\n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n {hasData && (\n \n \n \n \n \n )}\n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nPaymentStatussList.propTypes = {\n match: PropTypes.object,\n paymentStatuss: PropTypes.array,\n className: PropTypes.any,\n onGetDepositStatuss: PropTypes.func,\n onUpdatePaymentInStatus: PropTypes.func,\n history: PropTypes.any,\n\n};\n\nconst mapStateToProps = ({ paymentStatuss }) => ({\n paymentStatuss: paymentStatuss.paymentStatuss,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetDepositStatuss: id => dispatch(getDepositStatuss(id)),\n onUpdatePaymentInStatus: paymentStatus =>\n dispatch(updatePaymentInStatus(paymentStatus)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PaymentStatussList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter ,selectFilter} from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getPaymentOutStatuss,\n updatePaymentOutStatus,\n} from \"store/payment-statuss/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass PaymentStatussList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n paymentOutStatuss: [],\n paymentOutStatus: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n\n };\n this.handlePaymentStatusClick =\n this.handlePaymentStatusClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handlePaymentStatusClicks =\n this.handlePaymentStatusClicks.bind(this);\n }\n // The code for converting \"image source\" (url) to \"Base64\"\n // toDataURL = url =>\n // fetch(url)\n // .then(response => response.blob())\n // .then(\n // blob =>\n // new Promise((resolve, reject) => {\n // const reader = new FileReader();\n // reader.onloadend = () => resolve(reader.deposit_slip);\n // reader.onerror = reject;\n // reader.readAsDataURL(blob);\n // })\n // );\n\n // // The code for converting \"Base64\" to javascript \"File Object\"\n // dataURLtoFile = (dataurl, filename) => {\n // var arr = dataurl.split(\",\"),\n // mime = arr[0].match(/:(.*?);/)[1],\n // bstr = atob(arr[1]),\n // n = bstr.length,\n // u8arr = new Uint8Array(n);\n // while (n--) {\n // u8arr[n] = bstr.charCodeAt(n);\n // }\n // return new File([u8arr], filename, { type: mime });\n // };\n componentDidMount() {\n const { paymentOutStatuss, onGetPaymentOutStatuss } = this.props;\n onGetPaymentOutStatuss(this.state.user_id);\n this.setState({ paymentOutStatuss });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handlePaymentStatusClicks = () => {\n this.setState({\n paymentOutStatus: \"\",\n deposit_slip: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { paymentOutStatuss } = this.props;\n if (\n !isEmpty(paymentOutStatuss) &&\n size(prevProps.paymentOutStatuss) !== size(paymentOutStatuss)\n ) {\n this.setState({ paymentOutStatuss: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n\n handlePaymentStatusClick = (e, arg) => {\n this.setState({\n paymentOutStatus: {\n id: arg.id,\n // cleared_at: arg.cleared_at,\n is_cleared: arg.is_cleared,\n cleared_at: arg.cleared_at,\n status: arg.status,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n handleSelectChange = (event) => {\n const selectedValue = event.target.value;\n\n // Perform navigation based on the selected value\n if (selectedValue === 'Payment Out Cleared') {\n this.props.history.push('/approved-in-payments');\n }\n if (selectedValue === 'Payment In Cleared') {\n this.props.history.push('/cleared-in-payments');\n }\n if (selectedValue === 'Payment In Pending') {\n this.props.history.push('/pending-in-payments');\n }\n if (selectedValue === 'Payment Out Pending') {\n this.props.history.push('/pending-out-payments');\n }\n}\n\n render() {\n const columns= [\n {\n text: \"MOF ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n formatter: (cellContent, paymentOutStatus) => (\n <>{paymentOutStatus.id}\n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"invoice_id\",\n text: \"invoice ID\",\n sort: true,\n hidden: true,\n formatter: (cellContent, paymentOutStatus) => (\n <>\n {paymentOutStatus.invoice_id}\n \n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_method\",\n text: \"Payment Method\",\n sort: true,\n formatter: (cellContent, paymentOutStatus) => (\n <>\n {paymentOutStatus.payment_method}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_for\",\n text: \"Payment To\",\n sort: true,\n formatter: (cellContent, paymentOutStatus) => (\n <>\n {paymentOutStatus.payment_for}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"lab_name\",\n text: \"Client Name\",\n sort: true,\n formatter: (cellContent, paymentCreatedStatus) => (\n <>\n \n \n {paymentCreatedStatus.lab_name}{\" \"}\n {paymentCreatedStatus.b2b_id}\n \n \n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_at\",\n text: \"Payment Date\",\n sort: true,\n formatter: (cellContent, paymentOutStatus) => {\n const date = new Date(paymentOutStatus.payment_at);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2); // Get the last 2 digits of the year\n \n return (\n

    \n {`${day}-${month}-${year}`}\n

    \n );\n },\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"cheque_no\",\n text: \"Cheque/Online Ref#\",\n sort: true,\n formatter: (cellContent, paymentOutStatus) => (\n <>\n \n \n {paymentOutStatus.cheque_no}\n\n \n\n \n\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"amount\",\n text: \"Payment\",\n sort: true,\n formatter: (cellContent, paymentOutStatus) => (\n <>\n
    \n {Math.abs(paymentOutStatus.amount).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}
    \n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"bank\",\n text: \"Bank/Account#\",\n sort: true,\n formatter: (cellContent, paymentOutStatus) => (\n <>\n \n \n {paymentOutStatus.bank_name},{\" \"}\n {paymentOutStatus.account_no}\n \n \n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n // {\n // dataField: \"status\",\n // text: \"Status\",\n // sort: true,\n // },\n // {\n // dataField: \"deposit_copy\",\n // text: \"Deposite Copy\",\n // sort: true,\n // formatter: (cellContent, paymentOutStatus) => (\n // <>\n // \n // View\n // \n // \n // ),\n // },\n \n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Comments\",\n formatter: (cellContent, paymentOutStatus) => (\n \n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n ];\n const { SearchBar } = Search;\n\n const { paymentOutStatuss } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onUpdatePaymentOutStatus,\n onGetPaymentOutStatuss,\n } = this.props;\n const paymentOutStatus = this.state.paymentOutStatus;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: this.props.paymentOutStatuss.length, // Replace with the actual data length\n custom: true,\n };\n \n // Check if there are items in the paymentOutStatuss array\n const hasData = paymentOutStatuss && paymentOutStatuss.length > 0;\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n MOF List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n \n \n \n \n \n \n \n \n
    \n \n
    \n \n \n
    \n \n\n \n \n {!!isEdit\n ? \"UpdateMOF\"\n : \"Add Quality Certificate\"}\n \n \n \n hiddenEditFlag == false, //just an e.g. you can return a function\n then: Yup.string().required(\n \"Please upload Payment Slip\"\n ),\n }\n ),\n // Validation for logo based on type value\n // type: Yup.string(),\n // logo: Yup.mixed().test(\n // \"required\",\n // \"Please upload logo\",\n // ),\n\n \n })}\n onSubmit={values => {\n const updatePaymentOutStatus =\n {\n id: paymentOutStatus.id,\n // cleared_at:\n // values.cleared_at,\n is_cleared: values.is_cleared,\n cleared_at: values.cleared_at,\n \n // comments:\n // values.comments,\n \n };\n\n // update PaymentStatus\n onUpdatePaymentOutStatus(\n updatePaymentOutStatus\n );\n setTimeout(() => {\n onGetPaymentOutStatuss(\n this.state.user_id\n );\n }, 1000);\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n {/* payments out pending clearence field */}\n\n
    \n \n {\n this.setState({\n paymentOutStatus: {\n id: paymentOutStatus.id,\n // deposit_bank:\n // paymentOutStatus.deposit_bank,\n // // deposited_at: paymentOutStatus.deposit_bank,\n cleared_at: paymentOutStatus.cleared_at,\n is_cleared :\n e.target.value,\n },\n });\n }}\n multiple={false}\n value={\n this.state\n .paymentOutStatus\n .is_cleared\n }\n >\n \n \n \n \n \n \n \n
    \n\n {this.state.paymentOutStatus.is_cleared == \"Yes\" ? (\n
    \n\n \n {\n this.setState({\n paymentOutStatus: {\n id: paymentOutStatus.id,\n is_cleared: paymentOutStatus.is_cleared,\n cleared_at: e.target.value,\n },\n });\n }}\n />\n
    \n ) : null}\n\n \n
    \n \n \n
    \n \n Submit\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n {hasData && (\n \n \n \n \n \n )}\n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nPaymentStatussList.propTypes = {\n match: PropTypes.object,\n paymentOutStatuss: PropTypes.array,\n className: PropTypes.any,\n onGetPaymentOutStatuss: PropTypes.func,\n onUpdatePaymentOutStatus: PropTypes.func,\n history: PropTypes.any,\n\n};\n\nconst mapStateToProps = ({ paymentStatuss }) => ({\n paymentOutStatuss: paymentStatuss.paymentOutStatuss,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetPaymentOutStatuss: id => dispatch(getPaymentOutStatuss(id)),\n onUpdatePaymentOutStatus: paymentOutStatus =>\n dispatch(updatePaymentOutStatus(paymentOutStatus)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PaymentStatussList));\n","import React, { Component, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Tooltip } from \"@material-ui/core\";\nimport {\n Card,\n CardBody,\n Col,\n ModalHeader,\n Container,\n Row,\n Label,\n Modal,\n ModalBody,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter ,selectFilter} from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\nimport {\n getClearedInPayments,\n updateApproveUnapproveInPayment,\n\n} from \"store/finance-admin/actions\";\nimport {\n deletePaymentout,\n\n} from \"store/payment-statuss/actions\";\n\nimport ApproveUnapproveModal from \"components/Common/ApproveUnapproveModal\";\nimport \"assets/scss/table.scss\";\n\nclass PendingB2BClients extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n clearedInPayments: [],\n id: \"\",\n isApproved: false,\n unapprovedModal: false,\n tooltipContent: [\"Worst\", \"Bad\", \"Average\", \"Good\", \"Excellent\"],\n clearedInPayment: \"\",\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n\n };\n this.handlePaymentStatusClick =\n this.handlePaymentStatusClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n\n componentDidMount() {\n const { clearedInPayments, onGetClearedInPayments } = this.props;\n onGetClearedInPayments(this.state.user_id);\n this.setState({ clearedInPayments });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n handlePaymentStatusClick = (e, arg) => {\n this.setState({\n clearedInPayment: {\n id: arg.id,\n is_approved: arg.is_approved,\n payment_status: arg.payment_status,\n\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n\n handleSelectChange = (event) => {\n const selectedValue = event.target.value;\n\n // Perform navigation based on the selected value\n if (selectedValue === 'Payment Out Cleared') {\n this.props.history.push('/approved-in-payments');\n }\n if (selectedValue === 'Payment In Cleared') {\n this.props.history.push('/cleared-in-payments');\n }\n if (selectedValue === 'Payment In Pending') {\n this.props.history.push('/pending-in-payments');\n }\n if (selectedValue === 'Payment Out Pending') {\n this.props.history.push('/pending-out-payments');\n }\n}\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n \n onClickDelete = clearedInPayments => {\n this.setState({ clearedInPayments: clearedInPayments });\n this.setState({ deleteModal: true });\n };\n handleDeletePathologist = () => {\n const { onDeletePaymentout, onGetClearedInPayments } = this.props;\n const { clearedInPayments } = this.state;\n if (clearedInPayments.id !== undefined) {\n onDeletePaymentout(clearedInPayments);\n setTimeout(() => {\n onGetClearedInPayments(this.state.user_id);\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n\n render() {\n const { clearedInPayments } = this.props;\n\n const columns= [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, paymentStatus) => (\n <>{paymentStatus.id}\n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n text: \"MIF ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n formatter: (cellContent, paymentStatus) => (\n <>{paymentStatus.id}\n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"invoice_id\",\n text: \"invoice ID\",\n sort: true,\n hidden: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.invoice_id}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_for\",\n text: \"Payment From\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>{paymentStatus.payment_for}\n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"lab_name\",\n text: \"Client Name\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n \n \n {paymentStatus.lab_name} {paymentStatus.donor_name} {paymentStatus.advertisement_title}\n \n \n \n ),\n filter: textFilter({\n placeholder: \"Search\",\n getFilter: (filter) => {\n return {\n lab_name: filter,\n donor_name: filter,\n advertisement_title: filter\n };\n },\n }),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_method\",\n text: \"Payment Method\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>{paymentStatus.payment_method}\n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"cheque_no\",\n text: \"Cheque/Ref#\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.cheque_no && (\n \n {paymentStatus.cheque_no}\n \n )}\n\n {paymentStatus.cheque_no && (\n \n {paymentStatus.refered_no}\n \n )}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n \n {\n dataField: \"amount\",\n text: \"Amount\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>
    \n {paymentStatus.amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}
    \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"bank\",\n text: \"Bank/Account#\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n \n \n \n {paymentStatus.bank_name},{\" \"}\n {paymentStatus.account_no}\n \n \n\n \n\n \n ),\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n // {\n // dataField: \"deposit_slip\",\n // text: \"Deposit Slip\",\n // sort: true,\n // formatter: (cellContent, approvedInPayment) => (\n // <>\n // \n // View Slip\n // \n // \n // ),filter: textFilter(),\n // },\n // {\n // dataField: \"is_settled\",\n // text: \"Is Settled\",\n // sort: true,\n // },\n {\n dataField: \"verified_by\",\n text: \"Deposited By\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>{paymentStatus.verified_by}\n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"cleared_at\",\n text: \"Cleared Date\",\n sort: true,\n formatter: (cellContent, paymentStatus) => {\n const date = new Date(paymentStatus.cleared_at);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2); // Get the last 2 digits of the year\n \n return (\n

    \n {`${day}-${month}-${year}`}\n

    \n );\n },\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n // {\n // dataField: \"payment_status\",\n // text: \"Status\",\n // sort: true,\n // formatter: (cellContent, paymentStatus) => (\n // <>{paymentStatus.payment_status}\n // ),filter: textFilter(),\n // },\n // {\n // dataField: \"menu\",\n // isDummyField: true,\n // editable: false,\n // text: \"Action\",\n // formatter: (cellContent, paymentStatus) => (\n //
    \n // \n // \n // this.handlePaymentStatusClick(e, paymentStatus)\n // }\n // >\n // \n \n //
    \n // ),\n // },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, clearedInPayment) => (\n
    \n this.onClickDelete(clearedInPayment)}\n\n >\n Delete\n \n
    \n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Comments\",\n formatter: (cellContent, clearedInPayment) => (\n \n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n ];\n const { SearchBar } = Search;\n\n const {\n onUpdateApproveUnapproveInPayment,\n onGetClearedInPayments,\n } = this.props;\n const { isEdit, deleteModal } = this.state;\n\n const clearedInPayment = this.state.clearedInPayment;\n const pageOptions = {\n sizePerPage: 10,\n totalSize: 100, // replace later with size(clearedInPayments),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n this.setState({ deleteModal: false })}\n />\n
    \n \n Cleared In Payments | Lab Hazir\n \n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n
    \n \n
    \n \n \n
    \n \n\n\n \n {!!isEdit\n ? \"Edit Quality Certificate\"\n : \"Add Quality Certificate\"}\n \n \n {\n const updateApproveUnapproveInPayment =\n {\n id: clearedInPayment.id,\n is_approved:\n values.is_approved,\n \n };\n\n // update PaymentStatus\n onUpdateApproveUnapproveInPayment(\n updateApproveUnapproveInPayment\n );\n setTimeout(() => {\n onGetClearedInPayments(\n this.state.user_id\n );\n }, 1000);\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n {/* Payment Cleared Date and Time */}\n \n {/* Is Approced Type field */}\n
    \n \n {\n this.setState({\n clearedInPayment: {\n id: clearedInPayment.id,\n is_approved :\n e.target.value,\n },\n });\n }}\n multiple={false}\n value={\n this.state\n .clearedInPayment\n .is_approved\n }\n >\n \n \n \n \n \n \n
    \n\n \n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n\n
    \n \n
    \n {/* \n \n \n \n */}\n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nPendingB2BClients.propTypes = {\n match: PropTypes.object,\n clearedInPayments: PropTypes.array,\n className: PropTypes.any,\n onGetClearedInPayments: PropTypes.func,\n onUpdateApproveUnapproveInPayment: PropTypes.func,\n history: PropTypes.any,\n onDeletePaymentout: PropTypes.func,\n\n\n};\nconst mapStateToProps = ({ financeAdmin }) => ({\n clearedInPayments: financeAdmin.clearedInPayments,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onUpdateApproveUnapproveInPayment: data =>\n dispatch(updateApproveUnapproveInPayment(data)),\n onGetClearedInPayments: id => dispatch(getClearedInPayments(id)),\n onDeletePaymentout: paymentCreatedStatus => dispatch(deletePaymentout(paymentCreatedStatus)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PendingB2BClients));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter ,selectFilter} from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getApprovedInPayments,\n} from \"store/finance-admin/actions\";\nimport {\n deletePaymentout,\n\n} from \"store/payment-statuss/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass PaymentStatussList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n approvedInPayments: [],\n approvedInPayment: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n\n };\n this.toggle = this.toggle.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n\n componentDidMount() {\n const { approvedInPayments, onGetApprovedInPayments } = this.props;\n onGetApprovedInPayments(this.state.user_id);\n this.setState({ approvedInPayments });\n }\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = approvedInPayments => {\n this.setState({ approvedInPayments: approvedInPayments });\n this.setState({ deleteModal: true });\n };\n handleDeletePathologist = () => {\n const { onDeletePaymentout, onGetApprovedInPayments } = this.props;\n const { approvedInPayments } = this.state;\n if (approvedInPayments.id !== undefined) {\n onDeletePaymentout(approvedInPayments);\n setTimeout(() => {\n onGetApprovedInPayments(this.state.user_id);\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { approvedInPayments } = this.props;\n if (\n !isEmpty(approvedInPayments) &&\n size(prevProps.approvedInPayments) !== size(approvedInPayments)\n ) {\n this.setState({ approvedInPayments: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n handleSelectChange = (event) => {\n const selectedValue = event.target.value;\n\n // Perform navigation based on the selected value\n if (selectedValue === 'Payment Out Cleared') {\n this.props.history.push('/approved-in-payments');\n }\n if (selectedValue === 'Payment In Cleared') {\n this.props.history.push('/cleared-in-payments');\n }\n if (selectedValue === 'Payment In Pending') {\n this.props.history.push('/pending-in-payments');\n }\n if (selectedValue === 'Payment Out Pending') {\n this.props.history.push('/pending-out-payments');\n }\n}\n render() {\n const { SearchBar } = Search;\n const columns= [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, paymentStatus) => (\n <>{paymentStatus.id}\n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n text: \"MOF ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n formatter: (cellContent, paymentStatus) => (\n <>{paymentStatus.id}\n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"invoice_id\",\n text: \"invoice ID\",\n sort: true,\n hidden: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.invoice_id}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n \n },\n {\n dataField: \"payment_method\",\n text: \"Payment Method\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.payment_method}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_for\",\n text: \"Payment To\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.payment_for}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"lab_name\",\n text: \"Client Name\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n \n \n {paymentStatus.lab_name}{\" \"}\n {paymentStatus.donor_name}\n {paymentStatus.advertisement_title}\n\n \n \n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"amount\",\n text: \"Amount\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n
    \n {Math.abs(paymentStatus.amount).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}
    \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"cheque_no\",\n text: \"Cheque/Online Ref#\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n \n \n {paymentStatus.cheque_no}\n\n \n\n \n\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n // {\n // dataField: \"deposited_at\",\n // text: \"Deposited Date\",\n // sort: true,\n // },\n \n {\n dataField: \"bank\",\n text: \"Bank/Account#\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n \n \n {paymentStatus.bank_name},{\" \"}\n {paymentStatus.account_no}\n \n \n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n \n // {\n // dataField: \"is_settled\",\n // text: \"Is Settled\",\n // sort: true,\n // },\n // {\n // dataField: \"verified_by\",\n // text: \"Verified By\",\n // sort: true,\n // },\n {\n dataField: \"cleared_at\",\n text: \"Cleared Date\",\n sort: true,\n formatter: (cellContent, approvedInPayment) => {\n const date = new Date(approvedInPayment.cleared_at);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2); // Get the last 2 digits of the year\n \n return (\n

    \n {`${day}-${month}-${year}`}\n

    \n );\n },\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n // {\n // dataField: \"deposit_slip\",\n // text: \"Slip\",\n // sort: true,\n // formatter: (cellContent, approvedInPayment) => (\n // <>\n // \n // View Slip\n // \n // \n // ),\n // },\n // {\n // dataField: \"status\",\n // text: \"Status\",\n // sort: true,\n // },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, approvedInPayment) => (\n
    \n this.onClickDelete(approvedInPayment)}\n\n >\n Delete\n \n
    \n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Comments\",\n formatter: (cellContent, approvedInPayment) => (\n \n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n ];\n const { approvedInPayments } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onGetApprovedInPayments,\n } = this.props;\n const approvedInPayment = this.state.approvedInPayment;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: approvedInPayments.length, // replace later with size(approvedInPayments),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n this.setState({ deleteModal: false })}\n />\n
    \n \n Payments In with Approvel Status | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n
    \n \n
    \n \n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nPaymentStatussList.propTypes = {\n match: PropTypes.object,\n approvedInPayments: PropTypes.array,\n className: PropTypes.any,\n onGetApprovedInPayments: PropTypes.func,\n history: PropTypes.any,\n onDeletePaymentout: PropTypes.func,\n\n};\n\nconst mapStateToProps = ({ financeAdmin }) => ({\n approvedInPayments: financeAdmin.approvedInPayments,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetApprovedInPayments: id => dispatch(getApprovedInPayments(id)),\n onDeletePaymentout: paymentCreatedStatus => dispatch(deletePaymentout(paymentCreatedStatus)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PaymentStatussList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter ,selectFilter} from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getUnapprovedInPayments,\n} from \"store/finance-admin/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass PaymentStatussList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n unapprovedInPayments: [],\n unapprovedInPayment: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { unapprovedInPayments, onGetUnapprovedInPayments } = this.props;\n onGetUnapprovedInPayments(this.state.user_id);\n this.setState({ unapprovedInPayments });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { unapprovedInPayments } = this.props;\n if (\n !isEmpty(unapprovedInPayments) &&\n size(prevProps.unapprovedInPayments) !== size(unapprovedInPayments)\n ) {\n this.setState({ unapprovedInPayments: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n handleSelectChange = (event) => {\n const selectedValue = event.target.value;\n\n // Perform navigation based on the selected value\n if (selectedValue === 'Approved') {\n this.props.history.push('/approved-in-payments');\n }\n if (selectedValue === 'Cleared') {\n this.props.history.push('/cleared-in-payments');\n }\n if (selectedValue === 'Unapproved') {\n this.props.history.push('/unapproved-in-payments');\n }\n}\n\n render() {\n const columns=[\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, paymentStatus) => (\n <>{paymentStatus.id}\n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n text: \"MIF ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n formatter: (cellContent, paymentStatus) => (\n <>{paymentStatus.id}\n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"invoice_id\",\n text: \"invoice ID\",\n sort: true,\n hidden: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.invoice_id}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_for\",\n text: \"Payment From\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.payment_for}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"lab_name\",\n text: \"Client Name\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n \n \n {paymentStatus.lab_name}{\" \"}\n {paymentStatus.donor_name}\n {paymentStatus.advertisement_title}\n\n \n \n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"payment_method\",\n text: \"Payment Method\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.payment_method}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"cheque_no\",\n text: \"Cheque/Ref#\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.cheque_no && (\n \n {paymentStatus.cheque_no}\n \n )}\n\n {paymentStatus.cheque_no && (\n \n {paymentStatus.refered_no}\n \n )}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n \n {\n dataField: \"amount\",\n text: \"Amount\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>
    \n {paymentStatus.amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}
    \n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n \n {\n dataField: \"bank\",\n text: \"Bank/Account#\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n \n \n \n {paymentStatus.bank_name},{\" \"}\n {paymentStatus.account_no}\n \n \n\n \n\n \n ),\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n \n // {\n // dataField: \"is_settled\",\n // text: \"Is Settled\",\n // sort: true,\n // },\n {\n dataField: \"verified_by\",\n text: \"Deposited By\",\n sort: true,\n formatter: (cellContent, paymentStatus) => (\n <>\n {paymentStatus.verified_by}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n\n },\n {\n dataField: \"cleared_at\",\n text: \"Cleared Date\",\n sort: true,\n formatter: (cellContent, paymentStatus) => {\n const date = new Date(paymentStatus.cleared_at);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2); // Get the last 2 digits of the year\n \n return (\n

    \n {`${day}-${month}-${year}`}\n

    \n );\n },\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Comments\",\n formatter: (cellContent, paymentStatus) => (\n \n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n // {\n // dataField: \"payment_status\",\n // text: \"Status\",\n // sort: true,\n // },\n // {\n // dataField: \"menu\",\n // isDummyField: true,\n // editable: false,\n // text: \"Action\",\n // formatter: (cellContent, paymentStatus) => (\n //
    \n // \n // \n // this.handlePaymentStatusClick(e, paymentStatus)\n // }\n // >\n // \n \n //
    \n // ),\n // },\n ];\n const { SearchBar } = Search;\n\n const { unapprovedInPayments } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onGetUnapprovedInPayments,\n } = this.props;\n const unapprovedInPayment = this.state.unapprovedInPayment;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: unapprovedInPayments.length, // replace later with size(unapprovedInPayments),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Payments In with Approvel Status | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n \n \n \n \n
    \n \n
    \n \n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nPaymentStatussList.propTypes = {\n match: PropTypes.object,\n unapprovedInPayments: PropTypes.array,\n className: PropTypes.any,\n onGetUnapprovedInPayments: PropTypes.func,\n history: PropTypes.any,\n\n};\n\nconst mapStateToProps = ({ financeAdmin }) => ({\n unapprovedInPayments: financeAdmin.unapprovedInPayments,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetUnapprovedInPayments: id => dispatch(getUnapprovedInPayments(id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PaymentStatussList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\n\nimport {\n Container,\n Row,\n Col,\n Table,\n Input,\n Nav,\n NavItem,\n NavLink,\n TabContent,\n TabPane,\n Card,\n FormGroup,\n Label,\n CardBody,\n CardTitle,\n Alert,\n} from \"reactstrap\";\n\nimport classnames from \"classnames\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport {\n getBanks,\n getBankAccounts,\n addNewBankTransfer,\n getBankTransfer\n} from \"store/banktransferdetails/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport ConfirmModal from \"components/Common/ConfirmModal\";\nimport \"assets/scss/table.scss\";\n\nclass BankTransfersForm extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n bankTransfers: [],\n bankTransfer: \"\",\n modal: false,\n addmodal: false,\n confirmModal: false,\n id: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n transfer_type: \"\",\n deposit_type: \"\",\n withdraw_type: \"\",\n bankaccount_id: \"\",\n from_bankaccount_id: \"\",\n bank_id: \"\",\n amount: \"\",\n payment_datetime: \"\",\n mode: \"Cheque\",\n cheque_no: \"\",\n payment_copy: \"\",\n deposit_copy: \"\",\n clearence_datetime: \"\",\n deposit_datetime: \"\",\n status: \"\",\n comments: \"\",\n checkedoutData: \"\",\n successMessage: \"\",\n };\n // this.toggleTab = this.toggleTab.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleSelectGroup = this.handleSelectGroup.bind(this);\n }\n\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n handleSubmitClicks = () => {\n this.setState({\n bankTransfer: {\n transfer_type: this.state.transfer_type,\n deposit_type: this.state.deposit_type,\n withdraw_type: this.state.withdraw_type,\n bankaccount_id: this.state.bankaccount_id,\n from_bankaccount_id: this.state.from_bankaccount_id,\n amount: this.state.amount,\n mode: this.state.mode,\n payment_datetime: this.state.payment_datetime,\n clearence_datetime: this.state.clearence_datetime,\n cheque_no: this.state.cheque_no,\n deposit_copy: this.state.deposit_copy,\n payment_copy: this.state.payment_copy,\n deposit_datetime: this.state.deposit_datetime,\n status: \"Approved\",\n comments: this.state.comments,\n },\n });\n \n // API call to create a new bankTransfer record\n const { onAddNewBankTransfer } = this.props;\n setTimeout(() => {\n console.log(\n onAddNewBankTransfer(this.state.bankTransfer, this.state.user_id)\n );\n }, 2000);\n setTimeout(() => {\n this.props.history.push(\"/inter-bank-details-list\");\n }, 2000)\n };\n\n \n \n handleProceedClick = () => {\n this.setState({\n bankTransfer: {\n transfer_type: this.state.transfer_type,\n deposit_type: this.state.deposit_type,\n withdraw_type: this.state.withdraw_type,\n bankaccount_id: this.state.bankaccount_id,\n from_bankaccount_id: this.state.from_bankaccount_id,\n amount: this.state.amount,\n mode: this.state.mode,\n payment_datetime: this.state.payment_datetime,\n clearence_datetime: this.state.clearence_datetime,\n cheque_no: this.state.cheque_no,\n deposit_copy: this.state.deposit_copy,\n payment_copy: this.state.payment_copy,\n deposit_datetime: this.state.deposit_datetime,\n status: \"Cleared\",\n comments: this.state.comments,\n },\n });\n\n // API call to get the checkout items\n const { onAddNewBankTransfer } = this.props;\n setTimeout(() => {\n console.log(\n onAddNewBankTransfer(this.state.bankTransfer, this.state.user_id)\n \n );\n window.scrollTo({ top: 0, left: 0, behavior: 'smooth' });\n }, 2000);\n setTimeout(() => {\n this.props.history.push(\"/inter-bank-details-list\");\n }, 2000)\n };\n\n componentDidMount() {\n const { banks, onGetbanks } = this.props;\n if (banks && !banks.length) {\n onGetbanks();\n }\n this.setState({ banks });\n\n const { bankAccounts, onGetbankAccounts } = this.props;\n if (bankAccounts && !bankAccounts.length) {\n onGetbankAccounts();\n }\n this.setState({ bankAccounts });\n\n const { bankTransfers, onGetBankTransfer } = this.props;\n if (bankTransfers && !bankTransfers.length) {\n onGetBankTransfer(this.props.match.params.id);\n }\n this.setState({ bankTransfers });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // Select\n handleSelectGroup = selectedGroup => {\n this.setState({ bankTransfer: selectedGroup.value });\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { bankTransfers } = this.props;\n if (\n !isEmpty(bankTransfers) &&\n size(prevProps.bankTransfers) !== size(bankTransfers)\n ) {\n this.setState({ bankTransfers: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { bankTransfers } = this.props;\n\n\n // const { units } = this.props;\n\n const { onAddNewBankTransfer, onGetBankTransfer } =\n this.props;\n const bankTransfer = this.state.bankTransfer;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: bankTransfers.length, // replace later with size(bankTransfers),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n const { bankAccounts } = this.props;\n const bankaccountList = [];\n for (let i = 0; i < bankAccounts.length; i++) {\n let flag = 0;\n // for (let j = 0; j < bankAccounts.length; j++) {\n // if (banks[i].id == bankAccounts[j].bank_id) {\n // flag = 1;\n // }\n // }\n if (!flag) {\n if (bankAccounts[i].account_type != \"DONATION\") {\n bankaccountList.push(\n {\n label: `${bankAccounts[i].bank_name} - ${bankAccounts[i].account_no}`,\n value: `${bankAccounts[i].id}`,\n }\n );}\n }\n }\n\n const { banks } = this.props;\n const bankList = [];\n for (let i = 0; i < banks.length; i++) {\n let flag = 0;\n // for (let j = 0; j < bankAccounts.length; j++) {\n // if (banks[i].id == bankAccounts[j].bank_id) {\n // flag = 1;\n // }\n // }\n if (!flag) {\n bankList.push({\n label: banks[i].name,\n value: banks[i].id,\n });\n }\n }\n\n\n return (\n \n
    \n \n Bank Transfer Details| Lab Hazir - Dashboard\n \n \n \n \n
    \n {this.state.successMessage &&
    {this.state.successMessage}
    }\n \n \n \n \n \n \n
    \n \n \n \n this.setState({\n transfer_type: e.target.value,\n })\n }\n defaultValue={this.state.transfer_type}\n className=\"form-select\"\n >\n \n --- Please select the Transfer Type\n ---\n \n \n \n \n\n \n\n \n {this.state.transfer_type == \"Deposit\" ? (\n \n \n \n this.setState({\n deposit_type: e.target.value,\n })\n }\n defaultValue={this.state.deposit_type}\n className=\"form-select\"\n >\n \n --- Please select the Deposit Type\n ---\n \n \n \n \n \n \n \n \n \n \n \n ) : null}\n {this.state.transfer_type == \"Withdraw\" ? (\n \n \n \n this.setState({\n withdraw_type: e.target.value,\n })\n }\n defaultValue={this.state.withdraw_type}\n className=\"form-select\"\n >\n \n --- Please select the withdraw Type\n ---\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n ) : null}\n\n {this.state.transfer_type == \"Interbank Transfer\" ? (\n \n \n \n this.setState({\n mode: e.target.value,\n })\n }\n defaultValue={this.state.mode}\n className=\"form-select\"\n >\n \n --- Please select the Mode Type\n ---\n \n \n \n \n\n \n \n \n ) : null}\n {this.state.transfer_type == \"Deposit\" || this.state.transfer_type == \"Withdraw\" ? (\n \n \n \n this.setState({\n mode: e.target.value,\n })\n }\n defaultValue={this.state.mode}\n className=\"form-select\"\n >\n \n --- Please select the Mode Type\n ---\n \n \n \n \n \n\n \n \n \n ) : null}\n \n \n \n \n this.setState({\n amount: e.target.value,\n })\n }\n />\n \n\n {this.state.transfer_type == \"Interbank Transfer\" || this.state.transfer_type == \"Withdraw\" ? (\n bankTransfer.from_bankaccount_id &&\n bankTransfer.from_bankaccount_id ? (\n
    \n \n Bank Account Name\n \n \n \n {\n bankTransfer.account_no\n \n }\n \n \n
    \n ) : (\n
    \n \n Bank Account Name (From)\n \n \n this.setState({\n from_bankaccount_id:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.from_bankaccount_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.from_bankaccount_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={bankaccountList}\n placeholder=\"Select Bank Account...\"\n />\n
    \n Please select your Bank Account\n
    \n
    \n )\n ) : null}\n\n {this.state.transfer_type == \"Interbank Transfer\" ? (\n bankTransfer.bankaccount_id &&\n bankTransfer.bankaccount_id ? (\n
    \n \n Bank Account Name\n \n \n \n {\n bankTransfer.account_no\n \n }\n \n \n
    \n ) : (\n
    \n \n Bank Account Name (To)\n \n \n this.setState({\n bankaccount_id:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.bankaccount_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.bankaccount_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={bankaccountList}\n placeholder=\"Select Bank Account...\"\n />\n
    \n Please select your Bank Account\n
    \n
    \n )\n ) : null}\n \n {this.state.transfer_type == \"Deposit\" ? (\n bankTransfer.bankaccount_id &&\n bankTransfer.bankaccount_id ? (\n
    \n \n Bank Account Name\n \n \n \n {\n bankTransfer.account_no\n \n }\n \n \n
    \n ) : (\n
    \n \n Bank Account Name \n \n \n this.setState({\n bankaccount_id:\n selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (!this.state.bankaccount_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.bankaccount_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={bankaccountList}\n placeholder=\"Select Bank Account...\"\n />\n
    \n Please select your Bank Account\n
    \n
    \n )\n ) : null}\n\n\n {this.state.transfer_type == \"Interbank Transfer\" || this.state.transfer_type == \"Withdraw\" ? (\n \n \n \n this.setState({\n cheque_no: e.target.value,\n })\n }\n />\n \n ) : null}\n\n \n \n {\n this.setState({\n payment_copy:\n e.target.files[0],\n });\n }}\n // className=\"form-control is-invalid\"\n className={\n \"form-control\" +\n (this.state.payment_copy.length >\n 0 && !this.state.payment_copy\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n\n \n \n \n this.setState({\n payment_datetime:\n e.target.value,\n })\n }\n />\n \n\n {this.state.transfer_type == \"Interbank Transfer\" || \n this.state.transfer_type == \"Deposit\" ? (\n \n \n {\n this.setState({\n deposit_copy:\n e.target.files[0],\n });\n }}\n // className=\"form-control is-invalid\"\n className={\n \"form-control\" +\n (this.state.deposit_copy.length >\n 0 && !this.state.deposit_copy\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n ) : null}\n\n {this.state.transfer_type == \"Interbank Transfer\" || \n this.state.transfer_type == \"Deposit\" ? (\n \n \n \n this.setState({\n deposit_datetime:\n e.target.value,\n })\n }\n />\n \n ) : null}\n\n\n \n \n \n this.setState({\n clearence_datetime:\n e.target.value,\n })\n }\n />\n \n\n {/* \n \n \n this.setState({\n mode: e.target.value,\n })\n }\n defaultValue={this.state.mode}\n className=\"form-select\"\n >\n \n --- Please select the Payment Type\n ---\n \n \n \n\n \n */}\n\n \n \n \n this.setState({\n comments: e.target.value,\n })\n }\n />\n \n\n \n \n
    \n \n Cleared{\" \"}\n \n
    \n \n \n \n \n Approved\n \n \n
    \n\n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n );\n }\n}\n\nBankTransfersForm.propTypes = {\n match: PropTypes.object,\n banks: PropTypes.array,\n bankAccounts: PropTypes.array,\n history: PropTypes.object,\n // units: PropTypes.array,\n bankTransfers: PropTypes.array,\n className: PropTypes.any,\n onGetBankTransfer: PropTypes.func,\n // onGetUnits: PropTypes.func,\n onAddNewBankTransfer: PropTypes.func,\n onGetbanks: PropTypes.func,\n onGetbankAccounts: PropTypes.func,\n};\n\nconst mapStateToProps = ({ bankTransfers }) => ({\n bankTransfers: bankTransfers.bankTransfers,\n banks: bankTransfers.banks,\n bankAccounts: bankTransfers.bankAccounts,\n\n\n // units: bankTransfers.units,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetbanks: () => dispatch(getBanks()),\n onGetbankAccounts: () => dispatch(getBankAccounts()),\n onGetBankTransfer: id => dispatch(getBankTransfer(id)),\n onAddNewBankTransfer: (bankTransfer, id) =>\n dispatch(addNewBankTransfer(bankTransfer, id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(BankTransfersForm)); \n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport moment from 'moment';\n\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter ,selectFilter} from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getBankTransfer,\n updateBankTransfer,\n} from \"store/banktransferdetails/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass PaymentStatussList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n bankTransfers: [],\n bankTransfer: \"\",\n modal: false,\n selectedLab: null,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n\n };\n this.handlePaymentStatusClick =\n this.handlePaymentStatusClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handlePaymentStatusClicks =\n this.handlePaymentStatusClicks.bind(this);\n }\n // The code for converting \"image source\" (url) to \"Base64\"\n // toDataURL = url =>\n // fetch(url)\n // .then(response => response.blob())\n // .then(\n // blob =>\n // new Promise((resolve, reject) => {\n // const reader = new FileReader();\n // reader.onloadend = () => resolve(reader.deposit_slip);\n // reader.onerror = reject;\n // reader.readAsDataURL(blob);\n // })\n // );\n\n // // The code for converting \"Base64\" to javascript \"File Object\"\n // dataURLtoFile = (dataurl, filename) => {\n // var arr = dataurl.split(\",\"),\n // mime = arr[0].match(/:(.*?);/)[1],\n // bstr = atob(arr[1]),\n // n = bstr.length,\n // u8arr = new Uint8Array(n);\n // while (n--) {\n // u8arr[n] = bstr.charCodeAt(n);\n // }\n // return new File([u8arr], filename, { type: mime });\n // };\n componentDidMount() {\n const { bankTransfers, onGetBankTransfer } = this.props;\n onGetBankTransfer(this.state.user_id);\n this.setState({ bankTransfers });\n }\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { bankTransfers } = this.props;\n \n if (bankTransfers.length > 0 && bankTransfers !== prevProps.bankTransfers) {\n const { selectedLab } = this.state;\n \n const filteredStatements = bankTransfers.filter((statement) => {\n const labFilter = !selectedLab || statement.transfer_type === selectedLab;\n return labFilter;\n });\n \n this.setState({ bankTransfers: filteredStatements, isEdit: false });\n }\n }\n \n // eslint-disable-next-line no-unused-vars\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handlePaymentStatusClicks = () => {\n this.setState({\n bankTransfer: \"\",\n deposit_slip: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n\n handlePaymentStatusClick = (e, arg) => {\n this.setState({\n bankTransfer: {\n id: arg.id,\n clearence_datetime: arg.clearence_datetime,\n status: arg.status,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n \n\n render() {\n const columns=[\n {\n text: \"BTD ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n formatter: (cellContent, bankTransfer) => (\n <>{bankTransfer.id}\n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"invoice_id\",\n text: \"Invoice ID\",\n sort: true,\n hidden: true,\n formatter: (cellContent, bankTransfer) => (\n <>\n {bankTransfer.invoice_id}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"transfer_type\",\n text: \"Transfer Type\",\n sort: true,\n formatter: (cellContent, bankTransfer) => (\n <>\n {bankTransfer.transfer_type}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n \n },\n {\n dataField: \"deposit_type\",\n text: \"Type\",\n sort: true,\n formatter: (cellContent, bankTransfer) => (\n <>\n {bankTransfer.transfer_type == \"Deposit\" ? (\n \n {bankTransfer.deposit_type}\n \n ) : bankTransfer.transfer_type == \"Withdraw\" ? (\n \n {bankTransfer.withdraw_type}\n \n ) : (\n \n {\"---\"}\n \n )}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"bank\",\n text: \"Payment Mode\",\n sort: true,\n formatter: (cellContent, bankTransfer) => (\n <>\n {/* {bankTransfer.transfer_type == \"Interbank Transfer\" ? ( */}\n \n {bankTransfer.mode}\n \n {/* ) : (\n \n {\"---\"}\n \n )} */}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"amount\",\n text: \"Amount\",\n sort: true,\n formatter: (cellContent, bankTransfer) => (\n <>\n
    \n {bankTransfer.amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}
    \n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"cheque_no\",\n text: \"Cheque/Online Ref#\",\n sort: true,\n formatter: (cellContent, bankTransfer) => (\n <>\n {bankTransfer.transfer_type == \"Deposit\" ? (\n \n {\"---\"}\n \n ) : (\n \n \n {bankTransfer.cheque_no}\n \n \n )}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"bank\",\n text: \"Bank/Account# (To)\",\n sort: true,\n formatter: (cellContent, bankTransfer) => (\n <>\n {bankTransfer.transfer_type != \"Withdraw\" ? (\n\n \n \n \n {bankTransfer.bank_name},{\" \"}\n {bankTransfer.account_no}\n \n \n \n ) : (\n \n {\"---\"}\n \n )}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"bank\",\n text: \"Bank/Account# (From)\",\n sort: true,\n formatter: (cellContent, bankTransfer) => (\n <>\n {bankTransfer.transfer_type == \"Interbank Transfer\" ? (\n \n {bankTransfer.from_bank_name},{\" \"}\n {bankTransfer.from_account_no}\n \n ) : bankTransfer.transfer_type == \"Withdraw\" ? (\n \n \n {bankTransfer.from_bank_name},{\" \"}\n {bankTransfer.from_account_no}\n \n \n \n ) : (\n \n {\"---\"}\n \n )}\n \n ),filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n \n },\n {\n dataField: \"bank\",\n text: \"Deposit DateTime\",\n sort: true,\n formatter: (cellContent, bankTransfer) => {\n if (bankTransfer.transfer_type === \"Withdraw\") {\n return ---;\n } else {\n\n // const date = new Date(bankTransfer.deposit_datetime);\n // const day = date.getDate();\n // const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n // const month = monthNames[date.getMonth()];\n // const year = date.getFullYear().toString().slice(-2); // Get the last 2 digits of the year\n \n return (\n moment(bankTransfer.deposit_datetime).format(\"DD MMM YYYY, h:mm A\")\n\n );\n }\n },\n filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n }, \n {\n dataField: \"bank\",\n text: \"Payment DateTime\",\n sort: true,\n formatter: (cellContent, bankTransfer) => {\n moment(bankTransfer.payment_datetime).format(\"DD MMM YYYY, h:mm A\")\n\n // const date = new Date(bankTransfer.payment_datetime);\n // const day = date.getDate();\n // const month = date.getMonth() + 1; // Adding 1 to get the correct month\n // const year = date.getFullYear();\n \n return (\n moment(bankTransfer.payment_datetime).format(\"DD MMM YYYY, h:mm A\")\n\n );\n },filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n // {\n // dataField: \"bank\",\n // text: \"Clearence DateTime\",\n // sort: true,\n // formatter: (cellContent, bankTransfer) => (\n // <>\n // \n // {new Date(bankTransfer.clearence_datetime).toLocaleString(\"en-US\")}\n\n // \n // \n // ),\n // },\n {\n dataField: \"bank\",\n text: \"Clearence/Approved DateTime\",\n sort: true,\n formatter: (cellContent, bankTransfer) => {\n if (bankTransfer.clearence_datetime === \"null\") {\n return ---;\n } else {\n\n // const date = new Date(bankTransfer.deposit_datetime);\n // const day = date.getDate();\n // const month = date.getMonth() + 1;\n // const year = date.getFullYear();\n \n return (\n moment(bankTransfer.clearence_datetime).format(\"DD MMM YYYY, h:mm A\")\n );\n }\n }, filter: textFilter(),\n headerStyle: { backgroundColor: '#DCDCDC' },\n style: { backgroundColor: '\t#F0F0F0' },\n },\n {\n dataField: \"status\",\n text: \"Status\",\n sort: true,\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, bankTransfer) => (\n <>\n {bankTransfer.status == \"Cleared\" && (\n
    \n this.handlePaymentStatusClick(e, bankTransfer)}\n\n >\n Update\n \n\n
    \n \n )}\n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Comments\",\n formatter: (cellContent, bankTransfer) => (\n \n ),\n headerStyle: { backgroundColor: '#DCDCDC' },\n },\n ];\n const { SearchBar } = Search;\n\n const { bankTransfers } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n const uniqueLabNames = [...new Set(this.props.bankTransfers.map(bankTransfers => bankTransfers.transfer_type))];\n\n // Generate labOptions for the \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n {/* \n \n
    \n
    \n \n \n
    \n
    \n \n
    */}\n \n \n
    \n \n\n \n \n {!!isEdit\n ? \"UpdateMOF\"\n : \"Add Quality Certificate\"}\n \n \n \n // hiddenEditFlag == false, //just an e.g. you can return a function\n // then: Yup.string().required(\n // \"Please upload Payment Slip\"\n // ),\n // }\n // ),\n // Validation for logo based on type value\n // type: Yup.string(),\n // logo: Yup.mixed().test(\n // \"required\",\n // \"Please upload logo\",\n // ),\n\n \n })}\n onSubmit={values => {\n const updateBankTransfer =\n {\n id: bankTransfer.id,\n clearence_datetime: values.clearence_datetime,\n \n // comments:\n // values.comments,\n \n };\n\n // update PaymentStatus\n onUpdateBankTransfer(\n updateBankTransfer\n );\n setTimeout(() => {\n onGetBankTransfer(\n this.state.user_id\n );\n }, 1000);\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n {/* payments out pending clearence field */}\n\n \n \n this.setState({\n clearence_datetime: e.target.value,\n })\n }\n/>\n\n \n \n \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n {hasData && (\n \n \n \n \n \n )}\n
    \n )}\n \n )}\n \n \n \n \n \n \n \n \n );\n }\n}\n\nPaymentStatussList.propTypes = {\n match: PropTypes.object,\n bankTransfers: PropTypes.array,\n className: PropTypes.any,\n onGetBankTransfer: PropTypes.func,\n onUpdateBankTransfer: PropTypes.func,\n};\n\nconst mapStateToProps = ({ bankTransfers }) => ({\n bankTransfers: bankTransfers.bankTransfers,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetBankTransfer: id => dispatch(getBankTransfer(id)),\n onUpdateBankTransfer: bankTransfer =>\n dispatch(updateBankTransfer(bankTransfer)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PaymentStatussList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\n\nimport {\n Container,\n Row,\n Col,\n Table,\n Input,\n Nav,\n NavItem,\n NavLink,\n TabContent,\n TabPane,\n Card,\n FormGroup,\n Label,\n CardBody,\n CardTitle,\n Alert,\n} from \"reactstrap\";\n\nimport classnames from \"classnames\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport {\n getListInvoice,\n addNewInvoiceAdjustment,\n getStaffProfile\n} from \"store/outpayments/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport ConfirmModal from \"components/Common/ConfirmModal\";\nimport \"assets/scss/table.scss\";\n\nclass OutPaymentsForm extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n outPayments: [],\n staffProfiles: [],\n outPayment: \"\",\n modal: false,\n addmodal: false,\n confirmModal: false,\n id: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n invoice_id: \"\",\n total_adjustment: \"\",\n price_discount: \"\",\n others: \"\",\n tax: \"\",\n status: \"\",\n comments: \"\",\n checkedoutData: \"\",\n successMessage: \"\",\n amountExceedsLimit: false,\n selectedOption: null,\n selectedAmount: 0, // Initialize with 0, it will be updated later\n };\n // this.toggleTab = this.toggleTab.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleSelectGroup = this.handleSelectGroup.bind(this);\n }\n\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n handleSubmitClicks = () => {\n this.setState({\n outPayment: {\n invoice_id: this.state.invoice_id,\n tax: this.state.tax,\n total_adjustment: this.state.total_adjustment,\n price_discount: this.state.price_discount,\n others: this.state.others,\n status: \"Approved\",\n comments: this.state.comments,\n },\n successMessage: 'Invoice adjustment added successfully!',\n });\n \n // API call to create a new outPayment record\n const { onAddNewInvoiceAdjustment } = this.props;\n setTimeout(() => {\n console.log(\n onAddNewInvoiceAdjustment(this.state.outPayment, this.state.user_id)\n );\n \n // After 2 seconds, reload the window\n setTimeout(() => {\n window.location.reload();\n }, 1000);\n }, 1000);\n };\n\n componentDidMount() {\n const { staffProfiles, onGetStaffProfile } = this.props;\n onGetStaffProfile(this.state.user_id);\n this.setState({\n staffProfiles\n });\n console.log(\"state\", staffProfiles)\n\n const { listInvoice, onGetListInvoice } = this.props;\n if (listInvoice && !listInvoice.length) {\n onGetListInvoice();\n }\n this.setState({ listInvoice });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // Select\n handleSelectGroup = selectedGroup => {\n this.setState({ outPayment: selectedGroup.value });\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { outPayments } = this.props;\n if (\n !isEmpty(outPayments) &&\n size(prevProps.outPayments) !== size(outPayments)\n ) {\n this.setState({ outPayments: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n handleAmountChange = e => {\n const enteredAmount = e.target.value;\n \n if (parseFloat(enteredAmount) <= this.state.selectedAmount || enteredAmount === \"\") {\n // If the entered amount is within the limit or is empty, update the state\n this.setState({\n tax: enteredAmount,\n amountExceedsLimit: false,\n });\n } else {\n // If the entered amount exceeds the limit, display a warning\n this.setState({\n amountExceedsLimit: true,\n });\n }\n };\n\n render() {\n const { SearchBar } = Search;\n const { outPayments } = this.props;\n const { staffProfiles } = this.props;\n const { listInvoice } = this.props;\n\n // const { units } = this.props;\n\n const { onAddNewInvoiceAdjustment, onGetOutPayment, onGetStaffProfile } =\n this.props;\n const outPayment = this.state.outPayment;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: outPayments.length, // replace later with size(outPayments),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n const listInvoiceList = [];\n for (let i = 0; i < listInvoice.length; i++) {\n if (listInvoice[i].lab_office === this.props.staffProfiles.territory_office) {\n listInvoiceList.push({\n label: `${listInvoice[i].order_id} - ${listInvoice[i].lab_name} - ${listInvoice[i].lab_type} - ${listInvoice[i].lab_city} - (Invoice Amount: ${listInvoice[i].total_dues})`,\n value: listInvoice[i].id,\n data: { dues: listInvoice[i].total_dues}, // Include the 'dues' property in the data field\n });\n }\n }\n\n\n return (\n \n
    \n \n Invoice Adjustment Form | Lab Hazir - Dashboard\n \n \n \n \n
    \n {this.state.successMessage &&
    {this.state.successMessage}
    }\n \n
    \n {/* \n Note: There will be that Labs, Donors and B2b Clients whose terriotory will match this staff.\n */}\n \n

    \n
    \n \n \n \n \n {this.state.successMessage && (\n
    \n {this.state.successMessage}\n
    \n )}\n \n
    \n {\n outPayment.invoice_id ? (\n
    \n \n \n \n {\n outPayment.invoice_id\n }\n \n \n
    \n ) : (\n
    \n \n \n // this.setState({\n // invoice_id:\n // selectedGroup.value,\n // })\n // }\n onChange={selectedOption => {\n const selectedValue = selectedOption ? selectedOption.value : null;\n const selectedData = selectedOption ? selectedOption.data || {} : {};\n const totalAmount = parseFloat(selectedData.dues) || 0;\n \n this.setState({\n invoice_id: selectedValue,\n selectedOption,\n selectedAmount: totalAmount,\n amountExceedsLimit: false, // Reset the flag when a new lab is selected\n });\n \n // Auto-set the amount field\n this.setState({ tax: totalAmount.toString() });\n console.log(\"amount arahi h yah nahi\", selectedData, totalAmount);\n }}\n className={\n \"defautSelectParent\" +\n (!this.state.invoice_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor: !this\n .state.invoice_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={listInvoiceList}\n placeholder=\"Select Invoice ID...\"\n />\n\n
    \n Please select Invoice ID\n
    \n
    )\n }\n\n \n \n \n this.handleAmountChange(e)}\n />\n {this.state.amountExceedsLimit && (\n \n Warning: The entered Tax cannot exceed the Invoice Amount.\n \n )}\n \n \n \n \n this.setState({\n total_adjustment: e.target.value,\n })\n }\n />\n \n \n \n this.setState({\n price_discount: e.target.value,\n })\n }\n />\n \n \n \n this.setState({\n others: e.target.value,\n })\n }\n />\n \n \n \n \n this.setState({\n comments: e.target.value,\n })\n }\n />\n \n\n \n \n \n \n
    \n \n \n Save and Approve\n \n
    \n\n \n
    \n\n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n );\n }\n}\n\nOutPaymentsForm.propTypes = {\n match: PropTypes.object,\n history: PropTypes.object,\n outPayments: PropTypes.array,\n listInvoice: PropTypes.array,\n className: PropTypes.any,\n onGetOutPayment: PropTypes.func,\n onAddNewInvoiceAdjustment: PropTypes.func,\n onGetStaffProfile: PropTypes.func,\n staffProfiles: PropTypes.func,\n onGetListInvoice: PropTypes.func,\n\n};\n\nconst mapStateToProps = ({ outPayments }) => ({\n outPayments: outPayments.outPayments,\n staffProfiles: outPayments.staffProfiles,\n listInvoice: outPayments.listInvoice,\n\n\n\n // units: outPayments.units,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetListInvoice: () => dispatch(getListInvoice()),\n onGetOutPayment: id => dispatch(getOutPayment(id)),\n onAddNewInvoiceAdjustment: (outPayment, id) =>\n dispatch(addNewInvoiceAdjustment(outPayment, id)),\n onGetStaffProfile: id => dispatch(getStaffProfile(id)),\n\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(OutPaymentsForm)); \n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport Select from \"react-select\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport moment from 'moment';\nimport { CITIES, DISTRICTS } from \"helpers/global_variables_helper\";\n// import MultiSelectCheckBox from 'react-multiselect-checkboxes';\nimport { Tooltip } from \"@material-ui/core\";\nimport filterFactory, { textFilter} from 'react-bootstrap-table2-filter';\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getAdvertisements,\n addNewAdvertisement,\n updateAdvertisement,\n deleteAdvertisement,\n} from \"store/advertisements/actions\";\n\nimport {\n getTerritoriesList\n} from \"store/territories-list/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\n\nclass AdvertisementsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n advertisements: [],\n advertisement: \"\",\n advertisementImg: \"\",\n territoriesList: [],\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n advertisementListColumns: [\n {\n text: \"Adv ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n formatter: (cellContent, labAdvertisementRequest) => (\n <>{labAdvertisementRequest.id}\n ),\n filter: textFilter({\n placeholder: 'Enter Adv ID',\n }),\n },\n {\n dataField: \"title\",\n text: \"Title\",\n sort: true,\n filter: textFilter(),\n headerStyle: { textAlign: 'left' }, // Add this line to left-align the column header\n style: { textAlign: 'left' }, // Add this line to left-align the column content\n }, \n {\n text: \"Start Time\",\n dataField: \"posted_at\",\n sort: true,\n hidden: false,\n formatter: (cellContent, labAdvertisementRequest) => (\n <>\n \n {moment(labAdvertisementRequest.posted_at).format(\"DD MMM YYYY, h:mm A\")}\n \n \n ),\n filter: textFilter({\n placeholder: 'Enter Start Date',\n }),\n },\n {\n text: \"End Time\",\n dataField: \"posted_till\",\n sort: true,\n hidden: false,\n formatter: (cellContent, labAdvertisementRequest) => (\n <>\n \n {moment(labAdvertisementRequest.posted_till).format(\"DD MMM YYYY, h:mm A\")}\n \n \n ),\n filter: textFilter({\n placeholder: 'Enter End Date',\n }),\n },\n {\n dataField: \"number_of_days\",\n text: \"Duration In Days\",\n sort: true,\n },\n {\n text: \"City\",\n dataField: \"city\",\n sort: true,\n hidden: false,\n formatter: (cellContent, labAdvertisementRequest) => (\n <>{labAdvertisementRequest.city}\n ),\n filter: textFilter({\n placeholder: 'Enter City',\n }),\n },\n {\n dataField: \"poster\",\n text: \"Adv Media\",\n formatter: (cellContent, advertisement) => (\n <>\n {advertisement.poster ? (\n advertisement.poster.match(/\\.(jpeg|jpg|gif|png)$/) ? (\n \n \n \n ) : (\n \n \n \n )\n ) : (\n
    \n \n {/* {advertisement.name.charAt(0)} */}\n \n
    \n )}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, advertisement) => (\n
    \n \n \n this.handleAdvertisementClick(e, advertisement)}\n >\n \n \n \n \n this.onClickDelete(advertisement)}\n >\n \n \n
    \n ),\n },\n ],\n };\n this.handleAdvertisementClick = this.handleAdvertisementClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleAdvertisementClicks = this.handleAdvertisementClicks.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n\n // The code for converting \"image source\" (url) to \"Base64\"\n toDataURL = url =>\n fetch(url)\n .then(response => response.blob())\n .then(\n blob =>\n new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.onerror = reject;\n reader.readAsDataURL(blob);\n })\n );\n\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n componentDidMount() {\n const { advertisements, onGetAdvertisements } = this.props;\n if (advertisements && !advertisements.length) {\n console.log(onGetAdvertisements(this.state.user_id));\n }\n\n const { territoriesList, onGetTerritoriesList } = this.props;\n if (territoriesList && !territoriesList.length) {\n console.log(onGetTerritoriesList(this.state.user_id));\n }\n // this.setState({ advertisements });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleAdvertisementClicks = () => {\n this.setState({\n advertisement: \"\",\n advertisementImg: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { advertisements } = this.props;\n if (\n !isEmpty(advertisements) &&\n size(prevProps.advertisements) !== size(advertisements)\n ) {\n this.setState({ advertisements: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = advertisements => {\n this.setState({ advertisements: advertisements });\n this.setState({ deleteModal: true });\n };\n\n handleDeleteAdvertisement = () => {\n const { onDeleteAdvertisement, onGetAdvertisements } = this.props;\n const { advertisements } = this.state;\n if (advertisements.id !== undefined) {\n onDeleteAdvertisement(advertisements);\n setTimeout(() => {\n onGetAdvertisements(this.state.user_id);\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n\n handleAdvertisementClick = (e, arg) => {\n const advertisement = arg;\n\n this.setState({\n advertisement: {\n id: advertisement.id,\n title: advertisement.title,\n poster: process.env.REACT_APP_BACKENDURL + advertisement.poster,\n posted_at: advertisement.posted_at,\n posted_till: advertisement.posted_till,\n // region_type: advertisement.region_type,\n // province: advertisement.province,\n city_id: advertisement.city_id,\n // district: advertisement.district,\n },\n advertisementImg: \"\",\n isEdit: true,\n });\n\n this.toggle();\n };\n\n render() {\n\n // list of city from territories\n const cityList = [];\n for (let i = 0; i < this.props.territoriesList.length; i++) {\n cityList.push({\n label: this.props.territoriesList[i].city,\n value: this.props.territoriesList[i].id,\n });\n }\n\n const { SearchBar } = Search;\n\n const { advertisements } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onAddNewAdvertisement,\n onUpdateAdvertisement,\n onGetAdvertisements,\n } = this.props;\n const advertisement = this.state.advertisement;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: 10, // replace later with size(advertisements),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n this.setState({ deleteModal: false })}\n />\n
    \n \n Advertisement List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n \n \n Add New Advertisement\n \n
    \n \n
    \n \n \n
    \n \n\n \n \n {!!isEdit\n ? \"Edit Advertisement\"\n : \"Add Advertisement\"}\n \n \n val === \"Others\",\n // then: Yup.string()\n // .trim()\n // .required(\"Please enter test name\")\n // .min(\n // 3,\n // \"Please enter at least 3 characters\"\n // )\n // .max(\n // 255,\n // \"Please enter maximum 255 characters\"\n // )\n // .matches(\n // /^[a-zA-Z][a-zA-Z ]+$/,\n // \"Please enter only alphabets and spaces\"\n // ),\n // }\n // ),\n\n poster: Yup.string().when(\n \"hiddenEditFlag\",\n {\n is: hiddenEditFlag =>\n hiddenEditFlag == false, //just an e.g. you can return a function\n then: Yup.string().required(\n \"Please upload poster\"\n ),\n }\n ),\n })}\n onSubmit={values => {\n console.log(\"onsubmit\", values)\n if (isEdit) {\n if (\n !this.state.advertisementImg\n ) {\n this.toDataURL(\n advertisement.poster\n ).then(dataUrl => {\n var fileData =\n this.dataURLtoFile(\n dataUrl,\n advertisement.poster\n .split(\"/\")\n .at(-1)\n );\n this.setState({\n advertisementImg: fileData,\n });\n\n const updateAdvertisement = {\n id: advertisement.id,\n\n title: values.title,\n poster:\n this.state\n .advertisementImg,\n\n posted_at: values.posted_at,\n posted_till:\n values.posted_till,\n // region_type:\n // values.region_type,\n // province: values.province,\n city_id: values.city_id,\n // district: values.district,\n };\n\n // update Advertisement\n onUpdateAdvertisement(\n updateAdvertisement\n );\n setTimeout(() => {\n onGetAdvertisements(\n this.state.user_id\n );\n }, 1000);\n });\n } else {\n const updateAdvertisement = {\n id: advertisement.id,\n\n title: values.title,\n poster:\n this.state.advertisementImg,\n\n posted_at: values.posted_at,\n posted_till:\n values.posted_till,\n // region_type:\n // values.region_type,\n // province: values.province,\n city_id: values.city_id,\n // district: values.district,\n };\n\n // update Advertisement\n onUpdateAdvertisement(\n updateAdvertisement\n );\n setTimeout(() => {\n onGetAdvertisements(\n this.state.user_id\n );\n }, 1000);\n }\n } else {\n const newAdvertisement = {\n id:\n Math.floor(\n Math.random() * (30 - 20)\n ) + 20,\n\n title: values.title,\n poster:\n this.state.advertisementImg,\n\n posted_at: values.posted_at,\n posted_till: values.posted_till,\n // region_type: values.region_type,\n // province: values.province,\n city_id: Array.isArray(values.city_id) ? values.city_id : [values.city_id],\n // district: values.district,\n };\n\n // save new Advertisement\n onAddNewAdvertisement(\n newAdvertisement,\n this.state.user_id\n );\n setTimeout(() => {\n onGetAdvertisements(\n this.state.user_id\n );\n }, 1000);\n }\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n\n {/* Advertisement Title field\n {this.state.advertisement\n .region_type ===\n \"Others\" && (\n \n
    \n \n {\n \n this.setState({\n advertisement:\n {\n id: advertisement.id,\n region_type: advertisement.region_type,\n name: e.target\n .value,\n type: advertisement.type,\n poster:\n advertisement.poster,\n expiry_date: advertisement.expiry_date,\n },\n });\n } \n }\n className={\n \"form-control\" +\n (errors.name &&\n touched.name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n \n )} */}\n {/* Region Type field */}\n
    \n \n {\n this.setState({\n advertisement: {\n id: advertisement.id,\n\n title:\n e.target.value,\n poster:\n advertisement.poster,\n posted_at:\n advertisement.posted_at,\n posted_till:\n advertisement.posted_till,\n // region_type:\n // advertisement.region_type,\n // province:\n // advertisement.province,\n city_id: advertisement.city_id,\n // district:\n // advertisement.district,\n },\n });\n }}\n multiple={false}\n value={this.state.advertisement.title}\n >\n
    \n\n {/* Display current image in edit form only */}\n {advertisement.poster &&\n advertisement.poster ? (\n \n ) : null}\n\n {/* Advertisement field */}\n
    \n \n Advertisement\n \n \n this.setState({\n advertisementImg:\n e.target.files[0],\n })\n }\n className={\n \"form-control\" +\n (errors.poster &&\n touched.poster\n ? \" is-invalid\"\n : \"\")\n }\n />\n\n \n
    \n\n {/* Advertisement posted date field */}\n\n
    \n \n \n this.setState({\n posted_at:\n e.target.value,\n })\n }\n />\n
    \n {/* Advertisement expiry date field */}\n\n
    \n \n \n this.setState({\n posted_till:\n e.target.value,\n })\n }\n />\n
    \n {/* city field */}\n\n
    \n\n \n \n this.setState({\n city_id: selectedGroups.map(group => group.value),\n })\n } \n className={\n \"defautSelectParent\" +\n (errors.city_id && touched.city_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (base, state) => ({\n ...base,\n borderColor:\n errors.city_id && touched.city_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={\n cityList\n }\n // defaultValue={{\n // label:\n // this.state.city,\n // value:\n // this.state.id, \n // }}\n placeholder=\"Select City...\"\n />\n\n \n
    \n\n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nAdvertisementsList.propTypes = {\n match: PropTypes.object,\n advertisements: PropTypes.array,\n className: PropTypes.any,\n onGetAdvertisements: PropTypes.func,\n onAddNewAdvertisement: PropTypes.func,\n onDeleteAdvertisement: PropTypes.func,\n onUpdateAdvertisement: PropTypes.func,\n onGetTerritoriesList: PropTypes.func,\n territoriesList: PropTypes.array,\n};\n\nconst mapStateToProps = ({ advertisements, territoriesList }) => ({\n advertisements: advertisements.advertisements,\n territoriesList: territoriesList.territoriesList,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetAdvertisements: id => dispatch(getAdvertisements(id)),\n onAddNewAdvertisement: (advertisement, id) =>\n dispatch(addNewAdvertisement(advertisement, id)),\n onUpdateAdvertisement: advertisement =>\n dispatch(updateAdvertisement(advertisement)),\n onDeleteAdvertisement: advertisement =>\n dispatch(deleteAdvertisement(advertisement)),\n onGetTerritoriesList: id => dispatch(getTerritoriesList(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(AdvertisementsList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getAdvertisementPriceLists,\n addNewAdvertisementPriceList,\n updateAdvertisementPriceList,\n deleteAdvertisementPriceList,\n} from \"store/advertisement-price-lists/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass AdvertisementsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n advertisementPriceLists: [],\n advertisementPriceList: \"\",\n advertisementImg: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n advertisementPriceListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, advertisementPriceList) => <>{advertisementPriceList.id},\n },\n \n {\n dataField: \"district\",\n text: \"Price\",\n sort: true,\n },\n {\n dataField: \"number_of_days\",\n text: \"Number of Days\",\n sort: true,\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, advertisementPriceList) => (\n
    \n \n this.handleAdvertisementClick(e, advertisementPriceList)}\n >\n \n \n this.onClickDelete(advertisementPriceList)}\n >\n \n
    \n ),\n },\n ],\n };\n this.handleAdvertisementClick = this.handleAdvertisementClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleAdvertisementClicks = this.handleAdvertisementClicks.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n\n\n\n componentDidMount() {\n const { advertisementPriceLists, onGetAdvertisementPriceLists } = this.props;\n if (advertisementPriceLists && !advertisementPriceLists.length) {\n console.log(onGetAdvertisementPriceLists(this.state.user_id));\n }\n // this.setState({ advertisementPriceLists });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleAdvertisementClicks = () => {\n this.setState({\n advertisementPriceList: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { advertisementPriceLists } = this.props;\n if (\n !isEmpty(advertisementPriceLists) &&\n size(prevProps.advertisementPriceLists) !== size(advertisementPriceLists)\n ) {\n this.setState({ advertisementPriceLists: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = advertisementPriceLists => {\n this.setState({ advertisementPriceLists: advertisementPriceLists });\n this.setState({ deleteModal: true });\n };\n\n handleDeleteAdvertisement = () => {\n const { onDeleteAdvertisementPriceList, onGetAdvertisementPriceLists } = this.props;\n const { advertisementPriceLists } = this.state;\n if (advertisementPriceLists.id !== undefined) {\n onDeleteAdvertisementPriceList(advertisementPriceLists);\n setTimeout(() => {\n onGetAdvertisementPriceLists(this.state.user_id);\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n\n handleAdvertisementClick = (e, arg) => {\n const advertisementPriceList = arg;\n\n this.setState({\n advertisementPriceList: {\n id: advertisementPriceList.id,\n amount: advertisementPriceList.amount,\n number_of_days: advertisementPriceList.number_of_days,\n entered_at: advertisementPriceList.entered_at,\n \n },\n\n isEdit: true,\n });\n\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { advertisementPriceLists } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onAddNewAdvertisementPriceList,\n onUpdateAdvertisementPriceList,\n onGetAdvertisementPriceLists,\n } = this.props;\n const advertisementPriceList = this.state.advertisementPriceList;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: 10, // replace later with size(advertisementPriceLists),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n this.setState({ deleteModal: false })}\n />\n
    \n \n Advertisement Price List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n \n \n Add New Advertisement Price\n \n
    \n \n
    \n \n \n
    \n \n\n \n \n {!!isEdit\n ? \"Edit Quality Advertisement Price\"\n : \"Add Quality Advertisement Price\"}\n \n \n {\n if (isEdit) {\n // if (\n // !this.state.advertisementImg\n // ) {\n // this.toDataURL(\n // advertisementPriceList.poster\n // ).then(dataUrl => {\n // var fileData =\n // this.dataURLtoFile(\n // dataUrl,\n // advertisementPriceList.poster\n // .split(\"/\")\n // .at(-1)\n // );\n // this.setState({\n // advertisementImg: fileData,\n // });\n const updateAdvertisementPriceList = {\n id: advertisementPriceList.id,\n\n amount: values.amount,\n number_of_days:\n values.number_of_days,\n \n entered_at: values.entered_at,\n \n };\n // update Advertisement\n onUpdateAdvertisementPriceList(\n updateAdvertisementPriceList\n );\n setTimeout(() => {\n onGetAdvertisementPriceLists(\n this.state.user_id\n );\n }, 1000);\n \n // } else {\n // const updateAdvertisementPriceList = {\n // id: advertisementPriceList.id,\n\n \n // amount: values.amount,\n // number_of_days:\n // values.number_of_days,\n \n // entered_at: values.entered_at,\n \n // };\n\n // // update Advertisement\n // onUpdateAdvertisementPriceList(\n // updateAdvertisementPriceList\n // );\n // setTimeout(() => {\n // onGetAdvertisementPriceLists(\n // this.state.user_id\n // );\n // }, 1000);\n // }\n } else {\n const newAdvertisement = {\n id:\n Math.floor(\n Math.random() * (30 - 20)\n ) + 20,\n\n \n amount: values.amount,\n number_of_days:\n values.number_of_days,\n \n entered_at: values.entered_at,\n };\n\n // save new Advertisement\n onAddNewAdvertisementPriceList(\n newAdvertisement,\n this.state.user_id\n );\n setTimeout(() => {\n onGetAdvertisementPriceLists(\n this.state.user_id\n );\n }, 1000);\n }\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n\n\n
    \n \n {\n this.setState({\n advertisementPriceList: {\n id: advertisementPriceList.id,\n\n amount:\n e.target.value,\n \n number_of_days: advertisementPriceList.number_of_days,\n entered_at:\n advertisementPriceList.entered_at,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.amount &&\n touched.amount\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n {/* Advertisement number of days price */}\n\n
    \n \n {\n this.setState({\n advertisementPriceList: {\n id: advertisementPriceList.id,\n\n amount:\n advertisementPriceList.amount,\n \n number_of_days: e.target.value,\n entered_at:\n advertisementPriceList.entered_at,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.number_of_days &&\n touched.number_of_days\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n \n\n {/* Advertisement price posted date field */}\n\n
    \n \n {\n this.setState({\n advertisementPriceList: {\n id: advertisementPriceList.id,\n\n amount:\n advertisementPriceList.amount,\n \n number_of_days: advertisementPriceList.number_of_days,\n entered_at:\n e.target.value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.entered_at &&\n touched.entered_at\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n \n\n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nAdvertisementsList.propTypes = {\n match: PropTypes.object,\n advertisementPriceLists: PropTypes.array,\n className: PropTypes.any,\n onGetAdvertisementPriceLists: PropTypes.func,\n onAddNewAdvertisementPriceList: PropTypes.func,\n onDeleteAdvertisementPriceList: PropTypes.func,\n onUpdateAdvertisementPriceList: PropTypes.func,\n};\n\nconst mapStateToProps = ({ advertisementPriceLists }) => ({\n advertisementPriceLists: advertisementPriceLists.advertisementPriceLists,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetAdvertisementPriceLists: id => dispatch(getAdvertisementPriceLists(id)),\n onAddNewAdvertisementPriceList: (advertisementPriceList, id) =>\n dispatch(addNewAdvertisementPriceList(advertisementPriceList, id)),\n onUpdateAdvertisementPriceList: advertisementPriceList =>\n dispatch(updateAdvertisementPriceList(advertisementPriceList)),\n onDeleteAdvertisementPriceList: advertisementPriceList =>\n dispatch(deleteAdvertisementPriceList(advertisementPriceList)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(AdvertisementsList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Tooltip } from \"@material-ui/core\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Button,\n Row,\n Modal,\n ModalHeader,\n ModalBody,\n Label,\n} from \"reactstrap\";\nimport filterFactory, {textFilter} from \"react-bootstrap-table2-filter\";\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\nimport moment from 'moment';\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport {\n getDiscountLabHazirs,\n updateDiscountLabHazir,\n updateDiscountAllLabHazir,\n} from \"store/discount-labhazir/actions\";\nimport { isEmpty, size } from \"lodash\";\nimport ConfirmModal from \"components/Common/ConfirmModal\";\n\nimport \"assets/scss/table.scss\";\n\nclass DiscountLabHazirList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n discountLabHazirs: [],\n discountLabHazir: \"\",\n modal: false,\n confirmModal: false,\n isEditAll: true,\n id: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n discountLabHazirListColumns: [\n {\n dataField: \"id\",\n text: \"Test ID\",\n sort: true,\n formatter: (cellContent, discountLabHazir) => (\n <>\n {discountLabHazir.id}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"name\",\n text: \"Test Name\",\n sort: true,\n // headerStyle: {\n // // width: \"330px\",\n // textAlign: \"left\",\n // },\n formatter: (cellContent, discountLabHazir) => (\n <>\n \n

    \n \n {discountLabHazir.name}

    \n
    \n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"discount\",\n text: \"Discount\",\n sort: true,\n formatter: (cellContent, discountLabHazir) => (\n <>\n {(\n {(discountLabHazir.discount*100).toFixed()}%\n )}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"start_date\",\n text: \"Start Date\",\n sort: true,\n formatter: (cellContent, discountLabHazir) => (\n <>\n \n {discountLabHazir.discount !== 0 ? (\n moment(discountLabHazir.start_date).format(\"DD MMM YYYY, h:mm A\")\n ) : (\n \"--\"\n )}\n \n \n ),\n filter: textFilter({\n placeholder: 'Enter Start Date',\n }),\n },\n {\n dataField: \"end_date\",\n text: \"End Date\",\n sort: true,\n formatter: (cellContent, discountLabHazir) => (\n <>\n \n {discountLabHazir.discount !== 0 ? (\n moment(discountLabHazir.end_date).format(\"DD MMM YYYY, h:mm A\")\n ) : (\n \"--\"\n )}\n \n \n ),\n filter: textFilter({\n placeholder: 'Enter End Date',\n }),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, discountLabHazir) => (\n
    \n \n \n this.handleEditBtnClick(discountLabHazir)}\n >\n \n \n \n \n \n
    \n ),\n },\n ],\n };\n this.handleEditBtnClick = this.handleEditBtnClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleEditAllBtnClick = this.handleEditAllBtnClick.bind(this);\n }\n\n componentDidMount() {\n const { discountLabHazirs, onGetDiscountLabHazirs } = this.props;\n onGetDiscountLabHazirs(this.state.user_id);\n this.setState({ discountLabHazirs });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n toggleConfirmModal = () => {\n this.setState(prevState => ({\n confirmModal: !prevState.confirmModal,\n }));\n };\n\n handleEditAllBtnClick = () => {\n this.setState({ isEditAll: true, discountLabHazir: \"\" });\n\n this.toggle();\n };\n\n handleAPICall = () => {\n const {\n onGetDiscountLabHazirs,\n onUpdateDiscountAllLabHazir,\n onUpdateDiscountLabHazir,\n } = this.props;\n\n if (this.state.isEditAll) {\n onUpdateDiscountAllLabHazir(this.state.discountLabHazir);\n\n onGetDiscountLabHazirs();\n\n setTimeout(() => {\n this.setState({ discountLabHazirs: this.props.discountLabHazirs });\n }, 1000);\n } else {\n onUpdateDiscountLabHazir(this.state.discountLabHazir);\n\n onGetDiscountLabHazirs();\n\n setTimeout(() => {\n this.setState({ discountLabHazirs: this.props.discountLabHazirs });\n }, 1000);\n }\n\n this.toggle();\n };\n\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { discountLabHazirs } = this.props;\n if (\n !isEmpty(discountLabHazirs) &&\n size(prevProps.discountLabHazirs) !== size(discountLabHazirs)\n ) {\n this.setState({\n discountLabHazirs: {},\n isEdit: false,\n });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n handleEditBtnClick = arg => {\n const discountLabHazir = arg;\n\n this.setState({\n isEditAll: false,\n discountLabHazir: discountLabHazir,\n // id: discountLabHazir.id,\n });\n\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { discountLabHazirs } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const discountLabHazir = this.state.discountLabHazir;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: discountLabHazirs.length, // replace later with size(discountLabHazirs),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n const {\n onGetDiscountLabHazirs,\n onUpdateDiscountAllLabHazir,\n onUpdateDiscountLabHazir,\n } = this.props;\n\n return (\n \n
    \n \n Lab Hazir | Discount Lab Hazir\n \n this.setState({ confirmModal: false })}\n />\n \n {/* Render Breadcrumbs */}\n \n \n

    Note: The Price of Test is not shown in the following table beacuse discount entered Against any specific Test is for all Labs.

    \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n \n Discount\n All\n \n
    \n \n
    \n \n \n
    \n \n\n \n \n {!this.state.isEditAll\n ? \"Discount on one test for all Labs\"\n : \"Discount on all tests\"}\n \n \n discount > 0,\n then: Yup.string().required(\n \"Please select start date\"\n ),\n }),\n end_date: Yup.string(\n Yup.number()\n ).when(\"discount\", {\n is: discount => discount > 0,\n then: Yup.string().required(\n \"Please select end date\"\n ),\n }),\n })}\n onSubmit={values => {\n if (this.state.isEditAll) {\n onUpdateDiscountAllLabHazir(\n this.state.discountLabHazir\n );\n } else {\n onUpdateDiscountLabHazir(\n this.state.discountLabHazir\n );\n }\n\n setTimeout(() => {\n onGetDiscountLabHazirs();\n\n setTimeout(() => {\n this.setState({\n discountLabHazirs:\n this.props\n .discountLabHazirs,\n });\n }, 1000);\n }, 1000);\n\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n
    \n \n {\n this.setState({\n discountLabHazir: {\n id: this.state\n .discountLabHazir\n .id,\n discount:\n e.target.value,\n start_date:\n discountLabHazir.start_date,\n end_date:\n discountLabHazir.end_date,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.discount &&\n touched.discount\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n\n {this.state.discountLabHazir\n .discount > 0 && (\n
    \n
    \n \n {\n this.setState({\n discountLabHazir:\n {\n id: this.state\n .discountLabHazir\n .id,\n // b2b_id:\n // this.props.match\n // .params.id,\n discount:\n discountLabHazir.discount,\n start_date:\n e.target\n .value,\n end_date:\n discountLabHazir.end_date,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.start_date &&\n touched.start_date\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n
    \n \n {\n this.setState({\n discountLabHazir:\n {\n id: this.state\n .discountLabHazir\n .id,\n // b2b_id:\n // this.props.match\n // .params.id,\n discount:\n discountLabHazir.discount,\n start_date:\n discountLabHazir.start_date,\n end_date:\n e.target\n .value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.end_date &&\n touched.end_date\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n
    \n )}\n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nDiscountLabHazirList.propTypes = {\n match: PropTypes.object,\n discountLabHazirs: PropTypes.array,\n className: PropTypes.any,\n onGetDiscountLabHazirs: PropTypes.func,\n onUpdateDiscountLabHazir: PropTypes.func,\n onUpdateDiscountAllLabHazir: PropTypes.func,\n};\n\nconst mapStateToProps = ({ discountLabHazirs }) => ({\n discountLabHazirs: discountLabHazirs.discountLabHazirs,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetDiscountLabHazirs: id => dispatch(getDiscountLabHazirs(id)),\n onUpdateDiscountLabHazir: discountLabHazir =>\n dispatch(updateDiscountLabHazir(discountLabHazir)),\n onUpdateDiscountAllLabHazir: discountLabHazir =>\n dispatch(updateDiscountAllLabHazir(discountLabHazir)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(DiscountLabHazirList));\n","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalBody,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\nimport filterFactory, { textFilter} from 'react-bootstrap-table2-filter';\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getLabsList,\n} from \"store/labs-list/actions\";\n\n\nclass LabsLists extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n labsList: [],\n id: \"\",\n LabsLists: \"\",\n labsList: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n labsListListColumns: [\n\n {\n dataField: \"id\",\n text: \"Lab ID\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.id}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"name\",\n text: \"Lab Name\",\n sort: true,\n // style: {\n // width: \"300px\",\n // textAlign: \"left\",\n // },\n formatter: (cellContent, labsList) => (\n \n {/* {patientTestAppointment.payment_status == \"Not Paid\" ? ( */}\n \n {labsList.name}\n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"email\",\n text: \"Email\",\n sort: true,\n style: {\n // width: \"300px\",\n textAlign: \"left\",\n },\n filter: textFilter(),\n },\n {\n dataField: \"landline\",\n text: \"Phone No.\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"city\",\n text: \"City\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"district\",\n text: \"District\",\n sort: true,\n filter: textFilter(),\n },\n ],\n };\n }\n\n // componentDidMount() {\n // const { labsList, onGetLabsLists } = this.props;\n // console.log(onGetLabsLists());\n // this.setState({ labsList });\n // }\n componentDidMount() {\n const { labsList, onGetLabsLists } = this.props;\n onGetLabsLists(this.state.user_id);\n console.log(onGetLabsLists());\n this.setState({ labsList });\n }\n // componentDidMount() {\n // const { b2bAllClients, onGetB2bAllClientsList } = this.props;\n // onGetB2bAllClientsList(this.state.user_id);\n // this.setState({ b2bAllClients });\n // }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { labsList } = this.props;\n const data = this.state.data;\n const { onGetLabsLists } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: labsList.length, // replace later with size(labsList),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n return (\n \n
    \n \n Discount By Labhazir Against Specific Lab | Lab Hazir\n \n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nLabsLists.propTypes = {\n match: PropTypes.object,\n labsList: PropTypes.array,\n className: PropTypes.any,\n onGetLabsLists: PropTypes.func,\n};\nconst mapStateToProps = ({ labsList}) => ({\n labsList: labsList.labsList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetLabsLists: id => dispatch(getLabsList(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(LabsLists));\n","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n ModalHeader,\n Row,\n Label,\n Modal,\n ModalBody,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getLabsList,\n} from \"store/labs-list/actions\";\n\n\nclass LabsLists extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n labsList: [],\n id: \"\",\n LabsLists: \"\",\n searchType: null,\n btnText: \"Copy\",\n labsList: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n labsListListColumns: [\n\n {\n dataField: \"id\",\n text: \"Lab ID\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.id}\n \n ), filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"name\",\n text: \"Lab Name/Type\",\n sort: true,\n style: { textAlign: 'left' },\n formatter: (cellContent, labsList) => (\n <>\n \n \n {labsList.name}{\" - \"}\n {labsList.type}\n \n \n\n\n \n ), filter: textFilter(), // Add a text filter for this column\n // formatter: (cellContent, labsList) => (\n // <>\n // \n // this.openPatientModal(e, labsList)}\n // >\n // {labsList.name}\n // \n // \n // \n // ),\n },\n {\n dataField: \"landline\",\n text: \"Phone\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.landline}\n \n ), filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"email\",\n text: \"Email\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.email}\n \n ), filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"city\",\n text: \"City\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.city}\n \n ), filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"address\",\n text: \"Address\",\n sort: true,\n style: { textAlign: 'left' },\n formatter: (cellContent, labsList) => (\n <>\n {labsList.address}\n \n ), filter: textFilter(), // Add a text filter for this column\n },\n // {\n // dataField: \"current_amount\",\n // text: \"Current Amount\",\n // sort: true,\n // formatter: (cellContent, labsList) => (\n //

    \n // {labsList.current_amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n //

    \n // ), filter: textFilter(), // Add a text filter for this column\n // },\n // {\n // dataField: \"account_no\",\n // text: \"Account Statement\",\n // sort: true,\n // formatter: (cellContent, labsList) => (\n // \n // Account statement\n // \n // ), filter: textFilter(), // Add a text filter for this column\n\n // },\n ],\n };\n }\n fetchData = () => {\n const { onGetLabsLists } = this.props;\n onGetLabsLists(); // Assuming onGetLabsLists fetches data without userId\n };\n\n componentDidMount() {\n this.fetchData();\n }\n\n componentDidUpdate(prevProps, prevState) {\n // Check if searchType has changed\n if (prevState.searchType !== this.state.searchType) {\n this.fetchData();\n }\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n lab_address: arg.address,\n lab_city: arg.city,\n lab_phone: arg.landline,\n lab_email: arg.email,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n\n render() {\n const { SearchBar } = Search;\n const { searchType } = this.state;\n const { labsList } = this.props;\n // Filter data based on selected type\n const filteredStatements = labsList.filter((lab) => {\n if (searchType === 'payable' && lab.current_amount > 0) {\n return true;\n } else if (searchType === 'receivable' && lab.current_amount < 0) {\n return true;\n } else if (!searchType) {\n // For other cases or when no filter is selected, include all labs\n return true;\n }\n return false; // Exclude labs that don't match the conditions\n });\n\n const columns = [\n ...this.state.labsListListColumns,\n {\n dataField: \"current_amount\",\n text: \"Current Amount\",\n sort: true,\n formatter: (cellContent, lab) => (\n

    \n {lab.current_amount !== undefined && lab.current_amount !== null\n ? lab.current_amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n : \"\"}\n

    \n ),\n filter: textFilter(),\n },\n // {\n // dataField: \"account_no\",\n // text: \"Account Statement\",\n // sort: true,\n // formatter: (cellContent, labsList) => (\n // \n // Account statement\n // \n // ), filter: textFilter(), // Add a text filter for this column\n\n // },\n ];\n\n\n const data = this.state.data;\n const { onGetLabsLists } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: labsList.length, // replace later with size(labsList),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n return (\n \n
    \n \n Labs List | Lab Hazir\n \n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n
    \n \n this.setState({ searchType: e.target.value })}\n >\n \n \n \n \n

    Filter and view the Payable Labs or Receivable Labs

    \n\n
    \n
    \n
    \n \n \n
    \n \n \n
    \n \n \n \n \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state\n .lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nLabsLists.propTypes = {\n match: PropTypes.object,\n labsList: PropTypes.array,\n className: PropTypes.any,\n onGetLabsLists: PropTypes.func,\n};\nconst mapStateToProps = ({ labsList }) => ({\n labsList: labsList.labsList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetLabsLists: id => dispatch(getLabsList(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(LabsLists));\n","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n ModalHeader,\n Row,\n Label,\n Modal,\n ModalBody,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getDonorsList,\n} from \"store/labs-list/actions\";\n\n\nclass LabsLists extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n labsList: [],\n id: \"\",\n LabsLists: \"\",\n btnText: \"Copy\",\n labsList: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n labsListListColumns: [\n {\n dataField: \"id\",\n text: \"Donor ID\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.id}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"name\",\n text: \"Donor Name\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.name}\n \n ),filter: textFilter(), // Add a text filter for this column\n // formatter: (cellContent, labsList) => (\n // <>\n // \n // this.openPatientModal(e, labsList)}\n // >\n // {labsList.name}\n // \n // \n // \n // ),\n },\n {\n dataField: \"phone\",\n text: \"Phone\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.phone}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"email\",\n text: \"Email\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.email}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"city\",\n text: \"City\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.city}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"type\",\n text: \"Type\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.type}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"current_amount\",\n text: \"Current Amount\",\n sort: true,\n formatter: (cellContent, labsList) => (\n \n {(labsList.current_amount || \"--\").toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"account_no\",\n text: \"Account Statement\",\n sort: true,\n formatter: (cellContent, labsList) => (\n \n Account statement\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n\n ],\n };\n }\n\n // componentDidMount() {\n // const { labsList, onGetDonorsList } = this.props;\n // console.log(onGetDonorsList());\n // this.setState({ labsList });\n // }\n componentDidMount() {\n const { labsList, onGetDonorsList } = this.props;\n onGetDonorsList(this.state.user_id);\n console.log(onGetDonorsList());\n this.setState({ labsList });\n }\n // componentDidMount() {\n // const { b2bAllClients, onGetB2bAllClientsList } = this.props;\n // onGetB2bAllClientsList(this.state.user_id);\n // this.setState({ b2bAllClients });\n // }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n lab_address: arg.address,\n lab_city: arg.city,\n lab_phone: arg.landline,\n lab_email: arg.email,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { labsList } = this.props;\n const data = this.state.data;\n const { onGetDonorsList } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: labsList.length, // replace later with size(labsList),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n return (\n \n
    \n \n Donors List | Lab Hazir\n \n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n {/*
    \n \n \n
    */}\n
    \n \n
    \n \n \n
    \n \n \n \n \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state\n .lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nLabsLists.propTypes = {\n match: PropTypes.object,\n labsList: PropTypes.array,\n className: PropTypes.any,\n onGetDonorsList: PropTypes.func,\n};\nconst mapStateToProps = ({ labsList}) => ({\n labsList: labsList.labsList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetDonorsList: id => dispatch(getDonorsList(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(LabsLists));\n","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport moment from 'moment';\nimport 'react-datepicker/dist/react-datepicker.css';\nimport DatePicker from 'react-datepicker';\nimport {\n Card,\n CardBody,\n Col,\n Container,\n ModalHeader,\n Row,\n Label,\n Modal,\n ModalBody,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getDonorsA,\n} from \"store/labs-list/actions\";\n\n\nclass LabsLists extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n labsList: [],\n id: \"\",\n LabsLists: \"\",\n btnText: \"Copy\",\n selectedLab: null,\n labsData: [], // Default value is an empty array\n labsList: \"\",\n startDate: null,\n endDate: null,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n labsListListColumns: [\n {\n dataField: \"booked_at\",\n text: \"Date\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {moment(labsList.booked_at).format(\"DD MMM YYYY\")}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"order_id\",\n text: \"Order ID\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.order_id}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"patient_name\",\n text: \"Patient Name\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n \n this.openNamePatientModal(e, labsList)}\n >\n {labsList.patient_name}\n \n \n \n ),filter: textFilter(), \n },\n {\n dataField: \"lab_name\",\n text: \"Lab Name\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n this.openPatientModal(e, labsList)}\n >\n {labsList.lab_name}\n \n \n \n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"is_home_sampling_availed\",\n text: \"Home sampling\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.is_home_sampling_availed == true || labsList.is_state_sampling_availed == true ? (\n Yes\n ) : (\n No\n )}\n \n ),\n filter: selectFilter({\n options: {\n '': 'All',\n 'true': 'Yes',\n 'false': 'No',\n },\n defaultValue: 'All',\n }),\n },\n {\n dataField: \"payment_status\",\n text: \"Payment Status\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.payment_status == \"Not Paid\" ? (\n \n {labsList.payment_method},{\" \"}\n {labsList.payment_status}\n \n ) : (\n \n {labsList.payment_method},{\" \"}\n {labsList.payment_status}\n \n )}\n \n ),\n filter: selectFilter({\n options: {\n '': 'All',\n 'Paid': 'Paid',\n 'Allocate': 'Allocate',\n },\n defaultValue: 'All',\n }),\n },\n {\n dataField: 'status',\n text: 'Appointment Status',\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.status == \"Pending\" && (\n \n {labsList.status}\n \n\n )}\n {labsList.status == \"Confirmed\" && (\n \n {labsList.status}\n \n )}\n\n {labsList.status == \"Sample Collected\" && (\n \n {labsList.status}\n \n )}\n\n {labsList.status == \"Rescheduled\" && (\n \n {labsList.status}\n \n )}\n\n\n {labsList.status == \"Result Uploaded\" && (\n \n {labsList.status}\n \n )}\n\n \n ),\n filter: selectFilter({\n options: {\n '': 'All',\n 'Pending': 'Pending',\n 'Confirmed': 'Confirmed',\n 'Sample Collected': 'Sample Collected',\n 'Rescheduled': 'Rescheduled',\n 'Result Uploaded': 'Result Uploaded',\n },\n defaultValue: 'All',\n }),\n },\n {\n dataField: \"dues\",\n text: \"Invoice Value\",\n sort: true,\n formatter: (cellContent, labsList) => (\n
    \n {labsList && typeof labsList.dues !== 'undefined' ? (\n labsList.dues.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\n ) : (\n 'N/A' // or any default value you want to display when dues is undefined\n )}\n
    \n ),\n filter: textFilter(),\n },\n \n {\n dataField: \"donor_name\",\n text: \"Donor Name\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.donor_name}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n ],\n };\n }\n componentDidMount() {\n const currentMonthStart = moment().startOf(\"month\");\n const currentMonthEnd = moment().endOf(\"month\");\n\n this.setState({\n startDate: currentMonthStart.toDate(),\n endDate: currentMonthEnd.toDate(),\n });\n\n this.fetchData();\n\n }\n\n componentDidUpdate(prevProps, prevState) {\n if (\n prevState.startDate !== this.state.startDate ||\n prevState.endDate !== this.state.endDate\n ) {\n // Fetch data based on date filters\n this.fetchData();\n }\n\n if (\n this.props.labsList.length > 0 &&\n this.props.labsList !== prevProps.labsList\n ) {\n const lastIndex = this.props.labsList.findIndex((statement) => {\n const statementDate = new Date(statement.booked_at);\n const labFilter = !this.state.selectedLab || statement.lab_name === this.state.selectedLab;\n return (\n statementDate >= this.state.startDate &&\n statementDate <= this.state.endDate &&\n labFilter\n );\n });\n\n // Do something with lastIndex if needed\n }\n }\n\n fetchData = () => {\n if (this.state.user_id) {\n const { onGetDonorsA } = this.props;\n const userId = this.state.user_id; // If it's always user_id, no need for conditional check\n\n // Only make the API call if both start and end dates are selected\n if (this.state.startDate && this.state.endDate) {\n onGetDonorsA(userId);\n }\n }\n };\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n openNamePatientModal = (e, arg) => {\n this.setState({\n NamePatientModal: true,\n patient_phone: arg.patient_phone,\n patient_age: arg.patient_age,\n patient_gender: arg.patient_gender,\n });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n lab_address: arg.lab_address,\n lab_city: arg.lab_city,\n lab_phone: arg.lab_phone,\n lab_email: arg.lab_email,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n toggleNamePatientModal = () => {\n this.setState(prevState => ({\n NamePatientModal: !prevState.NamePatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n const { startDate, endDate, labsData } = this.state;\n const { labsList } = this.props;\n \n const uniqueLabNames = [...new Set(this.props.labsList.map(labsList => labsList.lab_name))];\n\n // Generate labOptions for the \n \n\n\n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n {/*
    \n \n \n
    */}\n
    \n \n
    \n \n \n
    \n \n \n \n Lab Details: \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state\n .lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n \n Patient Details: \n \n \n \n
    \n \n \n {/*
    \n
    \n \n
    \n
    \n \n
    \n
    */}\n {/*
    \n
    \n \n
    \n
    \n \n
    \n
    */}\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state\n .patient_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n {/* \n \n \n \n */}\n
    \n )}\n \n )}\n \n \n \n \n \n \n \n \n );\n }\n}\n\nLabsLists.propTypes = {\n match: PropTypes.object,\n labsList: PropTypes.array,\n className: PropTypes.any,\n onGetDonorsA: PropTypes.func,\n};\nconst mapStateToProps = ({ labsList}) => ({\n labsList: labsList.labsList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetDonorsA: id => dispatch(getDonorsA(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(LabsLists));\n","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n ModalHeader,\n Row,\n Label,\n Modal,\n ModalBody,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getB2bClients,\n \n} from \"store/outpayments/actions\";\n\n\nclass B2bClientsLists extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n b2bClients: [],\n id: \"\",\n B2bClientsLists: \"\",\n btnText: \"Copy\",\n b2bClients: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n labsListListColumns: [\n\n {\n dataField: \"id\",\n text: \" B2bClient ID\",\n sort: true,\n formatter: (cellContent, b2bClients) => (\n <>\n {b2bClients.id}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"business_name\",\n text: \"Business Name\",\n sort: true,\n formatter: (cellContent, b2bClients) => (\n <>\n {b2bClients.business_name}\n\n {/* this.openPatientModal(e, b2bClients)}\n >\n {b2bClients.business_name}\n */}\n \n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"landline\",\n text: \"Phone\",\n sort: true,\n formatter: (cellContent, b2bClients) => (\n <>\n {b2bClients.landline}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"email\",\n text: \"Email\",\n sort: true,\n formatter: (cellContent, b2bClients) => (\n <>\n {b2bClients.email}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"city\",\n text: \"City\",\n sort: true,\n formatter: (cellContent, b2bClients) => (\n <>\n {b2bClients.city}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"website_url\",\n text: \"Website URL\",\n sort: true,\n formatter: (cellContent, b2bClients) => (\n <>\n {b2bClients.website_url}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"current_amount\",\n text: \"Current Amount\",\n sort: true,\n formatter: (cellContent, b2bClients) => (\n

    \n {b2bClients.current_amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

    \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"account_no\",\n text: \"Account Statement\",\n sort: true,\n formatter: (cellContent, b2bClients) => (\n \n Account statement\n \n ),filter: textFilter(), // Add a text filter for this column\n \n },\n ],\n };\n }\n\n // componentDidMount() {\n // const { b2bClients, onGetB2bClients } = this.props;\n // console.log(onGetB2bClients());\n // this.setState({ b2bClients });\n // }\n componentDidMount() {\n const { b2bClients, onGetB2bClients } = this.props;\n onGetB2bClients(this.state.user_id);\n console.log(onGetB2bClients());\n this.setState({ b2bClients });\n }\n // componentDidMount() {\n // const { b2bAllClients, onGetB2bAllClientsList } = this.props;\n // onGetB2bAllClientsList(this.state.user_id);\n // this.setState({ b2bAllClients });\n // }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n lab_address: arg.website_url,\n lab_city: arg.city,\n lab_phone: arg.landline,\n lab_email: arg.email,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { b2bClients } = this.props;\n const data = this.state.data;\n const { onGetB2bClients } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: b2bClients.length, // replace later with size(b2bClients),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n return (\n \n
    \n \n Labs List | Lab Hazir\n \n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n \n \n \n \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state\n .lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nB2bClientsLists.propTypes = {\n match: PropTypes.object,\n b2bClients: PropTypes.array,\n className: PropTypes.any,\n onGetB2bClients: PropTypes.func,\n};\nconst mapStateToProps = ({ outPayments}) => ({\n b2bClients: outPayments.b2bClients,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetB2bClients: id => dispatch(getB2bClients(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(B2bClientsLists));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Tooltip } from \"@material-ui/core\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Button,\n Row,\n Modal,\n ModalHeader,\n ModalBody,\n Label,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\nimport moment from 'moment';\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport {\n getDiscountLab,\n updateDiscountLab,\n updateDiscountAllLab,\n} from \"store/discount-lab/actions\";\nimport { isEmpty, size } from \"lodash\";\nimport ConfirmModal from \"components/Common/ConfirmModal\";\n\nimport \"assets/scss/table.scss\";\n\nclass DiscountLabHazirList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n discountLabs: [],\n discountLab: \"\",\n modal: false,\n confirmModal: false,\n isEditAll: true,\n id: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n discountLabHazirListColumns: [\n {\n dataField: \"id\",\n text: \"Test ID\",\n sort: true,\n formatter: (cellContent, discountLab) => (\n <>\n {discountLab.id}\n \n ),\n },\n {\n dataField: \"test_name\",\n text: \"Test Name\",\n sort: true,\n // headerStyle: () => {\n // return { \n // style: {width: \"30%\",\n // textAlign: \"left\"\n // },\n // }\n\n // } \n\n },\n {\n dataField: \"price\",\n text: \"Price\",\n sort: true,\n formatter: (cellContent, discountLab) => (\n <>\n {(\n {discountLab.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n )}\n \n ),\n },\n {\n dataField: \"discount\",\n text: \"Discount\",\n sort: true,\n formatter: (cellContent, discountLab) => (\n <>\n {(\n {(discountLab.discount * 100).toFixed()}%\n )}\n \n ),\n },\n {\n dataField: \"discounted_price\",\n text: \"Price After Discount\",\n sort: true,\n formatter: (cellContent, discountLab) => (\n <>\n {(\n {(discountLab.price - ((discountLab.price * (discountLab.discount * 100)) / 100)).toFixed().toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n )}\n \n ),\n },\n\n {\n dataField: \"start_date\",\n text: \"Start Date\",\n sort: true,\n formatter: (cellContent, discountLab) => (\n <>\n \n {discountLab.discount !== 0 ? (\n moment(discountLab.start_date).format(\"DD MMM YYYY, h:mm A\")\n ) : (\n \"--\"\n )}\n \n \n ),\n },\n {\n dataField: \"end_date\",\n text: \"End Date\",\n sort: true,\n formatter: (cellContent, discountLab) => (\n <>\n \n {discountLab.discount !== 0 ? (\n moment(discountLab.end_date).format(\"DD MMM YYYY, h:mm A\")\n ) : (\n \"--\"\n )}\n \n \n ),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, discountLab) => (\n\n
    \n \n \n this.handleEditBtnClick(discountLab)}\n >\n \n \n\n
    \n ),\n },\n ],\n };\n this.handleEditBtnClick = this.handleEditBtnClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleEditAllBtnClick = this.handleEditAllBtnClick.bind(this);\n }\n\n componentDidMount() {\n const { onGetDiscountLab } = this.props;\n setTimeout(() => {\n console.log(onGetDiscountLab(this.state.user_id));\n\n setTimeout(() => {\n this.setState({ discountLabs: this.props.discountLabs });\n }, 1000);\n }, 1000);\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n toggleConfirmModal = () => {\n this.setState(prevState => ({\n confirmModal: !prevState.confirmModal,\n }));\n };\n\n handleEditAllBtnClicks = () => {\n this.setState({ discountLab: \"\", isEdit: false, lab_id: \"\" });\n this.toggle();\n };\n handleEditAllBtnClick = () => {\n this.setState({ isEditAll: true, discountLab: \"\" });\n\n this.toggle();\n };\n\n\n // handleEditAllBtnClicks = () => {\n // this.setState({ b2bLabShare: \"\", isEdit: false, lab_id: \"\" });\n // this.toggle();\n // };\n // handleEditAllBtnClick = () => {\n // this.setState({ isEditAll: true, b2bLabShare: \"\" });\n\n // this.toggle();\n // };\n\n handleAPICall = () => {\n const {\n onGetDiscountLab,\n onUpdateDiscountAllLab,\n onUpdateDiscountLab,\n } = this.props;\n\n if (this.state.isEditAll) {\n onUpdateDiscountAllLab(this.state.discountLab);\n\n onGetDiscountLab(this.state.user_id);\n\n setTimeout(() => {\n this.setState({ discountLabs: this.props.discountLabs });\n }, 1000);\n } else {\n onUpdateDiscountLab(this.state.discountLab);\n\n onGetDiscountLab(this.state.user_id);\n\n setTimeout(() => {\n this.setState({ discountLabs: this.props.discountLabs });\n }, 1000);\n }\n\n this.toggle();\n };\n\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { discountLabs } = this.props;\n if (\n !isEmpty(discountLabs) &&\n size(prevProps.discountLabs) !== size(discountLabs)\n ) {\n this.setState({\n discountLabs: {},\n isEdit: false,\n });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n handleEditBtnClick = arg => {\n const discountLab = arg;\n\n this.setState({\n isEditAll: false,\n discountLab: discountLab,\n // id: discountLab.id,\n });\n\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { discountLabs } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const discountLab = this.state.discountLab;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: discountLabs.length, // replace later with size(discountLabs),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n const {\n onGetDiscountLab,\n onUpdateDiscountAllLab,\n onUpdateDiscountLab,\n } = this.props;\n\n return (\n \n
    \n \n Lab Hazir | Discount Lab Hazir\n \n this.setState({ confirmModal: false })}\n />\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n \n Discount\n All\n \n
    \n \n
    \n \n \n
    \n \n \n \n \n \n \n\n \n \n {!this.state.isEditAll\n ? \"Discount on one test\"\n : \"Discount on all tests\"}\n \n \n discount > 0,\n then: Yup.string().required(\n \"Please select start date\"\n ),\n }),\n end_date: Yup.string(\n Yup.number()\n ).when(\"discount\", {\n is: discount => discount > 0,\n then: Yup.string().required(\n \"Please select end date\"\n ),\n }),\n })}\n onSubmit={values => {\n if (this.state.isEditAll) {\n onUpdateDiscountAllLab(\n this.state.discountLab\n );\n } else {\n onUpdateDiscountLab(\n this.state.discountLab\n );\n }\n\n setTimeout(() => {\n onGetDiscountLab(this.state.user_id);\n\n setTimeout(() => {\n this.setState({\n discountLabs:\n this.props\n .discountLabs,\n });\n }, 1000);\n }, 1000);\n\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n
    \n \n {\n this.setState({\n discountLab: {\n id: this.state\n .discountLab\n .id,\n discount:\n e.target.value,\n start_date:\n discountLab.start_date,\n end_date:\n discountLab.end_date,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.discount &&\n touched.discount\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n\n {this.state.discountLab\n .discount > 0 && (\n
    \n
    \n \n {\n this.setState({\n discountLab:\n {\n id: this.state\n .discountLab\n .id,\n lab_id:\n this.state.user_id,\n discount:\n discountLab.discount,\n start_date:\n e.target\n .value,\n end_date:\n discountLab.end_date,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.start_date &&\n touched.start_date\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n
    \n \n {\n this.setState({\n discountLab:\n {\n id: this.state\n .discountLab\n .id,\n lab_id:\n this.state.user_id,\n discount:\n discountLab.discount,\n start_date:\n discountLab.start_date,\n end_date:\n e.target\n .value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.end_date &&\n touched.end_date\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n
    \n )}\n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n {/* \n \n \n \n */}\n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nDiscountLabHazirList.propTypes = {\n match: PropTypes.object,\n discountLabs: PropTypes.array,\n className: PropTypes.any,\n onGetDiscountLab: PropTypes.func,\n onUpdateDiscountLab: PropTypes.func,\n onUpdateDiscountAllLab: PropTypes.func,\n};\n\nconst mapStateToProps = ({ discountLabs }) => ({\n discountLabs: discountLabs.discountLabs,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetDiscountLab: id => dispatch(getDiscountLab(id)),\n onUpdateDiscountLab: discountLab =>\n dispatch(updateDiscountLab(discountLab)),\n onUpdateDiscountAllLab: discountLab =>\n dispatch(updateDiscountAllLab(discountLab)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(DiscountLabHazirList));","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport moment from 'moment';\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\nimport filterFactory, { textFilter} from 'react-bootstrap-table2-filter';\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getLabAdvertisementRequests,\n updateLabAdvertisementRequest,\n\n} from \"store/lab-advertisement-requests/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass LabAdvertisementRequestsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n labAdvertisementRequests: [],\n labAdvertisementRequest: \"\",\n certificateImg: \"\",\n modal: false,\n btnText: \"Copy\",\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n labAdvertisementRequestListColumns: [\n {\n text: \"Adv ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n formatter: (cellContent, labAdvertisementRequest) => (\n <>{labAdvertisementRequest.id}\n ),filter: textFilter(),\n },\n // {\n // text: \"Lab Name\",\n // dataField: \"lab_name\",\n // sort: true,\n // hidden: false,\n // formatter: (cellContent, labAdvertisementRequest) => (\n // <>{labAdvertisementRequest.lab_name}\n // ),filter: textFilter(),\n // },\n {\n dataField: \"lab_name\",\n text: \" Lab Name\",\n sort: true,\n formatter: (cellContent, labAdvertisementRequest) => (\n <>\n \n \n this.openLabModal(e, labAdvertisementRequest)}\n style={{ textAlign: 'left' }} // Add this style\n >\n {labAdvertisementRequest.lab_name}\n \n \n \n \n ),\n filter: textFilter(),\n },\n {\n text: \"Lab City\",\n dataField: \"lab_address\",\n sort: true,\n hidden: false,\n formatter: (cellContent, labAdvertisementRequest) => (\n <>{labAdvertisementRequest.lab_address}\n ),filter: textFilter(),\n },\n {\n text: \"Advertisement Km\",\n dataField: \"km\",\n sort: true,\n hidden: false,\n formatter: (cellContent, labAdvertisementRequest) => (\n <>{labAdvertisementRequest.km}\n ),filter: textFilter(),\n },\n {\n text: \"Start Time\",\n dataField: \"posted_at\",\n sort: true,\n hidden: false,\n formatter: (cellContent, labAdvertisementRequest) => (\n <>\n \n {moment(labAdvertisementRequest.posted_at).format(\"DD MMM YYYY, h:mm A\")}\n \n \n ),\n filter: textFilter({\n placeholder: 'Enter Start Date',\n }),\n },\n {\n text: \"End Time\",\n dataField: \"posted_till\",\n sort: true,\n hidden: false,\n formatter: (cellContent, labAdvertisementRequest) => (\n <>\n \n {moment(labAdvertisementRequest.posted_till).format(\"DD MMM YYYY, h:mm A\")}\n \n \n ),\n filter: textFilter({\n placeholder: 'Enter End Date',\n }),\n },\n {\n dataField: \"poster\",\n text: \"Adv Image\",\n formatter: (cellContent, labAdvertisementRequest) => (\n <>\n {!labAdvertisementRequest.poster ? (\n
    \n \n {/* {labAdvertisementRequest.name.charAt(0)} */}\n \n
    \n ) : (\n \n \n \n )}\n \n ), filter: textFilter(),\n },\n {\n dataField: \"title\",\n text: \"Title\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"request_status\",\n text: \"Status\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, labAdvertisementRequest) => (\n
    \n \n \n \n this.handleLabAdvertisementRequestClick(e, labAdvertisementRequest)\n }\n >\n \n \n \n \n \n
    \n ),\n },\n ],\n };\n this.handleLabAdvertisementRequestClick =\n this.handleLabAdvertisementRequestClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.toggleLabModal = this.toggleLabModal.bind(this);\n this.handleLabAdvertisementRequestClicks =\n this.handleLabAdvertisementRequestClicks.bind(this);\n }\n\n // The code for converting \"image source\" (url) to \"Base64\"\n toDataURL = url =>\n fetch(url)\n .then(response => response.blob())\n .then(\n blob =>\n new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.onerror = reject;\n reader.readAsDataURL(blob);\n })\n );\n\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n componentDidMount() {\n const { labAdvertisementRequests, onGetLabAdvertisementRequests } = this.props;\n onGetLabAdvertisementRequests(this.state.user_id);\n this.setState({ labAdvertisementRequests });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleLabAdvertisementRequestClicks = () => {\n this.setState({\n labAdvertisementRequest: \"\",\n certificateImg: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { labAdvertisementRequests } = this.props;\n if (\n !isEmpty(labAdvertisementRequests) &&\n size(prevProps.labAdvertisementRequests) !== size(labAdvertisementRequests)\n ) {\n this.setState({ labAdvertisementRequests: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n // toggleDeleteModal = () => {\n // this.setState(prevState => ({\n // deleteModal: !prevState.deleteModal,\n // }));\n // };\n\n // onClickDelete = labAdvertisementRequests => {\n // this.setState({ labAdvertisementRequests: labAdvertisementRequests });\n // this.setState({ deleteModal: true });\n // };\n\n // handleDeleteLabAdvertisementRequest = () => {\n // const { onDeleteLabAdvertisementRequest, onGetLabAdvertisementRequests } = this.props;\n // const { labAdvertisementRequests } = this.state;\n // if (labAdvertisementRequests.id !== undefined) {\n // onDeleteLabAdvertisementRequest(labAdvertisementRequests);\n // setTimeout(() => {\n // onGetLabAdvertisementRequests(this.state.user_id);\n // }, 1000);\n // this.setState({ deleteModal: false });\n // }\n // };\n\n handleLabAdvertisementRequestClick = (e, arg) => {\n this.setState({\n labAdvertisementRequest: {\n id: arg.id,\n request_status:arg.request_status,\n declined_reason: arg.declined_reason,\n\n },\n isEdit: true,\n });\n\n this.toggle();\n };\nopenLabModal = (e, arg) => {\n this.setState({\n LabModal: true,\n lab_name: arg.lab_name,\n address: arg.address,\n landline: arg.landline,\n });\n};\n\ntoggleLabModal = () => {\n this.setState(prevState => ({\n LabModal: !prevState.LabModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n};\n\n render() {\n const { SearchBar } = Search;\n\n const { labAdvertisementRequests } = this.props;\n\n const { isEdit } = this.state;\n\n const {\n onUpdateLabAdvertisementRequest,\n onGetLabAdvertisementRequests,\n } = this.props;\n const labAdvertisementRequest = this.state.labAdvertisementRequest;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: labAdvertisementRequests.length, // replace later with size(labAdvertisementRequests),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Pending Lab Advertisements List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n \n \n \n Lab Details: \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state.landline\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n\n \n \n {!!isEdit\n ? \"Response Lab Advertisement\"\n : \"Add Lab Advertisement Request\"}\n \n \n {\n \n\n if (isEdit) {\n const updateLabAdvertisementRequest =\n {\n id: labAdvertisementRequest.id,\n \n request_status: values.request_status,\n declined_reason: values.declined_reason, \n // responded_at:\n // values.responded_at,\n };\n\n // update LabAdvertisementRequest\n onUpdateLabAdvertisementRequest(\n updateLabAdvertisementRequest\n );\n setTimeout(() => {\n onGetLabAdvertisementRequests(\n this.state.user_id\n );\n }, 1000);\n }\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n {/* Certificate Type field */}\n
    \n \n {\n this.setState({\n labAdvertisementRequest: {\n id: labAdvertisementRequest.id,\n request_status:\n e.target.value,\n \n },\n });\n }}\n multiple={false}\n value={\n this.state\n .labAdvertisementRequest\n .request_status\n }\n >\n \n \n \n \n \n \n
    \n\n {/* Certificate Title field */}\n {/* {this.state.labAdvertisementRequest\n .request_status ===\n \"Declined\" && (\n
    \n \n {\n this.setState({\n labAdvertisementRequest:\n {\n id: labAdvertisementRequest.id,\n request_status:\n labAdvertisementRequest.request_status,\n declined_reason: e.target\n .value,\n // responded_at:\n // labAdvertisementRequest.responded_at,\n \n },\n });\n }}\n className={\n \"form-control\" +\n (errors.declined_reason &&\n touched.declined_reason\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n )} */}\n {/* {this.state.labAdvertisementRequest\n .request_status ===\n \"Recreated\" && (\n
    \n \n \n this.setState({\n id: labAdvertisementRequest.id,\n request_status:\n labAdvertisementRequest.request_status,\n declined_reason: labAdvertisementRequest.declined_reason,\n posted_till: labAdvertisementRequest.posted_till,\n declined_reason: labAdvertisementRequest.declined_reason,\n posted_at:\n e.target.value,\n })\n }\n />\n
    \n )} */}\n {/* {this.state.labAdvertisementRequest\n .request_status ===\n \"Recreated\" && (\n
    \n \n \n this.setState({\n id: labAdvertisementRequest.id,\n request_status:\n labAdvertisementRequest.request_status,\n declined_reason: labAdvertisementRequest.declined_reason,\n posted_at: labAdvertisementRequest.posted_at,\n declined_reason: labAdvertisementRequest.declined_reason,\n posted_till:\n e.target.value,\n })\n }\n />\n
    \n\n )} */}\n {this.state.labAdvertisementRequest\n .request_status ===\n \"Recreated\" && (\n
    \n \n {\n this.setState({\n labAdvertisementRequest:\n {\n id: labAdvertisementRequest.id,\n request_status:\n labAdvertisementRequest.request_status,\n declined_reason:\n e.target.value,\n \n },\n });\n }}\n className={\n \"form-control\" +\n (errors.declined_reason &&\n touched.declined_reason\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n\n )}\n\n \n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nLabAdvertisementRequestsList.propTypes = {\n match: PropTypes.object,\n labAdvertisementRequests: PropTypes.array,\n className: PropTypes.any,\n onGetLabAdvertisementRequests: PropTypes.func,\n onUpdateLabAdvertisementRequest: PropTypes.func,\n};\n\nconst mapStateToProps = ({ labAdvertisementRequests }) => ({\n labAdvertisementRequests: labAdvertisementRequests.labAdvertisementRequests,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetLabAdvertisementRequests: id => dispatch(getLabAdvertisementRequests(id)),\n \n onUpdateLabAdvertisementRequest: labAdvertisementRequest =>\n dispatch(updateLabAdvertisementRequest(labAdvertisementRequest)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(LabAdvertisementRequestsList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport moment from 'moment';\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\nimport filterFactory, { textFilter} from 'react-bootstrap-table2-filter';\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getLabAdvertisementRequestsAccepted,\n updateLabAdvertisementRequest,\n\n} from \"store/lab-advertisement-requests/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass LabAdvertisementRequestsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n labAdvertisementRequests: [],\n labAdvertisementRequest: \"\",\n certificateImg: \"\",\n modal: false,\n btnText: \"Copy\",\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n account_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n labAdvertisementRequestListColumns: [\n {\n text: \"ID\",\n dataField: \"id\",\n sort: true,\n hidden: false,\n formatter: (cellContent, labAdvertisementRequest) => (\n <>{labAdvertisementRequest.id}\n ),filter: textFilter(),\n },\n {\n dataField: \"lab_name\",\n text: \" Lab Name\",\n sort: true,\n formatter: (cellContent, labAdvertisementRequest) => (\n <>\n \n \n this.openLabModal(e, labAdvertisementRequest)}\n style={{ textAlign: 'left' }} // Add this style\n >\n {labAdvertisementRequest.lab_name}\n \n \n \n \n ),\n filter: textFilter(),\n },\n {\n text: \"Lab City\",\n dataField: \"lab_address\",\n sort: true,\n hidden: false,\n formatter: (cellContent, labAdvertisementRequest) => (\n <>{labAdvertisementRequest.lab_address}\n ),filter: textFilter(),\n },\n {\n text: \"Advertisement Km\",\n dataField: \"km\",\n sort: true,\n hidden: false,\n formatter: (cellContent, labAdvertisementRequest) => (\n <>{labAdvertisementRequest.km}\n ),filter: textFilter(),\n },\n {\n text: \"Start Time\",\n dataField: \"posted_at\",\n sort: true,\n hidden: false,\n formatter: (cellContent, labAdvertisementRequest) => (\n <>\n \n {moment(labAdvertisementRequest.posted_at).format(\"DD MMM YYYY, h:mm A\")}\n \n \n ),\n filter: textFilter({\n placeholder: 'Enter Start Date',\n }),\n },\n {\n text: \"End Time\",\n dataField: \"posted_till\",\n sort: true,\n hidden: false,\n formatter: (cellContent, labAdvertisementRequest) => (\n <>\n \n {moment(labAdvertisementRequest.posted_till).format(\"DD MMM YYYY, h:mm A\")}\n \n \n ),\n filter: textFilter({\n placeholder: 'Enter End Date',\n }),\n },\n {\n dataField: \"poster\",\n text: \"Adv Image\",\n formatter: (cellContent, labAdvertisementRequest) => (\n <>\n {!labAdvertisementRequest.poster ? (\n
    \n \n {/* {labAdvertisementRequest.name.charAt(0)} */}\n \n
    \n ) : (\n \n \n \n )}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"amount\",\n text: \"Price\",\n sort: true,\n formatter: (cellContent, labAdvertisementRequest) => (\n <>\n {(\n {labAdvertisementRequest.amount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n )}\n \n ),\n },\n {\n dataField: \"request_status\",\n text: \"Status\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"payment_status\",\n text: \"Payment Status\",\n sort: true,\n formatter: (cellContent, labAdvertisement) => (\n <>\n {labAdvertisement.payment_status == \"Cleared\" ? (\n \n {labAdvertisement.payment_method},{\" \"}\n {labAdvertisement.payment_status}\n \n ) : (\n --\n\n )}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, labAdvertisementRequest) => (\n
    \n {/* {this.state.account_type === \"marketer-admin\" && ( */}\n \n \n \n {/* )} */}\n
    \n ),\n },\n ],\n };\n this.handleLabAdvertisementRequestClick =\n this.handleLabAdvertisementRequestClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.toggleLabModal = this.toggleLabModal.bind(this);\n this.handleLabAdvertisementRequestClicks =\n this.handleLabAdvertisementRequestClicks.bind(this);\n }\n\n // The code for converting \"image source\" (url) to \"Base64\"\n toDataURL = url =>\n fetch(url)\n .then(response => response.blob())\n .then(\n blob =>\n new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.onerror = reject;\n reader.readAsDataURL(blob);\n })\n );\n\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n\n componentDidMount() {\n const { labAdvertisementRequests, onGetLabAdvertisementRequestsAccepted } = this.props;\n onGetLabAdvertisementRequestsAccepted(this.state.user_id);\n this.setState({ labAdvertisementRequests });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleLabAdvertisementRequestClicks = () => {\n this.setState({\n labAdvertisementRequest: \"\",\n certificateImg: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { labAdvertisementRequests } = this.props;\n if (\n !isEmpty(labAdvertisementRequests) &&\n size(prevProps.labAdvertisementRequests) !== size(labAdvertisementRequests)\n ) {\n this.setState({ labAdvertisementRequests: {}, isEdit: false });\n\n }\n }\n\n handleLabAdvertisementRequestClick = (e, arg) => {\n this.setState({\n labAdvertisementRequest: {\n id: arg.id,\n request_status:arg.request_status,\n declined_reason: arg.declined_reason,\n posted_at: arg.posted_at,\n posted_till: arg.posted_till,\n description: arg.description,\n\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n openLabModal = (e, arg) => {\n this.setState({\n LabModal: true,\n lab_name: arg.lab_name,\n address: arg.address,\n landline: arg.landline,\n });\n };\n\ntoggleLabModal = () => {\n this.setState(prevState => ({\n LabModal: !prevState.LabModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n};\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n render() {\n const { SearchBar } = Search;\n\n const { labAdvertisementRequests } = this.props;\n\n const { isEdit } = this.state;\n\n const {\n onUpdateLabAdvertisementRequest,\n onGetLabAdvertisementRequestsAccepted,\n } = this.props;\n const labAdvertisementRequest = this.state.labAdvertisementRequest;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: labAdvertisementRequests.length, // replace later with size(labAdvertisementRequests),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Lab Advertisements List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n \n \n \n Lab Details: \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state.landline\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n\n \n \n {!!isEdit\n ? \"Response Lab Advertisement\"\n : \"Add Lab Advertisement Request\"}\n \n \n {\n if (isEdit) {\n \n const updateLabAdvertisementRequest =\n {\n id: labAdvertisementRequest.id,\n \n request_status: values.request_status,\n declined_reason: values.declined_reason,\n posted_at: values.posted_at,\n posted_till: values.posted_till, \n description: values.description,\n };\n\n // update LabAdvertisementRequest\n onUpdateLabAdvertisementRequest(\n updateLabAdvertisementRequest\n );\n \n setTimeout(() => {\n onGetLabAdvertisementRequestsAccepted(\n this.state.user_id\n );\n }, \n 1000);\n }\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n {/* Certificate Type field */}\n
    \n \n {\n this.setState({\n labAdvertisementRequest: {\n id: labAdvertisementRequest.id,\n request_status:\n e.target.value,\n \n },\n });\n }}\n multiple={false}\n value={\n this.state\n .labAdvertisementRequest\n .request_status\n }\n >\n \n \n \n \n \n
    \n\n {/* Certificate Title field */}\n {/* {this.state.labAdvertisementRequest\n .request_status ===\n \"Declined\" && (\n
    \n \n {\n this.setState({\n labAdvertisementRequest:\n {\n id: labAdvertisementRequest.id,\n request_status:\n labAdvertisementRequest.request_status,\n declined_reason: e.target\n .value,\n // responded_at:\n // labAdvertisementRequest.responded_at,\n \n },\n });\n }}\n className={\n \"form-control\" +\n (errors.declined_reason &&\n touched.declined_reason\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n )} */}\n {this.state.labAdvertisementRequest\n .request_status ===\n \"Recreated\" && (\n
    \n \n \n this.setState({\n id: labAdvertisementRequest.id,\n request_status:\n labAdvertisementRequest.request_status,\n declined_reason: labAdvertisementRequest.declined_reason,\n posted_till: labAdvertisementRequest.posted_till,\n description: labAdvertisementRequest.description,\n posted_at:\n e.target.value,\n })\n }\n />\n
    \n )}\n {this.state.labAdvertisementRequest\n .request_status ===\n \"Recreated\" && (\n
    \n \n \n this.setState({\n id: labAdvertisementRequest.id,\n request_status:\n labAdvertisementRequest.request_status,\n declined_reason: labAdvertisementRequest.declined_reason,\n posted_at: labAdvertisementRequest.posted_at,\n description: labAdvertisementRequest.description,\n posted_till:\n e.target.value,\n })\n }\n />\n
    \n\n )}\n {this.state.labAdvertisementRequest\n .request_status ===\n \"Recreated\" && (\n
    \n \n {\n this.setState({\n labAdvertisementRequest:\n {\n id: labAdvertisementRequest.id,\n request_status:\n labAdvertisementRequest.request_status,\n declined_reason: labAdvertisementRequest.declined_reason,\n posted_at: labAdvertisementRequest.posted_at,\n posted_till: labAdvertisementRequest.posted_till,\n description:\n e.target.value,\n \n },\n });\n }}\n className={\n \"form-control\" +\n (errors.description &&\n touched.description\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n\n )}\n\n \n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nLabAdvertisementRequestsList.propTypes = {\n match: PropTypes.object,\n labAdvertisementRequests: PropTypes.array,\n className: PropTypes.any,\n onGetLabAdvertisementRequestsAccepted: PropTypes.func,\n onUpdateLabAdvertisementRequest: PropTypes.func,\n};\n\nconst mapStateToProps = ({ labAdvertisementRequests }) => ({\n labAdvertisementRequests: labAdvertisementRequests.labAdvertisementRequests,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetLabAdvertisementRequestsAccepted: id => dispatch(getLabAdvertisementRequestsAccepted(id)),\n \n onUpdateLabAdvertisementRequest: labAdvertisementRequest =>\n dispatch(updateLabAdvertisementRequest(labAdvertisementRequest)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(LabAdvertisementRequestsList));\n","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Tooltip } from \"@material-ui/core\";\n\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalBody,\n ModalHeader,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\nimport filterFactory, {textFilter, selectFilter} from \"react-bootstrap-table2-filter\";\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport moment from 'moment';\n\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getPendingComplaints,\n assignComplaint,\n // getCSRList,\n} from \"store/csr-admin/actions\";\n\nimport { getCSRList } from \"store/staff/actions\";\n//Office\nimport { getCsrCentralList,\n getCsrSouthList,\n getCsrNorthList,\n } from \"store/csr-territory-list/actions\";\n\nimport \"assets/scss/table.scss\";\n\nclass PendingComplaints extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n pendingComplaints: [],\n id: \"\",\n btnText: \"Copy\",\n isUrgent: false, \n assignedTo: \"\",\n PendingComplaints: \"\",\n pendingComplaint: \"\",\n csrList: [],\n // Office\n csrCentralTerritoryList: [],\n csrSouthTerritoryList: [],\n csrNorthTerritoryList: [],\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n pendingComplaintListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, pendingComplaint) => (\n <>{pendingComplaint.id}\n ),\n },\n {\n dataField: \"registered_at\",\n text: \"Registered at\",\n sort: true,\n formatter: (cellContent, complaint) => (\n <>\n \n {moment(complaint.registered_at).format(\"DD MMM YYYY, h:mm A\")}\n \n \n ),\n filter: textFilter() // Apply text filter here\n },\n {\n dataField: \"complaint_id\",\n text: \"Complaint ID\",\n sort: true,\n formatter: (cellContent, complaint) => (\n <>\n {complaint.complaint_id}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"complainant\",\n text: \"Complaint From\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"name\",\n text: \"Complainant Name\",\n sort: true,\n formatter: (cellContent, pendingComplaint) => (\n <>\n \n this.openPatientModal(e, pendingComplaint)}\n onMouseEnter={e => this.openPatientModal(e, pendingComplaint)}\n onPointerLeave={this.handleMouseExit()}\n >\n {pendingComplaint.name}\n \n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"complainee\",\n text: \"Complaint Against\",\n sort: true,\n formatter: (cellContent, pendingComplaint) => (\n <>\n {pendingComplaint.complainee === \"Lab\" ? (\n this.openMessageModal(e, pendingComplaint)}\n onPointerLeave={this.handleMouseExit()}\n >\n {pendingComplaint.complainee}

    \n {pendingComplaint.lab_name}\n \n ) : (\n <>\n {pendingComplaint.complainee}

    \n {pendingComplaint.labhazir_complainee}\n \n )}\n \n ),\n filter: selectFilter({\n options: {\n '': 'All',\n 'Lab': 'Lab',\n 'LabHazir': 'LabHazir',\n },\n defaultValue: 'All',\n }),\n \n },\n {\n dataField: \"registered_at\",\n text: \"Pending Since\",\n sort: true,\n formatter: (cellContent, complaint) => (\n <>\n \n {new Date().getDate() - new Date(complaint.registered_at).getDate()} days\n \n \n ),\n filter: textFilter() // Apply text filter here\n }, \n // {\n // dataField: \"email\",\n // text: \"Email\",\n // sort: true,\n // },\n // {\n // dataField: \"phone\",\n // text: \"Phone No.\",\n // sort: true,\n // },\n \n {\n dataField: \"message\",\n text: \"Message\",\n sort: true,\n formatter: (cellContent, complaint) => (\n <>\n this.openMessageModal(e, complaint)}\n onMouseEnter={e => this.openMModal(e, complaint)}\n onPointerLeave={this.handleMouseExit()}\n >\n {complaint.message.slice(0, 10) + \"...\"}\n {\" \"}\n \n ),\n },\n \n \n {\n dataField: \"office\",\n text: \"Office\",\n sort: true, \n filter: textFilter(), \n },\n {\n dataField: \"data\",\n text: \"id\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, pendingComplaint) => (\n <>\n this.handleApprovedEvent(e, pendingComplaint.id)}\n >\n Assign\n {\" \"}\n \n ),\n },\n // {\n // dataField: \"data\",\n // text: \"id\",\n // isDummyField: true,\n // editable: false,\n // text: \"Chat\",\n // formatter: (cellContent, complaint) => (\n // <>\n // \n // \n // \n // \n // ),\n // },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.toggleMessageModal.bind(this);\n this.toggleMModal.bind(this);\n this.handleApprovedEvent = this.handleApprovedEvent.bind(this);\n }\n\n componentDidMount() {\n const { pendingComplaints, onGetPendingComplaints } = this.props;\n onGetPendingComplaints();\n this.setState({ pendingComplaints });\n \n\n // csr central list\n const { csrCentralTerritoryList, onGetCsrCentralList } = this.props;\n onGetCsrCentralList();\n this.setState({ csrCentralTerritoryList });\n // csr south list\n const { csrSouthTerritoryList, onGetCsrSouthList } = this.props;\n onGetCsrSouthList();\n this.setState({ csrSouthTerritoryList });\n // csr north list\n const { csrNorthTerritoryList, onGetCsrNorthList } = this.props;\n onGetCsrNorthList();\n this.setState({ csrNorthTerritoryList });\n\n // csrs list\n const { csrList, onGetCSRList } = this.props;\n onGetCSRList();\n this.setState({ csrList });\n }\n\n \n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n email: arg.email,\n phone:arg.phone,\n // isHovered: true,\n });\n };\n handleMouseExit = () => {\n this.setState({\n PatientModal: false,\n messageModal: false,\n isHovered: false,\n mModal: false,\n\n });\n }; \n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n toggleMModal = () => {\n this.setState(prevState => ({\n mModal: !prevState.mModal,\n }));\n };\n\n openMModal = (e, arg) => {\n this.setState({ mModal: true, \n message: arg.message,\n subject: arg.subject,\n });\n };\n\n toggleMessageModal = () => {\n this.setState(prevState => ({\n messageModal: !prevState.messageModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n openMessageModal = (e, arg) => {\n console.log(\"message model is call in case when complanee is lab\", arg)\n this.setState({ messageModal: true, \n lab_city: arg.lab_city,\n lab_phone: arg.lab_phone,\n\n });\n };\n\n handleApprovedEvent = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggle();\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { pendingComplaints } = this.props;\n const data = this.state.data;\n const { onAssignComplaint, onGetPendingComplaints } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: pendingComplaints.length, // replace later with size(pendingComplaints),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n const csrList = [];\n for (let i = 0; i < this.props.csrList.length; i++) {\n csrList.push({\n label: this.props.csrList[i].name,\n value: this.props.csrList[i].id,\n });\n }\n // Central Office\n const csrCentralTerritoryList = []\n for (let i = 0; i < this.props.csrCentralTerritoryList.length; i++) {\n csrCentralTerritoryList.push({\n label: this.props.csrCentralTerritoryList[i].name,\n value: this.props.csrCentralTerritoryList[i].id,\n });\n }\n \n // South Office\n const csrSouthTerritoryList = [];\n\n for (let i = 0; i < this.props.csrSouthTerritoryList.length; i++) {\n csrSouthTerritoryList.push({\n label: this.props.csrSouthTerritoryList[i].name,\n value: this.props.csrSouthTerritoryList[i].id,\n });\n \n }\n // North Office\n const csrNorthTerritoryList = [];\n\n for (let i = 0; i < this.props.csrNorthTerritoryList.length; i++) {\n csrNorthTerritoryList.push({\n label: this.props.csrNorthTerritoryList[i].name,\n value: this.props.csrNorthTerritoryList[i].id,\n });\n \n }\n\n return (\n \n
    \n \n Pending Complaints | Complaint Hazir\n \n\n \n {/* Render Breadcrumbs */}\n \n \n
    \n

    Note: When you assign a complaint to CSR it will move to Inprocess Complaints.

    \n
    \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n {/* \n */}\n
    \n
    \n \n
    \n
    \n \n this.setState({\n mModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n\n
    \n
    {/* Added px-3 for left and right padding */}\n

    \n {this.state.subject}\n

    \n

    \n {this.state.message}\n

    \n
    \n
    \n
    \n
    \n
    \n\n\n \n \n Complainant Details: \n \n \n \n
    \n \n \n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state\n .phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n \n Complainant Against: \n \n \n \n
    \n \n \n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state\n .lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n
    \n \n \n
    \n \n \n
    \n \n this.setState({\n modal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n \n {\n const data = {\n id: this.state.id,\n assignedTo: values.assignedTo,\n is_it_urgent: this.state.isUrgent, // Include the checkbox value\n };\n\n // Assign complaint\n onAssignComplaint(data);\n\n // Calling to update list record\n setTimeout(() => {\n onGetPendingComplaints();\n }, 1000);\n\n this.toggle();\n }}\n >\n \n {({ errors, status, touched }) => (\n \n
    \n \n \n
    \n \n {\n this.setState({\n pendingComplaint: {\n \n office: e.target.value,\n \n },\n });\n }}\n multiple={false}\n value={\n this.state.office\n }\n >\n \n \n \n \n \n \n
    \n \n {this.state.pendingComplaint.office ==\"Central Office\"\n &&(\n\n
    \n \n {\n this.setState({\n assignedTo:\n selectedGroup.value,\n });\n }}\n className={\n \"defautSelectParent\" +\n (errors.assignedTo\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor:\n errors.assignedTo\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={csrCentralTerritoryList}\n placeholder=\"Select CSR...\"\n />\n \n
    \n )} \n {/* South Office */}\n {this.state.pendingComplaint.office ==\"South Office\"\n &&(\n\n
    \n \n {\n this.setState({\n assignedTo:\n selectedGroup.value,\n });\n }}\n className={\n \"defautSelectParent\" +\n (errors.assignedTo\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor:\n errors.assignedTo\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={csrSouthTerritoryList}\n placeholder=\"Select CSR...\"\n />\n \n
    \n )} \n {/* North Office */}\n {this.state.pendingComplaint.office ==\"North Office\"\n &&(\n\n
    \n \n {\n this.setState({\n assignedTo:\n selectedGroup.value,\n });\n }}\n className={\n \"defautSelectParent\" +\n (errors.assignedTo\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor:\n errors.assignedTo\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={csrNorthTerritoryList}\n placeholder=\"Select CSR...\"\n />\n \n
    \n )} \n \n \n
    \n \n this.setState({ isUrgent: e.target.checked })}\n />\n
    \n \n \n
    \n \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n\n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nPendingComplaints.propTypes = {\n match: PropTypes.object,\n pendingComplaints: PropTypes.array,\n csrList: PropTypes.array,\n csrCentralTerritoryList: PropTypes.array,\n csrSouthTerritoryList: PropTypes.array,\n csrNorthTerritoryList: PropTypes.array,\n className: PropTypes.any,\n onGetPendingComplaints: PropTypes.func,\n onGetCSRList: PropTypes.func,\n onGetCsrCentralList: PropTypes.func,\n onGetCsrSouthList: PropTypes.func,\n onGetCsrNorthList: PropTypes.func,\n onAssignComplaint: PropTypes.func,\n};\nconst mapStateToProps = ({ csrAdmin, staff, csrTerritoryList }) => ({\n pendingComplaints: csrAdmin.pendingComplaints,\n csrList: staff.csrList,\n csrCentralTerritoryList: csrTerritoryList.csrCentralTerritoryList,\n csrSouthTerritoryList: csrTerritoryList.csrSouthTerritoryList,\n csrNorthTerritoryList: csrTerritoryList.csrNorthTerritoryList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onAssignComplaint: data => dispatch(assignComplaint(data)),\n onGetPendingComplaints: () => dispatch(getPendingComplaints()),\n onGetCSRList: () => dispatch(getCSRList()),\n onGetCsrCentralList: () => dispatch(getCsrCentralList()),\n onGetCsrSouthList: () => dispatch(getCsrSouthList()),\n onGetCsrNorthList: () => dispatch(getCsrNorthList()),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PendingComplaints));","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport moment from 'moment';\n\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\nimport filterFactory, {textFilter} from \"react-bootstrap-table2-filter\";\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getCsrAppointments,\n updateCsrAppointments,\n} from \"store/csr-admin-appointments/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass csrAppointments extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n csrAppointments: [],\n csrAppointment: \"\",\n status: \"\",\n modal: false,\n btnText: \"Copy\",\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n paymentOutStatusListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, csrAppointment) => <>{csrAppointment.id},\n },\n {\n dataField: \"order_id\",\n text: \"Order ID\",\n sort: true,\n formatter: (cellContent, csrAppointment) => (\n <>\n {csrAppointment.order_id}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"patient_name\",\n text: \"Patient Name\",\n sort: true,\n formatter: (cellContent, csrAppointment) => (\n <>\n \n this.openPatientModal(e, csrAppointment)}\n onMouseEnter={e => this.openPatientModal(e, csrAppointment)}\n onPointerLeave={this.handleMouseExit()}\n >\n {csrAppointment.patient_name}\n \n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"lab_name\",\n text: \"Lab Name\",\n sort: true,\n formatter: (cellContent, csrAppointment) => (\n <>\n \n this.openLabModal(e, csrAppointment)}\n onMouseEnter={e => this.openLabModal(e, csrAppointment)}\n onPointerLeave={this.handleMouseExit()}\n >\n {csrAppointment.lab_name}\n \n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"is_home_sampling_availed\",\n text: \"Home Sampling\",\n sort: true,\n formatter: (cellContent, csrAppointment) => (\n <>\n {csrAppointment.is_home_sampling_availed == true || csrAppointment.is_state_sampling_availed == true ? (\n Yes\n ) : (\n No\n )}\n \n ),filter: textFilter(),\n },\n // {\n // dataField: \"is_state_sampling_availed\",\n // text: \"State Sampling\",\n // sort: true,\n // formatter: (cellContent, csrAppointment) => (\n // <>\n // {csrAppointment.is_home_sampling_availed == true ? (\n // Yes\n // ) : (\n // No\n // )}\n // \n // ),filter: textFilter(),\n // },\n {\n dataField: \"status\",\n text: \"Status\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"appointment_requested_at\",\n text: \"Appointment Requested at\",\n sort: true,\n formatter: (cellContent, csrAppointment) => (\n <>\n \n {moment(csrAppointment.appointment_requested_at).format(\"DD MMM YYYY, h:mm A\")}\n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"estimated_sample_collection_at\",\n text: \"Schedule time by lab\",\n sort: true,\n formatter: (cellContent, csrAppointment) => (\n <>\n \n {csrAppointment.estimated_sample_collection_at\n ? moment(csrAppointment.estimated_sample_collection_at).format(\"DD MMM YYYY, h:mm A\")\n : \"--\"}\n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, csrAppointment) => (\n <>\n
    \n {csrAppointment.status === \"Pending Cancel\" ? (\n \n this.handleResolveClick(csrAppointment.id)}\n >\n \n \n ) : null }\n \n \n \n \n
    \n \n ),\n },\n ],\n };\n // this.handlePaymentStatusClick = this.handlePaymentStatusClick.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n this.toggleLabModal = this.toggleLabModal.bind(this);\n this.toggle = this.toggle.bind(this);\n }\n componentDidMount() {\n const { csrAppointments, onGetCsrAppointments } = this.props;\n onGetCsrAppointments(this.state.user_id);\n this.setState({ csrAppointments });\n }\n handleResolveClick = (complaintId) => {\n // Dispatch an action to update the status in Redux\n const { onUpdateCsrAppointments, onGetCsrAppointments} = this.props;\n onUpdateCsrAppointments({ id: complaintId, status: \"Cancel\" });\n\n setTimeout(() => {\n onGetCsrAppointments(this.state.user_id);\n }, 1000);\n };\n\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n patient_phone: arg.patient_phone,\n patient_city: arg.City,\n });\n };\n handleMouseExit = () => {\n this.setState({\n PatientModal: false,\n isHovered: false,\n LabModal: false,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n openLabModal = (e, arg) => {\n this.setState({\n LabModal: true,\n\n lab_phone: arg.lab_phone,\n lab_city: arg.lab_city,\n });\n };\n toggleLabModal = () => {\n this.setState(prevState => ({\n LabModal: !prevState.LabModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { csrAppointments } = this.props;\n if (\n !isEmpty(csrAppointments) &&\n size(prevProps.csrAppointments) !== size(csrAppointments)\n ) {\n this.setState({ csrAppointments: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n render() {\n const { SearchBar } = Search;\n\n const { csrAppointments } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const { onUpdateCsrAppointments, onGetCsrAppointments } = this.props;\n const csrAppointment = this.state.csrAppointment;\n\n const pageOptions = {\n sizePerPage: 100,\n totalSize: csrAppointments.length, // replace later with size(csrAppointments),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Pending Cancellation List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n {/*
    \n \n \n
    */}\n
    \n \n
    \n \n \n
    \n \n \n \n Lab Details: \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state.lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n \n Patient Details: \n \n \n \n
    \n \n \n \n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state\n .patient_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\ncsrAppointments.propTypes = {\n match: PropTypes.object,\n csrAppointments: PropTypes.array,\n className: PropTypes.any,\n onGetCsrAppointments: PropTypes.func,\n onUpdateCsrAppointments: PropTypes.func,\n};\n\nconst mapStateToProps = ({ csrappointments }) => ({\n csrAppointments: csrappointments.csrAppointments,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetCsrAppointments: id => dispatch(getCsrAppointments(id)),\n onUpdateCsrAppointments: csrAppointment =>\n dispatch(updateCsrAppointments(csrAppointment)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(csrAppointments));\n","import {\n GET_CSR_APPOINTMENTS,\n GET_CSR_APPOINTMENTS_FAIL,\n GET_CSR_APPOINTMENTS_SUCCESS,\n UPDATE_CSR_APPOINTMENTS,\n UPDATE_CSR_APPOINTMENTS_SUCCESS,\n UPDATE_CSR_APPOINTMENTS_FAIL,\n} from \"./actionTypes\";\n\n\n// ----------- Handled Complaints APIs actions -----------------\nexport const getCsrAppointments = id => ({\n type: GET_CSR_APPOINTMENTS,\n payload: id,\n});\n\nexport const getCsrAppointmentsSuccess = csrAppointments => ({\n type: GET_CSR_APPOINTMENTS_SUCCESS,\n payload: csrAppointments,\n});\n\nexport const getCsrAppointmentsFail = error => ({\n type: GET_CSR_APPOINTMENTS_FAIL,\n payload: error,\n})\nexport const updateCsrAppointments = csrAppointments => ({\n type: UPDATE_CSR_APPOINTMENTS,\n payload: csrAppointments,\n});\n\nexport const updateCsrAppointmentsSuccess = csrAppointments => ({\n type: UPDATE_CSR_APPOINTMENTS_SUCCESS,\n payload: csrAppointments,\n});\n\nexport const updateCsrAppointmentsFail = error => ({\n type: UPDATE_CSR_APPOINTMENTS_FAIL,\n payload: error,\n});\n","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Tooltip } from \"@material-ui/core\";\n\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalBody,\n Input,\n Button,\n ModalHeader,\n} from \"reactstrap\";\nimport filterFactory, {textFilter, selectFilter} from \"react-bootstrap-table2-filter\";\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport moment from 'moment';\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getInProcessComplaints,\n assignComplaint,\n // getCSRList,\n} from \"store/csr-admin/actions\";\n\nimport { getCSRList } from \"store/staff/actions\";\n//Office\nimport { getCsrCentralList,\n getCsrSouthList,\n getCsrNorthList,\n } from \"store/csr-territory-list/actions\";\nimport \"assets/scss/table.scss\";\n\nclass InProcessComplaints extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n inProcessComplaints: [],\n id: \"\",\n csrName: \"\",\n assignedTo: \"\",\n btnText: \"Copy\",\n message: \"\",\n isUrgent: false, \n InProcessComplaints: \"\",\n inProcessComplaint: \"\",\n csrList: [],\n // Office\n csrCentralTerritoryList: [],\n csrSouthTerritoryList: [],\n csrNorthTerritoryList: [],\n messageModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n inProcessComplaintListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, inProcessComplaint) => (\n <>{inProcessComplaint.id}\n ),\n },\n {\n dataField: \"registered_at\",\n text: \"Registered at\",\n sort: true,\n formatter: (cellContent, complaint) => (\n <>\n \n {moment(complaint.registered_at).format(\"DD MMM YYYY, h:mm A\")}\n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"complaint_id\",\n text: \"Complaint ID\",\n sort: true,\n formatter: (cellContent, complaint) => (\n <>\n {complaint.complaint_id}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"complainant\",\n text: \"Complaint From\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"name\",\n text: \"Complainant Name\",\n sort: true,\n formatter: (cellContent, inProcessComplaint) => (\n <>\n \n this.openPatientModal(e, inProcessComplaint)}\n onMouseEnter={e => this.openPatientModal(e, inProcessComplaint)}\n onPointerLeave={this.handleMouseExit()}\n >\n {inProcessComplaint.name}\n \n \n \n ),filter: textFilter(),\n },\n // {\n // dataField: \"complainee\",\n // text: \"Complaint Against\",\n // sort: true,\n // formatter: (cellContent, inProcessComplaint) => (\n // <>\n // {/* {inProcessComplaint.complainee},{\" \"} */}\n // {inProcessComplaint.labhazir_complainee}{\" \"}\n // {inProcessComplaint.lab_name}\n // \n // ),filter: textFilter(),\n // },\n {\n dataField: \"complainee\",\n text: \"Complaint Against\",\n sort: true,\n formatter: (cellContent, pendingComplaint) => (\n <>\n {pendingComplaint.complainee === \"Lab\" ? (\n this.openCompalneeModal(e, pendingComplaint)}\n onPointerLeave={this.handleMouseExit()}\n >\n {pendingComplaint.complainee}

    \n {pendingComplaint.lab_name}\n \n ) : (\n <>\n {pendingComplaint.complainee}

    \n {pendingComplaint.labhazir_complainee}\n \n )}\n \n ),\n filter: selectFilter({\n options: {\n '': 'All',\n 'Lab': 'Lab',\n 'LabHazir': 'LabHazir',\n },\n defaultValue: 'All',\n }),\n \n },\n // {\n // dataField: \"email\",\n // text: \"Email\",\n // sort: true,\n // },\n // {\n // dataField: \"phone\",\n // text: \"Phone No.\",\n // sort: true,\n // },\n\n // {\n // dataField: \"message\",\n // text: \"Message\",\n // sort: true,\n // formatter: (cellContent, complaint) => (\n // <>\n // this.openMessageModal(e, complaint)}\n // onMouseEnter={e => this.openMessageModal(e, complaint)}\n // onPointerLeave={this.handleMouseExit()}\n // >\n // {complaint.message.slice(0, 10) + \"...\"}\n // {\" \"}\n // \n // ),\n // },\n {\n dataField: \"csr_name\",\n text: \"Assigned to\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"assigned_at\",\n text: \"Assigned at\",\n sort: true,\n formatter: (cellContent, complaint) => (\n <>\n \n {moment(complaint.assigned_at).format(\"DD MMM YYYY, h:mm A\")}\n \n \n ),\n filter: textFilter(),\n }, \n {\n dataField: \"registered_at\",\n text: \"Pending Since\",\n sort: true,\n formatter: (cellContent, complaint) => (\n <>\n \n {new Date().getDate() - new Date(complaint.registered_at).getDate()} days\n\n \n \n ),filter: textFilter(),\n },\n \n {\n dataField: \"office\",\n text: \"Office\",\n sort: true, \n filter: textFilter(), \n },\n {\n dataField: \"data\",\n text: \"id\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, inProcessComplaint, complaint) => (\n <>\n this.handleApprovedEvent(e, inProcessComplaint)}\n >\n Reassign\n {\" \"}\n \n ),\n },\n {\n dataField: \"data\",\n text: \"id\",\n isDummyField: true,\n editable: false,\n text: \"Chat\",\n formatter: (cellContent, complaint) => (\n <>\n \n \n \n \n ),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.toggleMessageModal.bind(this);\n this.toggleComplaneeModal.bind(this);\n this.handleApprovedEvent = this.handleApprovedEvent.bind(this);\n }\n\n componentDidMount() {\n const { inProcessComplaints, onGetInProcessComplaints } = this.props;\n onGetInProcessComplaints();\n this.setState({ inProcessComplaints });\n\n const { csrList, onGetCSRList } = this.props;\n onGetCSRList();\n this.setState({ csrList });\n\n // csr central list\n const { csrCentralTerritoryList, onGetCsrCentralList } = this.props;\n onGetCsrCentralList();\n this.setState({ csrCentralTerritoryList });\n // csr south list\n const { csrSouthTerritoryList, onGetCsrSouthList } = this.props;\n onGetCsrSouthList();\n this.setState({ csrSouthTerritoryList });\n // csr north list\n const { csrNorthTerritoryList, onGetCsrNorthList } = this.props;\n onGetCsrNorthList();\n this.setState({ csrNorthTerritoryList });\n\n }\n toggleComplaneeModal = () => {\n this.setState(prevState => ({\n complaneeModal: !prevState.complaneeModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n openCompalneeModal = (e, arg) => {\n console.log(\"message model is call in case when complanee is lab\", arg)\n this.setState({ complaneeModal: true, \n lab_city: arg.lab_city,\n lab_phone: arg.lab_phone,\n\n });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n email: arg.email,\n phone:arg.phone,\n });\n };\n handleMouseExit = () => {\n this.setState({\n PatientModal: false,\n isHovered: false,\n messageModal: false,\n complaneeModal: false,\n\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n toggleMessageModal = () => {\n this.setState(prevState => ({\n messageModal: !prevState.messageModal,\n }));\n };\n\n openMessageModal = (e, arg) => {\n this.setState({ messageModal: true, message: arg.message , subject:arg.subject});\n };\n\n handleApprovedEvent = (e, arg) => {\n this.setState({\n id: arg.id,\n csrName: arg.csr_name,\n assignedTo: arg.assigned_to,\n });\n\n this.toggle();\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { inProcessComplaints } = this.props;\n const data = this.state.data;\n const { onAssignComplaint, onGetInProcessComplaints } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: inProcessComplaints.length, // replace later with size(inProcessComplaints),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n const csrList = [];\n for (let i = 0; i < this.props.csrList.length; i++) {\n csrList.push({\n label: this.props.csrList[i].name,\n value: this.props.csrList[i].id,\n });\n }\n\n // Central Office\n const csrCentralTerritoryList = [];\n\n for (let i = 0; i < this.props.csrCentralTerritoryList.length; i++) {\n csrCentralTerritoryList.push({\n label: this.props.csrCentralTerritoryList[i].name,\n value: this.props.csrCentralTerritoryList[i].id,\n });\n \n }\n // South Office\n const csrSouthTerritoryList = [];\n \n for (let i = 0; i < this.props.csrSouthTerritoryList.length; i++) {\n csrSouthTerritoryList.push({\n label: this.props.csrSouthTerritoryList[i].name,\n value: this.props.csrSouthTerritoryList[i].id,\n });\n \n }\n // North Office\n const csrNorthTerritoryList = [];\n \n for (let i = 0; i < this.props.csrNorthTerritoryList.length; i++) {\n csrNorthTerritoryList.push({\n label: this.props.csrNorthTerritoryList[i].name,\n value: this.props.csrNorthTerritoryList[i].id,\n });\n \n }\n\n return (\n \n
    \n \n Open Complaints | Complaint Hazir\n \n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n {/*
    \n \n \n
    */}\n
    \n \n \n \n \n \n \n
    \n \n \n {/*
    \n
    \n \n
    \n
    \n \n
    \n
    */}\n\n {/*
    \n
    \n \n
    \n
    \n \n
    \n
    */}\n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state\n .phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n \n Complainant Against: \n \n \n \n
    \n \n \n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state\n .lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n
    \n \n \n
    \n \n \n
    \n \n this.setState({\n modal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n \n {\n const data = {\n id: this.state.id,\n assignedTo: values.assignedTo,\n is_it_urgent: this.state.isUrgent, // Include the checkbox value\n\n };\n\n // Assign complaint\n onAssignComplaint(data);\n\n // Calling to update list record\n setTimeout(() => {\n onGetInProcessComplaints();\n }, 1000);\n\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n
    \n \n {\n this.setState({\n InProcessComplaints: {\n \n office: e.target.value,\n \n },\n });\n }}\n multiple={false}\n value={\n this.state.office\n }\n >\n \n \n \n \n \n \n
    \n \n {this.state.InProcessComplaints.office ==\"Central Office\"\n &&(\n\n
    \n \n {\n this.setState({\n assignedTo:\n selectedGroup.value,\n });\n }}\n className={\n \"defautSelectParent\" +\n (errors.assignedTo\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor:\n errors.assignedTo\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={csrCentralTerritoryList}\n placeholder=\"Select CSR...\"\n />\n \n
    \n )} \n {/* South Office */}\n {this.state.InProcessComplaints.office ==\"South Office\"\n &&(\n\n
    \n \n {\n this.setState({\n assignedTo:\n selectedGroup.value,\n });\n }}\n className={\n \"defautSelectParent\" +\n (errors.assignedTo\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor:\n errors.assignedTo\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={csrSouthTerritoryList}\n placeholder=\"Select CSR...\"\n />\n \n
    \n )} \n {/* North Office */}\n {this.state.InProcessComplaints.office ==\"North Office\"\n &&(\n\n
    \n \n {\n this.setState({\n assignedTo:\n selectedGroup.value,\n });\n }}\n className={\n \"defautSelectParent\" +\n (errors.assignedTo\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor:\n errors.assignedTo\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={csrNorthTerritoryList}\n placeholder=\"Select CSR...\"\n />\n \n
    \n )} \n \n \n
    \n \n this.setState({ isUrgent: e.target.checked })}\n />\n
    \n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n\n \n
    \n
    \n \n this.setState({\n messageModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n

    \n {this.state.subject}\n

    \n

    \n {this.state.message}\n

    \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nInProcessComplaints.propTypes = {\n match: PropTypes.object,\n inProcessComplaints: PropTypes.array,\n csrList: PropTypes.array,\n className: PropTypes.any,\n onGetInProcessComplaints: PropTypes.func,\n onGetCSRList: PropTypes.func,\n onAssignComplaint: PropTypes.func,\n // office\n csrCentralTerritoryList: PropTypes.array,\n csrSouthTerritoryList: PropTypes.array,\n csrNorthTerritoryList: PropTypes.array,\n onGetCsrCentralList: PropTypes.func,\n onGetCsrSouthList: PropTypes.func,\n onGetCsrNorthList: PropTypes.func,\n};\nconst mapStateToProps = ({ csrAdmin, staff, csrTerritoryList }) => ({\n inProcessComplaints: csrAdmin.inProcessComplaints,\n csrList: staff.csrList,\n // Office \n csrCentralTerritoryList: csrTerritoryList.csrCentralTerritoryList,\n csrSouthTerritoryList: csrTerritoryList.csrSouthTerritoryList,\n csrNorthTerritoryList: csrTerritoryList.csrNorthTerritoryList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onAssignComplaint: data => dispatch(assignComplaint(data)),\n onGetInProcessComplaints: () => dispatch(getInProcessComplaints()),\n onGetCSRList: () => dispatch(getCSRList()),\n // office\n onGetCsrCentralList: () => dispatch(getCsrCentralList()),\n onGetCsrSouthList: () => dispatch(getCsrSouthList()),\n onGetCsrNorthList: () => dispatch(getCsrNorthList()),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(InProcessComplaints));\n","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Tooltip } from \"@material-ui/core\";\n\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalHeader,\n ModalBody,\n} from \"reactstrap\";\nimport filterFactory, {textFilter, selectFilter} from \"react-bootstrap-table2-filter\";\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\nimport moment from 'moment';\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getResolvedComplaints,\n assignComplaint,\n // getCSRList,\n} from \"store/csr-admin/actions\";\n\nimport \"assets/scss/table.scss\";\nimport { getCSRList } from \"store/staff/actions\";\n//Office\nimport { getCsrCentralList,\n getCsrSouthList,\n getCsrNorthList,\n } from \"store/csr-territory-list/actions\";\n\nclass ResolvedComplaints extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n resolvedComplaints: [],\n id: \"\",\n btnText: \"Copy\",\n assignedTo: \"\",\n ResolvedComplaints: \"\",\n resolvedComplaint: \"\",\n assignedTo: \"\",\n isUrgent: false, \n PendingComplaints: \"\",\n resolvedComplaint: \"\",\n csrList: [],\n // Office\n csrCentralTerritoryList: [],\n csrSouthTerritoryList: [],\n csrNorthTerritoryList: [],\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n resolvedComplaintListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, resolvedComplaint) => (\n <>{resolvedComplaint.id}\n ),filter: textFilter(),\n },\n {\n dataField: \"registered_at\",\n text: \"Registered at\",\n sort: true,\n formatter: (cellContent, complaint) => (\n <>\n \n {moment(complaint.registered_at).format(\"DD MMM YYYY, h:mm A\")}\n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"complaint_id\",\n text: \"Complaint ID\",\n sort: true,\n formatter: (cellContent, complaint) => (\n <>\n {complaint.complaint_id}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"complainant\",\n text: \"Complaint From\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"name\",\n text: \"Complainant Name\",\n sort: true,\n formatter: (cellContent, resolvedComplaint) => (\n <>\n \n this.openPatientModal(e, resolvedComplaint)}\n onMouseEnter={e => this.openPatientModal(e, resolvedComplaint)}\n onPointerLeave={this.handleMouseExit()}\n >\n {resolvedComplaint.name}\n \n \n \n ),filter: textFilter(),\n },\n // {\n // dataField: \"complainee\",\n // text: \"Complaint Against\",\n // sort: true,\n // formatter: (cellContent, resolvedComplaint) => (\n // <>\n // {/* {resolvedComplaint.complainee},{\" \"} */}\n // {resolvedComplaint.labhazir_complainee}{\" \"}\n // {resolvedComplaint.lab_name}\n // \n // ),filter: textFilter(),\n // },\n {\n dataField: \"complainee\",\n text: \"Complaint Against\",\n sort: true,\n formatter: (cellContent, pendingComplaint) => (\n <>\n {pendingComplaint.complainee === \"Lab\" ? (\n this.openCompalneeModal(e, pendingComplaint)}\n onPointerLeave={this.handleMouseExit()}\n >\n {pendingComplaint.complainee}

    \n {pendingComplaint.lab_name}\n \n ) : (\n <>\n {pendingComplaint.complainee}

    \n {pendingComplaint.labhazir_complainee}\n \n )}\n \n ),\n filter: selectFilter({\n options: {\n '': 'All',\n 'Lab': 'Lab',\n 'LabHazir': 'LabHazir',\n },\n defaultValue: 'All',\n }),\n \n },\n {\n dataField: \"csr_name\",\n text: \"Assigned to\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"assigned_at\",\n text: \"Assigned at\",\n sort: true,\n formatter: (cellContent, complaint) => (\n <>\n \n {moment(complaint.assigned_at).format(\"DD MMM YYYY, h:mm A\")}\n \n \n ),\n filter: textFilter(),\n },\n \n \n // {\n // dataField: \"handled_at\",\n // text: \"Handled at\",\n // sort: true,\n // formatter: (cellContent, complaint) => (\n // <>\n // \n // {moment(complaint.registered_at).format(\"DD MMM YYYY, h:mm A\")}\n // \n // \n // ),\n // filter: textFilter(),\n // },\n {\n dataField: \"time_difference_hours\",\n text: \"Response Time in Hours\",\n sort: true,\n formatter: (cellContent, complaint) => (\n <>\n \n {complaint.time_difference_hours.toFixed().toString()}\n {/* {moment(complaint.registered_at).format(\"DD MMM YYYY, h:mm A\")} */}\n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"office\",\n text: \"Office\",\n sort: true, \n filter: textFilter(), \n },\n {\n dataField: \"data\",\n text: \"id\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, resolvedComplaint) => (\n <>\n this.handleApprovedEvent(e, resolvedComplaint.id)}\n >\n Reopen\n {\" \"}\n \n ),\n },\n {\n dataField: \"data\",\n text: \"id\",\n isDummyField: true,\n editable: false,\n text: \"Chat\",\n formatter: (cellContent, complaint) => (\n <>\n \n \n \n \n ),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.toggleMessageModal.bind(this);\n this.handleApprovedEvent = this.handleApprovedEvent.bind(this);\n }\n\n componentDidMount() {\n const { resolvedComplaints, onGetResolvedComplaints } = this.props;\n onGetResolvedComplaints();\n this.setState({ resolvedComplaints });\n\n // csr central list\n const { csrCentralTerritoryList, onGetCsrCentralList } = this.props;\n onGetCsrCentralList();\n this.setState({ csrCentralTerritoryList });\n // csr south list\n const { csrSouthTerritoryList, onGetCsrSouthList } = this.props;\n onGetCsrSouthList();\n this.setState({ csrSouthTerritoryList });\n // csr north list\n const { csrNorthTerritoryList, onGetCsrNorthList } = this.props;\n onGetCsrNorthList();\n this.setState({ csrNorthTerritoryList });\n\n // csrs list\n const { csrList, onGetCSRList } = this.props;\n onGetCSRList();\n this.setState({ csrList });\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n email: arg.email,\n phone:arg.phone,\n });\n };\n toggleComplaneeModal = () => {\n this.setState(prevState => ({\n complaneeModal: !prevState.complaneeModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n openCompalneeModal = (e, arg) => {\n console.log(\"message model is call in case when complanee is lab\", arg)\n this.setState({ complaneeModal: true, \n lab_city: arg.lab_city,\n lab_phone: arg.lab_phone,\n\n });\n };\n handleMouseExit = () => {\n this.setState({\n PatientModal: false,\n isHovered: false,\n messageModal:false,\n complaneeModal: false,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleApprovedEvent = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggle();\n };\n\n toggleMessageModal = () => {\n this.setState(prevState => ({\n messageModal: !prevState.messageModal,\n }));\n };\n\n openMessageModal = (e, arg) => {\n this.setState({ messageModal: true, message: arg.message , subject: arg.subject });\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { resolvedComplaints } = this.props;\n const data = this.state.data;\n const { onAssignComplaint, onGetResolvedComplaints } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: resolvedComplaints.length, // replace later with size(resolvedComplaints),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n const csrList = [];\n for (let i = 0; i < this.props.csrList.length; i++) {\n csrList.push({\n label: this.props.csrList[i].name,\n value: this.props.csrList[i].id,\n });\n }\n // Central Office\n const csrCentralTerritoryList = [];\n\n for (let i = 0; i < this.props.csrCentralTerritoryList.length; i++) {\n csrCentralTerritoryList.push({\n label: this.props.csrCentralTerritoryList[i].name,\n value: this.props.csrCentralTerritoryList[i].id,\n });\n \n }\n // South Office\n const csrSouthTerritoryList = [];\n\n for (let i = 0; i < this.props.csrSouthTerritoryList.length; i++) {\n csrSouthTerritoryList.push({\n label: this.props.csrSouthTerritoryList[i].name,\n value: this.props.csrSouthTerritoryList[i].id,\n });\n \n }\n // North Office\n const csrNorthTerritoryList = [];\n\n for (let i = 0; i < this.props.csrNorthTerritoryList.length; i++) {\n csrNorthTerritoryList.push({\n label: this.props.csrNorthTerritoryList[i].name,\n value: this.props.csrNorthTerritoryList[i].id,\n });\n \n }\n return (\n \n
    \n \n Closed Complaints | Complaint Hazir\n \n\n \n {/* Render Breadcrumbs */}\n \n \n
    \n

    Note: When you Reopen a complaint it will move to Inprocess Complaints.

    \n
    \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n {/*
    \n \n \n
    */}\n \n \n \n \n \n \n
    \n \n \n {/*
    \n
    \n \n
    \n
    \n \n
    \n
    */}\n\n {/*
    \n
    \n \n
    \n
    \n \n
    \n
    */}\n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state\n .phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n \n Complainant Against: \n \n \n \n
    \n \n \n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state\n .lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n \n \n
    \n \n
    \n \n
    \n \n
    \n \n this.setState({\n modal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n \n {\n const data = {\n id: this.state.id,\n assignedTo: values.assignedTo,\n is_it_urgent: this.state.isUrgent, // Include the checkbox value\n\n };\n\n // Assign complaint\n onAssignComplaint(data);\n\n // Calling to update list record\n setTimeout(() => {\n onGetResolvedComplaints();\n }, 1000);\n\n this.toggle();\n }}\n >\n \n {({ errors, status, touched }) => (\n \n
    \n \n \n
    \n \n {\n this.setState({\n resolvedComplaint: {\n \n office: e.target.value,\n \n },\n });\n }}\n multiple={false}\n value={\n this.state.office\n }\n >\n \n \n \n \n \n \n
    \n \n {this.state.resolvedComplaint.office ==\"Central Office\"\n &&(\n\n
    \n \n {\n this.setState({\n assignedTo:\n selectedGroup.value,\n });\n }}\n className={\n \"defautSelectParent\" +\n (errors.assignedTo\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor:\n errors.assignedTo\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={csrCentralTerritoryList}\n placeholder=\"Select CSR...\"\n />\n \n
    \n )} \n {/* South Office */}\n {this.state.resolvedComplaint.office ==\"South Office\"\n &&(\n\n
    \n \n {\n this.setState({\n assignedTo:\n selectedGroup.value,\n });\n }}\n className={\n \"defautSelectParent\" +\n (errors.assignedTo\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor:\n errors.assignedTo\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={csrSouthTerritoryList}\n placeholder=\"Select CSR...\"\n />\n \n
    \n )} \n {/* North Office */}\n {this.state.resolvedComplaint.office ==\"North Office\"\n &&(\n\n
    \n \n {\n this.setState({\n assignedTo:\n selectedGroup.value,\n });\n }}\n className={\n \"defautSelectParent\" +\n (errors.assignedTo\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor:\n errors.assignedTo\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={csrNorthTerritoryList}\n placeholder=\"Select CSR...\"\n />\n \n
    \n )} \n \n \n
    \n \n this.setState({ isUrgent: e.target.checked })}\n />\n
    \n \n
    \n \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n \n
    \n
    \n \n this.setState({\n messageModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n

    \n {this.state.subject}\n

    \n

    \n {this.state.message}\n

    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nResolvedComplaints.propTypes = {\n match: PropTypes.object,\n resolvedComplaints: PropTypes.array,\n csrList: PropTypes.array,\n csrCentralTerritoryList: PropTypes.array,\n csrSouthTerritoryList: PropTypes.array,\n csrNorthTerritoryList: PropTypes.array,\n onGetCSRList: PropTypes.func,\n onGetCsrCentralList: PropTypes.func,\n onGetCsrSouthList: PropTypes.func,\n onGetCsrNorthList: PropTypes.func,\n className: PropTypes.any,\n onGetResolvedComplaints: PropTypes.func,\n onAssignComplaint: PropTypes.func,\n};\nconst mapStateToProps = ({ csrAdmin, staff, csrTerritoryList }) => ({\n resolvedComplaints: csrAdmin.resolvedComplaints,\n csrList: staff.csrList,\n csrCentralTerritoryList: csrTerritoryList.csrCentralTerritoryList,\n csrSouthTerritoryList: csrTerritoryList.csrSouthTerritoryList,\n csrNorthTerritoryList: csrTerritoryList.csrNorthTerritoryList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onAssignComplaint: data => dispatch(assignComplaint(data)),\n onGetResolvedComplaints: () => dispatch(getResolvedComplaints()),\n onGetCSRList: () => dispatch(getCSRList()),\n onGetCsrCentralList: () => dispatch(getCsrCentralList()),\n onGetCsrSouthList: () => dispatch(getCsrSouthList()),\n onGetCsrNorthList: () => dispatch(getCsrNorthList()),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(ResolvedComplaints));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Tooltip } from \"@material-ui/core\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\nimport filterFactory, {textFilter} from \"react-bootstrap-table2-filter\";\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n// import { getCSR, updateStaff, deleteStaff } from \"store/sample-collectors/actions\";\nimport { getCSRList, updateStaff, deleteStaff } from \"store/staff/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass CSRsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n csrList: [],\n staff: \"\",\n collectorImg: \"\",\n modal: false,\n deleteModal: false,\n csrListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, CSR) => <>{CSR.id},\n },\n {\n dataField: \"name\",\n text: \"Name\",\n sort: true,\n formatter: (cellContent, CSR) => (\n <>\n \n \n {CSR.name}\n \n \n \n ),\n filter: textFilter() // Apply text filter here\n },\n \n {\n dataField: \"email\",\n text: \"Email\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"cnic\",\n text: \"CNIC\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"phone\",\n text: \"Mobile No.\",\n sort: true,\n filter: textFilter(),\n },\n\n {\n dataField: \"roles\",\n text: \"Roles\",\n sort: true,\n filter: textFilter(),\n },\n // {\n // dataField: \"menu\",\n // isDummyField: true,\n // editable: false,\n // text: \"Action\",\n // formatter: (cellContent, CSR) => (\n //
    \n // \n // this.handleCSRClick(e, CSR)}\n // >\n // \n // \n // this.onClickDelete(CSR)}\n // >\n // \n //
    \n // ),\n // },\n ],\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n this.handleCSRClick = this.handleCSRClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleCSRClicks = this.handleCSRClicks.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n\n componentDidMount() {\n const { onGetCSRList } = this.props;\n onGetCSRList();\n this.setState({ csrList: this.props.csrList });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleCSRClicks = () => {\n this.setState({ CSR: \"\", collectorImg: \"\", isEdit: false });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { csrList } = this.props;\n if (!isEmpty(csrList) && size(prevProps.csrList) !== size(csrList)) {\n this.setState({ csrList: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = csrList => {\n this.setState({ csrList: csrList });\n this.setState({ deleteModal: true });\n };\n\n handleDeleteCSR = () => {\n const { onDeleteStaff, onGetCSRList } = this.props;\n const { csrList } = this.state;\n if (csrList.id !== undefined) {\n onDeleteStaff(csrList);\n setTimeout(() => {\n onGetCSRList();\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n\n handleCSRClick = (e, arg) => {\n console.log(\"arg: \", arg);\n\n this.setState({\n staff: {\n id: arg.id,\n name: arg.name,\n cnic: arg.cnic,\n phone: arg.phone,\n roles: arg.roles,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { csrList } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const { onUpdateStaff, onGetCSRList } = this.props;\n const staff = this.state.staff;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: csrList.length, // replace later with size(CSRsList),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n this.setState({ deleteModal: false })}\n />\n
    \n \n CSR List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n {/*
    \n \n \n
    */}\n
    \n \n
    \n \n \n
    \n \n\n \n \n Edit CSR\n \n \n {\n if (isEdit) {\n const staffData = {\n id: staff.id,\n name: values.name,\n cnic: values.cnic,\n phone: values.phone,\n roles: values.roles,\n };\n\n // save new Staff\n onUpdateStaff(staffData);\n\n // if (this.props.staff.length != 0) {\n // this.props.history.push(\"/add-\")\n // }\n\n setTimeout(() => {\n onGetCSRList();\n }, 1000);\n }\n this.toggle();\n }}\n >\n \n \n
    \n \n
    \n {/* \n \n \n \n */}\n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nCSRsList.propTypes = {\n match: PropTypes.object,\n csrList: PropTypes.array,\n className: PropTypes.any,\n onGetCSRList: PropTypes.func,\n onDeleteStaff: PropTypes.func,\n onUpdateStaff: PropTypes.func,\n};\n\nconst mapStateToProps = ({ staff }) => ({\n csrList: staff.csrList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetCSRList: () => dispatch(getCSRList()),\n onUpdateStaff: CSR => dispatch(updateStaff(CSR)),\n onDeleteStaff: CSR => dispatch(deleteStaff(CSR)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(CSRsList));\n","import React, { Component } from \"react\"\nimport PropTypes from 'prop-types';\nimport ReactApexChart from \"react-apexcharts\"\n\nclass StackedColumnChart extends Component {\n constructor(props) {\n super(props)\n\n this.state = {\n options: {\n chart: {\n stacked: true,\n toolbar: {\n show: false,\n },\n zoom: {\n enabled: true,\n },\n\n },\n\n plotOptions: {\n bar: {\n horizontal: false,\n columnWidth: \"15%\",\n endingShape: \"rounded\",\n },\n },\n\n dataLabels: {\n enabled: false,\n },\n xaxis: {\n categories: [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\",\n ],\n },\n colors: [\"#556ee6\", \"#f1b44c\", \"#34c38f\"],\n legend: {\n position: \"bottom\",\n },\n fill: {\n opacity: 1,\n },\n },\n }\n }\n\n render() {\n return (\n \n \n \n )\n }\n}\n\nStackedColumnChart.propTypes = {\n chartSeries: PropTypes.any,\n periodData: PropTypes.any\n}\nexport default StackedColumnChart\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport { Row, Col, Card, CardBody } from \"reactstrap\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { withTranslation } from \"react-i18next\";\n\nimport profileImg from \"../../assets/images/profile-img.png\";\n\n// actions\nimport { getStaffProfile } from \"store/auth/staffprofile/actions\";\n\nclass StaffSummary extends Component {\n constructor(props) {\n super(props);\n this.state = {\n name: \"\",\n email: \"\",\n // address: \"\",\n // logo: \"\",\n // completedAppointments: \"\",\n // inProcessAppointments: \"\",\n // monthlyRevenue: \"\",\n // annualRevenue: \"\",\n // inProcessAppointments: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n componentDidMount() {\n this.props.getStaffProfile(this.state.user_id);\n }\n\n componentDidUpdate(prevProps) {\n if (this.props.success !== prevProps.success) {\n this.setState({\n name: this.props.success?.name || \"\",\n email: this.props.success?.email || \"\",\n // other properties\n });\n }\n }\n\n render() {\n return (\n \n {/* Welcome profile */}\n \n \n
    \n \n \n
    \n
    Welcome Back !
    \n

    Lab Hazir Dashboard

    \n
    \n \n \n \"\"\n \n
    \n
    \n \n \n \n
    \n \n \n
    \n {this.state.name}\n
    \n

    \n {this.state.email}\n

    \n \n \n
    \n \n View Profile{\" \"}\n \n \n
    \n \n {/* \n
    \n \n Online Booking{\" \"}\n \n \n
    \n */}\n\n
    \n
    \n \n
    \n
    \n
    \n \n\n {/* Revenue and Appointment Details */}\n \n \n \n \n \n
    \n
    \n

    \n Book an Appointment for:\n

    \n

    Existing Patients

    \n
    \n
    \n {\n const url = this.props.match.params.guest_id\n ? `/patients-list/${this.props.match.params.guest_id}`\n : `/patients-list`\n\n // Perform any additional actions or navigation logic here\n\n // For navigation, you can use react-router-dom's history or other navigation methods\n this.props.history.push(url);\n }}\n >\n Proceed\n \n
    \n
    \n
    \n
    \n \n\n \n \n \n
    \n
    \n

    Book an Appointment for:

    \n

    New Patients

    \n
    \n
    \n {\n const url = this.props.match.params.guest_id\n ? `/register/${this.props.match.params.guest_id}`\n : `/register`\n\n // Perform any additional actions or navigation logic here\n\n // For navigation, you can use react-router-dom's history or other navigation methods\n this.props.history.push(url);\n }}\n >\n Register\n \n
    \n
    \n
    \n
    \n \n\n {/* \n \n \n
    \n
    \n

    Monthly Revenue

    \n

    */}\n {/* Converting number to thousands separator string for readability */}\n {/* $\n {this.state.monthlyRevenue\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

    \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n */}\n\n {/* \n \n \n
    \n
    \n

    Annual Revenue

    */}\n {/* Converting number to thousands separator string for readability */}\n {/*

    \n $\n {this.state.annualRevenue\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n

    \n
    \n
    \n \n \n \n
    \n
    */}\n {/*
    \n
    */}\n {/* */}\n
    \n \n
    \n );\n }\n}\n\nStaffSummary.propTypes = {\n t: PropTypes.any,\n match: PropTypes.object,\n location: PropTypes.object,\n error: PropTypes.any,\n success: PropTypes.any,\n getStaffProfile: PropTypes.func,\n history: PropTypes.any,\n\n};\n\nconst mapStateToProps = state => {\n const { error, success } = state.StaffProfile;\n return { error, success };\n};\n\nexport default withRouter(\n connect(mapStateToProps, { getStaffProfile })(withTranslation()(StaffSummary))\n);\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\nimport {\n Container,\n Row,\n Col,\n Button,\n Card,\n CardBody,\n CardTitle,\n Modal,\n ModalHeader,\n ModalBody,\n ModalFooter,\n Table,\n Input,\n} from \"reactstrap\";\nimport { Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\n\n//import Charts\nimport StackedColumnChart from \"./StackedColumnChart\";\n\n//import action\nimport { getChartsData } from \"../../store/actions\";\n\n// Pages Components\nimport StaffSummary from \"./StaffSummary\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"../../components/Common/Breadcrumb\";\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport classNames from \"classnames\";\n\nclass Dashboard extends Component {\n constructor(props) {\n super(props);\n this.state = {\n email: [\n { title: \"Week\", linkto: \"#\", isActive: false },\n { title: \"Month\", linkto: \"#\", isActive: false },\n { title: \"Year\", linkto: \"#\", isActive: true },\n ],\n modal: false,\n subscribemodal: false,\n chartSeries: [],\n periodType: \"yearly\",\n };\n\n this.togglemodal.bind(this);\n }\n\n componentDidMount() {\n const { onGetChartsData } = this.props;\n setTimeout(() => this.setState({ subscribemodal: true }), 2000);\n onGetChartsData(\"yearly\");\n }\n\n togglemodal = () => {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n };\n\n togglesubscribemodal = () => {\n this.setState(prevState => ({\n subscribemodal: !prevState.subscribemodal,\n }));\n };\n\n componentDidUpdate(prevProps) {\n if (prevProps !== this.props) {\n this.setState({ ...this.state, chartSeries: this.props.chartsData });\n }\n }\n\n render() {\n return (\n \n
    \n \n Dashboard | Staff\n \n \n {/* Render Breadcrumb */}\n \n \n \n\n \n \n \n
    \n \n Email Sent\n \n
    \n
      \n
    • \n {\n this.setState({\n ...this.state,\n periodType: \"weekly\",\n });\n this.props.onGetChartsData(\"weekly\");\n }}\n id=\"one_month\"\n >\n Week\n {\" \"}\n
    • \n
    • \n {\n this.setState({\n ...this.state,\n periodType: \"monthly\",\n });\n this.props.onGetChartsData(\"monthly\");\n }}\n id=\"one_month\"\n >\n Month\n \n
    • \n
    • \n {\n this.setState({\n ...this.state,\n periodType: \"yearly\",\n });\n this.props.onGetChartsData(\"yearly\");\n }}\n id=\"one_month\"\n >\n Year\n \n
    • \n
    \n
    \n
    \n
    \n \n \n \n \n \n \n
    \n \n );\n }\n}\n\nDashboard.propTypes = {\n t: PropTypes.any,\n chartsData: PropTypes.any,\n onGetChartsData: PropTypes.func,\n};\n\nconst mapStateToProps = ({ Dashboard }) => ({\n chartsData: Dashboard.chartsData,\n});\n\nconst mapDispatchToProps = dispatch => ({\n onGetChartsData: periodType => dispatch(getChartsData(periodType)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withTranslation()(Dashboard));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport filterFactory, { textFilter,selectFilter } from 'react-bootstrap-table2-filter';\nimport { Tooltip } from \"@material-ui/core\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalBody,\n ModalHeader,\n Input,\n Button,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport moment from 'moment';\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport { getUnhandledComplaints, updateUnhandledComplaints } from \"store/complaints/actions\";\nimport * as Yup from \"yup\";\nimport \"assets/scss/table.scss\";\n\nclass UnhandledComplaints extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n unhandledComplaints: [],\n unhandledComplaint: \"\",\n btnText: \"Copy\",\n modal: false,\n messageModal: false,\n handleModal: false,\n id: \"\",\n btnText1: \"Copy\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n unhandledComplaintListColumns: [\n {\n text: \"id\",\n dataField: \"complaint_id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, unhandledComplaint) => (\n <>{unhandledComplaint.id}\n ),\n filter: textFilter(),\n },\n {\n dataField: \"registered_at\",\n text: \"Registered at\",\n sort: true,\n formatter: (cellContent, complaint) => (\n <>\n \n {moment(complaint.registered_at).format(\"DD MMM YYYY, h:mm A\")}\n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"complaint_id\",\n text: \"Complaint ID\",\n sort: true,\n formatter: (cellContent, testAppointment) => (\n <>\n {testAppointment.complaint_id}\n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"complainant\",\n text: \"Complaint From\",\n sort: true,\n filter: textFilter(),\n },\n \n {\n dataField: \"name\",\n text: \"Complainant Name\",\n sort: true,\n formatter: (cellContent, unhandledComplaint) => (\n <>\n \n this.openPatientModal(e, unhandledComplaint)}\n onMouseEnter={e =>this.openPatientModal(e, unhandledComplaint)}\n onPointerLeave={this.handleMouseExit()}\n >\n {unhandledComplaint.name}\n \n \n \n ),\n filter: textFilter(),\n },\n // {\n // dataField: \"email\",\n // text: \"Email\",\n // sort: true,\n // },\n // {\n // dataField: \"phone\",\n // text: \"Phone\",\n // sort: true,\n // },\n \n {\n dataField: \"complainee\",\n text: \"Complaint Against\",\n sort: true,\n formatter: (cellContent, unhandledComplaint) => (\n <>\n {unhandledComplaint.lab_name ? (\n this.openLabMessageModal(e, unhandledComplaint)}\n onPointerLeave={this.handleMouseExit()}\n >\n {unhandledComplaint.complainee}

    \n {unhandledComplaint.lab_name}\n \n ) : (\n <>\n {unhandledComplaint.complainee}

    \n {unhandledComplaint.labhazir_complainee}\n \n )}\n \n ),\n filter: textFilter(),\n }, \n {\n dataField: \"city\",\n text: \"City\",\n sort: true,\n filter: textFilter(),\n }, \n {\n dataField: \"is_it_urgent\",\n text: \"Urgent\",\n sort: true,\n formatter: (cellContent, row) => {\n const isUrgent = row.is_it_urgent;\n \n // Conditionally render red or green round box\n return isUrgent ? (\n \n Urgent\n \n ) : (\n \n Normal\n \n );\n },\n filter: selectFilter({\n options: {\n '': 'All',\n 'true': 'Urgent',\n 'false': 'Normal',\n },\n defaultValue: '',\n }),\n },\n // {\n // dataField: \"message\",\n // text: \"Message\",\n // sort: true,\n // formatter: (cellContent, complaint) => (\n // <>\n // this.openMessageModal(e, complaint)}\n // onMouseEnter={e => this.openMessageModal(e, complaint)}\n // onPointerLeave={this.handleMouseExit()}\n // >\n // {complaint.message.slice(0, 10) + \"...\"}\n // {\" \"}\n // \n // ),\n // filter: textFilter(),\n // },\n // {\n // dataField: \"registered_at\",\n // text: \"Registered at\",\n // sort: true,\n // formatter: (cellContent, complaint) => (\n // <>\n // \n // {moment(complaint.registered_at).format(\"DD MMM YYYY, h:mm A\")}\n // \n // \n // ),\n // filter: textFilter(),\n // },\n \n {\n dataField: \"registered_at\",\n text: \"Pending Since\",\n sort: true,\n formatter: (cellContent, complaint) => (\n <>\n \n {new Date().getDate() - new Date(complaint.registered_at).getDate()} days\n\n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"data\",\n text: \"id\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, complaint) => (\n <>\n
    \n \n this.handleResolveClick(complaint.id)}\n >\n \n \n\n \n \n \n \n
    \n\n \n ),\n },\n ],\n };\n // this.toggle = this.toggle.bind(this);\n // this.onClickAuditedEvent = this.onClickAuditedEvent.bind(this);\n this.toggleMessageModal.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n \n }\n handleResolveClick = (complaintId) => {\n // Dispatch an action to update the status in Redux\n const { onUpdateUnhandledComplaints, onGetUnhandledComplaints} = this.props;\n onUpdateUnhandledComplaints({ id: complaintId, status: \"Resolved\" });\n\n setTimeout(() => {\n onGetUnhandledComplaints(this.state.user_id);\n }, 1000);\n };\n\n toggleHandleModal = () => {\n this.setState(prevState => ({\n auditModal: !prevState.auditModal,\n }));\n };\n toggleMessageModal = () => {\n this.setState(prevState => ({\n messageModal: !prevState.messageModal,\n }));\n };\n openMessageModal = (e, arg) => {\n this.setState({ messageModal: true,\n message: arg.message,\n subject: arg.subject,\n });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n email: arg.email,\n phone:arg.phone,\n });\n };\n handleMouseExit = () => {\n this.setState({\n PatientModal: false,\n isHovered: false,\n messageModal: false,\n labModal: false,\n });\n };\n toggleLabMessageModal = () => {\n this.setState(prevState => ({\n labModal: !prevState.labModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n openLabMessageModal = (e, arg) => {\n this.setState({ labModal: true, \n lab_email: arg.lab_email,\n lab_phone: arg.lab_phone,\n\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText1 === \"Copy\"\n ? this.setState({ btnText1: \"Copied\" })\n : this.setState({ btnText1: \"Copy\" });\n };\n\n // handleAPICall = () => {\n // const { onUpdateUnhandledComplaints, onGetUnhandledComplaints } = this.props;\n\n // onUpdateUnhandledComplaints(this.state.id);\n // setTimeout(() => {\n // onGetUnhandledComplaints(this.state.user_id);\n // }, 1000);\n\n // this.setState({ auditModal: false });\n // };\n componentDidMount() {\n const { onGetUnhandledComplaints } = this.props;\n onGetUnhandledComplaints(this.state.user_id);\n this.setState({ unhandledComplaints: this.props.unhandledComplaints });\n }\n\n // toggle() {\n // this.setState(prevState => ({\n // modal: !prevState.modal,\n // }));\n // }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { unhandledComplaints } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: unhandledComplaints.length, // replace later with size(unhandledComplaints),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n {/* this.setState({ auditModal: false })}\n /> */}\n\n
    \n \n Open Complaints| Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n {/* \n \n
    \n
    \n \n \n
    \n
    \n \n
    */}\n \n \n
    \n \n \n
    \n
    \n \n this.setState({\n messageModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n

    \n {this.state.subject}\n

    \n

    \n {this.state.message}\n

    \n
    \n
    \n
    \n
    \n
    \n \n \n \n Lab details: \n \n \n \n
    \n \n \n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state\n .lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n \n Details: \n \n \n \n
    \n \n \n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state\n .phone\n );\n this.setState({\n btnText1: \"Copied\",\n });\n }}\n >\n {this.state.btnText1}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nUnhandledComplaints.propTypes = {\n match: PropTypes.object,\n unhandledComplaints: PropTypes.array,\n className: PropTypes.any,\n onGetUnhandledComplaints: PropTypes.func,\n onUpdateUnhandledComplaints: PropTypes.func,\n};\n\nconst mapStateToProps = ({ complaints }) => ({\n unhandledComplaints: complaints.unhandledComplaints,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetUnhandledComplaints: id => dispatch(getUnhandledComplaints(id)),\n onUpdateUnhandledComplaints: data => dispatch(updateUnhandledComplaints(data)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(UnhandledComplaints));","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport filterFactory, { textFilter } from \"react-bootstrap-table2-filter\";\nimport { Tooltip } from \"@material-ui/core\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport DatePicker from \"react-datepicker\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Form,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\nimport moment from \"moment\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, ErrorMessage } from \"formik\";\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport { getHandledComplaints } from \"store/complaints/actions\";\n\nimport { isEmpty, size } from \"lodash\";\n\nimport \"assets/scss/table.scss\";\n\nclass handledComplaintsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n handledComplaints: [],\n handledComplaint: \"\",\n startDate: null,\n endDate: null,\n selectedLab: null,\n modal: false,\n btnText: \"Copy\",\n btnText1: \"Copy\",\n messageModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n handledComplaintListColumns: [\n {\n text: \"id\",\n dataField: \"complaint_id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, handledComplaint) => (\n <>{handledComplaint.id}\n ),\n filter: textFilter(),\n },\n {\n dataField: \"registered_at\",\n text: \"Registered at\",\n sort: true,\n formatter: (cellContent, complaint) => (\n <>\n \n {moment(complaint.registered_at).format(\"DD MMM YYYY, h:mm A\")}\n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"complaint_id\",\n text: \"Complaint ID\",\n sort: true,\n formatter: (cellContent, handledComplaint) => (\n <>\n {handledComplaint.complaint_id}\n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"complainant\",\n text: \"Complaint From\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"name\",\n text: \"Complainant Name\",\n sort: true,\n formatter: (cellContent, handledComplaint) => (\n <>\n \n this.openPatientModal(e, handledComplaint)}\n onMouseEnter={e => this.openPatientModal(e, handledComplaint)}\n onPointerLeave={this.handleMouseExit()}\n >\n {handledComplaint.name}\n \n \n \n ),\n filter: textFilter(),\n },\n // {\n // dataField: \"email\",\n // text: \"Email\",\n // sort: true,\n // },\n // {\n // dataField: \"phone\",\n // text: \"Phone\",\n // sort: true,\n // },\n\n {\n dataField: \"complainee\",\n text: \"Complaint Against\",\n sort: true,\n formatter: (cellContent, unhandledComplaint) => (\n <>\n {unhandledComplaint.lab_name ? (\n \n this.openLabMessageModal(e, unhandledComplaint)\n }\n onPointerLeave={this.handleMouseExit()}\n >\n \n {unhandledComplaint.complainee}\n {\" \"}\n

    \n {unhandledComplaint.lab_name}\n \n ) : (\n <>\n \n {unhandledComplaint.complainee}\n {\" \"}\n

    \n {unhandledComplaint.labhazir_complainee}\n \n )}\n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"city\",\n text: \"City\",\n sort: true,\n filter: textFilter(),\n },\n // {\n // dataField: \"message\",\n // text: \"Message\",\n // sort: true,\n // formatter: (cellContent, complaint) => (\n // <>\n // this.openMessageModal(e, complaint)}\n // onMouseEnter={e => this.openMessageModal(e, complaint)}\n // onPointerLeave={this.handleMouseExit()}\n // >\n // {complaint.message.slice(0, 10) + \"...\"}\n // {\" \"}\n // \n // ),\n // filter: textFilter(),\n // },\n\n {\n dataField: \"time_difference_hours\",\n text: \"Response Time in Hours\",\n sort: true,\n formatter: (cellContent, handledComplaint) => (\n <>\n \n {handledComplaint.time_difference_hours.toFixed().toString()}\n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"data\",\n text: \"id\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, complaint) => (\n <>\n \n \n \n \n ),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.toggleMessageModal.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n }\n componentDidMount() {\n this.setState({ handledComplaints: [] });\n const currentMonthStart = moment().startOf(\"day\");\n const currentMonthEnd = moment().endOf(\"day\");\n\n this.setState({\n startDate: currentMonthStart.toDate(),\n endDate: currentMonthEnd.toDate(),\n });\n\n this.fetchData();\n }\n\n componentDidUpdate(prevProps, prevState) {\n if (\n prevState.startDate !== this.state.startDate ||\n prevState.endDate !== this.state.endDate\n ) {\n // Fetch data based on date filters\n this.fetchData();\n }\n\n if (\n this.props.handledComplaints.length > 0 &&\n this.props.handledComplaints !== prevProps.handledComplaints\n ) {\n const lastIndex = this.props.handledComplaints.findIndex(statement => {\n const statementDate = new Date(statement.registered_at);\n const labFilter =\n !this.state.selectedLab ||\n statement.lab_name === this.state.selectedLab;\n return (\n statementDate >= this.state.startDate &&\n statementDate <= this.state.endDate &&\n labFilter\n );\n });\n\n // Do something with lastIndex if needed\n }\n const { handledComplaints } = this.props;\n if (\n !isEmpty(handledComplaints) &&\n size(prevProps.handledComplaints) !== size(handledComplaints)\n ) {\n this.setState({ handledComplaints: {}, isEdit: false });\n }\n }\n\n fetchData = () => {\n if (this.state.user_id && this.state.startDate && this.state.endDate) {\n const { onGetHandledComplaints } = this.props;\n const userId = this.state.user_id;\n const startDate = moment(this.state.startDate).format(\"YYYY-MM-DD\");\n const endDate = moment(this.state.endDate).format(\"YYYY-MM-DD\");\n\n onGetHandledComplaints(userId, startDate, endDate); // Pass startDate and endDate to API call\n }\n };\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n email: arg.email,\n phone: arg.phone,\n });\n };\n toggleLabMessageModal = () => {\n this.setState(prevState => ({\n labModal: !prevState.labModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n openLabMessageModal = (e, arg) => {\n this.setState({\n labModal: true,\n lab_email: arg.lab_email,\n lab_phone: arg.lab_phone,\n });\n };\n\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText1 === \"Copy\"\n ? this.setState({ btnText1: \"Copied\" })\n : this.setState({ btnText1: \"Copy\" });\n };\n handleMouseExit = () => {\n this.setState({\n PatientModal: false,\n messageModal: false,\n isHovered: false,\n labModal: false,\n });\n };\n\n toggleMessageModal = () => {\n this.setState(prevState => ({\n messageModal: !prevState.messageModal,\n }));\n };\n\n openMessageModal = (e, arg) => {\n this.setState({\n messageModal: true,\n message: arg.message,\n subject: arg.subject,\n });\n };\n\n // eslint-disable-next-line no-unused-vars\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n const { startDate, endDate, labsData } = this.state;\n const { handledComplaints } = this.props;\n const { onGetHandledComplaints } = this.props;\n const handledComplaint = this.state.handledComplaint;\n\n const uniqueLabNames = [\n ...new Set(\n this.props.handledComplaints.map(\n handledComplaints => handledComplaints.complainant\n )\n ),\n ];\n const labOptions = uniqueLabNames.map((typeoptions, index) => (\n \n ));\n\n const uniqueCityNames = [\n ...new Set(\n this.props.handledComplaints.map(\n handledComplaints => handledComplaints.city\n )\n ),\n ];\n const cityOptions = uniqueCityNames.map((cityName, index) => (\n \n ));\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: handledComplaints.length, // replace later with size(handledComplaints),\n custom: true,\n };\n\n const filteredStatements = handledComplaints.filter(statement => {\n const orderedAt = moment(statement.registered_at);\n const labFilter =\n !this.state.selectedLab ||\n statement.complainant === this.state.selectedLab;\n const CorporateFilter =\n !this.state.selectedCorporate ||\n statement.city === this.state.selectedCorporate;\n return (\n labFilter &&\n CorporateFilter &&\n (!startDate || orderedAt.isSameOrAfter(startDate)) &&\n (!endDate || orderedAt.isSameOrBefore(endDate))\n );\n });\n\n filteredStatements.sort((a, b) => {\n return moment(a.registered_at) - moment(b.registered_at);\n });\n console.log(\"Filtered Statements:\", filteredStatements);\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Closed Complaints List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n \n
    \n \n \n this.setState({ startDate: date })\n }\n className=\"form-control\"\n dateFormat=\"d MMM yyyy\"\n />\n
    \n \n \n
    \n \n this.setState({ endDate: date })}\n className=\"form-control\"\n dateFormat=\"d MMM yyyy\"\n />\n
    \n \n \n
    \n \n \n this.setState({ selectedLab: e.target.value })\n }\n className=\"form-control\"\n >\n \n {labOptions}\n \n
    \n \n \n
    \n \n \n this.setState({\n selectedCorporate: e.target.value,\n })\n }\n className=\"form-control\"\n >\n \n {cityOptions}\n \n
    \n \n
    \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n {/*
    \n \n \n
    */}\n \n \n Details: \n \n \n \n
    \n \n \n {/*
    \n
    \n \n
    \n
    \n \n
    \n
    */}\n\n {/*
    \n
    \n \n
    \n
    \n \n
    \n
    */}\n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state.phone\n );\n this.setState({\n btnText1: \"Copied\",\n });\n }}\n >\n {this.state.btnText1}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n \n Lab details: \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state.lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n \n \n
    \n \n\n \n
    \n
    \n \n this.setState({\n messageModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n

    \n {this.state.subject}\n

    \n

    \n {this.state.message}\n

    \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nhandledComplaintsList.propTypes = {\n match: PropTypes.object,\n handledComplaints: PropTypes.array,\n className: PropTypes.any,\n onGetHandledComplaints: PropTypes.func,\n};\n\nconst mapStateToProps = ({ complaints }) => ({\n handledComplaints: complaints.handledComplaints,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetHandledComplaints: id => dispatch(getHandledComplaints(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(handledComplaintsList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport DatePicker from \"react-datepicker\";\nimport moment from \"moment\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\nimport filterFactory, {\n textFilter,\n selectFilter,\n} from \"react-bootstrap-table2-filter\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getCsrComplaints,\n updateCsrComplaints,\n} from \"store/csr-complaints/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass csrComplaints extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n\n const today = new Date();\n const oneMonthAgo = new Date();\n oneMonthAgo.setMonth(today.getMonth() - 1);\n\n this.state = {\n csrComplaints: [],\n csrComplaint: \"\",\n modal: false,\n startDate: oneMonthAgo, // Default to one month ago\n endDate: today, // Default to today\n btnText: \"Copy\",\n btnText1: \"Copy\",\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n paymentOutStatusListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, csrComplaint) => <>{csrComplaint.id},\n filter: textFilter(),\n },\n {\n dataField: \"order_id\",\n text: \"Order ID\",\n sort: true,\n formatter: (cellContent, csrComplaint) => (\n <>\n {csrComplaint.order_id}\n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"patient_name\",\n text: \"Patient Name\",\n sort: true,\n formatter: (cellContent, csrComplaint) => (\n <>\n \n this.openPatientModal(e, csrComplaint)}\n onMouseEnter={e => this.openPatientModal(e, csrComplaint)}\n onPointerLeave={this.handleMouseExit()}\n >\n {csrComplaint.patient_name}\n \n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"lab_name\",\n text: \"Lab Name\",\n sort: true,\n formatter: (cellContent, csrComplaint) => (\n <>\n \n this.openLabModal(e, csrComplaint)}\n onMouseEnter={e => this.openLabModal(e, csrComplaint)}\n onPointerLeave={this.handleMouseExit()}\n >\n {csrComplaint.lab_name}\n \n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"is_home_sampling_availed\",\n text: \"Home sampling\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.is_home_sampling_availed == true ||\n labsList.is_state_sampling_availed == true ? (\n Yes\n ) : (\n No\n )}\n \n ),\n filter: selectFilter({\n options: {\n \"\": \"All\",\n true: \"Yes\",\n false: \"No\",\n },\n defaultValue: \"All\",\n }),\n },\n\n {\n dataField: \"status\",\n text: \"Status\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"appointment_requested_at\",\n text: \"Appointment Requested at\",\n sort: true,\n formatter: (cellContent, complaint) => (\n <>\n \n {moment(complaint.appointment_requested_at).format(\n \"DD MMM YYYY, h:mm A\"\n )}\n \n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"estimated_sample_collection_at\",\n text: \"Schedule time by lab\",\n sort: true,\n formatter: (cellContent, complaint) => (\n <>\n {complaint.appointment_requested_at >\n complaint.estimated_sample_collection_at ? (\n \n {complaint.estimated_sample_collection_at\n ? moment(complaint.estimated_sample_collection_at).format(\n \"DD MMM YYYY, h:mm A\"\n )\n : \"--\"}\n \n ) : (\n \n {complaint.estimated_sample_collection_at\n ? moment(complaint.estimated_sample_collection_at).format(\n \"DD MMM YYYY, h:mm A\"\n )\n : \"--\"}\n \n )}\n \n ),\n filter: textFilter(),\n },\n\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, csrComplaint) => (\n
    \n \n \n \n {csrComplaint.status !== \"Cancel\" &&\n csrComplaint.status !== \"Pending Cancel\" ? (\n \n \n \n this.handlePaymentStatusClick(e, csrComplaint)\n }\n >\n \n \n ) : null}\n\n \n \n \n {csrComplaint.payment_method == \"Cash\" &&\n csrComplaint.payment_status == \"Not Paid\" ? (\n \n \n \n ) : null}\n
    \n ),\n },\n ],\n };\n this.handlePaymentStatusClick = this.handlePaymentStatusClick.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n this.toggleLabModal = this.toggleLabModal.bind(this);\n this.toggle = this.toggle.bind(this);\n }\n // componentDidMount() {\n // const { onGetCsrComplaints,csrComplaints } = this.props;\n // const { startDate, endDate, user_id } = this.state;\n // // Ensure dates are properly formatted before sending\n // onGetCsrComplaints(user_id, startDate.toISOString().split('T')[0], endDate.toISOString().split('T')[0]);\n // // this.setState({ csrComplaints });\n // console.log(\"datassss\", startDate,endDate, csrComplaints)\n // }\n componentDidMount() {\n const { onGetCsrComplaints, csrComplaints } = this.props;\n const { startDate, endDate, user_id } = this.state;\n \n console.log(\"Formatted Dates:\", startDate.toISOString().split('T')[0], endDate.toISOString().split('T')[0]);\n \n if (startDate && endDate) {\n onGetCsrComplaints(user_id, startDate.toISOString().split('T')[0], endDate.toISOString().split('T')[0]);\n } else {\n console.error('StartDate or EndDate is undefined');\n }\n \n this.setState({ csrComplaints });\n console.log(\"datassss\", startDate, endDate, csrComplaints);\n }\n \n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n\n patient_phone: arg.patient_phone,\n patient_city: arg.City,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText1 === \"Copy\"\n ? this.setState({ btnText1: \"Copied\" })\n : this.setState({ btnText1: \"Copy\" });\n };\n openLabModal = (e, arg) => {\n this.setState({\n LabModal: true,\n\n lab_phone: arg.lab_phone,\n lab_city: arg.lab_city,\n });\n };\n handleMouseExit = () => {\n this.setState({\n PatientModal: false,\n LabModal: false,\n isHovered: false,\n });\n };\n toggleLabModal = () => {\n this.setState(prevState => ({\n LabModal: !prevState.LabModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n componentDidUpdate(prevProps, prevState) {\n const { onGetCsrComplaints, csrComplaints } = this.props;\n const { startDate, endDate, user_id } = this.state;\n \n // Fetch data if dates change\n if (prevState.startDate !== startDate || prevState.endDate !== endDate) {\n onGetCsrComplaints(user_id, startDate.toISOString().split('T')[0], endDate.toISOString().split('T')[0]);\n }\n \n // Update state if the csrComplaints data has changed\n if (!isEmpty(csrComplaints) && size(prevProps.csrComplaints) !== size(csrComplaints)) {\n this.setState({ csrComplaints });\n }\n }\n handleDateChange = (date, field) => {\n this.setState({ [field]: date });\n };\n \n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n handlePaymentStatusClick = (e, arg) => {\n this.setState({\n csrComplaint: {\n id: arg.id,\n // cleared_at: arg.cleared_at,\n appointment_requested_at: arg.appointment_requested_at,\n status: arg.status,\n payment_status: arg.payment_status,\n payment_method: arg.payment_method,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n\n render() {\n const { startDate, endDate } = this.state;\n \n const { SearchBar } = Search;\n\n const { csrComplaints } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const { onUpdateCsrComplaints, onGetCsrComplaints } = this.props;\n const csrComplaint = this.state.csrComplaint;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: csrComplaints.length, // replace later with size(csrComplaints),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n // Ensure csrComplaints is an array and has data\n\n return (\n \n
    \n \n All Appointments List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n

    \n Note: This page will show all Complaints within the selected date range.\n

    \n \n
    \n \n this.handleDateChange(date, 'startDate')}\n className=\"form-control\"\n dateFormat=\"d MMM yyyy\"\n />\n
    \n \n \n
    \n \n this.handleDateChange(date, 'endDate')}\n className=\"form-control\"\n dateFormat=\"d MMM yyyy\"\n />\n
    \n \n
    \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n \n \n \n Lab Details: \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state.lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n \n Patient Details: \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state\n .patient_phone\n );\n this.setState({\n btnText1: \"Copied\",\n });\n }}\n >\n {this.state.btnText1}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n \n {!!isEdit\n ? \"Edit Appointment\"\n : \"Add Quality Certificate\"}\n \n \n {\n const updateCsrComplaints = {\n id: csrComplaint.id,\n appointment_requested_at:\n values.appointment_requested_at,\n appointment_option:\n values.appointment_option,\n comments: values.comments,\n staff: this.state.user_id,\n };\n\n // update PaymentStatus\n onUpdateCsrComplaints(\n updateCsrComplaints\n );\n setTimeout(() => {\n onGetCsrComplaints(\n this.state.user_id, \n this.state.startDate.toISOString().split('T')[0], \n this.state.endDate.toISOString().split('T')[0]\n );\n }, 1000);\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n {this.state\n .appointment_option ==\n \"Cancel\" &&\n csrComplaint.status ===\n \"Confirmed\" &&\n csrComplaint.payment_method ===\n \"Cash\" &&\n csrComplaint.payment_status ===\n \"Paid\" ? (\n

    \n \n Alert: The appointment\n is confirmed, and the\n cash has been received\n by the lab. Before\n canceling the\n appointment, please make\n sure to confirm the\n refund payment with the\n patient.\n \n

    \n ) : null}\n {(csrComplaint.status ===\n \"Pending\" ||\n csrComplaint.status ===\n \"Confirmed\") &&\n (csrComplaint.payment_status ===\n \"Not Paid\" ||\n csrComplaint.payment_status ===\n \"Allocate\" ||\n csrComplaint.payment_status ===\n \"Paid\") ? (\n
    \n \n Select\n \n \n this.setState({\n appointment_option:\n e.target.value,\n })\n }\n value={\n this.state\n .appointment_option\n }\n className=\"form-select\"\n >\n \n \n \n \n
    \n ) : csrComplaint.status ===\n \"Confirmed\" &&\n csrComplaint.payment_method ===\n \"Cash\" &&\n csrComplaint.payment_status ===\n \"Paid\" ? (\n
    \n {/*

    Note: The appointment is confirmed, and the cash has been received by the lab. Before canceling the appointment, please make sure to confirm the refund payment with the patient.

    */}\n\n \n Select\n \n \n this.setState({\n appointment_option:\n e.target.value,\n })\n }\n value={\n this.state\n .appointment_option\n }\n className=\"form-select\"\n >\n \n \n \n Appointment\n Cancellation Request\n \n \n
    \n ) : (\n
    \n \n Select\n \n \n this.setState({\n appointment_option:\n e.target.value,\n })\n }\n value={\n this.state\n .appointment_option\n }\n className=\"form-select\"\n >\n {/* */}\n \n {/* */}\n \n
    \n )}\n {/* payments out pending clearence field */}\n {this.state\n .appointment_option ==\n \"Change\" ? (\n
    \n \n {\n this.setState({\n csrComplaint: {\n id: csrComplaint.id,\n appointment_requested_at:\n e.target.value,\n },\n });\n }}\n />\n
    \n ) : null}\n\n {this.state\n .appointment_option ==\n \"Cancel\" ? (\n
    \n \n \n this.setState({\n comments:\n e.target.value,\n })\n }\n />\n \n
    \n ) : null}\n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\ncsrComplaints.propTypes = {\n match: PropTypes.object,\n csrComplaints: PropTypes.array,\n className: PropTypes.any,\n onGetCsrComplaints: PropTypes.func,\n onUpdateCsrComplaints: PropTypes.func,\n};\n\nconst mapStateToProps = ({ csrcomplaints }) => ({\n csrComplaints: csrcomplaints.csrComplaints,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n // onGetCsrComplaints: id => dispatch(getCsrComplaints(id)),\n onGetCsrComplaints: (id, startDate, endDate) => dispatch(getCsrComplaints(id, startDate, endDate)),\n onUpdateCsrComplaints: csrComplaint =>\n dispatch(updateCsrComplaints(csrComplaint)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(csrComplaints));\n","import {\n GET_CSR_COMPLAINTS,\n GET_CSR_COMPLAINTS_FAIL,\n GET_CSR_COMPLAINTS_SUCCESS,\n UPDATE_CSR_COMPLAINTS,\n UPDATE_CSR_COMPLAINTS_SUCCESS,\n UPDATE_CSR_COMPLAINTS_FAIL,\n} from \"./actionTypes\";\n\n\n// ----------- Handled Complaints APIs actions -----------------\n// export const getCsrComplaints = id => ({\n// type: GET_CSR_COMPLAINTS,\n// payload: id,\n// });\nexport const getCsrComplaints = (id, startDate, endDate) => {\n // Log the payload to the console\n // console.log(\"action dataa....\", { id, startDate, endDate });\n return {\n type: GET_CSR_COMPLAINTS,\n payload: { id, startDate, endDate },\n };\n};\n\nexport const getCsrComplaintsSuccess = csrComplaints => {\n // console.log(\"CSR Complaints Success:\", csrComplaints); // Log the data received in success\n return {\n type: GET_CSR_COMPLAINTS_SUCCESS,\n payload: csrComplaints,\n };\n};\n\nexport const getCsrComplaintsFail = error => {\n // console.log(\"CSR Complaints Error:\", error); // Log the error received in failure\n return {\n type: GET_CSR_COMPLAINTS_FAIL,\n payload: error,\n };\n};\n\nexport const updateCsrComplaints = csrComplaints => ({\n type: UPDATE_CSR_COMPLAINTS,\n payload: csrComplaints,\n});\n\nexport const updateCsrComplaintsSuccess = csrComplaints => ({\n type: UPDATE_CSR_COMPLAINTS_SUCCESS,\n payload: csrComplaints,\n});\n\nexport const updateCsrComplaintsFail = error => ({\n type: UPDATE_CSR_COMPLAINTS_FAIL,\n payload: error,\n});\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter } from \"react-router-dom\";\nimport BootstrapTable from 'react-bootstrap-table-next';\nimport ToolkitProvider from \"react-bootstrap-table2-toolkit\";\nimport { Card, CardBody, Col, Container, Row, Alert } from \"reactstrap\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\n// Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\n// Import actions\nimport { getTestsInAppointment ,deleteTestsInAppointment} from \"store/invoices/actions\";\nimport \"assets/scss/table.scss\";\nimport { FaTrash } from \"react-icons/fa\"; // Import delete icon from react-icons\n\nclass ReduceTests extends Component {\n constructor(props) {\n super(props);\n this.state = {\n feedbackMessage: '',\n deleteModal: false,\n testsinappointments:[],\n feedbackListColumns: [\n {\n dataField: \"test_name\",\n text: \"Test Name\",\n sort: true,\n formatter: (cell, offeredTest) => {\n return (\n
    \n this.onClickDelete(offeredTest)}\n />\n {offeredTest.test_name}\n
    \n );\n },\n headerAlign: 'center',\n align: 'left',\n } \n \n ],\n };\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n \n };\n\n\n componentDidMount() {\n const { onGetInvoiceDetail } = this.props;\n const userId = this.props.match.params.id;\n \n if (userId) {\n this.setState({ user_id: userId }); // Store it in state for future use\n onGetInvoiceDetail(userId);\n } else {\n console.error(\"ID is not available in match params\");\n }\n }\n \n \n filterData() {\n const { testsinappointments } = this.props;\n\n // Check if testsinappointments is an array\n if (!Array.isArray(testsinappointments)) {\n console.error(\"testsinappointments is not an array:\", testsinappointments);\n return []; // Return an empty array or handle as needed\n }\n\n return testsinappointments.filter(item => {\n // Your filter logic here\n return true; // Example: replace with actual filtering condition\n });\n }\n\n onClickDelete = (testsinappointments) => {\n this.setState({ testsinappointments: testsinappointments }, () => {\n console.log(\"State updated with testsinappointments:\", this.state.testsinappointments);\n this.toggleDeleteModal(); // Open the delete modal\n });\n };\n\n handleDeleteTests = () => {\n const { onDeleteTestsInAppointment, onGetInvoiceDetail } = this.props;\n const { testsinappointments } = this.state;\n if (testsinappointments.id !== undefined) {\n onDeleteTestsInAppointment(testsinappointments);\n setTimeout(() => {\n onGetInvoiceDetail(this.state.user_id);\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n \n \n render() {\n const filteredData = this.filterData();\n const { deleteModal } = this.state;\n const defaultSorted = [{ dataField: \"id\", order: \"desc\" }];\n const { feedbackMessage, errorMessage } = this.state;\n\n return (\n \n this.setState({ deleteModal: false })}\n />\n
    \n \n Edit Appointment | LabHazir\n \n \n \n \n \n \n \n \n \n {feedbackMessage && (\n
    \n {feedbackMessage}\n
    \n )}\n {errorMessage && (\n \n {errorMessage}\n \n )}\n \n
    \n \n {toolkitprops => (\n \n \n \n
    \n \n
    \n \n
    \n
    \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nReduceTests.propTypes = {\n onDeleteTestsInAppointment: PropTypes.func,\n onGetInvoiceDetail: PropTypes.func.isRequired,\n testsinappointments: PropTypes.array.isRequired,\n match: PropTypes.shape({\n params: PropTypes.shape({\n id: PropTypes.string.isRequired,\n }).isRequired, \n }).isRequired,\n history: PropTypes.shape({\n push: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nconst mapStateToProps = state => ({\n testsinappointments: state.invoices.testsinappointments, \n});\n\nconst mapDispatchToProps = (dispatch) => ({\n onGetInvoiceDetail: (id) => dispatch(getTestsInAppointment(id)),\n onDeleteTestsInAppointment: (offeredTest) => {\n console.log(\"Deleting test:\", offeredTest);\n dispatch(deleteTestsInAppointment(offeredTest));\n },\n});\n\n\nexport default connect(mapStateToProps, mapDispatchToProps)(withRouter(ReduceTests));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport moment from 'moment';\n\n\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getNotes,\n addNewNote,\n} from \"store/csr-comments/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\nimport { Tooltip } from \"@material-ui/core\";\n\nclass NotesList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n notes: [],\n note: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n this.toggle = this.toggle.bind(this);\n this.handleNoteClicks =\n this.handleNoteClicks.bind(this);\n }\n\n componentDidMount() {\n const { notes, onGetNotes } = this.props;\n onGetNotes(this.props.match.params.id);\n this.setState({ notes });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleNoteClicks = () => {\n this.setState({\n note: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { notes } = this.props;\n if (\n !isEmpty(notes) &&\n size(prevProps.notes) !== size(notes)\n ) {\n this.setState({ notes: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { notes } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onAddNewNote,\n onGetNotes,\n } = this.props;\n const note = this.state.note;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: notes.length, // replace later with size(notes),\n custom: true,\n };\n const sortedNotes = this.props.notes.sort((a, b) => {\n return new Date(a.added_at) - new Date(b.added_at);\n });\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Comments List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n\n {!isEmpty(sortedNotes) && sortedNotes.map((note, key) => (\n \n \n \n {note.note && (\n
    \n

    \n {note.staff_name}{\" \"}{note.note} at {\" \"} {moment(note.added_at).format(\"DD MMM YYYY, h:mm A\")}\n

    \n
    \n )}\n {note.field_name === \"status\" && note.old_value !== \"Not Paid\" && (\n
    \n

    \n {note.staff_name}{\" \"} changes status of appointment to{\" \"}\n {note.new_value === \"Rescheduled\" && note.payment_status === \"Paid\" ? (\n \n {note.new_value}{\" \"} Invoice status is already{\" \"}\n Paid{\" \"} Rs. {note.amount} {\" \"}\n \n so the sample will be collected{\" \"}\n without amount\n {\" \"}\n at {\" \"}\n {moment(note.added_at).format(\"DD MMM YYYY, h:mm A\")}\n \n ) : (\n \n {note.new_value} at {\" \"}\n {moment(note.added_at).format(\"DD MMM YYYY, h:mm A\")}\n \n )}\n

    \n
    \n )}\n\n {note.field_name == \"appointment_requested_at\" && (\n
    \n

    \n {note.staff_name}{\" \"} changes Appointment Request Time by Patient {moment(note.old_value).format(\"DD MMM YYYY, h:mm A\")} to {moment(note.new_value).format(\"DD MMM YYYY, h:mm A\")} at {\" \"} {moment(note.added_at).format(\"DD MMM YYYY, h:mm A\")}\n

    \n
    \n )}\n {note.field_name === \"collection_status\" && (\n
    \n

    \n {note.staff_name} changes collection status to {note.new_value}{\" \"}\n {note.amount ? (\n \n Amount is {\" \"} Rs. {note.amount}\n ) : null} at {moment(note.added_at).format(\"DD MMM YYYY, h:mm A\")}\n

    \n
    \n )}\n\n {note.field_name == \"assigned_to\" && (\n
    \n

    \n {note.staff_name}{\" \"} assigned appointment to sample collector {note.collector_name} at {\" \"} {moment(note.added_at).format(\"DD MMM YYYY, h:mm A\")}\n

    \n
    \n )}\n {note.old_value == \"Not Paid\" && (\n
    \n

    \n {note.staff_name}{\" \"} changes payment status to {note.new_value} at {\" \"} {moment(note.added_at).format(\"DD MMM YYYY, h:mm A\")}\n

    \n
    \n )}\n
    \n
    \n \n ))}\n {\n {\n const newNote = {\n note:\n values.note,\n appointment_id:\n this.props.match.params.id,\n };\n\n // save new Note\n onAddNewNote(\n newNote,\n this.state.user_id\n );\n setTimeout(() => {\n this.setState({\n note: \"\",\n });\n }, 1000);\n setTimeout(() => {\n onGetNotes(\n this.props.match.params.id\n );\n }, 2000);\n }\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n
    \n \n \n this.setState({\n note:\n e.target.value,\n })\n }\n />\n \n
    \n \n
    \n \n \n
    \n \n \n \n \n \n
    \n \n
    \n
    \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nNotesList.propTypes = {\n match: PropTypes.object,\n notes: PropTypes.array,\n className: PropTypes.any,\n onGetNotes: PropTypes.func,\n onAddNewNote: PropTypes.func,\n};\n\nconst mapStateToProps = ({ notes }) => ({\n notes: notes.notes,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetNotes: id => dispatch(getNotes(id)),\n onAddNewNote: (note, id) =>\n dispatch(addNewNote(note, id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(NotesList));\n","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { any } from \"prop-types\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Alert,\n Card,\n CardBody,\n Col,\n Table,\n Container,\n Input,\n Label,\n Modal,\n Row,\n Button,\n ModalBody,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\nimport { isEmpty, map } from \"lodash\";\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n//Import Breadcrumb\nimport \"assets/scss/table.scss\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { getActivityLogMarketer } from \"store/activtylogmarketer/actions\";\n\nclass ActivityLogMarketer extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n activitylogmarketer: [],\n activitylogmarketer: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n componentDidMount() {\n const { match, onGetActivityLogMarketer } = this.props;\n const id = match.params.id; // Extracting ID from URL\n onGetActivityLogMarketer(id);\n}\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { activitylogmarketer } = this.props;\n const { onGetActivityLogMarketer } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: activitylogmarketer ? activitylogmarketer.length : 0,\n custom: true,\n};\n\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Activity Log | Lab Hazir - Dashboard\n \n \n \n \n {/* Render Breadcrumbs */}\n \n \n {!isEmpty(this.props.activitylogmarketer) &&\n this.props.activitylogmarketer.map((activitylogmarketer, key) => (\n \n \n
    \n {(activitylogmarketer.actions === \"Updated\") && (\n
    \n
    \n {\" \"}\n {activitylogmarketer.field_name} {activitylogmarketer.test_name} {activitylogmarketer.lab_name} Changed from {activitylogmarketer.old_value} to {activitylogmarketer.new_value}\n
    \n Start Date: {new Date(activitylogmarketer.start_date_by_labhazir).toLocaleDateString(\"en-US\")} to End Date: {new Date(activitylogmarketer.end_date_by_labhazir).toLocaleDateString(\"en-US\")} on {new Date(activitylogmarketer.created_at).toLocaleDateString(\"en-US\")} at {new Date(activitylogmarketer.created_at).toLocaleTimeString(\"en-US\")}.\n
    \n
    \n )}\n
    \n \n \n ))}\n \n\n {isEmpty(this.props.activitylogmarketer) && (\n \n \n
    \n
    No activity log exists.....
    \n
    \n \n
    \n )}\n
    \n
    \n
    \n
    \n
    \n );\n }\n}\n\nActivityLogMarketer.propTypes = {\n match: PropTypes.object, \n activitylogmarketer: PropTypes.array,\n className: PropTypes.any,\n onGetActivityLogMarketer: PropTypes.func,\n history: any,\n success: PropTypes.any,\n error: PropTypes.any,\n};\nconst mapStateToProps = ({ activitylogmarketer }) => ({\n activitylogmarketer: activitylogmarketer.activitylogmarketer,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetActivityLogMarketer: id => dispatch(getActivityLogMarketer(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(ActivityLogMarketer));\n","import {\n GET_ACTIVITY_LOG_MARKETER,\n GET_ACTIVITY_LOG_MARKETER_FAIL,\n GET_ACTIVITY_LOG_MARKETER_SUCCESS,\n GET_LAB_ACTIVITY_LOG_MARKETER,\n GET_LAB_ACTIVITY_LOG_MARKETER_SUCCESS,\n GET_LAB_ACTIVITY_LOG_MARKETER_FAIL\n} from \"./actionTypes\";\n\n// ----------- Pathologist list APIs actions -----------------\nexport const getActivityLogMarketer = id => ({\n type: GET_ACTIVITY_LOG_MARKETER,\n payload: id,\n});\n\nexport const getActivityLogMarketerSuccess = activitylogmarketer => ({\n type: GET_ACTIVITY_LOG_MARKETER_SUCCESS,\n payload: activitylogmarketer,\n});\n\nexport const getActivityLogMarketerFail = error => ({\n type: GET_ACTIVITY_LOG_MARKETER_FAIL,\n payload: error,\n});\n\nexport const getLabActivityLogMarketer = id => ({\n type: GET_LAB_ACTIVITY_LOG_MARKETER,\n payload: id,\n});\n\nexport const getLabActivityLogMarketerSuccess = activitylogmarketer => ({\n type: GET_LAB_ACTIVITY_LOG_MARKETER_SUCCESS,\n payload: activitylogmarketer,\n});\n\nexport const getLabActivityLogMarketerFail = error => ({\n type: GET_LAB_ACTIVITY_LOG_MARKETER_FAIL,\n payload: error,\n});\n\n\n\n","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { any } from \"prop-types\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Alert,\n Card,\n CardBody,\n Col,\n Table,\n Container,\n Input,\n Label,\n Modal,\n Row,\n Button,\n ModalBody,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\nimport { isEmpty, map } from \"lodash\";\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n//Import Breadcrumb\nimport \"assets/scss/table.scss\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { getLabActivityLogMarketer } from \"store/activtylogmarketer/actions\";\n\nclass ActivityLogMarketer extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n activitylogmarketer: [],\n activitylogmarketer: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n componentDidMount() {\n const { match, onGetActivityLogMarketer } = this.props;\n const id = match.params.id; // Extracting ID from URL\n onGetActivityLogMarketer(id);\n}\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { activitylogmarketer } = this.props;\n const { onGetActivityLogMarketer } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: activitylogmarketer ? activitylogmarketer.length : 0,\n custom: true,\n};\n\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Activity Log | Lab Hazir - Dashboard\n \n \n \n \n {/* Render Breadcrumbs */}\n \n \n {!isEmpty(this.props.activitylogmarketer) &&\n this.props.activitylogmarketer.map((activitylogmarketer, key) => (\n \n \n
    \n {(activitylogmarketer.actions === \"Updated\") && (\n
    \n
    \n {\" \"}\n {activitylogmarketer.field_name} {activitylogmarketer.test_name} {activitylogmarketer.lab_name} Changed from {activitylogmarketer.old_value} to {activitylogmarketer.new_value}\n
    \n Start Date: {new Date(activitylogmarketer.start_date_by_labhazir).toLocaleDateString(\"en-US\")} to End Date: {new Date(activitylogmarketer.end_date_by_labhazir).toLocaleDateString(\"en-US\")} on {new Date(activitylogmarketer.created_at).toLocaleDateString(\"en-US\")} at {new Date(activitylogmarketer.created_at).toLocaleTimeString(\"en-US\")}.\n
    \n
    \n )}\n
    \n \n \n ))}\n \n\n {isEmpty(this.props.activitylogmarketer) && (\n \n \n
    \n
    No activity log exists.....
    \n
    \n \n
    \n )}\n
    \n
    \n
    \n
    \n
    \n );\n }\n}\n\nActivityLogMarketer.propTypes = {\n match: PropTypes.object, \n activitylogmarketer: PropTypes.array,\n className: PropTypes.any,\n onGetActivityLogMarketer: PropTypes.func,\n history: any,\n success: PropTypes.any,\n error: PropTypes.any,\n};\nconst mapStateToProps = ({ activitylogmarketer }) => ({\n activitylogmarketer: activitylogmarketer.activitylogmarketer,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetActivityLogMarketer: id => dispatch(getLabActivityLogMarketer(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(ActivityLogMarketer));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport moment from 'moment';\n\n\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getNotesComplaint,\n addNewNoteComplaint,\n} from \"store/csr-comments/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\nimport { Tooltip } from \"@material-ui/core\";\n\nclass NotesList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n notes: [],\n note: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n this.toggle = this.toggle.bind(this);\n this.handleNoteClicks =\n this.handleNoteClicks.bind(this);\n }\n\n componentDidMount() {\n const { notes, ongetNotesComplaint } = this.props;\n ongetNotesComplaint(this.props.match.params.id);\n this.setState({ notes });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleNoteClicks = () => {\n this.setState({\n note: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { notes } = this.props;\n if (\n !isEmpty(notes) &&\n size(prevProps.notes) !== size(notes)\n ) {\n this.setState({ notes: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { notes } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onaddNewNoteComplaint,\n ongetNotesComplaint,\n } = this.props;\n const note = this.state.note;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: notes.length, // replace later with size(notes),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n This is Internal Labhazir | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {!isEmpty(this.props.notes) &&\n this.props.notes.map((note, key) => (\n \n \n \n {note.note && note.field_name === \"status\" && note.old_value !== \"Not Paid\" ? (\n
    \n

    \n {note.staff_name} Forwarded the Complain: {\" \"}{note.note} at {\" \"} {moment(note.added_at).format(\"DD MMM YYYY, h:mm A\")}\n

    \n
    \n
    \n

    \n {note.staff_name} changes status of complain to {note.new_value} at {moment(note.added_at).format(\"DD MMM YYYY, h:mm A\")}\n

    \n
    \n ) : (!note.note && note.field_name === \"status\" && note.old_value !== \"Not Paid\") ? (\n
    \n

    \n {note.staff_name} changes status of appointment to {note.new_value} at {moment(note.added_at).format(\"DD MMM YYYY, h:mm A\")}\n

    \n
    \n ) : (note.note && note.field_name !== \"status\" && note.old_value !== \"Not Paid\") ? (\n
    \n

    \n {note.staff_name} {note.note} at {moment(note.added_at).format(\"DD MMM YYYY, h:mm A\")}\n

    \n
    \n ) : null}\n\n\n {/* {note.note &&(\n
    \n

    \n {note.staff_name}{\" \"}{note.note} at {\" \"} {new Date(note.added_at).toLocaleString(\"en-US\")}\n

    \n
    \n )}\n {note.field_name == \"status\" && note.old_value != \"Not Paid\" &&(\n
    \n

    \n {note.staff_name}{\" \"} changes status of appointment to {note.new_value} at {\" \"} {new Date(note.added_at).toLocaleString(\"en-US\")}\n

    \n
    \n )} */}\n {note.field_name == \"collection_status\" &&(\n
    \n

    \n {note.staff_name}{\" \"} changes collection status to {note.new_value} at {\" \"} {new Date(note.added_at).toLocaleString(\"en-US\")}\n

    \n
    \n )}\n {note.field_name == \"assigned_to\" &&(\n
    \n

    \n {note.staff_name}{\" \"} assigned appointment to sample collector {note.collector_name} at {\" \"} {new Date(note.added_at).toLocaleString(\"en-US\")}\n

    \n
    \n )}\n {note.old_value == \"Not Paid\" &&(\n
    \n

    \n {note.staff_name}{\" \"} changes payment status to {note.new_value} at {\" \"} {new Date(note.added_at).toLocaleString(\"en-US\")}\n

    \n
    \n )}\n
    \n
    \n \n ))}\n {\n {\n const newNote = {\n note:\n values.note,\n complaint_id:\n this.props.match.params.id,\n };\n\n // save new Note\n onaddNewNoteComplaint(\n newNote,\n this.state.user_id\n );\n setTimeout(() => {\n this.setState({\n note: \"\",\n });\n }, 1000);\n setTimeout(() => {\n ongetNotesComplaint(\n this.props.match.params.id\n );\n }, 2000);\n }\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n
    \n \n \n this.setState({\n note:\n e.target.value,\n })\n }\n />\n \n
    \n \n
    \n \n \n
    \n \n \n \n \n \n
    \n \n
    \n
    \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nNotesList.propTypes = {\n match: PropTypes.object,\n notes: PropTypes.array,\n className: PropTypes.any,\n ongetNotesComplaint: PropTypes.func,\n onaddNewNoteComplaint: PropTypes.func,\n};\n\nconst mapStateToProps = ({ notes }) => ({\n notes: notes.notes,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n ongetNotesComplaint: id => dispatch(getNotesComplaint(id)),\n onaddNewNoteComplaint: (note, id) =>\n dispatch(addNewNoteComplaint(note, id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(NotesList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getMsgs,\n addNewMsg,\n} from \"store/chat-box/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass MsgsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n msgs: [],\n msg: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n this.toggle = this.toggle.bind(this);\n this.handleMsgClicks =\n this.handleMsgClicks.bind(this);\n }\n\n componentDidMount() {\n const { msgs, onGetMsgs } = this.props;\n onGetMsgs(this.props.match.params.id);\n this.setState({ msgs });\n console.log(\"helllloooo\",this.state.msgs)\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleMsgClicks = () => {\n this.setState({\n msg: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { msgs } = this.props;\n if (\n !isEmpty(msgs) &&\n size(prevProps.msgs) !== size(msgs)\n ) {\n this.setState({ msgs: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { msgs } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onAddNewMsg,\n onGetMsgs,\n } = this.props;\n const msg = this.state.msg;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: msgs.length, // replace later with size(msgs),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Comments List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {!isEmpty(this.props.msgs) &&\n this.props.msgs.map((msg, key) => (\n \n \n \n {msg.chat &&(\n
    \n

    \n {msg.name}{\" \"}{msg.chat} at {\" \"} {new Date(msg.added_at).toLocaleString(\"en-US\")}\n

    \n
    \n )}\n {msg.field_name == \"request_status\" &&(\n
    \n

    \n {msg.name}{\" \"} changes advertisement status to {msg.new_value} at {\" \"} {new Date(msg.added_at).toLocaleString(\"en-US\")}.\n

    \n
    \n )}\n {msg.actions == \"Added\" &&(\n
    \n

    \n {msg.name}{\" \"} created Payment In Form for Advertisement at {\" \"} {new Date(msg.added_at).toLocaleString(\"en-US\")}.\n

    \n
    \n )}\n {msg.new_value == \"Cleared\" &&(\n
    \n

    \n {msg.name}{\" \"} Changed status of Advertisement payment to {msg.new_value} at {\" \"} {new Date(msg.added_at).toLocaleString(\"en-US\")}. Advertisement is Live now.\n

    \n
    \n )}\n {msg.new_value == \"Bounced\" &&(\n
    \n

    \n {msg.name}{\" \"} Changed status of Advertisement payment to {msg.new_value} at {\" \"} {new Date(msg.added_at).toLocaleString(\"en-US\")}.Advertisement is not live yet.\n

    \n
    \n )}\n \n
    \n
    \n \n ))}\n {\n {\n const newMsg = {\n msg:\n values.msg,\n advertisement_id:\n this.props.match.params.id,\n };\n\n // save new Msg\n onAddNewMsg(\n newMsg,\n this.state.user_id\n );\n setTimeout(() => {\n this.setState({\n msg: \"\",\n });\n }, 1000);\n setTimeout(() => {\n onGetMsgs(\n this.props.match.params.id\n );\n }, 2000);\n }\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n
    \n \n \n this.setState({\n msg:\n e.target.value,\n })\n }\n />\n \n
    \n \n
    \n \n \n
    \n \n \n \n
    \n \n
    \n
    \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nMsgsList.propTypes = {\n match: PropTypes.object,\n msgs: PropTypes.array,\n className: PropTypes.any,\n onGetMsgs: PropTypes.func,\n onAddNewMsg: PropTypes.func,\n};\n\nconst mapStateToProps = ({ msgs }) => ({\n msgs: msgs.msgs,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetMsgs: id => dispatch(getMsgs(id)),\n onAddNewMsg: (msg, id) =>\n dispatch(addNewMsg(msg, id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(MsgsList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Tooltip } from \"@material-ui/core\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalBody,\n Input,\n ModalHeader,\n} from \"reactstrap\";\nimport filterFactory,{textFilter} from \"react-bootstrap-table2-filter\";\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport { getAssignedAudits, updateAssignedAudits } from \"store/auditor/actions\";\nimport * as Yup from \"yup\";\nimport \"assets/scss/table.scss\";\n\nclass AssignedAudits extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n assignedAudits: [],\n assignedAudit: \"\",\n auditReport: \"\",\n audit_status: \"\",\n comment: \"\",\n id: \"\",\n btnText: \"Copy\",\n auditModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n assignedAuditColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, assignedAudit) => <>{assignedAudit.id},\n },\n {\n dataField: \"lab_name\",\n text: \"Lab name\",\n sort: true,\n formatter: (cellContent, assignedAudit) => (\n <>\n \n this.openPatientModal(e, assignedAudit)}\n onMouseEnter={e => this.openPatientModal(e, assignedAudit)}\n onPointerLeave={this.handleMouseExit()}\n >\n {assignedAudit.lab_name}\n \n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"generated_at\",\n text: \"Generated at\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n \n {new Date(audit.generated_at).toLocaleString(\"en-US\")}\n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"assigned_at\",\n text: \"Assigned since\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n \n {new Date().getDate() - new Date(audit.assigned_at).getDate()} days\n\n {/* {new Date(audit.assigned_at).toLocaleString(\"en-US\")} */}\n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"data\",\n text: \"id\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, audit) => (\n <>\n \n this.onClickAuditedEvent(e, audit.id)}\n >\n \n \n \n \n \n \n ),\n },\n ],\n };\n // this.toggle = this.toggle.bind(this);\n this.onClickAuditedEvent = this.onClickAuditedEvent.bind(this);\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n lab_address: arg.lab_address,\n lab_city: arg.lab_city,\n lab_phone: arg.lab_phone,\n lab_email: arg.lab_email,\n });\n };\n handleMouseExit = () => {\n this.setState({\n PatientModal: false,\n isHovered: false,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n toggleHandleModal = () => {\n this.setState(prevState => ({\n auditModal: !prevState.auditModal,\n }));\n };\n\n onClickAuditedEvent = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.setState({ auditModal: true });\n };\n\n // handleAPICall = () => {\n // const { onUpdateAssignedAudits, onGetAssignedAudits } = this.props;\n\n // onUpdateAssignedAudits(this.state.id);\n // setTimeout(() => {\n // onGetAssignedAudits(this.state.user_id);\n // }, 1000);\n\n // this.setState({ auditModal: false });\n // };\n\n componentDidMount() {\n const { onGetAssignedAudits } = this.props;\n onGetAssignedAudits(this.state.user_id);\n this.setState({ assignedAudits: this.props.assignedAudits });\n }\n\n // toggle() {\n // this.setState(prevState => ({\n // modal: !prevState.modal,\n // }));\n // }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { assignedAudits } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: assignedAudits.length, // replace later with size(assignedAudits),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n {/* this.setState({ auditModal: false })}\n /> */}\n\n
    \n \n Assigned Audits | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n \n\n \n \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state\n .lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n
    \n \n this.setState({\n auditModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n \n {\n const {\n onUpdateAssignedAudits,\n onGetAssignedAudits,\n } = this.props;\n\n const data = {\n id: this.state.id,\n auditReport: values.auditReport,\n audit_status: values.audit_status,\n comment: values.comment,\n };\n\n console.log(data);\n\n onUpdateAssignedAudits(data);\n setTimeout(() => {\n onGetAssignedAudits(\n this.state.user_id\n );\n }, 1000);\n\n this.setState({\n auditModal: false,\n });\n setTimeout(() => {\n onGetAssignedAudits(\n this.state.user_id\n );\n }, 100);\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n
    \n

    Note: an email will be sent to the lab with your comments and report.

    \n
    \n \n
    \n \n {\n this.setState({\n auditReport:\n e.target.files[0],\n });\n }}\n className={\n \"form-control\" +\n (errors.auditReport &&\n touched.auditReport\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n
    \n \n {\n this.setState({\n audit_status:\n e.target.value,\n });\n }}\n multiple={false}\n >\n \n \n \n \n \n
    \n
    \n \n \n this.setState({\n comment:\n e.target.value,\n })\n }\n />\n \n
    \n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n {/* \n \n \n \n */}\n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nAssignedAudits.propTypes = {\n match: PropTypes.object,\n assignedAudits: PropTypes.array,\n className: PropTypes.any,\n onGetAssignedAudits: PropTypes.func,\n onUpdateAssignedAudits: PropTypes.func,\n};\n\nconst mapStateToProps = ({ audits }) => ({\n assignedAudits: audits.assignedAudits,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetAssignedAudits: id => dispatch(getAssignedAudits(id)),\n onUpdateAssignedAudits: data => dispatch(updateAssignedAudits(data)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(AssignedAudits));","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { any } from \"prop-types\";\nimport { Tooltip } from \"@material-ui/core\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Alert,\n Card,\n CardBody,\n Col,\n Container,\n Input,\n Label,\n Modal,\n Row,\n Button,\n ModalBody,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n//Import Breadcrumb\nimport \"assets/scss/table.scss\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { getLabAudits, UpdateAuditStatus } from \"store/auditor/actions\";\n\nclass LabAudits extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n labAudits: [],\n id: \"\",\n assignedTo: \"\",\n LabAudits: \"\",\n auditModal: false,\n reason_of_reaudit:\"\",\n labAudit: \"\",\n audit_status:\"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n LabAuditListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, labAudit) => <>{labAudit.id},\n },\n // {\n // dataField: \"lab_name\",\n // text: \"Lab Name\",\n // sort: true,\n // },\n // {\n // dataField: \"generated_at\",\n // text: \"Generated at\",\n // sort: true,\n // formatter: (cellContent, audit) => (\n // <>\n // \n // {new Date(audit.generated_at).toLocaleString(\"en-US\")}\n // \n // \n // ),\n // },\n {\n dataField: \"assigned_at\",\n text: \"Assigned at\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n {new Date(audit.assigned_at).toLocaleString(\"en-US\")}\n \n ),\n },\n {\n dataField: \"audited_at\",\n text: \"Audited at\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n {new Date(audit.audited_at).toLocaleString(\"en-US\")}\n \n ),\n },\n // {\n // dataField: \"auditor_name\",\n // text: \"Audited by\",\n // sort: true,\n // },\n {\n dataField: \"Report\",\n text: \"Report\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n \n View Report\n \n \n ),\n },\n {\n dataField: \"audit_status\",\n text: \"Result\",\n sort: true,\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, audit) => (\n
    \n {audit.audit_status === \"Fail\" && (\n this.onClickAuditedEvent(e,audit)}\n >\n \n Request Reaudit\n \n )}\n \n \n \n
    \n ),\n },\n ],\n \n \n };\n this.onClickAuditedEvent =\n this.onClickAuditedEvent.bind(this);\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { labAudits, onGetLabAudits } = this.props;\n onGetLabAudits(this.state.user_id);\n this.setState({ labAudits });\n }\n onClickAuditedEvent = (e, arg) => {\n console.log(\"audit id is \", arg)\n this.setState({\n audit: {\n id: arg.id,\n reason: arg.reason,\n lab_id:arg.lab_id,\n audit_status: \"Revisit\",\n },\n isEdit: true,\n });\n\n this.setState({ auditModal: true, });\n };\n\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { labAudits, } = this.props;\n const { onGetLabAudits, onUpdateAuditStatus } = this.props;\n const audit = this.state.audit;\n const pageOptions = {\n sizePerPage: 10,\n totalSize: labAudits.length, // replace later with size(labAudits),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Lab Audits | Audit Hazir\n \n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n \n \n
    \n \n this.setState({\n auditModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n \n {\n const Updateauditstatus =\n {\n id: audit.id,\n lab_id: audit.lab_id,\n reason_of_reaudit: values.reason_of_reaudit,\n audit_status: \"Revisit\",\n \n };\n onUpdateAuditStatus(\n Updateauditstatus\n );\n this.setState({\n auditModal: false,\n });\n setTimeout(() => {\n onGetLabAudits(this.state.user_id);\n }, 1000);\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n
    \n \n \n this.setState({\n reason_of_reaudit:\n e.target.value,\n })\n }\n />\n \n
    \n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n {/* \n
    \n \n \n Request Reaudit\n \n
    \n */}\n
    \n \n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nLabAudits.propTypes = {\n match: PropTypes.object,\n labAudits: PropTypes.array,\n className: PropTypes.any,\n onGetLabAudits: PropTypes.func,\n onUpdateAuditStatus: PropTypes.func,\n history: any,\n success: PropTypes.any,\n error: PropTypes.any,\n};\nconst mapStateToProps = ({ audits }) => ({\n labAudits: audits.labAudits,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetLabAudits: id => dispatch(getLabAudits(id)),\n onUpdateAuditStatus: (audit) =>\n dispatch(UpdateAuditStatus(audit)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(LabAudits));\n","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { any } from \"prop-types\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Alert,\n Card,\n CardBody,\n Col,\n Table,\n Container,\n Input,\n Label,\n Modal,\n Row,\n Button,\n ModalBody,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\nimport { isEmpty, map } from \"lodash\";\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n//Import Breadcrumb\nimport \"assets/scss/table.scss\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { getActivityLog, addNewAudit } from \"store/activtylog/actions\";\n\nclass LabAudits extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n activitylog: [],\n activitylog: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n }\n\n componentDidMount() {\n const { activitylog, onGetActivityLog } = this.props;\n console.log(onGetActivityLog(this.state.user_id));\n this.setState({ activitylog });\n }\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { activitylog, } = this.props;\n const { onGetActivityLog } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: activitylog.length, // replace later with size(activitylog),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Activity Log | Lab Hazir - Dashboard\n \n \n \n \n {/* Render Breadcrumbs */}\n \n \n {!isEmpty(this.props.activitylog) &&\n this.props.activitylog.map((activitylog, key) => (\n \n \n
    \n {activitylog.actions === \"Added\" && (\n
    \n {\" \"}\n {activitylog.lab_name} Added {activitylog.test_name} on {new Date(activitylog.created_at).toLocaleDateString(\"en-US\")} at {new Date(activitylog.created_at).toLocaleTimeString(\"en-US\")}.\n
    \n )}\n {(activitylog.actions === \"Updated\") && (\n
    \n {activitylog.field_name === \"discount_by_lab\" || activitylog.field_name === \"Discount_For_All_Tests\" ? (\n
    \n {\" \"}\n {activitylog.lab_name} Changed {activitylog.test_name} {activitylog.field_name} from {activitylog.old_discount_by_lab} to {activitylog.new_discount_by_lab}\n
    \n Start Date: {new Date(activitylog.start_date_by_lab).toLocaleDateString(\"en-US\")} to End Date: {new Date(activitylog.end_date_by_lab).toLocaleDateString(\"en-US\")} on {new Date(activitylog.created_at).toLocaleDateString(\"en-US\")} at {new Date(activitylog.created_at).toLocaleTimeString(\"en-US\")}.\n
    \n ) : (\n
    \n {\" \"}\n {activitylog.lab_name} Changed {activitylog.test_name} {activitylog.field_name} from {activitylog.old_value} to {activitylog.new_value} on {new Date(activitylog.created_at).toLocaleDateString(\"en-US\")} at {new Date(activitylog.created_at).toLocaleTimeString(\"en-US\")}.\n
    \n )}\n
    \n )}\n {activitylog.actions === \"Synchronize\" && (\n
    \n {\" \"}\n {activitylog.lab_name} Synchronizes its main lab tests on {new Date(activitylog.created_at).toLocaleDateString(\"en-US\")} at {new Date(activitylog.created_at).toLocaleTimeString(\"en-US\")}.\n
    \n )}\n
    \n \n \n ))}\n \n\n {isEmpty(this.props.activitylog) && (\n \n \n
    \n
    No activity log exists.....
    \n
    \n \n
    \n )}\n
    \n
    \n \n
    \n
    \n
    \n );\n }\n}\n\nLabAudits.propTypes = {\n match: PropTypes.object,\n activitylog: PropTypes.array,\n className: PropTypes.any,\n onGetActivityLog: PropTypes.func,\n history: any,\n success: PropTypes.any,\n error: PropTypes.any,\n};\nconst mapStateToProps = ({ activitylog }) => ({\n activitylog: activitylog.activitylog,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetActivityLog: id => dispatch(getActivityLog(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(LabAudits));\n","import {\n GET_ACTIVITY_LOG,\n GET_ACTIVITY_LOG_FAIL,\n GET_ACTIVITY_LOG_SUCCESS,\n GET_NOTIFICATION,\n GET_NOTIFICATION_FAIL,\n GET_NOTIFICATION_SUCCESS,\n} from \"./actionTypes\";\n\n// ----------- Pathologist list APIs actions -----------------\nexport const getActivityLog = id => ({\n type: GET_ACTIVITY_LOG,\n payload: id,\n});\n\nexport const getActivityLogSuccess = activitylog => ({\n type: GET_ACTIVITY_LOG_SUCCESS,\n payload: activitylog,\n});\n\nexport const getActivityLogFail = error => ({\n type: GET_ACTIVITY_LOG_FAIL,\n payload: error,\n});\n\nexport const getNotification = (id,previousApiCallTime) => ({\n type: GET_NOTIFICATION,\n payload: {id,previousApiCallTime},\n});\n\nexport const getNotificationSuccess = notification => ({\n type: GET_NOTIFICATION_SUCCESS,\n payload: notification,\n});\n\nexport const getNotificationFail = error => ({\n type: GET_NOTIFICATION_FAIL,\n payload: error,\n});\n\n\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\nimport moment from 'moment';\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport { getActivityLogFinance } from \"store/activtylogfinance/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass MsgsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n activitylogfinance: [],\n activitylogfinance: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { activitylogfinance, onGetActivityLogFinance } = this.props;\n onGetActivityLogFinance(this.props.match.params.id);\n this.setState({ activitylogfinance });\n console.log(\"helllloooo\",this.state.activitylogfinance)\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { activitylogfinance } = this.props;\n if (\n !isEmpty(activitylogfinance) &&\n size(prevProps.activitylogfinance) !== size(activitylogfinance)\n ) {\n this.setState({ activitylogfinance: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { activitylogfinance } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onGetActivityLogFinance,\n } = this.props;\n const pageOptions = {\n sizePerPage: 10,\n totalSize: activitylogfinance.length, // replace later with size(activitylogfinance),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Comments List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {!isEmpty(this.props.activitylogfinance) &&\n this.props.activitylogfinance.map((activitylogfinance, key) => (\n \n \n \n {activitylogfinance.actions === \"Added\" && activitylogfinance.type !== \"Bank Transfer Detail\" && (\n
    \n {`${activitylogfinance.name}`} Created a {\" \"}\n {activitylogfinance.type} form for{\" \"}\n \n {activitylogfinance.payment_for}{\" \"}\n {activitylogfinance.payment_for ===\n \"Advertisement\"\n ? activitylogfinance.adv_lab_name\n : activitylogfinance.lab_name ||\n activitylogfinance.donor_name ||\n activitylogfinance.b2b_name}\n {\" \"}\n {/* on{\" \"}\n {moment(activitylogfinance.payment_at).format(\"DD MMM YYYY, h:mm A\")}\n {\" \"} */}\n at{\" \"}\n {moment(activitylogfinance.created_at).format(\"DD MMM YYYY, h:mm A\")}{\" \"}\n with ID{\" \"}\n \n {activitylogfinance.payment_in_id ||\n activitylogfinance.payment_out_id}\n {/* // activitylogfinance.btd_id */}\n \n .\n
    \n )}\n {activitylogfinance.actions === \"Added\" && activitylogfinance.type === \"Bank Transfer Detail\" && (\n
    \n {`${activitylogfinance.name}`} Created a {\" \"}\n {activitylogfinance.type} \n {/* form on{\" \"}\n {moment(activitylogfinance.payment_at).format(\"DD MMM YYYY, h:mm A\")}{\" \"} */}\n at{\" \"}\n {moment(activitylogfinance.created_at).format(\"DD MMM YYYY, h:mm A\")}{\" \"}\n with ID{\" \"}\n \n {activitylogfinance.btd_id}\n \n .\n
    \n )}\n\n {activitylogfinance.actions === \"Updated\" && activitylogfinance.type !== \"Bank Transfer Detail\" && (\n
    \n {`${activitylogfinance.name}`} Changed Status of{\" \"}\n {activitylogfinance.type} with ID{\" \"}\n {activitylogfinance.payment_in_id ||\n activitylogfinance.payment_out_id}{\" \"}\n for {activitylogfinance.payment_for}{\" \"}\n \n {\" \"}\n {activitylogfinance.payment_for ===\n \"Advertisement\"\n ? activitylogfinance.adv_lab_name\n : activitylogfinance.payment_for === \"Donor\"\n ? activitylogfinance.donor_name\n : activitylogfinance.lab_name ||\n activitylogfinance.b2b_name}\n {\" \"}\n from {activitylogfinance.old_value} to{\" \"}\n {activitylogfinance.new_value} \n {/* on{\" \"}\n {moment(activitylogfinance.created_at).format(\"DD MMM YYYY, h:mm A\")}{\" \"} */}\n {\" \"}\n at{\" \"}\n {moment(activitylogfinance.created_at).format(\"DD MMM YYYY, h:mm A\")}\n\n .\n
    \n )}\n {activitylogfinance.actions === \"Updated\" && activitylogfinance.type === \"Bank Transfer Detail\" && (\n
    \n {`${activitylogfinance.name}`} Changed Status of{\" \"}\n {activitylogfinance.type} with ID{\" \"}\n {activitylogfinance.btd_id}{\" \"}\n from {activitylogfinance.old_value} to{\" \"}\n {activitylogfinance.new_value}\n {\" \"}\n {/* {moment(activitylogfinance.created_at).format(\"DD MMM YYYY, h:mm A\")}{\" \"} */}\n at{\" \"}\n {moment(activitylogfinance.created_at).format(\"DD MMM YYYY, h:mm A\")}\n .\n
    \n )}\n\n {activitylogfinance.actions == \"Synchronize\" && (\n
    \n {activitylogfinance.lab_name} Synchronizes its\n main lab tests on{\" \"}\n {moment(activitylogfinance.created_at).format(\"DD MMM YYYY, h:mm A\")}{\" \"}\n at{\" \"}\n {moment(activitylogfinance.created_at).format(\"DD MMM YYYY, h:mm A\")}\n .\n
    \n )}\n \n \n
    \n
    \n \n ))}\n {isEmpty(this.props.activitylogfinance) && (\n \n \n
    \n
    \n No Comments exists.....\n
    \n
    \n \n
    \n )}\n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nMsgsList.propTypes = {\n match: PropTypes.object,\n activitylogfinance: PropTypes.array,\n className: PropTypes.any,\n onGetActivityLogFinance: PropTypes.func,\n};\n\nconst mapStateToProps = ({ activitylogfinance }) => ({\n activitylogfinance: activitylogfinance.activitylogfinance,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetActivityLogFinance: id => dispatch(getActivityLogFinance(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(MsgsList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport axios from \"axios\";\nimport { useParams } from 'react-router-dom'\nimport { withRouter, Link } from \"react-router-dom\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n// import BootstrapSwitchButton from 'bootstrap-switch-button-react'\nimport {\n FormGroup,\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\nimport {\n // getUnits,\n getALabCorporate,\n} from \"store/corporatedata/actions\";\nimport {\n // getUnits,\n updateCorporateStatus,\n} from \"store/offered-tests/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass OfferedTestsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n selectedStatus: null,\n selectedName: null,\n cemployeeDatas: [],\n tests: [],\n labProfiles: [],\n // units: [],\n offeredTest: \"\",\n type: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n offeredTestListColumns: [\n {\n text: \"id\",\n dataField: \"corporate_id\",\n sort: true,\n formatter: (cellContent, offeredTest) => <>{offeredTest.corporate_id},\n },\n {\n dataField: \"name\",\n text: \"Corporate Name\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.name}\n \n \n ),\n },\n {\n dataField: \"offered_tests\",\n text: \"Test List\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n {offeredTest.offered_tests}\n\n \n ),\n },\n {\n dataField: \"payment_terms\",\n text: \"Payment Terms\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.payment_terms}\n \n \n ),\n },\n {\n dataField: \"shared_percentage\",\n text: \"Referral Fee\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.shared_percentage ? `${(offeredTest.shared_percentage * 100).toFixed(0)}%` : '0%'}\n \n \n ),\n },\n \n {\n dataField: \"status\",\n text: \"Status\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.status}\n \n \n ),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, offeredTest) => (\n
    \n {offeredTest.status == \"Accept\" ? (\n this.handleOfferedTestClicks(offeredTest.id)}\n onClick={() => this.handleSaveButtonClick(offeredTest.id)}\n\n // disabled={offeredTest.length == 0}\n >\n {/* */}\n Cancel Request\n \n ) : null}\n \n
    \n ),\n },\n ],\n };\n this.handleOfferedTestClick = this.handleOfferedTestClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleOfferedTestClicks = this.handleOfferedTestClicks.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n\n componentDidMount() {\n const { cemployeeDatas, onGetALabCorporate } = this.props;\n console.log(onGetALabCorporate(this.state.user_id));\n this.setState({ cemployeeDatas });\n this.setInitialDropdownValue();\n }\n \n \n \n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n // Select\n handleSelectGroup = selectedGroup => {\n this.setState({ offeredTest: selectedGroup.value });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n test_details: arg.test_details,\n });\n };\n // handleMouseExit = () => {\n // this.setState({\n // PatientModal: false,\n // isHovered: false,\n\n // });\n // };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n handleOfferedTestClicks = () => {\n this.setState({ offeredTest: \"\", isEdit: false, });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { cemployeeDatas } = this.props;\n if (\n !isEmpty(cemployeeDatas) &&\n size(prevProps.cemployeeDatas) !== size(cemployeeDatas)\n ) {\n this.setState({ cemployeeDatas: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = cemployeeDatas => {\n this.setState({ cemployeeDatas: cemployeeDatas });\n this.setState({ deleteModal: true });\n };\n\n handleOfferedTestClick = (e, arg) => {\n this.setState({\n offeredTest: {\n id: arg.id,\n status: arg.status,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n // handleSaveButtonClick = (complaintId) => {\n // // Your other logic...\n \n // const { offeredTest } = this.state;\n \n // const updateCorporateStatus = {\n // id: complaintId,\n // status: \"Pending\",\n // shared_percentage: this.state.shared_percentage\n // };\n \n // // Dispatch the action\n // this.props.onUpdateCorporateStatus(updateCorporateStatus);\n \n // // Optionally, you can handle the asynchronous behavior here\n // // For example, use a promise or callback function\n // setTimeout(() => {\n // this.props.onGetALabCorporate(\n // this.state.user_id\n // );\n // }, 1000);\n \n // // Close the modal or perform other actions as needed\n // };\n handleSaveButtonClick = (complaintId) => {\n // Dispatch an action to update the status in Redux\n const { onUpdateCorporateStatus, onGetALabCorporate} = this.props;\n onUpdateCorporateStatus({ id: complaintId, status: \"Cencel Request\", shared_percentage: 0 });\n\n setTimeout(() => {\n onGetALabCorporate(this.state.user_id);\n }, 1000);\n };\n\n setInitialDropdownValue = () => {\n const { pathname } = this.props.history.location;\n let selectedValue = '';\n\n if (pathname.includes('/corporates-List')) {\n selectedValue = 'Pending Corporate';\n } else if (pathname.includes('/accepted-corporates-List')) {\n selectedValue = 'Accepted Corporate';\n }\n\n this.setState({ selectedValue });\n };\n handleSelectChange = (event) => {\n const selectedValue = event.target.value;\n this.setState({ selectedValue });\n // Perform navigation based on the selected value\n if (selectedValue === 'Pending Corporate') {\n this.props.history.push('/corporates-List');\n }\n if (selectedValue === 'Accepted Corporate') {\n this.props.history.push('/accepted-corporates-List');\n }\n}\nhandleNameChange = (e) => {\n this.setState({ selectedName: e.target.value });\n};\n\nhandleStatusChange = (e) => {\n this.setState({ selectedStatus: e.target.value });\n};\n render() {\n const { SearchBar } = Search;\n\n const { cemployeeDatas } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const { onUpdateCorporateStatus, onGetALabCorporate, } =\n this.props;\n const offeredTest = this.state.offeredTest;\n const uniqueCorporateName = [...new Set(cemployeeDatas.map(data => data.name))];\n\n // Generate NameOptions for the dropdown\n const corporateStatusOptions = uniqueCorporateStatus.map((EmployeeStatus, index) => (\n \n ));\n\n // Combine the filters\n const filteredData = cemployeeDatas.filter(item => {\n const { selectedName, selectedStatus } = this.state;\n const nameFilter = !selectedName || item.name === selectedName;\n const statusFilter = !selectedStatus || item.corporate_status === selectedStatus;\n return nameFilter && statusFilter;\n });\n const pageOptions = {\n sizePerPage: 10000,\n totalSize: cemployeeDatas.length, // replace later with size(cemployeeDatas),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Corporate Offered Tests List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n {/*
    \n \n Note: If referral fee of any offered test is not entered by Labhazir, all such tests will not be online.\n \n \n
    */}\n \n \n
    \n
    \n \n \n \n \n \n
    \n
    \n \n\n
    \n \n \n \n \n
    \n \n \n \n {corporateNameOptions}\n \n
    \n \n \n
    \n \n \n \n {corporateStatusOptions}\n \n
    \n
    \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n \n \n \n \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n \n
    \n
    \n
    \n
    \n \n\n \n \n {!!isEdit\n ? \"Edit Offered Test\"\n : \"Add Offered Test\"}\n \n \n {\n console.log(\"Form submitted with values:\", values);\n setSubmitting(false);\n\n const updateCorporateStatus =\n {\n id: offeredTest.id,\n status:\n values.status,\n };\n\n // update PaymentStatus\n onUpdateCorporateStatus(\n updateCorporateStatus\n );\n setTimeout(() => {\n onGetALabCorporate(\n this.state.user_id\n );\n }, 1000);\n this.toggle();\n }}\n >\n {({ errors, status, touched, isValid }) => (\n
    \n \n \n \n Status\n \n *\n \n \n \n this.setState({ status: e.target.value })}\n defaultValue={this.state.status}\n className=\"form-select\"\n >\n {/* options */}\n \n \n \n \n \n \n\n \n \n
    \n this.handleSaveButtonClick()}\n>\n Save\n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nOfferedTestsList.propTypes = {\n match: PropTypes.object,\n tests: PropTypes.array,\n labProfiles: PropTypes.array,\n // units: PropTypes.array,\n history: PropTypes.any,\n cemployeeDatas: PropTypes.array,\n className: PropTypes.any,\n onGetALabCorporate: PropTypes.func,\n onUpdateCorporateStatus: PropTypes.func,\n};\n\nconst mapStateToProps = ({ cemployeeData }) => ({\n cemployeeDatas: cemployeeData.cemployeeDatas,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetALabCorporate: id => dispatch(getALabCorporate(id)),\n onUpdateCorporateStatus: offeredTest => dispatch(updateCorporateStatus(offeredTest)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(OfferedTestsList));","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalBody,\n ModalHeader,\n} from \"reactstrap\";\nimport filterFactory, {textFilter} from \"react-bootstrap-table2-filter\";\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport \"assets/scss/table.scss\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { getAuditorsCompletedAudits } from \"store/auditor/actions\";\n\nclass CompletedAudits extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n completedAudits: [],\n id: \"\",\n assignedTo: \"\",\n CompletedAudits: \"\",\n btnText: \"Copy\",\n completedAudit: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n completedAuditListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, completedAudit) => <>{completedAudit.id},\n },\n {\n dataField: \"lab_name\",\n text: \"Lab name\",\n sort: true,\n formatter: (cellContent, completedAudit) => (\n <>\n \n this.openPatientModal(e, completedAudit)}\n onMouseEnter={e =>this.openPatientModal(e, completedAudit)}\n onPointerLeave={this.handleMouseExit()}\n >\n {completedAudit.lab_name}\n \n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"generated_at\",\n text: \"Generated at\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n \n {new Date(audit.generated_at).toLocaleString(\"en-US\")}\n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"assigned_at\",\n text: \"Assigned at\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n {new Date(audit.assigned_at).toLocaleString(\"en-US\")}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"audited_at\",\n text: \"Audited at\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n {new Date(audit.audited_at).toLocaleString(\"en-US\")}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"Report\",\n text: \"Report\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n \n View Report\n \n \n ),\n },\n {\n dataField: \"audit_status\",\n text: \"Result\",\n sort: true,\n },\n {\n dataField: \"comment\",\n text: \"Comment\",\n sort: true,\n },\n {\n dataField: \"data\",\n text: \"id\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, audit) => (\n <>\n \n \n \n ),\n }\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.toggleMessageModal.bind(this);\n // this.handleApprovedEvent = this.handleApprovedEvent.bind(this);\n }\n\n componentDidMount() {\n const { completedAudits, onGetAuditorsCompletedAudits } = this.props;\n onGetAuditorsCompletedAudits(this.state.user_id);\n this.setState({ completedAudits });\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n lab_address: arg.lab_address,\n lab_city: arg.lab_city,\n lab_phone: arg.lab_phone,\n lab_email: arg.lab_email,\n });\n };\n handleMouseExit = () => {\n this.setState({\n PatientModal: false,\n isHovered: false,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleApprovedEvent = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggle();\n };\n\n toggleMessageModal = () => {\n this.setState(prevState => ({\n messageModal: !prevState.messageModal,\n }));\n };\n\n openMessageModal = (e, arg) => {\n this.setState({ messageModal: true, message: arg.message });\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { completedAudits } = this.props;\n const data = this.state.data;\n const { onAssignAudit, onGetAuditorsCompletedAudits } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: completedAudits.length, // replace later with size(completedAudits),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Completed Audits | Audit Hazir\n \n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n \n \n \n \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state\n .lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n \n
    \n
    \n \n this.setState({\n messageModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n

    \n Audit Message\n

    \n

    \n {this.state.message}\n

    \n
    \n
    \n
    \n
    \n
    \n \n {/* \n \n \n \n */}\n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nCompletedAudits.propTypes = {\n match: PropTypes.object,\n completedAudits: PropTypes.array,\n className: PropTypes.any,\n onGetAuditorsCompletedAudits: PropTypes.func,\n onAssignAudit: PropTypes.func,\n};\nconst mapStateToProps = ({ audits }) => ({\n completedAudits: audits.completedAudits,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onAssignAudit: data => dispatch(assignAudit(data)),\n onGetAuditorsCompletedAudits: id => dispatch(getAuditorsCompletedAudits(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(CompletedAudits));\n","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport moment from 'moment';\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalBody,\n ModalHeader,\n} from \"reactstrap\";\n\nimport filterFactory, {textFilter} from \"react-bootstrap-table2-filter\";\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { getPendingAudits, assignAudit } from \"store/auditor-admin/actions\";\n\nimport { getAuditorList } from \"store/staff/actions\";\n\nimport { getAuditorCentralList,\n getAuditorSouthList,\n getAuditorNorthList,\n } from \"store/auditor-territory-list/actions\";\n\nimport \"assets/scss/table.scss\";\n\nclass PendingAudits extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n pendingAudits: [],\n // Office\n auditorCentralTerritoryList: [],\n auditorSouthTerritoryList: [],\n auditorNorthTerritoryList: [],\n id: \"\",\n btnText: \"Copy\",\n assignedTo: \"\",\n PendingAudits: \"\",\n pendingAudit: \"\",\n auditorList: [],\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n pendingAuditListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, pendingAudit) => <>{pendingAudit.id},\n },\n {\n dataField: \"lab_name\",\n text: \"Lab name\",\n sort: true,\n style:{ width: \"300px\" , textAlign: \"left\"},\n formatter: (cellContent, pendingAudit) => (\n <>\n \n this.openPatientModal(e, pendingAudit)}\n onMouseEnter={e => this.openPatientModal(e, pendingAudit)}\n onPointerLeave={this.handleMouseExit()}\n >\n {pendingAudit.lab_name}\n \n \n \n ),filter: textFilter(),\n },\n // {\n // dataField: \"lab_phone\",\n // text: \"Phone\",\n // sort: true,\n // },\n // {\n // dataField: \"lab_email\",\n // text: \"email\",\n // sort: true,\n // },\n // {\n // dataField: \"lab_city\",\n // text: \"City\",\n // sort: true,\n // },\n // {\n // dataField: \"lab_address\",\n // text: \"Address\",\n // sort: true,\n // },\n {\n dataField: \"office\",\n text: \"Office\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"generated_at\",\n text: \"Generated at\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n \n {moment(audit.generated_at).format(\"DD MMM YYYY, h:mm A\")}\n\n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"generated_at\",\n text: \"Pending Since\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n \n\n {new Date().getDate() - new Date(audit.generated_at).getDate()} days\n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"data\",\n text: \"id\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, pendingAudit) => (\n <>\n this.handleApprovedEvent(e, pendingAudit.id)}\n >\n Assign\n {\" \"}\n \n ),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.toggleMessageModal.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n this.handleApprovedEvent = this.handleApprovedEvent.bind(this);\n }\n\n componentDidMount() {\n const { pendingAudits, onGetPendingAudits } = this.props;\n onGetPendingAudits();\n this.setState({ pendingAudits });\n\n const { auditorList, onGetAuditorList } = this.props;\n onGetAuditorList();\n this.setState({ auditorList });\n\n // auditor central list\n const { auditorCentralTerritoryList, onGetAuditorCentralList } = this.props;\n onGetAuditorCentralList();\n this.setState({ auditorCentralTerritoryList });\n // auditor south list\n const { auditorSouthTerritoryList, onGetAuditorSouthList } = this.props;\n onGetAuditorSouthList();\n this.setState({ auditorSouthTerritoryList });\n // auditor north list\n const { auditorNorthTerritoryList, onGetAuditorNorthList } = this.props;\n onGetAuditorNorthList();\n this.setState({ auditorNorthTerritoryList });\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n lab_address: arg.lab_address,\n lab_city: arg.lab_city,\n lab_phone: arg.lab_phone,\n lab_email: arg.lab_email,\n });\n };\n handleMouseExit = () => {\n this.setState({\n PatientModal: false,\n isHovered: false,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n toggleMessageModal = () => {\n this.setState(prevState => ({\n messageModal: !prevState.messageModal,\n }));\n };\n\n openMessageModal = (e, arg) => {\n this.setState({ messageModal: true, message: arg.message });\n };\n\n handleApprovedEvent = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggle();\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { pendingAudits } = this.props;\n const data = this.state.data;\n const { onAssignAudit, onGetPendingAudits } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: pendingAudits.length, // replace later with size(pendingAudits),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n const auditorList = [];\n for (let i = 0; i < this.props.auditorList.length; i++) {\n auditorList.push({\n label: this.props.auditorList[i].name,\n value: this.props.auditorList[i].id,\n });\n }\n // Central Office\n const auditorCentralTerritoryList = [];\n\n for (let i = 0; i < this.props.auditorCentralTerritoryList.length; i++) {\n auditorCentralTerritoryList.push({\n label: this.props.auditorCentralTerritoryList[i].name,\n value: this.props.auditorCentralTerritoryList[i].id,\n });\n \n }\n\n // South Office\n const auditorSouthTerritoryList = [];\n\n for (let i = 0; i < this.props.auditorSouthTerritoryList.length; i++) {\n auditorSouthTerritoryList.push({\n label: this.props.auditorSouthTerritoryList[i].name,\n value: this.props.auditorSouthTerritoryList[i].id,\n });\n \n }\n // North Office\n const auditorNorthTerritoryList = [];\n\n for (let i = 0; i < this.props.auditorNorthTerritoryList.length; i++) {\n auditorNorthTerritoryList.push({\n label: this.props.auditorNorthTerritoryList[i].name,\n value: this.props.auditorNorthTerritoryList[i].id,\n });\n \n }\n\n return (\n \n
    \n \n Pending Audits | Audit Hazir\n \n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n \n \n \n \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state\n .lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n
    \n \n this.setState({\n modal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n \n {\n const data = {\n id: this.state.id,\n assignedTo: values.assignedTo,\n };\n\n // Assign complaint\n onAssignAudit(data);\n\n // Calling to update list record\n setTimeout(() => {\n onGetPendingAudits();\n }, 1000);\n\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n
    \n \n {\n this.setState({\n pendingAudit: {\n \n office: e.target.value,\n \n },\n });\n }}\n multiple={false}\n value={\n this.state.office\n }\n >\n \n \n \n \n \n \n
    \n \n {this.state.pendingAudit.office ==\"Central Office\"\n &&(\n\n
    \n \n {\n this.setState({\n assignedTo:\n selectedGroup.value,\n });\n }}\n className={\n \"defautSelectParent\" +\n (errors.assignedTo\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor:\n errors.assignedTo\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={auditorCentralTerritoryList}\n placeholder=\"Select Auditor...\"\n />\n \n
    \n )} \n {/* South Office */}\n {this.state.pendingAudit.office ==\"South Office\"\n &&(\n\n
    \n \n {\n this.setState({\n assignedTo:\n selectedGroup.value,\n });\n }}\n className={\n \"defautSelectParent\" +\n (errors.assignedTo\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor:\n errors.assignedTo\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={auditorSouthTerritoryList}\n placeholder=\"Select Auditor...\"\n />\n \n
    \n )} \n {/* North Office */}\n {this.state.pendingAudit.office ==\"North Office\"\n &&(\n\n
    \n \n {\n this.setState({\n assignedTo:\n selectedGroup.value,\n });\n }}\n className={\n \"defautSelectParent\" +\n (errors.assignedTo\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor:\n errors.assignedTo\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={auditorNorthTerritoryList}\n placeholder=\"Select Auditor...\"\n />\n \n
    \n )} \n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n\n \n
    \n
    \n \n this.setState({\n messageModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n

    \n Audit Message\n

    \n

    \n {this.state.message}\n

    \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n {/* \n \n \n \n */}\n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nPendingAudits.propTypes = {\n match: PropTypes.object,\n pendingAudits: PropTypes.array,\n auditorList: PropTypes.array,\n className: PropTypes.any,\n onGetPendingAudits: PropTypes.func,\n onGetAuditorList: PropTypes.func,\n onAssignAudit: PropTypes.func,\n auditorCentralTerritoryList: PropTypes.array,\n auditorSouthTerritoryList: PropTypes.array,\n auditorNorthTerritoryList: PropTypes.array,\n onGetAuditorCentralList: PropTypes.func,\n onGetAuditorSouthList: PropTypes.func,\n onGetAuditorNorthList: PropTypes.func,\n};\nconst mapStateToProps = ({ auditorAdmin, staff , auditorTerritoryList}) => ({\n pendingAudits: auditorAdmin.pendingAudits,\n auditorList: staff.auditorList,\n auditorCentralTerritoryList: auditorTerritoryList.auditorCentralTerritoryList,\n auditorSouthTerritoryList: auditorTerritoryList.auditorSouthTerritoryList,\n auditorNorthTerritoryList: auditorTerritoryList.auditorNorthTerritoryList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onAssignAudit: data => dispatch(assignAudit(data)),\n onGetPendingAudits: () => dispatch(getPendingAudits()),\n onGetAuditorList: () => dispatch(getAuditorList()),\n onGetAuditorCentralList: () => dispatch(getAuditorCentralList()),\n onGetAuditorSouthList: () => dispatch(getAuditorSouthList()),\n onGetAuditorNorthList: () => dispatch(getAuditorNorthList()),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PendingAudits));\n","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport moment from 'moment';\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalBody,\n Input,\n Button,\n ModalHeader,\n} from \"reactstrap\";\nimport filterFactory, {textFilter} from \"react-bootstrap-table2-filter\";\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getInProcessAudits,\n assignAudit,\n // getAuditorList,\n} from \"store/auditor-admin/actions\";\n\nimport { getAuditorCentralList,\n getAuditorSouthList,\n getAuditorNorthList,\n } from \"store/auditor-territory-list/actions\";\n\nimport { getAuditorList } from \"store/staff/actions\";\nimport \"assets/scss/table.scss\";\n\nclass InProcessAudits extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n inProcessAudits: [],\n // Office\n auditorCentralTerritoryList: [],\n auditorSouthTerritoryList: [],\n auditorNorthTerritoryList: [],\n id: \"\",\n btnText: \"Copy\",\n auditorName: \"\",\n assignedTo: \"\",\n message: \"\",\n InProcessAudits: \"\",\n inProcessAudit: \"\",\n auditorList: [],\n messageModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n inProcessAuditListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, inProcessAudit) => <>{inProcessAudit.id},\n },\n {\n dataField: \"lab_name\",\n text: \"Lab name\",\n sort: true,\n style:{ width: \"300px\", textAlign: \"left\"},\n formatter: (cellContent, inProcessAudit) => (\n <>\n \n this.openPatientModal(e, inProcessAudit)}\n onMouseEnter={e =>this.openPatientModal(e, inProcessAudit)}\n onPointerLeave={this.handleMouseExit()}\n >\n {inProcessAudit.lab_name}\n \n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"office\",\n text: \"Office\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"generated_at\",\n text: \"Generated at\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n \n {moment(audit.generated_at).format(\"DD MMM YYYY, h:mm A\")}\n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"assigned_at\",\n text: \"Assigned at\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n {new Date(audit.assigned_at).toLocaleString(\"en-US\")}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"auditor_name\",\n text: \"Assigned to\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"generated_at\",\n text: \"Pending Since\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n \n\n {new Date().getDate() - new Date(audit.assigned_at).getDate()} days\n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"data\",\n text: \"id\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, inProcessAudit) => (\n <>\n this.handleApprovedEvent(e, inProcessAudit)}\n >\n Reassign\n {\" \"}\n \n \n \n ),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.toggleMessageModal.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n this.handleApprovedEvent = this.handleApprovedEvent.bind(this);\n }\n\n componentDidMount() {\n const { inProcessAudits, onGetInProcessAudits } = this.props;\n onGetInProcessAudits();\n this.setState({ inProcessAudits });\n\n const { auditorList, onGetAuditorList } = this.props;\n onGetAuditorList();\n this.setState({ auditorList });\n\n\n // auditor central list\n const { auditorCentralTerritoryList, onGetAuditorCentralList } = this.props;\n onGetAuditorCentralList();\n this.setState({ auditorCentralTerritoryList });\n // auditor south list\n const { auditorSouthTerritoryList, onGetAuditorSouthList } = this.props;\n onGetAuditorSouthList();\n this.setState({ auditorSouthTerritoryList });\n // auditor north list\n const { auditorNorthTerritoryList, onGetAuditorNorthList } = this.props;\n onGetAuditorNorthList();\n this.setState({ auditorNorthTerritoryList });\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n lab_address: arg.lab_address,\n lab_city: arg.lab_city,\n lab_phone: arg.lab_phone,\n lab_email: arg.lab_email,\n });\n };\n handleMouseExit = () => {\n this.setState({\n PatientModal: false,\n isHovered: false,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n toggleMessageModal = () => {\n this.setState(prevState => ({\n messageModal: !prevState.messageModal,\n }));\n };\n\n openMessageModal = (e, arg) => {\n this.setState({ messageModal: true, message: arg.message });\n };\n\n handleApprovedEvent = (e, arg) => {\n this.setState({\n id: arg.id,\n auditorName: arg.auditor_name,\n assignedTo: arg.assigned_to,\n });\n\n this.toggle();\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { inProcessAudits } = this.props;\n const data = this.state.data;\n const { onAssignAudit, onGetInProcessAudits } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: inProcessAudits.length, // replace later with size(inProcessAudits),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n const auditorList = [];\n for (let i = 0; i < this.props.auditorList.length; i++) {\n auditorList.push({\n label: this.props.auditorList[i].name,\n value: this.props.auditorList[i].id,\n });\n }\n\n // Central Office\n const auditorCentralTerritoryList = [];\n\n for (let i = 0; i < this.props.auditorCentralTerritoryList.length; i++) {\n auditorCentralTerritoryList.push({\n label: this.props.auditorCentralTerritoryList[i].name,\n value: this.props.auditorCentralTerritoryList[i].id,\n });\n \n }\n \n // South Office\n const auditorSouthTerritoryList = [];\n \n for (let i = 0; i < this.props.auditorSouthTerritoryList.length; i++) {\n auditorSouthTerritoryList.push({\n label: this.props.auditorSouthTerritoryList[i].name,\n value: this.props.auditorSouthTerritoryList[i].id,\n });\n \n }\n // North Office\n const auditorNorthTerritoryList = [];\n \n for (let i = 0; i < this.props.auditorNorthTerritoryList.length; i++) {\n auditorNorthTerritoryList.push({\n label: this.props.auditorNorthTerritoryList[i].name,\n value: this.props.auditorNorthTerritoryList[i].id,\n });\n }\n\n return (\n \n
    \n \n InProcess Audits | Audit Hazir\n \n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n \n \n \n \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state\n .lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n
    \n \n this.setState({\n modal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n \n {\n const data = {\n id: this.state.id,\n assignedTo: values.assignedTo,\n };\n\n // Assign complaint\n onAssignAudit(data);\n\n // Calling to update list record\n setTimeout(() => {\n onGetInProcessAudits();\n }, 1000);\n\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n
    \n \n {\n this.setState({\n inProcessAudit: {\n \n office: e.target.value,\n \n },\n });\n }}\n multiple={false}\n value={\n this.state.office\n }\n >\n \n \n \n \n \n \n
    \n \n {this.state.inProcessAudit.office ==\"Central Office\"\n &&(\n\n
    \n \n {\n this.setState({\n assignedTo:\n selectedGroup.value,\n });\n }}\n className={\n \"defautSelectParent\" +\n (errors.assignedTo\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor:\n errors.assignedTo\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={auditorCentralTerritoryList}\n placeholder=\"Select Auditor...\"\n />\n \n
    \n )} \n {/* South Office */}\n {this.state.inProcessAudit.office ==\"South Office\"\n &&(\n\n
    \n \n {\n this.setState({\n assignedTo:\n selectedGroup.value,\n });\n }}\n className={\n \"defautSelectParent\" +\n (errors.assignedTo\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor:\n errors.assignedTo\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={auditorSouthTerritoryList}\n placeholder=\"Select Auditor...\"\n />\n \n
    \n )} \n {/* North Office */}\n {this.state.inProcessAudit.office ==\"North Office\"\n &&(\n\n
    \n \n {\n this.setState({\n assignedTo:\n selectedGroup.value,\n });\n }}\n className={\n \"defautSelectParent\" +\n (errors.assignedTo\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor:\n errors.assignedTo\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={auditorNorthTerritoryList}\n placeholder=\"Select Auditor...\"\n />\n \n
    \n )} \n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n\n \n
    \n
    \n \n this.setState({\n messageModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n

    \n Audit Message\n

    \n

    \n {this.state.message}\n

    \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n {/* \n \n \n \n */}\n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nInProcessAudits.propTypes = {\n match: PropTypes.object,\n inProcessAudits: PropTypes.array,\n auditorList: PropTypes.array,\n className: PropTypes.any,\n onGetInProcessAudits: PropTypes.func,\n onGetAuditorList: PropTypes.func,\n onAssignAudit: PropTypes.func,\n auditorCentralTerritoryList: PropTypes.array,\n auditorSouthTerritoryList: PropTypes.array,\n auditorNorthTerritoryList: PropTypes.array,\n onGetAuditorCentralList: PropTypes.func,\n onGetAuditorSouthList: PropTypes.func,\n onGetAuditorNorthList: PropTypes.func,\n};\nconst mapStateToProps = ({ auditorAdmin, staff, auditorTerritoryList }) => ({\n inProcessAudits: auditorAdmin.inProcessAudits,\n auditorList: staff.auditorList,\n auditorCentralTerritoryList: auditorTerritoryList.auditorCentralTerritoryList,\n auditorSouthTerritoryList: auditorTerritoryList.auditorSouthTerritoryList,\n auditorNorthTerritoryList: auditorTerritoryList.auditorNorthTerritoryList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onAssignAudit: data => dispatch(assignAudit(data)),\n onGetInProcessAudits: () => dispatch(getInProcessAudits()),\n onGetAuditorList: () => dispatch(getAuditorList()),\n onGetAuditorCentralList: () => dispatch(getAuditorCentralList()),\n onGetAuditorSouthList: () => dispatch(getAuditorSouthList()),\n onGetAuditorNorthList: () => dispatch(getAuditorNorthList()),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(InProcessAudits));\n","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport moment from 'moment';\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalBody,\nModalHeader,\n} from \"reactstrap\";\nimport filterFactory, {textFilter} from \"react-bootstrap-table2-filter\";\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport \"assets/scss/table.scss\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { getPassedAudits, assignAudit } from \"store/auditor-admin/actions\";\n\nclass PassedAudits extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n passedAudits: [],\n id: \"\",\n assignedTo: \"\",\n PassedAudits: \"\",\n passedAudit: \"\",\n btnText: \"Copy\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n passedAuditListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, passedAudit) => <>{passedAudit.id},\n },\n {\n dataField: \"lab_name\",\n text: \"Lab name\",\n sort: true,\n style:{ width: \"300px\" , textAlign: \"left\"},\n formatter: (cellContent, passedAudit) => (\n <>\n \n this.openPatientModal(e, passedAudit)}\n onMouseEnter={e => this.openPatientModal(e, passedAudit)}\n onPointerLeave={this.handleMouseExit()}\n >\n {passedAudit.lab_name}\n \n \n \n ),filter: textFilter(),\n },\n // {\n // dataField: \"lab_address\",\n // text: \"Lab address\",\n // sort: true,\n // },\n {\n dataField: \"generated_at\",\n text: \"Generated at\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n \n {moment(audit.generated_at).format(\"DD MMM YYYY, h:mm A\")}\n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"assigned_at\",\n text: \"Assigned at\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n {moment(audit.assigned_at).format(\"DD MMM YYYY, h:mm A\")}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"auditor_name\",\n text: \"Assigned to\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"audited_at\",\n text: \"Audited at\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n {moment(audit.audited_at).format(\"DD MMM YYYY, h:mm A\")}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"Report\",\n text: \"Report\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n \n View Report\n \n\n \n ),\n },\n {\n dataField: \"audit_status\",\n text: \"Audit Status\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n {audit.audit_status}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"data\",\n text: \"id\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, audit) => (\n <>\n \n \n \n ),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.toggleMessageModal.bind(this);\n this.handleApprovedEvent = this.handleApprovedEvent.bind(this);\n }\n\n componentDidMount() {\n const { passedAudits, onGetPassedAudits } = this.props;\n onGetPassedAudits();\n this.setState({ passedAudits });\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n lab_address: arg.lab_address,\n lab_city: arg.lab_city,\n lab_phone: arg.lab_phone,\n lab_email: arg.lab_email,\n });\n };\n handleMouseExit = () => {\n this.setState({\n PatientModal: false,\n isHovered: false,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleApprovedEvent = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggle();\n };\n\n toggleMessageModal = () => {\n this.setState(prevState => ({\n messageModal: !prevState.messageModal,\n }));\n };\n\n openMessageModal = (e, arg) => {\n this.setState({ messageModal: true, message: arg.message });\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { passedAudits } = this.props;\n const data = this.state.data;\n const { onAssignAudit, onGetPassedAudits } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: passedAudits.length, // replace later with size(passedAudits),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Passed Audits | Audit Hazir\n \n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n \n \n \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state\n .lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n \n \n
    \n \n
    \n \n
    \n \n
    \n
    \n \n this.setState({\n messageModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n

    \n Audit Message\n

    \n

    \n {this.state.message}\n

    \n
    \n
    \n
    \n
    \n
    \n \n {/* \n \n \n \n */}\n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nPassedAudits.propTypes = {\n match: PropTypes.object,\n passedAudits: PropTypes.array,\n className: PropTypes.any,\n onGetPassedAudits: PropTypes.func,\n onAssignAudit: PropTypes.func,\n};\nconst mapStateToProps = ({ auditorAdmin }) => ({\n passedAudits: auditorAdmin.passedAudits,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onAssignAudit: data => dispatch(assignAudit(data)),\n onGetPassedAudits: () => dispatch(getPassedAudits()),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(PassedAudits));\n","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport moment from 'moment';\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Modal,\n ModalBody,\n Input,\n Button,\n ModalHeader,\n} from \"reactstrap\";\nimport filterFactory,{textFilter} from \"react-bootstrap-table2-filter\";\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getFailedAudits,\n assignAudit,\n // getAuditorList,\n} from \"store/auditor-admin/actions\";\n\nimport { getAuditorList } from \"store/staff/actions\";\nimport \"assets/scss/table.scss\";\n\nclass FailedAudits extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n failedAudits: [],\n id: \"\",\n btnText: \"Copy\",\n auditorName: \"\",\n assignedTo: \"\",\n message: \"\",\n FailedAudits: \"\",\n failedAudit: \"\",\n auditorList: [],\n messageModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n failedAuditListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, failedAudit) => <>{failedAudit.id},\n },\n {\n dataField: \"lab_name\",\n text: \"Lab name\",\n sort: true,\n style:{ width: \"300px\" , textAlign: \"left\"},\n formatter: (cellContent, failedAudit) => (\n <>\n \n this.openPatientModal(e, failedAudit)}\n onMouseEnter={e => this.openPatientModal(e, failedAudit)}\n onPointerLeave={this.handleMouseExit()}\n >\n {failedAudit.lab_name}\n \n \n \n ),filter: textFilter(),\n },\n // {\n // dataField: \"lab_city\",\n // text: \"City\",\n // sort: true,\n // },\n // {\n // dataField: \"lab_address\",\n // text: \"Lab address\",\n // sort: true,\n // },\n {\n dataField: \"generated_at\",\n text: \"Generated at\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n \n {moment(audit.generated_at).format(\"DD MMM YYYY, h:mm A\")}\n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"assigned_at\",\n text: \"Assigned at\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n {moment(audit.assigned_at).format(\"DD MMM YYYY, h:mm A\")}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"audited_at\",\n text: \"Audited at\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n {moment(audit.audited_at).format(\"DD MMM YYYY, h:mm A\")}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"auditor_name\",\n text: \"Assigned to\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"Report\",\n text: \"Report\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n \n View Report\n \n \n ),\n },\n {\n dataField: \"lab_status\",\n text: \"Lab status\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n {audit.is_temporary_blocked == \"Yes\" ? (\n Warning\n ) : (\n --\n )}\n \n ),\n },\n {\n dataField: \"data\",\n text: \"id\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, audit) => (\n <>\n \n \n \n ),\n }\n ],\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { failedAudits, onGetFailedAudits } = this.props;\n onGetFailedAudits();\n this.setState({ failedAudits });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n lab_address: arg.lab_address,\n lab_city: arg.lab_city,\n lab_phone: arg.lab_phone,\n lab_email: arg.lab_email,\n });\n };\n handleMouseExit = () => {\n this.setState({\n PatientModal: false,\n isHovered: false,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { failedAudits } = this.props;\n const data = this.state.data;\n const { onAssignAudit, onGetFailedAudits } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: failedAudits.length, // replace later with size(failedAudits),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n\n return (\n \n
    \n \n Failed Audits | Lab Hazir\n \n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n \n \n \n \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state\n .lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n
    \n \n this.setState({\n modal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n \n {\n const data = {\n id: this.state.id,\n assignedTo: values.assignedTo,\n };\n\n // Assign complaint\n onAssignAudit(data);\n\n // Calling to update list record\n setTimeout(() => {\n onGetFailedAudits();\n }, 1000);\n\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n
    \n \n {\n this.setState({\n assignedTo:\n selectedGroup.value,\n });\n }}\n className={\n \"defautSelectParent\" +\n (errors.assignedTo\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor:\n errors.assignedTo\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={auditorList}\n placeholder=\"Select AuditorList...\"\n />\n \n
    \n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n\n \n
    \n
    \n \n this.setState({\n messageModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n

    \n Audit Message\n

    \n

    \n {this.state.message}\n

    \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n {/* \n \n \n \n */}\n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nFailedAudits.propTypes = {\n match: PropTypes.object,\n failedAudits: PropTypes.array,\n auditorList: PropTypes.array,\n className: PropTypes.any,\n onGetFailedAudits: PropTypes.func,\n onGetAuditorList: PropTypes.func,\n onAssignAudit: PropTypes.func,\n};\nconst mapStateToProps = ({ auditorAdmin, staff }) => ({\n failedAudits: auditorAdmin.failedAudits,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onAssignAudit: data => dispatch(assignAudit(data)),\n onGetFailedAudits: () => dispatch(getFailedAudits()),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(FailedAudits));\n","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n ModalHeader,\n Row,\n Label,\n Modal,\n ModalBody,\n Button,\n Alert\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getLabsAuditList,\n} from \"store/labs-list/actions\";\nimport { AddAllLabsAudit } from \"store/auditor-admin/actions\"; \n\nclass LabsLists extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n labsList: [],\n id: \"\",\n LabsLists: \"\",\n searchType: null,\n btnText: \"Copy\",\n labsList: \"\",\n auditModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n labsListListColumns: [\n\n {\n dataField: \"id\",\n text: \"Lab ID\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.id}\n \n ), filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"name\",\n text: \"Lab Name\",\n sort: true,\n style: { textAlign: 'left' },\n formatter: (cellContent, labsList) => (\n <>\n \n \n {labsList.name}\n \n \n\n\n \n ), filter: textFilter(), \n },\n \n {\n dataField: \"city\",\n text: \"City\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.city}\n \n ), filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"address\",\n text: \"Address\",\n sort: true,\n style: { textAlign: 'left' },\n formatter: (cellContent, labsList) => (\n <>\n {labsList.address}\n \n ), filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"total_audits\",\n text: \"Total Audits\",\n sort: true,\n formatter: (cellContent, labsList) => (\n \n {labsList.total_audits}\n \n ), filter: textFilter(), // Add a text filter for this column\n\n },\n {\n dataField: \"last_audit_status\",\n text: \"Last Audit Status\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.last_audit_status === \"Pass\" ? (\n \n {labsList.last_audit_status}\n \n ) : labsList.last_audit_status === \"Fail\" ? (\n \n {labsList.last_audit_status}\n \n ): labsList.last_audit_status === \"Revisit\" ? (\n \n {labsList.last_audit_status}\n \n ) : (\n --\n )}\n \n ),\n filter: textFilter(),\n }\n ],\n };\n }\n fetchData = () => {\n const { onGetLabsLists } = this.props;\n onGetLabsLists(); // Assuming onGetLabsLists fetches data without userId\n };\n\n componentDidMount() {\n this.fetchData();\n }\n\n componentDidUpdate(prevProps, prevState) {\n // Check if searchType has changed\n if (prevState.searchType !== this.state.searchType) {\n this.fetchData();\n }\n }\n handleEditAllBtnClick = () => {\n const { onAssignAudit, onGetLabsLists } = this.props;\n const data = {\n userId: this.state.user_id,\n };\n this.setState({ showAlert: true });\n onAssignAudit(data)\n setTimeout(() => {\n onGetLabsLists();\n }, 1000);\n setTimeout(() => {\n this.setState({ auditModal: false , showAlert: false});\n }, 2000);\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n lab_address: arg.address,\n lab_city: arg.city,\n lab_phone: arg.landline,\n lab_email: arg.email,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n handleButtonClick = () => {\n this.setState({ auditModal: true });\n }\n\n render() {\n const { SearchBar } = Search;\n const { searchType } = this.state;\n const { labsList } = this.props;\n // Filter data based on selected type\n const filteredStatements = labsList.filter((lab) => {\n if (searchType === 'payable' && lab.current_amount > 0) {\n return true;\n } else if (searchType === 'receivable' && lab.current_amount < 0) {\n return true;\n } else if (!searchType) {\n // For other cases or when no filter is selected, include all labs\n return true;\n }\n return false; // Exclude labs that don't match the conditions\n });\n\n\n\n const data = this.state.data;\n const { onGetLabsLists } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: labsList.length, // replace later with size(labsList),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n return (\n \n
    \n \n Labs List | Lab Hazir\n \n\n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n {/*
    \n
    \n \n \n
    \n
    */}\n \n \n
    \n \n Generate Audit\n \n
    \n \n \n {/* \n
    \n
    \n
    \n \n this.setState({ searchType: e.target.value })}\n >\n \n \n \n \n

    Filter and view the Payable Labs or Receivable Labs

    \n\n
    \n
    \n
    \n */}\n \n
    \n \n \n
    \n \n {/* Modal Component */}\n \n {this.state.showAlert && (\n \n Audit Generated Successfully.\n \n )}\n
    \n
    Generate All Labs Audit
    \n \n this.setState({\n auditModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n \n \n \n

    \n By clicking the "Generate Audit" button below, you will initiate the process to generate audits for all labs where audits have not yet been generated.\n

    \n\n
    \n \n \n \n Generate Audit\n \n \n \n
    \n \n \n \n \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state\n .lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nLabsLists.propTypes = {\n match: PropTypes.object,\n labsList: PropTypes.array,\n className: PropTypes.any,\n onGetLabsLists: PropTypes.func,\n onAssignAudit: PropTypes.func,\n};\nconst mapStateToProps = ({ labsList }) => ({\n labsList: labsList.labsList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onAssignAudit: data => dispatch(AddAllLabsAudit(data)),\n onGetLabsLists: id => dispatch(getLabsAuditList(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(LabsLists));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport moment from 'moment';\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\nimport filterFactory, {textFilter} from \"react-bootstrap-table2-filter\";\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n// import { getAuditor, updateStaff, deleteStaff } from \"store/sample-collectors/actions\";\nimport { getAuditorList, deleteStaff } from \"store/staff/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass AuditorsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n auditorList: [],\n staff: \"\",\n collectorImg: \"\",\n modal: false,\n auditorListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, Auditor) => <>{Auditor.id},\n },\n {\n dataField: \"photo\",\n text: \"Name\",\n sort: true,\n style:{ textAlign: \"left\"},\n formatter: (cellContent, Auditor) => (\n <>\n \n {Auditor.name}\n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"email\",\n text: \"Email\",\n sort: true,\n filter: textFilter(),\n },\n // {\n // dataField: \"cnic\",\n // text: \"CNIC\",\n // sort: true,\n // },\n {\n dataField: \"phone\",\n text: \"Mobile No.\",\n sort: true,\n filter: textFilter(),\n },\n {\n dataField: \"territory_office\",\n text: \"Territory Office\",\n sort: true,\n filter: textFilter(),\n },\n \n\n // {\n // dataField: \"menu\",\n // isDummyField: true,\n // editable: false,\n // text: \"Action\",\n // formatter: (cellContent, Auditor) => (\n //
    \n // \n // this.handleAuditorClick(e, Auditor)}\n // >\n // \n // \n // this.onClickDelete(Auditor)}\n // >\n // \n //
    \n // ),\n // },\n ],\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n this.handleAuditorClick = this.handleAuditorClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleAuditorClicks = this.handleAuditorClicks.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n\n componentDidMount() {\n const { onGetAuditorList } = this.props;\n onGetAuditorList();\n this.setState({ auditorList: this.props.auditorList });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleAuditorClicks = () => {\n this.setState({ Auditor: \"\", collectorImg: \"\", isEdit: false });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { auditorList } = this.props;\n if (\n !isEmpty(auditorList) &&\n size(prevProps.auditorList) !== size(auditorList)\n ) {\n this.setState({ auditorList: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = auditorList => {\n this.setState({ auditorList: auditorList });\n this.setState({ deleteModal: true });\n };\n\n handleDeleteAuditor = () => {\n const { onDeleteStaff, onGetAuditorList } = this.props;\n const { auditorList } = this.state;\n if (auditorList.id !== undefined) {\n onDeleteStaff(auditorList);\n setTimeout(() => {\n onGetAuditorList();\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n\n handleAuditorClick = (e, arg) => {\n console.log(\"arg: \", arg);\n\n this.setState({\n staff: {\n id: arg.id,\n name: arg.name,\n cnic: arg.cnic,\n phone: arg.phone,\n roles: arg.roles,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { auditorList } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const { onGetAuditorList } = this.props;\n const staff = this.state.staff;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: auditorList.length, // replace later with size(AuditorsList),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n this.setState({ deleteModal: false })}\n />\n
    \n \n Auditor List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n \n\n \n \n Edit Auditor\n \n \n {\n if (isEdit) {\n const staffData = {\n id: staff.id,\n name: values.name,\n cnic: values.cnic,\n phone: values.phone,\n roles: values.roles,\n };\n\n // save new Staff\n onUpdateStaff(staffData);\n\n // if (this.props.staff.length != 0) {\n // this.props.history.push(\"/add-\")\n // }\n\n setTimeout(() => {\n onGetAuditorList();\n }, 1000);\n }\n this.toggle();\n }}\n >\n \n \n
    \n \n
    \n {/* \n \n \n \n */}\n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nAuditorsList.propTypes = {\n match: PropTypes.object,\n auditorList: PropTypes.array,\n className: PropTypes.any,\n onGetAuditorList: PropTypes.func,\n onDeleteStaff: PropTypes.func,\n onUpdateStaff: PropTypes.func,\n};\n\nconst mapStateToProps = ({ staff }) => ({\n auditorList: staff.auditorList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetAuditorList: () => dispatch(getAuditorList()),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(AuditorsList));\n","// This optional code is used to register a service worker.\n// register() is not called by default.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on subsequent visits to a page, after all the\n// existing tabs open on the page have been closed, since previously cached\n// resources are updated in the background.\n\n// To learn more about the benefits of this model and instructions on how to\n// opt-in, read https://bit.ly/CRA-PWA\n\nconst isLocalhost = Boolean(\n window.location.hostname === \"localhost\" ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === \"[::1]\" ||\n // 127.0.0.0/8 are considered localhost for IPv4.\n window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n)\n\nexport function register(config) {\n if (process.env.NODE_ENV === \"production\" && \"serviceWorker\" in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(process.env._URL, window.location.href)\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\n return\n }\n\n window.addEventListener(\"load\", () => {\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`\n\n if (isLocalhost) {\n // This is running on localhost. Let's check if a service worker still exists or not.\n checkValidServiceWorker(swUrl, config)\n\n // Add some additional logging to localhost, pointing developers to the\n // service worker/PWA documentation.\n navigator.serviceWorker.ready.then(() => {\n console.log(\n \"This web app is being served cache-first by a service \" +\n \"worker. To learn more, visit https://bit.ly/CRA-PWA\"\n )\n })\n } else {\n // Is not localhost. Just register service worker\n registerValidSW(swUrl, config)\n }\n })\n }\n}\n\nfunction registerValidSW(swUrl, config) {\n navigator.serviceWorker\n .register(swUrl)\n .then(registration => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing\n if (installingWorker == null) {\n return\n }\n installingWorker.onstatechange = () => {\n if (installingWorker.state === \"installed\") {\n if (navigator.serviceWorker.controller) {\n // At this point, the updated precached content has been fetched,\n // but the previous service worker will still serve the older\n // content until all client tabs are closed.\n console.log(\n \"New content is available and will be used when all \" +\n \"tabs for this page are closed. See https://bit.ly/CRA-PWA.\"\n )\n\n // Execute callback\n if (config && config.onUpdate) {\n config.onUpdate(registration)\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n console.log(\"Content is cached for offline use.\")\n\n // Execute callback\n if (config && config.onSuccess) {\n config.onSuccess(registration)\n }\n }\n }\n }\n }\n })\n .catch(error => {\n console.error(\"Error during service worker registration:\", error)\n })\n}\n\nfunction checkValidServiceWorker(swUrl, config) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl, {\n headers: { \"Service-Worker\": \"script\" },\n })\n .then(response => {\n // Ensure service worker exists, and that we really are getting a JS file.\n const contentType = response.headers.get(\"content-type\")\n if (\n response.status === 404 ||\n (contentType != null && contentType.indexOf(\"javascript\") === -1)\n ) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister().then(() => {\n window.location.reload()\n })\n })\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl, config)\n }\n })\n .catch(() => {\n console.log(\n \"No internet connection found. App is running in offline mode.\"\n )\n })\n}\n\nexport function unregister() {\n if (\"serviceWorker\" in navigator) {\n navigator.serviceWorker.ready\n .then(registration => {\n registration.unregister()\n })\n .catch(error => {\n console.error(error.message)\n })\n }\n}\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport Select from \"react-select\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Tooltip } from \"@material-ui/core\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Button,\n Row,\n Modal,\n ModalHeader,\n ModalBody,\n Label,\n Alert\n} from \"reactstrap\";\nimport filterFactory, {textFilter} from \"react-bootstrap-table2-filter\";\nimport paginationFactory, { PaginationProvider, PaginationListStandalone,} from \"react-bootstrap-table2-paginator\";\nimport moment from 'moment';\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getLabsAllAuditList,\n} from \"store/labs-list/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport ConfirmModal from \"components/Common/ConfirmModal\";\nimport { getAuditorCentralList,\n getAuditorSouthList,\n getAuditorNorthList,\n } from \"store/auditor-territory-list/actions\";\nimport { assignAudit } from \"store/auditor-admin/actions\"; \nimport \"assets/scss/table.scss\";\nimport { getAuditorList } from \"store/staff/actions\";\nimport { addNewAudit } from \"store/auditor/actions\";\nimport { register } from \"serviceWorker\";\nclass PendingAudits extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n labaudit: [],\n labaudit: \"\",\n auditorCentralTerritoryList: [],\n auditorSouthTerritoryList: [],\n auditorNorthTerritoryList: [],\n id: \"\",\n btnText: \"Copy\",\n assignedTo: \"\",\n reason_of_reaudit:\"\",\n labaudit: \"\",\n frequency: \"\",\n register_at: \"\",\n auditorList: [],\n auditModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n pendingAuditListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, labaudit) => <>{labaudit.id},\n },\n {\n dataField: \"lab_name\",\n text: \"Lab name\",\n sort: true,\n style:{ width: \"300px\" , textAlign: \"left\"},\n formatter: (cellContent, labaudit) => (\n <>\n \n this.openPatientModal(e, labaudit)}\n onPointerLeave={this.handleMouseExit()}\n >\n {labaudit.lab_name}\n \n \n \n ),filter: textFilter(),\n },\n \n {\n dataField: \"generated_at\",\n text: \"Generated at\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n \n {moment(audit.generated_at).format(\"DD MMM YYYY, h:mm A\")}\n \n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"assigned_at\",\n text: \"Assigned at\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n {audit.assigned_at ? (\n {moment(audit.assigned_at).format(\"DD MMM YYYY, h:mm A\")}\n ) : (\n --\n )}\n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"auditor_name\",\n text: \"Assigned to\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n {audit.auditor_name ? (\n {audit.auditor_name}\n ) : (\n --\n )}\n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"Report\",\n text: \"Report\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n {audit.audit_report ? (\n \n View Report\n \n ) : (\n --\n )}\n \n ),\n },\n {\n dataField: \"pending_since\",\n text: \"Pending Since\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n \n \n {new Date().getDate() - new Date(audit.generated_at).getDate()} days\n \n \n ),filter: textFilter(),\n },\n {\n dataField: \"status\",\n text: \"Audit Status\",\n sort: true,\n formatter: (cellContent, audit) => (\n <>\n {audit.status}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"audit_status\",\n text: \"Status\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.audit_status === \"Pass\" ? (\n \n {labsList.audit_status}\n \n ) : labsList.audit_status === \"Fail\" ? (\n \n {labsList.audit_status}\n \n ) : labsList.audit_status === \"Revisit\"?(\n \n {labsList.audit_status}\n \n ) : (\n --\n )}\n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, labsList) => (\n <>\n {labsList.audit_status == \"Fail\" ? ( \n
    \n <>\n this.onClickAuditedEvent(e, labsList.id)}\n onClick={e => this.handleApprovedEvent(e, labsList.id)}\n >\n ReAssign\n {\" \"}\n \n
    \n ) : labsList.audit_status == \"Revisit\" ? ( \n
    \n <>\n this.onClickAuditedEvent(e, labsList.id)}\n onClick={e => this.handleApprovedEvent(e, labsList.id)}\n >\n ReAssign\n {\" \"}\n \n
    \n ):labsList.status == \"Pending\" ? ( \n
    \n <>\n this.handleApprovedEvent(e, labsList.id)}\n >\n Assign\n {\" \"}\n \n
    \n ) :labsList.status == \"In Process\" ? ( \n
    \n <>\n this.handleApprovedEvent(e, labsList.id)}\n >\n ReAssign\n {\" \"}\n \n
    \n ) :\n (\n \"\"\n )}\n \n \n \n \n ),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.toggleMessageModal.bind(this);\n this.togglePatientModal = this.togglePatientModal.bind(this);\n this.handleApprovedEvent = this.handleApprovedEvent.bind(this);\n }\n \n componentDidMount() {\n const { labaudit, onGetDiscountLabHazirToLabs } = this.props;\n onGetDiscountLabHazirToLabs(this.props.match.params.id);\n this.setState({ labaudit });\n \n const { auditorList, onGetAuditorList } = this.props;\n onGetAuditorList();\n this.setState({ auditorList });\n \n // auditor central list\n const { auditorCentralTerritoryList, onGetAuditorCentralList } = this.props;\n onGetAuditorCentralList();\n this.setState({ auditorCentralTerritoryList });\n // auditor south list\n const { auditorSouthTerritoryList, onGetAuditorSouthList } = this.props;\n onGetAuditorSouthList();\n this.setState({ auditorSouthTerritoryList });\n // auditor north list\n const { auditorNorthTerritoryList, onGetAuditorNorthList } = this.props;\n onGetAuditorNorthList();\n this.setState({ auditorNorthTerritoryList });\n }\n\n onClickAuditedEvent = (e, arg) => {\n this.setState({\n id: this.props.match.params.id,\n });\n this.setState({ auditModal: true, });\n \n };\n \n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n lab_address: arg.lab_address,\n lab_city: arg.lab_city,\n lab_phone: arg.lab_phone,\n lab_email: arg.lab_email,\n });\n };\n handleMouseExit = () => {\n this.setState({\n // auditModal: false,\n PatientModal: false,\n isHovered: false,\n });\n };\n handleButtonClick = () => {\n this.setState({ auditModal: true });\n }\n handleEditAllBtnClick = () => {\n\n const { onAddNewAudit , onGetDiscountLabHazirToLabs} = this.props;\n const data = {\n reason_of_reaudit: \"\",\n };\n onAddNewAudit(data, this.props.match.params.id);\n this.setState({ showAlert: true });\n setTimeout(() => {\n onGetDiscountLabHazirToLabs(this.props.match.params.id);\n }, 1000);\n setTimeout(() => {\n this.setState({ auditModal: false , showAlert: false});\n }, 2000);\n }\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n \n toggleMessageModal = () => {\n this.setState(prevState => ({\n messageModal: !prevState.messageModal,\n }));\n };\n \n openMessageModal = (e, arg) => {\n this.setState({ messageModal: true, message: arg.message });\n };\n \n handleApprovedEvent = (e, arg) => {\n this.setState({\n id: arg,\n });\n \n this.toggle();\n };\n \n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n render() {\n const { labaudit } = this.props;\n // // Ensure labaudit is an array and has data\n // if (!Array.isArray(labaudit) || labaudit.length === 0) {\n // return
    No audits available
    ; // Handle empty state\n // }\n \n // Check if all audits have `register_at` >= `frequency`\n const allAuditsValid = labaudit.every(audit => audit.register_at >= audit.frequency);\n const isButtonDisabled = !allAuditsValid;\n \n const { SearchBar } = Search;\n const {\n onGetDiscountLabHazirToLabs,\n // onUpdateDiscountLabHazirToLab,\n } = this.props;;\n const { onAssignAudit } = this.props;\n \n const pageOptions = {\n sizePerPage: 10,\n totalSize: labaudit.length, // replace later with size(labaudit),\n custom: true,\n };\n \n const defaultSorted = [\n {\n dataField: \"id\",\n order: \"desc\",\n },\n ];\n \n const auditorList = [];\n for (let i = 0; i < this.props.auditorList.length; i++) {\n auditorList.push({\n label: this.props.auditorList[i].name,\n value: this.props.auditorList[i].id,\n });\n }\n // Central Office\n const auditorCentralTerritoryList = [];\n \n for (let i = 0; i < this.props.auditorCentralTerritoryList.length; i++) {\n auditorCentralTerritoryList.push({\n label: this.props.auditorCentralTerritoryList[i].name,\n value: this.props.auditorCentralTerritoryList[i].id,\n });\n \n }\n \n // South Office\n const auditorSouthTerritoryList = [];\n \n for (let i = 0; i < this.props.auditorSouthTerritoryList.length; i++) {\n auditorSouthTerritoryList.push({\n label: this.props.auditorSouthTerritoryList[i].name,\n value: this.props.auditorSouthTerritoryList[i].id,\n });\n \n }\n // North Office\n const auditorNorthTerritoryList = [];\n \n for (let i = 0; i < this.props.auditorNorthTerritoryList.length; i++) {\n auditorNorthTerritoryList.push({\n label: this.props.auditorNorthTerritoryList[i].name,\n value: this.props.auditorNorthTerritoryList[i].id,\n });\n \n }\n \n return (\n \n
    \n \n Audits list | Audit Hazir\n \n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n \n {/*
    \n
    \n \n \n
    \n
    */}\n \n \n
    \n \n Generate Audit\n \n
    \n \n
    \n \n
    \n \n \n
    \n \n this.setState({\n auditModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n \n {\n const {\n onAddNewAudit,\n } = this.props;\n\n const data = {\n // id: this.state.id,\n reason_of_reaudit: \"\",\n };\n\n console.log(data);\n\n onAddNewAudit(data, this.props.match.params.id);\n this.setState({\n auditModal: false,\n });\n setTimeout(() => {\n onGetDiscountLabHazirToLabs(this.props.match.params.id);\n }, 1000);\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n
    \n
    Generate Audit of lab
    \n
    \n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n {/* Modal Component */}\n \n {this.state.showAlert && (\n \n Audit Generated Successfully.\n \n )}\n
    \n
    Generate Lab Audit
    \n \n this.setState({\n auditModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n \n \n \n

    By clicking the "Generate Audit" button below, you will initiate the process to generate a new audit for the selected lab. This will create a record for the lab audit.

    \n \n
    \n \n \n \n Generate Audit\n \n \n \n
    \n \n \n \n \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n \n
    \n {\n navigator.clipboard.writeText(\n this.state\n .lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n
    \n \n this.setState({\n modal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n \n {\n const data = {\n id: this.state.id,\n assignedTo: values.assignedTo,\n };\n \n // Assign complaint\n onAssignAudit(data);\n \n // Calling to update list record\n setTimeout(() => {\n onGetDiscountLabHazirToLabs(this.props.match.params.id);\n }, 1000);\n \n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n
    \n \n {\n this.setState({\n labaudit: {\n \n office: e.target.value,\n \n },\n });\n }}\n multiple={false}\n value={\n this.state.office\n }\n >\n \n \n \n \n \n \n
    \n \n {this.state.labaudit.office ==\"Central Office\"\n &&(\n \n
    \n \n {\n this.setState({\n assignedTo:\n selectedGroup.value,\n });\n }}\n className={\n \"defautSelectParent\" +\n (errors.assignedTo\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor:\n errors.assignedTo\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={auditorCentralTerritoryList}\n placeholder=\"Select Auditor...\"\n />\n \n
    \n )} \n {/* South Office */}\n {this.state.labaudit.office ==\"South Office\"\n &&(\n \n
    \n \n {\n this.setState({\n assignedTo:\n selectedGroup.value,\n });\n }}\n className={\n \"defautSelectParent\" +\n (errors.assignedTo\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor:\n errors.assignedTo\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={auditorSouthTerritoryList}\n placeholder=\"Select Auditor...\"\n />\n \n
    \n )} \n {/* North Office */}\n {this.state.labaudit.office ==\"North Office\"\n &&(\n \n
    \n \n {\n this.setState({\n assignedTo:\n selectedGroup.value,\n });\n }}\n className={\n \"defautSelectParent\" +\n (errors.assignedTo\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (\n base,\n state\n ) => ({\n ...base,\n borderColor:\n errors.assignedTo\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={auditorNorthTerritoryList}\n placeholder=\"Select Auditor...\"\n />\n \n
    \n )} \n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n \n \n
    \n
    \n \n this.setState({\n messageModal: false,\n })\n }\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n

    \n Audit Message\n

    \n

    \n {this.state.message}\n

    \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n }\n PendingAudits.propTypes = {\n match: PropTypes.object,\n labaudit: PropTypes.array,\n auditorList: PropTypes.array,\n className: PropTypes.any,\n onGetAuditorList: PropTypes.func,\n onAssignAudit: PropTypes.func,\n auditorCentralTerritoryList: PropTypes.array,\n auditorSouthTerritoryList: PropTypes.array,\n auditorNorthTerritoryList: PropTypes.array,\n onGetAuditorCentralList: PropTypes.func,\n onGetAuditorSouthList: PropTypes.func,\n onGetAuditorNorthList: PropTypes.func,\n onGetDiscountLabHazirToLabs: PropTypes.func,\n onAddNewAudit: PropTypes.func,\n };\n const mapStateToProps = ({ labsList, staff, auditorTerritoryList}) => ({\n labaudit: labsList.labaudit,\n auditorList: staff.auditorList,\n auditorCentralTerritoryList: auditorTerritoryList.auditorCentralTerritoryList,\n auditorSouthTerritoryList: auditorTerritoryList.auditorSouthTerritoryList,\n auditorNorthTerritoryList: auditorTerritoryList.auditorNorthTerritoryList,\n });\n \n const mapDispatchToProps = (dispatch, ownProps) => ({\n onGetDiscountLabHazirToLabs: id => dispatch(getLabsAllAuditList(id)),\n onAssignAudit: data => dispatch(assignAudit(data)),\n onGetAuditorList: () => dispatch(getAuditorList()),\n onGetAuditorCentralList: () => dispatch(getAuditorCentralList()),\n onGetAuditorSouthList: () => dispatch(getAuditorSouthList()),\n onGetAuditorNorthList: () => dispatch(getAuditorNorthList()),\n onAddNewAudit: (audit, id) => dispatch(addNewAudit(audit, id)),\n });\n \n export default connect(\n mapStateToProps,\n mapDispatchToProps\n )(withRouter(PendingAudits));","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\nimport moment from 'moment';\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport { getActivityLogAuditor } from \"store/activtylogAuditor/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass AuditHistory extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n activitylogauditor: [],\n activitylogauditor: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { activitylogauditor, onGetActivityLogAuditor } = this.props;\n onGetActivityLogAuditor(this.props.match.params.id);\n this.setState({ activitylogauditor });\n console.log(\"helllloooo\",this.state.activitylogauditor)\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { activitylogauditor } = this.props;\n if (\n !isEmpty(activitylogauditor) &&\n size(prevProps.activitylogauditor) !== size(activitylogauditor)\n ) {\n this.setState({ activitylogauditor: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { activitylogauditor } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onGetActivityLogAuditor,\n } = this.props;\n const pageOptions = {\n sizePerPage: 10,\n totalSize: activitylogauditor.length, // replace later with size(activitylogauditor),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Comments List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {!isEmpty(this.props.activitylogauditor) &&\n this.props.activitylogauditor.map((activitylogauditor, key) => (\n \n \n \n {activitylogauditor.actions === \"Request\" &&(\n
    \n {`${activitylogauditor.added_by}`} Requested for reaudit at {\" \"}\n {moment(activitylogauditor.updated_at).format(\"DD MMM YYYY, h:mm A\")}\n .\n
    \n )}\n {activitylogauditor.actions === \"Added\" &&(\n
    \n {`${activitylogauditor.added_by}`} Generated a new Audit {\" \"}\n {moment(activitylogauditor.generated_at).format(\"DD MMM YYYY, h:mm A\")}\n .\n
    \n )}\n \n{activitylogauditor.actions === \"Updated\" && (\n
    \n {`${activitylogauditor.added_by}`} Updated{\" \"}\n\n {/* Filter out \"None\" values from old_value */}\n {activitylogauditor.old_value\n .split(\", \") // Split the old_value into individual key-value pairs\n .filter((pair) => !pair.includes(\"None\")) // Filter out pairs with \"None\"\n .join(\", \")} {/* Join the filtered pairs back */}\n {\" \"}\n to{\" \"}\n {activitylogauditor.new_value}\n {\" \"}\n at{\" \"}\n {moment(activitylogauditor.updated_at).format(\"DD MMM YYYY, h:mm A\")}\n .\n
    \n)}\n\n \n
    \n
    \n \n ))}\n {isEmpty(this.props.activitylogauditor) && (\n \n \n
    \n
    \n No Comments exists.....\n
    \n
    \n \n
    \n )}\n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nAuditHistory.propTypes = {\n match: PropTypes.object,\n activitylogauditor: PropTypes.array,\n className: PropTypes.any,\n onGetActivityLogAuditor: PropTypes.func,\n};\n\nconst mapStateToProps = ({ activitylogauditor }) => ({\n activitylogauditor: activitylogauditor.activitylogauditor,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetActivityLogAuditor: id => dispatch(getActivityLogAuditor(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(AuditHistory));\n","import {\n GET_ACTIVITY_LOG_AUDITOR,\n GET_ACTIVITY_LOG_AUDITOR_FAIL,\n GET_ACTIVITY_LOG_AUDITOR_SUCCESS,\n} from \"./actionTypes\";\n\n// ----------- auditorofficer actions -----------------\nexport const getActivityLogAuditor = id => ({\n type: GET_ACTIVITY_LOG_AUDITOR,\n payload: id,\n});\n\nexport const getActivityLogAuditorSuccess = activitylogauditor => ({\n type: GET_ACTIVITY_LOG_AUDITOR_SUCCESS,\n payload: activitylogauditor,\n});\n\nexport const getActivityLogAuditorFail = error => ({\n type: GET_ACTIVITY_LOG_AUDITOR_FAIL,\n payload: error,\n});\n","import React, { Component } from \"react\"\nimport PropTypes from 'prop-types'\nimport { Col, Card, CardBody } from \"reactstrap\"\n\nclass CardMaintenance extends Component {\n render() {\n return (\n \n \n \n {this.props.children}\n \n \n \n )\n }\n}\n\nCardMaintenance.propTypes = {\n children: PropTypes.array\n}\n\nexport default CardMaintenance\n","export default __webpack_public_path__ + \"static/media/maintenance.938d28ce.svg\";","import React, { Component } from \"react\";\nimport MetaTags from \"react-meta-tags\";\nimport { Link } from \"react-router-dom\";\nimport { Container, Row, Col, CardBody } from \"reactstrap\";\n\n//Import Cards\nimport CardMaintenance from \"./card-maintenance\";\n\n//Import Images\nimport maintenance from \"../../assets/images/maintenance.svg\";\nimport logo from \"../../assets/images/logo-dark.png\";\nimport lightlogo from \"../../assets/images/logo-light.png\";\n\nclass PagesMaintenance extends Component {\n render() {\n return (\n \n
    \n \n Maintenance | Ilaaj4u - Dashboard\n \n \n \n \n
    \n
    \n \n \n \n \n
    \n\n \n \n
    \n \n
    \n \n
    \n

    Site is Under Maintenance

    \n

    Please check back in sometime.

    \n\n \n \n \n
    \n Why is the Site Down?\n
    \n

    \n There are many variations of passages of Lorem Ipsum\n available, but the majority have suffered alteration.\n

    \n
    \n \n \n
    \n What is the Downtime?\n
    \n

    \n Contrary to popular belief, Lorem Ipsum is not simply\n random text. It has roots in a piece of classNameical.\n

    \n
    \n \n \n
    \n Do you need Support?\n
    \n

    \n If you are going to use a passage of Lorem Ipsum, you\n need to be sure there isn't anything embar..\n \n no-reply@domain.com\n \n

    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nexport default PagesMaintenance;\n","export default __webpack_public_path__ + \"static/media/coming-soon.58c6b560.svg\";","import React, { Component } from \"react\";\nimport { Link } from \"react-router-dom\";\nimport MetaTags from \"react-meta-tags\";\nimport { Container, Row, Col } from \"reactstrap\";\nimport Countdown from \"react-countdown\";\nimport logo from \"../../assets/images/logo-dark.png\";\nimport maintanence from \"../../assets/images/coming-soon.svg\";\n\nclass PagesComingsoon extends Component {\n constructor() {\n super();\n this.renderer.bind(this);\n }\n\n // Function to generate a random future date\n getRandomFutureDate() {\n const currentDate = new Date();\n const randomFutureDate = new Date(\n currentDate.getTime() + Math.floor(Math.random() * 300) * 24 * 60 * 60 * 1000\n );\n return randomFutureDate;\n }\n\n renderer = ({ days, hours, minutes, seconds, completed }) => {\n if (completed) {\n // return You are good to go!;\n <>\n
    \n {days} Days\n
    {\" \"}\n
    \n {hours} Hours\n
    {\" \"}\n
    \n {minutes} Minutes\n
    {\" \"}\n
    \n {seconds} Seconds\n
    \n \n } else {\n return (\n <>\n
    \n {days} Days\n
    {\" \"}\n
    \n {hours} Hours\n
    {\" \"}\n
    \n {minutes} Minutes\n
    {\" \"}\n
    \n {seconds} Seconds\n
    \n \n );\n }\n };\n\n render() {\n return (\n \n \n Coming Soon | Labhazir - Dashboard\n \n
    \n \n \n \n
    \n\n
    \n \n \n \n
    \n \n \"\"\n \n \n \n
    \n \n
    \n \n
    \n

    Let's get started with Labhazir

    \n

    \n It will be as simple as Occidental; in fact, it will be Occidental.\n

    \n\n \n \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nexport default PagesComingsoon;\n","import React, { Component } from \"react\";\nimport { Container, Card, CardBody, Button, Col } from 'reactstrap';\nimport { withRouter } from \"react-router-dom\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\nimport creditCardFailedImage from '../../assets/images/CREDITCARDFAILED.png';\n\n\nclass CardPayment extends Component {\n constructor(props) {\n super(props);\n this.state = {\n encryptedData: \"\",\n loading: true,\n decryptedData: null,\n error: null,\n };\n }\n\n componentDidMount() {\n const { location } = this.props;\n const searchParams = new URLSearchParams(location.search);\n let encryptedData = searchParams.get(\"data\");\n\n console.log(\"Encrypted Data before processing:\", encryptedData);\n\n // Ensure correct padding at the beginning and end of encryptedData\n if (encryptedData) {\n if (!encryptedData.startsWith(\"=\")) {\n encryptedData = \"=\" + encryptedData;\n console.log(\"After adding '=' at the start:\", encryptedData);\n }\n if (!encryptedData.endsWith(\"=\")) {\n encryptedData = encryptedData + \"=\";\n console.log(\"After adding '=' at the end:\", encryptedData);\n }\n\n // Decode URL-encoded characters in encryptedData and replace spaces with plus signs\n encryptedData = decodeURIComponent(encryptedData).replace(/ /g, '+');\n console.log(\"After decoding and replacing spaces with '+':\", encryptedData);\n } else {\n this.setState({\n loading: false,\n error: \"No encrypted data found in URL parameter 'data'.\",\n });\n return;\n }\n\n // Set encryptedData in state\n this.setState({ encryptedData });\n\n // API endpoint URL\n const apiUrl = \"https://labhazirapi.com/api/patient/paymentsresponse/\";\n\n // POST request to Django API\n fetch(apiUrl, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify({ data: encryptedData }),\n })\n .then((response) => {\n if (!response.ok) {\n throw new Error(`Network response was not ok: ${response.statusText}`);\n }\n return response.json();\n })\n .then((responseData) => {\n console.log(\"API response\", responseData);\n this.setState({\n decryptedData: responseData.decrypted_data,\n loading: false,\n });\n })\n .catch((error) => {\n console.error(\"Error:\", error);\n this.setState({\n error: error.message,\n loading: false,\n });\n });\n }\n\n render() {\n const { loading, decryptedData, error } = this.state;\n\n return (\n \n \n Card Payment\n \n
    \n {loading ? (\n

    Loading...

    \n ) : error ? (\n

    Error: {error}

    \n ) : decryptedData ? (\n
    \n {/*

    Data decrypted successfully:

    */}\n
    \n \n
    \n \n \n \n \n \n
    \n \n We are pleased to inform you that,\n \n

    \n the payment transaction has been successfully completed.\n

    \n \n Thank you for your payment!\n \n \n \n \n
    \n \n
    \n
    \n ) : (\n
    \n \n
    \n \n \n \n
    Payment Failed
    \n

    \n Your transaction has failed due to some technical
    \n {/*

    {decryptedData}
    */}\n\n

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n )}\n
    \n
    \n );\n }\n}\n\nCardPayment.propTypes = {\n location: PropTypes.shape({\n search: PropTypes.string.isRequired,\n }).isRequired,\n};\n\nexport default withRouter(CardPayment);\n\n\n\n// import React from 'react';\n// import { Container, Card, CardBody, Button } from 'reactstrap';\n// import creditCardFailedImage from '../../assets/images/CREDITCARDFAILED.png';\n\n// const CreditCardCheckout = () => {\n// return (\n//
    \n// \n//
    \n// \n// \n// \n//
    Payment Failed
    \n//

    \n// Your transaction has failed due to some technical
    error.\n// Please try again.\n//

    \n//
    \n// \n//
    \n//
    \n//
    \n//
    \n//
    \n// );\n// };\n\n// export default CreditCardCheckout;","export default __webpack_public_path__ + \"static/media/error-img.352b9ab6.png\";","import React, { Component } from \"react\";\nimport MetaTags from \"react-meta-tags\";\nimport { Link } from \"react-router-dom\";\nimport { Container, Row, Col } from \"reactstrap\";\n\n//Import Images\nimport error from \"../../assets/images/error-img.png\";\n\nclass Pages404 extends Component {\n render() {\n return (\n \n
    \n \n 404 Error Page | Lab Hazir\n \n \n \n \n
    \n

    \n 4\n 4\n

    \n

    Sorry, page not found

    \n
    \n \n Back to Home\n \n
    \n
    \n \n
    \n \n \n
    \n \"\"\n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nexport default Pages404;\n","import React, { Component } from \"react\";\nimport { Link } from \"react-router-dom\";\nimport MetaTags from \"react-meta-tags\";\nimport { Container, Row, Col } from \"reactstrap\";\n\n//Import Images\nimport error from \"../../assets/images/error-img.png\";\n\nclass Pages500 extends Component {\n render() {\n return (\n \n
    \n \n 500 Error Page | Ilaaj4u - Dashboard\n \n \n \n \n
    \n

    \n 5\n 0\n

    \n

    Internal Server Error

    \n
    \n \n Back to Dashboard\n \n
    \n
    \n \n
    \n \n \n
    \n \"\"\n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nexport default Pages500;\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Card, CardBody, Col, Container, Row, Label, Alert } from \"reactstrap\";\nimport MetaTags from \"react-meta-tags\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\n// action\nimport {\n apiError,\n registerUser,\n registerUserFailed,\n} from \"../../store/actions\";\n\n// Redux\nimport { connect } from \"react-redux\";\nimport { Link } from \"react-router-dom\";\nimport { Redirect } from \"react-router-dom\";\n\nclass StaffRegister extends Component {\n constructor(props) {\n super(props);\n this.state = {\n usernameFieldError: null,\n // emailFieldError: null,\n passwordFieldError: null,\n incompleteRegistrationError: null,\n submittedMessage: null,\n };\n }\n\n componentDidMount() {\n // Removing attributes from the body\n const elem = document.getElementsByTagName(\"body\")[0];\n while (elem.attributes.length > 0) {\n elem.removeAttribute(elem.attributes[0].name);\n }\n\n this.props.apiError(\"\");\n this.props.registerUserFailed(\"\");\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.usernameError != this.props.usernameError) {\n this.setState({ usernameFieldError: this.props.usernameError });\n }\n\n // if (prevProps.emailError != this.props.emailError) {\n // this.setState({ emailFieldError: this.props.emailError });\n // }\n\n if (prevProps.passwordError != this.props.passwordError) {\n this.setState({ passwordFieldError: this.props.passwordError });\n }\n\n if (\n prevProps.incompleteRegistrationError !=\n this.props.incompleteRegistrationError\n ) {\n this.setState({\n incompleteRegistrationError: this.props.incompleteRegistrationError,\n });\n }\n }\n togglePasswordVisibility = () => {\n const passwordInput = document.querySelector('input[name=\"password\"]');\n const eyeIcon = document.getElementById('eye-icon');\n\n if (passwordInput && passwordInput.type === 'password') {\n passwordInput.type = 'text';\n eyeIcon.className = 'mdi mdi-eye-off-outline';\n } else if (passwordInput) {\n passwordInput.type = 'password';\n eyeIcon.className = 'mdi mdi-eye-outline';\n }\n };\n togglePassword1Visibility = () => {\n const passwordInput = document.querySelector('input[name=\"password2\"]');\n const eyeIcon2 = document.getElementById('eye-icon1');\n\n if (passwordInput && passwordInput.type === 'password') {\n passwordInput.type = 'text';\n eyeIcon2.className = 'mdi mdi-eye-off-outline';\n } else if (passwordInput) {\n passwordInput.type = 'password';\n eyeIcon2.className = 'mdi mdi-eye-outline';\n }\n };\n\n render() {\n if (this.props.userID) {\n return (\n \n );\n }\n\n return (\n \n
    \n \n Staff | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n {/* To show submitted message of processing if submission is succesful */}\n
    \n {this.state.submittedMessage && (\n \n {this.state.submittedMessage}\n \n )}\n\n {/* To show incomplete registration error to inform user */}\n {this.state.incompleteRegistrationError && (\n
    \n \n Your registration process was{\" \"}\n \n incomplete last time when you registered\n \n . If you want to\n regispatient-information/113893749834ter now, please\n click on Next button once again.\n \n \n After completing the step 2 of registration, please\n make sure to{\" \"}\n \n verify your account on new verification email\n {\" \"}\n you will receive from us and{\" \"}\n ignore the old one (if any) you\n have received last time.\n \n
    \n )}\n\n (val && val.length > 0 ? true : false),\n then: Yup.string().oneOf(\n [Yup.ref(\"password\")],\n \"Both password need to be the same\"\n ),\n }),\n })}\n onSubmit={values => {\n this.props.registerUser(values);\n\n // If no error messages then show wait message\n setTimeout(() => {\n if (\n !this.state.usernameFieldError &&\n !this.state.passwordFieldError &&\n // !this.state.emailFieldError &&\n !this.state.incompleteRegistrationError\n ) {\n this.setState({\n submittedMessage:\n \"Please wait for a while we are processing. Thank you for your patience.\",\n });\n }\n }, 1000);\n }}\n >\n {({ errors, status, touched }) => (\n
    \n {/* Username field */}\n
    \n \n {\n this.setState({\n usernameFieldError: null,\n });\n }}\n className={\n \"form-control\" +\n ((errors.username && touched.username) ||\n this.state.usernameFieldError\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n \n\n
    \n {this.state.usernameFieldError}\n
    \n
    \n\n {/* Email field */}\n {/*
    \n \n {\n this.setState({\n emailFieldError: null,\n });\n }}\n className={\n \"form-control\" +\n ((errors.email && touched.email) ||\n this.state.emailFieldError\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n\n
    \n {this.state.emailFieldError}\n
    \n
    */}\n\n {/* Password field */}\n
    \n \n
    \n {\n this.setState({\n passwordFieldError: null,\n });\n }}\n className={\n \"form-control\" +\n ((errors.password && touched.password) ||\n this.state.passwordFieldError\n ? \" is-invalid\"\n : \"\")\n }\n />\n
    \n \n \n \n
    \n
    \n \n\n
    \n {this.state.passwordFieldError}\n
    \n \n
    \n \n
    \n \n \n \n
    \n
    \n \n \n
    \n\n {/* Account type field */}\n
    \n \n \n \n \n \n \n
    \n\n {/*
    \n \n {\" \"}\n Next{\" \"}\n \n
    */}\n\n \n \n
    \n \n Next\n \n
    \n \n
    \n
    \n )}\n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nStaffRegister.propTypes = {\n match: PropTypes.object,\n apiError: PropTypes.any,\n registerUser: PropTypes.func,\n registerUserFailed: PropTypes.any,\n usernameError: PropTypes.any,\n // emailError: PropTypes.any,\n passwordError: PropTypes.any,\n incompleteRegistrationError: PropTypes.any,\n userID: PropTypes.any,\n userAccountType: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const {\n userID,\n userAccountType,\n // emailError,\n usernameError,\n passwordError,\n incompleteRegistrationError,\n loading,\n } = state.Account;\n return {\n userID,\n userAccountType,\n // emailError,\n usernameError,\n passwordError,\n incompleteRegistrationError,\n loading,\n };\n};\n\nexport default connect(mapStateToProps, {\n registerUser,\n apiError,\n registerUserFailed,\n})(StaffRegister);\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter } from \"react-router-dom\";\nimport { Card, CardBody, Col, Container, Row, Label, Input, Alert } from \"reactstrap\";\nimport Select from \"react-select\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\nimport { CITIES, DISTRICTS } from \"helpers/global_variables_helper\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getTerritoriesList\n } from \"store/territories-list/actions\";\n \nimport { addStaff, addStaffFail } from \"store/staff/actions\";\n\nclass StaffInfo extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n staff: [],\n staff: \"\",\n collectorImg: \"\",\n territoriesList: [],\n complaintSuccess: \"\",\n successMessage: \"\", \n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n\n }\n\n componentDidMount() {\n const { territoriesList, onGetTerritoriesList, addStaffFail } = this.props;\n addStaffFail(\"\"); \n if (territoriesList && !territoriesList.length) {\n console.log(onGetTerritoriesList(this.state.user_id));\n }\n }\n\n render() {\n const cityList = [];\n for (let i = 0; i < this.props.territoriesList.length; i++) {\n cityList.push({\n label: this.props.territoriesList[i].city,\n value: this.props.territoriesList[i].id,\n });\n }\n const { onAddStaff } = this.props;\n const staff = this.state.staff;\n\n return (\n \n
    \n \n Staff | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n {/* Render error message */}\n {this.props.addStaffError &&\n this.props.addStaffError ? (\n \n {this.props.addStaffError}\n \n ) : null}\n{this.props.addStaffSuccess && (\n \n \n {this.props.addStaffSuccess.message}\n \n {setTimeout(() => {\n this.props.history.push(\"/csr-list\");\n }, 2000)} \n \n)}\n\n\n {\n const newStaff = {\n email: values.email,\n name: values.name,\n cnic: values.cnic,\n phone: values.phone,\n photo: this.state.collectorImg,\n roles: values.roles,\n city_id: values.city_id,\n };\n\n // save new Staff\n onAddStaff(newStaff, this.props.match.params.id);\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n
    \n \n {\n this.setState({\n staff: {\n name: e.target.value,\n email: staff.email,\n cnic: staff.cnic,\n phone: staff.phone,\n roles: staff.roles,\n city_id: staff.city_id,\n photo: staff.photo,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.name && touched.name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n\n
    \n \n {\n this.setState({\n staff: {\n email: e.target.value,\n name: staff.name,\n cnic: staff.cnic,\n phone: staff.phone,\n roles: staff.roles,\n city_id: staff.city_id,\n photo: staff.photo,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.email && touched.email\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n
    \n \n {\n this.setState({\n staff: {\n name: staff.name,\n email: staff.email,\n cnic: e.target.value,\n phone: staff.phone,\n roles: staff.roles,\n city_id: staff.city_id,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.cnic && touched.cnic\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n\n
    \n \n {\n this.setState({\n staff: {\n name: staff.name,\n email: staff.email,\n cnic: staff.cnic,\n phone: e.target.value,\n roles: staff.roles,\n city_id: staff.city_id,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.phone && touched.phone\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n
    \n \n \n this.setState({\n collectorImg: e.target.files[0],\n })\n }\n className={\n \"form-control\" +\n (errors.photo && touched.photo\n ? \" is-invalid\"\n : \"\")\n }\n />\n\n \n
    \n\n \n \n
    \n \n {\n this.setState({\n staff: {\n name: staff.name,\n email: staff.email,\n cnic: staff.cnic,\n phone: staff.phone,\n roles: e.target.value,\n city_id: staff.city_id,\n photo: staff.photo,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.roles && touched.roles\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n {/* city_id field\n {/* city_id field */}\n
    \n\n\n\n\n this.setState({\n city_id: selectedGroup.value,\n })\n }\n className={\n \"defautSelectParent\" +\n (errors.city_id && touched.city_id\n ? \" is-invalid\"\n : \"\")\n }\n styles={{\n control: (base, state) => ({\n ...base,\n borderColor:\n errors.city_id && touched.city_id\n ? \"#f46a6a\"\n : \"#ced4da\",\n }),\n }}\n options={\n cityList\n }\n defaultValue={{\n label:\n this.state.city,\n value:\n this.state.id,\n }}\n\n/>\n\n\n
    \n\n\n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nStaffInfo.propTypes = {\n history: PropTypes.any,\n match: PropTypes.object,\n staff: PropTypes.any,\n className: PropTypes.any,\n onAddStaff: PropTypes.func,\n onGetTerritoriesList: PropTypes.func,\n territoriesList: PropTypes.array,\n addStaffFail: PropTypes.func,\n addStaffError: PropTypes.any,\n addStaffSuccess: PropTypes.any,\n\n};\n\nconst mapStateToProps = ({ staff , territoriesList }) => ({\n staff: staff.staff,\n territoriesList:territoriesList.territoriesList,\n addStaffError: staff.addStaffError,\n addStaffSuccess: staff.addStaffSuccess,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onAddStaff: (staff, id) => dispatch(addStaff(staff, id)),\n onGetTerritoriesList: id => dispatch(getTerritoriesList()),\n addStaffFail: (message) => dispatch(addStaffFail(message)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(StaffInfo));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n// import { getCSR, updateStaff, deleteStaff } from \"store/sample-collectors/actions\";\nimport { getCSRList, updateStaff, deleteStaff } from \"store/staff/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\nimport { Tooltip } from \"@material-ui/core\";\n\nclass CSRList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n csrList: [],\n staff: \"\",\n collectorImg: \"\",\n modal: false,\n deleteModal: false,\n csrListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, CSR) => <>{CSR.id},\n },\n {\n dataField: \"photo\",\n text: \"Name\",\n sort: true,\n formatter: (cellContent, CSR) => (\n <>\n \n {CSR.name}\n \n \n ),\n },\n {\n dataField: \"email\",\n text: \"Email\",\n sort: true,\n },\n {\n dataField: \"cnic\",\n text: \"CNIC\",\n sort: true,\n },\n {\n dataField: \"phone\",\n text: \"Mobile No.\",\n sort: true,\n },\n {\n dataField: \"territory_office\",\n text: \"Territory Office\",\n sort: true,\n },\n \n\n {\n dataField: \"roles\",\n text: \"Roles\",\n sort: true,\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, CSR) => (\n
    \n \n \n this.handleCSRClick(e, CSR)}\n >\n \n \n \n \n this.onClickDelete(CSR)}\n >\n \n \n
    \n ),\n },\n ],\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n this.handleCSRClick = this.handleCSRClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleCSRClicks = this.handleCSRClicks.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n\n componentDidMount() {\n const { onGetCSRList } = this.props;\n onGetCSRList();\n this.setState({ csrList: this.props.csrList });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleCSRClicks = () => {\n this.setState({ CSR: \"\", collectorImg: \"\", isEdit: false });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { csrList } = this.props;\n if (!isEmpty(csrList) && size(prevProps.csrList) !== size(csrList)) {\n this.setState({ csrList: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = csrList => {\n this.setState({ csrList: csrList });\n this.setState({ deleteModal: true });\n };\n\n handleDeleteCSR = () => {\n const { onDeleteStaff, onGetCSRList } = this.props;\n const { csrList } = this.state;\n if (csrList.id !== undefined) {\n onDeleteStaff(csrList);\n setTimeout(() => {\n onGetCSRList();\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n\n handleCSRClick = (e, arg) => {\n console.log(\"arg: \", arg);\n\n this.setState({\n staff: {\n id: arg.id,\n name: arg.name,\n cnic: arg.cnic,\n phone: arg.phone,\n roles: arg.roles,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { csrList } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const { onUpdateStaff, onGetCSRList } = this.props;\n const staff = this.state.staff;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: csrList.length, // replace later with size(CSRList),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n this.setState({ deleteModal: false })}\n />\n
    \n \n CSR List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n \n\n \n \n Edit CSR\n \n \n {\n if (isEdit) {\n const staffData = {\n id: staff.id,\n name: values.name,\n cnic: values.cnic,\n phone: values.phone,\n roles: values.roles,\n };\n\n // save new Staff\n onUpdateStaff(staffData);\n\n // if (this.props.staff.length != 0) {\n // this.props.history.push(\"/add-\")\n // }\n\n setTimeout(() => {\n onGetCSRList();\n }, 1000);\n }\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n\n
    \n \n {\n this.setState({\n staff: {\n id: staff.id,\n name: e.target\n .value,\n cnic: staff.cnic,\n phone: staff.phone,\n roles: staff.roles,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.name &&\n touched.name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n\n
    \n \n {\n if (isEdit) {\n this.setState({\n staff: {\n id: staff.id,\n name: staff.name,\n cnic: e.target\n .value,\n phone:\n staff.phone,\n roles:\n staff.roles,\n },\n });\n }\n }}\n className={\n \"form-control\" +\n (errors.cnic &&\n touched.cnic\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n\n
    \n \n {\n this.setState({\n staff: {\n id: staff.id,\n name: staff.name,\n cnic: staff.cnic,\n phone:\n e.target.value,\n roles: staff.roles,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.phone &&\n touched.phone\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n\n
    \n \n {\n this.setState({\n staff: {\n id: staff.id,\n name: staff.name,\n cnic: staff.cnic,\n phone: staff.phone,\n roles:\n e.target.value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.roles &&\n touched.roles\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nCSRList.propTypes = {\n match: PropTypes.object,\n csrList: PropTypes.array,\n className: PropTypes.any,\n onGetCSRList: PropTypes.func,\n onDeleteStaff: PropTypes.func,\n onUpdateStaff: PropTypes.func,\n};\n\nconst mapStateToProps = ({ staff }) => ({\n csrList: staff.csrList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetCSRList: () => dispatch(getCSRList()),\n onUpdateStaff: CSR => dispatch(updateStaff(CSR)),\n onDeleteStaff: CSR => dispatch(deleteStaff(CSR)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(CSRList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n// import { getCSR, updateStaff, deleteStaff } from \"store/sample-collectors/actions\";\nimport {getMarketersList, updateStaff, deleteStaff } from \"store/staff/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\nimport { Tooltip } from \"@material-ui/core\";\n\nclass marketersList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n marketersList: [],\n staff: \"\",\n collectorImg: \"\",\n modal: false,\n deleteModal: false,\n marketersListColumns: [\n {\n dataField: \"id\",\n text: \"ID\",\n sort: true,\n },\n {\n dataField: \"name\",\n text: \"Name\",\n sort: true,\n },\n {\n dataField: \"cnic\",\n text: \"CNIC\",\n sort: true,\n },\n {\n dataField: \"email\",\n text: \"Email\",\n sort: true,\n },\n {\n dataField: \"phone\",\n text: \"Mobile No.\",\n sort: true,\n },\n {\n dataField: \"city\",\n text: \"City\",\n sort: true,\n },\n {\n dataField: \"count\",\n text: \"Count of Registered Labs\",\n sort: true,\n },\n {\n dataField: \"total_count\",\n text: \"Count of total Registered Labs\",\n sort: true,\n },\n {\n dataField: \"registered_at\",\n text: \"Registered At\",\n sort: true,\n formatter: (cell, row) => {\n const date = new Date(cell);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2);\n return (\n

    \n {`${day}-${month}-${year}`}\n

    \n );\n }\n },\n {\n dataField: \"last_paid_at\",\n text: \"Last Paid At\",\n sort: true,\n formatter: (cell, row) => {\n const date = new Date(cell);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2);\n return (\n

    \n {`${day}-${month}-${year}`}\n

    \n );\n }\n }, \n ],\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n this.handleCSRClick = this.handleCSRClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleCSRClicks = this.handleCSRClicks.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n\n componentDidMount() {\n const { onGetmarketersList } = this.props;\n onGetmarketersList();\n this.setState({ marketersList: this.props.marketersList });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleCSRClicks = () => {\n this.setState({ CSR: \"\", collectorImg: \"\", isEdit: false });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { marketersList } = this.props;\n if (!isEmpty(marketersList) && size(prevProps.marketersList) !== size(marketersList)) {\n this.setState({ marketersList: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = marketersList => {\n this.setState({ marketersList: marketersList });\n this.setState({ deleteModal: true });\n };\n\n handleDeleteCSR = () => {\n const { onDeleteStaff, onGetmarketersList } = this.props;\n const { marketersList } = this.state;\n if (marketersList.id !== undefined) {\n onDeleteStaff(marketersList);\n setTimeout(() => {\n onGetmarketersList();\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n\n handleCSRClick = (e, arg) => {\n console.log(\"arg: \", arg);\n\n this.setState({\n staff: {\n id: arg.id,\n name: arg.name,\n cnic: arg.cnic,\n phone: arg.phone,\n roles: arg.roles,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { marketersList } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const { onUpdateStaff, onGetmarketersList } = this.props;\n const staff = this.state.staff;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: marketersList.length, // replace later with size(marketersList),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n this.setState({ deleteModal: false })}\n />\n
    \n \n Marketers List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n \n\n \n \n Edit CSR\n \n \n {\n if (isEdit) {\n const staffData = {\n id: staff.id,\n name: values.name,\n cnic: values.cnic,\n phone: values.phone,\n roles: values.roles,\n };\n\n // save new Staff\n onUpdateStaff(staffData);\n\n // if (this.props.staff.length != 0) {\n // this.props.history.push(\"/add-\")\n // }\n\n setTimeout(() => {\n onGetmarketersList();\n }, 1000);\n }\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n\n
    \n \n {\n this.setState({\n staff: {\n id: staff.id,\n name: e.target\n .value,\n cnic: staff.cnic,\n phone: staff.phone,\n roles: staff.roles,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.name &&\n touched.name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n\n
    \n \n {\n if (isEdit) {\n this.setState({\n staff: {\n id: staff.id,\n name: staff.name,\n cnic: e.target\n .value,\n phone:\n staff.phone,\n roles:\n staff.roles,\n },\n });\n }\n }}\n className={\n \"form-control\" +\n (errors.cnic &&\n touched.cnic\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n\n
    \n \n {\n this.setState({\n staff: {\n id: staff.id,\n name: staff.name,\n cnic: staff.cnic,\n phone:\n e.target.value,\n roles: staff.roles,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.phone &&\n touched.phone\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n\n
    \n \n {\n this.setState({\n staff: {\n id: staff.id,\n name: staff.name,\n cnic: staff.cnic,\n phone: staff.phone,\n roles:\n e.target.value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.roles &&\n touched.roles\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nmarketersList.propTypes = {\n match: PropTypes.object,\n marketersList: PropTypes.array,\n className: PropTypes.any,\n onGetmarketersList: PropTypes.func,\n onDeleteStaff: PropTypes.func,\n onUpdateStaff: PropTypes.func,\n};\n\nconst mapStateToProps = ({ staff }) => ({\n marketersList: staff.marketersList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetmarketersList: () => dispatch(getMarketersList()),\n onUpdateStaff: CSR => dispatch(updateStaff(CSR)),\n onDeleteStaff: CSR => dispatch(deleteStaff(CSR)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(marketersList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Tooltip } from \"@material-ui/core\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n// import { getAuditor, updateStaff, deleteStaff } from \"store/sample-collectors/actions\";\nimport { getAuditorList, updateStaff, deleteStaff } from \"store/staff/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass AuditorList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n auditorList: [],\n staff: \"\",\n collectorImg: \"\",\n modal: false,\n deleteModal: false,\n auditorListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, Auditor) => <>{Auditor.id},\n },\n {\n dataField: \"photo\",\n text: \"Name\",\n sort: true,\n formatter: (cellContent, Auditor) => (\n <>\n \n {Auditor.name}\n \n \n ),\n },\n {\n dataField: \"email\",\n text: \"Email\",\n sort: true,\n },\n {\n dataField: \"cnic\",\n text: \"CNIC\",\n sort: true,\n },\n {\n dataField: \"phone\",\n text: \"Mobile No.\",\n sort: true,\n },\n {\n dataField: \"territory_office\",\n text: \"Territory Office\",\n sort: true,\n },\n \n {\n dataField: \"roles\",\n text: \"Roles\",\n sort: true,\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, Auditor) => (\n
    \n \n \n this.handleAuditorClick(e, Auditor)}\n >\n \n \n \n \n this.onClickDelete(Auditor)}\n >\n \n \n
    \n ),\n },\n ],\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n this.handleAuditorClick = this.handleAuditorClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleAuditorClicks = this.handleAuditorClicks.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n\n componentDidMount() {\n const { onGetAuditorList } = this.props;\n onGetAuditorList();\n this.setState({ auditorList: this.props.auditorList });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleAuditorClicks = () => {\n this.setState({ Auditor: \"\", collectorImg: \"\", isEdit: false });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { auditorList } = this.props;\n if (\n !isEmpty(auditorList) &&\n size(prevProps.auditorList) !== size(auditorList)\n ) {\n this.setState({ auditorList: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = auditorList => {\n this.setState({ auditorList: auditorList });\n this.setState({ deleteModal: true });\n };\n\n handleDeleteAuditor = () => {\n const { onDeleteStaff, onGetAuditorList } = this.props;\n const { auditorList } = this.state;\n if (auditorList.id !== undefined) {\n onDeleteStaff(auditorList);\n setTimeout(() => {\n onGetAuditorList();\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n\n handleAuditorClick = (e, arg) => {\n console.log(\"arg: \", arg);\n\n this.setState({\n staff: {\n id: arg.id,\n name: arg.name,\n cnic: arg.cnic,\n phone: arg.phone,\n roles: arg.roles,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { auditorList } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const { onUpdateStaff, onGetAuditorList } = this.props;\n const staff = this.state.staff;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: auditorList.length, // replace later with size(AuditorList),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n this.setState({ deleteModal: false })}\n />\n
    \n \n Auditor List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n \n\n \n \n Edit Auditor\n \n \n {\n if (isEdit) {\n const staffData = {\n id: staff.id,\n name: values.name,\n cnic: values.cnic,\n phone: values.phone,\n roles: values.roles,\n };\n\n // save new Staff\n onUpdateStaff(staffData);\n\n // if (this.props.staff.length != 0) {\n // this.props.history.push(\"/add-\")\n // }\n\n setTimeout(() => {\n onGetAuditorList();\n }, 1000);\n }\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n\n
    \n \n {\n this.setState({\n staff: {\n id: staff.id,\n name: e.target\n .value,\n cnic: staff.cnic,\n phone: staff.phone,\n roles: staff.roles,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.name &&\n touched.name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n\n
    \n \n {\n if (isEdit) {\n this.setState({\n staff: {\n id: staff.id,\n name: staff.name,\n cnic: e.target\n .value,\n phone:\n staff.phone,\n roles:\n staff.roles,\n },\n });\n }\n }}\n className={\n \"form-control\" +\n (errors.cnic &&\n touched.cnic\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n\n
    \n \n {\n this.setState({\n staff: {\n id: staff.id,\n name: staff.name,\n cnic: staff.cnic,\n phone:\n e.target.value,\n roles: staff.roles,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.phone &&\n touched.phone\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n\n
    \n \n {\n this.setState({\n staff: {\n id: staff.id,\n name: staff.name,\n cnic: staff.cnic,\n phone: staff.phone,\n roles:\n e.target.value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.roles &&\n touched.roles\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nAuditorList.propTypes = {\n match: PropTypes.object,\n auditorList: PropTypes.array,\n className: PropTypes.any,\n onGetAuditorList: PropTypes.func,\n onDeleteStaff: PropTypes.func,\n onUpdateStaff: PropTypes.func,\n};\n\nconst mapStateToProps = ({ staff }) => ({\n auditorList: staff.auditorList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetAuditorList: () => dispatch(getAuditorList()),\n onUpdateStaff: Auditor => dispatch(updateStaff(Auditor)),\n onDeleteStaff: Auditor => dispatch(deleteStaff(Auditor)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(AuditorList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Tooltip } from \"@material-ui/core\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n// import { getFinanceOfficer, updateStaff, deleteStaff } from \"store/sample-collectors/actions\";\nimport {\n getFinanceOfficerList,\n updateStaff,\n deleteStaff,\n} from \"store/staff/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass FinanceOfficerList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n financeOfficerList: [],\n staff: \"\",\n collectorImg: \"\",\n modal: false,\n deleteModal: false,\n financeOfficerListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, FinanceOfficer) => <>{FinanceOfficer.id},\n },\n {\n dataField: \"photo\",\n text: \"Name\",\n sort: true,\n formatter: (cellContent, FinanceOfficer) => (\n <>\n \n {FinanceOfficer.name}\n \n \n ),\n },\n {\n dataField: \"email\",\n text: \"Email\",\n sort: true,\n },\n {\n dataField: \"cnic\",\n text: \"CNIC\",\n sort: true,\n },\n {\n dataField: \"phone\",\n text: \"Mobile No.\",\n sort: true,\n },\n {\n dataField: \"territory_office\",\n text: \"Territory Office\",\n sort: true,\n },\n // {\n // dataField: \"photo\",\n // text: \"Photo\",\n // sort: true,\n // formatter: (cellContent, FinanceOfficer) => (\n // <>\n // \n // View\n // \n // \n // ),\n // },\n\n {\n dataField: \"roles\",\n text: \"Roles\",\n sort: true,\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, FinanceOfficer) => (\n
    \n \n \n \n this.handleFinanceOfficerClick(e, FinanceOfficer)\n }\n >\n \n \n \n \n this.onClickDelete(FinanceOfficer)}\n >\n \n \n
    \n ),\n },\n ],\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n this.handleFinanceOfficerClick = this.handleFinanceOfficerClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleFinanceOfficerClicks =\n this.handleFinanceOfficerClicks.bind(this);\n this.onClickDelete = this.onClickDelete.bind(this);\n }\n\n componentDidMount() {\n const { onGetFinanceOfficerList } = this.props;\n onGetFinanceOfficerList();\n this.setState({ financeOfficerList: this.props.financeOfficerList });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleFinanceOfficerClicks = () => {\n this.setState({ FinanceOfficer: \"\", collectorImg: \"\", isEdit: false });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { financeOfficerList } = this.props;\n if (\n !isEmpty(financeOfficerList) &&\n size(prevProps.financeOfficerList) !== size(financeOfficerList)\n ) {\n this.setState({ financeOfficerList: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n onClickDelete = financeOfficerList => {\n this.setState({ financeOfficerList: financeOfficerList });\n this.setState({ deleteModal: true });\n };\n\n handleDeleteFinanceOfficer = () => {\n const { onDeleteStaff, onGetFinanceOfficerList } = this.props;\n const { financeOfficerList } = this.state;\n if (financeOfficerList.id !== undefined) {\n onDeleteStaff(financeOfficerList);\n setTimeout(() => {\n onGetFinanceOfficerList();\n }, 1000);\n this.setState({ deleteModal: false });\n }\n };\n\n handleFinanceOfficerClick = (e, arg) => {\n this.setState({\n staff: {\n id: arg.id,\n name: arg.name,\n cnic: arg.cnic,\n phone: arg.phone,\n roles: arg.roles,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { financeOfficerList } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const { onUpdateStaff, onGetFinanceOfficerList } = this.props;\n const staff = this.state.staff;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: financeOfficerList.length, // replace later with size(FinanceOfficerList),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n this.setState({ deleteModal: false })}\n />\n
    \n \n Finance Officer List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n \n\n \n \n Edit FinanceOfficer\n \n \n {\n if (isEdit) {\n const staffData = {\n id: staff.id,\n name: values.name,\n cnic: values.cnic,\n phone: values.phone,\n roles: values.roles,\n };\n\n // save new Staff\n onUpdateStaff(staffData);\n\n // if (this.props.staff.length != 0) {\n // this.props.history.push(\"/add-\")\n // }\n\n setTimeout(() => {\n onGetFinanceOfficerList();\n }, 1000);\n }\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n\n
    \n \n {\n this.setState({\n staff: {\n id: staff.id,\n name: e.target\n .value,\n cnic: staff.cnic,\n phone: staff.phone,\n roles: staff.roles,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.name &&\n touched.name\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n\n
    \n \n {\n if (isEdit) {\n this.setState({\n staff: {\n id: staff.id,\n name: staff.name,\n cnic: e.target\n .value,\n phone:\n staff.phone,\n roles:\n staff.roles,\n },\n });\n }\n }}\n className={\n \"form-control\" +\n (errors.cnic &&\n touched.cnic\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n\n
    \n \n {\n this.setState({\n staff: {\n id: staff.id,\n name: staff.name,\n cnic: staff.cnic,\n phone:\n e.target.value,\n roles: staff.roles,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.phone &&\n touched.phone\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n\n
    \n \n {\n this.setState({\n staff: {\n id: staff.id,\n name: staff.name,\n cnic: staff.cnic,\n phone: staff.phone,\n roles:\n e.target.value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.roles &&\n touched.roles\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nFinanceOfficerList.propTypes = {\n match: PropTypes.object,\n financeOfficerList: PropTypes.array,\n className: PropTypes.any,\n onGetFinanceOfficerList: PropTypes.func,\n onDeleteStaff: PropTypes.func,\n onUpdateStaff: PropTypes.func,\n};\n\nconst mapStateToProps = ({ staff }) => ({\n financeOfficerList: staff.financeOfficerList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetFinanceOfficerList: () => dispatch(getFinanceOfficerList()),\n onUpdateStaff: FinanceOfficer => dispatch(updateStaff(FinanceOfficer)),\n onDeleteStaff: FinanceOfficer => dispatch(deleteStaff(FinanceOfficer)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(FinanceOfficerList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Tooltip } from \"@material-ui/core\";\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Button,\n Row,\n Modal,\n ModalHeader,\n ModalBody,\n Label,\n} from \"reactstrap\";\nimport filterFactory, {textFilter} from \"react-bootstrap-table2-filter\";\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\nimport moment from 'moment';\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\n\nimport {\n getDiscountLabHazirToLabs,\n updateDiscountLabHazirToLab,\n updateDiscountAllLabHazirToLab,\n} from \"store/discount-labhazir-to-lab/actions\";\nimport { isEmpty, size } from \"lodash\";\nimport ConfirmModal from \"components/Common/ConfirmModal\";\n\nimport \"assets/scss/table.scss\";\n\nclass DiscountLabHazirList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n discountLabHazirToLabs: [],\n discountLabHazirToLab: \"\",\n modal: false,\n confirmModal: false,\n // isEditAll: true,\n // id: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n discountLabHazirListColumns: [\n\n {\n dataField: \"id\",\n text: \"Test ID\",\n sort: true,\n formatter: (cellContent, discountLabHazirToLab) => (\n <>\n {discountLabHazirToLab.id}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"test_name\",\n text: \"Test Name\",\n sort: true,\n formatter: (cellContent, discountLabHazirToLab) => (\n <>\n {discountLabHazirToLab.test_name}\n ),\n filter: textFilter(),\n },\n // {\n // dataField: \"lab_name\",\n // text: \"Lab Name\",\n // sort: true,\n // // formatter: (cellContent, discountLabHazirToLab) => (\n // // <>\n // //

    \n // // {discountLabHazirToLab.lab_name}\n // //

    \n // // \n // // ),\n // filter: textFilter(),\n // },\n {\n dataField: \"price\",\n text: \"Test Price\",\n sort: true,\n formatter: (cellContent, discountLabHazirToLab) => (\n <>\n {(\n {discountLabHazirToLab.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n )}\n \n ),\n filter: textFilter(),\n },\n {\n dataField: \"discount\",\n text: \"Lab Discount\",\n sort: true,\n formatter: (cellContent, discountLabHazirToLab) => (\n <>\n {(\n {(discountLabHazirToLab.discount*100).toFixed()}%\n )}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"discount_by_labhazir\",\n text: \"LabHazir Discount\",\n sort: true,\n formatter: (cellContent, discountLabHazirToLab) => (\n <>\n {(\n {(discountLabHazirToLab.discount_by_labhazir*100).toFixed()}%\n )}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"discounted_price\",\n text: \"Price After Discount\",\n sort: true,\n formatter: (cellContent, discountLabHazirToLab) => (\n <>\n {(\n {(discountLabHazirToLab.price-((discountLabHazirToLab.price*(discountLabHazirToLab.discount_by_labhazir + discountLabHazirToLab.discount)*100)/100)).toFixed().toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n // (discountLab.price-((discountLab.price*(discountLab.discount*100))/100))\n )}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"start_date_by_labhazir\",\n text: \"Start Date\",\n sort: true,\n formatter: (cellContent, discountLabHazirToLab) => (\n <>\n \n {discountLabHazirToLab.discount_by_labhazir !== 0 ? (\n moment(discountLabHazirToLab.start_date_by_labhazir).format(\"DD MMM YYYY, h:mm A\")\n ) : (\n \"--\"\n )}\n \n \n ),\n filter: textFilter({\n placeholder: 'Enter Start Date',\n }),\n },\n {\n dataField: \"end_date_by_labhazir\",\n text: \"End Date\",\n sort: true,\n formatter: (cellContent, discountLabHazirToLab) => (\n <>\n \n {discountLabHazirToLab.discount_by_labhazir !== 0 ? (\n moment(discountLabHazirToLab.end_date_by_labhazir).format(\"DD MMM YYYY, h:mm A\")\n ) : (\n \"--\"\n )}\n \n \n ),\n filter: textFilter({\n placeholder: 'Enter End Date',\n }),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, discountLabHazirToLab) => (\n
    \n \n \n this.handleEditBtnClick(discountLabHazirToLab)}\n >\n \n \n \n \n \n
    \n ),\n },\n ],\n };\n this.handleEditBtnClick = this.handleEditBtnClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handleEditAllBtnClick = this.handleEditAllBtnClick.bind(this);\n }\n\n// componentDidMount() {\n// const { onGetDiscountLabHazirToLabs } = this.props;\n// setTimeout(() => {\n// console.log(onGetDiscountLabHazirToLabs());\n\n// setTimeout(() => {\n// this.setState({ discountLabHazirToLabs: this.props.discountLabHazirToLabs });\n// }, 1000);\n// }, 1000);\n// }\n\n componentDidMount() {\n // const { labs, onGetlabs } = this.props;\n // if (labs && !labs.length) {\n // onGetlabs();\n // }\n // this.setState({ labs });\n\n const { discountLabHazirToLabs, onGetDiscountLabHazirToLabs } = this.props;\n // if (discountLabHazirToLabs && !discountLabHazirToLabs.length) {\n onGetDiscountLabHazirToLabs(this.props.match.params.id);\n \n this.setState({ discountLabHazirToLabs });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleEditAllBtnClick = () => {\n this.setState({ isEditAll: true, discountLabHazirToLab: \"\" });\n\n this.toggle();\n };\n\n handleAPICall = () => {\n const {\n onGetDiscountLabHazirToLabs,\n onUpdateDiscountAllLabHazirToLab,\n onUpdateDiscountLabHazirToLab,\n } = this.props;\n\n if (this.state.isEditAll) {\n onUpdateDiscountAllLabHazirToLab(this.state.discountLabHazirToLab);\n\n onGetDiscountLabHazirToLabs();\n\n setTimeout(() => {\n this.setState({ discountLabHazirToLabs: this.props.match.params.id});\n }, 1000);\n } else {\n onUpdateDiscountLabHazirToLab(this.state.discountLabHazirToLab);\n\n onGetDiscountLabHazirToLabs();\n\n setTimeout(() => {\n this.setState({ discountLabHazirToLabs: this.props.match.params.id });\n }, 1000);\n }\n\n this.toggle();\n };\n\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { discountLabHazirToLabs } = this.props;\n if (\n !isEmpty(discountLabHazirToLabs) &&\n size(prevProps.discountLabHazirToLabs) !== size(discountLabHazirToLabs)\n ) {\n this.setState({\n discountLabHazirToLabs: {},\n isEdit: false,\n });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n handleEditBtnClick = arg => {\n const discountLabHazirToLab = arg;\n\n this.setState({\n isEditAll: false,\n discountLabHazirToLab: discountLabHazirToLab,\n lab_name: discountLabHazirToLab.lab_name,\n });\n\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { discountLabHazirToLabs } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const discountLabHazirToLab = this.state.discountLabHazirToLab;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: discountLabHazirToLabs.length, // replace later with size(discountLabHazirToLabs),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n const {\n onGetDiscountLabHazirToLabs,\n onUpdateDiscountAllLabHazirToLab,\n onUpdateDiscountLabHazirToLab,\n } = this.props;\n\n return (\n \n
    \n \n Discount For Lab By Labhazir | Discount Lab Hazir\n \n this.setState({ confirmModal: false })}\n />\n \n {/* Render Breadcrumbs */}\n {\n // Check if lab_name is defined and not null\n if (lab.lab_name_new !== undefined && lab.lab_name_new !== null) {\n // Return a div for each lab_name\n return (\n
    \n Lab Hazir Discount for Lab: {\" \"}\n {lab.lab_name_new}\n
    \n );\n }\n // Don't render anything for labs without lab_name\n return null;\n })}\n />\n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n \n Discount\n All\n \n
    \n \n
    \n \n \n
    \n \n\n \n \n {!this.state.isEditAll\n ? \"Discount on Test\"\n : \"Discount on all tests\"}\n \n \n discount_by_labhazir > 0,\n then: Yup.string().required(\n \"Please select start date\"\n ),\n }),\n end_date_by_labhazir: Yup.string(\n Yup.number()\n ).when(\"discount\", {\n is: discount_by_labhazir => discount_by_labhazir > 0,\n then: Yup.string().required(\n \"Please select end date\"\n ),\n }),\n })}\n onSubmit={values => {\n if (this.state.isEditAll) {\n onUpdateDiscountAllLabHazirToLab(\n this.state.discountLabHazirToLab\n );\n } else {\n onUpdateDiscountLabHazirToLab(\n this.state.discountLabHazirToLab\n );\n }\n\n setTimeout(() => {\n onGetDiscountLabHazirToLabs(\n this.props.match.params.id\n );\n\n setTimeout(() => {\n this.setState({\n discountLabHazirToLabs:\n this.props\n .discountLabHazirToLabs,\n });\n }, 1000);\n }, 1000);\n\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n
    \n \n {\n this.setState({\n discountLabHazirToLab: {\n id: this.state\n .discountLabHazirToLab\n .id,\n discount_by_labhazir:\n e.target.value,\n start_date_by_labhazir:\n discountLabHazirToLab.start_date_by_labhazir,\n end_date_by_labhazir:\n discountLabHazirToLab.end_date_by_labhazir,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.discount_by_labhazir &&\n touched.discount_by_labhazir\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n\n {this.state.discountLabHazirToLab\n .discount_by_labhazir > 0 && (\n
    \n
    \n \n {\n this.setState({\n discountLabHazirToLab:\n {\n id: this.state\n .discountLabHazirToLab\n .id,\n lab_id:\n this.props.match\n .params.id,\n discount_by_labhazir:\n discountLabHazirToLab.discount_by_labhazir,\n start_date_by_labhazir:\n e.target\n .value,\n end_date_by_labhazir:\n discountLabHazirToLab.end_date_by_labhazir,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.start_date_by_labhazir &&\n touched.start_date_by_labhazir\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n
    \n \n {\n this.setState({\n discountLabHazirToLab:\n {\n id: this.state\n .discountLabHazirToLab\n .id,\n lab_id:\n this.props.match\n .params.id,\n discount_by_labhazir:\n discountLabHazirToLab.discount_by_labhazir,\n start_date_by_labhazir:\n discountLabHazirToLab.start_date_by_labhazir,\n end_date_by_labhazir:\n e.target\n .value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.end_date_by_labhazir &&\n touched.end_date_by_labhazir\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n
    \n )}\n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n \n \n \n \n \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nDiscountLabHazirList.propTypes = {\n match: PropTypes.object,\n discountLabHazirToLabs: PropTypes.array,\n className: PropTypes.any,\n onGetDiscountLabHazirToLabs: PropTypes.func,\n onUpdateDiscountLabHazirToLab: PropTypes.func,\n onUpdateDiscountAllLabHazirToLab: PropTypes.func,\n};\n\nconst mapStateToProps = ({ discountLabHazirToLabs }) => ({\n discountLabHazirToLabs: discountLabHazirToLabs.discountLabHazirToLabs,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetDiscountLabHazirToLabs: id => dispatch(getDiscountLabHazirToLabs(id)),\n onUpdateDiscountLabHazirToLab: discountLabHazirToLab =>\n dispatch(updateDiscountLabHazirToLab(discountLabHazirToLab)),\n onUpdateDiscountAllLabHazirToLab: discountLabHazirToLab =>\n dispatch(updateDiscountAllLabHazirToLab(discountLabHazirToLab)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(DiscountLabHazirList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { Tooltip } from \"@material-ui/core\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter ,selectFilter} from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getBanks,\n updateBank,\n} from \"store/createbank/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass BanksList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n banks: [],\n bank: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n paymentStatusListColumns: [\n {\n text: \"ID\",\n dataField: \"id\",\n sort: true,\n formatter: (cellContent, bank) => (\n <>{bank.id}\n ),filter: textFilter(),\n },\n {\n dataField: \"name\",\n text: \"Bank Name\",\n sort: true,\n formatter: (cellContent, bank) => (\n <>\n\n{bank.name}\n\n \n ),filter: textFilter(),\n },\n {\n dataField: \"phone\",\n text: \"Bank Phone\",\n sort: true,\n formatter: (cellContent, bank) => (\n <>\n {bank.phone}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"email\",\n text: \"Bank Email\",\n sort: true,\n formatter: (cellContent, bank) => (\n <>\n {bank.email}\n \n ),filter: textFilter(),\n },\n // {\n // dataField: \"city\",\n // text: \"Bank City\",\n // sort: true,\n // formatter: (cellContent, bank) => (\n // // \n // <> {bank.city}\n // // \n // ), filter: textFilter(),\n // },\n // {\n // dataField: \"address\",\n // text: \"Bank Address\",\n // sort: true,\n // formatter: (cellContent, bank) => (\n // // \n // <> {bank.address}\n // // \n // ), filter: textFilter(),\n // },\n // {\n // dataField: \"branch_no\",\n // text: \"Branch No\",\n // sort: true,\n // formatter: (cellContent, bank) => (\n // // \n // <> {bank.branch_no}\n // // \n // ), filter: textFilter(),\n // },\n {\n dataField: \"registered_by\",\n text: \"Registered By\",\n sort: true,\n formatter: (cellContent, bank) => (\n <>\n {bank.registered_by}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"registered_at\",\n text: \"Registered At\",\n sort: true,\n formatter: (cellContent, bank) => {\n const date = new Date(bank.registered_at);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2); // Get the last 2 digits of the year\n \n return (\n

    \n {`${day}-${month}-${year}`}\n

    \n );\n },filter: textFilter(),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, bank) => (\n
    \n \n \n \n this.handlePaymentStatusClick(e, bank)\n }\n >\n \n \n \n
    \n ),\n },\n ],\n };\n this.handlePaymentStatusClick =\n this.handlePaymentStatusClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handlePaymentStatusClicks =\n this.handlePaymentStatusClicks.bind(this);\n }\n // The code for converting \"image source\" (url) to \"Base64\"\n toDataURL = url =>\n fetch(url)\n .then(response => response.blob())\n .then(\n blob =>\n new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.deposit_slip);\n reader.onerror = reject;\n reader.readAsDataURL(blob);\n })\n );\n\n // The code for converting \"Base64\" to javascript \"File Object\"\n dataURLtoFile = (dataurl, filename) => {\n var arr = dataurl.split(\",\"),\n mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(arr[1]),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new File([u8arr], filename, { type: mime });\n };\n componentDidMount() {\n const { banks, onGetBanks } = this.props;\n onGetBanks(this.state.user_id);\n this.setState({ banks });\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handlePaymentStatusClicks = () => {\n this.setState({\n bank: \"\",\n deposit_slip: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { banks } = this.props;\n if (\n !isEmpty(banks) &&\n size(prevProps.banks) !== size(banks)\n ) {\n this.setState({ banks: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n\n handlePaymentStatusClick = (e, arg) => {\n this.setState({\n bank: {\n id: arg.id,\n // deposited_at: arg.deposited_at,\n name: arg.name,\n email: arg.email,\n phone: arg.phone,\n registered_by: arg.registered_by,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { banks } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onUpdateBank,\n onGetBanks,\n } = this.props;\n const bank = this.state.bank;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: banks.length, // replace later with size(banks),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Banks List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n
    \n \n\n \n \n {!!isEdit\n ? \"Edit Bank Details\"\n : \"Add Quality Certificate\"}\n \n \n \n hiddenEditFlag == false, //just an e.g. you can return a function\n then: Yup.string().required(\n \"Please upload Payment Slip\"\n ),\n }\n ),\n // Validation for logo based on type value\n // type: Yup.string(),\n // logo: Yup.mixed().test(\n // \"required\",\n // \"Please upload logo\",\n // ),\n\n \n })}\n onSubmit={values => {\n const updateBank =\n {\n id: bank.id,\n deposited_by:\n values.deposited_by,\n name: values.name,\n phone: values.phone,\n email:\n values.email,\n \n };\n\n // update PaymentStatus\n onUpdateBank(\n updateBank\n );\n setTimeout(() => {\n onGetBanks(\n this.state.user_id\n );\n }, 1000);\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n\n
    \n \n Bank Name\n \n *\n \n \n {\n this.setState({\n bank: {\n id: bank.id,\n phone:\n bank.phone,\n email: bank.email,\n registered_by: bank.registered_by,\n name:\n e.target.value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.name &&\n touched.name\n ? \" is-invalid\"\n : \"\")\n } \n \n />\n
    \n\n
    \n \n Phone\n \n *\n \n \n {\n this.setState({\n bank: {\n id: bank.id,\n name:\n bank.name,\n email: bank.email,\n registered_by: bank.registered_by,\n phone:\n e.target.value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.phone &&\n touched.phone\n ? \" is-invalid\"\n : \"\")\n } \n />\n
    \n
    \n \n Email\n \n *\n \n \n {\n this.setState({\n bank: {\n id: bank.id,\n name:\n bank.name,\n phone: bank.phone,\n registered_by: bank.registered_by,\n email:\n e.target.value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.email &&\n touched.email\n ? \" is-invalid\"\n : \"\")\n } \n />\n
    \n \n {/*
    \n \n Registered By\n \n *\n \n \n {\n this.setState({\n bank: {\n id: bank.id,\n name:\n bank.name,\n phone: bank.phone,\n email: bank.email,\n registered_by:\n e.target.value,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.registered_by &&\n touched.registered_by\n ? \" is-invalid\"\n : \"\")\n } \n />\n
    */}\n {/* Certificate Expiry date field */}\n\n {/*
    \n \n Deposit at\n \n {\n this.setState({\n bank: {\n id: bank.id,\n deposit_bank: bank.deposit_bank,\n deposit_slip: bank.deposit_slip,\n deposited_at:\n e.target.value +\n \":00Z\",\n // estimated_result_uploading_at:\n // bank.estimated_result_uploading_at,\n },\n });\n }}\n className={\n \"form-control\" +\n (errors.deposited_at &&\n touched.deposited_at\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    */}\n\n {/*
    \n \n \n this.setState({\n deposit_bank: e.target.value,\n })\n }\n value={\n this.state\n .bank\n .deposit_bank} className=\"form-select\"\n >\n \n --- Please select the Type\n ---\n \n \n \n \n\n \n
    */}\n\n {/* Certificate field */}\n {/*
    \n \n {\n this.setState({\n resultFile:\n e.target\n .files[0],\n });\n }}\n className={\n \"form-control\" +\n (errors.deposit_slip &&\n touched.deposit_slip\n ? \" is-invalid\"\n : \"\")\n }\n />\n\n \n
    */}\n \n {/* Certificate Type field */}\n {/*
    \n \n {\n this.setState({\n bank: {\n id: bank.id,\n deposit_bank:\n bank.deposit_bank,\n // deposited_at: bank.deposit_bank,\n deposit_slip: bank.deposit_slip,\n status :\n e.target.value,\n },\n });\n }}\n multiple={false}\n value={\n this.state\n .bank\n .status\n }\n >\n \n \n \n \n \n \n \n
    */}\n\n \n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n {/* \n \n \n \n */}\n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nBanksList.propTypes = {\n match: PropTypes.object,\n banks: PropTypes.array,\n className: PropTypes.any,\n onGetBanks: PropTypes.func,\n onUpdateBank: PropTypes.func,\n};\n\nconst mapStateToProps = ({ bankAccount }) => ({\n banks: bankAccount.banks,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetBanks: id => dispatch(getBanks(id)),\n onUpdateBank: bank =>\n dispatch(updateBank(bank)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(BanksList));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport Select from \"react-select\";\nimport { Tooltip } from \"@material-ui/core\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getBankaccounts,\n updateBankaccount,\n} from \"store/bankaccounts/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass BanksList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n bankaccounts: [],\n bankaccount: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n paymentStatusListColumns: [\n {\n text: \"ID\",\n dataField: \"id\",\n sort: true,\n formatter: (cellContent, bankaccount) => (\n <>{bankaccount.id}\n ), filter: textFilter(),\n },\n {\n dataField: \"account_no\",\n text: \"Account No\",\n sort: true,\n formatter: (cellContent, bankaccount) => (\n // \n <> {bankaccount.account_no}\n // \n ), filter: textFilter(),\n\n },\n {\n dataField: \"account_type\",\n text: \"Account Type\",\n sort: true,\n formatter: (cellContent, bankaccount) => (\n // \n <> {bankaccount.account_type}\n // \n ), filter: selectFilter({\n options: {\n '': 'All',\n 'LABHAZIR': 'Labhazir',\n 'DONATION': 'Donation',\n },\n defaultValue: 'All',\n }),\n },\n {\n dataField: \"categorey\",\n text: \"Category\",\n sort: true,\n formatter: (cellContent, bankaccount) => (\n // \n <> \n {bankaccount.categorey == \"PERSONAL\" ? (\n \"personal\"\n\n ) : bankaccount.categorey == \"SAVING\" ? (\n \"Saving\"\n\n ) : bankaccount.categorey == \"CURRENT\" ? (\n \"Current\"\n ) : null}\n \n // \n ), filter: selectFilter({\n options: {\n '': 'All',\n 'PERSONAL': 'Personal',\n 'SAVING': 'Saving',\n 'CURRENT': 'Current',\n },\n defaultValue: 'All',\n }),\n },\n {\n dataField: \"currency\",\n text: \"Currency\",\n sort: true,\n formatter: (cellContent, bankaccount) => (\n // \n <> \n {/* {bankaccount.currency} */}\n {bankaccount.currency == \"RUPEESS\" ? (\n \"Rs\"\n\n ) : bankaccount.currency == \"DOLLAR\" ? (\n \"Dollar\"\n\n ) : bankaccount.currency == \"EURO\" ? (\n \"Euro\"\n ) : null}\n \n // \n ), filter: selectFilter({\n options: {\n '': 'All',\n 'RUPEESS': 'Rs',\n 'DOLLAR': 'Dollar',\n 'EURO': 'Euro',\n },\n defaultValue: 'All',\n }),\n },\n {\n dataField: \"opening_balance\",\n text: \"Opening Balance\",\n sort: true,\n formatter: (cellContent, bankaccount) => (\n
    \n <> {bankaccount.opening_balance.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n
    ), filter: textFilter(),\n },\n {\n dataField: \"creating_at\",\n text: \"Created At\",\n sort: true,\n formatter: (cellContent, bank) => {\n const date = new Date(bank.creating_at);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2); // Get the last 2 digits of the year\n \n return (\n

    \n {`${day}-${month}-${year}`}\n

    \n );\n },filter: textFilter(),\n },\n {\n dataField: \"city\",\n text: \"Bank City\",\n sort: true,\n formatter: (cellContent, bank) => (\n // \n <> {bank.city}\n // \n ), filter: textFilter(),\n },\n {\n dataField: \"address\",\n text: \"Bank Address\",\n sort: true,\n formatter: (cellContent, bank) => (\n // \n <> {bank.address}\n // \n ), filter: textFilter(),\n },\n {\n dataField: \"branch_no\",\n text: \"Bank Branch No\",\n sort: true,\n formatter: (cellContent, bank) => (\n // \n <> {bank.branch_no}\n // \n ), filter: textFilter(),\n },\n {\n dataField: \"status\",\n text: \"Status\",\n sort: true,\n formatter: (cellContent, bankaccount) => (\n // \n <> {bankaccount.status}\n // \n ), filter: selectFilter({\n options: {\n '': 'All',\n 'ACTIVE': 'Active',\n 'IN_ACTIVE': 'In Active',\n },\n defaultValue: 'All',\n }),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, bankaccount) => (\n
    \n \n \n \n this.handlePaymentStatusClick(e, bankaccount)\n }\n >\n \n \n\n
    \n ),\n },\n ],\n };\n this.handlePaymentStatusClick =\n this.handlePaymentStatusClick.bind(this);\n this.toggle = this.toggle.bind(this);\n this.handlePaymentStatusClicks =\n this.handlePaymentStatusClicks.bind(this);\n }\n componentDidMount() {\n const { bankaccounts, onGetBankaccounts } = this.props;\n onGetBankaccounts(this.state.user_id);\n this.setState({ bankaccounts });\n\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handlePaymentStatusClicks = () => {\n this.setState({\n bankaccount: \"\",\n deposit_slip: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { bankaccounts } = this.props;\n if (\n !isEmpty(bankaccounts) &&\n size(prevProps.bankaccounts) !== size(bankaccounts)\n ) {\n this.setState({ bankaccounts: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n /* Insert,Update Delete data */\n\n toggleDeleteModal = () => {\n this.setState(prevState => ({\n deleteModal: !prevState.deleteModal,\n }));\n };\n\n\n handlePaymentStatusClick = (e, arg) => {\n this.setState({\n bankaccount: {\n id: arg.id,\n // deposited_at: arg.deposited_at,\n status: arg.status,\n account_no: arg.account_no,\n // phone: arg.phone,\n // registered_by: arg.registered_by,\n },\n isEdit: true,\n });\n\n this.toggle();\n };\n\n render() {\n const { SearchBar } = Search;\n\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onUpdateBankaccount,\n onGetBankaccounts,\n } = this.props;\n const bankaccount = this.state.bankaccount;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: 100, // replace later with size(bankaccounts),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n const { bankaccounts } = this.props;\n const bankaccountList = [];\n for (let i = 0; i < bankaccounts.length; i++) {\n let flag = 0;\n // for (let j = 0; j < bankaccounts.length; j++) {\n // if (banks[i].id == bankaccounts[j].bank_id) {\n // flag = 1;\n // }\n // }\n if (!flag) {\n bankaccountList.push(\n {\n label: `${bankaccounts[i].bank_name} - ${bankaccounts[i].account_no}`,\n value: `${bankaccounts[i].id}`,\n }\n );\n }\n }\n\n return (\n \n
    \n \n Bank Accounts List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n\n \n \n \n \n
    \n \n\n \n \n {!!isEdit\n ? \"Edit Bank Account\"\n : \"Add Quality Certificate\"}\n \n \n \n hiddenEditFlag == false, //just an e.g. you can return a function\n then: Yup.string().required(\n \"Please upload Payment Slip\"\n ),\n }\n ),\n })}\n onSubmit={values => {\n const updateBankaccount =\n {\n id: bankaccount.id,\n account_no: values.account_no,\n status:\n values.status,\n\n };\n\n // update PaymentStatus\n onUpdateBankaccount(\n updateBankaccount\n );\n setTimeout(() => {\n onGetBankaccounts(\n this.state.user_id\n );\n }, 1000);\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n
    \n \n {\n this.setState({\n bankaccount: {\n id: bankaccount.id,\n account_no:\n e.target.value,\n },\n });\n }}\n value={\n this.state\n .bankaccount\n .account_no\n }\n >\n \n \n
    \n
    \n \n \n \n \n\n \n \n
    \n\n\n \n
    \n \n \n
    \n \n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nBanksList.propTypes = {\n match: PropTypes.object,\n bankaccounts: PropTypes.array,\n className: PropTypes.any,\n onGetBankaccounts: PropTypes.func,\n onUpdateBankaccount: PropTypes.func,\n history: PropTypes.any,\n\n};\n\nconst mapStateToProps = ({ bankaccounts }) => ({\n bankaccounts: bankaccounts.bankaccounts,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetBankaccounts: id => dispatch(getBankaccounts(id)),\n onUpdateBankaccount: bankaccount =>\n dispatch(updateBankaccount(bankaccount)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(BanksList));\n","import PropTypes, { any } from \"prop-types\";\nimport Select from \"react-select\";\nimport React, { Component } from \"react\";\nimport {\n Alert,\n Button,\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\n// Redux\nimport { connect } from \"react-redux\";\nimport { Link, withRouter } from \"react-router-dom\";\n\n//Import Breadcrumb\nimport Breadcrumb from \"../../components/Common/Breadcrumb\";\n\n// actions\nimport { updateLabPayments, getLabPayments } from \"store/auth/payments/actions\";\n\nclass Payments extends Component {\n constructor(props) {\n super(props);\n this.state = {\n amount: \"\",\n counter_discount: \"0\",\n amount_received: \"\",\n received_by:\"\",\n payment_method: \"Cash\",\n isPaymentUpdated: false,\n isPaymentFailed: false,\n\n // id: localStorage.getItem(\"authUser\")\n // ? JSON.parse(localStorage.getItem(\"authUser\")).id\n // : \"\",\n };\n }\n\n componentDidMount() {\n console.log(\"test appointment id: \", this.props.match.params.id);\n setTimeout(() => {\n console.log(this.props.getLabPayments(this.props.match.params.id));\n }, 1000);\n\n setTimeout(() => {\n this.setState({\n amount: this.props.success.amount,\n payment_method: this.props.payment_method,\n counter_discount: this.props.success.counter_discount,\n amount_received: this.props.success.amount_received,\n received_by: this.props.success.received_by,\n });\n }, 2000);\n }\n\n render() {\n console.log(\" amount: \", this.props.success.amount);\n\n return (\n \n
    \n \n {/* Render Breadcrumb */}\n \n {\n this.state.isPaymentUpdated && this.state.isPaymentUpdated ? (\n Payment Status Updated.\n ) : null}\n\n {/*

    Update B2BClient Profile

    */}\n {\n this.state.isPaymentFailed && this.state.isPaymentFailed ? (\n Make sure Amount Received and Counter Discount equal to Total Amount.\n ) : null}\n\n {/*

    Update B2BClient Profile

    */}\n\n \n \n {\n // If no error messages then show wait message\n // setTimeout(() => {\n if ((Number(this.state.counter_discount) + Number(this.state.amount_received))==Number(this.state.amount)) {\n console.log(\"Amount:\",this.state.amount);\n console.log(\"Smount:\",this.state.counter_discount);\n console.log(\"Rmount:\",this.state.amount_received);\n this.setState({ isPaymentUpdated: true }\n );\n setTimeout(() => {\n this.props.history.push(\"/in-process-test-appointments\");}, 3000);\n \n }\n \n if (this.state.amount !== (Number(this.state.counter_discount) + Number(this.state.amount_received))) {\n console.log(\"hell\",this.state.counter_discount + this.state.amount_received)\n this.setState({ isPaymentFailed: true });\n } \n \n window.scrollTo({top: 0, left: 0, behavior: 'smooth'});\n\n // To get updated profile again\n setTimeout(() => {\n this.props.updateLabPayments(\n values,\n this.props.match.params.id\n );\n\n // To get updated settings again\n setTimeout(() => {\n this.props.getLabPayments(this.props.match.params.id);\n }, 1000);\n\n // To make success message disappear after sometime\n setTimeout(() => {\n this.setState({\n isPaymentUpdated: false,\n });\n }, 5000);\n setTimeout(() => {\n this.setState({\n isPaymentFailed: false,\n });\n }, 5000);\n }, 2000);\n }}\n >\n {({ errors, status, touched }) => (\n
    \n
    \n \n \n this.setState({\n amount: e.target.value,\n })\n }\n value={this.state.amount}\n className={\n \"form-control\" +\n (errors.amount && touched.amount\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n
    \n \n \n this.setState({\n payment_method: e.target.value,\n })\n }\n value={this.state.payment_method}\n className={\n \"form-control\" +\n (errors.payment_method && touched.payment_method\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n \n {/* phone field */}\n
    \n \n \n this.setState({\n counter_discount: e.target.value,\n })\n }\n value={this.state.counter_discount}\n className={\n \"form-control\" +\n (errors.counter_discount && touched.counter_discount\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n \n \n Note: If any Kind of Counter Discount has been given, then this must be written.\n \n \n
    \n\n {/* phone field */}\n
    \n \n \n this.setState({\n amount_received: e.target.value,\n })\n }\n value={this.state.amount_received}\n className={\n \"form-control\" +\n (errors.amount_received && touched.amount_received\n ? \" is-invalid\"\n : \"\")\n }\n />\n \n
    \n\n {/* Email field */}\n
    \n \n \n this.setState({ received_by: e.target.value })\n }\n value={this.state.received_by}\n className={\n \"form-control\" +\n (errors.received_by && touched.received_by ? \" is-invalid\" : \"\")\n }\n />\n \n
    \n \n\n
    \n \n
    \n
    \n )}\n \n
    \n
    \n
    \n
    \n
    \n );\n }\n}\n\nPayments.propTypes = {\n match: PropTypes.object,\n history: any,\n location: PropTypes.object,\n payment_method: PropTypes.object,\n updateLabPayments: PropTypes.func,\n error: PropTypes.any,\n success: PropTypes.any,\n getLabPayments: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const { error, success } = state.Payments;\n console.log(\"Total Payment: \", state.Payments.success);\n return { error, success };\n};\n\nexport default withRouter(\n connect(mapStateToProps, {\n updateLabPayments,\n getLabPayments,\n })(Payments)\n);","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport * as Yup from \"yup\";\n\nimport {\n Card,\n CardBody,\n Col,\n Container,\n Row,\n Label,\n Button,\n Modal,\n ModalBody,\n ModalHeader,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport \"assets/scss/table.scss\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n // getUnits,\n getLabCorporate,\n} from \"store/corporatedata/actions\";import {\n // getUnits,\n addNewCorporate,\n} from \"store/offered-tests/actions\";\nimport {\n getLabProfile\n} from \"store/test-appointments/actions\";\n\nclass TestsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n selectedStatus: null,\n selectedName: null,\n cemployeeDatas: [],\n labProfiles: [],\n offeredTests: [],\n offeredTest: \"\",\n corporate_id: \"\",\n assignedTo: \"\",\n TestsList: \"\",\n btnText: \"Copy\",\n selectedallow: \"No\", // Set the default value of selectedallow to \"No\"\n cemployeeDatas: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n testsListListColumns: [\n {\n text: \"id\",\n dataField: \"id\",\n sort: true,\n hidden: true,\n formatter: (cellContent, offeredTest) => <>{offeredTest.id},\n },\n {\n dataField: \"name\",\n text: \"Corporate Name\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.name}\n \n \n ),\n },\n {\n dataField: \"offered_tests\",\n text: \"Test List\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n {/* \n {offeredTest.offered_tests}\n */}\n {offeredTest.offered_tests}\n \n ),\n },\n {\n dataField: \"payment_terms\",\n text: \"Payment Terms\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.payment_terms}\n \n \n ),\n },\n {\n dataField: \"corporate_status\",\n text: \"Status\",\n sort: true,\n formatter: (cellContent, offeredTest) => (\n <>\n \n {offeredTest.corporate_status}\n \n \n ),\n },\n {\n dataField: \"menu\",\n isDummyField: true,\n editable: false,\n text: \"Action\",\n formatter: (cellContent, offeredTest) => (\n //
    \n
    \n this.handleOfferedTestClicks(e, offeredTest.id, offeredTest.allow_all, offeredTest.name)}\n >\n \n Accept\n \n
    \n //
    \n ),\n },\n ],\n };\n this.toggle = this.toggle.bind(this);\n this.toggleMessageModal.bind(this);\n this.handleOfferedTestClicks = this.handleOfferedTestClicks.bind(this);\n }\n\n componentDidMount() {\n const { cemployeeDatas, onGetLabCorporate } = this.props;\n console.log(onGetLabCorporate(this.state.user_id));\n this.setState({ cemployeeDatas });\n\n const { labProfiles, onGetLabProfile } = this.props;\n onGetLabProfile(this.state.user_id);\n this.setState({\n labProfiles\n });\n }\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n test_details: arg.test_details,\n description_in_english: arg.description_in_english,\n description_in_urdu: arg.description_in_urdu,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n openOtherModal = (e, arg) => {\n this.setState({\n OtherModal: true,\n test_details: arg.test_details,\n description_in_english: arg.description_in_english,\n description_in_urdu: arg.description_in_urdu,\n });\n };\n toggleOtherModal = () => {\n this.setState(prevState => ({\n OtherModal: !prevState.OtherModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleApprovedEvent = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggle();\n };\n\n toggleMessageModal = () => {\n this.setState(prevState => ({\n messageModal: !prevState.messageModal,\n }));\n };\n\n openMessageModal = (e, arg) => {\n this.setState({ messageModal: true, message: arg.message });\n };\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n handleApprovedEvent = (e, arg) => {\n this.setState({\n id: arg,\n });\n\n this.toggle();\n };\n handleOfferedTestClicks = (e, arg1, arg2, arg3) => {\n this.setState({\n offeredTest: \"\",\n isEdit: false,\n initialValues: {\n ...this.state.initialValues,\n corporate_id: arg1, // set the corporate_id value to arg\n allow_all: arg2,\n corporate_name: arg3, // set the corporate_id value to arg\n // status: arg3,\n },\n selectedcor: arg1,\n selectedallow: arg2 === \"Yes\" ? \"Yes\" : \"No\", // Set selectedallow based on arg2 value\n corporatename: arg3,\n // selectedstatus: arg3, \n\n }\n );\n this.toggle();\n };\n handleSaveButtonClick = () => {\n // Your other logic...\n // Your other logic...\n const { selectedcor, selectedallow } = this.state; // Use selectedTest from the component state\n\n // If selectedallow is undefined, set it to \"No\"\n const { offeredTest } = this.state;\n const newOfferedTest = {\n\n corporate_id: selectedcor, // Use selectedTest as the corporate_id value\n status: \"Accept\",\n allow_all: selectedallow\n \n };\n\n this.props.onAddNewCorporate(newOfferedTest,this.state.user_id, setTimeout(() => {\n this.props.history.push(\"/accepted-corporates-List\");\n }, 2000));\n\n this.toggle();\n };\n handleNameChange = (e) => {\n this.setState({ selectedName: e.target.value });\n };\n\n handleStatusChange = (e) => {\n this.setState({ selectedStatus: e.target.value });\n };\n handleSelectChange = (event) => {\n const selectedValue = event.target.value;\n this.setState({ selectedValue });\n // Perform navigation based on the selected value\n if (selectedValue === 'Pending Corporate') {\n this.props.history.push('/corporates-List');\n }\n if (selectedValue === 'Accepted Corporate') {\n this.props.history.push('/accepted-corporates-List');\n }\n}\n render() {\n const { SearchBar } = Search;\n const { isEdit, deleteModal } = this.state;\n const { offeredTests } = this.props;\n const { labProfiles } = this.props;\n const offeredTest = this.state.offeredTest;\n const { cemployeeDatas } = this.props;\n const data = this.state.data;\n const { onGetLabProfile, onAddNewCorporate, onGetLabCorporate } = this.props;\n\n const uniqueCorporateName = [...new Set(cemployeeDatas.map(data => data.name))];\n\n // Generate NameOptions for the dropdown\n const corporateStatusOptions = uniqueCorporateStatus.map((EmployeeStatus, index) => (\n \n ));\n\n // Combine the filters\n const filteredData = cemployeeDatas.filter(item => {\n const { selectedName, selectedStatus } = this.state;\n const nameFilter = !selectedName || item.name === selectedName;\n const statusFilter = !selectedStatus || item.corporate_status === selectedStatus;\n return nameFilter && statusFilter;\n });\n const pageOptions = {\n sizePerPage: cemployeeDatas.length,\n totalSize: cemployeeDatas.length, // replace later with size(cemployeeDatas),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Corporate Medical Tests | Lab Hazir\n \n\n \n {/* Render Breadcrumbs */}\n \n \n \n
    \n
    \n \n \n \n \n \n
    \n
    \n \n\n
    \n \n \n \n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n {/*
    \n {this.props.labProfiles.type === \"Main Lab\" && (\n \n \n Note: Here only the list of Corporations that match your Territorie will be shown.\n \n \n )}
    */}\n
    \n \n \n Note: Only corporations that match the territory of your lab will be displayed. The lab has the option to accept working with these corporations, considering the test prices and payment terms.\n \n \n
    \n \n \n
    \n \n \n \n {corporateNameOptions}\n \n
    \n \n \n
    \n \n \n \n {corporateStatusOptions}\n \n
    \n \n {/* \n
    \n
    \n \n \n \n
    \n
    \n \n */}\n
    \n \n \n
    \n \n \n \n {!!isEdit\n ? \"Edit Offered Test\"\n : \"Corporate Offer\"}\n \n \n {\n const { isEdit, selectedallow , selectedcor, corporatename} = this.state; // get isEdit and selectedTest from component state\n {\n const newOfferedTest = {\n corporate_id: selectedcor,\n name: corporatename,\n allow_all: selectedallow,\n };\n onAddNewCorporate(newOfferedTest, this.state.user_id);\n setTimeout(() => {\n onGetLabCorporate(this.state.user_id);\n }, 1000);\n }\n this.setState({\n selectedOfferedTest: null,\n });\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n
    \n \n \n \n
    \n {this.props.labProfiles.type === \"Main Lab\" && (\n\n \n
    \n \n Collection Points are allowed to handle this corporate patients.\n \n *\n \n \n \n this.setState({ selectedallow: e.target.value })}\n >\n {/* options */}\n \n \n \n\n \n
    \n\n )}\n
    \n\n \n \n
    \n this.handleSaveButtonClick()}\n>\n Save\n \n
    \n \n
    \n
    \n )}\n \n
    \n \n
    \n \n
    \n
    \n )}\n \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nTestsList.propTypes = {\n history: PropTypes.any,\n match: PropTypes.object,\n cemployeeDatas: PropTypes.array,\n labProfiles: PropTypes.array,\n className: PropTypes.any,\n onGetLabCorporate: PropTypes.func,\n onAddNewCorporate: PropTypes.func,\n offeredTests: PropTypes.array,\n onAssignAudit: PropTypes.func,\n onGetLabProfile: PropTypes.func,\n\n};\nconst mapStateToProps = ({ cemployeeData, testAppointments }) => ({\n cemployeeDatas: cemployeeData.cemployeeDatas,\n labProfiles: testAppointments.labProfiles,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetLabCorporate: id => dispatch(getLabCorporate(id)),\n onGetLabProfile: id => dispatch(getLabProfile(id)),\n onAddNewCorporate: (offeredTest, id) =>\n dispatch(addNewCorporate(offeredTest, id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(TestsList));\n","import {\n GET_LABS_LIST_PENDING_FEE_SUCCESS,\n GET_LABS_LIST_PENDING_FEE_FAIL,\n GET_LABS_LIST_APPROVED_FEE_SUCCESS,\n GET_LABS_LIST_APPROVED_FEE_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n labsListPendingFee: [],\n labsListApprovedFee: [],\n error: {},\n};\n\nconst labsListPendingFee = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_LABS_LIST_PENDING_FEE_SUCCESS:\n return {\n ...state,\n labsListPendingFee: action.payload || [],\n };\n\n case GET_LABS_LIST_PENDING_FEE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_LABS_LIST_APPROVED_FEE_SUCCESS:\n return {\n ...state,\n labsListApprovedFee: action.payload || [], \n };\n\n case GET_LABS_LIST_APPROVED_FEE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default labsListPendingFee;\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\nimport { connect } from \"react-redux\";\nimport { Link } from \"react-router-dom\";\nimport { withRouter } from \"react-router-dom\";\nimport { Formik, Field, Form } from \"formik\";\nimport { Collapse } from \"reactstrap\";\nimport logo from \"../../../assets/images/logo.svg\";\nimport logoLight from \"../../../assets/images/logo-light.png\";\nimport logoLightSvg from \"../../../assets/images/logo-light.svg\";\nimport StarRatings from \"react-star-ratings\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport \"../../../components/HorizontalLayout/horizontal-navbar.scss\";\n\n\nimport ScrollButton from \"components/Common/Scrollbutton\";\nimport {\n Card,\n Button,\n CardBody,\n Label,\n Modal,\n ModalBody,\n ModalHeader,\n Col,\n Container,\n Input,\n Pagination,\n PaginationItem,\n PaginationLink,\n Row,\n Alert,\n} from \"reactstrap\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\nimport \"nouislider/distribute/nouislider.css\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { any } from \"prop-types\";\n\nimport { getOfferedProfilesReferrel } from \"store/offered-tests/actions\";\nimport { addToCart } from \"store/actions\";\nimport { getCarts } from \"store/carts/actions\";\n\nclass TestsOffered extends Component {\n constructor(props) {\n super(props);\n this.state = {\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n patient_name: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).patient_name\n : \"\",\n position: \"right\",\n activeTab: \"1\",\n offeredTests: [],\n carts: [],\n cart: \"\",\n success: \"\",\n error: \"\",\n applied: true,\n loading: true, // Add loading state property\n page: 1,\n searchQuery: \"\", // New state property for search query\n totalPage: 5, //replace this with total pages of data\n itemsInCart: [],\n lab_name : \"\"\n };\n this.toggleTab = this.toggleTab.bind(this);\n console.log(\"yaha ani chahi hai uuid\", this.props.match.params.uuid)\n console.log(\"yaha ani chahi hai guid\", this.props.match.params.guest_id)\n console.log(\"yaha ani chahi hai fuid\", this.props.match.params.filnalurl)\n\n }\n\n componentDidMount() {\n const { carts, onGetCarts } = this.props;\n onGetCarts(this.state.user_id);\n this.setState({\n carts\n });\n const { ongetOfferedTestsReferrel } = this.props;\n if (this.state.applied) {\n ongetOfferedTestsReferrel();\n this.setState({ \n offeredTests: this.props.offeredTests,\n lab_name: this.props.offeredTests.length > 0 ? this.props.offeredTests[0].lab_name : \"\"\n });\n }\n setTimeout(() => {\n this.setState({ loading: false });\n }, 70000); // Set loading state to false after 7 seconds\n }\n componentDidUpdate(prevProps) {\n if (prevProps.offeredTests !== this.props.offeredTests) {\n this.setState({\n offeredTests: this.props.offeredTests,\n lab_name: this.props.offeredTests.length > 0 ? this.props.offeredTests[0].lab_name : \"\"\n });\n }\n }\n // incrementCart = () =>{\n // this.setState({count: this.state.count + 1})\n // }\n\n // eslint-disable-next-line no-unused-vars\n // componentDidUpdate(prevProps, prevState, snapshot) {\n // // const { offeredTests } = this.props;\n // // if (\n // // isEmpty(prevProps.offeredTests) &&\n // // !isEmpty(offeredTests) &&\n // // size(offeredTests) !== size(prevProps.offeredTests)\n // // ) {\n // // this.setState({ offeredTests });\n // // }\n // // Timeout functions to hide alerts after sometime......\n // // setTimeout(() => {\n // // this.setState({ success: \"\" });\n // // }, 10000);\n // // setTimeout(() => {\n // // this.setState({ error: \"\" });\n // // }, 10000);\n // }\n\n toggleTab(tab) {\n if (this.state.activeTab !== tab) {\n this.setState({\n activeTab: tab,\n });\n }\n }\n\n handlePageClick = page => {\n this.setState({ page });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n test_details: arg.test_details,\n });\n };\n\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n openDescriptionModal = (e, arg) => {\n this.setState({\n DescriptionModal: true,\n description_in_english: arg.description_in_english,\n description_in_urdu: arg.description_in_urdu,\n test_details: arg.test_details,\n test_name:arg.test_name,\n });\n };\n\n toggleDescriptionModal = () => {\n this.setState(prevState => ({\n DescriptionModal: !prevState.DescriptionModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n \n handleAddToCart = (cart) => {\n const { onAddToCart } = this.props;\n \n // Check if the item is already in the cart based on user type\n if (!this.state.user_id) {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n this.setState({ guest_id: this.props.match.params.guest_id });\n cart.guest_id = this.props.match.params.guest_id;\n onAddToCart(cart, cart.guest_id);\n \n console.log(\"uuid:\", cart.guest_id, this.props.match.params.guest_id);\n } else if (this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.state.user_id);\n } else if (this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.props.match.params.guest_id);\n } else if (this.state.user_type === \"b2bclient\" && this.state.user_type !== \"CSR\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.props.match.params.uuid);\n }\n \n // Update the state to include the newly added item in the cart\n const updatedItemsInCart = [...this.state.itemsInCart, cart];\n this.setState({ itemsInCart: updatedItemsInCart });\n \n this.showSuccessMessage(\"Item added Successfully\");\n };\n \n showErrorMessage = (message) => {\n this.showPopup(message, \"red\");\n };\n \n showSuccessMessage = (message) => {\n this.showPopup(message, \"green\");\n };\n \n showPopup = (message, textColor) => {\n // Create and style the popup\n const popup = document.createElement(\"div\");\n popup.style.display = \"none\";\n popup.style.position = \"fixed\";\n popup.style.top = \"0\";\n popup.style.left = \"0\";\n popup.style.width = \"100%\";\n popup.style.height = \"100%\";\n popup.style.background = \"rgba(0, 0, 0, 0.5)\";\n popup.style.zIndex = \"1000\";\n \n const popupContent = document.createElement(\"div\");\n popupContent.style.position = \"absolute\";\n popupContent.style.top = \"50%\";\n popupContent.style.left = \"50%\";\n popupContent.style.transform = \"translate(-50%, -50%)\";\n popupContent.style.background = \"#fff\";\n popupContent.style.padding = \"20px\";\n popupContent.style.borderRadius = \"5px\";\n popupContent.style.boxShadow = \"0 0 10px rgba(0, 0, 0, 0.3)\";\n \n const messageElement = document.createElement(\"div\");\n messageElement.style.fontSize = \"18px\";\n messageElement.style.textAlign = \"center\";\n messageElement.style.color = textColor; // Set the text color\n \n // Set the message\n messageElement.textContent = message;\n \n // Append elements to the DOM\n popupContent.appendChild(messageElement);\n popup.appendChild(popupContent);\n document.body.appendChild(popup);\n \n // Show the popup\n popup.style.display = \"block\";\n \n // Hide the popup after a certain duration (e.g., 3 seconds)\n setTimeout(() => {\n popup.style.display = \"none\";\n }, 1000); // 3000 milliseconds = 3 seconds\n };\n\n activateParentDropdown = item => {\n item.classList.add(\"active\");\n const parent = item.parentElement;\n if (parent) {\n parent.classList.add(\"active\"); // li\n const parent2 = parent.parentElement;\n parent2.classList.add(\"active\"); // li\n const parent3 = parent2.parentElement;\n if (parent3) {\n parent3.classList.add(\"active\"); // li\n const parent4 = parent3.parentElement;\n if (parent4) {\n parent4.classList.add(\"active\"); // li\n const parent5 = parent4.parentElement;\n if (parent5) {\n parent5.classList.add(\"active\"); // li\n const parent6 = parent5.parentElement;\n if (parent6) {\n parent6.classList.add(\"active\"); // li\n }\n }\n }\n }\n }\n return false;\n };\n handlePageClick = page => {\n this.setState({ page });\n };\n\n \n /**\n * Toggle sidebar\n */\n // toggleMenu() {\n // this.props.openLeftMenuCallBack();\n // }\n\n /**\n * Toggles the sidebar\n */\n // toggleRightbar() {\n // this.props.toggleRightSidebar();\n // }\n\n toggleFullscreen() {\n if (\n !document.fullscreenElement &&\n /* alternative standard method */ !document.mozFullScreenElement &&\n !document.webkitFullscreenElement\n ) {\n // current working methods\n if (document.documentElement.requestFullscreen) {\n document.documentElement.requestFullscreen();\n } else if (document.documentElement.mozRequestFullScreen) {\n document.documentElement.mozRequestFullScreen();\n } else if (document.documentElement.webkitRequestFullscreen) {\n document.documentElement.webkitRequestFullscreen(\n Element.ALLOW_KEYBOARD_INPUT\n );\n }\n } else {\n if (document.cancelFullScreen) {\n document.cancelFullScreen();\n } else if (document.mozCancelFullScreen) {\n document.mozCancelFullScreen();\n } else if (document.webkitCancelFullScreen) {\n document.webkitCancelFullScreen();\n }\n }\n }\n onUpdate = (render, handle, value) => {\n const { carts } = this.props;\n if (\n !isEmpty(carts) &&\n size(prevProps.carts) !== size(carts)\n ) {\n this.setState({ carts: {} });\n }\n this.setState({\n nearbyLabs: productsData.filter(\n nearbyLab =>\n nearbyLab.newPrice >= value[0] && nearbyLab.newPrice <= value[1]\n ),\n });\n };\n\n render() {\n const { onGetCarts } = this.props;\n\n const { loading } = this.state;\n const isLargeScreen = window.innerWidth < 490;\n const {lab_name } = this.state;\n const { page, totalPage } = this.state;\n const { offeredTests } = this.props.offeredTests;\n const { carts } = this.props;\n const offeredTest = this.state.offeredTest;\n const { searchQuery } = this.state;\n const filteredTests = this.props.offeredTests.filter((test) =>\n test.test_name.toLowerCase().includes(searchQuery.toLowerCase())\n );\n\n return (\n \n
    \n
    \n \n {this.state.user_id && this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\"\n ? (\n \n
      \n
    • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n
    • \n \n Labs\n \n
    • \n\n
    • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
    • \n
    • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
    • \n
    • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n
    • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n \n {this.state.user_id && this.state.user_type == \"patient\" && (\n
    • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
    • \n )}\n
    \n \n ) : null}\n {!this.state.user_id\n ? (\n \n
      \n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Book a Test\n \n
    • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Book a Test\n \n
    • \n ) : null}\n {this.props.match.params.filnalurl ? (\n
    • \n \n Labs\n \n
    • \n ) : (\n
    • \n \n Labs\n \n
    • \n )}\n\n{this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Tests\n \n
    • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Tests\n \n
    • \n ) : null}\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Profiles\n \n
    • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Profiles\n \n
    • \n ) : null}\n\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Packages\n \n
    • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Packages\n \n
    • \n ) : null}\n\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Radiology\n \n
    • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Radiology\n \n
    • \n ) : null}\n \n\n \n {/*
    • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
      \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
      \n
    • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
    • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
    • \n /*
    • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
      \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
      \n
    • */\n )}\n
    \n \n\n ) \n : this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\" ? (\n \n
      \n
    • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n
    • \n \n Labs\n {/* {this.props.t(\"Labs\")} */}\n \n
    • \n\n
    • \n {/* \n {this.props.t(\"Search by Tests\")}\n */}\n \n {/* {this.props.t(\"Tests\")} */}\n Tests\n \n
    • \n
    • \n \n {/* {this.props.t(\"Profiles\")} */}\n Profiles\n \n
    • \n
    • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n
    • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n \n {/*
    • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
      \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
      \n
    • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
    • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
    • \n /*
    • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
      \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
      \n
    • */\n )}\n\n
    \n \n ) :\n this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type === \"b2bclient\" ? (\n \n
      \n
    • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n
    • \n \n Labs\n \n
    • \n\n
    • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
    • \n
    • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
    • \n
    • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n
    • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n {this.state.user_id && this.state.user_type == \"patient\" && (\n
    • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
    • \n )}\n
    \n \n ) : null}\n\n \n
    \n
    \n \n
    \n \n Profiles Offered | Lab Hazir\n \n \n {/* */}\n

    Profiles Offered by {lab_name}

    \n {this.state.success ? (\n \n {this.state.success}\n \n ) : this.state.error ? (\n \n {this.state.error}\n \n ) : null}\n\n\n
    \n \n Search By Profile Name\n \n
    \n this.setState({ searchQuery: e.target.value })}\n />\n
    \n
    \n \n\n \n \n \n \n \n \n \n
    \n \n \n
    \n
    \n \n

    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n \n {/*
    \n \n
    */}\n
    \n \n
    \n
    \n
    \n
    \n \n {filteredTests.length > 0 ? (\n filteredTests.map((offeredTest, key) => (\n \n \n \n {/*
    \n \n
    */}\n\n {/*
    \n
    \n {offeredTest.test_name}{\" \"}\n
    */}\n \n {/* \n
    \n \n {\" \"}\n {offeredTest.test_type}\n \n
    \n\n
    \n \n {\" \"}\n {/* {offeredTest.price\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}{\" \"}\n {offeredTest.price} Rs\n \n
    \n
    \n \n {\" \"}\n {/* {offeredTest.price\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}{\" \"}\n {offeredTest.discount} % Discount By Lab\n \n
    \n {/*
    \n */}\n {/* {\" \"} */}\n {/* {offeredTest.price\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}{\" \"} */}\n {/* {offeredTest.discount_by_labhazir} % Discount By LabHazir\n\n \n
    \n\n
    \n \n {\" \"}\n Offered by {offeredTest.lab_name}\n \n
    \n\n {/*
    \n \n Home Sampling:{\" \"}\n {offeredTest.is_home_sampling_available}\n \n
    */}\n\n {/*
    \n \n EQA\n Participation:{\" \"}\n {offeredTest.is_eqa_participation}\n \n
    */}\n\n {/*
    \n \n Test Performed:{\" \"}\n {offeredTest.is_test_performed}\n \n
    \n\n
    \n \n Reporting\n Time: {offeredTest.duration_required}{\" \"}\n {offeredTest.duration_type}\n \n
    \n\n
    \n \n this.openDescriptionModal(e, offeredTest)\n }\n >\n Test Description\n \n
    \n this.handleAddToCart(offeredTest)}\n >\n Add to cart\n \n
    */}\n
    \n
    \n \n {offeredTest.test_name} \n \n
    \n {offeredTest.test_type != \"Test\" && (\n //
    \n \n this.openPatientModal(e, offeredTest)\n }\n >\n Test Description\n \n //
    \n )}\n {offeredTest.test_type == \"Test\" && (\n //
    \n \n this.openDescriptionModal(e, offeredTest)\n }\n >\n Test Description\n \n //
    \n )}\n \n {(offeredTest.discount >= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01) && (\n
    \n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
    \n )}\n {(offeredTest.discount >= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) <= 0.01) && (\n
    \n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
    \n )}\n {(offeredTest.discount <= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01) && (\n
    \n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
    \n )}\n {(offeredTest.discount <= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) <= 0.01) && (\n
    \n \n {/* {\" \"} */}\n Rs {((offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
    \n )}\n {offeredTest.discount>=0.01 && (\n
    \n \n {\" \"}\n Discount Lab: {(offeredTest.discount*100).toFixed()} % \n \n
    \n )}\n {(offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01 && (\n
    \n \n {\" \"}\n Discount LabHazir: {((offeredTest.all_discount_by_labhazir * 100) + (offeredTest.discount_by_labhazir * 100)).toFixed()} %\n \n\n
    \n )}\n \n
    \n \n Reporting\n Time: {offeredTest.duration_required}{\" \"}\n {offeredTest.duration_type}\n \n
    \n\n
    \n \n Home Sampling:{\" \"}\n {offeredTest.is_home_sampling_available}\n \n
    \n
    \n {\" \"}\n {!this.state.user_id ? (\n \n \n {offeredTest.lab_name}{\" \"}\n \n \n \n ):null}\n {(this.state.user_id) && (this.state.user_type ===\"CSR\") && (this.state.user_type !==\"b2bclient\") && (\n \n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !==\"CSR\") && (this.state.user_type !==\"b2bclient\") && (\n \n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !==\"CSR\") && (this.state.user_type ===\"b2bclient\") && (\n \n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n \n \n \n \n \n \n \n {offeredTest && offeredTest.rating && (\n

    {offeredTest.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

    \n )}\n
    \n \n
    \n {/* \n Lab:{\" \"}\n {offeredTest.lab_name}\n */}\n
    \n {/* this.handleAddToCart(offeredTest)}\n disabled={this.state.itemsInCart.includes(offeredTest)} // Disable the button if the item is in the cart\n>\n {this.state.itemsInCart.includes(offeredTest) ? 'Already Added' : 'Add to cart'}\n */}\n cartItem.offered_test_id === offeredTest.id) ? 'secondary' : 'primary'}\n className={`btn mt-3 me-1${this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id) ? ' disabled' : ''}`}\n // onClick={() => this.handleAddToCart(offeredTest)}\n onClick={() => {\n // Check if offeredTest.name is equal to any cartItem.name\n if (this.props.carts.some(cartItem => cartItem.test_name === offeredTest.test_name)) {\n alert(\"An item with the same name but from a different lab is already in the cart. Please remove the previous one first.\");\n } else {\n // If not, proceed with adding to the cart\n this.handleAddToCart(offeredTest);\n }\n }}\n disabled={this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id)}\n>\n {this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id) ? 'Already Added' : 'Add to cart'}\n\n
    \n
    \n
    \n \n ))\n ) : \n isEmpty(this.props.offeredTests) && loading ? (\n // Loading state\n \n \n
    \n Please Wait.....\n
    \n \n
    \n ) : (\n \n \n
    \n Sorry, No tests were found at your specified lab.....\n
    \n \n
    \n )\n }\n\n {/* \n \n \n \n this.handlePageClick(page - 1)}\n />\n \n {map(Array(totalPage), (item, i) => (\n \n this.handlePageClick(i + 1)}\n href=\"#\"\n >\n {i + 1}\n \n \n ))}\n \n this.handlePageClick(page + 1)}\n />\n \n \n \n */}\n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nTestsOffered.propTypes = {\n match: PropTypes.object,\n history: any,\n location: PropTypes.any,\n offeredTests: PropTypes.array,\n ongetOfferedTestsReferrel: PropTypes.func,\n onAddToCart: PropTypes.func,\n success: PropTypes.any,\n error: PropTypes.any,\n className: PropTypes.any,\n menuOpen: PropTypes.any,\n t: PropTypes.any,\n carts: PropTypes.any,\n onGetCarts: PropTypes.func,\n};\n\nconst mapStateToProps = ({ offeredTests, carts }) => ({\n offeredTests: offeredTests.offeredTests,\n carts: carts.carts,\n success: carts.success,\n error: carts.error,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n ongetOfferedTestsReferrel: () =>\n dispatch(getOfferedProfilesReferrel(ownProps.match.params.lab_account_id)),\n onAddToCart: (cart, id) => dispatch(addToCart(cart, id)),\n onGetCarts: id => dispatch(getCarts(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(TestsOffered));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\nimport { connect } from \"react-redux\";\nimport { Link } from \"react-router-dom\";\nimport { withRouter } from \"react-router-dom\";\nimport { Formik, Field, Form } from \"formik\";\nimport { Collapse } from \"reactstrap\";\nimport logo from \"../../../assets/images/logo.svg\";\nimport logoLight from \"../../../assets/images/logo-light.png\";\nimport logoLightSvg from \"../../../assets/images/logo-light.svg\";\nimport StarRatings from \"react-star-ratings\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport \"../../../components/HorizontalLayout/horizontal-navbar.scss\";\n\n\nimport ScrollButton from \"components/Common/Scrollbutton\";\nimport {\n Card,\n Button,\n CardBody,\n Label,\n Modal,\n ModalBody,\n ModalHeader,\n Col,\n Container,\n Input,\n Pagination,\n PaginationItem,\n PaginationLink,\n Row,\n Alert,\n} from \"reactstrap\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\nimport \"nouislider/distribute/nouislider.css\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { any } from \"prop-types\";\n\nimport { getOfferedPackagesReferrel } from \"store/offered-tests/actions\";\nimport { addToCart } from \"store/actions\";\nimport { getCarts } from \"store/carts/actions\";\n\n\nclass TestsOffered extends Component {\n constructor(props) {\n super(props);\n this.state = {\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n patient_name: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).patient_name\n : \"\",\n position: \"right\",\n activeTab: \"1\",\n offeredTests: [],\n carts: [],\n cart: \"\",\n success: \"\",\n error: \"\",\n applied: true,\n loading: true, // Add loading state property\n page: 1,\n searchQuery: \"\", // New state property for search query\n totalPage: 5, //replace this with total pages of data\n itemsInCart: [],\n lab_name: \"\",\n\n };\n this.toggleTab = this.toggleTab.bind(this);\n console.log(\"yaha ani chahi hai uuid\", this.props.match.params.uuid)\n console.log(\"yaha ani chahi hai guid\", this.props.match.params.guest_id)\n console.log(\"yaha ani chahi hai fuid\", this.props.match.params.filnalurl)\n\n }\n\n componentDidMount() {\n const { carts, onGetCarts } = this.props;\n onGetCarts(this.state.user_id);\n this.setState({\n carts\n });\n const { ongetOfferedTestsReferrel } = this.props;\n if (this.state.applied) {\n ongetOfferedTestsReferrel();\n this.setState({ \n offeredTests: this.props.offeredTests,\n lab_name: this.props.offeredTests.length > 0 ? this.props.offeredTests[0].lab_name : \"\"\n });\n }\n setTimeout(() => {\n this.setState({ loading: false });\n }, 70000); // Set loading state to false after 7 seconds\n }\n componentDidUpdate(prevProps) {\n if (prevProps.offeredTests !== this.props.offeredTests) {\n this.setState({\n offeredTests: this.props.offeredTests,\n lab_name: this.props.offeredTests.length > 0 ? this.props.offeredTests[0].lab_name : \"\"\n });\n }\n }\n // incrementCart = () =>{\n // this.setState({count: this.state.count + 1})\n // }\n\n // eslint-disable-next-line no-unused-vars\n // componentDidUpdate(prevProps, prevState, snapshot) {\n // // const { offeredTests } = this.props;\n // // if (\n // // isEmpty(prevProps.offeredTests) &&\n // // !isEmpty(offeredTests) &&\n // // size(offeredTests) !== size(prevProps.offeredTests)\n // // ) {\n // // this.setState({ offeredTests });\n // // }\n // // Timeout functions to hide alerts after sometime......\n // // setTimeout(() => {\n // // this.setState({ success: \"\" });\n // // }, 10000);\n // // setTimeout(() => {\n // // this.setState({ error: \"\" });\n // // }, 10000);\n // }\n\n toggleTab(tab) {\n if (this.state.activeTab !== tab) {\n this.setState({\n activeTab: tab,\n });\n }\n }\n\n handlePageClick = page => {\n this.setState({ page });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n test_details: arg.test_details,\n });\n };\n\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n openDescriptionModal = (e, arg) => {\n this.setState({\n DescriptionModal: true,\n description_in_english: arg.description_in_english,\n description_in_urdu: arg.description_in_urdu,\n test_details: arg.test_details,\n test_name:arg.test_name,\n });\n };\n\n toggleDescriptionModal = () => {\n this.setState(prevState => ({\n DescriptionModal: !prevState.DescriptionModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n handleAddToCart = (cart) => {\n const { onAddToCart } = this.props;\n \n // Check if the item is already in the cart based on user type\n if (!this.state.user_id) {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n this.setState({ guest_id: this.props.match.params.guest_id });\n cart.guest_id = this.props.match.params.guest_id;\n onAddToCart(cart, cart.guest_id);\n \n console.log(\"uuid:\", cart.guest_id, this.props.match.params.guest_id);\n } else if (this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.state.user_id);\n } else if (this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.props.match.params.guest_id);\n } else if (this.state.user_type === \"b2bclient\" && this.state.user_type !== \"CSR\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.props.match.params.uuid);\n }\n \n // Update the state to include the newly added item in the cart\n const updatedItemsInCart = [...this.state.itemsInCart, cart];\n this.setState({ itemsInCart: updatedItemsInCart });\n \n this.showSuccessMessage(\"Item added Successfully\");\n };\n \n showErrorMessage = (message) => {\n this.showPopup(message, \"red\");\n };\n \n showSuccessMessage = (message) => {\n this.showPopup(message, \"green\");\n };\n \n showPopup = (message, textColor) => {\n // Create and style the popup\n const popup = document.createElement(\"div\");\n popup.style.display = \"none\";\n popup.style.position = \"fixed\";\n popup.style.top = \"0\";\n popup.style.left = \"0\";\n popup.style.width = \"100%\";\n popup.style.height = \"100%\";\n popup.style.background = \"rgba(0, 0, 0, 0.5)\";\n popup.style.zIndex = \"1000\";\n \n const popupContent = document.createElement(\"div\");\n popupContent.style.position = \"absolute\";\n popupContent.style.top = \"50%\";\n popupContent.style.left = \"50%\";\n popupContent.style.transform = \"translate(-50%, -50%)\";\n popupContent.style.background = \"#fff\";\n popupContent.style.padding = \"20px\";\n popupContent.style.borderRadius = \"5px\";\n popupContent.style.boxShadow = \"0 0 10px rgba(0, 0, 0, 0.3)\";\n \n const messageElement = document.createElement(\"div\");\n messageElement.style.fontSize = \"18px\";\n messageElement.style.textAlign = \"center\";\n messageElement.style.color = textColor; // Set the text color\n \n // Set the message\n messageElement.textContent = message;\n \n // Append elements to the DOM\n popupContent.appendChild(messageElement);\n popup.appendChild(popupContent);\n document.body.appendChild(popup);\n \n // Show the popup\n popup.style.display = \"block\";\n \n // Hide the popup after a certain duration (e.g., 3 seconds)\n setTimeout(() => {\n popup.style.display = \"none\";\n }, 1000); // 3000 milliseconds = 3 seconds\n };\n\n activateParentDropdown = item => {\n item.classList.add(\"active\");\n const parent = item.parentElement;\n if (parent) {\n parent.classList.add(\"active\"); // li\n const parent2 = parent.parentElement;\n parent2.classList.add(\"active\"); // li\n const parent3 = parent2.parentElement;\n if (parent3) {\n parent3.classList.add(\"active\"); // li\n const parent4 = parent3.parentElement;\n if (parent4) {\n parent4.classList.add(\"active\"); // li\n const parent5 = parent4.parentElement;\n if (parent5) {\n parent5.classList.add(\"active\"); // li\n const parent6 = parent5.parentElement;\n if (parent6) {\n parent6.classList.add(\"active\"); // li\n }\n }\n }\n }\n }\n return false;\n };\n handlePageClick = page => {\n this.setState({ page });\n };\n\n \n /**\n * Toggle sidebar\n */\n // toggleMenu() {\n // this.props.openLeftMenuCallBack();\n // }\n\n /**\n * Toggles the sidebar\n */\n // toggleRightbar() {\n // this.props.toggleRightSidebar();\n // }\n\n toggleFullscreen() {\n if (\n !document.fullscreenElement &&\n /* alternative standard method */ !document.mozFullScreenElement &&\n !document.webkitFullscreenElement\n ) {\n // current working methods\n if (document.documentElement.requestFullscreen) {\n document.documentElement.requestFullscreen();\n } else if (document.documentElement.mozRequestFullScreen) {\n document.documentElement.mozRequestFullScreen();\n } else if (document.documentElement.webkitRequestFullscreen) {\n document.documentElement.webkitRequestFullscreen(\n Element.ALLOW_KEYBOARD_INPUT\n );\n }\n } else {\n if (document.cancelFullScreen) {\n document.cancelFullScreen();\n } else if (document.mozCancelFullScreen) {\n document.mozCancelFullScreen();\n } else if (document.webkitCancelFullScreen) {\n document.webkitCancelFullScreen();\n }\n }\n }\n onUpdate = (render, handle, value) => {\n const { carts } = this.props;\n if (\n !isEmpty(carts) &&\n size(prevProps.carts) !== size(carts)\n ) {\n this.setState({ carts: {} });\n }\n this.setState({\n nearbyLabs: productsData.filter(\n nearbyLab =>\n nearbyLab.newPrice >= value[0] && nearbyLab.newPrice <= value[1]\n ),\n });\n };\n\n render() {\n const { onGetCarts } = this.props;\n const { loading } = this.state;\n const isLargeScreen = window.innerWidth < 490;\n const {lab_name } = this.state;\n const { page, totalPage } = this.state;\n const { offeredTests } = this.props.offeredTests;\n const { carts } = this.props;\n const offeredTest = this.state.offeredTest;\n const { searchQuery } = this.state;\n const filteredTests = this.props.offeredTests.filter((test) =>\n test.test_name.toLowerCase().includes(searchQuery.toLowerCase())\n );\n\n return (\n \n
    \n
    \n \n {this.state.user_id && this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\"\n ? (\n \n
      \n
    • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n
    • \n \n Labs\n \n
    • \n\n
    • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
    • \n
    • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
    • \n
    • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n
    • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n \n {this.state.user_id && this.state.user_type == \"patient\" && (\n
    • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
    • \n )}\n
    \n \n ) : null}\n {!this.state.user_id\n ? (\n \n
      \n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Book a Test\n \n
    • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Book a Test\n \n
    • \n ) : null}\n {this.props.match.params.filnalurl ? (\n
    • \n \n Labs\n \n
    • \n ) : (\n
    • \n \n Labs\n \n
    • \n )}\n\n{this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Tests\n \n
    • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Tests\n \n
    • \n ) : null}\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Profiles\n \n
    • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Profiles\n \n
    • \n ) : null}\n\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Packages\n \n
    • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Packages\n \n
    • \n ) : null}\n\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Radiology\n \n
    • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Radiology\n \n
    • \n ) : null}\n \n\n \n {/*
    • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
      \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
      \n
    • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
    • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
    • \n /*
    • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
      \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
      \n
    • */\n )}\n
    \n \n\n ) \n : this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\" ? (\n \n
      \n
    • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n
    • \n \n Labs\n {/* {this.props.t(\"Labs\")} */}\n \n
    • \n\n
    • \n {/* \n {this.props.t(\"Search by Tests\")}\n */}\n \n {/* {this.props.t(\"Tests\")} */}\n Tests\n \n
    • \n
    • \n \n {/* {this.props.t(\"Profiles\")} */}\n Profiles\n \n
    • \n
    • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n
    • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n \n {/*
    • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
      \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
      \n
    • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
    • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
    • \n /*
    • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
      \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
      \n
    • */\n )}\n\n
    \n \n ) :\n this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type === \"b2bclient\" ? (\n \n
      \n
    • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n
    • \n \n Labs\n \n
    • \n\n
    • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
    • \n
    • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
    • \n
    • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n
    • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n \n {this.state.user_id && this.state.user_type == \"patient\" && (\n
    • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
    • \n )}\n
    \n \n ) : null}\n\n \n
    \n
    \n \n
    \n \n Package Offered | Lab Hazir\n \n \n {/* */}\n

    Packages Offered by {lab_name}

    \n {this.state.success ? (\n \n {this.state.success}\n \n ) : this.state.error ? (\n \n {this.state.error}\n \n ) : null}\n\n\n
    \n \n Search By Package Name\n \n
    \n this.setState({ searchQuery: e.target.value })}\n />\n
    \n
    \n \n\n \n \n \n \n \n \n \n
    \n \n \n
    \n
    \n \n

    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n \n {/*
    \n \n
    */}\n
    \n \n
    \n
    \n
    \n
    \n \n\n {filteredTests.length > 0 ? (\n filteredTests.map((offeredTest, key) => (\n \n \n \n {/*
    \n \n
    */}\n\n {/*
    \n
    \n {offeredTest.test_name}{\" \"}\n
    */}\n \n {/* \n
    \n \n {\" \"}\n {offeredTest.test_type}\n \n
    \n\n
    \n \n {\" \"}\n {/* {offeredTest.price\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}{\" \"}\n {offeredTest.price} Rs\n \n
    \n
    \n \n {\" \"}\n {/* {offeredTest.price\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}{\" \"}\n {offeredTest.discount} % Discount By Lab\n \n
    \n {/*
    \n */}\n {/* {\" \"} */}\n {/* {offeredTest.price\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}{\" \"} */}\n {/* {offeredTest.discount_by_labhazir} % Discount By LabHazir\n\n \n
    \n\n
    \n \n {\" \"}\n Offered by {offeredTest.lab_name}\n \n
    \n\n {/*
    \n \n Home Sampling:{\" \"}\n {offeredTest.is_home_sampling_available}\n \n
    */}\n\n {/*
    \n \n EQA\n Participation:{\" \"}\n {offeredTest.is_eqa_participation}\n \n
    */}\n\n {/*
    \n \n Test Performed:{\" \"}\n {offeredTest.is_test_performed}\n \n
    \n\n
    \n \n Reporting\n Time: {offeredTest.duration_required}{\" \"}\n {offeredTest.duration_type}\n \n
    \n\n
    \n \n this.openDescriptionModal(e, offeredTest)\n }\n >\n Test Description\n \n
    \n this.handleAddToCart(offeredTest)}\n >\n Add to cart\n \n
    */}\n
    \n
    \n {/* {offeredTest.test_name} */}\n \n {offeredTest.test_name} \n \n
    \n {offeredTest.test_type != \"Test\" && (\n //
    \n \n this.openPatientModal(e, offeredTest)\n }\n >\n Test Description\n \n //
    \n )}\n {offeredTest.test_type == \"Test\" && (\n //
    \n \n this.openDescriptionModal(e, offeredTest)\n }\n >\n Test Description\n \n //
    \n )}\n \n {(offeredTest.discount >= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01) && (\n
    \n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
    \n )}\n {(offeredTest.discount >= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) <= 0.01) && (\n
    \n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
    \n )}\n {(offeredTest.discount <= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01) && (\n
    \n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
    \n )}\n {(offeredTest.discount <= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) <= 0.01) && (\n
    \n \n {/* {\" \"} */}\n Rs {((offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
    \n )}\n {offeredTest.discount>=0.01 && (\n
    \n \n {\" \"}\n Discount Lab: {(offeredTest.discount*100).toFixed()} % \n \n
    \n )}\n {(offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01 && (\n
    \n \n {\" \"}\n Discount LabHazir: {((offeredTest.all_discount_by_labhazir * 100) + (offeredTest.discount_by_labhazir * 100)).toFixed()} %\n \n\n
    \n )}\n \n
    \n \n Reporting\n Time: {offeredTest.duration_required}{\" \"}\n {offeredTest.duration_type}\n \n
    \n\n
    \n \n Home Sampling:{\" \"}\n {offeredTest.is_home_sampling_available}\n \n
    \n
    \n {\" \"}\n {!this.state.user_id ? (\n \n \n {offeredTest.lab_name}{\" \"}\n \n \n \n ):null}\n {(this.state.user_id) && (this.state.user_type ===\"CSR\") && (this.state.user_type !==\"b2bclient\") && (\n \n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !==\"CSR\") && (this.state.user_type !==\"b2bclient\") && (\n \n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !==\"CSR\") && (this.state.user_type ===\"b2bclient\") && (\n \n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n \n \n \n \n \n \n \n {offeredTest && offeredTest.rating && (\n

    {offeredTest.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

    \n )}\n
    \n \n
    \n {/* \n Lab:{\" \"}\n {offeredTest.lab_name}\n */}\n
    \n {/* this.handleAddToCart(offeredTest)}\n disabled={this.state.itemsInCart.includes(offeredTest)} // Disable the button if the item is in the cart\n>\n {this.state.itemsInCart.includes(offeredTest) ? 'Already Added' : 'Add to cart'}\n */}\n cartItem.offered_test_id === offeredTest.id) ? 'secondary' : 'primary'}\n className={`btn mt-3 me-1${this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id) ? ' disabled' : ''}`}\n // onClick={() => this.handleAddToCart(offeredTest)}\n onClick={() => {\n // Check if offeredTest.name is equal to any cartItem.name\n if (this.props.carts.some(cartItem => cartItem.test_name === offeredTest.test_name)) {\n alert(\"An item with the same name but from a different lab is already in the cart. Please remove the previous one first.\");\n } else {\n // If not, proceed with adding to the cart\n this.handleAddToCart(offeredTest);\n }\n }}\n disabled={this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id)}\n>\n {this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id) ? 'Already Added' : 'Add to cart'}\n\n
    \n
    \n
    \n \n ))\n ) : \n isEmpty(this.props.offeredTests) && loading ? (\n // Loading state\n \n \n
    \n Please Wait.....\n
    \n \n
    \n ) : (\n \n \n
    \n Sorry, No tests were found at your specified lab.....\n
    \n \n
    \n )\n }\n {/* \n \n \n \n this.handlePageClick(page - 1)}\n />\n \n {map(Array(totalPage), (item, i) => (\n \n this.handlePageClick(i + 1)}\n href=\"#\"\n >\n {i + 1}\n \n \n ))}\n \n this.handlePageClick(page + 1)}\n />\n \n \n \n */}\n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nTestsOffered.propTypes = {\n match: PropTypes.object,\n history: any,\n location: PropTypes.any,\n offeredTests: PropTypes.array,\n ongetOfferedTestsReferrel: PropTypes.func,\n onAddToCart: PropTypes.func,\n success: PropTypes.any,\n error: PropTypes.any,\n className: PropTypes.any,\n menuOpen: PropTypes.any,\n t: PropTypes.any,\n carts: PropTypes.any,\n onGetCarts: PropTypes.func,\n};\n\nconst mapStateToProps = ({ offeredTests, carts }) => ({\n offeredTests: offeredTests.offeredTests,\n carts: carts.carts,\n success: carts.success,\n error: carts.error,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n ongetOfferedTestsReferrel: () =>\n dispatch(getOfferedPackagesReferrel(ownProps.match.params.lab_account_id)),\n onAddToCart: (cart, id) => dispatch(addToCart(cart, id)),\n onGetCarts: id => dispatch(getCarts(id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(TestsOffered));","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport MetaTags from \"react-meta-tags\";\nimport { connect } from \"react-redux\";\nimport { Link } from \"react-router-dom\";\nimport { withRouter } from \"react-router-dom\";\nimport { Formik, Field, Form } from \"formik\";\nimport { Collapse } from \"reactstrap\";\nimport logo from \"../../../assets/images/logo.svg\";\nimport logoLight from \"../../../assets/images/logo-light.png\";\nimport logoLightSvg from \"../../../assets/images/logo-light.svg\";\nimport StarRatings from \"react-star-ratings\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport \"../../../components/HorizontalLayout/horizontal-navbar.scss\";\n\n\nimport ScrollButton from \"components/Common/Scrollbutton\";\nimport {\n Card,\n Button,\n CardBody,\n Label,\n Modal,\n ModalBody,\n ModalHeader,\n Col,\n Input,\n Container,\n Pagination,\n PaginationItem,\n PaginationLink,\n Row,\n Alert,\n} from \"reactstrap\";\n\nimport { isEmpty, map, size } from \"lodash\";\n\nimport \"nouislider/distribute/nouislider.css\";\n\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport { any } from \"prop-types\";\n\nimport { getOfferedRadiologysReferrel } from \"store/offered-tests/actions\";\nimport { addToCart } from \"store/actions\";\nimport { getCarts } from \"store/carts/actions\";\n\nclass TestsOffered extends Component {\n constructor(props) {\n super(props);\n this.state = {\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n user_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n patient_name: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).patient_name\n : \"\",\n position: \"right\",\n activeTab: \"1\",\n offeredTests: [],\n carts: [],\n cart: \"\",\n success: \"\",\n error: \"\",\n applied: true,\n loading: true, // Add loading state property\n page: 1,\n searchQuery: \"\", // New state property for search query\n totalPage: 5, //replace this with total pages of data\n itemsInCart: [],\n lab_name: \"\",\n };\n this.toggleTab = this.toggleTab.bind(this);\n console.log(\"yaha ani chahi hai uuid\", this.props.match.params.uuid)\n console.log(\"yaha ani chahi hai guid\", this.props.match.params.guest_id)\n console.log(\"yaha ani chahi hai fuid\", this.props.match.params.filnalurl)\n\n }\n\n componentDidMount() {\n const { carts, onGetCarts } = this.props;\n onGetCarts(this.state.user_id);\n this.setState({\n carts\n });\n const { ongetOfferedTestsReferrel } = this.props;\n if (this.state.applied) {\n ongetOfferedTestsReferrel();\n this.setState({ \n offeredTests: this.props.offeredTests,\n lab_name: this.props.offeredTests.length > 0 ? this.props.offeredTests[0].lab_name : \"\"\n });\n }\n setTimeout(() => {\n this.setState({ loading: false });\n }, 70000); // Set loading state to false after 7 seconds\n }\n componentDidUpdate(prevProps) {\n if (prevProps.offeredTests !== this.props.offeredTests) {\n this.setState({\n offeredTests: this.props.offeredTests,\n lab_name: this.props.offeredTests.length > 0 ? this.props.offeredTests[0].lab_name : \"\"\n });\n }\n }\n // incrementCart = () =>{\n // this.setState({count: this.state.count + 1})\n // }\n\n // eslint-disable-next-line no-unused-vars\n // componentDidUpdate(prevProps, prevState, snapshot) {\n // // const { offeredTests } = this.props;\n // // if (\n // // isEmpty(prevProps.offeredTests) &&\n // // !isEmpty(offeredTests) &&\n // // size(offeredTests) !== size(prevProps.offeredTests)\n // // ) {\n // // this.setState({ offeredTests });\n // // }\n // // Timeout functions to hide alerts after sometime......\n // // setTimeout(() => {\n // // this.setState({ success: \"\" });\n // // }, 10000);\n // // setTimeout(() => {\n // // this.setState({ error: \"\" });\n // // }, 10000);\n // }\n\n toggleTab(tab) {\n if (this.state.activeTab !== tab) {\n this.setState({\n activeTab: tab,\n });\n }\n }\n\n handlePageClick = page => {\n this.setState({ page });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n test_details: arg.test_details,\n });\n };\n\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n openDescriptionModal = (e, arg) => {\n this.setState({\n DescriptionModal: true,\n description_in_english: arg.description_in_english,\n description_in_urdu: arg.description_in_urdu,\n test_details: arg.test_details,\n test_name:arg.test_name,\n });\n };\n\n toggleDescriptionModal = () => {\n this.setState(prevState => ({\n DescriptionModal: !prevState.DescriptionModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n handleAddToCart = (cart) => {\n const { onAddToCart } = this.props;\n \n // Check if the item is already in the cart based on user type\n if (!this.state.user_id) {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n this.setState({ guest_id: this.props.match.params.guest_id });\n cart.guest_id = this.props.match.params.guest_id;\n onAddToCart(cart, cart.guest_id);\n \n console.log(\"uuid:\", cart.guest_id, this.props.match.params.guest_id);\n } else if (this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.state.user_id);\n } else if (this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\") {\n // Check if the item is already in the cart\n if (cart.guest_id === this.props.match.params.guest_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.props.match.params.guest_id);\n } else if (this.state.user_type === \"b2bclient\" && this.state.user_type !== \"CSR\") {\n // Check if the item is already in the cart\n if (cart.user_id === this.state.user_id) {\n this.showErrorMessage(\"Item is already added to the cart\");\n return;\n }\n \n onAddToCart(cart, this.props.match.params.uuid);\n }\n \n // Update the state to include the newly added item in the cart\n const updatedItemsInCart = [...this.state.itemsInCart, cart];\n this.setState({ itemsInCart: updatedItemsInCart });\n \n this.showSuccessMessage(\"Item added Successfully\");\n };\n \n showErrorMessage = (message) => {\n this.showPopup(message, \"red\");\n };\n \n showSuccessMessage = (message) => {\n this.showPopup(message, \"green\");\n };\n \n showPopup = (message, textColor) => {\n // Create and style the popup\n const popup = document.createElement(\"div\");\n popup.style.display = \"none\";\n popup.style.position = \"fixed\";\n popup.style.top = \"0\";\n popup.style.left = \"0\";\n popup.style.width = \"100%\";\n popup.style.height = \"100%\";\n popup.style.background = \"rgba(0, 0, 0, 0.5)\";\n popup.style.zIndex = \"1000\";\n \n const popupContent = document.createElement(\"div\");\n popupContent.style.position = \"absolute\";\n popupContent.style.top = \"50%\";\n popupContent.style.left = \"50%\";\n popupContent.style.transform = \"translate(-50%, -50%)\";\n popupContent.style.background = \"#fff\";\n popupContent.style.padding = \"20px\";\n popupContent.style.borderRadius = \"5px\";\n popupContent.style.boxShadow = \"0 0 10px rgba(0, 0, 0, 0.3)\";\n \n const messageElement = document.createElement(\"div\");\n messageElement.style.fontSize = \"18px\";\n messageElement.style.textAlign = \"center\";\n messageElement.style.color = textColor; // Set the text color\n \n // Set the message\n messageElement.textContent = message;\n \n // Append elements to the DOM\n popupContent.appendChild(messageElement);\n popup.appendChild(popupContent);\n document.body.appendChild(popup);\n \n // Show the popup\n popup.style.display = \"block\";\n \n // Hide the popup after a certain duration (e.g., 3 seconds)\n setTimeout(() => {\n popup.style.display = \"none\";\n }, 1000); // 3000 milliseconds = 3 seconds\n };\n\n activateParentDropdown = item => {\n item.classList.add(\"active\");\n const parent = item.parentElement;\n if (parent) {\n parent.classList.add(\"active\"); // li\n const parent2 = parent.parentElement;\n parent2.classList.add(\"active\"); // li\n const parent3 = parent2.parentElement;\n if (parent3) {\n parent3.classList.add(\"active\"); // li\n const parent4 = parent3.parentElement;\n if (parent4) {\n parent4.classList.add(\"active\"); // li\n const parent5 = parent4.parentElement;\n if (parent5) {\n parent5.classList.add(\"active\"); // li\n const parent6 = parent5.parentElement;\n if (parent6) {\n parent6.classList.add(\"active\"); // li\n }\n }\n }\n }\n }\n return false;\n };\n handlePageClick = page => {\n this.setState({ page });\n };\n\n \n /**\n * Toggle sidebar\n */\n // toggleMenu() {\n // this.props.openLeftMenuCallBack();\n // }\n\n /**\n * Toggles the sidebar\n */\n // toggleRightbar() {\n // this.props.toggleRightSidebar();\n // }\n\n toggleFullscreen() {\n if (\n !document.fullscreenElement &&\n /* alternative standard method */ !document.mozFullScreenElement &&\n !document.webkitFullscreenElement\n ) {\n // current working methods\n if (document.documentElement.requestFullscreen) {\n document.documentElement.requestFullscreen();\n } else if (document.documentElement.mozRequestFullScreen) {\n document.documentElement.mozRequestFullScreen();\n } else if (document.documentElement.webkitRequestFullscreen) {\n document.documentElement.webkitRequestFullscreen(\n Element.ALLOW_KEYBOARD_INPUT\n );\n }\n } else {\n if (document.cancelFullScreen) {\n document.cancelFullScreen();\n } else if (document.mozCancelFullScreen) {\n document.mozCancelFullScreen();\n } else if (document.webkitCancelFullScreen) {\n document.webkitCancelFullScreen();\n }\n }\n }\n onUpdate = (render, handle, value) => {\n const { carts } = this.props;\n if (\n !isEmpty(carts) &&\n size(prevProps.carts) !== size(carts)\n ) {\n this.setState({ carts: {} });\n }\n this.setState({\n nearbyLabs: productsData.filter(\n nearbyLab =>\n nearbyLab.newPrice >= value[0] && nearbyLab.newPrice <= value[1]\n ),\n });\n };\n\n render() {\n const { loading } = this.state;\n const isLargeScreen = window.innerWidth < 490;\n const {lab_name } = this.state;\n const { page, totalPage } = this.state;\n const { offeredTests } = this.props.offeredTests;\n const { carts } = this.props;\n const offeredTest = this.state.offeredTest;\n const { searchQuery } = this.state;\n const filteredTests = this.props.offeredTests.filter((test) =>\n test.test_name.toLowerCase().includes(searchQuery.toLowerCase())\n );\n\n return (\n \n
    \n
    \n \n {this.state.user_id && this.state.user_type === \"CSR\" && this.state.user_type !== \"b2bclient\"\n ? (\n \n
      \n
    • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n
    • \n \n Labs\n \n
    • \n\n
    • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
    • \n
    • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
    • \n
    • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n
    • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n \n {this.state.user_id && this.state.user_type == \"patient\" && (\n
    • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
    • \n )}\n
    \n \n ) : null}\n {!this.state.user_id\n ? (\n \n
      \n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Book a Test\n \n
    • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Book a Test\n \n
    • \n ) : null}\n {this.props.match.params.filnalurl ? (\n
    • \n \n Labs\n \n
    • \n ) : (\n
    • \n \n Labs\n \n
    • \n )}\n\n{this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Tests\n \n
    • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Tests\n \n
    • \n ) : null}\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Profiles\n \n
    • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Profiles\n \n
    • \n ) : null}\n\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Packages\n \n
    • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Packages\n \n
    • \n ) : null}\n\n {this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Radiology\n \n
    • \n ) : !this.props.match.params.filnalurl && this.props.match.params.guest_id ? (\n
    • \n \n Radiology\n \n
    • \n ) : null}\n \n\n\n \n {/*
    • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
      \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
      \n
    • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
    • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
    • \n /*
    • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
      \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
      \n
    • */\n )}\n
    \n \n\n ) \n : this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type !== \"b2bclient\" ? (\n \n
      \n
    • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n
    • \n \n Labs\n {/* {this.props.t(\"Labs\")} */}\n \n
    • \n\n
    • \n {/* \n {this.props.t(\"Search by Tests\")}\n */}\n \n {/* {this.props.t(\"Tests\")} */}\n Tests\n \n
    • \n
    • \n \n {/* {this.props.t(\"Profiles\")} */}\n Profiles\n \n
    • \n
    • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n
    • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n \n {/*
    • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Lab Marketplace\")}{\" \"}\n
      \n \n \n \n {this.props.t(\"Nearby Labs\")}\n \n \n {this.props.t(\"Nearby Tests\")}\n \n
      \n
    • */}\n\n {this.state.user_id && this.state.user_type == \"patient\" && (\n
    • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
    • \n /*
    • \n {\n e.preventDefault();\n this.setState({ appState: !this.state.appState });\n }}\n className=\"nav-link dropdown-toggle arrow-none\"\n >\n \n {this.props.t(\"Appointments\")}{\" \"}\n
      \n \n \n \n {this.props.t(\"Test Appointments\")}\n \n
      \n
    • */\n )}\n\n
    \n \n ) :\n this.state.user_id && this.state.user_type !== \"CSR\" && this.state.user_type === \"b2bclient\" ? (\n \n
      \n
    • \n \n Book a Test\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n
    • \n \n Labs\n \n
    • \n\n
    • \n \n Tests\n {/* {this.props.t(\"Tests\")} */}\n \n
    • \n
    • \n \n Profiles\n {/* {this.props.t(\"Profiles\")} */}\n \n
    • \n
    • \n \n Packages\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n
    • \n \n Radiology\n {/* {this.props.t(\"Packages\")} */}\n \n
    • \n \n {this.state.user_id && this.state.user_type == \"patient\" && (\n
    • \n \n {/* {this.props.t(\"My Appointments\")} */}\n My Appointments\n\n \n
    • \n )}\n
    \n \n ) : null}\n\n \n
    \n
    \n \n
    \n \n Radiology Offered | Lab Hazir\n \n \n {/* */}\n

    Radiology Offered by {lab_name}

    \n {this.state.success ? (\n \n {this.state.success}\n \n ) : this.state.error ? (\n \n {this.state.error}\n \n ) : null}\n\n\n
    \n \n Search By Radiology Name\n \n
    \n this.setState({ searchQuery: e.target.value })}\n />\n
    \n
    \n \n\n \n \n \n \n \n \n \n
    \n \n \n
    \n
    \n \n

    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n \n {/*
    \n \n
    */}\n
    \n \n
    \n
    \n
    \n
    \n \n {filteredTests.length > 0 ? (\n filteredTests.map((offeredTest, key) => (\n \n \n \n {/*
    \n \n
    */}\n\n {/*
    \n
    \n {offeredTest.test_name}{\" \"}\n
    */}\n \n {/* \n
    \n \n {\" \"}\n {offeredTest.test_type}\n \n
    \n\n
    \n \n {\" \"}\n {/* {offeredTest.price\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}{\" \"}\n {offeredTest.price} Rs\n \n
    \n
    \n \n {\" \"}\n {/* {offeredTest.price\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}{\" \"}\n {offeredTest.discount} % Discount By Lab\n \n
    \n {/*
    \n */}\n {/* {\" \"} */}\n {/* {offeredTest.price\n .toString()\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}{\" \"} */}\n {/* {offeredTest.discount_by_labhazir} % Discount By LabHazir\n\n \n
    \n\n
    \n \n {\" \"}\n Offered by {offeredTest.lab_name}\n \n
    \n\n {/*
    \n \n Home Sampling:{\" \"}\n {offeredTest.is_home_sampling_available}\n \n
    */}\n\n {/*
    \n \n EQA\n Participation:{\" \"}\n {offeredTest.is_eqa_participation}\n \n
    */}\n\n {/*
    \n \n Test Performed:{\" \"}\n {offeredTest.is_test_performed}\n \n
    \n\n
    \n \n Reporting\n Time: {offeredTest.duration_required}{\" \"}\n {offeredTest.duration_type}\n \n
    \n\n
    \n \n this.openDescriptionModal(e, offeredTest)\n }\n >\n Test Description\n \n
    \n this.handleAddToCart(offeredTest)}\n >\n Add to cart\n \n
    */}\n
    \n
    \n \n {offeredTest.test_name} \n \n
    \n {offeredTest.test_type != \"Test\" && (\n //
    \n \n this.openPatientModal(e, offeredTest)\n }\n >\n Test Description\n \n //
    \n )}\n {offeredTest.test_type == \"Test\" && (\n //
    \n \n this.openDescriptionModal(e, offeredTest)\n }\n >\n Test Description\n \n //
    \n )}\n \n {(offeredTest.discount >= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01) && (\n
    \n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
    \n )}\n {(offeredTest.discount >= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) <= 0.01) && (\n
    \n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
    \n )}\n {(offeredTest.discount <= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01) && (\n
    \n \n {/* {\" \"} */}\n Rs {offeredTest.price.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n \n {/* {\" \"} */}\n Rs {((offeredTest.price - (offeredTest.discount + offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) * offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
    \n )}\n {(offeredTest.discount <= 0.01) && ((offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) <= 0.01) && (\n
    \n \n {/* {\" \"} */}\n Rs {((offeredTest.price).toFixed(2)).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n
    \n )}\n {offeredTest.discount>=0.01 && (\n
    \n \n {\" \"}\n Discount Lab: {(offeredTest.discount*100).toFixed()} % \n \n
    \n )}\n {(offeredTest.all_discount_by_labhazir + offeredTest.discount_by_labhazir) >= 0.01 && (\n
    \n \n {\" \"}\n Discount LabHazir: {((offeredTest.all_discount_by_labhazir * 100) + (offeredTest.discount_by_labhazir * 100)).toFixed()} %\n \n\n
    \n )}\n \n
    \n \n Reporting\n Time: {offeredTest.duration_required}{\" \"}\n {offeredTest.duration_type}\n \n
    \n\n
    \n \n Home Sampling:{\" \"}\n {offeredTest.is_home_sampling_available}\n \n
    \n
    \n {\" \"}\n {!this.state.user_id ? (\n \n \n {offeredTest.lab_name}{\" \"}\n \n \n \n ):null}\n {(this.state.user_id) && (this.state.user_type ===\"CSR\") && (this.state.user_type !==\"b2bclient\") && (\n \n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !==\"CSR\") && (this.state.user_type !==\"b2bclient\") && (\n \n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n {(this.state.user_id) && (this.state.user_type !==\"CSR\") && (this.state.user_type ===\"b2bclient\") && (\n \n \n {offeredTest.lab_name}{\" \"}\n\n \n \n )}\n \n \n \n \n \n \n \n {offeredTest && offeredTest.rating && (\n

    {offeredTest.rating.toFixed(1).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}

    \n )}\n
    \n \n
    \n {/* \n Lab:{\" \"}\n {offeredTest.lab_name}\n */}\n
    \n {/* this.handleAddToCart(offeredTest)}\n disabled={this.state.itemsInCart.includes(offeredTest)} // Disable the button if the item is in the cart\n>\n {this.state.itemsInCart.includes(offeredTest) ? 'Already Added' : 'Add to cart'}\n */}\n cartItem.offered_test_id === offeredTest.id) ? 'secondary' : 'primary'}\n className={`btn mt-3 me-1${this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id) ? ' disabled' : ''}`}\n // onClick={() => this.handleAddToCart(offeredTest)}\n onClick={() => {\n // Check if offeredTest.name is equal to any cartItem.name\n if (this.props.carts.some(cartItem => cartItem.test_name === offeredTest.test_name)) {\n alert(\"An item with the same name but from a different lab is already in the cart. Please remove the previous one first.\");\n } else {\n // If not, proceed with adding to the cart\n this.handleAddToCart(offeredTest);\n }\n }}\n disabled={this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id)}\n>\n {this.props.carts.some(cartItem => cartItem.offered_test_id === offeredTest.id) ? 'Already Added' : 'Add to cart'}\n\n
    \n
    \n
    \n \n ))\n ) : isEmpty(this.props.offeredTests) && loading ? (\n // Loading state\n \n \n
    \n Please Wait.....\n
    \n \n
    \n ) : (\n \n \n
    \n Sorry, No radiology were found at your specified lab.....\n
    \n \n
    \n )\n }\n \n {/* \n \n \n \n this.handlePageClick(page - 1)}\n />\n \n {map(Array(totalPage), (item, i) => (\n \n this.handlePageClick(i + 1)}\n href=\"#\"\n >\n {i + 1}\n \n \n ))}\n \n this.handlePageClick(page + 1)}\n />\n \n \n \n */}\n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nTestsOffered.propTypes = {\n match: PropTypes.object,\n history: any,\n location: PropTypes.any,\n offeredTests: PropTypes.array,\n ongetOfferedTestsReferrel: PropTypes.func,\n onAddToCart: PropTypes.func,\n success: PropTypes.any,\n error: PropTypes.any,\n className: PropTypes.any,\n carts: PropTypes.array,\n menuOpen: PropTypes.any,\n t: PropTypes.any,\n carts: PropTypes.any,\n onGetCarts: PropTypes.func,\n};\n\nconst mapStateToProps = ({ offeredTests, carts }) => ({\n offeredTests: offeredTests.offeredTests,\n carts: carts.carts,\n success: carts.success,\n error: carts.error,\n carts: carts.carts,\n\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n ongetOfferedTestsReferrel: () =>\n dispatch(getOfferedRadiologysReferrel(ownProps.match.params.lab_account_id)),\n onAddToCart: (cart, id) => dispatch(addToCart(cart, id)),\n onGetCarts: id => dispatch(getCarts(id)),\n\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(TestsOffered));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport {\n Card,\n CardBody,\n CardImg,\n Col,\n Container,\n Row,\n Modal,\n Button,\n ModalHeader,\n ModalBody,\n Label,\n Input,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport BootstrapTable from \"react-bootstrap-table-next\";\n\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport images from \"assets/images\";\nimport moment from 'moment';\n//Import Breadcrumb\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport DeleteModal from \"components/Common/DeleteModal\";\n\nimport {\n getMsgs,\n addNewMsg,\n} from \"store/chat-box/actions\";\n\nimport { isEmpty, size } from \"lodash\";\nimport \"assets/scss/table.scss\";\n\nclass MsgsList extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n msgs: [],\n msg: \"\",\n modal: false,\n deleteModal: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n this.toggle = this.toggle.bind(this);\n this.handleMsgClicks =\n this.handleMsgClicks.bind(this);\n }\n\n componentDidMount() {\n const { msgs, onGetMsgs } = this.props;\n onGetMsgs(this.props.match.params.id);\n this.setState({ msgs });\n console.log(\"helllloooo\",this.state.msgs)\n }\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n\n handleMsgClicks = () => {\n this.setState({\n msg: \"\",\n isEdit: false,\n });\n this.toggle();\n };\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { msgs } = this.props;\n if (\n !isEmpty(msgs) &&\n size(prevProps.msgs) !== size(msgs)\n ) {\n this.setState({ msgs: {}, isEdit: false });\n }\n }\n\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n\n const { msgs } = this.props;\n\n const { isEdit, deleteModal } = this.state;\n\n const {\n onAddNewMsg,\n onGetMsgs,\n } = this.props;\n const msg = this.state.msg;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: msgs.length, // replace later with size(msgs),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"desc\", // desc or asc\n },\n ];\n\n return (\n \n
    \n \n Comments List | Lab Hazir\n \n \n {/* Render Breadcrumbs */}\n \n \n \n \n \n \n {!isEmpty(this.props.msgs) &&\n this.props.msgs.map((msg, key) => (\n \n \n \n {msg.chat &&(\n
    \n

    \n {msg.name}{\" \"}{msg.chat} at {\" \"} {moment(msg.added_at).format(\"DD MMM YYYY, h:mm A\")}\n

    \n
    \n )}\n {msg.field_name == \"request_status\" &&(\n
    \n

    \n {msg.name}{\" \"} changes advertisement status to {msg.new_value} at {\" \"} {moment(msg.added_at).format(\"DD MMM YYYY, h:mm A\")}.\n

    \n
    \n )}\n {msg.actions == \"Added\" &&(\n
    \n

    \n {msg.name}{\" \"} submitted advertisement for approval on {\" \"} {moment(msg.added_at).format(\"DD MMM YYYY, h:mm A\")}\n

    \n
    \n )}\n {msg.actions === \"Updated\" && msg.field_name === null && (\n
    \n

    \n {msg.name}{\" \"} {msg.actions} advertisement payment status on {\" \"} {moment(msg.added_at).format(\"DD MMM YYYY, h:mm A\")}\n

    \n
    \n)}\n \n
    \n
    \n \n ))}\n {\n {\n const newMsg = {\n msg:\n values.msg,\n advertisement_id:\n this.props.match.params.id,\n };\n\n // save new Msg\n onAddNewMsg(\n newMsg,\n this.state.user_id\n );\n setTimeout(() => {\n this.setState({\n msg: \"\",\n });\n }, 1000);\n setTimeout(() => {\n onGetMsgs(\n this.props.match.params.id\n );\n }, 2000);\n }\n this.toggle();\n }}\n >\n {({ errors, status, touched }) => (\n
    \n \n \n \n
    \n \n \n this.setState({\n msg:\n e.target.value,\n })\n }\n />\n \n
    \n \n
    \n \n \n
    \n \n \n \n
    \n \n
    \n
    \n )}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n }\n}\n\nMsgsList.propTypes = {\n match: PropTypes.object,\n msgs: PropTypes.array,\n className: PropTypes.any,\n onGetMsgs: PropTypes.func,\n onAddNewMsg: PropTypes.func,\n};\n\nconst mapStateToProps = ({ msgs }) => ({\n msgs: msgs.msgs,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetMsgs: id => dispatch(getMsgs(id)),\n onAddNewMsg: (msg, id) =>\n dispatch(addNewMsg(msg, id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(MsgsList));\n","import React, { Component, useState } from \"react\";\nimport Select from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport moment from 'moment';\nimport 'react-datepicker/dist/react-datepicker.css';\nimport DatePicker from 'react-datepicker';\nimport {\n Card,\n CardBody,\n Col,\n Container,\n ModalHeader,\n Row,\n Label,\n Modal,\n ModalBody,\n} from \"reactstrap\";\n\nimport paginationFactory, {\n PaginationProvider,\n PaginationListStandalone,\n} from \"react-bootstrap-table2-paginator\";\n\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport filterFactory, { textFilter, selectFilter } from 'react-bootstrap-table2-filter';\nimport BootstrapTable from \"react-bootstrap-table-next\";\nimport { Formik, Field, Form, ErrorMessage } from \"formik\";\n\n//Import Breadcrumb\nimport * as Yup from \"yup\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport {\n getLcList,\n} from \"store/labs-list/actions\";\n\n\nclass LabsLists extends Component {\n constructor(props) {\n super(props);\n this.node = React.createRef();\n this.state = {\n labsList: [],\n id: \"\",\n LabsLists: \"\",\n btnText: \"Copy\",\n selectedLab: null,\n labsData: [], // Default value is an empty array\n labsList: \"\",\n startDate: null,\n endDate: null,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n labsListListColumns: [\n {\n dataField: \"id\",\n text: \"ID\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.id}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"order_id\",\n text: \"Order ID\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.order_id}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"corporate_name\",\n text: \"Corporate Name\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.corporate_name}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"patient_name\",\n text: \"Patient Name\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.patient_name}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"lab_name\",\n text: \"Lab Name\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n \n this.openPatientModal(e, labsList)}\n >\n {labsList.lab_name}\n \n \n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"is_home_sampling_availed\",\n text: \"Home sampling\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.is_home_sampling_availed == true || labsList.is_state_sampling_availed == true ? (\n Yes\n ) : (\n No\n )}\n \n ),\n filter: selectFilter({\n options: {\n '': 'All',\n 'true': 'Yes',\n 'false': 'No',\n },\n defaultValue: 'All',\n }),\n },\n {\n dataField: \"status\",\n text: \"Payment Status\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.status == \"Not Paid\" ? (\n \n {labsList.payment_method},{\" \"}\n {labsList.status}\n \n ) : (\n \n {labsList.payment_method},{\" \"}\n {labsList.status}\n \n )}\n \n ),\n filter: selectFilter({\n options: {\n '': 'All',\n 'Paid': 'Paid',\n 'Allocate': 'Allocate',\n },\n defaultValue: 'All',\n }),\n },\n {\n dataField: 'appointment_status',\n text: 'Appointment Status',\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {labsList.appointment_status == \"Pending\" && (\n \n {labsList.appointment_status}\n \n \n )}\n {labsList.appointment_status == \"Confirmed\" && (\n \n {labsList.appointment_status}\n \n )}\n \n {labsList.appointment_status == \"Sample Collected\" && (\n \n {labsList.appointment_status}\n \n )}\n \n {labsList.appointment_status == \"Rescheduled\" && (\n \n {labsList.appointment_status}\n \n )}\n \n \n {labsList.appointment_status == \"Result Uploaded\" && (\n \n {labsList.appointment_status}\n \n )}\n \n \n ),\n filter: selectFilter({\n options: {\n '': 'All',\n 'Pending': 'Pending',\n 'Confirmed': 'Confirmed',\n 'Sample Collected': 'Sample Collected',\n 'Rescheduled': 'Rescheduled',\n 'Result Uploaded': 'Result Uploaded',\n },\n defaultValue: 'All',\n }),\n },\n {\n dataField: \"amount\",\n text: \"Invoice value\",\n sort: true,\n formatter: (cellContent, labsList) => (\n \n {(labsList.amount || \"--\").toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n \n {\n dataField: \"Receivable\",\n text: \"Lab Payable\",\n sort: true,\n formatter: (cellContent, labsList) => (\n \n {(labsList.Receivable || \"--\").toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n \n {\n dataField: \"plateform_fees\",\n text: \"LabHazir Payable\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {`${(labsList.plateform_fees * 100)}%`}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"payable\",\n text: \"Referral Fee\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {`${(labsList.payable * 100)}%`}\n \n ),filter: textFilter(), // Add a text filter for this column\n },\n {\n dataField: \"generated_at\",\n text: \"Generated At\",\n sort: true,\n formatter: (cellContent, labsList) => {\n const date = new Date(labsList.generated_at);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2); // Get the last 2 digits of the year\n \n return (\n

    \n {`${day}-${month}-${year}`}\n

    \n );\n },\n filter: textFilter(),\n },\n {\n dataField: \"booked_at\",\n text: \"Booked At\",\n sort: true,\n formatter: (cellContent, labsList) => (\n <>\n {moment(labsList.booked_at).format(\"DD MMM YYYY\")}\n \n ),filter: textFilter(),\n },\n {\n dataField: \"paid_at\",\n text: \"Paid At\",\n sort: true,\n formatter: (cellContent, labsList) => {\n const date = new Date(labsList.paid_at);\n const day = date.getDate();\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = monthNames[date.getMonth()];\n const year = date.getFullYear().toString().slice(-2); // Get the last 2 digits of the year\n \n return (\n

    \n {`${day}-${month}-${year}`}\n

    \n );\n },\n filter: textFilter(),\n },\n ],\n };\n }\n componentDidMount() {\n \n const currentMonthStart = moment().startOf(\"month\");\n const currentMonthEnd = moment().endOf(\"month\");\n\n this.setState({\n startDate: currentMonthStart.toDate(),\n endDate: currentMonthEnd.toDate(),\n });\n\n this.fetchData();\n\n }\n\n componentDidUpdate(prevProps, prevState) {\n if (\n prevState.startDate !== this.state.startDate ||\n prevState.endDate !== this.state.endDate\n ) {\n // Fetch data based on date filters\n this.fetchData();\n }\n\n if (\n this.props.labsList.length > 0 &&\n this.props.labsList !== prevProps.labsList\n ) {\n const lastIndex = this.props.labsList.findIndex((statement) => {\n const statementDate = new Date(statement.booked_at);\n const labFilter = !this.state.selectedLab || statement.lab_name === this.state.selectedLab;\n return (\n statementDate >= this.state.startDate &&\n statementDate <= this.state.endDate &&\n labFilter\n );\n });\n\n // Do something with lastIndex if needed\n }\n }\n\n fetchData = () => {\n if (this.state.user_id) {\n const { onGetDonorsA } = this.props;\n const userId = this.state.user_id; // If it's always user_id, no need for conditional check\n\n // Only make the API call if both start and end dates are selected\n if (this.state.startDate && this.state.endDate) {\n onGetDonorsA(userId);\n }\n }\n };\n\n toggle() {\n this.setState(prevState => ({\n modal: !prevState.modal,\n }));\n }\n openNamePatientModal = (e, arg) => {\n this.setState({\n NamePatientModal: true,\n patient_phone: arg.patient_phone,\n patient_age: arg.patient_age,\n patient_gender: arg.patient_gender,\n });\n };\n openPatientModal = (e, arg) => {\n this.setState({\n PatientModal: true,\n lab_address: arg.lab_address,\n lab_city: arg.lab_city,\n lab_phone: arg.lab_phone,\n //lab_email: arg.lab_email,\n });\n };\n togglePatientModal = () => {\n this.setState(prevState => ({\n PatientModal: !prevState.PatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n toggleNamePatientModal = () => {\n this.setState(prevState => ({\n NamePatientModal: !prevState.NamePatientModal,\n }));\n this.state.btnText === \"Copy\"\n ? this.setState({ btnText: \"Copied\" })\n : this.setState({ btnText: \"Copy\" });\n };\n onPaginationPageChange = page => {\n if (\n this.node &&\n this.node.current &&\n this.node.current.props &&\n this.node.current.props.pagination &&\n this.node.current.props.pagination.options\n ) {\n this.node.current.props.pagination.options.onPageChange(page);\n }\n };\n\n render() {\n const { SearchBar } = Search;\n const { startDate, endDate, labsData } = this.state;\n const { labsList } = this.props;\n \n const uniqueLabNames = [...new Set(this.props.labsList.map(labsList => labsList.lab_name))];\n const uniqueCorporateNames = [...new Set(this.props.labsList.map(labsList => labsList.corporate_name))];\n\n // Generate labOptions for the \n \n\n\n
    \n \n this.setState({ selectedCorporate: e.target.value })}\n className=\"form-control\"\n >\n \n {corporateOptions}\n \n
    \n\n\n \n \n {({ paginationProps, paginationTableProps }) => (\n \n {toolkitprops => (\n \n \n \n
    \n {/*
    \n \n \n
    */}\n
    \n \n
    \n \n \n
    \n \n \n \n \n \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n\n
    \n {\n navigator.clipboard.writeText(\n this.state.lab_phone\n );\n this.setState({\n btnText: \"Copied\",\n });\n }}\n >\n {this.state.btnText}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n {/* \n \n \n \n */}\n
    \n )}\n \n )}\n \n \n \n \n \n \n \n \n );\n }\n}\n\nLabsLists.propTypes = {\n match: PropTypes.object,\n labsList: PropTypes.array,\n className: PropTypes.any,\n onGetDonorsA: PropTypes.func,\n};\nconst mapStateToProps = ({ labsList}) => ({\n labsList: labsList.labsList,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetDonorsA: id => dispatch(getLcList(id)),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(withRouter(LabsLists));\n","import React from \"react\";\nimport { Redirect } from \"react-router-dom\";\n\n// User profile\nimport LabProfile from \"../pages/Authentication/LabProfile\";\nimport PatientProfile from \"../pages/Authentication/PatientProfile\";\nimport CorporateProfile from \"../pages/Authentication/CorporateProfile\";\nimport SampleCollectorProfile from \"../pages/Authentication/SampleCollectorProfile\";\nimport StaffProfile from \"../pages/Authentication/StaffProfile\";\n// LabMarket Pages\nimport NearbyLabs from \"../pages/LabMarket/NearbyLabs/index\";\nimport MedicalTestsList from \"pages/LabMarket/NearbyLabs/MedicalTestsList\";\nimport NearbyLabDetail from \"pages/LabMarket/NearbyLabs/NearbyLabDetail\";\nimport corporatelabs from \"pages/LabMarket/NearbyLabs/CorporateLabs\"\n// TestMarket Pages\nimport labs from \"pages/LabMarket/NearbyLabs/labs\";\nimport NearbyTests from \"pages/LabMarket/NearbyLabs/NearbyTests\";\nimport NearbyTestsDiscountedlh from \"pages/LabMarket/NearbyLabs/NearbyTestsDiscountedlh\";\nimport NearbyProfiles from \"pages/LabMarket/NearbyLabs/NearbyProfiles\";\nimport NearbyPackages from \"pages/LabMarket/NearbyLabs/NearbyPackages\";\nimport NearbyRadiology from \"pages/LabMarket/NearbyLabs/NearbyRadiology\";\n\n///////\n\n//ContactUs\nimport ContactUs from \"../pages/Contact/contact-us\";\nimport B2bAffiliate from \"../pages/LabMarket/NearbyLabs/b2baffiliate\"\nimport ChatBox from \"../pages/Public/chat\";\n// Authentication related pages\nimport Login from \"../pages/Authentication/Login\";\nimport RegisterAffiliate from \"../pages/Authentication/RegisterAffiliate\"\nimport Logout from \"../pages/Authentication/Logout\";\nimport Register from \"../pages/Authentication/Register\";\nimport PatientInformation from \"../pages/Authentication/PatientInformation\";\nimport B2bClientInformation from \"../pages/Authentication/B2bClientInformation\";\nimport DonorInformation from \"../pages/Authentication/DonorInformation\";\nimport LabInformation from \"../pages/Authentication/LabInformation\";\nimport CorporateInformation from \"../pages/Authentication/CorporateInformation\";\nimport ForgetPwd from \"../pages/Authentication/ForgetPassword\";\nimport ConfirmPwd from \"../pages/Authentication/ConfirmPassword\";\n\n// Dashboard\nimport DashboardPatient from \"../pages/Dashboard-Patient/index\";\nimport DashboardLab from \"../pages/Dashboard-Lab/index\";\nimport DashboardB2b from \"../pages/Dashboard-B2b/index\";\nimport stackchart from \"pages/Dashboard-Lab/StackedColumnChart\";\nimport FinanceOfficerProfile from \"../pages/Authentication/StaffProfile\";\nimport DashboardFinance from \"../pages/Dashboard-Finance/index\"\nimport DashboardCorporate from \"../pages/Dashboard-Corporate/index\"\n\n//Finance Admin\nimport DashboardFinanceAdmin from \"pages/Dashboard-FinanceAdmin\";\n\n//Finance Admin\nimport DashboardMarketerAdmin from \"pages/Dashboard-MarketerAdmin\";\n// import FinanceAdminProfile from \"../pages/Authentication/StaffProfile\";\n\n// Corporate\nimport EmployeeData from \"../pages/CorporatesData/add-employee\";\nimport EmployeeFile from \"../pages/CorporatesData/add-datafile\";\nimport EmployeeList from \"../pages/CorporatesData/employees-list\";\nimport CorporateTestsList from \"../pages/OfferedTests/corporate-medical-tests\";\nimport CorporateOfferedTestsList from \"../pages/OfferedTests/corporate-offeredtests-list\";\nimport CorporateLabAppointmentsList from \"../pages/CorporatesData/corporate-lab-appointments\";\nimport CorporateLabsList from \"../pages/CorporatesData/corporate-labs-list\";\nimport CorporatePaymentForm from \"../pages/CorporatesData/corporate-out-payment\";\nimport PaymentFormStatus from \"../pages/CorporatesData/corporate-paymentout-created-statuss-list\";\nimport PaymentConfirmation from \"../pages/CorporatesData/payment-confirmation\";\nimport LabhazirPaymentConfirmation from \"../pages/CorporatesData/labhazir-payment-confirmation\";\nimport corporatecommit from \"../pages/CorporatesData/commit-corporate\";\nimport corporatevoucher from \"../pages/CorporatesData/corporate-paymentout-created-statuss-detail\"\nimport AccountStatementsCorporate from \"pages/CorporatesData/corporate-lab-appointments\";\nimport corporateList from \"pages/FinanceAdmin/corporate-list\";\n// Lab Components\nimport OfferedTestsList from \"../pages/OfferedTests/offered-tests-list\";\nimport TestsList from \"../pages/OfferedTests/medical-tests\";\nimport SampleCollectorRegister from \"pages/SampleCollectors/sample-collectors-register\";\nimport SampleCollectorInfo from \"pages/SampleCollectors/sample-collector-info\";\nimport SampleCollectorsList from \"../pages/SampleCollectors/sample-collectors-list\";\nimport QualityCertificatesList from \"../pages/QualityCertificates/quality-certificates-list\";\nimport PathologistsList from \"../pages/Pathologists/pathologists-list\";\nimport TestAppointmentsPendingList from \"../pages/TestAppointments/test-appointments-pending-list\";\nimport tokendetailpage from \"../pages/Authentication/labtokens\";\nimport TestAppointmentsInProcessList from \"../pages/TestAppointments/test-appointments-in-process-list\";\nimport TestAppointmentsCompletedList from \"../pages/TestAppointments/test-appointments-completed-list\";\nimport FeedbacksList from \"../pages/Feedbacks/feedbacks-list\";\nimport LabInvoiceDetail from \"pages/Checkouts/invoice-detail\";\nimport CorporateInvoiceDetail from \"pages/Checkouts/invoice-detail\";\nimport LabAppointmentDetail from \"pages/Checkouts/appointment-detail\"\nimport AppointmentDetail from \"pages/Checkouts/appointment-detail\";\nimport PatientAppointmentDetail from \"pages/Checkouts/appointment-detail\";\nimport CsrInvoiceDetail from \"pages/Checkouts/invoice-detail\";\nimport LabAdvertisements from \"../pages/LabAdvertisements/lab-advertisement\";\nimport CorporateLabAccountStatements from \"../pages/AccountStatements/corporate-lab-account-statements\"\nimport CorporateOfferedTestsListForLab from \"../pages/LabMarket/NearbyLabs/corporate-offeredtests-list\"\n\n\n\n// Payment In Status\nimport InPayments from \"pages/Payments Form/in-payment-mathod\";\nimport PaymentStatussList from \"../pages/PaymentStatuss/payment-statuss-list\";\n// import depositStatussList from \"../pages/PaymentStatuss/deposit-statuss-list\";\nimport PendintClearenceStatussList from \"../pages/PaymentStatuss/paymentin-pending-clearence-statuss-list\";\nimport clearStatussList from \"../pages/PaymentStatuss/clear-statuss-list\";\nimport bouncedStatussList from \"../pages/PaymentStatuss/payment-bounced-statuss-list\"\n\n// Payment Out\n\nimport OutPayments from \"pages/Payments Form/out-payment-mathod\";\nimport PaymentOutStatussList from \"pages/PaymentStatuss/paymentout-pending-clearence-statuss-list\"\nimport PaymentOutCreatedStatussList from \"pages/PaymentStatuss/paymentout-created-statuss-list\"\nimport PaymentOutclearStatussList from \"pages/PaymentStatuss/paymentoutclear-statuss-list\"\nimport PaymentOutBouncedStatussList from \"pages/PaymentStatuss/paymentout-bounced-statuss-list\"\n\n// sample collector components\nimport SampleCollectorTestAppointmentsInProcessList from \"../pages/SampleCollectorTestAppointments/test-appointments-in-process-list\";\nimport SampleCollectorTestAppointmentsCompletedList from \"../pages/SampleCollectorTestAppointments/test-appointments-completed-list\";\nimport CollectorInvoiceDetail from \"pages/Checkouts/invoice-detail\";\nimport SampleCAppointmentDetail from \"pages/Checkouts/appointment-detail\"\n// Patient Lab Components\nimport LabQualityCertificates from \"../pages/LabMarket/NearbyLabs/NearbyLabDetails/quality-certificates-list\";\nimport LabSampleCollectors from \"../pages/LabMarket/NearbyLabs/NearbyLabDetails/sample-collectors-list\";\nimport LabPathologists from \"../pages/LabMarket/NearbyLabs/NearbyLabDetails/pathologists-list\";\nimport CorporatePatientBookings from \"../pages/LabMarket/NearbyLabs/CorporateLabsCarAppointments\";\n// Patient Components\nimport TestAppointmentsList from \"../pages/PatientTestAppointments/test-appointments-list\";\nimport CorporateModalRoute from \"../pages/PatientTestAppointments/corporate-model\";\nimport CorporateInfoModalRoute from \"../pages/PatientTestAppointments/corporate-model\";\nimport TestAppointmentsCSRList from \"../pages/Dashboard-Csr/test-appointments-list\";\nimport TestsOfferedbyLab from \"pages/LabMarket/NearbyLabs/TestsOfferedbyLab\";\nimport TestsOfferedbyLabCorporate from \"pages/LabMarket/NearbyLabs/TestsOfferedbyLabCorporation\"\nimport ProfilesOfferedbyLabCorporate from \"pages/LabMarket/NearbyLabs/ProfilesOfferedbyLabCorporation\"\nimport RadiologysOfferedbyLabCorporate from \"pages/LabMarket/NearbyLabs/RadiologyOfferedbyLabCorporation\"\nimport PackagesOfferedbyLabCorporate from \"pages/LabMarket/NearbyLabs/PackagesOfferedbyLabCorporation\"\nimport CartsList from \"../pages/Carts/carts-list\";\nimport QuoteList from \"../pages/Carts/quotes-list\";\n// import checkout from \"pages/Checkouts/checkout-list\";\nimport Checkout from \"pages/Checkouts/checkout\";\nimport checkoutcsr from \"pages/Checkouts/checkout\";\nimport checkoutb2b from \"pages/Checkouts/checkout\";\nimport InvoiceDetail from \"pages/Checkouts/invoice-detail\";\nimport LabSettings from \"pages/Authentication/LabSettings\";\nimport FeedbackDetail from \"pages/Feedbacks-List/FeedbackDetail\";\nimport TestDescriptions from \"pages/Test-Description/test-descriptions-list\";\n\n\n// LAB ADV INVOICE\nimport AdvInvoiceDetail from \"pages/advInvoice/adv-invoice-detail\";\n\n\n\n// B2B Reffered\nimport B2bReferredPatient from \"pages/B2bReferredPatients/referred-patients-list\";\nimport B2bLabShare from \"pages/B2bLabShares/lab-shares-list\";\n// import B2bSettings from \"pages/Authentication/B2bSettings\";\nimport B2bProfile from \"pages/Authentication/B2bProfile\";\n\n// Donor\nimport DonorDashboard from \"pages/Dashboard-Donor/index\";\nimport DonorProfile from \"pages/Authentication/DonorProfile\";\nimport DonorAppointments from \"pages/DonorReferredAppointments/referred-appointments-list\";\nimport DonorPayments from \"pages/DonorPaymentMathods/payment-mathod\";\nimport DonorSettings from \"pages/Authentication/DonorSettings\";\nimport DonorAccountStatements from \"pages/AccountStatements/donor-account-statements\";\n////////////\nimport DonorsAccountStatements from \"pages/AccountStatements/donors-account-statements\";\n///////////\nimport AccountStatementDonor from \"pages/AccountStatements/donor-account-statements\";\nimport B2bAccountStatements from \"pages/AccountStatements/b2b-account-statements\";\nimport AccountStatementsB2B from \"pages/AccountStatements/b2b-account-statements\";\nimport BankAccountStatements from \"pages/AccountStatements/bank-account-statement\";\nimport Invoiceb2b from \"pages/Checkouts/invoice-detail\"\nimport CreditCardCheckout from \"pages/Checkouts/creditcardcheckout\";\nimport AllLabsList from \"pages/FinanceAdmin/lab-labs-list\"\n//import AllDonationsList from \"pages/Payments Form/testing-appointments\";\nimport CreateBanks from \"pages/CreateBanks/create-bank\";\nimport BankAccounts from \"pages/BankAccounts/bank-account\"\n\n// Admin\n// import B2bAllClients from \"pages/B2bAllClients/all-clients-list\";\n// import OfferedLabsshares from \"pages/OfferedLabShares/offered-shares-list\";\n// B2B Admin\nimport B2bAllClients from \"pages/B2BAdmin/all-clients-list\";\nimport B2BClientShares from \"pages/B2BAdmin/b2b-client-shares\";\nimport B2bPayments from \"pages/B2bPaymentMathods/payment-mathod\";\n\n\n// import B2bReferredPatient from \"pages/B2bReferredPatients/referred-patients-list\";\nimport AccountStatements from \"pages/AccountStatements/account-statements\";\nimport AccountStatementsLab from \"pages/AccountStatements/account-statements\";\nimport MedicalTestSheet from \"pages/OfferedTests/medical-test-sheet\";\nimport csrCheckout from \"pages/Complaints/csr-checkout\";\nimport Patientslist from \"pages/Dashboard-Csr/patients-list\";\nimport Patient from \"pages/Dashboard-Csr/patients-list\";\nimport Disclaimer from \"pages/Public/disclaimer\";\nimport AboutUs from \"pages/Public/about-us\";\n// import ChatBox from \"pages/Public/chat\";\n// import TermsConditions from \"pdf/LabHazir - Terms & Conditions.pdf\";\nimport ChangePassword from \"pages/Authentication/ChangePassword\";\nimport DashboardAuditor from \"pages/Dashboard-Auditor\";\nimport DashboardSampleCollector from \"pages/Dashboard-SampleCollector\";\n\n// registration admin\nimport PendingCorporate from \"pages/RegistrationAdmin/pending-corporate\";\nimport ReviewPerformance from \"../pages/RegistrationAdmin/review-performance\";\nimport ApprovedCorporate from \"pages/RegistrationAdmin/approved-corporate\";\nimport UnapprovedCorporate from \"pages/RegistrationAdmin/unapproved-corporate\";\n\nimport PendingLabs from \"pages/RegistrationAdmin/pending-labs\";\nimport labsListApprovedFeeOffered from \"pages/RegistrationAdmin/labs-list-approved-fee\";\nimport labsListPendingFeeOffered from \"pages/RegistrationAdmin/labs-list-pending-fee\";\nimport sharedPercentagePendingFeeTests from \"pages/RegistrationAdmin/shared-percentage-pending-Fee\";\nimport sharedPercentageApprovedFeeTests from \"pages/RegistrationAdmin/shared-percentage-approved-Fee\";\nimport ApprovedLabs from \"pages/RegistrationAdmin/approved-labs\";\nimport UnapprovedLabs from \"pages/RegistrationAdmin/unapproved-labs\";\nimport PendingB2bClients from \"pages/RegistrationAdmin/pending-b2b-clients\";\nimport ApprovedB2bClients from \"pages/RegistrationAdmin/approved-b2b-clients\";\nimport UnapprovedB2bClients from \"pages/RegistrationAdmin/unapproved-b2b-clients\";\nimport PendingDonors from \"pages/RegistrationAdmin/pending-donors\";\nimport ApprovedDonors from \"pages/RegistrationAdmin/approved-donors\";\nimport UnapprovedDonors from \"pages/RegistrationAdmin/unapproved-donors\";\nimport ReferrelLab from \"pages/RegistrationAdmin/referrelfeelab\";\nimport ApproveReferrelLab from \"pages/RegistrationAdmin/Approvereferrelfeelab\";\nimport labsRating from \"../pages/RegistrationAdmin/labs-rating\";\nimport listCorporate from \"../pages/RegistrationAdmin/all-corporate-list\"\nimport rFeeCorporate from \"../pages/RegistrationAdmin/reffrell-corporate-list\"\n\n\n// finance admin\nimport PendingInPayments from \"pages/FinanceAdmin/paymentin-pending-clearences-statuss-list\";\nimport PendingOutPayments from \"pages/FinanceAdmin/paymentout-pending-clearences-statuss-list\";\nimport ClearedInPayments from \"pages/FinanceAdmin/cleared-in-payments\";\nimport ApprovedInPayments from \"pages/FinanceAdmin/approved-in-payments\";\nimport UnapprovedInPayments from \"pages/FinanceAdmin/unapproved-in-payments\";\nimport bankTransferDetail from \"pages/Payments Form/bank-transfer-detail\";\nimport interBankDetailsList from \"pages/PaymentStatuss/inter-bank-details-list\";\nimport invoiceAdjustmentDetail from \"pages/Payments Form/invoice-adjustment-detail\";\n\n// Maeketer Admin routes\nimport Advertisements from \"pages/MarketerAdmin/advertisement\";\nimport AdvertisementPriceLists from \"pages/MarketerAdmin/advertisement-price-list\";\nimport DiscountLabHazir from \"pages/MarketerAdmin/discount-labhazir\";\nimport labsList from \"pages/MarketerAdmin/labs-list\";\nimport labList from \"pages/FinanceAdmin/labs-list\";\nimport donorList from \"pages/FinanceAdmin/donors-list\";\nimport donorappointmentsList from \"pages/FinanceAdmin/donos-appointments\"\nimport b2bList from \"pages/FinanceAdmin/b2bclients-list\";\nimport discountLab from \"pages/MarketerAdmin/discount-lab\";\nimport LabAdvertisementRequests from \"pages/MarketerAdmin/pending-lab-advertisement-requests\";\nimport LabAdvertisementRequestsAccepted from \"pages/MarketerAdmin/accepted-lab-advertisement-requests\";\nimport LabAdvertisementRequestsAcceptedMA from \"pages/MarketerAdmin/accepted-lab-advertisement-requests\";\n\n// Discount of Labhazir to lab\n// import DiscountLabHazirToLab from \"pages/MarketerAdmin/discount-labhazir-to-lab\";\n\n\n// Registration of Marketer Admin\nimport PendingComplaints from \"pages/CSRAdmin/pending-complaints\";\nimport csrApointments from \"pages/CSRAdmin/csr-apointments\";\nimport InProcessComplaints from \"pages/CSRAdmin/inprocess-complaints\";\nimport inprocessComplaintslabhazir from \"pages/CSRAdmin/inprocess-complaintslabhazir\";\nimport ResolvedComplaints from \"pages/CSRAdmin/resolved-complaints\";\nimport ResolvedComplaintsLabhazir from \"pages/CSRAdmin/resolved-complaintslabhazir\";\n\nimport CSRsList from \"pages/CSRAdmin/csrs-list\";\n\nimport DashboardCsr from \"pages/Dashboard-Csr\";\nimport UnhandledComplaints from \"pages/Complaints/unhandled-complaints\";\nimport HandledComplaints from \"pages/Complaints/handled-complaints\";\nimport csrComplaints from \"pages/Complaints/csr-complaints\";\nimport reduceTests from \"pages/Complaints/reduce-tests\";\nimport NotesList from \"pages/Complaints/notes-list\";\nimport NotesLists from \"pages/Complaints/notes-list\";\nimport PatientCsrNotesList from \"pages/Complaints/notes-list\";\n\nimport marketertestdiscountNotesList from \"pages/Dashboard-MarketerAdmin/activity-log-marketer\";\n\nimport marketerlabdiscountNotesList from \"pages/Dashboard-MarketerAdmin/activity-log-lab-marketer\";\nimport NotesComplains from \"pages/Complaints/notes-list-complain\";\nimport NotesComplainsAdmin from \"pages/Complaints/notes-list-complain\"\nimport labnotes from \"pages/Complaints/notes-list\";\nimport MsgsList from \"pages/Complaints/msg-box\";\n\nimport AssignedAudits from \"pages/Auditor/assigned-audits\";\nimport LabAudits from \"pages/Dashboard-Lab/lab-audits\";\nimport activityLog from \"pages/Dashboard-Lab/activity-log\";\nimport activityLogFinance from \"pages/PaymentStatuss/activity-log-finance\";\nimport activityLogMarketer from \"pages/Dashboard-MarketerAdmin/activity-log-marketer\";\nimport activityLogFinanceAdmin from \"pages/PaymentStatuss/activity-log-finance\";\nimport corporatestatusCancel from \"pages/LabMarket/NearbyLabs/accepted-corporate-list\";\nimport AuditorCompletedAudits from \"pages/Auditor/completed-audits\";\nimport AuditorProfile from \"../pages/Authentication/StaffProfile\";\n\nimport PendingAudits from \"pages/AuditorAdmin/pending-audits\";\nimport InProcessAudits from \"pages/AuditorAdmin/inprocess-audits\";\nimport PassedAudits from \"pages/AuditorAdmin/passed-audits\";\nimport FailedAudits from \"pages/AuditorAdmin/failed-audits\";\nimport lablist from \"pages/AuditorAdmin/lab-list\";\nimport AuditorsList from \"pages/AuditorAdmin/auditors-list\";\nimport LabAudit from \"pages/AuditorAdmin/lab-audit-list\";\nimport AuditorHistory from \"pages/AuditorAdmin/auditor-history\";\nimport AuditorHistoryLab from \"pages/AuditorAdmin/auditor-history\";\nimport AuditorAdminHistory from \"pages/AuditorAdmin/auditor-history\";\n\nimport PagesMaintenance from \"pages/Utility/pages-maintenance\";\nimport PagesComingsoon from \"pages/Utility/pages-comingsoon\";\nimport CardPayment from \"pages/Utility/card-payment\";\nimport Pages404 from \"pages/Utility/pages-404\";\nimport Pages500 from \"pages/Utility/pages-500\";\n\nimport StaffRegister from \"pages/HrAdmin/staff-register\";\nimport StaffInfo from \"pages/HrAdmin/staff-info\";\nimport CSRList from \"pages/HrAdmin/csr-list\";\nimport MARKETERSList from \"pages/HrAdmin/marketers-list\";\nimport AuditorList from \"pages/HrAdmin/auditor-list\";\nimport FinanceOfficerList from \"pages/HrAdmin/finance-officer-list\";\nimport DiscountLab from \"pages/MarketerAdmin/discounttolab\";\nimport BanksList from \"pages/CreateBanks/banks-list\";\nimport BankAccountsList from \"pages/BankAccounts/bankaccounts-list\";\nimport Payments from \"pages/Authentication/Payments\"\nimport CorporatesList from \"pages/LabMarket/NearbyLabs/corporate-list\"\nimport AcceptedCorporatesList from \"pages/LabMarket/NearbyLabs/accepted-corporate-list\"\nimport AcceptedCorporatesLists from \"pages/LabMarket/NearbyLabs/accepted-corporate-list\"\n\nimport csrsList from \"pages/CSRAdmin/csrs-list\";\nimport pendingComplaintslabhazir from \"pages/CSRAdmin/pending-complaintslabhazir\";\nimport { invoiceList } from \"common/data\";\nimport labsListPendingFee from \"store/labs-list-pending/reducer\";\nimport allDonationAppointments from \"pages/FinanceAdmin/all-donation-appointments\";\nimport msgBox from \"pages/Complaints/msg-box\";\nimport msgBoxFo from \"pages/Complaints/msg-box\";\nimport ProfilesOfferedbyLab from \"pages/LabMarket/NearbyLabs/ProfilesOfferedbyLab\";\nimport PackagesOfferedbyLab from \"pages/LabMarket/NearbyLabs/PackagesOfferedbyLab\";\nimport RadiologyOfferedbyLab from \"pages/LabMarket/NearbyLabs/RadiologyOfferedbyLab\"\nimport advLabChatBox from \"pages/LabAdvertisements/adv-lab-chat-box\";\nimport advmadminChatBox from \"pages/LabAdvertisements/adv-lab-chat-box\";\nimport labCorporateStatement from \"pages/FinanceAdmin/lab-corporate-statement\";\nimport { components } from \"react-select/dist/react-select.cjs.prod\";\n// All general public routes will be listed here\nconst publicRoutes = [\n \n { path: \"/creditcardcheckout\", component: CreditCardCheckout},\n { path: \"/register/:guest_id?/:uuid?\", component: Register },\n { path: \"/logout\", component: Logout },\n { path: \"/login/:guest_id?/:uuid?\", component: Login },\n { path: \"/register-affiliate\", component: RegisterAffiliate },\n { path: \"/forgot-password\", component: ForgetPwd },\n { path: \"/:token/confirm-password\", component: ConfirmPwd },\n { path: \"/patient-information/:id/:guest_id?/:uuid?\", component: PatientInformation },\n { path: \"/b2bclient-information/:id\", component: B2bClientInformation },\n { path: \"/donor-information/:id\", component: DonorInformation },\n { path: \"/lab-information/:id\", component: LabInformation },\n { path: \"/corporate-information/:id\", component: CorporateInformation },\n { path: \"/feedback-detail/:lab_account_id\", component: FeedbackDetail },\n { path: \"/pages-maintenance\", component: PagesMaintenance },\n { path: \"/pages-comingsoon\", component: PagesComingsoon },\n { path: \"/card-payment\", component: CardPayment },\n { path: \"/pages-404\", component: Pages404 },\n { path: \"/pages-500\", component: Pages500 },\n {\n path: \"/cart/:guest_id?/:uuid?\",\n component: CartsList,\n },\n {\n path: \"/quote-list/:guest_id?/:uuid?\",\n component: QuoteList,\n },\n\n \n {\n path: \"/chart\",\n component: stackchart,\n },\n // {\n // path: \"/nearby-tests/:guest_id?/:uuid?\",\n // component: NearbyTests,\n // },\n // { path: \"/nearby-profiles/:guest_id?/:uuid?\",\n // component: NearbyProfiles \n // },\n // { path: \"/nearby-packages/:guest_id?/:uuid?\",\n // component: NearbyPackages \n // },\n // {\n // path: \"/nearby-lab-detail/:lab_account_id/:guest_id?/:uuid?\",\n // component: NearbyLabDetail,\n // },\n // {\n // path: \"/:lab_account_id/offered-test-by-lab/:guest_id?/:uuid?\",\n // component: TestsOfferedbyLab,\n // },\n\n];\n\nconst labAuthProtectedRoutes = [\n // { path: \"/change-password\", component: ChangePassword },\n \n {path: \"/audit-activity-history/:id\",component: AuditorHistoryLab},\n { path: \"/dashboard-lab\", component: DashboardLab },\n {\n path: \"/offered-tests\",\n component: OfferedTestsList,\n },\n {\n path: \"/medical-tests\",\n component: TestsList,\n },\n {\n path: \"/discount-lab\",\n component: discountLab,\n },\n {\n path: \"/medical-test-sheet\",\n component: MedicalTestSheet,\n },\n {\n path: \"/sample-collectors\",\n component: SampleCollectorsList,\n },\n { path: \"/lab-note-list/:id\", component: labnotes },\n {\n path: \"/sample-collector-info/:id\",\n component: SampleCollectorInfo,\n },\n {\n path: \"/add-sample-collector\",\n component: SampleCollectorRegister,\n },\n {\n path: \"/quality-certificates\",\n component: QualityCertificatesList,\n },\n {\n path: \"/feedbacks\",\n component: FeedbacksList,\n },\n {\n path: \"/pathologists\",\n component: PathologistsList,\n },\n {\n path: \"/pending-test-appointments\",\n component: TestAppointmentsPendingList,\n },\n {\n path:\"/token-detail-page\",\n component: tokendetailpage,\n },\n {\n path: \"/in-process-test-appointments\",\n component: TestAppointmentsInProcessList,\n },\n {\n path: \"/completed-test-appointments\",\n component: TestAppointmentsCompletedList,\n },\n {\n path: \"/lab-audit\",\n component: LabAudits,\n },\n {\n path: \"/activity-log\",\n component: activityLog,\n },\n {\n path: \"/lab-profile\",\n component: LabProfile,\n },\n {\n path: \"/lab-settings\",\n component: LabSettings,\n },\n {\n path: \"/lab-invoice-detail/:id\",\n component: LabInvoiceDetail,\n },\n {\n path: \"/lab-appointment-detail/:id\",\n component: LabAppointmentDetail,\n },\n { path: \"/account-statements\", component: AccountStatements },\n { path: \"/lab-advertisement\", component: LabAdvertisements },\n { path: \"/clab-account-statements\", component: CorporateLabAccountStatements },\n\n // { path: \"/lab-advertisement\", component: LabAdvertisements },\n {\n path: \"/adv-invoice-detail/:id\",\n component: AdvInvoiceDetail,\n },\n {\n path: \"/lab-payments/:id\",\n component: Payments,\n },\n {\n path: \"/corporates-List\",\n component: CorporatesList,\n },\n {\n path: \"/accepted-corporates-List\",\n component: AcceptedCorporatesList,\n },\n { path: \"/lab-adv-chat-box/:id\", component: advLabChatBox },\n {\n path: \"/corporate-offered-tests/:id\",\n component: CorporateOfferedTestsListForLab,\n },\n {\n path: \"/payment-confirmation\",\n component: PaymentConfirmation,\n },\n {\n path: \"/corporate-activity-log-lab/:id\",\n component: corporatecommit,\n },\n {\n path: \"/corporate-voucher-lab/:id\",\n component: corporatevoucher,\n },\n];\n\nconst b2bclientAuthProtectedRoutes = [\n { path: \"/dashboard-b2bclient\", component: DashboardB2b },\n {\n path: \"/b2b-referred-patients\",\n component: B2bReferredPatient,\n },\n {\n path: \"/patients/:uuid\",\n component: Patient,\n },\n {\n path: \"/checkout-b2b/:uuid?/:guest_id?\",\n component: checkoutb2b,\n },\n { path: \"/b2b-payment\", component: B2bPayments },\n { path: \"/b2b-account-statements\", component: B2bAccountStatements },\n {\n path: \"/in-process-b2b/:id\",\n component: Invoiceb2b,\n },\n {\n path: \"/b2b-shares\",\n component: B2bLabShare,\n },\n {\n path: \"/b2b-profile\",\n component: B2bProfile,\n },\n];\nconst financeOfficerAuthProtectedRoutes = [\n //{ path: \"/testing-appointments\", component: AllDonationsList},\n { path: \"/dashboard-finance\", component: DashboardFinance},\n { path: \"/financeofficer-profile\", component: FinanceOfficerProfile },\n { path: \"/in-payment\", component: InPayments },\n { path: \"/out-payment\", component: OutPayments },\n { path: \"/chat-list/:id\", component: msgBoxFo },\n {\n path: \"/payment-status\",\n component: PaymentStatussList,\n },\n {\n path: \"/activity-log-finance/:id\",\n component: activityLogFinance,\n },\n {\n path: \"/payment-in-pending-clearence-status\",\n component: PendintClearenceStatussList,\n },\n {\n path: \"/clear-status\",\n component: clearStatussList,\n },\n {\n path: \"/bounced-status\",\n component: bouncedStatussList,\n },\n {\n path: \"/payment-out-bounced-status\",\n component: PaymentOutBouncedStatussList,\n },\n {\n path: \"/payment-out-pending-clearence-status\",\n component: PaymentOutStatussList,\n },\n {\n path: \"/payment-out-created-status\",\n component: PaymentOutCreatedStatussList,\n },\n {\n path: \"/payment-out-clear-status\",\n component: PaymentOutclearStatussList,\n },\n { path: \"/all-labs-list\", component: AllLabsList },\n { path: \"/bank-transfer\", component: bankTransferDetail },\n { path: \"/invoice-adjustment\", component: invoiceAdjustmentDetail },\n {path : \"/inter-bank-details-list\", component: interBankDetailsList},\n { path: \"/All-Donation-Appointments/:id\", component: allDonationAppointments }\n\n];\nconst financeAdminAuthProtectedRoutes = [\n { path: \"/dashboard-financeadmin\", component: DashboardFinanceAdmin },\n { path: \"/account-statements-lab/:id\", component: AccountStatementsLab },\n { path: \"/account-statement-donor/:id\", component: AccountStatementDonor },\n // {\n // path: \"/corporate-lab-appointments/:id\",\n // component: CorporateLabAppointmentsList,\n // },\n { path: \"/account-statement-b2b/:id\", component: AccountStatementsB2B },\n { path: \"/cleared-in-payments\", component: ClearedInPayments },\n { path: \"/pending-in-payments\", component: PendingInPayments },\n {\n path: \"/pending-out-payments\",\n component: PendingOutPayments,\n },\n { path: \"/approved-in-payments\", component: ApprovedInPayments },\n { path: \"/unapproved-in-payments\", component: UnapprovedInPayments },\n { path: \"/activity-log-finance-admin\", component: activityLogFinanceAdmin },\n { path: \"/corporate-status\", component: corporatestatusCancel },\n {\n path: \"/activity-log-financeadmin/:id\",\n component: activityLogFinance,\n },\n {\n path: \"/corporate-lab-appointments/:id\",\n component: AccountStatementsCorporate,\n },\n { path: \"/All-Donation-Appointments/:id\", component: allDonationAppointments },\n {path: \"/create-bank\", component: CreateBanks},\n {path: \"/bank-account\", component: BankAccounts},\n {path: \"/banks-list\", component: BanksList},\n {path: \"/bankaccounts-list\", component: BankAccountsList},\n { path: \"/lab-details\", component: labList},\n { path: \"/donor-details\", component: donorList},\n { path: \"/donors-appointments-list\", component: donorappointmentsList},\n { path: \"/b2bclients-details\", component: b2bList},\n {path: \"/bank-account-statements/:id\", component: BankAccountStatements},\n { path: \"/accepted-lab-advertisements\", component: LabAdvertisementRequestsAcceptedMA},\n { path: \"/adv-fadmin-chat-box/:id\", component: advmadminChatBox },\n { path: \"/lab-corporate-statement\", component: labCorporateStatement},\n { path: \"/corporate-details\", component: corporateList},\n {\n path: \"/finance-invoice-detail/:id\",\n component: CollectorInvoiceDetail,\n },\n\n {\n path: \"/accepted-corporates-List\",\n component: AcceptedCorporatesLists,\n },\n {\n path: \"/corporate-payment-confirmation\",\n component: LabhazirPaymentConfirmation,\n },\n {\n path: \"/corporate-payment-activity-log/:id\",\n component: corporatecommit,\n },\n {\n path: \"/corporate-payment-voucher/:id\",\n component: corporatevoucher,\n },\n\n\n\n // { path: \"/financeadmin-profile\", component: FinanceAdminProfile },\n];\nconst donorAuthProtectedRoutes = [\n { path: \"/dashboard-donor\", component: DonorDashboard },\n { path: \"/donor-profile\", component: DonorProfile },\n { path: \"/donor-appointment\", component: DonorAppointments },\n { path: \"/donor-payment\", component: DonorPayments },\n {\n path: \"/donor-settings\",\n component: DonorSettings,\n },\n { path: \"/donor-account-statements\", component: DonorAccountStatements },\n { path: \"/donors-account-statements\", component: DonorsAccountStatements },\n\n];\n// const b2badminAuthProtectedRoutes = [\n// { path: \"/offeredlabs-shares/:id\", component: OfferedLabsshares },\n// { path: \"/b2blist\", component: B2bAllClients },\n\nconst b2badminAuthProtectedRoutes = [\n { path: \"/b2b-clients-shares/:id\", component: B2BClientShares },\n // { path: \"/offeredlabs-shares/:id\", component: OfferedLabsshares },\n\n { path: \"/b2b-clients-list\", component: B2bAllClients },\n];\n\nconst sampleCollectorAuthProtectedRoutes = [\n { path: \"/dashboard-samplecollector\", component: DashboardSampleCollector },\n {\n path: \"/sample-collector-profile\",\n component: SampleCollectorProfile,\n },\n // {\n // path: \"/sample-invoice-detail/:id\",\n // component: SampleInvoiceDetail,\n // },\n {\n path: \"/sample-collector-in-process\",\n component: SampleCollectorTestAppointmentsInProcessList,\n },\n {\n path: \"/collector-invoice-detail/:id\",\n component: CollectorInvoiceDetail,\n },\n {\n path: \"/sampleC-appointment-detail/:id\",\n component: SampleCAppointmentDetail,\n },\n {\n path: \"/sample-collector-completed\",\n component: SampleCollectorTestAppointmentsCompletedList,\n },\n\n];\n\nconst auditorAuthProtectedRoutes = [\n { path: \"/dashboard-auditor\", component: DashboardAuditor },\n { path: \"/auditor-profile\", component: AuditorProfile },\n { path: \"/assigned-audits\", component: AssignedAudits },\n { path: \"/audited-audits\", component: AuditorCompletedAudits },\n {path: \"/audit-activity-auditor/:id\",component: AuditorHistory}\n];\n\nconst registrationAdminAuthProtectedRoutes = [\n { path: \"/pending-corporate\", component: PendingCorporate },\n { path: \"/review-performance\", component: ReviewPerformance },\n { path: \"/approved-corporate\", component: ApprovedCorporate },\n { path: \"/unapproved-corporate\", component: UnapprovedCorporate },\n { path: \"/pending-labs\", component: PendingLabs },\n { path: \"/labs-list-approved-fee\", component: labsListApprovedFeeOffered },\n { path: \"/labs-list-pending-fee\", component: labsListPendingFeeOffered },\n {\n path: \"/corporate-offered-tests-regadmin/:id\",\n component: CorporateOfferedTestsListForLab,\n },\n {\n path: \"/shared-percentage-pending-Fee/:id\",component: sharedPercentagePendingFeeTests,\n },\n {\n path: \"/shared-percentage-approved-Fee/:id\",component: sharedPercentageApprovedFeeTests,\n },\n { path: \"/approved-labs\", component: ApprovedLabs },\n { path: \"/unapproved-labs\", component: UnapprovedLabs },\n { path: \"/pending-b2b-clients\", component: PendingB2bClients },\n { path: \"/approved-b2b-clients\", component: ApprovedB2bClients },\n { path: \"/unapproved-b2b-clients\", component: UnapprovedB2bClients },\n { path: \"/pending-donors\", component: PendingDonors },\n { path: \"/approved-donors\", component: ApprovedDonors },\n { path: \"/unapproved-donors\", component: UnapprovedDonors },\n {\n path: \"/referrellab\",component: ReferrelLab,\n },\n {\n path: \"/approvereferrellab\",component: ApproveReferrelLab,\n },\n {\n path: \"/labs-rating\",\n component: labsRating,\n },\n {\n path: \"/list-corporate\",\n component: listCorporate,\n },\n {\n path: \"/reffrell-corporate\",\n component: rFeeCorporate,\n },\n];\n\nconst marketerAdminAuthProtectedRoutes = [\n { path: \"/dashboard-marketeradmin\", component: DashboardMarketerAdmin },\n { path: \"/advertisement\", component: Advertisements },\n { path: \"/advertisement-price-list\", component: AdvertisementPriceLists },\n { path: \"/discount-labhazir\", component: DiscountLabHazir },\n { path: \"/labs-list\", component: labsList},\n { path: \"/comments-list/:id\", component: msgBox },\n { path: \"/adv-madmin-chat-box/:id\", component: advmadminChatBox },\n {\n path: \"/activity-log-marketer\",\n component: activityLogMarketer,\n },\n { path: \"/marketer-test-discount-notes-list/:id\", component: marketertestdiscountNotesList },\n { path: \"/marketer-test-labdiscount-notes-list/:id\", component: marketerlabdiscountNotesList },\n {\n path: \"/discountlab/:id\",component: DiscountLab,\n },\n { path: \"/pending-lab-advertisement-requests\", component: LabAdvertisementRequests},\n { path: \"/accepted-lab-advertisement-requests\", component: LabAdvertisementRequestsAccepted}\n\n];\n\nconst csrAuthProtectedRoutes = [\n { path: \"/dashboard-csr\", component: DashboardCsr },\n { path: \"/staff-profile\", component: StaffProfile},\n { path: \"/handled-complaints\", component: HandledComplaints },\n { path: \"/unhandled-complaints\", component: UnhandledComplaints },\n { path: \"/csr-pending-appointments\", component: csrComplaints },\n { path: \"/reduce-tests/:id\", component: reduceTests },\n { path: \"/csr-notes-list/:id\", component: NotesList },\n { path: \"/csr-notes-complains/:id\", component: NotesComplains },\n\n {\n path: \"/csr-invoice-detail/:id\",\n component: CsrInvoiceDetail,\n },\n {\n path: \"/csr-checkout\",\n component: csrCheckout,\n },\n {\n path: \"/patients-list\",\n component: Patientslist,\n },\n {\n path: \"/checkout-csr/:id\",\n component: checkoutcsr,\n },\n {\n path: \"/test-appointments/:id\",\n component: TestAppointmentsCSRList,\n },\n {\n path: \"/appointment-detail/:id\",\n component: AppointmentDetail,\n },\n {\n path: \"/corporate-info-modal/:id/:uuid?\",\n component: CorporateInfoModalRoute,\n },\n];\n\nconst csrAdminAuthProtectedRoutes = [\n { path: \"/pending-complaints-lab\", component: PendingComplaints },\n { path: \"/pending-csr-appointments\", component: csrApointments },\n { path: \"/csr-notes-lists/:id\", component: NotesLists },\n { path: \"/csr-notes-admincomplains/:id\", component: NotesComplainsAdmin },\n { path: \"/pending-complaints-labhazir\", component: pendingComplaintslabhazir },\n { path: \"/inprocess-complaints-lab\", component: InProcessComplaints },\n { path: \"/inprocess-complaints-labhazir\", component: inprocessComplaintslabhazir },\n { path: \"/resolved-complaints-lab\", component: ResolvedComplaints },\n { path: \"/resolved-complaints-labhazir\", component: ResolvedComplaintsLabhazir },\n { path: \"/csrs-list\", component: CSRsList}\n];\n\nconst auditorAdminAuthProtectedRoutes = [\n { path: \"/pending-audits\", component: PendingAudits },\n { path: \"/inprocess-audits\", component: InProcessAudits },\n { path: \"/completed-audits\", component: PassedAudits },\n { path: \"/failed-audits\", component: FailedAudits },\n { path: \"/lab-list\", component: lablist },\n { path: \"/auditors-list\", component: AuditorsList},\n { path: \"/lab-audits/:id\", component: LabAudit },,\n {path: \"/audit-activity-admin/:id\",component: AuditorAdminHistory}\n\n];\n\n\nconst hrAdminAuthProtectedRoutes = [\n { path: \"/add-staff\", component: StaffRegister },\n { path: \"/staff-info/:id\", component: StaffInfo },\n { path: \"/csr-list\", component: CSRList },\n { path: \"/auditor-list\", component: AuditorList },\n { path: \"/finance-officer-list\", component: FinanceOfficerList },\n { path: \"/marketers-list\", component: MARKETERSList },\n];\n\n// All authenticated routes of the patient module will be listed here\nconst patientAuthProtectedRoutes = [\n { path: \"/dashboard-patient/:uuid?\", component: DashboardPatient },\n { path: \"/csr-patient-notes-list/:id\", component: PatientCsrNotesList },\n {\n path: \"/test-appointments/:uuid?\",\n component: TestAppointmentsList,\n },\n {\n path: \"/profile/:guest_id?\",\n component: PatientProfile,\n },\n {\n path: \"/cart/:guest_id?/:uuid?\",\n component: CartsList,\n },\n {\n path: \"/quote-list/:guest_id?/:uuid?\",\n component: QuoteList,\n },\n {\n path: \"/checkout/:uuid?\",\n component: Checkout,\n },\n {\n path: \"/invoice-detail/:id\",\n component: InvoiceDetail,\n },\n {\n path: \"/patient-appointment-detail/:id\",\n component: PatientAppointmentDetail,\n },\n {\n path: \"/corporate-modal/:uuid?\",\n component: CorporateModalRoute,\n },\n // { path: \"/nearby-labs/:uuid?\", component: NearbyLabs },\n\n // {\n // path: \"/nearby-tests/:uuid?\",\n // component: NearbyTests,\n // },\n // { path: \"/nearby-profiles/:uuid?\",\n // component: NearbyProfiles \n // },\n // { path: \"/nearby-packages/:uuid?\",\n // component: NearbyPackages \n // },\n];\n\n// All public routes of the patient module will be listed here\nconst patientPublicRoutes = [\n { path: \"/change-password\", component: ChangePassword },\n { path: \"/contact-us\", component: ContactUs },\n\n { path: \"/b2b-affiliate\", component: B2bAffiliate },\n\n { path: \"/disclaimer\", component: Disclaimer },\n { path: \"/about-us\", component: AboutUs },\n { path: \"/chat-box\", component: ChatBox },\n // { path: \"/terms-conditions\", component: TermsConditions},\n { path: \"/nearby-labs/:uuid?/:guest_id?\", component: NearbyLabs },\n {\n path: \"/labs/:guest_id?/:uuid?\",\n component: labs,\n },\n {\n path: \"/corporate-labs\",\n component: corporatelabs,\n },\n {\n path: \"/nearby-test/:guest_id?/:uuid?\",\n component: NearbyTests,\n },\n {\n path: \"/nearby-tests-discountedlh/:guest_id?/:uuid?\",\n component: NearbyTestsDiscountedlh,\n },\n { path: \"/nearby-profiles/:guest_id?/:uuid?\",\n component: NearbyProfiles \n },\n { path: \"/nearby-packages/:guest_id?/:uuid?\",\n component: NearbyPackages \n },\n { path: \"/tests-offered-labhazir/:guest_id?/:uuid?\",\n component: MedicalTestsList\n },\n { path: \"/nearby-radiology/:guest_id?/:uuid?\",\n component: NearbyRadiology \n},\n {\n path: \"/nearby-lab-detail/:lab_account_id/:guest_id?/:uuid?\",\n component: NearbyLabDetail,\n },\n {\n path: \"/:lab_account_id/offered-test-by-lab/:guest_id?/:uuid?\",\n component: TestsOfferedbyLab,\n },\n {\n path: \"/:lab_account_id/offered-test-by-lab-corporate/:guest_id?/:uuid?\",\n component: TestsOfferedbyLabCorporate,\n },\n {\n path: \"/:lab_account_id/offered-profile-by-lab-corporate/:guest_id?/:uuid?\",\n component: ProfilesOfferedbyLabCorporate,\n },\n {\n path: \"/:lab_account_id/offered-package-by-lab-corporate/:guest_id?/:uuid?\",\n component: PackagesOfferedbyLabCorporate,\n },\n {\n path: \"/:lab_account_id/offered-radiology-by-lab-corporate/:guest_id?/:uuid?\",\n component: RadiologysOfferedbyLabCorporate,\n },\n {\n path: \"/:lab_account_id/offered-profile-by-lab/:guest_id?/:uuid?\",\n component: ProfilesOfferedbyLab,\n },\n {\n path: \"/:lab_account_id/offered-package-by-lab/:guest_id?/:uuid?\",\n component: PackagesOfferedbyLab,\n },\n {\n path: \"/:lab_account_id/offered-radiology-by-lab/:guest_id?/:uuid?\",\n component: RadiologyOfferedbyLab,\n },\n {\n path: \"/:lab_account_id/lab-quality-certificates/:guest_id?/:uuid?\",\n component: LabQualityCertificates,\n },\n {\n path: \"/:lab_account_id/lab-sample-collectors/:guest_id?/:uuid?\",\n component: LabSampleCollectors,\n },\n {\n path: \"/:lab_account_id/lab-pathologists/:guest_id?/:uuid?\",\n component: LabPathologists,\n },\n { path: \"/test-descriptions/:test_id/:uuid?\", component: TestDescriptions }, \n {\n path: \"/corporate-patients-book-appointments/:guest_id?/:id\",\n component: CorporatePatientBookings,\n },\n];\n\nconst corporateAuthProtectedRoutes = [\n {\n path: \"/corporate-profile\",\n component: CorporateProfile,\n },\n {\n path: \"/dashboard-corporate\",\n component: DashboardCorporate,\n },\n {\n path: \"/employee-data\",\n component: EmployeeData,\n },\n {\n path: \"/employee-file\",\n component: EmployeeFile,\n },\n {\n path: \"/employee-list\",\n component: EmployeeList,\n },\n {\n path: \"/corporate-test-list\",\n component: CorporateTestsList,\n },\n {\n path: \"/corporate-offered-tests\",\n component: CorporateOfferedTestsList,\n },\n {\n path: \"/corporate-lab-appointments\",\n component: CorporateLabAppointmentsList,\n },\n {\n path: \"/corporate-labs-list\",\n component: CorporateLabsList,\n },\n {\n path: \"/corporate-payment-form\",\n component: CorporatePaymentForm,\n },\n {\n path: \"/corporate-payment-form-status\",\n component: PaymentFormStatus,\n },\n {\n path: \"/corporate-activity-log/:id\",\n component: corporatecommit,\n },\n {\n path: \"/corporate-voucher/:id\",\n component: corporatevoucher,\n },\n {\n path: \"/cor-invoice-detail/:id\",\n component: CorporateInvoiceDetail,\n },\n];\n\nconst authProtectedRoutes = [\n // this route should be at the end of all other routes\n // eslint-disable-next-line react/display-name\n { path: \"/\", exact: true, component: () => },\n];\n\nexport {\n authProtectedRoutes,\n labAuthProtectedRoutes,\n b2bclientAuthProtectedRoutes,\n donorAuthProtectedRoutes,\n sampleCollectorAuthProtectedRoutes,\n b2badminAuthProtectedRoutes,\n auditorAuthProtectedRoutes,\n financeOfficerAuthProtectedRoutes,\n financeAdminAuthProtectedRoutes,\n registrationAdminAuthProtectedRoutes,\n marketerAdminAuthProtectedRoutes,\n csrAdminAuthProtectedRoutes,\n csrAuthProtectedRoutes,\n auditorAdminAuthProtectedRoutes,\n hrAdminAuthProtectedRoutes,\n patientAuthProtectedRoutes,\n patientPublicRoutes,\n corporateAuthProtectedRoutes,\n publicRoutes,\n};","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Route, Redirect } from \"react-router-dom\";\n// import { v4 as uuidv4 } from 'uuid';\n\n\nconst AppRoute = ({\n component: Component,\n layout: Layout,\n isAuthProtected,\n isLabAuthProtected,\n isPatientAuthProtected,\n isCorporateAuthProtected,\n isB2BClientAuthProtected,\n isDonorAuthProtected,\n isSampleCollectorAuthProtected,\n isB2BAdminAuthProtected,\n isAuditorAuthProtected,\n isfinanceOfficerAuthProtected,\n isfinanceAdminAuthProtected,\n isRegistrationAdminAuthProtected,\n isMarketerAdminAuthProtected,\n isCSRAdminAuthProtected,\n isCSRAuthProtected,\n isAuditorAdminAuthProtected,\n isHRAdminAuthProtected,\n ...rest\n}) => (\n {\n /* If the route is LabAuthProtected or CorporateAuthProtected then check if account type is patient\n - If yes then redirect it to the dashboard of the patient */\n\n /* If the route is PatientAuthProtected or CorporateAuthProtected then check if account type is labowner\n - If yes then redirect it to the dashboard of the labowner */\n\n /* If the route is PatientAuthProtected or LabAuthProtected then check if account type is corporate\n - If yes then redirect it to the dashboard of the corporate */\n\n if (isAuthProtected && !localStorage.getItem(\"authUser\")) {\n // const guest_id = Math.floor(Math.random() * 10);\n // this.setState({ guest_id: guest_id });\n // guest_id = this.state.guest_id\n // console.log(\"differ route main set hoi:\",guest_id)\n\n\n\n\n return (\n \n );\n }\n\n // Auth protection logics for the patient\n else if (\n isAuthProtected &&\n (isLabAuthProtected ||\n isCorporateAuthProtected ||\n isB2BClientAuthProtected ||\n isDonorAuthProtected ||\n isAuditorAuthProtected ||\n isSampleCollectorAuthProtected ||\n isfinanceOfficerAuthProtected ||\n isfinanceAdminAuthProtected ||\n isB2BAdminAuthProtected ||\n isRegistrationAdminAuthProtected ||\n isMarketerAdminAuthProtected ||\n isCSRAdminAuthProtected ||\n isCSRAuthProtected ||\n isAuditorAdminAuthProtected ||\n isHRAdminAuthProtected) &&\n JSON.parse(localStorage.getItem(\"authUser\")).account_type == \"patient\"\n ) {\n return ;\n }\n\n // Auth protection logics for the lab\n else if (\n isAuthProtected &&\n (isPatientAuthProtected ||\n isCorporateAuthProtected ||\n isB2BClientAuthProtected ||\n isDonorAuthProtected ||\n isAuditorAuthProtected ||\n isSampleCollectorAuthProtected ||\n isfinanceOfficerAuthProtected ||\n isfinanceAdminAuthProtected ||\n isB2BAdminAuthProtected ||\n isRegistrationAdminAuthProtected ||\n isMarketerAdminAuthProtected ||\n isCSRAdminAuthProtected ||\n isCSRAuthProtected ||\n isAuditorAdminAuthProtected ||\n isHRAdminAuthProtected) &&\n JSON.parse(localStorage.getItem(\"authUser\")).account_type == \"labowner\"\n ) {\n return (\n \n );\n }\n\n // Auth protection logics for the corporate\n else if (\n isAuthProtected &&\n (isPatientAuthProtected ||\n isLabAuthProtected ||\n isB2BClientAuthProtected ||\n isDonorAuthProtected ||\n isAuditorAuthProtected ||\n isSampleCollectorAuthProtected ||\n isfinanceOfficerAuthProtected ||\n isfinanceAdminAuthProtected ||\n isB2BAdminAuthProtected ||\n isRegistrationAdminAuthProtected ||\n isMarketerAdminAuthProtected ||\n isCSRAdminAuthProtected ||\n isCSRAuthProtected ||\n isAuditorAdminAuthProtected ||\n isHRAdminAuthProtected) &&\n JSON.parse(localStorage.getItem(\"authUser\")).account_type == \"corporate\"\n ) {\n return (\n \n );\n }\n\n // Auth protection logics for the b2bclient\n else if (\n isAuthProtected &&\n (isPatientAuthProtected ||\n isLabAuthProtected ||\n isCorporateAuthProtected ||\n isDonorAuthProtected ||\n isAuditorAuthProtected ||\n isSampleCollectorAuthProtected ||\n isfinanceOfficerAuthProtected ||\n isfinanceAdminAuthProtected ||\n isB2BAdminAuthProtected ||\n isRegistrationAdminAuthProtected ||\n isMarketerAdminAuthProtected ||\n isCSRAdminAuthProtected ||\n isCSRAuthProtected ||\n isAuditorAdminAuthProtected ||\n isHRAdminAuthProtected) &&\n JSON.parse(localStorage.getItem(\"authUser\")).account_type == \"b2bclient\"\n ) {\n return (\n \n );\n }\n\n // Auth protection logics for the b2bclient\n else if (\n isAuthProtected &&\n (isPatientAuthProtected ||\n isLabAuthProtected ||\n isCorporateAuthProtected ||\n isB2BClientAuthProtected ||\n isAuditorAuthProtected ||\n isSampleCollectorAuthProtected ||\n isfinanceOfficerAuthProtected ||\n isfinanceAdminAuthProtected ||\n isB2BAdminAuthProtected ||\n isRegistrationAdminAuthProtected ||\n isCSRAdminAuthProtected ||\n isCSRAuthProtected ||\n isMarketerAdminAuthProtected ||\n isAuditorAdminAuthProtected ||\n isHRAdminAuthProtected) &&\n JSON.parse(localStorage.getItem(\"authUser\")).account_type == \"donor\"\n ) {\n return (\n \n );\n }\n\n // Auth protection logics for the b2badmin\n else if (\n isAuthProtected &&\n (isPatientAuthProtected ||\n isLabAuthProtected ||\n isCorporateAuthProtected ||\n isDonorAuthProtected ||\n isB2BClientAuthProtected ||\n isAuditorAuthProtected ||\n isSampleCollectorAuthProtected ||\n isfinanceOfficerAuthProtected ||\n isfinanceAdminAuthProtected ||\n isRegistrationAdminAuthProtected ||\n isMarketerAdminAuthProtected ||\n isCSRAdminAuthProtected ||\n isCSRAuthProtected ||\n isAuditorAdminAuthProtected ||\n isHRAdminAuthProtected) &&\n JSON.parse(localStorage.getItem(\"authUser\")).account_type == \"b2b-admin\"\n ) {\n return (\n \n );\n }\n\n // Auth protection logics for the auditor\n else if (\n isAuthProtected &&\n (isPatientAuthProtected ||\n isLabAuthProtected ||\n isCorporateAuthProtected ||\n isB2BClientAuthProtected ||\n isDonorAuthProtected ||\n isSampleCollectorAuthProtected ||\n isfinanceOfficerAuthProtected ||\n isfinanceAdminAuthProtected ||\n isB2BAdminAuthProtected ||\n isRegistrationAdminAuthProtected ||\n isMarketerAdminAuthProtected ||\n isCSRAdminAuthProtected ||\n isCSRAuthProtected ||\n isAuditorAdminAuthProtected ||\n isHRAdminAuthProtected) &&\n JSON.parse(localStorage.getItem(\"authUser\")).account_type == \"auditor\"\n ) {\n return (\n \n );\n }\n\n // Auth protection logics for the sample collector\n else if (\n isAuthProtected &&\n (isPatientAuthProtected ||\n isLabAuthProtected ||\n isCorporateAuthProtected ||\n isB2BClientAuthProtected ||\n isDonorAuthProtected ||\n isAuditorAuthProtected ||\n isB2BAdminAuthProtected ||\n isfinanceOfficerAuthProtected ||\n isfinanceAdminAuthProtected ||\n isRegistrationAdminAuthProtected ||\n isMarketerAdminAuthProtected ||\n isCSRAdminAuthProtected ||\n isCSRAuthProtected ||\n isAuditorAdminAuthProtected ||\n isHRAdminAuthProtected) &&\n JSON.parse(localStorage.getItem(\"authUser\")).account_type ==\n \"samplecollector\"\n ) {\n return (\n \n );\n }\n\n // Auth protection logics for the registration admin\n else if (\n isAuthProtected &&\n (isPatientAuthProtected ||\n isLabAuthProtected ||\n isCorporateAuthProtected ||\n isB2BClientAuthProtected ||\n isB2BAdminAuthProtected ||\n isDonorAuthProtected ||\n isSampleCollectorAuthProtected ||\n isfinanceOfficerAuthProtected ||\n isfinanceAdminAuthProtected ||\n isAuditorAuthProtected ||\n isMarketerAdminAuthProtected ||\n isCSRAdminAuthProtected ||\n isCSRAuthProtected ||\n isAuditorAdminAuthProtected ||\n isHRAdminAuthProtected) &&\n JSON.parse(localStorage.getItem(\"authUser\")).account_type ==\n \"registration-admin\"\n ) {\n return (\n \n );\n }\n\n // Auth protection logics for the marketer admin\n else if (\n isAuthProtected &&\n (isPatientAuthProtected ||\n isLabAuthProtected ||\n isCorporateAuthProtected ||\n isB2BClientAuthProtected ||\n isDonorAuthProtected ||\n isB2BAdminAuthProtected ||\n isSampleCollectorAuthProtected ||\n isfinanceOfficerAuthProtected ||\n isfinanceAdminAuthProtected ||\n isAuditorAuthProtected ||\n isCSRAuthProtected ||\n isMarketerAdminAuthProtected ||\n isRegistrationAdminAuthProtected ||\n isAuditorAdminAuthProtected ||\n isRegistrationAdminAuthProtected ||\n isHRAdminAuthProtected) &&\n JSON.parse(localStorage.getItem(\"authUser\")).account_type == \"csr-admin\"\n ) {\n return (\n \n );\n } else if (\n isAuthProtected &&\n (isPatientAuthProtected ||\n isLabAuthProtected ||\n isCorporateAuthProtected ||\n isB2BClientAuthProtected ||\n isB2BAdminAuthProtected ||\n isSampleCollectorAuthProtected ||\n isfinanceOfficerAuthProtected ||\n isfinanceAdminAuthProtected ||\n isAuditorAuthProtected ||\n isCSRAdminAuthProtected ||\n isRegistrationAdminAuthProtected ||\n isMarketerAdminAuthProtected ||\n isDonorAuthProtected ||\n isAuditorAdminAuthProtected ||\n isHRAdminAuthProtected) &&\n JSON.parse(localStorage.getItem(\"authUser\")).account_type == \"CSR\"\n ) {\n return (\n \n );\n }\n\n // Auth protection logics for the auditor admin\n else if (\n isAuthProtected &&\n (isPatientAuthProtected ||\n isLabAuthProtected ||\n isCorporateAuthProtected ||\n isB2BClientAuthProtected ||\n isB2BAdminAuthProtected ||\n isSampleCollectorAuthProtected ||\n isfinanceOfficerAuthProtected ||\n isfinanceAdminAuthProtected ||\n isAuditorAuthProtected ||\n isCSRAdminAuthProtected ||\n isDonorAuthProtected ||\n isCSRAuthProtected ||\n isRegistrationAdminAuthProtected ||\n isMarketerAdminAuthProtected ||\n isHRAdminAuthProtected) &&\n JSON.parse(localStorage.getItem(\"authUser\")).account_type ==\n \"auditor-admin\"\n ) {\n return (\n \n );\n }\n\n // Auth protection logics for the hr admin\n else if (\n isAuthProtected &&\n (isPatientAuthProtected ||\n isLabAuthProtected ||\n isCorporateAuthProtected ||\n isB2BClientAuthProtected ||\n isB2BAdminAuthProtected ||\n isSampleCollectorAuthProtected ||\n isfinanceOfficerAuthProtected ||\n isfinanceAdminAuthProtected ||\n isAuditorAuthProtected ||\n isCSRAdminAuthProtected ||\n isCSRAuthProtected ||\n isAuditorAdminAuthProtected ||\n isRegistrationAdminAuthProtected ||\n isDonorAuthProtected ||\n isMarketerAdminAuthProtected) &&\n JSON.parse(localStorage.getItem(\"authUser\")).account_type == \"hr-admin\"\n ) {\n return (\n \n );\n }\n\n // Auth protection logics for the marketer admin\n else if (\n isAuthProtected &&\n (isPatientAuthProtected ||\n isLabAuthProtected ||\n isCorporateAuthProtected ||\n isB2BClientAuthProtected ||\n isB2BAdminAuthProtected ||\n isSampleCollectorAuthProtected ||\n isfinanceOfficerAuthProtected ||\n isfinanceAdminAuthProtected ||\n isAuditorAuthProtected ||\n isCSRAdminAuthProtected ||\n isCSRAuthProtected ||\n isAuditorAdminAuthProtected ||\n isDonorAuthProtected ||\n isRegistrationAdminAuthProtected ||\n isHRAdminAuthProtected) &&\n JSON.parse(localStorage.getItem(\"authUser\")).account_type ==\n \"marketer-admin\"\n ) {\n return (\n \n );\n }\n // Auth protection logics for the finance officer\n else if (\n isAuthProtected &&\n (isPatientAuthProtected ||\n isLabAuthProtected ||\n isCorporateAuthProtected ||\n isB2BClientAuthProtected ||\n isB2BAdminAuthProtected ||\n isfinanceAdminAuthProtected ||\n isSampleCollectorAuthProtected ||\n isAuditorAuthProtected ||\n isCSRAdminAuthProtected ||\n isCSRAuthProtected ||\n isAuditorAdminAuthProtected ||\n isDonorAuthProtected ||\n isRegistrationAdminAuthProtected ||\n isMarketerAdminAuthProtected ||\n isHRAdminAuthProtected) &&\n JSON.parse(localStorage.getItem(\"authUser\")).account_type ==\n \"finance-officer\"\n ) {\n return (\n \n );\n }\n // Auth protection logics for the finance Admin\n else if (\n isAuthProtected &&\n (isPatientAuthProtected ||\n isLabAuthProtected ||\n isCorporateAuthProtected ||\n isB2BClientAuthProtected ||\n isB2BAdminAuthProtected ||\n isfinanceOfficerAuthProtected ||\n isSampleCollectorAuthProtected ||\n isAuditorAuthProtected ||\n isCSRAdminAuthProtected ||\n isCSRAuthProtected ||\n isAuditorAdminAuthProtected ||\n isDonorAuthProtected ||\n isRegistrationAdminAuthProtected ||\n isMarketerAdminAuthProtected ||\n isHRAdminAuthProtected) &&\n JSON.parse(localStorage.getItem(\"authUser\")).account_type ==\n \"finance-admin\"\n ) {\n return (\n \n );\n }\n\n return (\n \n \n \n );\n }}\n />\n);\n\nAppRoute.propTypes = {\n isAuthProtected: PropTypes.bool,\n isLabAuthProtected: PropTypes.bool,\n isB2BClientAuthProtected: PropTypes.bool,\n isDonorAuthProtected: PropTypes.bool,\n isSampleCollectorAuthProtected: PropTypes.bool,\n isfinanceOfficerAuthProtected: PropTypes.bool,\n isfinanceAdminAuthProtected: PropTypes.bool,\n isB2BAdminAuthProtected: PropTypes.bool,\n isAuditorAuthProtected: PropTypes.bool,\n isRegistrationAdminAuthProtected: PropTypes.bool,\n isMarketerAdminAuthProtected: PropTypes.bool,\n isCSRAdminAuthProtected: PropTypes.bool,\n isCSRAuthProtected: PropTypes.bool,\n isAuditorAdminAuthProtected: PropTypes.bool,\n isHRAdminAuthProtected: PropTypes.bool,\n isPatientAuthProtected: PropTypes.bool,\n isCorporateAuthProtected: PropTypes.bool,\n component: PropTypes.any,\n location: PropTypes.object,\n layout: PropTypes.any,\n};\n\nexport default AppRoute;\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport {\n Dropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { withRouter, Link } from \"react-router-dom\";\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\n\nimport { connect } from \"react-redux\";\n\n// actions\nimport { getLabProfile } from \"store/auth/labprofile/actions\";\n\n// actions\nimport { getB2bProfile } from \"store/auth/b2bprofile/actions\";\n\n// actions\nimport { getPatientProfile } from \"store/auth/patientprofile/actions\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\nclass ProfileMenu extends Component {\n constructor(props) {\n super(props);\n this.state = {\n menu: false,\n name: \"\",\n logo: \"\",\n account_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n };\n this.toggle = this.toggle.bind(this);\n }\n\n toggle() {\n this.setState(prevState => ({\n menu: !prevState.menu,\n }));\n }\n\n componentDidMount() {}\n\n render() {\n return (\n \n \n \n \n \n \n \n\n\n \n {this.state.account_type && this.state.account_type == \"labowner\" && (\n \n {\" \"}\n {this.props.t(\"Lab Profile\")}\n \n )}\n {this.state.account_type && this.state.account_type == \"b2bclient\" && (\n \n {\" \"}\n {this.props.t(\"B2B Profile\")}\n \n )}\n {this.state.account_type && this.state.account_type == \"donor\" && (\n \n {\" \"}\n {this.props.t(\"Donor Profile\")}\n \n )}\n\n {/* {this.props.location &&\n this.props.location.pathname.includes(\"dashboard-corporate\") ? (\n \n {\" \"}\n {this.props.t(\"Corporate Profile\")}\n \n ) : null} */}\n\n \n {\" \"}\n {this.props.t(\"Change Password\")}\n \n\n \n {\" \"}\n {this.props.t(\"Logout\")}\n \n \n \n \n );\n }\n}\n\nProfileMenu.propTypes = {\n t: PropTypes.any,\n match: PropTypes.object,\n location: PropTypes.object,\n error: PropTypes.any,\n success: PropTypes.any,\n getLabProfile: PropTypes.func,\n getB2bProfile: PropTypes.func,\n getPatientProfile: PropTypes.func,\n};\n\nconst mapStateToProps = (state, ownProps) => {\n if (ownProps.location.pathname.includes(\"dashboard-patient\")) {\n const { error, success } = state.PatientProfile;\n return { error, success };\n } else if (ownProps.location.pathname.includes(\"dashboard-lab\")) {\n const { error, success } = state.LabProfile;\n return { error, success };\n } else if (ownProps.location.pathname.includes(\"dashboard-b2b\")) {\n const { error, success } = state.B2bProfile;\n return { error, success };\n }\n};\n\nexport default withRouter(\n connect(mapStateToProps, { getLabProfile, getB2bProfile, getPatientProfile })(\n withTranslation()(ProfileMenu)\n )\n);","import PropTypes from \"prop-types\";\nimport React, { Component } from \"react\";\nimport {\n Dropdown,\n DropdownToggle,\n DropdownMenu,\n Row,\n Col,\n CardBody,\n Card,\n Container,\n} from \"reactstrap\";\nimport SimpleBar from \"simplebar-react\";\nimport Breadcrumbs from \"components/Common/Breadcrumb\";\nimport MetaTags from \"react-meta-tags\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport ToolkitProvider, { Search } from \"react-bootstrap-table2-toolkit\";\nimport { isEmpty, map } from \"lodash\";\n\n//Import images\nimport avatar3 from \"../../../assets/images/users/avatar-3.jpg\";\nimport avatar4 from \"../../../assets/images/users/avatar-4.jpg\";\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport { getNotification } from \"store/activtylog/actions\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\nclass NotificationDropdown extends Component {\n constructor(props) {\n super(props);\n this.state = {\n menu: false,\n notification: [],\n notification: \"\",\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n this.toggle = this.toggle.bind(this);\n }\n componentDidMount() {\n const { notification, onGetNotification } = this.props;\n // console.log(onGetNotification(this.state.user_id));\n \n // Retrieve the previous API call time from localStorage\n const previousApiCallTime = localStorage.getItem('api_call_time');\n console.log(\"previousApiCallTime\",previousApiCallTime)\n\n // Call the onGetNotification action with user_id and previousApiCallTime\n onGetNotification(this.state.user_id, previousApiCallTime);\n this.setState({ notification });\n // Get the current time\n const currentApiCallTime = new Date();\n\n // Store the current API call time in localStorage\n localStorage.setItem('api_call_time', currentApiCallTime.toISOString());\n // Or store in component state\n // this.setState({ apiCallTime: currentApiCallTime });\n }\n toggle() {\n this.setState(prevState => ({\n menu: !prevState.menu,\n }));\n }\n render() {\n const { SearchBar } = Search;\n\n const { notification } = this.props;\n const { onGetNotification } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: notification.length, // replace later with size(notification),\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\", // if dataField is not match to any column you defined, it will be ignored.\n order: \"asc\", // desc or asc\n },\n ];\n return (\n console.log(\"notifications_count\", this.props.notification.notifications_count),\n \n \n \n \n {!isEmpty(this.props.notification) &&\n this.props.notification.map((notification, key) => (\n \n {notification.notifications_count > 0 && (\n
    \n \n {notification.notifications_count}\n
    )}\n {notification.notifications_count === 0 && (\n
    \n \n \n
    \n )}\n \n ))}\n \n
    \n \n
    \n \n \n
    {this.props.t(\"Notifications\")}
    \n \n
    \n
    \n
    \n
    \n\n \n \n {!isEmpty(this.props.notification) &&\n this.props.notification.map((notification, key) => (\n \n <>\n {notification.items.map(\n (item, key) => (\n \n
    \n {item.order_id ? (\n item.actions === \"Added\" && (\n
    \n {\" \"}\n You have a new Appointment with order id{\" \"}\n {item.order_id} booked at{\" \"}\n {new Date(item.booked_at).toLocaleTimeString(\"en-US\")}\n .\n
    \n )\n) : (\n item.actions === \"Added\" && (\n
    \n {\" \"}\n Your {item.corporate_name} Corporation has conducted a new test add on{\" \"}\n {new Date(item.created_at).toLocaleTimeString(\"en-US\")}\n .\n
    \n )\n)}\n{item.order_id ? (\n item.actions === \"Updated\" && (\n
    \n {\" \"}\n {item.lab_name} Changed{\" \"}\n {item.test_name} {\" \"}\n {item.field_name} from{\" \"}\n {item.old_value} to {item.new_value}{\" \"}\n on{\" \"}\n {new Date(\n notification.created_at\n ).toLocaleDateString(\"en-US\")}{\" \"}\n at{\" \"}\n {new Date(\n notification.created_at\n ).toLocaleTimeString(\"en-US\")}\n .\n
    \n )\n) : (\n item.actions === \"Updated\" && (\n
    \n {\" \"}\n Your {item.corporate_name} Corporation Changed test price on {\" \"}\n {new Date(item.created_at).toLocaleTimeString(\"en-US\")}\n .\n
    \n )\n)}\n\n \n {/* {item.actions == \"Updated\" && (\n
    \n {\" \"}\n {item.lab_name} Changed{\" \"}\n {item.test_name} {\" \"}\n {item.field_name} from{\" \"}\n {item.old_value} to {item.new_value}{\" \"}\n on{\" \"}\n {new Date(\n notification.created_at\n ).toLocaleDateString(\"en-US\")}{\" \"}\n at{\" \"}\n {new Date(\n notification.created_at\n ).toLocaleTimeString(\"en-US\")}\n .\n
    \n )} */}\n {item.actions == \"Cancelled\" && (\n
    \n {\" \"}\n Appointment with order id {item.order_id} is Cancelled at \n {\" \"} {new Date(\n item.cancelled_at\n ).toLocaleTimeString(\"en-US\")}\n .\n
    \n )}\n
    \n ))}\n \n \n ))}\n \n
    \n
    \n \n
    \n );\n }\n}\nNotificationDropdown.propTypes = {\n match: PropTypes.object,\n notification: PropTypes.array,\n className: PropTypes.any,\n onGetNotification: PropTypes.func,\n history: PropTypes.any,\n success: PropTypes.any,\n error: PropTypes.any,\n t: PropTypes.any,\n};\nconst mapStateToProps = ({ activitylog }) => ({\n notification: activitylog.notification,\n});\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetNotification: (id,previousApiCallTime) => dispatch(getNotification(id,previousApiCallTime)),\n});\nexport default withRouter(\n connect(\n mapStateToProps,\n mapDispatchToProps\n )(withTranslation()(NotificationDropdown))\n);","import PropTypes from \"prop-types\";\nimport React, { Component } from \"react\";\nimport {\n Dropdown,\n DropdownToggle,\n DropdownMenu,\n Row,\n Col,\n} from \"reactstrap\";\nimport SimpleBar from \"simplebar-react\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { isEmpty, map } from \"lodash\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport { getSampleNotification } from \"store/samplenotification/actions\";\nimport { withTranslation } from \"react-i18next\";\nimport moment from 'moment';\n\nclass SampleNotificationDropdown extends Component {\n constructor(props) {\n super(props);\n this.state = {\n \n menu: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { user_id } = this.state;\n const { onGetSampleNotification } = this.props;\n const previousApiCallTime = localStorage.getItem(\"api_call_time\");\n\n onGetSampleNotification(user_id, previousApiCallTime);\n\n const currentApiCallTime = new Date();\n localStorage.setItem(\"api_call_time\", currentApiCallTime.toISOString());\n }\n\n toggle() {\n this.setState((prevState) => ({\n menu: !prevState.menu,\n }));\n }\n\n render() {\n\n // const { SearchBar } = Search;\n\n const { sampleNotification } = this.props;\n console.log(\"My sampleNotification\", sampleNotification);\n\n const { onGetSampleNotification } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: sampleNotification.length,\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\",\n order: \"asc\",\n },\n ];\n\n return (\n \n \n \n \n \n {!isEmpty(sampleNotification) &&\n sampleNotification.map((notification, key) => (\n \n {notification.notifications_count > 0 && (\n
    \n \n \n {notification.notifications_count}\n \n
    \n )}\n {notification.notifications_count === 0 && (\n
    \n \n \n
    \n )}\n \n ))}\n \n
    \n \n
    \n \n \n
    {this.props.t(\"Notifications\")}
    \n \n
    \n
    \n
    \n\n \n \n {!isEmpty(sampleNotification) &&\n sampleNotification.map((notifications, key) => (\n \n <>\n {notifications.notifications &&\n Array.isArray(notifications.notifications) &&\n notifications.notifications.map((item, innerKey) => (\n
    \n {item.actions === \"Updated\" && (\n
    \n {\" \"}\n {item.lab_name} Has Assigned {item.sample_collector_name} The Sample Collection of order {item.order_id} At {moment(item.created_at).format(\"DD MMM YYYY, h:mm A\")}.\n
    \n )}\n {/* Add more conditions for other actions if needed */}\n
    \n ))}\n \n \n ))}\n \n
    \n
    \n \n
    \n );\n }\n}\n\nSampleNotificationDropdown.propTypes = {\n match: PropTypes.object,\n sampleNotification: PropTypes.array,\n className: PropTypes.any,\n onGetSampleNotification: PropTypes.func,\n history: PropTypes.any,\n success: PropTypes.any,\n error: PropTypes.any,\n t: PropTypes.any,\n};\n\nconst mapStateToProps = ({ sampleNotification }) => ({\n sampleNotification: sampleNotification.sampleNotification,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetSampleNotification: (id, previousApiCallTime) =>\n dispatch(getSampleNotification(id, previousApiCallTime)),\n});\n\nexport default withRouter(\n connect(\n mapStateToProps,\n mapDispatchToProps\n )(withTranslation()(SampleNotificationDropdown))\n);\n","import {\n GET_ACTIVITY_LOG,\n GET_ACTIVITY_LOG_FAIL,\n GET_ACTIVITY_LOG_SUCCESS,\n GET_SAMPLE_NOTIFICATION,\n GET_SAMPLE_NOTIFICATION_FAIL,\n GET_SAMPLE_NOTIFICATION_SUCCESS,\n} from \"./actionTypes\";\n\n// ----------- Pathologist list APIs actions -----------------\nexport const getActivityLog = id => ({\n type: GET_ACTIVITY_LOG,\n payload: id,\n});\n\nexport const getActivityLogSuccess = activitylog => ({\n type: GET_ACTIVITY_LOG_SUCCESS,\n payload: activitylog,\n});\n\nexport const getActivityLogFail = error => ({\n type: GET_ACTIVITY_LOG_FAIL,\n payload: error,\n});\n\nexport const getSampleNotification = (id,previousApiCallTime) => ({\n type: GET_SAMPLE_NOTIFICATION,\n payload: {id,previousApiCallTime},\n});\n\nexport const getSampleNotificationSuccess = sampleSampleNotification => ({\n type: GET_SAMPLE_NOTIFICATION_SUCCESS,\n payload: sampleSampleNotification,\n});\n\nexport const getSampleNotificationFail = error => ({\n type: GET_SAMPLE_NOTIFICATION_FAIL,\n payload: error,\n});\n\n\n","import PropTypes from \"prop-types\";\nimport React, { Component } from \"react\";\nimport {\n Dropdown,\n DropdownToggle,\n DropdownMenu,\n Row,\n Col,\n} from \"reactstrap\";\nimport SimpleBar from \"simplebar-react\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { isEmpty, map } from \"lodash\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport { getMarketerNotification } from \"store/marketernotification/actions\";\nimport { withTranslation } from \"react-i18next\";\nimport moment from 'moment';\n\nclass MarketerNotificationDropdown extends Component {\n constructor(props) {\n super(props);\n this.state = {\n \n menu: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { user_id } = this.state;\n const { onGetMarketerNotification } = this.props;\n const previousApiCallTime = localStorage.getItem(\"api_call_time\");\n\n onGetMarketerNotification(user_id, previousApiCallTime);\n\n const currentApiCallTime = new Date();\n localStorage.setItem(\"api_call_time\", currentApiCallTime.toISOString());\n }\n\n toggle() {\n this.setState((prevState) => ({\n menu: !prevState.menu,\n }));\n }\n\n render() {\n\n // const { SearchBar } = Search;\n\n const { marketerNotification } = this.props;\n console.log(\"My marketerNotification\", marketerNotification);\n\n const { onGetMarketerNotification } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: marketerNotification.length,\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\",\n order: \"asc\",\n },\n ];\n\n return (\n \n \n \n \n \n {!isEmpty(marketerNotification) &&\n marketerNotification.map((notification, key) => (\n \n {notification.notifications_count > 0 && (\n
    \n \n \n {notification.notifications_count}\n \n
    \n )}\n {notification.notifications_count === 0 && (\n
    \n \n \n
    \n )}\n \n ))}\n \n
    \n \n
    \n \n \n
    {this.props.t(\"Notifications\")}
    \n \n
    \n
    \n
    \n\n \n \n {!isEmpty(marketerNotification) &&\n marketerNotification.map((notifications, key) => (\n \n <>\n {notifications.notifications &&\n Array.isArray(notifications.notifications) &&\n notifications.notifications.map((item, innerKey) => (\n
    \n {item.account_type === \"labowner\" && ( \n
    \n {\" \"}\n {item.name} Has Requested for Advertisement {item.advertisement_id} At {moment(item.added_at).format(\"DD MMM YYYY, h:mm A\")}.\n
    \n )} \n {/* Add more conditions for other actions if needed */}\n
    \n ))}\n \n \n ))}\n \n
    \n
    \n \n
    \n );\n }\n}\n\nMarketerNotificationDropdown.propTypes = {\n match: PropTypes.object,\n marketerNotification: PropTypes.array,\n className: PropTypes.any,\n onGetMarketerNotification: PropTypes.func,\n history: PropTypes.any,\n success: PropTypes.any,\n error: PropTypes.any,\n t: PropTypes.any,\n};\n\nconst mapStateToProps = ({ marketerNotification }) => ({\n marketerNotification: marketerNotification.marketerNotification,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetMarketerNotification: (id, previousApiCallTime) =>\n dispatch(getMarketerNotification(id, previousApiCallTime)),\n});\n\nexport default withRouter(\n connect(\n mapStateToProps,\n mapDispatchToProps\n )(withTranslation()(MarketerNotificationDropdown))\n);\n","import {\n GET_ACTIVITY_LOG,\n GET_ACTIVITY_LOG_FAIL,\n GET_ACTIVITY_LOG_SUCCESS,\n GET_MARKETER_NOTIFICATION,\n GET_MARKETER_NOTIFICATION_FAIL,\n GET_MARKETER_NOTIFICATION_SUCCESS,\n} from \"./actionTypes\";\n\n// ----------- Pathologist list APIs actions -----------------\nexport const getActivityLog = id => ({\n type: GET_ACTIVITY_LOG,\n payload: id,\n});\n\nexport const getActivityLogSuccess = activitylog => ({\n type: GET_ACTIVITY_LOG_SUCCESS,\n payload: activitylog,\n});\n\nexport const getActivityLogFail = error => ({\n type: GET_ACTIVITY_LOG_FAIL,\n payload: error,\n});\n\nexport const getMarketerNotification = (id,previousApiCallTime) => ({\n type: GET_MARKETER_NOTIFICATION,\n payload: {id,previousApiCallTime},\n});\n\nexport const getMarketerNotificationSuccess = marketerNotification => ({\n type: GET_MARKETER_NOTIFICATION_SUCCESS,\n payload: marketerNotification,\n});\n\nexport const getMarketerNotificationFail = error => ({\n type: GET_MARKETER_NOTIFICATION_FAIL,\n payload: error,\n});\n\n\n","import PropTypes from \"prop-types\";\nimport React, { Component } from \"react\";\nimport {\n Dropdown,\n DropdownToggle,\n DropdownMenu,\n Row,\n Col,\n} from \"reactstrap\";\nimport SimpleBar from \"simplebar-react\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { isEmpty, map } from \"lodash\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport { getCsrAdminNotification } from \"store/csradminnotification/actions\";\nimport { withTranslation } from \"react-i18next\";\nimport moment from 'moment';\n\nclass CsrAdminNotificationDropdown extends Component {\n constructor(props) {\n super(props);\n this.state = {\n \n menu: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { user_id } = this.state;\n const { onGetCsrAdminNotification } = this.props;\n const previousApiCallTime = localStorage.getItem(\"api_call_time\");\n\n onGetCsrAdminNotification(user_id, previousApiCallTime);\n\n const currentApiCallTime = new Date();\n localStorage.setItem(\"api_call_time\", currentApiCallTime.toISOString());\n }\n\n toggle() {\n this.setState((prevState) => ({\n menu: !prevState.menu,\n }));\n }\n\n render() {\n\n // const { SearchBar } = Search;\n\n const { csrAdminNotification } = this.props;\n console.log(\"My csrAdminNotification\", csrAdminNotification);\n\n const { onGetCsrAdminNotification } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: csrAdminNotification.length,\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\",\n order: \"asc\",\n },\n ];\n\n return (\n \n \n \n \n \n {!isEmpty(csrAdminNotification) &&\n csrAdminNotification.map((notification, key) => (\n \n {notification.notifications_count > 0 && (\n
    \n \n \n {notification.notifications_count}\n \n
    \n )}\n {notification.notifications_count === 0 && (\n
    \n \n \n
    \n )}\n \n ))}\n \n
    \n \n
    \n \n \n
    {this.props.t(\"Notifications\")}
    \n \n
    \n
    \n
    \n\n \n \n {!isEmpty(csrAdminNotification) &&\n csrAdminNotification.map((notifications, key) => (\n \n <>\n {notifications.notifications &&\n Array.isArray(notifications.notifications) &&\n notifications.notifications.map((item, innerKey) => (\n
    \n {item.complainee === \"Lab\" && item.status==\"Pending\" && ( \n
    \n {\" \"}\n You have a Pending Complaint {item.complaint_id} from {item.complainant} Against the Lab {item.lab_name} At {moment(item.registered_at).format(\"DD MMM YYYY, h:mm A\")}.\n
    \n )} \n {item.complainee === \"LabHazir\" && item.status==\"Pending\" && ( \n
    \n {\" \"}\n You have a Pending Complaint {item.complaint_id} from {item.complainant} Against the LabHazir {item.labhazir_complainee} department At {moment(item.registered_at).format(\"DD MMM YYYY, h:mm A\")}.\n
    \n )} \n {/* Add more conditions for other actions if needed */}\n
    \n ))}\n \n \n ))}\n \n
    \n
    \n \n
    \n );\n }\n}\n\nCsrAdminNotificationDropdown.propTypes = {\n match: PropTypes.object,\n csrAdminNotification: PropTypes.array,\n className: PropTypes.any,\n onGetCsrAdminNotification: PropTypes.func,\n history: PropTypes.any,\n success: PropTypes.any,\n error: PropTypes.any,\n t: PropTypes.any,\n};\n\nconst mapStateToProps = ({ csrAdminNotification }) => ({\n csrAdminNotification: csrAdminNotification.csrAdminNotification,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetCsrAdminNotification: (id, previousApiCallTime) =>\n dispatch(getCsrAdminNotification(id, previousApiCallTime)),\n});\n\nexport default withRouter(\n connect(\n mapStateToProps,\n mapDispatchToProps\n )(withTranslation()(CsrAdminNotificationDropdown))\n);\n","import {\n GET_ACTIVITY_LOG,\n GET_ACTIVITY_LOG_FAIL,\n GET_ACTIVITY_LOG_SUCCESS,\n GET_CSR_ADMIN_NOTIFICATION,\n GET_CSR_ADMIN_NOTIFICATION_FAIL,\n GET_CSR_ADMIN_NOTIFICATION_SUCCESS,\n} from \"./actionTypes\";\n\n// ----------- Pathologist list APIs actions -----------------\nexport const getActivityLog = id => ({\n type: GET_ACTIVITY_LOG,\n payload: id,\n});\n\nexport const getActivityLogSuccess = activitylog => ({\n type: GET_ACTIVITY_LOG_SUCCESS,\n payload: activitylog,\n});\n\nexport const getActivityLogFail = error => ({\n type: GET_ACTIVITY_LOG_FAIL,\n payload: error,\n});\n\nexport const getCsrAdminNotification = (id,previousApiCallTime) => ({\n type: GET_CSR_ADMIN_NOTIFICATION,\n payload: {id,previousApiCallTime},\n});\n\nexport const getCsrAdminNotificationSuccess = csrAdminNotification => ({\n type: GET_CSR_ADMIN_NOTIFICATION_SUCCESS,\n payload: csrAdminNotification,\n});\n\nexport const getCsrAdminNotificationFail = error => ({\n type: GET_CSR_ADMIN_NOTIFICATION_FAIL,\n payload: error,\n});\n\n\n","import PropTypes from \"prop-types\";\nimport React, { Component } from \"react\";\nimport {\n Dropdown,\n DropdownToggle,\n DropdownMenu,\n Row,\n Col,\n} from \"reactstrap\";\nimport SimpleBar from \"simplebar-react\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { isEmpty, map } from \"lodash\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport { getCsrOfficerNotification } from \"store/csrofficernotification/actions\";\nimport { withTranslation } from \"react-i18next\";\nimport moment from 'moment';\n\nclass CsrOfficerNotificationDropdown extends Component {\n constructor(props) {\n super(props);\n this.state = {\n \n menu: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { user_id } = this.state;\n const { onGetCsrOfficerNotification } = this.props;\n const previousApiCallTime = localStorage.getItem(\"api_call_time\");\n\n onGetCsrOfficerNotification(user_id, previousApiCallTime);\n\n const currentApiCallTime = new Date();\n localStorage.setItem(\"api_call_time\", currentApiCallTime.toISOString());\n }\n\n toggle() {\n this.setState((prevState) => ({\n menu: !prevState.menu,\n }));\n }\n\n render() {\n\n // const { SearchBar } = Search;\n\n const { csrOfficerNotification } = this.props;\n console.log(\"My csrOfficerNotification\", csrOfficerNotification);\n\n const { onGetCsrOfficerNotification } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: csrOfficerNotification.length,\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\",\n order: \"asc\",\n },\n ];\n\n return (\n \n \n \n \n \n {!isEmpty(csrOfficerNotification) &&\n csrOfficerNotification.map((notification, key) => (\n \n {notification.notifications_count > 0 && (\n
    \n \n \n {notification.notifications_count}\n \n
    \n )}\n {notification.notifications_count === 0 && (\n
    \n \n \n
    \n )}\n \n ))}\n \n
    \n \n
    \n \n \n
    {this.props.t(\"Notifications\")}
    \n \n
    \n
    \n
    \n\n \n \n {!isEmpty(csrOfficerNotification) &&\n csrOfficerNotification.map((notifications, key) => (\n \n <>\n {notifications.notifications &&\n Array.isArray(notifications.notifications) &&\n notifications.notifications.map((item, innerKey) => (\n
    \n
    \n {\" \"}\n Complaint {item.complaint_id} from {item.complainant} Against the {item.complainee} has been assigned to you by the CSR Admin At {moment(item.assigned_at).format(\"DD MMM YYYY, h:mm A\")}.\n
    \n \n {/* Add more conditions for other actions if needed */}\n
    \n ))}\n \n \n ))}\n \n
    \n
    \n \n
    \n );\n }\n}\n\nCsrOfficerNotificationDropdown.propTypes = {\n match: PropTypes.object,\n csrOfficerNotification: PropTypes.array,\n className: PropTypes.any,\n onGetCsrOfficerNotification: PropTypes.func,\n history: PropTypes.any,\n success: PropTypes.any,\n error: PropTypes.any,\n t: PropTypes.any,\n};\n\nconst mapStateToProps = ({ csrOfficerNotification }) => ({\n csrOfficerNotification: csrOfficerNotification.csrOfficerNotification,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetCsrOfficerNotification: (id, previousApiCallTime) =>\n dispatch(getCsrOfficerNotification(id, previousApiCallTime)),\n});\n\nexport default withRouter(\n connect(\n mapStateToProps,\n mapDispatchToProps\n )(withTranslation()(CsrOfficerNotificationDropdown))\n);\n","import {\n GET_ACTIVITY_LOG,\n GET_ACTIVITY_LOG_FAIL,\n GET_ACTIVITY_LOG_SUCCESS,\n GET_CSR_OFFICER_NOTIFICATION,\n GET_CSR_OFFICER_NOTIFICATION_FAIL,\n GET_CSR_OFFICER_NOTIFICATION_SUCCESS,\n} from \"./actionTypes\";\n\n// ----------- Pathologist list APIs actions -----------------\nexport const getActivityLog = id => ({\n type: GET_ACTIVITY_LOG,\n payload: id,\n});\n\nexport const getActivityLogSuccess = activitylog => ({\n type: GET_ACTIVITY_LOG_SUCCESS,\n payload: activitylog,\n});\n\nexport const getActivityLogFail = error => ({\n type: GET_ACTIVITY_LOG_FAIL,\n payload: error,\n});\n\nexport const getCsrOfficerNotification = (id,previousApiCallTime) => ({\n type: GET_CSR_OFFICER_NOTIFICATION,\n payload: {id,previousApiCallTime},\n});\n\nexport const getCsrOfficerNotificationSuccess = csrOfficerNotification => ({\n type: GET_CSR_OFFICER_NOTIFICATION_SUCCESS,\n payload: csrOfficerNotification,\n});\n\nexport const getCsrOfficerNotificationFail = error => ({\n type: GET_CSR_OFFICER_NOTIFICATION_FAIL,\n payload: error,\n});\n\n\n","import PropTypes from \"prop-types\";\nimport React, { Component } from \"react\";\nimport {\n Dropdown,\n DropdownToggle,\n DropdownMenu,\n Row,\n Col,\n} from \"reactstrap\";\nimport SimpleBar from \"simplebar-react\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { isEmpty, map } from \"lodash\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport { getRegAdminNotification } from \"store/regadminnotification/actions\";\nimport { withTranslation } from \"react-i18next\";\nimport moment from 'moment';\n\nclass RegAdminNotificationDropdown extends Component {\n constructor(props) {\n super(props);\n this.state = {\n \n menu: false,\n user_id: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).user_id\n : \"\",\n };\n this.toggle = this.toggle.bind(this);\n }\n\n componentDidMount() {\n const { user_id } = this.state;\n const { onGetRegAdminNotification } = this.props;\n const previousApiCallTime = localStorage.getItem(\"api_call_time\");\n\n onGetRegAdminNotification(user_id, previousApiCallTime);\n\n const currentApiCallTime = new Date();\n localStorage.setItem(\"api_call_time\", currentApiCallTime.toISOString());\n }\n\n toggle() {\n this.setState((prevState) => ({\n menu: !prevState.menu,\n }));\n }\n\n render() {\n\n // const { SearchBar } = Search;\n\n const { regAdminNotification } = this.props;\n console.log(\"My regAdminNotification\", regAdminNotification);\n\n const { onGetRegAdminNotification } = this.props;\n\n const pageOptions = {\n sizePerPage: 10,\n totalSize: regAdminNotification.length,\n custom: true,\n };\n\n const defaultSorted = [\n {\n dataField: \"id\",\n order: \"asc\",\n },\n ];\n\n return (\n \n \n \n \n \n {!isEmpty(regAdminNotification) &&\n regAdminNotification.map((notification, key) => (\n \n {notification.notifications_count > 0 && (\n
    \n \n \n {notification.notifications_count}\n \n
    \n )}\n {notification.notifications_count === 0 && (\n
    \n \n \n
    \n )}\n \n ))}\n \n
    \n \n
    \n \n \n
    {this.props.t(\"Notifications\")}
    \n \n
    \n
    \n
    \n\n \n \n {!isEmpty(regAdminNotification) &&\n regAdminNotification.map((notifications, key) => (\n \n <>\n {notifications.notifications &&\n Array.isArray(notifications.notifications) &&\n notifications.notifications.map((item, innerKey) => (\n
    \n \n
    \n {\" \"}\n You Have New Pending Lab {item.id} name {item.name} From {item.city} Registered At {moment(item.registered_at).format(\"DD MMM YYYY, h:mm A\")}.\n
    \n {/* Add more conditions for other actions if needed */}\n
    \n ))}\n \n <>\n {notifications.notifications_offered_tests &&\n Array.isArray(notifications.notifications_offered_tests) &&\n notifications.notifications_offered_tests.map((item, innerKey) => (\n
    \n \n
    \n {\" \"}\n You Have New Pending Test Id {item.id}\n {/* from {item.complainant} Against the LabHazir {item.labhazir_complainee} department At {moment(item.registered_at).format(\"DD MMM YYYY, h:mm A\")}. */}\n
    \n {/* Add more conditions for other actions if needed */}\n
    \n ))}\n \n <>\n {notifications.notifications_donor &&\n Array.isArray(notifications.notifications_donor) &&\n notifications.notifications_donor.map((item, innerKey) => (\n
    \n \n
    \n {\" \"}\n You Have New Pending Donor {item.id} name {item.name} From {item.city} Registered At {moment(item.registered_at).format(\"DD MMM YYYY, h:mm A\")}.\n {/* from {item.complainant} Against the LabHazir {item.labhazir_complainee} department At {moment(item.registered_at).format(\"DD MMM YYYY, h:mm A\")}. */}\n
    \n {/* Add more conditions for other actions if needed */}\n
    \n ))}\n \n <>\n {notifications.notifications_b2b &&\n Array.isArray(notifications.notifications_b2b) &&\n notifications.notifications_b2b.map((item, innerKey) => (\n
    \n \n
    \n {\" \"}\n You Have New Pending B2b Client {item.id} Name {item.name} From {item.city} Registered At {moment(item.registered_at).format(\"DD MMM YYYY, h:mm A\")}.\n {/* from {item.complainant} Against the LabHazir {item.labhazir_complainee} department At {moment(item.registered_at).format(\"DD MMM YYYY, h:mm A\")}. */}\n
    \n {/* Add more conditions for other actions if needed */}\n
    \n ))}\n \n \n ))}\n \n
    \n
    \n \n
    \n );\n }\n}\n\nRegAdminNotificationDropdown.propTypes = {\n match: PropTypes.object,\n regAdminNotification: PropTypes.array,\n className: PropTypes.any,\n onGetRegAdminNotification: PropTypes.func,\n history: PropTypes.any,\n success: PropTypes.any,\n error: PropTypes.any,\n t: PropTypes.any,\n};\n\nconst mapStateToProps = ({ regAdminNotification }) => ({\n regAdminNotification: regAdminNotification.regAdminNotification,\n});\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onGetRegAdminNotification: (id, previousApiCallTime) =>\n dispatch(getRegAdminNotification(id, previousApiCallTime)),\n});\n\nexport default withRouter(\n connect(\n mapStateToProps,\n mapDispatchToProps\n )(withTranslation()(RegAdminNotificationDropdown))\n);\n","import {\n GET_ACTIVITY_LOG,\n GET_ACTIVITY_LOG_FAIL,\n GET_ACTIVITY_LOG_SUCCESS,\n GET_REG_ADMIN_NOTIFICATION,\n GET_REG_ADMIN_NOTIFICATION_FAIL,\n GET_REG_ADMIN_NOTIFICATION_SUCCESS,\n} from \"./actionTypes\";\n\n// ----------- Pathologist list APIs actions -----------------\nexport const getActivityLog = id => ({\n type: GET_ACTIVITY_LOG,\n payload: id,\n});\n\nexport const getActivityLogSuccess = activitylog => ({\n type: GET_ACTIVITY_LOG_SUCCESS,\n payload: activitylog,\n});\n\nexport const getActivityLogFail = error => ({\n type: GET_ACTIVITY_LOG_FAIL,\n payload: error,\n});\n\nexport const getRegAdminNotification = (id,previousApiCallTime) => ({\n type: GET_REG_ADMIN_NOTIFICATION,\n payload: {id,previousApiCallTime},\n});\n\nexport const getRegAdminNotificationSuccess = regAdminNotification => ({\n type: GET_REG_ADMIN_NOTIFICATION_SUCCESS,\n payload: regAdminNotification,\n});\n\nexport const getRegAdminNotificationFail = error => ({\n type: GET_REG_ADMIN_NOTIFICATION_FAIL,\n payload: error,\n});\n\n\n","import PropTypes from \"prop-types\";\nimport React, { Component } from \"react\";\nimport \"react-drawer/lib/react-drawer.css\";\n\nimport { connect } from \"react-redux\";\nimport { Row, Col } from \"reactstrap\";\n\nimport { Link } from \"react-router-dom\";\nimport ProfileMenu from \"../CommonForBoth/TopbarDropdown/ProfileMenu\";\n\nimport logo from \"../../assets/images/logo.svg\";\nimport logoLightPng from \"../../assets/images/logo-light.png\";\nimport logoLightSvg from \"../../assets/images/logo-light.svg\";\nimport logoDark from \"../../assets/images/logo-dark.png\";\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\n\n// Redux Store\nimport { toggleRightSidebar } from \"../../store/actions\";\nimport NotificationDropdown from \"components/CommonForBoth/TopbarDropdown/NotificationDropdown\";\nimport SampleNotificationDropdown from \"components/CommonForBoth/TopbarDropdown/SampleNotificationDropdown\";\nimport MarketerNotificationDropdown from \"components/CommonForBoth/TopbarDropdown/MarketerNotificationDropdown\";\nimport CsrAdminNotificationDropdown from \"components/CommonForBoth/TopbarDropdown/CsrAdminNotificationDropdown\";\nimport CsrOfficerNotificationDropdown from \"components/CommonForBoth/TopbarDropdown/CsrOfficerNotificationDropdown\";\nimport RegAdminNotificationDropdown from \"components/CommonForBoth/TopbarDropdown/RegAdminNotificationDropdown\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\n\nclass Header extends Component {\n constructor(props) {\n super(props);\n this.state = {\n isSearch: false,\n open: false,\n account_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n position: \"right\",\n };\n this.toggleMenu = this.toggleMenu.bind(this);\n this.toggleFullscreen = this.toggleFullscreen.bind(this);\n }\n /**\n * Toggle sidebar\n */\n toggleMenu() {\n this.props.toggleMenuCallback();\n }\n\n /**\n * Toggles the sidebar\n */\n toggleRightbar() {\n this.props.toggleRightSidebar();\n }\n\n toggleFullscreen() {\n if (\n !document.fullscreenElement &&\n /* alternative standard method */ !document.mozFullScreenElement &&\n !document.webkitFullscreenElement\n ) {\n // current working methods\n if (document.documentElement.requestFullscreen) {\n document.documentElement.requestFullscreen();\n } else if (document.documentElement.mozRequestFullScreen) {\n document.documentElement.mozRequestFullScreen();\n } else if (document.documentElement.webkitRequestFullscreen) {\n document.documentElement.webkitRequestFullscreen(\n Element.ALLOW_KEYBOARD_INPUT\n );\n }\n } else {\n if (document.cancelFullScreen) {\n document.cancelFullScreen();\n } else if (document.mozCancelFullScreen) {\n document.mozCancelFullScreen();\n } else if (document.webkitCancelFullScreen) {\n document.webkitCancelFullScreen();\n }\n }\n }\n\n render() {\n return (\n \n
    \n
    \n
    \n \n \n \n \n \n
    \n
    \n
    \n \n \n \n \n \n
    \n {this.state.account_type && this.state.account_type == \"labowner\" && (\n \n \n \n )}\n {this.state.account_type && this.state.account_type == \"samplecollector\" && (\n \n \n \n )}\n {this.state.account_type && this.state.account_type == \"marketer-admin\" && (\n \n \n \n )}\n {this.state.account_type && this.state.account_type == \"csr-admin\" && (\n \n \n \n )}\n {this.state.account_type && this.state.account_type == \"CSR\" && (\n \n \n \n )}\n {this.state.account_type && this.state.account_type == \"registration-admin\" && (\n \n \n \n )}\n \n
    \n \n
    \n
    \n
    \n );\n }\n}\n\nHeader.propTypes = {\n t: PropTypes.any,\n toggleMenuCallback: PropTypes.any,\n showRightSidebar: PropTypes.any,\n toggleRightSidebar: PropTypes.func,\n};\n\nconst mapStatetoProps = state => {\n const { layoutType, showRightSidebar } = state.Layout;\n return { layoutType, showRightSidebar };\n};\n\nexport default connect(mapStatetoProps, { toggleRightSidebar })(\n withTranslation()(Header)\n);\n","import PropTypes from \"prop-types\";\nimport React, { Component } from \"react\";\n\n//Simple bar\nimport SimpleBar from \"simplebar-react\";\nimport 'simplebar-react/dist/simplebar.min.css';\n\n// MetisMenu\nimport MetisMenu from \"metismenujs\";\nimport { withRouter } from \"react-router-dom\";\nimport { Link } from \"react-router-dom\";\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\n\nclass SidebarContent extends Component {\n constructor(props) {\n super(props);\n this.state = {\n account_type: localStorage.getItem(\"authUser\")\n ? JSON.parse(localStorage.getItem(\"authUser\")).account_type\n : \"\",\n };\n this.refDiv = React.createRef();\n }\n\n componentDidMount() {\n this.initMenu();\n }\n\n // eslint-disable-next-line no-unused-vars\n componentDidUpdate(prevProps, prevState, ss) {\n if (this.props.type !== prevProps.type) {\n this.initMenu();\n }\n }\n\n initMenu() {\n new MetisMenu(\"#side-menu\");\n\n let matchingMenuItem = null;\n const ul = document.getElementById(\"side-menu\");\n const items = ul.getElementsByTagName(\"a\");\n for (let i = 0; i < items.length; ++i) {\n if (this.props.location.pathname === items[i].pathname) {\n matchingMenuItem = items[i];\n break;\n }\n }\n if (matchingMenuItem) {\n this.activateParentDropdown(matchingMenuItem);\n }\n }\n\n // componentDidUpdate() {}\n\n scrollElement = item => {\n setTimeout(() => {\n if (this.refDiv.current !== null) {\n if (item) {\n const currentPosition = item.offsetTop;\n if (currentPosition > window.innerHeight) {\n if (this.refDiv.current)\n this.refDiv.current.getScrollElement().scrollTop =\n currentPosition - 10;\n }\n }\n }\n }, 300);\n };\n\n activateParentDropdown = item => {\n item.classList.add(\"active\");\n const parent = item.parentElement;\n\n const parent2El = parent.childNodes[1];\n if (parent2El && parent2El.id !== \"side-menu\") {\n parent2El.classList.add(\"mm-show\");\n }\n\n if (parent) {\n parent.classList.add(\"mm-active\");\n const parent2 = parent.parentElement;\n\n if (parent2) {\n parent2.classList.add(\"mm-show\"); // ul tag\n\n const parent3 = parent2.parentElement; // li tag\n\n if (parent3) {\n parent3.classList.add(\"mm-active\"); // li\n parent3.childNodes[0].classList.add(\"mm-active\"); //a\n const parent4 = parent3.parentElement; // ul\n if (parent4) {\n parent4.classList.add(\"mm-show\"); // ul\n const parent5 = parent4.parentElement;\n if (parent5) {\n parent5.classList.add(\"mm-show\"); // li\n parent5.childNodes[0].classList.add(\"mm-active\"); // a tag\n }\n }\n }\n }\n this.scrollElement(item);\n return false;\n }\n this.scrollElement(item);\n return false;\n };\n\n render() {\n return (\n \n {/* B2B Client */}\n {this.state.account_type && this.state.account_type == \"b2bclient\" && (\n \n
    \n
      \n
    • \n \n \n {this.props.t(\"Dashboard\")}\n \n
    • \n {/*
    • \n \n \n {this.props.t(\"Statement\")}\n \n
    • */}\n
    • {this.props.t(\"B2B\")}
    • \n {/* B2b referred Patient List */}\n
    • \n \n \n {this.props.t(\"Referred Patients\")}\n \n
    • \n {/* B2B Shares List */}\n {/*
    • \n \n \n {this.props.t(\"B2B Shares\")}\n \n
    • */}\n
    • \n \n \n {this.props.t(\"Labs List\")}\n \n
    • \n {/*
    • \n \n \n {this.props.t(\"Payment Method\")}\n \n
    • */}\n
    \n
    \n
    \n )}\n {this.state.account_type && this.state.account_type == \"donor\" && (\n \n
    \n
      \n
    • \n \n \n {this.props.t(\"Dashboard\")}\n \n
    • \n
    • \n \n \n {this.props.t(\"Statement\")}\n \n
    • \n\n
    • {this.props.t(\"DONOR\")}
    • \n\n {/* Donor Appointments List */}\n
    • \n \n \n {this.props.t(\"Appointments Traceability\")}\n \n
    • \n {/* Donor payment Method */}\n {/*
    • \n \n \n {this.props.t(\"Payment Method\")}\n \n
    • */}\n
    \n
    \n
    \n )}\n {this.state.account_type && this.state.account_type == \"b2b-admin\" && (\n \n
    \n
      \n
    • {this.props.t(\"B2B ADMIN\")}
    • \n {/* B2b referred Patient List */}\n
    • \n \n \n {this.props.t(\"B2B Clients\")}\n \n
    • \n
    \n
    \n
    \n )}\n\n {/* Auditor */}\n {this.state.account_type && this.state.account_type == \"auditor\" && (\n \n
    \n
      \n
    • \n \n \n {this.props.t(\"Dashboard\")}\n \n
    • \n
    • {this.props.t(\"Auditor\")}
    • \n {/* Sample Collector In process test List */}\n
    • \n \n \n {this.props.t(\"Assigned Audits\")}\n \n
    • \n
    • \n \n \n {this.props.t(\"Completed Audits\")}\n \n
    • \n
    \n
    \n
    \n )}\n {/* Finance officer */}\n {this.state.account_type &&\n this.state.account_type == \"finance-officer\" && (\n \n
    \n
      \n
    • \n \n \n {this.props.t(\"Dashboard\")}\n \n
    • \n\n
    • \n {this.props.t(\"Finance Officer\")}\n
    • \n
    • \n \n \n {this.props.t(\"Payments Form\")}\n \n
        \n
      • \n {this.props.t(\"MIF\")}\n
      • \n
      • \n {this.props.t(\"MOF\")}\n
      • \n
      • \n {this.props.t(\"Bank Transfer Details\")}\n \n
      • \n
      • \n {this.props.t(\"Invoice Adjustment Form\")}\n
      • \n
      \n
    • \n {/* Payments Status Links */}\n
    • \n \n \n {this.props.t(\"MIF Statuses\")}\n \n
        \n
      • \n \n {this.props.t(\"MIF Statuses\")}\n \n
      • \n {/*
      • \n \n {this.props.t(\"MIF Pending Clearence\")}\n \n
      • \n
      • \n \n {this.props.t(\"MIF Cleared\")}\n \n
      • \n
      • \n \n {this.props.t(\"MIF Bounced\")}\n \n
      • */}\n
      \n
    • \n\n
    • \n \n \n {this.props.t(\"MOF Statuses\")}\n \n
        \n
      • \n \n {this.props.t(\"MOF Statuses\")}\n \n
      • \n {/*
      • \n \n {this.props.t(\"MOF Pending Clearence\")}\n \n
      • \n
      • \n \n {this.props.t(\"MOF Cleared\")}\n \n
      • \n
      • \n \n {this.props.t(\"MOF Bounced\")}\n \n
      • */}\n
      \n
    • \n
    • \n \n \n {this.props.t(\"BTD Statuses\")}\n \n
        \n
      • {this.props.t(\"Bank Transfer Details List\")}\n
      • \n
      \n
    • \n
    • \n \n \n {this.props.t(\"Donation Payment\")}\n \n
        \n
      • \n \n {this.props.t(\"Labs Payable List\")}\n \n
      • \n
      \n
    • \n\n
    \n
    \n
    \n )}\n {/* Finance Admin */}\n {this.state.account_type && this.state.account_type == \"finance-admin\" && (\n \n
    \n
      \n
    • \n \n \n {this.props.t(\"Dashboard\")}\n \n
    • \n\n
    • {this.props.t(\"Finance Admin\")}
    • \n {/* payments Approval Routes */}\n {/*
    • \n \n \n {this.props.t(\"In Payments\")}\n \n
        \n \n {/*
      • \n \n {this.props.t(\"Approved\")}\n \n
      • \n
      • \n \n {this.props.t(\"Unapproved\")}\n \n
      • */}\n {/*
      \n
    • */}\n
    • \n \n \n {this.props.t(\"MIF/ MOF\")}\n \n
    • \n
    • \n \n \n {this.props.t(\"Corporate Payment Confirmation\")}\n \n
    • \n
    • \n \n \n {this.props.t(\"Bank\")}\n \n
    • \n
    • \n \n \n {this.props.t(\"Banks List\")}\n \n
    • \n
    • \n \n \n {this.props.t(\"Account\")}\n \n
    • \n
    • \n \n \n {this.props.t(\"Bank Accounts List\")}\n \n
    • \n\n\n
    • \n \n \n {this.props.t(\"Bank Statements\")}\n \n
    • \n
    • \n \n \n {this.props.t(\"Lab Corporate Statement\")}\n \n
    • \n
    • \n \n \n {this.props.t(\"Labs List\")}\n \n
    • \n \n
    • \n \n \n {this.props.t(\"Corporate List\")}\n \n
    • \n {/*
    • \n \n \n {this.props.t(\"Corporate statuses List\")}\n \n
    • */}\n
    • \n \n \n {this.props.t(\"Donors List\")}\n \n
    • \n
    • \n \n \n {this.props.t(\"Donors Appointments List\")}\n \n
    • \n
    • \n \n \n {this.props.t(\"B2B Clients List\")}\n \n
    • \n
    • \n \n \n {this.props.t(\"Advertisement List\")}\n \n
    • \n\n
    \n
    \n
    \n )}\n {/* CSR */}\n {this.state.account_type && this.state.account_type == \"CSR\" && (\n \n
    \n
      \n
    • \n \n \n {this.props.t(\"Dashboard\")}\n \n
    • \n {/*
    • \n \n \n {this.props.t(\"Online Booking\")}\n \n
    • */}\n\n
    • {this.props.t(\"CSR\")}
    • \n {/* Unhandled Complaints */}\n
    • \n \n \n {this.props.t(\"Open Complaints\")}\n \n
    • \n\n {/* Handled Complaints */}\n
    • \n \n \n {this.props.t(\"Closed Complaints\")}\n \n
    • \n
    • \n \n \n {this.props.t(\"All Appointments\")}\n \n
    • \n
    \n
    \n
    \n )}\n\n {/* Sample Collector */}\n {this.state.account_type &&\n this.state.account_type == \"samplecollector\" && (\n \n
    \n
      \n
    • \n \n \n {this.props.t(\"Dashboard\")}\n \n
    • \n\n
    • \n {this.props.t(\"Sample Collector\")}\n
    • \n {/* Sample Collector In process test List */}\n
    • \n \n \n {this.props.t(\"Assigned Collections\")}\n \n
    • \n
    • \n \n \n {this.props.t(\"Completed Collections\")}\n \n
    • \n
    \n
    \n
    \n )}\n\n {/* Registration Admin */}\n {this.state.account_type &&\n this.state.account_type == \"registration-admin\" && (\n \n
    \n
      \n\n
    • \n {this.props.t(\"Registration Admin\")}\n
    • \n\n {/* Labs Approval Routes */}\n
    • \n \n \n {this.props.t(\"Labs\")}\n \n
        \n
      • \n \n {this.props.t(\"Pending\")}\n \n
      • \n
      • \n \n {this.props.t(\"Approved/ Active\")}\n \n
      • \n
      • \n \n {this.props.t(\"Unapproved/ Inactive\")}\n \n
      • \n
      \n
    • \n \n
    • \n \n \n {this.props.t(\"Offered Tests\")}\n \n
        \n
      • \n \n {this.props.t(\"Lab Pending Referrel Fee\")}\n \n
      • \n
      • \n \n {this.props.t(\"Lab Approved Referrel Fee\")}\n \n
      • \n
      • \n \n {this.props.t(\"Live Test\")}\n \n
      • \n
      \n
    • \n {/* Corporate Approval Routes */}\n
    • \n \n \n {this.props.t(\"Corporate\")}\n \n
        \n
      • \n \n {this.props.t(\"Pending\")}\n \n
      • \n
      • \n \n {this.props.t(\"Approved/ Active\")}\n \n
      • \n
      • \n \n {this.props.t(\"Unapproved/ Inactive\")}\n \n
      • \n
      \n
    • \n {/* B2b Clients Approval Routes */}\n
    • \n \n \n {this.props.t(\"B2B Clients\")}\n \n
        \n
      • \n \n {this.props.t(\"Pending\")}\n \n
      • \n
      • \n \n {this.props.t(\"Approved\")}\n \n
      • \n
      • \n \n {this.props.t(\"Unapproved\")}\n \n
      • \n
      \n
    • \n\n {/* Donor Approval Routes */}\n
    • \n \n \n {this.props.t(\"Donors\")}\n \n
        \n
      • \n \n {this.props.t(\"Pending\")}\n \n
      • \n
      • \n \n {this.props.t(\"Approved\")}\n \n
      • \n
      • \n \n {this.props.t(\"Unapproved\")}\n \n
      • \n
      \n
    • \n
    • \n \n \n {this.props.t(\"Labs Rating\")} \n \n
    • \n\n {/* B2b Clients Approval Routes */}\n
    • \n \n \n {this.props.t(\"Corporates\")}\n \n
        \n
      • \n \n {this.props.t(\"Corporates PlateForm Charges\")}\n \n
      • \n
      • \n \n {this.props.t(\"Corporates Reffrel Fee\")}\n \n
      • \n
      \n
    • \n
    • \n \n \n {this.props.t(\"Review Performance\")} \n \n
    • \n\n
    \n
    \n
    \n )}\n {/* Marketer Admin */}\n {this.state.account_type &&\n this.state.account_type == \"marketer-admin\" && (\n \n
    \n
      \n
    • \n {this.props.t(\"Marketer Admin\")}\n
    • \n
    • \n \n \n {this.props.t(\"Dashboard\")}\n \n
    • \n {/* Advertisement*/}\n
    • \n \n \n {this.props.t(\"Advertisements\")}\n \n
        \n
      • \n \n {this.props.t(\"Advertisements Labhazir\")}\n \n
      • \n
      • \n \n {this.props.t(\"Lab Requests\")}\n \n
          \n
        • \n \n {this.props.t(\"Pending Requests\")}\n \n
        • \n
        • \n \n {this.props.t(\"Accepted Requests\")}\n \n
        • \n {/*
        • \n \n {this.props.t(\"Completed\")}\n \n
        • */}\n
        \n
      • \n
      \n
    • \n {/* Discounts*/}\n
    • \n \n \n {this.props.t(\"LabHazir Discounts\")}\n \n
        \n
      • \n \n {this.props.t(\"For Test\")}\n \n
      • \n\n
      • \n \n {this.props.t(\"For Lab\")}\n \n
      • \n
      \n
    • \n
    \n
    \n
    \n )}\n\n {/* CSR Admin */}\n {this.state.account_type && this.state.account_type == \"csr-admin\" && (\n \n
    \n
      \n
    • {this.props.t(\"CSR Admin\")}
    • \n {/* Complaints Routes */}\n
    • \n \n \n {this.props.t(\"Complaints\")}\n \n\n
        \n
      • \n \n {this.props.t(\"Pending Complaints\")}\n \n {/*
          \n
        • \n \n {this.props.t(\"Lab\")}\n \n
        • \n {/*
        • \n \n {this.props.t(\"LabHazir\")}\n \n
        • \n
        */}\n
      • \n
      • \n \n {this.props.t(\"Open Complaints\")}\n \n {/*
          \n
        • \n \n {this.props.t(\"Lab\")}\n \n
        • \n
        • \n \n {this.props.t(\"LabHazir\")}\n \n
        • \n
        */}\n
      • \n {/*
      • \n \n {this.props.t(\"In Process\")}\n \n
      • */}\n {/*
      • \n \n {this.props.t(\"Resolved\")}\n \n
      • */}\n
      • \n \n {this.props.t(\"Closed Complaints\")}\n \n {/*
          \n
        • \n \n {this.props.t(\"Lab\")}\n \n
        • \n
        • \n \n {this.props.t(\"LabHazir\")}\n \n
        • \n
        */}\n
      • \n
      \n
    • \n
    • \n \n \n {this.props.t(\"CSR\")}\n \n
    • \n
    • \n \n \n {this.props.t(\"Appointment Cancellation\")}\n \n
    • \n
    \n
    \n
    \n )}\n\n {/* Auditor Admin */}\n {this.state.account_type && this.state.account_type == \"auditor-admin\" && (\n \n
    \n
      \n
    • {this.props.t(\"Auditor Admin\")}
    • \n {/* Auditor Routes */}\n
    • \n \n \n {this.props.t(\"Audits\")}\n \n
        \n {/*
      • \n \n {this.props.t(\"Pending\")}\n \n
      • \n
      • \n \n {this.props.t(\"In Process\")}\n \n
      • \n
      • \n \n {this.props.t(\"Completed\")}\n */}\n {/*
          \n
        • \n \n {this.props.t(\"Pass\")}\n \n
        • \n
        • \n \n {this.props.t(\"Fail\")}\n \n
        • \n
        */}\n {/*
      • */}\n
      • \n \n {this.props.t(\"Lab List\")}\n \n
      • \n
      \n
    • \n
    • \n \n \n {this.props.t(\"Auditors\")}\n \n
    • \n
    \n
    \n
    \n )}\n\n {/* HR Admin */}\n {this.state.account_type && this.state.account_type == \"hr-admin\" && (\n \n
    \n
      \n
    • {this.props.t(\"HR Admin\")}
    • \n {/* HR Routes */}\n
    • \n \n \n {this.props.t(\"Staff\")}\n \n
    • \n\n
    • \n \n \n {this.props.t(\"CSR\")}\n \n
    • \n\n
    • \n \n \n {this.props.t(\"Auditor\")}\n \n
    • \n\n
    • \n \n \n {this.props.t(\"Finance Officer\")}\n \n
    • \n\n
    • \n \n \n {this.props.t(\"Marketers List\")}\n \n
    • \n
    \n
    \n
    \n )}\n\n {/* Lab */}\n {this.state.account_type && this.state.account_type == \"labowner\" && (\n \n
    \n
      \n
    • \n \n \n {this.props.t(\"Dashboard\")}\n \n
    • \n\n {/* Lab Settings */}\n
    • \n \n \n {this.props.t(\"Settings\")}\n \n
    • \n\n {/* Account Statements */}\n
    • \n \n \n {this.props.t(\"Account Statements\")}\n \n
    • \n\n {/* Test Appointment Links */}\n
    • \n \n \n {this.props.t(\"Test Appointments\")}\n \n
        \n
      • \n \n {this.props.t(\"Pending\")}\n \n
      • \n
      • \n \n {this.props.t(\"In Process\")}\n \n
      • \n
      • \n \n {this.props.t(\"Completed/ Cancelled\")}\n \n
      • \n
      \n
    • \n\n
    • {this.props.t(\"Lab\")}
    • \n\n\n {/* Corporate List Links */}\n {/* Test Appointment Links */}\n
    • \n \n \n {this.props.t(\"Corporates\")}\n \n
        \n
      • \n \n {this.props.t(\"Corporates List-Pending\")}\n \n
      • \n {/*
      • \n \n {this.props.t(\"Corporates List-Accepted\")}\n \n
      • */}\n
      • \n \n {this.props.t(\"Statements\")}\n \n
      • \n
      • \n \n {/* */}\n {this.props.t(\"Corporate Payment Confirmation\")}\n \n
      • \n
      \n
    • \n {/*
    • \n \n \n {this.props.t(\"Corporates List\")}\n \n
    • */}\n\n {/* Offered Test Links */}\n
    • \n \n \n {this.props.t(\"Offered Tests\")}\n \n
    • \n {/* Offered Test Links */}\n
    • \n \n \n {this.props.t(\"Medical Tests\")}\n \n
    • \n {/* Pathologist Links */}\n
    • \n \n \n {this.props.t(\"Pathologists\")}\n \n
    • \n\n {/* Quality Certificates Links */}\n
    • \n \n \n {this.props.t(\"Quality Credentials\")}\n \n
    • \n\n {/* Home Sample Collector Links */}\n
    • \n \n \n {this.props.t(\"Home Sample Collectors\")}\n \n
    • \n\n {/* tokens Links */}\n
    • \n \n \n {this.props.t(\"Tokens Detail\")}\n \n
    • \n\n\n {/* Feedbacks Links */}\n
    • \n \n \n {this.props.t(\"Feedbacks\")}\n \n
    • \n {/* lab Discounts*/}\n
    • \n \n \n {this.props.t(\"Discount\")}\n \n
    • \n {/* lab Advertisements*/}\n
    • \n \n \n {this.props.t(\"Advertisements\")}\n \n
    • \n
    \n
    \n
    \n )}\n {/* Corporate */}\n {this.state.account_type && this.state.account_type == \"corporate\" && (\n \n
    \n
      \n
    • \n \n \n {this.props.t(\"Dashboard\")}\n \n
    • \n
    • \n \n \n {this.props.t(\"Update Profile\")}\n \n
    • \n
    • {this.props.t(\"Corporate\")}
    • \n\n
    • \n \n \n {this.props.t(\"Appointments\")}\n \n
    • \n\n
    • \n \n \n {this.props.t(\"Labs List\")}\n \n
    • \n\n
    • \n \n \n {this.props.t(\"Add Employee Data\")}\n \n
    • \n
    • \n \n \n {this.props.t(\"Employees List\")}\n \n
    • \n
    • \n \n \n {this.props.t(\"Medical Tests\")}\n \n
    • \n
    • \n \n \n {this.props.t(\"Offered Tests\")}\n \n
    • \n
    • \n \n \n {this.props.t(\"Payment Form\")}\n \n
    • \n
    • \n \n \n {this.props.t(\"Statements\")}\n \n
    • \n\n
    \n
    \n
    \n )}\n
    \n );\n }\n}\n\nSidebarContent.propTypes = {\n match: PropTypes.object,\n location: PropTypes.object,\n history: PropTypes.any,\n t: PropTypes.any,\n type: PropTypes.string,\n};\n\nexport default withRouter(withTranslation()(SidebarContent));\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport { withRouter } from \"react-router-dom\";\nimport {} from \"../../store/actions\";\n\nimport { Link } from \"react-router-dom\";\n\n//i18n\nimport { withTranslation } from \"react-i18next\";\nimport SidebarContent from \"./SidebarContent\";\n\nimport logo from \"../../assets/images/logo.svg\";\nimport logoLightPng from \"../../assets/images/logo-light.png\";\nimport logoLightSvg from \"../../assets/images/logo-light.svg\";\nimport logoDark from \"../../assets/images/logo-dark.png\";\n\nclass Sidebar extends Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n render() {\n return (\n \n
    \n
    \n \n \n \"\"\n \n \n \"\"\n \n \n\n \n \n \"\"\n \n \n \"\"\n \n \n
    \n\n
    \n {this.props.type !== \"condensed\" ? (\n \n ) : (\n \n )}\n
    \n
    \n
    \n
    \n );\n }\n}\n\nSidebar.propTypes = {\n type: PropTypes.string,\n};\n\nconst mapStateToProps = state => {\n return {\n layout: state.Layout,\n };\n};\nexport default connect(\n mapStateToProps,\n {}\n)(withRouter(withTranslation()(Sidebar)));\n","import React from \"react\";\nimport { Link } from \"react-router-dom\";\nimport { Container, Row, Col } from \"reactstrap\";\n\nconst Footer = () => {\n const isLargeScreen = window.innerWidth > 768;\n const isSmallScreen = window.innerWidth >= 576 && window.innerWidth <= 768;\n const isextraSmallScreen = window.innerWidth < 576;\n const largfixfooter = {\n position: \"fixed\",\n bottom: 0,\n width: \"100%\",\n backgroundColor: \"#f8f9fa\",\n fontSize: \"12px\",\n display: \"flex\",\n justifyContent: \"center\",\n };\n const islargfixfooter = {\n position: \"fixed\",\n bottom: 0,\n width: \"100%\",\n backgroundColor: \"#f8f9fa\",\n fontSize: \"6.5px\",\n display: \"flex\",\n justifyContent: \"center\",\n };\n\n console.log(\"isLargeScreen:\", isLargeScreen);\n console.log(\"isSmallScreen:\", isSmallScreen);\n\n return (\n
    \n \n {isLargeScreen && (\n \n {new Date().getFullYear()} © Lab Hazir (Private) Limited\n \n
    \n \n Disclaimer\n \n
    \n \n \n
    \n \n About Us\n \n
    \n \n \n
    \n \n Terms\n \n
    \n \n \n
    \n \n {\" \"}\n \n \n {\" \"}\n \n
    \n \n
    \n )}\n{isSmallScreen && (\n \n \n
    \n {new Date().getFullYear()} © Lab Hazir (Private) Limited\n
    \n \n \n
    \n \n Disclaimer\n \n
    \n \n \n
    \n \n About Us\n \n
    \n \n \n
    \n

    Terms

    \n\n
    \n \n \n
    \n \n \n \n \n \n \n
    \n \n
    \n)}\n{isextraSmallScreen && (\n \n \n
    \n {new Date().getFullYear()} © Lab Hazir (Private) Limited\n
    \n \n \n
    \n \n Disclaimer\n \n
    \n \n \n
    \n \n About Us\n \n
    \n \n \n
    \n

    Terms

    \n\n
    \n \n \n
    \n \n \n \n \n \n \n
    \n \n
    \n)}\n \n
    \n
    \n );\n};\n\nexport default Footer;\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport { withRouter } from \"react-router-dom\";\nimport {\n changeLayout,\n changeSidebarTheme,\n changeSidebarThemeImage,\n changeSidebarType,\n toggleRightSidebar,\n changeTopbarTheme,\n changeLayoutWidth,\n} from \"../../store/actions\";\n\n// Layout Related Components\nimport Header from \"./Header\";\nimport Sidebar from \"./Sidebar\";\nimport Footer from \"./Footer\";\nimport RightSidebar from \"../CommonForBoth/RightSidebar\";\n\nclass Layout extends Component {\n constructor(props) {\n super(props);\n this.state = {\n isMobile: /iPhone|iPad|iPod|Android/i.test(navigator.userAgent),\n width: 0,\n height: 0,\n };\n this.toggleMenuCallback = this.toggleMenuCallback.bind(this);\n this.hideRightbar = this.hideRightbar.bind(this);\n }\n\n capitalizeFirstLetter = string => {\n return string.charAt(1).toUpperCase() + string.slice(2);\n };\n\n componentDidMount() {\n // Removing attributes from the body\n const elem = document.getElementsByTagName(\"body\")[0];\n while (elem.attributes.length > 0) {\n elem.removeAttribute(elem.attributes[0].name);\n }\n\n document.body.addEventListener(\"click\", this.hideRightbar, true);\n\n if (this.props.isPreloader === true) {\n document.getElementById(\"preloader\").style.display = \"block\";\n document.getElementById(\"status\").style.display = \"block\";\n\n setTimeout(function () {\n document.getElementById(\"preloader\").style.display = \"none\";\n document.getElementById(\"status\").style.display = \"none\";\n }, 2500);\n } else {\n document.getElementById(\"preloader\").style.display = \"none\";\n document.getElementById(\"status\").style.display = \"none\";\n }\n\n // Scroll Top to 0\n window.scrollTo(0, 0);\n // let currentage = this.capitalizeFirstLetter(this.props.location.pathname)\n\n // document.title =\n // currentage + \" | Lab Hazir - Dashboard\"\n if (this.props.leftSideBarTheme) {\n this.props.changeSidebarTheme(this.props.leftSideBarTheme);\n }\n\n if (this.props.leftSideBarThemeImage) {\n this.props.changeSidebarThemeImage(this.props.leftSideBarThemeImage);\n }\n\n if (this.props.layoutWidth) {\n this.props.changeLayoutWidth(this.props.layoutWidth);\n }\n\n if (this.props.leftSideBarType) {\n this.props.changeSidebarType(this.props.leftSideBarType);\n }\n if (this.props.topbarTheme) {\n this.props.changeTopbarTheme(this.props.topbarTheme);\n }\n }\n\n toggleMenuCallback = () => {\n var body = document.body;\n if (window.screen.width <= 998) {\n body.classList.toggle(\"sidebar-enable\");\n } else {\n body.classList.toggle(\"vertical-collpsed\");\n body.classList.toggle(\"sidebar-enable\");\n }\n };\n\n // //hides right sidebar on body click\n hideRightbar = event => {\n var rightbar = document.getElementById(\"right-bar\");\n //if clicked in inside right bar, then do nothing\n if (rightbar && rightbar.contains(event.target)) {\n return;\n } else {\n if (document.body.classList.contains(\"right-bar-enabled\")) {\n this.props.toggleRightSidebar(false);\n }\n }\n };\n\n render() {\n return (\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n\n
    \n
    \n \n
    {this.props.children}
    \n
    \n
    \n {this.props.showRightSidebar ? : null}\n
    \n );\n }\n}\n\nLayout.propTypes = {\n changeLayoutWidth: PropTypes.func,\n changeSidebarTheme: PropTypes.func,\n changeSidebarThemeImage: PropTypes.func,\n changeSidebarType: PropTypes.func,\n changeTopbarTheme: PropTypes.func,\n children: PropTypes.any,\n isPreloader: PropTypes.bool,\n layoutWidth: PropTypes.any,\n leftSideBarTheme: PropTypes.any,\n leftSideBarThemeImage: PropTypes.any,\n leftSideBarType: PropTypes.any,\n location: PropTypes.object,\n showRightSidebar: PropTypes.any,\n toggleRightSidebar: PropTypes.any,\n topbarTheme: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n return {\n ...state.Layout,\n };\n};\nexport default connect(mapStateToProps, {\n changeLayout,\n changeSidebarTheme,\n changeSidebarThemeImage,\n changeSidebarType,\n toggleRightSidebar,\n changeTopbarTheme,\n changeLayoutWidth,\n})(withRouter(Layout));\n","import React, { Component } from \"react\"\nimport PropTypes from 'prop-types'\nimport { withRouter } from \"react-router-dom\"\n\nclass NonAuthLayout extends Component {\n constructor(props) {\n super(props)\n this.state = {}\n this.capitalizeFirstLetter.bind(this)\n }\n\n capitalizeFirstLetter = string => {\n return string.charAt(1).toUpperCase() + string.slice(2)\n }\n \n render() {\n return {this.props.children}\n }\n}\n\nNonAuthLayout.propTypes = {\n children: PropTypes.object,\n location: PropTypes.object\n}\n\nexport default withRouter(NonAuthLayout)\n","import axios from \"axios\";\nimport MockAdapter from \"axios-mock-adapter\";\nimport * as url from \"../url_helper\";\nimport {\n calenderDefaultCategories,\n cartData,\n chats,\n comments,\n contacts,\n cryptoOrders,\n customerData,\n events,\n groups,\n invoiceList,\n messages,\n orders,\n productsData,\n projects,\n recentProducts,\n shops,\n tasks,\n userProfile,\n inboxmails,\n starredmails,\n importantmails,\n draftmails,\n sentmails,\n trashmails,\n users as members,\n wallet,\n yearData,\n monthData,\n weekData,\n janTopSellingData,\n decTopSellingData,\n novTopSellingData,\n octTopSellingData,\n janEarningData,\n decEarningData,\n novEarningData,\n octEarningData,\n} from \"../../common/data\";\n\nlet users = [\n {\n uid: 1,\n username: \"admin\",\n role: \"admin\",\n password: \"123456\",\n email: \"admin@themesbrand.com\",\n },\n];\n\nconst fakeBackend = () => {\n // This sets the mock adapter on the default instance\n const mock = new MockAdapter(axios, { onNoMatch: \"passthrough\" });\n\n mock.onPost(\"/post-fake-register\").reply(config => {\n const user = JSON.parse(config[\"data\"]);\n users.push(user);\n\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n resolve([200, user]);\n });\n });\n });\n\n mock.onPost(\"/post-fake-login\").reply(config => {\n const user = JSON.parse(config[\"data\"]);\n const validUser = users.filter(\n usr => usr.email === user.email && usr.password === user.password\n );\n\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (validUser[\"length\"] === 1) {\n resolve([200, validUser[0]]);\n } else {\n reject([\n \"Username and password are invalid. Please enter correct username and password\",\n ]);\n }\n });\n });\n });\n\n mock.onPost(\"/fake-forget-pwd\").reply(config => {\n // User needs to check that user is eXist or not and send mail for Reset New password\n\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n resolve([200, \"Check you mail and reset your password.\"]);\n });\n });\n });\n\n mock.onPost(\"/post-jwt-register\").reply(config => {\n const user = JSON.parse(config[\"data\"]);\n users.push(user);\n\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n resolve([200, user]);\n });\n });\n });\n\n // mock.onPost(\"/post-jwt-login\").reply(config => {\n // const user = JSON.parse(config[\"data\"]);\n // const validUser = users.filter(\n // usr => usr.email === user.email && usr.password === user.password\n // );\n\n // return new Promise((resolve, reject) => {\n // setTimeout(() => {\n // if (validUser[\"length\"] === 1) {\n // // You have to generate AccessToken by jwt. but this is fakeBackend so, right now its dummy\n // const token = {\"Token \" + authHeader()};\n\n // // JWT AccessToken\n // const tokenObj = { accessToken: token }; // Token Obj\n // const validUserObj = { ...validUser[0], ...tokenObj }; // validUser Obj\n\n // resolve([200, validUserObj]);\n // } else {\n // reject([\n // 400,\n // \"Username and password are invalid. Please enter correct username and password\",\n // ]);\n // }\n // });\n // });\n // });\n\n // mock.onPost(\"/post-jwt-profile\").reply(config => {\n // const user = JSON.parse(config[\"data\"]);\n\n // const one = config.headers;\n\n // let finalToken = one.Authorization;\n\n // const validUser = users.filter(usr => usr.uid === user.idx);\n\n // return new Promise((resolve, reject) => {\n // setTimeout(() => {\n // // Verify Jwt token from header.Authorization\n // if (finalToken === accessToken) {\n // if (validUser[\"length\"] === 1) {\n // let objIndex;\n\n // //Find index of specific object using findIndex method.\n // objIndex = users.findIndex(obj => obj.uid === user.idx);\n\n // //Update object's name property.\n // users[objIndex].username = user.username;\n\n // // Assign a value to locastorage\n // localStorage.removeItem(\"authUser\");\n // localStorage.setItem(\"authUser\", JSON.stringify(users[objIndex]));\n\n // resolve([200, \"Profile Updated successfully\"]);\n // } else {\n // reject([400, \"Something wrong for edit profile\"]);\n // }\n // } else {\n // reject([400, \"Invalid Token !!\"]);\n // }\n // });\n // });\n // });\n\n mock.onPost(\"/post-fake-profile\").reply(config => {\n const user = JSON.parse(config[\"data\"]);\n\n const validUser = users.filter(usr => usr.uid === user.idx);\n\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (validUser[\"length\"] === 1) {\n let objIndex;\n\n //Find index of specific object using findIndex method.\n objIndex = users.findIndex(obj => obj.uid === user.idx);\n\n //Update object's name property.\n users[objIndex].username = user.username;\n\n // Assign a value to locastorage\n localStorage.removeItem(\"authUser\");\n localStorage.setItem(\"authUser\", JSON.stringify(users[objIndex]));\n\n resolve([200, \"Profile Updated successfully\"]);\n } else {\n reject([400, \"Something wrong for edit profile\"]);\n }\n });\n });\n });\n\n mock.onPost(\"/jwt-forget-pwd\").reply(config => {\n // User needs to check that user is eXist or not and send mail for Reset New password\n\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n resolve([200, \"Check you mail and reset your password.\"]);\n });\n });\n });\n\n // mock.onPost(\"/social-login\").reply(config => {\n // const user = JSON.parse(config[\"data\"]);\n\n // return new Promise((resolve, reject) => {\n // setTimeout(() => {\n // if (user && user.token) {\n // // You have to generate AccessToken by jwt. but this is fakeBackend so, right now its dummy\n // const token = accessToken;\n\n // // JWT AccessToken\n // const tokenObj = { accessToken: token }; // Token Obj\n // const validUserObj = { ...user[0], ...tokenObj }; // validUser Obj\n\n // resolve([200, validUserObj]);\n // } else {\n // reject([\n // 400,\n // \"Username and password are invalid. Please enter correct username and password\",\n // ]);\n // }\n // });\n // });\n // });\n\n mock.onGet(url.GET_PRODUCTS).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (productsData) {\n // Passing fake JSON data as response\n resolve([200, productsData]);\n } else {\n reject([400, \"Cannot get products\"]);\n }\n });\n });\n });\n\n mock.onGet(new RegExp(`${url.GET_PRODUCTS_DETAIL}/*`)).reply(config => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (productsData) {\n // Passing fake JSON data as response\n const { params } = config;\n const product = productsData.find(\n product => product.id.toString() === params.id\n );\n resolve([200, { ...product, recentProducts, comments }]);\n } else {\n reject([400, \"Cannot get product detail\"]);\n }\n });\n });\n });\n\n mock.onGet(url.GET_EVENTS).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (events) {\n // Passing fake JSON data as response\n resolve([200, events]);\n } else {\n reject([400, \"Cannot get events\"]);\n }\n });\n });\n });\n\n mock.onPost(url.ADD_NEW_EVENT).reply(event => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (event && event.data) {\n // Passing fake JSON data as response\n resolve([200, event.data]);\n } else {\n reject([400, \"Cannot add event\"]);\n }\n });\n });\n });\n\n mock.onPost(url.ADD_NEW_USER).reply(user => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (user && user.data) {\n // Passing fake JSON data as response\n resolve([200, user.data]);\n } else {\n reject([400, \"Cannot add user\"]);\n }\n });\n });\n });\n\n mock.onPut(url.UPDATE_USER).reply(user => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (user && user.data) {\n // Passing fake JSON data as response\n resolve([200, user.data]);\n } else {\n reject([400, \"Cannot update user\"]);\n }\n });\n });\n });\n\n mock.onDelete(url.DELETE_USER).reply(config => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (config && config.headers) {\n // Passing fake JSON data as response\n resolve([200, config.headers.user]);\n } else {\n reject([400, \"Cannot delete user\"]);\n }\n });\n });\n });\n\n mock.onPut(url.UPDATE_EVENT).reply(event => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (event && event.data) {\n // Passing fake JSON data as response\n resolve([200, event.data]);\n } else {\n reject([400, \"Cannot update event\"]);\n }\n });\n });\n });\n\n mock.onDelete(url.DELETE_EVENT).reply(config => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (config && config.headers) {\n // Passing fake JSON data as response\n resolve([200, config.headers.event]);\n } else {\n reject([400, \"Cannot delete event\"]);\n }\n });\n });\n });\n\n mock.onGet(url.GET_CATEGORIES).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (calenderDefaultCategories) {\n // Passing fake JSON data as response\n resolve([200, calenderDefaultCategories]);\n } else {\n reject([400, \"Cannot get categories\"]);\n }\n });\n });\n });\n\n mock.onGet(url.GET_CHATS).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (chats) {\n // Passing fake JSON data as response\n resolve([200, chats]);\n } else {\n reject([400, \"Cannot get chats\"]);\n }\n });\n });\n });\n\n mock.onGet(url.GET_GROUPS).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (groups) {\n // Passing fake JSON data as response\n resolve([200, groups]);\n } else {\n reject([400, \"Cannot get groups\"]);\n }\n });\n });\n });\n\n mock.onGet(url.GET_CONTACTS).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (contacts) {\n // Passing fake JSON data as response\n resolve([200, contacts]);\n } else {\n reject([400, \"Cannot get contacts\"]);\n }\n });\n });\n });\n\n mock.onGet(new RegExp(`${url.GET_MESSAGES}/*`)).reply(config => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (messages) {\n // Passing fake JSON data as response\n const { params } = config;\n const filteredMessages = messages.filter(\n msg => msg.roomId === params.roomId\n );\n resolve([200, filteredMessages]);\n } else {\n reject([400, \"Cannot get messages\"]);\n }\n });\n });\n });\n\n mock.onPost(url.ADD_MESSAGE).reply(config => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (config.data) {\n // Passing fake JSON data as response\n resolve([200, config.data]);\n } else {\n reject([400, \"Cannot add message\"]);\n }\n });\n });\n });\n\n mock.onGet(url.GET_ORDERS).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (orders) {\n // Passing fake JSON data as response\n resolve([200, orders]);\n } else {\n reject([400, \"Cannot get orders\"]);\n }\n });\n });\n });\n\n mock.onPost(url.ADD_NEW_ORDER).reply(order => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (order && order.data) {\n // Passing fake JSON data as response\n resolve([200, order.data]);\n } else {\n reject([400, \"Cannot add order\"]);\n }\n });\n });\n });\n\n mock.onPut(url.UPDATE_ORDER).reply(order => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (order && order.data) {\n // Passing fake JSON data as response\n resolve([200, order.data]);\n } else {\n reject([400, \"Cannot update order\"]);\n }\n });\n });\n });\n\n mock.onDelete(url.DELETE_ORDER).reply(config => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (config && config.headers) {\n // Passing fake JSON data as response\n resolve([200, config.headers.order]);\n } else {\n reject([400, \"Cannot delete order\"]);\n }\n });\n });\n });\n\n mock.onGet(url.GET_CART_DATA).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (cartData) {\n // Passing fake JSON data as response\n resolve([200, cartData]);\n } else {\n reject([400, \"Cannot get cart data\"]);\n }\n });\n });\n });\n\n mock.onGet(url.GET_CUSTOMERS).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (customerData) {\n // Passing fake JSON data as response\n resolve([200, customerData]);\n } else {\n reject([400, \"Cannot get customers data\"]);\n }\n });\n });\n });\n\n mock.onPost(url.ADD_NEW_CUSTOMER).reply(customer => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (customer && customer.data) {\n // Passing fake JSON data as response\n resolve([200, customer.data]);\n } else {\n reject([400, \"Cannot add customer\"]);\n }\n });\n });\n });\n\n mock.onPut(url.UPDATE_CUSTOMER).reply(customer => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (customer && customer.data) {\n // Passing fake JSON data as response\n resolve([200, customer.data]);\n } else {\n reject([400, \"Cannot update customer\"]);\n }\n });\n });\n });\n\n mock.onDelete(url.DELETE_CUSTOMER).reply(config => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (config && config.headers) {\n // Passing fake JSON data as response\n resolve([200, config.headers.customer]);\n } else {\n reject([400, \"Cannot delete customer\"]);\n }\n });\n });\n });\n\n mock.onGet(url.GET_SHOPS).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (shops) {\n // Passing fake JSON data as response\n resolve([200, shops]);\n } else {\n reject([400, \"Cannot get shops data\"]);\n }\n });\n });\n });\n\n mock.onGet(url.GET_WALLET).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (wallet) {\n // Passing fake JSON data as response\n resolve([200, wallet]);\n } else {\n reject([400, \"Cannot get wallet data\"]);\n }\n });\n });\n });\n\n mock.onGet(url.GET_CRYPTO_ORDERS).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (cryptoOrders) {\n // Passing fake JSON data as response\n resolve([200, cryptoOrders]);\n } else {\n reject([400, \"Cannot get orders\"]);\n }\n });\n });\n });\n\n mock.onGet(url.GET_INVOICES).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (invoiceList) {\n // Passing fake JSON data as response\n resolve([200, invoiceList]);\n } else {\n reject([400, \"Cannot get invoices\"]);\n }\n });\n });\n });\n\n // mock.onGet(new RegExp(`${url.GET_INVOICE_DETAIL}/*`)).reply(config => {\n // return new Promise((resolve, reject) => {\n // setTimeout(() => {\n // if (invoiceList) {\n // // Passing fake JSON data as response\n // const { params } = config;\n // const invoice = invoiceList.find(\n // invoice => invoice.id.toString() === params.id.toString()\n // );\n // resolve([200, invoice]);\n // } else {\n // reject([400, \"Cannot get invoice\"]);\n // }\n // });\n // });\n // });\n\n mock.onGet(url.GET_PROJECTS).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (projects) {\n // Passing fake JSON data as response\n resolve([200, projects]);\n } else {\n reject([400, \"Cannot get projects\"]);\n }\n });\n });\n });\n\n mock.onPost(url.ADD_NEW_PROJECT).reply(project => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (project && project.data) {\n // Passing fake JSON data as response\n resolve([200, project.data]);\n } else {\n reject([400, \"Cannot add project\"]);\n }\n });\n });\n });\n\n mock.onPut(url.UPDATE_PROJECT).reply(project => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (project && project.data) {\n // Passing fake JSON data as response\n resolve([200, project.data]);\n } else {\n reject([400, \"Cannot update project\"]);\n }\n });\n });\n });\n\n mock.onDelete(url.DELETE_PROJECT).reply(config => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (config && config.headers) {\n // Passing fake JSON data as response\n resolve([200, config.headers.project]);\n } else {\n reject([400, \"Cannot delete project\"]);\n }\n });\n });\n });\n\n mock.onGet(url.GET_STARRED_MAILS).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (starredmails) {\n // Passing fake JSON data as response\n resolve([200, starredmails]);\n } else {\n reject([400, \"Cannot get starredmails\"]);\n }\n });\n });\n });\n\n mock.onGet(url.GET_IMPORTANT_MAILS).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (importantmails) {\n // Passing fake JSON data as response\n resolve([200, importantmails]);\n } else {\n reject([400, \"Cannot get importantmails\"]);\n }\n });\n });\n });\n mock.onGet(url.GET_TRASH_MAILS).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (trashmails) {\n // Passing fake JSON data as response\n resolve([200, trashmails]);\n } else {\n reject([400, \"Cannot get trashmails\"]);\n }\n });\n });\n });\n mock.onGet(url.GET_DRAFT_MAILS).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (draftmails) {\n // Passing fake JSON data as response\n resolve([200, draftmails]);\n } else {\n reject([400, \"Cannot get draftmails\"]);\n }\n });\n });\n });\n mock.onGet(url.GET_SENT_MAILS).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (sentmails) {\n // Passing fake JSON data as response\n resolve([200, sentmails]);\n } else {\n reject([400, \"Cannot get sentmails\"]);\n }\n });\n });\n });\n\n mock.onGet(url.GET_INBOX_MAILS).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (inboxmails) {\n // Passing fake JSON data as response\n resolve([200, inboxmails]);\n } else {\n reject([400, \"Cannot get inboxmails\"]);\n }\n });\n });\n });\n\n mock.onPost(url.ADD_NEW_INBOX_MAIL).reply(inboxmail => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (inboxmail && inboxmail.data) {\n // Passing fake JSON data as response\n resolve([200, inboxmail.data]);\n } else {\n reject([400, \"Cannot add project\"]);\n }\n });\n });\n });\n\n mock.onDelete(url.DELETE_INBOX_MAIL).reply(config => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (config && config.headers) {\n // Passing fake JSON data as response\n resolve([200, config.headers.inboxmail]);\n } else {\n reject([400, \"Cannot delete inboxmail\"]);\n }\n });\n });\n });\n\n mock.onGet(new RegExp(`${url.GET_PROJECT_DETAIL}/*`)).reply(config => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (projects) {\n // Passing fake JSON data as response\n const { params } = config;\n const project = projects.find(\n project => project.id.toString() === params.id.toString()\n );\n resolve([200, project]);\n } else {\n reject([400, \"Cannot get project detail\"]);\n }\n });\n });\n });\n\n mock.onGet(url.GET_TASKS).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (tasks) {\n // Passing fake JSON data as response\n resolve([200, tasks]);\n } else {\n reject([400, \"Cannot get tasks\"]);\n }\n });\n });\n });\n\n mock.onGet(url.GET_USERS).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (members) {\n // Passing fake JSON data as response\n resolve([200, members]);\n } else {\n reject([400, \"Cannot get users\"]);\n }\n });\n });\n });\n\n mock.onGet(url.GET_USER_PROFILE).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (userProfile) {\n // Passing fake JSON data as response\n resolve([200, userProfile]);\n } else {\n reject([400, \"Cannot get user profile\"]);\n }\n });\n });\n });\n\n mock.onGet(url.GET_WEEKLY_DATA).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (weekData) {\n // Passing fake JSON data as response\n resolve([200, weekData]);\n } else {\n reject([400, \"Cannot get wallet data\"]);\n }\n });\n });\n });\n\n mock.onGet(url.GET_YEARLY_DATA).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (yearData) {\n // Passing fake JSON data as response\n resolve([200, yearData]);\n } else {\n reject([400, \"Cannot get wallet data\"]);\n }\n });\n });\n });\n\n mock.onGet(url.GET_MONTHLY_DATA).reply(() => {\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n if (monthData) {\n // Passing fake JSON data as response\n resolve([200, monthData]);\n } else {\n reject([400, \"Cannot get wallet data\"]);\n }\n });\n });\n });\n\n mock.onGet(new RegExp(`${url.TOP_SELLING_DATA}/*`)).reply(config => {\n return new Promise((resolve, reject) => {\n const { params } = config;\n setTimeout(() => {\n if (params && params.month) {\n // Passing fake JSON data as response\n\n var data = [];\n if (params.month === \"jan\") {\n data = janTopSellingData;\n } else if (params.month === \"dec\") {\n data = decTopSellingData;\n } else if (params.month === \"nov\") {\n data = novTopSellingData;\n } else if (params.month === \"oct\") {\n data = octTopSellingData;\n }\n resolve([200, data]);\n } else {\n reject([400, \"Cannot get selling data\"]);\n }\n });\n });\n });\n\n mock.onGet(new RegExp(`${url.GET_EARNING_DATA}/*`)).reply(config => {\n return new Promise((resolve, reject) => {\n const { params } = config;\n setTimeout(() => {\n if (params && params.month) {\n // Passing fake JSON data as response\n const { params } = config;\n var data = [];\n if (params.month === \"jan\") {\n data = janEarningData;\n } else if (params.month === \"dec\") {\n data = decEarningData;\n } else if (params.month === \"nov\") {\n data = novEarningData;\n } else if (params.month === \"oct\") {\n data = octEarningData;\n }\n resolve([200, data]);\n } else {\n reject([400, \"Cannot get earning data\"]);\n }\n });\n });\n });\n};\n\nexport default fakeBackend;\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { BrowserRouter as Router, Switch, Route } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\n\n// Import Routes\nimport {\n authProtectedRoutes,\n labAuthProtectedRoutes,\n patientAuthProtectedRoutes,\n patientPublicRoutes,\n corporateAuthProtectedRoutes,\n b2bclientAuthProtectedRoutes,\n donorAuthProtectedRoutes,\n sampleCollectorAuthProtectedRoutes,\n financeOfficerAuthProtectedRoutes,\n financeAdminAuthProtectedRoutes,\n b2badminAuthProtectedRoutes,\n auditorAuthProtectedRoutes,\n registrationAdminAuthProtectedRoutes,\n marketerAdminAuthProtectedRoutes,\n csrAdminAuthProtectedRoutes,\n csrAuthProtectedRoutes,\n auditorAdminAuthProtectedRoutes,\n hrAdminAuthProtectedRoutes,\n publicRoutes,\n} from \"./routes/\";\nimport AppRoute from \"./routes/route\";\n\n// layouts\nimport VerticalLayout from \"./components/VerticalLayout/\";\nimport HorizontalLayout from \"./components/HorizontalLayout/\";\nimport NonAuthLayout from \"./components/NonAuthLayout\";\n\n// Import scss\nimport \"./assets/scss/theme.scss\";\n\n// Import fackbackend Configuration file\nimport fakeBackend from \"./helpers/AuthType/fakeBackend\";\nimport Pages404 from \"pages/Utility/pages-404\";\n\n// Activating fake backend\nfakeBackend();\n\nclass App extends Component {\n constructor(props) {\n super(props);\n this.state = {};\n this.getLayout = this.getLayout.bind(this);\n }\n\n /**\n * Returns the layout\n */\n getLayout = () => {\n let layoutCls = VerticalLayout;\n\n // For patient protected routes\n if (patientAuthProtectedRoutes) {\n layoutCls = HorizontalLayout;\n } else {\n switch (this.props.layout.layoutType) {\n default:\n layoutCls = VerticalLayout;\n break;\n }\n }\n return layoutCls;\n };\n\n render() {\n const Layout = this.getLayout();\n\n return (\n \n \n \n {publicRoutes.map((route, idx) => (\n \n ))}\n\n {authProtectedRoutes.map((route, idx) => (\n \n ))}\n\n {labAuthProtectedRoutes.map((route, idx) => (\n \n ))}\n\n {b2bclientAuthProtectedRoutes.map((route, idx) => (\n \n ))}\n\n {donorAuthProtectedRoutes.map((route, idx) => (\n \n ))}\n\n {b2badminAuthProtectedRoutes.map((route, idx) => (\n \n ))}\n\n {auditorAuthProtectedRoutes.map((route, idx) => (\n \n ))}\n\n {csrAuthProtectedRoutes.map((route, idx) => (\n \n ))}\n\n {registrationAdminAuthProtectedRoutes.map((route, idx) => (\n \n ))}\n\n {csrAdminAuthProtectedRoutes.map((route, idx) => (\n \n ))}\n\n {marketerAdminAuthProtectedRoutes.map((route, idx) => (\n \n ))}\n\n {auditorAdminAuthProtectedRoutes.map((route, idx) => (\n \n ))}\n\n {hrAdminAuthProtectedRoutes.map((route, idx) => (\n \n ))}\n\n {sampleCollectorAuthProtectedRoutes.map((route, idx) => (\n \n ))}\n {financeOfficerAuthProtectedRoutes.map((route, idx) => (\n \n ))}\n{financeAdminAuthProtectedRoutes.map((route, idx) => (\n \n ))}\n\n {patientAuthProtectedRoutes.map((route, idx) => (\n \n ))}\n\n {patientPublicRoutes.map((route, idx) => (\n \n ))}\n\n {corporateAuthProtectedRoutes.map((route, idx) => (\n \n ))}\n\n \n \n \n \n );\n }\n}\n\nconst mapStateToProps = state => {\n return {\n layout: state.Layout,\n };\n};\n\nApp.propTypes = {\n layout: PropTypes.object,\n};\n\nexport default connect(mapStateToProps, null)(App);","// @flow\nimport {\n CHANGE_LAYOUT,\n CHANGE_LAYOUT_WIDTH,\n CHANGE_SIDEBAR_THEME,\n CHANGE_SIDEBAR_THEME_IMAGE,\n CHANGE_SIDEBAR_TYPE,\n CHANGE_TOPBAR_THEME,\n TOGGLE_RIGHT_SIDEBAR,\n SHOW_RIGHT_SIDEBAR,\n CHANGE_PRELOADER,\n HIDE_RIGHT_SIDEBAR,\n} from \"./actionTypes\";\n\n//constants\nimport {\n layoutTypes,\n layoutWidthTypes,\n topBarThemeTypes,\n leftBarThemeImageTypes,\n leftSidebarTypes,\n leftSideBarThemeTypes,\n} from \"../../constants/layout\";\n\nconst INIT_STATE = {\n layoutType: layoutTypes.VERTICAL,\n layoutWidth: layoutWidthTypes.FLUID,\n leftSideBarTheme: leftSideBarThemeTypes.DARK,\n leftSideBarThemeImage: leftBarThemeImageTypes.NONE,\n leftSideBarType: leftSidebarTypes.DEFAULT,\n topbarTheme: topBarThemeTypes.LIGHT,\n isPreloader: false,\n showRightSidebar: false,\n isMobile: false,\n showSidebar: true,\n leftMenu: false,\n};\n\nconst Layout = (state = INIT_STATE, action) => {\n switch (action.type) {\n case CHANGE_LAYOUT:\n return {\n ...state,\n layoutType: action.payload,\n };\n case CHANGE_PRELOADER:\n return {\n ...state,\n isPreloader: action.payload,\n };\n\n case CHANGE_LAYOUT_WIDTH:\n return {\n ...state,\n layoutWidth: action.payload,\n };\n case CHANGE_SIDEBAR_THEME:\n return {\n ...state,\n leftSideBarTheme: action.payload,\n };\n case CHANGE_SIDEBAR_THEME_IMAGE:\n return {\n ...state,\n leftSideBarThemeImage: action.payload,\n };\n case CHANGE_SIDEBAR_TYPE:\n return {\n ...state,\n leftSideBarType: action.payload.sidebarType,\n };\n case CHANGE_TOPBAR_THEME:\n return {\n ...state,\n topbarTheme: action.payload,\n };\n case TOGGLE_RIGHT_SIDEBAR:\n return {\n ...state,\n showRightSidebar: !state.showRightSidebar,\n };\n case SHOW_RIGHT_SIDEBAR:\n return {\n ...state,\n showRightSidebar: true,\n };\n case HIDE_RIGHT_SIDEBAR:\n return {\n ...state,\n showRightSidebar: false,\n };\n default:\n return state;\n }\n};\n\nexport default Layout;\n","import {\n API_SUCCESS,\n API_FAIL,\n GET_CHARTS_DATA,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n chartsData: [],\n};\n\nconst Dashboard = (state = INIT_STATE, action) => {\n switch (action.type) {\n case API_SUCCESS:\n switch (action.payload.actionType) {\n case GET_CHARTS_DATA:\n return {\n ...state,\n chartsData: action.payload.data\n };\n\n default:\n return state;\n }\n case API_FAIL:\n switch (action.payload.actionType) {\n case GET_CHARTS_DATA:\n return {\n ...state,\n earningChartDataError: action.payload.error\n };\n\n\n default:\n return state;\n }\n default:\n return state;\n }\n}\n\n\nexport default Dashboard;","import {\n LOGIN_USER,\n LOGIN_SUCCESS,\n LOGOUT_USER,\n LOGOUT_USER_SUCCESS,\n API_ERROR,\n} from \"./actionTypes\";\n\nconst initialState = {\n error: \"\",\n success: \"\",\n loading: false,\n};\n\nconst login = (state = initialState, action) => {\n switch (action.type) {\n case LOGIN_USER:\n state = {\n ...state,\n loading: true,\n };\n break;\n case LOGIN_SUCCESS:\n state = {\n ...state,\n success: action.payload,\n loading: false,\n };\n break;\n case LOGOUT_USER:\n state = { ...state };\n break;\n case LOGOUT_USER_SUCCESS:\n state = { ...state };\n break;\n case API_ERROR:\n state = { ...state, error: action.payload, loading: false };\n break;\n default:\n state = { ...state };\n break;\n }\n return state;\n};\n\nexport default login;\n","import {\n REGISTER_USER,\n REGISTER_USER_SUCCESSFUL,\n REGISTER_USER_FAILED,\n} from \"./actionTypes\";\n\nconst initialState = {\n // emailError: null,\n usernameError: null,\n passwordError: null,\n incompleteRegistrationError: null,\n message: null,\n loading: false,\n};\n\nconst account = (state = initialState, action) => {\n switch (action.type) {\n case REGISTER_USER:\n state = {\n ...state,\n userID: null,\n userAccountType: null,\n loading: true,\n // emailError: null,\n usernameError: null,\n passwordError: null,\n incompleteRegistrationError: null,\n };\n break;\n case REGISTER_USER_SUCCESSFUL:\n console.log(state = {\n ...state,\n loading: false,\n userID: action.payload.id,\n userAccountType: action.payload.account_type,\n // emailError: null,\n usernameError: null,\n passwordError: null,\n incompleteRegistrationError: null,\n });\n break;\n case REGISTER_USER_FAILED:\n state = {\n ...state,\n userID: null,\n userAccountType: null,\n loading: false,\n // emailError: action.payload.email,\n usernameError: action.payload.username,\n passwordError: action.payload.password,\n incompleteRegistrationError: action.payload.error,\n };\n break;\n default:\n state = { ...state };\n break;\n }\n return state;\n};\n\nexport default account;\n","import {\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n GET_CORPORATES_LIST_SUCCESS,\n GET_CORPORATES_LIST_FAIL,\n ADD_PATIENT_INFORMATION,\n ADD_PATIENT_INFORMATION_SUCCESSFUL,\n ADD_PATIENT_INFORMATION_FAILED,\n} from \"./actionTypes\"\n\nconst initialState = {\n addPatientError: null,\n territoriesList: [],\n corporatesList: [],\n message: null,\n loading: false,\n}\n\nconst patientInformation = (state = initialState, action) => {\n switch (action.type) {\n // territories\n case GET_TERRITORIES_LIST_SUCCESS:\n return {\n ...state,\n territoriesList: action.payload.data,\n };\n\n case GET_TERRITORIES_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n // CORPORATES\n case GET_CORPORATES_LIST_SUCCESS:\n return {\n ...state,\n corporatesList: action.payload.data,\n };\n\n case GET_CORPORATES_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n \n case ADD_PATIENT_INFORMATION:\n state = {\n ...state,\n patient: null,\n loading: true,\n addPatientError: null,\n }\n break\n case ADD_PATIENT_INFORMATION_SUCCESSFUL:\n state = {\n ...state,\n loading: false,\n patient: action.payload,\n addPatientError: null,\n }\n break\n case ADD_PATIENT_INFORMATION_FAILED:\n state = {\n ...state,\n patient: null,\n loading: false,\n addPatientError: action.payload.patient\n }\n break\n default:\n state = { ...state }\n break\n }\n return state\n}\n\nexport default patientInformation\n","import {\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n ADD_B2BCLIENT_INFORMATION,\n ADD_B2BCLIENT_INFORMATION_SUCCESSFUL,\n ADD_B2BCLIENT_INFORMATION_FAILED,\n} from \"./actionTypes\"\n\nconst initialState = {\n addB2bClientError: null,\n territoriesList: [],\n message: null,\n loading: false,\n}\n\nconst b2bclientInformation = (state = initialState, action) => {\n switch (action.type) {\n // territories\n case GET_TERRITORIES_LIST_SUCCESS:\n return {\n ...state,\n territoriesList: action.payload.data,\n };\n\n case GET_TERRITORIES_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n// b2b client\n case ADD_B2BCLIENT_INFORMATION:\n state = {\n ...state,\n b2bclient: null,\n loading: true,\n addB2bClientError: null,\n }\n break\n case ADD_B2BCLIENT_INFORMATION_SUCCESSFUL:\n state = {\n ...state,\n loading: false,\n b2bclient: action.payload,\n addB2bClientError: null,\n }\n break\n case ADD_B2BCLIENT_INFORMATION_FAILED:\n state = {\n ...state,\n b2bclient: null,\n loading: false,\n addB2bClientError: action.payload.b2bclient\n }\n break\n default:\n state = { ...state }\n break\n }\n return state\n}\n\nexport default b2bclientInformation\n","import {\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n ADD_DONOR_INFORMATION,\n ADD_DONOR_INFORMATION_SUCCESSFUL,\n ADD_DONOR_INFORMATION_FAILED,\n} from \"./actionTypes\"\n\nconst initialState = {\n territoriesList: [],\n addDonorError: null,\n message: null,\n loading: false,\n}\n\nconst donorInformation = (state = initialState, action) => {\n switch (action.type) {\n // territories\n case GET_TERRITORIES_LIST_SUCCESS:\n return {\n ...state,\n territoriesList: action.payload.data,\n };\n \n case GET_TERRITORIES_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case ADD_DONOR_INFORMATION:\n state = {\n ...state,\n donor: null,\n loading: true,\n addDonorError: null,\n }\n break\n case ADD_DONOR_INFORMATION_SUCCESSFUL:\n state = {\n ...state,\n loading: false,\n donor: action.payload,\n addDonorError: null,\n }\n break\n case ADD_DONOR_INFORMATION_FAILED:\n state = {\n ...state,\n donor: null,\n loading: false,\n addDonorError: action.payload.donor\n }\n break\n default:\n state = { ...state }\n break\n }\n return state\n}\n\nexport default donorInformation\n","import {\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n GET_MAIN_LABS_SUCCESS,\n GET_MAIN_LABS_FAIL,\n ADD_LAB_INFORMATION,\n ADD_LAB_INFORMATION_SUCCESSFUL,\n ADD_LAB_INFORMATION_FAILED,\n} from \"./actionTypes\";\n\nconst initialState = {\n labs: [],\n territoriesList: [],\n addLabError: null,\n message: null,\n loading: false,\n};\n\nconst labInformation = (state = initialState, action) => {\n switch (action.type) {\n // territories\n case GET_TERRITORIES_LIST_SUCCESS:\n return {\n ...state,\n territoriesList: action.payload.data,\n };\n\n case GET_TERRITORIES_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n // lab information\n case GET_MAIN_LABS_SUCCESS:\n return {\n ...state,\n labs: action.payload.data,\n };\n\n case GET_MAIN_LABS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case ADD_LAB_INFORMATION:\n state = {\n ...state,\n lab: null,\n loading: true,\n addLabError: null,\n };\n break;\n case ADD_LAB_INFORMATION_SUCCESSFUL:\n state = {\n ...state,\n loading: false,\n lab: action.payload,\n addLabError: null,\n };\n break;\n case ADD_LAB_INFORMATION_FAILED:\n state = {\n ...state,\n lab: null,\n loading: false,\n addLabError: action.payload.lab,\n };\n break;\n default:\n state = { ...state };\n break;\n }\n return state;\n};\n\nexport default labInformation;\n","import {\n ADD_CORPORATE_INFORMATION,\n ADD_CORPORATE_INFORMATION_SUCCESSFUL,\n ADD_CORPORATE_INFORMATION_FAILED,\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n} from \"./actionTypes\";\n\nconst initialState = {\n addCorporateError: null,\n territoriesList: [],\n message: null,\n loading: false,\n};\n\nconst corporateInformation = (state = initialState, action) => {\n switch (action.type) {\n // territories\n case GET_TERRITORIES_LIST_SUCCESS:\n return {\n ...state,\n territoriesList: action.payload.data,\n };\n\n case GET_TERRITORIES_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case ADD_CORPORATE_INFORMATION:\n state = {\n ...state,\n corporate: null,\n loading: true,\n addCorporateError: null,\n };\n break;\n case ADD_CORPORATE_INFORMATION_SUCCESSFUL:\n state = {\n ...state,\n loading: false,\n corporate: action.payload,\n addCorporateError: null,\n };\n break;\n case ADD_CORPORATE_INFORMATION_FAILED:\n state = {\n ...state,\n corporate: null,\n loading: false,\n addCorporateError: action.payload.corporate,\n };\n break;\n default:\n state = { ...state };\n break;\n }\n return state;\n};\n\nexport default corporateInformation;\n","import {\n FORGET_PASSWORD,\n FORGET_PASSWORD_SUCCESS,\n FORGET_PASSWORD_ERROR,\n} from \"./actionTypes\";\n\nconst initialState = {\n forgetSuccessMsg: null,\n forgetError: null,\n};\n\nconst forgetPassword = (state = initialState, action) => {\n switch (action.type) {\n case FORGET_PASSWORD:\n state = {\n ...state,\n forgetSuccessMsg: null,\n forgetError: null,\n };\n break;\n case FORGET_PASSWORD_SUCCESS:\n state = {\n ...state,\n forgetSuccessMsg: action.payload,\n };\n break;\n case FORGET_PASSWORD_ERROR:\n state = { ...state, forgetError: action.payload };\n break;\n default:\n state = { ...state };\n break;\n }\n return state;\n};\n\nexport default forgetPassword;\n","import {\n CONFIRM_PASSWORD,\n CONFIRM_PASSWORD_SUCCESS,\n CONFIRM_PASSWORD_ERROR,\n} from \"./actionTypes\";\n\nconst initialState = {\n confirmSuccessMsg: null,\n confirmError: null,\n};\n\nconst confirmPassword = (state = initialState, action) => {\n switch (action.type) {\n case CONFIRM_PASSWORD:\n state = {\n ...state,\n confirmSuccessMsg: null,\n confirmError: null,\n };\n break;\n case CONFIRM_PASSWORD_SUCCESS:\n state = {\n ...state,\n confirmSuccessMsg: action.payload,\n };\n break;\n case CONFIRM_PASSWORD_ERROR:\n state = { ...state, confirmError: action.payload };\n break;\n default:\n state = { ...state };\n break;\n }\n return state;\n};\n\nexport default confirmPassword;\n","import {\n CHANGE_PASSWORD,\n CHANGE_PASSWORD_SUCCESS,\n CHANGE_PASSWORD_ERROR,\n} from \"./actionTypes\";\n\nconst initialState = {\n changeSuccessMsg: null,\n changeError: null,\n};\n\nconst changePassword = (state = initialState, action) => {\n switch (action.type) {\n case CHANGE_PASSWORD:\n state = {\n ...state,\n changeSuccessMsg: null,\n changeError: null,\n };\n break;\n case CHANGE_PASSWORD_SUCCESS:\n state = {\n ...state,\n changeSuccessMsg: action.payload,\n changeError: null,\n };\n break;\n case CHANGE_PASSWORD_ERROR:\n state = { ...state, changeError: action.payload.old_password };\n break;\n default:\n state = { ...state };\n break;\n }\n return state;\n};\n\nexport default changePassword;\n","import {\n GET_LAB_PROFILE_SUCCESS,\n GET_LAB_PROFILE_FAIL,\n UPDATE_LAB_PROFILE_SUCCESS,\n UPDATE_LAB_PROFILE_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n labProfile: [],\n error: \"\",\n success: \"\",\n};\n\nconst labProfile = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_LAB_PROFILE_SUCCESS:\n return {\n ...state,\n success: action.payload.data,\n };\n\n case GET_LAB_PROFILE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_LAB_PROFILE_SUCCESS:\n return {\n ...state,\n labProfile: state.labProfile.map(labProfile =>\n labProfile.id.toString() === action.payload.id.toString()\n ? { labProfile, ...action.payload }\n : labProfile\n ),\n };\n\n case UPDATE_LAB_PROFILE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default labProfile;\n","import {\n GET_B2B_PROFILE_SUCCESS,\n GET_B2B_PROFILE_FAIL,\n UPDATE_B2B_PROFILE_SUCCESS,\n UPDATE_B2B_PROFILE_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n b2bProfile: [],\n error: \"\",\n success: [],\n};\n\nconst b2bProfile = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_B2B_PROFILE_SUCCESS:\n return {\n ...state,\n success: action.payload.data,\n };\n\n case GET_B2B_PROFILE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_B2B_PROFILE_SUCCESS:\n return {\n ...state,\n b2bProfile: state.b2bProfile.map(b2bProfile =>\n b2bProfile.id.toString() === action.payload.id.toString()\n ? { b2bProfile, ...action.payload }\n : b2bProfile\n ),\n };\n\n case UPDATE_B2B_PROFILE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default b2bProfile;\n","import {\n GET_DONOR_PROFILE_SUCCESS,\n GET_DONOR_PROFILE_FAIL,\n UPDATE_DONOR_PROFILE_SUCCESS,\n UPDATE_DONOR_PROFILE_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n donorProfile: [],\n error: \"\",\n success: [],\n};\n\nconst donorProfile = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_DONOR_PROFILE_SUCCESS:\n console.log(\"Data: \", action.payload.data);\n return {\n ...state,\n success: action.payload.data,\n };\n\n case GET_DONOR_PROFILE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_DONOR_PROFILE_SUCCESS:\n return {\n ...state,\n donorProfile: state.donorProfile.map(donorProfile =>\n donorProfile.id.toString() === action.payload.id.toString()\n ? { donorProfile, ...action.payload }\n : donorProfile\n ),\n };\n\n case UPDATE_DONOR_PROFILE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default donorProfile;\n","import {\n GET_STAFF_PROFILE_SUCCESS,\n GET_STAFF_PROFILE_FAIL,\n UPDATE_STAFF_PROFILE_SUCCESS,\n UPDATE_STAFF_PROFILE_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n staffProfile: [],\n error: \"\",\n success: \"\",\n};\n\nconst staffProfile = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_STAFF_PROFILE_SUCCESS:\n return {\n ...state,\n success: action.payload.data,\n };\n\n case GET_STAFF_PROFILE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_STAFF_PROFILE_SUCCESS:\n return {\n ...state,\n staffProfile: state.staffProfile.map(staffProfile =>\n staffProfile.id.toString() === action.payload.id.toString()\n ? { staffProfile, ...action.payload }\n : staffProfile\n ),\n };\n\n case UPDATE_STAFF_PROFILE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default staffProfile;\n","import {\n GET_SAMPLE_COLLECTOR_PROFILE_SUCCESS,\n GET_SAMPLE_COLLECTOR_PROFILE_FAIL,\n UPDATE_SAMPLE_COLLECTOR_PROFILE_SUCCESS,\n UPDATE_SAMPLE_COLLECTOR_PROFILE_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n sampleCollectorProfile: [],\n error: \"\",\n success: \"\",\n};\n\nconst sampleCollectorProfile = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_SAMPLE_COLLECTOR_PROFILE_SUCCESS:\n return {\n ...state,\n success: action.payload.data,\n };\n\n case GET_SAMPLE_COLLECTOR_PROFILE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n\n case UPDATE_SAMPLE_COLLECTOR_PROFILE_SUCCESS:\n return {\n ...state,\n sampleCollectorProfile: state.sampleCollectorProfile.map(sampleCollectorProfile =>\n sampleCollectorProfile.id.toString() === action.payload.id.toString()\n ? { sampleCollectorProfile, ...action.payload }\n : sampleCollectorProfile\n ),\n };\n\n case UPDATE_SAMPLE_COLLECTOR_PROFILE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default sampleCollectorProfile;\n","import {\n GET_LAB_SETTINGS_SUCCESS,\n GET_LAB_SETTINGS_FAIL,\n UPDATE_LAB_SETTINGS_SUCCESS,\n UPDATE_LAB_SETTINGS_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n labSettings: [],\n error: \"\",\n success: \"\",\n};\n\nconst labSettings = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_LAB_SETTINGS_SUCCESS:\n return {\n ...state,\n success: action.payload.data,\n };\n\n case GET_LAB_SETTINGS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_LAB_SETTINGS_SUCCESS:\n return {\n ...state,\n labSettings: state.labSettings.map(labSettings =>\n labSettings.id.toString() === action.payload.id.toString()\n ? { labSettings, ...action.payload }\n : labSettings\n ),\n };\n\n case UPDATE_LAB_SETTINGS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default labSettings;\n","import {\n GET_LAB_PAYMENTS_SUCCESS,\n GET_LAB_PAYMENTS_FAIL,\n UPDATE_LAB_PAYMENTS_SUCCESS,\n UPDATE_LAB_PAYMENTS_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n labPayments: [],\n error: \"\",\n success: \"\",\n};\n\nconst labPayments = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_LAB_PAYMENTS_SUCCESS:\n return {\n ...state,\n success: action.payload.data,\n };\n\n case GET_LAB_PAYMENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_LAB_PAYMENTS_SUCCESS:\n return {\n ...state,\n labPayments: state.labPayments.map(labPayments =>\n labPayments.id.toString() === action.payload.id.toString()\n ? { labPayments, ...action.payload }\n : labPayments\n ),\n };\n\n case UPDATE_LAB_PAYMENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default labPayments;\n","import {\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n GET_DONOR_SETTINGS_SUCCESS,\n GET_DONOR_SETTINGS_FAIL,\n UPDATE_DONOR_SETTINGS_SUCCESS,\n UPDATE_DONOR_SETTINGS_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n territoriesList: [],\n donorSettings: [],\n error: \"\",\n success: \"\",\n};\n\nconst donorSettings = (state = INIT_STATE, action) => {\n switch (action.type) {\n\n case GET_TERRITORIES_LIST_SUCCESS:\n return {\n ...state,\n territoriesList: action.payload.data,\n };\n\n case GET_TERRITORIES_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n \n case GET_DONOR_SETTINGS_SUCCESS:\n return {\n ...state,\n success: action.payload.data,\n };\n\n case GET_DONOR_SETTINGS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_DONOR_SETTINGS_SUCCESS:\n return {\n ...state,\n donorSettings: state.donorSettings.map(donorSettings =>\n donorSettings.id.toString() === action.payload.id.toString()\n ? { donorSettings, ...action.payload }\n : donorSettings\n ),\n };\n\n case UPDATE_DONOR_SETTINGS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default donorSettings;\n","import {\n GET_PATIENT_PROFILE_SUCCESS,\n GET_PATIENT_PROFILE_FAIL,\n UPDATE_PATIENT_PROFILE_SUCCESS,\n UPDATE_PATIENT_PROFILE_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n patientProfile: [],\n error: \"\",\n success: \"\",\n};\n\nconst patientProfile = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_PATIENT_PROFILE_SUCCESS:\n return {\n ...state,\n success: action.payload.data,\n };\n\n case GET_PATIENT_PROFILE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_PATIENT_PROFILE_SUCCESS:\n return {\n ...state,\n patientProfile: state.patientProfile.map(patientProfile =>\n patientProfile.id.toString() === action.payload.id.toString()\n ? { patientProfile, ...action.payload }\n : patientProfile\n ),\n };\n\n case UPDATE_PATIENT_PROFILE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default patientProfile;\n","import {\n GET_CORPORATE_PROFILE_SUCCESS,\n GET_CORPORATE_PROFILE_FAIL,\n UPDATE_CORPORATE_PROFILE_SUCCESS,\n UPDATE_CORPORATE_PROFILE_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n CorporateProfile: [],\n error: \"\",\n success: \"\",\n};\n\nconst corporateProfile = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_CORPORATE_PROFILE_SUCCESS:\n return {\n ...state,\n success: action.payload.data,\n };\n\n case GET_CORPORATE_PROFILE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_CORPORATE_PROFILE_SUCCESS:\n console.log('Updating corporate profile:', action.payload);\n return {\n ...state,\n CorporateProfile: state.CorporateProfile.map(CorporateProfile =>\n CorporateProfile.id.toString() === action.payload.id.toString()\n ? { CorporateProfile, ...action.payload }\n : CorporateProfile\n ),\n };\n\n case UPDATE_CORPORATE_PROFILE_FAIL:\n console.log('Updating corporate profile:', action.payload);\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default corporateProfile;\n","import {\n GET_NEARBY_LABS_FAIL,\n GET_NEARBY_LABS_SUCCESS,\n GET_CORPORATE_LABS_FAIL,\n GET_CORPORATE_LABS_SUCCESS,\n GET_REGION_WISE_ADVERTISEMENT_FAIL,\n GET_REGION_WISE_ADVERTISEMENT_SUCCESS,\n GET_ADV_LIVE_FAIL,\n GET_ADV_LIVE_SUCCESS,\n GET_PATIENT_PROFILE_FAIL,\n GET_PATIENT_PROFILE_SUCCESS,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n regionWiseAdvertisement:[],\n nearbyLabs: [],\n corporateLab: [],\n advLives: [],\n patientProfile: [],\n error: {},\n};\n\nconst labMarket = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_NEARBY_LABS_SUCCESS:\n return {\n ...state,\n nearbyLabs: action.payload.data,\n };\n\n case GET_NEARBY_LABS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_CORPORATE_LABS_SUCCESS:\n return {\n ...state,\n corporateLab: action.payload.data,\n };\n \n case GET_CORPORATE_LABS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_PATIENT_PROFILE_SUCCESS:\n return {\n ...state,\n patientProfile: action.payload.data,\n };\n \n case GET_PATIENT_PROFILE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_REGION_WISE_ADVERTISEMENT_SUCCESS:\n return {\n ...state,\n regionWiseAdvertisement: action.payload.data,\n };\n \n case GET_REGION_WISE_ADVERTISEMENT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_ADV_LIVE_SUCCESS:\n return {\n ...state,\n advLives: action.payload.data,\n };\n \n case GET_ADV_LIVE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default labMarket;\n","import {\n GET_NEARBY_TESTS_FAIL,\n GET_NEARBY_TESTS_SUCCESS,\n GET_NEARBY_TESTS_DISCOUNTEDLH_FAIL,\n GET_NEARBY_TESTS_DISCOUNTEDLH_SUCCESS,\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n nearbyTests: [],\n territoriesList: [],\n error: {},\n};\n\nconst TestMarket = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_TERRITORIES_LIST_SUCCESS:\n return {\n ...state,\n territoriesList: action.payload.data,\n };\n\n case GET_TERRITORIES_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_NEARBY_TESTS_SUCCESS:\n return {\n ...state,\n nearbyTests: action.payload.data,\n };\n\n case GET_NEARBY_TESTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_NEARBY_TESTS_DISCOUNTEDLH_SUCCESS:\n return {\n ...state,\n nearbyTests: action.payload.data,\n };\n\n case GET_NEARBY_TESTS_DISCOUNTEDLH_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default TestMarket;\n","import {\n GET_NEARBY_PROFILES_FAIL,\n GET_NEARBY_PROFILES_SUCCESS,\n GET_PROFILES_FAIL,\n GET_PROFILES_SUCCESS,\n GET_TESTSS_FAIL,\n GET_TESTSS_SUCCESS,\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n nearbyProfiles: [],\n Profiles:[],\n Testss:[],\n territoriesList: [],\n error: {},\n};\n\nconst ProfileMarket = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_TERRITORIES_LIST_SUCCESS:\n return {\n ...state,\n territoriesList: action.payload.data,\n };\n\n case GET_TERRITORIES_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_NEARBY_PROFILES_SUCCESS:\n return {\n ...state,\n nearbyProfiles: action.payload.data,\n };\n\n case GET_NEARBY_PROFILES_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_PROFILES_SUCCESS:\n return {\n ...state,\n Profiles: action.payload.data,\n };\n\n case GET_PROFILES_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_TESTSS_SUCCESS:\n return {\n ...state,\n Testss: action.payload.data,\n };\n\n case GET_TESTSS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default ProfileMarket;\n","import {\n GET_NEARBY_PACKAGES_FAIL,\n GET_NEARBY_PACKAGES_SUCCESS,\n GET_PACKAGES_FAIL,\n GET_PACKAGES_SUCCESS,\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n nearbyPackages: [],\n Packages:[],\n territoriesList: [],\n error: {},\n};\n\nconst PackageMarket = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_TERRITORIES_LIST_SUCCESS:\n return {\n ...state,\n territoriesList: action.payload.data,\n };\n\n case GET_TERRITORIES_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_NEARBY_PACKAGES_SUCCESS:\n return {\n ...state,\n nearbyPackages: action.payload.data,\n };\n\n case GET_NEARBY_PACKAGES_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_PACKAGES_SUCCESS:\n return {\n ...state,\n Packages: action.payload.data,\n };\n \n case GET_PACKAGES_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default PackageMarket;\n","import {\n GET_NEARBY_RADIOLOGY_FAIL,\n GET_NEARBY_RADIOLOGY_SUCCESS,\n GET_RADIOLOGY_FAIL,\n GET_RADIOLOGY_SUCCESS,\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n nearbyRadiology: [],\n territoriesList: [],\n Radiology:[],\n error: {},\n};\n\nconst RadiologyMarket = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_TERRITORIES_LIST_SUCCESS:\n return {\n ...state,\n territoriesList: action.payload.data,\n };\n\n case GET_TERRITORIES_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_NEARBY_RADIOLOGY_SUCCESS:\n return {\n ...state,\n nearbyRadiology: action.payload.data,\n };\n\n case GET_NEARBY_RADIOLOGY_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_RADIOLOGY_SUCCESS:\n return {\n ...state,\n Radiology: action.payload.data,\n };\n \n case GET_RADIOLOGY_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default RadiologyMarket;\n","import {\n GET_TESTS_LIST_SUCCESS,\n GET_TESTS_LIST_FAIL,\n GET_CORPORATE_TESTS_LIST_SUCCESS,\n GET_CORPORATE_TESTS_LIST_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n testsList: [],\n error: {},\n};\n\nconst tests = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_TESTS_LIST_SUCCESS:\n return {\n ...state,\n testsList: action.payload.data,\n };\n\n case GET_TESTS_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_CORPORATE_TESTS_LIST_SUCCESS:\n return {\n ...state,\n testsList: action.payload.data,\n };\n\n case GET_CORPORATE_TESTS_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default tests;\n","import {\n GET_UNITS_SUCCESS,\n GET_UNITS_FAIL,\n GET_TESTS_SUCCESS,\n GET_TESTS_FAIL,\n GET_OFFERED_TESTS_SUCCESS,\n GET_OFFERED_TESTS_FAIL,\n GET_CORPORATE_TESTS_SUCCESS,\n GET_CORPORATE_TESTS_FAIL,\n GET_OFFEREDTEST_REFERRELFEE_SUCCESS,\n GET_OFFEREDTEST_REFERRELFEE_FAIL,\n GET_COFFEREDTEST_REFERRELFEE_SUCCESS,\n GET_COFFEREDTEST_REFERRELFEE_FAIL,\n GET_COFFEREDPROFILE_REFERRELFEE_SUCCESS,\n GET_COFFEREDPROFILE_REFERRELFEE_FAIL,\n GET_COFFEREDPACKAGE_REFERRELFEE_SUCCESS,\n GET_COFFEREDPACKAGE_REFERRELFEE_FAIL,\n GET_COFFEREDRADIOLOGY_REFERRELFEE_SUCCESS,\n GET_COFFEREDRADIOLOGY_REFERRELFEE_FAIL,\n GET_OFFEREDPROFILE_REFERRELFEE_SUCCESS,\n GET_OFFEREDPROFILE_REFERRELFEE_FAIL,\n GET_OFFEREDPACKAGE_REFERRELFEE_SUCCESS,\n GET_OFFEREDPACKAGE_REFERRELFEE_FAIL,\n GET_OFFEREDRADIOLOGY_REFERRELFEE_SUCCESS,\n GET_OFFEREDRADIOLOGY_REFERRELFEE_FAIL,\n GET_LAB_PROFILE_SUCCESS,\n GET_LAB_PROFILE_FAIL,\n ADD_OFFERED_TEST_SUCCESS,\n ADD_OFFERED_TEST_FAIL,\n ADD_CORPORATE_TEST_SUCCESS,\n ADD_CORPORATE_FAIL,\n ADD_CORPORATE_SUCCESS,\n ADD_CORPORATE_TEST_FAIL,\n ADD_OFFERED_MAINTEST_SUCCESS,\n ADD_OFFERED_MAINTEST_FAIL,\n UPDATE_OFFERED_TEST_SUCCESS,\n UPDATE_OFFERED_TEST_FAIL,\n UPDATE_CORPORATE_TEST_SUCCESS,\n UPDATE_CORPORATE_TEST_FAIL,\n UPDATE_CORPORATE_STATUS_SUCCESS,\n UPDATE_CORPORATE_STATUS_FAIL,\n UPDATE_ACORPORATE_STATUS_SUCCESS,\n UPDATE_ACORPORATE_STATUS_FAIL,\n DELETE_OFFERED_TEST_SUCCESS,\n DELETE_OFFERED_TEST_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n units: [],\n tests: [],\n labProfiles: [],\n offeredTests: [],\n error: {},\n};\n\nconst tests = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_UNITS_SUCCESS:\n return {\n ...state,\n units: action.payload.data,\n };\n\n case GET_UNITS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_TESTS_SUCCESS:\n return {\n ...state,\n tests: action.payload.data,\n };\n\n case GET_TESTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_OFFERED_TESTS_SUCCESS:\n return {\n ...state,\n offeredTests: action.payload.data,\n };\n\n case GET_OFFERED_TESTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_CORPORATE_TESTS_SUCCESS:\n return {\n ...state,\n offeredTests: action.payload.data,\n };\n\n case GET_CORPORATE_TESTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_LAB_PROFILE_SUCCESS:\n return {\n ...state,\n labProfiles: action.payload.data,\n };\n\n case GET_LAB_PROFILE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_OFFEREDTEST_REFERRELFEE_SUCCESS:\n return {\n ...state,\n offeredTests: action.payload.data,\n };\n\n case GET_OFFEREDTEST_REFERRELFEE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_COFFEREDTEST_REFERRELFEE_SUCCESS:\n return {\n ...state,\n offeredTests: action.payload.data,\n };\n\n case GET_COFFEREDTEST_REFERRELFEE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_COFFEREDPROFILE_REFERRELFEE_SUCCESS:\n return {\n ...state,\n offeredTests: action.payload.data,\n };\n\n case GET_COFFEREDPROFILE_REFERRELFEE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_COFFEREDPACKAGE_REFERRELFEE_SUCCESS:\n return {\n ...state,\n offeredTests: action.payload.data,\n };\n\n case GET_COFFEREDPACKAGE_REFERRELFEE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_COFFEREDRADIOLOGY_REFERRELFEE_SUCCESS:\n return {\n ...state,\n offeredTests: action.payload.data,\n };\n\n case GET_COFFEREDRADIOLOGY_REFERRELFEE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_OFFEREDPROFILE_REFERRELFEE_SUCCESS:\n return {\n ...state,\n offeredTests: action.payload.data,\n };\n\n case GET_OFFEREDPROFILE_REFERRELFEE_FAIL:\n return {\n ...state,\n error: action.payload,\n }; \n case GET_OFFEREDPACKAGE_REFERRELFEE_SUCCESS:\n return {\n ...state,\n offeredTests: action.payload.data,\n };\n\n case GET_OFFEREDPACKAGE_REFERRELFEE_FAIL:\n return {\n ...state,\n error: action.payload,\n }; \n case GET_OFFEREDRADIOLOGY_REFERRELFEE_SUCCESS:\n return {\n ...state,\n offeredTests: action.payload.data,\n };\n\n case GET_OFFEREDRADIOLOGY_REFERRELFEE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case ADD_OFFERED_TEST_SUCCESS:\n return {\n ...state,\n offeredTests: [...state.offeredTests, action.payload],\n };\n\n case ADD_OFFERED_TEST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case ADD_CORPORATE_TEST_SUCCESS:\n return {\n ...state,\n offeredTests: [...state.offeredTests, action.payload],\n };\n\n case ADD_CORPORATE_TEST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case ADD_CORPORATE_SUCCESS:\n return {\n ...state,\n offeredTests: [...state.offeredTests, action.payload],\n };\n\n case ADD_CORPORATE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case ADD_OFFERED_MAINTEST_SUCCESS:\n return {\n ...state,\n offeredTests: [...state.offeredTests, action.payload],\n };\n\n case ADD_OFFERED_MAINTEST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_OFFERED_TEST_SUCCESS:\n return {\n ...state,\n offeredTests: state.offeredTests.map(offeredTest =>\n offeredTest.id.toString() === action.payload.id.toString()\n ? { offeredTest, ...action.payload }\n : offeredTest\n ),\n };\n\n case UPDATE_OFFERED_TEST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case UPDATE_CORPORATE_TEST_SUCCESS:\n return {\n ...state,\n offeredTests: state.offeredTests.map(offeredTest =>\n offeredTest.id.toString() === action.payload.id.toString()\n ? { offeredTest, ...action.payload }\n : offeredTest\n ),\n };\n\n case UPDATE_CORPORATE_TEST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case UPDATE_CORPORATE_STATUS_SUCCESS:\n return {\n ...state,\n offeredTests: state.offeredTests.map(offeredTest =>\n offeredTest.id.toString() === action.payload.id.toString()\n ? { offeredTest, ...action.payload }\n : offeredTest\n ),\n };\n\n case UPDATE_CORPORATE_STATUS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_ACORPORATE_STATUS_SUCCESS:\n return {\n ...state,\n offeredTests: state.offeredTests.map(offeredTest =>\n offeredTest.id.toString() === action.payload.id.toString()\n ? { offeredTest, ...action.payload }\n : offeredTest\n ),\n };\n\n case UPDATE_ACORPORATE_STATUS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case DELETE_OFFERED_TEST_SUCCESS:\n return {\n ...state,\n offeredTests: state.offeredTests.filter(\n offeredTest =>\n offeredTest.id.toString() !== action.payload.id.toString()\n ),\n };\n\n case DELETE_OFFERED_TEST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default tests;\n","import {\n GET_PATHOLOGISTS_SUCCESS,\n GET_PATHOLOGISTS_FAIL,\n ADD_PATHOLOGIST_SUCCESS,\n ADD_PATHOLOGIST_FAIL,\n UPDATE_PATHOLOGIST_SUCCESS,\n UPDATE_PATHOLOGIST_FAIL,\n DELETE_PATHOLOGIST_SUCCESS,\n DELETE_PATHOLOGIST_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n pathologists: [],\n error: {},\n};\n\nconst pathologists = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_PATHOLOGISTS_SUCCESS:\n return {\n ...state,\n pathologists: action.payload.data,\n };\n\n case GET_PATHOLOGISTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case ADD_PATHOLOGIST_SUCCESS:\n return {\n ...state,\n pathologists: [...state.pathologists, action.payload],\n };\n\n case ADD_PATHOLOGIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_PATHOLOGIST_SUCCESS:\n return {\n ...state,\n pathologists: state.pathologists.map(pathologist =>\n pathologist.id.toString() === action.payload.id.toString()\n ? { pathologist, ...action.payload }\n : pathologist\n ),\n };\n\n case UPDATE_PATHOLOGIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case DELETE_PATHOLOGIST_SUCCESS:\n return {\n ...state,\n pathologists: state.pathologists.filter(\n pathologist =>\n pathologist.id.toString() !== action.payload.id.toString()\n ),\n };\n\n case DELETE_PATHOLOGIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default pathologists;\n","import {\n GET_ACTIVITY_LOG_SUCCESS,\n GET_ACTIVITY_LOG_FAIL,\n GET_NOTIFICATION_SUCCESS,\n GET_NOTIFICATION_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n activitylog: [],\n notification:[],\n error: {},\n};\n\nconst activitylog = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_ACTIVITY_LOG_SUCCESS:\n return {\n ...state,\n activitylog: action.payload.data,\n };\n\n case GET_ACTIVITY_LOG_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_NOTIFICATION_SUCCESS:\n return {\n ...state,\n notification: action.payload.data,\n };\n\n case GET_NOTIFICATION_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n default:\n return state;\n }\n};\n\nexport default activitylog;\n","import {\n GET_ACTIVITY_LOG_SUCCESS,\n GET_ACTIVITY_LOG_FAIL,\n GET_SAMPLE_NOTIFICATION_SUCCESS,\n GET_SAMPLE_NOTIFICATION_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n activitylog: [],\n sampleNotification:[],\n error: {},\n};\n\nconst sampleNotification = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_ACTIVITY_LOG_SUCCESS:\n return {\n ...state,\n activitylog: action.payload.data,\n };\n\n case GET_ACTIVITY_LOG_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_SAMPLE_NOTIFICATION_SUCCESS:\n return {\n ...state,\n sampleNotification: [action.payload.data], \n };\n\n case GET_SAMPLE_NOTIFICATION_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n default:\n return state;\n }\n};\n\nexport default sampleNotification;\n","import {\n GET_ACTIVITY_LOG_SUCCESS,\n GET_ACTIVITY_LOG_FAIL,\n GET_MARKETER_NOTIFICATION_SUCCESS,\n GET_MARKETER_NOTIFICATION_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n activitylog: [],\n marketerNotification:[],\n error: {},\n};\n\nconst marketerNotification = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_ACTIVITY_LOG_SUCCESS:\n return {\n ...state,\n activitylog: action.payload.data,\n };\n\n case GET_ACTIVITY_LOG_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_MARKETER_NOTIFICATION_SUCCESS:\n return {\n ...state,\n marketerNotification: [action.payload.data], \n };\n\n case GET_MARKETER_NOTIFICATION_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n default:\n return state;\n }\n};\n\nexport default marketerNotification;\n","import {\n GET_ACTIVITY_LOG_SUCCESS,\n GET_ACTIVITY_LOG_FAIL,\n GET_CSR_ADMIN_NOTIFICATION_SUCCESS,\n GET_CSR_ADMIN_NOTIFICATION_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n activitylog: [],\n csrAdminNotification:[],\n error: {},\n};\n\nconst csrAdminNotification = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_ACTIVITY_LOG_SUCCESS:\n return {\n ...state,\n activitylog: action.payload.data,\n };\n\n case GET_ACTIVITY_LOG_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_CSR_ADMIN_NOTIFICATION_SUCCESS:\n return {\n ...state,\n csrAdminNotification: [action.payload.data], \n };\n\n case GET_CSR_ADMIN_NOTIFICATION_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n default:\n return state;\n }\n};\n\nexport default csrAdminNotification;\n","import {\n GET_ACTIVITY_LOG_SUCCESS,\n GET_ACTIVITY_LOG_FAIL,\n GET_REG_ADMIN_NOTIFICATION_SUCCESS,\n GET_REG_ADMIN_NOTIFICATION_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n activitylog: [],\n regAdminNotification:[],\n error: {},\n};\n\nconst regAdminNotification = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_ACTIVITY_LOG_SUCCESS:\n return {\n ...state,\n activitylog: action.payload.data,\n };\n\n case GET_ACTIVITY_LOG_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_REG_ADMIN_NOTIFICATION_SUCCESS:\n return {\n ...state,\n regAdminNotification: [action.payload.data], \n };\n\n case GET_REG_ADMIN_NOTIFICATION_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n default:\n return state;\n }\n};\n\nexport default regAdminNotification;\n","import {\n GET_ACTIVITY_LOG_SUCCESS,\n GET_ACTIVITY_LOG_FAIL,\n GET_CSR_OFFICER_NOTIFICATION_SUCCESS,\n GET_CSR_OFFICER_NOTIFICATION_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n activitylog: [],\n csrOfficerNotification:[],\n error: {},\n};\n\nconst csrOfficerNotification = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_ACTIVITY_LOG_SUCCESS:\n return {\n ...state,\n activitylog: action.payload.data,\n };\n\n case GET_ACTIVITY_LOG_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_CSR_OFFICER_NOTIFICATION_SUCCESS:\n return {\n ...state,\n csrOfficerNotification: [action.payload.data], \n };\n\n case GET_CSR_OFFICER_NOTIFICATION_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n default:\n return state;\n }\n};\n\nexport default csrOfficerNotification;\n","import {\n GET_ACTIVITY_LOG_FINANCE_SUCCESS,\n GET_ACTIVITY_LOG_FINANCE_FAIL,\n GET_CORPORATE_COMMIT_SUCCESS,\n GET_CORPORATE_COMMIT_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n activitylogfinance: [],\n error: {},\n};\n\nconst activitylogfinance = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_ACTIVITY_LOG_FINANCE_SUCCESS:\n return {\n ...state,\n activitylogfinance: action.payload.data,\n };\n\n case GET_ACTIVITY_LOG_FINANCE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_CORPORATE_COMMIT_SUCCESS:\n return {\n ...state,\n activitylogfinance: action.payload.data,\n };\n\n case GET_CORPORATE_COMMIT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n default:\n return state;\n }\n};\n\nexport default activitylogfinance;\n","import {\n GET_ACTIVITY_LOG_MARKETER_SUCCESS,\n GET_ACTIVITY_LOG_MARKETER_FAIL,\n GET_LAB_ACTIVITY_LOG_MARKETER_SUCCESS,\n GET_LAB_ACTIVITY_LOG_MARKETER_FAIL\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n activitylogmarketer: [],\n error: {},\n};\n\nconst activitylogmarketer = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_ACTIVITY_LOG_MARKETER_SUCCESS:\n return {\n ...state,\n activitylogmarketer: action.payload.data,\n };\n\n case GET_ACTIVITY_LOG_MARKETER_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_LAB_ACTIVITY_LOG_MARKETER_SUCCESS:\n return {\n ...state,\n activitylogmarketer: action.payload.data,\n };\n\n case GET_LAB_ACTIVITY_LOG_MARKETER_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n default:\n return state;\n }\n};\n\nexport default activitylogmarketer;\n","import {\n GET_CARTS_SUCCESS,\n GET_CARTS_FAIL,\n DELETE_CART_SUCCESS,\n DELETE_CART_FAIL,\n EMPTY_CART_SUCCESS,\n EMPTY_CART_FAIL,\n ADD_TO_CART_SUCCESS,\n ADD_TO_CART_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n carts: [],\n error: {},\n success: {},\n};\n\nconst carts = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_CARTS_SUCCESS:\n return {\n ...state,\n carts: action.payload.data,\n total_balance_sum: action.payload.total_balance_sum,\n };\n\n case GET_CARTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case EMPTY_CART_SUCCESS:\n return {\n ...state,\n carts: state.carts.filter(\n cart => cart.id.toString() !== action.payload.id.toString()\n ),\n };\n\n case EMPTY_CART_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case DELETE_CART_SUCCESS:\n console.log(\"reducer\", action.payload.id)\n return {\n ...state,\n carts: state.carts.filter(\n cart => cart.id.toString() !== action.payload.id.toString()\n ),\n };\n\n case DELETE_CART_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case ADD_TO_CART_SUCCESS:\n return {\n ...state,\n success: action.payload,\n };\n case ADD_TO_CART_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default carts;\n","import {\n GET_SAMPLE_COLLECTORS_SUCCESS,\n GET_SAMPLE_COLLECTORS_FAIL,\n ADD_SAMPLE_COLLECTOR_SUCCESS,\n ADD_SAMPLE_COLLECTOR_FAIL,\n UPDATE_SAMPLE_COLLECTOR_SUCCESS,\n UPDATE_SAMPLE_COLLECTOR_FAIL,\n DELETE_SAMPLE_COLLECTOR_SUCCESS,\n DELETE_SAMPLE_COLLECTOR_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n sampleCollectors: [],\n error: {},\n};\n\nconst sampleCollectors = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_SAMPLE_COLLECTORS_SUCCESS:\n return {\n ...state,\n sampleCollectors: action.payload.data,\n };\n\n case GET_SAMPLE_COLLECTORS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case ADD_SAMPLE_COLLECTOR_SUCCESS:\n return {\n ...state,\n sampleCollectors: [...state.sampleCollectors, action.payload],\n };\n\n case ADD_SAMPLE_COLLECTOR_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_SAMPLE_COLLECTOR_SUCCESS:\n return {\n ...state,\n sampleCollectors: state.sampleCollectors.map(sampleCollector =>\n sampleCollector.id.toString() === action.payload.id.toString()\n ? { sampleCollector, ...action.payload }\n : sampleCollector\n ),\n };\n\n case UPDATE_SAMPLE_COLLECTOR_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case DELETE_SAMPLE_COLLECTOR_SUCCESS:\n return {\n ...state,\n sampleCollectors: state.sampleCollectors.filter(\n sampleCollector =>\n sampleCollector.id.toString() !== action.payload.id.toString()\n ),\n };\n\n case DELETE_SAMPLE_COLLECTOR_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default sampleCollectors;\n","import {\n GET_SAMPLE_COLLECTION_IN_PROCESS_LIST_SUCCESS,\n GET_SAMPLE_COLLECTION_IN_PROCESS_LIST_FAIL,\n GET_SAMPLE_COLLECTION_COMPLETED_LIST_SUCCESS,\n GET_SAMPLE_COLLECTION_COMPLETED_LIST_FAIL,\n UPDATE_SAMPLE_COLLECTION_STATUS_SUCCESS,\n UPDATE_SAMPLE_COLLECTION_STATUS_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n sampleCollectorDatasInProcessList: [],\n sampleCollectorDatasCompletedList: [],\n error: {},\n};\n\nconst sampleCollectorDatas = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_SAMPLE_COLLECTION_IN_PROCESS_LIST_SUCCESS:\n return {\n ...state,\n sampleCollectorDatasInProcessList: action.payload.data,\n };\n\n case GET_SAMPLE_COLLECTION_IN_PROCESS_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_SAMPLE_COLLECTION_COMPLETED_LIST_SUCCESS:\n return {\n ...state,\n sampleCollectorDatasCompletedList: action.payload.data,\n };\n\n case GET_SAMPLE_COLLECTION_COMPLETED_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case UPDATE_SAMPLE_COLLECTION_STATUS_SUCCESS:\n return {\n ...state,\n sampleCollectorDatas: state.sampleCollectorDatas.map(\n sampleCollectorData =>\n sampleCollectorData.id.toString() === action.payload.id.toString()\n ? { sampleCollectorData, ...action.payload }\n : sampleCollectorData\n ),\n };\n\n case UPDATE_SAMPLE_COLLECTION_STATUS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default sampleCollectorDatas;\n","import {\n GET_QUALITY_CERTIFICATES_SUCCESS,\n GET_QUALITY_CERTIFICATES_FAIL,\n ADD_QUALITY_CERTIFICATE_SUCCESS,\n ADD_QUALITY_CERTIFICATE_FAIL,\n UPDATE_QUALITY_CERTIFICATE_SUCCESS,\n UPDATE_QUALITY_CERTIFICATE_FAIL,\n DELETE_QUALITY_CERTIFICATE_SUCCESS,\n DELETE_QUALITY_CERTIFICATE_FAIL,\n ADD_COLLECTIONPOINT_QUALITY_SUCCESS,\n ADD_COLLECTIONPOINT_QUALITY_FAIL,\n GET_LAB_PROFILE_SUCCESS,\n GET_LAB_PROFILE_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n qualityCertificates: [],\n labProfiles: [],\n error: {},\n};\n\nconst qualityCertificates = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_QUALITY_CERTIFICATES_SUCCESS:\n return {\n ...state,\n qualityCertificates: action.payload.data,\n };\n\n case GET_QUALITY_CERTIFICATES_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_LAB_PROFILE_SUCCESS:\n return {\n ...state,\n labProfiles: action.payload.data,\n };\n\n case GET_LAB_PROFILE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case ADD_COLLECTIONPOINT_QUALITY_SUCCESS:\n return {\n ...state,\n qualityCertificates: [...state.qualityCertificates, action.payload],\n };\n\n case ADD_COLLECTIONPOINT_QUALITY_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case ADD_QUALITY_CERTIFICATE_SUCCESS:\n return {\n ...state,\n qualityCertificates: [...state.qualityCertificates, action.payload],\n };\n\n case ADD_QUALITY_CERTIFICATE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_QUALITY_CERTIFICATE_SUCCESS:\n return {\n ...state,\n qualityCertificates: state.qualityCertificates.map(qualityCertificate =>\n qualityCertificate.id.toString() === action.payload.id.toString()\n ? { qualityCertificate, ...action.payload }\n : qualityCertificate\n ),\n };\n\n case UPDATE_QUALITY_CERTIFICATE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case DELETE_QUALITY_CERTIFICATE_SUCCESS:\n return {\n ...state,\n qualityCertificates: state.qualityCertificates.filter(\n qualityCertificate =>\n qualityCertificate.id.toString() !== action.payload.id.toString()\n ),\n };\n\n case DELETE_QUALITY_CERTIFICATE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default qualityCertificates;\n","import {\n GET_PAYMENT_STATUSS_SUCCESS,\n GET_PAYMENT_STATUSS_FAIL,\n GET_PAYMENTOUT_STATUSS_SUCCESS,\n GET_PAYMENTOUT_STATUSS_FAIL,\n GET_DEPOSIT_STATUSS_SUCCESS,\n GET_DEPOSIT_STATUSS_FAIL,\n GET_CREATEDOUT_STATUSS_SUCCESS,\n GET_CREATEDOUT_STATUSS_FAIL,\n GET_CCREATEDOUT_STATUSS_SUCCESS,\n GET_CREATEDOUTDETAIL_STATUSS_SUCCESS,\n GET_CREATEDOUTDETAIL_STATUSS_FAIL,\n GET_CCREATEDOUT_STATUSS_FAIL,\n GET_CLEAR_STATUSS_SUCCESS,\n GET_CLEAR_STATUSS_FAIL,\n GET_PAYMENTOUT_CLEAR_STATUSS_SUCCESS,\n GET_PAYMENTOUT_CLEAR_STATUSS_FAIL,\n GET_BOUNCEDIN_STATUSS_SUCCESS,\n GET_BOUNCEDIN_STATUSS_FAIL,\n GET_BOUNCED_STATUSS_SUCCESS,\n GET_BOUNCED_STATUSS_FAIL,\n UPDATE_PAYMENT_STATUS_SUCCESS,\n UPDATE_PAYMENT_STATUS_FAIL,\n UPDATE_PAYMENTIN_STATUS_SUCCESS,\n UPDATE_PAYMENTIN_STATUS_FAIL,\n UPDATE_PAYMENTOUT_STATUS_SUCCESS,\n UPDATE_PAYMENTOUT_STATUS_FAIL,\n UPDATE_PAYMENTOUTCREATED_STATUS_SUCCESS,\n UPDATE_PAYMENTOUTCREATED_STATUS_FAIL,\n UPDATE_PAYMENTOUTCCREATED_STATUS_SUCCESS,\n UPDATE_PAYMENTOUTCCREATED_STATUS_FAIL,\n UPDATE_PAYMENTINBOUNCED_STATUS_SUCCESS,\n UPDATE_PAYMENTINBOUNCED_STATUS_FAIL,\n // ADD_OUT_PAYMENT_SUCCESS,\n // ADD_OUT_PAYMENT_FAIL,\n GET_LABS_SUCCESS,\n GET_LABS_FAIL,\n GET_DONORS_SUCCESS,\n GET_DONORS_FAIL,\n GET_BANKS_SUCCESS,\n GET_BANKS_FAIL,\n GET_BANK_ACCOUNTS_SUCCESS,\n GET_BANK_ACCOUNTS_FAIL,\n DELETE_PAYMENTOUT_SUCCESS,\n DELETE_PAYMENTOUT_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n paymentStatuss: [],\n paymentBouncedStatuss: [],\n paymentBouncedInStatuss: [],\n corporatePaymentStatuss: [],\n // outPayment: [],\n paymentCreatedStatuss: [],\n paymentOutCreatedStatuss: [],\n paymentOutStatuss: [],\n corporatepaymentOutStatuss:[],\n paymentInStatuss: [],\n bankAccounts: [],\n paymentInBouncedStatuss: [],\n banks: [],\n labs: [],\n donors: {},\n paymentout: [],\n error: {},\n};\n\nconst paymentStatuss = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_BANK_ACCOUNTS_SUCCESS:\n return {\n ...state,\n bankAccounts: action.payload.data,\n };\n\n case GET_BANK_ACCOUNTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_BANKS_SUCCESS:\n return {\n ...state,\n banks: action.payload.data,\n };\n\n case GET_BANKS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_LABS_SUCCESS:\n return {\n ...state,\n labs: action.payload.data,\n };\n \n case GET_LABS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_DONORS_SUCCESS:\n return {\n ...state,\n donors: action.payload.data,\n };\n \n case GET_DONORS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_PAYMENT_STATUSS_SUCCESS:\n return {\n ...state,\n paymentStatuss: action.payload.data,\n };\n\n case GET_PAYMENT_STATUSS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_PAYMENTOUT_STATUSS_SUCCESS:\n return {\n ...state,\n paymentOutStatuss: action.payload.data,\n };\n\n case GET_PAYMENTOUT_STATUSS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_DEPOSIT_STATUSS_SUCCESS:\n return {\n ...state,\n paymentStatuss: action.payload.data,\n };\n \n case GET_DEPOSIT_STATUSS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_CREATEDOUT_STATUSS_SUCCESS:\n \n return {\n ...state,\n paymentCreatedStatuss: action.payload.data,\n };\n \n case GET_CREATEDOUT_STATUSS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_CREATEDOUTDETAIL_STATUSS_SUCCESS:\n \n return {\n ...state,\n paymentCreatedStatuss: action.payload.data,\n };\n \n case GET_CREATEDOUTDETAIL_STATUSS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_CCREATEDOUT_STATUSS_SUCCESS:\n console.log('Action payload in reducer:',action.payload);\n return {\n ...state,\n paymentStatuss: action.payload.data,\n };\n \n case GET_CCREATEDOUT_STATUSS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_PAYMENTOUT_CLEAR_STATUSS_SUCCESS:\n return {\n ...state,\n paymentStatuss: action.payload.data,\n };\n \n case GET_PAYMENTOUT_CLEAR_STATUSS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_CLEAR_STATUSS_SUCCESS:\n return {\n ...state,\n paymentStatuss: action.payload.data,\n };\n \n case GET_CLEAR_STATUSS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_BOUNCED_STATUSS_SUCCESS:\n return {\n ...state,\n paymentBouncedStatuss: action.payload.data,\n };\n \n case GET_BOUNCED_STATUSS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n \n case GET_BOUNCEDIN_STATUSS_SUCCESS:\n return {\n ...state,\n paymentBouncedInStatuss: action.payload.data,\n };\n \n case GET_BOUNCEDIN_STATUSS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_PAYMENT_STATUS_SUCCESS:\n return {\n ...state,\n paymentStatuss: state.paymentStatuss.map(paymentStatus =>\n paymentStatus.id.toString() === action.payload.id.toString()\n ? { paymentStatus, ...action.payload }\n : paymentStatus\n ),\n };\n\n case UPDATE_PAYMENT_STATUS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case UPDATE_PAYMENTOUT_STATUS_SUCCESS:\n return {\n ...state,\n paymentOutStatuss: state.paymentOutStatuss.map(paymentOutStatus =>\n paymentOutStatus.id.toString() === action.payload.id.toString()\n ? { paymentOutStatus, ...action.payload }\n : paymentOutStatus\n ),\n };\n\n case UPDATE_PAYMENTOUT_STATUS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_PAYMENTIN_STATUS_SUCCESS:\n return {\n ...state,\n paymentInStatuss: state.paymentInStatuss.map(paymentInStatus =>\n paymentInStatus.id.toString() === action.payload.id.toString()\n ? { paymentInStatus, ...action.payload }\n : paymentInStatus\n ),\n };\n\n case UPDATE_PAYMENTIN_STATUS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_PAYMENTOUTCREATED_STATUS_SUCCESS:\n return {\n ...state,\n paymentOutCreatedStatus: state.paymentInStatuss.map(paymentOutCreatedStatus =>\n paymentOutCreatedStatus.id.toString() === action.payload.id.toString()\n ? { paymentOutCreatedStatus, ...action.payload }\n : paymentOutCreatedStatus\n ),\n };\n\n case UPDATE_PAYMENTOUTCREATED_STATUS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_PAYMENTOUTCCREATED_STATUS_SUCCESS:\n return {\n ...state,\n paymentOutCreatedStatus: state.paymentInStatuss.map(paymentOutCreatedStatus =>\n paymentOutCreatedStatus.id.toString() === action.payload.id.toString()\n ? { paymentOutCreatedStatus, ...action.payload }\n : paymentOutCreatedStatus\n ),\n };\n\n case UPDATE_PAYMENTOUTCCREATED_STATUS_FAIL:\n return {\n ...state,\n error: action.payload,\n }; \n \n case UPDATE_PAYMENTINBOUNCED_STATUS_SUCCESS:\n return {\n ...state,\n paymentInBouncedStatuss: state.paymentInBouncedStatuss.map(paymentInBouncedStatus =>\n paymentInBouncedStatus.id.toString() === action.payload.id.toString()\n ? { paymentInBouncedStatus, ...action.payload }\n : paymentInBouncedStatus\n ),\n };\n\n case UPDATE_PAYMENTINBOUNCED_STATUS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n // case ADD_OUT_PAYMENT_SUCCESS:\n // return {\n // ...state,\n // outPayments: [...state.outPayments, action.payload.data],\n // };\n \n // case ADD_OUT_PAYMENT_FAIL:\n // return {\n // ...state,\n // error: action.payload,\n // };\n\n case DELETE_PAYMENTOUT_SUCCESS:\n return {\n ...state,\n paymentouts: state.paymentouts.filter(\n paymentout =>\n paymentout.id.toString() !== action.payload.id.toString()\n ),\n };\n\n case DELETE_PAYMENTOUT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n \n default:\n return state;\n }\n};\n\nexport default paymentStatuss;\n","import {\n GET_ADVERTISEMENTS_SUCCESS,\n GET_ADVERTISEMENTS_FAIL,\n ADD_ADVERTISEMENT_SUCCESS,\n ADD_ADVERTISEMENT_FAIL,\n UPDATE_ADVERTISEMENT_SUCCESS,\n UPDATE_ADVERTISEMENT_FAIL,\n DELETE_ADVERTISEMENT_SUCCESS,\n DELETE_ADVERTISEMENT_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n advertisements: [],\n error: {},\n};\n\nconst advertisements = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_ADVERTISEMENTS_SUCCESS:\n return {\n ...state,\n advertisements: action.payload.data,\n };\n\n case GET_ADVERTISEMENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case ADD_ADVERTISEMENT_SUCCESS:\n return {\n ...state,\n advertisements: [...state.advertisements, action.payload],\n };\n\n case ADD_ADVERTISEMENT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_ADVERTISEMENT_SUCCESS:\n return {\n ...state,\n advertisements: state.advertisements.map(advertisement =>\n advertisement.id.toString() === action.payload.id.toString()\n ? { advertisement, ...action.payload }\n : advertisement\n ),\n };\n\n case UPDATE_ADVERTISEMENT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case DELETE_ADVERTISEMENT_SUCCESS:\n return {\n ...state,\n advertisements: state.advertisements.filter(\n advertisement =>\n advertisement.id.toString() !== action.payload.id.toString()\n ),\n };\n\n case DELETE_ADVERTISEMENT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default advertisements;\n","import {\n GET_ADVERTISEMENT_PRICE_LISTS_SUCCESS,\n GET_ADVERTISEMENT_PRICE_LISTS_FAIL,\n ADD_ADVERTISEMENT_PRICE_LIST_SUCCESS,\n ADD_ADVERTISEMENT_PRICE_LIST_FAIL,\n UPDATE_ADVERTISEMENT_PRICE_LIST_SUCCESS,\n UPDATE_ADVERTISEMENT_PRICE_LIST_FAIL,\n DELETE_ADVERTISEMENT_PRICE_LIST_SUCCESS,\n DELETE_ADVERTISEMENT_PRICE_LIST_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n advertisementPriceLists: [],\n error: {},\n};\n\nconst advertisementPriceLists = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_ADVERTISEMENT_PRICE_LISTS_SUCCESS:\n return {\n ...state,\n advertisementPriceLists: action.payload.data,\n };\n\n case GET_ADVERTISEMENT_PRICE_LISTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case ADD_ADVERTISEMENT_PRICE_LIST_SUCCESS:\n return {\n ...state,\n advertisementPriceLists: [...state.advertisementPriceLists, action.payload],\n };\n\n case ADD_ADVERTISEMENT_PRICE_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_ADVERTISEMENT_PRICE_LIST_SUCCESS:\n return {\n ...state,\n advertisementPriceLists: state.advertisementPriceLists.map(advertisementPriceList =>\n advertisementPriceList.id.toString() === action.payload.id.toString()\n ? { advertisementPriceList, ...action.payload }\n : advertisementPriceList\n ),\n };\n\n case UPDATE_ADVERTISEMENT_PRICE_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case DELETE_ADVERTISEMENT_PRICE_LIST_SUCCESS:\n return {\n ...state,\n advertisementPriceLists: state.advertisementPriceLists.filter(\n advertisementPriceList =>\n advertisementPriceList.id.toString() !== action.payload.id.toString()\n ),\n };\n\n case DELETE_ADVERTISEMENT_PRICE_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default advertisementPriceLists;\n","import {\n GET_ADVERTISEMENT_LIVES_SUCCESS,\n GET_ADVERTISEMENT_LIVES_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n advertisementLives: [],\n error: {},\n};\n\nconst advertisementLives = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_ADVERTISEMENT_LIVES_SUCCESS:\n return {\n ...state,\n advertisementLives: action.payload.data,\n };\n\n case GET_ADVERTISEMENT_LIVES_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default advertisementLives;\n","import {\n // GET_ADVERTISEMENT_PRICE_LISTS_SUCCESS,\n // GET_ADVERTISEMENT_PRICE_LISTS_FAIL,\n GET_LAB_ADVERTISEMENTS_SUCCESS,\n GET_LAB_ADVERTISEMENTS_FAIL,\n ADD_LAB_ADVERTISEMENT_SUCCESS,\n ADD_LAB_ADVERTISEMENT_FAIL,\n UPDATE_LAB_ADVERTISEMENT_SUCCESS,\n UPDATE_LAB_ADVERTISEMENT_FAIL,\n DELETE_LAB_ADVERTISEMENT_SUCCESS,\n DELETE_LAB_ADVERTISEMENT_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n labAdvertisements: [],\n error: {},\n};\n\nconst labAdvertisements = (state = INIT_STATE, action) => {\n switch (action.type) {\n \n // case GET_ADVERTISEMENT_PRICE_LISTS_SUCCESS:\n // return {\n // ...state,\n // labAdvertisements: action.payload.data,\n // };\n\n // case GET_ADVERTISEMENT_PRICE_LISTS_FAIL:\n // return {\n // ...state,\n // error: action.payload,\n // };\n case GET_LAB_ADVERTISEMENTS_SUCCESS:\n return {\n ...state,\n labAdvertisements: action.payload.data,\n };\n\n case GET_LAB_ADVERTISEMENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case ADD_LAB_ADVERTISEMENT_SUCCESS:\n return {\n ...state,\n labAdvertisements: [...state.labAdvertisements, action.payload],\n };\n\n case ADD_LAB_ADVERTISEMENT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_LAB_ADVERTISEMENT_SUCCESS:\n return {\n ...state,\n labAdvertisements: state.labAdvertisements.map(labAdvertisement =>\n labAdvertisement.id.toString() === action.payload.id.toString()\n ? { labAdvertisement, ...action.payload }\n : labAdvertisement\n ),\n };\n\n case UPDATE_LAB_ADVERTISEMENT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case DELETE_LAB_ADVERTISEMENT_SUCCESS:\n return {\n ...state,\n labAdvertisements: state.labAdvertisements.filter(\n labAdvertisement =>\n labAdvertisement.id.toString() !== action.payload.id.toString()\n ),\n };\n\n case DELETE_LAB_ADVERTISEMENT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default labAdvertisements;\n","import {\n GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED_SUCCESS,\n GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED_FAIL,\n GET_LAB_ADVERTISEMENT_REQUESTS_SUCCESS,\n GET_LAB_ADVERTISEMENT_REQUESTS_FAIL,\n UPDATE_LAB_ADVERTISEMENT_REQUEST_SUCCESS,\n UPDATE_LAB_ADVERTISEMENT_REQUEST_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n labAdvertisementRequests: [],\n error: {},\n};\n\nconst labAdvertisementRequests = (state = INIT_STATE, action) => {\n switch (action.type) {\n \n case GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED_SUCCESS:\n return {\n ...state,\n labAdvertisementRequests: action.payload.data,\n };\n\n case GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_LAB_ADVERTISEMENT_REQUESTS_SUCCESS:\n return {\n ...state,\n labAdvertisementRequests: action.payload.data,\n };\n\n case GET_LAB_ADVERTISEMENT_REQUESTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_LAB_ADVERTISEMENT_REQUEST_SUCCESS:\n return {\n ...state,\n labAdvertisementRequests: state.labAdvertisementRequests.map(labAdvertisementRequest =>\n labAdvertisementRequest.id.toString() === action.payload.id.toString()\n ? { labAdvertisementRequest, ...action.payload }\n : labAdvertisementRequest\n ),\n };\n\n case UPDATE_LAB_ADVERTISEMENT_REQUEST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default labAdvertisementRequests;\n","import {\n GET_LABS_LIST_SUCCESS,\n GET_LABS_LIST_FAIL,\n GET_DONORS_LIST_SUCCESS,\n GET_DONORS_LIST_FAIL,\n GET_DONORSA_SUCCESS,\n GET_DONORSA_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n labsList: [],\n donors: [],\n error: {},\n};\n\nconst labs = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_LABS_LIST_SUCCESS:\n return {\n ...state,\n labsList: action.payload.data,\n };\n\n case GET_LABS_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_DONORS_LIST_SUCCESS:\n return {\n ...state,\n labsList: action.payload.data,\n };\n\n case GET_DONORS_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_DONORSA_SUCCESS:\n return {\n ...state,\n labsList: action.payload.data,\n };\n \n case GET_DONORSA_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default labs;\n","import {\n GET_SHARED_PERCENTAGE_PENDING_FEE_SUCCESS,\n GET_SHARED_PERCENTAGE_PENDING_FEE_FAIL,\n GET_SHARED_PERCENTAGE_APPROVED_FEE_SUCCESS,\n GET_SHARED_PERCENTAGE_APPROVED_FEE_FAIL,\n UPDATE_SHARED_PERCENTAGE_PENDING_FEE_SUCCESS,\n UPDATE_SHARED_PERCENTAGE_PENDING_FEE_FAIL,\n UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE_SUCCESS,\n UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n sharedPercentagePendingFeeTests: [],\n sharedPercentageApprovedFeeTests: [],\n error: {},\n};\n\nconst sharedPercentagePendingFeeTests = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_SHARED_PERCENTAGE_PENDING_FEE_SUCCESS:\n return {\n ...state,\n sharedPercentagePendingFeeTests: action.payload.data,\n };\n\n case GET_SHARED_PERCENTAGE_PENDING_FEE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_SHARED_PERCENTAGE_APPROVED_FEE_SUCCESS:\n return {\n ...state,\n sharedPercentageApprovedFeeTests: action.payload.data,\n };\n\n case GET_SHARED_PERCENTAGE_APPROVED_FEE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n \n\n case UPDATE_SHARED_PERCENTAGE_PENDING_FEE_SUCCESS:\n return {\n ...state,\n sharedPercentagePendingFeeTests: state.sharedPercentagePendingFeeTests.map(sharedPercentagePendingFeeTest =>\n sharedPercentagePendingFeeTest.id.toString() === action.payload.id.toString()\n ? { sharedPercentagePendingFeeTest, ...action.payload }\n : sharedPercentagePendingFeeTest\n ),\n };\n\n case UPDATE_SHARED_PERCENTAGE_PENDING_FEE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE_SUCCESS:\n return {\n ...state,\n sharedPercentagePendingFeeTests: state.sharedPercentagePendingFeeTests.map(sharedPercentageAllPendingFeeTest =>\n sharedPercentageAllPendingFeeTest.id.toString() === action.payload.id.toString()\n ? { sharedPercentageAllPendingFeeTest, ...action.payload }\n : sharedPercentageAllPendingFeeTest\n ),\n };\n\n case UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default sharedPercentagePendingFeeTests;\n","import {\n GET_DISCOUNT_LABHAZIRS_SUCCESS,\n GET_DISCOUNT_LABHAZIRS_FAIL,\n UPDATE_DISCOUNT_LABHAZIR_SUCCESS,\n UPDATE_DISCOUNT_LABHAZIR_FAIL,\n UPDATE_DISCOUNT_ALL_LABHAZIR_SUCCESS,\n UPDATE_DISCOUNT_ALL_LABHAZIR_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n discountLabHazirs: [],\n error: {},\n};\n\nconst discountLabHazirs = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_DISCOUNT_LABHAZIRS_SUCCESS:\n return {\n ...state,\n discountLabHazirs: action.payload.data,\n };\n\n case GET_DISCOUNT_LABHAZIRS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_DISCOUNT_LABHAZIR_SUCCESS:\n return {\n ...state,\n discountLabHazirs: state.discountLabHazirs.map(discountLabHazir =>\n discountLabHazir.id.toString() === action.payload.id.toString()\n ? { discountLabHazir, ...action.payload }\n : discountLabHazir\n ),\n };\n\n case UPDATE_DISCOUNT_LABHAZIR_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_DISCOUNT_ALL_LABHAZIR_SUCCESS:\n return {\n ...state,\n discountAllLabHazirs: state.discountAllLabHazirs.map(discountAllLabHazir =>\n discountAllLabHazir.id.toString() === action.payload.id.toString()\n ? { discountAllLabHazir, ...action.payload }\n : discountAllLabHazir\n ),\n };\n\n case UPDATE_DISCOUNT_ALL_LABHAZIR_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default discountLabHazirs;\n","import {\n GET_LABS_LIST_SUCCESS,\n GET_LABS_LIST_FAIL,\n GET_LABS_AUDIT_LIST_SUCCESS,\n GET_LABS_AUDIT_LIST_FAIL,\n GET_DONORS_LIST_SUCCESS,\n GET_DONORS_LIST_FAIL,\n GET_DONORSA_SUCCESS,\n GET_DONORSA_FAIL,\n GET_LC_LIST_SUCCESS,\n GET_LC_LIST_FAIL,\n GET_CORPORATE_LIST_SUCCESS,\n GET_CORPORATE_LIST_FAIL,\n GET_LABS_ALL_AUDIT_LIST_SUCCESS,\n GET_LABS_ALL_AUDIT_LIST_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n labsList: [],\n donors: [],\n error: {},\n labaudit:[]\n};\n\nconst labs = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_LABS_LIST_SUCCESS:\n return {\n ...state,\n labsList: action.payload.data,\n };\n\n case GET_LABS_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_LABS_AUDIT_LIST_SUCCESS:\n return {\n ...state,\n labsList: action.payload.data,\n };\n\n case GET_LABS_AUDIT_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_LABS_ALL_AUDIT_LIST_SUCCESS:\n return {\n ...state,\n labaudit: action.payload.data,\n };\n\n case GET_LABS_ALL_AUDIT_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_DONORS_LIST_SUCCESS:\n return {\n ...state,\n labsList: action.payload.data,\n };\n\n case GET_DONORS_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_CORPORATE_LIST_SUCCESS:\n return {\n ...state,\n labsList: action.payload.data,\n };\n\n case GET_CORPORATE_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n ///////////////\n case GET_LC_LIST_SUCCESS:\n return {\n ...state,\n labsList: action.payload.data,\n };\n\n case GET_LC_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n /////////////\n case GET_DONORSA_SUCCESS:\n return {\n ...state,\n labsList: action.payload.data,\n };\n \n case GET_DONORSA_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default labs;\n","import {\n GET_DISCOUNT_LAB_SUCCESS,\n GET_DISCOUNT_LAB_FAIL,\n UPDATE_DISCOUNT_LAB_SUCCESS,\n UPDATE_DISCOUNT_LAB_FAIL,\n UPDATE_DISCOUNT_ALL_LAB_SUCCESS,\n UPDATE_DISCOUNT_ALL_LAB_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n discountLabs: [],\n error: {},\n};\n\nconst discountlab = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_DISCOUNT_LAB_SUCCESS:\n return {\n ...state,\n discountLabs: action.payload.data,\n };\n\n case GET_DISCOUNT_LAB_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case UPDATE_DISCOUNT_LAB_SUCCESS:\n return {\n ...state,\n discountLabs: state.discountLabs.map(discountLabs =>\n discountLabs.id.toString() === action.payload.id.toString()\n ? { discountLabs, ...action.payload }\n : discountLabs\n ),\n };\n case UPDATE_DISCOUNT_LAB_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case UPDATE_DISCOUNT_ALL_LAB_SUCCESS:\n return {\n ...state,\n discountLabs: state.discountLabs.map(discountLabs =>\n discountLabs.id.toString() === action.payload.id.toString()\n ? { discountLabs, ...action.payload }\n : discountLabs\n ),\n };\n \n case UPDATE_DISCOUNT_ALL_LAB_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default discountlab;\n","import {\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n territoriesList: [],\n error: {},\n};\n\nconst territoriesList = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_TERRITORIES_LIST_SUCCESS:\n return {\n ...state,\n territoriesList: action.payload.data,\n };\n\n case GET_TERRITORIES_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\n\nexport default territoriesList;\n","import {\n GET_LAB_NAMES_LIST_SUCCESS,\n GET_LAB_NAMES_LIST_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n labNamesList: [],\n error: {},\n};\n\nconst labNamesList = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_LAB_NAMES_LIST_SUCCESS:\n return {\n ...state,\n labNamesList: action.payload.data,\n };\n\n case GET_LAB_NAMES_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\n\nexport default labNamesList;\n","import {\n GET_ONLY_MEDICAL_LIST_SUCCESS,\n GET_ONLY_MEDICAL_LIST_FAIL,\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n onlyMedicalTestList: [],\n territoriesList: [],\n error: {},\n};\n\nconst onlyMedicalTestList = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_ONLY_MEDICAL_LIST_SUCCESS:\n return {\n ...state,\n onlyMedicalTestList: action.payload.data,\n };\n\n case GET_ONLY_MEDICAL_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_TERRITORIES_LIST_SUCCESS:\n return {\n ...state,\n territoriesList: action.payload.data,\n };\n\n case GET_TERRITORIES_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\n\nexport default onlyMedicalTestList;\n","import {\n GET_CSR_CENTRAL_TERRITORY_LIST_SUCCESS,\n GET_CSR_CENTRAL_TERRITORY_LIST_FAIL,\n GET_CSR_SOUTH_TERRITORY_LIST_SUCCESS,\n GET_CSR_SOUTH_TERRITORY_LIST_FAIL,\n GET_CSR_NORTH_TERRITORY_LIST_SUCCESS,\n GET_CSR_NORTH_TERRITORY_LIST_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n csrCentralTerritoryList: [],\n csrSouthTerritoryList: [],\n csrNorthTerritoryList: [],\n error: {},\n};\n\nconst csrTerritoryList = (state = INIT_STATE, action) => {\n switch (action.type) {\n // central\n case GET_CSR_CENTRAL_TERRITORY_LIST_SUCCESS:\n return {\n ...state,\n csrCentralTerritoryList: action.payload.data,\n };\n\n case GET_CSR_CENTRAL_TERRITORY_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n // South\n case GET_CSR_SOUTH_TERRITORY_LIST_SUCCESS:\n return {\n ...state,\n csrSouthTerritoryList: action.payload.data,\n };\n \n case GET_CSR_SOUTH_TERRITORY_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n // North\n case GET_CSR_NORTH_TERRITORY_LIST_SUCCESS:\n return {\n ...state,\n csrNorthTerritoryList: action.payload.data,\n };\n \n case GET_CSR_NORTH_TERRITORY_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n \n default:\n return state;\n }\n};\n\nexport default csrTerritoryList;\n","import {\n GET_AUDITOR_CENTRAL_TERRITORY_LIST_SUCCESS,\n GET_AUDITOR_CENTRAL_TERRITORY_LIST_FAIL,\n GET_AUDITOR_SOUTH_TERRITORY_LIST_SUCCESS,\n GET_AUDITOR_SOUTH_TERRITORY_LIST_FAIL,\n GET_AUDITOR_NORTH_TERRITORY_LIST_SUCCESS,\n GET_AUDITOR_NORTH_TERRITORY_LIST_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n auditorCentralTerritoryList: [],\n auditorSouthTerritoryList: [],\n auditorNorthTerritoryList: [],\n error: {},\n};\n\nconst auditorTerritoryList = (state = INIT_STATE, action) => {\n switch (action.type) {\n // central\n case GET_AUDITOR_CENTRAL_TERRITORY_LIST_SUCCESS:\n return {\n ...state,\n auditorCentralTerritoryList: action.payload.data,\n };\n\n case GET_AUDITOR_CENTRAL_TERRITORY_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n // South\n case GET_AUDITOR_SOUTH_TERRITORY_LIST_SUCCESS:\n return {\n ...state,\n auditorSouthTerritoryList: action.payload.data,\n };\n \n case GET_AUDITOR_SOUTH_TERRITORY_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n // North\n case GET_AUDITOR_NORTH_TERRITORY_LIST_SUCCESS:\n return {\n ...state,\n auditorNorthTerritoryList: action.payload.data,\n };\n \n case GET_AUDITOR_NORTH_TERRITORY_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n \n default:\n return state;\n }\n};\n\nexport default auditorTerritoryList;\n","import {\n GET_DISCOUNT_LABHAZIRTOLABS_SUCCESS,\n GET_DISCOUNT_LABHAZIRTOLABS_FAIL,\n UPDATE_DISCOUNT_LABHAZIRTOLAB_SUCCESS,\n UPDATE_DISCOUNT_LABHAZIRTOLAB_FAIL,\n UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB_SUCCESS,\n UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n discountLabHazirToLabs: [],\n error: {},\n};\n\nconst discountLabHazirToLabs = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_DISCOUNT_LABHAZIRTOLABS_SUCCESS:\n return {\n ...state,\n discountLabHazirToLabs: action.payload.data,\n };\n\n case GET_DISCOUNT_LABHAZIRTOLABS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_DISCOUNT_LABHAZIRTOLAB_SUCCESS:\n return {\n ...state,\n discountLabHazirToLabs: state.discountLabHazirToLabs.map(discountLabHazirToLab =>\n discountLabHazirToLab.id.toString() === action.payload.id.toString()\n ? { discountLabHazirToLab, ...action.payload }\n : discountLabHazirToLab\n ),\n };\n\n case UPDATE_DISCOUNT_LABHAZIRTOLAB_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB_SUCCESS:\n return {\n ...state,\n discountLabHazirToLabs: state.discountLabHazirToLabs.map(discountAllLabHazir =>\n discountAllLabHazir.id.toString() === action.payload.id.toString()\n ? { discountAllLabHazir, ...action.payload }\n : discountAllLabHazir\n ),\n };\n\n case UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default discountLabHazirToLabs;\n","import {\n GET_REFERREL_FEES_SUCCESS,\n GET_REFERREL_FEES_FAIL,\n GET_PUT_REFERREL_FEES_SUCCESS,\n GET_PUT_REFERREL_FEES_FAIL,\n UPDATE_REFERREL_FEE_SUCCESS,\n UPDATE_REFERREL_FEE_FAIL,\n UPDATE_REFERREL_ALL_FEE_SUCCESS,\n UPDATE_REFERREL_ALL_FEE_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n referrelFeeLabs: [],\n error: {},\n};\n\nconst referrelFeeLabs = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_REFERREL_FEES_SUCCESS:\n return {\n ...state,\n referrelFeeLabs: action.payload.data,\n };\n\n case GET_REFERREL_FEES_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n \n case GET_PUT_REFERREL_FEES_SUCCESS:\n return {\n ...state,\n referrelFeeLabs: action.payload.data,\n };\n\n case GET_PUT_REFERREL_FEES_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_REFERREL_FEE_SUCCESS:\n return {\n ...state,\n referrelFeeLabs: state.referrelFeeLabs.map(referrelFeeLab =>\n referrelFeeLab.id.toString() === action.payload.id.toString()\n ? { referrelFeeLab, ...action.payload }\n : referrelFeeLab\n ),\n };\n\n case UPDATE_REFERREL_FEE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n\n case UPDATE_REFERREL_ALL_FEE_SUCCESS:\n return {\n ...state,\n referrelFeeLabs: state.referrelFeeLabs.map(referrelAllFee =>\n referrelAllFee.id.toString() === action.payload.id.toString()\n ? { referrelAllFee, ...action.payload }\n : referrelAllFee\n ),\n };\n\n case UPDATE_REFERREL_ALL_FEE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n // case UPDATE_ALL_LAB_SHARE_SUCCESS:\n // return {\n // ...state,\n // labShare: action.payload.data,\n // };\n \n // case UPDATE_ALL_LAB_SHARE_FAIL:\n // return {\n // ...state,\n // error: action.payload,\n // };\n\n default:\n return state;\n }\n};\n\nexport default referrelFeeLabs;\n","import {\n GET_FEEDBACKS_SUCCESS,\n GET_FEEDBACKS_FAIL,\n GET_LAB_PROFILE_SUCCESS,\n GET_LAB_PROFILE_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n feedbacks: [],\n labProfile: [],\n error: {},\n};\n\nconst feedbacks = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_FEEDBACKS_SUCCESS:\n return {\n ...state,\n feedbacks: action.payload,\n };\n\n case GET_FEEDBACKS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_LAB_PROFILE_SUCCESS:\n return {\n ...state,\n labProfile: action.payload.data,\n };\n \n case GET_LAB_PROFILE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n default:\n return state;\n }\n};\n\nexport default feedbacks;\n","import {\n GET_LABS_RATING_SUCCESS,\n GET_LABS_RATING_FAIL,\n\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n labsRating: [],\n error: {},\n};\n\nconst labsRating = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_LABS_RATING_SUCCESS:\n return {\n ...state,\n labsRating: action.payload,\n };\n\n case GET_LABS_RATING_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n default:\n return state;\n }\n};\n\nexport default labsRating;\n","import {\n GET_LABS_TESTING_SUCCESS,\n GET_LABS_TESTING_FAIL,\n\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n labsTesting: [],\n error: {},\n};\n\nconst labsTesting = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_LABS_TESTING_SUCCESS:\n return {\n ...state,\n labsTesting: action.payload,\n };\n\n case GET_LABS_TESTING_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n default:\n return state;\n }\n};\n\nexport default labsTesting;\n","import {\n GET_TEST_APPOINTMENTS_PENDING_LIST_SUCCESS,\n GET_TEST_APPOINTMENTS_PENDING_LIST_FAIL,\n GET_TEST_APPOINTMENTS_IN_PROCESS_LIST_SUCCESS,\n GET_TEST_APPOINTMENTS_IN_PROCESS_LIST_FAIL,\n GET_TEST_APPOINTMENTS_COMPLETED_LIST_SUCCESS,\n GET_TEST_APPOINTMENTS_COMPLETED_LIST_FAIL,\n UPDATE_TEST_APPOINTMENT_SUCCESS,\n UPDATE_TEST_APPOINTMENT_FAIL,\n ADD_COLLECTIONPOINT_TESTAPPOINTMENT_SUCCESS,\n ADD_COLLECTIONPOINT_TESTAPPOINTMENT_FAIL,\n GET_LAB_PROFILE_SUCCESS,\n GET_LAB_PROFILE_FAIL,\n GET_LAB_TOKEN_FAIL,\n GET_LAB_TOKEN_SUCCESS,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n testAppointmentsPendingList: [],\n testAppointmentsInProcessList: [],\n testAppointmentsCompletedList: [],\n error: {},\n labProfiles: [],\n appointments: [], // Initialize appointments as an array\n lab: null, // Initialize lab to store lab data\n};\n\nconst testAppointments = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_LAB_PROFILE_SUCCESS:\n return {\n ...state,\n labProfiles: action.payload.data,\n };\n\n case GET_LAB_PROFILE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_LAB_TOKEN_SUCCESS:\n console.log('Success payload in reducer:', action.payload);\n return {\n ...state,\n lab: action.payload.lab, // Store the entire lab object\n appointments: action.payload.appointments, // Store appointments in state\n };\n\n case GET_LAB_TOKEN_FAIL:\n console.log('Error payload in reducer:', action.payload);\n return {\n ...state,\n error: action.payload, // Store the error in the state\n };\n\n case ADD_COLLECTIONPOINT_TESTAPPOINTMENT_SUCCESS:\n return {\n ...state,\n testAppointmentsPendingList: [...state.testAppointmentsPendingList, action.payload],\n };\n\n case ADD_COLLECTIONPOINT_TESTAPPOINTMENT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_TEST_APPOINTMENTS_PENDING_LIST_SUCCESS:\n return {\n ...state,\n testAppointmentsPendingList: action.payload.data,\n };\n\n case GET_TEST_APPOINTMENTS_PENDING_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_TEST_APPOINTMENTS_IN_PROCESS_LIST_SUCCESS:\n return {\n ...state,\n testAppointmentsInProcessList: action.payload.data,\n };\n\n case GET_TEST_APPOINTMENTS_IN_PROCESS_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_TEST_APPOINTMENTS_COMPLETED_LIST_SUCCESS:\n return {\n ...state,\n testAppointmentsCompletedList: action.payload.data,\n };\n\n case GET_TEST_APPOINTMENTS_COMPLETED_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case UPDATE_TEST_APPOINTMENT_SUCCESS:\n return {\n ...state,\n testAppointments: state.testAppointments.map(testAppointment =>\n testAppointment.id.toString() === action.payload.id.toString()\n ? { testAppointment, ...action.payload }\n : testAppointment\n ),\n };\n\n case UPDATE_TEST_APPOINTMENT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default testAppointments;\n","import {\n GET_PATIENT_TEST_APPOINTMENTS_LIST_SUCCESS,\n GET_PATIENT_TEST_APPOINTMENTS_LIST_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n patientTestAppointmentsList: [],\n error: {},\n};\n\nconst patientTestAppointments = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_PATIENT_TEST_APPOINTMENTS_LIST_SUCCESS:\n return {\n ...state,\n patientTestAppointmentsList: action.payload.data,\n };\n\n case GET_PATIENT_TEST_APPOINTMENTS_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default patientTestAppointments;\n","import {\n GET_B2B_REFERRED_PATIENTS_LIST_SUCCESS,\n GET_B2B_REFERRED_PATIENTS_LIST_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n b2bReferredPatientsList: [],\n error: {},\n};\n\nconst b2bReferredPatients = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_B2B_REFERRED_PATIENTS_LIST_SUCCESS:\n return {\n ...state,\n b2bReferredPatientsList: action.payload.data,\n };\n\n case GET_B2B_REFERRED_PATIENTS_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default b2bReferredPatients;\n","import {\n GET_LABS_SUCCESS,\n GET_LABS_FAIL,\n GET_B2B_LAB_SHARES_LIST_SUCCESS,\n GET_B2B_LAB_SHARES_LIST_FAIL,\n GET_B2B_SHARES_LAB_LIST_SUCCESS,\n GET_B2B_SHARES_LAB_LIST_FAIL,\n UPDATE_LAB_SHARE_SUCCESS,\n UPDATE_LAB_SHARE_FAIL,\n UPDATE_ALL_LAB_SHARE_SUCCESS,\n UPDATE_ALL_LAB_SHARE_FAIL,\n ADD_LAB_SHARE_SUCCESS,\n ADD_LAB_SHARE_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n b2bLabSharesList: [],\n labs: [],\n labShares: [],\n b2bLabShares: {},\n error: {},\n};\n\nconst b2bLabShares = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_LABS_SUCCESS:\n return {\n ...state,\n labs: action.payload.data,\n };\n\n case GET_LABS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_B2B_LAB_SHARES_LIST_SUCCESS:\n return {\n ...state,\n b2bLabSharesList: action.payload.data,\n };\n\n case GET_B2B_LAB_SHARES_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_B2B_SHARES_LAB_LIST_SUCCESS:\n return {\n ...state,\n b2bLabSharesList: action.payload.data,\n };\n\n case GET_B2B_SHARES_LAB_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case UPDATE_LAB_SHARE_SUCCESS:\n return {\n ...state,\n labShare: action.payload.data,\n };\n\n case UPDATE_LAB_SHARE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case UPDATE_ALL_LAB_SHARE_SUCCESS:\n return {\n ...state,\n labShare: action.payload.data,\n };\n\n case UPDATE_ALL_LAB_SHARE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case ADD_LAB_SHARE_SUCCESS:\n return {\n ...state,\n b2bLabShares: [...state.b2bLabShares, action.payload],\n };\n\n case ADD_LAB_SHARE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default b2bLabShares;\n","import {\n // GET_B2B_PAYMENTS_SUCCESS,\n // GET_B2B_PAYMENTS_FAIL,\n ADD_B2B_PAYMENT_SUCCESS,\n ADD_B2B_PAYMENT_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n b2bPayments: [],\n error: {},\n};\n\nconst b2bPayments = (state = INIT_STATE, action) => {\n switch (action.type) {\n // case GET_B2B_PAYMENTS_SUCCESS:\n // return {\n // ...state,\n // b2bPayments: action.payload.data,\n // };\n\n // case GET_B2B_PAYMENTS_FAIL:\n // return {\n // ...state,\n // error: action.payload,\n // };\n\n case ADD_B2B_PAYMENT_SUCCESS:\n return {\n ...state,\n b2bPayments: [...state.b2bPayments, action.payload.data],\n };\n\n case ADD_B2B_PAYMENT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default b2bPayments;\n","import {\n GET_DONOR_REFERRED_APPOINTMENTS_LIST_SUCCESS,\n GET_DONOR_REFERRED_APPOINTMENTS_LIST_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n donorReferredAppointmentsList: [],\n error: {},\n};\n\nconst donorReferredAppointments = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_DONOR_REFERRED_APPOINTMENTS_LIST_SUCCESS:\n return {\n ...state,\n donorReferredAppointmentsList: action.payload.data,\n };\n\n case GET_DONOR_REFERRED_APPOINTMENTS_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default donorReferredAppointments;\n","import {\n // GET_DONOR_PAYMENTS_SUCCESS,\n // GET_DONOR_PAYMENTS_FAIL,\n ADD_DONOR_PAYMENT_SUCCESS,\n ADD_DONOR_PAYMENT_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n donorPayments: [],\n error: {},\n};\n\nconst donorPayments = (state = INIT_STATE, action) => {\n switch (action.type) {\n // case GET_DONOR_PAYMENTS_SUCCESS:\n // return {\n // ...state,\n // donorPayments: action.payload.data,\n // };\n\n // case GET_DONOR_PAYMENTS_FAIL:\n // return {\n // ...state,\n // error: action.payload,\n // };\n\n case ADD_DONOR_PAYMENT_SUCCESS:\n return {\n ...state,\n donorPayments: [...state.donorPayments, action.payload.data],\n };\n\n case ADD_DONOR_PAYMENT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default donorPayments;\n","import {\n GET_B2B_ALL_CLIENTS_LIST_SUCCESS,\n GET_B2B_ALL_CLIENTS_LIST_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n b2bAllClientsList: [],\n error: {},\n};\n\nconst b2bAllClients = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_B2B_ALL_CLIENTS_LIST_SUCCESS:\n return {\n ...state,\n b2bAllClientsList: action.payload.data,\n };\n\n case GET_B2B_ALL_CLIENTS_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default b2bAllClients;\n","import {\n ADD_PATIENT_FEEDBACK_SUCCESS,\n ADD_PATIENT_FEEDBACK_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n patientFeedback: [],\n error: {},\n};\n\nconst patientFeedback = (state = INIT_STATE, action) => {\n switch (action.type) {\n case ADD_PATIENT_FEEDBACK_SUCCESS:\n return {\n ...state,\n patientFeedback: [...state.patientFeedback, action.payload],\n };\n\n case ADD_PATIENT_FEEDBACK_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default patientFeedback;\n","import {\n ADD_COMPLAINT_SUCCESS,\n ADD_COMPLAINT_FAIL,\n GET_LABS_SUCCESS,\n GET_LABS_FAIL,\n GET_HANDLED_COMPLAINTS_SUCCESS,\n GET_HANDLED_COMPLAINTS_FAIL,\n GET_UNHANDLED_COMPLAINTS_SUCCESS,\n GET_UNHANDLED_COMPLAINTS_FAIL,\n UPDATE_UNHANDLED_COMPLAINTS_SUCCESS,\n UPDATE_UNHANDLED_COMPLAINTS_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n complaint: [],\n labs:[],\n handledComplaints: [],\n unhandledComplaints: [],\n error: {},\n};\n\nconst complaints = (state = INIT_STATE, action) => {\n switch (action.type) {\n case ADD_COMPLAINT_SUCCESS:\n return {\n ...state,\n complaint: [...state.complaint, action.payload],\n };\n\n case ADD_COMPLAINT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_LABS_SUCCESS:\n return {\n ...state,\n labs: action.payload.data,\n };\n \n case GET_LABS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_HANDLED_COMPLAINTS_SUCCESS:\n return {\n ...state,\n handledComplaints: action.payload,\n };\n\n case GET_HANDLED_COMPLAINTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_UNHANDLED_COMPLAINTS_SUCCESS:\n console.log(\"action.payload: \", action.payload);\n return {\n ...state,\n unhandledComplaints: action.payload,\n };\n\n case GET_UNHANDLED_COMPLAINTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_UNHANDLED_COMPLAINTS_SUCCESS:\n return {\n ...state,\n sucess: state.sucess.map(sucess =>\n sucess.id.toString() === action.payload.id.toString()\n ? { sucess, ...action.payload }\n : sucess\n ),\n };\n\n case UPDATE_UNHANDLED_COMPLAINTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\nexport default complaints;\n","import {\n GET_CSR_COMPLAINTS_SUCCESS,\n GET_CSR_COMPLAINTS_FAIL,\n UPDATE_CSR_COMPLAINTS_SUCCESS,\n UPDATE_CSR_COMPLAINTS_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n csrComplaints: [],\n};\n\nconst csrcomplaints = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_CSR_COMPLAINTS_SUCCESS:\n // console.log(\"Reducer Dataaaaaaaaaaaa:\", action.payload);\n return {\n ...state,\n csrComplaints: action.payload,\n };\n\n case GET_CSR_COMPLAINTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case UPDATE_CSR_COMPLAINTS_SUCCESS:\n return {\n ...state,\n csrComplaints: state.csrComplaints.map(csrComplaint =>\n csrComplaint.id.toString() === action.payload.id.toString()\n ? { csrComplaint, ...action.payload }\n : csrComplaint\n ),\n };\n\n case UPDATE_CSR_COMPLAINTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n \n default:\n return state;\n }\n};\nexport default csrcomplaints;\n","import {\n GET_CSR_APPOINTMENTS_SUCCESS,\n GET_CSR_APPOINTMENTS_FAIL,\n UPDATE_CSR_APPOINTMENTS_SUCCESS,\n UPDATE_CSR_APPOINTMENTS_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n csrAppointments: [],\n};\n\nconst csrappointments = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_CSR_APPOINTMENTS_SUCCESS:\n return {\n ...state,\n csrAppointments: action.payload,\n };\n\n case GET_CSR_APPOINTMENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case UPDATE_CSR_APPOINTMENTS_SUCCESS:\n return {\n ...state,\n csrAppointments: state.csrAppointments.map(csrComplaint =>\n csrComplaint.id.toString() === action.payload.id.toString()\n ? { csrComplaint, ...action.payload }\n : csrComplaint\n ),\n };\n\n case UPDATE_CSR_APPOINTMENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n \n default:\n return state;\n }\n};\nexport default csrappointments;\n","import {\n GET_NOTES_SUCCESS,\n GET_NOTES_FAIL,\n ADD_NOTE_SUCCESS,\n ADD_NOTE_FAIL,\n GET_NOTES_COMPLAINT_SUCCESS,\n GET_NOTES_COMPLAINT_FAIL,\n ADD_NOTE_COMPLAINT_SUCCESS,\n ADD_NOTE_COMPLAINT_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n notes: [],\n error: {},\n};\n\nconst notes = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_NOTES_SUCCESS:\n return {\n ...state,\n notes: action.payload.data,\n };\n\n case GET_NOTES_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case ADD_NOTE_SUCCESS:\n return {\n ...state,\n notes: [...state.notes, action.payload],\n };\n\n case ADD_NOTE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_NOTES_COMPLAINT_SUCCESS:\n return {\n ...state,\n notes: action.payload.data,\n };\n \n case GET_NOTES_COMPLAINT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n \n case ADD_NOTE_COMPLAINT_SUCCESS:\n return {\n ...state,\n notes: [...state.notes, action.payload],\n };\n \n case ADD_NOTE_COMPLAINT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n \n\n default:\n return state;\n }\n};\n\nexport default notes;\n","import {\n GET_PATIENTS_LIST_SUCCESS,\n GET_PATIENTS_LIST_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n patientsList: [],\n error: {},\n};\n\nconst patients = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_PATIENTS_LIST_SUCCESS:\n return {\n ...state,\n patientsList: action.payload.data,\n };\n\n case GET_PATIENTS_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default patients;\n","import {\n GET_TEST_DESCRIPTIONS_SUCCESS,\n GET_TEST_DESCRIPTIONS_FAIL,\n\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n testDescriptions: [],\n testDescription: [],\n error: {},\n};\n\nconst testDescriptions = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_TEST_DESCRIPTIONS_SUCCESS:\n return {\n ...state,\n testDescriptions: action.payload.data,\n };\n\n case GET_TEST_DESCRIPTIONS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n default:\n return state;\n }\n};\n\nexport default testDescriptions;\n","import {\n GET_HOME_SAMPLED_TESTS_FAIL,\n GET_HOME_SAMPLED_TESTS_SUCCESS,\n GET_DONATION_CHECK_FAIL,\n GET_DONATION_CHECK_SUCCESS,\n GET_CHECKOUT_ITEMS_SUCCESS,\n GET_CHECKOUT_ITEMS_FAIL,\n ADD_CHECKOUT_DATA_SUCCESS,\n ADD_CHECKOUT_DATA_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n homeSampledTests: [],\n checkoutItems: [],\n checkedoutData: [],\n donationCheck:[],\n error: {},\n};\n\nconst checkout = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_HOME_SAMPLED_TESTS_SUCCESS:\n return {\n ...state,\n homeSampledTests: action.payload,\n };\n\n case GET_HOME_SAMPLED_TESTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_DONATION_CHECK_SUCCESS:\n return {\n ...state,\n donationCheck: action.payload,\n };\n \n case GET_DONATION_CHECK_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_CHECKOUT_ITEMS_SUCCESS:\n return {\n ...state,\n checkoutItems: action.payload.data,\n };\n\n case GET_CHECKOUT_ITEMS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case ADD_CHECKOUT_DATA_SUCCESS:\n return {\n ...state,\n checkedoutData: [...state.checkedoutData, action.payload.data],\n };\n\n case ADD_CHECKOUT_DATA_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default checkout;\n","import {\n GET_INVOICE_DETAIL_SUCCESS,\n GET_INVOICE_DETAIL_FAIL,\n ///////////\n GET_TESTS_IN_APPOINTMENTS_SUCCESS,\n GET_TESTS_IN_APPOINTMENTS_FAIL,\n DELETE_TESTS_IN_APPOINTMENTS_SUCCESS,\n DELETE_TESTS_IN_APPOINTMENTS_FAIL,\n GET_ADVINVOICE_DETAIL_SUCCESS,\n GET_ADVINVOICE_DETAIL_FAIL,\n UPDATE_PAYMENT_INFO_SUCCESS,\n UPDATE_PAYMENT_INFO_FAIL,\n\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n invoiceDetail: {},\n testsinappointments:[],\n cemployees: [],\n advinvoiceDetail: {},\n paymentDetail: {},\n error: {},\n};\n\nconst invoices = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_INVOICE_DETAIL_SUCCESS:\n return {\n ...state,\n invoiceDetail: action.payload.data,\n };\n\n case GET_INVOICE_DETAIL_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n\n ////////////\n\n case DELETE_TESTS_IN_APPOINTMENTS_SUCCESS:\n return {\n ...state,\n cemployees: state.cemployees.filter(\n cemployee =>\n cemployee.id.toString() !== action.payload.id.toString()\n ),\n };\n\n case DELETE_TESTS_IN_APPOINTMENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_TESTS_IN_APPOINTMENTS_SUCCESS:\n return {\n ...state,\n testsinappointments: action.payload.data,\n };\n\n case GET_TESTS_IN_APPOINTMENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n ///////////\n case GET_ADVINVOICE_DETAIL_SUCCESS:\n return {\n ...state,\n advinvoiceDetail: action.payload.data,\n };\n\n case GET_ADVINVOICE_DETAIL_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n\n case UPDATE_PAYMENT_INFO_SUCCESS:\n return {\n ...state,\n paymentDetail: action.payload.data,\n };\n\n case UPDATE_PAYMENT_INFO_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default invoices;\n","import {\n GET_ADV_INVOICE_SUCCESS,\n GET_ADV_INVOICE_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n advinvoice: [],\n error: {},\n};\n\nconst advinvoice = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_ADV_INVOICE_SUCCESS:\n return {\n ...state,\n advinvoice: action.payload.data,\n };\n\n case GET_ADV_INVOICE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n default:\n return state;\n }\n};\n\nexport default advinvoice;\n","import {\n GET_ACCOUNT_STATEMENTS_SUCCESS,\n GET_ACCOUNT_STATEMENTS_FAIL,\n GET_BANK_STATEMENTS_SUCCESS,\n GET_BANK_STATEMENTS_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n accountStatements: [],\n bankStatements: [],\n error: {},\n};\n\nconst accountStatements = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_ACCOUNT_STATEMENTS_SUCCESS:\n return {\n ...state,\n accountStatements: action.payload.data,\n };\n\n case GET_ACCOUNT_STATEMENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_BANK_STATEMENTS_SUCCESS:\n return {\n ...state,\n bankStatements: action.payload.data,\n };\n\n case GET_BANK_STATEMENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n \n\n default:\n return state;\n }\n};\n\nexport default accountStatements;\n","import {\n GET_DONOR_ACCOUNT_STATEMENTS_SUCCESS,\n GET_DONOR_ACCOUNT_STATEMENTS_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n donoraccountStatements: [],\n error: {},\n};\n\nconst donoraccountStatements = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_DONOR_ACCOUNT_STATEMENTS_SUCCESS:\n return {\n ...state,\n donoraccountStatements: action.payload.data,\n };\n\n case GET_DONOR_ACCOUNT_STATEMENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default donoraccountStatements;\n","import {\n GET_DONORS_ACCOUNT_STATEMENTS_SUCCESS,\n GET_DONORS_ACCOUNT_STATEMENTS_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n donorsaccountStatements: [],\n error: {},\n};\n\nconst donoraccountStatements = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_DONORS_ACCOUNT_STATEMENTS_SUCCESS:\n return {\n ...state,\n donorsaccountStatements: action.payload.data,\n };\n\n case GET_DONORS_ACCOUNT_STATEMENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default donoraccountStatements;\n","import {\n GET_B2B_ACCOUNT_STATEMENTS_SUCCESS,\n GET_B2B_ACCOUNT_STATEMENTS_FAIL,\n GET_CLAB_ACCOUNT_STATEMENTS_SUCCESS,\n GET_CLAB_ACCOUNT_STATEMENTS_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n b2baccountStatements: [],\n error: {},\n};\n\nconst b2baccountStatements = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_B2B_ACCOUNT_STATEMENTS_SUCCESS:\n return {\n ...state,\n b2baccountStatements: action.payload.data,\n };\n\n case GET_B2B_ACCOUNT_STATEMENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_CLAB_ACCOUNT_STATEMENTS_SUCCESS:\n return {\n ...state,\n b2baccountStatements: action.payload.data,\n };\n\n case GET_CLAB_ACCOUNT_STATEMENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default b2baccountStatements;\n","import {\n GET_BANK_STATEMENTS_SUCCESS,\n GET_BANK_STATEMENTS_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n bankStatements: [],\n error: {},\n};\n\nconst bankStatements = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_BANK_STATEMENTS_SUCCESS:\n return {\n ...state,\n bankStatements: action.payload.data,\n };\n\n case GET_BANK_STATEMENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default bankStatements;\n","import {\n GET_CSR_LIST_SUCCESS,\n GET_CSR_LIST_FAIL,\n GET_MARKETERS_LIST_SUCCESS,\n GET_MARKETERS_LIST_FAIL,\n GET_AUDITOR_LIST_SUCCESS,\n GET_AUDITOR_LIST_FAIL,\n GET_TERRITORIES_LIST_SUCCESS,\n GET_TERRITORIES_LIST_FAIL,\n GET_FINANCE_OFFICER_LIST_SUCCESS,\n GET_FINANCE_OFFICER_LIST_FAIL,\n ADD_STAFF,\n ADD_STAFF_SUCCESS,\n ADD_STAFF_FAIL,\n UPDATE_STAFF_SUCCESS,\n UPDATE_STAFF_FAIL,\n DELETE_STAFF_SUCCESS,\n DELETE_STAFF_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n staff: [],\n csrList: [],\n marketersList: [],\n auditorList: [],\n territoriesList: [],\n financeOfficerList: [],\n error: {},\n addStaffError: null,\n addStaffSuccess: null,\n loading: false,\n message: null,\n};\n\nconst staff = (state = INIT_STATE, action) => {\n switch (action.type) {\n // territories\n case GET_TERRITORIES_LIST_SUCCESS:\n return {\n ...state,\n territoriesList: action.payload.data,\n };\n\n case GET_TERRITORIES_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_CSR_LIST_SUCCESS:\n return {\n ...state,\n csrList: action.payload.data,\n };\n\n case GET_CSR_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_MARKETERS_LIST_SUCCESS:\n return {\n ...state,\n marketersList: action.payload.data,\n };\n \n case GET_MARKETERS_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_AUDITOR_LIST_SUCCESS:\n return {\n ...state,\n auditorList: action.payload.data,\n };\n\n case GET_AUDITOR_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_FINANCE_OFFICER_LIST_SUCCESS:\n return {\n ...state,\n financeOfficerList: action.payload.data,\n };\n\n case GET_FINANCE_OFFICER_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case ADD_STAFF:\n return {\n ...state,\n staff: null,\n loading: true,\n addStaffError: null,\n addStaffSuccess: null,\n };\n case ADD_STAFF_SUCCESS:\n return {\n ...state,\n loading: false,\n staff: action.payload,\n addStaffError: null,\n addStaffSuccess: action.payload.staff\n };\n case ADD_STAFF_FAIL:\n return {\n ...state,\n staff: null,\n loading: false,\n addStaffError: action.payload.staff,\n addStaffSuccess: null,\n };\n case UPDATE_STAFF_SUCCESS:\n return {\n ...state,\n staff: state.staff.map(person =>\n person.id.toString() === action.payload.id.toString()\n ? { person, ...action.payload }\n : person\n ),\n };\n\n case UPDATE_STAFF_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case DELETE_STAFF_SUCCESS:\n return {\n ...state,\n staff: state.staff.filter(\n person => person.id.toString() !== action.payload.id.toString()\n ),\n };\n\n case DELETE_STAFF_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default staff;\n","import {\n GET_ASSIGNED_AUDITS_SUCCESS,\n GET_ASSIGNED_AUDITS_FAIL,\n GET_LAB_AUDITS_SUCCESS,\n GET_LAB_AUDITS_FAIL,\n ADD_AUDIT_SUCCESS,\n ADD_AUDIT_FAIL,\n GET_AUDITORS_COMPLETED_AUDITS_SUCCESS,\n GET_AUDITORS_COMPLETED_AUDITS_FAIL,\n UPDATE_ASSIGNED_AUDITS_SUCCESS,\n UPDATE_ASSIGNED_AUDITS_FAIL,\n UPDATE_AUDITS_STATUS_SUCCESS,\n UPDATE_AUDITS_STATUS_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n assignedAudits: [],\n labAudits: [],\n completedAudits: [],\n error: \"\",\n success: \"\",\n};\n\nconst audits = (state = INIT_STATE, action) => {\n switch (action.type) {\n\n case UPDATE_AUDITS_STATUS_SUCCESS:\n return {\n ...state,\n audit: state.audit.map(audit =>\n audit.id.toString() === action.payload.id.toString()\n ? { audit, ...action.payload }\n : audit\n ),\n };\n\n case UPDATE_AUDITS_STATUS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_ASSIGNED_AUDITS_SUCCESS:\n return {\n ...state,\n assignedAudits: action.payload,\n };\n case GET_ASSIGNED_AUDITS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case ADD_AUDIT_SUCCESS:\n return {\n ...state,\n audits: [...state.audits, action.payload],\n };\n case ADD_AUDIT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_LAB_AUDITS_SUCCESS:\n return {\n ...state,\n labAudits: action.payload,\n };\n \n case GET_LAB_AUDITS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_ASSIGNED_AUDITS_SUCCESS:\n return {\n ...state,\n success: state.success.map(success =>\n success.id.toString() === action.payload.id.toString()\n ? { success, ...action.payload }\n : success\n ),\n };\n\n case UPDATE_ASSIGNED_AUDITS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_AUDITORS_COMPLETED_AUDITS_SUCCESS:\n return {\n ...state,\n completedAudits: action.payload,\n };\n\n case GET_AUDITORS_COMPLETED_AUDITS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default audits;\n","import {\n GET_MSGS_SUCCESS,\n GET_MSGS_FAIL,\n ADD_MSG_SUCCESS,\n ADD_MSG_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n msgs: [],\n error: {},\n};\n\nconst msgs = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_MSGS_SUCCESS:\n return {\n ...state,\n msgs: action.payload.data,\n };\n\n case GET_MSGS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case ADD_MSG_SUCCESS:\n return {\n ...state,\n msgs: [...state.msgs, action.payload],\n };\n\n case ADD_MSG_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n \n\n default:\n return state;\n }\n};\n\nexport default msgs;\n","import {\n GET_PENDING_CORPORATE_SUCCESS,\n GET_PENDING_CORPORATE_FAIL,\n GET_APPROVED_CORPORATE_SUCCESS,\n GET_APPROVED_CORPORATE_FAIL,\n GET_UNAPPROVED_CORPORATE_SUCCESS,\n GET_UNAPPROVED_CORPORATE_FAIL,\n APPROVE_UNAPPROVE_CORPORATE_SUCCESS,\n APPROVE_UNAPPROVE_CORPORATE_FAIL,\n\n GET_PENDING_LABS_SUCCESS,\n GET_PENDING_LABS_FAIL,\n GET_APPROVED_LABS_SUCCESS,\n GET_APPROVED_LABS_FAIL,\n GET_UNAPPROVED_LABS_SUCCESS,\n GET_UNAPPROVED_LABS_FAIL,\n APPROVE_UNAPPROVE_LAB_SUCCESS,\n APPROVE_UNAPPROVE_LAB_FAIL,\n GET_PENDING_B2B_CLIENTS_SUCCESS,\n GET_PENDING_B2B_CLIENTS_FAIL,\n GET_APPROVED_B2B_CLIENTS_SUCCESS,\n GET_APPROVED_B2B_CLIENTS_FAIL,\n GET_UNAPPROVED_B2B_CLIENTS_SUCCESS,\n GET_UNAPPROVED_B2B_CLIENTS_FAIL,\n APPROVE_UNAPPROVE_B2B_CLIENT_SUCCESS,\n APPROVE_UNAPPROVE_B2B_CLIENT_FAIL,\n GET_PENDING_DONORS_SUCCESS,\n GET_PENDING_DONORS_FAIL,\n GET_APPROVED_DONORS_SUCCESS,\n GET_APPROVED_DONORS_FAIL,\n GET_UNAPPROVED_DONORS_SUCCESS,\n GET_UNAPPROVED_DONORS_FAIL,\n APPROVE_UNAPPROVE_DONOR_SUCCESS,\n APPROVE_UNAPPROVE_DONOR_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n pendingCorporate: [],\n approvedCorporate: [],\n UnapprovedCorporate: [],\n\n pendingLabs: [],\n approvedLabs: [],\n unapprovedLabs: [],\n pendingB2BClients: [],\n approvedB2BClients: [],\n unapprovedB2BClients: [],\n pendingDonors: [],\n approvedDonors: [],\n unapprovedDonors: [],\n success: [],\n error: {},\n};\n\nconst registrationAdmin = (state = INIT_STATE, action) => {\n switch (action.type) {\n\n case GET_PENDING_CORPORATE_SUCCESS:\n return {\n ...state,\n pendingCorporate: action.payload.data,\n };\n\n case GET_PENDING_CORPORATE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_APPROVED_CORPORATE_SUCCESS:\n return {\n ...state,\n approvedCorporate: action.payload.data,\n };\n\n case GET_APPROVED_CORPORATE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_UNAPPROVED_CORPORATE_SUCCESS:\n return {\n ...state,\n UnapprovedCorporate: action.payload.data,\n };\n\n case GET_UNAPPROVED_CORPORATE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case APPROVE_UNAPPROVE_CORPORATE_SUCCESS:\n return {\n ...state,\n success: [...state.success, action.payload],\n };\n\n case APPROVE_UNAPPROVE_CORPORATE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_PENDING_LABS_SUCCESS:\n return {\n ...state,\n pendingLabs: action.payload.data,\n };\n\n case GET_PENDING_LABS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_APPROVED_LABS_SUCCESS:\n return {\n ...state,\n approvedLabs: action.payload.data,\n };\n\n case GET_APPROVED_LABS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_UNAPPROVED_LABS_SUCCESS:\n return {\n ...state,\n unapprovedLabs: action.payload.data,\n };\n\n case GET_UNAPPROVED_LABS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case APPROVE_UNAPPROVE_LAB_SUCCESS:\n return {\n ...state,\n success: [...state.success, action.payload],\n };\n\n case APPROVE_UNAPPROVE_LAB_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_PENDING_B2B_CLIENTS_SUCCESS:\n return {\n ...state,\n pendingB2BClients: action.payload.data,\n };\n\n case GET_PENDING_B2B_CLIENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_APPROVED_B2B_CLIENTS_SUCCESS:\n return {\n ...state,\n approvedB2BClients: action.payload.data,\n };\n\n case GET_APPROVED_B2B_CLIENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_UNAPPROVED_B2B_CLIENTS_SUCCESS:\n return {\n ...state,\n unapprovedB2BClients: action.payload.data,\n };\n\n case GET_UNAPPROVED_B2B_CLIENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case APPROVE_UNAPPROVE_B2B_CLIENT_SUCCESS:\n return {\n ...state,\n success: [...state.success, action.payload],\n };\n\n case APPROVE_UNAPPROVE_B2B_CLIENT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_PENDING_DONORS_SUCCESS:\n return {\n ...state,\n pendingDonors: action.payload.data,\n };\n\n case GET_PENDING_DONORS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_APPROVED_DONORS_SUCCESS:\n return {\n ...state,\n approvedDonors: action.payload.data,\n };\n\n case GET_APPROVED_DONORS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_UNAPPROVED_DONORS_SUCCESS:\n return {\n ...state,\n unapprovedDonors: action.payload.data,\n };\n\n case GET_UNAPPROVED_DONORS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case APPROVE_UNAPPROVE_DONOR_SUCCESS:\n return {\n ...state,\n success: [...state.success, action.payload],\n };\n\n case APPROVE_UNAPPROVE_DONOR_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default registrationAdmin;\n","import {\n // GET_CLEARED_LABS_SUCCESS,\n // GET_CLEARED_LABS_FAIL,\n // GET_APPROVED_LABS_SUCCESS,\n // GET_APPROVED_LABS_FAIL,\n // GET_UNAPPROVED_LABS_SUCCESS,\n // GET_UNAPPROVED_LABS_FAIL,\n // APPROVE_UNAPPROVE_LAB_SUCCESS,\n // APPROVE_UNAPPROVE_LAB_FAIL,\n GET_CLEARED_IN_PAYMENTS_SUCCESS,\n GET_CLEARED_IN_PAYMENTS_FAIL,\n GET_APPROVED_IN_PAYMENTS_SUCCESS,\n GET_APPROVED_IN_PAYMENTS_FAIL,\n GET_UNAPPROVED_IN_PAYMENTS_SUCCESS,\n GET_UNAPPROVED_IN_PAYMENTS_FAIL,\n UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT_SUCCESS,\n UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT_FAIL,\n GET_ALL_LABS_LIST_SUCCESS,\n GET_ALL_LABS_LIST_FAIL,\n GET_ALL_DONATION_APPOINTMENTS_SUCCESS,\n GET_ALL_DONATION_APPOINTMENTS_FAIL,\n // GET_CLEARED_DONORS_SUCCESS,\n // GET_CLEARED_DONORS_FAIL,\n // GET_APPROVED_DONORS_SUCCESS,\n // GET_APPROVED_DONORS_FAIL,\n // GET_UNAPPROVED_DONORS_SUCCESS,\n // GET_UNAPPROVED_DONORS_FAIL,\n // APPROVE_UNAPPROVE_DONOR_SUCCESS,\n // APPROVE_UNAPPROVE_DONOR_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n // clearedLabs: [],\n // approvedLabs: [],\n // unapprovedLabs: [],\n clearedInPayments: [],\n approvedInPayments: [],\n unapprovedInPayments: [],\n allLabsList: [],\n allDonationAppointment: [],\n // clearedDonors: [],\n // approvedDonors: [],\n // unapprovedDonors: [],\n success: [],\n error: {},\n};\n\nconst financeAdmin = (state = INIT_STATE, action) => {\n switch (action.type) {\n // case GET_CLEARED_LABS_SUCCESS:\n // return {\n // ...state,\n // clearedLabs: action.payload.data,\n // };\n\n // case GET_CLEARED_LABS_FAIL:\n // return {\n // ...state,\n // error: action.payload,\n // };\n\n // case GET_APPROVED_LABS_SUCCESS:\n // return {\n // ...state,\n // approvedLabs: action.payload.data,\n // };\n\n // case GET_APPROVED_LABS_FAIL:\n // return {\n // ...state,\n // error: action.payload,\n // };\n\n // case GET_UNAPPROVED_LABS_SUCCESS:\n // return {\n // ...state,\n // unapprovedLabs: action.payload.data,\n // };\n\n // case GET_UNAPPROVED_LABS_FAIL:\n // return {\n // ...state,\n // error: action.payload,\n // };\n\n // case APPROVE_UNAPPROVE_LAB_SUCCESS:\n // return {\n // ...state,\n // success: [...state.success, action.payload],\n // };\n\n // case APPROVE_UNAPPROVE_LAB_FAIL:\n // return {\n // ...state,\n // error: action.payload,\n // };\n\n case GET_ALL_DONATION_APPOINTMENTS_SUCCESS:\n return {\n ...state,\n allDonationAppointment: action.payload.data,\n };\n\n case GET_ALL_DONATION_APPOINTMENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_ALL_LABS_LIST_SUCCESS:\n return {\n ...state,\n allLabsList: action.payload.data,\n };\n\n case GET_ALL_LABS_LIST_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_CLEARED_IN_PAYMENTS_SUCCESS:\n return {\n ...state,\n clearedInPayments: action.payload.data,\n };\n\n case GET_CLEARED_IN_PAYMENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_APPROVED_IN_PAYMENTS_SUCCESS:\n return {\n ...state,\n approvedInPayments: action.payload.data,\n };\n\n case GET_APPROVED_IN_PAYMENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_UNAPPROVED_IN_PAYMENTS_SUCCESS:\n return {\n ...state,\n unapprovedInPayments: action.payload.data,\n };\n\n case GET_UNAPPROVED_IN_PAYMENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT_SUCCESS:\n return {\n ...state,\n success: [...state.success, action.payload],\n };\n\n case UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n // case GET_CLEARED_DONORS_SUCCESS:\n // return {\n // ...state,\n // clearedDonors: action.payload.data,\n // };\n\n // case GET_CLEARED_DONORS_FAIL:\n // return {\n // ...state,\n // error: action.payload,\n // };\n\n // case GET_APPROVED_DONORS_SUCCESS:\n // return {\n // ...state,\n // approvedDonors: action.payload.data,\n // };\n\n // case GET_APPROVED_DONORS_FAIL:\n // return {\n // ...state,\n // error: action.payload,\n // };\n\n // case GET_UNAPPROVED_DONORS_SUCCESS:\n // return {\n // ...state,\n // unapprovedDonors: action.payload.data,\n // };\n\n // case GET_UNAPPROVED_DONORS_FAIL:\n // return {\n // ...state,\n // error: action.payload,\n // };\n\n // case APPROVE_UNAPPROVE_DONOR_SUCCESS:\n // return {\n // ...state,\n // success: [...state.success, action.payload],\n // };\n\n // case APPROVE_UNAPPROVE_DONOR_FAIL:\n // return {\n // ...state,\n // error: action.payload,\n // };\n\n default:\n return state;\n }\n};\n\nexport default financeAdmin;\n","import {\n GET_PENDING_COMPLAINTS_SUCCESS,\n GET_PENDING_COMPLAINTS_FAIL,\n GET_PENDING_COMPLAINTS_LABHAZIR_SUCCESS,\n GET_PENDING_COMPLAINTS_LABHAZIR_FAIL,\n GET_INPROCESS_COMPLAINTS_SUCCESS,\n GET_INPROCESS_COMPLAINTS_FAIL,\n GET_INPROCESS_COMPLAINTS_LABHAZIR_SUCCESS,\n GET_INPROCESS_COMPLAINTS_LABHAZIR_FAIL,\n GET_RESOLVED_COMPLAINTS_SUCCESS,\n GET_RESOLVED_COMPLAINTS_FAIL,\n GET_RESOLVED_COMPLAINTS_LABHAZIR_SUCCESS,\n GET_RESOLVED_COMPLAINTS_LABHAZIR_FAIL,\n ASSIGN_COMPLAINT_SUCCESS,\n ASSIGN_COMPLAINT_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n pendingComplaints: [],\n pendingComplaintsLabhazir:[],\n inProcessComplaints: [],\n inProcessComplaintsLabhazir:[],\n resolvedComplaints: [],\n resolvedComplaintsLabhazir:[],\n success: [],\n error: {},\n};\n\nconst csrAdmin = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_PENDING_COMPLAINTS_SUCCESS:\n return {\n ...state,\n pendingComplaints: action.payload.data,\n };\n\n case GET_PENDING_COMPLAINTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_PENDING_COMPLAINTS_LABHAZIR_SUCCESS:\n return {\n ...state,\n pendingComplaintsLabhazir: action.payload.data,\n };\n \n case GET_PENDING_COMPLAINTS_LABHAZIR_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_INPROCESS_COMPLAINTS_SUCCESS:\n return {\n ...state,\n inProcessComplaints: action.payload.data,\n };\n\n case GET_INPROCESS_COMPLAINTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_INPROCESS_COMPLAINTS_LABHAZIR_SUCCESS:\n return {\n ...state,\n inProcessComplaintsLabhazir: action.payload.data,\n };\n \n case GET_INPROCESS_COMPLAINTS_LABHAZIR_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_RESOLVED_COMPLAINTS_SUCCESS:\n return {\n ...state,\n resolvedComplaints: action.payload.data,\n };\n\n case GET_RESOLVED_COMPLAINTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_RESOLVED_COMPLAINTS_LABHAZIR_SUCCESS:\n return {\n ...state,\n resolvedComplaintsLabhazir: action.payload.data,\n };\n\n case GET_RESOLVED_COMPLAINTS_LABHAZIR_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case ASSIGN_COMPLAINT_SUCCESS:\n return {\n ...state,\n success: [...state.success, action.payload],\n };\n\n case ASSIGN_COMPLAINT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default csrAdmin;\n","import {\n GET_PENDING_AUDITS_SUCCESS,\n GET_PENDING_AUDITS_FAIL,\n GET_INPROCESS_AUDITS_SUCCESS,\n GET_INPROCESS_AUDITS_FAIL,\n GET_PASSED_AUDITS_SUCCESS,\n GET_PASSED_AUDITS_FAIL,\n GET_FAILED_AUDITS_SUCCESS,\n GET_FAILED_AUDITS_FAIL,\n ASSIGN_AUDIT_SUCCESS,\n ASSIGN_AUDIT_FAIL,\n ADD_LABS_AUDIT_SUCCESS,\n ADD_LABS_AUDIT_FAIL\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n pendingAudits: [],\n inProcessAudits: [],\n passedAudits: [],\n failedAudits: [],\n success: [],\n error: {},\n};\n\nconst auditorAdmin = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_PENDING_AUDITS_SUCCESS:\n return {\n ...state,\n pendingAudits: action.payload.data,\n };\n\n case GET_PENDING_AUDITS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_INPROCESS_AUDITS_SUCCESS:\n return {\n ...state,\n inProcessAudits: action.payload.data,\n };\n\n case GET_INPROCESS_AUDITS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_PASSED_AUDITS_SUCCESS:\n return {\n ...state,\n passedAudits: action.payload.data,\n };\n\n case GET_PASSED_AUDITS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_FAILED_AUDITS_SUCCESS:\n return {\n ...state,\n failedAudits: action.payload.data,\n };\n\n case GET_FAILED_AUDITS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case ASSIGN_AUDIT_SUCCESS:\n return {\n ...state,\n success: [...state.success, action.payload],\n };\n\n case ASSIGN_AUDIT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case ADD_LABS_AUDIT_SUCCESS:\n return {\n ...state,\n success: [...state.success, action.payload],\n };\n\n case ADD_LABS_AUDIT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n default:\n return state;\n }\n};\n\nexport default auditorAdmin;\n","import {\n GET_ACCEPTED_LAB_ADVERTISEMENTS_SUCCESS,\n GET_ACCEPTED_LAB_ADVERTISEMENTS_FAIL,\n GET_LABS_SUCCESS,\n GET_LABS_FAIL,\n GET_DONORS_SUCCESS,\n GET_DONORS_FAIL,\n GET_IN_PAYMENT_SUCCESS,\n GET_IN_PAYMENT_FAIL,\n ADD_IN_PAYMENT_SUCCESS,\n ADD_IN_PAYMENT_FAIL,\n GET_STAFF_PROFILE_SUCCESS,\n GET_STAFF_PROFILE_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n staffProfiles: [],\n advertisements: [],\n inPayments: [],\n inPayment: [],\n labs: [],\n donors: {},\n error: {},\n};\n\nconst inPayments = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_STAFF_PROFILE_SUCCESS:\n return {\n ...state,\n staffProfiles: action.payload.data,\n };\n\n case GET_STAFF_PROFILE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_ACCEPTED_LAB_ADVERTISEMENTS_SUCCESS:\n return {\n ...state,\n advertisements: action.payload.data,\n };\n\n case GET_ACCEPTED_LAB_ADVERTISEMENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_LABS_SUCCESS:\n return {\n ...state,\n labs: action.payload.data,\n };\n\n case GET_LABS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_DONORS_SUCCESS:\n return {\n ...state,\n donors: action.payload.data,\n };\n\n case GET_DONORS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_IN_PAYMENT_SUCCESS:\n return {\n ...state,\n inPayments: action.payload.data,\n };\n\n case GET_IN_PAYMENT_FAIL:\n return {\n ...state,\n error: action.payload,\n }; \n\n case ADD_IN_PAYMENT_SUCCESS:\n return {\n ...state,\n inPayments: [...state.inPayments, action.payload.data],\n };\n\n case ADD_IN_PAYMENT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default inPayments;\n","import {\n GET_LABS_MOF_SUCCESS,\n GET_LABS_MOF_FAIL,\n GET_LABS_C_SUCCESS,\n GET_LABS_C_FAIL,\n GET_LIST_DONATIONAPPOINTMENT_SUCCESS,\n GET_LIST_DONATIONAPPOINTMENT_FAIL,\n GET_LIST_CLABS_SUCCESS,\n GET_LIST_CLABS_FAIL,\n GET_LIST_INVOICE_SUCCESS,\n GET_LIST_INVOICE_FAIL,\n GET_BANKS_SUCCESS,\n GET_BANKS_FAIL,\n GET_BANK_ACCOUNTS_SUCCESS,\n GET_BANK_ACCOUNTS_FAIL,\n GET_B2B_CLIENTS_SUCCESS,\n GET_B2B_CLIENTS_FAIL,\n GET_OUT_PAYMENT_SUCCESS,\n GET_OUT_PAYMENT_FAIL,\n ADD_OUT_PAYMENT_SUCCESS,\n ADD_OUT_PAYMENT_FAIL,\n ADD_CORPORATE_PAYMENT_SUCCESS,\n ADD_CORPORATE_PAYMENT_FAIL,\n ADD_INVOICE_ADJUSTMENT_SUCCESS,\n ADD_INVOICE_ADJUSTMENT_FAIL,\n GET_STAFF_PROFILE_SUCCESS,\n GET_STAFF_PROFILE_FAIL,\n GET_CORPORATE_PROFILE_SUCCESS,\n GET_CORPORATE_PROFILE_FAIL\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n listCLabs: [],\n corporateProfiles: [],\n staffProfiles: [],\n outPayments: [],\n b2bClients: [],\n outPayment: [],\n bankAccounts: [],\n banks: [],\n labsMof: [],\n listDonation: [],\n listInvoice: [],\n error: {},\n};\n\nconst outPayments = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_CORPORATE_PROFILE_SUCCESS:\n return {\n ...state,\n corporateProfiles: action.payload.data,\n };\n\n case GET_CORPORATE_PROFILE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_STAFF_PROFILE_SUCCESS:\n return {\n ...state,\n staffProfiles: action.payload.data,\n };\n\n case GET_STAFF_PROFILE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_BANK_ACCOUNTS_SUCCESS:\n return {\n ...state,\n bankAccounts: action.payload.data,\n };\n\n case GET_BANK_ACCOUNTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_BANKS_SUCCESS:\n return {\n ...state,\n banks: action.payload.data,\n };\n\n case GET_BANKS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_LABS_MOF_SUCCESS:\n return {\n ...state,\n labsMof: action.payload.data,\n };\n\n case GET_LABS_MOF_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_LIST_DONATIONAPPOINTMENT_SUCCESS:\n return {\n ...state,\n listDonation: action.payload.data,\n };\n\n case GET_LIST_DONATIONAPPOINTMENT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_LIST_CLABS_SUCCESS:\n return {\n ...state,\n listCLabs: action.payload.data,\n };\n\n case GET_LIST_CLABS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_LABS_C_SUCCESS:\n return {\n ...state,\n labsMof: action.payload.data,\n };\n\n case GET_LABS_C_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_LIST_INVOICE_SUCCESS:\n return {\n ...state,\n listInvoice: action.payload.data,\n };\n\n case GET_LIST_INVOICE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_B2B_CLIENTS_SUCCESS:\n return {\n ...state,\n b2bClients: action.payload.data,\n };\n \n case GET_B2B_CLIENTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_OUT_PAYMENT_SUCCESS:\n return {\n ...state,\n outPayments: action.payload.data,\n };\n\n case GET_OUT_PAYMENT_FAIL:\n return {\n ...state,\n error: action.payload,\n }; \n\n case ADD_OUT_PAYMENT_SUCCESS:\n return {\n ...state,\n outPayments: [...state.outPayments, action.payload.data],\n };\n\n case ADD_OUT_PAYMENT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case ADD_CORPORATE_PAYMENT_SUCCESS:\n return {\n ...state,\n outPayments: [...state.outPayments, action.payload.data],\n };\n\n case ADD_CORPORATE_PAYMENT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case ADD_INVOICE_ADJUSTMENT_SUCCESS:\n return {\n ...state,\n outPayments: [...state.outPayments, action.payload.data],\n };\n\n case ADD_INVOICE_ADJUSTMENT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default outPayments;\n","import {\n GET_BANKS_SUCCESS,\n GET_BANKS_FAIL,\n GET_BANK_ACCOUNTS_SUCCESS,\n GET_BANK_ACCOUNTS_FAIL,\n GET_BANK_TRANSFER_SUCCESS,\n GET_BANK_TRANSFER_FAIL,\n ADD_BANK_TRANSFER_SUCCESS,\n ADD_BANK_TRANSFER_FAIL,\n UPDATE_BANK_TRANSFER_SUCCESS,\n UPDATE_BANK_TRANSFER_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n bankTransfers: [],\n bankAccounts: [],\n banks: [],\n error: {},\n};\n\nconst bankTransfers = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_BANK_ACCOUNTS_SUCCESS:\n return {\n ...state,\n bankAccounts: action.payload.data,\n };\n\n case GET_BANK_ACCOUNTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_BANKS_SUCCESS:\n return {\n ...state,\n banks: action.payload.data,\n };\n\n case GET_BANKS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_BANK_TRANSFER_SUCCESS:\n return {\n ...state,\n bankTransfers: action.payload.data,\n };\n\n case GET_BANK_TRANSFER_FAIL:\n return {\n ...state,\n error: action.payload,\n }; \n\n case ADD_BANK_TRANSFER_SUCCESS:\n return {\n ...state,\n bankTransfers: [...state.bankTransfers, action.payload.data],\n };\n\n case ADD_BANK_TRANSFER_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case UPDATE_BANK_TRANSFER_SUCCESS:\n return {\n ...state,\n bankTransfers: state.bankTransfers.map(bankTransfer =>\n bankTransfer.id.toString() === action.payload.id.toString()\n ? { bankTransfer, ...action.payload }\n : bankTransfer\n ),\n };\n\n case UPDATE_BANK_TRANSFER_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default bankTransfers;\n","import {\n // GET_CREATE_BANKS_SUCCESS,\n // GET_CREATE_BANKS_FAIL,\n ADD_CREATE_BANK_SUCCESS,\n ADD_CREATE_BANK_FAIL,\n GET_BANKS_SUCCESS,\n GET_BANKS_FAIL,\n UPDATE_BANK_SUCCESS,\n UPDATE_BANK_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n createBanks: [],\n bank: [],\n banks: [],\n error: {},\n};\n\nconst createBanks = (state = INIT_STATE, action) => {\n switch (action.type) {\n // case GET_CREATE_BANKS_SUCCESS:\n // return {\n // ...state,\n // createBanks: action.payload.data,\n // };\n\n // case GET_CREATE_BANKS_FAIL:\n // return {\n // ...state,\n // error: action.payload,\n // };\n case GET_BANKS_SUCCESS:\n return {\n ...state,\n banks: action.payload.data,\n };\n\n case GET_BANKS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case ADD_CREATE_BANK_SUCCESS:\n return {\n ...state,\n createBanks: [...state.createBanks, action.payload.data],\n };\n\n case ADD_CREATE_BANK_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n \n case UPDATE_BANK_SUCCESS:\n return {\n ...state,\n banks: state.banks.map(bank =>\n bank.id.toString() === action.payload.id.toString()\n ? { bank, ...action.payload }\n : bank\n ),\n };\n\n case UPDATE_BANK_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default createBanks;\n","import {\n GET_BANK_ACCOUNTS_SUCCESS,\n GET_BANK_ACCOUNTS_FAIL,\n GET_BANKS_SUCCESS,\n GET_BANKS_FAIL,\n ADD_BANK_ACCOUNT_SUCCESS,\n ADD_BANK_ACCOUNT_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n bankAccounts: [],\n banks: [],\n error: {},\n};\n\nconst bankAccounts = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_BANK_ACCOUNTS_SUCCESS:\n return {\n ...state,\n bankAccounts: action.payload.data,\n };\n\n case GET_BANK_ACCOUNTS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_BANKS_SUCCESS:\n return {\n ...state,\n banks: action.payload.data,\n };\n\n case GET_BANKS_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case ADD_BANK_ACCOUNT_SUCCESS:\n return {\n ...state,\n bankAccounts: [...state.bankAccounts, action.payload.data],\n };\n\n case ADD_BANK_ACCOUNT_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default bankAccounts;\n","import {\n GET_LABCORPORATE_SUCCESS,\n GET_LABCORPORATE_FAIL,\n GET_ALABCORPORATE_SUCCESS,\n GET_ALABCORPORATE_FAIL,\n GET_ACORPORATE_SUCCESS,\n GET_ACORPORATE_FAIL,\n GET_RFEECORPORATE_SUCCESS,\n GET_RFEECORPORATE_FAIL,\n GET_EMPLOYEECORPORATE_SUCCESS,\n GET_EMPLOYEECORPORATE_FAIL,\n GET_LABSCORPORATE_SUCCESS,\n GET_LABSCORPORATE_FAIL,\n ADD_CEMPLOYEE_DATA_SUCCESS,\n ADD_CEMPLOYEE_DATA_FAIL,\n ADD_CEMPLOYEE_FILE_SUCCESS,\n ADD_CEMPLOYEE_FILE_FAIL,\n UPDATE_CEMPLOYEE_SUCCESS,\n UPDATE_CEMPLOYEE_FAIL,\n DELETE_CEDATA_SUCCESS,\n DELETE_CEDATA_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n cemployeeDatas: [],\n cemployee: [],\n cemployees: [],\n error: {},\n};\n\nconst cemployeeDatas = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_LABCORPORATE_SUCCESS:\n return {\n ...state,\n cemployeeDatas: action.payload.data,\n };\n\n case GET_LABCORPORATE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_ALABCORPORATE_SUCCESS:\n return {\n ...state,\n cemployeeDatas: action.payload.data,\n };\n\n case GET_ALABCORPORATE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_ACORPORATE_SUCCESS:\n return {\n ...state,\n cemployeeDatas: action.payload.data,\n };\n\n case GET_ACORPORATE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_RFEECORPORATE_SUCCESS:\n return {\n ...state,\n cemployeeDatas: action.payload.data,\n };\n\n case GET_RFEECORPORATE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_EMPLOYEECORPORATE_SUCCESS:\n return {\n ...state,\n cemployeeDatas: action.payload.data,\n };\n\n case GET_EMPLOYEECORPORATE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case GET_LABSCORPORATE_SUCCESS:\n return {\n ...state,\n cemployeeDatas: action.payload.data,\n };\n\n case GET_LABSCORPORATE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case ADD_CEMPLOYEE_DATA_SUCCESS:\n return {\n ...state,\n cemployeeDatas: [...state.cemployeeDatas, action.payload.data],\n };\n\n case ADD_CEMPLOYEE_DATA_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n case ADD_CEMPLOYEE_FILE_SUCCESS:\n return {\n ...state,\n cemployeeDatas: [...state.cemployeeDatas, action.payload.data],\n };\n\n case ADD_CEMPLOYEE_FILE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n \n case UPDATE_CEMPLOYEE_SUCCESS:\n return {\n ...state,\n cemployees: state.cemployees.map(cemployee =>\n cemployee.id.toString() === action.payload.id.toString()\n ? { cemployee, ...action.payload }\n : cemployee\n ),\n };\n\n case UPDATE_CEMPLOYEE_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n case DELETE_CEDATA_SUCCESS:\n return {\n ...state,\n cemployees: state.cemployees.filter(\n cemployee =>\n cemployee.id.toString() !== action.payload.id.toString()\n ),\n };\n\n case DELETE_CEDATA_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default cemployeeDatas;\n","import {\n GET_ACTIVITY_LOG_AUDITOR_SUCCESS,\n GET_ACTIVITY_LOG_AUDITOR_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n activitylogauditor: [],\n error: {},\n};\n\nconst activitylogauditor = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_ACTIVITY_LOG_AUDITOR_SUCCESS:\n return {\n ...state,\n activitylogauditor: action.payload.data,\n };\n\n case GET_ACTIVITY_LOG_AUDITOR_FAIL:\n return {\n ...state,\n error: action.payload,\n };\n \n default:\n return state;\n }\n};\n\nexport default activitylogauditor;\n","import {\n GET_REVIEW_PERFORMANCE_SUCCESS,\n GET_REVIEW_PERFORMANCE_FAIL,\n GET_REVIEW_PERFORMANCE_TEST_SUCCESS,\n GET_REVIEW_PERFORMANCE_TEST_FAIL,\n} from \"./actionTypes\";\n\nconst INIT_STATE = {\n ReviewPerformance: [],\n ReviewPerformanceTest: [],\n error: {},\n};\n\nconst ReviewPerformance = (state = INIT_STATE, action) => {\n switch (action.type) {\n case GET_REVIEW_PERFORMANCE_SUCCESS:\n console.log(\"Payload received in reducer:\", action.payload);\n return {\n ...state,\n ReviewPerformance: action.payload, // Store the whole payload\n };\n\n case GET_REVIEW_PERFORMANCE_FAIL:\n console.log(\"error Payload received in reducer:\", action.payload);\n return {\n ...state,\n error: action.payload,\n };\n\n case GET_REVIEW_PERFORMANCE_TEST_SUCCESS:\n console.log(\"Payload tests received in reducer:\", action.payload);\n return {\n ...state,\n ReviewPerformanceTest: action.payload, // Store the whole payload\n };\n \n case GET_REVIEW_PERFORMANCE_TEST_FAIL:\n console.log(\"error Payload received in reducer:\", action.payload);\n return {\n ...state,\n error: action.payload,\n };\n \n default:\n return state;\n }\n};\n\nexport default ReviewPerformance;\n ","import { combineReducers } from \"redux\";\n\n// Front\nimport Layout from \"./layout/reducer\";\n\n//Dashboard\nimport Dashboard from \"./dashboard/reducer\";\n\n// Authentication\nimport Login from \"./auth/login/reducer\";\nimport Account from \"./auth/register/reducer\";\nimport PatientInformation from \"./auth/patientinformation/reducer\";\nimport B2bClientInformation from \"./auth/b2bclientinformation/reducer\";\nimport DonorInformation from \"./auth/donorinformation/reducer\";\nimport LabInformation from \"./auth/labinformation/reducer\";\nimport CorporateInformation from \"./auth/corporateinformation/reducer\";\nimport ForgetPassword from \"./auth/forgetpwd/reducer\";\nimport ConfirmPassword from \"./auth/confirmpwd/reducer\";\nimport ChangePassword from \"./auth/changepwd/reducer\";\nimport LabProfile from \"./auth/labprofile/reducer\";\nimport B2bProfile from \"./auth/b2bprofile/reducer\";\nimport DonorProfile from \"./auth/donorprofile/reducer\";\nimport StaffProfile from \"./auth/staffprofile/reducer\";\nimport SampleCollectorProfile from \"./auth/samplecollectorprofile/reducer\";\nimport LabSettings from \"./auth/labsettings/reducer\";\nimport Payments from \"./auth/payments/reducer\";\nimport DonorSettings from \"./auth/donorsettings/reducer\";\nimport PatientProfile from \"./auth/patientprofile/reducer\";\nimport CorporateProfile from \"./auth/corporateprofile/reducer\";\n\n\n//LabMarket\nimport LabMarket from \"./labmarket/reducer\";\n//test market\nimport TestMarket from \"./testmarket/reducer\";\nimport ProfileMarket from \"./profilemarket/reducer\";\nimport PackageMarket from \"./packagemarket/reducer\";\nimport RadiologyMarket from \"./radiologymarket/reducer\";\nimport tests from \"./test-list/reducer\";\n\n\n//offered tests\nimport offeredTests from \"./offered-tests/reducer\";\n\n//pathologists\nimport pathologists from \"./pathologists/reducer\";\nimport activitylog from \"./activtylog/reducer\";\nimport sampleNotification from \"./samplenotification/reducer\";\nimport marketerNotification from \"./marketernotification/reducer\";\nimport csrAdminNotification from \"./csradminnotification/reducer\";\nimport regAdminNotification from \"./regadminnotification/reducer\";\nimport csrOfficerNotification from \"./csrofficernotification/reducer\";\nimport activitylogfinance from \"./activtylogfinance/reducer\";\nimport activitylogmarketer from \"./activtylogmarketer/reducer\";\n\n//pathologists\nimport bankaccounts from \"./bankaccounts/reducer\";\n\n//carts\nimport carts from \"./carts/reducer\";\nimport quotes from \"./quotes/reducer\";\n\n//home sample collectors\nimport sampleCollectors from \"./sample-collectors/reducer\";\n\n//sample collectors test appointments\nimport sampleCollectorDatas from \"./sample-collector-test-appointments/reducer\";\n\n//test certificates\nimport qualityCertificates from \"./quality-certificates/reducer\";\n\nimport paymentStatuss from \"./payment-statuss/reducer\";\n\n//Advertisement\nimport advertisements from \"./advertisements/reducer\";\n//Advertisement price list\nimport advertisementPriceLists from \"./advertisement-price-lists/reducer\";\n\n//Advertisement Live\nimport advertisementLives from \"./advertisement-live/reducer\";\n\n//lab Advertisement\nimport labAdvertisements from \"./lab-advertisements/reducer\";\n\n//lab Advertisement\nimport labAdvertisementRequests from \"./lab-advertisement-requests/reducer\";\n\n//lab list Pending\nimport labsListPendingFee from \"./labs-list-pending/reducer\";\nimport labslisttt from \"./labs-listttt/reducer\";\n\n//shared-percentage-pending-fee\nimport sharedPercentagePendingFeeTests from \"./shared-percentage-pending-fee/reducer\";\n\n//Discount Labhazir\nimport discountLabHazirs from \"./discount-labhazir/reducer\";\nimport labsList from \"./labs-list/reducer\";\n///////////////\nimport discountLabs from \"./discount-lab/reducer\";\n\n// Territories List\nimport territoriesList from \"./territories-list/reducer\";\n\n// Lab Names List\nimport labNamesList from \"./lab-names/reducer\";\n\n// medical test List\nimport onlyMedicalTestList from \"./only-medical-tests-list/reducer\";\n\n// CSR Territories List\nimport csrTerritoryList from \"./csr-territory-list/reducer\";\n\n// auditor Territories List\nimport auditorTerritoryList from \"./auditor-territory-list/reducer\";\n\n\n//Discount Labhazir to Labs\nimport discountLabHazirToLabs from \"./discount-labhazir-to-lab/reducer\";\n\nimport referrelFeeLabs from \"./referrel-fee-to-lab/reducer\";\n\n//feedbacks\nimport feedbacks from \"./feedbacks/reducer\";\nimport labsRating from \"./labs-rating/reducer\";\nimport labsTesting from \"./labs-testing/reducer\";\n\n\n//test appointment\nimport testAppointments from \"./test-appointments/reducer\";\n\n\n// patient test appointments\nimport patientTestAppointments from \"./patient-test-appointments/reducer\";\n\n// b2b\nimport b2bReferredPatients from \"./b2b-referred-patients/reducer\";\nimport b2bLabShares from \"./b2b-lab-shares/reducer\";\nimport b2bPayments from \"./b2bcheckout/reducer\";\n\n\n// donor\nimport donorReferredAppointments from \"./donor-referred-appointments/reducer\";\nimport donorPayments from \"./donorcheckout/reducer\";\n\n//admin\nimport b2bAllClients from \"./b2b-all-clients/reducer\";\n\n// feedback and checkout\nimport patientFeedback from \"./patient-feedback/reducer\";\n\nimport complaints from \"./complaints/reducer\";\nimport csrcomplaints from \"./csr-complaints/reducer\";\nimport csrappointments from \"./csr-admin-appointments/reducer\";\nimport notes from \"./csr-comments/reducer\";\nimport patients from \"./patients-list/reducer\";\nimport testDescriptions from \"./test-descriptions/reducer\";\n\nimport checkout from \"./checkout/reducer\";\n\n// invoices\nimport invoices from \"./invoices/reducer\";\n\n\n// Advertisement invoices\nimport advinvoice from \"./adv-invoice/reducer\";\n\n\n// account statements\nimport accountStatements from \"./account-statements/reducer\";\nimport donoraccountStatements from \"./donor-account-statements/reducer\";\nimport donorsaccountStatements from \"./donors-account-statements/reducer\";\nimport b2baccountStatements from \"./b2b-account-statements/reducer\";\nimport bankaccountStatements from \"./bank-account-statements/reducer\";\n\n\n\nimport staff from \"./staff/reducer\";\nimport audits from \"./auditor/reducer\";\nimport msgs from \"./chat-box/reducer\";\n// admins\nimport registrationAdmin from \"./registration-admin/reducer\";\nimport financeAdmin from \"./finance-admin/reducer\";\n\nimport csrAdmin from \"./csr-admin/reducer\";\nimport auditorAdmin from \"./auditor-admin/reducer\";\nimport inPayments from \"./inpayments/reducer\";\nimport outPayments from \"./outpayments/reducer\";\nimport bankTransfers from \"./banktransferdetails/reducer\";\n\n// Bank\nimport createBank from \"./createbank/reducer\";\nimport bankAccount from \"./bankaccount/reducer\";\n\n// Corporate\nimport cemployeeData from \"./corporatedata/reducer\";\nimport activitylogauditor from \"./activtylogAuditor/reducer\";\nimport ReviewPerformance from \"./review-performance/reducer\";\n\n\nconst rootReducer = combineReducers({\n // public\n Dashboard,\n ReviewPerformance,\n activitylogauditor,\n donorsaccountStatements,\n referrelFeeLabs,\n Layout,\n createBank,\n cemployeeData,\n Login,\n Account,\n outPayments,\n bankTransfers,\n bankAccount,\n PatientInformation,\n B2bClientInformation,\n DonorInformation,\n financeAdmin,\n msgs,\n bankaccounts,\n DonorProfile,\n LabInformation,\n CorporateInformation,\n ForgetPassword,\n ConfirmPassword,\n ChangePassword,\n labsRating,\n labsTesting,\n LabProfile,\n B2bProfile,\n b2baccountStatements,\n bankaccountStatements,\n regAdminNotification,\n StaffProfile,\n labsListPendingFee,\n SampleCollectorProfile,\n sampleCollectorDatas,\n csrOfficerNotification,\n LabSettings,\n Payments,\n sharedPercentagePendingFeeTests,\n PatientProfile,\n CorporateProfile,\n donorReferredAppointments,\n LabMarket,\n complaints,\n csrcomplaints,\n csrappointments,\n notes,\n patients,\n testDescriptions,\n TestMarket,\n ProfileMarket,\n PackageMarket,\n RadiologyMarket,\n tests,\n offeredTests,\n pathologists,\n sampleNotification,\n marketerNotification,\n csrAdminNotification,\n activitylog,\n activitylogfinance,\n activitylogmarketer,\n donorPayments,\n inPayments,\n paymentStatuss,\n advertisements,\n b2bPayments,\n advertisementPriceLists,\n labAdvertisements,\n labAdvertisementRequests,\n advertisementLives,\n advertisementPriceLists,\n labAdvertisements,\n labAdvertisementRequests,\n b2bPayments,\n discountLabHazirs,\n labsList,\n labslisttt,\n territoriesList,\n labNamesList,\n onlyMedicalTestList,\n csrTerritoryList,\n auditorTerritoryList,\n discountLabs,\n discountLabHazirToLabs, \n carts,\n quotes,\n sampleCollectors,\n qualityCertificates,\n feedbacks,\n testAppointments,\n DonorSettings,\n patientTestAppointments,\n b2bReferredPatients,\n b2bLabShares,\n b2bAllClients,\n patientFeedback,\n checkout,\n invoices,\n advinvoice,\n accountStatements,\n donoraccountStatements,\n staff,\n audits,\n registrationAdmin,\n csrAdmin,\n auditorAdmin,\n});\n\nexport default rootReducer;\n","import { call, takeEvery, put } from \"redux-saga/effects\";\n\nimport {\n CHANGE_LAYOUT,\n CHANGE_LAYOUT_WIDTH,\n CHANGE_SIDEBAR_THEME,\n CHANGE_SIDEBAR_THEME_IMAGE,\n CHANGE_SIDEBAR_TYPE,\n CHANGE_TOPBAR_THEME,\n TOGGLE_RIGHT_SIDEBAR,\n SHOW_RIGHT_SIDEBAR,\n HIDE_RIGHT_SIDEBAR,\n} from \"./actionTypes\";\n\nimport {\n changeSidebarType as changeSidebarTypeAction,\n changeTopbarTheme as changeTopbarThemeAction,\n} from \"./actions\";\n\n/**\n * Changes the body attribute\n */\nfunction changeBodyAttribute(attribute, value) {\n if (document.body) document.body.setAttribute(attribute, value);\n return true;\n}\n\n/**\n * Toggle the class on body\n * @param {*} cssClass\n */\nfunction manageBodyClass(cssClass, action = \"toggle\") {\n switch (action) {\n case \"add\":\n if (document.body) document.body.classList.add(cssClass);\n break;\n case \"remove\":\n if (document.body) document.body.classList.remove(cssClass);\n break;\n default:\n if (document.body) document.body.classList.toggle(cssClass);\n break;\n }\n\n return true;\n}\n\n/**\n * Changes the layout type\n * @param {*} param0\n */\nfunction* changeLayout({ payload: layout }) {\n try {\n if (layout === \"horizontal\") {\n yield put(changeTopbarThemeAction(\"dark\"));\n document.body.removeAttribute(\"data-sidebar\");\n document.body.removeAttribute(\"data-sidebar-image\");\n document.body.removeAttribute(\"data-sidebar-size\");\n } else {\n yield put(changeTopbarThemeAction(\"dark\"));\n }\n yield call(changeBodyAttribute, \"data-layout\", layout);\n } catch (error) {}\n}\n\n/**\n * Changes the layout width\n * @param {*} param0\n */\nfunction* changeLayoutWidth({ payload: width }) {\n try {\n if (width === \"boxed\") {\n yield put(changeSidebarTypeAction(\"icon\"));\n yield call(changeBodyAttribute, \"data-layout-size\", width);\n yield call(changeBodyAttribute, \"data-layout-scrollable\", false);\n } else if (width === \"scrollable\") {\n yield put(changeSidebarTypeAction(\"default\"));\n yield call(changeBodyAttribute, \"data-layout-scrollable\", true);\n } else {\n yield put(changeSidebarTypeAction(\"default\"));\n yield call(changeBodyAttribute, \"data-layout-size\", width);\n yield call(changeBodyAttribute, \"data-layout-scrollable\", false);\n }\n } catch (error) {}\n}\n\n/**\n * Changes the left sidebar theme\n * @param {*} param0\n */\nfunction* changeLeftSidebarTheme({ payload: theme }) {\n try {\n yield call(changeBodyAttribute, \"data-sidebar\", theme);\n } catch (error) {}\n}\n\n/**\n * Changes the left sidebar theme Image\n * @param {*} param0\n */\nfunction* changeLeftSidebarThemeImage({ payload: theme }) {\n try {\n yield call(changeBodyAttribute, \"data-sidebar-image\", theme);\n } catch (error) {}\n}\n\n/**\n * Changes the topbar theme\n * @param {*} param0\n */\nfunction* changeTopbarTheme({ payload: theme }) {\n try {\n yield call(changeBodyAttribute, \"data-topbar\", theme);\n } catch (error) {}\n}\n\n/**\n * Changes the left sidebar type\n * @param {*} param0\n */\nfunction* changeLeftSidebarType({ payload: { sidebarType, isMobile } }) {\n try {\n switch (sidebarType) {\n case \"compact\":\n yield call(changeBodyAttribute, \"data-sidebar-size\", \"small\");\n yield call(manageBodyClass, \"sidebar-enable\", \"remove\");\n yield call(manageBodyClass, \"vertical-collpsed\", \"remove\");\n break;\n case \"icon\":\n yield call(changeBodyAttribute, \"data-sidebar-size\", \"\");\n yield call(changeBodyAttribute, \"data-keep-enlarged\", \"true\");\n yield call(manageBodyClass, \"vertical-collpsed\", \"add\");\n break;\n case \"condensed\":\n // alert('condensed');\n yield call(manageBodyClass, \"sidebar-enable\", \"add\");\n if (window.screen.width >= 998) {\n yield call(manageBodyClass, \"vertical-collpsed\", \"remove\");\n yield call(manageBodyClass, \"sidebar-enable\", \"remove\");\n yield call(manageBodyClass, \"vertical-collpsed\", \"add\");\n yield call(manageBodyClass, \"sidebar-enable\", \"add\");\n } else {\n yield call(manageBodyClass, \"sidebar-enable\", \"add\");\n yield call(manageBodyClass, \"vertical-collpsed\", \"add\");\n }\n // if (!isMobile)\n break;\n default:\n yield call(changeBodyAttribute, \"data-sidebar-size\", \"\");\n yield call(manageBodyClass, \"sidebar-enable\", \"remove\");\n if (!isMobile)\n yield call(manageBodyClass, \"vertical-collpsed\", \"remove\");\n break;\n }\n } catch (error) {}\n}\n\n/**\n * Toggles the rightsidebar\n */\nfunction* toggleRightSidebar() {\n try {\n yield call(manageBodyClass, \"right-bar-enabled\");\n } catch (error) {}\n}\n\n/**\n * Show the rightsidebar\n */\nfunction* showRightSidebar() {\n try {\n yield call(manageBodyClass, \"right-bar-enabled\", \"add\");\n } catch (error) {}\n}\n\n/**\n * Hides the rightsidebar\n */\nfunction* hideRightSidebar() {\n try {\n yield call(manageBodyClass, \"right-bar-enabled\", \"remove\");\n } catch (error) {}\n}\n\nfunction* LayoutSaga() {\n yield takeEvery(CHANGE_LAYOUT, changeLayout);\n yield takeEvery(CHANGE_LAYOUT_WIDTH, changeLayoutWidth);\n yield takeEvery(CHANGE_SIDEBAR_THEME, changeLeftSidebarTheme);\n yield takeEvery(CHANGE_SIDEBAR_THEME_IMAGE, changeLeftSidebarThemeImage);\n yield takeEvery(CHANGE_SIDEBAR_TYPE, changeLeftSidebarType);\n yield takeEvery(CHANGE_TOPBAR_THEME, changeTopbarTheme);\n yield takeEvery(TOGGLE_RIGHT_SIDEBAR, toggleRightSidebar);\n yield takeEvery(SHOW_RIGHT_SIDEBAR, showRightSidebar);\n yield takeEvery(HIDE_RIGHT_SIDEBAR, hideRightSidebar);\n}\n\nexport default LayoutSaga;\n","import axios from \"axios\";\n\n//apply base url for axios\nconst API_URL = \"\";\n\nconst axiosApi = axios.create({\n baseURL: API_URL,\n});\n\naxiosApi.interceptors.response.use(\n response => response,\n error => Promise.reject(error)\n);\n\nexport async function get(url, config = {}) {\n return await axiosApi.get(url, { ...config }).then(response => response.data);\n}\n\nexport async function post(url, data, config = {}) {\n return axiosApi\n .post(url, { ...data }, { ...config })\n .then(response => response.data);\n}\n\nexport async function put(url, data, config = {}) {\n return axiosApi\n .put(url, { ...data }, { ...config })\n .then(response => response.data);\n}\n\nexport async function del(url, config = {}) {\n return await axiosApi\n .delete(url, { ...config })\n .then(response => response.data);\n}\n","import axios from \"axios\"\nimport { del, get, post, put } from \"./api_helper\"\nimport * as url from \"./url_helper\"\n\n// Gets the logged in user data from local session\nconst getLoggedInUser = () => {\n const user = localStorage.getItem(\"user\")\n if (user) return JSON.parse(user)\n return null\n}\n\n//is user is logged in\nconst isUserAuthenticated = () => {\n return getLoggedInUser() !== null\n}\n\n// Register Method\nconst postFakeRegister = data => {\n return axios\n .post(url.POST_FAKE_REGISTER, data)\n .then(response => {\n if (response.status >= 200 || response.status <= 299) return response.data\n throw response.data\n })\n .catch(err => {\n let message\n if (err.response && err.response.status) {\n switch (err.response.status) {\n case 404:\n message = \"Sorry! the page you are looking for could not be found\"\n break\n case 500:\n message =\n \"Sorry! something went wrong, please contact our support team\"\n break\n case 401:\n message = \"Invalid credentials\"\n break\n default:\n message = err[1]\n break\n }\n }\n throw message\n })\n}\n\n// Login Method\nconst postFakeLogin = data => post(url.POST_FAKE_LOGIN, data)\n\n// postForgetPwd\nconst postFakeForgetPwd = data => post(url.POST_FAKE_PASSWORD_FORGET, data)\n\n// Edit profile\nconst postJwtProfile = data => post(url.POST_EDIT_JWT_PROFILE, data)\n\nconst postFakeProfile = data => post(url.POST_EDIT_PROFILE, data)\n\n// Register Method\nconst postJwtRegister = (url, data) => {\n return axios\n .post(url, data)\n .then(response => {\n if (response.status >= 200 || response.status <= 299) return response.data\n throw response.data\n })\n .catch(err => {\n var message\n if (err.response && err.response.status) {\n switch (err.response.status) {\n case 404:\n message = \"Sorry! the page you are looking for could not be found\"\n break\n case 500:\n message =\n \"Sorry! something went wrong, please contact our support team\"\n break\n case 401:\n message = \"Invalid credentials\"\n break\n default:\n message = err[1]\n break\n }\n }\n throw message\n })\n}\n\n// Login Method\nconst postJwtLogin = data => post(url.POST_FAKE_JWT_LOGIN, data)\n\n// postForgetPwd\nconst postJwtForgetPwd = data => post(url.POST_FAKE_JWT_PASSWORD_FORGET, data)\n\n// postSocialLogin\nexport const postSocialLogin = data => post(url.SOCIAL_LOGIN, data)\n\n// get Products\nexport const getProducts = () => get(url.GET_PRODUCTS)\n\n// get Product detail\nexport const getProductDetail = id =>\n get(`${url.GET_PRODUCTS_DETAIL}/${id}`, { params: { id } })\n\n// get Events\nexport const getEvents = () => get(url.GET_EVENTS)\n\n// add Events\nexport const addNewEvent = event => post(url.ADD_NEW_EVENT, event)\n\n// update Event\nexport const updateEvent = event => put(url.UPDATE_EVENT, event)\n\n// delete Event\nexport const deleteEvent = event =>\n del(url.DELETE_EVENT, { headers: { event } })\n\n// get Categories\nexport const getCategories = () => get(url.GET_CATEGORIES)\n\n// get chats\nexport const getChats = () => get(url.GET_CHATS)\n\n// get groups\nexport const getGroups = () => get(url.GET_GROUPS)\n\n// get Contacts\nexport const getContacts = () => get(url.GET_CONTACTS)\n\n\n// get messages\nexport const getMessages = (roomId = \"\") =>\n get(`${url.GET_MESSAGES}/${roomId}`, { params: { roomId } })\n\n// post messages\nexport const addMessage = message => post(url.ADD_MESSAGE, message)\n\n// get orders\nexport const getOrders = () => get(url.GET_ORDERS)\n\n// add order\nexport const addNewOrder = order => post(url.ADD_NEW_ORDER, order)\n\n// update order\nexport const updateOrder = order => put(url.UPDATE_ORDER, order)\n\n// delete order\nexport const deleteOrder = order =>\n del(url.DELETE_ORDER, { headers: { order } })\n\n// get cart data\nexport const getCartData = () => get(url.GET_CART_DATA)\n\n// get customers\nexport const getCustomers = () => get(url.GET_CUSTOMERS)\n\n// add customer\nexport const addNewCustomer = customer => post(url.ADD_NEW_CUSTOMER, customer)\n\n// update customer\nexport const updateCustomer = customer => put(url.UPDATE_CUSTOMER, customer)\n\n// delete customer\nexport const deleteCustomer = customer =>\n del(url.DELETE_CUSTOMER, { headers: { customer } })\n\n// get shops\nexport const getShops = () => get(url.GET_SHOPS)\n\n// get wallet\nexport const getWallet = () => get(url.GET_WALLET)\n\n// get crypto order\nexport const getCryptoOrder = () => get(url.GET_CRYPTO_ORDERS)\n\n// get invoices\nexport const getInvoices = () => get(url.GET_INVOICES)\n\n\n// // get invoice details\n// export const getInvoiceDetail = id =>\n// get(`${url.GET_ADV_INVOICE_DETAIL}/${id}`, { params: { id } })\n\n// get project\nexport const getProjects = () => get(url.GET_PROJECTS)\n\n// get project details\nexport const getProjectsDetails = id =>\n get(`${url.GET_PROJECT_DETAIL}/${id}`, { params: { id } })\n\n// add project\nexport const addNewProject = project => post(url.ADD_NEW_PROJECT, project)\n\n// update project\nexport const updateProject = project => put(url.UPDATE_PROJECT, project)\n\n// delete project\nexport const deleteProject = project =>\n del(url.DELETE_PROJECT, { headers: { project } })\n\n// get tasks\nexport const getTasks = () => get(url.GET_TASKS)\n\n// get contacts\nexport const getUsers = () => get(url.GET_USERS)\n\n// add user\nexport const addNewUser = user => post(url.ADD_NEW_USER, user)\n\n// update user\nexport const updateUser = user => put(url.UPDATE_USER, user)\n\n// delete user\nexport const deleteUser = user =>\n del(url.DELETE_USER, { headers: { user } })\n\nexport const getUserProfile = () => get(url.GET_USER_PROFILE)\n\n// get inboxmail\nexport const getInboxMails = () => get(url.GET_INBOX_MAILS)\n\n// add inboxmail\nexport const addNewInboxMail = inboxmail => post(url.ADD_NEW_INBOX_MAIL, inboxmail)\n\n// delete inboxmail\nexport const deleteInboxMail = inboxmail =>\n del(url.DELETE_INBOX_MAIL, { headers: { inboxmail } })\n\n// get starredmail\nexport const getStarredMails = () => get(url.GET_STARRED_MAILS)\n// get importantmail\nexport const getImportantMails = () => get(url.GET_IMPORTANT_MAILS)\n\n// get sent mail\nexport const getSentMails = () => get(url.GET_SENT_MAILS)\n\n// get trash mail\nexport const getTrashMails = () => get(url.GET_TRASH_MAILS)\n\n// get starredmail\nexport const getDraftMails = () => get(url.GET_DRAFT_MAILS)\n\n// get dashboard charts data\nexport const getWeeklyData = () => get(url.GET_WEEKLY_DATA);\nexport const getYearlyData = () => get(url.GET_YEARLY_DATA);\nexport const getMonthlyData = () => get(url.GET_MONTHLY_DATA);\n\nexport const topSellingData = month =>\n get(`${url.TOP_SELLING_DATA}/${month}`, { params: { month } })\n\nexport const getEarningChartsData = month =>\n get(`${url.GET_EARNING_DATA}/${month}`, { params: { month } })\n\nexport {\n getLoggedInUser,\n isUserAuthenticated,\n postFakeRegister,\n postFakeLogin,\n postFakeProfile,\n postFakeForgetPwd,\n postJwtRegister,\n postJwtLogin,\n postJwtForgetPwd,\n postJwtProfile\n}\n","import { call, put, takeEvery, all, fork } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_CHARTS_DATA } from \"./actionTypes\";\nimport { apiSuccess, apiFail } from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getWeeklyData,\n getYearlyData,\n getMonthlyData,\n}\n from \"../../helpers/fakebackend_helper\";\n\nfunction* getChartsData({ payload: periodType }) {\n try {\n var response;\n if (periodType == \"monthly\") {\n response = yield call(getWeeklyData, periodType);\n }\n if (periodType == \"yearly\") {\n response = yield call(getYearlyData, periodType);\n }\n if (periodType == \"weekly\") {\n response = yield call(getMonthlyData, periodType);\n }\n\n yield put(apiSuccess(GET_CHARTS_DATA, response));\n } catch (error) {\n yield put(apiFail(GET_CHARTS_DATA, error));\n }\n}\n\n\nexport function* watchGetChartsData() {\n yield takeEvery(GET_CHARTS_DATA, getChartsData);\n}\n\nfunction* dashboardSaga() {\n yield all([fork(watchGetChartsData)]);\n}\n\nexport default dashboardSaga;\n","export default function authHeader() {\n if (localStorage.getItem(\"authUser\") == \"undefined\") {\n return \"\";\n } else {\n const obj = JSON.parse(localStorage.getItem(\"authUser\"));\n\n if (obj && obj.token) {\n return obj.token;\n } else {\n return \"\";\n }\n }\n}\n","import { identity } from \"@fullcalendar/core\";\nimport axios from \"axios\";\nimport bankAccount from \"pages/BankAccounts/bank-account\";\nimport discountLabHazirs from \"store/discount-labhazir/reducer\";\nimport { del, get, post, put } from \"./api_helper\";\nimport authHeader from \"./django-token-access/auth-token-header\";\nimport * as url from \"./url_helper\";\nimport { message } from \"antd\";\n\nfunction getHeader(token) {\n // If there is some token then return the header with token\n if (token) {\n return {\n Authorization: \"Token \" + token,\n \"Content-Type\":\n \"multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW\",\n };\n } else {\n return {\n \"Content-Type\":\n \"multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW\",\n };\n }\n}\n\n// Post Register Information to create account\nexport const postRegister = user => {\nconsole.log(\"django user\", user)\n\n return axios\n .post(url.POST_REGISTER, user)\n .then(response => {\n if (response.status >= 200 || response.status <= 299)\n return response.data;\n throw response.data;\n }\n)\n \n .catch(err => {\n let message;\n if (err.response && err.response.status) {\n switch (err.response.status) {\n case 400:\n message = err.response.data;\n break;\n case 404:\n message = \"Sorry! the page you are looking for could not be found\";\n break;\n case 500:\n message =\n \"Sorry! something went wrong, please contact our support team\";\n break;\n case 401:\n message = \"Invalid credentials\";\n break;\n default:\n message = err[1];\n break;\n }\n }\n throw message;\n \n }\n );\n};\n\n// Post Patient Information\nexport const postPatientInformation = (id, patient) => {\n let formData = new FormData();\n formData.append(\"name\", patient.name);\n formData.append(\"phone\", patient.phone);\n formData.append(\"email\", patient.email);\n formData.append(\"city_id\", patient.city_id);\n formData.append(\"address\", patient.address);\n formData.append(\"url\", patient.url);\n formData.append(\"is_assosiatewith_anycorporate\", patient.is_assosiatewith_anycorporate);\n formData.append(\"corporate_id\", patient.corporate_id);\n formData.append(\"employee_id_card\", patient.employee_id_card);\n console.log(url, patient.city_id)\n return axios\n .post(`${url.POST_PATIENT_INFORMATION}/${id}`, formData, {\n headers: getHeader(authHeader()),\n })\n .then(response => {\n if (response.status >= 200 || response.status <= 299)\n return response.data;\n throw response.data;\n })\n .catch(err => {\n let message;\n if (err.response && err.response.status) {\n switch (err.response.status) {\n case 400:\n message = err.response.data;\n break;\n case 404:\n message = \"Sorry! the page you are looking for could not be found\";\n break;\n case 500:\n message =\n \"Sorry! something went wrong, please contact our support team\";\n break;\n case 401:\n message = \"Invalid credentials\";\n break;\n default:\n message = err[1];\n break;\n }\n }\n throw message;\n });\n};\n// Post Patient Information\nexport const postB2bClientInformation = (id, b2bclient) => {\n let formData = new FormData();\n formData.append(\"email\", b2bclient.email);\n formData.append(\"business_name\", b2bclient.name);\n formData.append(\"landline\", b2bclient.landline);\n formData.append(\"website_url\", b2bclient.website_url);\n formData.append(\"city_id\", b2bclient.city_id);\n formData.append(\"business_logo\", b2bclient.business_logo);\n // formData.append(\"city\", b2bclient.city);\n // formData.append(\"district\", b2bclient.district);\n\n return axios\n .post(`${url.POST_B2BCLIENT_INFORMATION}/${id}`, formData, {\n headers: getHeader(authHeader()),\n })\n .then(response => {\n if (response.status >= 200 || response.status <= 299)\n return response.data;\n throw response.data;\n })\n .catch(err => {\n let message;\n if (err.response && err.response.status) {\n switch (err.response.status) {\n case 400:\n message = err.response.data;\n break;\n case 404:\n message = \"Sorry! the page you are looking for could not be found\";\n break;\n case 500:\n message =\n \"Sorry! something went wrong, please contact our support team\";\n break;\n case 401:\n message = \"Invalid credentials\";\n break;\n default:\n message = err[1];\n break;\n }\n }\n throw message;\n });\n};\n\n// Post Patient Information\nexport const postDonorInformation = (id, donor) => {\n let formData = new FormData();\n formData.append(\"name\", donor.name);\n formData.append(\"phone\", donor.phone);\n formData.append(\"email\", donor.email);\n formData.append(\"type\", donor.type);\n formData.append(\"cnic\", donor.cnic);\n // formData.append(\"province\", donor.province);\n formData.append(\"city_id\", donor.city_id);\n // formData.append(\"district\", donor.district);\n formData.append(\"company_name\", donor.company_name);\n formData.append(\"is_income_tax_payable\", donor.is_income_tax_payable);\n formData.append(\"national_taxation_no\", donor.national_taxation_no);\n formData.append(\"is_blocked\", donor.is_blocked);\n\n return axios\n .post(`${url.POST_DONOR_INFORMATION}/${id}`, formData, {\n headers: getHeader(authHeader()),\n })\n .then(response => {\n if (response.status >= 200 || response.status <= 299)\n return response.data;\n throw response.data;\n })\n .catch(err => {\n let message;\n if (err.response && err.response.status) {\n switch (err.response.status) {\n case 400:\n message = err.response.data;\n break;\n case 404:\n message = \"Sorry! the page you are looking for could not be found\";\n break;\n case 500:\n message =\n \"Sorry! something went wrong, please contact our support team\";\n break;\n case 401:\n message = \"Invalid credentials\";\n break;\n default:\n message = err[1];\n break;\n }\n }\n throw message;\n });\n};\n\n// Post Lab Information\nexport const postLabInformation = (id, lab) => {\n let formData = new FormData();\n formData.append(\"name\", lab.name);\n formData.append(\"type\", lab.type);\n formData.append(\"branch_name\", lab.branch_name);\n formData.append(\"main_lab_account_id\", lab.main_lab_account_id);\n formData.append(\"email\", lab.email);\n formData.append(\"logo\", lab.logo);\n // formData.append(\"owner_name\", lab.owner_name);\n // formData.append(\"registration_no\", lab.registration_no);\n // formData.append(\"health_dept_certificate\", lab.health_dept_certificate);\n formData.append(\"national_taxation_no\", lab.national_taxation_no);\n // formData.append(\"is_iso_certified\", lab.is_iso_certified);\n // formData.append(\"iso_certificate\", lab.iso_certificate);\n formData.append(\"lab_experience\", lab.lab_experience);\n formData.append(\"is_homesampling_offered\", lab.is_homesampling_offered);\n formData.append(\"home_sampling_charges\", lab.home_sampling_charges);\n formData.append(\"state_sampling_charges\", lab.state_sampling_charges);\n formData.append(\"state_sampling_time\", lab.state_sampling_time);\n // formData.append(\"phone\", lab.phone);\n formData.append(\"landline\", lab.landline);\n formData.append(\"address\", lab.address);\n // formData.append(\"province\", lab.province);\n // formData.append(\"district\", lab.district);\n formData.append(\"city_id\", lab.city_id);\n // formData.append(\"office\", lab.office);\n // formData.append(\"complaint_handling_email\", lab.complaint_handling_email);\n // formData.append(\"complaint_handling_phone\", lab.complaint_handling_phone);\n formData.append(\n \"is_digital_payment_accepted\",\n lab.is_digital_payment_accepted\n );\n formData.append(\n \"is_Receive_Email_On_Booking\",\n lab.is_Receive_Email_On_Booking\n );\n formData.append(\n \"is_registering_for_first_time\",\n lab.is_registering_for_first_time\n );\n formData.append(\"registered_by\", lab.registered_by);\n formData.append(\"lab_staff_name\", lab.lab_staff_name);\n formData.append(\"lab_staff_designation\", lab.lab_staff_designation);\n formData.append(\"marketer_name\", lab.marketer_name);\n formData.append(\"marketer_cnic\", lab.marketer_cnic);\n formData.append(\"marketer_email\", lab.marketer_email);\n formData.append(\"marketer_phone\", lab.marketer_phone);\n formData.append(\"marketer_city\", lab.marketer_city);\n\n return axios\n .post(`${url.POST_LAB_INFORMATION}/${id}`, formData, {\n headers: getHeader(authHeader()),\n })\n .then(response => {\n if (response.status >= 200 || response.status <= 299)\n return response.data;\n throw response.data;\n })\n .catch(err => {\n let message;\n if (err.response && err.response.status) {\n switch (err.response.status) {\n case 400:\n message = err.response.data;\n break;\n case 500:\n message =\n \"Sorry! something went wrong, please contact our support team\";\n break;\n default:\n message = err[1];\n break;\n }\n }\n throw message;\n });\n};\n\n// Post Lab Information\nexport const postCorporateInformation = (id, corporate) => {\n let formData = new FormData();\n formData.append(\"name\", corporate.name);\n formData.append(\"logo\", corporate.logo);\n formData.append(\"national_taxation_no\", corporate.national_taxation_no);\n formData.append(\"email\", corporate.email);\n formData.append(\"phone\", corporate.phone);\n formData.append(\"landline\", corporate.landline);\n formData.append(\"address\", corporate.address);\n formData.append(\"city_id\", corporate.city_id);\n formData.append(\"website_url\", corporate.website_url);\n formData.append(\"payment_terms\", corporate.payment_terms);\n return axios\n .post(`${url.POST_CORPORATE_INFORMATION}/${id}`, formData, {\n headers: getHeader(authHeader()),\n })\n .then(response => {\n if (response.status >= 200 || response.status <= 299)\n return response.data;\n throw response.data;\n })\n .catch(err => {\n let message;\n if (err.response && err.response.status) {\n switch (err.response.status) {\n case 400:\n message = err.response.data;\n break;\n case 404:\n message = \"Sorry! the page you are looking for could not be found\";\n break;\n case 500:\n message =\n \"Sorry! something went wrong, please contact our support team\";\n break;\n case 401:\n message = \"Invalid credentials\";\n break;\n default:\n message = err[1];\n break;\n }\n }\n throw message;\n });\n};\n\n// Login Method\nexport const postLogin = user => {\n let formData = new FormData();\n formData.append(\"username\", user.username);\n formData.append(\"password\", user.password);\n formData.append(\"guest_id\", user.guest_id);\n\n console.log(\"django api\", user)\n return axios.post(url.POST_LOGIN, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// ------------- Get Labs Request -------------\nexport const getLabs = () =>\n get(url.GET_LABS, {\n headers: getHeader(authHeader()),\n });\nexport const getDonorsA = () =>\n get(url.GET_DONORSA, {\n headers: getHeader(authHeader()),\n });\n//////////////////////////\nexport const getLabsListing = () => {\n get(url.GET_LABS_LISTING, {\n headers: getHeader(authHeader()),\n })\n .then(response => {\n console.log('Response data:', response.data);\n })\n .catch(error => {\n console.error('Error occurred:', error);\n });\n};\n\nexport const getMainLabs = () =>\n get(url.GET_MAIN_LABS, {\n headers: getHeader(authHeader()),\n });\nexport const getDonors = () =>\n get(url.GET_DONORS, {\n headers: getHeader(authHeader()),\n });\n\n// ------------- Offered Test Requests START -------------\nexport const getTests = () =>\n get(url.GET_TESTS, {\n headers: getHeader(authHeader()),\n });\n\nexport const getUnits = () =>\n get(url.GET_UNITS, {\n headers: getHeader(authHeader()),\n });\n\nexport const getOfferedTests = id =>\n get(`${url.GET_OFFERED_TESTS}/${id}`, {\n headers: getHeader(authHeader()),\n });\nexport const getCorporateTests = id =>\n get(`${url.GET_CORPORATE_TESTS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n// List of Corporate \nexport const getLabCorporate = id =>\n get(`${url.GET_LABCORPORATE}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n // List of Corporate \n\nexport const getACorporate = () =>\n get(url.GET_ACORPORATE, {\n headers: getHeader(authHeader()),\n });\n\nexport const getRFeeCorporate = () =>\n get(url.GET_RFeeCORPORATE, {\n headers: getHeader(authHeader()),\n });\n\nexport const updateACorporateStatus = offeredTest => {\n let formData = new FormData();\n formData.append(\"plateform_charges\", offeredTest.plateform_charges);\n // formData.append(\"is_active\", offeredTest.is_active);\n\n return axios.put(`${url.UPDATE_ACORPORATE_STATUS}/${offeredTest.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\n\n// List of Accepted Corporate \nexport const getALabCorporate = id =>\n get(`${url.GET_ALABCORPORATE}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n// List of Corporate Employee\nexport const getEmployeeCorporate = id =>\n get(`${url.GET_EMPLOYEECORPORATE}/${id}`, {\n headers: getHeader(authHeader()),\n });\nexport const getLabsCorporate = id =>\n get(`${url.GET_LABSCORPORATE}/${id}`, {\n headers: getHeader(authHeader()),\n });\nexport const getOfferedTestsReferrel = id =>\n get(`${url.GET_OFFEREDTEST_REFERRELFEE}/${id}`, {\n headers: getHeader(authHeader()),\n });\nexport const getCOfferedTestsReferrel = id =>\n get(`${url.GET_COFFEREDTEST_REFERRELFEE}/${id}`, {\n headers: getHeader(authHeader()),\n });\nexport const getCOfferedProfilesReferrel = id =>\n get(`${url.GET_COFFEREDPROFILE_REFERRELFEE}/${id}`, {\n headers: getHeader(authHeader()),\n });\nexport const getCOfferedPackagesReferrel = id =>\n get(`${url.GET_COFFEREDPACKAGE_REFERRELFEE}/${id}`, {\n headers: getHeader(authHeader()),\n });\nexport const getCOfferedRadiologysReferrel = id =>\n get(`${url.GET_COFFEREDRADIOLOGY_REFERRELFEE}/${id}`, {\n headers: getHeader(authHeader()),\n });\nexport const getOfferedProfilesReferrel = id =>\n get(`${url.GET_OFFEREDPROFILE_REFERRELFEE}/${id}`, {\n headers: getHeader(authHeader()),\n });\nexport const getOfferedPackagesReferrel = id =>\n get(`${url.GET_OFFEREDPACKAGE_REFERRELFEE}/${id}`, {\n headers: getHeader(authHeader()),\n });\nexport const getOfferedRadiologysReferrel = id =>\n get(`${url.GET_OFFEREDRADIOLOGY_REFERRELFEE}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const addNewOfferedTest = (offeredTest, id) => {\n let formData = new FormData();\n formData.append(\"test_id\", offeredTest.test_id);\n // formData.append(\"unit_id\", offeredTest.unit_id);\n formData.append(\"duration_required\", offeredTest.duration_required);\n formData.append(\"duration_type\", offeredTest.duration_type);\n formData.append(\"sample_type\", offeredTest.sample_type);\n formData.append(\"price\", offeredTest.price);\n formData.append(\"is_eqa_participation\", offeredTest.is_eqa_participation);\n formData.append(\n \"is_home_sampling_available\",\n offeredTest.is_home_sampling_available\n );\n formData.append(\"is_test_performed\", offeredTest.is_test_performed);\n formData.append(\"is_active\", offeredTest.is_active);\n console.log(\"api helper\",offeredTest, id)\n return axios.post(`${url.ADD_NEW_OFFERED_TEST}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\nexport const addNewCorporateTest = (offeredTest, id) => {\n let formData = new FormData();\n formData.append(\"test_id\", offeredTest.test_id);\n formData.append(\"price\", offeredTest.price);\n formData.append(\"start_date\", offeredTest.start_date);\n formData.append(\"end_date\", offeredTest.end_date);\n console.log(\"api helper\",offeredTest, id)\n return axios.post(`${url.ADD_NEW_CORPORATE_TEST}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\nexport const addNewCorporate = (offeredTest, id) => {\n let formData = new FormData();\n formData.append(\"corporate_id\", offeredTest.corporate_id);\n formData.append(\"status\", offeredTest.status);\n formData.append(\"allow_all\", offeredTest.allow_all);\n console.log(\"api helper\",offeredTest, id)\n return axios.post(`${url.ADD_NEW_CORPORATE}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\nexport const addNewOfferedMainTest = (offeredTest, id) => {\n let formData = new FormData();\n formData.append(\"main_lab_tests\", offeredTest.main_lab_tests);\n // formData.append(\"unit_id\", offeredTest.unit_id);\n console.log(\"dataaaa\",offeredTest )\n return axios.post(`${url.ADD_NEW_OFFERED_MAINTEST}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\nexport const updateOfferedTest = offeredTest => {\n let formData = new FormData();\n formData.append(\"id\", offeredTest.id);\n formData.append(\"test_id\", offeredTest.test_id);\n // formData.append(\"unit_id\", offeredTest.unit_id);\n formData.append(\"duration_required\", offeredTest.duration_required);\n formData.append(\"duration_type\", offeredTest.duration_type);\n formData.append(\"sample_type\", offeredTest.sample_type);\n formData.append(\"price\", offeredTest.price);\n formData.append(\"is_eqa_participation\", offeredTest.is_eqa_participation);\n formData.append(\n \"is_home_sampling_available\",\n offeredTest.is_home_sampling_available\n );\n formData.append(\"is_test_performed\", offeredTest.is_test_performed);\n formData.append(\"is_active\", offeredTest.is_active);\n\n return axios.put(`${url.UPDATE_OFFERED_TEST}/${offeredTest.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const updateCorporateTest = offeredTest => {\n let formData = new FormData();\n formData.append(\"id\", offeredTest.id);\n formData.append(\"test_id\", offeredTest.test_id);\n formData.append(\"price\", offeredTest.price);\n formData.append(\"start_date\", offeredTest.start_date);\n formData.append(\"end_date\", offeredTest.end_date);\n // formData.append(\"is_active\", offeredTest.is_active);\n\n return axios.put(`${url.UPDATE_CORPORATE_TEST}/${offeredTest.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\nexport const updateCorporateStatus = offeredTest => {\n let formData = new FormData();\n formData.append(\"status\", offeredTest.status);\n formData.append(\"shared_percentage\", offeredTest.shared_percentage);\n // formData.append(\"is_active\", offeredTest.is_active);\n\n return axios.put(`${url.UPDATE_CORPORATE_STATUS}/${offeredTest.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const deleteOfferedTest = offeredTest =>\n del(`${url.DELETE_OFFERED_TEST}/${offeredTest.id}`, {\n headers: getHeader(authHeader()),\n });\n\n// ------------- Home Sample Collector Requests START -------------\nexport const getSampleCollectors = id =>\n get(`${url.GET_SAMPLE_COLLECTORS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const addNewSampleCollector = (sampleCollector, id) => {\n let formData = new FormData();\n formData.append(\"name\", sampleCollector.name);\n formData.append(\"gender\", sampleCollector.gender);\n formData.append(\"cnic\", sampleCollector.cnic);\n formData.append(\"phone\", sampleCollector.phone);\n formData.append(\"photo\", sampleCollector.photo);\n formData.append(\"account_id\", sampleCollector.account_id);\n\n return axios.post(`${url.ADD_NEW_SAMPLE_COLLECTOR}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const updateSampleCollector = sampleCollector => {\n let formData = new FormData();\n formData.append(\"id\", sampleCollector.id);\n formData.append(\"name\", sampleCollector.name);\n formData.append(\"gender\", sampleCollector.gender);\n formData.append(\"cnic\", sampleCollector.cnic);\n formData.append(\"phone\", sampleCollector.phone);\n formData.append(\"photo\", sampleCollector.photo);\n\n return axios.put(\n `${url.UPDATE_SAMPLE_COLLECTOR}/${sampleCollector.id}`,\n formData,\n {\n headers: getHeader(authHeader()),\n }\n );\n};\n\nexport const deleteSampleCollector = sampleCollector =>\n del(`${url.DELETE_SAMPLE_COLLECTOR}/${sampleCollector.id}`, {\n headers: getHeader(authHeader()),\n });\n\n // ------------- Live chat for csr and csr admin complaints -------------\nexport const getNotesComplaint = id =>\n get(`${url.GET_NOTES_COMPLAINT}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const addNewNoteComplaint = (note, id) => {\n let formData = new FormData();\n formData.append(\"note\", note.note);\n formData.append(\"complaint_id\", note.complaint_id);\n\n console.log(\"heeeeeee\",note, id)\n return axios.post(`${url.ADD_NEW_NOTE_COMPLAINT}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\n\n // ------------- Test Certificate Requests START -------------\nexport const getNotes = id =>\nget(`${url.GET_NOTES}/${id}`, {\n headers: getHeader(authHeader()),\n});\n\nexport const addNewNote = (note, id) => {\nlet formData = new FormData();\nformData.append(\"note\", note.note);\nformData.append(\"appointment_id\", note.appointment_id);\n\nconsole.log(\"heeeeeee\",note, id)\nreturn axios.post(`${url.ADD_NEW_NOTE}/${id}`, formData, {\n headers: getHeader(authHeader()),\n});\n};\nexport const getMsgs = id =>\nget(`${url.GET_MSGS}/${id}`, {\n headers: getHeader(authHeader()),\n});\n\nexport const addNewMsg = (msg, id) => {\nlet formData = new FormData();\nformData.append(\"msg\", msg.msg);\nformData.append(\"advertisement_id\", msg.advertisement_id);\n\nconsole.log(\"heeeeeee\",msg, id)\nreturn axios.post(`${url.ADD_NEW_MSG}/${id}`, formData, {\n headers: getHeader(authHeader()),\n});\n};\n// ------------- Test Certificate Requests START -------------\n\nexport const addNewCollectionPointQuality = (qualityCertificate, id) => {\n let formData = new FormData();\n formData.append(\"main_lab_quality\", qualityCertificate.main_lab_quality);\n // formData.append(\"unit_id\", qualityCertificate.unit_id);\n console.log(\"main_lab_quality\",qualityCertificate )\n return axios.post(`${url.ADD_NEW_COLLECTIONPOINT_QUALITY}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const getQualityCertificates = id =>\n get(`${url.GET_QUALITY_CERTIFICATES}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const addNewQualityCertificate = (qualityCertificate, id) => {\n let formData = new FormData();\n formData.append(\"name\", qualityCertificate.name);\n formData.append(\"type\", qualityCertificate.type);\n formData.append(\"certificate\", qualityCertificate.certificate);\n formData.append(\"certificate_type\", qualityCertificate.certificate_type);\n formData.append(\"sub_certificate_type\", qualityCertificate.sub_certificate_type);\n formData.append(\"expiry_date\", qualityCertificate.expiry_date);\n formData.append(\"start_date\", qualityCertificate.start_date);\n formData.append(\"end_date\", qualityCertificate.end_date);\n\n return axios.post(`${url.ADD_NEW_QUALITY_CERTIFICATE}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const updateQualityCertificate = qualityCertificate => {\n let formData = new FormData();\n formData.append(\"id\", qualityCertificate.id);\n formData.append(\"name\", qualityCertificate.name);\n formData.append(\"type\", qualityCertificate.type);\n formData.append(\"certificate\", qualityCertificate.certificate);\n formData.append(\"certificate_type\", qualityCertificate.certificate_type);\n formData.append(\"expiry_date\", qualityCertificate.expiry_date);\n formData.append(\"start_date\", qualityCertificate.start_date);\n formData.append(\"end_date\", qualityCertificate.end_date);\n\n return axios.put(\n `${url.UPDATE_QUALITY_CERTIFICATE}/${qualityCertificate.id}`,\n formData,\n {\n headers: getHeader(authHeader()),\n }\n );\n};\n\nexport const deleteQualityCertificate = qualityCertificate =>\n del(`${url.DELETE_QUALITY_CERTIFICATE}/${qualityCertificate.id}`, {\n headers: getHeader(authHeader()),\n });\n \nexport const getActivityLog = id =>\n get(`${url.GET_ACTIVITY_LOG}/${id}`, {\n headers: getHeader(authHeader()),\n });\n \n // export const getNotification = id =>\n // get(`${url.GET_NOTIFICATION}/${id}`, {\n // headers: getHeader(authHeader()),\n // });\n export const getNotification = (id,previousApiCallTime) => {\n let formData = new FormData();\n formData.append(\"previousApiCallTime\", previousApiCallTime);\n formData.append(\"id\", id);\n console.log(\"data\",previousApiCallTime )\n return axios.post(`${url.GET_NOTIFICATION}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\n\nexport const getSampleNotification = (id,previousApiCallTime) => {\n let formData = new FormData();\n formData.append(\"previousApiCallTime\", previousApiCallTime);\n formData.append(\"id\", id);\n console.log(\"data\",previousApiCallTime )\n return axios.post(`${url.GET_SAMPLE_NOTIFICATION}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\n\n\nexport const getMarketerNotification = (id,previousApiCallTime) => {\n let formData = new FormData();\n formData.append(\"previousApiCallTime\", previousApiCallTime);\n formData.append(\"id\", id);\n console.log(\"data\",previousApiCallTime )\n return axios.post(`${url.GET_MARKETER_NOTIFICATION}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const getCsrAdminNotification = (id,previousApiCallTime) => {\n let formData = new FormData();\n formData.append(\"previousApiCallTime\", previousApiCallTime);\n formData.append(\"id\", id);\n console.log(\"data\",previousApiCallTime )\n return axios.post(`${url.GET_CSR_ADMIN_NOTIFICATION}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const getRegAdminNotification = (id,previousApiCallTime) => {\n let formData = new FormData();\n formData.append(\"previousApiCallTime\", previousApiCallTime);\n formData.append(\"id\", id);\n console.log(\"data\",previousApiCallTime )\n return axios.post(`${url.GET_REG_ADMIN_NOTIFICATION}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const getCsrOfficerNotification = (id,previousApiCallTime) => {\n let formData = new FormData();\n formData.append(\"previousApiCallTime\", previousApiCallTime);\n formData.append(\"id\", id);\n console.log(\"data\",previousApiCallTime )\n return axios.post(`${url.GET_CSR_OFFICER_NOTIFICATION}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n// ------------- Finanace START Activity Log-------------\n\nexport const getActivityLogFinance = id =>\n get(`${url.GET_ACTIVITY_LOG_FINANCE}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getLcList = ()=>\n get(`${url.GET_LC_LIST}`, {\n headers: getHeader(authHeader()),\n })\n export const getCorporateList = ()=>\nget( `${url.GET_CORPORATE_LIST}`, {\n headers: getHeader(authHeader()),\n});\n\n// ------------- Corporate START Activity Log-------------\n\nexport const getCorporateCommit = id =>\n get(`${url.GET_CORPORATE_COMMIT}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n// ------------- Marketer Admin Activity Log -------------\n\nexport const getActivityLogMarketer = id =>\n get(`${url.GET_ACTIVITY_LOG_MARKETER}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n export const getLabActivityLogMarketer = id =>\n get(`${url.GET_LAB_ACTIVITY_LOG_MARKETER}/${id}`, {\n headers: getHeader(authHeader()),\n });\n// ------------- Pathologists START -------------\nexport const getPathologists = id =>\n get(`${url.GET_PATHOLOGISTS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const addNewPathologist = (pathologist, id) => {\n let formData = new FormData();\n formData.append(\"name\", pathologist.name);\n formData.append(\"email\", pathologist.email);\n formData.append(\"phone\", pathologist.phone);\n formData.append(\"landline\", pathologist.landline);\n formData.append(\"designation\", pathologist.designation);\n formData.append(\"photo\", pathologist.photo);\n formData.append(\"qualification\", pathologist.qualification);\n formData.append(\"speciality\", pathologist.speciality); //\n formData.append(\"pmdc_reg_no\", pathologist.pmdc_reg_no);\n formData.append(\n \"is_available_for_consultation\",\n pathologist.is_available_for_consultation\n );\n formData.append(\n \"is_available_on_whatsapp\",\n pathologist.is_available_on_whatsapp\n );\n formData.append(\"is_associated_with_pap\", pathologist.is_associated_with_pap);\n\n return axios.post(`${url.ADD_NEW_PATHOLOGIST}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const updatePathologist = pathologist => {\n let formData = new FormData();\n formData.append(\"id\", pathologist.id);\n formData.append(\"name\", pathologist.name);\n formData.append(\"email\", pathologist.email);\n formData.append(\"phone\", pathologist.phone);\n formData.append(\"landline\", pathologist.landline);\n formData.append(\"designation\", pathologist.designation);\n formData.append(\"photo\", pathologist.photo);\n formData.append(\"qualification\", pathologist.qualification);\n formData.append(\"speciality\", pathologist.speciality); //\n formData.append(\"pmdc_reg_no\", pathologist.pmdc_reg_no);\n formData.append(\n \"is_available_for_consultation\",\n pathologist.is_available_for_consultation\n );\n formData.append(\n \"is_available_on_whatsapp\",\n pathologist.is_available_on_whatsapp\n );\n formData.append(\"is_associated_with_pap\", pathologist.is_associated_with_pap);\n\n return axios.put(`${url.UPDATE_PATHOLOGIST}/${pathologist.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const deletePathologist = pathologist =>\n del(`${url.DELETE_PATHOLOGIST}/${pathologist.id}`, {\n headers: getHeader(authHeader()),\n });\n\n// ------------- Forget Password Requests START -------------\nexport const postForgetPwd = data => {\n let formData = new FormData();\n formData.append(\"email\", data.email);\n\n return axios.post(url.POST_FORGET_PASSWORD, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const postConfirmPwd = (user, token) => {\n let formData = new FormData();\n formData.append(\"password\", user.password);\n formData.append(\"token\", token);\n\n return axios.post(url.POST_CONFIRM_PASSWORD, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const postChangePwd = user => {\n let formData = new FormData();\n formData.append(\"old_password\", user.old_password);\n formData.append(\"new_password\", user.new_password);\n\n return axios.post(url.POST_CHANGE_PASSWORD, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// ------------- Test Appointment Requests START -------------\nexport const addNewCollectionPointTestAppointment = (testAppointment, id) => {\n let formData = new FormData();\n formData.append(\"main_lab_appointments\", testAppointment.main_lab_appointments);\n formData.append(\"start_date\", testAppointment.start_date)\n formData.append(\"end_date\", testAppointment.end_date)\n // formData.append(\"unit_id\", testAppointment.unit_id);\n console.log(\"dataaaa\",testAppointment )\n return axios.post(`${url.ADD_NEW_COLLECTIONPOINT_TESTAPPOINTMENT}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const getTestAppointmentsPendingList = id =>\n get(`${url.GET_TEST_APPOINTMENTS_PENDING_LIST}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getTestAppointmentsInProcessList = id =>\n get(`${url.GET_TEST_APPOINTMENTS_IN_PROCESS_LIST}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getTestAppointmentsCompletedList = id =>\n get(`${url.GET_TEST_APPOINTMENTS_COMPLETED_LIST}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const updateTestAppointment = testAppointment => {\n let formData = new FormData();\n\n formData.append(\"id\", testAppointment.id);\n formData.append(\"status\", testAppointment.status);\n formData.append(\"process\", testAppointment.process);\n\n if (testAppointment.process == \"pending\") {\n formData.append(\n \"estimated_sample_collection_at\",\n testAppointment.estimated_sample_collection_at\n );\n // formData.append(\n // \"estimated_result_uploading_at\",\n // testAppointment.estimated_result_uploading_at\n // );\n } else if (testAppointment.process == \"rescheduling\") {\n formData.append(\"rescheduled_by\", testAppointment.rescheduledBy);\n formData.append(\"assigned_to\", testAppointment.assigned_to);\n formData.append(\n \"estimated_sample_collection_at\",\n testAppointment.estimated_sample_collection_at\n );\n\n if (testAppointment.reschedule_reason == \"Other\") {\n formData.append(\"reschedule_reason\", testAppointment.reason);\n } else {\n formData.append(\"reschedule_reason\", testAppointment.reschedule_reason);\n }\n } else {\n if (\n testAppointment.patient_unique_id &&\n testAppointment.patient_unique_id.length > 0\n ) {\n formData.append(\"patient_unique_id\", testAppointment.patient_unique_id);\n }\n\n formData.append(\"is_rescheduled\", testAppointment.isRescheduled);\n formData.append(\"result_type\", testAppointment.result_type);\n formData.append(\"url\", testAppointment.url);\n formData.append(\"result\", testAppointment.result);\n\n if (testAppointment.assigned_to && testAppointment.assigned_to == null) {\n formData.append(\"assigned_to\", \"\");\n } else {\n formData.append(\"assigned_to\", testAppointment.assigned_to);\n }\n }\n\n // console.log(\"formData: \", formData);\n console.log(\"testAppointment: \", testAppointment);\n\n // formData.append(\"id\", testAppointment.id);\n // formData.append(\"patient_unique_id\", testAppointment.patient_unique_id);\n // formData.append(\"patient_id\", testAppointment.patient_id);\n // formData.append(\"booked_at\", testAppointment.booked_at);\n // formData.append(\n // \"appointment_requested_at\",\n // testAppointment.appointment_requested_at\n // );\n\n return axios.put(\n `${url.UPDATE_TEST_APPOINTMENT}/${testAppointment.id}`,\n formData,\n {\n headers: getHeader(authHeader()),\n }\n );\n};\n\n// ------------- Lab Profile Requests START -------------\nexport const getLabProfile = id =>\n get(`${url.GET_LAB_PROFILE}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getLabToken = id =>\n get(`${url.GET_LAB_TOKEN}/${id}`, {\n headers: getHeader(authHeader()),\n });\n \nexport const updateLabProfile = (labProfile, id) => {\n let formData = new FormData();\n formData.append(\"account_id\", id);\n formData.append(\"name\", labProfile.name);\n formData.append(\"logo\", labProfile.logo);\n formData.append(\"lab_experience\", labProfile.lab_experience);\n formData.append(\"email\", labProfile.email);\n formData.append(\"landline\", labProfile.landline);\n formData.append(\"address\", labProfile.address);\n formData.append(\"city\", labProfile.city);\n formData.append(\"district\", labProfile.district);\n formData.append(\"province\", labProfile.province);\n\n return axios.put(`${url.UPDATE_LAB_PROFILE}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// ------------- Lab Settings Requests START -------------\nexport const getLabSettings = id =>\n get(`${url.GET_LAB_SETTINGS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const updateLabSettings = (labSettings, id) => {\n let formData = new FormData();\n\n formData.append(\"account_id\", id);\n formData.append(\"is_247_opened\", labSettings.is_247_opened);\n formData.append(\"opening_time\", labSettings.opening_time);\n formData.append(\"closing_time\", labSettings.closing_time);\n formData.append(\"opening_day\", labSettings.opening_day);\n formData.append(\"closing_day\", labSettings.closing_day);\n formData.append(\"health_dept_certified\", labSettings.health_dept_certified);\n formData.append(\"lab_experience\", labSettings.lab_experience);\n formData.append(\"registration_no\", labSettings.registration_no);\n formData.append(\"license_no\", labSettings.license_no);\n formData.append(\"is_homesampling_offered\", labSettings.is_homesampling_offered);\n formData.append(\n \"health_dept_certificate\",\n labSettings.health_dept_certificate\n );\n formData.append(\"phone\", labSettings.phone);\n formData.append(\"type\", labSettings.type);\n formData.append(\n \"complaint_handling_email\",\n labSettings.complaint_handling_email\n );\n formData.append(\n \"complaint_handling_phone\",\n labSettings.complaint_handling_phone\n );\n formData.append(\n \"token_starting_value\",\n labSettings.token_starting_value\n );\n formData.append(\n \"token_ending_value\",\n labSettings.token_ending_value\n );\n formData.append(\"home_sampling_charges\", labSettings.home_sampling_charges);\n formData.append(\"state_sampling_charges\", labSettings.state_sampling_charges);\n formData.append(\"state_sampling_time\", labSettings.state_sampling_time);\n\n formData.append(\n \"is_digital_payment_accepted\",\n labSettings.is_digital_payment_accepted\n );\n formData.append(\n \"is_Receive_Email_On_Booking\",\n labSettings.is_Receive_Email_On_Booking\n );\n formData.append(\"is_active\", labSettings.is_active);\n formData.append(\"is_radiologyservices_active\", labSettings.is_radiologyservices_active);\n formData.append(\"bank\", labSettings.bank);\n formData.append(\"account_number\", labSettings.account_number);\n formData.append(\"branch_code\", labSettings.branch_code);\n console.log(\"labsettings\",labSettings)\n\n return axios.put(`${url.UPDATE_LAB_SETTINGS}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const getLabPayments = id =>\n get(`${url.GET_LAB_PAYMENTS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const updateLabPayments = (labPayments, id) => {\n let formData = new FormData();\n\n formData.append(\"test_appointment_id\", id);\n formData.append(\"counter_discount\", labPayments.counter_discount);\n formData.append(\"amount_received\", labPayments.amount_received);\n formData.append(\"received_by\", labPayments.received_by);\n return axios.put(`${url.UPDATE_LAB_PAYMENTS}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// ------------- Patient Test Appointment Requests START -------------\nexport const getPatientTestAppointmentsList = id =>\n get(`${url.GET_PATIENT_TEST_APPOINTMENTS_LIST}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n// ------------- Patient Profile Requests START -------------\nexport const getPatientProfile = id =>\n get(`${url.GET_PATIENT_PROFILE}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const updatePatientProfile = (patientProfile, id) => {\n let formData = new FormData();\n formData.append(\"account_id\", id);\n formData.append(\"name\", patientProfile.name);\n formData.append(\"email\", patientProfile.email);\n formData.append(\"phone\", patientProfile.phone);\n\n return axios.put(`${url.UPDATE_PATIENT_PROFILE}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// Get Region Wise Advertisement\nexport const getRegionWiseAdvertisement = locationDetails => {\n let formData = new FormData();\n formData.append(\"latitude\", locationDetails.latitude);\n formData.append(\"longitude\", locationDetails.longitude);\n formData.append(\"search_type\", locationDetails.search_type);\n formData.append(\"address\", locationDetails.address);\n formData.append(\"city\", locationDetails.city);\n\n // console.log(\"donorSetting: \", locationDetails)\n\n return axios.post(`${url.GET_REGION_WISE_ADVERTISEMENT}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// Get Nearby Labs\nexport const getNearbyLabs = locationDetails => {\n let formData = new FormData();\n formData.append(\"latitude\", locationDetails.latitude);\n formData.append(\"longitude\", locationDetails.longitude);\n formData.append(\"search_type\", locationDetails.search_type);\n formData.append(\"km\", locationDetails.km);\n formData.append(\"name\", locationDetails.name);\n formData.append(\"LabType\", locationDetails.LabType);\n formData.append(\"address\", locationDetails.address);\n formData.append(\"city\", locationDetails.city);\n formData.append(\"guest_id\", locationDetails.guest_id);\n formData.append(\"locationAccessAllowed\", locationDetails.locationAccessAllowed);\n formData.append(\"corporatepatient\", locationDetails.corporatepatient);\n console.log(\"In near by lsbd: \", locationDetails)\n\n\n return axios.post(`${url.GET_NEARBY_LABS}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// Get Corporate Nearby Labs\nexport const getCorporateLabs = locationDetails => {\n let formData = new FormData();\n formData.append(\"latitude\", locationDetails.latitude);\n formData.append(\"longitude\", locationDetails.longitude);\n formData.append(\"search_type\", locationDetails.search_type);\n formData.append(\"km\", locationDetails.km);\n formData.append(\"name\", locationDetails.name);\n formData.append(\"LabType\", locationDetails.LabType);\n formData.append(\"address\", locationDetails.address);\n formData.append(\"city\", locationDetails.city);\n formData.append(\"guest_id\", locationDetails.guest_id);\n formData.append(\"locationAccessAllowed\", locationDetails.locationAccessAllowed);\n formData.append(\"corporatepatient\", locationDetails.corporatepatient);\n console.log(\"In near by lsbd: \", locationDetails)\n\n\n return axios.post(`${url.GET_CORPORATE_LABS}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// Get Nearby Tests\nexport const getNearbyTests = data => {\n let formData = new FormData();\n\n formData.append(\"latitude\", data.latitude);\n formData.append(\"longitude\", data.longitude);\n formData.append(\"search_type\", data.search_type);\n formData.append(\"km\", data.km);\n formData.append(\"page\", data.page);\n formData.append(\"LabType\", data.LabType);\n formData.append(\"address\", data.address);\n formData.append(\"city\", data.city);\n formData.append(\"test_name\", data.test_name);\n formData.append(\"locationAccessAllowed\", data.locationAccessAllowed);\n formData.append(\"name\", data.name);\n formData.append(\"locationAccessAllowed\", data.locationAccessAllowed);\n console.log(\"donorSetting: \", data)\n\n console.log(\"In near by lsbd: \", data)\n\n\n return axios.post(`${url.GET_NEARBY_TESTS}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// Get Nearby Tests\nexport const getNearbyTestsDiscounted = data => {\n let formData = new FormData();\n\n formData.append(\"latitude\", data.latitude);\n formData.append(\"longitude\", data.longitude);\n formData.append(\"search_type\", data.search_type);\n formData.append(\"km\", data.km);\n formData.append(\"page\", data.page);\n formData.append(\"LabType\", data.LabType);\n formData.append(\"address\", data.address);\n formData.append(\"city\", data.city);\n formData.append(\"test_name\", data.test_name);\n console.log(\"donorSetting: \", data)\n\n console.log(\"In near by lsbd: \", data)\n\n\n return axios.post(`${url.GET_NEARBY_TESTS_DISCOUNTEDLH}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// Get Nearby Tests\nexport const getNearbyProfiles = data => {\n let formData = new FormData();\n\n formData.append(\"latitude\", data.latitude);\n formData.append(\"longitude\", data.longitude);\n formData.append(\"search_type\", data.search_type);\n formData.append(\"address\", data.address);\n formData.append(\"page\", data.page);\n formData.append(\"city\", data.city);\n formData.append(\"km\", data.km);\n formData.append(\"LabType\", data.LabType);\n formData.append(\"test_name\", data.test_name);\n console.log(\"donorSetting: \", data);\n formData.append(\"name\", data.name);\n formData.append(\"locationAccessAllowed\", data.locationAccessAllowed);\n\n return axios.post(`${url.GET_NEARBY_PROFILES}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const getTestss = () =>\n get(url.GET_TESTSS, {\n headers: getHeader(authHeader()),\n });\n\nexport const getProfiles = () =>\n get(url.GET_PROFILES, {\n headers: getHeader(authHeader()),\n });\n\nexport const getPackages = () =>\n get(url.GET_PACKAGES, {\n headers: getHeader(authHeader()),\n });\n// Get Nearby Packages\nexport const getNearbyPackages = data => {\n let formData = new FormData();\n\n formData.append(\"latitude\", data.latitude);\n formData.append(\"longitude\", data.longitude);\n formData.append(\"search_type\", data.search_type);\n formData.append(\"address\", data.address);\n formData.append(\"city\", data.city);\n formData.append(\"km\", data.km);\n formData.append(\"page\", data.page);\n formData.append(\"LabType\", data.LabType);\n formData.append(\"test_name\", data.test_name);\n console.log(\"packages: \", data);\n formData.append(\"name\", data.name);\n formData.append(\"locationAccessAllowed\", data.locationAccessAllowed);\n\n // console.log(\"in packages\", data);\n\n return axios.post(`${url.GET_NEARBY_PACKAGES}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const getRadiology = () =>\n get(url.GET_RADIOLOGY, {\n headers: getHeader(authHeader()),\n });\nexport const getTestsList = id =>\n get(`${url.GET_TESTS_LIST}/${id}`, {\n headers: getHeader(authHeader()),\n });\nexport const getCorporateTestsList = id =>\n get(`${url.GET_CORPORATE_TESTS_LIST}/${id}`, {\n headers: getHeader(authHeader()),\n });\n// Get Nearby Packages\nexport const getNearbyRadiology = data => {\n let formData = new FormData();\n\n formData.append(\"latitude\", data.latitude);\n formData.append(\"longitude\", data.longitude);\n formData.append(\"search_type\", data.search_type);\n formData.append(\"address\", data.address);\n formData.append(\"city\", data.city);\n formData.append(\"km\", data.km);\n formData.append(\"page\", data.page);\n formData.append(\"LabType\", data.LabType);\n formData.append(\"test_name\", data.test_name);\n console.log(\"radiology: \", data);\n formData.append(\"name\", data.name);\n formData.append(\"locationAccessAllowed\", data.locationAccessAllowed);\n\n\n return axios.post(`${url.GET_NEARBY_RADIOLOGY}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n// ------------- Corporate Profile Requests START -------------\nexport const getCorporateProfile = id =>\n get(`${url.GET_CORPORATE_PROFILE}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getCorporateProfileforpayment = id =>\n get(`${url.GET_CORPORATE_PROFILE}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n export const updateCorporateProfile = (CorporateProfile, id) => {\n console.log('Updating corporate profile:', CorporateProfile, id);\n \n let formData = new FormData();\n formData.append(\"name\", CorporateProfile.name);\n formData.append(\"logo\", CorporateProfile.logo);\n formData.append(\"limit\", CorporateProfile.limit);\n formData.append(\"end_date\", CorporateProfile.end_date);\n formData.append(\"email\", CorporateProfile.email);\n formData.append(\"phone\", CorporateProfile.phone);\n formData.append(\"landline\", CorporateProfile.landline);\n formData.append(\"address\", CorporateProfile.address);\n formData.append(\"city\", CorporateProfile.city_id);\n formData.append(\"payment_terms\", CorporateProfile.payment_terms);\n formData.append(\"national_taxation_no\", CorporateProfile.national_taxation_no);\n formData.append(\"reason\", CorporateProfile.reason);\n formData.append(\"payment_request\", CorporateProfile.payment_request);\n\n return axios.put(`${url.UPDATE_CORPORATE_PROFILE}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\n \n\n// export const updateB2bProfile = (b2bProfile, id) => {\n// let formData = new FormData();\n// // formData.append(\"account_id\", id);\n// formData.append(\"business_name\", b2bProfile.business_name);\n// formData.append(\"email\", b2bProfile.email);\n// formData.append(\"landline\", b2bProfile.landline);\n// formData.append(\"website_url\", b2bProfile.website_url);\n// formData.append(\"business_logo\", b2bProfile.business_logo)\n\n// return axios.put(`${url.UPDATE_B2B_PROFILE}/${id}`, formData, {\n// headers: getHeader(authHeader()),\n// });\n// };\n\n// ----------------- Patient Feedback -----------------\nexport const addNewPatientFeedback = patientFeedback => {\n let formData = new FormData();\n //formData.append(\"test_appointment_id\", patientFeedback.id);\n formData.append(\"rating\", patientFeedback.rating);\n formData.append(\"review\", patientFeedback.review);\n\n return axios.post(\n `${url.ADD_NEW_PATIENT_FEEDBACK}/${patientFeedback.id}`,\n formData,\n {\n headers: getHeader(authHeader()),\n }\n );\n};\n// ----------------- Complaints -----------------\nexport const addNewComplaint = complaint => {\n let formData = new FormData();\n formData.append(\"complainant\", complaint.complainant);\n formData.append(\"complainee\", complaint.complainee);\n formData.append(\"lab_id\", complaint.lab_id);\n formData.append(\"labhazir_complainee\", complaint.labhazir_complainee);\n formData.append(\"name\", complaint.name);\n formData.append(\"email\", complaint.email);\n formData.append(\"city\", complaint.city);\n formData.append(\"phone\", complaint.phone);\n formData.append(\"subject\", complaint.subject);\n formData.append(\"message\", complaint.message);\n console.log(\"data\",complaint )\n return axios.post(`${url.ADD_NEW_COMPLAINT}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const getUnhandledComplaints = id =>\n get(`${url.GET_UNHANDLED_COMPLAINTS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n export const updateUnhandledComplaints = data => {\n let formData = new FormData();\n formData.append(\"status\", data.status);\n console.log(\"Form data: \", formData);\n \n return axios.put(`${url.UPDATE_UNHANDLED_COMPLAINTS}/${data.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\n// export const updateUnhandledComplaints = id => {\n// let formData = new FormData();\n\n// return axios.put(`${url.UPDATE_UNHANDLED_COMPLAINTS}/${id}`, formData, {\n// headers: getHeader(authHeader()),\n// });\n// };\n\nexport const getHandledComplaints = id =>\n get(`${url.GET_HANDLED_COMPLAINTS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n export const getCsrAppointments = id =>\n get(`${url.GET_CSR_APPOINTMENTS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n export const updateCsrAppointments = csrAppointment => {\n let formData = new FormData();\n // formData.append(\"comment\", data.comment);\n formData.append(\"status\", csrAppointment.status);\n // formData.append(\"appointment_option\", csrAppointment.appointment_option);\n // formData.append(\"staff\", csrAppointment.staff);\n // formData.append(\"comments\", csrAppointment.comments);\n console.log(\"Form data: \", csrAppointment);\n \n return axios.put(`${url.UPDATE_CSR_APPOINTMENTS}/${csrAppointment.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\n\n export const getCsrComplaints = ({ id, startDate, endDate }) => {\n // Log the payload to the console\n console.log(\"API helper data:\", { id, startDate, endDate });\n \n // Return the API call with query parameters\n return get(`${url.GET_CSR_COMPLAINTS}/${id}`, {\n headers: getHeader(authHeader()),\n params: {\n start_date: startDate,\n end_date: endDate\n },\n });\n }; \n export const updateCsrComplaints = csrcomplaint => {\n let formData = new FormData();\n // formData.append(\"comment\", data.comment);\n formData.append(\"appointment_requested_at\", csrcomplaint.appointment_requested_at);\n formData.append(\"appointment_option\", csrcomplaint.appointment_option);\n formData.append(\"staff\", csrcomplaint.staff);\n formData.append(\"comments\", csrcomplaint.comments);\n console.log(\"Form data: \", csrcomplaint);\n \n return axios.put(`${url.UPDATE_CSR_COMPLAINTS}/${csrcomplaint.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\n// Get Quotes\nexport const getQuotes = (city_id, test_id, search_type, address, longitude, latitude, km, locationAccessAllowed) => {\n let formData = new FormData();\n formData.append(\"city_id\", city_id);\n formData.append(\"test_id\", test_id);\n formData.append(\"search_type\", search_type);\n formData.append(\"longitude\", longitude);\n formData.append(\"latitude\", latitude);\n formData.append(\"address\", address);\n formData.append(\"km\", km);\n formData.append(\"locationAccessAllowed\", locationAccessAllowed);\n console.log(\"In near by lsbd: \", city_id, test_id, search_type, address, longitude, latitude, km)\n return axios.post(`${url.GET_QUOTES}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n// ------------- Cart START -------------\nexport const getCarts = id =>\n get(`${url.GET_CARTS}/${id}`, {\n \n headers: getHeader(authHeader()),\n }); \n\n\nexport const emptyCart = id =>\n del(`${url.EMPTY_CART}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const deleteCart = cart =>\n del(`${url.DELETE_CART}/${cart.id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const addToCart = (cart, id) => {\n let formData = new FormData();\n // formData.append(\"account_id\", cart.patient_id);\n // formData.append(\"lab_id\", cart.lab_id);\n formData.append(\"lab_id\", cart.lab_id !== undefined ? cart.lab_id : cart.lab_id_id);\n formData.append(\"offered_test_id\", cart.id);\n formData.append(\"amount\", cart.price);\n formData.append(\"guest_id\", cart.guest_id);\n formData.append(\"invoice_discount\", cart.discount);\n formData.append(\"invoice_labhazir_discount\", cart.discount_by_labhazir);\n // formData.append(\"amount\", cart.price);\n\n\n\n console.log(\"cart items in django apiiii\", cart, cart.lab_id_id)\n\n return axios.post(`${url.ADD_TO_CART}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// Get Home Sampled Tests\nexport const getHomeSampledTests = id =>\n get(`${url.GET_HOME_SAMPLED_TESTS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n \n export const getDonationCheck = id =>\n get(`${url.GET_DONATION_CHECK}/${id}`, {\n headers: getHeader(authHeader()),\n });\n// Get Checkout Items\nexport const getCheckoutItems = (id, is_home_sampling_availed, is_state_sampling_availed) => {\n let formData = new FormData();\n formData.append(\"is_home_sampling_availed\", is_home_sampling_availed);\n formData.append(\"is_state_sampling_availed\", is_state_sampling_availed);\n console.log(\"different values\", id, is_home_sampling_availed);\n console.log(\"different values\", id, is_state_sampling_availed);\n\n\n return axios.post(`${url.GET_CHECKOUT_ITEMS}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// Add checkout data\nexport const addCheckoutData = (checkoutData, id) => {\n let formData = new FormData();\n formData.append(\"uuid\", checkoutData.uuid);\n formData.append(\"csr_id\", checkoutData.csr_id);\n formData.append(\"booked_by\", checkoutData.booked_by);\n formData.append(\"patient_name\", checkoutData.patient_name);\n formData.append(\"patient_age\", checkoutData.patient_age);\n formData.append(\"patient_phone\", checkoutData.patient_phone);\n formData.append(\"patient_gender\", checkoutData.patient_gender);\n formData.append(\"patient_address\", checkoutData.patient_address);\n formData.append(\"ageFormat\", checkoutData.ageFormat);\n // formData.append(\"patient_city\", checkoutData.patient_city);\n // formData.append(\"patient_district\", checkoutData.patient_district);\n // formData.append(\n // \"relationsip_with_patient\",\n // checkoutData.relationsip_with_patient\n // );\n formData.append(\n \"appointment_requested_at\",\n checkoutData.appointment_requested_at\n );\n formData.append(\n \"is_home_sampling_availed\",\n checkoutData.is_home_sampling_availed\n );\n formData.append(\n \"is_state_sampling_availed\",\n checkoutData.is_state_sampling_availed\n );\n formData.append(\"payment_method\", checkoutData.payment_method);\n formData.append(\"card_number\", checkoutData.card_number);\n formData.append(\"name_on_card\", checkoutData.name_on_card);\n formData.append(\"expiry_date\", checkoutData.expiry_date);\n formData.append(\"cvv_code\", checkoutData.cvv_code);\n\n console.log(\"add different with address data with home sampling\", checkoutData);\n\n return axios.post(`${url.ADD_CHECKOUT_DATA}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// Get Invoice Detail\nexport const getInvoiceDetail = id =>\n get(`${url.GET_INVOICE_DETAIL}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n\n export const getTestsInAppointment = id =>\n get(`${url.GET_TESTS_IN_APPOINTMENTS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n// FEEDBACK\nexport const getFeedbacks = id =>\n get(`${url.GET_FEEDBACKS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n\n\n// FEEDBACK\nexport const getLabsRating =() =>\n get(`${url.GET_LABS_RATING}`, {\n headers: getHeader(authHeader()),\n });\n// export const updatePaymentInfo = id => {\n// let formData = new FormData();\n\n// return axios.put(`${url.UPDATE_PAYMENT_INFO}/${id}`, formData, {\n// headers: getHeader(authHeader()),\n// });\n// };\n\n//testing\nexport const getLabsTesting =() =>\n get(`${url.GET_LABS_TESTING}`, {\n headers: getHeader(authHeader()),\n });\n\n\n// Get Test Description\nexport const getTestDescriptions = id =>\n get(`${url.GET_TEST_DESCRIPTIONS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n// ------------- B2B client -------------\nexport const getB2bReferredPatientsList = id =>\n get(`${url.GET_B2B_REFERRED_PATIENTS_LIST}/${id}`, {\n headers: getHeader(authHeader()),\n });\n// ------------- B2B client -------------\nexport const getB2bLabSharesList = id =>\n get(`${url.GET_B2B_LAB_SHARES_LIST}/${id}`, {\n headers: getHeader(authHeader()),\n });\nexport const getB2bSharesLabList = id =>\n get(`${url.GET_B2B_SHARES_LAB_LIST}/${id}`, {\n headers: getHeader(authHeader()),\n });\nexport const updateLabShare = b2bLabShare => {\n let formData = new FormData();\n // formData.append(\"account_id\", id);\n formData.append(\"b2b_shares\", b2bLabShare.b2b_shares);\n\n return axios.put(`${url.UPDATE_LAB_SHARE}/${b2bLabShare.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\nexport const updateAllLabShare = b2bLabShare => {\n let formData = new FormData();\n // formData.append(\"account_id\", id);\n formData.append(\"b2b_shares\", b2bLabShare.b2b_shares);\n\n return axios.put(\n `${url.UPDATE_ALL_LAB_SHARE}/${b2bLabShare.b2b_id}`,\n formData,\n {\n headers: getHeader(authHeader()),\n }\n );\n};\nexport const addNewLabShare = (b2bLabShare, id) => {\n let formData = new FormData();\n formData.append(\"lab_id\", b2bLabShare.lab_id);\n formData.append(\"b2b_shares\", b2bLabShare.b2b_shares);\n\n\n return axios.post(`${url.ADD_NEW_LAB_SHARE}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n\n// ------------- B2B List -------------\nexport const getB2bAllClientsList = () =>\n get(`${url.GET_B2B_ALL_CLIENTS_LIST}`, {\n headers: getHeader(authHeader()),\n });\n// Get Nearby Tests\nexport const getPatientsList = data => {\n let formData = new FormData();\n\n formData.append(\"phone\", data.phone);\n // formData.append(\"longitude\", data.longitude);\n // formData.append(\"search_type\", data.search_type);\n // formData.append(\"km\", data.km);\n // formData.append(\"LabType\", data.LabType);\n // formData.append(\"address\", data.address);\n // formData.append(\"city\", data.city);\n // formData.append(\"test_name\", data.test_name);\n // console.log(\"donorSetting: \", data)\n\n console.log(\"In patients: \", data)\n\n\n return axios.post(`${url.GET_PATIENTS_LIST}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// ------------- Lab Profile Requests START -------------\nexport const getB2bProfile = id =>\n get(`${url.GET_B2B_PROFILE}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const updateB2bProfile = (b2bProfile, id) => {\n let formData = new FormData();\n // formData.append(\"account_id\", id);\n formData.append(\"business_name\", b2bProfile.business_name);\n formData.append(\"email\", b2bProfile.email);\n formData.append(\"landline\", b2bProfile.landline);\n formData.append(\"website_url\", b2bProfile.website_url);\n formData.append(\"business_logo\", b2bProfile.business_logo)\n\n return axios.put(`${url.UPDATE_B2B_PROFILE}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// ------------- Bank STATEMENTS -------------\nexport const getBankStatements = id =>\n get(`${url.GET_BANK_STATEMENTS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n// ------------- ACCOUNT STATEMENTS -------------\nexport const getB2bAccountStatements = id =>\n get(`${url.GET_B2B_ACCOUNT_STATEMENTS}/${id}`, {\n headers: getHeader(authHeader()),\n });\nexport const getCLabAccountStatements = id =>\n get(`${url.GET_CLAB_ACCOUNT_STATEMENTS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n// ------------- Donor Settings Requests START -------------\n export const addNewB2bPayment = (b2bPayment, id) => {\n let formData = new FormData();\n // formData.append(\"lab_id\", donorPayment.lab_id);\n formData.append(\"payment_method\", b2bPayment.payment_method);\n formData.append(\"address_type\", b2bPayment.address_type);\n formData.append(\"address\", b2bPayment.address);\n formData.append(\"amount\", b2bPayment.amount);\n formData.append(\"paid_at\", b2bPayment.paid_at);\n formData.append(\"deposited_at\", b2bPayment.deposited_at);\n formData.append(\"deposit_bank\", b2bPayment.deposit_bank);\n formData.append(\"cheque_no\", b2bPayment.cheque_no);\n formData.append(\"cheque_image\", b2bPayment.cheque_image);\n formData.append(\"deposit_slip\", b2bPayment.deposit_slip);\n formData.append(\"is_cleared\", b2bPayment.is_cleared);\n formData.append(\"cleared_at\", b2bPayment.cleared_at);\n formData.append(\"is_settled\", b2bPayment.is_settled);\n\n \n return axios.post(`${url.ADD_NEW_B2B_PAYMENT}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\n\n// ------------- Donor Profile Requests START -------------\nexport const getDonorProfile = id =>\n get(`${url.GET_DONOR_PROFILE}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const updateDonorProfile = (donorProfile, id) => {\n let formData = new FormData();\n // formData.append(\"account_id\", id);\n formData.append(\"name\", donorProfile.name);\n formData.append(\"phone\", donorProfile.phone);\n formData.append(\"email\", donorProfile.email);\n formData.append(\"type\", donorProfile.type);\n formData.append(\"cnic\", donorProfile.cnic);\n formData.append(\"company_name\", donorProfile.company_name);\n formData.append(\"is_income_tax_payable\", donorProfile.is_income_tax_payable);\n formData.append(\"is_blocked\", donorProfile.is_blocked);\n\n\n return axios.put(`${url.UPDATE_DONOR_PROFILE}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// ------------- Donor -------------\nexport const getDonorReferredAppointmentsList = id =>\n get(`${url.GET_DONOR_REFERRED_APPOINTMENTS_LIST}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n// ------------- Donor Settings Requests START -------------\nexport const getDonorSettings = id =>\n get(`${url.GET_DONOR_SETTINGS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const updateDonorSettings = (donorSetting, id) => {\n let formData = new FormData();\n\n formData.append(\"account_id\", id);\n formData.append(\"donation_to\", donorSetting.donation_to);\n formData.append(\"province\", donorSetting.province);\n formData.append(\"district\", donorSetting.district);\n formData.append(\"city\", donorSetting.city);\n\n\n console.log(\"donorSetting: \", donorSetting);\n\n return axios.put(`${url.UPDATE_DONOR_SETTINGS}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// ------------- ACCOUNT STATEMENTS -------------\nexport const getDonorAccountStatements = id =>\n get(`${url.GET_DONOR_ACCOUNT_STATEMENTS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n export const getDonorsAccountStatements = id =>\n get(`${url.GET_DONORS_ACCOUNT_STATEMENTS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n\n// ------------- Donor Settings Requests START -------------\n export const addNewDonorPayment = (donorPayment, id) => {\n let formData = new FormData();\n // formData.append(\"lab_id\", donorPayment.lab_id);\n formData.append(\"payment_method\", donorPayment.payment_method);\n formData.append(\"address_type\", donorPayment.address_type);\n formData.append(\"address\", donorPayment.address);\n formData.append(\"amount\", donorPayment.amount);\n formData.append(\"paid_at\", donorPayment.paid_at);\n formData.append(\"deposited_at\", donorPayment.deposited_at);\n formData.append(\"deposit_bank\", donorPayment.deposit_bank);\n formData.append(\"cheque_no\", donorPayment.cheque_no);\n formData.append(\"cheque_image\", donorPayment.cheque_image);\n formData.append(\"deposit_slip\", donorPayment.deposit_slip);\n formData.append(\"is_cleared\", donorPayment.is_cleared);\n formData.append(\"cleared_at\", donorPayment.cleared_at);\n formData.append(\"is_settled\", donorPayment.is_settled);\n\n \n return axios.post(`${url.ADD_NEW_DONOR_PAYMENT}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\n\n // Add Bank\n\n export const updateBank = bank => {\n let formData = new FormData();\n formData.append(\"name\", bank.name);\n formData.append(\"phone\", bank.phone);\n formData.append(\"email\", bank.email);\n formData.append(\"registered_at\", bank.registered_at);\n formData.append(\"registered_by\", bank.registered_by);\n\n // formData.append(\"expiry_date\", bank.expiry_date);\n \n return axios.put(\n `${url.UPDATE_BANK}/${bank.id}`,\n formData,\n {\n headers: getHeader(authHeader()),\n }\n );\n };\n\n export const addNewCreateBank = (createBank, id) => {\n let formData = new FormData();\n // formData.append(\"lab_id\", createBank.lab_id);\n formData.append(\"name\", createBank.name);\n formData.append(\"phone\", createBank.phone);\n formData.append(\"email\", createBank.email);\n formData.append(\"registered_at\", createBank.registered_at);\n formData.append(\"registered_by\", createBank.registered_by);\n\n \n return axios.post(`${url.ADD_NEW_CREATE_BANK}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\n\n export const addNewCemployeeData = (cemployeeData, id) => {\n let formData = new FormData();\n formData.append(\"name\", cemployeeData.name);\n formData.append(\"employee_code\", cemployeeData.employee_code);\n formData.append(\"type\", cemployeeData.type);\n formData.append(\"limit\", cemployeeData.limit);\n formData.append(\"date\", cemployeeData.date);\n formData.append(\"relation\", cemployeeData.relation);\n formData.append(\"parent_employee_id\", cemployeeData.parent_employee_id);\n\n return axios.post(`${url.ADD_NEW_CEMPLOYEE_DATA}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\n export const deletecedata = cemployee =>\n del(`${url.DELETE_CEDATA}/${cemployee.id}`, {\n headers: getHeader(authHeader()),\n });\n\n export const addNewCemployeefile = (cemployeeData) => {\n let formData = new FormData();\n formData.append(\"excel_file\", cemployeeData.excel_file);\n formData.append(\"corporate_id\", cemployeeData.corporate_id);\n\n console.log(\"django api helper\", cemployeeData)\n \n return axios.post(`${url.ADD_NEW_CEMPLOYEE_FILE}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\n\n \n\n export const updateCemployee = cemployeeData => {\n let formData = new FormData();\n formData.append(\"name\", cemployeeData.name);\n formData.append(\"employee_code\", cemployeeData.employee_code);\n formData.append(\"status\", cemployeeData.status);\n formData.append(\"limit\", cemployeeData.limit);\n formData.append(\"date\", cemployeeData.date);\n \n return axios.put(\n `${url.UPDATE_CEMPLOYEE}/${cemployeeData.id}`,\n formData,\n {\n headers: getHeader(authHeader()),\n }\n );\n };\n\n\n export const deleteTestsInAppointment = cemployee =>\n del(`${url.DELETE_TESTS_IN_APPOINTMENTS}/${cemployee.id}`, {\n headers: getHeader(authHeader()),\n });\n\n\n // List of Banks\n export const getBanks = () =>\n get(url.GET_BANKS, {\n headers: getHeader(authHeader()),\n });\n\n // List of Bank Accounts \n export const getBankAccounts = () =>\n get(url.GET_BANK_ACCOUNTS, {\n headers: getHeader(authHeader()),\n });\n\n // Add Bank Account\n\n export const addNewBankAccount = (bankAccount, id) => {\n let formData = new FormData();\n // formData.append(\"lab_id\", bankAccount.lab_id);\n formData.append(\"bank_id\", bankAccount.bank_id);\n formData.append(\"account_no\", bankAccount.account_no);\n formData.append(\"account_type\", bankAccount.account_type);\n formData.append(\"categorey\", bankAccount.categorey);\n formData.append(\"currency\", bankAccount.currency);\n formData.append(\"opening_balance\", bankAccount.opening_balance);\n formData.append(\"creating_at\", bankAccount.creating_at);\n formData.append(\"status\", bankAccount.status); \n formData.append(\"city\", bankAccount.city);\n formData.append(\"address\", bankAccount.address);\n formData.append(\"branch_no\", bankAccount.branch_no);\n \n return axios.post(`${url.ADD_NEW_BANK_ACCOUNT}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\n// ------------- ACCOUNT STATEMENTS -------------\nexport const getAccountStatements = id =>\n get(`${url.GET_ACCOUNT_STATEMENTS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n// ------------- Staff Profile Requests START -------------\nexport const getStaffProfile = id =>\n get(`${url.GET_STAFF_PROFILE}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const updateStaffProfile = (labProfile, id) => {\n let formData = new FormData();\n formData.append(\"account_id\", id);\n formData.append(\"name\", labProfile.name);\n formData.append(\"phone\", labProfile.phone);\n formData.append(\"roles\", labProfile.roles);\n\n return axios.put(`${url.UPDATE_STAFF_PROFILE}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const addStaff = (id, staff) => {\n let formData = new FormData();\n formData.append(\"name\", staff.name);\n formData.append(\"email\", staff.email);\n formData.append(\"cnic\", staff.cnic);\n formData.append(\"phone\", staff.phone);\n formData.append(\"roles\", staff.roles);\n formData.append(\"city_id\", staff.city_id);\n formData.append(\"photo\", staff.photo);\n console.log(\"data\",staff, id);\n return axios.post(`${url.ADD_STAFF}/${id}`, formData, {\n headers: getHeader(authHeader()),\n })\n .then(response => {\n if (response.status >= 200 || response.status <= 299)\n return response.data;\n throw response.data;\n }) \n .catch(err => {\n let message;\n if (console.log(\"django staffffffffffff\",err.response && err.response.status)) {\n switch (err.response.status) {\n case 400:\n message = err.response.data;\n break;\n case 404:\n message = \"Sorry! the page you are looking for could not be found\";\n break;\n case 500:\n message =\n \"Sorry! something went wrong, please contact our support team\";\n break;\n case 401:\n message = \"Invalid credentials\";\n break;\n default:\n message = err[1];\n break;\n }\n }\n throw message;\n }, console.log(\"staff messga e\", message));\n};\nexport const updateStaff = staff => {\n let formData = new FormData();\n formData.append(\"name\", staff.name);\n // formData.append(\"email\", staff.email);\n formData.append(\"cnic\", staff.cnic);\n formData.append(\"phone\", staff.phone);\n formData.append(\"roles\", staff.roles);\n // formData.append(\"city\", staff.city);\n // formData.append(\"territory_office\", staff.territory_office);\n\n return axios.put(`${url.UPDATE_STAFF}/${staff.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const deleteStaff = staff =>\n del(`${url.DELETE_STAFF}/${staff.id}`, {\n headers: getHeader(authHeader()),\n });\n\n// ------------- Sample Collector Profile Requests START -------------\nexport const getSampleCollectorProfile = id =>\n get(`${url.GET_SAMPLE_COLLECTOR_PROFILE}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const updateSampleCollectorProfile = (sampleCollectorProfile, id) => {\n let formData = new FormData();\n formData.append(\"account_id\", id);\n formData.append(\"name\", sampleCollectorProfile.name);\n formData.append(\"phone\", sampleCollectorProfile.phone);\n // formData.append(\"\", sampleCollectorProfile.roles);\n\n return axios.put(`${url.UPDATE_SAMPLE_COLLECTOR_PROFILE}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// ------------- Sample Collector Test Appointment Requests START -------------\nexport const getSampleCollectionInProcessList = id =>\n get(`${url.GET_SAMPLE_COLLECTION_IN_PROCESS_LIST}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getSampleCollectionCompletedList = id =>\n get(`${url.GET_SAMPLE_COLLECTION_COMPLETED_LIST}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const updateSampleCollectionStatus = data => {\n let formData = new FormData();\n formData.append(\"id\", data.id);\n formData.append(\"collection_status\", data.collection_status);\n formData.append(\"payment_method\", data.payment_method);\n // formData.append(\"amount_recieved_by_collector\", data.amount_recieved_by_collector);\n formData.append(\"is_exact_amount_collected\", data.is_exact_amount_collected);\n\n return axios.put(\n `${url.UPDATE_SAMPLE_COLLECTION_STATUS}/${data.id}`,\n formData,\n {\n headers: getHeader(authHeader()),\n }\n );\n};\n\n// ------------- STAFF Requests START -------------\nexport const getCSRList = () =>\n get(`${url.GET_CSR_LIST}`, {\n headers: getHeader(authHeader()),\n });\n export const getMARKETERSList = () =>\n get(`${url.GET_MARKETERS_LIST}`, {\n headers: getHeader(authHeader()),\n });\nexport const getAuditorList = () =>\n get(`${url.GET_AUDITOR_LIST}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getFinanceOfficerList = () =>\n get(`${url.GET_FINANCE_OFFICER_LIST}`, {\n headers: getHeader(authHeader()),\n });\n\n// ------------- Registration Admin requests START -------------\n\nexport const getPendingCorporate = () =>\n get(`${url.GET_PENDING_CORPORATE}`, {\n headers: getHeader(authHeader()),\n });\n export const getApprovedCorporate = () =>\n get(`${url.GET_APPROVED_CORPORATE}`, {\n headers: getHeader(authHeader()),\n });\n export const getUnapprovedCorporate = () =>\n get(`${url.GET_UNAPPROVED_CORPORATE}`, {\n headers: getHeader(authHeader()),\n });\nexport const getPendingLabs = () =>\n get(`${url.GET_PENDING_LABS}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getApprovedLabs = () =>\n get(`${url.GET_APPROVED_LABS}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getUnapprovedLabs = () =>\n get(`${url.GET_UNAPPROVED_LABS}`, {\n headers: getHeader(authHeader()),\n });\n\n export const approveUnapproveCorporate = data => {\n let formData = new FormData();\n formData.append(\"corporate_id\", data.corporate_id);\n formData.append(\"is_approved\", data.isApproved);\n \n return axios.put(`${url.APPROVE_UNAPPROVE_CORPORATE}/${data.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\nexport const approveUnapproveLab = data => {\n let formData = new FormData();\n formData.append(\"lab_id\", data.labId);\n formData.append(\"is_approved\", data.isApproved);\n\n return axios.put(`${url.APPROVE_UNAPPROVE_LAB}/${data.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const getPendingB2BClients = () =>\n get(`${url.GET_PENDING_B2B_CLIENTS}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getApprovedB2BClients = () =>\n get(`${url.GET_APPROVED_B2B_CLIENTS}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getUnapprovedB2BClients = () =>\n get(`${url.GET_UNAPPROVED_B2B_CLIENTS}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const approveUnapproveB2BClient = data => {\n let formData = new FormData();\n formData.append(\"b2b_id\", data.b2bId);\n formData.append(\"is_approved\", data.isApproved);\n\n return axios.put(`${url.APPROVE_UNAPPROVE_B2B_CLIENT}/${data.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n// Pending offered test labs list\n\n\nexport const getLabsListPendingFee = (id, page, limit, filters = {}) => {\n const queryParams = new URLSearchParams({ id, page, limit, ...filters }).toString();\n return get(`${url.GET_LABS_LIST_PENDING_FEE}?${queryParams}`, {\n headers: getHeader(authHeader()),\n });\n};\n\n export const getLabsListApprovedFee = (id, page, limit, filters = {}) => {\n const queryParams = new URLSearchParams({ id, page, limit, ...filters }).toString();\n return get(`${url.GET_LABS_LIST_APPROVED_FEE}?${queryParams}`, {\n headers: getHeader(authHeader()),\n });\n };\nexport const getSharedPercentagePendingFeeTests = id =>\n get(`${url.GET_SHARED_PERCENTAGE_PENDING_FEE}/${id}`, {\n headers: getHeader(authHeader()),\n });\nexport const getSharedPercentageApprovedFeeTests = id =>\n get(`${url.GET_SHARED_PERCENTAGE_APPROVED_FEE}/${id}`, {\n headers: getHeader(authHeader()),\n });\nexport const updateSharedPercentagePendingFeeTest = data => {\n let formData = new FormData();\n \n formData.append(\"shared_percentage\", data.shared_percentage);\n \n return axios.put(`${url.UPDATE_SHARED_PERCENTAGE_PENDING_FEE}/${data.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\n \nexport const updateSharedPercentageAllPendingFeeTest = data => {\n let formData = new FormData();\n // formData.append(\"account_id\", id);\n formData.append(\"shared_percentage\", data.shared_percentage);\n // formData.append(\"shared_percentage\", data.shared_percentage);\n \n return axios.put(`${url.UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE}/${data.lab_id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\n\n\n\n// ------------- Donors requests START -------------\n\nexport const getPendingDonors = () =>\n get(`${url.GET_PENDING_DONORS}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getApprovedDonors = () =>\n get(`${url.GET_APPROVED_DONORS}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getUnapprovedDonors = () =>\n get(`${url.GET_UNAPPROVED_DONORS}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const approveUnapproveDonor = data => {\n let formData = new FormData();\n formData.append(\"donor_id\", data.donorId);\n formData.append(\"is_approved\", data.isApproved);\n\n return axios.put(`${url.APPROVE_UNAPPROVE_DONOR}/${data.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// ------------- CSR Admin requests START -------------\nexport const getPendingComplaints = () =>\n get(`${url.GET_PENDING_COMPLAINTS}`, {\n headers: getHeader(authHeader()),\n });\n export const getPendingComplaintsLabhazir = () =>\n get(`${url.GET_PENDING_COMPLAINTS_LABHAZIR}`, {\n headers: getHeader(authHeader()),\n });\n \nexport const getInProcessComplaints = () =>\n get(`${url.GET_INPROCESS_COMPLAINTS}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getInProcessComplaintsLabhazir = () =>\n get(`${url.GET_INPROCESS_COMPLAINTS_LABHAZIR }`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getResolvedComplaints = () =>\n get(`${url.GET_RESOLVED_COMPLAINTS}`, {\n headers: getHeader(authHeader()),\n });\n\n export const getResolvedComplaintsLabhazir = () =>\n get(`${url.GET_RESOLVED_COMPLAINTS_LABHAZIR}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const assignComplaint = data => {\n let formData = new FormData();\n formData.append(\"id\", data.id);\n // formData.append(\"office\", data.office);\n formData.append(\"assigned_to\", data.assignedTo);\n formData.append(\"is_it_urgent\", data.is_it_urgent);\n\n\n return axios.put(`${url.ASSIGN_COMPLAINT}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// ------------- CSR Admin requests START -------------\nexport const getPendingAudits = () =>\n get(`${url.GET_PENDING_AUDITS}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getInProcessAudits = () =>\n get(`${url.GET_INPROCESS_AUDITS}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getPassedAudits = () =>\n get(`${url.GET_PASSED_AUDITS}`, {\n headers: getHeader(authHeader()),\n });\n export const getFailedAudits = () =>\n get(`${url.GET_FAILED_AUDITS}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const assignAudit = data => {\n let formData = new FormData();\n formData.append(\"id\", data.id);\n formData.append(\"assigned_to\", data.assignedTo);\n\n return axios.put(`${url.ASSIGN_AUDIT}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const AddAllLabsAudit = data => {\n let formData = new FormData();\n return axios.post(`${url.ADD_LABS_AUDIT}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// ------------- Advertisements Requests START -------------\nexport const getAdvertisements = () =>\n get(`${url.GET_ADVERTISEMENTS}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getAcceptedLabAdvertisements = () =>\n get(`${url.GET_ACCEPTED_LAB_ADVERTISEMENTS}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const addNewAdvertisement = (advertisement, id) => {\n let formData = new FormData();\n formData.append(\"title\", advertisement.title);\n formData.append(\"poster\", advertisement.poster);\n formData.append(\"posted_at\", advertisement.posted_at);\n formData.append(\"posted_till\", advertisement.posted_till);\n // formData.append(\"region_type\", advertisement.region_type);\n // formData.append(\"province\", advertisement.province);\n formData.append(\"city_id\", advertisement.city_id);\n // formData.append(\"district\", advertisement.district);\n\n console.log(\"advertisement\", advertisement, id)\n\n return axios.post(`${url.ADD_NEW_ADVERTISEMENT}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const updateAdvertisement = advertisement => {\n let formData = new FormData();\n formData.append(\"id\", advertisement.id);\n formData.append(\"title\", advertisement.title);\n formData.append(\"poster\", advertisement.poster);\n formData.append(\"posted_at\", advertisement.posted_at);\n formData.append(\"posted_till\", advertisement.posted_till);\n // formData.append(\"region_type\", advertisement.region_type);\n // formData.append(\"province\", advertisement.province);\n formData.append(\"city_id\", advertisement.city_id);\n // formData.append(\"district\", advertisement.district);\n\n return axios.put(\n `${url.UPDATE_ADVERTISEMENT}/${advertisement.id}`,\n formData,\n {\n headers: getHeader(authHeader()),\n }\n );\n};\n\nexport const deleteAdvertisement = advertisement =>\n del(`${url.DELETE_ADVERTISEMENT}/${advertisement.id}`, {\n headers: getHeader(authHeader()),\n });\n\n// ------------- Discount LabHazir Requests START -------------\nexport const getDiscountLabHazirs = id =>\n get(`${url.GET_DISCOUNT_LABHAZIR}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const updateDiscountLabHazir = data => {\n let formData = new FormData();\n\n formData.append(\"discount\", data.discount);\n\n if (data.discount > 0) {\n formData.append(\"start_date\", data.start_date);\n formData.append(\"end_date\", data.end_date);\n }\n\n return axios.put(`${url.UPDATE_DISCOUNT_LABHAZIR}/${data.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const updateDiscountAllLabHazir = data => {\n let formData = new FormData();\n // formData.append(\"account_id\", id);\n formData.append(\"discount\", data.discount);\n\n if (data.discount > 0) {\n formData.append(\"start_date\", data.start_date);\n formData.append(\"end_date\", data.end_date);\n }\n\n return axios.put(`${url.UPDATE_DISCOUNT_ALL_LABHAZIR}/${data.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// ------------- Discount LabHazir Lab Requests START -------------\n\nexport const getLabsList = ()=>\nget(`${url.GET_LABS_LIST}`, {\n headers: getHeader(authHeader()),\n});\n\nexport const getLabsAuditList = ()=>\n get(`${url.GET_LABS_AUDIT_LIST}`, {\n headers: getHeader(authHeader()),\n });\nexport const getLabsAllAuditList = id =>\n get(`${url.GET_LABS_ALL_AUDIT_LIST}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getDonorsList = ()=>\nget(`${url.GET_DONORS_LIST}`, {\n headers: getHeader(authHeader()),\n});\n/////////////////////////\nexport const getLabsLists = ()=>\nget(`${url.GET_LABS_LIST}`, {\n headers: getHeader(authHeader()),\n});\nexport const getDonorsLists = ()=>\nget(`${url.GET_DONORS_LIST}`, {\n headers: getHeader(authHeader()),\n});\n\n\nexport const getClList = () =>\n get(`${url.GET_CL_LIST}`, {\n headers: getHeader(authHeader()),\n })\n .then(response => {\n console.log(\"Dataaaaaaaaaaaa in helper:\", response); // Logging the response data\n return response;\n })\n .catch(error => {\n console.error(\"Error:\", error); // Logging the error\n throw error; // Re-throwing the error for the caller to handle\n });\n \nexport const getDiscountLabHazirToLabs = id =>\n get(`${url.GET_DISCOUNT_LABHAZIRTOLABS}/${id}`, {\n headers: getHeader(authHeader()),\n });\nexport const updateDiscountLabHazirToLab = data => {\n let formData = new FormData();\n \n formData.append(\"discount_by_labhazir\", data.discount_by_labhazir);\n \n if (data.discount_by_labhazir > 0) {\n formData.append(\"start_date_by_labhazir\", data.start_date_by_labhazir);\n formData.append(\"end_date_by_labhazir\", data.end_date_by_labhazir);\n }\n \n return axios.put(`${url.UPDATE_DISCOUNT_LABHAZIRTOLAB}/${data.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\n \nexport const updateDiscountAllLabHazirToLab = data => {\n let formData = new FormData();\n // formData.append(\"account_id\", id);\n formData.append(\"discount_by_labhazir\", data.discount_by_labhazir);\n // formData.append(\"shared_percentage\", data.shared_percentage);\n \n if (data.discount_by_labhazir > 0) {\n formData.append(\"start_date_by_labhazir\", data.start_date_by_labhazir);\n formData.append(\"end_date_by_labhazir\", data.end_date_by_labhazir);\n }\n \n return axios.put(`${url.UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB}/${data.lab_id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\n\n// export const getReferrelFeeLabs = id =>\n// get(`${url.GET_REFERREL_FEES}/${id}`, {\n// headers: getHeader(authHeader()),\n// });\n// export const getPutReferrelFeeLabs = () =>\n// get(`${url.GET_PUT_REFERREL_FEES}`, {\n// headers: getHeader(authHeader()),\n// });\n// Get Nearby Labs\n\nexport const getPutReferrelFeeLabs = data => {\n let formData = new FormData();\n\n formData.append(\"test_name\", data.test_name);\n\n console.log(\"In registration admin: \", data)\n\n\n return axios.post(`${url.GET_PUT_REFERREL_FEES}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\nexport const getReferrelFeeLabs = () =>\n get(`${url.GET_REFERREL_FEES}`, {\n headers: getHeader(authHeader()),\n });\n \n export const getReviewPerformance = (start_date, end_date) => {\n return get(`${url.GET_REVIEW_PERFORMANCE}`, {\n headers: getHeader(authHeader()),\n params: { start_date, end_date },\n });\n \n };\n\n export const getReviewPerformanceTest = (start_date, end_date) => {\n return get(`${url.GET_REVIEW_PERFORMANCE_TEST}`, {\n headers: getHeader(authHeader()),\n params: { start_date, end_date },\n });\n \n }; \n \nexport const updateReferrelFeeLab = referrelLabFee => {\n let formData = new FormData();\n \n formData.append(\"shared_percentage\", referrelLabFee.shared_percentage);\n \n return axios.put(`${url.UPDATE_REFERREL_FEE}/${referrelLabFee.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\nexport const updateReferrelAllFeeLab = referrelLabFee => {\n let formData = new FormData();\n // formData.append(\"account_id\", id);\n formData.append(\"shared_percentage\", referrelLabFee.shared_percentage);\n\n return axios.put(`${url.UPDATE_REFERREL_ALL_FEE}/${referrelLabFee.lab_id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\n \n\n//discount lab\nexport const getDiscountLab = id =>\n get(`${url.GET_DISCOUNT_LAB}/${id}`, {\n headers: getHeader(authHeader()),\n });\nexport const updateDiscountLab = data => {\n let formData = new FormData();\n\n formData.append(\"discount\", data.discount);\n\n if (data.discount > 0) {\n formData.append(\"start_date\", data.start_date);\n formData.append(\"end_date\", data.end_date);\n }\n\n return axios.put(`${url.UPDATE_DISCOUNT_LAB}/${data.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const updateDiscountAllLab = data => {\n let formData = new FormData();\n // formData.append(\"account_id\", id);\n formData.append(\"discount\", data.discount);\n\n if (data.discount > 0) {\n formData.append(\"start_date\", data.start_date);\n formData.append(\"end_date\", data.end_date);\n }\n\n return axios.put(`${url.UPDATE_DISCOUNT_ALL_LAB}/${data.lab_id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// ------------- Auditor START Activity Log-------------\n\nexport const getActivityLogAuditor = id =>\n get(`${url.GET_ACTIVITY_LOG_AUDITOR}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n\n// ------------- Assigned Audits Requests START -------------\nexport const getAssignedAudits = id =>\n get(`${url.GET_ASSIGNED_AUDITS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const updateAssignedAudits = data => {\n let formData = new FormData();\n formData.append(\"audit_report\", data.auditReport);\n formData.append(\"audit_status\", data.audit_status);\n formData.append(\"comment\", data.comment);\n console.log(\"Form data: \", formData);\n\n return axios.put(`${url.UPDATE_ASSIGNED_AUDITS}/${data.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\nexport const getLabAudits = id =>\n get(`${url.GET_LAB_AUDITS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n export const addNewAudit = (audit, id) => {\n let formData = new FormData();\n formData.append(\"lab_id\", audit.id);\n formData.append(\"reason_of_reaudit\", audit.reason_of_reaudit);\n\n return axios.post(`${url.ADD_NEW_AUDIT}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\n\n export const UpdateAuditStatus = audit => {\n let formData = new FormData();\n formData.append(\"lab_id\", audit.lab_id);\n formData.append(\"reason_of_reaudit\", audit.reason_of_reaudit);\n formData.append(\"audit_status\", audit.audit_status);\n return axios.put(`${url.UPDATE_AUDIT_STATUS}/${audit.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\nexport const getAuditorsCompletedAudits = id =>\n get(`${url.GET_AUDITORS_COMPLETED_AUDITS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getInPayment = id =>\n get(`${url.GET_IN_PAYMENT}/${id}`, {\n headers: getHeader(authHeader()),\n });\n// ------------- Lab Advertisements Requests START -------------\nexport const getLabAdvertisements = id =>\n get(`${url.GET_LAB_ADVERTISEMENTS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const addNewLabAdvertisement = (advertisement, id) => {\n let formData = new FormData();\n formData.append(\"title\", advertisement.title);\n formData.append(\"poster\", advertisement.poster);\n formData.append(\"posted_at\", advertisement.posted_at);\n formData.append(\"posted_till\", advertisement.posted_till);\n // formData.append(\"region_type\", advertisement.region_type);\n // formData.append(\"province\", advertisement.province);\n // formData.append(\"city_id\", advertisement.city_id);\n\n formData.append(\"km\", advertisement.km);\n\n console.log(\"advertisement\",advertisement, id)\n // formData.append(\"amount\", advertisement.amount);\n\n\n return axios.post(`${url.ADD_NEW_LAB_ADVERTISEMENT}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const updateLabAdvertisement = advertisement => {\n let formData = new FormData();\n formData.append(\"id\", advertisement.id);\n formData.append(\"title\", advertisement.title);\n formData.append(\"poster\", advertisement.poster);\n formData.append(\"km\", advertisement.km);\n formData.append(\"posted_till\", advertisement.posted_till);\n formData.append(\"posted_at\", advertisement.posted_at);\n formData.append(\"number_of_days\", advertisement.number_of_days);\n formData.append(\"amount\", advertisement.amount);\n\nconsole.log(\"api helper\",advertisement )\n\n\n return axios.put(`${url.UPDATE_LAB_ADVERTISEMENT}/${advertisement.id}`,\n formData,\n {\n headers: getHeader(authHeader()),\n }\n )\n };\n\n export const getB2bClients = () =>\n get(url.GET_B2B_CLIENTS, {\n headers: getHeader(authHeader()),\n });\n\n // ------------- inPayments Settings Requests START -------------\n\n export const getAllLabsList = () =>\n get(`${url.GET_ALL_LABS_LIST}`, {\n headers: getHeader(authHeader()),\n });\n\n export const addNewInPayment = (inPayment, id) => {\n let formData = new FormData();\n formData.append(\"payment_for\", inPayment.payment_for);\n formData.append(\"lab_id\", inPayment.lab_id);\n formData.append(\"test_appointment_id\", inPayment.test_appointment_id);\n formData.append(\"donor_id\", inPayment.donor_id);\n formData.append(\"advertisement_id\", inPayment.advertisement_id);\n formData.append(\"payment_method\", inPayment.payment_method);\n formData.append(\"recieved_by\", inPayment.recieved_by);\n formData.append(\"handover_to\", inPayment.handover_to);\n formData.append(\"amount\", inPayment.amount);\n formData.append(\"tax\", inPayment.tax);\n formData.append(\"paid_at\", inPayment.paid_at);\n formData.append(\"cheque_payment_date\", inPayment.cheque_payment_date);\n formData.append(\"cheque_no\", inPayment.cheque_no); \n formData.append(\"cheque_image\", inPayment.cheque_image);\n formData.append(\"refered_no\", inPayment.refered_no);\n formData.append(\"payment_status\", inPayment.payment_status);\n\n return axios.post(`${url.ADD_NEW_IN_PAYMENT}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\n\n// ------------- PAYMENT IN STATUS---------------------\nexport const updatePaymentStatus = paymentStatus => {\n let formData = new FormData();\n formData.append(\"id\", paymentStatus.id);\n formData.append(\"deposit_at\", paymentStatus.deposit_at);\n // formData.append(\"bankaccount_id\", paymentStatus.bankaccount_id);\n // formData.append(\"deposit_slip\", paymentStatus.deposit_slip);\n formData.append(\"payment_status\", paymentStatus.payment_status);\n return axios.put(\n `${url.UPDATE_PAYMENT_STATUS}/${paymentStatus.id}`,\n formData,\n {\n headers: getHeader(authHeader()),\n }\n );\n};\n\nexport const updatePaymentInStatus = paymentInStatus => {\n let formData = new FormData();\n formData.append(\"is_cleared\", paymentInStatus.is_cleared);\n formData.append(\"cleared_at\", paymentInStatus.cleared_at);\n formData.append(\"cheque_image\", paymentInStatus.cheque_image);\n return axios.put(\n `${url.UPDATE_PAYMENTIN_STATUS}/${paymentInStatus.id}`,\n formData,\n {\n headers: getHeader(authHeader()),\n }\n );\n};\nexport const updatePaymentInBouncedStatus = paymentInBouncedStatus => {\n let formData = new FormData();\n // formData.append(\"id\", paymentInBouncedStatus.id);\n formData.append(\"deposited_at\", paymentInBouncedStatus.deposited_at);\n formData.append(\"bankaccount_id\", paymentInBouncedStatus.bankaccount_id);\n formData.append(\"deposit_slip\", paymentInBouncedStatus.deposit_slip);\n formData.append(\"payment_status\", paymentInBouncedStatus.payment_status);\n formData.append(\"verified_by\", paymentInBouncedStatus.verified_by);\n\n console.log(\"payment in django api helper\",paymentInBouncedStatus)\n return axios.put(\n `${url.UPDATE_PAYMENTINBOUNCED_STATUS}/${paymentInBouncedStatus.id}`,\n formData,\n {\n headers: getHeader(authHeader()),\n }\n );\n};\n\n// ------------- Lab Advertisements Requests START -------------\nexport const deleteLabAdvertisement = advertisement =>\n del(`${url.DELETE_LAB_ADVERTISEMENT}/${advertisement.id}`, {\n headers: getHeader(authHeader()),\n });\nexport const getPaymentStatuss = id =>\n get(`${url.GET_PAYMENT_STATUSS}/${id}`, {\n headers: getHeader(authHeader()),\n});\nexport const getDepositStatuss = id =>\n get(`${url.GET_DEPOSIT_STATUSS}/${id}`, {\n headers: getHeader(authHeader()),\n});\nexport const getClearStatuss = id =>\n get(`${url.GET_CLEAR_STATUSS}/${id}`, {\n headers: getHeader(authHeader()),\n});\nexport const getPaymentOutClearStatuss = id =>\n get(`${url.GET_PAYMENTOUT_CLEAR_STATUSS}/${id}`, {\n headers: getHeader(authHeader()),\n});\n\n\n\n// ------------- Registration Admin requests START -------------\n\nexport const getClearedInPayments = id =>\n get(`${url.GET_CLEARED_IN_PAYMENTS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getApprovedInPayments = id =>\n get(`${url.GET_APPROVED_IN_PAYMENTS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getUnapprovedInPayments = id =>\n get(`${url.GET_UNAPPROVED_IN_PAYMENTS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n export const updateApproveUnapproveInPayment = data => {\n let formData = new FormData();\n formData.append(\"id\", data.id);\n formData.append(\"is_approved\", data.is_approved);\n \n return axios.put(`${url.UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT}/${data.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n };\n\n\n// ------------- Advertisement Price List Requests START -------------\nexport const getAdvertisementPriceLists = () =>\n get(`${url.GET_ADVERTISEMENT_PRICE_LISTS}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const addNewAdvertisementPriceList = (advertisementPriceList, id) => {\n let formData = new FormData();\n formData.append(\"amount\", advertisementPriceList.amount);\n formData.append(\"number_of_days\", advertisementPriceList.number_of_days);\n formData.append(\"entered_at\", advertisementPriceList.entered_at);\n\n return axios.post(`${url.ADD_NEW_ADVERTISEMENT_PRICE_LIST}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// Donation Appointments\nexport const getAllDonationAppointments = id =>\n get(`${url.GET_ALL_DONATION_APPOINTMENTS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n\n// BANK ACCOUNTS\nexport const getBankaccounts = id =>\n get(`${url.GET_BANKACCOUNTS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const updateBankaccount = bankAccount => {\n let formData = new FormData();\n formData.append(\"id\", bankAccount.id);\n formData.append(\"account_no\", bankAccount.account_no);\n formData.append(\"status\", bankAccount.status);\n formData.append(\"creating_at\", bankAccount.creating_at);\n\n return axios.put(`${url.UPDATE_BANKACCOUNT}/${bankAccount.id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// export const deleteBankaccount = pathologist =>\n// del(`${url.DELETE_BANKACCOUNT}/${pathologist.id}`, {\n// headers: getHeader(authHeader()),\n// });\n\nexport const getOutPayment = id =>\nget(`${url.GET_OUT_PAYMENT}/${id}`, {\n headers: getHeader(authHeader()),\n});\nexport const getLabsMof = ()=>\nget(`${url.GET_LABS_MOF}`, {\n headers: getHeader(authHeader()),\n});\n\nexport const getLabsc = id =>\n get(`${url.GET_LABS_C}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getListDonationAppointment = ()=>\nget(`${url.GET_LIST_DONATIONAPPOINTMENT}`, {\n headers: getHeader(authHeader()),\n});\n\nexport const getListCLabs = ()=>\nget(`${url.GET_LIST_CLABS}`, {\n headers: getHeader(authHeader()),\n});\n\nexport const getListInvoice = ()=>\nget(`${url.GET_LIST_INVOICE}`, {\n headers: getHeader(authHeader()),\n});\n\n// ------------- inPayments Settings Requests START -------------\nexport const addNewOutPayment = ( outPayment, id) => {\n let formData = new FormData();\n formData.append(\"payment_for\", outPayment.payment_for);\n formData.append(\"transection_type\", outPayment.transection_type);\n formData.append(\"lab_id\", outPayment.lab_id);\n formData.append(\"test_appointment_id\", outPayment.test_appointment_id);\n formData.append(\"b2b_id\", outPayment.b2b_id);\n formData.append(\"payment_method\", outPayment.payment_method);\n formData.append(\"bankaccount_id\", outPayment.bankaccount_id);\n formData.append(\"tax\", outPayment.tax);\n formData.append(\"amount\", outPayment.amount);\n formData.append(\"payment_at\", outPayment.payment_at);\n formData.append(\"cheque_no\", outPayment.cheque_no);\n formData.append(\"deposit_copy\", outPayment.deposit_copy);\n formData.append(\"refered_no\", outPayment.refered_no);\n formData.append(\"status\", outPayment.status);\n // formData.append(\"is_cleared\", outPayment.is_cleared);\n // formData.append(\"cleared_at\", outPayment.cleared_at);\n formData.append(\"comments\", outPayment.comments);\n\n console.log(\"django api helper\", outPayment, id)\n\n\n return axios.post(`${url.ADD_NEW_OUT_PAYMENT}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const addNewCorporatePayment = ( outPayment, id) => {\n let formData = new FormData();\n formData.append(\"payment_for\", outPayment.payment_for);\n formData.append(\"lab_id\", outPayment.lab_id);\n formData.append(\"test_appointment_id\", outPayment.test_appointment_id);\n formData.append(\"payment_method\", outPayment.payment_method);\n formData.append(\"tax\", outPayment.tax);\n formData.append(\"amount\", outPayment.amount);\n formData.append(\"payment_at\", outPayment.payment_at);\n formData.append(\"cheque_no\", outPayment.cheque_no);\n formData.append(\"cheque_image\", outPayment.cheque_image);\n formData.append(\"payment_status\", outPayment.payment_status);\n // formData.append(\"is_cleared\", outPayment.is_cleared);\n // formData.append(\"cleared_at\", outPayment.cleared_at);\n formData.append(\"comments\", outPayment.comments);\n\n console.log(\"django api helper\", outPayment, id)\n\n\n return axios.post(`${url.ADD_NEW_CORPORATE_PAYMENT}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// update corporate out payment\nexport const updatePaymentOutCCreatedStatuss = paymentOutCreatedStatuss => {\n let formData = new FormData();\n // formData.append(\"payment_for\", paymentOutCreatedStatuss.payment_for);\n // formData.append(\"lab_id\", paymentOutCreatedStatuss.lab_id);\n // formData.append(\"b2b_id\", paymentOutCreatedStatuss.b2b_id);\n // formData.append(\"test_appointment_id\", paymentOutCreatedStatuss.test_appointment_id);\n // formData.append(\"tax\", paymentOutCreatedStatuss.tax);\n formData.append(\"amount\", paymentOutCreatedStatuss.amount);\n formData.append(\"cheque_no\", paymentOutCreatedStatuss.cheque_no);\n formData.append(\"payment_at\", paymentOutCreatedStatuss.payment_at);\n formData.append(\"cheque_image\", paymentOutCreatedStatuss.cheque_image);\n formData.append(\"payment_method\", paymentOutCreatedStatuss.payment_method);\n // formData.append(\"bankaccount_id\", paymentOutCreatedStatuss.bankaccount_id);\n // formData.append(\"bank_id\", paymentOutCreatedStatuss.bank_id);\n // formData.append(\"refered_no\", paymentOutCreatedStatuss.refered_no);\n // formData.append(\"cleared_at\", paymentOutCreatedStatuss.cleared_at);\n formData.append(\"payment_status\", paymentOutCreatedStatuss.payment_status);\n formData.append(\"comments\", paymentOutCreatedStatuss.comments);\n\n return axios.put(\n `${url.UPDATE_PAYMENTOUTCCREATED_STATUS}/${paymentOutCreatedStatuss.id}`,\n formData,\n {\n headers: getHeader(authHeader()),\n }\n );\n};\n\n// ------------- invoice adjustment Settings Requests START -------------\nexport const addNewInvoiceAdjustment = ( outPayment, id) => {\n let formData = new FormData();\n formData.append(\"invoice_id\", outPayment.invoice_id);\n formData.append(\"tax\", outPayment.tax);\n formData.append(\"total_adjustment\", outPayment.total_adjustment);\n formData.append(\"price_discount\", outPayment.price_discount);\n formData.append(\"others\", outPayment.others);\n formData.append(\"status\", outPayment.status);\n formData.append(\"comments\", outPayment.comments);\n\n console.log(\"django api helper\", outPayment, id)\n\n\n return axios.post(`${url.ADD_NEW_INVOICE_ADJUSTMENT}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n// ------------- Bank Transfer Payments Settings Requests START -------------\nexport const addNewBankTransfer = ( bankTransfer, id) => {\n let formData = new FormData();\n formData.append(\"transfer_type\", bankTransfer.transfer_type);\n formData.append(\"mode\", bankTransfer.mode);\n formData.append(\"deposit_type\", bankTransfer.deposit_type);\n formData.append(\"withdraw_type\", bankTransfer.withdraw_type)\n formData.append(\"amount\", bankTransfer.amount);\n formData.append(\"bankaccount_id\", bankTransfer.bankaccount_id);\n formData.append(\"from_bankaccount_id\", bankTransfer.from_bankaccount_id);\n formData.append(\"deposit_copy\", bankTransfer.deposit_copy);\n formData.append(\"payment_copy\", bankTransfer.payment_copy);\n formData.append(\"cheque_no\", bankTransfer.cheque_no);\n formData.append(\"clearence_datetime\", bankTransfer.clearence_datetime);\n formData.append(\"deposit_datetime\", bankTransfer.deposit_datetime);\n formData.append(\"payment_datetime\", bankTransfer.payment_datetime);\n formData.append(\"status\", bankTransfer.status);\n formData.append(\"comments\", bankTransfer.comments);\n\n console.log(\"django api helper\", bankTransfer, id)\n\n\n return axios.post(`${url.ADD_NEW_BANK_TRANSFER}/${id}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\nexport const getBankTransfer = id =>\nget(`${url.GET_BANK_TRANSFER}/${id}`, {\n headers: getHeader(authHeader()),\n});\n\nexport const updateBankTransfer = bankTransfer => {\n let formData = new FormData();\n formData.append(\"clearence_datetime\", bankTransfer.clearence_datetime);\n return axios.put(\n `${url.UPDATE_BANK_TRANSFER}/${bankTransfer.id}`,\n formData,\n {\n headers: getHeader(authHeader()),\n }\n );\n};\n\n\nexport const getPaymentOutStatuss = id =>\n get(`${url.GET_PAYMENTOUT_STATUSS}/${id}`, {\n headers: getHeader(authHeader()),\n });\nexport const getBouncedStatuss = id =>\n get(`${url.GET_BOUNCED_STATUSS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const getBouncedInStatuss = id =>\n get(`${url.GET_BOUNCEDIN_STATUSS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\n// corporate out payment \n// export const getCCreatedOutStatuss = id =>\n// get(`${url.GET_CCREATEDOUT_STATUSS}/${id}`, {\n// headers: getHeader(authHeader()),\n// });\nexport const getCCreatedOutStatuss = id =>\n get(`${url.GET_CCREATEDOUT_STATUSS}/${id}`, {\n headers: getHeader(authHeader()),\n })\n .then(response => {\n console.log(\"api response is :\" ,response); // Log the response to the console\n return response; // Optionally return the response if needed\n })\n .catch(error => {\n console.error('Error fetching API:', error); // Log any errors to the console\n throw error; // Optionally rethrow the error if needed\n });\n\nexport const getCreatedOutStatuss = id =>\n get(`${url.GET_CREATEDOUT_STATUSS}/${id}`, {\n headers: getHeader(authHeader()),\n });\nexport const getCreatedOutDetailStatuss = id =>\n get(`${url.GET_CREATEDOUTDETAIL_STATUSS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n// ------------- PAYMENT IN STATUS---------------------\nexport const updatePaymentOutStatus = paymentOutStatus => {\n let formData = new FormData();\n formData.append(\"is_cleared\", paymentOutStatus.is_cleared);\n formData.append(\"cleared_at\", paymentOutStatus.cleared_at);\n return axios.put(\n `${url.UPDATE_PAYMENTOUT_STATUS}/${paymentOutStatus.id}`,\n formData,\n {\n headers: getHeader(authHeader()),\n }\n );\n};\n\nexport const updatePaymentOutCreatedStatuss = paymentOutCreatedStatuss => {\n let formData = new FormData();\n // formData.append(\"payment_for\", paymentOutCreatedStatuss.payment_for);\n // formData.append(\"lab_id\", paymentOutCreatedStatuss.lab_id);\n // formData.append(\"b2b_id\", paymentOutCreatedStatuss.b2b_id);\n formData.append(\"amount\", paymentOutCreatedStatuss.amount);\n formData.append(\"cheque_no\", paymentOutCreatedStatuss.cheque_no);\n formData.append(\"payment_at\", paymentOutCreatedStatuss.payment_at);\n formData.append(\"deposit_copy\", paymentOutCreatedStatuss.deposit_copy);\n formData.append(\"payment_method\", paymentOutCreatedStatuss.payment_method);\n // formData.append(\"bankaccount_id\", paymentOutCreatedStatuss.bankaccount_id);\n // formData.append(\"bank_id\", paymentOutCreatedStatuss.bank_id);\n // formData.append(\"refered_no\", paymentOutCreatedStatuss.refered_no);\n // formData.append(\"cleared_at\", paymentOutCreatedStatuss.cleared_at);\n formData.append(\"status\", paymentOutCreatedStatuss.status);\n formData.append(\"comments\", paymentOutCreatedStatuss.comments);\n\n return axios.put(\n `${url.UPDATE_PAYMENTOUTCREATED_STATUS}/${paymentOutCreatedStatuss.id}`,\n formData,\n {\n headers: getHeader(authHeader()),\n }\n );\n};\n \nexport const updateAdvertisementPriceList = advertisementPriceList => {\n let formData = new FormData();\n formData.append(\"amount\", advertisementPriceList.amount);\n formData.append(\"number_of_days\", advertisementPriceList.number_of_days);\n formData.append(\"entered_at\", advertisementPriceList.entered_at);\n\n return axios.put(\n `${url.UPDATE_ADVERTISEMENT_PRICE_LIST}/${advertisement.id}`,\n formData,\n {\n headers: getHeader(authHeader()),\n }\n );\n};\n\nexport const deleteAdvertisementPriceList = advertisementPriceList =>\n del(`${url.DELETE_ADVERTISEMENT_PRICE_LIST}/${advertisementPriceList.id}`, {\n headers: getHeader(authHeader()),\n });\n\n// ------------- Lab Advertisements Requests TO labhazir START -------------\nexport const getLabAdvertisementRequests = id =>\n get(`${url.GET_LAB_ADVERTISEMENT_REQUESTS}/${id}`, {\n headers: getHeader(authHeader()),\n });\n\nexport const updateLabAdvertisementRequest = advertisement => {\n let formData = new FormData();\n formData.append(\"id\", advertisement.id);\n formData.append(\"request_status\", advertisement.request_status);\n formData.append(\"declined_reason\", advertisement.declined_reason);\n formData.append(\"responded_at\", advertisement.responded_at);\n\n console.log(\"django api helper\", advertisement)\n\n return axios.put(\n `${url.UPDATE_LAB_ADVERTISEMENT_REQUEST}/${advertisement.id}`,\n formData,\n {\n headers: getHeader(authHeader()),\n }\n );\n};\n\nexport const deletePaymentout = paymentout =>\n del(`${url.DELETE_PAYMENTOUT}/${paymentout.id}`, {\n headers: getHeader(authHeader()),\n });\n\n\n// ------------- Accepeted Lab Advertisements Requests TO labhazir START -------------\nexport const getLabAdvertisementRequestsAccepted= () =>\n get(`${url.GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED}`, {\n headers: getHeader(authHeader()),\n });\n\n// ------------- Advertisements Live START -------------\nexport const getAdvertisementLives=() =>\n get(`${url.GET_ADVERTISEMENT_LIVES}`, {\n headers: getHeader(authHeader()),\n });\n\n// ------------- Advertisements Live START -------------\n// export const getAdvLive=() =>\n// get(`${url.GET_ADV_LIVE}`, {\n// headers: getHeader(authHeader()),\n// });\n// Get Region Wise Advertisement\nexport const getAdvLive = locationDetails => {\n let formData = new FormData();\n formData.append(\"latitude\", locationDetails.latitude);\n formData.append(\"longitude\", locationDetails.longitude);\n formData.append(\"search_type\", locationDetails.search_type);\n formData.append(\"address\", locationDetails.address);\n formData.append(\"city\", locationDetails.city);\n\n console.log(\"labhaziradvLives: \", locationDetails)\n\n\n return axios.post(`${url.GET_ADV_LIVE}`, formData, {\n headers: getHeader(authHeader()),\n });\n};\n\n//------------ Get Advertisement Invoice Detail-------------\nexport const getAdvInvoice = id =>\n get(`${url.GET_ADV_INVOICE}/${id}`, {\n headers: getHeader(authHeader()),\n },\n console.log(id)\n);\n\n//------------ Get Territories List-------------\n export const getTerritoriesList = ()=>\n get(`${url.GET_TERRITORIES_LIST}`, {\n headers: getHeader(authHeader()),\n });\n\n//------------ Get Territories List-------------\nexport const getCorporatesList = ()=>\nget(`${url.GET_CORPORATES_LIST}`, {\n headers: getHeader(authHeader()),\n});\n\n//------------ Get Names List-------------\n export const getLabNamesList = ()=>\n get(`${url.GET_LAB_NAMES_LIST}`, {\n headers: getHeader(authHeader()),\n });\n\n\n//------------ Get Medical Test List-------------\nexport const onlyMedicalTestList = ()=>\nget(`${url.GET_ONLY_MEDICAL_LIST}`, {\n headers: getHeader(authHeader()),\n});\n\n\n//------------ Get CSR Central Territories List-------------\nexport const getCsrCentralList = ()=>\nget(`${url.GET_CSR_CENTRAL_TERRITORY_LIST}`, {\n headers: getHeader(authHeader()),\n});\n\n//------------ Get CSR SOUTH Territories List-------------\nexport const getCsrSouthList = ()=>\nget(`${url.GET_CSR_SOUTH_TERRITORY_LIST}`, {\n headers: getHeader(authHeader()),\n});\n\n//------------ Get CSR NORTH Territories List-------------\nexport const getCsrNorthList = ()=>\nget(`${url.GET_CSR_NORTH_TERRITORY_LIST}`, {\n headers: getHeader(authHeader()),\n});\n\n//------------ Get AUDITOR Central Territories List-------------\nexport const getAuditorCentralList = ()=>\nget(`${url.GET_AUDITOR_CENTRAL_TERRITORY_LIST}`, {\n headers: getHeader(authHeader()),\n});\n\n//------------ Get Auditor SOUTH Territories List-------------\nexport const getAuditorSouthList = ()=>\nget(`${url.GET_AUDITOR_SOUTH_TERRITORY_LIST}`, {\n headers: getHeader(authHeader()),\n});\n\n//------------ Get Auditor NORTH Territories List-------------\nexport const getAuditorNorthList = ()=>\nget(`${url.GET_AUDITOR_NORTH_TERRITORY_LIST}`, {\n headers: getHeader(authHeader()),\n});","import { takeEvery, put, call } from \"redux-saga/effects\";\n\n//Account Redux states\nimport { REGISTER_USER } from \"./actionTypes\";\nimport { registerUserSuccessful, registerUserFailed } from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { postRegister } from \"../../../helpers/django_api_helper\";\n\n// Is user register successfull then direct plot user in redux.\nfunction* registerUser({ payload: { user } }) {\n try {\n const response = yield call(postRegister, user);\n yield put(registerUserSuccessful(response));\n\n if (response.error) {\n yield put(registerUserFailed(response));\n } else if (response.status === 400) {\n yield put(registerUserFailed(response.message));\n }\n } catch (error) {\n yield put(registerUserFailed(error));\n }\n}\n\nfunction* accountSaga() {\n yield takeEvery(REGISTER_USER, registerUser);\n}\n\nexport default accountSaga;\n","import { takeEvery, put, call } from \"redux-saga/effects\";\n\n//Account Redux states\nimport { ADD_PATIENT_INFORMATION, GET_TERRITORIES_LIST, GET_CORPORATES_LIST } from \"./actionTypes\";\nimport {\n getTerritoriesListSuccess,\n getTerritoriesListFail,\n getCorporatesListSuccess,\n getCorporatesListFail,\n addPatientInformationSuccessful,\n addPatientInformationFailed,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { postPatientInformation, getTerritoriesList, getCorporatesList } from \"../../../helpers/django_api_helper\";\n\n// Is user register successfull then direct plot user in redux.\n\n// Territories\nfunction* fetchTerritoriesList(object) {\n try {\n const response = yield call(getTerritoriesList, object.payload);\n yield put(getTerritoriesListSuccess(response));\n } catch (error) {\n yield put(getTerritoriesListFail(error));\n }\n}\n// Territories\nfunction* fetchCorporatesList(object) {\n try {\n const response = yield call(getCorporatesList, object.payload);\n yield put(getCorporatesListSuccess(response));\n } catch (error) {\n yield put(getCorporatesListFail(error));\n }\n}\nfunction* addPatientInformation({ payload: { patient, id } }) {\n try {\n const response = yield call(postPatientInformation, id, patient);\n if (response.status == 400) {\n yield put(addPatientInformationFailed(response.message));\n } else {\n yield put(addPatientInformationSuccessful(response));\n }\n } catch (error) {\n yield put(addPatientInformationFailed(error));\n }\n}\n\nfunction* PatientInformationSaga() {\n yield takeEvery(ADD_PATIENT_INFORMATION, addPatientInformation);\n yield takeEvery(GET_TERRITORIES_LIST,fetchTerritoriesList);\n yield takeEvery(GET_CORPORATES_LIST,fetchCorporatesList);\n}\n\nexport default PatientInformationSaga;\n","import { takeEvery, put, call } from \"redux-saga/effects\";\n\n//Account Redux states\nimport { ADD_B2BCLIENT_INFORMATION, GET_TERRITORIES_LIST,} from \"./actionTypes\";\nimport {\n getTerritoriesListSuccess,\n getTerritoriesListFail,\n addB2bClientInformationSuccessful,\n addB2bClientInformationFailed,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { postB2bClientInformation, getTerritoriesList} from \"../../../helpers/django_api_helper\";\n\n// Territories\nfunction* fetchTerritoriesList(object) {\n try {\n const response = yield call(getTerritoriesList, object.payload);\n yield put(getTerritoriesListSuccess(response));\n } catch (error) {\n yield put(getTerritoriesListFail(error));\n }\n}\n\n// Is user register successfull then direct plot user in redux.\nfunction* addB2bClientInformation({ payload: { b2bClient, id } }) {\n try {\n const response = yield call(postB2bClientInformation, id, b2bClient);\n if (response.status == 400) {\n yield put(addB2bClientInformationFailed(response.message));\n } else {\n yield put(addB2bClientInformationSuccessful(response));\n }\n } catch (error) {\n yield put(addB2bClientInformationFailed(error));\n }\n}\n\nfunction* B2bClientInformationSaga() {\n yield takeEvery(ADD_B2BCLIENT_INFORMATION, addB2bClientInformation);\n yield takeEvery(GET_TERRITORIES_LIST,fetchTerritoriesList);\n}\n\nexport default B2bClientInformationSaga;\n","import { takeEvery, put, call } from \"redux-saga/effects\";\n\n//Account Redux states\nimport { ADD_DONOR_INFORMATION, GET_TERRITORIES_LIST } from \"./actionTypes\";\nimport {\n getTerritoriesListSuccess,\n getTerritoriesListFail,\n addDonorInformationSuccessful,\n addDonorInformationFailed,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { postDonorInformation} from \"../../../helpers/django_api_helper\";\n// Territories\nfunction* fetchTerritoriesList(object) {\n try {\n const response = yield call(getTerritoriesList, object.payload);\n yield put(getTerritoriesListSuccess(response));\n } catch (error) {\n yield put(getTerritoriesListFail(error));\n }\n}\n\n// Is user register successfull then direct plot user in redux.\nfunction* addDonorInformation({ payload: { donor, id } }) {\n try {\n const response = yield call(postDonorInformation, id, donor);\n if (response.status == 400) {\n yield put(addDonorInformationFailed(response.message));\n } else {\n yield put(addDonorInformationSuccessful(response));\n }\n } catch (error) {\n yield put(addDonorInformationFailed(error));\n }\n}\n\nfunction* DonorInformationSaga() {\n yield takeEvery(ADD_DONOR_INFORMATION, addDonorInformation);\n yield takeEvery(GET_TERRITORIES_LIST,fetchTerritoriesList);\n\n}\n\nexport default DonorInformationSaga;\n","import { takeEvery, put, call } from \"redux-saga/effects\";\n\n//Account Redux states\nimport { GET_MAIN_LABS, ADD_LAB_INFORMATION, GET_TERRITORIES_LIST } from \"./actionTypes\";\nimport {\n getTerritoriesListSuccess,\n getTerritoriesListFail,\n getMainLabsSuccess,\n getMainLabsFail,\n addLabInformationSuccessful,\n addLabInformationFailed,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getMainLabs,\n postLabInformation,\n getTerritoriesList,\n} from \"../../../helpers/django_api_helper\";\n\nfunction* fetchTerritoriesList(object) {\n try {\n const response = yield call(getTerritoriesList, object.payload);\n yield put(getTerritoriesListSuccess(response));\n } catch (error) {\n yield put(getTerritoriesListFail(error));\n }\n}\nfunction* fethMainLabs() {\n try {\n const response = yield call(getMainLabs);\n yield put(getMainLabsSuccess(response));\n } catch (error) {\n yield put(getMainLabsFail(error));\n }\n}\n\n// Is user register successfull then direct plot user in redux.\nfunction* addLabInformation({ payload: { lab, id } }) {\n try {\n const response = yield call(postLabInformation, id, lab);\n\n if (response.status == 400) {\n yield put(addLabInformationFailed(response.message));\n } else {\n yield put(addLabInformationSuccessful(response));\n }\n } catch (error) {\n yield put(addLabInformationFailed(error));\n }\n}\n\nfunction* LabInformationSaga() {\n yield takeEvery(GET_MAIN_LABS, fethMainLabs);\n yield takeEvery(ADD_LAB_INFORMATION, addLabInformation);\n yield takeEvery(GET_TERRITORIES_LIST,fetchTerritoriesList);\n}\n\nexport default LabInformationSaga;\n","import { takeEvery, put, call } from \"redux-saga/effects\";\n\n//Account Redux states\nimport { ADD_CORPORATE_INFORMATION, GET_TERRITORIES_LIST } from \"./actionTypes\";\nimport {\n getTerritoriesListSuccess,\n getTerritoriesListFail,\n addCorporateInformationSuccessful,\n addCorporateInformationFailed,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { postCorporateInformation, getTerritoriesList,\n} from \"../../../helpers/django_api_helper\";\n\nfunction* fetchTerritoriesList(object) {\n try {\n const response = yield call(getTerritoriesList, object.payload);\n yield put(getTerritoriesListSuccess(response));\n } catch (error) {\n yield put(getTerritoriesListFail(error));\n }\n}\n\n// Is user register successfull then direct plot user in redux.\nfunction* addCorporateInformation({ payload: { corporate, id } }) {\n try {\n const response = yield call(postCorporateInformation, id, corporate);\n\n if (response.status == 400) {\n yield put(addCorporateInformationFailed(response.message));\n } else {\n yield put(addCorporateInformationSuccessful(response));\n }\n } catch (error) {\n yield put(addCorporateInformationFailed(error));\n }\n}\n\nfunction* CorporateInformationSaga() {\n yield takeEvery(ADD_CORPORATE_INFORMATION, addCorporateInformation);\n yield takeEvery(GET_TERRITORIES_LIST,fetchTerritoriesList);\n}\n\nexport default CorporateInformationSaga;\n","import { takeEvery, put, call, takeLatest } from \"redux-saga/effects\";\n\n// Login Redux States\nimport { LOGIN_USER, LOGOUT_USER } from \"./actionTypes\";\nimport { loginSuccess, logoutUserSuccess, apiError } from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { postLogin } from \"../../../helpers/django_api_helper\";\n\nfunction* loginUser({ payload: { user, history } }) {\n try {\n const response = yield call(postLogin, {\n username: user.username,\n password: user.password,\n guest_id: user.guest_id,\n\n });\n\n // If there is data in response then execute this block\n // Otherwise there must be some error so execute else block\n if (response.data.data) {\n const data = response.data.data;\n\n localStorage.setItem(\"authUser\", JSON.stringify(data));\n yield put(loginSuccess(data));\n\n // if (data.account_type == \"patient\") {\n // history.push(\"/nearby-labs\");\n // }\n // else if (data.account_type == \"labowner\") {\n // history.push(\"/dashboard-lab\");\n // }\n // else if (data.account_type == \"b2bclient\") {\n // history.push(\"/dashboard-b2bclient\");\n // }\n // else {\n // history.push(\"/dashboard-corporate/\" + data.user_id);\n // }\n } else {\n const message = response.data.message;\n yield put(apiError(message));\n }\n } catch (error) {\n yield put(apiError(\"Sorry! You have provided invalid Password.\"));\n }\n}\n\nfunction* logoutUser({ payload: { history } }) {\n try {\n localStorage.removeItem(\"authUser\");\n\n // if (process.env.REACT_APP_DEFAULTAUTH === \"firebase\") {\n // const response = yield call(fireBaseBackend.logout);\n // yield put(logoutUserSuccess(response));\n // }\n history.push(\"/login\");\n } catch (error) {\n yield put(apiError(error));\n }\n}\n\nfunction* authSaga() {\n yield takeEvery(LOGIN_USER, loginUser);\n yield takeEvery(LOGOUT_USER, logoutUser);\n}\n\nexport default authSaga;\n","import { takeEvery, put, call } from \"redux-saga/effects\";\n\n// Login Redux States\nimport { FORGET_PASSWORD } from \"./actionTypes\";\nimport { userForgetPasswordSuccess, userForgetPasswordError } from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { postForgetPwd } from \"../../../helpers/django_api_helper\";\n\n//If user is send successfully send mail link then dispatch redux action's are directly from here.\nfunction* forgetUser({ payload: { user } }) {\n try {\n const response = yield call(postForgetPwd, { email: user.email });\n if (response) {\n yield put(\n userForgetPasswordSuccess(\n \"Password reset link is sent to your email address, please check the inbox first. If not found, please check in the spam.\"\n )\n );\n }\n } catch (error) {\n yield put(\n userForgetPasswordError(\n \"Sorry, we couldn't find an account associated with this email. Please try again with a valid email address.\"\n )\n );\n }\n}\n\nfunction* forgetPasswordSaga() {\n yield takeEvery(FORGET_PASSWORD, forgetUser);\n}\n\nexport default forgetPasswordSaga;\n","import { takeEvery, put, call } from \"redux-saga/effects\";\n\n// Login Redux States\nimport { CONFIRM_PASSWORD } from \"./actionTypes\";\nimport {\n userConfirmPasswordSuccess,\n userConfirmPasswordError,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { postConfirmPwd } from \"../../../helpers/django_api_helper\";\n\n//If user is send successfully send mail link then dispatch redux action's are directly from here.\nfunction* confirmUser({ payload: { user, token } }) {\n try {\n const response = yield call(postConfirmPwd, user, token);\n if (response) {\n yield put(\n userConfirmPasswordSuccess(\n \"Congratulations! Your password is reset, you can now login to your account using new password.\"\n )\n );\n }\n } catch (error) {\n if (error.response.status == 404) {\n yield put(\n userConfirmPasswordError(\n \"You can't reset your password again as it has already been reset.\"\n )\n );\n } else {\n yield put(userConfirmPasswordError(error.response.data.password));\n }\n }\n}\n\nfunction* confirmPasswordSaga() {\n yield takeEvery(CONFIRM_PASSWORD, confirmUser);\n}\n\nexport default confirmPasswordSaga;\n","import { takeEvery, put, call } from \"redux-saga/effects\";\n\n// Login Redux States\nimport { CHANGE_PASSWORD } from \"./actionTypes\";\nimport { userChangePasswordSuccess, userChangePasswordError } from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { postChangePwd } from \"../../../helpers/django_api_helper\";\n\n//If user is send successfully send mail link then dispatch redux action's are directly from here.\nfunction* changeUser({ payload: { user } }) {\n try {\n const response = yield call(postChangePwd, user);\n if (response) {\n yield put(\n userChangePasswordSuccess(\n \"Congratulations! Your password is changed, you can now login to your account using new password.\"\n )\n );\n }\n } catch (error) {\n if (error.response.status == 400) {\n yield put(userChangePasswordError(error.response.data));\n } else {\n yield put(userChangePasswordError(error.response.data));\n }\n }\n}\n\nfunction* changePasswordSaga() {\n yield takeEvery(CHANGE_PASSWORD, changeUser);\n}\n\nexport default changePasswordSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_LAB_PROFILE, UPDATE_LAB_PROFILE } from \"./actionTypes\";\n\nimport {\n getLabProfileSuccess,\n getLabProfileFail,\n updateLabProfileSuccess,\n updateLabProfileFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getLabProfile,\n updateLabProfile,\n} from \"../../../helpers/django_api_helper\";\n\nfunction* fetchLabProfile(object) {\n try {\n const response = yield call(getLabProfile, object.payload);\n yield put(getLabProfileSuccess(response));\n } catch (error) {\n yield put(getLabProfileFail(error));\n }\n}\n\nfunction* onUpdateLabProfile({ payload: { labProfile, id } }) {\n try {\n const response = yield call(updateLabProfile, labProfile, id);\n yield put(updateLabProfileSuccess(response));\n } catch (error) {\n yield put(updateLabProfileFail(error));\n }\n}\n\nfunction* labProfileSaga() {\n yield takeEvery(GET_LAB_PROFILE, fetchLabProfile);\n yield takeEvery(UPDATE_LAB_PROFILE, onUpdateLabProfile);\n}\n\nexport default labProfileSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_B2B_PROFILE, UPDATE_B2B_PROFILE } from \"./actionTypes\";\n\nimport {\n getB2bProfileSuccess,\n getB2bProfileFail,\n updateB2bProfileSuccess,\n updateB2bProfileFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getB2bProfile,\n updateB2bProfile,\n} from \"../../../helpers/django_api_helper\";\n\nfunction* fetchB2bProfile(object) {\n try {\n const response = yield call(getB2bProfile, object.payload);\n yield put(getB2bProfileSuccess(response));\n } catch (error) {\n yield put(getB2bProfileFail(error));\n }\n}\n\nfunction* onUpdateB2bProfile({ payload: { b2bProfile, id } }) {\n try {\n const response = yield call(updateB2bProfile, b2bProfile, id);\n yield put(updateB2bProfileSuccess(response));\n } catch (error) {\n yield put(updateB2bProfileFail(error));\n }\n}\n\nfunction* b2bProfileSaga() {\n yield takeEvery(GET_B2B_PROFILE, fetchB2bProfile);\n yield takeEvery(UPDATE_B2B_PROFILE, onUpdateB2bProfile);\n}\n\nexport default b2bProfileSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_DONOR_PROFILE, UPDATE_DONOR_PROFILE } from \"./actionTypes\";\n\nimport {\n getDonorProfileSuccess,\n getDonorProfileFail,\n updateDonorProfileSuccess,\n updateDonorProfileFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getDonorProfile,\n updateDonorProfile,\n} from \"../../../helpers/django_api_helper\";\n\nfunction* fetchDonorProfile(object) {\n try {\n const response = yield call(getDonorProfile, object.payload);\n console.log(\"response: \", response);\n yield put(getDonorProfileSuccess(response));\n } catch (error) {\n yield put(getDonorProfileFail(error));\n }\n}\n\nfunction* onUpdateDonorProfile({ payload: { donorProfile, id } }) {\n try {\n const response = yield call(updateDonorProfile, donorProfile, id);\n yield put(updateDonorProfileSuccess(response));\n } catch (error) {\n yield put(updateDonorProfileFail(error));\n }\n}\n\nfunction* donorProfileSaga() {\n yield takeEvery(GET_DONOR_PROFILE, fetchDonorProfile);\n yield takeEvery(UPDATE_DONOR_PROFILE, onUpdateDonorProfile);\n}\n\nexport default donorProfileSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_STAFF_PROFILE, UPDATE_STAFF_PROFILE } from \"./actionTypes\";\n\nimport {\n getStaffProfileSuccess,\n getStaffProfileFail,\n updateStaffProfileSuccess,\n updateStaffProfileFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getStaffProfile,\n updateStaffProfile,\n} from \"../../../helpers/django_api_helper\";\n\nfunction* fetchStaffProfile(object) {\n try {\n const response = yield call(getStaffProfile, object.payload);\n yield put(getStaffProfileSuccess(response));\n } catch (error) {\n yield put(getStaffProfileFail(error));\n }\n}\n\nfunction* onUpdateStaffProfile({ payload: { staffProfile, id } }) {\n try {\n const response = yield call(updateStaffProfile, staffProfile, id);\n yield put(updateStaffProfileSuccess(response));\n } catch (error) {\n yield put(updateStaffProfileFail(error));\n }\n}\n\nfunction* staffProfileSaga() {\n yield takeEvery(GET_STAFF_PROFILE, fetchStaffProfile);\n yield takeEvery(UPDATE_STAFF_PROFILE, onUpdateStaffProfile);\n}\n\nexport default staffProfileSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_SAMPLE_COLLECTOR_PROFILE, UPDATE_SAMPLE_COLLECTOR_PROFILE } from \"./actionTypes\";\n\nimport {\n getSampleCollectorProfileSuccess,\n getSampleCollectorProfileFail,\n updateSampleCollectorProfileSuccess,\n updateSampleCollectorProfileFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getSampleCollectorProfile,\n updateSampleCollectorProfile,\n} from \"../../../helpers/django_api_helper\";\n\nfunction* fetchSampleCollectorProfile(object) {\n try {\n const response = yield call(getSampleCollectorProfile, object.payload);\n yield put(getSampleCollectorProfileSuccess(response));\n } catch (error) {\n yield put(getSampleCollectorProfileFail(error));\n }\n}\n\nfunction* onUpdateSampleCollectorProfile({ payload: { sampleCollectorProfile, id } }) {\n try {\n const response = yield call(updateSampleCollectorProfile, sampleCollectorProfile, id);\n yield put(updateSampleCollectorProfileSuccess(response));\n } catch (error) {\n yield put(updateSampleCollectorProfileFail(error));\n }\n}\n\nfunction* sampleCollectorProfileSaga() {\n yield takeEvery(GET_SAMPLE_COLLECTOR_PROFILE, fetchSampleCollectorProfile);\n yield takeEvery(UPDATE_SAMPLE_COLLECTOR_PROFILE, onUpdateSampleCollectorProfile);\n}\n\nexport default sampleCollectorProfileSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_LAB_SETTINGS, UPDATE_LAB_SETTINGS } from \"./actionTypes\";\n\nimport {\n getLabSettingsSuccess,\n getLabSettingsFail,\n updateLabSettingsSuccess,\n updateLabSettingsFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getLabSettings,\n updateLabSettings,\n} from \"../../../helpers/django_api_helper\";\n\nfunction* fetchLabSettings(object) {\n try {\n const response = yield call(getLabSettings, object.payload);\n yield put(getLabSettingsSuccess(response));\n } catch (error) {\n yield put(getLabSettingsFail(error));\n }\n}\n\nfunction* onUpdateLabSettings({ payload: { labSettings, id } }) {\n try {\n const response = yield call(updateLabSettings, labSettings, id);\n yield put(updateLabSettingsSuccess(response));\n } catch (error) {\n yield put(updateLabSettingsFail(error));\n }\n}\n\nfunction* labSettingsSaga() {\n yield takeEvery(GET_LAB_SETTINGS, fetchLabSettings);\n yield takeEvery(UPDATE_LAB_SETTINGS, onUpdateLabSettings);\n}\n\nexport default labSettingsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_LAB_PAYMENTS, UPDATE_LAB_PAYMENTS } from \"./actionTypes\";\n\nimport {\n getLabPaymentsSuccess,\n getLabPaymentsFail,\n updateLabPaymentsSuccess,\n updateLabPaymentsFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getLabPayments,\n updateLabPayments,\n} from \"../../../helpers/django_api_helper\";\n\nfunction* fetchLabPayments(object) {\n try {\n const response = yield call(getLabPayments, object.payload);\n yield put(getLabPaymentsSuccess(response));\n } catch (error) {\n yield put(getLabPaymentsFail(error));\n }\n}\n\nfunction* onUpdateLabPayments({ payload: { labPayments, id } }) {\n try {\n const response = yield call(updateLabPayments, labPayments, id);\n yield put(updateLabPaymentsSuccess(response));\n } catch (error) {\n yield put(updateLabPaymentsFail(error));\n }\n}\n\nfunction* labPaymentsSaga() {\n yield takeEvery(GET_LAB_PAYMENTS, fetchLabPayments);\n yield takeEvery(UPDATE_LAB_PAYMENTS, onUpdateLabPayments);\n}\n\nexport default labPaymentsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_DONOR_SETTINGS, UPDATE_DONOR_SETTINGS, GET_TERRITORIES_LIST } from \"./actionTypes\";\n\nimport {\n getTerritoriesListSuccess,\n getTerritoriesListFail,\n getDonorSettingsSuccess,\n getDonorSettingsFail,\n updateDonorSettingsSuccess,\n updateDonorSettingsFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getDonorSettings,\n updateDonorSettings,\n getTerritoriesList,\n} from \"../../../helpers/django_api_helper\";\n\n\nfunction* fetchTerritoriesList(object) {\n try {\n const response = yield call(getTerritoriesList, object.payload);\n yield put(getTerritoriesListSuccess(response));\n } catch (error) {\n yield put(getTerritoriesListFail(error));\n }\n}\n\nfunction* fetchDonorSettings(object) {\n try {\n const response = yield call(getDonorSettings, object.payload);\n yield put(getDonorSettingsSuccess(response));\n } catch (error) {\n yield put(getDonorSettingsFail(error));\n }\n}\n\nfunction* onUpdateDonorSettings({ payload: { donorSettings, id } }) {\n try {\n const response = yield call(updateDonorSettings, donorSettings, id);\n yield put(updateDonorSettingsSuccess(response));\n } catch (error) {\n yield put(updateDonorSettingsFail(error));\n }\n}\n\nfunction* donorSettingsSaga() {\n yield takeEvery(GET_DONOR_SETTINGS, fetchDonorSettings);\n yield takeEvery(UPDATE_DONOR_SETTINGS, onUpdateDonorSettings);\n yield takeEvery(GET_TERRITORIES_LIST,fetchTerritoriesList);\n}\n\nexport default donorSettingsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_PATIENT_PROFILE, UPDATE_PATIENT_PROFILE } from \"./actionTypes\";\n\nimport {\n getPatientProfileSuccess,\n getPatientProfileFail,\n updatePatientProfileSuccess,\n updatePatientProfileFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getPatientProfile,\n updatePatientProfile,\n} from \"../../../helpers/django_api_helper\";\n\nfunction* fetchPatientProfile(object) {\n try {\n const response = yield call(getPatientProfile, object.payload);\n yield put(getPatientProfileSuccess(response));\n } catch (error) {\n yield put(getPatientProfileFail(error));\n }\n}\n\nfunction* onUpdatePatientProfile({ payload: { patientProfile, id } }) {\n try {\n const response = yield call(updatePatientProfile, patientProfile, id);\n yield put(updatePatientProfileSuccess(response));\n } catch (error) {\n yield put(updatePatientProfileFail(error));\n }\n}\n\nfunction* patientProfileSaga() {\n yield takeEvery(GET_PATIENT_PROFILE, fetchPatientProfile);\n yield takeEvery(UPDATE_PATIENT_PROFILE, onUpdatePatientProfile);\n}\n\nexport default patientProfileSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_CORPORATE_PROFILE, UPDATE_CORPORATE_PROFILE } from \"./actionTypes\";\n\nimport {\n getCorporateProfileSuccess,\n getCorporateProfileFail,\n updateCorporateProfileSuccess,\n updateCorporateProfileFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getCorporateProfile,\n updateCorporateProfile,\n} from \"../../../helpers/django_api_helper\";\n\nfunction* fetchCorporateProfile(object) {\n try {\n const response = yield call(getCorporateProfile, object.payload);\n yield put(getCorporateProfileSuccess(response));\n } catch (error) {\n yield put(getCorporateProfileFail(error));\n }\n}\n\nfunction* onUpdateCorporateProfile({ payload: { CorporateProfile, id } }) {\n try {\n console.log('Updating corporate profile with id:', id);\n console.log('Corporate profile data:', CorporateProfile);\n const response = yield call(updateCorporateProfile, CorporateProfile, id);\n yield put(updateCorporateProfileSuccess(response));\n } catch (error) {\n yield put(updateCorporateProfileFail(error));\n }\n}\n\nfunction* corporateProfileSaga() {\n yield takeEvery(GET_CORPORATE_PROFILE, fetchCorporateProfile);\n yield takeEvery(UPDATE_CORPORATE_PROFILE, onUpdateCorporateProfile);\n}\n\nexport default corporateProfileSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// LabMarket Redux States\nimport { GET_NEARBY_LABS, GET_CORPORATE_LABS, GET_REGION_WISE_ADVERTISEMENT,\n GET_ADV_LIVE , GET_PATIENT_PROFILE } from \"./actionTypes\";\n\nimport { getNearbyLabsFail, getCorporateLabsFail, getCorporateLabsSuccess, getNearbyLabsSuccess, getRegionWiseAdvertisementFail, getRegionWiseAdvertisementSuccess, \n getAdvLiveFail, getAdvLiveSuccess , getPatientProfileSuccess, getPatientProfileFail} from \"./actions\";\n\n// Include Helper File with needed methods\nimport { getNearbyLabs, getCorporateLabs, getRegionWiseAdvertisement, getAdvLive, getPatientProfile } from \"helpers/django_api_helper\";\n\nfunction* fetchNearbyLabs(object) {\n try {\n const response = yield call(getNearbyLabs, object.payload.locationDetails);\n yield put(getNearbyLabsSuccess(response.data));\n } catch (error) {\n yield put(getNearbyLabsFail(error));\n }\n}\n\nfunction* fetchCorporateLabs(object) {\n try {\n const response = yield call(getCorporateLabs, object.payload.locationDetails);\n yield put(getCorporateLabsSuccess(response.data));\n } catch (error) {\n yield put(getCorporateLabsFail(error));\n }\n}\n\nfunction* fetchPatientProfile(object) {\n try {\n const response = yield call(getPatientProfile, object.payload);\n yield put(getPatientProfileSuccess(response));\n } catch (error) {\n yield put(getPatientProfileFail(error));\n }\n}\nfunction* fetchRegionWiseAdvertisement(object) {\n try {\n const response = yield call(getRegionWiseAdvertisement, object.payload.locationDetails);\n yield put(getRegionWiseAdvertisementSuccess(response.data));\n } catch (error) {\n yield put(getRegionWiseAdvertisementFail(error));\n }\n}\n\nfunction* fetchAdvLive(object) {\n try {\n const response = yield call(getAdvLive, object.payload.locationDetails);\n yield put(getAdvLiveSuccess(response.data));\n } catch (error) {\n yield put(getAdvLiveFail(error));\n }\n}\n\nfunction* labMarketSaga() {\n yield takeEvery(GET_NEARBY_LABS, fetchNearbyLabs);\n yield takeEvery(GET_CORPORATE_LABS, fetchCorporateLabs);\n yield takeEvery(GET_REGION_WISE_ADVERTISEMENT, fetchRegionWiseAdvertisement);\n yield takeEvery(GET_ADV_LIVE, fetchAdvLive);\n yield takeEvery(GET_PATIENT_PROFILE, fetchPatientProfile);\n}\n\nexport default labMarketSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// TestMarket Redux States\nimport { GET_NEARBY_TESTS, GET_NEARBY_TESTS_DISCOUNTEDLH, GET_TERRITORIES_LIST } from \"./actionTypes\";\nimport { getNearbyTestsFail, getNearbyTestsSuccess, getNearbyTestsDiscountedSuccess, getTerritoriesListSuccess,\n getTerritoriesListFail, getNearbyTestsDiscountedFail } from \"./actions\";\n\n// Include Helper File with needed methods\nimport { getNearbyTests, getNearbyTestsDiscounted, getTerritoriesList } from \"helpers/django_api_helper\";\n\nfunction* fetchTerritoriesList(object) {\n try {\n const response = yield call(getTerritoriesList, object.payload);\n yield put(getTerritoriesListSuccess(response));\n } catch (error) {\n yield put(getTerritoriesListFail(error));\n }\n}\n\nfunction* fetchNearbyTests(object) {\n try {\n const response = yield call(\n getNearbyTests,\n object.payload.search_type,\n object.payload.address,\n object.payload.id,\n object.payload.test_name\n );\n yield put(getNearbyTestsSuccess(response.data));\n } catch (error) {\n yield put(getNearbyTestsFail(error));\n }\n}\n\nfunction* fetchNearbyTestsDiscounted(object) {\n try {\n const response = yield call(\n getNearbyTestsDiscounted,\n object.payload.search_type,\n object.payload.address,\n object.payload.id,\n object.payload.test_name\n );\n yield put(getNearbyTestsDiscountedSuccess(response.data));\n } catch (error) {\n yield put(getNearbyTestsDiscountedFail(error));\n }\n}\n\nfunction* TestMarketSaga() {\n yield takeEvery(GET_NEARBY_TESTS_DISCOUNTEDLH, fetchNearbyTestsDiscounted);\n yield takeEvery(GET_NEARBY_TESTS, fetchNearbyTests);\n yield takeEvery(\n GET_TERRITORIES_LIST,\n fetchTerritoriesList\n );\n\n}\n\nexport default TestMarketSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// TestMarket Redux States\nimport { GET_NEARBY_PROFILES, GET_PROFILES, GET_TERRITORIES_LIST, GET_TESTSS } from \"./actionTypes\";\nimport { getNearbyProfilesFail, getNearbyProfilesSuccess, getTerritoriesListSuccess,\n getTerritoriesListFail,getProfilesSuccess, getProfilesFail,getTerritoriesList, getTestssSuccess, getTestssFail } from \"./actions\";\n\n// Include Helper File with needed methods\nimport { getNearbyProfiles, getProfiles, getTestss } from \"helpers/django_api_helper\";\n\nfunction* fetchTerritoriesList(object) {\n try {\n const response = yield call(getTerritoriesList, object.payload);\n yield put(getTerritoriesListSuccess(response));\n } catch (error) {\n yield put(getTerritoriesListFail(error));\n }\n}\n\nfunction* fetchNearbyProfiles(object) {\n try {\n const response = yield call(\n getNearbyProfiles,\n object.payload.search_type,\n object.payload.address,\n object.payload.id,\n object.payload.test_name\n );\n yield put(getNearbyProfilesSuccess(response.data));\n } catch (error) {\n yield put(getNearbyProfilesFail(error));\n }\n}\n\nfunction* fetchProfiles() {\n try {\n const response = yield call(getProfiles);\n yield put(getProfilesSuccess(response));\n } catch (error) {\n yield put(getProfilesFail(error));\n }\n}\nfunction* fetchTestss() {\n try {\n const response = yield call(getTestss);\n yield put(getTestssSuccess(response));\n } catch (error) {\n yield put(getTestssFail(error));\n }\n}\nfunction* ProfileMarketSaga() {\n yield takeEvery(GET_NEARBY_PROFILES, fetchNearbyProfiles);\n yield takeEvery(GET_PROFILES, fetchProfiles);\n yield takeEvery(GET_TESTSS, fetchTestss);\n yield takeEvery(\n GET_TERRITORIES_LIST,\n fetchTerritoriesList\n );\n}\n\nexport default ProfileMarketSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// TestMarket Redux States\nimport { GET_NEARBY_PACKAGES, GET_PACKAGES, GET_TERRITORIES_LIST } from \"./actionTypes\";\nimport { getNearbyPackagesFail, getNearbyPackagesSuccess, getPackagesFail, getPackagesSuccess,getTerritoriesListSuccess,\n getTerritoriesListFail, } from \"./actions\";\n\n// Include Helper File with needed methods\nimport { getNearbyPackages , getPackages, getTerritoriesList } from \"helpers/django_api_helper\";\n\nfunction* fetchTerritoriesList(object) {\n try {\n const response = yield call(getTerritoriesList, object.payload);\n yield put(getTerritoriesListSuccess(response));\n } catch (error) {\n yield put(getTerritoriesListFail(error));\n }\n}\n\nfunction* fetchNearbyPackages(object) {\n try {\n const response = yield call(\n getNearbyPackages,\n object.payload.search_type,\n object.payload.address,\n object.payload.id,\n object.payload.test_name\n );\n yield put(getNearbyPackagesSuccess(response.data));\n } catch (error) {\n yield put(getNearbyPackagesFail(error));\n }\n}\nfunction* fetchPackages() {\n try {\n const response = yield call(getPackages);\n yield put(getPackagesSuccess(response));\n } catch (error) {\n yield put(getPackagesFail(error));\n }\n}\n\nfunction* PackageMarketSaga() {\n yield takeEvery(GET_NEARBY_PACKAGES, fetchNearbyPackages);\n yield takeEvery(GET_PACKAGES, fetchPackages);\n yield takeEvery(\n GET_TERRITORIES_LIST,\n fetchTerritoriesList\n );\n}\n\nexport default PackageMarketSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// TestMarket Redux States\nimport { GET_NEARBY_RADIOLOGY, GET_RADIOLOGY, GET_TERRITORIES_LIST } from \"./actionTypes\";\nimport { getNearbyRadiologyFail, getNearbyRadiologySuccess, getRadiologyFail, getRadiologySuccess, getTerritoriesListSuccess,\n getTerritoriesListFail } from \"./actions\";\n\n// Include Helper File with needed methods\nimport { getNearbyRadiology , getRadiology, getTerritoriesList } from \"helpers/django_api_helper\";\n\nfunction* fetchTerritoriesList(object) {\n try {\n const response = yield call(getTerritoriesList, object.payload);\n yield put(getTerritoriesListSuccess(response));\n } catch (error) {\n yield put(getTerritoriesListFail(error));\n }\n}\n\nfunction* fetchNearbyRadiology(object) {\n try {\n const response = yield call(\n getNearbyRadiology,\n object.payload.search_type,\n object.payload.address,\n object.payload.id,\n object.payload.test_name\n );\n yield put(getNearbyRadiologySuccess(response.data));\n } catch (error) {\n yield put(getNearbyRadiologyFail(error));\n }\n}\nfunction* fetchRadiology() {\n try {\n const response = yield call(getRadiology);\n yield put(getRadiologySuccess(response));\n } catch (error) {\n yield put(getRadiologyFail(error));\n }\n}\n\nfunction* RadiologyMarketSaga() {\n yield takeEvery(GET_NEARBY_RADIOLOGY, fetchNearbyRadiology);\n yield takeEvery(GET_RADIOLOGY, fetchRadiology);\n yield takeEvery(\n GET_TERRITORIES_LIST,\n fetchTerritoriesList\n );\n}\n\nexport default RadiologyMarketSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_TESTS_LIST, GET_CORPORATE_TESTS_LIST } from \"./actionTypes\";\n\n\nimport {\n getTestsListSuccess,\n getTestsListFail,\n getCorporateTestsListSuccess,\n getCorporateTestsListFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getTestsList, getCorporateTestsList } from \"../../helpers/django_api_helper\";\n\nfunction* fetchTestsList(object) {\n try {\n const response = yield call(getTestsList, object.payload);\n yield put(getTestsListSuccess(response));\n } catch (error) {\n yield put(getTestsListFail(error));\n }\n}\nfunction* fetchCorporateTestsList(object) {\n try {\n const response = yield call(getCorporateTestsList, object.payload);\n yield put(getCorporateTestsListSuccess(response));\n } catch (error) {\n yield put(getCorporateTestsListFail(error));\n }\n}\nfunction* TestsSaga() {\n yield takeEvery(\n GET_TESTS_LIST,\n fetchTestsList\n );\n yield takeEvery(\n GET_CORPORATE_TESTS_LIST,\n fetchCorporateTestsList\n );\n}\n\nexport default TestsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_UNITS,\n GET_TESTS,\n GET_OFFERED_TESTS,\n GET_CORPORATE_TESTS,\n GET_LAB_PROFILE,\n GET_OFFEREDTEST_REFERRELFEE,\n GET_COFFEREDTEST_REFERRELFEE,\n GET_COFFEREDPROFILE_REFERRELFEE,\n GET_COFFEREDPACKAGE_REFERRELFEE,\n GET_COFFEREDRADIOLOGY_REFERRELFEE,\n GET_OFFEREDPROFILE_REFERRELFEE,\n GET_OFFEREDPACKAGE_REFERRELFEE,\n GET_OFFEREDRADIOLOGY_REFERRELFEE,\n ADD_NEW_OFFERED_TEST,\n ADD_NEW_CORPORATE_TEST,\n ADD_NEW_CORPORATE,\n ADD_NEW_OFFERED_MAINTEST,\n DELETE_OFFERED_TEST,\n UPDATE_OFFERED_TEST,\n UPDATE_CORPORATE_TEST,\n UPDATE_CORPORATE_STATUS,\n UPDATE_ACORPORATE_STATUS,\n\n} from \"./actionTypes\";\n\nimport {\n getLabProfileSuccess,\n getLabProfileFail,\n getUnitsSuccess,\n getUnitsFail,\n getTestsSuccess,\n getTestsFail,\n getOfferedTestsSuccess,\n getOfferedTestsFail,\n getCorporateTestsSuccess,\n getCorporateTestsFail,\n getCorporateProfilesSuccess,\n getCorporateProfilesFail,\n getCorporatePackagesSuccess,\n getCorporatePackagesFail,\n getCorporateRadiogysSuccess,\n getCorporateRadiogysFail,\n getOfferedTestsReferrelSuccess,\n getOfferedTestsReferrelFail,\n getCOfferedProfilesReferrelSuccess,\n getCOfferedProfilesReferrelFail,\n getCOfferedPackagesReferrelSuccess,\n getCOfferedPackagesReferrelFail,\n getCOfferedRadiologysReferrelSuccess,\n getCOfferedRadiologysReferrelFail,\n getCOfferedTestsReferrelSuccess,\n getCOfferedTestsReferrelFail,\n getOfferedProfilesReferrelSuccess,\n getOfferedProfilesReferrelFail,\n getOfferedPackagesReferrelSuccess,\n getOfferedPackagesReferrelFail,\n getOfferedRadiologysReferrelSuccess,\n getOfferedRadiologysReferrelFail,\n addOfferedTestFail,\n addOfferedTestSuccess,\n addCorporateTestFail,\n addCorporateTestSuccess,\n addCorporateFail,\n addCorporateSuccess,\n addOfferedMainTestFail,\n addOfferedMainTestSuccess,\n updateOfferedTestSuccess,\n updateOfferedTestFail,\n updateCorporateTestSuccess,\n updateCorporateTestFail,\n updateCorporateStatusSuccess,\n updateCorporateStatusFail,\n updateACorporateStatusSuccess,\n updateACorporateStatusFail,\n deleteOfferedTestSuccess,\n deleteOfferedTestFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getUnits,\n getTests,\n getOfferedTests,\n getCorporateTests,\n getOfferedTestsReferrel,\n getCOfferedTestsReferrel,\n getCOfferedProfilesReferrel,\n getCOfferedPackagesReferrel,\n getCOfferedRadiologysReferrel,\n getOfferedProfilesReferrel,\n getOfferedPackagesReferrel,\n getOfferedRadiologysReferrel,\n getLabProfile,\n addNewOfferedTest,\n addNewCorporateTest,\n addNewCorporate,\n addNewOfferedMainTest,\n updateOfferedTest,\n updateCorporateTest,\n updateCorporateStatus,\n updateACorporateStatus,\n deleteOfferedTest,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchLabProfile(object) {\n try {\n const response = yield call(getLabProfile, object.payload);\n yield put(getLabProfileSuccess(response));\n\n } catch (error) {\n yield put(getLabProfileFail(error));\n }\n}\n\nfunction* fetchTests() {\n try {\n const response = yield call(getTests);\n yield put(getTestsSuccess(response));\n } catch (error) {\n yield put(getTestsFail(error));\n }\n}\n\nfunction* fetchUnits() {\n try {\n const response = yield call(getUnits);\n yield put(getUnitsSuccess(response));\n } catch (error) {\n yield put(getUnitsFail(error));\n }\n}\n\nfunction* fetchOfferedTests(object) {\n try {\n const response = yield call(getOfferedTests, object.payload);\n yield put(getOfferedTestsSuccess(response));\n } catch (error) {\n yield put(getOfferedTestsFail(error));\n }\n}\nfunction* fetchCorporateTests(object) {\n try {\n const response = yield call(getCorporateTests, object.payload);\n yield put(getCorporateTestsSuccess(response));\n } catch (error) {\n yield put(getCorporateTestsFail(error));\n }\n}\nfunction* fetchOfferedTestsReferrel(object) {\n try {\n const response = yield call(getOfferedTestsReferrel, object.payload);\n yield put(getOfferedTestsReferrelSuccess(response));\n } catch (error) {\n yield put(getOfferedTestsReferrelFail(error));\n }\n}\nfunction* fetchCOfferedTestsReferrel(object) {\n try {\n const response = yield call(getCOfferedTestsReferrel, object.payload);\n yield put(getCOfferedTestsReferrelSuccess(response));\n } catch (error) {\n yield put(getCOfferedTestsReferrelFail(error));\n }\n}\nfunction* fetchCOfferedProfilesReferrel(object) {\n try {\n const response = yield call(getCOfferedProfilesReferrel, object.payload);\n yield put(getCOfferedProfilesReferrelSuccess(response));\n } catch (error) {\n yield put(getCOfferedProfilesReferrelFail(error));\n }\n}\nfunction* fetchCOfferedPackagesReferrel(object) {\n try {\n const response = yield call(getCOfferedPackagesReferrel, object.payload);\n yield put(getCOfferedPackagesReferrelSuccess(response));\n } catch (error) {\n yield put(getCOfferedPackagesReferrelFail(error));\n }\n}\nfunction* fetchCOfferedRadiologysReferrel(object) {\n try {\n const response = yield call(getCOfferedRadiologysReferrel, object.payload);\n yield put(getCOfferedRadiologysReferrelSuccess(response));\n } catch (error) {\n yield put(getCOfferedRadiologysReferrelFail(error));\n }\n}\nfunction* fetchOfferedProfilesReferrel(object) {\n try {\n const response = yield call(getOfferedProfilesReferrel, object.payload);\n yield put(getOfferedProfilesReferrelSuccess(response));\n } catch (error) {\n yield put(getOfferedProfilesReferrelFail(error));\n }\n}\nfunction* fetchOfferedPackagesReferrel(object) {\n try {\n const response = yield call(getOfferedPackagesReferrel, object.payload);\n yield put(getOfferedPackagesReferrelSuccess(response));\n } catch (error) {\n yield put(getOfferedPackagesReferrelFail(error));\n }\n}\nfunction* fetchOfferedRadiologysReferrel(object) {\n try {\n const response = yield call(getOfferedRadiologysReferrel, object.payload);\n yield put(getOfferedRadiologysReferrelSuccess(response));\n } catch (error) {\n yield put(getOfferedRadiologysReferrelFail(error));\n }\n}\n\nfunction* onAddNewOfferedTest(object) {\n try {\n const response = yield call(\n addNewOfferedTest,\n object.payload.offeredTest,\n object.payload.id\n );\n yield put(addOfferedTestSuccess(response));\n } catch (error) {\n yield put(addOfferedTestFail(error));\n }\n}\nfunction* onAddNewCorporateTest(object) {\n try {\n const response = yield call(\n addNewCorporateTest,\n object.payload.offeredTest,\n object.payload.id\n );\n yield put(addCorporateTestSuccess(response));\n } catch (error) {\n yield put(addCorporateTestFail(error));\n }\n}\nfunction* onAddNewCorporate(object) {\n try {\n const response = yield call(\n addNewCorporate,\n object.payload.offeredTest,\n object.payload.id\n );\n yield put(addCorporateSuccess(response));\n } catch (error) {\n yield put(addCorporateFail(error));\n }\n}\nfunction* onAddNewOfferedMainTest(object) {\n try {\n const response = yield call(\n addNewOfferedMainTest,\n object.payload.offeredTest,\n object.payload.id\n );\n yield put(addOfferedMainTestSuccess(response));\n } catch (error) {\n yield put(addOfferedMainTestFail(error));\n }\n}\n\nfunction* onUpdateOfferedTest({ payload: offeredTest }) {\n try {\n const response = yield call(updateOfferedTest, offeredTest);\n yield put(updateOfferedTestSuccess(response));\n } catch (error) {\n yield put(updateOfferedTestFail(error));\n }\n}\nfunction* onUpdateCorporateTest({ payload: offeredTest }) {\n try {\n const response = yield call(updateCorporateTest, offeredTest);\n yield put(updateCorporateTestSuccess(response));\n } catch (error) {\n yield put(updateCorporateTestFail(error));\n }\n}\nfunction* onUpdateCorporateStatus({ payload: offeredTest }) {\n try {\n const response = yield call(updateCorporateStatus, offeredTest);\n yield put(updateCorporateStatusSuccess(response));\n } catch (error) {\n yield put(updateCorporateStatusFail(error));\n }\n}\nfunction* onUpdateACorporateStatus({ payload: offeredTest }) {\n try {\n const response = yield call(updateACorporateStatus, offeredTest);\n yield put(updateACorporateStatusSuccess(response));\n } catch (error) {\n yield put(updateACorporateStatusFail(error));\n }\n}\n\nfunction* onDeleteOfferedTest({ payload: offeredTest }) {\n try {\n const response = yield call(deleteOfferedTest, offeredTest);\n yield put(deleteOfferedTestSuccess(response));\n } catch (error) {\n yield put(deleteOfferedTestFail(error));\n }\n}\n\nfunction* offeredTestsSaga() {\n yield takeEvery(GET_UNITS, fetchUnits);\n yield takeEvery(GET_TESTS, fetchTests);\n yield takeEvery(GET_OFFERED_TESTS, fetchOfferedTests);\n yield takeEvery(GET_CORPORATE_TESTS, fetchCorporateTests);\n yield takeEvery(GET_LAB_PROFILE, fetchLabProfile);\n yield takeEvery(GET_OFFEREDTEST_REFERRELFEE, fetchOfferedTestsReferrel);\n yield takeEvery(GET_COFFEREDTEST_REFERRELFEE, fetchCOfferedTestsReferrel);\n yield takeEvery(GET_COFFEREDPROFILE_REFERRELFEE, fetchCOfferedProfilesReferrel);\n yield takeEvery(GET_COFFEREDPACKAGE_REFERRELFEE, fetchCOfferedPackagesReferrel);\n yield takeEvery(GET_COFFEREDRADIOLOGY_REFERRELFEE, fetchCOfferedRadiologysReferrel);\n yield takeEvery(GET_OFFEREDPROFILE_REFERRELFEE, fetchOfferedProfilesReferrel);\n yield takeEvery(GET_OFFEREDPACKAGE_REFERRELFEE, fetchOfferedPackagesReferrel);\n yield takeEvery(GET_OFFEREDRADIOLOGY_REFERRELFEE, fetchOfferedRadiologysReferrel);\n yield takeEvery(ADD_NEW_OFFERED_TEST, onAddNewOfferedTest);\n yield takeEvery(ADD_NEW_CORPORATE_TEST, onAddNewCorporateTest);\n yield takeEvery(ADD_NEW_CORPORATE, onAddNewCorporate);\n yield takeEvery(ADD_NEW_OFFERED_MAINTEST, onAddNewOfferedMainTest);\n yield takeEvery(UPDATE_OFFERED_TEST, onUpdateOfferedTest);\n yield takeEvery(UPDATE_CORPORATE_TEST, onUpdateCorporateTest);\n yield takeEvery(UPDATE_CORPORATE_STATUS, onUpdateCorporateStatus);\n yield takeEvery(UPDATE_ACORPORATE_STATUS, onUpdateACorporateStatus);\n yield takeEvery(DELETE_OFFERED_TEST, onDeleteOfferedTest);\n}\n\nexport default offeredTestsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_PATHOLOGISTS,\n ADD_NEW_PATHOLOGIST,\n DELETE_PATHOLOGIST,\n UPDATE_PATHOLOGIST,\n} from \"./actionTypes\";\n\nimport {\n getPathologistsSuccess,\n getPathologistsFail,\n addPathologistFail,\n addPathologistSuccess,\n updatePathologistSuccess,\n updatePathologistFail,\n deletePathologistSuccess,\n deletePathologistFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getPathologists,\n addNewPathologist,\n updatePathologist,\n deletePathologist,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchPathologists(object) {\n try {\n const response = yield call(getPathologists, object.payload);\n yield put(getPathologistsSuccess(response));\n } catch (error) {\n yield put(getPathologistsFail(error));\n }\n}\n\nfunction* onAddNewPathologist(object) {\n try {\n const response = yield call(\n addNewPathologist,\n object.payload.pathologist,\n object.payload.id\n );\n yield put(addPathologistSuccess(response));\n } catch (error) {\n yield put(addPathologistFail(error));\n }\n}\n\nfunction* onUpdatePathologist({ payload: pathologist }) {\n try {\n const response = yield call(updatePathologist, pathologist);\n yield put(updatePathologistSuccess(response));\n } catch (error) {\n yield put(updatePathologistFail(error));\n }\n}\n\nfunction* onDeletePathologist({ payload: pathologist }) {\n try {\n const response = yield call(deletePathologist, pathologist);\n yield put(deletePathologistSuccess(response));\n } catch (error) {\n yield put(deletePathologistFail(error));\n }\n}\n\nfunction* pathologistsSaga() {\n yield takeEvery(GET_PATHOLOGISTS, fetchPathologists);\n yield takeEvery(ADD_NEW_PATHOLOGIST, onAddNewPathologist);\n yield takeEvery(UPDATE_PATHOLOGIST, onUpdatePathologist);\n yield takeEvery(DELETE_PATHOLOGIST, onDeletePathologist);\n}\n\nexport default pathologistsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_ACTIVITY_LOG,\n GET_NOTIFICATION,\n} from \"./actionTypes\";\n\nimport {\n getActivityLogSuccess,\n getActivityLogFail,\n getNotificationFail,\n getNotificationSuccess,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getActivityLog,\n getNotification,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchActivityLog(object) {\n try {\n const response = yield call(getActivityLog, object.payload);\n yield put(getActivityLogSuccess(response));\n } catch (error) {\n yield put(getActivityLogFail(error));\n }\n}\nfunction* fetchNotification(object) {\n try {\n const response = yield call(getNotification,\n object.payload.id,\n object.payload.previousApiCallTime,\n object.payload,\n );\n console.log(\"object saga\",object)\n yield put(getNotificationSuccess(response.data));\n } catch (error) {\n yield put(getNotificationFail(error));\n }\n}\n\nfunction* activitylogSaga() {\n yield takeEvery(GET_ACTIVITY_LOG, fetchActivityLog);\n yield takeEvery(GET_NOTIFICATION, fetchNotification);\n}\n\nexport default activitylogSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_ACTIVITY_LOG_FINANCE,\n GET_CORPORATE_COMMIT,\n} from \"./actionTypes\";\n\nimport {\n getActivityLogFinanceSuccess,\n getActivityLogFinanceFail,\n getCorporateCommitSuccess,\n getCorporateCommitFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getActivityLogFinance,\n getCorporateCommit,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchActivityLogFinance(object) {\n try {\n const response = yield call(getActivityLogFinance, object.payload);\n yield put(getActivityLogFinanceSuccess(response));\n } catch (error) {\n yield put(getActivityLogFinanceFail(error));\n }\n}\n\nfunction* fetchCorporateCommit(object) {\n try {\n const response = yield call(getCorporateCommit, object.payload);\n yield put(getCorporateCommitSuccess(response));\n } catch (error) {\n yield put(getCorporateCommitFail(error));\n }\n}\n\nfunction* activitylogfinanceSaga() {\n yield takeEvery(GET_ACTIVITY_LOG_FINANCE, fetchActivityLogFinance);\n yield takeEvery(GET_CORPORATE_COMMIT, fetchCorporateCommit);\n}\n\nexport default activitylogfinanceSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_ACTIVITY_LOG_MARKETER,\n GET_LAB_ACTIVITY_LOG_MARKETER,\n} from \"./actionTypes\";\n\nimport {\n getActivityLogMarketerSuccess,\n getActivityLogMarketerFail,\n getLabActivityLogMarketerSuccess,\n getLabActivityLogMarketerFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getActivityLogMarketer,\n getLabActivityLogMarketer,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchActivityLogMarketer(object) {\n try {\n const response = yield call(getActivityLogMarketer, object.payload);\n yield put(getActivityLogMarketerSuccess(response));\n } catch (error) {\n yield put(getActivityLogMarketerFail(error));\n }\n}\nfunction* fetchLabActivityLogMarketer(object) {\n try {\n const response = yield call(getLabActivityLogMarketer, object.payload);\n yield put(getLabActivityLogMarketerSuccess(response));\n } catch (error) {\n yield put(getLabActivityLogMarketerFail(error));\n }\n}\n\nfunction* activitylogmarketerSaga() {\n yield takeEvery(GET_ACTIVITY_LOG_MARKETER, fetchActivityLogMarketer);\n yield takeEvery(GET_LAB_ACTIVITY_LOG_MARKETER, fetchLabActivityLogMarketer);\n}\n\nexport default activitylogmarketerSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_ACTIVITY_LOG,\n GET_SAMPLE_NOTIFICATION,\n} from \"./actionTypes\";\n\nimport {\n getActivityLogSuccess,\n getActivityLogFail,\n getSampleNotificationFail,\n getSampleNotificationSuccess,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getActivityLog,\n getSampleNotification,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchActivityLog(object) {\n try {\n const response = yield call(getActivityLog, object.payload);\n yield put(getActivityLogSuccess(response));\n } catch (error) {\n yield put(getActivityLogFail(error));\n }\n}\nfunction* fetchSampleNotification(object) {\n try {\n const response = yield call(getSampleNotification,\n object.payload.id,\n object.payload.previousApiCallTime,\n object.payload,\n );\n console.log(\"object saga\",object)\n yield put(getSampleNotificationSuccess(response.data));\n } catch (error) {\n yield put(getSampleNotificationFail(error));\n }\n}\n\nfunction* sampleNotificationSaga() {\n yield takeEvery(GET_ACTIVITY_LOG, fetchActivityLog);\n yield takeEvery(GET_SAMPLE_NOTIFICATION, fetchSampleNotification);\n}\n\nexport default sampleNotificationSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_ACTIVITY_LOG,\n GET_MARKETER_NOTIFICATION,\n} from \"./actionTypes\";\n\nimport {\n getActivityLogSuccess,\n getActivityLogFail,\n getMarketerNotificationFail,\n getMarketerNotificationSuccess,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getActivityLog,\n getMarketerNotification,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchActivityLog(object) {\n try {\n const response = yield call(getActivityLog, object.payload);\n yield put(getActivityLogSuccess(response));\n } catch (error) {\n yield put(getActivityLogFail(error));\n }\n}\nfunction* fetchMarketerNotification(object) {\n try {\n const response = yield call(getMarketerNotification,\n object.payload.id,\n object.payload.previousApiCallTime,\n object.payload,\n );\n console.log(\"object saga\",object)\n yield put(getMarketerNotificationSuccess(response.data));\n } catch (error) {\n yield put(getMarketerNotificationFail(error));\n }\n}\n\nfunction* marketerNotificationSaga() {\n yield takeEvery(GET_ACTIVITY_LOG, fetchActivityLog);\n yield takeEvery(GET_MARKETER_NOTIFICATION, fetchMarketerNotification);\n}\n\nexport default marketerNotificationSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_ACTIVITY_LOG,\n GET_CSR_ADMIN_NOTIFICATION,\n} from \"./actionTypes\";\n\nimport {\n getActivityLogSuccess,\n getActivityLogFail,\n getCsrAdminNotificationFail,\n getCsrAdminNotificationSuccess,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getActivityLog,\n getCsrAdminNotification,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchActivityLog(object) {\n try {\n const response = yield call(getActivityLog, object.payload);\n yield put(getActivityLogSuccess(response));\n } catch (error) {\n yield put(getActivityLogFail(error));\n }\n}\nfunction* fetchCsrAdminNotification(object) {\n try {\n const response = yield call(getCsrAdminNotification,\n object.payload.id,\n object.payload.previousApiCallTime,\n object.payload,\n );\n console.log(\"object saga\",object)\n yield put(getCsrAdminNotificationSuccess(response.data));\n } catch (error) {\n yield put(getCsrAdminNotificationFail(error));\n }\n}\n\nfunction* csrAdminNotificationSaga() {\n yield takeEvery(GET_ACTIVITY_LOG, fetchActivityLog);\n yield takeEvery(GET_CSR_ADMIN_NOTIFICATION, fetchCsrAdminNotification);\n}\n\nexport default csrAdminNotificationSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_ACTIVITY_LOG,\n GET_REG_ADMIN_NOTIFICATION,\n} from \"./actionTypes\";\n\nimport {\n getActivityLogSuccess,\n getActivityLogFail,\n getRegAdminNotificationFail,\n getRegAdminNotificationSuccess,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getActivityLog,\n getRegAdminNotification,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchActivityLog(object) {\n try {\n const response = yield call(getActivityLog, object.payload);\n yield put(getActivityLogSuccess(response));\n } catch (error) {\n yield put(getActivityLogFail(error));\n }\n}\nfunction* fetchRegAdminNotification(object) {\n try {\n const response = yield call(getRegAdminNotification,\n object.payload.id,\n object.payload.previousApiCallTime,\n object.payload,\n );\n console.log(\"object saga\",object)\n yield put(getRegAdminNotificationSuccess(response.data));\n } catch (error) {\n yield put(getRegAdminNotificationFail(error));\n }\n}\n\nfunction* regAdminNotificationSaga() {\n yield takeEvery(GET_ACTIVITY_LOG, fetchActivityLog);\n yield takeEvery(GET_REG_ADMIN_NOTIFICATION, fetchRegAdminNotification);\n}\n\nexport default regAdminNotificationSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_ACTIVITY_LOG,\n GET_CSR_OFFICER_NOTIFICATION,\n} from \"./actionTypes\";\n\nimport {\n getActivityLogSuccess,\n getActivityLogFail,\n getCsrOfficerNotificationFail,\n getCsrOfficerNotificationSuccess,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getActivityLog,\n getCsrOfficerNotification,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchActivityLog(object) {\n try {\n const response = yield call(getActivityLog, object.payload);\n yield put(getActivityLogSuccess(response));\n } catch (error) {\n yield put(getActivityLogFail(error));\n }\n}\nfunction* fetchCsrOfficerNotification(object) {\n try {\n const response = yield call(getCsrOfficerNotification,\n object.payload.id,\n object.payload.previousApiCallTime,\n object.payload,\n );\n console.log(\"object saga\",object)\n yield put(getCsrOfficerNotificationSuccess(response.data));\n } catch (error) {\n yield put(getCsrOfficerNotificationFail(error));\n }\n}\n\nfunction* csrOfficerNotificationSaga() {\n yield takeEvery(GET_ACTIVITY_LOG, fetchActivityLog);\n yield takeEvery(GET_CSR_OFFICER_NOTIFICATION, fetchCsrOfficerNotification);\n}\n\nexport default csrOfficerNotificationSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_BANKACCOUNTS,\n DELETE_BANKACCOUNT,\n UPDATE_BANKACCOUNT,\n} from \"./actionTypes\";\n\nimport {\n getBankaccountsSuccess,\n getBankaccountsFail,\n updateBankaccountSuccess,\n updateBankaccountFail,\n // deleteBankaccountSuccess,\n // deleteBankaccountFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getBankaccounts,\n updateBankaccount,\n // deleteBankaccount,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchBankaccounts(object) {\n try {\n const response = yield call(getBankaccounts, object.payload);\n yield put(getBankaccountsSuccess(response));\n } catch (error) {\n yield put(getBankaccountsFail(error));\n }\n}\n\nfunction* onUpdateBankaccount({ payload: pathologist }) {\n try {\n const response = yield call(updateBankaccount, pathologist);\n yield put(updateBankaccountSuccess(response));\n } catch (error) {\n yield put(updateBankaccountFail(error));\n }\n}\n\n// function* onDeleteBankaccount({ payload: pathologist }) {\n// try {\n// const response = yield call(deleteBankaccount, pathologist);\n// yield put(deleteBankaccountSuccess(response));\n// } catch (error) {\n// yield put(deleteBankaccountFail(error));\n// }\n// }\n\nfunction* pathologistsSaga() {\n yield takeEvery(GET_BANKACCOUNTS, fetchBankaccounts);\n yield takeEvery(UPDATE_BANKACCOUNT, onUpdateBankaccount);\n // yield takeEvery(DELETE_BANKACCOUNT, onDeleteBankaccount);\n}\n\nexport default pathologistsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_CARTS, DELETE_CART, EMPTY_CART } from \"./actionTypes\";\n\nimport {\n getCartsSuccess,\n getCartsFail,\n deleteCartSuccess,\n deleteCartFail,\n emptyCartSuccess,\n emptyCartFail,\n addToCartSuccess,\n addToCartFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getCarts,\n deleteCart,\n emptyCart,\n addToCart,\n} from \"../../helpers/django_api_helper\";\nimport { ADD_TO_CART } from \"helpers/url_helper\";\n\nfunction* fetchCarts(object) {\n try {\n const response = yield call(getCarts, object.payload);\n yield put(getCartsSuccess(response));\n } catch (error) {\n yield put(getCartsFail(error));\n }\n}\n\nfunction* onEmptyCart({ payload: cart }) {\n try {\n const response = yield call(emptyCart, cart);\n yield put(emptyCartSuccess, response);\n } catch (error) {\n yield put(emptyCartFail(error));\n }\n}\n\nfunction* onDeleteCart({ payload: cart }) {\n try {\n const response = yield call(deleteCart, cart);\n yield put(deleteCartSuccess(response));\n } catch (error) {\n yield put(deleteCartFail(error));\n }\n}\n\nfunction* onAddToCart(object) {\n console.log(\"sagaaa\", object);\n try {\n const response = yield call(\n addToCart,\n object.payload.cart,\n object.payload.id,\n // object.payload.guest_id\n );\n\n // Throw error if status is not 200\n if (response.data.status == 200) {\n yield put(addToCartSuccess(response.data.message));\n yield put(addToCartFail(\"\"));\n } else {\n yield put(addToCartFail(response.data.message));\n yield put(addToCartSuccess(\"\"));\n }\n } catch (error) {\n yield put(addToCartFail(error));\n }\n}\n\nfunction* cartsSaga() {\n yield takeEvery(GET_CARTS, fetchCarts);\n yield takeEvery(EMPTY_CART, onEmptyCart);\n yield takeEvery(DELETE_CART, onDeleteCart);\n yield takeEvery(ADD_TO_CART, onAddToCart);\n}\n\nexport default cartsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_QUOTES, DELETE_CART, EMPTY_CART } from \"./actionTypes\";\n\nimport {\n getQuotesSuccess,\n getQuotesFail,\n deleteCartSuccess,\n deleteCartFail,\n emptyCartSuccess,\n emptyCartFail,\n // addToCartSuccess,\n // addToCartFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getQuotes,\n deleteCart,\n emptyCart,\n // addToCart,\n} from \"../../helpers/django_api_helper\";\nimport { ADD_TO_CART } from \"helpers/url_helper\";\nfunction* fetchQuotes(object) {\n try {\n const response = yield call(\n getQuotes,\n object.payload.city_id,\n object.payload.test_id,\n object.payload.search_type,\n object.payload.address,\n object.payload.longitude,\n object.payload.latitude,\n object.payload.km,\n object.payload.locationAccessAllowed,\n ); \n yield put(getQuotesSuccess(response));\n } catch (error) {\n yield put(getQuotesFail(error));\n }\n}\nfunction* onEmptyCart({ payload: cart }) {\n try {\n const response = yield call(emptyCart, cart);\n yield put(emptyCartSuccess, response);\n } catch (error) {\n yield put(emptyCartFail(error));\n }\n}\n\nfunction* onDeleteCart({ payload: cart }) {\n try {\n const response = yield call(deleteCart, cart);\n yield put(deleteCartSuccess(response));\n } catch (error) {\n yield put(deleteCartFail(error));\n }\n}\n\nfunction* onAddToCart(object) {\n console.log(\"sagaaa\", object);\n try {\n const response = yield call(\n addToCart,\n object.payload.cart,\n object.payload.id,\n // object.payload.guest_id\n );\n\n // Throw error if status is not 200\n if (response.data.status == 200) {\n yield put(addToCartSuccess(response.data.message));\n yield put(addToCartFail(\"\"));\n } else {\n yield put(addToCartFail(response.data.message));\n yield put(addToCartSuccess(\"\"));\n }\n } catch (error) {\n yield put(addToCartFail(error));\n }\n}\n\nfunction* quotesSaga() {\n yield takeEvery(GET_QUOTES, fetchQuotes);\n yield takeEvery(EMPTY_CART, onEmptyCart);\n yield takeEvery(DELETE_CART, onDeleteCart);\n // yield takeEvery(ADD_TO_CART, onAddToCart);\n}\n\nexport default quotesSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_LABS_LIST_PENDING_FEE, GET_LABS_LIST_APPROVED_FEE } from \"./actionTypes\";\n\nimport {\n getLabsListApprovedFeeSuccess,\n getLabsListApprovedFeeFail,\n getLabsListPendingFeeSuccess,\n getLabsListPendingFeeFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getLabsListPendingFee, getLabsListApprovedFee } from \"../../helpers/django_api_helper\";\n\nfunction* fetchLabsListPendingFee(action) {\n try {\n const { id,page, limit, filters }= action.payload;\n const response = yield call(getLabsListPendingFee,id, page, limit, filters);\n yield put(getLabsListPendingFeeSuccess(response));\n } catch (error) {\n yield put(getLabsListPendingFeeFail(error));\n }\n}\n\nfunction* fetchLabsListApprovedFee(action) {\n try {\n const { id, page, limit, filters } = action.payload;\n const response = yield call(getLabsListApprovedFee, id, page, limit, filters);\n yield put(getLabsListApprovedFeeSuccess(response));\n } catch (error) {\n yield put(getLabsListApprovedFeeFail(error));\n }\n}\n\nfunction* LabsListPendingFeeSaga() {\n yield takeEvery(\n GET_LABS_LIST_PENDING_FEE,\n fetchLabsListPendingFee\n );\n yield takeEvery(\n GET_LABS_LIST_APPROVED_FEE,\n fetchLabsListApprovedFee\n );\n}\n\nexport default LabsListPendingFeeSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_SHARED_PERCENTAGE_PENDING_FEE,\n GET_SHARED_PERCENTAGE_APPROVED_FEE,\n UPDATE_SHARED_PERCENTAGE_PENDING_FEE,\n UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE,\n} from \"./actionTypes\";\n\nimport {\n getSharedPercentagePendingFeeTestsSuccess,\n getSharedPercentagePendingFeeTestsFail,\n getSharedPercentageApprovedFeeTestsSuccess,\n getSharedPercentageApprovedFeeTestsFail,\n updateSharedPercentagePendingFeeTestSuccess,\n updateSharedPercentagePendingFeeTestFail,\n updateSharedPercentageAllPendingFeeTestSuccess,\n updateSharedPercentageAllPendingFeeTestFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getSharedPercentagePendingFeeTests,\n getSharedPercentageApprovedFeeTests,\n updateSharedPercentagePendingFeeTest,\n updateSharedPercentageAllPendingFeeTest,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchSharedPercentagePendingFeeTests(object) {\n try {\n const response = yield call(getSharedPercentagePendingFeeTests, object.payload);\n console.log(\"sharedPercentagePendingFeeTest saga: \", response);\n yield put(getSharedPercentagePendingFeeTestsSuccess(response));\n } catch (error) {\n yield put(getSharedPercentagePendingFeeTestsFail(error));\n }\n}\n\nfunction* fetchSharedPercentageApprovedFeeTests(object) {\n try {\n const response = yield call(getSharedPercentageApprovedFeeTests, object.payload);\n console.log(\"sharedPercentageApprovedFeeTest saga: \", response);\n yield put(getSharedPercentageApprovedFeeTestsSuccess(response));\n } catch (error) {\n yield put(getSharedPercentageApprovedFeeTestsFail(error));\n }\n}\n\nfunction* onUpdateSharedPercentagePendingFeeTest({ payload: sharedPercentagePendingFeeTest }) {\n try {\n const response = yield call(updateSharedPercentagePendingFeeTest, sharedPercentagePendingFeeTest);\n yield put(updateSharedPercentagePendingFeeTestSuccess(response));\n } catch (error) {\n yield put(updateSharedPercentagePendingFeeTestFail(error));\n }\n}\n\nfunction* onUpdateSharedPercentageAllPendingFeeTest({ payload: sharedPercentageAllPendingFeeTest }) {\n try {\n const response = yield call(updateSharedPercentageAllPendingFeeTest, sharedPercentageAllPendingFeeTest);\n yield put(updateSharedPercentageAllPendingFeeTestSuccess(response));\n } catch (error) {\n yield put(updateSharedPercentageAllPendingFeeTestFail(error));\n }\n}\n\nfunction* sharedPercentagePendingFeeTestsSaga() {\n yield takeEvery(GET_SHARED_PERCENTAGE_PENDING_FEE, fetchSharedPercentagePendingFeeTests);\n yield takeEvery(GET_SHARED_PERCENTAGE_APPROVED_FEE, fetchSharedPercentageApprovedFeeTests);\n yield takeEvery(UPDATE_SHARED_PERCENTAGE_PENDING_FEE, onUpdateSharedPercentagePendingFeeTest);\n yield takeEvery(UPDATE_SHARED_PERCENTAGE_ALL_PENDING_FEE, onUpdateSharedPercentageAllPendingFeeTest);\n}\n\nexport default sharedPercentagePendingFeeTestsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_SAMPLE_COLLECTORS,\n ADD_NEW_SAMPLE_COLLECTOR,\n DELETE_SAMPLE_COLLECTOR,\n UPDATE_SAMPLE_COLLECTOR,\n} from \"./actionTypes\";\n\nimport {\n getSampleCollectorsSuccess,\n getSampleCollectorsFail,\n addSampleCollectorFail,\n addSampleCollectorSuccess,\n updateSampleCollectorSuccess,\n updateSampleCollectorFail,\n deleteSampleCollectorSuccess,\n deleteSampleCollectorFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getSampleCollectors,\n addNewSampleCollector,\n updateSampleCollector,\n deleteSampleCollector,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchSampleCollectors(object) {\n try {\n const response = yield call(getSampleCollectors, object.payload);\n yield put(getSampleCollectorsSuccess(response));\n } catch (error) {\n yield put(getSampleCollectorsFail(error));\n }\n}\n\nfunction* onAddNewSampleCollector(object) {\n try {\n const response = yield call(\n addNewSampleCollector,\n object.payload.sampleCollector,\n object.payload.id\n );\n yield put(addSampleCollectorSuccess(response));\n } catch (error) {\n yield put(addSampleCollectorFail(error));\n }\n}\n\nfunction* onUpdateSampleCollector({ payload: sampleCollector }) {\n try {\n const response = yield call(updateSampleCollector, sampleCollector);\n yield put(updateSampleCollectorSuccess(response));\n } catch (error) {\n yield put(updateSampleCollectorFail(error));\n }\n}\n\nfunction* onDeleteSampleCollector({ payload: sampleCollector }) {\n try {\n const response = yield call(deleteSampleCollector, sampleCollector);\n yield put(deleteSampleCollectorSuccess(response));\n } catch (error) {\n yield put(deleteSampleCollectorFail(error));\n }\n}\n\nfunction* sampleCollectorsSaga() {\n yield takeEvery(GET_SAMPLE_COLLECTORS, fetchSampleCollectors);\n yield takeEvery(ADD_NEW_SAMPLE_COLLECTOR, onAddNewSampleCollector);\n yield takeEvery(UPDATE_SAMPLE_COLLECTOR, onUpdateSampleCollector);\n yield takeEvery(DELETE_SAMPLE_COLLECTOR, onDeleteSampleCollector);\n}\n\nexport default sampleCollectorsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_SAMPLE_COLLECTION_IN_PROCESS_LIST,\n GET_SAMPLE_COLLECTION_COMPLETED_LIST,\n UPDATE_SAMPLE_COLLECTION_STATUS,\n} from \"./actionTypes\";\n\nimport {\n getSampleCollectionInProcessListSuccess,\n getSampleCollectionInProcessListFail,\n getSampleCollectionCompletedListSuccess,\n getSampleCollectionCompletedListFail,\n updateSampleCollectionStatusSuccess,\n updateSampleCollectionStatusFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getSampleCollectionInProcessList,\n getSampleCollectionCompletedList,\n updateSampleCollectionStatus,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchSampleCollectionInProcessList(object) {\n try {\n const response = yield call(\n getSampleCollectionInProcessList,\n object.payload\n );\n yield put(getSampleCollectionInProcessListSuccess(response));\n } catch (error) {\n yield put(getSampleCollectionInProcessListFail(error));\n }\n}\n\nfunction* fetchSampleCollectionCompletedList(object) {\n try {\n const response = yield call(\n getSampleCollectionCompletedList,\n object.payload\n );\n yield put(getSampleCollectionCompletedListSuccess(response));\n } catch (error) {\n yield put(getSampleCollectionCompletedListFail(error));\n }\n}\n\nfunction* onUpdateSampleCollectionStatus({ payload: sampleCollectorData }) {\n try {\n const response = yield call(\n updateSampleCollectionStatus,\n sampleCollectorData\n );\n yield put(updateSampleCollectionStatusSuccess(response));\n } catch (error) {\n yield put(updateSampleCollectionStatusFail(error));\n }\n}\n\nfunction* SampleCollectorTestAppointmentsSaga() {\n yield takeEvery(\n GET_SAMPLE_COLLECTION_IN_PROCESS_LIST,\n fetchSampleCollectionInProcessList\n );\n yield takeEvery(\n GET_SAMPLE_COLLECTION_COMPLETED_LIST,\n fetchSampleCollectionCompletedList\n );\n yield takeEvery(\n UPDATE_SAMPLE_COLLECTION_STATUS,\n onUpdateSampleCollectionStatus\n );\n}\n\nexport default SampleCollectorTestAppointmentsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_QUALITY_CERTIFICATES,\n ADD_NEW_QUALITY_CERTIFICATE,\n DELETE_QUALITY_CERTIFICATE,\n UPDATE_QUALITY_CERTIFICATE,\n ADD_NEW_COLLECTIONPOINT_QUALITY,\n GET_LAB_PROFILE,\n} from \"./actionTypes\";\n\nimport {\n getLabProfileSuccess,\n getLabProfileFail,\n getQualityCertificatesSuccess,\n getQualityCertificatesFail,\n addQualityCertificateFail,\n addQualityCertificateSuccess,\n updateQualityCertificateSuccess,\n updateQualityCertificateFail,\n deleteQualityCertificateSuccess,\n deleteQualityCertificateFail,\n addCollectionPointQualityFail,\n addCollectionPointQualitySuccess,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getLabProfile,\n getQualityCertificates,\n addNewQualityCertificate,\n updateQualityCertificate,\n deleteQualityCertificate,\n addNewCollectionPointQuality,\n\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchLabProfile(object) {\n try {\n const response = yield call(getLabProfile, object.payload);\n yield put(getLabProfileSuccess(response));\n\n } catch (error) {\n yield put(getLabProfileFail(error));\n }\n}\n\nfunction* onAddNewCollectionPointQuality(object) {\n try {\n const response = yield call(\n addNewCollectionPointQuality,\n object.payload.qualityCertificate,\n object.payload.id\n );\n yield put(addCollectionPointQualitySuccess(response));\n } catch (error) {\n yield put(addCollectionPointQualityFail(error));\n }\n}\n\nfunction* fetchQualityCertificates(object) {\n try {\n const response = yield call(getQualityCertificates, object.payload);\n yield put(getQualityCertificatesSuccess(response));\n } catch (error) {\n yield put(getQualityCertificatesFail(error));\n }\n}\n\nfunction* onAddNewQualityCertificate(object) {\n try {\n const response = yield call(\n addNewQualityCertificate,\n object.payload.qualityCertificate,\n object.payload.id\n );\n yield put(addQualityCertificateSuccess(response));\n } catch (error) {\n yield put(addQualityCertificateFail(error));\n }\n}\n\nfunction* onUpdateQualityCertificate({ payload: qualityCertificate }) {\n try {\n const response = yield call(updateQualityCertificate, qualityCertificate);\n yield put(updateQualityCertificateSuccess(response));\n } catch (error) {\n yield put(updateQualityCertificateFail(error));\n }\n}\n\nfunction* onDeleteQualityCertificate({ payload: qualityCertificate }) {\n try {\n const response = yield call(deleteQualityCertificate, qualityCertificate);\n yield put(deleteQualityCertificateSuccess(response));\n } catch (error) {\n yield put(deleteQualityCertificateFail(error));\n }\n}\n\nfunction* qualityCertificatesSaga() {\n yield takeEvery(\n ADD_NEW_COLLECTIONPOINT_QUALITY,\n onAddNewCollectionPointQuality\n );\n yield takeEvery(GET_QUALITY_CERTIFICATES, fetchQualityCertificates);\n yield takeEvery(ADD_NEW_QUALITY_CERTIFICATE, onAddNewQualityCertificate);\n yield takeEvery(UPDATE_QUALITY_CERTIFICATE, onUpdateQualityCertificate);\n yield takeEvery(DELETE_QUALITY_CERTIFICATE, onDeleteQualityCertificate);\n yield takeEvery(GET_LAB_PROFILE, fetchLabProfile);\n\n}\n\nexport default qualityCertificatesSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_PAYMENT_STATUSS,\n GET_PAYMENTOUT_STATUSS,\n GET_DEPOSIT_STATUSS,\n GET_CREATEDOUT_STATUSS,\n GET_CREATEDOUTDETAIL_STATUSS,\n GET_CCREATEDOUT_STATUSS,\n GET_CLEAR_STATUSS,\n GET_PAYMENTOUT_CLEAR_STATUSS,\n GET_BOUNCED_STATUSS,\n GET_BOUNCEDIN_STATUSS,\n GET_LABS,\n GET_DONORS,\n GET_BANKS,\n GET_BANK_ACCOUNTS,\n UPDATE_PAYMENT_STATUS,\n UPDATE_PAYMENTOUT_STATUS,\n UPDATE_PAYMENTIN_STATUS,\n UPDATE_PAYMENTOUTCREATED_STATUS,\n UPDATE_PAYMENTOUTCCREATED_STATUS,\n UPDATE_PAYMENTINBOUNCED_STATUS,\n // ADD_NEW_OUT_PAYMENT,\n DELETE_PAYMENTOUT,\n\n} from \"./actionTypes\";\n\nimport {\n getLabsSuccess,\n getLabsFail,\n getBankAccountsSuccess,\n getBankAccountsFail,\n getBanksSuccess,\n getBanksFail,\n getDonorsSuccess,\n getDonorsFail,\n getPaymentStatussSuccess,\n getPaymentStatussFail,\n getPaymentOutStatussSuccess,\n getPaymentOutStatussFail,\n getDepositStatussSuccess,\n getDepositStatussFail,\n getCreatedOutDetailStatussSuccess,\n getCreatedOutDetailStatussFail,\n getCreatedOutStatussSuccess,\n getCreatedOutStatussFail,\n getCCreatedOutStatussSuccess,\n getCCreatedOutStatussFail,\n getClearStatussSuccess,\n getClearStatussFail,\n getPaymentOutClearStatussSuccess,\n getPaymentOutClearStatussFail,\n getBouncedStatussSuccess,\n getBouncedInStatussSuccess,\n getBouncedStatussFail,\n updatePaymentStatusSuccess,\n updatePaymentStatusFail,\n updatePaymentOutStatusSuccess,\n updatePaymentOutStatusFail,\n updatePaymentInStatusSuccess,\n updatePaymentInStatusFail,\n updatePaymentOutCreatedStatusFail,\n updatePaymentOutCreatedStatusSuccess,\n updatePaymentOutCCreatedStatusFail,\n updatePaymentOutCCreatedStatusSuccess,\n updatePaymentInBouncedStatusSuccess,\n updatePaymentInBouncedStatusFail,\n // addOutPaymentFail,\n // addOutPaymentSuccess,\n deletePaymentoutSuccess,\n deletePaymentoutFail,\n\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getPaymentStatuss,\n getPaymentOutStatuss,\n getDepositStatuss,\n getCreatedOutStatuss,\n getCreatedOutDetailStatuss,\n getCCreatedOutStatuss,\n getClearStatuss,\n getPaymentOutClearStatuss,\n getBouncedStatuss,\n getBouncedInStatuss,\n updatePaymentStatus,\n updatePaymentOutStatus,\n updatePaymentInStatus,\n updatePaymentOutCreatedStatuss,\n updatePaymentOutCCreatedStatuss,\n updatePaymentInBouncedStatus,\n // addNewOutPayment,\n getLabs, getBanks, getBankAccounts, deletePaymentout, getDonors,\n\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchBankAccounts() {\n try {\n const response = yield call(getBankAccounts);\n yield put(getBankAccountsSuccess(response));\n } catch (error) {\n yield put(getBankAccountsFail(error));\n }\n}\nfunction* fetchBanks() {\n try {\n const response = yield call(getBanks);\n yield put(getBanksSuccess(response));\n } catch (error) {\n yield put(getBanksFail(error));\n }\n}\nfunction* fetchLabs() {\n try {\n const response = yield call(getLabs);\n yield put(getLabsSuccess(response));\n } catch (error) {\n yield put(getLabsFail(error));\n }\n}\nfunction* fetchDonors() {\n try {\n const response = yield call(getDonors);\n yield put(getDonorsSuccess(response));\n } catch (error) {\n yield put(getDonorsFail(error));\n }\n}\nfunction* fetchPaymentStatuss(object) {\n try {\n const response = yield call(getPaymentStatuss, object.payload);\n yield put(getPaymentStatussSuccess(response));\n } catch (error) {\n yield put(getPaymentStatussFail(error));\n }\n}\nfunction* fetchPaymentOutStatuss(object) {\n try {\n const response = yield call(getPaymentOutStatuss, object.payload);\n yield put(getPaymentOutStatussSuccess(response));\n } catch (error) {\n yield put(getPaymentOutStatussFail(error));\n }\n}\nfunction* fetchDepositStatuss(object) {\n try {\n const response = yield call(getDepositStatuss, object.payload);\n yield put(getDepositStatussSuccess(response));\n } catch (error) {\n yield put(getDepositStatussFail(error));\n }\n}\nfunction* fetchCreatedOutStatuss(object) {\n try {\n const response = yield call(getCreatedOutStatuss, object.payload);\n yield put(getCreatedOutStatussSuccess(response));\n } catch (error) {\n yield put(getCreatedOutStatussFail(error));\n }\n}\nfunction* fetchCreatedOutDetailStatuss(object) {\n try {\n const response = yield call(getCreatedOutDetailStatuss, object.payload);\n yield put(getCreatedOutDetailStatussSuccess(response));\n } catch (error) {\n yield put(getCreatedOutDetailStatussFail(error));\n }\n}\n// function* fetchCCreatedOutStatuss(object) {\n// try {\n// const response = yield call(getCCreatedOutStatuss, object.payload);\n// yield put(getCCreatedOutStatussSuccess(response));\n// } catch (error) {\n// yield put(getCCreatedOutStatussFail(error));\n// }\n// }\nfunction* fetchCCreatedOutStatuss(object) {\n try {\n console.log('Payload passed to fetchCCreatedOutStatuss:', object.payload); // Log the payload passed to the saga\n const response = yield call(getCCreatedOutStatuss, object.payload);\n console.log('Response from API:', response); // Log the response from the API\n yield put(getCCreatedOutStatussSuccess(response));\n } catch (error) {\n yield put(getCCreatedOutStatussFail(error));\n }\n}\nfunction* fetchPaymentOutClearStatuss(object) {\n try {\n const response = yield call(getPaymentOutClearStatuss, object.payload);\n yield put(getPaymentOutClearStatussSuccess(response));\n } catch (error) {\n yield put(getPaymentOutClearStatussFail(error));\n }\n}\nfunction* fetchClearStatuss(object) {\n try {\n const response = yield call(getClearStatuss, object.payload);\n yield put(getClearStatussSuccess(response));\n } catch (error) {\n yield put(getClearStatussFail(error));\n }\n}\nfunction* fetchBouncedInStatuss(object) {\n try {\n const response = yield call(getBouncedInStatuss, object.payload);\n yield put(getBouncedInStatussSuccess(response));\n } catch (error) {\n yield put(getBouncedInStatussFail(error));\n }\n}\nfunction* fetchBouncedStatuss(object) {\n try {\n const response = yield call(getBouncedStatuss, object.payload);\n yield put(getBouncedStatussSuccess(response));\n } catch (error) {\n yield put(getBouncedStatussFail(error));\n }\n}\n\nfunction* onUpdatePaymentStatus({ payload: paymentStatus }) {\n try {\n const response = yield call(updatePaymentStatus, paymentStatus);\n yield put(updatePaymentStatusSuccess(response));\n } catch (error) {\n yield put(updatePaymentStatusFail(error));\n }\n}\n\nfunction* onUpdatePaymentOutStatus({ payload: paymentOutStatus }) {\n try {\n const response = yield call(updatePaymentOutStatus, paymentOutStatus);\n yield put(updatePaymentOutStatusSuccess(response));\n } catch (error) {\n yield put(updatePaymentOutStatusFail(error));\n }\n}\nfunction* onUpdatePaymentInStatus({ payload: paymentInStatus }) {\n try {\n const response = yield call(updatePaymentInStatus, paymentInStatus);\n yield put(updatePaymentInStatusSuccess(response));\n } catch (error) {\n yield put(updatePaymentInStatusFail(error));\n }\n}\nfunction* onUpdatePaymentOutCreatedStatuss({ payload: paymentOutCreatedStatuss }) {\n try {\n const response = yield call(updatePaymentOutCreatedStatuss, paymentOutCreatedStatuss);\n yield put(updatePaymentOutCreatedStatusSuccess(response));\n } catch (error) {\n yield put(updatePaymentOutCreatedStatusFail(error));\n }\n}\nfunction* onUpdatePaymentOutCCreatedStatuss({ payload: paymentOutCreatedStatuss }) {\n try {\n const response = yield call(updatePaymentOutCCreatedStatuss, paymentOutCreatedStatuss);\n yield put(updatePaymentOutCCreatedStatusSuccess(response));\n } catch (error) {\n yield put(updatePaymentOutCCreatedStatusFail(error));\n }\n}\n// function* onUpdatePaymentInBouncedStatuss({ payload: paymentBouncedInStatus }) {\n// try {\n// const response = yield call(updatePaymentInBouncedStatuss, paymentBouncedInStatus);\n// yield put(updatePaymentInBouncedStatusSuccess(response));\n// } catch (error) {\n// yield put(updatePaymentInBouncedStatusFail(error));\n// }\n// }\nfunction* onUpdatePaymentInBouncedStatus({ payload: paymentInBouncedStatus }) {\n try {\n const response = yield call(updatePaymentInBouncedStatus, paymentInBouncedStatus);\n yield put(updatePaymentInBouncedStatusSuccess(response));\n } catch (error) {\n yield put(updatePaymentInBouncedStatusFail(error));\n }\n}\n// function* onAddNewOutPayment(object) {\n// try {\n// const response = yield call(\n// addNewOutPayment,\n// object.payload.outPayment,\n// object.payload.id\n// );\n// yield put(addOutPaymentSuccess(response));\n// } catch (error) {\n// yield put(addOutPaymentFail(error));\n// }\n// }\nfunction* onDeletePaymentout({ payload: paymentout }) {\n try {\n const response = yield call(deletePaymentout, paymentout);\n yield put(deletePaymentoutSuccess(response));\n } catch (error) {\n yield put(deletePaymentoutFail(error));\n }\n}\n\n\n\nfunction* paymentStatussSaga() {\n yield takeEvery(GET_DEPOSIT_STATUSS, fetchDepositStatuss);\n yield takeEvery(GET_CREATEDOUT_STATUSS, fetchCreatedOutStatuss);\n yield takeEvery(GET_CREATEDOUTDETAIL_STATUSS, fetchCreatedOutDetailStatuss);\n yield takeEvery(GET_CCREATEDOUT_STATUSS, fetchCCreatedOutStatuss);\n yield takeEvery(GET_PAYMENTOUT_CLEAR_STATUSS, fetchPaymentOutClearStatuss);\n yield takeEvery(GET_CLEAR_STATUSS, fetchClearStatuss);\n yield takeEvery(GET_BOUNCED_STATUSS, fetchBouncedStatuss);\n yield takeEvery(GET_BOUNCEDIN_STATUSS, fetchBouncedInStatuss);\n yield takeEvery(GET_PAYMENT_STATUSS, fetchPaymentStatuss);\n yield takeEvery(GET_PAYMENTOUT_STATUSS, fetchPaymentOutStatuss);\n yield takeEvery(UPDATE_PAYMENT_STATUS, onUpdatePaymentStatus);\n yield takeEvery(UPDATE_PAYMENTOUT_STATUS, onUpdatePaymentOutStatus);\n yield takeEvery(UPDATE_PAYMENTIN_STATUS, onUpdatePaymentInStatus);\n yield takeEvery(UPDATE_PAYMENTOUTCREATED_STATUS, onUpdatePaymentOutCreatedStatuss);\n yield takeEvery(UPDATE_PAYMENTOUTCCREATED_STATUS, onUpdatePaymentOutCCreatedStatuss);\n yield takeEvery(UPDATE_PAYMENTINBOUNCED_STATUS, onUpdatePaymentInBouncedStatus);\n // yield takeEvery(ADD_NEW_OUT_PAYMENT, onAddNewOutPayment);\n yield takeEvery(GET_BANKS, fetchBanks);\n yield takeEvery(GET_BANK_ACCOUNTS, fetchBankAccounts);\n yield takeEvery(GET_LABS, fetchLabs);\n yield takeEvery(GET_DONORS, fetchDonors);\n yield takeEvery(DELETE_PAYMENTOUT, onDeletePaymentout);\n}\n\nexport default paymentStatussSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_MSGS,\n ADD_NEW_MSG,\n} from \"./actionTypes\";\n\nimport {\n getMsgsSuccess,\n getMsgsFail,\n addMsgFail,\n addMsgSuccess,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getMsgs,\n addNewMsg,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchMsgs(object) {\n try {\n const response = yield call(getMsgs, object.payload);\n yield put(getMsgsSuccess(response));\n } catch (error) {\n yield put(getMsgsFail(error));\n }\n}\n\nfunction* onAddNewMsg(object) {\n try {\n const response = yield call(\n addNewMsg,\n object.payload.msg,\n object.payload.id\n );\n yield put(addMsgSuccess(response));\n } catch (error) {\n yield put(addMsgFail(error));\n }\n}\n\nfunction* msgsSaga() {\n yield takeEvery(GET_MSGS, fetchMsgs);\n yield takeEvery(ADD_NEW_MSG, onAddNewMsg);\n}\n\nexport default msgsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_ADVERTISEMENTS,\n ADD_NEW_ADVERTISEMENT,\n DELETE_ADVERTISEMENT,\n UPDATE_ADVERTISEMENT,\n} from \"./actionTypes\";\n\nimport {\n getAdvertisementsSuccess,\n getAdvertisementsFail,\n addAdvertisementFail,\n addAdvertisementSuccess,\n updateAdvertisementSuccess,\n updateAdvertisementFail,\n deleteAdvertisementSuccess,\n deleteAdvertisementFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getAdvertisements,\n addNewAdvertisement,\n updateAdvertisement,\n deleteAdvertisement,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchAdvertisements() {\n try {\n const response = yield call(getAdvertisements);\n console.log (\"advertisement saga: \", response);\n yield put(getAdvertisementsSuccess(response));\n } catch (error) {\n yield put(getAdvertisementsFail(error));\n }\n}\n\nfunction* onAddNewAdvertisement(object) {\n try {\n const response = yield call(\n addNewAdvertisement,\n object.payload.advertisement,\n object.payload.id\n );\n yield put(addAdvertisementSuccess(response));\n } catch (error) {\n yield put(addAdvertisementFail(error));\n }\n}\n\nfunction* onUpdateAdvertisement({ payload: advertisement }) {\n try {\n const response = yield call(updateAdvertisement, advertisement);\n yield put(updateAdvertisementSuccess(response));\n } catch (error) {\n yield put(updateAdvertisementFail(error));\n }\n}\n\nfunction* onDeleteAdvertisement({ payload: advertisement }) {\n try {\n const response = yield call(deleteAdvertisement, advertisement);\n yield put(deleteAdvertisementSuccess(response));\n } catch (error) {\n yield put(deleteAdvertisementFail(error));\n }\n}\n\nfunction* advertisementsSaga() {\n yield takeEvery(GET_ADVERTISEMENTS, fetchAdvertisements);\n yield takeEvery(ADD_NEW_ADVERTISEMENT, onAddNewAdvertisement);\n yield takeEvery(UPDATE_ADVERTISEMENT, onUpdateAdvertisement);\n yield takeEvery(DELETE_ADVERTISEMENT, onDeleteAdvertisement);\n}\n\nexport default advertisementsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_ADVERTISEMENT_LIVES } from \"./actionTypes\";\n\nimport {\n getAdvertisementLivesFail,\n getAdvertisementLivesSuccess,\n} from \"./actions\";\n//Include Both Helper File with needed methods\nimport { getAdvertisementLives } from \"../../helpers/django_api_helper\";\n\nfunction* fetchAdvertisementLives(object) {\n try {\n const response = yield call(getAdvertisementLives, object.payload);\n yield put(getAdvertisementLivesSuccess(response));\n } catch (error) {\n yield put(getAdvertisementLivesFail(error));\n }\n}\n\nfunction* AdvertisementLivesSaga() {\n yield takeEvery(GET_ADVERTISEMENT_LIVES, fetchAdvertisementLives);\n}\n\nexport default AdvertisementLivesSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_ADVERTISEMENT_PRICE_LISTS,\n ADD_NEW_ADVERTISEMENT_PRICE_LIST,\n DELETE_ADVERTISEMENT_PRICE_LIST,\n UPDATE_ADVERTISEMENT_PRICE_LIST,\n} from \"./actionTypes\";\n\nimport {\n getAdvertisementPriceListsSuccess,\n getAdvertisementPriceListsFail,\n addAdvertisementPriceListFail,\n addAdvertisementPriceListSuccess,\n updateAdvertisementPriceListSuccess,\n updateAdvertisementPriceListFail,\n deleteAdvertisementPriceListSuccess,\n deleteAdvertisementPriceListFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getAdvertisementPriceLists,\n addNewAdvertisementPriceList,\n updateAdvertisementPriceList,\n deleteAdvertisementPriceList,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchAdvertisementPriceLists() {\n try {\n const response = yield call(getAdvertisementPriceLists);\n console.log (\"advertisementPriceList saga: \", response);\n yield put(getAdvertisementPriceListsSuccess(response));\n } catch (error) {\n yield put(getAdvertisementPriceListsFail(error));\n }\n}\n\nfunction* onAddNewAdvertisementPriceList(object) {\n try {\n const response = yield call(\n addNewAdvertisementPriceList,\n object.payload.advertisementPriceList,\n object.payload.id\n );\n yield put(addAdvertisementPriceListSuccess(response));\n } catch (error) {\n yield put(addAdvertisementPriceListFail(error));\n }\n}\n\nfunction* onUpdateAdvertisementPriceList({ payload: advertisementPriceList }) {\n try {\n const response = yield call(updateAdvertisementPriceList, advertisementPriceList);\n yield put(updateAdvertisementPriceListSuccess(response));\n } catch (error) {\n yield put(updateAdvertisementPriceListFail(error));\n }\n}\n\nfunction* onDeleteAdvertisementPriceList({ payload: advertisementPriceList }) {\n try {\n const response = yield call(deleteAdvertisementPriceList, advertisementPriceList);\n yield put(deleteAdvertisementPriceListSuccess(response));\n } catch (error) {\n yield put(deleteAdvertisementPriceListFail(error));\n }\n}\n\nfunction* advertisementPriceListsSaga() {\n yield takeEvery(GET_ADVERTISEMENT_PRICE_LISTS, fetchAdvertisementPriceLists);\n yield takeEvery(ADD_NEW_ADVERTISEMENT_PRICE_LIST, onAddNewAdvertisementPriceList);\n yield takeEvery(UPDATE_ADVERTISEMENT_PRICE_LIST, onUpdateAdvertisementPriceList);\n yield takeEvery(DELETE_ADVERTISEMENT_PRICE_LIST, onDeleteAdvertisementPriceList);\n}\n\nexport default advertisementPriceListsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n // GET_ADVERTISEMENT_PRICE_LISTS,\n GET_LAB_ADVERTISEMENTS,\n ADD_NEW_LAB_ADVERTISEMENT,\n DELETE_LAB_ADVERTISEMENT,\n UPDATE_LAB_ADVERTISEMENT,\n} from \"./actionTypes\";\n\nimport {\n // getAdvertisementPriceListsSuccess,\n // getAdvertisementPriceListsFail,\n getLabAdvertisementsSuccess,\n getLabAdvertisementsFail,\n addLabAdvertisementFail,\n addLabAdvertisementSuccess,\n updateLabAdvertisementSuccess,\n updateLabAdvertisementFail,\n deleteLabAdvertisementSuccess,\n deleteLabAdvertisementFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n // getAdvertisementPriceLists,\n getLabAdvertisements,\n addNewLabAdvertisement,\n updateLabAdvertisement,\n deleteLabAdvertisement,\n} from \"../../helpers/django_api_helper\";\n\n// function* fetchAdvertisementPriceLists() {\n// try {\n// const response = yield call(getAdvertisementPriceLists);\n// console.log (\"advertisementPriceList saga: \", response);\n// yield put(getAdvertisementPriceListsSuccess(response));\n// } catch (error) {\n// yield put(getAdvertisementPriceListsFail(error));\n// }\n// }\n\nfunction* fetchLabAdvertisements(object) {\n try {\n const response = yield call(getLabAdvertisements, object.payload);\n console.log (\"labAdvertisement saga: \", response);\n \n yield put(getLabAdvertisementsSuccess(response));\n } catch (error) {\n yield put(getLabAdvertisementsFail(error));\n }\n}\n\nfunction* onAddNewLabAdvertisement(object) {\n try {\n const response = yield call(\n addNewLabAdvertisement,\n object.payload.labAdvertisement,\n object.payload.id\n );\n yield put(addLabAdvertisementSuccess(response));\n } catch (error) {\n yield put(addLabAdvertisementFail(error));\n }\n}\n\nfunction* onUpdateLabAdvertisement({ payload: labAdvertisement }) {\n try {\n const response = yield call(updateLabAdvertisement, labAdvertisement);\n yield put(updateLabAdvertisementSuccess(response));\n } catch (error) {\n yield put(updateLabAdvertisementFail(error));\n }\n}\n\nfunction* onDeleteLabAdvertisement({ payload: labAdvertisement }) {\n try {\n const response = yield call(deleteLabAdvertisement, labAdvertisement);\n yield put(deleteLabAdvertisementSuccess(response));\n } catch (error) {\n yield put(deleteLabAdvertisementFail(error));\n }\n}\n\nfunction* labAdvertisementsSaga() {\n // yield takeEvery(GET_ADVERTISEMENT_PRICE_LISTS, fetchAdvertisementPriceLists);\n yield takeEvery(GET_LAB_ADVERTISEMENTS, fetchLabAdvertisements);\n yield takeEvery(ADD_NEW_LAB_ADVERTISEMENT, onAddNewLabAdvertisement);\n yield takeEvery(UPDATE_LAB_ADVERTISEMENT, onUpdateLabAdvertisement);\n yield takeEvery(DELETE_LAB_ADVERTISEMENT, onDeleteLabAdvertisement);\n}\n\nexport default labAdvertisementsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED,\n\n GET_LAB_ADVERTISEMENT_REQUESTS,\n\n UPDATE_LAB_ADVERTISEMENT_REQUEST,\n} from \"./actionTypes\";\n\nimport {\n\n getLabAdvertisementRequestsAcceptedSuccess,\n getLabAdvertisementRequestsAcceptedFail, \n getLabAdvertisementRequestsSuccess,\n getLabAdvertisementRequestsFail, \n updateLabAdvertisementRequestSuccess,\n updateLabAdvertisementRequestFail,\n\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n // getAdvertisementPriceLists,\n getLabAdvertisementRequestsAccepted,\n getLabAdvertisementRequests,\n updateLabAdvertisementRequest,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchLabAdvertisementRequests(object) {\n try {\n const response = yield call(getLabAdvertisementRequests, object.payload); \n yield put(getLabAdvertisementRequestsSuccess(response));\n } catch (error) {\n yield put(getLabAdvertisementRequestsFail(error));\n }\n}\n\nfunction* fetchLabAdvertisementRequestsAccepted(object) {\n try {\n const response = yield call(getLabAdvertisementRequestsAccepted, object.payload);\n console.log (\"labAdvertisementRequest Accepted saga: \", response);\n \n yield put(getLabAdvertisementRequestsAcceptedSuccess(response));\n } catch (error) {\n yield put(getLabAdvertisementRequestsAcceptedFail(error));\n }\n}\n\nfunction* onUpdateLabAdvertisementRequest({ payload: labAdvertisementRequest }) {\n try {\n const response = yield call(updateLabAdvertisementRequest, labAdvertisementRequest);\n console.log (\"labAdvertisementRequest Accepted update saga: \", response);\n yield put(updateLabAdvertisementRequestSuccess(response));\n } catch (error) {\n yield put(updateLabAdvertisementRequestFail(error));\n }\n}\n\n\nfunction* labAdvertisementRequestsSaga() {\n yield takeEvery(GET_LAB_ADVERTISEMENT_REQUESTS_ACCEPTED, fetchLabAdvertisementRequestsAccepted);\n yield takeEvery(GET_LAB_ADVERTISEMENT_REQUESTS, fetchLabAdvertisementRequests);\n yield takeEvery(UPDATE_LAB_ADVERTISEMENT_REQUEST, onUpdateLabAdvertisementRequest);\n}\n\nexport default labAdvertisementRequestsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_DISCOUNT_LABHAZIRS,\n UPDATE_DISCOUNT_LABHAZIR,\n UPDATE_DISCOUNT_ALL_LABHAZIR,\n} from \"./actionTypes\";\n\nimport {\n getDiscountLabHazirsSuccess,\n getDiscountLabHazirsFail,\n updateDiscountLabHazirSuccess,\n updateDiscountLabHazirFail,\n updateDiscountAllLabHazirSuccess,\n updateDiscountAllLabHazirFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getDiscountLabHazirs,\n updateDiscountLabHazir,\n updateDiscountAllLabHazir,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchDiscountLabHazirs() {\n try {\n const response = yield call(getDiscountLabHazirs);\n console.log(\"discountLabHazir saga: \", response);\n yield put(getDiscountLabHazirsSuccess(response));\n } catch (error) {\n yield put(getDiscountLabHazirsFail(error));\n }\n}\n\nfunction* onUpdateDiscountLabHazir({ payload: discountLabHazir }) {\n try {\n const response = yield call(updateDiscountLabHazir, discountLabHazir);\n yield put(updateDiscountLabHazirSuccess(response));\n } catch (error) {\n yield put(updateDiscountLabHazirFail(error));\n }\n}\n\nfunction* onUpdateDiscountAllLabHazir({ payload: discountAllLabHazir }) {\n try {\n const response = yield call(updateDiscountAllLabHazir, discountAllLabHazir);\n yield put(updateDiscountAllLabHazirSuccess(response));\n } catch (error) {\n yield put(updateDiscountAllLabHazirFail(error));\n }\n}\n\nfunction* discountLabHazirsSaga() {\n yield takeEvery(GET_DISCOUNT_LABHAZIRS, fetchDiscountLabHazirs);\n yield takeEvery(UPDATE_DISCOUNT_LABHAZIR, onUpdateDiscountLabHazir);\n yield takeEvery(UPDATE_DISCOUNT_ALL_LABHAZIR, onUpdateDiscountAllLabHazir);\n}\n\nexport default discountLabHazirsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_DISCOUNT_LABHAZIRTOLABS,\n UPDATE_DISCOUNT_LABHAZIRTOLAB,\n UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB,\n} from \"./actionTypes\";\n\nimport {\n getDiscountLabHazirToLabsSuccess,\n getDiscountLabHazirToLabsFail,\n updateDiscountLabHazirToLabSuccess,\n updateDiscountLabHazirToLabFail,\n updateDiscountAllLabHazirToLabSuccess,\n updateDiscountAllLabHazirToLabFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getDiscountLabHazirToLabs,\n updateDiscountLabHazirToLab,\n updateDiscountAllLabHazirToLab,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchDiscountLabHazirToLabs(object) {\n try {\n const response = yield call(getDiscountLabHazirToLabs, object.payload);\n console.log(\"discountLabHazirToLab saga: \", response);\n yield put(getDiscountLabHazirToLabsSuccess(response));\n } catch (error) {\n yield put(getDiscountLabHazirToLabsFail(error));\n }\n}\n\nfunction* onUpdateDiscountLabHazirToLab({ payload: discountLabHazirToLab }) {\n try {\n const response = yield call(updateDiscountLabHazirToLab, discountLabHazirToLab);\n yield put(updateDiscountLabHazirToLabSuccess(response));\n } catch (error) {\n yield put(updateDiscountLabHazirToLabFail(error));\n }\n}\n\nfunction* onUpdateDiscountAllLabHazirToLab({ payload: discountAllLabHazir }) {\n try {\n const response = yield call(updateDiscountAllLabHazirToLab, discountAllLabHazir);\n yield put(updateDiscountAllLabHazirToLabSuccess(response));\n } catch (error) {\n yield put(updateDiscountAllLabHazirToLabFail(error));\n }\n}\n\nfunction* discountLabHazirToLabsSaga() {\n yield takeEvery(GET_DISCOUNT_LABHAZIRTOLABS, fetchDiscountLabHazirToLabs);\n yield takeEvery(UPDATE_DISCOUNT_LABHAZIRTOLAB, onUpdateDiscountLabHazirToLab);\n yield takeEvery(UPDATE_DISCOUNT_ALL_LABHAZIRTOLAB, onUpdateDiscountAllLabHazirToLab);\n}\n\nexport default discountLabHazirToLabsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_REFERREL_FEES,\n GET_PUT_REFERREL_FEES,\n UPDATE_REFERREL_FEE,\n UPDATE_REFERREL_ALL_FEE,\n} from \"./actionTypes\";\n\nimport {\n getReferrelFeeLabsSuccess,\n getReferrelFeeLabsFail,\n getPutReferrelFeeLabsSuccess,\n getPutReferrelFeeLabsFail,\n updateReferrelFeeLabSuccess,\n updateReferrelFeeLabFail,\n updateReferrelAllFeeLabSuccess,\n updateReferrelAllFeeLabFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getReferrelFeeLabs,\n getPutReferrelFeeLabs,\n updateReferrelFeeLab,\n updateReferrelAllFeeLab,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchReferrelFeeLabs(object) {\n try {\n const response = yield call(getReferrelFeeLabs, object.payload);\n console.log(\"ReferrelFeeLab saga: \", response);\n yield put(getReferrelFeeLabsSuccess(response));\n } catch (error) {\n yield put(getReferrelFeeLabsFail(error));\n }\n}\nfunction* fetchPutReferrelFeeLabs(object) {\n try {\n const response = yield call(getPutReferrelFeeLabs, \n object.payload.test_name,\n );\n yield put(getPutReferrelFeeLabsSuccess(response.data));\n } catch (error) {\n yield put(getPutReferrelFeeLabsFail(error));\n }\n}\n\nfunction* onUpdateReferrelFeeLab({ payload: ReferrelFeeLab }) {\n try {\n const response = yield call(updateReferrelFeeLab, ReferrelFeeLab);\n yield put(updateReferrelFeeLabSuccess(response));\n } catch (error) {\n yield put(updateReferrelFeeLabFail(error));\n }\n}\n\nfunction* onUpdateReferrelAllFeeLab({payload: ReferrelFeeLab}) {\n try {\n const response = yield call(updateReferrelAllFeeLab, ReferrelFeeLab);\n yield put(updateReferrelAllFeeLabSuccess(response));\n } catch (error) {\n yield put(updateReferrelAllFeeLabFail(error));\n }\n}\n\nfunction* ReferrelFeeLabsSaga() {\n yield takeEvery(GET_REFERREL_FEES, fetchReferrelFeeLabs);\n yield takeEvery(GET_PUT_REFERREL_FEES, fetchPutReferrelFeeLabs);\n yield takeEvery(UPDATE_REFERREL_FEE, onUpdateReferrelFeeLab);\n yield takeEvery(UPDATE_REFERREL_ALL_FEE, onUpdateReferrelAllFeeLab);\n}\n\nexport default ReferrelFeeLabsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_LABS_LIST,GET_LABS_AUDIT_LIST, GET_DONORS_LIST, GET_DONORSA,GET_LC_LIST,GET_LABS_ALL_AUDIT_LIST, GET_CORPORATE_LIST } from \"./actionTypes\";\n\nimport {\n getLabsListSuccess,\n getLabsListFail,\n getLabsAuditListSuccess,\n getLabsAuditListFail,\n getDonorsListSuccess,\n getDonorsListFail,\n getDonorsASuccess,\n getDonorsAFail,\n getLcListSuccess,\n getLcListFail,\n getCorporateListSuccess,\n getCorporateListFail,\n getLabsAllAuditListSuccess,\n getLabsAllAuditListFail\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getLabsList ,getDonorsList, getDonorsA,getLcList ,getCorporateList, getLabsAuditList, getLabsAllAuditList} from \"../../helpers/django_api_helper\";\n\nfunction* fetchLabsList(object) {\n try {\n const response = yield call(getLabsList, object.payload);\n yield put(getLabsListSuccess(response));\n } catch (error) {\n yield put(getLabsListFail(error));\n }\n}\n\nfunction* fetchLabsAuditList(object) {\n try {\n const response = yield call(getLabsAuditList, object.payload);\n yield put(getLabsAuditListSuccess(response));\n } catch (error) {\n yield put(getLabsAuditListFail(error));\n }\n}\n\nfunction* fetchLabAllAudits(object) {\n try {\n const response = yield call(getLabsAllAuditList, object.payload);\n yield put(getLabsAllAuditListSuccess(response));\n } catch (error) {\n yield put(getLabsAllAuditListFail(error));\n }\n}\n\nfunction* fetchDonorsList(object) {\n try {\n const response = yield call(getDonorsList, object.payload);\n yield put(getDonorsListSuccess(response));\n } catch (error) {\n yield put(getDonorsListFail(error));\n }\n}\nfunction* fetchCorporateList(object) {\n try {\n const response = yield call(getCorporateList, object.payload);\n yield put(getCorporateListSuccess(response));\n } catch (error) {\n yield put(getCorporateListFail(error));\n }\n}\nfunction* fetchLcList(object) {\n try {\n const response = yield call(getLcList, object.payload);\n yield put(getLcListSuccess(response));\n } catch (error) {\n yield put(getLcListFail(error));\n }\n}\nfunction* fetchDonorsA(object) {\n try {\n const response = yield call(getDonorsA, object.payload);\n yield put(getDonorsASuccess(response));\n } catch (error) {\n yield put(getDonorsAFail(error));\n }\n}\n\nfunction* LabsSaga() {\n yield takeEvery(\n GET_LABS_ALL_AUDIT_LIST,\n fetchLabAllAudits\n );\n yield takeEvery(\n GET_LABS_LIST,\n fetchLabsList\n );\n yield takeEvery(\n GET_LABS_AUDIT_LIST,\n fetchLabsAuditList\n );\n yield takeEvery(\n GET_DONORS_LIST,\n fetchDonorsList\n );\n yield takeEvery(\n GET_CORPORATE_LIST,\n fetchCorporateList\n );\n yield takeEvery(\n GET_LC_LIST,\n fetchLcList\n );\nyield takeEvery(GET_DONORSA, fetchDonorsA);\n\n}\n\nexport default LabsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_LABS_LIST, GET_DONORS_LIST, GET_DONORSA } from \"./actionTypes\";\n\nimport {\n getLabsListSuccess,\n getLabsListFail,\n getDonorsListSuccess,\n getDonorsListFail,\n getDonorsASuccess,\n getDonorsAFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getLabsList ,getDonorsList, getDonorsA } from \"../../helpers/django_api_helper\";\n\nfunction* fetchLabsList(object) {\n try {\n const response = yield call(getLabsList, object.payload);\n yield put(getLabsListSuccess(response));\n } catch (error) {\n yield put(getLabsListFail(error));\n }\n}\nfunction* fetchDonorsList(object) {\n try {\n const response = yield call(getDonorsList, object.payload);\n yield put(getDonorsListSuccess(response));\n } catch (error) {\n yield put(getDonorsListFail(error));\n }\n}\nfunction* fetchDonorsA(object) {\n try {\n const response = yield call(getDonorsA, object.payload);\n yield put(getDonorsASuccess(response));\n } catch (error) {\n yield put(getDonorsAFail(error));\n }\n}\n\nfunction* LabsSaga() {\n yield takeEvery(\n GET_LABS_LIST,\n fetchLabsList\n );\n yield takeEvery(\n GET_DONORS_LIST,\n fetchDonorsList\n );\nyield takeEvery(GET_DONORSA, fetchDonorsA);\n\n}\n\nexport default LabsSaga;\n","import {\n GET_LABS_LIST,\n GET_LABS_LIST_SUCCESS,\n GET_LABS_LIST_FAIL,\n GET_DONORS_LIST,\n GET_DONORS_LIST_SUCCESS,\n GET_DONORS_LIST_FAIL,\n GET_DONORSA,\n GET_DONORSA_SUCCESS,\n GET_DONORSA_FAIL,\n} from \"./actionTypes\";\n\nexport const getLabsList = () => ({\n type: GET_LABS_LIST,\n payload: {},\n});\n\nexport const getLabsListSuccess =\n labs => ({\n type: GET_LABS_LIST_SUCCESS,\n payload: labs,\n });\n\nexport const getLabsListFail = error => ({\n type: GET_LABS_LIST_FAIL,\n payload: error,\n});\nexport const getDonorsList = () => ({\n type: GET_DONORS_LIST,\n payload: {},\n});\n\nexport const getDonorsListSuccess =\n donors => ({\n type: GET_DONORS_LIST_SUCCESS,\n payload: donors,\n });\n\nexport const getDonorsListFail = error => ({\n type: GET_DONORS_LIST_FAIL,\n payload: error,\n});\nexport const getDonorsA = () => ({\n type: GET_DONORSA,\n});\n\nexport const getDonorsASuccess = donors => ({\n type: GET_DONORSA_SUCCESS,\n payload: donors,\n});\n\nexport const getDonorsAFail = error => ({\n type: GET_DONORSA_FAIL,\n payload: error,\n});","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_TERRITORIES_LIST } from \"./actionTypes\";\n\nimport {\n getTerritoriesListSuccess,\n getTerritoriesListFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getTerritoriesList } from \"../../helpers/django_api_helper\";\n\nfunction* fetchTerritoriesList(object) {\n try {\n const response = yield call(getTerritoriesList, object.payload);\n yield put(getTerritoriesListSuccess(response));\n } catch (error) {\n yield put(getTerritoriesListFail(error));\n }\n}\n\nfunction* TerritoriesListSaga() {\n yield takeEvery(\n GET_TERRITORIES_LIST,\n fetchTerritoriesList\n );\n}\n\nexport default TerritoriesListSaga;","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_LAB_NAMES_LIST } from \"./actionTypes\";\n\nimport {\n getLabNamesListSuccess,\n getLabNamesListFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getLabNamesList } from \"../../helpers/django_api_helper\";\n\nfunction* fetchLabNamesList(object) {\n try {\n const response = yield call(getLabNamesList, object.payload);\n yield put(getLabNamesListSuccess(response));\n } catch (error) {\n yield put(getLabNamesListFail(error));\n }\n}\n\nfunction* LabNamesListSaga() {\n yield takeEvery(\n GET_LAB_NAMES_LIST,\n fetchLabNamesList\n );\n}\n\nexport default LabNamesListSaga;","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_ONLY_MEDICAL_LIST, GET_TERRITORIES_LIST } from \"./actionTypes\";\n\nimport {\n onlyMedicalTestListSuccess,\n onlyMedicalTestListFail,\n getTerritoriesListSuccess,\n getTerritoriesListFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { onlyMedicalTestList, getTerritoriesList } from \"../../helpers/django_api_helper\";\n\nfunction* fetchonlyMedicalTestList(object) {\n try {\n const response = yield call(onlyMedicalTestList, object.payload);\n yield put(onlyMedicalTestListSuccess(response));\n } catch (error) {\n yield put(onlyMedicalTestListFail(error));\n }\n}\nfunction* fetchTerritoriesList(object) {\n try {\n const response = yield call(getTerritoriesList, object.payload);\n yield put(getTerritoriesListSuccess(response));\n } catch (error) {\n yield put(getTerritoriesListFail(error));\n }\n}\n\nfunction* onlyMedicalTestListSaga() {\n yield takeEvery(\n GET_ONLY_MEDICAL_LIST,\n fetchonlyMedicalTestList\n );\n yield takeEvery(\n GET_TERRITORIES_LIST,\n fetchTerritoriesList\n );\n}\n\nexport default onlyMedicalTestListSaga;","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_CSR_CENTRAL_TERRITORY_LIST ,GET_CSR_SOUTH_TERRITORY_LIST ,GET_CSR_NORTH_TERRITORY_LIST } from \"./actionTypes\";\n\nimport {\n getCsrCentralListSuccess,\n getCsrCentralListFail,\n getCsrSouthListSuccess,\n getCsrSouthListFail,\n getCsrNorthListSuccess,\n getCsrNorthListFail,\n \n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getCsrCentralList, getCsrSouthList, getCsrNorthList } from \"../../helpers/django_api_helper\";\n\nfunction* fetchCsrCentralList(object) {\n try {\n const response = yield call(getCsrCentralList, object.payload);\n yield put(getCsrCentralListSuccess(response));\n } catch (error) {\n yield put(getCsrCentralListFail(error));\n }\n}\n// SOUTH\nfunction* fetchCsrSouthList(object) {\n try {\n const response = yield call(getCsrSouthList, object.payload);\n yield put(getCsrSouthListSuccess(response));\n } catch (error) {\n yield put(getCsrSouthListFail(error));\n }\n}\n\n// NORTH\nfunction* fetchCsrNorthList(object) {\n try {\n const response = yield call(getCsrNorthList, object.payload);\n yield put(getCsrNorthListSuccess(response));\n } catch (error) {\n yield put(getCsrNorthListFail(error));\n }\n}\n\nfunction* csrTerritoryListSaga() {\n yield takeEvery(\n GET_CSR_CENTRAL_TERRITORY_LIST,\n fetchCsrCentralList\n );\n yield takeEvery(\n GET_CSR_SOUTH_TERRITORY_LIST,\n fetchCsrSouthList\n );\n\nyield takeEvery(\n GET_CSR_NORTH_TERRITORY_LIST,\n fetchCsrNorthList\n);\n}\n\nexport default csrTerritoryListSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_AUDITOR_CENTRAL_TERRITORY_LIST ,GET_AUDITOR_SOUTH_TERRITORY_LIST ,GET_AUDITOR_NORTH_TERRITORY_LIST } from \"./actionTypes\";\n\nimport {\n getAuditorCentralListSuccess,\n getAuditorCentralListFail,\n getAuditorSouthListSuccess,\n getAuditorSouthListFail,\n getAuditorNorthListSuccess,\n getAuditorNorthListFail,\n \n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getAuditorCentralList, getAuditorSouthList, getAuditorNorthList } from \"../../helpers/django_api_helper\";\n\nfunction* fetchAuditorCentralList(object) {\n try {\n const response = yield call(getAuditorCentralList, object.payload);\n yield put(getAuditorCentralListSuccess(response));\n } catch (error) {\n yield put(getAuditorCentralListFail(error));\n }\n}\n// SOUTH\nfunction* fetchAuditorSouthList(object) {\n try {\n const response = yield call(getAuditorSouthList, object.payload);\n yield put(getAuditorSouthListSuccess(response));\n } catch (error) {\n yield put(getAuditorSouthListFail(error));\n }\n}\n\n// NORTH\nfunction* fetchAuditorNorthList(object) {\n try {\n const response = yield call(getAuditorNorthList, object.payload);\n yield put(getAuditorNorthListSuccess(response));\n } catch (error) {\n yield put(getAuditorNorthListFail(error));\n }\n}\n\nfunction* auditorTerritoryListSaga() {\n yield takeEvery(\n GET_AUDITOR_CENTRAL_TERRITORY_LIST,\n fetchAuditorCentralList\n );\n yield takeEvery(\n GET_AUDITOR_SOUTH_TERRITORY_LIST,\n fetchAuditorSouthList\n );\n\nyield takeEvery(\n GET_AUDITOR_NORTH_TERRITORY_LIST,\n fetchAuditorNorthList\n);\n}\n\nexport default auditorTerritoryListSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_DISCOUNT_LAB,\n UPDATE_DISCOUNT_LAB,\n UPDATE_DISCOUNT_ALL_LAB,\n\n} from \"./actionTypes\";\n\nimport {\n getDiscountLabSuccess,\n getDiscountLabFail,\n updateDiscountLabSuccess,\n updateDiscountLabFail,\n updateDiscountAllLabSuccess,\n updateDiscountAllLabFail,\n\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getDiscountLab, updateDiscountLab, updateDiscountAllLab,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchDiscountLab(object) {\n try {\n const response = yield call(getDiscountLab, object.payload);\n yield put(getDiscountLabSuccess(response));\n } catch (error) {\n yield put(getDiscountLabFail(error));\n }\n}\nfunction* onUpdateDiscountLab({ payload: discountLabs }) {\n try {\n const response = yield call(updateDiscountLab, discountLabs);\n yield put(updateDiscountLabSuccess(response));\n } catch (error) {\n yield put(updateDiscountLabFail(error));\n }\n}\nfunction* onUpdateDiscountAllLab({ payload: discountAllLab }) {\n try {\n const response = yield call(updateDiscountAllLab, discountAllLab);\n yield put(updateDiscountAllLabSuccess(response));\n } catch (error) {\n yield put(updateDiscountAllLabFail(error));\n }\n}\nfunction* discountLabSaga() {\n yield takeEvery(\n GET_DISCOUNT_LAB,\n fetchDiscountLab\n );\n yield takeEvery(UPDATE_DISCOUNT_LAB, onUpdateDiscountLab);\n yield takeEvery(UPDATE_DISCOUNT_ALL_LAB, onUpdateDiscountAllLab);\n\n}\n\nexport default discountLabSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_FEEDBACKS, GET_LAB_PROFILE } from \"./actionTypes\";\n\nimport { getFeedbacksSuccess, getFeedbacksFail, getLabProfileFail, getLabProfileSuccess } from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getFeedbacks, getLabProfile } from \"../../helpers/django_api_helper\";\n\nfunction* fetchFeedbacks(object) {\n try {\n const response = yield call(getFeedbacks, object.payload);\n yield put(getFeedbacksSuccess(response.data));\n } catch (error) {\n yield put(getFeedbacksFail(error));\n }\n}\n\nfunction* fetchLabProfile(object) {\n try {\n const response = yield call(getLabProfile, object.payload);\n yield put(getLabProfileSuccess(response));\n } catch (error) {\n yield put(getLabProfileFail(error));\n }\n}\nfunction* feedbacksSaga() {\n yield takeEvery(GET_FEEDBACKS, fetchFeedbacks);\n yield takeEvery(GET_LAB_PROFILE, fetchLabProfile);\n}\n\nexport default feedbacksSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_LABS_RATING } from \"./actionTypes\";\n\nimport { getLabsRatingSuccess, getLabsRatingFail } from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getLabsRating } from \"../../helpers/django_api_helper\";\n\nfunction* fetchLabsRating(object) {\n try {\n const response = yield call(getLabsRating, object.payload);\n yield put(getLabsRatingSuccess(response.data));\n } catch (error) {\n yield put(getLabsRatingFail(error));\n }\n}\nfunction* labsRatingSaga() {\n yield takeEvery(GET_LABS_RATING, fetchLabsRating);\n}\n\nexport default labsRatingSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_LABS_TESTING } from \"./actionTypes\";\n\nimport { getLabsTestingSuccess, getLabsTestingFail } from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getLabsTesting } from \"../../helpers/django_api_helper\";\n\nfunction* fetchLabsTesting(object) {\n try {\n const response = yield call(getLabsTesting, object.payload);\n yield put(getLabsTestingSuccess(response.data));\n } catch (error) {\n yield put(getLabsTestingFail(error));\n }\n}\nfunction* labsTestingSaga() {\n yield takeEvery(GET_LABS_TESTING, fetchLabsTesting);\n}\n\nexport default labsTestingSaga;\n","import {\n GET_LABS_TESTING,\n GET_LABS_TESTING_FAIL,\n GET_LABS_TESTING_SUCCESS,\n\n} from \"./actionTypes\";\n\nexport const getLabsTesting = () => ({\n type: GET_LABS_TESTING,\n payload: {},\n});\n\nexport const getLabsTestingSuccess = labsTesting => ({\n type: GET_LABS_TESTING_SUCCESS,\n payload: labsTesting,\n});\n\nexport const getLabsTestingFail = error => ({\n type: GET_LABS_TESTING_FAIL,\n payload: error,\n});","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_TEST_APPOINTMENTS_PENDING_LIST,\n GET_TEST_APPOINTMENTS_IN_PROCESS_LIST,\n GET_TEST_APPOINTMENTS_COMPLETED_LIST,\n UPDATE_TEST_APPOINTMENT,\n GET_LAB_PROFILE,\n ADD_NEW_COLLECTIONPOINT_TESTAPPOINTMENT,\n GET_LAB_TOKEN,\n} from \"./actionTypes\";\n\nimport {\n getLabProfileSuccess,\n getLabProfileFail,\n getTestAppointmentsPendingListSuccess,\n getTestAppointmentsPendingListFail,\n getTestAppointmentsInProcessListSuccess,\n getTestAppointmentsInProcessListFail,\n getTestAppointmentsCompletedListSuccess,\n getTestAppointmentsCompletedListFail,\n updateTestAppointmentSuccess,\n updateTestAppointmentFail,\n addCollectionPointTestAppointmentFail,\n addCollectionPointTestAppointmentSuccess,\n getLabTokenSuccess,\n getLabTokenFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getLabProfile,\n getLabToken,\n getTestAppointmentsPendingList,\n getTestAppointmentsInProcessList,\n getTestAppointmentsCompletedList,\n updateTestAppointment,\n addNewCollectionPointTestAppointment,\n\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchLabProfile(object) {\n try {\n const response = yield call(getLabProfile, object.payload);\n yield put(getLabProfileSuccess(response));\n\n } catch (error) {\n yield put(getLabProfileFail(error));\n }\n}\n\nfunction* fetchLabToken(object) {\n try {\n const response = yield call(getLabToken, object.payload);\n yield put(getLabTokenSuccess(response));\n\n } catch (error) {\n yield put(getLabTokenFail(error));\n }\n}\n\nfunction* onAddNewCollectionPointTestAppointment(object) {\n try {\n const response = yield call(\n addNewCollectionPointTestAppointment,\n object.payload.testAppointment,\n object.payload.id\n );\n yield put(addCollectionPointTestAppointmentSuccess(response));\n } catch (error) {\n yield put(addCollectionPointTestAppointmentFail(error));\n }\n}\n\nfunction* fetchTestAppointmentsPendingList(object) {\n try {\n const response = yield call(getTestAppointmentsPendingList, object.payload);\n yield put(getTestAppointmentsPendingListSuccess(response));\n } catch (error) {\n yield put(getTestAppointmentsPendingListFail(error));\n }\n}\n\nfunction* fetchTestAppointmentsInProcessList(object) {\n try {\n const response = yield call(\n getTestAppointmentsInProcessList,\n object.payload\n );\n yield put(getTestAppointmentsInProcessListSuccess(response));\n } catch (error) {\n yield put(getTestAppointmentsInProcessListFail(error));\n }\n}\n\nfunction* fetchTestAppointmentsCompletedList(object) {\n try {\n const response = yield call(\n getTestAppointmentsCompletedList,\n object.payload\n );\n yield put(getTestAppointmentsCompletedListSuccess(response));\n } catch (error) {\n yield put(getTestAppointmentsCompletedListFail(error));\n }\n}\n\nfunction* onUpdateTestAppointment({ payload: testAppointment }) {\n try {\n const response = yield call(updateTestAppointment, testAppointment);\n yield put(updateTestAppointmentSuccess(response));\n } catch (error) {\n yield put(updateTestAppointmentFail(error));\n }\n}\n\nfunction* TestAppointmentsSaga() {\n yield takeEvery(GET_LAB_PROFILE, fetchLabProfile);\n yield takeEvery(GET_LAB_TOKEN, fetchLabToken); \n yield takeEvery(\n ADD_NEW_COLLECTIONPOINT_TESTAPPOINTMENT,\n onAddNewCollectionPointTestAppointment\n );\n yield takeEvery(\n GET_TEST_APPOINTMENTS_PENDING_LIST,\n fetchTestAppointmentsPendingList\n );\n yield takeEvery(\n GET_TEST_APPOINTMENTS_IN_PROCESS_LIST,\n fetchTestAppointmentsInProcessList\n );\n yield takeEvery(\n GET_TEST_APPOINTMENTS_COMPLETED_LIST,\n fetchTestAppointmentsCompletedList\n );\n yield takeEvery(UPDATE_TEST_APPOINTMENT, onUpdateTestAppointment);\n}\n\nexport default TestAppointmentsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_PATIENT_TEST_APPOINTMENTS_LIST } from \"./actionTypes\";\n\nimport {\n getPatientTestAppointmentsListSuccess,\n getPatientTestAppointmentsListFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getPatientTestAppointmentsList } from \"../../helpers/django_api_helper\";\n\nfunction* fetchPatientTestAppointmentsList(object) {\n try {\n const response = yield call(getPatientTestAppointmentsList, object.payload);\n yield put(getPatientTestAppointmentsListSuccess(response));\n } catch (error) {\n yield put(getPatientTestAppointmentsListFail(error));\n }\n}\n\nfunction* PatientTestAppointmentsSaga() {\n yield takeEvery(\n GET_PATIENT_TEST_APPOINTMENTS_LIST,\n fetchPatientTestAppointmentsList\n );\n}\n\nexport default PatientTestAppointmentsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_B2B_REFERRED_PATIENTS_LIST } from \"./actionTypes\";\n\nimport {\n getB2bReferredPatientsListSuccess,\n getB2bReferredPatientsListFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getB2bReferredPatientsList } from \"../../helpers/django_api_helper\";\n\nfunction* fetchB2bReferredPatientsList(object) {\n try {\n const response = yield call(getB2bReferredPatientsList, object.payload);\n yield put(getB2bReferredPatientsListSuccess(response));\n } catch (error) {\n yield put(getB2bReferredPatientsListFail(error));\n }\n}\n\nfunction* B2bReferredPatientsSaga() {\n yield takeEvery(\n GET_B2B_REFERRED_PATIENTS_LIST,\n fetchB2bReferredPatientsList\n );\n}\n\nexport default B2bReferredPatientsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_DONOR_REFERRED_APPOINTMENTS_LIST } from \"./actionTypes\";\n\nimport {\n getDonorReferredAppointmentsListSuccess,\n getDonorReferredAppointmentsListFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getDonorReferredAppointmentsList } from \"../../helpers/django_api_helper\";\n\nfunction* fetchDonorReferredAppointmentsList(object) {\n try {\n const response = yield call(getDonorReferredAppointmentsList, object.payload);\n yield put(getDonorReferredAppointmentsListSuccess(response));\n } catch (error) {\n yield put(getDonorReferredAppointmentsListFail(error));\n }\n}\n\nfunction* DonorReferredAppointmentsSaga() {\n yield takeEvery(\n GET_DONOR_REFERRED_APPOINTMENTS_LIST,\n fetchDonorReferredAppointmentsList\n );\n}\n\nexport default DonorReferredAppointmentsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n // GET_DONOR_PAYMENTS,\n ADD_NEW_DONOR_PAYMENT,\n} from \"./actionTypes\";\n\nimport {\n // getDonorPaymentsSuccess,\n // getDonorPaymentsFail,\n addDonorPaymentFail,\n addDonorPaymentSuccess,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n // getDonorPayments,\n addNewDonorPayment,\n} from \"../../helpers/django_api_helper\";\n\n// function* fetchDonorPayments(object) {\n// try {\n// const response = yield call(getDonorPayments, object.payload);\n// yield put(getDonorPaymentsSuccess(response));\n// } catch (error) {\n// yield put(getDonorPaymentsFail(error));\n// }\n// }\n\nfunction* onAddNewDonorPayment(object) {\n try {\n const response = yield call(\n addNewDonorPayment,\n object.payload.donorPayment,\n object.payload.id\n );\n yield put(addDonorPaymentSuccess(response));\n } catch (error) {\n yield put(addDonorPaymentFail(error));\n }\n}\n\nfunction* donorPaymentSaga() {\n // yield takeEvery(GET_DONOR_PAYMENTS, fetchDonorPayments);\n yield takeEvery(ADD_NEW_DONOR_PAYMENT, onAddNewDonorPayment);\n}\n\nexport default donorPaymentSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n // GET_B2B_PAYMENTS,\n ADD_NEW_B2B_PAYMENT,\n} from \"./actionTypes\";\n\nimport {\n // getB2bPaymentsSuccess,\n // getB2bPaymentsFail,\n addB2bPaymentFail,\n addB2bPaymentSuccess,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n // getB2bPayments,\n addNewB2bPayment,\n} from \"../../helpers/django_api_helper\";\n\n// function* fetchB2bPayments(object) {\n// try {\n// const response = yield call(getB2bPayments, object.payload);\n// yield put(getB2bPaymentsSuccess(response));\n// } catch (error) {\n// yield put(getB2bPaymentsFail(error));\n// }\n// }\n\nfunction* onAddNewB2bPayment(object) {\n try {\n const response = yield call(\n addNewB2bPayment,\n object.payload.b2bPayment,\n object.payload.id\n );\n yield put(addB2bPaymentSuccess(response));\n } catch (error) {\n yield put(addB2bPaymentFail(error));\n }\n}\n\nfunction* b2bPaymentSaga() {\n // yield takeEvery(GET_B2B_PAYMENTS, fetchB2bPayments);\n yield takeEvery(ADD_NEW_B2B_PAYMENT, onAddNewB2bPayment);\n}\n\nexport default b2bPaymentSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_B2B_LAB_SHARES_LIST, GET_B2B_SHARES_LAB_LIST, GET_LABS, ADD_NEW_LAB_SHARE,\n UPDATE_LAB_SHARE, UPDATE_ALL_LAB_SHARE } from \"./actionTypes\";\n\nimport {\n getLabsSuccess,\n getLabsFail,\n getB2bLabSharesListSuccess,\n getB2bLabSharesListFail,\n getB2bSharesLabListSuccess,\n getB2bSharesLabListFail,\n updateLabShareSuccess,\n updateLabShareFail,\n addLabShareFail,\n addLabShareSuccess,\n updateAllLabShareSuccess,\n updateAllLabShareFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getB2bLabSharesList, getB2bSharesLabList, getLabs,\n addNewLabShare,\n updateLabShare, updateAllLabShare } from \"../../helpers/django_api_helper\";\n\nfunction* fetchLabs() {\n try {\n const response = yield call(getLabs);\n yield put(getLabsSuccess(response));\n } catch (error) {\n yield put(getLabsFail(error));\n }\n}\n\nfunction* fetchB2bLabSharesList(object) {\n try {\n const response = yield call(getB2bLabSharesList, object.payload);\n yield put(getB2bLabSharesListSuccess(response));\n } catch (error) {\n yield put(getB2bLabSharesListFail(error));\n }\n}\nfunction* fetchB2bSharesLabList(object) {\n try {\n const response = yield call(getB2bSharesLabList, object.payload);\n yield put(getB2bSharesLabListSuccess(response));\n } catch (error) {\n yield put(getB2bSharesLabListFail(error));\n }\n}\n\nfunction* onUpdateLabShare(object) {\n try {\n const response = yield call(updateLabShare, object.payload);\n yield put(updateLabShareSuccess(response));\n } catch (error) {\n yield put(updateLabShareFail(error));\n }\n}\n\nfunction* onUpdateAllLabShare(object) {\n try {\n const response = yield call(updateAllLabShare, object.payload);\n yield put(updateAllLabShareSuccess(response));\n } catch (error) {\n yield put(updateAllLabShareFail(error));\n }\n}\nfunction* onAddNewLabShare(object) {\n try {\n const response = yield call(\n addNewLabShare,\n object.payload.b2bLabShare,\n object.payload.id\n );\n yield put(addLabShareSuccess(response));\n } catch (error) {\n yield put(addLabShareFail(error));\n }\n}\nfunction* B2bLabSharesSaga() {\n yield takeEvery(\n GET_B2B_LAB_SHARES_LIST,\n fetchB2bLabSharesList\n \n );\n yield takeEvery(\n GET_B2B_SHARES_LAB_LIST,\n fetchB2bSharesLabList\n \n );\n yield takeEvery(GET_LABS, fetchLabs);\n yield takeEvery(UPDATE_LAB_SHARE, onUpdateLabShare);\n yield takeEvery(UPDATE_ALL_LAB_SHARE, onUpdateAllLabShare);\n yield takeEvery(ADD_NEW_LAB_SHARE, onAddNewLabShare);\n\n\n}\n\nexport default B2bLabSharesSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_B2B_ALL_CLIENTS_LIST } from \"./actionTypes\";\n\nimport {\n getB2bAllClientsListSuccess,\n getB2bAllClientsListFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getB2bAllClientsList } from \"../../helpers/django_api_helper\";\n\nfunction* fetchB2bAllClientsList(object) {\n try {\n const response = yield call(getB2bAllClientsList, object.payload);\n yield put(getB2bAllClientsListSuccess(response));\n } catch (error) {\n yield put(getB2bAllClientsListFail(error));\n }\n}\n\nfunction* B2bAllClientsSaga() {\n yield takeEvery(\n GET_B2B_ALL_CLIENTS_LIST,\n fetchB2bAllClientsList\n );\n}\n\nexport default B2bAllClientsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { ADD_NEW_PATIENT_FEEDBACK } from \"./actionTypes\";\n\nimport { addPatientFeedbackFail, addPatientFeedbackSuccess } from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { addNewPatientFeedback } from \"../../helpers/django_api_helper\";\n\nfunction* onAddNewPatientFeedback(object) {\n try {\n const response = yield call(\n addNewPatientFeedback,\n object.payload.patientFeedback\n );\n yield put(addPatientFeedbackSuccess(response));\n } catch (error) {\n yield put(addPatientFeedbackFail(error));\n }\n}\n\nfunction* patientFeedbackSaga() {\n yield takeEvery(ADD_NEW_PATIENT_FEEDBACK, onAddNewPatientFeedback);\n}\n\nexport default patientFeedbackSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// LabMarket Redux States\nimport {\n GET_HOME_SAMPLED_TESTS,\n GET_CHECKOUT_ITEMS,\n ADD_CHECKOUT_DATA,\n GET_DONATION_CHECK,\n} from \"./actionTypes\";\nimport {\n getHomeSampledTestsFail,\n getHomeSampledTestsSuccess,\n getDonationCheckFail,\n getDonationCheckSuccess,\n getCheckoutItemsFail,\n getCheckoutItemsSuccess,\n addCheckoutDataSuccess,\n addCheckoutDataFail,\n} from \"./actions\";\n\n// Include Helper File with needed methods\nimport {\n getHomeSampledTests,\n getCheckoutItems,\n addCheckoutData,\n getDonationCheck,\n} from \"helpers/django_api_helper\";\n\nfunction* fetchHomeSampledTests(object) {\n try {\n const response = yield call(getHomeSampledTests, object.payload);\n yield put(getHomeSampledTestsSuccess(response.data));\n } catch (error) {\n yield put(getHomeSampledTestsFail(error));\n }\n}\nfunction* fetchDonationCheck(object) {\n try {\n const response = yield call(getDonationCheck, object.payload);\n yield put(getDonationCheckSuccess(response.data));\n } catch (error) {\n yield put(getDonationCheckFail(error));\n }\n}\nfunction* fetchCheckoutItems(object) {\n try {\n const response = yield call(\n getCheckoutItems,\n object.payload.id,\n object.payload.is_home_sampling_availed,\n object.payload.is_state_sampling_availed,\n );\n console.log(\"object saga\",object)\n yield put(getCheckoutItemsSuccess(response.data));\n } catch (error) {\n yield put(getCheckoutItemsFail(error));\n }\n}\n\nfunction* onAddCheckoutData(object) {\n try {\n const response = yield call(\n addCheckoutData,\n object.payload.checkoutData,\n object.payload.id\n );\n yield put(addCheckoutDataSuccess(response.data));\n } catch (error) {\n yield put(addCheckoutDataFail(error));\n }\n}\n\nfunction* checkoutSaga() {\n yield takeEvery(GET_HOME_SAMPLED_TESTS, fetchHomeSampledTests);\n yield takeEvery(GET_DONATION_CHECK, fetchDonationCheck);\n yield takeEvery(GET_CHECKOUT_ITEMS, fetchCheckoutItems);\n yield takeEvery(ADD_CHECKOUT_DATA, onAddCheckoutData);\n}\n\nexport default checkoutSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n // GET_CREATE_BANKS,\n ADD_NEW_CREATE_BANK,\n UPDATE_BANK,\n GET_BANKS,\n} from \"./actionTypes\";\n\nimport {\n // getCreateBanksSuccess,\n // getCreateBanksFail,\n getBanksSuccess,\n getBanksFail,\n addCreateBankFail,\n addCreateBankSuccess,\n updateBankSuccess,\n updateBankFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n // getCreateBanks,\n addNewCreateBank,\n updateBank,\n getBanks,\n} from \"../../helpers/django_api_helper\";\n\n// function* fetchCreateBanks(object) {\n// try {\n// const response = yield call(getCreateBanks, object.payload);\n// yield put(getCreateBanksSuccess(response));\n// } catch (error) {\n// yield put(getCreateBanksFail(error));\n// }\n// }\nfunction* fetchBanks() {\n try {\n const response = yield call(getBanks);\n yield put(getBanksSuccess(response));\n } catch (error) {\n yield put(getBanksFail(error));\n }\n}\n\nfunction* onAddNewCreateBank(object) {\n try {\n const response = yield call(\n addNewCreateBank,\n object.payload.createBank,\n object.payload.id\n );\n yield put(addCreateBankSuccess(response));\n } catch (error) {\n yield put(addCreateBankFail(error));\n }\n}\nfunction* onUpdateBank({ payload: bank }) {\n try {\n const response = yield call(updateBank, bank);\n yield put(updateBankSuccess(response));\n } catch (error) {\n yield put(updateBankFail(error));\n }\n}\n\nfunction* createBankSaga() {\n // yield takeEvery(GET_CREATE_BANKS, fetchCreateBanks);\n yield takeEvery(GET_BANKS, fetchBanks);\n yield takeEvery(ADD_NEW_CREATE_BANK, onAddNewCreateBank);\n yield takeEvery(UPDATE_BANK, onUpdateBank);\n\n}\n\nexport default createBankSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_LABCORPORATE,\n GET_ALABCORPORATE,\n GET_ACORPORATE,\n GET_RFEECORPORATE,\n GET_EMPLOYEECORPORATE,\n GET_LABSCORPORATE,\n ADD_NEW_CEMPLOYEE_DATA,\n ADD_NEW_CEMPLOYEE_FILE,\n UPDATE_CEMPLOYEE,\n DELETE_CEDATA,\n\n} from \"./actionTypes\";\n\nimport {\n getLabCorporateSuccess,\n getLabCorporateFail,\n getALabCorporateSuccess,\n getALabCorporateFail,\n getACorporateSuccess,\n getACorporateFail,\n getRFeeCorporateSuccess,\n getRFeeCorporateFail,\n getEmployeeCorporateSuccess,\n getEmployeeCorporateFail,\n getLabsCorporateSuccess,\n getLabsCorporateFail,\n addCemployeeDataFail,\n addCemployeeDataSuccess,\n addCemployeefileFail,\n addCemployeefileSuccess,\n updateCemployeeSuccess,\n updateCemployeeFail,\n deletecedataSuccess,\n deletecedataFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getLabCorporate,\n getALabCorporate,\n getACorporate,\n getRFeeCorporate,\n getEmployeeCorporate,\n getLabsCorporate,\n addNewCemployeeData,\n addNewCemployeefile,\n updateCemployee,\n deletecedata,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchLabCorporate(object) {\n try {\n const response = yield call(getLabCorporate, object.payload);\n yield put(getLabCorporateSuccess(response));\n } catch (error) {\n yield put(getLabCorporateFail(error));\n }\n}\nfunction* fetchALabCorporate(object) {\n try {\n const response = yield call(getALabCorporate, object.payload);\n yield put(getALabCorporateSuccess(response));\n } catch (error) {\n yield put(getALabCorporateFail(error));\n }\n}\nfunction* fetchACorporate(object) {\n try {\n const response = yield call(getACorporate, object.payload);\n yield put(getACorporateSuccess(response));\n } catch (error) {\n yield put(getACorporateFail(error));\n }\n}\nfunction* fetchRFeeCorporate(object) {\n try {\n const response = yield call(getRFeeCorporate, object.payload);\n yield put(getRFeeCorporateSuccess(response));\n } catch (error) {\n yield put(getRFeeCorporateFail(error));\n }\n}\nfunction* fetchEmployeeCorporate(object) {\n try {\n const response = yield call(getEmployeeCorporate, object.payload);\n yield put(getEmployeeCorporateSuccess(response));\n } catch (error) {\n yield put(getEmployeeCorporateFail(error));\n }\n}\n\nfunction* fetchLabsCorporate(object) {\n try {\n const response = yield call(getLabsCorporate, object.payload);\n yield put(getLabsCorporateSuccess(response));\n } catch (error) {\n yield put(getLabsCorporateFail(error));\n }\n}\n\nfunction* onAddNewCemployeeData(object) {\n try {\n const response = yield call(\n addNewCemployeeData,\n object.payload.cemployeeData,\n object.payload.id\n );\n yield put(addCemployeeDataSuccess(response));\n } catch (error) {\n yield put(addCemployeeDataFail(error));\n }\n}\nfunction* onAddNewCemployeefile(object) {\n console.log(\"saga responce\", object)\n\n try {\n const response = yield call(\n addNewCemployeefile,\n object.payload.cemployeeData,\n );\n yield put(addCemployeefileSuccess(response));\n } catch (error) {\n yield put(addCemployeefileFail(error));\n }\n}\nfunction* onUpdateCemployee({ payload: cemployee }) {\n try {\n const response = yield call(updateCemployee, cemployee);\n yield put(updateCemployeeSuccess(response));\n } catch (error) {\n yield put(updateCemployeeFail(error));\n }\n}\nfunction* onDeleteCedata({ payload: cemployee }) {\n try {\n const response = yield call(deletecedata, cemployee);\n yield put(deletecedataSuccess(response));\n } catch (error) {\n yield put(deletecedataFail(error));\n }\n}\nfunction* cemployeeDataSaga() {\n yield takeEvery(GET_LABCORPORATE, fetchLabCorporate);\n yield takeEvery(GET_ALABCORPORATE, fetchALabCorporate);\n yield takeEvery(GET_ACORPORATE, fetchACorporate);\n yield takeEvery(GET_RFEECORPORATE, fetchRFeeCorporate);\n yield takeEvery(GET_EMPLOYEECORPORATE, fetchEmployeeCorporate);\n yield takeEvery(GET_LABSCORPORATE, fetchLabsCorporate);\n yield takeEvery(ADD_NEW_CEMPLOYEE_DATA, onAddNewCemployeeData);\n yield takeEvery(ADD_NEW_CEMPLOYEE_FILE, onAddNewCemployeefile);\n yield takeEvery(UPDATE_CEMPLOYEE, onUpdateCemployee);\n yield takeEvery(DELETE_CEDATA, onDeleteCedata);\n\n\n}\n\nexport default cemployeeDataSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_BANKS,\n GET_BANK_ACCOUNTS,\n ADD_NEW_BANK_ACCOUNT,\n} from \"./actionTypes\";\n\nimport {\n getBankAccountsSuccess,\n getBankAccountsFail,\n getBanksSuccess,\n getBanksFail,\n addBankAccountFail,\n addBankAccountSuccess,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getBankAccounts,\n getBanks,\n addNewBankAccount,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchBankAccounts(object) {\n try {\n const response = yield call(getBankAccounts, object.payload);\n yield put(getBankAccountsSuccess(response));\n } catch (error) {\n yield put(getBankAccountsFail(error));\n }\n}\nfunction* fetchBanks() {\n try {\n const response = yield call(getBanks);\n yield put(getBanksSuccess(response));\n } catch (error) {\n yield put(getBanksFail(error));\n }\n}\nfunction* onAddNewBankAccount(object) {\n try {\n const response = yield call(\n addNewBankAccount,\n object.payload.bankAccount,\n object.payload.id\n );\n yield put(addBankAccountSuccess(response));\n } catch (error) {\n yield put(addBankAccountFail(error));\n }\n}\n\nfunction* bankAccountSaga() {\n yield takeEvery(GET_BANKS, fetchBanks);\n yield takeEvery(GET_BANK_ACCOUNTS, fetchBankAccounts);\n yield takeEvery(ADD_NEW_BANK_ACCOUNT, onAddNewBankAccount);\n}\n\nexport default bankAccountSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_INVOICE_DETAIL,GET_TESTS_IN_APPOINTMENTS, UPDATE_PAYMENT_INFO ,DELETE_TESTS_IN_APPOINTMENTS} from \"./actionTypes\";\nimport {\n getInvoiceDetailSuccess,\n getInvoiceDetailFail,\n getTestsInAppointmentSuccess,\n getTestsInAppointmentFail,\n updatePaymentInfoSuccess,\n updatePaymentInfoFail,\n deleteTestsInAppointmentFail,\n deleteTestsInAppointmentSuccess,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getInvoiceDetail,getTestsInAppointment,deleteTestsInAppointment} from \"helpers/django_api_helper\";\n\nfunction* fetchInvoiceDetail(object) {\n try {\n const response = yield call(getInvoiceDetail, object.payload);\n console.log(\"response\", response)\n yield put(getInvoiceDetailSuccess(response));\n } catch (error) {\n yield put(getInvoiceDetailFail(error));\n }\n}\n\nfunction* fetchTestsInAppointments(object) {\n try {\n const response = yield call(getTestsInAppointment, object.payload);\n console.log(\"response\", response)\n yield put(getTestsInAppointmentSuccess(response));\n } catch (error) {\n yield put(getTestsInAppointmentFail(error));\n }\n}\n\nfunction* onDeleteCedata({ payload: cemployee }) {\n try {\n const response = yield call(deleteTestsInAppointment, cemployee);\n yield put(deleteTestsInAppointmentSuccess(response));\n } catch (error) {\n yield put(deleteTestsInAppointmentFail(error));\n }\n}\n\nfunction* onUpdatePaymentInfo(object) {\n try {\n const response = yield call(updatePaymentInfo, object.payload);\n yield put(updatePaymentInfoSuccess(response));\n } catch (error) {\n yield put(updatePaymentInfoFail(error));\n }\n}\n\nfunction* invoiceSaga() {\n yield takeEvery(GET_INVOICE_DETAIL, fetchInvoiceDetail);\n yield takeEvery(GET_TESTS_IN_APPOINTMENTS, fetchTestsInAppointments);\n yield takeEvery(DELETE_TESTS_IN_APPOINTMENTS, onDeleteCedata);\n yield takeEvery(UPDATE_PAYMENT_INFO, onUpdatePaymentInfo);\n}\n\nexport default invoiceSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_ADV_INVOICE,\n} from \"./actionTypes\";\n\nimport {\n getAdvInvoiceSuccess,\n getAdvInvoiceFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getAdvInvoice,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchAdvInvoice(object) {\n try {\n const response = yield call(getAdvInvoice, object.payload);\n yield put(getAdvInvoiceSuccess(response));\n } catch (error) {\n yield put(getAdvInvoiceFail(error));\n }\n}\n\nfunction* advinvoiceSaga() {\n yield takeEvery(GET_ADV_INVOICE, fetchAdvInvoice);\n}\n\nexport default advinvoiceSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_ACCEPTED_LAB_ADVERTISEMENTS,\n GET_IN_PAYMENT, \n GET_LABS,\n GET_DONORS,\n ADD_NEW_IN_PAYMENT,\n GET_STAFF_PROFILE,\n} from \"./actionTypes\";\n\nimport {\n getStaffProfileSuccess,\n getStaffProfileFail,\n getAcceptedLabAdvertisementsSuccess,\n getAcceptedLabAdvertisementsFail,\n getLabsSuccess,\n getLabsFail,\n getDonorsSuccess,\n getDonorsFail,\n getInPaymentSuccess,\n getInPaymentFail,\n addInPaymentFail,\n addInPaymentSuccess,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getInPayment, getStaffProfile,\n getLabs, getDonors, getAcceptedLabAdvertisements,\n addNewInPayment,\n } from \"../../helpers/django_api_helper\";\n\n//Include Both Helper File with needed methods\n// import {\n// // getInPayment,\n// addNewInPayment,\n// } from \"../../helpers/django_api_helper\";\n\n// function* fetchInPayments(object) {\n// try {\n// const response = yield call(getInPayment, object.payload);\n// yield put(getInPaymentSuccess(response));\n// } catch (error) {\n// yield put(getInPaymentFail(error));\n// }\n// }\nfunction* fetchStaffProfile(object) {\n console.log(\"Saga: \", object);\n try {\n const response = yield call(getStaffProfile, object.payload);\n yield put(getStaffProfileSuccess(response));\n } catch (error) {\n yield put(getStaffProfileFail(error));\n }\n}\nfunction* fetchLabAdvertisements() {\n try {\n const response = yield call(getAcceptedLabAdvertisements);\n console.log (\"advertisement saga: \", response);\n yield put(getAcceptedLabAdvertisementsSuccess(response));\n } catch (error) {\n yield put(getAcceptedLabAdvertisementsFail(error));\n }\n}\nfunction* fetchLabs() {\n try {\n const response = yield call(getLabs);\n yield put(getLabsSuccess(response));\n } catch (error) {\n yield put(getLabsFail(error));\n }\n}\nfunction* fetchDonors() {\n try {\n const response = yield call(getDonors);\n yield put(getDonorsSuccess(response));\n } catch (error) {\n yield put(getDonorsFail(error));\n }\n}\nfunction* fetchInPayments(object) {\n try {\n const response = yield call(getInPayment, object.payload);\n yield put(getInPaymentSuccess(response));\n } catch (error) {\n yield put(getInPaymentFail(error));\n }\n}\n\nfunction* onAddNewInPayment(object) {\n try {\n const response = yield call(\n addNewInPayment,\n object.payload.inPayment,\n object.payload.id\n );\n yield put(addInPaymentSuccess(response));\n } catch (error) {\n yield put(addInPaymentFail(error));\n }\n}\n\nfunction* inPaymentSaga() {\n yield takeEvery(GET_STAFF_PROFILE, fetchStaffProfile);\n yield takeEvery(GET_ACCEPTED_LAB_ADVERTISEMENTS, fetchLabAdvertisements);\n yield takeEvery(GET_IN_PAYMENT,fetchInPayments);\n yield takeEvery(GET_LABS, fetchLabs);\n yield takeEvery(GET_DONORS, fetchDonors);\n yield takeEvery(ADD_NEW_IN_PAYMENT, onAddNewInPayment);\n}\n\nexport default inPaymentSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_OUT_PAYMENT, \n GET_LABS_MOF,\n GET_LABS_C,\n GET_LIST_DONATIONAPPOINTMENT,\n GET_LIST_CLABS,\n GET_LIST_INVOICE,\n GET_BANKS,\n GET_BANK_ACCOUNTS,\n GET_B2B_CLIENTS,\n ADD_NEW_OUT_PAYMENT,\n ADD_NEW_CORPORATE_PAYMENT,\n ADD_NEW_INVOICE_ADJUSTMENT,\n GET_STAFF_PROFILE,\n GET_CORPORATE_PROFILE\n\n} from \"./actionTypes\";\n\nimport {\n getStaffProfileSuccess,\n getStaffProfileFail,\n getCorporateProfileforpaymentSuccess,\n getCorporateProfileforpaymentFail,\n getLabsMofSuccess,\n getLabsMofFail,\n getLabscSuccess,\n getLabscFail,\n getListDonationAppointmentSuccess,\n getListDonationAppointmentFail,\n getListCLabsSuccess,\n getListCLabsFail,\n getListInvoiceSuccess,\n getListInvoiceFail,\n getBankAccountsSuccess,\n getBankAccountsFail,\n getBanksSuccess,\n getBanksFail,\n getB2bClientsSuccess,\n getB2bClientsFail,\n getOutPaymentSuccess,\n getOutPaymentFail,\n addOutPaymentFail,\n addOutPaymentSuccess,\n addCorporatePaymentFail,\n addCorporatePaymentSuccess,\n addInvoiceAdjustmentFail,\n addInvoiceAdjustmentSuccess,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getOutPayment, getLabsMof, getCorporateProfileforpayment, getLabsc ,getListDonationAppointment, getListCLabs, getListInvoice, getStaffProfile, getBanks, getBankAccounts,\n addNewCorporatePayment,\n addNewOutPayment,\n addNewInvoiceAdjustment,\n getB2bClients, \n } from \"../../helpers/django_api_helper\";\n\n function* fetchBankAccounts() {\n try {\n const response = yield call(getBankAccounts);\n yield put(getBankAccountsSuccess(response));\n } catch (error) {\n yield put(getBankAccountsFail(error));\n }\n}\n\nfunction* fetchStaffProfile(object) {\n console.log(\"Saga: \", object);\n try {\n const response = yield call(getStaffProfile, object.payload);\n yield put(getStaffProfileSuccess(response));\n } catch (error) {\n yield put(getStaffProfileFail(error));\n }\n}\nfunction* fetchCorporateProfileforpayment(object) {\n console.log(\"Saga: \", object);\n try {\n const response = yield call(getCorporateProfileforpayment, object.payload);\n yield put(getCorporateProfileforpaymentSuccess(response));\n } catch (error) {\n yield put(getCorporateProfileforpaymentFail(error));\n }\n}\n\n//Include Both Helper File with needed methods\n// import {\n// // getOutPayment,\n// addNewOutPayment,\n// } from \"../../helpers/django_api_helper\";\n\n// function* fetchOutPayments(object) {\n// try {\n// const response = yield call(getOutPayment, object.payload);\n// yield put(getOutPaymentSuccess(response));\n// } catch (error) {\n// yield put(getOutPaymentFail(error));\n// }\n// }\nfunction* fetchBanks() {\n try {\n const response = yield call(getBanks);\n yield put(getBanksSuccess(response));\n } catch (error) {\n yield put(getBanksFail(error));\n }\n}\nfunction* fetchLabsMof() {\n try {\n const response = yield call(getLabsMof);\n yield put(getLabsMofSuccess(response));\n } catch (error) {\n yield put(getLabsMofFail(error));\n }\n}\nfunction* fetchLabsc(object) {\n try {\n const response = yield call(getLabsc, object.payload);\n yield put(getLabscSuccess(response));\n } catch (error) {\n yield put(getLabscFail(error));\n }\n}\nfunction* fetchListDonationAppointment() {\n try {\n const response = yield call(getListDonationAppointment);\n yield put(getListDonationAppointmentSuccess(response));\n } catch (error) {\n yield put(getListDonationAppointmentFail(error));\n }\n}\n\nfunction* fetchListCLabs() {\n try {\n const response = yield call(getListCLabs);\n yield put(getListCLabsSuccess(response));\n } catch (error) {\n yield put(getListCLabsFail(error));\n }\n}\n\nfunction* fetchListInvoice() {\n try {\n const response = yield call(getListInvoice);\n yield put(getListInvoiceSuccess(response));\n } catch (error) {\n yield put(getListInvoiceFail(error));\n }\n}\n\nfunction* fetchB2bAllClientsList(object) {\n try {\n const response = yield call(getB2bClients, object.payload);\n yield put(getB2bClientsSuccess(response));\n } catch (error) {\n yield put(getB2bClientsFail(error));\n }\n}\nfunction* fetchOutPayments(object) {\n try {\n const response = yield call(getOutPayment, object.payload);\n yield put(getOutPaymentSuccess(response));\n } catch (error) {\n yield put(getOutPaymentFail(error));\n }\n}\n\nfunction* onAddNewOutPayment(object) {\n try {\n const response = yield call(\n addNewOutPayment,\n object.payload.outPayment,\n object.payload.id\n );\n yield put(addOutPaymentSuccess(response));\n } catch (error) {\n yield put(addOutPaymentFail(error));\n }\n}\nfunction* onAddNewCorporatePayment(object) {\n console.log(\"add corporate payment Saga: \", object);\n\n try {\n const response = yield call(\n addNewCorporatePayment,\n object.payload.outPayment,\n object.payload.id\n );\n yield put(addCorporatePaymentSuccess(response));\n } catch (error) {\n yield put(addCorporatePaymentFail(error));\n }\n}\n\nfunction* onAddNewInvoiceAdjustment(object) {\n try {\n const response = yield call(\n addNewInvoiceAdjustment,\n object.payload.outPayment,\n object.payload.id\n );\n yield put(addInvoiceAdjustmentSuccess(response));\n } catch (error) {\n yield put(addInvoiceAdjustmentFail(error));\n }\n}\n\nfunction* outPaymentSaga() {\n yield takeEvery(GET_CORPORATE_PROFILE, fetchCorporateProfileforpayment);\n yield takeEvery(GET_STAFF_PROFILE, fetchStaffProfile);\n yield takeEvery(GET_BANKS, fetchBanks);\n yield takeEvery(GET_BANK_ACCOUNTS, fetchBankAccounts);\n yield takeEvery(GET_OUT_PAYMENT,fetchOutPayments);\n yield takeEvery(GET_LABS_MOF, fetchLabsMof);\n yield takeEvery(GET_LABS_C, fetchLabsc);\n yield takeEvery(GET_LIST_DONATIONAPPOINTMENT, fetchListDonationAppointment);\n yield takeEvery(GET_LIST_CLABS, fetchListCLabs);\n yield takeEvery(GET_LIST_INVOICE, fetchListInvoice);\n yield takeEvery(\n GET_B2B_CLIENTS,\n fetchB2bAllClientsList\n ); \n yield takeEvery(ADD_NEW_OUT_PAYMENT, onAddNewOutPayment);\n yield takeEvery(ADD_NEW_CORPORATE_PAYMENT, onAddNewCorporatePayment);\n yield takeEvery(ADD_NEW_INVOICE_ADJUSTMENT, onAddNewInvoiceAdjustment);\n}\n\nexport default outPaymentSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_BANK_TRANSFER, \n GET_BANKS,\n GET_BANK_ACCOUNTS,\n ADD_NEW_BANK_TRANSFER,\n UPDATE_BANK_TRANSFER,\n} from \"./actionTypes\";\n\nimport {\n getBankAccountsSuccess,\n getBankAccountsFail,\n getBanksSuccess,\n getBanksFail,\n getBankTransferSuccess,\n getBankTransferFail,\n addBankTransferFail,\n addBankTransferSuccess,\n updateBankTransferSuccess,\n updateBankTransferFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getBankTransfer, getBanks, getBankAccounts, updateBankTransfer,\n addNewBankTransfer,\n } from \"../../helpers/django_api_helper\";\n\n function* fetchBankAccounts() {\n try {\n const response = yield call(getBankAccounts);\n yield put(getBankAccountsSuccess(response));\n } catch (error) {\n yield put(getBankAccountsFail(error));\n }\n}\nfunction* fetchBanks() {\n try {\n const response = yield call(getBanks);\n yield put(getBanksSuccess(response));\n } catch (error) {\n yield put(getBanksFail(error));\n }\n}\n\nfunction* fetchBankTransfers(object) {\n try {\n const response = yield call(getBankTransfer, object.payload);\n yield put(getBankTransferSuccess(response));\n } catch (error) {\n yield put(getBankTransferFail(error));\n }\n}\n\nfunction* onAddNewBankTransfer(object) {\n try {\n const response = yield call(\n addNewBankTransfer,\n object.payload.bankTransfer,\n object.payload.id\n );\n yield put(addBankTransferSuccess(response));\n } catch (error) {\n yield put(addBankTransferFail(error));\n }\n}\n\nfunction* onUpdateBankTransfer({ payload: bankTransfer }) {\n try {\n const response = yield call(updateBankTransfer, bankTransfer);\n yield put(updateBankTransferSuccess(response));\n } catch (error) {\n yield put(updateBankTransferFail(error));\n }\n}\n\nfunction* bankTransferSaga() {\n yield takeEvery(GET_BANKS, fetchBanks);\n yield takeEvery(GET_BANK_ACCOUNTS, fetchBankAccounts);\n yield takeEvery(GET_BANK_TRANSFER,fetchBankTransfers);\n yield takeEvery(ADD_NEW_BANK_TRANSFER, onAddNewBankTransfer);\n yield takeEvery(UPDATE_BANK_TRANSFER, onUpdateBankTransfer);\n\n}\n\nexport default bankTransferSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n ADD_NEW_COMPLAINT,\n GET_LABS,\n GET_HANDLED_COMPLAINTS,\n GET_UNHANDLED_COMPLAINTS,\n UPDATE_UNHANDLED_COMPLAINTS,\n} from \"./actionTypes\";\n\nimport {\n addComplaintFail,\n addComplaintSuccess,\n getLabsSuccess,\n getLabsFail,\n getHandledComplaintsSuccess,\n getHandledComplaintsFail,\n getUnhandledComplaintsSuccess,\n getUnhandledComplaintsFail,\n updateUnhandledComplaintsSuccess,\n updateUnhandledComplaintsFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n addNewComplaint,\n getHandledComplaints,\n getLabs,\n getUnhandledComplaints,\n updateUnhandledComplaints,\n} from \"../../helpers/django_api_helper\";\n\nfunction* onAddNewComplaint(object) {\n try {\n const response = yield call(addNewComplaint, object.payload.complaint);\n yield put(addComplaintSuccess(response.data));\n } catch (error) {\n yield put(addComplaintFail(error));\n }\n}\n\nfunction* fetchHandledComplaints(object) {\n try {\n const response = yield call(getHandledComplaints, object.payload);\n console.log(\"Response: \", response);\n yield put(getHandledComplaintsSuccess(response.data));\n } catch (error) {\n yield put(getHandledComplaintsFail(error));\n }\n}\nfunction* fetchLabs() {\n try {\n const response = yield call(getLabs);\n yield put(getLabsSuccess(response));\n } catch (error) {\n yield put(getLabsFail(error));\n }\n}\nfunction* fetchUnhandledComplaints(object) {\n try {\n const response = yield call(getUnhandledComplaints, object.payload);\n console.log(\"Response: \", response);\n yield put(getUnhandledComplaintsSuccess(response.data));\n } catch (error) {\n yield put(getUnhandledComplaintsFail(error));\n }\n}\nfunction* onUpdateUnhandledComplaints(object) {\n try {\n console.log(\" object.payload: \", object.payload.unhandledComplaints);\n const response = yield call(\n updateUnhandledComplaints,\n object.payload.unhandledComplaints\n );\n yield put(updateUnhandledComplaintsSuccess(response));\n } catch (error) {\n yield put(updateUnhandledComplaintsFail(error));\n }\n}\nfunction* complaintsSaga() {\n yield takeEvery(GET_HANDLED_COMPLAINTS, fetchHandledComplaints);\n yield takeEvery(GET_LABS, fetchLabs);\n yield takeEvery(ADD_NEW_COMPLAINT, onAddNewComplaint);\n yield takeEvery(GET_UNHANDLED_COMPLAINTS, fetchUnhandledComplaints);\n yield takeEvery(UPDATE_UNHANDLED_COMPLAINTS, onUpdateUnhandledComplaints);\n}\n\nexport default complaintsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_CSR_COMPLAINTS,\n UPDATE_CSR_COMPLAINTS,\n} from \"./actionTypes\";\n\nimport {\n getCsrComplaintsSuccess,\n getCsrComplaintsFail,\n updateCsrComplaintsSuccess,\n updateCsrComplaintsFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getCsrComplaints,\n updateCsrComplaints,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchCsrComplaints(object) {\n try {\n const response = yield call(getCsrComplaints, object.payload);\n console.log(\"Response: \", response);\n yield put(getCsrComplaintsSuccess(response.data));\n } catch (error) {\n yield put(getCsrComplaintsFail(error));\n }\n}\n// function* onUpdateCsrComplaints(object) {\n// try {\n// console.log(\" object.payload: \", object.payload.csrComplaints);\n// const response = yield call(\n// updateCsrComplaints,\n// object.payload.csrComplaints\n// );\n// yield put(updateCsrComplaintsSuccess(response));\n// } catch (error) {\n// yield put(updateCsrComplaintsFail(error));\n// }\n// }\nfunction* onUpdateCsrComplaints({ payload: csrComplaint }) {\n try {\n const response = yield call(updateCsrComplaints, csrComplaint);\n yield put(updateCsrComplaintsSuccess(response));\n } catch (error) {\n yield put(updateCsrComplaintsFail(error));\n }\n}\n\nfunction* csrcomplaintsSaga() {\n yield takeEvery(GET_CSR_COMPLAINTS, fetchCsrComplaints);\n yield takeEvery(UPDATE_CSR_COMPLAINTS, onUpdateCsrComplaints);\n}\n\nexport default csrcomplaintsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_CSR_APPOINTMENTS,\n UPDATE_CSR_APPOINTMENTS,\n} from \"./actionTypes\";\n\nimport {\n getCsrAppointmentsSuccess,\n getCsrAppointmentsFail,\n updateCsrAppointmentsSuccess,\n updateCsrAppointmentsFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getCsrAppointments,\n updateCsrAppointments,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchCsrAppointments(object) {\n try {\n const response = yield call(getCsrAppointments, object.payload);\n console.log(\"Response: \", response);\n yield put(getCsrAppointmentsSuccess(response.data));\n } catch (error) {\n yield put(getCsrAppointmentsFail(error));\n }\n}\n// function* onUpdateCsrAppointments(object) {\n// try {\n// console.log(\" object.payload: \", object.payload.csrAppointments);\n// const response = yield call(\n// updateCsrAppointments,\n// object.payload.csrAppointments\n// );\n// yield put(updateCsrAppointmentsSuccess(response));\n// } catch (error) {\n// yield put(updateCsrAppointmentsFail(error));\n// }\n// }\nfunction* onUpdateCsrAppointments({ payload: csrComplaint }) {\n try {\n const response = yield call(updateCsrAppointments, csrComplaint);\n yield put(updateCsrAppointmentsSuccess(response));\n } catch (error) {\n yield put(updateCsrAppointmentsFail(error));\n }\n}\n\nfunction* csrappointmentsSaga() {\n yield takeEvery(GET_CSR_APPOINTMENTS, fetchCsrAppointments);\n yield takeEvery(UPDATE_CSR_APPOINTMENTS, onUpdateCsrAppointments);\n}\n\nexport default csrappointmentsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_NOTES,\n ADD_NEW_NOTE,\n GET_NOTES_COMPLAINT,\n ADD_NEW_NOTE_COMPLAINT,\n} from \"./actionTypes\";\n\nimport {\n getNotesSuccess,\n getNotesFail,\n addNoteFail,\n addNoteSuccess,\n getNotesComplaintSuccess,\n getNotesComplaintFail,\n addNoteComplaintFail,\n addNoteComplaintSuccess,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getNotes,\n addNewNote,\n getNotesComplaint,\n addNewNoteComplaint,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchNotesComplaint(object) {\n try {\n const response = yield call(getNotesComplaint, object.payload);\n yield put(getNotesComplaintSuccess(response));\n } catch (error) {\n yield put(getNotesComplaintFail(error));\n }\n}\n\nfunction* onAddNewNoteComplaint(object) {\n try {\n const response = yield call(\n addNewNoteComplaint,\n object.payload.note,\n object.payload.id\n );\n yield put(addNoteComplaintSuccess(response));\n } catch (error) {\n yield put(addNoteComplaintFail(error));\n }\n}\nfunction* fetchNotes(object) {\n try {\n const response = yield call(getNotes, object.payload);\n yield put(getNotesSuccess(response));\n } catch (error) {\n yield put(getNotesFail(error));\n }\n}\n\nfunction* onAddNewNote(object) {\n try {\n const response = yield call(\n addNewNote,\n object.payload.note,\n object.payload.id\n );\n yield put(addNoteSuccess(response));\n } catch (error) {\n yield put(addNoteFail(error));\n }\n}\n\nfunction* notesSaga() {\n yield takeEvery(GET_NOTES, fetchNotes);\n yield takeEvery(ADD_NEW_NOTE, onAddNewNote);\n yield takeEvery(GET_NOTES_COMPLAINT, fetchNotesComplaint);\n yield takeEvery(ADD_NEW_NOTE_COMPLAINT, onAddNewNoteComplaint);\n}\n\nexport default notesSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_PATIENTS_LIST } from \"./actionTypes\";\n\nimport {\n getPatientsListSuccess,\n getPatientsListFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getPatientsList } from \"../../helpers/django_api_helper\";\n\nfunction* fetchPatientsList(object) {\n try {\n const response = yield call(getPatientsList,\n object.payload.phone,\n );\n yield put(getPatientsListSuccess(response.data));\n } catch (error) {\n yield put(getPatientsListFail(error));\n }\n}\n\nfunction* PatientsSaga() {\n yield takeEvery(\n GET_PATIENTS_LIST,\n fetchPatientsList\n );\n}\n\nexport default PatientsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_TEST_DESCRIPTIONS,\n} from \"./actionTypes\";\n\nimport {\n getTestDescriptionsSuccess,\n getTestDescriptionsFail,\n\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getTestDescriptions,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchTestDescriptions(object) {\n try {\n const response = yield call(getTestDescriptions, object.payload);\n yield put(getTestDescriptionsSuccess(response));\n } catch (error) {\n yield put(getTestDescriptionsFail(error));\n }\n}\n\nfunction* testDescriptionsSaga() {\n yield takeEvery(GET_TEST_DESCRIPTIONS, fetchTestDescriptions);\n}\n\nexport default testDescriptionsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_ACCOUNT_STATEMENTS, GET_BANK_STATEMENTS } from \"./actionTypes\";\n\nimport {\n getAccountStatementsFail,\n getAccountStatementsSuccess,\n getBankStatementsFail,\n getBankStatementsSuccess,\n} from \"./actions\";\n//Include Both Helper File with needed methods\nimport { getAccountStatements, getBankStatements } from \"../../helpers/django_api_helper\";\n\nfunction* fetchAccountStatements(object) {\n try {\n const response = yield call(getAccountStatements, object.payload);\n yield put(getAccountStatementsSuccess(response));\n } catch (error) {\n yield put(getAccountStatementsFail(error));\n }\n}\nfunction* fetchBankStatements(object) {\n try {\n const response = yield call(getBankStatements, object.payload);\n yield put(getBankStatementsSuccess(response));\n } catch (error) {\n yield put(getBankStatementsFail(error));\n }\n}\n\nfunction* AccountStatementsSaga() {\n yield takeEvery(GET_ACCOUNT_STATEMENTS, fetchAccountStatements);\n yield takeEvery(GET_BANK_STATEMENTS, fetchBankStatements);\n}\n\nexport default AccountStatementsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_DONOR_ACCOUNT_STATEMENTS } from \"./actionTypes\";\n\nimport {\n getDonorAccountStatementsFail,\n getDonorAccountStatementsSuccess,\n} from \"./actions\";\n//Include Both Helper File with needed methods\nimport { getDonorAccountStatements } from \"../../helpers/django_api_helper\";\n\nfunction* fetchDonorAccountStatements(object) {\n try {\n const response = yield call(getDonorAccountStatements, object.payload);\n yield put(getDonorAccountStatementsSuccess(response));\n } catch (error) {\n yield put(getDonorAccountStatementsFail(error));\n }\n}\n\nfunction* DonorAccountStatementsSaga() {\n yield takeEvery(GET_DONOR_ACCOUNT_STATEMENTS, fetchDonorAccountStatements);\n}\n\nexport default DonorAccountStatementsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_DONORS_ACCOUNT_STATEMENTS } from \"./actionTypes\";\n\nimport {\n getDonorsAccountStatementsFail,\n getDonorsAccountStatementsSuccess,\n} from \"./actions\";\n//Include Both Helper File with needed methods\nimport { getDonorsAccountStatements } from \"../../helpers/django_api_helper\";\n\nfunction* fetchDonorsAccountStatements(object) {\n try {\n const response = yield call(getDonorsAccountStatements, object.payload);\n yield put(getDonorsAccountStatementsSuccess(response));\n } catch (error) {\n yield put(getDonorsAccountStatementsFail(error));\n }\n}\n\nfunction* DonorsAccountStatementsSaga() {\n yield takeEvery(GET_DONORS_ACCOUNT_STATEMENTS, fetchDonorsAccountStatements);\n}\n\nexport default DonorsAccountStatementsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_B2B_ACCOUNT_STATEMENTS, GET_CLAB_ACCOUNT_STATEMENTS } from \"./actionTypes\";\n\nimport {\n getB2bAccountStatementsFail,\n getB2bAccountStatementsSuccess,\n getCLabAccountStatementsFail,\n getCLabAccountStatementsSuccess,\n} from \"./actions\";\n//Include Both Helper File with needed methods\nimport { getB2bAccountStatements, getCLabAccountStatements } from \"../../helpers/django_api_helper\";\n\nfunction* fetchB2bAccountStatements(object) {\n try {\n const response = yield call(getB2bAccountStatements, object.payload);\n yield put(getB2bAccountStatementsSuccess(response));\n } catch (error) {\n yield put(getB2bAccountStatementsFail(error));\n }\n}\nfunction* fetchCLabAccountStatements(object) {\n try {\n const response = yield call(getCLabAccountStatements, object.payload);\n yield put(getCLabAccountStatementsSuccess(response));\n } catch (error) {\n yield put(getCLabAccountStatementsFail(error));\n }\n}\n\nfunction* B2bAccountStatementsSaga() {\n yield takeEvery(GET_B2B_ACCOUNT_STATEMENTS, fetchB2bAccountStatements);\n yield takeEvery(GET_CLAB_ACCOUNT_STATEMENTS, fetchCLabAccountStatements);\n}\n\nexport default B2bAccountStatementsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_BANK_STATEMENTS } from \"./actionTypes\";\n\nimport {\n getBankStatementsFail,\n getBankStatementsSuccess,\n} from \"./actions\";\n//Include Both Helper File with needed methods\nimport { getBankStatements } from \"../../helpers/django_api_helper\";\n\nfunction* fetchBankStatements(object) {\n try {\n const response = yield call(getBankStatements, object.payload);\n yield put(getBankStatementsSuccess(response));\n } catch (error) {\n yield put(getBankStatementsFail(error));\n }\n}\n\nfunction* BankStatementsSaga() {\n yield takeEvery(GET_BANK_STATEMENTS, fetchBankStatements);\n}\n\nexport default BankStatementsSaga;\n","import {\n GET_BANK_STATEMENTS,\n GET_BANK_STATEMENTS_SUCCESS,\n GET_BANK_STATEMENTS_FAIL,\n} from \"./actionTypes\";\n\nexport const getBankStatements = id => ({\n type: GET_BANK_STATEMENTS,\n payload: id,\n});\n\nexport const getBankStatementsSuccess = bankStatements => ({\n type: GET_BANK_STATEMENTS_SUCCESS,\n payload: bankStatements,\n});\n\nexport const getBankStatementsFail = error => ({\n type: GET_BANK_STATEMENTS_FAIL,\n payload: error,\n});\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_CSR_LIST,\n GET_MARKETERS_LIST,\n GET_TERRITORIES_LIST,\n GET_AUDITOR_LIST,\n GET_FINANCE_OFFICER_LIST,\n ADD_STAFF,\n UPDATE_STAFF,\n DELETE_STAFF,\n} from \"./actionTypes\";\n\nimport {\n getCSRListSuccess,\n getCSRListFail,\n\n getMarketersListSuccess,\n getMarketersListFail,\n getAuditorListSuccess,\n getAuditorListFail,\n getFinanceOfficerListSuccess,\n getFinanceOfficerListFail,\n addStaffSuccess,\n addStaffFail,\n getTerritoriesListSuccess,\n getTerritoriesListFail,\n updateStaffSuccess,\n updateStaffFail,\n deleteStaffSuccess,\n deleteStaffFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getCSRList,\n getMARKETERSList,\n getAuditorList,\n getFinanceOfficerList,\n addStaff,\n updateStaff,\n deleteStaff,\n getTerritoriesList,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchCSRList() {\n try {\n const response = yield call(getCSRList);\n yield put(getCSRListSuccess(response));\n } catch (error) {\n yield put(getCSRListFail(error));\n }\n}\n\nfunction* fetchmaRKETERSList() {\n try {\n const response = yield call(getMARKETERSList);\n yield put(getMarketersListSuccess(response));\n } catch (error) {\n yield put(getMarketersListFail(error));\n }\n}\n\nfunction* fetchTerritoriesList(object) {\n try {\n const response = yield call(getTerritoriesList, object.payload);\n yield put(getTerritoriesListSuccess(response));\n } catch (error) {\n yield put(getTerritoriesListFail(error));\n }\n}\nfunction* fetchAuditorList() {\n try {\n const response = yield call(getAuditorList);\n yield put(getAuditorListSuccess(response));\n } catch (error) {\n yield put(getAuditorListFail(error));\n }\n}\n\nfunction* fetchFinanceOfficerList() {\n try {\n const response = yield call(getFinanceOfficerList);\n yield put(getFinanceOfficerListSuccess(response));\n } catch (error) {\n yield put(getFinanceOfficerListFail(error));\n }\n}\n\n// function* onAddStaff(object) {\n// try {\n// const response = yield call(\n// addStaff,\n// object.payload.staff,\n// object.payload.id\n// );\n// yield put(addStaffSuccess(response.data));\n// } catch (error) {\n// yield put(addStaffFail(error));\n// }\n// }\nfunction* onAddStaff({ payload: { staff, id } }) {\n try {\n const response = yield call(addStaff, id, staff);\n if (response.status == 400) {\n yield put(addStaffFail(response.message));\n } else {\n yield put(addStaffSuccess(response));\n }\n } catch (error) {\n yield put(addStaffFail(error));\n }\n}\n\n\nfunction* onUpdateStaff({ payload: staff }) {\n try {\n const response = yield call(updateStaff, staff);\n yield put(updateStaffSuccess(response));\n } catch (error) {\n yield put(updateStaffFail(error));\n }\n}\n\nfunction* onDeleteStaff({ payload: staff }) {\n try {\n const response = yield call(deleteStaff, staff);\n yield put(deleteStaffSuccess(response));\n } catch (error) {\n yield put(deleteStaffFail(error));\n }\n}\n\nfunction* staffSaga() {\n yield takeEvery(GET_CSR_LIST, fetchCSRList);\n yield takeEvery(GET_MARKETERS_LIST, fetchmaRKETERSList);\n yield takeEvery(GET_AUDITOR_LIST, fetchAuditorList);\n yield takeEvery(GET_FINANCE_OFFICER_LIST, fetchFinanceOfficerList);\n yield takeEvery(ADD_STAFF, onAddStaff);\n yield takeEvery(UPDATE_STAFF, onUpdateStaff);\n yield takeEvery(DELETE_STAFF, onDeleteStaff);\n yield takeEvery(GET_TERRITORIES_LIST,fetchTerritoriesList);\n}\n\nexport default staffSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_ASSIGNED_AUDITS,\n GET_LAB_AUDITS,\n ADD_NEW_AUDIT,\n UPDATE_ASSIGNED_AUDITS,\n GET_AUDITORS_COMPLETED_AUDITS,\n UPDATE_AUDITS_STATUS\n} from \"./actionTypes\";\n\nimport {\n getAssignedAuditsSuccess,\n getAssignedAuditsFail,\n addAuditFail,\n addAuditSuccess,\n getLabAuditsSuccess,\n getLabAuditsFail,\n getAuditorsCompletedAuditsSuccess,\n getAuditorsCompletedAuditsFail,\n updateAssignedAuditsSuccess,\n updateAssignedAuditsFail,\n UpdateAuditStatusSuccess,\n UpdateAuditStatusFail\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getAssignedAudits,\n addNewAudit,\n getLabAudits,\n getAuditorsCompletedAudits,\n updateAssignedAudits,\n UpdateAuditStatus,\n \n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchAssignedAudits(object) {\n try {\n const response = yield call(getAssignedAudits, object.payload);\n yield put(getAssignedAuditsSuccess(response.data));\n } catch (error) {\n yield put(getAssignedAuditsFail(error));\n }\n}\nfunction* onUpdateAuditStatus({ payload: audit }) {\n try {\n const response = yield call(UpdateAuditStatus, audit);\n yield put(UpdateAuditStatusSuccess(response));\n } catch (error) {\n yield put(UpdateAuditStatusFail(error));\n }\n}\n\nfunction* onAddNewAudit(object) {\n console.log(\"data in saga is\", object.payload.audit,object.payload.id )\n try {\n const response = yield call(\n addNewAudit,\n object.payload.audit,\n object.payload.id\n );\n yield put(addAuditSuccess(response));\n } catch (error) {\n yield put(addAuditFail(error));\n \n }\n}\nfunction* fetchLabAudits(object) {\n try {\n const response = yield call(getLabAudits, object.payload);\n yield put(getLabAuditsSuccess(response.data));\n } catch (error) {\n yield put(getLabAuditsFail(error));\n }\n}\n\nfunction* onUpdateAssignedAudits(object) {\n try {\n console.log(\" object.payload: \", object.payload.assignedAudits);\n const response = yield call(\n updateAssignedAudits,\n object.payload.assignedAudits\n );\n yield put(updateAssignedAuditsSuccess(response));\n } catch (error) {\n yield put(updateAssignedAuditsFail(error));\n }\n}\n\nfunction* fetchAuditorsCompletedAudits(object) {\n try {\n const response = yield call(getAuditorsCompletedAudits, object.payload);\n yield put(getAuditorsCompletedAuditsSuccess(response.data));\n } catch (error) {\n yield put(getAuditorsCompletedAuditsFail(error));\n }\n}\nfunction* auditsSaga() {\n yield takeEvery(UPDATE_AUDITS_STATUS, onUpdateAuditStatus);\n yield takeEvery(GET_ASSIGNED_AUDITS, fetchAssignedAudits);\n yield takeEvery(ADD_NEW_AUDIT, onAddNewAudit);\n yield takeEvery(GET_LAB_AUDITS, fetchLabAudits);\n yield takeEvery(GET_AUDITORS_COMPLETED_AUDITS, fetchAuditorsCompletedAudits);\n yield takeEvery(UPDATE_ASSIGNED_AUDITS, onUpdateAssignedAudits);\n}\n\nexport default auditsSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_PENDING_CORPORATE,\n GET_APPROVED_CORPORATE,\n GET_UNAPPROVED_CORPORATE,\n APPROVE_UNAPPROVE_CORPORATE,\n\n GET_PENDING_LABS,\n GET_APPROVED_LABS,\n GET_UNAPPROVED_LABS,\n APPROVE_UNAPPROVE_LAB,\n GET_PENDING_B2B_CLIENTS,\n GET_APPROVED_B2B_CLIENTS,\n GET_UNAPPROVED_B2B_CLIENTS,\n APPROVE_UNAPPROVE_B2B_CLIENT,\n GET_PENDING_DONORS,\n GET_APPROVED_DONORS,\n GET_UNAPPROVED_DONORS,\n APPROVE_UNAPPROVE_DONOR,\n} from \"./actionTypes\";\n\nimport {\n getPendingCorporateSuccess,\n getPendingCorporateFail,\n getApprovedCorporateSuccess,\n getApprovedCorporateFail,\n getUnapprovedCorporateSuccess,\n getUnapprovedCorporateFail,\n approveUnapproveCorporateSuccess,\n approveUnapproveCorporateFail,\n getPendingLabsSuccess,\n getPendingLabsFail,\n getApprovedLabsSuccess,\n getApprovedLabsFail,\n getUnapprovedLabsSuccess,\n getUnapprovedLabsFail,\n approveUnapproveLabSuccess,\n approveUnapproveLabFail,\n getPendingB2BClientsSuccess,\n getPendingB2BClientsFail,\n getApprovedB2BClientsSuccess,\n getApprovedB2BClientsFail,\n getUnapprovedB2BClientsSuccess,\n getUnapprovedB2BClientsFail,\n approveUnapproveB2BClientSuccess,\n approveUnapproveB2BClientFail,\n getPendingDonorsSuccess,\n getPendingDonorsFail,\n getApprovedDonorsSuccess,\n getApprovedDonorsFail,\n getUnapprovedDonorsSuccess,\n getUnapprovedDonorsFail,\n approveUnapproveDonorSuccess,\n approveUnapproveDonorFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getPendingCorporate,\n getApprovedCorporate,\n getUnapprovedCorporate,\n approveUnapproveCorporate,\n\n getPendingLabs,\n approveUnapproveLab,\n getApprovedLabs,\n getUnapprovedLabs,\n getPendingB2BClients,\n approveUnapproveB2BClient,\n getApprovedB2BClients,\n getUnapprovedB2BClients,\n getPendingDonors,\n approveUnapproveDonor,\n getApprovedDonors,\n getUnapprovedDonors,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchPendingCorporate() {\n try {\n const response = yield call(getPendingCorporate);\n yield put(getPendingCorporateSuccess(response));\n } catch (error) {\n yield put(getPendingCorporateFail(error));\n }\n}\nfunction* fetchApprovedCorporate() {\n try {\n const response = yield call(getApprovedCorporate);\n yield put(getApprovedCorporateSuccess(response));\n } catch (error) {\n yield put(getApprovedCorporateFail(error));\n }\n}\nfunction* fetchUnapprovedCorporate() {\n try {\n const response = yield call(getUnapprovedCorporate);\n yield put(getUnapprovedCorporateSuccess(response));\n } catch (error) {\n yield put(getUnapprovedCorporateFail(error));\n }\n}\n\nfunction* onApproveUnapproveCorporate(object) {\n try {\n const response = yield call(approveUnapproveCorporate, object.payload.data);\n yield put(approveUnapproveCorporateSuccess(response));\n } catch (error) {\n yield put(approveUnapproveCorporateFail(error));\n }\n}\n\nfunction* fetchPendingLabs() {\n try {\n const response = yield call(getPendingLabs);\n yield put(getPendingLabsSuccess(response));\n } catch (error) {\n yield put(getPendingLabsFail(error));\n }\n}\n\nfunction* fetchApprovedLabs(object) {\n try {\n const response = yield call(getApprovedLabs, object.payload.id);\n yield put(getApprovedLabsSuccess(response));\n } catch (error) {\n yield put(getApprovedLabsFail(error));\n }\n}\n\nfunction* fetchUnapprovedLabs(object) {\n try {\n const response = yield call(getUnapprovedLabs, object.payload.id);\n yield put(getUnapprovedLabsSuccess(response));\n } catch (error) {\n yield put(getUnapprovedLabsFail(error));\n }\n}\n\nfunction* onApproveUnapproveLab(object) {\n try {\n const response = yield call(approveUnapproveLab, object.payload.data);\n yield put(approveUnapproveLabSuccess(response));\n } catch (error) {\n yield put(approveUnapproveLabFail(error));\n }\n}\n\nfunction* fetchPendingB2BClients() {\n try {\n const response = yield call(getPendingB2BClients);\n yield put(getPendingB2BClientsSuccess(response));\n } catch (error) {\n yield put(getPendingB2BClientsFail(error));\n }\n}\n\nfunction* fetchApprovedB2BClients(object) {\n try {\n const response = yield call(getApprovedB2BClients, object.payload.id);\n yield put(getApprovedB2BClientsSuccess(response));\n } catch (error) {\n yield put(getApprovedB2BClientsFail(error));\n }\n}\n\nfunction* fetchUnapprovedB2BClients(object) {\n try {\n const response = yield call(getUnapprovedB2BClients, object.payload.id);\n yield put(getUnapprovedB2BClientsSuccess(response));\n } catch (error) {\n yield put(getUnapprovedB2BClientsFail(error));\n }\n}\n\nfunction* onApproveUnapproveB2BClient(object) {\n try {\n const response = yield call(approveUnapproveB2BClient, object.payload.data);\n yield put(approveUnapproveB2BClientSuccess(response));\n } catch (error) {\n yield put(approveUnapproveB2BClientFail(error));\n }\n}\n\nfunction* fetchPendingDonors() {\n try {\n const response = yield call(getPendingDonors);\n yield put(getPendingDonorsSuccess(response));\n } catch (error) {\n yield put(getPendingDonorsFail(error));\n }\n}\n\nfunction* fetchApprovedDonors(object) {\n try {\n const response = yield call(getApprovedDonors, object.payload.id);\n yield put(getApprovedDonorsSuccess(response));\n } catch (error) {\n yield put(getApprovedDonorsFail(error));\n }\n}\n\nfunction* fetchUnapprovedDonors(object) {\n try {\n const response = yield call(getUnapprovedDonors, object.payload.id);\n yield put(getUnapprovedDonorsSuccess(response));\n } catch (error) {\n yield put(getUnapprovedDonorsFail(error));\n }\n}\n\nfunction* onApproveUnapproveDonor(object) {\n try {\n const response = yield call(approveUnapproveDonor, object.payload.data);\n yield put(approveUnapproveDonorSuccess(response));\n } catch (error) {\n yield put(approveUnapproveDonorFail(error));\n }\n}\n\nfunction* registrationAdminSaga() {\n yield takeEvery(GET_PENDING_CORPORATE, fetchPendingCorporate);\n yield takeEvery(GET_APPROVED_CORPORATE, fetchApprovedCorporate);\n yield takeEvery(GET_UNAPPROVED_CORPORATE, fetchUnapprovedCorporate);\n yield takeEvery(APPROVE_UNAPPROVE_CORPORATE, onApproveUnapproveCorporate);\n\n yield takeEvery(GET_PENDING_LABS, fetchPendingLabs);\n yield takeEvery(GET_APPROVED_LABS, fetchApprovedLabs);\n yield takeEvery(GET_UNAPPROVED_LABS, fetchUnapprovedLabs);\n yield takeEvery(APPROVE_UNAPPROVE_LAB, onApproveUnapproveLab);\n yield takeEvery(GET_PENDING_B2B_CLIENTS, fetchPendingB2BClients);\n yield takeEvery(GET_APPROVED_B2B_CLIENTS, fetchApprovedB2BClients);\n yield takeEvery(GET_UNAPPROVED_B2B_CLIENTS, fetchUnapprovedB2BClients);\n yield takeEvery(APPROVE_UNAPPROVE_B2B_CLIENT, onApproveUnapproveB2BClient);\n yield takeEvery(GET_PENDING_DONORS, fetchPendingDonors);\n yield takeEvery(GET_APPROVED_DONORS, fetchApprovedDonors);\n yield takeEvery(GET_UNAPPROVED_DONORS, fetchUnapprovedDonors);\n yield takeEvery(APPROVE_UNAPPROVE_DONOR, onApproveUnapproveDonor);\n}\n\nexport default registrationAdminSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n // GET_CLEARED_LABS,\n // GET_APPROVED_LABS,\n // GET_UNAPPROVED_LABS,\n // APPROVE_UNAPPROVE_LAB,\n GET_CLEARED_IN_PAYMENTS,\n GET_APPROVED_IN_PAYMENTS,\n GET_UNAPPROVED_IN_PAYMENTS,\n UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT,\n GET_ALL_LABS_LIST,\n GET_ALL_DONATION_APPOINTMENTS\n // GET_CLEARED_DONORS,\n // GET_APPROVED_DONORS,\n // GET_UNAPPROVED_DONORS,\n // APPROVE_UNAPPROVE_DONOR,\n} from \"./actionTypes\";\n\nimport {\n // getClearedLabsSuccess,\n // getClearedLabsFail,\n // getApprovedLabsSuccess,\n // getApprovedLabsFail,\n // getUnapprovedLabsSuccess,\n // getUnapprovedLabsFail,\n // approveUnapproveLabSuccess,\n // approveUnapproveLabFail,\n getAllDonationAppointmentsSuccess,\n getAllDonationAppointmentsFail,\n getAllLabsListSuccess,\n getAllLabsListFail,\n getClearedInPaymentsSuccess,\n getClearedInPaymentsFail,\n getApprovedInPaymentsSuccess,\n getApprovedInPaymentsFail,\n getUnapprovedInPaymentsSuccess,\n getUnapprovedInPaymentsFail,\n updateApproveUnapproveInPaymentSuccess,\n updateApproveUnapproveInPaymentFail,\n // getClearedDonorsSuccess,\n // getClearedDonorsFail,\n // getApprovedDonorsSuccess,\n // getApprovedDonorsFail,\n // getUnapprovedDonorsSuccess,\n // getUnapprovedDonorsFail,\n // approveUnapproveDonorSuccess,\n // approveUnapproveDonorFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n // getClearedLabs,\n // approveUnapproveLab,\n // getApprovedLabs,\n // getUnapprovedLabs,\n getAllDonationAppointments,\n getClearedInPayments,\n updateApproveUnapproveInPayment,\n getApprovedInPayments,\n getUnapprovedInPayments,\n getAllLabsList,\n // getClearedDonors,\n // approveUnapproveDonor,\n // getApprovedDonors,\n // getUnapprovedDonors,\n} from \"../../helpers/django_api_helper\";\n\n// function* fetchClearedLabs() {\n// try {\n// const response = yield call(getClearedLabs);\n// yield put(getClearedLabsSuccess(response));\n// } catch (error) {\n// yield put(getClearedLabsFail(error));\n// }\n// }\n\n// function* fetchApprovedLabs(object) {\n// try {\n// const response = yield call(getApprovedLabs, object.payload.id);\n// yield put(getApprovedLabsSuccess(response));\n// } catch (error) {\n// yield put(getApprovedLabsFail(error));\n// }\n// }\n\n// function* fetchUnapprovedLabs(object) {\n// try {\n// const response = yield call(getUnapprovedLabs, object.payload.id);\n// yield put(getUnapprovedLabsSuccess(response));\n// } catch (error) {\n// yield put(getUnapprovedLabsFail(error));\n// }\n// }\n\n// function* onApproveUnapproveLab(object) {\n// try {\n// const response = yield call(approveUnapproveLab, object.payload.data);\n// yield put(approveUnapproveLabSuccess(response));\n// } catch (error) {\n// yield put(approveUnapproveLabFail(error));\n// }\n// }\n\nfunction* fetchAllDonationAppointments(object) {\n try {\n const response = yield call(getAllDonationAppointments, object.payload);\n yield put(getAllDonationAppointmentsSuccess(response));\n } catch (error) {\n yield put(getAllDonationAppointmentsFail(error));\n }\n}\n\nfunction* fetchAllLabsList() {\n try {\n const response = yield call(getAllLabsList);\n yield put(getAllLabsListSuccess(response));\n } catch (error) {\n yield put(getAllLabsListFail(error));\n }\n}\n\nfunction* fetchClearedInPayments(object) {\n try {\n const response = yield call(getClearedInPayments, object.payload);\n yield put(getClearedInPaymentsSuccess(response));\n } catch (error) {\n yield put(getClearedInPaymentsFail(error));\n }\n}\n\nfunction* fetchApprovedInPayments(object) {\n try {\n const response = yield call(getApprovedInPayments, object.payload);\n yield put(getApprovedInPaymentsSuccess(response));\n } catch (error) {\n yield put(getApprovedInPaymentsFail(error));\n }\n}\n\nfunction* fetchUnapprovedInPayments(object) {\n try {\n const response = yield call(getUnapprovedInPayments, object.payload);\n yield put(getUnapprovedInPaymentsSuccess(response));\n } catch (error) {\n yield put(getUnapprovedInPaymentsFail(error));\n }\n}\n\n// function* onApproveUnapproveInPayment(object) {\n// try {\n// const response = yield call(approveUnapproveInPayment, object.payload.data);\n// yield put(approveUnapproveInPaymentSuccess(response));\n// } catch (error) {\n// yield put(approveUnapproveInPaymentFail(error));\n// }\n// }\nfunction* onUpdateApproveUnapproveInPayment({ payload: data }) {\n try {\n const response = yield call(updateApproveUnapproveInPayment, data);\n yield put(updateApproveUnapproveInPaymentSuccess(response));\n } catch (error) {\n yield put(updateApproveUnapproveInPaymentFail(error));\n }\n}\n\n\n// function* fetchClearedDonors() {\n// try {\n// const response = yield call(getClearedDonors);\n// yield put(getClearedDonorsSuccess(response));\n// } catch (error) {\n// yield put(getClearedDonorsFail(error));\n// }\n// }\n\n// function* fetchApprovedDonors(object) {\n// try {\n// const response = yield call(getApprovedDonors, object.payload.id);\n// yield put(getApprovedDonorsSuccess(response));\n// } catch (error) {\n// yield put(getApprovedDonorsFail(error));\n// }\n// }\n\n// function* fetchUnapprovedDonors(object) {\n// try {\n// const response = yield call(getUnapprovedDonors, object.payload.id);\n// yield put(getUnapprovedDonorsSuccess(response));\n// } catch (error) {\n// yield put(getUnapprovedDonorsFail(error));\n// }\n// }\n\n// function* onApproveUnapproveDonor(object) {\n// try {\n// const response = yield call(approveUnapproveDonor, object.payload.data);\n// yield put(approveUnapproveDonorSuccess(response));\n// } catch (error) {\n// yield put(approveUnapproveDonorFail(error));\n// }\n// }\n\nfunction* financeAdminSaga() {\n // yield takeEvery(GET_CLEARED_LABS, fetchClearedLabs);\n // yield takeEvery(GET_APPROVED_LABS, fetchApprovedLabs);\n // yield takeEvery(GET_UNAPPROVED_LABS, fetchUnapprovedLabs);\n // yield takeEvery(APPROVE_UNAPPROVE_LAB, onApproveUnapproveLab);\n yield takeEvery(GET_ALL_DONATION_APPOINTMENTS, fetchAllDonationAppointments);\n yield takeEvery(GET_ALL_LABS_LIST, fetchAllLabsList);\n yield takeEvery(GET_CLEARED_IN_PAYMENTS, fetchClearedInPayments);\n yield takeEvery(GET_APPROVED_IN_PAYMENTS, fetchApprovedInPayments);\n yield takeEvery(GET_UNAPPROVED_IN_PAYMENTS, fetchUnapprovedInPayments);\n yield takeEvery(UPDATE_APPROVE_UNAPPROVE_IN_PAYMENT, onUpdateApproveUnapproveInPayment);\n // yield takeEvery(GET_CLEARED_DONORS, fetchClearedDonors);\n // yield takeEvery(GET_APPROVED_DONORS, fetchApprovedDonors);\n // yield takeEvery(GET_UNAPPROVED_DONORS, fetchUnapprovedDonors);\n // yield takeEvery(APPROVE_UNAPPROVE_DONOR, onApproveUnapproveDonor);\n}\n\nexport default financeAdminSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_PENDING_COMPLAINTS,\n GET_PENDING_COMPLAINTS_LABHAZIR,\n GET_INPROCESS_COMPLAINTS,\n GET_INPROCESS_COMPLAINTS_LABHAZIR,\n GET_RESOLVED_COMPLAINTS,\n GET_RESOLVED_COMPLAINTS_LABHAZIR,\n ASSIGN_COMPLAINT,\n} from \"./actionTypes\";\n\nimport {\n getPendingComplaintsSuccess,\n getPendingComplaintsFail,\n getPendingComplaintsLabhazirSuccess,\n getPendingComplaintsLabhazirFail,\n getInProcessComplaintsSuccess,\n getInProcessComplaintsFail,\n getInProcessComplaintsLabhazirSuccess,\n getInProcessComplaintsLabhazirFail,\n getResolvedComplaintsSuccess,\n getResolvedComplaintsFail,\n getResolvedComplaintsLabhazirSuccess,\n getResolvedComplaintsLabhazirFail,\n assignComplaintSuccess,\n assignComplaintFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getPendingComplaints,\n getPendingComplaintsLabhazir,\n getInProcessComplaints,\n getInProcessComplaintsLabhazir,\n getResolvedComplaints,\n getResolvedComplaintsLabhazir,\n assignComplaint,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchPendingComplaints() {\n try {\n const response = yield call(getPendingComplaints);\n yield put(getPendingComplaintsSuccess(response));\n } catch (error) {\n yield put(getPendingComplaintsFail(error));\n }\n}\nfunction* fetchPendingComplaintsLabhazir() {\n try {\n const response = yield call(getPendingComplaintsLabhazir);\n yield put(getPendingComplaintsLabhazirSuccess(response));\n } catch (error) {\n yield put(getPendingComplaintsLabhazirFail(error));\n }\n}\nfunction* fetchInProcessComplaints(object) {\n try {\n const response = yield call(getInProcessComplaints, object.payload.id);\n yield put(getInProcessComplaintsSuccess(response));\n } catch (error) {\n yield put(getInProcessComplaintsFail(error));\n }\n}\nfunction* fetchInProcessComplaintsLabhazir(object) {\n try {\n const response = yield call(getInProcessComplaintsLabhazir, object.payload.id);\n yield put(getInProcessComplaintsLabhazirSuccess(response));\n } catch (error) {\n yield put(getInProcessComplaintsLabhazirFail(error));\n }\n}\n\nfunction* fetchResolvedComplaints(object) {\n try {\n const response = yield call(getResolvedComplaints, object.payload.id);\n yield put(getResolvedComplaintsSuccess(response));\n } catch (error) {\n yield put(getResolvedComplaintsFail(error));\n }\n}\nfunction* fetchResolvedComplaintsLabhazir(object) {\n try {\n const response = yield call(getResolvedComplaintsLabhazir, object.payload.id);\n yield put(getResolvedComplaintsLabhazirSuccess(response));\n } catch (error) {\n yield put(getResolvedComplaintsLabhazirFail(error));\n }\n}\n\nfunction* onAssignComplaint(object) {\n try {\n const response = yield call(assignComplaint, object.payload.data);\n yield put(assignComplaintSuccess(response));\n } catch (error) {\n yield put(assignComplaintFail(error));\n }\n}\n\nfunction* csrAdminSaga() {\n yield takeEvery(GET_PENDING_COMPLAINTS, fetchPendingComplaints);\n yield takeEvery(GET_PENDING_COMPLAINTS_LABHAZIR, fetchPendingComplaintsLabhazir);\n yield takeEvery(GET_INPROCESS_COMPLAINTS, fetchInProcessComplaints);\n yield takeEvery(GET_INPROCESS_COMPLAINTS_LABHAZIR, fetchInProcessComplaintsLabhazir);\n yield takeEvery(GET_RESOLVED_COMPLAINTS, fetchResolvedComplaints);\n yield takeEvery(GET_RESOLVED_COMPLAINTS_LABHAZIR, fetchResolvedComplaintsLabhazir);\n yield takeEvery(ASSIGN_COMPLAINT, onAssignComplaint);\n}\n\nexport default csrAdminSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_PENDING_AUDITS,\n GET_INPROCESS_AUDITS,\n GET_PASSED_AUDITS,\n GET_FAILED_AUDITS,\n ASSIGN_AUDIT,\n ADD_LABS_AUDIT\n} from \"./actionTypes\";\n\nimport {\n getPendingAuditsSuccess,\n getPendingAuditsFail,\n getInProcessAuditsSuccess,\n getInProcessAuditsFail,\n getPassedAuditsSuccess,\n getPassedAuditsFail,\n getFailedAuditsSuccess,\n getFailedAuditsFail,\n assignAuditSuccess,\n assignAuditFail,\n AddAllLabsAuditSuccess,\n AddAllLabsAuditFail\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getPendingAudits,\n getInProcessAudits,\n getPassedAudits,\n getFailedAudits,\n assignAudit,\n AddAllLabsAudit\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchPendingAudits() {\n try {\n const response = yield call(getPendingAudits);\n yield put(getPendingAuditsSuccess(response));\n } catch (error) {\n yield put(getPendingAuditsFail(error));\n }\n}\n\nfunction* fetchInProcessAudits(object) {\n try {\n const response = yield call(getInProcessAudits, object.payload.id);\n yield put(getInProcessAuditsSuccess(response));\n } catch (error) {\n yield put(getInProcessAuditsFail(error));\n }\n}\n\nfunction* fetchPassedAudits(object) {\n try {\n const response = yield call(getPassedAudits, object.payload.id);\n yield put(getPassedAuditsSuccess(response));\n } catch (error) {\n yield put(getPassedAuditsFail(error));\n }\n}\nfunction* fetchFailedAudits(object) {\n try {\n const response = yield call(getFailedAudits, object.payload.id);\n yield put(getFailedAuditsSuccess(response));\n } catch (error) {\n yield put(getFailedAuditsFail(error));\n }\n}\n\nfunction* onAssignAudit(object) {\n try {\n const response = yield call(assignAudit, object.payload.data);\n yield put(assignAuditSuccess(response));\n } catch (error) {\n yield put(assignAuditFail(error));\n }\n}\n\nfunction* onAddLabAudit(object) {\n try {\n const response = yield call(AddAllLabsAudit, object.payload.data);\n yield put(AddAllLabsAuditSuccess(response));\n } catch (error) {\n yield put(AddAllLabsAuditFail(error));\n }\n}\n\nfunction* auditorAdminSaga() {\n yield takeEvery(ADD_LABS_AUDIT, onAddLabAudit);\n yield takeEvery(GET_PENDING_AUDITS, fetchPendingAudits);\n yield takeEvery(GET_INPROCESS_AUDITS, fetchInProcessAudits);\n yield takeEvery(GET_PASSED_AUDITS, fetchPassedAudits);\n yield takeEvery(GET_FAILED_AUDITS, fetchFailedAudits);\n yield takeEvery(ASSIGN_AUDIT, onAssignAudit);\n}\n\nexport default auditorAdminSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport {\n GET_ACTIVITY_LOG_AUDITOR,\n} from \"./actionTypes\";\n\nimport {\n getActivityLogAuditorSuccess,\n getActivityLogAuditorFail,\n} from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport {\n getActivityLogAuditor,\n} from \"../../helpers/django_api_helper\";\n\nfunction* fetchActivityLogAuditor(object) {\n try {\n const response = yield call(getActivityLogAuditor, object.payload);\n yield put(getActivityLogAuditorSuccess(response));\n } catch (error) {\n yield put(getActivityLogAuditorFail(error));\n }\n}\n\nfunction* activitylogauditorSaga() {\n yield takeEvery(GET_ACTIVITY_LOG_AUDITOR, fetchActivityLogAuditor);\n}\n\nexport default activitylogauditorSaga;\n","import { call, put, takeEvery } from \"redux-saga/effects\";\n\n// Crypto Redux States\nimport { GET_REVIEW_PERFORMANCE, GET_REVIEW_PERFORMANCE_TEST } from \"./actionTypes\";\n\nimport { getReviewPerformanceSuccess, getReviewPerformanceFail, getReviewPerformanceTestSuccess, getReviewPerformanceTestFail } from \"./actions\";\n\n//Include Both Helper File with needed methods\nimport { getReviewPerformance, getReviewPerformanceTest } from \"../../helpers/django_api_helper\";\n\nfunction* fetchReviewPerformance(object) {\n console.log(\"Fetching review performance with payload:\", object.payload);\n try {\n const response = yield call(getReviewPerformance, object.payload.start_date, object.payload.end_date);\n console.log(\"Full API response received:\", response);\n\n if (response?.status === 200 && response?.total_labs !== undefined) {\n console.log(\"Review performance data received:\", response);\n yield put(getReviewPerformanceSuccess(response)); // Send full response\n } else {\n console.log(\"Unexpected response structure:\", response);\n yield put(getReviewPerformanceFail(\"Invalid response structure\"));\n }\n \n } catch (error) {\n console.log(\"Error fetching review performance:\", error);\n yield put(getReviewPerformanceFail(error));\n }\n}\n\nfunction* fetchReviewPerformanceTest(object) {\n console.log(\"Fetching review performance with payload:\", object.payload);\n try {\n const response = yield call(getReviewPerformanceTest, object.payload.start_date, object.payload.end_date);\n console.log(\"Full API response received:\", response);\n\n if (response?.status === 200 && response?.total_offered_tests !== undefined) {\n console.log(\"Review performance data received:\", response);\n yield put(getReviewPerformanceTestSuccess(response)); // Send full response\n } else {\n console.log(\"Unexpected response structure:\", response);\n yield put(getReviewPerformanceTestFail(\"Invalid response structure\"));\n }\n \n } catch (error) {\n console.log(\"Error fetching review performance:\", error);\n yield put(getReviewPerformanceTestFail(error));\n }\n}\n\nfunction* ReviewPerformanceSaga() {\n yield takeEvery(GET_REVIEW_PERFORMANCE, fetchReviewPerformance);\n yield takeEvery(GET_REVIEW_PERFORMANCE_TEST, fetchReviewPerformanceTest);\n\n}\n\nexport default ReviewPerformanceSaga;\n","import { all, fork } from \"redux-saga/effects\";\n\n//public\nimport LayoutSaga from \"./layout/saga\";\nimport dashboardSaga from \"./dashboard/saga\";\n\nimport AccountSaga from \"./auth/register/saga\";\nimport PatientInformationSaga from \"./auth/patientinformation/saga\";\nimport B2bClientInformationSaga from \"./auth/b2bclientinformation/saga\";\nimport DonorInformationSaga from \"./auth/donorinformation/saga\";\nimport LabInformationSaga from \"./auth/labinformation/saga\";\nimport CorporateInformationSaga from \"./auth/corporateinformation/saga\";\nimport AuthSaga from \"./auth/login/saga\";\nimport ForgetSaga from \"./auth/forgetpwd/saga\";\nimport ConfirmSaga from \"./auth/confirmpwd/saga\";\nimport ChangeSaga from \"./auth/changepwd/saga\";\nimport LabProfileSaga from \"./auth/labprofile/saga\";\nimport B2bProfileSaga from \"./auth/b2bprofile/saga\";\nimport DonorProfileSaga from \"./auth/donorprofile/saga\";\nimport StaffProfileSaga from \"./auth/staffprofile/saga\";\nimport SampleCollectorProfileSaga from \"./auth/samplecollectorprofile/saga\";\nimport LabSettingsSaga from \"./auth/labsettings/saga\";\nimport PaymentsSaga from \"./auth/payments/saga\";\nimport DonorSettingsSaga from \"./auth/donorsettings/saga\";\nimport PatientProfileSaga from \"./auth/patientprofile/saga\";\nimport CorporateProfileSaga from \"./auth/corporateprofile/saga\";\nimport LabMarketSaga from \"./labmarket/saga\";\nimport TestMarketSaga from \"./testmarket/saga\";\nimport ProfileMarketSaga from \"./profilemarket/saga\";\nimport PackageMarketSaga from \"./packagemarket/saga\";\nimport RadiologyMarketSaga from \"./radiologymarket/saga\";\nimport TestsSaga from \"./test-list/saga\";\nimport offeredTestsSaga from \"./offered-tests/saga\";\nimport pathologistsSaga from \"./pathologists/saga\";\nimport activitylogSaga from \"./activtylog/saga\";\nimport activitylogfinanceSaga from \"./activtylogfinance/saga\";\nimport activitylogmarketerSaga from \"./activtylogmarketer/saga\";\nimport sampleNotificationSaga from \"./samplenotification/saga\";\nimport marketerNotificationSaga from \"./marketernotification/saga\";\nimport csrAdminNotificationSaga from \"./csradminnotification/saga\";\nimport regAdminNotificationSaga from \"./regadminnotification/saga\";\nimport csrOfficerNotificationSaga from \"./csrofficernotification/saga\";\nimport bankaccountsSaga from \"./bankaccounts/saga\";\nimport cartsSaga from \"./carts/saga\";\nimport quotesSaga from \"./quotes/saga\";\nimport LabsListPendingFeeSaga from \"./labs-list-pending/saga\";\nimport sharedPercentagePendingFeeTestsSaga from \"./shared-percentage-pending-fee/saga\";\nimport sampleCollectorsSaga from \"./sample-collectors/saga\";\nimport sampleCollectorDatasSaga from \"./sample-collector-test-appointments/saga\";\nimport qualityCertificatesSaga from \"./quality-certificates/saga\";\nimport paymentStatussSaga from \"./payment-statuss/saga\";\nimport msgsSaga from \"./chat-box/saga\";\nimport advertisementsSaga from \"./advertisements/saga\";\nimport advertisementLivesSaga from \"./advertisement-live/saga\";\n///////////\nimport advertisementPriceListsSaga from \"./advertisement-price-lists/saga\";\nimport labAdvertisementsSaga from \"./lab-advertisements/saga\";\nimport labAdvertisementRequestsSaga from \"./lab-advertisement-requests/saga\";\nimport discountLabHazirsSaga from \"./discount-labhazir/saga\";\nimport discountLabHazirToLabsSaga from \"./discount-labhazir-to-lab/saga\";\nimport referrelFeeLabsSaga from \"./referrel-fee-to-lab/saga\";\nimport labsListSaga from \"./labs-list/saga\";\nimport labslisttsaga from \"./labs-listttt/saga\";\nimport TerritoriesListSaga from \"./territories-list/saga\";\nimport LabNamesListSaga from \"./lab-names/saga\";\nimport onlyMedicalTestListSaga from \"./only-medical-tests-list/saga\";\nimport csrTerritoryListSaga from \"./csr-territory-list/saga\";\nimport auditorTerritoryListSaga from \"./auditor-territory-list/saga\";\nimport discountLabSaga from \"./discount-lab/saga\";\nimport feedbacksSaga from \"./feedbacks/saga\";\nimport labsRatingSaga from \"./labs-rating/saga\";\nimport labsTestingSaga from \"./labs-testing/saga\";\nimport testAppointmentsSaga from \"./test-appointments/saga\";\nimport patientTestAppointmentsSaga from \"./patient-test-appointments/saga\";\nimport B2bReferredPatientsSaga from \"./b2b-referred-patients/saga\";\nimport DonorReferredAppointmentsSaga from \"./donor-referred-appointments/saga\";\nimport donorPaymentSaga from \"./donorcheckout/saga\";\nimport b2bPaymentSaga from \"./b2bcheckout/saga\";\nimport B2bLabSharesSaga from \"./b2b-lab-shares/saga\";\nimport B2bAllClientsSaga from \"./b2b-all-clients/saga\";\nimport patientFeedbackSaga from \"./patient-feedback/saga\";\nimport checkoutSaga from \"./checkout/saga\";\nimport createBankSaga from \"./createbank/saga\";\nimport cemployeeDataSaga from \"./corporatedata/saga\";\nimport bankAccountSaga from \"./bankaccount/saga\";\nimport invoiceSaga from \"./invoices/saga\";\nimport advinvoiceSaga from \"./adv-invoice/saga\";\nimport inPaymentSaga from \"./inpayments/saga\";\nimport outPaymentSaga from \"./outpayments/saga\";\nimport bankTransferSaga from \"./banktransferdetails/saga\";\nimport complaintsSaga from \"./complaints/saga\";\nimport csrcomplaintsSaga from \"./csr-complaints/saga\";\nimport csrappointmentsSaga from \"./csr-admin-appointments/saga\";\nimport notesSaga from \"./csr-comments/saga\";\nimport PatientsSaga from \"./patients-list/saga\";\nimport testDescriptionsSaga from \"./test-descriptions/saga\";\nimport AccountStatementsSaga from \"./account-statements/saga\";\nimport DonorAccountStatementsSaga from \"./donor-account-statements/saga\";\nimport DonorsAccountStatementsSaga from \"./donors-account-statements/saga\";\nimport B2bAccountStatementsSaga from \"./b2b-account-statements/saga\";\nimport BankAccountStatementsSaga from \"./bank-account-statements/saga\";\n\nimport StaffSaga from \"./staff/saga\";\nimport AuditsSaga from \"./auditor/saga\";\nimport RegistrationAdminSaga from \"./registration-admin/saga\";\nimport FinanceAdminSaga from \"./finance-admin/saga\";\nimport CSRAdminSaga from \"./csr-admin/saga\";\nimport AuditorAdminSaga from \"./auditor-admin/saga\";\nimport activitylogauditorSaga from \"./activtylogAuditor/saga\"\nimport ReviewPerformanceSaga from \"./review-performance/saga\";\n\n\nexport default function* rootSaga() {\n yield all([\n //public\n fork(ReviewPerformanceSaga),\n fork(activitylogauditorSaga),\n fork(DonorsAccountStatementsSaga),\n fork(dashboardSaga),\n fork(LayoutSaga),\n fork(AccountSaga),\n fork(PatientInformationSaga),\n fork(B2bClientInformationSaga),\n fork(DonorInformationSaga),\n fork(LabInformationSaga),\n fork(CorporateInformationSaga),\n fork(AuthSaga),\n fork(msgsSaga),\n fork(outPaymentSaga),\n fork(createBankSaga),\n fork(cemployeeDataSaga),\n fork(bankAccountSaga),\n fork(inPaymentSaga),\n fork(FinanceAdminSaga),\n fork(ForgetSaga),\n fork(ConfirmSaga),\n fork(ChangeSaga),\n fork(LabProfileSaga),\n fork(B2bProfileSaga),\n fork(DonorProfileSaga),\n fork(referrelFeeLabsSaga),\n fork(LabSettingsSaga),\n fork(LabNamesListSaga),\n fork(PatientProfileSaga),\n fork(StaffProfileSaga),\n fork(SampleCollectorProfileSaga),\n fork(CorporateProfileSaga),\n fork(LabMarketSaga),\n fork(PaymentsSaga),\n fork(TestMarketSaga),\n fork(ProfileMarketSaga),\n fork(PackageMarketSaga),\n fork(RadiologyMarketSaga),\n fork(TestsSaga),\n fork(offeredTestsSaga),\n fork(pathologistsSaga),\n fork(activitylogSaga),\n fork(activitylogfinanceSaga),\n fork(activitylogmarketerSaga),\n fork(sampleNotificationSaga),\n fork(marketerNotificationSaga),\n fork(csrAdminNotificationSaga),\n fork(cartsSaga),\n fork(quotesSaga),\n fork(bankTransferSaga),\n fork(LabsListPendingFeeSaga),\n fork(sharedPercentagePendingFeeTestsSaga),\n fork(sampleCollectorsSaga),\n fork(sampleCollectorDatasSaga),\n fork(qualityCertificatesSaga),\n fork(advertisementsSaga),\n fork(advertisementPriceListsSaga),\n fork(labAdvertisementsSaga),\n fork(advertisementLivesSaga),\n fork(labAdvertisementRequestsSaga),\n fork(discountLabHazirsSaga),\n fork(discountLabHazirToLabsSaga),\n fork(labsListSaga),\n fork(labslisttsaga),\n // fork(TerritoriesSaga),\n fork(TerritoriesListSaga),\n fork(onlyMedicalTestListSaga),\n fork(csrOfficerNotificationSaga),\n fork(csrTerritoryListSaga),\n fork(auditorTerritoryListSaga),\n fork(discountLabSaga),\n fork(feedbacksSaga),\n fork(labsRatingSaga),\n fork(labsTestingSaga),\n fork(complaintsSaga),\n fork(csrcomplaintsSaga),\n fork(csrappointmentsSaga),\n fork(notesSaga),\n fork(PatientsSaga),\n fork(donorPaymentSaga),\n fork(regAdminNotificationSaga),\n fork(DonorSettingsSaga),\n fork(paymentStatussSaga),\n fork(B2bAccountStatementsSaga),\n fork(BankAccountStatementsSaga),\n fork(testDescriptionsSaga),\n fork(testAppointmentsSaga),\n fork(patientTestAppointmentsSaga),\n fork(B2bReferredPatientsSaga),\n fork(DonorReferredAppointmentsSaga),\n fork(B2bLabSharesSaga),\n fork(B2bAllClientsSaga),\n fork(patientFeedbackSaga),\n fork(b2bPaymentSaga),\n fork(checkoutSaga),\n fork(bankaccountsSaga),\n fork(invoiceSaga),\n fork(advinvoiceSaga),\n fork(AccountStatementsSaga),\n fork(DonorAccountStatementsSaga),\n fork(StaffSaga),\n fork(RegistrationAdminSaga),\n fork(CSRAdminSaga),\n fork(AuditorAdminSaga),\n fork(AuditsSaga),\n ]);\n}\n","import { createStore, applyMiddleware, compose } from \"redux\";\nimport createSagaMiddleware from \"redux-saga\";\n\nimport rootReducer from \"./reducers\";\nimport rootSaga from \"./sagas\";\n\nconst sagaMiddleware = createSagaMiddleware();\nconst composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose;\n\nconst store = createStore(\n rootReducer,\n composeEnhancers(applyMiddleware(sagaMiddleware))\n);\nsagaMiddleware.run(rootSaga);\n\nexport default store;\n","import React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport App from \"./App\";\nimport * as serviceWorker from \"./serviceWorker\";\nimport { BrowserRouter } from \"react-router-dom\";\nimport \"./i18n\";\n\nimport { Provider } from \"react-redux\";\n\nimport store from \"./store\";\n\nconst app = (\n \n \n \n \n \n);\n\nReactDOM.render(app, document.getElementById(\"root\"));\nserviceWorker.unregister();\n"],"sourceRoot":""}