{"version":3,"sources":["reportWebVitals.js","constants/CartonConstants.js","constants/alertConstants.js","constants/productConstants.js","constants/userConstants.js","constants/roleMasterConstants.js","constants/dashboardConstants.js","constants/loginConstants.js","constants/menuConstants.js","constants/changePasswordConstants.js","constants/mappingRptConstants.js","constants/FeedbackRptConstants.js","constants/mappingConstants.js","constants/issueNoConstants.js","constants/damageConstants.js","constants/LoyaltySchemeRptConstants.js","constants/RedemptionLogRptConstants.js","constants/UserloyalityLogRptConstants.js","constants/verificationLogConstants.js","constants/demappingConstants.js","constants/productAuthenticationConstants.js","constants/productConfigurationConstants.js","constants/companyConstants.js","constants/OrderBookingConstants.js","constants/OrderBookingRptConstants.js","constants/SqlEditorConstants.js","constants/DispatchConstants.js","constants/dealerConstants.js","constants/TertiaryPackingRptConstants.js","constants/DispatchRptConstants.js","constants/secondaryPackingConstants.js","constants/SecondaryPackingRptConstants.js","constants/QRCodeTrackingRptConstants.js","constants/SliderProMsgConstants.js","constants/WarrantyRegistrationReportConstants.js","constants/BinMasterConstants.js","constants/warehouseConstants.js","constants/WarrantyRejectRegistrationReportConstants.js","constants/GiftMasterConstants.js","constants/GiftGenerateConstants.js","constants/ProductPackingConstants.js","reducers/verificationLogReducer.js","constants/DemappingRptConstants.js","constants/DamageRptConstants.js","constants/loyalityschemeConstants.js","constants/RedemptionApprovalConstants.js","constants/TertiaryPackingConstants.js","constants/ProductPurchaseRptConstants.js","constants/categoryConstants.js","reducers/SliderProMsgReducer.js","reducers/index.js","reducers/userReducer.js","reducers/alertReducer.js","reducers/CartonReducer.js","reducers/productReducer.js","reducers/roleMasterReducer.js","reducers/dashboardReducer.js","reducers/loginReducer.js","reducers/menuReducer.js","reducers/changePasswordReducer.js","reducers/mappingRptReducer.js","reducers/DemappingRptReducer.js","reducers/DamageRptReducer.js","reducers/FeedbackRptReducer.js","reducers/SqlEditorReducer.js","reducers/issueNoReducer.js","reducers/damageReducer.js","reducers/mappingReducer.js","reducers/demappingReducer.js","reducers/productAuthenticationReducer.js","reducers/productConfigurationReducer.js","reducers/companyReducer.js","reducers/OrderBookingReducer.js","reducers/OrderBookingRptReducer.js","reducers/LoyaltySchemeRptReducer.js","reducers/RedemptionLogRptReducer.js","reducers/UserloyalityLogRptReducer.js","reducers/RedemptionApprovalReducer.js","reducers/loyalityschemeReducer.js","reducers/TertiaryPackingReducer.js","reducers/TertiaryPackingRptReducer.js","reducers/DispatchReducer.js","reducers/DispatchRptReducer.js","reducers/ProductPurchaseRptReducer.js","reducers/secondaryPackingReducer.js","reducers/SecondaryPackingRptReducer.js","reducers/dealerReducer.js","reducers/categoryReducer.js","reducers/QRCodeTrackingRptReducer.js","reducers/WarrantyRegistrationReportReducer.js","reducers/BinMasterReducer.js","reducers/WarrantyRejectRegistrationReportReducer.js","reducers/GiftMasterReducer.js","reducers/GiftGenerateReducer.js","reducers/ProductPackingReducer.js","reducers/VendorProductAllocationReducer.js","helpers/store.js","helpers/history.js","helpers/auth-header.js","services/CartonService.js","actions/CartonActions.js","services/productMasterService.js","services/userService.js","services/dealerService.js","services/roleMasterService.js","services/dashboardService.js","services/loginService.js","services/menuService.js","services/changePasswordService.js","services/mappingService.js","services/IssueNoService.js","services/damageService.js","services/verificationLogServices.js","services/mappingRptService.js","services/FeedbackRptService.js","services/productConfigurationService.js","services/demappingService.js","services/LoyaltySchemeRptService.js","services/RedemptionLogRptService.js","services/UserloyalityLogRptService.js","services/ProductAuthenticationService.js","services/companyService.js","services/OrderBookingService.js","services/OrderBookingRptService.js","services/SqlEditorServices.js","services/DispatchRptService.js","services/ProductPurchaseRptService.js","services/secondaryPackingService.js","services/SecondaryPackingRptService.js","services/TertiaryPackingRptService.js","services/QRCodeTrackingRptService.js","services/SliderProMsgService.js","services/WarrantyRegistrationReportServices.js","services/BinMasterService.js","services/warehouseService.js","services/GiftMasterService.js","services/GiftGenerateService.js","actions/productMasterActions.js","actions/userMasterActions.js","actions/alertActions.js","actions/roleMasterActions.js","actions/dashboardActions.js","actions/loginActions.js","actions/menuActions.js","actions/changePasswordActions.js","actions/mappingActions.js","actions/issueNoActions.js","actions/damageActions.js","actions/verificationLogActions.js","actions/mappingRptActions.js","services/DemappingRptService.js","actions/DemappingRptActions.js","services/DamageRptService.js","actions/DamageRptActions.js","actions/LoyaltySchemeRptActions.js","actions/RedemptionLogRptActions.js","actions/UserloyaltyLogRptActions.js","actions/OrderBookingRptActions.js","actions/FeedbackRptAction.js","actions/demappingActions.js","actions/productAuthenticationActions.js","actions/productConfigAction.js","actions/companyActions.js","actions/OrderBookingActions.js","actions/TertiaryPackingRptActions.js","actions/SqlEditorActions.js","services/DispatchService.js","services/PrintDispatchService.js","actions/DispatchActions.js","actions/DispatchRptActions.js","actions/dealerMasterActions.js","services/PrintOrderDispatchService.js","actions/secondaryPackingAction.js","actions/ProductPackingAction.js","actions/SecondaryPackingRptActions.js","services/categoryService.js","actions/categoryActions.js","actions/QRCodeTrackingRptActions.js","actions/SliderProMsgActions.js","actions/WarrantyRegistrationReportActions.js","actions/BinMasterActions.js","actions/WarrantyRejectRegistrationReportActions.js","actions/warehouseMasterActions.js","actions/GiftMasterAction.js","actions/GiftGenerateActions.js","assets/images/Header_logo.png","assets/images/bgg.png","views/Login.jsx","models/VerifyProduct.js","assets/images/wrong-code.png","assets/images/sucess-code.png","assets/images/lp-logo.png","assets/images/login_logo.png","assets/images/success.png","assets/images/t4.png","assets/images/AS.png","assets/images/GP.png","views/Pa.jsx","assets/images/instagram.png","assets/images/linkedIn.png","assets/images/pinterest.png","assets/images/link.png","views/Wa.jsx","assets/images/avatar.jpg","assets/images/holologo.png","templates/Header.jsx","templates/Footer.jsx","templates/Sidebar.js","models/tableRequest.js","views/Dashboard.jsx","views/About.js","components/masters/companyMaster.js","templates/Message.jsx","components/masters/OrderBooking.js","components/masters/userApproval.js","components/masters/productMaster.js","components/masters/roleMaster.js","components/masters/cartonMaster.js","services/loyalityschemeService.js","actions/loyalityschemeAction.js","components/masters/loyalityScheme.js","components/masters/GiftMaster.js","components/masters/SqlEditor.js","views/Profile.jsx","components/mapping/IssueNumber.js","components/transactions/Mapping.js","components/transactions/DeMapping.js","components/transactions/Damage.js","components/masters/userMaster.js","components/reports/VerificationLog.js","components/reports/MappingRpt.js","components/reports/DemappingRpt.js","components/reports/DamageRpt.js","components/reports/LoyaltySchemeRpt.js","components/reports/FeedbackRpt.js","components/masters/ProductConfiguration.js","services/RedemptionApprovalService.js","actions/RedemptionApprovalActions.js","components/transactions/RedemptionApproval.js","components/reports/RedemptionLogRpt.js","components/reports/UserloyalityLogRpt.js","assets/audio/AlreadyScanned.mp3","assets/audio/InvalidScan.mp3","components/transactions/SecondaryPacking.js","components/transactions/ProductPacking.js","services/TertiaryPackingService.js","actions/TertiaryPackingActions.js","components/transactions/Dispatch.js","components/transactions/DispatchReceive.js","models/qrData.js","services/PrintSecondaryPackagingService.js","components/transactions/CartonSlip.js","components/masters/dealerMaster.js","components/reports/SecondaryPackingReport.js","components/reports/DispatchReport.js","components/reports/OrderBookingRpt.js","components/transactions/TertiaryPacking.js","components/reports/TertiaryPackingRpt.js","actions/ProductPurchaseRptActions.js","components/reports/ProductPurchaseRpt.js","components/masters/MRPMaster.js","components/masters/categoryMaster.js","components/reports/QRCodeTrackingRpt.js","components/masters/SliderProMsg.js","components/masters/SODetails.js","components/reports/WarrantyRegistrationReport.js","components/reports/WarrantyRejectRegistrationReport.js","components/masters/WarrantyApproval.js","components/masters/WarehouseMaster.js","components/masters/BinMaster.js","components/mapping/WarrantyClaim.js","components/mapping/WarrantyReapprove.js","components/transactions/New_Dispatch.js","components/mapping/Warranyrequesclaim.js","components/transactions/GiftGenerate.js","templates/Template.js","views/HomePage.jsx","views/WarrantyTerms.jsx","views/PrivacyPolicy.jsx","views/DeleteAccount.jsx","views/TermsNConditions.jsx","views/ContactUs.jsx","assets/images/banner12.jpg","assets/images/BrijMohanSingla.png","assets/images/AkashSingla.png","assets/images/VivekSingla.png","assets/images/VikasSingla.png","views/AboutUs.jsx","App.js","index.js"],"names":["reportWebVitals","onPerfEntry","Function","then","getCLS","getFID","getFCP","getLCP","getTTFB","CartonConstants","CREATE_REQUEST","CREATE_SUCCESS","CREATE_FAILURE","UPDATE_REQUEST","UPDATE_SUCCESS","UPDATE_FAILURE","GETALL_REQUEST","GETALL_SUCCESS","GETALL_FAILURE","GETCARTONDDL_REQUEST","GETCARTONDDL_SUCCESS","GETCARTONDDL_FAILURE","GETALL_AVAILABLE_REQUEST","GETALL_AVAILABLE_SUCCESS","GETALL_AVAILABLE_FAILURE","DELETE_REQUEST","DELETE_SUCCESS","DELETE_FAILURE","ISACTIVE_REQUEST","ISACTIVE_SUCCESS","ISACTIVE_FAILURE","DIALOG_REQUEST","LOADING_REQUEST","DIALOG_ISACTIVE_REQUEST","alertConstants","productConstants","userConstants","roleMasterConstants","GETROLEDDL_REQUEST","GETROLEDDL_SUCCESS","GETROLEDDL_FAILURE","GET_PAGES_REQUEST","GET_PAGES_SUCCESS","GET_PAGES_FAILURE","UPDATE_PAGE_STORE","dashboardConstants","loginConstants","menuConstants","changePasswordConstants","mappingRptConstants","FeedbackRptConstants","mappingConstants","issueNoConstants","damageConstants","LoyaltySchemeRptConstants","RedemptionLogRptConstants","UserloyalityLogRptConstants","verificationLogConstants","demappingConstants","productAuthenticationConstants","productConfigurationConstants","GETCONFIGDDL_REQUEST","GETCONFIGDDL_SUCCESS","GETCONFIGDDL_FAILURE","RESET_REQUEST","companyConstants","OrderBookingConstants","GETORDERDDL_REQUEST","GETORDERDDL_SUCCESS","GETORDERDDL_FAILURE","GETORDERDTL_REQUEST","GETORDERDTL_SUCCESS","GETORDERDTL_FAILURE","GETDEALERDDL_REQUEST","GETDEALERDDL_SUCCESS","GETDEALERDDL_FAILURE","GETSEARCH_REQUEST","GETSEARCH_SUCCESS","GETSEARCH_FAILURE","UPLOAD_SO_REQUEST","UPLOAD_SO_SUCCESS","UPLOAD_SO_FAILURE","GET_SO_LOG_REQUEST","GET_SO_LOG_SUCCESS","GET_SO_LOG_FAILURE","GETPRODUCTS_REQUEST","GETPRODUCTS_SUCCESS","GETPRODUCTS_FAILURE","OrderBookingRptConstants","SqlEditorConstants","DispatchConstants","GETDISPATCHDDL_REQUEST","GETDISPATCHDDL_SUCCESS","GETDISPATCHDDL_FAILURE","SO_DETAILS_REQUEST","SO_DETAILS_SUCCESS","SO_DETAILS_FAILURE","Warning","Alreadypacked","dealerConstants","GETCOUNTRYDDL_REQUEST","GETCOUNTRYDDL_SUCCESS","GETCOUNTRYDDL_FAILURE","GETSTATEDDL_REQUEST","GETSTATEDDL_SUCCESS","GETSTATEDDL_FAILURE","GETFIRMDDL_REQUEST","GETFIRMDDL_SUCCESS","GETFIRMDDL_FAILURE","GETSCITYDDL_REQUEST","GETSCITYDDL_SUCCESS","GETSCITYDDL_FAILURE","GETBCITYDDL_REQUEST","GETBCITYDDL_SUCCESS","GETBCITYDDL_FAILURE","GETEXPORT_REQUEST","GETEXPORT_SUCCESS","GETEXPORT_FAILURE","GET_TRANSPORTATION_REQUEST","GET_TRANSPORTATION_SUCCESS","GET_TRANSPORTATION_FAILURE","TertiaryPackingRptConstants","DispatchRptConstants","secondaryPackingConstants","SecondaryPackingRptConstants","QRCodeTrackingRptConstants","SliderProMsgConstants","UPLOAD_REQUEST","UPLOAD_SUCCESS","UPLOAD_FAILURE","GETALLS_REQUEST","GETALLS_SUCCESS","GETALLS_FAILURE","WarrantyRegistrationReportConstants","BinMasterConstants","warehouseConstants","WarrantyRejectRegistrationReportConstants","GiftMasterConstants","GETQDDL_REQUEST","GETQDDL_SUCCESS","GETQDDL_FAILURE","GETPDDL_REQUEST","GETPDDL_SUCCESS","GETPDDL_FAILURE","DIALOGUE_REQUEST","GiftGenerateConstants","APPROVE_REQUEST","APPROVE_SUCCESS","APPROVE_FAILURE","CANCEL_REQUEST","CANCEL_SUCCESS","CANCEL_FAILURE","GETALL_USERPT_REQUEST","GETALL_USERPT_SUCCESS","GETALL_USERPT_FAILURE","GETALL_USER_REQUEST","GETALL_USER_SUCCESS","GETALL_USER_FAILURE","REJECT_DIALOGUE_REQUEST","ProductPackingConstants","verification","state","action","type","loding","isbool","loading","items","datas","error","exporting","exportitems","DemappingRptConstants","DamageRptConstants","loyalityschemeConstants","GETPRDCTDDL_REQUEST","GETPRDCTDDL_SUCCESS","GETPRDCTDDL_FAILURE","RedemptionApprovalConstants","TertiaryPackingConstants","ProductByQrScan_REQUEST","ProductByQrScan_SUCCESS","ProductByQrScan_Warning","ProductByQrScan_FAILURE","UPDATE_SCANNED_REQUEST","SAVE_TERTIARY_PACKING_RESUEST","SAVE_TERTIARY_PACKING_FAILURE","GETALL_SCAN_REQUEST","GETALL_SCAN_SUCCESS","GETALL_SCAN_FAILURE","GETALL_CARTON_REQUEST","GETALL_CARTON_SUCCESS","GETALL_CARTON_FAILURE","ProductPurchaseRptConstants","categoryConstants","GETSUBALL_REQUEST","GETSUBALL_SUCCESS","GETSUBALL_FAILURE","ISACTIVE2_REQUEST","ISACTIVE2_SUCCESS","ISACTIVE2_FAILURE","DIALOG_REQUEST2","LOADING_REQUEST2","DIALOG_ISACTIVE_REQUEST2","GETCATEGORYDDL_REQUEST","GETCATEGORYDDL_SUCCESS","GETCATEGOYRDDL_FAILURE","GETSUBCATEGORYDDL_REQUEST","GETSUBCATEGORYDDL_SUCCESS","GETSUBCATEGORYDDL_FAILURE","SliderProMsg","creating","data","item","rootReducer","combineReducers","user","GETCITYDDL_REQUEST","GETCITYDDL_SUCCESS","cityddl","GETCITYDDL_FAILURE","showDialog","showIsActiveDialog","map","UserId","updating","deleting","userId","UserName","Email","MobileNo","CompanyId","CompanyName","RoleId","RoleName","IsActive","isActive","Password","ConfirmPassword","CreatedDate","rollddl","Wdd2","activating","TotalRows","alert","message","Carton","Mappseries","CartonId","CartonName","cartonddl","product","Ids","MRPData","addData","ProductId","ProductCode","ProductName","ProductDescription","PermissibleScan","GenuineMessage","AlreadyScannedMsg","ProductImage","GenuineAudio","AlreadyScannedAudio","ProductSpecification","UpdatedDate","CategoryId","CategoryName","ProductWarranty","AboutThisItem","PackageContent","prdctddl","role","pages","pageList","roleUpdate","roleId","roleName","RoleDesc","getpages","dashboard","login","enable","menu","changePassword","mappingRpt","DemappingRpt","DamageRpt","FeedbackRpt","SqlEditor","issueNo","IssueId","issueId","CreatedBy","CreatedDt","salesOrderNo","companyId","UpdatedBy","UpdatedDt","FromNo","ToNo","IssueQty","damage","MappingId","damageId","productName","Qty","mapping","showDialogue","mappingId","issueData","Issueseries","demappingId","showDialogFeedback","showDialogWarranty","isfeedback","feedback","isWarranty","warranty","israting","rating","productAuthenticationId","isOpen","configddl","reseting","CompanyDisplayName","Prefix","Mobile","WebsiteURL","Address","CompanyLogo","FakeMessage","FakeAudio","cmpnyddl","OrderBookingNo","dealerddl","searchData","uploadRes","logData","orderProducts","GETCMPNYDDL_FAILURE","Remark","GETCMPNYDDL_REQUEST","success","OrderDetail","isDownload","canceldialog","approvedialog","Userpoints","Userdataa","scanneditems","warning","alreadyPacked","updatedList","SAVE_SECONDARY_PACKING_RESUEST","saveing","SAVE_SECONDARY_PACKING_FAILURE","Cartondata","secondaryItems","TertiaryscanItems","SODetails","dealerId","ResponseData","DealerId","Dispatch","DispatchId","DispatchName","GETDispatchDDL_REQUEST","GETDispatchDDL_SUCCESS","Dispatchddl","GETDispatchDDL_FAILURE","printdata","Tvisible","undefined","filter","x","SeqNo","length","secondaryitems","vendorDDL","stateddl","transportdllloading","transportationModeddl","firmddl","scityddl","bcityddl","DealerName","CityId","Bill_State","Ship_City","Bill_Pincode","showDialog2","showIsActiveDialog2","loading2","subItems","FilePath","SubCatId","SubCategoryName","SubCateFilePath","categoryddl","subcategoryddl","GETSUBCATEGOYRDDL_FAILURE","toggleLoading","TIDproducts","qrs","did","tid","sid","iddata","toggle2Loading","iddata2","journeyList","BinId","RowName","RowNo","ColNo","ColAddress","ColStatus","WarehouseDDL","Binitems","quarterDDL","ProductDDList","TableData","store","createStore","applyMiddleware","thunkMiddleware","createBrowserHistory","authHeader","JSON","parse","sessionStorage","getItem","Curenturl","window","location","pathname","nNumber","lastIndexOf","pageName","substring","Token","Authorization","page","Accept","clear","authHeaderFormData","handleResponse","response","text","config","curl","ok","status","includes","ResponseMessage","ResponseCode","statusText","Promise","reject","CartonService","GetCarton","requestOptions","method","headers","body","stringify","fetch","process","CreateCarton","UpdateCarton","GetActiveCartonDDL","CartonActions","getAll","dispatch","loadingData","failure","toString","alertActions","request","onHideShow","openDialog","OPEN_DIALOG_REQUEST","inActiveRow","onHideShowIsActive","onHideShoww","productMasterService","createProduct","updateProduct","fetchProductData","productId","fetchProductDataID","fetchProductName","fetchProductDLL","GetIds","UpdateIds","value","GetMRPs","AddMRP","fetchProductDLLForSecondary","isSecondary","userService","createUser","fetchRoleDLL","updateUser","fetchUserData","fetchUserApprovalData","approveUser","rejectUser","fetchUserDataExport","fetchWDLL","dealerService","createDealer","fetchStateDLL","countryId","fetchCityDLL","fetchFirmDLL","updateDealer","fetchDealerData","fetchTransportationModeDDL","fetchDealerDataforExport","roleService","createRole","updateRole","fetchRoleData","fetchPageData","updateRolePermission","dashboardService","fetchData","loginService","checkUser","DeleteAccountUser","menuService","fetchMenuData","getAccessRight","changePasswordService","forgotPassword","mappingService","createMapping","fetchMappingData","fetchToNo","GetAvailableseries","issueNoService","createIssueNo","fetchIssueNoData","fetchFromNumbersData","damageService","createDamage","fetchDamageData","verificationLogServices","fetchVerificationData","mappingRptService","FeedbackRptService","fetchFeedbackData","productConfigurationService","updateProductConfig","fetchProductConfigData","sp_getconfigDDL","demappingService","createDemapping","LoyaltySchemeRptService","fetchLoyaltySchemeData","RedemptionLogRptService","fetchRedemptionLogData","UserloyalityLogRptService","fetchUserloyalityLogData","productAuthenticationService","verifyProduct","UpdateFeedback","updateRating","UpdateWarranty","uid","companyService","createCompany","updateCompany","fetchCompanyData","FetchCompanyDDL","OrderBookingService","CreateOrder","updateOrderBooking","fetchOrderBookingData","orderBookingno","FetchOrderDDL","getDealerDDL","GetSearchData","searchval","cateId","pageSize","GetProductsData","ids","fetchCategoryDLL","ReadRow","IsShow","Download","Id","UploadSODetails","formData","GetSOInsertLog","OrderBookingRptService","SqlEditorServices","executeScript","DispatchRptService","fetchDispatchData","GetDispatchToPrint","ProductPurchaseRptService","fetchProductPurchaseData","secondaryPackingService","ControllerName","getProductByQrScan","this","saveSecondaryPacking","ProductPackingSave","getSecondaryPacking","SecondaryPackingRptService","fetchSecondaryPackingData","GetVendorListDDL","GetSecondaryPackingReportExport","TertiaryPackingRptService","fetchTertiaryData","QRCodeTrackingRptService","GetScanInfo","d","GetJourney","SliderProMsgService","UploadSliderImage","GetSliderHome","GetAllSlider","DeleteSlider","SId","WarrantyRegistrationReportServices","fetchWarrantyData","approveWarranty","WarrantyId","rejectWarranty","Reason","fetchWarrantyDataRpt","claimWarranty","fetchWarrantyDataClaim","fetchWarrantyDataReapprove","WarrantyReaprove","getWaByQrScan","fetchWarrantyRejectDataRpt","BinMasterService","createBin","updateBin","fetchBinData","fetchWarehouseDDL","fetchAllBinData","a","console","log","warehouseService","GiftMasterService","createScheme","fetchSchemeData","fetchDDL","ProductDDL","GiftGenerateService","ApproveRedeem","CancelRedeem","createRedemption","GetUserPoints","productMasterActions","obj","getProductName","getPrdctDDL","getPrdctDDLForSecondary","userMasterActions","getRoleDDL","getAllForApproval","exportData","forEach","v","FirstName","LastName","UserType","IsResetPassword","RefreshToken","Salt","isDeleted","isApproved","getWDDL","roleMasterActions","getPages","updatePageStore","removeItem","setItem","assigned","dashboardActions","loginActions","setTimeout","timeout","errorMessage","users","assignedPermissionsForUser","menuActions","getMenu","changePasswordActions","mappingActions","updateMapping","GetToNo","issueNoActions","updateIssueNo","getFromNumber","damageActions","updateDamage","verificationLogActions","successExport","VerifiedDate","OEM","HPCode","QrData","VerificationMode","VerifiedBy","mappingRptActions","DocURL","ProductID","MFGDate","EXPDate","DemappingRptService","fetchDemappingData","DemappingRptActions","DemappingId","DamageRptService","DamageRptActions","DamageId","DeMappingId","CreatedName","LoyaltySchemeRptActions","LoyaltySchemeId","Schemedescription","UserTypeId","loyaltypnt","RedemptionLogRptActions","RedemptionLogId","UserloyalityLogRptActions","UserloyalityLogId","OrderBookingRptActions","FeedbackRptActions","demappingActions","productAuthenticationActions","onHideShowWarranty","Warranty","productConfigActions","updateproductConfiguration","getconfigDDL","productid","onreset","companyActions","getcmpnyddl","OrderBookingActions","OBN","tblResponse","TertiaryPackingRptActions","SqlEditorActions","script","DispatchService","GetDispatch","CreateDispatch","GetActiveDispatchDDL","fetchSODetails","SONo","pdfMake","vfs","pdfFonts","PrintDispatchService","qr","QRCode","toDataURL","err","url","dispatchData","genQR","company","doc","pageMargins","layout","footer","currentPage","pageCount","stack","columns","alignment","content","fontSize","bold","margin","table","widths","width","height","image","italics","Date","toLocaleDateString","fit","colSpan","userDetail","DealerCode","getDispatchedData","heights","styles","filledHeader","color","fillColor","createPdf","download","push","cartonList","childObj","Amount","cartonIds","row","CartonCount","Set","TotalAmount","DispatchActions","DispatchRptActions","Status","DispatchedTo","TotalCarton","dealerMasterActions","getStateDDL","getFirmDDL","getSCityDDL","getBCityDDL","reload","getTransportationModeDDL","isDealer","CountryId","secondaryPackingActions","PackingSize","resdata","secondaryPacking","props","getState","y","lists","cartonComplete","updateScannedList","tblobj","ProductPackingActions","SecondaryPackingRptActions","categoryService","getCategory","createCategory","createSubCategory","updateCategory","SubUpdateCategory","categoryId","inActiveRow2","getSubCategory","fetchSubCategoryDLL","categoryActions","getSubAll","loadingData2","createCatagory","category","onHideShow2","onHideShowIsActive2","getCategoryDDL","flag","getSubCategoryDDL","QRCodeTrackingRptActions","toggle","val","resp","element","toggle2","SliderProMsgActions","GetSliderList","GetSliderImage","DeleteSliderImage","WarrantyRegistrationReportActions","reason","getAllclaim","getAllReaprove","scannedList","BinMasterActions","binId","getWarehouseDDL","WarrantyRejectRegistrationReportActions","warehouseMasterActions","GiftMasterActions","SchemeId","QuarterDDL","GiftGenerateActions","onHideclose","UserData","Login","resendbtn","loggedIn","eyeToggle","forgotModal","Otp","formError","formForgotHeading","buttonLabel","forgotFormError","btnlog","formHandle","bind","handleChange","submitForm","passwordToggle","hideFunc","handleForgotChange","submitForgotForm","setResend","event","target","name","errors","checked","setState","match","userName","preventDefault","isfrmvalid","checkerror","Object","entries","key","RequestType","visible","formForgotReset","validateForgotForm","res","IsValid","className","style","padding","class","src","bgg","logo1","onSubmit","e","background","disabled","placeholder","onChange","noValidate","autoComplete","onClick","hidden","header","onHide","label","icon","Component","connect","VerifyProduct","VerificationType","CompanyPrefix","Userlatitude","Userlongitude","UserCity","UserState","UserCountry","UserZip","UserAddress","ScratchCode","ProductAuthentication","handleScratchCodeChange","scratchCode","clsVerifyProduct","ScratchCd","handleVerifyClick","isScratchfrmvalid","ScratchError","validateScratch","findMe","prevState","showVerifyDialog","Promo","formIsValid","IsLocation","ratingBox","shareBox","href","VerificationId","CompId","displayBasic","Name","CustomerName","email","UserFeedback","showVideo","photoIndex","socialLinks","dealeraddress","purchasedfrom","IsWarranty","MobNo","Invoice","InvoiceDate","submitWarranty","handleChange1","onHideWarranty","openWarranty","ImgModal","setImagePath","reverseGeocodeLatLngAndVerifyProduct","URLSearchParams","search","get","lat","long","caches","keys","names","all","delete","productAuthReq","modal","document","getElementById","img","onclick","display","getElementsByClassName","iswarrantyvalid","validateWarranty","warrantyData","ProductAuthenticationData","xhr","Source","isfeedfrmvalid","validateFeedback","feedbackData","verificationId","ProductRating","scratchError","onHideShowWarrnty","navigator","geolocation","getCurrentPosition","position","showPosition","denied","GetVerifyProduct","enableHighAccuracy","maximumAge","coords","longitude","latitude","reverseGeoCode","address","state_district","country","postcode","display_name","Location","links","SocialLinks","logo","GP","AS","htmlFor","id","controls","autoPlay","PromotionalMessage","logogg","on","IsFeedback","IsRating","Rating","TotalRating","IsShare","isRated","cancel","readonly","FacebookShareButton","ShareURL","quote","FacebookIcon","size","round","TwitterShareButton","TwitterIcon","WhatsappShareButton","WhatsappIcon","LinkedinShareButton","LinkedinIcon","EmailShareButton","EmailIcon","Array","isArray","i","Key","Value","rel","dismissableMask","ShowDialogWarranty","TextField","variant","mode","auto","onUpload","onError","onErrorImage","accept","border","alt","fakeIcon","ShowDialogFeedback","productAuthentication","scratch","ScratchData","productAuth","ratingData","verifyScratch","Wa","totalRecords","rows","urlParams","prevProps","FeedbackList","productImage","purchasedFrom","RegisterDate","PhysicalCard","ExpireDate","claimdate","Header","listener","handleScroll","pageYOffset","nav","navigation","addEventListener","fetchApi","userNameCollector","removeEventListener","Avtar","MenuData","Footer","Sidebar","model","tableRequest","PageNo","First","SearchValue","PageSize","SortColumn","SortOrder","FromDate","ToDate","compareTargets","d3Format","series","point","targetSeries","targetPoint","Dashboard","styled","TableCell","theme","tableCellClasses","head","backgroundColor","palette","common","black","textTransform","borderBottom","fontFamily","TableRow","onPage","onSort","hover","globalFilter","first","selection","ShortMonthName","MonthName","OrderCount","sortOrder","tooltipTarget","tooltipEnabled","click","targets","changeHover","changeTooltip","targetItem","basicData","labels","datasets","fill","borderColor","userPages","assignedPermissions","ActionName","IsEdit","IsAdd","fetchMappingApi","userDetails","userdetailsObject","MappingData","MaxFromNo","sortField","multiSortMeta","field","getLazyLoadingValues","chartdata","Months","MappingChart","DeMappingChart","TotalIssue","TotalMapping","TotalDeMapping","TotalDamage","TotalScans","TotalUserApproval","DashboardList","DashboardListData","DashboardCount","DeMappingList","MappingList","OrderChart","OrderCharts","ProductData","OrderDataList","isLoding","About","companyMaster","switchToggleConfirm","switchAction","handlelink","handlename","handleDelete","slice","AddLink","concat","photoBodyTemplate","statusBodyTemplate","actionBodyTemplate","Fdone","resetForm","setAudioPath","CreatedDtTemplate","UpdatedDtTemplate","confirm","displayConfirmation","formHeading","createDate","updatedDate","companyName","companyDisplayName","prefix","mobile","websiteURL","companyLogo","activeIndex","fakeMessage","Companys","ProductTypeData","ProductTypeId","ProductTypeName","today","dd","String","getDate","padStart","mm","getMonth","yyyy","getFullYear","rowData","format","validateForm","getCurrentDateMMDDYYY","Checkbox","defaultChecked","inputProps","Switch","createdDate","onInput","searchFilter","scrollable","responsive","emptyMessage","sortMode","paginator","paginatorTemplate","currentPageReportTemplate","rowsPerPageOptions","parseInt","lazy","ref","el","dt","onTabChange","index","marginTop","marginLeft","iconPos","autoFocus","MessageComponent","showSuccess","showInfo","showWarn","showError","msg","toast","show","severity","summary","detail","life","bgColors","OrderBooking","handleRemoveClick","list","productDetails","handleAddClick","productData","MRP","productDetailsError","handleInputChange","repeat","refs","Messchild","mrp","csvLink","React","createRef","LocRef","setQty","setQtyInCart","getQty","getDropValueOfDealer","noOfProducts","ProductSelect","onSelectState","onRemoveState","addToCart","getProductStuff","getProductList","increaseValue","increaseValueInCart","decreaseValue","decreaseValueInCart","removeProduct","cartButtonText","isAdded","showCart","searchValue","IsDetails","SelectedProducts","getSearchData","bookinglist","getProductDDL","exec","UserDealerData","dealer","Dealer","showConfirmDialog","some","NaN","tmpDetails","count","categoryName","CategoryData","editModeUpdate","ShowRow","readRow","stopPropagation","title","fileName","split","current","filename","isEdit","selectedList","selectedItem","removedItem","SearchData","pushEle","findIndex","isNaN","splice","querySelector","Message","onRowClick","rowClassName","colortag","getElementsByTagName","replace","innerHTML","indexOf","createStyle","getOrderNo","sortable","getStatus","overflow","marginRight","marginBottom","justifyContent","FormControl","options","optionLabel","optionValue","disable","overflowY","xl","sm","min","maxlength","TotalProducts","float","pointerEvents","getProductsData","userApproval","gstno","GstCertificate","Nature_Firm","Ship_City_Name","Ship_State_Name","Ship_Pincode","Ship_Address","productMaster","productSpecification","handleInputChangeSizes","sizes","handleRemoveClickSizes","handleAddClickSizes","setGenuineAudioPath","setAlreadyAudioPath","setVideoPath","displayModal","productDescription","permissibleScan","genuineMessage","shareMessage","shareurl","alreadyScannedMsg","promotionalMessage","promotionalStartDate","promotionalEndDate","audioFile","videoFile","genuineAudio","alreadyScannedAudio","productConfiguration","isUploadLocal","youTubeURL","SubCategoryId","SubCategory","date","getDropValueOfCategory","getDropValueOfSubCategory","productCode","ShareMessage","ProductConfiguration","PromotionalStartDate","PromotionalEndDate","subcategoryName","subCategoryData","getDateYYYYMMDD","IsUploadLocal","VideoFile","stripedRows","getProductDescription","appendTo","multiline","for","roleMaster","editPermission","createdDateTemplate","updatedDateTemplate","checkboxIsView","checkboxIsAdd","checkboxIsEdit","onchangeCheckbox","node","RoleData","permissionArray","Pages","ischecked","currentTarget","pagelist","allViewCheck","allAddCheck","allEditCheck","rowdate","PageId","IsView","IsReport","listPages","isAllView","find","isAllAdd","isAllEdit","header2","viewHeading","checkAll","addHeading","updateHeading","scrollHeight","rowHover","InputLabel","Select","labelId","MenuItem","UserTypeData","openPermissionDialog","cartonMaster","formReset","updateLoader","sortIcon","CartonSize","Description","sales","CartonData","getElementsByName","updateCarton","createCarton","column","CartonCategory","activeTemplate","loyalityschemeService","UpdateScheme","proddata","loyalityschemeActions","updateScheme","loyalityscheme","Availableseries","onHidee","openDialogue","CreatedDateTemplate","UpdatedDateTemplate","getRoleList","onPage1","onSort1","onRowSelect","submitseries","onChangeDDL","selectedProduct","first1","rows1","totalRecords1","Mappseriesdata","SchemeName","SchemeCategory","StartDate","EndDate","loyalitypnt","setHours","setDate","SchememappingData","TotalRows1","getFromNo","fromNumber","trim","qty","toNumber","startDate","endDate","UserRoleData","SchemeCategoryId","SchemeCategoryData","ddlValuRole","getDropValueOfRole","getDropValueOfSchemeCategory","isEditing","formHeadingg","selectionMode","onSelectionChange","dataKey","responsiveLayout","headerStyle","showIcon","GiftMaster","GiftName","selectedQuarter","isValid","selectedProductsString","join","QuarterName","ProductIds","CreateBy","GetQuarterDDl","GetProductDDl","flexDirection","gap","fullWidth","Boolean","quarterDDl","quarter","helperText","alignSelf","quarterData","getKeys","getHeader","toUpperCase","getRowsData","RenderRow","scope","Script","ScriptType","runScript","Profile","OldPassword","NewPassword","userCollector","formmData","userEmailCollector","userMobileCollector","fetchUserApi","IssueNumber","MachineId","exportCSV","showSnackbar","SalesOrderNo","fetchFromNumberApi","IssueData","isfromvalid","demapping","Mapping","onFileChange","selectedFile","files","resetFormHide","IsClick","buttonLabel1","FileName","ProductNameDLL","BatchNo","Issueseriesdata","serieserror","getToNumber","ddlValu","getDropValue","CreatedDatee","fetchProductApi","machine","DeMapping","refrenceFromNo","refrenceToNo","Damage","userMaster","exportCSVAll","handleWChange","FilterData","WareHouseId","UserWData","WName","usertype","userTypeData","userTypeId","List","autocomplete","input","VerificationLog","datalist","exportingData","verificationList","handleProductName","MappingRpt","mappingList","ToDt","FrmDt","myFmDt","getCurrentDateYYYYMMDD","myToDt","DemappingRptList","DamageRptList","LoyaltySchemeRpt","LoyaltySchemeList","productSpecItem","productSpec","singleCheck","getConfigurationList","configureField2","configureField","ConfigurationData","ConfigureItem","ConfigureItem1","Value1","IsCheckedAll","IsField1","IsField2","configur","checkboxes","checkbox","ischeckAllCheck","idfist","checkCheckBox","filed","second","idsecond","allChecked","isChecked","every","confg","products","formdata","ProductMasters","ProductImg","ischeck","hasOwnProperty","changevalue","inputprops","selectheaderField1","allCheck","selectheaderField2","filterPlaceholder","emptyFilterMessage","allCheckProduct","RedemptionApprovalService","RedemptionApprovalActions","RedemptionApproval","getUserList","openRejectDialogue","RedemptionRequest","RedemptionReject","Approve","RedeemTypeId","RedeemType","RedeemPoint","userpnt","UserPoints","User","RedeemTypeData","ddlValuUser","getDropValueOfUser","Userdropdown","RedeemReqType","RedeemReqId","CancellationReason","editMode","ApprovedData","itemss","CanceledData","RedemptionLogRpt","RedemptionLogList","UserloyalityLogRpt","UserloyalityLogList","SecondaryPacking","callbackFunction","childData","autoref","autorefCID","Audio","invalidScan","productSelected","rvisible","productLoading","cartoonLoading","CartonDDL","scanItems","actionTemplate","submitFormFinal","DATASEND","ScanItem","GetSecondaryPacking","fetchCartonList","alreadyPackedAudio","play","warningAudio","focus","trimmedValue","filteredProduct","IsDisabledCartonDDL","ReferenceID","prompt","secondaryPackingDetails","CartonMasterService","scanTxt","fObj","GetProductByQrScan","confirmAlert","buttons","TabView","onKeyDown","Product","code","tblObj","bool","ProductPacking","handleNumberInput","test","handleApiHit","validateFormOne","payload","sFromNo","SFromNo","sToNo","SToNo","Error","json","responseCode","divStyle","isTextBoxEnabled","isButtonEnabled","istextEnabledSec","istextEnabledCheck","catch","handleApiHitTwo","PFromNo","PToNo","isBtnSaveEnabled","istextEnabledpid","pFromNo","pToNo","divStyleTwo","messageTwo","ShandleChange","calculateQty","fromNo","toNo","PackingSizeNo","CartonTotalQty","totalQty","PhandleChange","pcalculateQty","PQty","generateYearOptions","startYear","year","YearhandleChange","YearData","Number","currentYear","yearOptions","onKeyPress","alignItems","InputProps","readOnly","TertiaryPackingService","fetchCartonData","saveTertiaryPacking","getTertiaryPacking","GetTertiaryPackingScan","checkItemDate","TertiaryPackingActions","checkseqNo","IscheckSameProduct","scannedItem","GstNo","SONumber","warehouseVisible","radio","isold","cartoonLoader","scanItemLoader","remarkVisible","olderstockVisible","eventBlock","UserDDL","DispatchDetails","SelectedDDL","wareHouseDDL","WareHouseFactoryDDL","SendTo","scanDisp","olderdata","bill_Address1","bill_Address2","bill_City","bill_Country","bill_Pincode","bill_State","ship_Address1","ship_Address2","ship_City","ship_Country","ship_Pincode","ship_State","IsOldProduct","submitRemark","onValueChange","$","next","removeClass","toggleClass","addClass","bill_CountryName","bill_StateName","bill_CityName","scanned","SendFrom","needtoSaveDispatch","SaveDispatch","formD","createDispatch","setCartonDetails","chk","TertiaryCartonId","ProdData","OrderInfos","RemainingQty","AddedQty","arrayfilter","array","compId","WareHouseMaterService","GetWareHouseDDL","filteredWareHouse","ID","ApiService","getWareHouseId","Distributor","wareHouse","IsFactory","fact","Bill_Address","Bill_Country","Bill_City","Ship_Country","Ship_State","deleteScanned","DispatchData","TertiaryPacking","IsDownload","updateDispatch","DispatchReceive","handleCheckboxChange","newArray","receive","dispatchLoader","scanLoader","selectedStatus","getrow","newrow","stateover","SubmitReceive","GetDispatchReceive","datasource","GetDispatchReceiveCarton","carton","getid","DispatchCartonReceive","subheader","getDispatchCarton","home","qrData","SrNo","Qrdata","PrintSecondaryPackagingService","jsPDF","orientation","unit","compressPdf","printLblPrntContent1","save","j","setFontType","setFont","setFontSize","qrdata","addImage","addPage","from","to","pre","bulkPrint","CartonID","toDateString","CartonSlip","csv","Sgen","Tgen","createCSV","GetSTIds","getIds","Sids","Tids","max","toLocaleString","link","updateIds","tmp","dealerMaster","getStateList","getFirmList","getCityList","isImage","pdf","NatureFirmId","PanNo","BillingSameAsShipping","TransportationModeId","CountryData","UserFirmData","CityShip","CityBill","SameAsBilling","gstinformat","RegExp","city","UserCityData","firmName","style2","UserBCityData","StateData","UserSCityData","TransportationModeData","SecondaryPackingReport","Export","SecondaryPackingList","VendorDDL","DispatchReport","DispatchList","getDispatchToPrint","PrintData","Printpdf","OrderBookingRpt","OrderBooikngList","getCartonList","remark","older","Loader1","Loader2","isSelected","preVal","SelectedCartonDetails","TertiaryPackdata","pid","TertiaryPackingRpt","TertiaryList","ProductPurchaseRptActions","ProductPurchaseId","ProductPurchaseRpt","ProductPurchaseList","MRPMaster","TotalRecords","addMRP","categoryMaster","switchToggleConfirm2","switchAction2","tblResponse2","actionBodyTemplateSubCate","openDialog2","submitForm2","resetForm2","onHide2","onPage2","onSort2","uploadFiles","photoBodyTemplateSubCate","setSubCateImagePath","IsEdit2","first2","rows2","sliderImage","SubCateImage","totalRecords2","sortOrder2","formHeading2","MCategoryId","CategoryDataList","SubCatefetchApi","SubCategoryData","isfrmvalid2","validateForm2","getLazyLoadingValuesSubCate","SubCate","SubCateheader","fileSelectedHandler","multiple","SliderUploadType","loding2","QRCodeTrackingRpt","isDetail","expandedRows","expandedRows2","rowExpansionTemplate","rowExpansionTemplate2","onRowToggle","expander","dangerouslySetInnerHTML","__html","activity","itemLength","mystyle","uploadMultipleFiles","SliderOptionSelectItems","SliderUpload","editorContent","editorState","storetext","setEditorState","SliderOption","file","ProMsg","manulText","GetSliderListfetchApi","SliderImage","FileType","UploadFor","uploadSliderImage","fileObj","fileArray","URL","createObjectURL","InputLabelProps","shrink","autoplay","SelectedOption","Options","FormData","append","DropChange","Button","OrderNo","WarrantyRegistrationReport","warrantyList","WarrantyRejectRegistrationReport","WarrantyApproval","WarrantyData","sortBy","WaarrantyId","CityName","StateName","colspan","warehouseMaster","WareHouseName","WareHouseDisNam","Country","State","City","WareHouseEmailId","WareHouseContactNo1","WareHouseCode","WHAddress1","WareHouseLogo","WHAddress2","BinMaster","tblResponseExport","editing","wareHouseId","StoreData","StoreType","Height","Width","Length","Valume","BinList","formErrorMobile","DealerNo","aadharImage","aadharNo","Storetype","excludeGlobalFilter","Warehouseddl","bin","WarrantyRequestClaim","isClaim","actionBodyTemplate2","P","isApprove","NDispatch","contains","containsExtraProducts","WarrantyClaim","GiftGenerate","FindselectedQuarter","handleQuarterChange","getFilteredData","order","searchTerm","pop","alignContent","strokeWidth","isLoading","Template","exact","path","component","CompanyMaster","WarehouseMaster","ProductMaster","CartonMaster","UserMaster","Warranyrequesclaim","WarrantyReapprove","New_Dispatch","HomePage","origin","fetchSliderApi","required","tabIndex","backgroundSize","allowFullScreen","referrerPolicy","defaultValue","WarrantyTerms","PrivacyPolicy","DeleteAccount","TermsNConditions","overflowX","ContactUs","AboutUs","banner","frameborder","allow","referrerpolicy","allowfullscreen","BrijMohanSingla","AkashSingla","VivekSingla","VikasSingla","App","authPage","alertHeading","showToaster","toLowerCase","storeCollector","timeoutId","clearTimeout","zIndex","ready","each","prop","animate","Counter","duration","easing","step","now","Math","ceil","ReactDOM","render"],"mappings":"smBAYeA,EAZS,SAAAC,GAClBA,GAAeA,aAAuBC,UACxC,8BAAqBC,MAAK,YAAkD,IAA/CC,EAA8C,EAA9CA,OAAQC,EAAsC,EAAtCA,OAAQC,EAA8B,EAA9BA,OAAQC,EAAsB,EAAtBA,OAAQC,EAAc,EAAdA,QAC3DJ,EAAOH,GACPI,EAAOJ,GACPK,EAAOL,GACPM,EAAON,GACPO,EAAQP,O,sICPDQ,EAAkB,CAC7BC,eAAgB,wBAChBC,eAAgB,wBAChBC,eAAgB,wBAEhBC,eAAgB,wBAChBC,eAAgB,wBAChBC,eAAgB,wBAEhBC,eAAgB,wBAChBC,eAAgB,wBAChBC,eAAgB,wBAEhBC,qBAAsB,qBACtBC,qBAAsB,qBACtBC,qBAAsB,qBAEtBC,yBAA0B,kCAC1BC,yBAA0B,kCAC1BC,yBAA0B,kCAE1BC,eAAgB,wBAChBC,eAAgB,wBAChBC,eAAgB,wBAEhBC,iBAAkB,0BAClBC,iBAAkB,0BAClBC,iBAAkB,0BAElBC,eAAgB,iBAIhBC,gBAAiB,kBAEjBC,wBAAyB,2BCnCpB,IAAMC,EACA,gBADAA,EAEA,gBAFAA,EAGF,cAHEA,EAIF,cCJEC,EACO,0BADPA,EAEO,0BAFPA,EAGO,0BAHPA,EAKO,0BALPA,EAMO,0BANPA,EAOO,0BAPPA,EASO,0BATPA,EAUO,0BAVPA,EAWO,0BAXPA,EAaU,oBAbVA,EAcU,oBAdVA,EAeU,oBAfVA,EAiBO,iBAjBPA,EAkBO,iBAlBPA,EAmBO,iBAnBPA,EAqBO,0BArBPA,EAsBO,0BAtBPA,EAuBO,0BAvBPA,EAyBS,4BAzBTA,EA0BS,4BA1BTA,EA2BS,4BA3BTA,EA6BY,+BA7BZA,EA8BY,+BA9BZA,EA+BY,+BA/BZA,GAkCQ,kBAlCRA,GAmCQ,kBAnCRA,GAoCQ,kBApCRA,GAsCQ,kBAtCRA,GAuCQ,kBAvCRA,GAwCQ,kBAxCRA,GA0CoB,8BA1CpBA,GA2CoB,8BA3CpBA,GA4CoB,8BA5CpBA,GAgDM,iBAhDNA,GAkDO,kBAlDPA,GAoDe,0BCpDfC,GACO,uBADPA,GAEO,uBAFPA,GAGO,uBAHPA,GAKO,uBALPA,GAMO,uBANPA,GAOO,uBAPPA,GASO,uBATPA,GAUO,uBAVPA,GAWO,uBAXPA,GAaO,uBAbPA,GAcO,uBAdPA,GAeO,uBAfPA,GAiBW,mBAjBXA,GAkBW,mBAlBXA,GAmBW,qBAnBXA,GAqBQ,kBArBRA,GAsBQ,kBAtBRA,GAuBQ,kBAvBRA,GAyBS,wBAzBTA,GA0BS,wBA1BTA,GA2BS,wBA3BTA,GA6BU,yBA7BVA,GA8BU,yBA9BVA,GA+BU,yBA/BVA,GAiCM,iBAjCNA,GAmCO,kBAnCPA,GAqCe,0BCrCfC,GAAsB,CAC/B3B,eAAgB,sBAChBC,eAAgB,sBAChBC,eAAgB,sBAEhBC,eAAgB,sBAChBC,eAAgB,sBAChBC,eAAgB,sBAEhBC,eAAgB,sBAChBC,eAAgB,sBAChBC,eAAgB,sBAEhBO,eAAgB,sBAChBC,eAAgB,sBAChBC,eAAgB,sBAGhBC,iBAAkB,wBAClBC,iBAAkB,wBAClBC,iBAAkB,wBAElBC,eAAgB,iBAEhBO,mBAAoB,mBACpBC,mBAAoB,mBACpBC,mBAAoB,qBAEpBC,kBAAmB,oBACnBC,kBAAmB,oBACnBC,kBAAmB,oBAEnBC,kBAAkB,oBAElBZ,gBAAgB,kBAEhBC,wBAAwB,2BCpCfY,GAGO,2BAHPA,GAIO,2BAJPA,GAKO,2BALPA,GAOO,kBCPPC,GACK,uBADLA,GAEK,uBAFLA,GAGM,wBAHNA,GAIK,uBCJLC,GACO,sBADPA,GAEO,sBAFPA,GAGO,sBCHPC,GACO,gCADPA,GAEO,gCAFPA,GAGO,gCAHPA,GAKO,gCALPA,GAMO,gCANPA,GAOO,gCAPPA,GASc,uCATdA,GAUc,uCAVdA,GAWc,uCCXdC,GACO,yBADPA,GAEO,yBAFPA,GAGO,yBAHPA,GAKU,4BALVA,GAMU,4BANVA,GAOU,4BAPVA,GASQ,kBCTRC,GACK,0BADLA,GAEK,0BAFLA,GAGK,0BAHLA,GAKQ,6BALRA,GAMQ,6BANRA,GAOQ,6BAPRA,GASM,kBCTNC,GACO,0BADPA,GAEO,0BAFPA,GAGO,0BAHPA,GAKO,0BALPA,GAMO,0BANPA,GAOO,0BAPPA,GASO,0BATPA,GAUO,0BAVPA,GAWO,0BAXPA,GAaO,0BAbPA,GAcO,0BAdPA,GAeO,0BAfPA,GAiBY,8BAjBZA,GAkBY,8BAlBZA,GAmBY,8BAnBZA,GAsBiB,mCAtBjBA,GAuBiB,mCAvBjBA,GAwBiB,mCAxBjBA,GA0BM,iBA1BNA,GA4BQ,mBA5BRA,GA8BO,kBC9BPC,GACO,uBADPA,GAEO,uBAFPA,GAGO,uBAHPA,GAKO,uBALPA,GAMO,uBANPA,GAOO,uBAPPA,GASO,uBATPA,GAUO,uBAVPA,GAWO,uBAXPA,GAac,8BAbdA,GAcc,8BAddA,GAec,8BAfdA,GAiBO,uBAjBPA,GAkBO,uBAlBPA,GAmBO,uBAnBPA,GAqBO,kBArBPA,GAsBM,iBCtBNC,GACO,wBADPA,GAEO,wBAFPA,GAGO,wBAHPA,GAKO,wBALPA,GAMO,wBANPA,GAOO,wBAPPA,GASO,wBATPA,GAUO,wBAVPA,GAWO,wBAXPA,GAaO,wBAbPA,GAcO,wBAdPA,GAeO,wBAfPA,GAiBM,iBAjBNA,GAmBO,kBCnBPC,GACO,+BADPA,GAEO,+BAFPA,GAGO,+BAHPA,GAKU,kCALVA,GAMU,kCANVA,GAOU,kCAPVA,GASQ,kBCTRC,GACO,+BADPA,GAEO,+BAFPA,GAGO,+BAHPA,GAKU,kCALVA,GAMU,kCANVA,GAOU,kCAPVA,GASQ,kBCTRC,GACO,iCADPA,GAEO,iCAFPA,GAGO,iCAHPA,GAKU,oCALVA,GAMU,oCANVA,GAOU,oCAPVA,GASQ,kBCTRC,GACO,8BADPA,GAEO,8BAFPA,GAGO,8BAHPA,GAKU,iCALVA,GAMU,iCANVA,GAOU,iCAPVA,GASQ,kBCTRC,GACO,4BADPA,GAEO,4BAFPA,GAGO,4BAHPA,GAKO,4BALPA,GAMO,4BANPA,GAOO,4BAPPA,GASO,4BATPA,GAUO,4BAVPA,GAWO,4BAXPA,GAaO,4BAbPA,GAcO,4BAdPA,GAeO,4BAfPA,GAiBM,iBAjBNA,GAmBO,kBCnBPC,GACO,wCADPA,GAEO,wCAFPA,GAGO,wCAHPA,GAKO,wCALPA,GAMO,wCANPA,GAOO,wCAPPA,GASO,wCATPA,GAUO,wCAVPA,GAWO,wCAXPA,GAaQ,kBAbRA,GAcQ,kBAdRA,GAeQ,kBAfRA,GAiBO,wCAjBPA,GAkBO,wCAlBPA,GAmBO,wCAnBPA,GAqBgB,iDArBhBA,GAsBgB,iDAtBhBA,GAuBgB,iDAvBhBA,GAyBgB,iDAzBhBA,GA0BgB,iDA1BhBA,GA2BgB,iDA3BhBA,GA6Bc,+CA7BdA,GA8Bc,+CA9BdA,GA+Bc,+CA/BdA,GAiCgB,0BAjChBA,GAkCgB,0BClChBC,GAAgC,CACzClD,eAAgB,+BAChBC,eAAgB,+BAChBC,eAAgB,+BAEhBC,eAAgB,+BAChBC,eAAgB,+BAChBC,eAAgB,+BAEhBC,eAAgB,+BAChBC,eAAgB,+BAChBC,eAAgB,+BAEhB2C,qBAAsB,oCACtBC,qBAAsB,qCACtBC,qBAAsB,qCAEtBC,cAAe,iBCjBNC,GACO,yBADPA,GAEO,yBAFPA,GAGO,yBAHPA,GAKO,yBALPA,GAMO,yBANPA,GAOO,yBAPPA,GASO,yBATPA,GAUO,yBAVPA,GAWO,yBAXPA,GAaO,yBAbPA,GAcO,yBAdPA,GAeO,yBAfPA,GAiBS,kBAjBTA,GAkBS,2BAlBTA,GAmBS,2BAnBTA,GAqBY,8BArBZA,GAsBY,8BAtBZA,GAuBY,8BAvBZA,GAyBM,iBAzBNA,GA2BO,kBA3BPA,GA6Be,0BC7BfC,GAAwB,CACnCxD,eAAgB,8BAChBC,eAAgB,8BAChBC,eAAgB,8BAEhBC,eAAgB,8BAChBC,eAAgB,8BAChBC,eAAgB,8BAEhBC,eAAgB,8BAChBC,eAAgB,8BAChBC,eAAgB,8BAEhBO,eAAgB,8BAChBC,eAAgB,8BAChBC,eAAgB,8BAEhBC,iBAAkB,gCAClBC,iBAAkB,gCAClBC,iBAAkB,gCAElBqC,oBAAqB,oBACrBC,oBAAqB,oBACrBC,oBAAqB,oBAErBC,oBAAqB,oBACrBC,oBAAqB,oBACrBC,oBAAqB,oBAErBC,qBAAsB,uBACtBC,qBAAsB,uBACtBC,qBAAsB,uBAEtBC,kBAAmB,oBACnBC,kBAAmB,oBACnBC,kBAAmB,oBAEnBC,kBAAmB,oBACnBC,kBAAmB,oBACnBC,kBAAmB,oBAEnBC,mBAAoB,qBACpBC,mBAAoB,qBACpBC,mBAAoB,qBAEpBC,oBAAqB,sBACrBC,oBAAqB,sBACrBC,oBAAqB,sBAErBxD,eAAgB,iBAEhBC,gBAAiB,kBAEjBC,wBAAyB,2BCrDduD,GACO,8BADPA,GAEO,8BAFPA,GAGO,8BAHPA,GAKU,iCALVA,GAMU,iCANVA,GAOU,iCAPVA,GASQ,oBCTRC,GACW,qBADXA,GAEW,qBAFXA,GAGW,qBCHXC,GAAoB,CAC/BhF,eAAgB,0BAChBC,eAAgB,0BAChBC,eAAgB,0BAEhBC,eAAgB,0BAChBC,eAAgB,0BAChBC,eAAgB,0BAEhBC,eAAgB,0BAChBC,eAAgB,0BAChBC,eAAgB,0BAEhByE,uBAAwB,uBACxBC,uBAAwB,uBACxBC,uBAAwB,uBAExBvE,yBAA0B,oCAC1BC,yBAA0B,oCAC1BC,yBAA0B,oCAE1BC,eAAgB,0BAChBC,eAAgB,0BAChBC,eAAgB,0BAEhBC,iBAAkB,4BAClBC,iBAAkB,4BAClBC,iBAAkB,4BAElBgE,mBAAoB,qBACpBC,mBAAoB,qBACpBC,mBAAoB,qBAEpBjE,eAAgB,iBAIhBC,gBAAiB,kBAEjBC,wBAAyB,0BAEzBgE,QAAS,UACTC,cAAe,iBC1CJC,GAAkB,CAC3BzF,eAAgB,yBAChBC,eAAgB,yBAChBC,eAAgB,yBAEhBC,eAAgB,yBAChBC,eAAgB,yBAChBC,eAAgB,yBAEhBC,eAAgB,uBAChBC,eAAgB,uBAChBC,eAAgB,uBAEhBO,eAAgB,uBAChBC,eAAgB,uBAChBC,eAAgB,uBAEhByE,sBAAuB,sBACvBC,sBAAuB,sBACvBC,sBAAuB,wBAEvBC,oBAAqB,sBACrBC,oBAAqB,sBACrBC,oBAAqB,sBAErBC,mBAAoB,mBACpBC,mBAAoB,mBACpBC,mBAAoB,qBAEpBC,oBAAqB,sBACrBC,oBAAqB,sBACrBC,oBAAqB,sBAErBC,oBAAqB,sBACrBC,oBAAqB,sBACrBC,oBAAqB,sBAErBtF,iBAAkB,wBAClBC,iBAAkB,wBAClBC,iBAAkB,wBAElBqF,kBAAmB,2BACnBC,kBAAmB,2BACnBC,kBAAmB,2BAEnBtF,eAAe,iBAEfC,gBAAgB,kBAEhBC,wBAAwB,0BAExBqF,2BAA4B,6BAC5BC,2BAA4B,6BAC5BC,2BAA4B,8BCrDnBC,GACO,0BADPA,GAEO,0BAFPA,GAGO,0BAHPA,GAKU,6BALVA,GAMU,6BANVA,GAOU,6BAPVA,GASQ,kBCTRC,GACO,0BADPA,GAEO,0BAFPA,GAGO,0BAHPA,GAKU,6BALVA,GAMU,6BANVA,GAOU,6BAPVA,GASS,4BATTA,GAUS,4BAVTA,GAWS,4BAXTA,GAaQ,kBCbRC,GACc,0BADdA,GAEc,0BAFdA,GAGc,0BAHdA,GAIc,0BAJdA,GAMa,yBANbA,GAOmB,+BAPnBA,GAQqB,iCARrBA,GASqB,iCATrBA,GAUqB,iCAVrBA,GAagB,4BAbhBA,GAeK,mCAfLA,GAgBK,mCAhBLA,GAiBK,mCAjBLA,GAmBE,cAnBFA,GAqBM,oCArBNA,GAuBF,UAvBEA,GAwBI,gBCxBJC,GACO,kCADPA,GAEO,kCAFPA,GAGO,kCAHPA,GAKU,qCALVA,GAMU,qCANVA,GAOU,qCAPVA,GASa,uBATbA,GAUa,uBAVbA,GAWa,uBAXbA,GAaQ,kBCZRC,GACgB,0BADhBA,GAEgB,0BAFhBA,GAGgB,0BAHhBA,GAKa,uBALbA,GAMa,uBANbA,GAOa,uBAPbA,GASe,yBATfA,GAUe,yBAVfA,GAWe,yBAXfA,GAamB,6BAbnBA,GAcmB,6BAdnBA,GAemB,6BAfnBA,GAgBO,kBCjBPC,GAAwB,CACnCC,eAAgB,uBAChBC,eAAgB,uBAChBC,eAAgB,uBAEhBjH,eAAgB,4BAChBC,eAAgB,4BAChBC,eAAgB,4BAEhBgH,gBAAiB,2BACjBC,gBAAiB,2BACjBC,gBAAiB,2BAEjB3G,eAAgB,4BAChBC,eAAgB,4BAChBC,eAAgB,6BCfL0G,GACO,0BADPA,GAEO,0BAFPA,GAGO,0BAHPA,GAKU,6BALVA,GAMU,6BANVA,GAOU,6BAPVA,GASQ,kBATRA,GAWQ,iBAXRA,GAaS,4BAbTA,GAcS,4BAdTA,GAeU,4BAfVA,GAiBiB,0BCjBjBC,GACO,qBADPA,GAEO,qBAFPA,GAGO,qBAHPA,GAKO,qBALPA,GAMO,qBANPA,GAOO,qBAPPA,GASO,qBATPA,GAUO,qBAVPA,GAWO,qBAXPA,GAaO,qBAbPA,GAcO,qBAdPA,GAeO,qBAfPA,GAiBS,iBAjBTA,GAkBS,iBAlBTA,GAmBS,mBAnBTA,GAqBS,uBArBTA,GAsBS,uBAtBTA,GAuBS,uBAvBTA,GAyBU,oBAzBVA,GA0BU,oBA1BVA,GA2BU,oBA3BVA,GA6BU,wBA7BVA,GA8BU,wBA9BVA,GA+BU,wBA/BVA,GAiCM,iBAjCNA,GAmCO,kBAnCPA,GAqCe,0BCrCfC,GACO,yBADPA,GAEO,yBAFPA,GAGO,yBAHPA,GAKO,yBALPA,GAMO,yBANPA,GAOO,yBAPPA,GASO,yBATPA,GAUO,yBAVPA,GAWO,yBAXPA,GAiBS,kBAjBTA,GAkBS,2BAlBTA,GAmBS,2BAnBTA,GAqBY,8BArBZA,GAsBY,8BAtBZA,GAuBY,8BAvBZA,GAyBM,iBAzBNA,GA2BO,kBA3BPA,GA6Be,0BC7BfC,GACO,0BADPA,GAEO,0BAFPA,GAGO,0BAHPA,GAKU,6BALVA,GAMU,6BANVA,GAOU,6BAPVA,GASQ,kBCTRC,GAAsB,CAC/B/H,eAAgB,4BAChBC,eAAgB,4BAChBC,eAAgB,4BAEhBC,eAAgB,4BAChBC,eAAgB,4BAChBC,eAAgB,4BAEhBC,eAAgB,4BAChBC,eAAgB,4BAChBC,eAAgB,4BAEhBwH,gBAAiB,6BACjBC,gBAAiB,6BACjBC,gBAAiB,6BAEjBC,gBAAiB,6BACjBC,gBAAiB,6BACjBC,gBAAiB,6BAEjBzH,yBAA0B,sCAC1BC,yBAA0B,sCAC1BC,yBAA0B,sCAE1BC,eAAgB,4BAChBC,eAAgB,4BAChBC,eAAgB,4BAEhBC,iBAAkB,8BAClBC,iBAAkB,8BAClBC,iBAAkB,8BAElBC,eAAe,iBAEfiH,iBAAiB,mBAEjBhH,gBAAgB,kBAEhBC,wBAAwB,2BCvCfgH,GAAwB,CACjCC,gBAAiB,+BACjBC,gBAAiB,+BACjBC,gBAAiB,+BAEjBC,eAAgB,8BAChBC,eAAgB,8BAChBC,eAAgB,8BAEhB7I,eAAgB,8BAChBC,eAAgB,8BAChBC,eAAgB,8BAEhBI,eAAgB,8BAChBC,eAAgB,8BAChBC,eAAgB,8BAEhBsI,sBAAuB,qCACvBC,sBAAuB,qCACvBC,sBAAuB,qCAEvBC,oBAAqB,mCACrBC,oBAAqB,mCACrBC,oBAAqB,mCAGrBpI,eAAgB,8BAChBC,eAAgB,8BAChBC,eAAgB,8BAEhBC,iBAAkB,gCAClBC,iBAAkB,gCAClBC,iBAAkB,gCAElBC,eAAe,iBAEfiH,iBAAiB,mBAEjBhH,gBAAgB,kBAEhBC,wBAAwB,0BAExB6H,wBAA0B,2BC1CjBC,GAEc,0BAFdA,GAGc,0BAHdA,GAIc,0BAJdA,GAKc,0BALdA,GAOa,yBAPbA,GAQmB,+BARnBA,GASqB,iCATrBA,GAUqB,iCAVrBA,GAWqB,iCAXrBA,GAcgB,4BAdhBA,GAgBK,mCAhBLA,GAiBK,mCAjBLA,GAkBK,mCAlBLA,GAoBE,cApBFA,GAsBM,oCAtBNA,GAwBF,UAxBEA,GAyBI,gBCvBV,SAASC,KAAkC,IAArBC,EAAoB,uDAAZ,GAAIC,EAAQ,uCAC/C,OAAQA,EAAOC,MACb,KAAK1G,GACH,OAAO,2BACFwG,GADL,IAEEG,OAAQF,EAAOG,SAEnB,KAAK5G,GACH,OAAO,2BACFwG,GADL,IAEEK,SAAS,IAEb,KAAK7G,GACH,OAAO,2BACFwG,GADL,IAEEM,MAAOL,EAAOM,QAElB,KAAK/G,GACH,OAAO,2BACFwG,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKhH,GACH,OAAO,2BACFwG,GADL,IAEES,WAAW,IAEf,KAAKjH,GACH,OAAO,2BACFwG,GADL,IAEEU,YAAaT,EAAOM,QAExB,KAAK/G,GACH,OAAO,2BACFwG,GADL,IAEEQ,MAAOP,EAAOO,QAElB,QACE,OAAOR,GCxCN,IAAMW,GACO,2BADPA,GAEO,2BAFPA,GAGO,2BAHPA,GAKU,8BALVA,GAMU,8BANVA,GAOU,8BAPVA,GASQ,kBCTd,IAAMC,GACO,wBADPA,GAEO,wBAFPA,GAGO,wBAHPA,GAKU,2BALVA,GAMU,2BANVA,GAOU,2BAPVA,GASQ,kBCTd,IAAMC,GAA0B,CACnCpK,eAAgB,gCAChBC,eAAgB,gCAChBC,eAAgB,gCAEhBC,eAAgB,gCAChBC,eAAgB,gCAChBC,eAAgB,gCAEhBC,eAAgB,gCAChBC,eAAgB,gCAChBC,eAAgB,gCAEhB6J,oBAAqB,qCACrBC,oBAAqB,qCACrBC,oBAAqB,qCAErB3J,yBAA0B,0CAC1BC,yBAA0B,0CAC1BC,yBAA0B,0CAE1BC,eAAgB,gCAChBC,eAAgB,gCAChBC,eAAgB,gCAEhBC,iBAAkB,kCAClBC,iBAAkB,kCAClBC,iBAAkB,kCAElBC,eAAe,iBAEfiH,iBAAiB,mBAEjBhH,gBAAgB,kBAEhBC,wBAAwB,2BCnCrB,IAAMiJ,GAA8B,CACvChC,gBAAiB,qCACjBC,gBAAiB,qCACjBC,gBAAiB,qCAEjBC,eAAgB,oCAChBC,eAAgB,oCAChBC,eAAgB,oCAEhB7I,eAAgB,oCAChBC,eAAgB,oCAChBC,eAAgB,oCAEhBI,eAAgB,oCAChBC,eAAgB,oCAChBC,eAAgB,oCAEhBsI,sBAAuB,2CACvBC,sBAAuB,2CACvBC,sBAAuB,2CAEvBC,oBAAqB,yCACrBC,oBAAqB,yCACrBC,oBAAqB,yCAGrBpI,eAAgB,oCAChBC,eAAgB,oCAChBC,eAAgB,oCAEhBC,iBAAkB,sCAClBC,iBAAkB,sCAClBC,iBAAkB,sCAElBC,eAAe,iBAEfiH,iBAAiB,mBAEjBhH,gBAAgB,kBAEhBC,wBAAwB,0BAExB6H,wBAA0B,2BC1CvB,IAAMqB,GAA2B,CACtCC,wBAAyB,0BACzBC,wBAAyB,0BACzBC,wBAAyB,0BACzBC,wBAAyB,0BAEzBC,uBAAwB,yBAExBC,8BAA+B,gCAC/BC,8BAA+B,gCAE/B1K,eAAgB,kCAChBC,eAAgB,kCAChBC,eAAgB,kCAEhByK,oBAAqB,uCACrBC,oBAAqB,uCACrBC,oBAAqB,uCAErBC,sBAAuB,yCACvBC,sBAAuB,yCACvBC,sBAAuB,yCAEvBhK,gBAAiB,mCAEjBiE,QAAS,UACTC,cAAe,iBC1BV,IAAM+F,GACO,kCADPA,GAEO,kCAFPA,GAGO,kCAHPA,GAKU,qCALVA,GAMU,qCANVA,GAOU,qCAPVA,GASQ,kBCTd,I,GAAMC,GAAoB,CAC/BxL,eAAgB,0BAChBC,eAAgB,0BAChBC,eAAgB,0BAEhBC,eAAgB,0BAChBC,eAAgB,0BAChBC,eAAgB,0BAEhBC,eAAgB,0BAChBC,eAAgB,0BAChBC,eAAgB,0BAEhBiL,kBAAmB,6BACnBC,kBAAmB,6BACnBC,kBAAmB,6BAEnBzK,iBAAkB,4BAClBC,iBAAkB,4BAClBC,iBAAkB,4BAElBwK,kBAAmB,gCACnBC,kBAAmB,gCACnBC,kBAAmB,gCAEnBzK,eAAgB,iBAChBC,gBAAiB,kBACjBC,wBAAyB,0BAEzBwK,gBAAiB,kBACjBC,iBAAkB,mBAClBC,yBAA0B,2BAG1BC,uBAAwB,yBACxBC,uBAAwB,yBACxBC,uBAAwB,yBAExBC,0BAA2B,qCAC3BC,0BAA2B,qCAC3BC,0BAA2B,sCCtCtB,SAASC,KAAkC,IAArBjD,EAAoB,uDAAZ,GAAIC,EAAQ,uCAC/C,OAAQA,EAAOC,MACb,KAAKrC,GAAsBC,eACzB,OAAO,2BACFkC,GADL,IAEEkD,UAAU,IAEd,KAAKrF,GAAsBE,eACzB,OAAO,2BACFiC,GADL,IAEEM,MAAOL,EAAOkD,OAElB,KAAKtF,GAAsBG,eACzB,OAAO,2BACFgC,GADL,IAEEQ,MAAOP,EAAOO,QAGlB,KAAK3C,GAAsBI,gBACzB,OAAO,2BACF+B,GADL,IAEEkD,UAAU,IAEd,KAAKrF,GAAsBK,gBACzB,OAAO,2BACF8B,GADL,IAEEM,MAAOL,EAAOkD,OAElB,KAAKtF,GAAsBM,gBACzB,OAAO,2BACF6B,GADL,IAEEQ,MAAOP,EAAOO,QAGlB,KAAK3C,GAAsB9G,eACzB,OAAO,2BACFiJ,GADL,IAEEkD,UAAU,IAEd,KAAKrF,GAAsB7G,eACzB,OAAO,2BACFgJ,GADL,IAEEoD,KAAMnD,EAAOkD,OAEjB,KAAKtF,GAAsB5G,eACzB,OAAO,2BACF+I,GADL,IAEEQ,MAAOP,EAAOO,QAKlB,KAAK3C,GAAsBrG,eACzB,OAAO,2BACFwI,GADL,IAEEkD,UAAU,IAGd,KAAKrF,GAAsBpG,eACzB,OAAO,2BACFuI,GADL,IAEEM,MAAOL,EAAOkD,OAGlB,KAAKtF,GAAsBnG,eACzB,OAAO,2BACFsI,GADL,IAEEQ,MAAOP,EAAOO,QAElB,QACE,OAAOR,GCxBb,IAoDeqD,GApDKC,aAAe,IAC/BC,KC/CG,WAAmC,IAArBvD,EAAoB,uDAAZ,GAAIC,EAAQ,uCACvC,OAAQA,EAAOC,MACb,KAAK/H,GACH,OAAO,2BACF6H,GADL,IAEEG,OAAQF,EAAOG,SAInB,KAAKlE,GAAgBsH,mBACnB,OAAO,2BACFxD,GADL,IAEEK,SAAS,IAEb,KAAKnE,GAAgBuH,mBACnB,OAAO,2BACFzD,GADL,IAEE0D,QAASzD,EAAOM,QAEpB,KAAKrE,GAAgByH,mBACnB,OAAO,2BACF3D,GADL,IAEEQ,MAAOP,EAAOO,QAGlB,KAAKrI,GACH,OAAO,2BACF6H,GADL,IAEE4D,WAAY3D,EAAOG,SAEvB,KAAKjI,GACH,OAAO,2BACF6H,GADL,IAEE6D,mBAAoB5D,EAAOG,SAE/B,KAAKjI,GACH,OAAO,2BACF6H,GADL,IAEEK,SAAS,IAEb,KAAKlI,GACH,OAAO,2BACF6H,GADL,IAEEM,MAAOL,EAAOM,QAElB,KAAKpI,GACH,OAAO,2BACF6H,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKrI,GACH,OAAO,2BACF6H,GADL,IAEEkD,UAAU,IAEd,KAAK/K,GACH,OAAO,2BACF6H,GADL,IAEEM,MACiB,MAAfN,EAAMM,MAAgB,CAACL,EAAOkD,MAA9B,CAAuClD,EAAOkD,MAA9C,mBAAuDnD,EAAMM,UAEnE,KAAKnI,GACH,OAAO,2BACF6H,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKrI,GACH,OAAO,2BACF6H,GADL,IAEEM,MAAON,EAAMM,MAAMwD,KAAI,SAACV,GAAD,OACrBA,EAAKW,QAAU9D,EAAOkD,KAAKY,OAA3B,2BAAyCX,GAAzC,IAA+CY,UAAU,IAASZ,OAGxE,KAAKjL,GACH,OAAO,2BACF6H,GADL,IAEEM,MAAON,EAAMM,MAAMwD,KAAI,SAACV,GAAD,OACrBA,EAAKW,SAAW9D,EAAOkD,KAAKY,OAAS9D,EAAOkD,KAAOC,OAGzD,KAAKjL,GACH,OAAO,2BACF6H,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKrI,GACH,OAAO,2BACF6H,GADL,IAEEiE,UAAU,IAEd,KAAK9L,GACH,OAAO,2BACF6H,GADL,IAEEM,MAAON,EAAMM,MAAMwD,KAAI,SAACV,GAAD,OACrBA,EAAKW,SAAW9D,EAAOkD,KACnB,CACEY,OAAQX,EAAKc,OACbC,SAAUf,EAAKe,SACfC,MAAOhB,EAAKgB,MACZC,SAAUjB,EAAKiB,SACfC,UAAWlB,EAAKkB,UAChBC,YAAanB,EAAKmB,YAClBC,OAAQpB,EAAKoB,OACbC,SAAUrB,EAAKqB,SACfC,SAAUtB,EAAKuB,SACfC,SAAUxB,EAAKwB,SACfC,gBAAiBzB,EAAKwB,SACtBE,YAAa1B,EAAK0B,aAEpB1B,OAIV,KAAKjL,GACH,OAAO,2BACF6H,GADL,IAEEK,SAAS,IAEb,KAAKlI,GACH,OAAO,2BACF6H,GADL,IAEE+E,QAAS9E,EAAOM,QAEpB,KAAKpI,GACH,OAAO,2BACF6H,GADL,IAEEQ,MAAOP,EAAOO,QAEhB,KAAKrI,GACL,OAAO,2BACF6H,GADL,IAEEK,SAAS,IAEb,KAAKlI,GACH,OAAO,2BACF6H,GADL,IAEEgF,KAAM/E,EAAOM,QAEjB,KAAKpI,GAML,KAAKA,GACH,OAAO,2BACF6H,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKrI,GACH,OAAO,2BACF6H,GADL,IAEEiF,YAAY,IAEhB,KAAK9M,GACH,OAAO,2BACF6H,GADL,IAEEM,MAAON,EAAMM,MAAMwD,KAAI,SAACV,GAAD,OACrBA,EAAKW,SAAW9D,EAAOkD,KAAKY,OACxB,CACEA,OAAQX,EAAKW,OACbI,SAAUf,EAAKe,SACfC,MAAOhB,EAAKgB,MACZC,SAAUjB,EAAKiB,SACfC,UAAWlB,EAAKkB,UAChBC,YAAanB,EAAKmB,YAClBC,OAAQpB,EAAKoB,OACbC,SAAUrB,EAAKqB,SACfC,SAAUzE,EAAOkD,KAAKuB,SACtBQ,UAAW9B,EAAK8B,UAChBN,SAAUxB,EAAKwB,SACfC,gBAAiBzB,EAAKwB,SACtBE,YAAa1B,EAAK0B,aAEpB1B,OAGV,KAAKjL,GACH,OAAO,2BACF6H,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKrI,GACH,OAAO,2BACF6H,GADL,IAEES,WAAW,IAEf,KAAKtI,GACH,OAAO,2BACF6H,GADL,IAEEU,YAAaT,EAAOM,QAExB,KAAKpI,GACH,OAAO,2BACF6H,GADL,IAEEQ,MAAOP,EAAOO,QAElB,QACE,OAAOR,IDtJTmF,MEhDG,WAAoC,IAArBnF,EAAoB,uDAAZ,GAAIC,EAAQ,uCACtC,OAAQA,EAAOC,MACX,KAAKjI,EACD,MAAO,CACHiI,KAAM,gBACNkF,QAASnF,EAAOmF,SAEpB,KAAKnN,EACL,MAAO,CACHiI,KAAM,gBACNkF,QAASnF,EAAOmF,SAExB,KAAKnN,EACD,MAAO,CACHiI,KAAM,eACNkF,QAASnF,EAAOmF,SAExB,KAAKnN,EACD,MAAO,GACX,QACI,OAAO+H,IF6BfqF,OGjDG,WAAqC,IAArBrF,EAAoB,uDAAZ,GAAIC,EAAQ,uCACvC,OAAQA,EAAOC,MACX,KAAK1J,EAAgBuB,gBACjB,OAAO,2BACAiI,GADP,IAEIG,OAAQF,EAAOG,SAEvB,KAAK5J,EAAgBsB,eACjB,OAAO,2BACAkI,GADP,IAEI4D,WAAY3D,EAAOG,SAO3B,KAAK5J,EAAgBwB,wBACjB,OAAO,2BACAgI,GADP,IAEI6D,mBAAoB5D,EAAOG,SAOnC,KAAK5J,EAAgBO,eACjB,OAAO,2BACAiJ,GADP,IAEIK,SAAS,IAEjB,KAAK7J,EAAgBQ,eACjB,OAAO,2BACAgJ,GADP,IAEIM,MAAOL,EAAOM,QAGtB,KAAK/J,EAAgBS,eACjB,OAAO,2BACA+I,GADP,IAEIQ,MAAOP,EAAOO,QAGtB,KAAKhK,EAAgBa,yBACjB,OAAO,2BACA2I,GADP,IAEIK,SAAS,IAEjB,KAAK7J,EAAgBc,yBACjB,OAAO,2BACA0I,GADP,IAEIsF,WAAYrF,EAAOM,QAG3B,KAAK/J,EAAgBe,yBACjB,OAAO,2BACAyI,GADP,IAEIQ,MAAOP,EAAOO,QAGtB,KAAKhK,EAAgBC,eACjB,OAAO,2BACAuJ,GADP,IAEIkD,UAAU,IAElB,KAAK1M,EAAgBE,eACjB,OAAO,2BACAsJ,GADP,IAEIM,MAAsB,MAAfN,EAAMM,MAAgB,CAACL,EAAOkD,MAA9B,CAAuClD,EAAOkD,MAA9C,mBAAuDnD,EAAMM,UAE5E,KAAK9J,EAAgBG,eACjB,OAAO,2BACAqJ,GADP,IAEIQ,MAAOP,EAAOO,QAGtB,KAAKhK,EAAgBI,eACjB,OAAO,2BACAoJ,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKmC,WAAatF,EAAOkD,KAAKoC,SAA9B,2BAA8CnC,GAA9C,IAAoDY,UAAU,IAASZ,OAGnF,KAAK5M,EAAgBK,eACjB,OAAO,2BACAmJ,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKmC,WAAatF,EAAOkD,KAAKoC,SAAWtF,EAAOkD,KAAOC,OAGnE,KAAK5M,EAAgBM,eACjB,OAAO,2BACAkJ,GADP,IAEIQ,MAAOP,EAAOO,QAGtB,KAAKhK,EAAgBgB,eACjB,OAAO,2BACAwI,GADP,IAEIiE,UAAU,IAElB,KAAKzN,EAAgBiB,eACjB,OAAO,2BACAuI,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKmC,WAAatF,EAAOkD,KAAO,CAC5BmB,UAAWlB,EAAKkB,UAChBkB,WAAYpC,EAAKoC,WAIjBb,SAAUvB,EAAKuB,UAEfvB,OAGhB,KAAK5M,EAAgBkB,eACjB,OAAO,2BACAsI,GADP,IAEIQ,MAAOP,EAAOO,QAGtB,KAAKhK,EAAgBU,qBAClB,OAAO,2BACA8I,GADP,IAEIK,SAAS,IAEhB,KAAK7J,EAAgBW,qBAClB,OAAO,2BACA6I,GADP,IAEIyF,UAAWxF,EAAOM,QAEzB,KAAK/J,EAAgBY,qBAClB,OAAO,2BACA4I,GADP,IAEIQ,MAAOP,EAAOO,QAsCrB,KAAKhK,EAAgBmB,iBACjB,OAAO,2BACAqI,GADP,IAEIiF,YAAY,IAEpB,KAAKzO,EAAgBoB,iBACjB,OAAO,2BACAoI,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKmC,WAAatF,EAAOkD,KAAKoC,SAAW,CACrCjB,UAAWlB,EAAKkB,UAChBkB,WAAYpC,EAAKoC,WAIjBN,UAAW9B,EAAK8B,UAChBR,SAAUzE,EAAOkD,KAAKuB,SACtBI,YAAa1B,EAAK0B,aAClB1B,OAGhB,KAAK5M,EAAgBqB,iBACjB,OAAO,2BACAmI,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,IHvJf0F,QIlDG,WAAsC,IAArB1F,EAAoB,uDAAZ,GAAIC,EAAQ,uCACxC,OAAQA,EAAOC,MACX,KAAKhI,GACD,OAAO,2BACA8H,GADP,IAEIG,OAAQF,EAAOG,SAEvB,KAAKlI,GACD,OAAO,2BACA8H,GADP,IAEI4D,WAAY3D,EAAOG,SAE3B,KAAKlI,GACD,OAAO,2BACA8H,GADP,IAEI6D,mBAAoB5D,EAAOG,SAEnC,KAAKlI,EACD,OAAO,2BACA8H,GADP,IAEIK,SAAS,IAEjB,KAAKnI,EACD,OAAO,2BACA8H,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAKrI,EACD,OAAO,2BACA8H,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKtI,EACD,OAAO,2BACA8H,GADP,IAEIK,SAAS,IAEjB,KAAKnI,EACD,OAAO,2BACA8H,GADP,IAEI2F,IAAK1F,EAAOM,QAEpB,KAAKrI,EACD,OAAO,2BACA8H,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKtI,EACD,OAAO,2BACA8H,GADP,IAEIK,SAAS,IAEjB,KAAKnI,EACD,OAAO,2BACA8H,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAKrI,EACD,OAAO,2BACA8H,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKtI,GACD,OAAO,2BACA8H,GADP,IAEIK,SAAS,IAEjB,KAAKnI,GACD,OAAO,2BACA8H,GADP,IAEI4F,QAAS3F,EAAOM,QAExB,KAAKrI,GACD,OAAO,2BACA8H,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKtI,GACD,OAAO,2BACA8H,GADP,IAEIK,SAAS,IAEjB,KAAKnI,GACD,OAAO,2BACA8H,GADP,IAEI6F,QAAS5F,EAAOM,QAExB,KAAKrI,GACD,OAAO,2BACA8H,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKtI,EACD,OAAO,2BACA8H,GADP,IAEIkD,UAAU,IAElB,KAAKhL,EACD,OAAO,2BACA8H,GADP,IAEIM,MAAsB,MAAfN,EAAMM,MAAgB,CAACL,EAAOkD,MAA9B,CAAuClD,EAAOkD,MAA9C,mBAAuDnD,EAAMM,UAE5E,KAAKpI,EACD,OAAO,2BACA8H,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKtI,EACD,OAAO,2BACA8H,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAK0C,WAAa7F,EAAOkD,KAAK2C,UAA9B,2BAA+C1C,GAA/C,IAAqDY,UAAU,IAASZ,OAGpF,KAAKlL,EACD,OAAO,2BACA8H,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAK0C,YAAc7F,EAAOkD,KAAK2C,UAAY7F,EAAOkD,KAAOC,OAGrE,KAAKlL,EACD,OAAO,2BACA8H,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKtI,EACD,OAAO,2BACA8H,GADP,IAEIiE,UAAU,IAElB,KAAK/L,EACD,OAAO,2BACA8H,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAK0C,YAAc7F,EAAOkD,KAAO,CAC7B2C,UAAW1C,EAAK0C,UAChBxB,UAAWlB,EAAKkB,UAChBC,YAAanB,EAAKmB,YAClBwB,YAAa3C,EAAK2C,YAClBC,YAAa5C,EAAK4C,YAClBC,mBAAoB7C,EAAK6C,mBACzBC,gBAAiB9C,EAAK8C,gBACtBC,eAAgB/C,EAAK+C,eACrBC,kBAAmBhD,EAAKgD,kBACxBC,aAAcjD,EAAKiD,aACnBC,aAAclD,EAAKkD,aACnBC,oBAAqBnD,EAAKmD,oBAC1BC,qBAAsBpD,EAAKoD,qBAC3B9B,UAAU,EACVI,YAAa1B,EAAK0B,YAClB2B,YAAarD,EAAKqD,YAClBC,WAAYtD,EAAKsD,WAEjBC,aAAcvD,EAAKuD,aAEnBC,gBAAiBxD,EAAKwD,gBACtBC,cAAezD,EAAKyD,cACpBC,eAAgB1D,EAAK0D,gBACrB1D,OAGhB,KAAKlL,EACD,OAAO,2BACA8H,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKtI,EACD,OAAO,2BACA8H,GADP,IAEIK,SAAS,IAEjB,KAAKnI,EACD,OAAO,2BACA8H,GADP,IAEI+G,SAAU9G,EAAOM,QAEzB,KAAKrI,EACD,OAAO,2BACA8H,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKtI,EACD,OAAO,2BACA8H,GADP,IAEIiF,YAAY,IAEpB,KAAK/M,EACD,OAAO,2BACA8H,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAK0C,YAAc7F,EAAOkD,KAAK2C,UAAY,CACvCA,UAAW1C,EAAK0C,UAChBxB,UAAWlB,EAAKkB,UAChBC,YAAanB,EAAKmB,YAClBwB,YAAa3C,EAAK2C,YAClBC,YAAa5C,EAAK4C,YAClBC,mBAAoB7C,EAAK6C,mBACzBC,gBAAiB9C,EAAK8C,gBACtBC,eAAgB/C,EAAK+C,eACrBC,kBAAmBhD,EAAKgD,kBACxBC,aAAcjD,EAAKiD,aACnBC,aAAclD,EAAKkD,aACnBC,oBAAqBnD,EAAKmD,oBAC1BC,qBAAsBpD,EAAKoD,qBAC3B9B,SAAUzE,EAAOkD,KAAKuB,SACtBQ,UAAW9B,EAAK8B,UAChBJ,YAAa1B,EAAK0B,YAClB2B,YAAarD,EAAKqD,YAClBG,gBAAiBxD,EAAKwD,gBACtBC,cAAezD,EAAKyD,cACpBC,eAAgB1D,EAAK0D,gBACrB1D,OAGhB,KAAKlL,EACD,OAAO,2BACA8H,GADP,IAEIQ,MAAOP,EAAOO,QAGtB,QACI,OAAOR,IJ3KfgH,KKnDG,WAAmC,IAArBhH,EAAoB,uDAAZ,GAAIC,EAAQ,uCACrC,OAAQA,EAAOC,MACX,KAAK9H,GAAoBL,gBACrB,OAAO,2BACAiI,GADP,IAEIG,OAAQF,EAAOG,SAEvB,KAAKhI,GAAoBN,eACrB,OAAO,2BACAkI,GADP,IAEI4D,WAAY3D,EAAOG,SAE3B,KAAKhI,GAAoBJ,wBACrB,OAAO,2BACAgI,GADP,IAEI6D,mBAAoB5D,EAAOG,SAEnC,KAAKhI,GAAoBO,kBACrB,OAAO,2BACAqH,GADP,IAEIiH,MAAOhH,EAAOiH,WAEtB,KAAK9O,GAAoBrB,eACrB,OAAO,2BACAiJ,GADP,IAEIK,SAAS,IAEjB,KAAKjI,GAAoBpB,eACrB,OAAO,2BACAgJ,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAKnI,GAAoBnB,eACrB,OAAO,2BACA+I,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKpI,GAAoB3B,eACrB,OAAO,2BACAuJ,GADP,IAEIkD,UAAU,IAElB,KAAK9K,GAAoB1B,eACrB,OAAO,2BACAsJ,GADP,IAEIM,MAAsB,MAAfN,EAAMM,MAAgB,CAACL,EAAOkD,MAA9B,CAAuClD,EAAOkD,MAA9C,mBAAuDnD,EAAMM,UAE5E,KAAKlI,GAAoBzB,eACrB,OAAO,2BACAqJ,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKpI,GAAoBxB,eACrB,OAAO,2BACAoJ,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKoB,SAAWvE,EAAOkD,KAAKqB,OAA5B,2BAA0CpB,GAA1C,IAAgDY,UAAU,IAASZ,OAG/E,KAAKhL,GAAoBvB,eACrB,OAAO,2BACAmJ,GADP,IAEImH,WAAYnH,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OAC5BA,EAAKoB,SAAWvE,EAAOkD,KAAKqB,OAASvE,EAAOkD,KAAOC,OAG/D,KAAKhL,GAAoBtB,eACrB,OAAO,2BACAkJ,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKpI,GAAoBZ,eACrB,OAAO,2BACAwI,GADP,IAEIiE,UAAU,IAElB,KAAK7L,GAAoBX,eACrB,OAAO,2BACAuI,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKoB,SAAWvE,EAAOkD,KAAO,CAC1BmB,UAAWlB,EAAKkB,UAChBC,YAAanB,EAAKmB,YAClB6C,OAAQhE,EAAKgE,OACb3C,SAAUrB,EAAKiE,SACfC,SAAUlE,EAAKkE,SACf3C,SAAUvB,EAAKuB,SACfG,YAAa1B,EAAK0B,aAClB1B,OAGhB,KAAKhL,GAAoBV,eACrB,OAAO,2BACAsI,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKpI,GAAoBC,mBACrB,OAAO,2BACA2H,GADP,IAEIK,SAAS,IAEjB,KAAKjI,GAAoBE,mBACrB,OAAO,2BACA0H,GADP,IAEI+E,QAAS9E,EAAOM,QAExB,KAAKnI,GAAoBG,mBAKzB,KAAKH,GAAoBnB,eACrB,OAAO,2BACA+I,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKpI,GAAoBI,kBACrB,OAAO,2BACAwH,GADP,IAEIuH,UAAU,IAElB,KAAKnP,GAAoBK,kBACrB,OAAO,2BACAuH,GADP,IAEIiH,MAAOhH,EAAOgH,QAEtB,KAAK7O,GAAoBM,kBACrB,OAAO,2BACAsH,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKpI,GAAoBT,iBACrB,OAAO,2BACAqI,GADP,IAEIiF,YAAY,IAEpB,KAAK7M,GAAoBR,iBACrB,OAAO,2BACAoI,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKoB,SAAWvE,EAAOkD,KAAKqB,OAAS,CACjCF,UAAWlB,EAAKkB,UAChBC,YAAanB,EAAKmB,YAClBC,OAAQpB,EAAKoB,OACbC,SAAUrB,EAAKqB,SACf6C,SAAUlE,EAAKkE,SACfpC,UAAW9B,EAAK8B,UAChBR,SAAUzE,EAAOkD,KAAKuB,SACtBI,YAAa1B,EAAK0B,aAClB1B,OAGhB,KAAKhL,GAAoBP,iBACrB,OAAO,2BACAmI,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,IL1GfwH,UMpDG,WAAwC,IAArBxH,EAAoB,uDAAZ,GAAIC,EAAQ,uCAC1C,OAAQA,EAAOC,MACX,KAAKtH,GACD,OAAO,2BACAoH,GADP,IAEIG,OAAQF,EAAOG,SAEvB,KAAKxH,GACD,OAAO,2BACAoH,GADP,IAEIK,SAAS,IAEjB,KAAKzH,GACD,OAAO,2BACAoH,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAK3H,GACD,OAAO,2BACAoH,GADP,IAEIQ,MAAOP,EAAOO,QAGtB,QACI,OAAOR,IN6BfyH,MOrDG,WAAoC,IAArBzH,EAAoB,uDAAZ,GAAIC,EAAQ,uCACxC,OAAQA,EAAOC,MACb,KAAKrH,GACH,OAAO,2BACFmH,GADL,IAEEkD,UAAU,IAEd,KAAKrK,GACH,OAAO,2BACFmH,GADL,IAEEM,MAAO,CAACL,EAAOkD,QAEnB,KAAKtK,GACH,OAAO,2BACFmH,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAK3H,GACH,OAAO,2BACFmH,GADL,IAEE0H,OAAQzH,EAAOkD,OAEnB,QACE,OAAOnD,IP+BT2H,KQtDG,WAAmC,IAArB3H,EAAoB,uDAAZ,GAAIC,EAAQ,uCACrC,OAAQA,EAAOC,MACX,KAAKpH,GACD,OAAO,2BACAkH,GADP,IAEIK,SAAS,IAEjB,KAAKvH,GACD,OAAO,2BACAkH,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAKzH,GACD,OAAO,2BACAkH,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,IRqCf4H,eSvDG,WAA6C,IAArB5H,EAAoB,uDAAZ,GAAIC,EAAQ,uCAC/C,OAAQA,EAAOC,MAEX,KAAKnH,GACD,OAAO,2BACAiH,GADP,IAEIkD,UAAU,IAElB,KAAKnK,GACD,OAAO,2BACAiH,GADP,IAEIM,MAAO,CAACL,EAAOkD,QAEvB,KAAKpK,GACD,OAAO,2BACAiH,GADP,IAEIQ,MAAOP,EAAOO,QAGtB,KAAKzH,GACD,OAAO,2BACAiH,GADP,IAEIkD,UAAU,IAElB,KAAKnK,GACD,OAAO,2BACAiH,GADP,IAEIM,MAAM,CAAEL,EAAOkD,MAAV,mBAAmBnD,EAAMM,UAEtC,KAAKvH,GACD,OAAO,2BACAiH,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKzH,GACD,OAAO,2BACAiH,GADP,IAEIK,SAAS,IAEjB,KAAKtH,GACD,OAAO,2BACAiH,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAKxH,GACD,OAAO,2BACAiH,GADP,IAEIQ,MAAOP,EAAOO,QAGtB,QACI,OAAOR,ITKf6H,WUxDG,WAAyC,IAArB7H,EAAoB,uDAAZ,GAAIC,EAAQ,uCAC3C,OAAQA,EAAOC,MACX,KAAKlH,GACD,OAAO,2BACAgH,GADP,IAEIG,OAAQF,EAAOG,SAEvB,KAAKpH,GACD,OAAO,2BACAgH,GADP,IAEIK,SAAS,IAEjB,KAAKrH,GACD,OAAO,2BACAgH,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAKvH,GACD,OAAO,2BACAgH,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKxH,GACD,OAAO,2BACAgH,GADP,IAEIS,WAAW,IAEnB,KAAKzH,GACD,OAAO,2BACAgH,GADP,IAEIU,YAAaT,EAAOM,QAE5B,KAAKvH,GACD,OAAO,2BACAgH,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,IVmBf8H,aWzDG,WAA2C,IAArB9H,EAAoB,uDAAZ,GAAIC,EAAQ,uCAC7C,OAAQA,EAAOC,MACX,KAAKS,GACD,OAAO,2BACAX,GADP,IAEIG,OAAQF,EAAOG,SAEvB,KAAKO,GACD,OAAO,2BACAX,GADP,IAEIK,SAAS,IAEjB,KAAKM,GACD,OAAO,2BACAX,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAKI,GACD,OAAO,2BACAX,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKG,GACD,OAAO,2BACAX,GADP,IAEIS,WAAW,IAEnB,KAAKE,GACD,OAAO,2BACAX,GADP,IAEIU,YAAaT,EAAOM,QAE5B,KAAKI,GACD,OAAO,2BACAX,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,IXoBf+H,UY1DG,WAAwC,IAArB/H,EAAoB,uDAAZ,GAAIC,EAAQ,uCAC1C,OAAQA,EAAOC,MACX,KAAKU,GACD,OAAO,2BACAZ,GADP,IAEIG,OAAQF,EAAOG,SAEvB,KAAKQ,GACD,OAAO,2BACAZ,GADP,IAEIK,SAAS,IAEjB,KAAKO,GACD,OAAO,2BACAZ,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAKK,GACD,OAAO,2BACAZ,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKI,GACD,OAAO,2BACAZ,GADP,IAEIS,WAAW,IAEnB,KAAKG,GACD,OAAO,2BACAZ,GADP,IAEIU,YAAaT,EAAOM,QAE5B,KAAKK,GACD,OAAO,2BACAZ,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,IZqBfgI,Ya3DG,WAA0C,IAArBhI,EAAoB,uDAAZ,GAAIC,EAAQ,uCAC9C,OAAQA,EAAOC,MACb,KAAKjH,GACH,OAAO,2BACF+G,GADL,IAEEG,OAAQF,EAAOG,SAEnB,KAAKnH,GACH,OAAO,2BACF+G,GADL,IAEEK,SAAS,IAEb,KAAKpH,GACH,OAAO,2BACF+G,GADL,IAEEM,MAAOL,EAAOM,QAElB,KAAKtH,GACH,OAAO,2BACF+G,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKvH,GACH,OAAO,2BACF+G,GADL,IAEES,WAAW,IAEf,KAAKxH,GACH,OAAO,2BACF+G,GADL,IAEEU,YAAaT,EAAOM,QAExB,KAAKtH,GACH,OAAO,2BACF+G,GADL,IAEEQ,MAAOP,EAAOO,QAElB,QACE,OAAOR,IbsBTiI,Uc5DG,WAAwC,IAArBjI,EAAoB,uDAAZ,GAAIC,EAAQ,uCAC1C,OAAQA,EAAOC,MACX,KAAK1E,GACD,OAAO,2BACAwE,GADP,IAEIkD,UAAU,IAElB,KAAK1H,GACD,OAAO,2BACAwE,GADP,IAEIM,MAAOL,EAAOkD,OAEtB,KAAK3H,GACD,OAAO,2BACAwE,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,Id2CfkI,Qe7DG,WAAsC,IAArBlI,EAAoB,uDAAZ,GAAIC,EAAQ,uCACxC,OAAQA,EAAOC,MACX,KAAK/G,GACD,OAAO,2BACA6G,GADP,IAEIG,OAAQF,EAAOG,SAEvB,KAAKjH,GACD,OAAO,2BACA6G,GADP,IAEI4D,WAAY3D,EAAOG,SAE3B,KAAKjH,GACD,OAAO,2BACA6G,GADP,IAEIK,SAAS,IAEjB,KAAKlH,GACD,OAAO,2BACA6G,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAKpH,GACD,OAAO,2BACA6G,GADP,IAEIQ,MAAOP,EAAOO,QAGtB,KAAKrH,GACD,OAAO,2BACA6G,GADP,IAEIK,SAAS,IAEjB,KAAKlH,GACD,OAAO,2BACA6G,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAKpH,GACD,OAAO,2BACA6G,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKrH,GACD,OAAO,2BACA6G,GADP,IAEIkD,UAAU,IAElB,KAAK/J,GACD,OAAO,2BACA6G,GADP,IAEIM,MAAsB,MAAfN,EAAMM,MAAgB,CAACL,EAAOkD,MAA9B,CAAuClD,EAAOkD,MAA9C,mBAAuDnD,EAAMM,UAE5E,KAAKnH,GACD,OAAO,2BACA6G,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKrH,GACD,OAAO,2BACA6G,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAK+E,SAAWlI,EAAOkD,KAAKgF,QAA5B,2BAA2C/E,GAA3C,IAAiDY,UAAU,IAASZ,OAGhF,KAAKjK,GACD,OAAO,2BACA6G,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAK+E,UAAYlI,EAAOkD,KAAKgF,QAAUlI,EAAOkD,KAAOC,OAGjE,KAAKjK,GACD,OAAO,2BACA6G,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKrH,GACD,OAAO,2BACA6G,GADP,IAEIiE,UAAU,IAElB,KAAK9K,GACD,OAAO,2BACA6G,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKgF,UAAYnI,EAAOkD,KAAO,CAC3BkF,UAAWjF,EAAKiF,UAChBC,UAAWlF,EAAKkF,UAChBF,QAAShF,EAAKgF,QACdG,aAAcnF,EAAKmF,aACnBC,UAAWpF,EAAKoF,UAChBC,UAAWrF,EAAKqF,UAChBC,UAAWtF,EAAKsF,UAChBC,OAAQvF,EAAKuF,OACbC,KAAMxF,EAAKwF,KACXC,SAAUzF,EAAKyF,UACfzF,OAGhB,KAAKjK,GACD,OAAO,2BACA6G,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,If5Cf8I,OgB9DG,WAAqC,IAArB9I,EAAoB,uDAAZ,GAAIC,EAAQ,uCACvC,OAAQA,EAAOC,MACX,KAAK9G,GACD,OAAO,2BACA4G,GADP,IAEI4D,WAAY3D,EAAOG,SAEvB,KAAKhH,GACD,OAAO,2BACA4G,GADP,IAEIG,OAAQF,EAAOG,SAE3B,KAAKhH,GACD,OAAO,2BACA4G,GADP,IAEIK,SAAS,IAEjB,KAAKjH,GACD,OAAO,2BACA4G,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAKnH,GACD,OAAO,2BACA4G,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKpH,GACD,OAAO,2BACA4G,GADP,IAEIkD,UAAU,IAElB,KAAK9J,GACD,OAAO,2BACA4G,GADP,IAEIM,MAAOL,EAAOkD,OAEtB,KAAK/J,GACD,OAAO,2BACA4G,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKpH,GACD,OAAO,2BACA4G,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAK2F,WAAa9I,EAAOkD,KAAK4F,UAA9B,2BAA+C3F,GAA/C,IAAqDY,UAAU,IAASZ,OAGpF,KAAKhK,GACD,OAAO,2BACA4G,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAK2F,YAAc9I,EAAOkD,KAAK4F,UAAY9I,EAAOkD,KAAOC,OAGrE,KAAKhK,GACD,OAAO,2BACA4G,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKpH,GACD,OAAO,2BACA4G,GADP,IAEIiE,UAAU,IAElB,KAAK7K,GACD,OAAO,2BACA4G,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAK4F,WAAa/I,EAAOkD,KAAO,CAC5BkF,UAAWjF,EAAKiF,UAChBC,UAAWlF,EAAKkF,UAChBU,SAAU5F,EAAK4F,SACfC,YAAa7F,EAAK6F,YAClBR,UAAWrF,EAAKqF,UAChBC,UAAWtF,EAAKsF,UAChBC,OAAOvF,EAAKuF,OACZC,KAAKxF,EAAKwF,KACVM,IAAI9F,EAAK8F,KACT9F,OAGhB,KAAKhK,GACD,OAAO,2BACA4G,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,IhB1BfD,gBACAoJ,QiBhEG,WAAsC,IAArBnJ,EAAoB,uDAAZ,GAAIC,EAAQ,uCACxC,OAAQA,EAAOC,MACX,KAAKhH,GACD,OAAO,2BACA8G,GADP,IAEIG,OAAQF,EAAOG,SAEvB,KAAKlH,GACD,OAAO,2BACA8G,GADP,IAEI4D,WAAY3D,EAAOG,SAG3B,KAAKlH,GACD,OAAO,2BACA8G,GADP,IAEIoJ,aAAcnJ,EAAOG,SAE7B,KAAKlH,GACD,OAAO,2BACA8G,GADP,IAEIK,SAAS,IAEjB,KAAKnH,GACD,OAAO,2BACA8G,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAKrH,GACD,OAAO,2BACA8G,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKtH,GACD,OAAO,2BACA8G,GADP,IAEIkD,UAAU,IAElB,KAAKhK,GACD,OAAO,2BACA8G,GADP,IAEIM,MAAsB,MAAfN,EAAMM,MAAgB,CAACL,EAAOkD,MAA9B,CAAuClD,EAAOkD,MAA9C,mBAAuDnD,EAAMM,UAE5E,KAAKpH,GACD,OAAO,2BACA8G,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKtH,GACD,OAAO,2BACA8G,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAK2F,WAAa9I,EAAOkD,KAAK4F,UAA9B,2BAA+C3F,GAA/C,IAAqDY,UAAU,IAASZ,OAGpF,KAAKlK,GACD,OAAO,2BACA8G,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAK2F,YAAc9I,EAAOkD,KAAK4F,UAAY9I,EAAOkD,KAAOC,OAGrE,KAAKlK,GACD,OAAO,2BACA8G,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKtH,GACD,OAAO,2BACA8G,GADP,IAEIiE,UAAU,IAElB,KAAK/K,GACD,OAAO,2BACA8G,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKiG,YAAcpJ,EAAOkD,KAAO,CAC7BkF,UAAWjF,EAAKiF,UAChBC,UAAWlF,EAAKkF,UAChBe,UAAWjG,EAAKiG,UAChBJ,YAAa7F,EAAK6F,YAClBR,UAAWrF,EAAKqF,UAChBC,UAAWtF,EAAKsF,UAChBC,OAAQvF,EAAKuF,OACbC,KAAMxF,EAAKwF,KACXM,IAAK9F,EAAK8F,KACV9F,OAGhB,KAAKlK,GACD,OAAO,2BACA8G,GADP,IAEIQ,MAAOP,EAAOO,QAGtB,KAAKtH,GACD,OAAO,2BACA8G,GADP,IAEIK,SAAS,IAEjB,KAAKnH,GACD,OAAO,2BACA8G,GADP,IAEIsJ,UAAWrJ,EAAOM,QAE1B,KAAKrH,GACD,OAAO,2BACA8G,GADP,IAEIQ,MAAOP,EAAOO,QAGtB,KAAKtH,GACD,OAAO,2BACA8G,GADP,IAEIK,SAAS,IAEjB,KAAKnH,GACD,OAAO,2BACA8G,GADP,IAEIuJ,YAAatJ,EAAOM,QAE5B,KAAKrH,GACD,OAAO,2BACA8G,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,KjBjFgB,8BAmB/BD,IAnB+B,4BkB9C5B,WAAwC,IAArBC,EAAoB,uDAAZ,GAAIC,EAAQ,uCAC1C,OAAQA,EAAOC,MACX,KAAKzG,GACD,OAAO,2BACAuG,GADP,IAEI4D,WAAY3D,EAAOG,SAEvB,KAAK3G,GACL,OAAO,2BACAuG,GADP,IAEIG,OAAQF,EAAOG,SAEvB,KAAK3G,GACD,OAAO,2BACAuG,GADP,IAEIK,SAAS,IAEjB,KAAK5G,GACD,OAAO,2BACAuG,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAK9G,GACD,OAAO,2BACAuG,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAK/G,GACD,OAAO,2BACAuG,GADP,IAEIkD,UAAU,IAElB,KAAKzJ,GACD,OAAO,2BACAuG,GADP,IAEIM,MAAOL,EAAOkD,OAEtB,KAAK1J,GACD,OAAO,2BACAuG,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAK/G,GACD,OAAO,2BACAuG,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKoG,aAAevJ,EAAOkD,KAAKqG,YAAhC,2BAAmDpG,GAAnD,IAAyDY,UAAU,IAASZ,OAGxF,KAAK3J,GACD,OAAO,2BACAuG,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKoG,cAAgBvJ,EAAOkD,KAAKqG,YAAcvJ,EAAOkD,KAAOC,OAGzE,KAAK3J,GACD,OAAO,2BACAuG,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAK/G,GACD,OAAO,2BACAuG,GADP,IAEIiE,UAAU,IAElB,KAAKxK,GACD,OAAO,2BACAuG,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKoG,cAAgBvJ,EAAOkD,KAAO,CAC/BkF,UAAWjF,EAAKiF,UAChBC,UAAWlF,EAAKkF,UAChBkB,YAAapG,EAAKoG,YAClBP,YAAa7F,EAAK6F,YAClBR,UAAWrF,EAAKqF,UAChBC,UAAWtF,EAAKsF,UAChBC,OAAOvF,EAAKuF,OACZC,KAAKxF,EAAKwF,KACVM,IAAI9F,EAAK8F,KACT9F,OAGhB,KAAK3J,GACD,OAAO,2BACAuG,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,MlB3CgB,wCmB9C5B,WAAoD,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCACtD,OAAQA,EAAOC,MACX,KAAKxG,GACD,OAAO,2BACAsG,GADP,IAEIyJ,mBAAoBxJ,EAAOG,SAEnC,KAAK1G,GACD,OAAO,2BACAsG,GADP,IAEI0J,mBAAoBzJ,EAAOG,SAEnC,KAAK1G,GACD,OAAO,2BACAsG,GADP,IAEI2J,YAAY,IAEpB,KAAKjQ,GACD,OAAO,2BACAsG,GADP,IAEI4J,SAAU3J,EAAOM,QAEzB,KAAK7G,GACD,OAAO,2BACAsG,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAK9G,GACD,OAAO,2BACAsG,GADP,IAEI6J,YAAY,IAEpB,KAAKnQ,GACD,OAAO,2BACAsG,GADP,IAEI8J,SAAU7J,EAAOM,QAEzB,KAAK7G,GACD,OAAO,2BACAsG,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAK9G,GACD,OAAO,2BACAsG,GADP,IAEI+J,UAAU,IAElB,KAAKrQ,GACD,OAAO,2BACAsG,GADP,IAEIgK,OAAQ/J,EAAOkD,OAEvB,KAAKzJ,GACD,OAAO,2BACAsG,GADP,IAEIQ,MAAOP,EAAOO,QAGtB,KAAK9G,GACD,OAAO,2BACAsG,GADP,IAEIK,SAAS,IAEjB,KAAK3G,GACD,OAAO,2BACAsG,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAK7G,GACD,OAAO,2BACAsG,GADP,IAEIQ,MAAOP,EAAOO,QAGtB,KAAK9G,GACD,OAAO,2BACAsG,GADP,IAEIkD,UAAU,IAElB,KAAKxJ,GACD,OAAO,2BACAsG,GADP,IAGIM,MAAO,CAACL,EAAOkD,QAGvB,KAAKzJ,GACD,OAAO,2BACAsG,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAK9G,GACD,OAAO,2BACAsG,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAK6G,yBAA2BhK,EAAOkD,KAAK8G,wBAA5C,2BAA2E7G,GAA3E,IAAiFY,UAAU,IAASZ,OAGhH,KAAK1J,GACD,OAAO,2BACAsG,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAK6G,0BAA4BhK,EAAOkD,KAAK8G,wBAA0BhK,EAAOkD,KAAOC,OAGjG,KAAK1J,GACD,OAAO,2BACAsG,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAK9G,GACD,OAAO,2BACAsG,GADP,IAEIiE,UAAU,IAElB,KAAKvK,GACD,OAAO,2BACAsG,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAK6G,0BAA4BhK,EAAOkD,KAAO,CAC3CkF,UAAWjF,EAAKiF,UAChBC,UAAWlF,EAAKkF,UAChB2B,wBAAyB7G,EAAK6G,wBAC9BhB,YAAa7F,EAAK6F,YAClBR,UAAWrF,EAAKqF,UAChBC,UAAWtF,EAAKsF,UAChBC,OAAQvF,EAAKuF,OACbC,KAAMxF,EAAKwF,KACXM,IAAK9F,EAAK8F,KACV9F,OAGhB,KAAK1J,GACD,OAAO,2BACAsG,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAK9G,GACD,OAAO,2BACAsG,GADP,IAEIK,SAAS,IAEjB,KAAK3G,GACD,OAAO,2BACAsG,GADP,IAEI8J,SAAU7J,EAAOM,QAEzB,KAAK7G,GACD,OAAO,2BACAsG,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,MnB3GgB,uCoB9C5B,WAAmD,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCACrD,OAAQA,EAAOC,MACX,KAAKvG,GAA8B5C,eAC/B,OAAO,2BACAiJ,GADP,IAEIK,SAAS,IAEjB,KAAK1G,GAA8B3C,eAC/B,OAAO,2BACAgJ,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAK5G,GAA8B1C,eAC/B,OAAO,2BACA+I,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAK7G,GAA8BlD,eAC/B,OAAO,2BACAuJ,GADP,IAEIkD,UAAU,IAElB,KAAKvJ,GAA8BjD,eAC/B,OAAO,2BACAsJ,GADP,IAEIM,MAAM,CAAEL,EAAOkD,MAAV,mBAAmBnD,EAAMM,UAEtC,KAAK3G,GAA8BhD,eAC/B,OAAO,2BACAqJ,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAK7G,GAA8B/C,eAC/B,OAAO,2BACAoJ,GADP,IAEIM,MAAON,EAAMM,QAErB,KAAK3G,GAA8B9C,eAC/B,MAAO,CAEHyJ,MAAO,KACP4J,QAAQ,EACR9C,OAAQ,GAEhB,KAAKzN,GAA8B7C,eAC/B,OAAO,2BACAkJ,GADP,IAEIQ,MAAOP,EAAOO,QAGtB,KAAK7G,GAA8BnC,eAC/B,OAAO,2BACAwI,GADP,IAEIiE,UAAU,IAElB,KAAKtK,GAA8BlC,eAC/B,OAAO,2BACAuI,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAK6G,0BAA4BhK,EAAOkD,KAAO,CAC3CkF,UAAWjF,EAAKiF,UAChBC,UAAWlF,EAAKkF,UAChB2B,wBAAyB7G,EAAK6G,wBAC9BhB,YAAa7F,EAAK6F,YAClBR,UAAWrF,EAAKqF,UAChBC,UAAWtF,EAAKsF,UAChBC,OAAOvF,EAAKuF,OACZC,KAAKxF,EAAKwF,KACVM,IAAI9F,EAAK8F,KACT9F,OAKhB,KAAKzJ,GAA8BC,qBAC/B,OAAO,2BACAoG,GADP,IAEIK,SAAS,IAEjB,KAAK1G,GAA8BE,qBAC/B,OAAO,2BACAmG,GADP,IAEImK,UAAWlK,EAAOM,QAE1B,KAAK5G,GAA8BG,qBAOnC,KAAKH,GAA8BjC,eAC/B,OAAO,2BACAsI,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAK7G,GAA8BI,cAC/B,OAAO,2BACAiG,GADP,IAEIoK,SAAUnK,EAAOG,SAEzB,QACI,OAAOJ,MpBxDgB,0BqB9C5B,WAAsC,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCACxC,OAAQA,EAAOC,MACX,KAAKlG,GACD,OAAO,2BACAgG,GADP,IAEIG,OAAQF,EAAOG,SAEvB,KAAKpG,GACD,OAAO,2BACAgG,GADP,IAEI4D,WAAY3D,EAAOG,SAEvB,KAAKpG,GACL,OAAO,2BACAgG,GADP,IAEI6D,mBAAoB5D,EAAOG,SAEnC,KAAKpG,GACD,OAAO,2BACAgG,GADP,IAEIK,SAAS,IAEjB,KAAKrG,GACD,OAAO,2BACAgG,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAKvG,GACD,OAAO,2BACAgG,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKxG,GACD,OAAO,2BACAgG,GADP,IAEIkD,UAAU,IAElB,KAAKlJ,GACD,OAAO,2BACAgG,GADP,IAEIM,MAAM,CAAEL,EAAOkD,MAAV,mBAAmBnD,EAAMM,UAEtC,KAAKtG,GACD,OAAO,2BACAgG,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKxG,GACD,OAAO,2BACAgG,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKkB,WAAarE,EAAOkD,KAAKmB,UAA9B,2BAA+ClB,GAA/C,IAAqDY,UAAU,IAASZ,OAGpF,KAAKpJ,GACD,OAAO,2BACAgG,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKkB,YAAcrE,EAAOkD,KAAKmB,UAAYrE,EAAOkD,KAAOC,OAGrE,KAAKpJ,GACD,OAAO,2BACAgG,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKxG,GACD,OAAO,2BACAgG,GADP,IAEIiE,UAAU,IAElB,KAAKjK,GACD,OAAO,2BACAgG,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKkB,YAAcrE,EAAOkD,KAAO,CAC7BmB,UAAWlB,EAAKkB,UAChBC,YAAanB,EAAKmB,YAClB8F,mBAAoBjH,EAAKiH,mBACzBC,OAAQlH,EAAKkH,OACblG,MAAOhB,EAAKgB,MACZmG,OAAQnH,EAAKmH,OACbC,WAAYpH,EAAKoH,WACjBC,QAASrH,EAAKqH,QACdC,YAAatH,EAAKsH,YAClBC,YAAavH,EAAKuH,YAClBC,UAAWxH,EAAKwH,UAChBlG,UAAU,EACVI,YAAa1B,EAAK0B,YAClB2B,YAAarD,EAAKqD,aAElBrD,OAGhB,KAAKpJ,GACD,OAAO,2BACAgG,GADP,IAEIQ,MAAOP,EAAOO,QAGtB,KAAKxG,GACD,OAAO,2BACAgG,GADP,IAEIK,SAAS,IAEjB,KAAKrG,GACD,OAAO,2BACAgG,GADP,IAEI6K,SAAU5K,EAAOM,QAEzB,KAAKvG,GACD,OAAO,2BACAgG,GADP,IAEIQ,MAAOP,EAAOO,QAGlB,KAAKxG,GACL,OAAO,2BACAgG,GADP,IAEIiF,YAAY,IAEpB,KAAKjL,GACD,OAAO,2BACAgG,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKkB,YAAcrE,EAAOkD,KAAKmB,UAAY,CACvCA,UAAWlB,EAAKkB,UAChBC,YAAanB,EAAKmB,YAClB8F,mBAAoBjH,EAAKiH,mBACzBC,OAAQlH,EAAKkH,OACblG,MAAOhB,EAAKgB,MACZmG,OAAQnH,EAAKmH,OACbC,WAAYpH,EAAKoH,WACjBC,QAASrH,EAAKqH,QACdC,YAAatH,EAAKsH,YAClBC,YAAavH,EAAKuH,YAClBC,UAAWxH,EAAKwH,UAChBlG,SAAUzE,EAAOkD,KAAKuB,SACtBQ,UAAW9B,EAAK8B,UAChBJ,YAAa1B,EAAK0B,YAClB2B,YAAarD,EAAKqD,aAElBrD,OAGhB,KAAKpJ,GACD,OAAO,2BACAgG,GADP,IAEIQ,MAAOP,EAAOO,QAGtB,QACI,OAAOR,MrB1GgB,+BsB9C5B,WAA2C,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCAC/C,OAAQA,EAAOC,MACb,KAAKjG,GAAsBlC,gBACzB,OAAO,2BACFiI,GADL,IAEEG,OAAQF,EAAOG,SAEnB,KAAKnG,GAAsBnC,eACzB,OAAO,2BACFkI,GADL,IAEE4D,WAAY3D,EAAOG,SAEvB,KAAKnG,GAAsBjC,wBACzB,OAAO,2BACFgI,GADL,IAEE6D,mBAAoB5D,EAAOG,SAE/B,KAAKnG,GAAsBlD,eACzB,OAAO,2BACFiJ,GADL,IAEEK,SAAS,IAEb,KAAKpG,GAAsBjD,eACzB,OAAO,2BACFgJ,GADL,IAEEM,MAAOL,EAAOM,QAElB,KAAKtG,GAAsBhD,eACzB,OAAO,2BACF+I,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKvG,GAAsBxD,eACzB,OAAO,2BACFuJ,GADL,IAEEkD,UAAU,IAEd,KAAKjJ,GAAsBvD,eACzB,OAAO,2BACFsJ,GADL,IAEEM,MACiB,MAAfN,EAAMM,MAAgB,CAACL,EAAOkD,MAA9B,CAAuClD,EAAOkD,MAA9C,mBAAuDnD,EAAMM,UAEnE,KAAKrG,GAAsBtD,eACzB,OAAO,2BACFqJ,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKvG,GAAsBrD,eACzB,OAAO,2BACFoJ,GADL,IAEEM,MAAON,EAAMM,MAAMwD,KAAI,SAACV,GAAD,OACrBA,EAAK0H,gBAAkB7K,EAAOkD,KAAK2H,eAAnC,2BACS1H,GADT,IACeY,UAAU,IACrBZ,OAGV,KAAKnJ,GAAsBpD,eACzB,OAAO,2BACFmJ,GADL,IAEEM,MAAON,EAAMM,MAAMwD,KAAI,SAACV,GAAD,OACrBA,EAAK0C,YAAc7F,EAAOkD,KAAK2C,UAAY7F,EAAOkD,KAAOC,OAG/D,KAAKnJ,GAAsBO,qBACzB,OAAO,2BACFwF,GADL,IAEEK,SAAS,IAEb,KAAKpG,GAAsBQ,qBACzB,OAAO,2BACFuF,GADL,IAEE+K,UAAW9K,EAAOM,QAEtB,KAAKtG,GAAsBS,qBACzB,OAAO,2BACFsF,GADL,IAEEQ,MAAOP,EAAOO,QAGlB,KAAKvG,GAAsBU,kBACzB,OAAO,2BACFqF,GADL,IAEEK,SAAS,IAEb,KAAKpG,GAAsBW,kBACzB,OAAO,2BACFoF,GADL,IAEEgL,WAAY/K,EAAOM,QAEvB,KAAKtG,GAAsBY,kBACzB,OAAO,2BACFmF,GADL,IAEEQ,MAAOP,EAAOO,QAGlB,KAAKvG,GAAsBa,kBACzB,OAAO,2BACFkF,GADL,IAEEK,SAAS,IAEb,KAAKpG,GAAsBc,kBACzB,OAAO,2BACFiF,GADL,IAEEiL,UAAWhL,EAAOM,QAEtB,KAAKtG,GAAsBe,kBACzB,OAAO,2BACFgF,GADL,IAEEQ,MAAOP,EAAOO,QAGlB,KAAKvG,GAAsBgB,mBACzB,OAAO,2BACF+E,GADL,IAEEK,SAAS,IAEb,KAAKpG,GAAsBiB,mBACzB,OAAO,2BACF8E,GADL,IAEEkL,QAASjL,EAAOM,QAEpB,KAAKtG,GAAsBkB,mBACzB,OAAO,2BACF6E,GADL,IAEEQ,MAAOP,EAAOO,QAGlB,KAAKvG,GAAsBmB,oBACzB,OAAO,2BACF4E,GADL,IAEEK,SAAS,IAEb,KAAKpG,GAAsBoB,oBACzB,OAAO,2BACF2E,GADL,IAEEmL,cAAelL,EAAOM,QAE1B,KAAKtG,GAAsBmR,oBAK3B,KAAKnR,GAAsBnD,eACzB,OAAO,2BACFkJ,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKvG,GAAsBzC,eACzB,OAAO,2BACFwI,GADL,IAEEiE,UAAU,IAEd,KAAKhK,GAAsBxC,eACzB,OAAO,2BACFuI,GADL,IAEEM,MAAON,EAAMM,MAAMwD,KAAI,SAACV,GAAD,OACrBA,EAAK0H,iBAAmB7K,EAAOkD,KAC3B,CACE2H,eAAgB1H,EAAK0H,eACrBhF,UAAW1C,EAAK0C,UAChBoD,IAAK9F,EAAK8F,IACVmC,OAAQjI,EAAKiI,OAYb3G,UAAU,EACVI,YAAa1B,EAAK0B,YAClB2B,YAAarD,EAAKqD,aAEpBrD,OAGV,KAAKnJ,GAAsBvC,eACzB,OAAO,2BACFsI,GADL,IAEEQ,MAAOP,EAAOO,QAGlB,KAAKvG,GAAsBqR,oBACzB,OAAO,2BACFtL,GADL,IAEEK,SAAS,IAOb,KAAKpG,GAAsBmR,oBACzB,OAAO,2BACFpL,GADL,IAEEQ,MAAOP,EAAOO,QAGlB,KAAKvG,GAAsBtC,iBACzB,OAAO,2BACFqI,GADL,IAEEiF,YAAY,IAEhB,KAAKhL,GAAsBrC,iBACzB,OAAO,2BACFoI,GADL,IAEEuL,QAASvL,EAAMM,QAEnB,KAAKrG,GAAsBpC,iBACzB,OAAO,2BACFmI,GADL,IAEEQ,MAAOP,EAAOO,QAGlB,KAAKvG,GAAsBI,oBACzB,OAAO,2BACF2F,GADL,IAEEK,SAAS,IAEb,KAAKpG,GAAsBK,oBAEzB,OAAO,2BACF0F,GADL,IAEEwL,YAAavL,EAAOkD,OAExB,KAAKlJ,GAAsBM,oBACzB,OAAO,2BACFyF,GADL,IAEEQ,MAAOP,EAAOO,QAGlB,QACE,OAAOR,MtB/LsB,kCuB9C5B,WAA8C,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCAChD,OAAQA,EAAOC,MACX,KAAK3E,GACD,OAAO,2BACAyE,GADP,IAEIG,OAAQF,EAAOG,SAEvB,KAAK7E,GACD,OAAO,2BACAyE,GADP,IAEIK,SAAS,IAEjB,KAAK9E,GACD,OAAO,2BACAyE,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAKhF,GACD,OAAO,2BACAyE,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKjF,GACD,OAAO,2BACAyE,GADP,IAEIS,WAAW,IAEnB,KAAKlF,GACD,OAAO,2BACAyE,GADP,IAEIU,YAAaT,EAAOM,MACpBkL,WAAgC,MAApBzL,EAAMyL,WAAqB,EAAIzL,EAAMyL,WAAa,IAEtE,KAAKlQ,GACD,OAAO,2BACAyE,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,MvBOgB,mCwB9C5B,WAA+C,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCACjD,OAAQA,EAAOC,MACX,KAAK7G,GACD,OAAO,2BACA2G,GADP,IAEIG,OAAQF,EAAOG,SAEvB,KAAK/G,GACD,OAAO,2BACA2G,GADP,IAEIK,SAAS,IAEjB,KAAKhH,GACD,OAAO,2BACA2G,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAKlH,GACD,OAAO,2BACA2G,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKnH,GACD,OAAO,2BACA2G,GADP,IAEIS,WAAW,IAEnB,KAAKpH,GACD,OAAO,2BACA2G,GADP,IAEIU,YAAaT,EAAOM,QAE5B,KAAKlH,GACD,OAAO,2BACA2G,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,MxBQgB,mCyB9C5B,WAA+C,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCACjD,OAAQA,EAAOC,MACX,KAAK5G,GACD,OAAO,2BACA0G,GADP,IAEIG,OAAQF,EAAOG,SAEvB,KAAK9G,GACD,OAAO,2BACA0G,GADP,IAEIK,SAAS,IAEjB,KAAK/G,GACD,OAAO,2BACA0G,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAKjH,GACD,OAAO,2BACA0G,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKlH,GACD,OAAO,2BACA0G,GADP,IAEIS,WAAW,IAEnB,KAAKnH,GACD,OAAO,2BACA0G,GADP,IAEIU,YAAaT,EAAOM,QAE5B,KAAKjH,GACD,OAAO,2BACA0G,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,MzBQgB,qC0B9C5B,WAAiD,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCACnD,OAAQA,EAAOC,MACX,KAAK3G,GACD,OAAO,2BACAyG,GADP,IAEIG,OAAQF,EAAOG,SAEvB,KAAK7G,GACD,OAAO,2BACAyG,GADP,IAEIK,SAAS,IAEjB,KAAK9G,GACD,OAAO,2BACAyG,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAKhH,GACD,OAAO,2BACAyG,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKjH,GACD,OAAO,2BACAyG,GADP,IAEIS,WAAW,IAEnB,KAAKlH,GACD,OAAO,2BACAyG,GADP,IAEIU,YAAaT,EAAOM,QAE5B,KAAKhH,GACD,OAAO,2BACAyG,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,M1BQgB,qC2B9C5B,WAAiD,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCAEnD,OAAQA,EAAOC,MACX,KAAKe,GAA4BlJ,gBAC7B,OAAO,2BACAiI,GADP,IAEIG,OAAQF,EAAOG,SAEvB,KAAKa,GAA4BnJ,eAC7B,OAAO,2BACAkI,GADP,IAEI4D,WAAY3D,EAAOG,SAE3B,KAAKa,GAA4BlC,iBAC7B,OAAO,2BACAiB,GADP,IAEIoJ,aAAcnJ,EAAOG,SAE7B,KAAKa,GAA4BpB,wBAC7B,OAAO,2BACAG,GADP,IAEI0L,aAAczL,EAAOG,SAE7B,KAAKa,GAA4BjJ,wBAC7B,OAAO,2BACAgI,GADP,IAEI6D,mBAAoB5D,EAAOG,OAC3BuL,cAAe1L,EAAOG,OACtBsL,aAAczL,EAAOG,SAE7B,KAAKa,GAA4BtI,kBAC7B,OAAO,2BACAqH,GADP,IAEIiH,MAAOhH,EAAOiH,WAEtB,KAAKjG,GAA4BlK,eAC7B,OAAO,2BACAiJ,GADP,IAEIK,SAAS,IAEjB,KAAKY,GAA4BjK,eAC7B,OAAO,2BACAgJ,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAKU,GAA4B1B,sBAC7B,OAAO,2BACAS,GADP,IAEIK,SAAS,IAEjB,KAAKY,GAA4BzB,sBAC7B,OAAO,2BACAQ,GADP,IAEI4L,WAAY3L,EAAOkD,OAI3B,KAAKlC,GAA4BxB,sBAC7B,OAAO,2BACAO,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKS,GAA4BvB,oBAC7B,OAAO,2BACAM,GADP,IAEIK,SAAS,IAEjB,KAAKY,GAA4BtB,oBAC7B,OAAO,2BACAK,GADP,IAEI6L,UAAW5L,EAAOM,QAG1B,KAAKU,GAA4BrB,oBAKjC,KAAKqB,GAA4BhK,eAC7B,OAAO,2BACA+I,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKS,GAA4BhC,gBAC7B,OAAO,2BACAe,GADP,IAEIkD,UAAU,EACV+B,YAAY,IAGpB,KAAKhE,GAA4B/B,gBAC7B,OAAO,2BACAc,GADP,IAEIM,MAAsB,MAAfN,EAAMM,MAAgB,CAACL,EAAOkD,MAA9B,CAAuClD,EAAOkD,MAA9C,mBAAuDnD,EAAMM,UAE5E,KAAKW,GAA4B9B,gBAC7B,OAAO,2BACAa,GADP,IAEIQ,MAAOP,EAAOO,QAGtB,KAAKS,GAA4B7B,eAC7B,OAAO,2BACAY,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKW,SAAW9D,EAAOkD,KAAKY,OAA5B,2BAA0CX,GAA1C,IAAgDY,UAAU,IAASZ,KAEvE6B,YAAY,EAEZyG,aAAczL,EAAOG,SAE7B,KAAKa,GAA4B5B,eAC7B,OAAO,2BACAW,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKW,SAAW9D,EAAOkD,KAAKY,OAAS9D,EAAOkD,KAAOC,OAG/D,KAAKnC,GAA4B3B,eAC7B,OAAO,2BACAU,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKS,GAA4BzJ,eAC7B,OAAO,2BACAwI,GADP,IAEIiE,UAAU,IAElB,KAAKhD,GAA4BxJ,eAC7B,OAAO,2BACAuI,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKoB,SAAWvE,EAAOkD,KAAO,CAC1BmB,UAAWlB,EAAKkB,UAChBC,YAAanB,EAAKmB,YAClB6C,OAAQhE,EAAKgE,OACb3C,SAAUrB,EAAKiE,SACfC,SAAUlE,EAAKkE,SACf3C,SAAUvB,EAAKuB,SACfG,YAAa1B,EAAK0B,aAClB1B,OAGhB,KAAKnC,GAA4BvJ,eAC7B,OAAO,2BACAsI,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKS,GAA4B5I,mBAC7B,OAAO,2BACA2H,GADP,IAEIK,SAAS,IAEjB,KAAKY,GAA4B3I,mBAC7B,OAAO,2BACA0H,GADP,IAEI+E,QAAS9E,EAAOM,QAExB,KAAKU,GAA4B1I,mBAKjC,KAAK0I,GAA4BhK,eAC7B,OAAO,2BACA+I,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKS,GAA4BzI,kBAC7B,OAAO,2BACAwH,GADP,IAEIuH,UAAU,IAElB,KAAKtG,GAA4BxI,kBAC7B,OAAO,2BACAuH,GADP,IAEIiH,MAAOhH,EAAOgH,QAEtB,KAAKhG,GAA4BvI,kBAC7B,OAAO,2BACAsH,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKS,GAA4BtJ,iBAC7B,OAAO,2BACAqI,GADP,IAEIiF,YAAY,IAEpB,KAAKhE,GAA4BrJ,iBAC7B,OAAO,2BACAoI,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKoB,SAAWvE,EAAOkD,KAAKqB,OAAS,CACjCF,UAAWlB,EAAKkB,UAChBC,YAAanB,EAAKmB,YAClBC,OAAQpB,EAAKoB,OACbC,SAAUrB,EAAKqB,SACf6C,SAAUlE,EAAKkE,SACfpC,UAAW9B,EAAK8B,UAChBR,SAAUzE,EAAOkD,KAAKuB,SACtBI,YAAa1B,EAAK0B,aAClB1B,OAGhB,KAAKnC,GAA4BpJ,iBAC7B,OAAO,2BACAmI,GADP,IAEIQ,MAAOP,EAAOO,QAGtB,KAAKS,GAA4BxK,eAC7B,OAAO,2BACAuJ,GADP,IAEIkD,UAAU,IAElB,KAAKjC,GAA4BvK,eAC7B,OAAO,2BACAsJ,GADP,IAEIM,MAAM,CAAEL,EAAOkD,MAAV,mBAAmBnD,EAAMM,UAEtC,KAAKW,GAA4BtK,eAC7B,OAAO,2BACAqJ,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,M3BpLgB,iC4B9C5B,WAA6C,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCAC/C,OAAQA,EAAOC,MACX,KAAKW,GAAwB9I,gBACzB,OAAO,2BACAiI,GADP,IAEIG,OAAQF,EAAOG,SAEvB,KAAKS,GAAwB/I,eACzB,OAAO,2BACAkI,GADP,IAEI4D,WAAY3D,EAAOG,SAE3B,KAAKS,GAAwB9B,iBACzB,OAAO,2BACAiB,GADP,IAEIoJ,aAAcnJ,EAAOG,SAE7B,KAAKS,GAAwB7I,wBACzB,OAAO,2BACAgI,GADP,IAEI6D,mBAAoB5D,EAAOG,SAEnC,KAAKS,GAAwBlI,kBACzB,OAAO,2BACAqH,GADP,IAEIiH,MAAOhH,EAAOiH,WAEtB,KAAKrG,GAAwB9J,eACzB,OAAO,2BACAiJ,GADP,IAEIK,SAAS,IAEjB,KAAKQ,GAAwB7J,eACzB,OAAO,2BACAgJ,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAKM,GAAwBxJ,yBACzB,OAAO,2BACA2I,GADP,IAEIK,SAAS,IAEjB,KAAKQ,GAAwBvJ,yBACzB,OAAO,2BACA0I,GADP,IAEIsF,WAAYrF,EAAOM,QAG3B,KAAKM,GAAwBtJ,yBAK7B,KAAKsJ,GAAwB5J,eACzB,OAAO,2BACA+I,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKK,GAAwBpK,eACzB,OAAO,2BACAuJ,GADP,IAEIkD,UAAU,IAElB,KAAKrC,GAAwBnK,eACzB,OAAO,2BACAsJ,GADP,IAEIM,MAAsB,MAAfN,EAAMM,MAAgB,CAACL,EAAOkD,MAA9B,CAAuClD,EAAOkD,MAA9C,mBAAuDnD,EAAMM,UAE5E,KAAKO,GAAwBlK,eACzB,OAAO,2BACAqJ,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKK,GAAwBjK,eACzB,OAAO,2BACAoJ,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKoB,SAAWvE,EAAOkD,KAAKqB,OAA5B,2BAA0CpB,GAA1C,IAAgDY,UAAU,IAASZ,OAG/E,KAAKvC,GAAwBhK,eACzB,OAAO,2BACAmJ,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKoB,SAAWvE,EAAOkD,KAAKqB,OAASvE,EAAOkD,KAAOC,OAG/D,KAAKvC,GAAwB/J,eACzB,OAAO,2BACAkJ,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKK,GAAwBrJ,eACzB,OAAO,2BACAwI,GADP,IAEIiE,UAAU,IAElB,KAAKpD,GAAwBpJ,eACzB,OAAO,2BACAuI,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKoB,SAAWvE,EAAOkD,KAAO,CAC1BmB,UAAWlB,EAAKkB,UAChBC,YAAanB,EAAKmB,YAClB6C,OAAQhE,EAAKgE,OACb3C,SAAUrB,EAAKiE,SACfC,SAAUlE,EAAKkE,SACf3C,SAAUvB,EAAKuB,SACfG,YAAa1B,EAAK0B,aAClB1B,OAGhB,KAAKvC,GAAwBnJ,eACzB,OAAO,2BACAsI,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKK,GAAwBxI,mBACzB,OAAO,2BACA2H,GADP,IAEIK,SAAS,IAEjB,KAAKQ,GAAwBvI,mBACzB,OAAO,2BACA0H,GADP,IAEI+E,QAAS9E,EAAOM,QAExB,KAAKM,GAAwBtI,mBAK7B,KAAKsI,GAAwB5J,eACzB,OAAO,2BACA+I,GADP,IAEIQ,MAAOP,EAAOO,QAGlB,KAAKK,GAAwBC,oBAC7B,OAAO,2BACAd,GADP,IAEIK,SAAS,IAEjB,KAAKQ,GAAwBE,oBACzB,OAAO,2BACAf,GADP,IAEI+G,SAAU9G,EAAOM,QAEzB,KAAKM,GAAwBG,oBACzB,OAAO,2BACAhB,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKK,GAAwBrI,kBACzB,OAAO,2BACAwH,GADP,IAEIuH,UAAU,IAElB,KAAK1G,GAAwBpI,kBACzB,OAAO,2BACAuH,GADP,IAEIiH,MAAOhH,EAAOgH,QAEtB,KAAKpG,GAAwBnI,kBACzB,OAAO,2BACAsH,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKK,GAAwBlJ,iBACzB,OAAO,2BACAqI,GADP,IAEIiF,YAAY,IAEpB,KAAKpE,GAAwBjJ,iBACzB,OAAO,2BACAoI,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKoB,SAAWvE,EAAOkD,KAAKqB,OAAS,CACjCF,UAAWlB,EAAKkB,UAChBC,YAAanB,EAAKmB,YAClBC,OAAQpB,EAAKoB,OACbC,SAAUrB,EAAKqB,SACf6C,SAAUlE,EAAKkE,SACfpC,UAAW9B,EAAK8B,UAChBR,SAAUzE,EAAOkD,KAAKuB,SACtBI,YAAa1B,EAAK0B,aAClB1B,OAGhB,KAAKvC,GAAwBhJ,iBACzB,OAAO,2BACAmI,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,M5BrJgB,kC6B9C5B,WAA8C,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCAClD,OAAQA,EAAOC,MACb,KAAKgB,GAAyBC,wBAC5B,OAAO,2BACFnB,GADL,IAEEK,SAAS,IAEb,KAAKa,GAAyBE,wBAC5B,OAAO,2BACFpB,GADL,IAEE8L,aACwB,MAAtB9L,EAAM8L,aACF,CAAC7L,EAAOkD,MADZ,CAEKlD,EAAOkD,MAFZ,mBAEqBnD,EAAM8L,iBAEjC,KAAK5K,GAAyBG,wBAC5B,OAAO,2BACFrB,GADL,IAEE+L,QAAwB,gBAAf9L,EAAOkD,KAChB6I,cAA8B,gBAAf/L,EAAOkD,OAE1B,KAAKjC,GAAyBI,wBAC5B,OAAO,2BACFtB,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKU,GAAyBK,uBAC5B,OAAO,2BACFvB,GADL,IAEE8L,aAAc9L,EAAMiM,cAExB,KAAK/K,GAAyBgL,+BAC5B,OAAO,2BACFlM,GADL,IAEEmM,SAAS,IAEb,KAAKjL,GAAyBkL,+BAC5B,OAAO,2BACFpM,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKU,GAAyBW,sBAC5B,OAAO,2BACF7B,GADL,IAEEK,SAAS,IAEb,KAAKa,GAAyBY,sBAC5B,OAAO,2BACF9B,GADL,IAEEqM,WAAYpM,EAAOM,QAEvB,KAAKW,GAAyBa,sBAC5B,OAAO,2BACF/B,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKU,GAAyBnK,eAC5B,OAAO,2BACFiJ,GADL,IAEEK,SAAS,IAEb,KAAKa,GAAyBlK,eAC5B,OAAO,2BACFgJ,GADL,IAEEsM,eAAgBrM,EAAOkD,OAE3B,KAAKjC,GAAyBjK,eAC5B,OAAO,2BACF+I,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKU,GAAyBQ,oBAC5B,OAAO,2BACF1B,GADL,IAEEK,SAAS,IAEb,KAAKa,GAAyBS,oBAC5B,OAAO,2BACF3B,GADL,IAEEuM,kBAAmBtM,EAAOkD,OAW9B,KAAKjC,GAAyBU,oBAC5B,OAAO,2BACF5B,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKU,GAAyBlF,QAC5B,OAAO,2BACFgE,GADL,IAEE+L,QAAS9L,EAAOG,SAEpB,KAAKc,GAAyBjF,cAC5B,OAAO,2BACF+D,GADL,IAEEgM,cAAe/L,EAAOG,SAE1B,QACE,OAAOJ,M7B5DsB,qC8B9C5B,WAAiD,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCACnD,OAAQA,EAAOC,MACX,KAAK1C,GACD,OAAO,2BACAwC,GADP,IAEIG,OAAQF,EAAOG,SAEvB,KAAK5C,GACD,OAAO,2BACAwC,GADP,IAEIK,SAAS,IAEjB,KAAK7C,GACD,OAAO,2BACAwC,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAK/C,GACD,OAAO,2BACAwC,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKhD,GACD,OAAO,2BACAwC,GADP,IAEIS,WAAW,IAEnB,KAAKjD,GACD,OAAO,2BACAwC,GADP,IAEIU,YAAaT,EAAOM,QAE5B,KAAK/C,GACD,OAAO,2BACAwC,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,M9BQgB,2B+B/C5B,WAAuC,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCAC3C,OAAQA,EAAOC,MACb,KAAKzE,GAAkB1D,gBACrB,OAAO,2BACFiI,GADL,IAEEG,OAAQF,EAAOG,SAEnB,KAAK3E,GAAkB3D,eACrB,OAAO,2BACFkI,GADL,IAEE4D,WAAY3D,EAAOG,SAOvB,KAAK3E,GAAkBzD,wBACrB,OAAO,2BACFgI,GADL,IAEE6D,mBAAoB5D,EAAOG,SAO/B,KAAK3E,GAAkB1E,eACrB,OAAO,2BACFiJ,GADL,IAEEK,SAAS,IAEb,KAAK5E,GAAkBzE,eACrB,OAAO,2BACFgJ,GADL,IAEEM,MAAOL,EAAOM,QAGlB,KAAK9E,GAAkBxE,eACrB,OAAO,2BACF+I,GADL,IAEEQ,MAAOP,EAAOO,QAGlB,KAAK/E,GAAkBpE,yBACrB,OAAO,2BACF2I,GADL,IAEEK,SAAS,IAEb,KAAK5E,GAAkBnE,yBACrB,OAAO,2BACF0I,GADL,IAEEsF,WAAYrF,EAAOM,QAEvB,KAAK9E,GAAkBlE,yBACrB,OAAO,2BACFyI,GADL,IAEEQ,MAAOP,EAAOO,QAGlB,KAAK/E,GAAkBI,mBACrB,OAAO,2BACFmE,GADL,IAEEK,SAAS,IAEb,KAAK5E,GAAkBK,mBACrB,OAAO,2BACFkE,GADL,IAEEwM,UAAWvM,EAAOkD,KAClBsJ,SAAUxM,EAAOkD,KAAKuJ,aAAaC,WAEvC,KAAKlR,GAAkBM,mBACrB,OAAO,2BACFiE,GADL,IAEEQ,MAAOP,EAAOO,QAGlB,KAAK/E,GAAkBhF,eACrB,OAAO,2BACFuJ,GADL,IAEEkD,UAAU,IAEd,KAAKzH,GAAkB/E,eACrB,OAAO,2BACFsJ,GADL,IAEE4M,SACiB,MAAf5M,EAAMM,MAAgB,CAACL,EAAOkD,MAA9B,CAAuClD,EAAOkD,MAA9C,mBAAuDnD,EAAMM,QAC/DmL,WAAgC,MAApBzL,EAAMyL,WAAqB,EAAIzL,EAAMyL,WAAa,IAElE,KAAKhQ,GAAkB9E,eACrB,OAAO,2BACFqJ,GADL,IAEEQ,MAAOP,EAAOO,QAGlB,KAAK/E,GAAkB7E,eACrB,OAAO,2BACFoJ,GADL,IAEEM,MAAON,EAAMM,MAAMwD,KAAI,SAACV,GAAD,OACrBA,EAAKyJ,aAAe5M,EAAOkD,KAAK0J,WAAhC,2BACSzJ,GADT,IACeY,UAAU,IACrBZ,OAGV,KAAK3H,GAAkB5E,eACrB,OAAO,2BACFmJ,GADL,IAEEM,MAAON,EAAMM,MAAMwD,KAAI,SAACV,GAAD,OACrBA,EAAKyJ,aAAe5M,EAAOkD,KAAK0J,WAAa5M,EAAOkD,KAAOC,OAGjE,KAAK3H,GAAkB3E,eACrB,OAAO,2BACFkJ,GADL,IAEEQ,MAAOP,EAAOO,QAGlB,KAAK/E,GAAkBjE,eACrB,OAAO,2BACFwI,GADL,IAEEiE,UAAU,IAEd,KAAKxI,GAAkBhE,eACrB,OAAO,2BACFuI,GADL,IAEEM,MAAON,EAAMM,MAAMwD,KAAI,SAACV,GAAD,OACrBA,EAAKyJ,aAAe5M,EAAOkD,KACvB,CACEmB,UAAWlB,EAAKkB,UAChBwI,aAAc1J,EAAK0J,aAInBnI,SAAUvB,EAAKuB,UAGjBvB,OAGV,KAAK3H,GAAkB/D,eACrB,OAAO,2BACFsI,GADL,IAEEQ,MAAOP,EAAOO,QAGlB,KAAK/E,GAAkBsR,uBACrB,OAAO,2BACF/M,GADL,IAEEK,SAAS,IAEb,KAAK5E,GAAkBuR,uBACrB,OAAO,2BACFhN,GADL,IAEEiN,YAAahN,EAAOM,QAExB,KAAK9E,GAAkByR,uBACrB,OAAO,2BACFlN,GADL,IAEEQ,MAAOP,EAAOO,QAsClB,KAAK/E,GAAkB9D,iBACrB,OAAO,2BACFqI,GADL,IAEEiF,YAAY,IAEhB,KAAKxJ,GAAkB7D,iBACrB,OAAO,2BACFoI,GADL,IAEEM,MAAON,EAAMM,MAAMwD,KAAI,SAACV,GAAD,OACrBA,EAAKyJ,aAAe5M,EAAOkD,KAAK0J,WAC5B,CACEvI,UAAWlB,EAAKkB,UAChBwI,aAAc1J,EAAK0J,aAInB5H,UAAW9B,EAAK8B,UAChBR,SAAUzE,EAAOkD,KAAKuB,SACtBI,YAAa1B,EAAK0B,aAEpB1B,OAGV,KAAK3H,GAAkB5D,iBACrB,OAAO,2BACFmI,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAK/E,GAAkBO,QACrB,OAAO,2BACFgE,GADL,IAEE+L,QAAS9L,EAAOG,SAEpB,KAAK3E,GAAkBQ,cACrB,OAAO,2BACF+D,GADL,IAEEgM,cAAe/L,EAAOG,SAE1B,QACE,OAAOJ,M/B5LsB,iCgC9C5B,WAA6C,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCACjD,OAAQA,EAAOC,MACb,KAAKzC,GACH,OAAO,2BACFuC,GADL,IAEEG,OAAQF,EAAOG,SAEnB,KAAK3C,GACH,OAAO,2BACFuC,GADL,IAEEK,SAAS,IAEb,KAAK5C,GACH,OAAO,2BACFuC,GADL,IAEEM,MAAOL,EAAOM,QAElB,KAAK9C,GACH,OAAO,2BACFuC,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAK/C,GACH,OAAO,2BACFuC,GADL,IAEES,WAAW,IAEf,KAAKhD,GAEH,OAAO,2BACFuC,GADL,IAEEU,YAAaT,EAAOM,MACpBkL,WAAgC,MAApBzL,EAAMyL,WAAqB,EAAIzL,EAAMyL,WAAa,IAElE,KAAKhO,GACH,OAAO,2BACFuC,GADL,IAEEQ,MAAOP,EAAOO,QAGlB,KAAK/C,GACH,OAAO,2BACFuC,GADL,IAEEG,QAAQ,IAEZ,KAAK1C,GACH,OAAO,2BACFuC,GADL,IAEEmN,UAAWlN,EAAOM,QAEtB,KAAK9C,GACH,OAAO,2BACFuC,GADL,IAEEQ,MAAOP,EAAOO,QAElB,QACE,OAAOR,MhCVsB,qCiC9C5B,WAAiD,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCACnD,OAAQA,EAAOC,MACX,KAAK8B,GACD,OAAO,2BACAhC,GADP,IAEIG,OAAQF,EAAOG,SAEvB,KAAK4B,GACD,OAAO,2BACAhC,GADP,IAEIK,SAAS,IAEjB,KAAK2B,GACD,OAAO,2BACAhC,GADP,IAEIM,MAAOL,EAAOM,QAEtB,KAAKyB,GACD,OAAO,2BACAhC,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKwB,GACD,OAAO,2BACAhC,GADP,IAEIS,WAAW,IAEnB,KAAKuB,GACD,OAAO,2BACAhC,GADP,IAEIU,YAAaT,EAAOM,QAE5B,KAAKyB,GACD,OAAO,2BACAhC,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,MjCQgB,mCkC9C5B,WAA+C,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCACnD,OAAQA,EAAOC,MACb,KAAKxC,GACH,OAAO,2BACFsC,GADL,IAEEK,SAAS,IAEb,KAAK3C,GACH,OAAO,2BACFsC,GADL,IAEE8L,aACwB,MAAtB9L,EAAM8L,aACF,CAAC7L,EAAOkD,MADZ,CAEKlD,EAAOkD,MAFZ,mBAEqBnD,EAAM8L,iBAEjC,KAAKpO,GACH,OAAO,2BACFsC,GADL,IAEEoN,SAAUnN,EAAOkD,OAErB,KAAKzF,GACH,OAAO,2BACFsC,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAK9C,GACH,OAAO,2BACFsC,GADL,IAEE+L,QAAwB,iBAAf9L,EAAOkD,KAChB6I,cAA8B,iBAAf/L,EAAOkD,OAE1B,KAAKzF,GACH,OAAO,2BACFsC,GADL,IAEE8L,aAAc9L,EAAMiM,cAExB,KAAKvO,GACH,OAAO,2BACFsC,GADL,IAEEmM,SAAS,IAEb,KAAKzO,GACH,OAAO,2BACFsC,GADL,IAEEsM,eAC0B,MAAxBtM,EAAMsM,eACF,CAACrM,EAAOkD,MADZ,CAEKlD,EAAOkD,MAFZ,mBAEqBnD,EAAMsM,iBAC7BR,kBAAcuB,IAElB,KAAK3P,GACH,OAAO,2BACFsC,GADL,IAEEM,MAAOL,EAAOkD,OAElB,KAAKzF,GACH,OAAO,2BACFsC,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAK9C,GACH,OAAO,2BACFsC,GADL,IAEEK,SAAS,IAEb,KAAK3C,GACH,OAAO,2BACFsC,GADL,IAEEsM,eAAgBrM,EAAOkD,OAE3B,KAAKzF,GACH,OAAO,2BACFsC,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAK9C,GACH,OAAO,2BACFsC,GADL,IAEE8L,aACqE,GAAnE9L,EAAM8L,aAAawB,QAAO,SAACC,GAAD,OAAOA,EAAEC,OAASvN,EAAOkD,QAAMsK,YACrDJ,EACArN,EAAM8L,aAAawB,QAAO,SAACC,GAAD,OAAOA,EAAEC,OAASvN,EAAOkD,UAE7D,KAAKzF,GACH,OAAO,2BACFsC,GADL,IAEE+L,QAAS9L,EAAOG,SAEpB,KAAK1C,GACH,OAAO,2BACFsC,GADL,IAEEgM,cAAe/L,EAAOG,SAE1B,QACE,OAAOJ,MlChDsB,yCmC9C5B,WAAqD,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCACvD,OAAQA,EAAOC,MACX,KAAKvC,GACD,OAAO,2BACAqC,GADP,IAEIG,OAAQF,EAAOG,SAEvB,KAAKzC,GACD,OAAO,2BACAqC,GADP,IAEIK,SAAS,IAEjB,KAAK1C,GACD,OAAO,2BACAqC,GADP,IAEI0N,eAAgBzN,EAAOM,QAE/B,KAAK5C,GACD,OAAO,2BACAqC,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAK7C,GACD,OAAO,2BACAqC,GADP,IAEIS,WAAW,IAEnB,KAAK9C,GACD,OAAO,2BACAqC,GADP,IAEIU,YAAaT,EAAOM,MACpBkL,WAAgC,MAApBzL,EAAMyL,WAAqB,EAAIzL,EAAMyL,WAAa,IAEtE,KAAK9N,GACD,OAAO,2BACAqC,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAK7C,GACD,OAAO,2BACAqC,GADP,IAEIK,SAAS,IAEjB,KAAK1C,GACD,OAAO,2BACAqC,GADP,IAEI2N,UAAW1N,EAAOM,QAE1B,KAAK5C,GACD,OAAO,2BACAqC,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,MnCRgB,yBoC9C5B,WAAqC,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCACzC,OAAQA,EAAOC,MACb,KAAK/H,GACH,OAAO,2BACF6H,GADL,IAEEG,OAAQF,EAAOG,SAEnB,KAAKjI,GACH,OAAO,2BACF6H,GADL,IAEE4D,WAAY3D,EAAOG,SAEvB,KAAKjI,GACH,OAAO,2BACF6H,GADL,IAEE6D,mBAAoB5D,EAAOG,SAE/B,KAAKjI,GACH,OAAO,2BACF6H,GADL,IAEEK,SAAS,IAEb,KAAKlI,GACH,OAAO,2BACF6H,GADL,IAEEM,MAAOL,EAAOM,QAElB,KAAKpI,GACH,OAAO,2BACF6H,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKtE,GAAgBzF,eACnB,OAAO,2BACFuJ,GADL,IAEEkD,UAAU,IAEd,KAAKhH,GAAgBxF,eACnB,OAAO,2BACFsJ,GADL,IAEEM,MAAON,EAAMM,MAAMwD,KAAI,SAACV,GAAD,OACrBA,EAAKW,SAAW9D,EAAOkD,KAAKY,OAAS9D,EAAOkD,KAAOC,OAGzD,KAAKlH,GAAgBvF,eACnB,OAAO,2BACFqJ,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKtE,GAAgBtF,eACnB,OAAO,2BACFoJ,GADL,IAEEM,MAAON,EAAMM,MAAMwD,KAAI,SAACV,GAAD,OACrBA,EAAKW,QAAU9D,EAAOkD,KAAKY,OAA3B,2BAAyCX,GAAzC,IAA+CY,UAAU,IAASZ,OAGxE,KAAKlH,GAAgBrF,eACnB,OAAO,2BACFmJ,GADL,IAEEM,MAAON,EAAMM,MAAMwD,KAAI,SAACV,GAAD,OACrBA,EAAKW,SAAW9D,EAAOkD,KAAKY,OAAS9D,EAAOkD,KAAOC,OAGzD,KAAKlH,GAAgBpF,eACnB,OAAO,2BACFkJ,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKrI,GACH,OAAO,2BACF6H,GADL,IAEEiE,UAAU,IAEd,KAAK9L,GACH,OAAO,2BACF6H,GADL,IAEEM,MAAON,EAAMM,MAAMwD,KAAI,SAACV,GAAD,OACrBA,EAAKW,SAAW9D,EAAOkD,KACnB,CACEY,OAAQX,EAAKc,OACbC,SAAUf,EAAKe,SACfC,MAAOhB,EAAKgB,MACZC,SAAUjB,EAAKiB,SACfC,UAAWlB,EAAKkB,UAChBC,YAAanB,EAAKmB,YAClBC,OAAQpB,EAAKoB,OACbC,SAAUrB,EAAKqB,SACfC,SAAUtB,EAAKuB,SACfC,SAAUxB,EAAKwB,SACfC,gBAAiBzB,EAAKwB,SACtBE,YAAa1B,EAAK0B,aAEpB1B,OAIV,KAAKlH,GAAgBI,oBACnB,OAAO,2BACF0D,GADL,IAEEK,SAAS,IAEb,KAAKnE,GAAgBK,oBACnB,OAAO,2BACFyD,GADL,IAEE4N,SAAU3N,EAAOM,QAErB,KAAKrE,GAAgBM,oBACnB,OAAO,2BACFwD,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKtE,GAAgBmB,2BACnB,OAAO,2BACF2C,GADL,IAEE6N,qBAAqB,IAEzB,KAAK3R,GAAgBoB,2BACnB,OAAO,2BACF0C,GADL,IAEE8N,sBAAuB7N,EAAOM,QAElC,KAAKrE,GAAgBqB,2BACnB,OAAO,2BACFyC,GADL,IAEEQ,MAAOP,EAAOO,QAIlB,KAAKtE,GAAgBO,mBACnB,OAAO,2BACFuD,GADL,IAEEK,SAAS,IAEb,KAAKnE,GAAgBQ,mBACnB,OAAO,2BACFsD,GADL,IAEE+N,QAAS9N,EAAOM,QAEpB,KAAKrE,GAAgBS,mBACnB,OAAO,2BACFqD,GADL,IAEEQ,MAAOP,EAAOO,QAKlB,KAAKtE,GAAgBU,oBACnB,OAAO,2BACFoD,GADL,IAEEK,SAAS,IAEb,KAAKnE,GAAgBW,oBACnB,OAAO,2BACFmD,GADL,IAEEgO,SAAU/N,EAAOM,QAErB,KAAKrE,GAAgBY,oBACnB,OAAO,2BACFkD,GADL,IAEEQ,MAAOP,EAAOO,QAKlB,KAAKtE,GAAgBa,oBACnB,OAAO,2BACFiD,GADL,IAEEK,SAAS,IAEb,KAAKnE,GAAgBc,oBACnB,OAAO,2BACFgD,GADL,IAEEiO,SAAUhO,EAAOM,QAErB,KAAKrE,GAAgBe,oBAMrB,KAAK9E,GACH,OAAO,2BACF6H,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKrI,GACH,OAAO,2BACF6H,GADL,IAEEiF,YAAY,IAEhB,KAAK/I,GAAgBtE,iBACnB,OAAO,2BACFoI,GADL,IAEEM,MAAON,EAAMM,MAAMwD,KAAI,SAACV,GAAD,OACrBA,EAAKW,SAAW9D,EAAOkD,KAAKY,OACxB,CACEA,OAAQX,EAAKW,OACbmK,WAAY9K,EAAK8K,WACjB9J,MAAOhB,EAAKgB,MACZC,SAAUjB,EAAKiB,SACfC,UAAWlB,EAAKkB,UAChBE,OAAQpB,EAAKoB,OACbC,SAAUrB,EAAKqB,SACf0J,OAAQ/K,EAAK+K,OACbC,WAAYhL,EAAKgL,WACjBC,UAAWjL,EAAKiL,UAChBC,aAAclL,EAAKkL,cAErBlL,OAGV,KAAKjL,GACH,OAAO,2BACF6H,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKtE,GAAgBgB,kBACnB,OAAO,2BACF8C,GADL,IAEES,WAAW,IAEf,KAAKvE,GAAgBiB,kBACnB,OAAO,2BACF6C,GADL,IAEEU,YAAaT,EAAOM,QAExB,KAAKrE,GAAgBkB,kBACnB,OAAO,2BACF4C,GADL,IAEEQ,MAAOP,EAAOO,QAElB,QACE,OAAOR,MpC1LsB,2BqC9C5B,WAAuC,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCACzC,OAAQA,EAAOC,MACX,KAAK+B,GAAkBlK,gBACnB,OAAO,2BACAiI,GADP,IAEIG,OAAQF,EAAOG,SAEvB,KAAK6B,GAAkBnK,eACnB,OAAO,2BACAkI,GADP,IAEI4D,WAAY3D,EAAOG,SAE3B,KAAK6B,GAAkBO,gBACnB,OAAO,2BACAxC,GADP,IAEIuO,YAAatO,EAAOG,SAE5B,KAAK6B,GAAkBjK,wBACnB,OAAO,2BACAgI,GADP,IAEI6D,mBAAoB5D,EAAOG,SAEnC,KAAK6B,GAAkBS,yBACnB,OAAO,2BACA1C,GADP,IAEIwO,oBAAqBvO,EAAOG,SAEpC,KAAK6B,GAAkBlL,eACnB,OAAO,2BACAiJ,GADP,IAEIK,SAAS,IAEjB,KAAK4B,GAAkBjL,eACnB,OAAO,2BACAgJ,GADP,IAEIM,MAAOL,EAAOM,QAGtB,KAAK0B,GAAkBhL,eACnB,OAAO,2BACA+I,GADP,IAEIQ,MAAOP,EAAOO,QAItB,KAAKyB,GAAkBC,kBACnB,OAAO,2BACAlC,GADP,IAEIyO,UAAU,IAGlB,KAAKxM,GAAkBE,kBACnB,OAAO,2BACAnC,GADP,IAEI0O,SAAUzO,EAAOM,QAGzB,KAAK0B,GAAkBG,kBACnB,OAAO,2BACApC,GADP,IAEIQ,MAAOP,EAAOO,QAKtB,KAAKyB,GAAkB5K,yBACnB,OAAO,2BACA2I,GADP,IAEIK,SAAS,IAEjB,KAAK4B,GAAkB3K,yBACnB,OAAO,2BACA0I,GADP,IAEIsF,WAAYrF,EAAOM,QAG3B,KAAK0B,GAAkB1K,yBACnB,OAAO,2BACAyI,GADP,IAEIQ,MAAOP,EAAOO,QAGtB,KAAKyB,GAAkBxL,eACnB,OAAO,2BACAuJ,GADP,IAEIkD,UAAU,IAElB,KAAKjB,GAAkBvL,eACnB,OAAO,2BACAsJ,GADP,IAEIM,MAAsB,MAAfN,EAAMM,MAAgB,CAACL,EAAOkD,MAA9B,CAAuClD,EAAOkD,MAA9C,mBAAuDnD,EAAMM,UAE5E,KAAK2B,GAAkBtL,eACnB,OAAO,2BACAqJ,GADP,IAEIQ,MAAOP,EAAOO,QAGtB,KAAKyB,GAAkBrL,eACnB,OAAO,2BACAoJ,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKsD,aAAezG,EAAOkD,KAAKuD,WAAhC,2BAAkDtD,GAAlD,IAAwDY,UAAU,IAASZ,OAGvF,KAAKnB,GAAkBpL,eACnB,OAAO,2BACAmJ,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKsD,aAAezG,EAAOkD,KAAKuD,WAAazG,EAAOkD,KAAOC,OAGvE,KAAKnB,GAAkBnL,eACnB,OAAO,2BACAkJ,GADP,IAEIQ,MAAOP,EAAOO,QAGtB,KAAKyB,GAAkBzK,eACnB,OAAO,2BACAwI,GADP,IAEIiE,UAAU,IAElB,KAAKhC,GAAkBxK,eACnB,OAAO,2BACAuI,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKsD,aAAezG,EAAOkD,KAAO,CAC9BwD,aAAcvD,EAAKuD,aACnBhC,SAAUvB,EAAKuB,UACfvB,OAGhB,KAAKnB,GAAkBvK,eACnB,OAAO,2BACAsI,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKyB,GAAkBtK,iBACnB,OAAO,2BACAqI,GADP,IAEIiF,YAAY,IAEpB,KAAKhD,GAAkBrK,iBACnB,OAAO,2BACAoI,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKsD,aAAezG,EAAOkD,KAAKuD,WAAa,CACzCC,aAAcvD,EAAKuD,aACnBgI,SAAUvL,EAAKuL,SACfzJ,UAAW9B,EAAK8B,UAChBR,SAAUzE,EAAOkD,KAAKuB,SACtBI,YAAa1B,EAAK0B,aAClB1B,OAGhB,KAAKnB,GAAkBpK,iBACnB,OAAO,2BACAmI,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKyB,GAAkBI,kBACnB,OAAO,2BACArC,GADP,IAEIiF,YAAY,IAEpB,KAAKhD,GAAkBK,kBACnB,OAAO,2BACAtC,GADP,IAEI0O,SAAU1O,EAAM0O,SAAS5K,KAAI,SAAAV,GAAI,OAC7BA,EAAKwL,WAAa3O,EAAOkD,KAAKyL,SAAW,CACrCjI,aAAcvD,EAAKuD,aACnBkI,gBAAiBzL,EAAKyL,gBACtBC,gBAAiB1L,EAAK0L,gBACtB5J,UAAW9B,EAAK8B,UAChBR,SAAUzE,EAAOkD,KAAKuB,SACtBI,YAAa1B,EAAK0B,aAClB1B,OAGhB,KAAKnB,GAAkBM,kBACnB,OAAO,2BACAvC,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,KAAKyB,GAAkBU,uBACnB,OAAO,2BACA3C,GADP,IAEIK,SAAS,IAEjB,KAAK4B,GAAkBW,uBAEnB,OAAO,2BACA5C,GADP,IAEI+O,YAAa9O,EAAOM,QAE5B,KAAK0B,GAAkBY,uBACnB,OAAO,2BACA7C,GADP,IAEIQ,MAAOP,EAAOO,QAKtB,KAAKyB,GAAkBa,0BACnB,OAAO,2BACA9C,GADP,IAEIK,SAAS,IAEjB,KAAK4B,GAAkBc,0BACnB,OAAO,2BACA/C,GADP,IAEIgP,eAAgB/O,EAAOM,QAE/B,KAAK0B,GAAkBgN,0BACnB,OAAO,2BACAjP,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,MrC9KgB,oCsC9C5B,WAAgD,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCACpD,OAAQA,EAAOC,MACb,KAAKtC,GACH,OAAO,2BACFoC,GADL,IAEEkP,eAAe,IAEnB,KAAKtR,GAEH,OAAO,2BACFoC,GADL,IAEEmP,YAAalP,EAAOM,MACpB6O,KAAK,EACLC,KAAK,EACLC,KAAK,EACLC,KAAK,IAET,KAAK3R,GACH,OAAO,2BACFoC,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAK5C,GACH,OAAO,2BACFoC,GADL,IAEEkP,eAAe,IAEnB,KAAKtR,GAEH,OAAO,2BACFoC,GADL,IAEEwP,OAAQvP,EAAOM,QAEnB,KAAK3C,GACH,OAAO,2BACFoC,GADL,IAEEQ,MAAOP,EAAOO,QAGlB,KAAK5C,GACH,OAAO,2BACFoC,GADL,IAEEyP,gBAAgB,IAEpB,KAAK7R,GAEH,OAAO,2BACFoC,GADL,IAEE0P,QAASzP,EAAOM,QAEpB,KAAK3C,GACH,OAAO,2BACFoC,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAK5C,GACH,OAAO,2BACFoC,GADL,IAEEkP,eAAe,IAEnB,KAAKtR,GACH,OAAO,2BACFoC,GADL,IAEE2P,YAAa1P,EAAOM,MACpB6O,KAAK,EACLC,KAAK,EACLC,KAAK,EACLC,KAAK,IAET,KAAK3R,GACH,OAAO,2BACFoC,GADL,IAEEQ,MAAOP,EAAOO,QAGlB,QACE,OAAOR,MtC9BsB,8BAyC/BiD,IAzC+B,2BuC9C5B,WAAuC,IAArBjD,EAAoB,uDAAZ,GAAIC,EAAQ,uCAC3C,OAAQA,EAAOC,MACb,KAAK9B,GACH,OAAO,2BACF4B,GADL,IAEEG,OAAQF,EAAOG,SAEnB,KAAKhC,GACH,OAAO,2BACF4B,GADL,IAEEK,SAAS,IAEb,KAAKjC,GACH,OAAO,2BACF4B,GADL,IAEEM,MAAOL,EAAOM,QAElB,KAAKnC,GACH,OAAO,2BACF4B,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKpC,GACH,OAAO,2BACF4B,GADL,IAEES,WAAW,IAEf,KAAKrC,GACH,OAAO,2BACF4B,GADL,IAEEU,YAAaT,EAAOM,QAExB,KAAKnC,GACH,OAAO,2BACF4B,GADL,IAEEQ,MAAOP,EAAOO,QAElB,QACE,OAAOR,MvCQsB,8BA2C/BiD,IA3C+B,4BwC9C5B,WAAwC,IAArBjD,EAAoB,uDAAZ,GAAIC,EAAQ,uCAC5C,OAAQA,EAAOC,MACb,KAAK7B,GACH,OAAO,2BACF2B,GADL,IAEEG,OAAQF,EAAOG,SAEnB,KAAK/B,GACH,OAAO,2BACF2B,GADL,IAEE4D,WAAY3D,EAAOG,SAEvB,KAAK/B,GACH,OAAO,2BACF2B,GADL,IAEE6D,mBAAoB5D,EAAOG,SAE/B,KAAK/B,GACH,OAAO,2BACF2B,GADL,IAEEK,SAAS,IAEb,KAAKhC,GACH,OAAO,2BACF2B,GADL,IAEEM,MAAOL,EAAOM,QAElB,KAAKlC,GACH,OAAO,2BACF2B,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKnC,GACH,OAAO,2BACF2B,GADL,IAEEkD,UAAU,IAEd,KAAK7E,GACH,OAAO,2BACF2B,GADL,IAEEM,MACiB,MAAfN,EAAMM,MAAgB,CAACL,EAAOkD,MAA9B,CAAuClD,EAAOkD,MAA9C,mBAAuDnD,EAAMM,UAEnE,KAAKjC,GACH,OAAO,2BACF2B,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKnC,GACH,OAAO,2BACF2B,GADL,IAEEM,MAAON,EAAMM,MAAMwD,KAAI,SAACV,GAAD,OACrBA,EAAKwM,OAAS3P,EAAOkD,KAAKyM,MAA1B,2BAAuCxM,GAAvC,IAA6CY,UAAU,IAASZ,OAGtE,KAAK/E,GACH,OAAO,2BACF2B,GADL,IAEEM,MAAON,EAAMM,MAAMwD,KAAI,SAACV,GAAD,OACrBA,EAAKwM,QAAU3P,EAAOkD,KAAKyM,MAAQ3P,EAAOkD,KAAOC,OAGvD,KAAK/E,GACH,OAAO,2BACF2B,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKnC,GACH,OAAO,2BACF2B,GADL,IAEEiE,UAAU,IAEd,KAAK5F,GACH,OAAO,2BACF2B,GADL,IAEEM,MAAON,EAAMM,MAAMwD,KAAI,SAACV,GAAD,OACrBA,EAAKwM,QAAU3P,EAAOkD,KAClB,CACEyM,MAAOxM,EAAKwM,MACZC,QAASzM,EAAKyM,QACdC,MAAO1M,EAAK2M,MACZA,MAAO3M,EAAK2M,MACZC,WAAY5M,EAAK4M,WACjBC,UAAY7M,EAAK6M,UACjBvL,SAAUtB,EAAKuB,UAGjBvB,OAIV,KAAK/E,GACH,OAAO,2BACF2B,GADL,IAEEK,SAAS,IAEb,KAAKhC,GACH,OAAO,2BACF2B,GADL,IAEEkQ,aAAcjQ,EAAOM,QAEzB,KAAKlC,GAQL,KAAKA,GACH,OAAO,2BACF2B,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKnC,GACH,OAAO,2BACF2B,GADL,IAEEiF,YAAY,IAEhB,KAAK5G,GACH,OAAO,2BACF2B,GADL,IAEEM,MAAON,EAAMM,MAAMwD,KAAI,SAACV,GAAD,OACrBA,EAAKwM,QAAU3P,EAAOkD,KAAKyM,MACvB,CACAA,MAAOxM,EAAKwM,MACZC,QAASzM,EAAKyM,QACdC,MAAO1M,EAAK2M,MACZA,MAAO3M,EAAK2M,MACZC,WAAY5M,EAAK4M,WACjBC,UAAY7M,EAAK6M,UACjBvL,SAAUtB,EAAKuB,UAEfvB,OAGV,KAAK/E,GACH,OAAO,2BACF2B,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKnC,GACH,OAAO,2BACF2B,GADL,IAEES,WAAW,IAEf,KAAKpC,GACH,OAAO,2BACF2B,GADL,IAEEU,YAAaT,EAAOM,QAExB,KAAKlC,GACH,OAAO,2BACF2B,GADL,IAEEQ,MAAOP,EAAOO,QAGhB,KAAKnC,GACH,OAAO,2BACA2B,GADP,IAEIK,SAAS,IAEjB,KAAKhC,GACD,OAAO,2BACA2B,GADP,IAEImQ,SAAUlQ,EAAOM,QAEzB,KAAKlC,GACL,QACE,OAAO2B,MxC3HsB,iCyC9C5B,WAA6C,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCACjD,OAAQA,EAAOC,MACb,KAAK3B,GACH,OAAO,2BACFyB,GADL,IAEEG,OAAQF,EAAOG,SAEnB,KAAK7B,GACH,OAAO,2BACFyB,GADL,IAEEK,SAAS,IAEb,KAAK9B,GACH,OAAO,2BACFyB,GADL,IAEEM,MAAOL,EAAOM,QAElB,KAAKhC,GACH,OAAO,2BACFyB,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKjC,GACH,OAAO,2BACFyB,GADL,IAEES,WAAW,IAEf,KAAKlC,GACH,OAAO,2BACFyB,GADL,IAEEU,YAAaT,EAAOM,QAExB,KAAKhC,GACH,OAAO,2BACFyB,GADL,IAEEQ,MAAOP,EAAOO,QAElB,QACE,OAAOR,MzCQsB,6B0C9C5B,WAAyC,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCAC3C,OAAQA,EAAOC,MACX,KAAK1B,GAAoBzG,gBACrB,OAAO,2BACAiI,GADP,IAEIK,QAASJ,EAAOG,SAExB,KAAK5B,GAAoB1G,eACrB,OAAO,2BACAkI,GADP,IAEI4D,WAAY3D,EAAOG,SAE3B,KAAK5B,GAAoBO,iBACrB,OAAO,2BACAiB,GADP,IAEIoJ,aAAcnJ,EAAOG,SAE7B,KAAK5B,GAAoBxG,wBACrB,OAAO,2BACAgI,GADP,IAEI6D,mBAAoB5D,EAAOG,SAEnC,KAAK5B,GAAoB7F,kBACrB,OAAO,2BACAqH,GADP,IAEIiH,MAAOhH,EAAOiH,WAEtB,KAAK1I,GAAoBzH,eACzB,KAAKyH,GAAoBnH,yBACzB,KAAKmH,GAAoBnG,mBACzB,KAAKmG,GAAoBsC,oBACzB,KAAKtC,GAAoBhG,kBACrB,OAAO,2BACAwH,GADP,IAEIK,SAAS,IAEjB,KAAK7B,GAAoBxH,eACrB,OAAO,2BACAgJ,GADP,IAEIM,MAAOL,EAAOM,MACdF,SAAS,IAEjB,KAAK7B,GAAoBlH,yBACrB,OAAO,2BACA0I,GADP,IAEIsF,WAAYrF,EAAOM,MACnBF,SAAS,IAEjB,KAAK7B,GAAoBlG,mBACrB,OAAO,2BACA0H,GADP,IAEI+E,QAAS9E,EAAOM,MAChBF,SAAS,IAEjB,KAAK7B,GAAoBuC,oBACrB,OAAO,2BACAf,GADP,IAEI+G,SAAU9G,EAAOM,MACjBF,SAAS,IAEjB,KAAK7B,GAAoB/F,kBACrB,OAAO,2BACAuH,GADP,IAEIiH,MAAOhH,EAAOgH,MACd5G,SAAS,IAEjB,KAAK7B,GAAoB/H,eACrB,OAAO,2BACAuJ,GADP,IAEIkD,UAAU,IAElB,KAAK1E,GAAoB9H,eACrB,OAAO,2BACAsJ,GADP,IAEIM,MAAM,CAAEL,EAAOkD,MAAV,mBAAoBnD,EAAMM,OAAS,KACxC4C,UAAU,IAElB,KAAK1E,GAAoB5H,eACrB,OAAO,2BACAoJ,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKoB,SAAWvE,EAAOkD,KAAKqB,OAA5B,2BAA0CpB,GAA1C,IAAgDY,UAAU,IAASZ,OAG/E,KAAK5E,GAAoB3H,eACrB,OAAO,2BACAmJ,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKoB,SAAWvE,EAAOkD,KAAKqB,OAASvE,EAAOkD,KAAOC,OAG/D,KAAK5E,GAAoBhH,eACrB,OAAO,2BACAwI,GADP,IAEIiE,UAAU,IAElB,KAAKzF,GAAoB/G,eACrB,OAAO,2BACAuI,GADP,IAEIM,MAAON,EAAMM,MAAMgN,QAAO,SAAAlK,GAAI,OAAIA,EAAKoB,SAAWvE,EAAOkD,UAEjE,KAAK3E,GAAoB7G,iBACrB,OAAO,2BACAqI,GADP,IAEIiF,YAAY,IAEpB,KAAKzG,GAAoB5G,iBACrB,OAAO,2BACAoI,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKoB,SAAWvE,EAAOkD,KAAKqB,OAA5B,2BAA0CpB,GAA1C,IAAgDsB,SAAUzE,EAAOkD,KAAKuB,WAAatB,KAEvF6B,YAAY,IAMhB,KAAKzG,GAAoBC,gBACrB,OAAO,2BACAuB,GADP,IAEIK,SAAS,IAEjB,KAAK7B,GAAoBE,gBACrB,OAAO,2BACAsB,GADP,IAEIoQ,WAAYnQ,EAAOM,QAE3B,KAAK/B,GAAoBG,gBACrB,OAAO,2BACAqB,GADP,IAEIQ,MAAOP,EAAOO,QAQpB,KAAKhC,GAAoBI,gBACvB,OAAO,2BACAoB,GADP,IAEIK,SAAS,IAEjB,KAAK7B,GAAoBK,gBACrB,OAAO,2BACAmB,GADP,IAEIqQ,cAAepQ,EAAOM,QAE9B,KAAK/B,GAAoBM,gBACrB,OAAO,2BACAkB,GADP,IAEIQ,MAAOP,EAAOO,QAK1B,KAAKhC,GAAoB7H,eACzB,KAAK6H,GAAoB1H,eACzB,KAAK0H,GAAoB9G,eACzB,KAAK8G,GAAoBvH,eACzB,KAAKuH,GAAoBjH,yBACzB,KAAKiH,GAAoBjG,mBACzB,KAAKiG,GAAoBwC,oBACzB,KAAKxC,GAAoB9F,kBACzB,KAAK8F,GAAoB3G,iBACrB,OAAO,2BACAmI,GADP,IAEIQ,MAAOP,EAAOO,MACdH,SAAS,EACT6C,UAAU,EACVc,UAAU,EACVC,UAAU,EACVgB,YAAY,IAEpB,QACI,OAAOjF,M1ClIgB,+B2C9C5B,WAA2C,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCAC7C,OAAQA,EAAOC,MACX,KAAKlB,GAAsBjH,gBACvB,OAAO,2BACAiI,GADP,IAEIK,QAASJ,EAAOG,SAExB,KAAKpB,GAAsBD,iBACvB,OAAO,2BACAiB,GADP,IAEIoJ,aAAcnJ,EAAOG,SAE7B,KAAKpB,GAAsBjI,eACvB,OAAO,2BACAiJ,GADP,IAEIK,SAAS,IAEjB,KAAKrB,GAAsBhI,eACvB,OAAO,2BACAgJ,GADP,IAEIsQ,UAAWrQ,EAAOM,MAClBF,SAAS,IAEjB,KAAKrB,GAAsB/H,eACvB,OAAO,2BACA+I,GADP,IAEIQ,MAAOP,EAAOO,MACdH,SAAS,IAEjB,KAAKrB,GAAsB1G,mBACvB,OAAO,2BACA0H,GADP,IAEIoQ,WAAYnQ,EAAOM,QAE3B,KAAKvB,GAAsBzG,mBACvB,OAAO,2BACAyH,GADP,IAEIQ,MAAOP,EAAOO,QAEtB,QACI,OAAOR,M3CMgB,iC4C9C5B,WAA6C,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCACjD,OAAQA,EAAOC,MACb,KAAKJ,GACH,OAAO,2BACFE,GADL,IAEEK,SAAS,IAEb,KAAKP,GACH,OAAO,2BACFE,GADL,IAEE8L,aACwB,MAAtB9L,EAAM8L,aACF,CAAC7L,EAAOkD,MADZ,CAEKlD,EAAOkD,MAFZ,mBAEqBnD,EAAM8L,iBAEjC,KAAKhM,GACH,OAAO,2BACFE,GADL,IAEEoN,SAAUnN,EAAOkD,OAErB,KAAKrD,GACH,OAAO,2BACFE,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKV,GACH,OAAO,2BACFE,GADL,IAEE+L,QAAwB,iBAAf9L,EAAOkD,KAChB6I,cAA8B,iBAAf/L,EAAOkD,OAE1B,KAAKrD,GACH,OAAO,2BACFE,GADL,IAEE8L,aAAc9L,EAAMiM,cAExB,KAAKnM,GACH,OAAO,2BACFE,GADL,IAEEmM,SAAS,IAEb,KAAKrM,GACH,OAAO,2BACFE,GADL,IAEEsM,eAC0B,MAAxBtM,EAAMsM,eACF,CAACrM,EAAOkD,MADZ,CAEKlD,EAAOkD,MAFZ,mBAEqBnD,EAAMsM,iBAC7BR,kBAAcuB,IAElB,KAAKvN,GACH,OAAO,2BACFE,GADL,IAEEM,MAAOL,EAAOkD,OAElB,KAAKrD,GACH,OAAO,2BACFE,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKV,GACH,OAAO,2BACFE,GADL,IAEEK,SAAS,IAEb,KAAKP,GACH,OAAO,2BACFE,GADL,IAEEsM,eAAgBrM,EAAOkD,OAE3B,KAAKrD,GACH,OAAO,2BACFE,GADL,IAEEQ,MAAOP,EAAOO,QAElB,KAAKV,GACH,OAAO,2BACFE,GADL,IAEE8L,aACqE,GAAnE9L,EAAM8L,aAAawB,QAAO,SAACC,GAAD,OAAOA,EAAEC,OAASvN,EAAOkD,QAAMsK,YACrDJ,EACArN,EAAM8L,aAAawB,QAAO,SAACC,GAAD,OAAOA,EAAEC,OAASvN,EAAOkD,UAE7D,KAAKrD,GACH,OAAO,2BACFE,GADL,IAEE+L,QAAS9L,EAAOG,SAEpB,KAAKN,GACH,OAAO,2BACFE,GADL,IAEEgM,cAAe/L,EAAOG,SAE1B,QACE,OAAOJ,M5ChDsB,0C6C9C5B,WAAsD,IAArBA,EAAoB,uDAAZ,GAAIC,EAAQ,uCACxD,OAAQA,EAAOC,MACX,KAAK1B,GAAoBzG,gBACrB,OAAO,2BACAiI,GADP,IAEIK,QAASJ,EAAOG,SAExB,KAAK5B,GAAoB1G,eACrB,OAAO,2BACAkI,GADP,IAEI4D,WAAY3D,EAAOG,SAE3B,KAAK5B,GAAoBO,iBACrB,OAAO,2BACAiB,GADP,IAEIoJ,aAAcnJ,EAAOG,SAE7B,KAAK5B,GAAoBxG,wBACrB,OAAO,2BACAgI,GADP,IAEI6D,mBAAoB5D,EAAOG,SAEnC,KAAK5B,GAAoB7F,kBACrB,OAAO,2BACAqH,GADP,IAEIiH,MAAOhH,EAAOiH,WAEtB,KAAK1I,GAAoBzH,eACzB,KAAKyH,GAAoBnH,yBACzB,KAAKmH,GAAoBnG,mBACzB,KAAKmG,GAAoBsC,oBACzB,KAAKtC,GAAoBhG,kBACrB,OAAO,2BACAwH,GADP,IAEIK,SAAS,IAEjB,KAAK7B,GAAoBxH,eACrB,OAAO,2BACAgJ,GADP,IAEIM,MAAOL,EAAOM,MACdF,SAAS,IAEjB,KAAK7B,GAAoBlH,yBACrB,OAAO,2BACA0I,GADP,IAEIsF,WAAYrF,EAAOM,MACnBF,SAAS,IAEjB,KAAK7B,GAAoBlG,mBACrB,OAAO,2BACA0H,GADP,IAEI+E,QAAS9E,EAAOM,MAChBF,SAAS,IAEjB,KAAK7B,GAAoBuC,oBACrB,OAAO,2BACAf,GADP,IAEI+G,SAAU9G,EAAOM,MACjBF,SAAS,IAEjB,KAAK7B,GAAoB/F,kBACrB,OAAO,2BACAuH,GADP,IAEIiH,MAAOhH,EAAOgH,MACd5G,SAAS,IAEjB,KAAK7B,GAAoB/H,eACrB,OAAO,2BACAuJ,GADP,IAEIkD,UAAU,IAElB,KAAK1E,GAAoB9H,eACrB,OAAO,2BACAsJ,GADP,IAEIM,MAAM,CAAEL,EAAOkD,MAAV,mBAAoBnD,EAAMM,OAAS,KACxC4C,UAAU,IAElB,KAAK1E,GAAoB5H,eACrB,OAAO,2BACAoJ,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKoB,SAAWvE,EAAOkD,KAAKqB,OAA5B,2BAA0CpB,GAA1C,IAAgDY,UAAU,IAASZ,OAG/E,KAAK5E,GAAoB3H,eACrB,OAAO,2BACAmJ,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKoB,SAAWvE,EAAOkD,KAAKqB,OAASvE,EAAOkD,KAAOC,OAG/D,KAAK5E,GAAoBhH,eACrB,OAAO,2BACAwI,GADP,IAEIiE,UAAU,IAElB,KAAKzF,GAAoB/G,eACrB,OAAO,2BACAuI,GADP,IAEIM,MAAON,EAAMM,MAAMgN,QAAO,SAAAlK,GAAI,OAAIA,EAAKoB,SAAWvE,EAAOkD,UAEjE,KAAK3E,GAAoB7G,iBACrB,OAAO,2BACAqI,GADP,IAEIiF,YAAY,IAEpB,KAAKzG,GAAoB5G,iBACrB,OAAO,2BACAoI,GADP,IAEIM,MAAON,EAAMM,MAAMwD,KAAI,SAAAV,GAAI,OACvBA,EAAKoB,SAAWvE,EAAOkD,KAAKqB,OAA5B,2BAA0CpB,GAA1C,IAAgDsB,SAAUzE,EAAOkD,KAAKuB,WAAatB,KAEvF6B,YAAY,IAMpB,KAAKzG,GAAoBC,gBACrB,OAAO,2BACAuB,GADP,IAEIK,SAAS,IAEjB,KAAK7B,GAAoBE,gBACrB,OAAO,2BACAsB,GADP,IAEIoQ,WAAYnQ,EAAOM,QAE3B,KAAK/B,GAAoBG,gBACrB,OAAO,2BACAqB,GADP,IAEIQ,MAAOP,EAAOO,QAQtB,KAAKhC,GAAoBI,gBACrB,OAAO,2BACAoB,GADP,IAEIK,SAAS,IAEjB,KAAK7B,GAAoBK,gBACrB,OAAO,2BACAmB,GADP,IAEIqQ,cAAepQ,EAAOM,QAE9B,KAAK/B,GAAoBM,gBACrB,OAAO,2BACAkB,GADP,IAEIQ,MAAOP,EAAOO,QAKtB,KAAKhC,GAAoB7H,eACzB,KAAK6H,GAAoB1H,eACzB,KAAK0H,GAAoB9G,eACzB,KAAK8G,GAAoBvH,eACzB,KAAKuH,GAAoBjH,yBACzB,KAAKiH,GAAoBjG,mBACzB,KAAKiG,GAAoBwC,oBACzB,KAAKxC,GAAoB9F,kBACzB,KAAK8F,GAAoB3G,iBACrB,OAAO,2BACAmI,GADP,IAEIQ,MAAOP,EAAOO,MACdH,SAAS,EACT6C,UAAU,EACVc,UAAU,EACVC,UAAU,EACVgB,YAAY,IAEpB,QACI,OAAOjF,M7ClIgB,K8CzCtBuQ,GAAQC,YACjBnN,GACAoN,YACIC,M,SCReC,eCFhB,SAASC,KAGd,IAAIrN,EAAOsN,KAAKC,MAAMC,eAAeC,QAAQ,SACvCC,EAAYC,OAAOC,SAASC,SAC5BC,EAAUJ,EAAUK,YAAY,KAChCC,EAAWN,EAAUO,UAAUH,EAAU,GAE/C,GAAI9N,GAAQA,EAAKkO,MACf,MAAO,CACLC,cAAe,UAAYnO,EAAKkO,MAChCE,KAAMJ,EACN,eAAgB,mBAChBK,OAAQ,mBAER,kBAAmB,OACnB,mBAAoB,IACpB,yBAA0B,UAC1B,gBAAiB,mBAGnBb,eAAec,QACfX,OAAOC,SAAW,SAIf,SAASW,KAGd,IAAIvO,EAAOsN,KAAKC,MAAMC,eAAeC,QAAQ,SACvCC,EAAYC,OAAOC,SAASC,SAC5BC,EAAUJ,EAAUK,YAAY,KAChCC,EAAWN,EAAUO,UAAUH,EAAU,GAE/C,GAAI9N,GAAQA,EAAKkO,MACf,MAAO,CACLC,cAAe,UAAYnO,EAAKkO,MAChCE,KAAMJ,EAENK,OAAQ,mBAER,kBAAmB,OACnB,mBAAoB,IACpB,yBAA0B,UAC1B,gBAAiB,mBAGnBb,eAAec,QACfX,OAAOC,SAAW,SAIf,SAASY,GAAeC,GAC7B,OAAOA,EAASC,OAAO/b,MAAK,SAAC+b,GACPD,EAASE,OAA7B,IACMC,EAAOjB,OAAOC,SAASC,SACvBjO,EAAO8O,GAAQpB,KAAKC,MAAMmB,GAChC,IAAKD,EAASI,GAAI,CAChB,UACe/E,IAAb2E,GACoB,MAApBA,EAASK,QACRF,EAAKG,SAAS,WACdH,EAAKG,SAAS,QACdH,EAAKG,SAAS,QACdH,EAAKG,SAAS,UACdH,EAAKG,SAAS,WACdH,EAAKG,SAAS,oBACdH,EAAKG,SAAS,oBACdH,EAAKG,SAAS,yBACdH,EAAKG,SAAS,SACdH,EAAKG,SAAS,gBACdH,EAAKG,SAAS,cAOf,MALY,CACVC,gBAAiB,2CACjBC,aAAcR,EAASK,QAII,MAApBL,EAASK,SAGlBtB,eAAec,QACfX,OAAOC,SAAW,UAGpB,IAAM3Q,EAAS2C,GAAQA,EAAKiC,SAAY4M,EAASS,WACjD,OAAOC,QAAQC,OAAOnS,GAExB,OAAO2C,KCxFJ,IAAMyP,GAAgB,CAC3BC,UAMF,SAAmB1P,GACjB,IAAM2P,EAAiB,CACrBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEvB,OAAOgQ,MAAM,GAAD,OACPC,YADO,0BAEVN,GACA5c,KAAK6b,KAdPsB,aAiBF,SAAsBlQ,GACpB,IAAM2P,EAAiB,CACrBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEvB,OAAOgQ,MAAM,GAAD,OACPC,YADO,6BAEVN,GACA5c,KAAK6b,KAzBPuB,aA4BF,SAAsBnQ,GACpB,IAAM2P,EAAiB,CACrBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEvB,OAAOgQ,MAAM,GAAD,OACPC,YADO,6BAEVN,GACA5c,KAAK6b,KApCPwB,mBAuCF,WACE,IAAMT,EAAiB,CACrBC,OAAQ,MACRC,QAASpC,MAGX,OAAOuC,MAAM,GAAD,OACPC,YADO,mCAEVN,GACA5c,KAAK6b,MCjDF,IAAMyB,GAAgB,CAC3BC,OAYF,SAAgBtQ,GACd,OAAO,SAACuQ,GACNA,EAeO,CAAExT,KAAM1J,EAAgBO,iBAd/B6b,GAAcC,UAAU1P,GAAMjN,MAC5B,SAAC8b,GAeL,IAAiBzR,EAdXmT,EAASC,IAAY,IACrBD,GAaWnT,EAbMyR,EAAStF,aAcvB,CAAExM,KAAM1J,EAAgBQ,eAAgBuJ,cAZ7C,SAACC,GACCkT,EAASC,IAAY,IACrBD,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM1J,EAAgBS,eAAgBuJ,SAblCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAtBxCN,mBAsCF,WACE,OAAO,SAACG,GACNA,EAaO,CAAExT,KAAM1J,EAAgBU,uBAX/B0b,GAAcW,qBAAqBrd,MACjC,SAAC8b,GAYL,IAAiBzR,EAXXmT,GAWWnT,EAXMyR,EAAStF,aAYvB,CAAExM,KAAM1J,EAAgBW,qBAAsBoJ,cAVnD,SAACC,GACCkT,EAWN,SAAiBlT,GACf,MAAO,CAAEN,KAAM1J,EAAgBY,qBAAsBoJ,SAZxCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA/CxCR,aA8DF,SAAsBlQ,GACpB,OAAO,SAACuQ,GACNA,EAuBF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM1J,EAAgBC,eAAgB0M,QAxBtC4Q,CAAQ5Q,IACjByP,GAAcS,aAAalQ,GAAMjN,MAC/B,SAAC8b,GAEKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cAEXkB,EAASM,IAAW,IACpBN,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM1J,EAAgBG,eAAgB6J,SAblCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAjFxCP,aAiGF,SAAsBnQ,GACpB,OAAO,SAACuQ,GACNA,EAuBF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM1J,EAAgBC,eAAgB0M,QAxBtC4Q,CAAQ5Q,IACjByP,GAAcU,aAAanQ,GAAMjN,MAC/B,SAAC8b,GAEKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cAEXkB,EAASM,IAAW,IACpBN,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM1J,EAAgBG,eAAgB6J,SAblCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBApHxCI,WAuMF,SAAoB9Q,GAClB,MAAO,CACLjD,KAAM1J,EAAgB0d,oBACtB/Q,SAzMFgR,YAmIF,SAAqB5Q,EAAMoB,GACzB,IAAIxB,EAAO,CACTY,OAAQR,EACRmB,SAAUC,GAEZ,OAAO,SAAC+O,GACNA,EAwBO,CAAExT,KAAM1J,EAAgBmB,mBAtB/Bib,GAAcuB,YAAY5Q,EAAMoB,GAAUzO,MACxC,SAAC8b,GACKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM1J,EAAgBoB,iBAAkBuL,QArBhCoI,CAAQpI,IACjBuQ,EAASU,IAAmB,IAC5BV,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM1J,EAAgBqB,iBAAkB2I,SAbpCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA1JxCG,cACAK,YA+KF,SAAqBjU,GACnB,MAAO,CACLF,KAAM1J,EAAgBuI,iBACtBqB,WAjLFuT,eACAS,uBAuKF,SAASJ,GAAW5T,GAClB,MAAO,CACLF,KAAM1J,EAAgBsB,eACtBsI,UAUJ,SAASuT,GAAYvT,GACnB,MAAO,CACLF,KAAM1J,EAAgBuB,gBACtBqI,UAIJ,SAASgU,GAAmBhU,GAC1B,MAAO,CACLF,KAAM1J,EAAgBwB,wBACtBoI,UC3MG,IAAMkU,GAAuB,CAChCC,cAcJ,SAAuBpR,GAEnB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAIzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,+BAAgEN,GACvE5c,KAAK6b,KAvBVyC,cA2BJ,SAAuBrR,GACnB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,+BAAgEN,GACvE5c,KAAK6b,KAjCV0C,iBAoCJ,SAA0BtR,GACtB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,6BAA8DN,GACrE5c,KAAK6b,KA3CVoC,YAkEJ,SAAqBO,EAAW/P,GAC5B,IAAMmO,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAEb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,qCAA8DsB,EAA9D,YAA2E/P,GAAYmO,GAC9F5c,KAAK6b,KAvEV4C,mBA6CJ,SAA4BD,GACxB,IAAM5B,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAEb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,sCAA+DsB,GAAa5B,GACnF5c,KAAK6b,KAlDV6C,iBAqDJ,SAA0BzR,GACtB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,0BAA2DN,GAClE5c,KAAK6b,KA5DV8C,gBAwEJ,WACI,IAAM/B,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAGb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,+BAAgEN,GACvE5c,KAAK6b,KA9EV+C,OA2FJ,WACI,IAAMhC,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAGb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,wBAAyDN,GAAgB5c,KAAK6b,KAhG1FgD,UAkGJ,SAAmB7U,EAAM8U,GACrB,IAAMlC,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAEb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,mCAA4DlT,EAA5D,YAAoE8U,GAASlC,GAAgB5c,KAAK6b,KAtG9GkD,QAyGJ,SAAiBD,GACb,IAAMlC,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU8B,IAGzB,OAAO7B,MAAM,GAAD,OAAIC,YAAJ,yBAA0DN,GAAgB5c,KAAK6b,KA/G3FmD,OAiHJ,SAAgBF,GACZ,IAAMlC,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU8B,IAEzB,OAAO7B,MAAM,GAAD,OAAIC,YAAJ,wBAAyDN,GAAgB5c,KAAK6b,KAtH1FoD,4BA6EJ,SAAqCC,EAAalR,GAC9C,IAAM4O,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAGb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,mDAA4EgC,EAA5E,mBAAkGlR,GAAU4O,GACnH5c,KAAK6b,MChGP,IAAMsD,GAAc,CACvBC,WAYJ,SAAoBnS,GAChB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,yBAA0DN,GACjE5c,KAAK6b,KAlBVwD,aAqBJ,SAAsBrR,GAClB,IAAM4O,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAGb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,iCAA0DlP,GAAU4O,GAC3E5c,KAAK6b,KA3BVyD,WAuCJ,SAAoBrS,GAChB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,yBAA0DN,GACjE5c,KAAK6b,KA7CV0D,cAgDJ,SAAuBtS,GACnB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,uBAAwDN,GAC/D5c,KAAK6b,KAvDVoC,YAqEJ,SAAqBjQ,EAAQS,GACzB,IAAMmO,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAEb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,kCAA2DlP,EAA3D,YAAqES,GAAYmO,GACxF5c,KAAK6b,KA1EV2D,sBA8EJ,SAA+BvS,GAC3B,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,kCAAmEN,GAC1E5c,KAAK6b,KArFV4D,YAyFJ,SAAqBzR,GACjB,IAAM4O,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAEb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,kCAA2DlP,GAAU4O,GAC5E5c,KAAK6b,KA9FV6D,WAiGJ,SAAoB1R,GAChB,IAAM4O,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAEb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,iCAA0DlP,GAAU4O,GAC3E5c,KAAK6b,KAtGV8D,oBAsDJ,SAA6B1S,GACzB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,+BAAgEN,GACvE5c,KAAK6b,KA7DV+D,UAsBJ,SAAmB5R,GACf,IAAM4O,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAGb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,2BAA4DN,GACnE5c,KAAK6b,MCvCP,IAAMgE,GAAgB,CAC3BC,aAWF,SAAsB7S,GACpB,IAAM2P,EAAiB,CACrBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEvB,OAAOgQ,MAAM,GAAD,OACPC,YADO,4BAEVN,GACA5c,KAAK6b,KAnBPkE,cAkCF,SAAuBC,GACrB,IAAMpD,EAAiB,CACrBC,OAAQ,MACRC,QAASpC,MAGX,OAAOuC,MAAM,GAAD,OACPC,YADO,mCACiD8C,GAC3DpD,GACA5c,KAAK6b,KA1CPoE,aA6CF,SAAsBjS,GACpB,IAAM4O,EAAiB,CACrBC,OAAQ,MACRC,QAASpC,MAGX,OAAOuC,MAAM,GAAD,OACPC,YADO,kCACgDlP,GAC1D4O,GACA5c,KAAK6b,KArDPqE,aAwDF,SAAsBlS,GACpB,IAAM4O,EAAiB,CACrBC,OAAQ,MACRC,QAASpC,MAGX,OAAOuC,MAAM,GAAD,OACPC,YADO,kCACgDlP,GAC1D4O,GACA5c,KAAK6b,KAhEPsE,aAmBF,SAAsBlT,GACpB,IAAM2P,EAAiB,CACrBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEvB,OAAOgQ,MAAM,GAAD,OACPC,YADO,4BAEVN,GACA5c,KAAK6b,KA3BPuE,gBA8EF,SAAyBnT,GACvB,IAAM2P,EAAiB,CACrBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGvB,OAAOgQ,MAAM,GAAD,OACPC,YADO,0BAEVN,GACA5c,KAAK6b,KAvFPoC,YAuGF,SAAqBpQ,EAAQY,GAC3B,IAAMmO,EAAiB,CACrBC,OAAQ,MACRC,QAASpC,MAEX,OAAOuC,MAAM,GAAD,OACPC,YADO,mCACiDrP,EADjD,YAC2DY,GACrEmO,GACA5c,KAAK6b,KA9GPwE,2BAgEF,WACE,IAAMzD,EAAiB,CACrBC,OAAQ,MACRC,QAASpC,MAGX,OAAOuC,MAAM,GAAD,OACPC,YADO,wCAEVN,GACA5c,KAAK6b,KAxEPyE,yBAwFF,SAAkCrT,GAChC,IAAM2P,EAAiB,CACrBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGvB,OAAOgQ,MAAM,GAAD,OACPC,YADO,mCAEVN,GACA5c,KAAK6b,MC3GF,IAAM0E,GAAc,CACvBC,WASJ,SAAoBvT,GAEhB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,yBAA0DN,GACjE5c,KAAK6b,KAhBV4E,WAmBJ,SAAoBxT,GAEhB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,yBAA0DN,GACjE5c,KAAK6b,KA1BV6E,cA6BJ,SAAuBzT,GACnB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,uBAAwDN,GAC/D5c,KAAK6b,KAnCVoC,YAsCJ,SAAqB/M,EAAQzC,GAEzB,IAAMmO,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAEb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,kCAA2DhM,EAA3D,YAAqEzC,GAAYmO,GACxF5c,KAAK6b,KA5CVwD,aA+CJ,SAAsBrR,GAClB,IAAM4O,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAGb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,iCAA0DlP,GAAU4O,GAC3E5c,KAAK6b,KArDV8E,cAwDJ,SAAuBzP,GACnB,IAAM0L,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAGb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,+BAAwDhM,GAAU0L,GACzE5c,KAAK6b,KA9DV+E,qBAiEJ,SAA8B3T,GAC1B,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,mCAAoEN,GAC/E5c,KAAK6b,MC/EH,IAAMgF,GAAmB,CAC5BC,UAGJ,SAAmB7T,GACf,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,8BAA+DN,GAC1E5c,KAAK6b,MCZH,IAAMkF,GAAe,CACxBC,UAIJ,SAAmB/T,GAEf,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAAS,CAAE,eAAgB,oBAC3BC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,mBAAoDN,GAC3D5c,KAAK6b,KAXVoF,kBAeJ,SAA2BhU,GAEvB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAAS,CAAE,eAAgB,oBAC3BC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,iCAAkEN,GACzE5c,KAAK6b,MCzBP,IAAMqF,GAAc,CACvBC,cAIJ,SAAuBjQ,GACnB,IAAM0L,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAGb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,kCAA2DhM,GAAU0L,GAC5E5c,KAAK6b,KAVVuF,eAaJ,SAAwBlQ,GACpB,IAAM0L,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAGb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,qCAA8DhM,GAAU0L,GAC/E5c,KAAK6b,MCtBP,IAAMwF,GAAwB,CACjC3P,eAIJ,SAAwBzE,GACpB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,6BAA8DN,GACrE5c,KAAK6b,KAVVyF,eAaJ,SAAwBrU,GACpB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAAS,CAAE,eAAgB,oBAC3BC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,wBAAyDN,GAChE5c,KAAK6b,MCtBP,IAAM0F,GAAiB,CAC1BC,cAMJ,SAAuBvU,GAEnB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,yBAA0DN,GACrE5c,KAAK6b,KAbN4F,iBAiBJ,SAA0BxU,GACtB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,uBAAwDN,GACnE5c,KAAK6b,KAxBN6F,UA0BJ,WACI,IAAM9E,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAGb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,wBAAwDN,GACnE5c,KAAK6b,KAhCN8F,mBAmCJ,SAA4B1U,GACxB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,8BAA8DN,GACzE5c,KAAK6b,MC/CH,IAAM+F,GAAiB,CAC1BC,cAKJ,SAAuB5U,GACnB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,6BAA8DN,GACzE5c,KAAK6b,KAXNiG,iBAcJ,SAA0B7U,GACtB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,2BAA4DN,GACvE5c,KAAK6b,KArBNkG,qBAwBJ,WACI,IAAMnF,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAGb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,0BAA2DN,GACtE5c,KAAK6b,MClCH,IAAMmG,GAAgB,CACzBC,aAIJ,SAAsBhV,GAElB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,uBAAwDN,GACnE5c,KAAK6b,KAXNqG,gBAcJ,SAAyBjV,GACrB,IAAM2P,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAGb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,qBAAsDN,GACjE5c,KAAK6b,MCvBH,IAAMsG,GAA0B,CACnCC,sBAGJ,SAA+BnV,GAC3B,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,yCAA0EN,GACjF5c,KAAK6b,MCZP,IAAMwG,GAAoB,CAC7BZ,iBAGJ,SAA0BxU,GACtB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,+BAAgEN,GACvE5c,KAAK6b,MCZP,IAAMyG,GAAqB,CAChCC,kBAGF,SAA2BtV,GACzB,IAAM2P,EAAiB,CACrBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGvB,OAAOgQ,MAAM,GAAD,OACPC,YADO,iCAEVN,GACA5c,KAAK6b,MCdF,IAAM2G,GAA8B,CACvCC,oBAKJ,SAA6BxV,GAEzB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,mDAAoFN,GAC3F5c,KAAK6b,KAZV6G,uBAeJ,SAAgC9S,GAC5B,IAAMgN,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAGb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,sDAA+EtN,GAAagN,GACvG5c,KAAK6b,KArBN8G,gBAwBJ,SAAyBnE,GACrB,IAAM5B,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAGb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,6CAAsEsB,GAAa5B,GAC9F5c,KAAK6b,MClCH,IAAM+G,GAAmB,CAC5BC,gBAIJ,SAAyB5V,GACrB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,6BAA8DN,GACzE5c,KAAK6b,KAVNkG,qBAaJ,SAA8B9U,GAC1B,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,0BAA2DN,GACtE5c,KAAK6b,MCvBH,IAAMiH,GAA0B,CACnCC,uBAGJ,SAAgC9V,GAC5B,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,2CAA4EN,GACnF5c,KAAK6b,MCZP,IAAMmH,GAA0B,CACnCC,uBAGJ,SAAgChW,GAC5B,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,2CAA4EN,GACnF5c,KAAK6b,MCZP,IAAMqH,GAA4B,CACrCC,yBAGJ,SAAkClW,GAC9B,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,+CAAgFN,GACvF5c,KAAK6b,MCZP,IAAMuH,GAA+B,CACxCC,cAiBJ,SAAuBpW,GACnB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAAS,CAAE,eAAgB,oBAC3BC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,uCAAwEN,GAC/E5c,KAAK6b,KAvBVyH,eA0BJ,SAAwBrW,GACpB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAAS,CAAE,eAAgB,oBAC3BC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,wCAAyEN,GAChF5c,KAAK6b,KAhCV0H,aAkCJ,SAAsBtW,GAClB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAAS,CAAE,eAAgB,oBAC3BC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,sCAAuEN,GAC9E5c,KAAK6b,KAxCV2H,eAIJ,SAAwBvW,GACpB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAAS,CAAE,eAAgB,oBAC3BC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,6CAA8EN,GACrF5c,KAAK6b,KAVVjI,SAyCJ,SAAkB3G,GAEd,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,2CAAoEjQ,EAAKwW,KAAO,CACxF5G,OAAQ,MACRC,QAAS,CAAE,eAAgB,sBAE1B9c,KAAK6b,MCpDP,IAAM6H,GAAiB,CAC1BC,cAOJ,SAAuB1W,GACnB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,yBAA0DN,GACjE5c,KAAK6b,KAbV+H,cAgBJ,SAAuB3W,GACnB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,yBAA0DN,GACjE5c,KAAK6b,KAtBVgI,iBAyBJ,SAA0B5W,GACtB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,uBAAwDN,GAC/D5c,KAAK6b,KA/BVoC,YAkCJ,SAAqB3L,EAAW7D,GAC5B,IAAMmO,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAEb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,+BAAwD5K,EAAxD,YAAqE7D,GAAYmO,GACxF5c,KAAK6b,KAvCViI,gBA0CJ,WACI,IAAMlH,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAEb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,yBAA0DN,GACjE5c,KAAK6b,MCrDP,IAAMkI,GAAsB,CACjCC,YAeF,SAAqB/W,GACnB,IAAM2P,EAAiB,CACrBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEvB,OAAOgQ,MAAM,GAAD,OACPC,YADO,4BAEVN,GACA5c,KAAK6b,KAvBPoI,mBA0BF,SAA4BhX,GAC1B,IAAM2P,EAAiB,CACrBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEvB,OAAOgQ,MAAM,GAAD,OACPC,YADO,4BAEVN,GACA5c,KAAK6b,KAlCPqI,sBAqCF,SAA+BjX,GAC7B,IAAM2P,EAAiB,CACrBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEvB,OAAOgQ,MAAM,GAAD,OACPC,YADO,yBAEVN,GACA5c,KAAK6b,KA7CPoC,YAgDF,SAAqBkG,EAAgB1V,GACnC,IAAMmO,EAAiB,CACrBC,OAAQ,MACRC,QAASpC,MAEX,OAAOuC,MAAM,GAAD,OACPC,YADO,oCACkDiH,EADlD,YACoE1V,GAC9EmO,GACA5c,KAAK6b,KAvDPuI,cAgFF,WACE,IAAMxH,EAAiB,CACrBC,OAAQ,MACRC,QAASpC,MAEX,OAAOuC,MAAM,GAAD,OACPC,YADO,uBAEVN,GACA5c,KAAK6b,KAvFPwI,aA0FF,WACE,IAAMzH,EAAiB,CACrBC,OAAQ,MACRC,QAASpC,MAEX,OAAOuC,MAAM,GAAD,OACPC,YADO,6BAEVN,GACA5c,KAAK6b,KAjGPyI,cAoGF,SAAuBC,EAAWC,EAAQC,GACxC,IAAM7H,EAAiB,CACrBC,OAAQ,MACRC,QAASpC,MAEX,OAAOuC,MAAM,GAAD,OACPC,YADO,oDACkEqH,EADlE,mBACsFC,EADtF,qBACyGC,GACnH7H,GACA5c,KAAK6b,KA3GP6I,gBA8GF,SAAyBC,GACvB,IAAM/H,EAAiB,CACrBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU2H,IAEvB,OAAO1H,MAAM,GAAD,OACPC,YADO,gCAEVN,GACA5c,KAAK6b,KAtHP+I,iBAyHF,WACE,IAAMhI,EAAiB,CACrBC,OAAQ,MACRC,QAASpC,MAGX,OAAOuC,MAAM,GAAD,OACPC,YADO,2BAEVN,GACA5c,KAAK6b,KAjIPgJ,QAqDF,SAAiBV,EAAgBW,GAC/B,IAAMlI,EAAiB,CACrBC,OAAQ,MACRC,QAASpC,MAEX,OAAOuC,MAAM,GAAD,OACPC,YADO,+CAC6DiH,EAD7D,mBACsFW,GAChGlI,GACA5c,KAAK6b,KA5DPkJ,SA+DF,SAAkBC,GAChB,IAAMpI,EAAiB,CACrBC,OAAQ,MACRC,QAASpC,MAEX,OAAOuC,MAAM,GAAD,OACPC,YADO,kDACgE8H,GAC1EpI,GACA5c,KAAK6b,KAtEPoJ,gBAkIF,SAAyBC,GACvB,IAAMtI,EAAiB,CACrBC,OAAQ,OACRC,QAASlB,KACTmB,KAAMmI,GAGR,OAAOjI,MAAM,GAAD,OACPC,YADO,gCAEVN,GACA5c,KAAK6b,KA3IPsJ,eA8IF,SAAwBD,GACtB,IAAMtI,EAAiB,CACrBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAUkI,IAGvB,OAAOjI,MAAM,GAAD,OACPC,YADO,+BAEVN,GACA5c,KAAK6b,MCrKF,IAAMuJ,GAAyB,CAClClB,sBAGJ,SAA+BjX,GAC3B,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,yCAA0EN,GACjF5c,KAAK6b,MCZP,IAAMwJ,GAAoB,CAC7BC,cAGJ,SAAuBrY,GACnB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,2BAA4DN,GACnE5c,KAAK6b,MCXP,IAAM0J,GAAqB,CAC9BC,kBAIJ,SAA2BvY,GACvB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,wBAAyDN,GAChE5c,KAAK6b,KAXV4J,mBAcJ,SAA4BxY,GACxB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,kCAAmEN,GAC1E5c,KAAK6b,MCxBP,IAAM6J,GAA4B,CACrCC,yBAGJ,SAAkC1Y,GAC9B,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,+CAAgFN,GACvF5c,KAAK6b,MCZP,IAAM+J,GAA0B,CACnCC,eAAgB,mBAChBC,mBAMJ,SAA4B7Y,GACxB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,aAAJ,OAAoC6I,KAAKF,eAAzC,uBAA8EjJ,GACrF5c,KAAK6b,KAZVmK,qBAgBJ,SAA8B/Y,GAC1B,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,aAAJ,OAAoC6I,KAAKF,eAAzC,kBAAyEjJ,GAChF5c,KAAK6b,KAvBWoK,mBA4BzB,SAA4BhZ,GAExB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,aAAJ,OAAoC6I,KAAKF,eAAzC,uBAA8EjJ,GACrF5c,KAAK6b,KAnCVqK,oBAsCJ,SAA6BjZ,GACzB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,aAAJ,OAAoC6I,KAAKF,eAAzC,wBAA+EjJ,GACtF5c,KAAK6b,MCjDP,IAAMsK,GAA6B,CACtCC,0BAKJ,SAAmCnZ,GAC/B,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,iDAAkFN,GACzF5c,KAAK6b,KAZVwK,iBA0BJ,SAA0BxY,GACtB,IAAM+O,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAGb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,uDAAgFrP,GAAU+O,GACjG5c,KAAK6b,KAhCVyK,gCAcJ,SAAyCrZ,GACrC,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,uDAAwFN,GAC/F5c,KAAK6b,MCzBP,IAAM0K,GAA4B,CACrCC,kBAGJ,SAA2BvZ,GACvB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,wCAAyEN,GAChF5c,KAAK6b,MCZP,IAAM4K,GAA2B,CACpCC,YAIJ,SAAqBC,GACjB,IAAM/J,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAEb,OAAOuC,MAAM,UAAGC,YAAH,4BAA6DyJ,EAAG/J,GACxE5c,KAAK6b,KATV+K,WAYJ,SAAoBD,GAChB,IAAM/J,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAEb,OAAOuC,MAAM,UAAGC,YAAH,2BAA4DyJ,EAAG/J,GACvE5c,KAAK6b,MCnBP,IAAMgL,GAAsB,CACjCC,kBAMF,SAA2B7Z,GACzB,IAAM2P,EAAiB,CACrBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGvB,OAAOgQ,MAAM,GAAD,OACPC,YADO,6BAEVN,GACA5c,KAAK6b,KAfPkL,cAkBF,SAAuB9Z,GACrB,IAAM2P,EAAiB,CACrBC,OAAQ,MACRE,KAAMpC,KAAKqC,UAAU/P,IAGvB,OAAOgQ,MAAM,GAAD,OACPC,YADO,6BAEVN,GACA5c,KAAK6b,KA1BPmL,aA6BF,SAAsB/Z,GACpB,IAAM2P,EAAiB,CACrBC,OAAQ,MACRE,KAAMpC,KAAKqC,UAAU/P,IAGvB,OAAOgQ,MAAM,GAAD,OACPC,YADO,+BAEVN,GACA5c,KAAK6b,KArCPoL,aAwCF,SAAsBC,GACpB,IAAMtK,EAAiB,CACrBC,OAAQ,MACRC,QAASpC,MAGX,OAAOuC,MAAM,GAAD,OACPC,YADO,qCACmDgK,GAC7DtK,GACA5c,KAAK6b,MCtDF,IAAMsL,GAAqC,CAC9CC,kBAsBJ,SAA2Bna,GAEvB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,oCAAqEN,GAC5E5c,KAAK6b,KA9BVwL,gBA2EJ,SAAyBC,GACrB,IAAM1K,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAEb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,gDAAyEoK,GAAc1K,GAC9F5c,KAAK6b,KAhFV0L,eAsGJ,SAAwBta,GACpB,IAAM2P,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAEb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,+CAAwEjQ,EAAKqa,WAA7E,mBAAkGra,EAAKua,QAAU5K,GACxH5c,KAAK6b,KA3GV4L,qBA+BJ,SAA8Bxa,GAC1B,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,0CAA2EN,GAClF5c,KAAK6b,KAtCV6L,cAiFJ,SAAuBJ,GACnB,IAAM1K,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAEb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,8CAAuEoK,GAAc1K,GAC5F5c,KAAK6b,KAtFV8L,uBAkDJ,SAAgC1a,GAC5B,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,yCAA0EN,GACjF5c,KAAK6b,KAzDV+L,2BA2DJ,SAAoC3a,GAChC,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,6CAA8EN,GACrF5c,KAAK6b,KAlEVgM,iBAwFJ,SAA0BP,GACtB,IAAM1K,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAEb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,kDAA2EoK,GAAc1K,GAChG5c,KAAK6b,KA7FViM,cAMJ,SAAuB7a,GACnB,IAAM2P,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAEb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,qDAA8EjQ,GAAQ2P,GAC7F5c,KAAK6b,KAXVkM,2BAoCJ,SAAoC9a,GAChC,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,gDAAiFN,GACxF5c,KAAK6b,M,kCCtDDmM,GAAmB,CAC5BC,U,6CACAC,U,6CACAC,a,6CACAlK,Y,+CACAmK,kB,4CACAC,gB,6FAGJ,+BAAAC,EAAA,6DACU1L,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAHjB,SAM2BuC,MAAM,GAAD,OAAIC,YAAJ,mCAAoEN,GANpG,cAMUd,EANV,yBAOWD,GAAeC,IAP1B,4C,sEAaA,WAAyB7O,GAAzB,kBAAAqb,EAAA,6DACU1L,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAJ7B,SAM2BgQ,MAAM,GAAD,OAAIC,YAAJ,+BAAgEN,GANhG,cAMUd,EANV,yBAOWD,GAAeC,IAP1B,4C,sEAwBA,WAAyB7O,GAAzB,kBAAAqb,EAAA,6DAEAC,QAAQC,IAAIvb,GACF2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAN7B,SAQ2BgQ,MAAM,GAAD,OAAIC,YAAJ,+BAAgEN,GARhG,cAQUd,EARV,yBASWD,GAAeC,IAT1B,4C,sEAgBA,WAA4B7O,GAA5B,kBAAAqb,EAAA,6DACU1L,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAJ7B,SAO2BgQ,MAAM,GAAD,OAAIC,YAAJ,6BAA8DN,GAP9F,cAOUd,EAPV,yBAQWD,GAAeC,IAR1B,4C,sEAgBA,WAA2BpC,EAAOjL,GAAlC,kBAAA6Z,EAAA,6DACU1L,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAHjB,SAK2BuC,MAAM,GAAD,OAAIC,YAAJ,iCAA0DxD,EAA1D,YAAmEjL,GAAYmO,GAL/G,cAKUd,EALV,yBAMWD,GAAeC,IAN1B,4C,sEAcA,+BAAAwM,EAAA,6DACU1L,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAHjB,SAM2BuC,MAAM,GAAD,OAAIC,YAAJ,6BAA8DN,GAN9F,cAMUd,EANV,yBAOWD,GAAeC,IAP1B,4C,sBC5FO,IAAM2M,GAAmB,CAC5B9E,cAOJ,SAAuB1W,GACnB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,2BAA4DN,GACnE5c,KAAK6b,KAbV+H,cAgBJ,SAAuB3W,GACnB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,2BAA4DN,GACnE5c,KAAK6b,KAtBVgI,iBAyBJ,SAA0B5W,GACtB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,wBAAyDN,GAChE5c,KAAK6b,KA/BVoC,YAkCJ,SAAqB3L,EAAW7D,GAC5B,IAAMmO,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAEb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,+BAAwD5K,EAAxD,YAAqE7D,GAAYmO,GACxF5c,KAAK6b,KAvCViI,gBA0CJ,WACI,IAAMlH,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAEb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,yBAA0DN,GACjE5c,KAAK6b,MCrDP,IAAM6M,GAAoB,CAC7BC,aAQJ,SAAsB1b,GAElB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,mBAAoDN,GAC3D5c,KAAK6b,KAfV+M,gBAwCJ,SAAyB3b,GAErB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,oBAAqDN,GAC5D5c,KAAK6b,KAhDVoC,YAmDJ,SAAqBjQ,EAAQS,GACzB,IAAMmO,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAEb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,sCAA+DlP,EAA/D,YAAyES,GAAYmO,GAC5F5c,KAAK6b,KAxDVgN,SAgBJ,WACI,IAAMjM,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAGb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,oBAAqDN,GAC5D5c,KAAK6b,KAtBViN,WA2BJ,WACI,IAAMlM,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAGb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,+BAAgEN,GACvE5c,KAAK6b,MCvCP,IAAMkN,GAAsB,CAC/BC,cASJ,SAAuB/b,GACnB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,oCAAqEN,GAC5E5c,KAAK6b,KAfVoN,aAkBJ,SAAsBhc,GAClB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,mCAAoEN,GAC3E5c,KAAK6b,KAxBVqN,iBA2BJ,SAA0Bjc,GAEtB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,qBAAsDN,GAC7D5c,KAAK6b,KAnCV0D,cAsCJ,SAAuBtS,GACnB,IAAM2P,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAIb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,iCAAkEN,GACzE5c,KAAK6b,KA7CV+M,gBAgDJ,SAAyB3b,GACrB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,2BAA4DN,GACnE5c,KAAK6b,KAvDVoC,YA0DJ,SAAqBhR,GACjB,IAAM2P,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,oCAAqEN,GAC5E5c,KAAK6b,KAhEVsN,cAmEJ,SAAuBlc,GACnB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,oCAAqEN,GAC5E5c,KAAK6b,MC/EP,IAAMuN,GAAuB,CAClC7L,UACAc,cAsEF,SAAuBpR,GACrB,OAAO,SAACuQ,GACNA,EAwBF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMhI,EAAiCiL,QAzBvC4Q,CAAQ5Q,IAEjBmR,GAAqBC,cAAcpR,GAAMjN,MACvC,SAAC8b,GAEKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMhI,EAAiCiL,QArB/BoI,CAAQyG,EAAStF,eAC1BgH,EAASM,IAAW,IACpBN,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMhI,EAAiCsI,SAbnCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA1FxCW,cA0GF,SAAuBrR,EAAMoc,GAC3B,OAAO,SAAC7L,GACNA,EAyBF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMhI,EAAiCiL,QA1BvC4Q,CAAQ5Q,IAEjBmR,GAAqBE,cAAcrR,GAAMjN,MACvC,SAAC8b,GAEKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAASD,GAAO8L,IAChB7L,EAASM,IAAW,IACpBN,EAmBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMhI,EAAiCiL,QApB/BoI,CAAQpI,IACjBuQ,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMhI,EAAiCsI,SAbnCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA/HxCM,YA+IF,SAAqBO,EAAW/P,GAC9B,IAAIxB,EAAO,CACT2C,UAAW4O,EACXhQ,SAAUC,GAEZ,OAAO,SAAC+O,GACNA,EAyBO,CAAExT,KAAMhI,IAvBfoc,GAAqBH,YAAYO,EAAW/P,GAAUzO,MACpD,SAAC8b,GAEKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMhI,EAAmCiL,QArBjCoI,CAAQpI,IACjBuQ,EAASU,IAAmB,IAC5BV,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMhI,EAAmCsI,SAbrCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAvKxC2L,eAyCF,SAAwBD,GACtB,OAAO,SAAC7L,GACNA,EAcO,CAAExT,KAAMhI,IAZfoc,GAAqBM,iBAAiB2K,GAAKrpB,MACzC,SAAC8b,GAaL,IAAiBzR,EAZXmT,GAYWnT,EAZMyR,EAAStF,aAavB,CAAExM,KAAMhI,EAAiCqI,cAX9C,SAACC,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMhI,EAAiCsI,SAbnCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAlDxC4L,YAsLF,WACE,OAAO,SAAC/L,GACNA,EAaO,CAAExT,KAAMhI,IAZfoc,GAAqBO,kBAAkB3e,MACrC,SAAC8b,GAaL,IAAiBzR,EAZXmT,GAYWnT,EAZMyR,EAAStF,aAavB,CAAExM,KAAMhI,EAAsCqI,cAXnD,SAACC,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMhI,EAAsCsI,SAbxCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA9LxCG,cACAL,eACAS,sBACAW,UAoOF,SAAmB7U,EAAM8U,GACvB,OAAO,SAACtB,GACNA,EAcO,CAAExT,KAAMhI,IAZfoc,GAAqBS,UAAU7U,EAAM8U,GAAO9e,MAC1C,SAAC8b,GAaL,IAAiBzR,EAZXmT,GAYWnT,EAZMyR,EAAStF,aAavB,CAAExM,KAAMhI,EAAoCqI,cAXjD,SAACC,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMhI,EAAoCsI,SAbtCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA7OxCiB,OA6PF,SAAgByK,GACd,OAAO,SAAC7L,GACNA,EAcO,CAAExT,KAAMhI,IAZfoc,GAAqBQ,OAAOyK,GAAKrpB,MAC/B,SAAC8b,GAaL,IAAiBzR,EAZXmT,GAYWnT,EAZMyR,EAASO,gBAavB,CAAErS,KAAMhI,EAAiCqI,cAX9C,SAACC,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMhI,EAAiCsI,SAbnCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAtQxCoB,QAyTF,SAAiBsK,GACf,OAAO,SAAC7L,GACNA,EAcO,CAAExT,KAAMhI,KAZfoc,GAAqBW,QAAQsK,GAAKrpB,MAChC,SAAC8b,GAaL,IAAiBzR,EAZXmT,GAYWnT,EAZMyR,EAAStF,aAavB,CAAExM,KAAMhI,GAAkCqI,cAX/C,SAACC,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMhI,GAAkCsI,SAbpCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAlUxCqB,OAqRF,SAAgBF,GACd,OAAO,SAACtB,GACNA,EAuBO,CAAExT,KAAMhI,KArBfoc,GAAqBY,OAAOF,GAAO9e,MACjC,SAAC8b,GACKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAASM,IAAW,IACpBN,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMhI,GAAkCsI,SAbpCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAvSxCjN,gBAiVF,SAAyB2Y,GACvB,OAAO,SAAC7L,GACNA,EAcO,CAAExT,KAAMhI,KAZfoc,GAAqB1N,gBAAgB2Y,GAAKrpB,MACxC,SAAC8b,GAaL,IAAiBzR,EAZXmT,GAYWnT,EAZMyR,EAAStF,aAavB,CAAExM,KAAMhI,GAA8CqI,cAX3D,SAACC,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMhI,GAA8CsI,SAbhDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA1VxC6L,wBAsMF,SAAiCtK,EAAalR,GAC5C,OAAO,SAACwP,GACNA,EAaO,CAAExT,KAAMhI,IAZfoc,GAAqBa,4BAA4BC,EAAalR,GAAQhO,MACpE,SAAC8b,GAaL,IAAiBzR,EAZXmT,GAYWnT,EAZMyR,EAAStF,aAavB,CAAExM,KAAMhI,EAAsCqI,cAXnD,SAACC,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMhI,EAAsCsI,SAbxCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBA5M1C,SAASJ,GAAO8L,GACd,OAAO,SAAC7L,GACNA,EAgBO,CAAExT,KAAMhI,IAdfoc,GAAqBG,iBAAiB8K,GAAKrpB,MACzC,SAAC8b,GAeL,IAAiBzR,EAdXmT,EAASC,IAAY,IACrBD,GAaWnT,EAbMyR,EAAStF,aAcvB,CAAExM,KAAMhI,EAAiCqI,cAZ9C,SAACC,GACCkT,EAASC,IAAY,IACrBD,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMhI,EAAiCsI,SAbnCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,iBA4V1C,SAASG,GAAW5T,GAClB,MAAO,CACLF,KAAMhI,GACNkI,UAIJ,SAASuT,GAAYvT,GACnB,MAAO,CACLF,KAAMhI,GACNkI,UAIJ,SAASgU,GAAmBhU,GAC1B,MAAO,CACLF,KAAMhI,GACNkI,UC3YG,IAAMuf,GAAoB,CAC/BlM,OAgBF,SAAgB8L,GACd,OAAO,SAAC7L,GACNA,EAeO,CAAExT,KAAM/H,KAdfkd,GAAYI,cAAc8J,GAAKrpB,MAC7B,SAAC8b,GAeL,IAAiBzR,EAdXmT,EAASC,IAAY,IACrBD,GAaWnT,EAbMyR,EAAStF,aAcvB,CAAExM,KAAM/H,GAA8BoI,cAZ3C,SAACC,GACCkT,EAASC,IAAY,IACrBD,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM/H,GAA8BqI,SAbhCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA1BxC+L,WAuJF,SAAoBzc,GAClB,OAAO,SAACuQ,GACNA,EAcO,CAAExT,KAAM/H,KAZfkd,GAAYE,aAAapS,GAAMjN,MAC7B,SAAC8b,GAaL,IAAiBzR,EAZXmT,GAYWnT,EAZMyR,EAAStF,aAavB,CAAExM,KAAM/H,GAAkCoI,cAX/C,SAACC,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM/H,GAAkCqI,SAbpCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAhKxCyB,WAyMF,SAAoBnS,GAClB,OAAO,SAACuQ,GACNA,EAwBF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM/H,GAA8BgL,QAzBpC4Q,CAAQ5Q,IAEjBkS,GAAYC,WAAWnS,GAAMjN,MAC3B,SAAC8b,GAEKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM/H,GAA8BgL,QArB5BoI,CAAQyG,EAAStF,eAC1BgH,EAASM,IAAW,IACpBN,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM/H,GAA8BqI,SAbhCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA7NxC2B,WA4RF,SAAoBrS,GAClB,OAAO,SAACuQ,GACNA,EAwBF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM/H,GAA8BgL,QAzBpC4Q,CAAQ5Q,IAEjBkS,GAAYG,WAAWrS,GAAMjN,MAC3B,SAAC8b,GAEKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM/H,GAA8BgL,QArB5BoI,CAAQpI,IACjBuQ,EAASM,IAAW,IACpBN,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM/H,GAA8BqI,SAbhCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAhTxCM,YAgUF,SAAqB5Q,EAAMoB,GACzB,IAAIxB,EAAO,CACTY,OAAQR,EACRmB,SAAUC,GAEZ,OAAO,SAAC+O,GACNA,EAwBO,CAAExT,KAAM/H,KAtBfkd,GAAYlB,YAAY5Q,EAAMoB,GAAUzO,MACtC,SAAC8b,GACKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM/H,GAAgCgL,QArB9BoI,CAAQpI,IACjBuQ,EAASU,IAAmB,IAC5BV,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM/H,GAAgCqI,SAblCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAvVxCG,cACAL,eACAS,sBACAwB,WAyGF,SAAoBrS,GAClB,IAAIJ,EAAO,CACTY,OAAQR,GAEV,OAAO,SAACmQ,GACNA,EAwBO,CAAExT,KAAM/H,KAtBfkd,GAAYO,WAAWrS,GAAMrN,MAC3B,SAAC8b,GACKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM/H,GAAgCgL,QArB9BoI,CAAQpI,IACjBuQ,EAASU,IAAmB,IAC5BV,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM/H,GAAgCqI,SAblCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA/HxC8B,YAiEF,SAAqBpS,GACnB,IAAIJ,EAAO,CACTY,OAAQR,GAEV,OAAO,SAACmQ,GACNA,EAwBO,CAAExT,KAAM/H,KAtBfkd,GAAYM,YAAYpS,GAAMrN,MAC5B,SAAC8b,GACKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM/H,GAAgCgL,QArB9BoI,CAAQpI,IACjBuQ,EAASU,IAAmB,IAC5BV,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM/H,GAAgCqI,SAblCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAvFxCgM,kBAoCF,SAA2BN,GACzB,OAAO,SAAC7L,GACNA,EAgBO,CAAExT,KAAM/H,KAdfkd,GAAYK,sBAAsB6J,GAAKrpB,MACrC,SAAC8b,GAeL,IAAiBzR,EAdXmT,EAASC,IAAY,IACrBD,GAaWnT,EAbMyR,EAAStF,aAcvB,CAAExM,KAAM/H,GAA8BoI,cAZ3C,SAACC,GACCkT,EAASC,IAAY,IACrBD,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM/H,GAA8BqI,SAbhCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA/CxCiM,WAqOF,SAAoBP,GAClB,OAAO,SAAC7L,GACNA,EAmCO,CAAExT,KAAM/H,KAlCfkd,GAAYQ,oBAAoB0J,GAAKrpB,MACnC,SAAC8b,GAEC0B,EAASC,IAAY,IACrB,IAAIxQ,EAAO6O,EAAStF,aACR,MAARvJ,GACFA,EAAK4c,SAAQ,SAAUC,UACdA,EAAE9a,iBACF8a,EAAEjc,cACFic,EAAEC,iBACFD,EAAEE,gBACFF,EAAExb,cACFwb,EAAEG,gBACFH,EAAEtb,gBACFsb,EAAEI,uBACFJ,EAAEpb,gBACFob,EAAEvO,aACFuO,EAAEK,oBACFL,EAAEM,YACFN,EAAE3X,iBACF2X,EAAEvX,iBACFuX,EAAEO,iBACFP,EAAEQ,cAGb9M,EAYG,CAAExT,KAAM/H,GAAiCoI,MAZ3B4C,OAEnB,SAAC3C,GACCkT,EAWN,SAAiBlT,GACf,MAAO,CAAEN,KAAM/H,GAAiCqI,SAZnCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBApQxC4M,QAsKF,SAAiBtd,GACf,OAAO,SAACuQ,GACNA,EAcO,CAAExT,KAAM/H,KAZfkd,GAAYS,UAAU3S,GAAMjN,MAC1B,SAAC8b,GAaL,IAAiBzR,EAZXmT,GAYWnT,EAZMyR,EAAStF,aAavB,CAAExM,KAAM/H,GAA+BoI,cAX5C,SAACC,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM/H,GAA+BqI,SAbjCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBAgL1C,SAASG,GAAW5T,GAClB,MAAO,CACLF,KAAM/H,GACNiI,UAIJ,SAASuT,GAAYvT,GACnB,MAAO,CACLF,KAAM/H,GACNiI,UAIJ,SAASgU,GAAmBhU,GAC1B,MAAO,CACLF,KAAM/H,GACNiI,UChYG,IAAM0T,GAAe,CACxBvI,QAMJ,SAAiBnG,GACb,MAAO,CAAElF,KAAMjI,EAAwBmN,YANvC5E,MAaJ,SAAe4E,GACX,MAAO,CAAElF,KAAMjI,EAAsBmN,YAbrC2G,QAQJ,SAAiB3G,GACb,MAAO,CAAElF,KAAMjI,EAAwBmN,YARvCyM,MAeJ,WACI,MAAO,CAAE3R,KAAMjI,KClBZ,IAAMyoB,GAAoB,CAC7BjN,OAcJ,SAAgBtQ,GACZ,OAAO,SAAAuQ,GACHA,EAawB,CAAExT,KAAM9H,GAAoBrB,iBAZpD0f,GAAYG,cAAczT,GAAMjN,MAAK,SAAA8b,GAazC,IAAiBzR,EAZTmT,EAASC,IAAY,IACrBD,GAWSnT,EAXQyR,EAAStF,aAWD,CAAExM,KAAM9H,GAAoBpB,eAAgBuJ,cATrE,SAAAC,GACIkT,EAASC,IAAY,IACrBD,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM9H,GAAoBnB,eAAgBuJ,SARxDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAvB9C6C,WAwFJ,SAAoBvT,GAChB,OAAO,SAAAuQ,GACHA,EAyBJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM9H,GAAoB3B,eAAgB0M,QAzB/D4Q,CAAQ5Q,IAEjBsT,GAAYC,WAAWvT,GAAMjN,MACzB,SAAA8b,GAEQA,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,EAmBpB,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM9H,GAAoB1B,eAAgByM,QAnB/CoI,CAAQyG,EAAStF,eAC1BgH,EAASM,IAAW,IACpBN,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAGvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM9H,GAAoBzB,eAAgB6J,SARxDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA7G9C8C,WAuHJ,SAAoBxT,GAChB,OAAO,SAAAuQ,GACHA,EA0BJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM9H,GAAoBxB,eAAgBuM,QA1B/D4Q,CAAQ5Q,IAEjBsT,GAAYE,WAAWxT,GAAMjN,MACzB,SAAA8b,GAEQA,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,EAoBpB,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM9H,GAAoBvB,eAAgBsM,QApB/CoI,CAAQpI,IACjBuQ,EAASM,IAAW,IACpBN,EAASI,GAAavI,QAAQyG,EAASO,mBAER,QAA1BP,EAASQ,aACdkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAGvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM9H,GAAoBtB,eAAgB0J,SARxDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA7I9CI,WAuJJ,SAAoB9Q,GAChB,MAAO,CACHjD,KAAM9H,GAAoB8b,oBAAqB/Q,SAxJnDgR,YA4JJ,SAAqB/M,EAAQzC,GACzB,IAAIxB,EAAO,CACPqB,OAAQ4C,EACR1C,SAAUC,GAEd,OAAO,SAAA+O,GACHA,EAwBwB,CAAExT,KAAM9H,GAAoBT,mBAtBpD8e,GAAYtC,YAAY/M,EAAQzC,GAAUzO,MACtC,SAAA8b,GAEQA,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,EAkBpB,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM9H,GAAoBR,iBAAkBuL,QAlBjDoI,CAAQpI,IACjBuQ,EAASU,IAAmB,IAC5BV,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM9H,GAAoBP,iBAAkB2I,SAR1DoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBApL9CG,cACA4L,WA6LJ,SAAoB1b,GAChB,OAAO,SAAAwP,GACHA,EAYwB,CAAExT,KAAM9H,GAAoBC,qBAVpDoe,GAAYlB,aAAarR,GAAQhO,MAAK,SAAA8b,GAW1C,IAAiBzR,EAVTmT,GAUSnT,EAVQyR,EAAStF,aAUD,CAAExM,KAAM9H,GAAoBE,mBAAoBiI,cARzE,SAAAC,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM9H,GAAoBG,mBAAoBiI,SAR5DoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBArM9C8M,SAsDJ,SAAkBvZ,GACd,OAAO,SAAAsM,GACHA,EAqBwB,CAAExT,KAAM9H,GAAoBI,oBApBpDie,GAAYI,cAAczP,GAAQlR,MAAK,SAAA8b,GAqB3C,IAAiB/K,EApBTyM,GAoBSzM,EApBQ+K,EAAStF,aAoBD,CAAExM,KAAM9H,GAAoBK,kBAAmBwO,WAlBpE+K,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,eACwB,QAA1BR,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAGvCmB,EAASI,GAAatT,MAAMwR,EAASO,uBAI7C,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM9H,GAAoBM,kBAAmB8H,SAR3DoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAvE9C+M,gBAoNJ,SAAyB1Z,GACrB,OAAO,SAAAwM,GACHA,EAE6B,CAAExT,KAAM9H,GAAoBO,kBAAmBuO,eAvNhF4P,qBAyBJ,SAA8B3T,GAC1B,OAAO,SAAAuQ,GACHA,EAoBJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM9H,GAAoBxB,eAAgBuM,QApB/D4Q,CAAQ5Q,IACjBsT,GAAYK,qBAAqB3T,GAAMjN,MACnC,SAAA8b,GACIjB,eAAe8P,WAAW,8BAC1BnN,EAiBZ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM9H,GAAoBvB,eAAgBsM,QAjBvDoI,CAAQyG,EAAStF,eAC1BqE,eAAe+P,QAAQ,6BAA8BjQ,KAAKqC,UAAU,CAAE6N,SAAU/O,EAAStF,gBAErFsF,GAAYA,EAASQ,eACI,OAAzBR,EAASQ,aAAwBkB,EAASI,GAAavI,QAAQyG,EAASO,kBACzC,OAAzBP,EAASQ,aAAwBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBACpEmB,EAASI,GAAatT,MAAMwR,EAASO,sBAGvD,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM9H,GAAoBtB,eAAgB0J,SARxDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAzC9CF,eACAS,uBA2MJ,SAASJ,GAAW5T,GAChB,MAAO,CACHF,KAAM9H,GAAoBN,eAAgBsI,UAWlD,SAASuT,GAAYvT,GACjB,MAAO,CACHF,KAAM9H,GAAoBL,gBAAiBqI,UAGnD,SAASgU,GAAmBhU,GACxB,MAAO,CACHF,KAAM9H,GAAoBJ,wBAAyBoI,UC3OpD,IAAM4gB,GAAmB,CAC5BhK,UAIJ,SAAmBuI,GACf,OAAO,SAAA7L,GACHA,EAcwB,CAAExT,KAAMtH,KAZhCme,GAAiBC,UAAUuI,GAAKrpB,MAAK,SAAA8b,GAazC,IAAiBzR,EAZTmT,EAASC,IAAY,IACrBD,GAWSnT,EAXQyR,EAAStF,aAWD,CAAExM,KAAMtH,GAAmC2H,cATpE,SAAAC,GACIkT,EAASC,IAAY,IACrBD,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMtH,GAAmC4H,SARvDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAd9CF,gBAuBJ,SAASA,GAAYvT,GACjB,MAAO,CACHF,KAAMtH,GAAoCwH,UC1B3C,IAAM6gB,GAAe,CAC1B9J,kBAyFF,SAA2BhU,GACzB,OAAO,SAACuQ,GACNA,EA8BF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMrH,GAA+BsK,QA/BrC4Q,CAAQ5Q,IAEjB8T,GAAaE,kBAAkBhU,GAAMjN,MACnC,SAAC8b,GACKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAASI,GAAavI,QAAQyG,EAASO,kBACvCmB,EA0BV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMrH,GAA+BsK,QA3B7BoI,CAAQyG,MAEjB0B,EAASI,GAAatT,MAAMwR,EAASO,kBACrCmB,EAASE,EAAQ5B,KAEnBkP,YAAW,WACTxN,EAuBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMrH,GAAgCsK,QAxB9Bge,EAAQ,MAChB,SAGP,SAAC3gB,GAAW,IAAD,IAETie,QAAQje,MAAM,kCAAmCA,GAGjD,IAAM4gB,GAAoB,OAAL5gB,QAAK,IAALA,GAAA,UAAAA,EAAOwR,gBAAP,mBAAiB7O,YAAjB,eAAuBoP,kBAAmB/R,EAAM4E,SAAW5E,EAAMqT,WAEtFH,EAASE,EAAQwN,IACjB1N,EAASI,GAAatT,MAAM4gB,QAclC,SAASxN,EAAQpT,GACf,MAAO,CAAEN,KAAMrH,GAA+B2H,WAlIhD0W,UAGF,SAAmB/T,GACjB,OAAO,SAACuQ,GACNA,EAoEF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMrH,GAA+BsK,QArErC4Q,CAAQ5Q,IAEjB8T,GAAaC,UAAU/T,GAAMjN,MAC3B,SAAC8b,GAGKA,GAAYA,EAASQ,eAIM,OAAzBR,EAASQ,cACXzB,eAAe+P,QACb,eACAjQ,KAAKqC,UAAU,CAAEzL,OAAO,KAE1BsJ,eAAe+P,QACb,OACAjQ,KAAKqC,UAAUlB,EAAStF,aAAa,GAAG2U,MAAM,KAEhDtQ,eAAe+P,QACb,WACA9O,EAAStF,aAAa,GAAG2U,MAAM,GAAGtd,QAEpCgN,eAAe+P,QACb,WACA9O,EAAStF,aAAa,GAAG2U,MAAM,GAAG7c,QAEpCuM,eAAe+P,QACb,eACA9O,EAAStF,aAAa,GAAG2U,MAAM,GAAGld,UAEpC4M,eAAe+P,QACb,gBACA9O,EAAStF,aAAa,GAAG2U,MAAM,GAAGjd,OAEpC2M,eAAe+P,QACb,iBACA9O,EAAStF,aAAa,GAAG2U,MAAM,GAAGhd,UAEpC0M,eAAe+P,QACb,cACA9O,EAAStF,aAAa,GAAG2U,MAAM,GAAG/c,WAEpCyM,eAAe+P,QACb,6BACAjQ,KAAKqC,UAAU,CACb6N,SAAU/O,EAAStF,aAAa,GAAG4U,8BAGvCpQ,OAAOC,SAAW,cACgB,OAAzBa,EAASQ,cAClBkB,EAASI,GAAavI,QAAQyG,EAASO,kBACvCmB,EAmBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMrH,GAA+BsK,QApB7BoI,CAAQyG,IACjBkP,YAAW,WACTxN,EAoBZ,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMrH,GAAgCsK,QArB5Bge,EAAQ,MAChB,MAEHzN,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAeN,SAAiBlT,GACf,MAAO,CAAEN,KAAMrH,GAA+B2H,SAhBjCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBCvEnC,IAAM0N,GAAc,CACzBC,QAIF,SAAiBpa,GACf,OAAO,SAACsM,GACNA,EAcO,CAAExT,KAAMpH,KAZfse,GAAYC,cAAcjQ,GAAQlR,MAChC,SAAC8b,GAaL,IAAiBzR,EAZXmT,GAYWnT,EAZMyR,EAAStF,aAavB,CAAExM,KAAMpH,GAA8ByH,cAX3C,SAACC,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMpH,GAA8B0H,SAbhCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAbxCyD,eA6BF,SAAwBlQ,GAYtB,OAAO,SAACsM,GAGN0D,GAAYE,eAAelQ,GAAQlR,MACjC,SAAC8b,GACKA,GAAYA,EAASQ,cACM,OAAzBR,EAASQ,eACXzB,eAAe8P,WAAW,8BAC1B9P,eAAe+P,QACb,6BACAjQ,KAAKqC,UAAU,CAAE6N,SAAU/O,EAAStF,oBAK5C,SAAClM,UC1DA,IAAMihB,GAAwB,CACjC7Z,eAIJ,SAAwBzE,GACpB,OAAO,SAAAuQ,GACHA,EA2BJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMnH,GAAwCoK,QA3BnE4Q,CAAQ5Q,IAEjBoU,GAAsB3P,eAAezE,GAAMjN,MACvC,SAAA8b,GACQA,GAAYA,EAASQ,eACM,OAAxBR,EAASQ,cACRkB,EAASI,GAAavI,QAAQyG,EAASO,kBAEvC2O,YAAW,WACPnQ,eAAec,QACfX,OAAOC,SAAW,WACnB,MAINuC,EAASI,GAAatT,MAAMwR,EAASO,sBAK9C,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMnH,GAAwCyH,SAR5DoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA3B9C2D,eAqCJ,SAAwBrU,GACpB,OAAO,SAAAuQ,GACHA,EAuBJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMnH,GAA+CoK,QAvB1E4Q,CAAQ5Q,IAEjBoU,GAAsBC,eAAerU,GAAMjN,MACvC,SAAA8b,GAEQA,GAAYA,EAASQ,eACK,OAAvBR,EAASQ,aACRkB,EAASI,GAAavI,QAAQyG,EAASO,kBAI1CmB,EAASI,GAAatT,MAAMwR,EAASO,sBAK9C,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMnH,GAA+CyH,SARnEoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBC3D3C,IAAM6N,GAAiB,CAC1BjO,OAUJ,SAAgB8L,GACZ,OAAO,SAAA7L,GACHA,EAawB,CAAExT,KAAMhH,KAZhCue,GAAeE,iBAAiB4H,GAAKrpB,MAAK,SAAA8b,GAa9C,IAAiBzR,EAZTmT,EAASC,IAAY,IACrBD,GAWSnT,EAXQyR,EAAStF,aAWD,CAAExM,KAAMhH,GAAiCqH,cATlE,SAAAC,GACIkT,EAASC,IAAY,IACrBD,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMhH,GAAiCsH,SARrDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAnB9C6D,cA6BJ,SAAuBvU,GACnB,OAAO,SAAAuQ,GACHA,EAwBJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMhH,GAAiCiK,QAxB5D4Q,CAAQ5Q,IAEjBsU,GAAeC,cAAcvU,GAAMjN,MAC/B,SAAA8b,GACQA,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,EAmBpB,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMhH,GAAiCiK,QAnB5CoI,CAAQyG,EAAStF,eAC1BgH,EAASM,IAAW,IACpBN,EAASW,IAAY,IACrBX,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMhH,GAAiCsH,SARrDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAjD9C8N,cA2DJ,SAAuBxe,GACnB,OAAO,SAAAuQ,GACHA,EAmBJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMhH,GAAiCiK,QAnB5D4Q,CAAQ5Q,IAEjBsU,GAAeC,cAAcvU,GAAMjN,MAC/B,SAAA8b,GACI0B,EAgBZ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMhH,GAAiCiK,QAhBpDoI,CAAQpI,IAEb6O,GAAYA,EAASQ,eACI,OAAzBR,EAASQ,aAAwBkB,EAASI,GAAavI,QAAQyG,EAASO,kBACzC,OAAzBP,EAASQ,aAAwBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBACpEmB,EAASI,GAAatT,MAAMwR,EAASO,sBAGvD,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMhH,GAAiCsH,SARrDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA1E9CgE,mBAoFJ,SAA4B1U,GACxB,OAAO,SAAAuQ,GACHA,EAYwB,CAAExT,KAAMhH,KAVhCue,GAAeI,mBAAmB1U,GAAMjN,MAAK,SAAA8b,GAWjD,IAAiBzR,EAVTmT,GAUSnT,EAVQyR,EAAStF,aAUD,CAAExM,KAAMhH,GAA2CqH,cAR5E,SAAAC,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMhH,GAA2CsH,SAR/DoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA5F9C+N,QAsGJ,WACI,OAAO,SAAAlO,GACHA,EAYwB,CAAExT,KAAMhH,KAVhCue,GAAeG,YAAY1hB,MAAK,SAAA8b,GAWpC,IAAiBzR,EAVTmT,GAUSnT,EAVQyR,EAAStF,aAUD,CAAExM,KAAMhH,GAAsCqH,cARvE,SAAAC,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMhH,GAAsCsH,SAR1DoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA9G9CG,cACAK,eACAV,gBAsHJ,SAASK,GAAW5T,GAChB,MAAO,CACHF,KAAMhH,GAAiCkH,UAI/C,SAASiU,GAAYjU,GACjB,MAAO,CACHF,KAAMhH,GAAmCkH,UAIjD,SAASuT,GAAYvT,GACjB,MAAO,CACHF,KAAMhH,GAAkCkH,UC5IzC,IAAMyhB,GAAiB,CAC1BpO,OAQJ,SAAgB8L,GACZ,OAAO,SAAA7L,GACHA,EAawB,CAAExT,KAAM/G,KAZhC2e,GAAeE,iBAAiBuH,GAAKrpB,MAAK,SAAA8b,GAa9C,IAAiBzR,EAZTmT,EAASC,IAAY,IACrBD,GAWSnT,EAXQyR,EAAStF,aAWD,CAAExM,KAAM/G,GAAiCoH,cATlE,SAAAC,GACIkT,EAASC,IAAY,IACrBD,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM/G,GAAiCqH,SARrDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAjB9CkE,cA8CJ,SAAuB5U,GACnB,OAAO,SAAAuQ,GACHA,EAwBJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM/G,GAAiCgK,QAxB5D4Q,CAAQ5Q,IAEjB2U,GAAeC,cAAc5U,GAAMjN,MAC/B,SAAA8b,GAEQA,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,EAkBpB,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM/G,GAAiCgK,QAlB5CoI,CAAQyG,EAAStF,eAC1BgH,EAASM,IAAW,IACpBN,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM/G,GAAiCqH,SARrDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAlE9CiO,cA4EJ,SAAuB3e,GACnB,OAAO,SAAAuQ,GACHA,EAmBJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM/G,GAAiCgK,QAnB5D4Q,CAAQ5Q,IAEjB2U,GAAeC,cAAc5U,GAAMjN,MAC/B,SAAA8b,GACI0B,EAgBZ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM/G,GAAiCgK,QAhBpDoI,CAAQpI,IAEb6O,GAAYA,EAASQ,eACI,OAAzBR,EAASQ,aAAwBkB,EAASI,GAAavI,QAAQyG,EAASO,kBACzC,OAAzBP,EAASQ,aAAwBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBACxEmB,EAASI,GAAatT,MAAMwR,EAASO,sBAGnD,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM/G,GAAiCqH,SARrDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA3F9CkO,cAyBJ,WACI,OAAO,SAAArO,GACHA,EAYwB,CAAExT,KAAM/G,KAVhC2e,GAAeG,uBAAuB/hB,MAAK,SAAA8b,GAW/C,IAAiBzR,EAVTmT,GAUSnT,EAVQyR,EAAStF,aAUD,CAAExM,KAAM/G,GAAwCoH,cARzE,SAAAC,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM/G,GAAwCqH,SAR5DoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAjC9CF,eACAK,eAmGJ,SAASL,GAAYvT,GACjB,MAAO,CACHF,KAAM/G,GAAkCiH,UAIhD,SAAS4T,GAAW5T,GAChB,MAAO,CACHF,KAAM/G,GAAiCiH,UCjHxC,IAAM4hB,GAAgB,CACzBvO,OAOJ,SAAgB8L,GACZ,OAAO,SAAA7L,GACHA,EAcwB,CAAExT,KAAM9G,KAZhCqe,GAAeE,iBAAiB4H,GAAKrpB,MAAK,SAAA8b,GAa9C,IAAiBzR,EAZTmT,EAASC,IAAY,IACrBD,GAWSnT,EAXQyR,EAAStF,aAWD,CAAExM,KAAM9G,GAAgCmH,cATjE,SAAAC,GACIkT,EAASC,IAAY,IACrBD,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM9G,GAAgCoH,SARpDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAjB9CsE,aA2BJ,SAAsBhV,GAClB,OAAO,SAAAuQ,GACHA,EAwBJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM9G,GAAgC+J,QAxB3D4Q,CAAQ5Q,IAEjB+U,GAAcC,aAAahV,GAAMjN,MAC7B,SAAA8b,GAEQA,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,EAkBpB,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM9G,GAAgC+J,QAlB3CoI,CAAQyG,EAAStF,eAC1BgH,EAASM,IAAW,IACpBN,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM9G,GAAgCoH,SARpDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA/C9CoO,aAyDJ,SAAsB9e,GAClB,OAAO,SAAAuQ,GACHA,EAmBJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM9G,GAAgC+J,QAnB3D4Q,CAAQ5Q,IAEjB+U,GAAcC,aAAahV,GAAMjN,MAC7B,SAAA8b,GACI0B,EAgBZ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM9G,GAAgC+J,QAhBnDoI,CAAQpI,IAEb6O,GAAYA,EAASQ,eACI,OAAzBR,EAASQ,aAAwBkB,EAASI,GAAavI,QAAQyG,EAASO,kBACzC,OAAzBP,EAASQ,aAAwBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBACxEmB,EAASI,GAAatT,MAAMwR,EAASO,sBAGnD,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM9G,GAAgCoH,SARpDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAxE9CG,cACAL,gBAiFJ,SAASK,GAAW5T,GAChB,MAAO,CACHF,KAAM9G,GAAgCgH,UAI9C,SAASuT,GAAYvT,GACjB,MAAO,CACHF,KAAM9G,GAAiCgH,UC9FxC,IAAM8hB,GAAyB,CACpCzO,OAKF,SAAgB8L,GACd,OAAO,SAAC7L,GACNA,EAsBO,CAAExT,KAAM1G,KArBf6e,GAAwBC,sBAAsBiH,GAAKrpB,MACjD,SAAC8b,GAsBL,IAAiBzR,EArBXmT,EAASC,IAAY,IACrBD,GAoBWnT,EApBMyR,EAAStF,aAqBvB,CAAExM,KAAM1G,GAAyC+G,WAnBpD,IAAI4C,EAAO6O,EAAStF,aACR,MAARvJ,GACFA,EAAK4c,SAAQ,SAAUC,UACdA,EAAE9a,iBACF8a,EAAEla,aAGb4N,EAcN,SAAuBnT,GACrB,MAAO,CAAEL,KAAM1G,GAA4C+G,SAf9C4hB,CAAchf,OAEzB,SAAC3C,GACCkT,EAcN,SAAiBlT,GACf,MAAO,CAAEN,KAAM1G,GAAyCgH,SAf3CoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAvBxCF,eACAmM,WAwCF,SAAoBP,GAClB,OAAO,SAAC7L,GACNA,EA0BO,CAAExT,KAAM1G,KAzBf6e,GAAwBC,sBAAsBiH,GAAKrpB,MACjD,SAAC8b,GACC0B,EAASC,IAAY,IACrB,IAAIxQ,EAAO6O,EAAStF,aACR,MAARvJ,GACFA,EAAK4c,SAAQ,SAAUC,UACdA,EAAE9a,iBACF8a,EAAEla,iBACFka,EAAEoC,oBACFpC,EAAEqC,WACFrC,EAAEsC,cACFtC,EAAEuC,cACFvC,EAAEwC,wBACFxC,EAAEyC,cAGb/O,EAYG,CAAExT,KAAM1G,GAA4C+G,MAZtC4C,OAEnB,SAAC3C,GACCkT,EAWN,SAAiBlT,GACf,MAAO,CAAEN,KAAM1G,GAA4CgH,SAZ9CoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBAe1C,SAASF,GAAYvT,GACnB,MAAO,CACLF,KAAM1G,GACN4G,UCpFG,IAAMsiB,GAAoB,CAC/BjP,OAKF,SAAgB8L,GACd,OAAO,SAAC7L,GACNA,EAyBO,CAAExT,KAAMlH,KAvBfuf,GAAkBZ,iBAAiB4H,GAAKrpB,MACtC,SAAC8b,GAwBL,IAAiBzR,EAvBXmT,EAASC,IAAY,IACrBD,GAsBWnT,EAtBMyR,EAAStF,aAuBvB,CAAExM,KAAMlH,GAAoCuH,WAtB/C,IAAI4C,EAAO6O,EAAStF,aACR,MAARvJ,GACFA,EAAK4c,SAAQ,SAAUC,UACdA,EAAE9a,iBACF8a,EAAE3X,iBACF2X,EAAE2C,cACF3C,EAAEjX,iBACFiX,EAAE4C,aAGblP,EAcN,SAAuBnT,GACrB,MAAO,CAAEL,KAAMlH,GAAuCuH,SAfzC4hB,CAAchf,OAEzB,SAAC3C,GACCkT,EAcN,SAAiBlT,GACf,MAAO,CAAEN,KAAMlH,GAAoCwH,SAftCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA1BxCF,eACAmM,WA2CF,SAAoBP,GAClB,OAAO,SAAC7L,GACNA,EA0BO,CAAExT,KAAMlH,KAzBfuf,GAAkBZ,iBAAiB4H,GAAKrpB,MACtC,SAAC8b,GACC0B,EAASC,IAAY,IACrB,IAAIxQ,EAAO6O,EAAStF,aACR,MAARvJ,GACFA,EAAK4c,SAAQ,SAAUC,UACdA,EAAE9a,iBACF8a,EAAE3X,iBACF2X,EAAE2C,cACF3C,EAAEjX,iBACFiX,EAAE4C,iBACF5C,EAAE6C,eACF7C,EAAE8C,eACF9C,EAAExS,SAGbkG,EAYG,CAAExT,KAAMlH,GAAuCuH,MAZjC4C,OAEnB,SAAC3C,GACCkT,EAWN,SAAiBlT,GACf,MAAO,CAAEN,KAAMlH,GAAuCwH,SAZzCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBAe1C,SAASF,GAAYvT,GACnB,MAAO,CACLF,KAAMlH,GACNoH,UC1FG,IAAM2iB,GAAsB,CAC/BC,mBAGJ,SAA4B7f,GACxB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,mCAAoEN,GAC3E5c,KAAK6b,MCTP,IAAMkR,GAAsB,CACjCxP,OAKF,SAAgB8L,GACd,OAAO,SAAC7L,GACNA,EA0BO,CAAExT,KAAMS,KAxBfoiB,GAAoBC,mBAAmBzD,GAAKrpB,MAC1C,SAAC8b,GAyBL,IAAiBzR,EAxBXmT,EAASC,IAAY,IACrBD,GAuBWnT,EAvBMyR,EAAStF,aAwBvB,CAAExM,KAAMS,GAAsCJ,WAtBjD,IAAI4C,EAAO6O,EAAStF,aACR,MAARvJ,GACFA,EAAK4c,SAAQ,SAAUC,UACdA,EAAE9a,iBACF8a,EAAE3X,iBACF2X,EAAE2C,cACF3C,EAAEkD,mBACFlD,EAAE4C,aAGblP,EAcN,SAAuBnT,GACrB,MAAO,CAAEL,KAAMS,GAAyCJ,SAf3C4hB,CAAchf,OAEzB,SAAC3C,GACCkT,EAcN,SAAiBlT,GACf,MAAO,CAAEN,KAAMS,GAAsCH,SAfxCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA3BxCF,eACAmM,WA4CF,SAAoBP,GAClB,OAAO,SAAC7L,GACNA,EAuBO,CAAExT,KAAMS,KAtBfoiB,GAAoBC,mBAAmBzD,GAAKrpB,MAC1C,SAAC8b,GACC0B,EAASC,IAAY,IACrB,IAAIxQ,EAAO6O,EAAStF,aACR,MAARvJ,GACFA,EAAK4c,SAAQ,SAAUC,UACdA,EAAE9a,iBACF8a,EAAE3X,iBACF2X,EAAE2C,cACF3C,EAAEkD,mBACFlD,EAAE4C,aAGblP,EAYG,CAAExT,KAAMS,GAAyCJ,MAZnC4C,OAEnB,SAAC3C,GACCkT,EAWN,SAAiBlT,GACf,MAAO,CAAEN,KAAMS,GAAyCH,SAZ3CoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBAe1C,SAASF,GAAYvT,GACnB,MAAO,CACLF,KAAMS,GACNP,UCxFG,IAAM+iB,GAAmB,CAC5B/K,gBAGJ,SAAyBjV,GACrB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAGzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,6BAA8DN,GACrE5c,KAAK6b,MCTP,IAAMqR,GAAmB,CAC9B3P,OAKF,SAAgB8L,GACd,OAAO,SAAC7L,GACNA,EA0BO,CAAExT,KAAMU,KAxBfuiB,GAAiB/K,gBAAgBmH,GAAKrpB,MACpC,SAAC8b,GAyBL,IAAiBzR,EAxBXmT,EAASC,IAAY,IACrBD,GAuBWnT,EAvBMyR,EAAStF,aAwBvB,CAAExM,KAAMU,GAAmCL,WAtB9C,IAAI4C,EAAO6O,EAAStF,aACR,MAARvJ,GACFA,EAAK4c,SAAQ,SAAUC,UACdA,EAAE9a,iBACF8a,EAAE3X,iBACF2X,EAAE2C,cACF3C,EAAEqD,gBACFrD,EAAE4C,aAGblP,EAcN,SAAuBnT,GACrB,MAAO,CAAEL,KAAMU,GAAsCL,SAfxC4hB,CAAchf,OAEzB,SAAC3C,GACCkT,EAcN,SAAiBlT,GACf,MAAO,CAAEN,KAAMU,GAAmCJ,SAfrCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA3BxCF,eACAmM,WA4CF,SAAoBP,GAClB,OAAO,SAAC7L,GACNA,EA8BO,CAAExT,KAAMU,KA7BfuiB,GAAiB/K,gBAAgBmH,GAAKrpB,MACpC,SAAC8b,GACC0B,EAASC,IAAY,IACrB,IAAIxQ,EAAO6O,EAAStF,aACR,MAARvJ,GACFA,EAAK4c,SAAQ,SAAUC,UACdA,EAAE9a,iBACF8a,EAAE3X,iBACF2X,EAAE2C,cACF3C,EAAEqD,gBACFrD,EAAE4C,iBACF5C,EAAEsD,mBACFtD,EAAEjX,iBACFiX,EAAEtC,cACFsC,EAAE1X,iBACF0X,EAAEuD,mBACFvD,EAAEvX,iBACFuX,EAAEtX,aAGbgL,EAYG,CAAExT,KAAMU,GAAsCL,MAZhC4C,OAEnB,SAAC3C,GACCkT,EAWN,SAAiBlT,GACf,MAAO,CAAEN,KAAMU,GAAsCJ,SAZxCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBAe1C,SAASF,GAAYvT,GACnB,MAAO,CACLF,KAAMU,GACNR,UC5FG,IAAMojB,GAA0B,CACrC/P,OAKF,SAAgB8L,GACd,OAAO,SAAC7L,GACNA,EA+BO,CAAExT,KAAM7G,KA7Bf2f,GAAwBC,uBAAuBsG,GAAKrpB,MAClD,SAAC8b,GA8BL,IAAiBzR,EA7BXmT,EAASC,IAAY,IACrBD,GA4BWnT,EA5BMyR,EAAStF,aA6BvB,CAAExM,KAAM7G,GAA0CkH,WA3BrD,IAAI4C,EAAO6O,EAAStF,aACR,MAARvJ,GACAA,EAAK4c,SAAQ,SAAUC,UAAaA,EAAE9a,iBAC/B8a,EAAE3X,iBACF2X,EAAE2C,cACF3C,EAAEyD,uBACFzD,EAAE4C,iBACF5C,EAAE0D,yBACF1D,EAAE2D,kBACF3D,EAAEta,eACFsa,EAAE9W,WACF8W,EAAE4D,kBACF5D,EAAEtb,YAGbgP,EAcN,SAAuBnT,GACrB,MAAO,CAAEL,KAAM7G,GAA6CkH,SAf/C4hB,CAAchf,OAEzB,SAAC3C,GACCkT,EAcN,SAAiBlT,GACf,MAAO,CAAEN,KAAM7G,GAA0CmH,SAf5CoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAhCxCF,eACAmM,WAiDF,SAAoBP,GAClB,OAAO,SAAC7L,GACNA,EA6BO,CAAExT,KAAM7G,KA5Bf2f,GAAwBC,uBAAuBsG,GAAKrpB,MAClD,SAAC8b,GACC0B,EAASC,IAAY,IACrB,IAAIxQ,EAAO6O,EAAStF,aACR,MAARvJ,GACFA,EAAK4c,SAAQ,SAAUC,UACdA,EAAE9a,iBACF8a,EAAE3X,iBACF2X,EAAE2C,cACF3C,EAAEyD,uBACFzD,EAAE4C,iBACF5C,EAAE0D,yBACF1D,EAAE2D,kBACF3D,EAAEta,eACFsa,EAAE9W,WACF8W,EAAE4D,kBACF5D,EAAEtb,YAGbgP,EAYG,CAAExT,KAAM7G,GAA6CkH,MAZvC4C,OAEnB,SAAC3C,GACCkT,EAWN,SAAiBlT,GACf,MAAO,CAAEN,KAAM7G,GAA6CmH,SAZ/CoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBAe1C,SAASF,GAAYvT,GACnB,MAAO,CACLF,KAAM7G,GACN+G,UChGG,IAAMyjB,GAA0B,CACnCpQ,OAKJ,SAAgB8L,GAEZ,OAAO,SAAA7L,GACHA,EAcwB,CAAExT,KAAO5G,KAZjC4f,GAAwBC,uBAAuBoG,GAAKrpB,MAAK,SAAA8b,GAa7D,IAAiBzR,EAZTmT,EAASC,IAAY,IACrBD,GAWSnT,EAXQyR,EAAStF,aAWD,CAAExM,KAAM5G,GAA0CiH,cAR/E,SAAAC,GACIkT,EASR,SAAiBlT,GAAS,MAAO,CAAEN,KAAM5G,GAA0CkH,SATlEoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAhB1CF,eACAmM,WA0BJ,SAAoBP,GAChB,OAAO,SAAA7L,GACHA,EAgBwB,CAAExT,KAAM5G,KAfhC4f,GAAwBC,uBAAuBoG,GAAKrpB,MAAK,SAAA8b,GACrD0B,EAASC,IAAY,IACrB,IAAIxQ,EAAO6O,EAAStF,aACR,MAARvJ,GACAA,EAAK4c,SAAQ,SAAUC,UAAYA,EAAE9a,iBAAkB8a,EAAE3X,iBAC9C2X,EAAE2C,cAAe3C,EAAE8D,uBAAwB9D,EAAE4C,aAG5DlP,EAQyB,CAAExT,KAAM5G,GAA6CiH,MAR7D4C,OAEjB,SAAA3C,GACIkT,EAMZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM5G,GAA6CkH,SANjEoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBAQlD,SAASF,GAAYvT,GACjB,MAAO,CACHF,KAAM5G,GAA2C8G,UCtDlD,IAAM2jB,GAA2B,CACpCtQ,OAKJ,SAAgB8L,GAEZ,OAAO,SAAA7L,GACHA,EAawB,CAAExT,KAAO3G,KAXjC6f,GAA0BC,yBAAyBkG,GAAKrpB,MAAK,SAAA8b,GAYjE,IAAiBzR,EAXTmT,EAASC,IAAY,IACrBD,GAUSnT,EAVQyR,EAAStF,aAUD,CAAExM,KAAM3G,GAA4CgH,cARjF,SAAAC,GACIkT,EASR,SAAiBlT,GAAS,MAAO,CAAEN,KAAM3G,GAA4CiH,SATpEoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAf1CF,eACAmM,WAyBJ,SAAoBP,GAChB,OAAO,SAAA7L,GACHA,EAgBwB,CAAExT,KAAM3G,KAfhC6f,GAA0BC,yBAAyBkG,GAAKrpB,MAAK,SAAA8b,GACzD0B,EAASC,IAAY,IACrB,IAAIxQ,EAAO6O,EAAStF,aACR,MAARvJ,GACAA,EAAK4c,SAAQ,SAAUC,UAAYA,EAAE9a,iBAAkB8a,EAAE3X,iBAC9C2X,EAAE2C,cAAe3C,EAAEgE,yBAA0BhE,EAAE4C,aAG9DlP,EAQyB,CAAExT,KAAM3G,GAA+CgH,MAR/D4C,OAEjB,SAAA3C,GACIkT,EAMZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM3G,GAA+CiH,SANnEoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBAQlD,SAASF,GAAYvT,GACjB,MAAO,CACHF,KAAM3G,GAA6C6G,UCrDpD,IAAM6jB,GAAyB,CAClCxQ,OAKJ,SAAgB8L,GAEZ,OAAO,SAAA7L,GACHA,EAiBwB,CAAExT,KAAO3E,KAhBjC+f,GAAuBlB,sBAAsBmF,GAAKrpB,MAAK,SAAA8b,GAiB3D,IAAiBzR,EAhBTmT,EAASC,IAAY,IACrBD,GAeSnT,EAfQyR,EAAStF,aAeD,CAAExM,KAAM3E,GAAyCgF,WAd1E,IAAI4C,EAAO6O,EAAStF,aACR,MAARvJ,GACAA,EAAK4c,SAAQ,SAAUC,UAAYA,EAAE9a,aAEzCwO,EAWR,SAAuBnT,GAAS,MAAO,CAAEL,KAAM3E,GAA4CgF,SAX1E4hB,CAAchf,OAE3B,SAAA3C,GACIkT,EASR,SAAiBlT,GAAS,MAAO,CAAEN,KAAM3E,GAAyCiF,SATjEoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAnB1CF,eACAmM,WA6BJ,SAAoBP,GAChB,OAAO,SAAA7L,GACHA,EAcwB,CAAExT,KAAM3E,KAbhC+f,GAAuBlB,sBAAsBmF,GAAKrpB,MAAK,SAAA8b,GACnD0B,EAASC,IAAY,IACrB,IAAIxQ,EAAO6O,EAAStF,aACR,MAARvJ,GACAA,EAAK4c,SAAQ,SAAUC,UAAYA,EAAE9a,aAEzCwO,EAQyB,CAAExT,KAAM3E,GAA4CgF,MAR5D4C,OAEjB,SAAA3C,GACIkT,EAMZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM3E,GAA4CiF,SANhEoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBAQlD,SAASF,GAAYvT,GACjB,MAAO,CACHF,KAAM3E,GAA0C6E,UCvDjD,IAAM8jB,GAAqB,CAChCzQ,OAKF,SAAgB8L,GACd,OAAO,SAAC7L,GACNA,EAqBO,CAAExT,KAAMjH,KApBfuf,GAAmBC,kBAAkB8G,GAAKrpB,MACxC,SAAC8b,GAqBL,IAAiBzR,EApBXmT,EAASC,IAAY,IACrBD,GAmBWnT,EAnBMyR,EAAStF,aAoBvB,CAAExM,KAAMjH,GAAqCsH,WAlBhD,IAAI4C,EAAO6O,EAAStF,aACR,MAARvJ,GACFA,EAAK4c,SAAQ,SAAUC,UACdA,EAAE9a,aAGbwO,EAcN,SAAuBnT,GACrB,MAAO,CAAEL,KAAMjH,GAAwCsH,SAf1C4hB,CAAchf,OAEzB,SAAC3C,GACCkT,EAcN,SAAiBlT,GACf,MAAO,CAAEN,KAAMjH,GAAqCuH,SAfvCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAtBxCF,eACAmM,WAuCF,SAAoBP,GAClB,OAAO,SAAC7L,GACNA,EAmBO,CAAExT,KAAMjH,KAlBfuf,GAAmBC,kBAAkB8G,GAAKrpB,MACxC,SAAC8b,GACC0B,EAASC,IAAY,IACrB,IAAIxQ,EAAO6O,EAAStF,aACR,MAARvJ,GACFA,EAAK4c,SAAQ,SAAUC,UACdA,EAAE9a,aAGbwO,EAYG,CAAExT,KAAMjH,GAAwCsH,MAZlC4C,OAEnB,SAAC3C,GACCkT,EAWN,SAAiBlT,GACf,MAAO,CAAEN,KAAMjH,GAAwCuH,SAZ1CoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBAe1C,SAASF,GAAYvT,GACnB,MAAO,CACLF,KAAMjH,GACNmH,UC5EG,IAAM+jB,GAAmB,CAC5B1Q,OAOJ,SAAgB8L,GACZ,OAAO,SAAA7L,GACHA,EAawB,CAAExT,KAAMzG,KAZhCge,GAAeE,iBAAiB4H,GAAKrpB,MAAK,SAAA8b,GAa9C,IAAiBzR,EAZTmT,EAASC,IAAY,IACrBD,GAWSnT,EAXQyR,EAAStF,aAWD,CAAExM,KAAMzG,GAAmC8G,cATpE,SAAAC,GACIkT,EAASC,IAAY,IACrBD,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMzG,GAAmC+G,SARvDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAhB9CkF,gBA0BJ,SAAyB5V,GACrB,OAAO,SAAAuQ,GACHA,EAuBJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMzG,GAAmC0J,QAvB9D4Q,CAAQ5Q,IACjB2V,GAAiBC,gBAAgB5V,GAAMjN,MACnC,SAAA8b,GACI0B,EAqBZ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMzG,GAAmC0J,QArBtDoI,CAAQyG,EAAStF,eAEtBsF,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,EAASM,IAAW,IACpBN,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMzG,GAAmC+G,SARvDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA7C9CkO,cAuDJ,SAAuBxC,GACnB,OAAO,SAAA7L,GACHA,EAYwB,CAAExT,KAAMzG,KAVhCqf,GAAiBb,qBAAqBsH,GAAKrpB,MAAK,SAAA8b,GAWpD,IAAiBzR,EAVTmT,GAUSnT,EAVQyR,EAAStF,aAUD,CAAExM,KAAMzG,GAAmC8G,cARpE,SAAAC,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMzG,GAAmC+G,SARvDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA/D9CG,cACAL,gBAuEJ,SAASK,GAAW5T,GAChB,MAAO,CACHF,KAAMzG,GAAmC2G,UAIjD,SAASuT,GAAYvT,GACjB,MAAO,CACHF,KAAMzG,GAAoC2G,UCpF3C,IAAMgkB,GAA+B,CACxC7K,cAoCJ,SAAuBpW,GACnB,OAAO,SAAAuQ,GACHA,EAkBJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMxG,GAA+CyJ,QAlB1E4Q,CAAQ5Q,IACjBmW,GAA6BC,cAAcpW,GAAMjN,MAC7C,SAAA8b,GACI0B,EAgBZ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMxG,GAA+CyJ,QAhBlEoI,CAAQyG,EAAStF,eAEtBsF,GAAYA,EAASQ,gBAM7B,SAAAhS,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMxG,GAA+C8G,SARnEoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAlD9C2F,eA4DJ,SAAwBrW,GACpB,OAAO,SAAAuQ,GACH4F,GAA6BE,eAAerW,GAAMjN,MAC9C,SAAA8b,GACQA,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cAETkB,EAASM,IAAW,IACpBN,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAASI,GAAatT,MAAMA,EAAMqT,kBA5E9C4F,aAsFJ,SAAsBtW,GAClB,OAAO,SAAAuQ,GACH4F,GAA6BG,aAAatW,GAAMjN,MAC5C,SAAA8b,GACQA,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,EAiBpB,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMxG,GAAsDyJ,QAjBjEoI,CAAQyG,EAAStF,eAC1BgH,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAASI,GAAatT,MAAMA,EAAMqT,aAC1BC,GAAatT,MAAMA,EAAMqT,iBAtG7CG,cACA0F,eAKJ,SAAwBvW,GACpB,OAAO,SAAAuQ,GACHA,EAoBJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMxG,GAAwDyJ,QApBnF4Q,CAAQ5Q,IACjBmW,GAA6BI,eAAevW,GAAMjN,MAC9C,SAAA8b,GAEQA,GAAYA,EAASQ,eACrBkB,EAASI,GAAavI,QAAQyG,EAASO,kBACvCmB,EAehB,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMxG,GAAwDyJ,QAfvEoI,CAAQyG,EAAStF,eAC1BgH,EAAS2Q,IAAmB,QAMpC,SAAA7jB,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMxG,GAAwD8G,SAR5EoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBArB9CwQ,sBACAC,SAyHJ,SAAkBnhB,GACd,OAAO,SAAAuQ,GACHA,EAYJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMxG,GAAgDyJ,QAZ3E4Q,CAAQ5Q,IACjBmW,GAA6BxP,SAAS3G,GAAMjN,MACxC,SAAC8b,GAWT,IAAiBzR,EAVwB,OAAzByR,EAASQ,cACTkB,GASCnT,EATgByR,EAAStF,aAAa,GAStB,CAAExM,KAAMxG,GAAgD6G,cAPjF,SAACC,GACGkT,EAOZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMxG,GAAgD8G,SAPpEoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBAtBlD,SAASG,GAAW5T,GAChB,MAAO,CACHF,KAAMxG,GAAwD0G,UAItE,SAASikB,GAAmBjkB,GACxB,MAAO,CACHF,KAAMxG,GAAwD0G,UC5H/D,IAAMmkB,GAAuB,CAChC9Q,OAOJ,SAAgBiB,GAEZ,OAAO,SAAAhB,GACHA,EAYwB,CAAExT,KAAMvG,GAA8B5C,iBAV9D2hB,GAA4BE,uBAAuBlE,GAAWxe,MAAK,SAAA8b,GAWvE,IAAiBzR,EAVTmT,GAUSnT,EAVQyR,EAAStF,aAUD,CAAExM,KAAMvG,GAA8B3C,eAAgBuJ,cAR/E,SAAAC,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMvG,GAA8B1C,eAAgBuJ,SARlEoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAhB9C2Q,2BA0BJ,SAAoCrhB,GAChC,OAAO,SAAAuQ,GACHA,EAwBJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMvG,GAA8B/C,eAAgBuM,QAxBzE4Q,CAAQ5Q,IAEjBuV,GAA4BC,oBAAoBxV,GAAMjN,MAClD,SAAA8b,GAGQA,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,EAiBpB,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMvG,GAA8B9C,eAAgBsM,QAjBzDoI,CAAQpI,IACjBuQ,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMvG,GAA8B7C,eAAgB0J,SARlEoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA9C9C4Q,aAwDJ,SAAsBC,GAClB,OAAO,SAAAhR,GACHA,EAYwB,CAAExT,KAAMvG,GAA8BC,uBAV9D8e,GAA4BG,gBAAgB6L,GAAWxuB,MAAK,SAAA8b,GAWhE,IAAiBzR,EAVTmT,GAUSnT,EAVQyR,EAAStF,aAUD,CAAExM,KAAMvG,GAA8BE,qBAAsB0G,cARrF,SAAAC,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMvG,GAA8BG,qBAAsB0G,SARxEoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAhE9CG,WA0EJ,SAAoB5T,GAChB,MAAO,CACHF,KAAMvG,GAA8B7B,eAAgBsI,WA3ExDukB,QA+EJ,SAAiBvkB,GACb,MAAO,CACHF,KAAMvG,GAA8BI,cAAeqG,YCtFpD,IAAMwkB,GAAiB,CAC1BnR,OAUJ,SAAgBtQ,GACZ,OAAO,SAAAuQ,GACHA,EAcwB,CAAExT,KAAMlG,KAZhC4f,GAAeG,iBAAiB5W,GAAMjN,MAAK,SAAA8b,GAa/C,IAAiBzR,EAZTmT,EAASC,IAAY,IACrBD,GAWSnT,EAXQyR,EAAStF,aAWD,CAAExM,KAAMlG,GAAiCuG,cATlE,SAAAC,GACIkT,EAASC,IAAY,IACrBD,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMlG,GAAiCwG,SARrDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBApB9CgG,cA8BJ,SAAuB1W,GACnB,OAAO,SAAAuQ,GACHA,EA0BJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMlG,GAAiCmJ,QA1B5D4Q,CAAQ5Q,IAEjByW,GAAeC,cAAc1W,GAAMjN,MAC/B,SAAA8b,GAEQA,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,EAASM,IAAW,IAChBhC,EAAStF,cACTgH,EAkBxB,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMlG,GAAiCmJ,QAlBxCoI,CAAQyG,EAAStF,eAE9BgH,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMlG,GAAiCwG,SARrDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBApD9CiG,cA8DJ,SAAuB3W,GACnB,OAAO,SAAAuQ,GACHA,EAwBJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMlG,GAAiCmJ,QAxB5D4Q,CAAQ5Q,IAEjByW,GAAeE,cAAc3W,GAAMjN,MAC/B,SAAA8b,GAEQA,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,EAASM,IAAW,IACpBN,EAiBpB,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMlG,GAAiCmJ,QAjB5CoI,CAAQpI,IACjBuQ,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMlG,GAAiCwG,SARrDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAlF9CM,YA6FJ,SAAqB3L,EAAW7D,GAC5B,IAAIxB,EAAO,CACPmB,UAAWkE,EACX9D,SAAUC,GAEd,OAAO,SAAA+O,GACHA,EAsBwB,CAAExT,KAAMlG,KApBhC4f,GAAezF,YAAY3L,EAAW7D,GAAUzO,MAC5C,SAAA8b,GACQA,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,EAiBpB,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMlG,GAAmCmJ,QAjB9CoI,CAAQpI,IACjBuQ,EAASU,IAAmB,IAC5BV,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAOZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMlG,GAAmCwG,SAPvDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBApH9CgR,YA6HJ,WACI,OAAO,SAAAnR,GACHA,EAYwB,CAAExT,KAAMlG,KAVhC4f,GAAeI,kBAAkB9jB,MAAK,SAAA8b,GAW1C,IAAiBzR,EAVTmT,GAUSnT,EAVQyR,EAAStF,aAUD,CAAExM,KAAMlG,GAAsCuG,cARvE,SAAAC,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMlG,GAAsCwG,SAR1DoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBArI9CG,cACAL,eACAS,uBA6IJ,SAASJ,GAAW5T,GAChB,MAAO,CACHF,KAAMlG,GAAiCoG,UAI/C,SAASuT,GAAYvT,GACjB,MAAO,CACHF,KAAMlG,GAAkCoG,UAIhD,SAASgU,GAAmBhU,GACxB,MAAO,CACHF,KAAMlG,GAA0CoG,UCnKjD,IAAM0kB,GAAsB,CACjCrR,UACAyG,YA2CF,SAAqB/W,GACnB,OAAO,SAACuQ,GACNA,EA0BF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMjG,GAAsBxD,eAAgB0M,QA3B5C4Q,CAAQ5Q,IAEjB8W,GAAoBC,YAAY/W,GAAMjN,MACpC,SAAC8b,GAEKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAASM,IAAW,IAChBhC,EAAStF,cACXgH,EAoBZ,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMjG,GAAsBvD,eAAgByM,QArBlCoI,CAAQyG,EAAStF,eAE5BgH,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMjG,GAAsBtD,eAAgB6J,SAbxCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAjExCsG,mBAiFF,SAA4BhX,GAC1B,OAAO,SAACuQ,GACNA,EAwBF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMjG,GAAsBrD,eAAgBuM,QAzB5C4Q,CAAQ5Q,IAEjB8W,GAAoBE,mBAAmBhX,GAAMjN,MAC3C,SAAC8b,GAEKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAASM,IAAW,IACpBN,EAmBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMjG,GAAsBpD,eAAgBsM,QApBpCoI,CAAQpI,IACjBuQ,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMjG,GAAsBnD,eAAgB0J,SAbxCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBArGxCM,YAqHF,SAAqBkG,EAAgB1V,GACnC,IAAIxB,EAAO,CACT2H,eAAgBuP,EAChB3V,SAAUC,GAEZ,OAAO,SAAC+O,GACNA,EAwBF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMjG,GAAsBtC,iBAAkBwL,QAzB9C4Q,IAETkG,GAAoB9F,YAAYkG,EAAgB1V,GAAUzO,MACxD,SAAC8b,GAEKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMjG,GAAsBrC,iBAAkBuL,QArBtCoI,CAAQpI,IACjBuQ,EAASU,IAAmB,IAC5BV,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMjG,GAAsBpC,iBAAkB2I,SAb1CoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA7IxCG,cACAL,eACAS,sBACAmG,aAuOF,WACE,OAAO,SAAC7G,GACNA,EAaO,CAAExT,KAAMjG,GAAsBO,uBAZrCyf,GAAoBM,eAAerkB,MACjC,SAAC8b,GAaL,IAAiBzR,EAZXmT,GAYWnT,EAZMyR,EAAStF,aAavB,CAAExM,KAAMjG,GAAsBQ,qBAAsB8F,cAXzD,SAACC,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMjG,GAAsBS,qBAAsB8F,SAb9CoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA/OxC2G,cA+PF,SAAuBC,EAAWC,EAAQC,GACxC,OAAO,SAACjH,GACNA,EAaO,CAAExT,KAAMjG,GAAsBU,oBAZrCsf,GAAoBO,cAAcC,EAAWC,EAAQC,GAAUzkB,MAC7D,SAAC8b,GAaL,IAAiBzR,EAZXmT,GAYWnT,EAZMyR,EAAStF,aAavB,CAAExM,KAAMjG,GAAsBW,kBAAmB2F,cAXtD,SAACC,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMjG,GAAsBY,kBAAmB2F,SAb3CoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAvQxC+G,gBAqTF,SAAyBC,GACvB,OAAO,SAACnH,GACNA,EAaO,CAAExT,KAAMjG,GAAsBmB,sBAZrC6e,GAAoBW,gBAAgBC,GAAK3kB,MACvC,SAAC8b,GAaL,IAAiBzR,EAZXmT,GAYWnT,EAZMyR,EAAStF,aAavB,CAAExM,KAAMjG,GAAsBoB,oBAAqBkF,cAXxD,SAACC,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMjG,GAAsBqB,oBAAqBkF,SAb7CoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA7TxCkH,WACAE,SAyMF,SAAkBC,EAAI6J,EAAKC,GACzB,OAAO,SAACtR,GAeR,IAAiBvQ,EAdfuQ,EAeO,CAAExT,KAAMjG,GAAsBI,oBAAqB8I,SAb1D8W,GAAoBgB,SAASC,GAAIhlB,MAC/B,SAAC8b,GACC0B,EAaN,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMjG,GAAsBK,oBAAqB6I,QAd7CoI,CAAQyG,EAAStF,eAC1BgH,EAASqH,GAAQgK,GAAK,EAAOC,OAE/B,SAACxkB,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMjG,GAAsBM,oBAAqBiG,SAb7CoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAnNxCsH,gBAoRF,SAAyBC,EAAU4J,GACjC,OAAO,SAACtR,GACNA,EAkBO,CAAExT,KAAMjG,GAAsBa,oBAjBrCmf,GAAoBkB,gBAAgBC,GAAUllB,MAC5C,SAAC8b,GACC0B,EAkBG,CAAExT,KAAMjG,GAAsBc,kBAAmBwF,MAlBnCyR,IACY,OAAzBA,EAASQ,cACXkB,EAASI,GAAavI,QAAQyG,EAASO,gBAAgBsB,aACvDH,EAAS2H,GAAe2J,KAExBtR,EAASI,GAAatT,MAAMwR,EAASO,gBAAgBsB,gBAEzD,SAACrT,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMjG,GAAsBe,kBAAmBwF,SAb3CoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAjSxCwH,mBAGF,SAAS5H,GAAOtQ,GACd,OAAO,SAACuQ,GACNA,EAgBO,CAAExT,KAAMjG,GAAsBlD,iBAdrCkjB,GAAoBG,sBAAsBjX,GAAMjN,MAC9C,SAAC8b,GAeL,IAAiBzR,EAdXmT,EAASC,IAAY,IACrBD,GAaWnT,EAbMyR,EAAStF,aAcvB,CAAExM,KAAMjG,GAAsBjD,eAAgBuJ,cAZnD,SAACC,GACCkT,EAASC,IAAY,IACrBD,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMjG,GAAsBhD,eAAgBuJ,SAbxCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,iBAqI1C,SAASkH,GAAQV,EAAgBW,EAAQgK,GACvC,OAAO,SAACtR,GAcR,IAAiBvQ,EAbfuQ,EAcO,CAAExT,KAAMjG,GAAsBtC,iBAAkBwL,SAZvD8W,GAAoBc,QAAQV,EAAgBW,GAAQ9kB,MAClD,SAAC8b,GACC0B,EAASD,GAAOuR,OAElB,SAACxkB,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMjG,GAAsBpC,iBAAkB2I,SAb1CoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,iBAgB1C,SAASwH,GAAekE,GACtB,OAAO,SAAC7L,GAaR,IAAiBvQ,EAZfuQ,EAaO,CAAExT,KAAMjG,GAAsBgB,mBAAoBkI,SAZzD8W,GAAoBoB,eAAekE,GAAKrpB,MACtC,SAAC8b,GAaL,IAAiBzR,EAZXmT,GAYWnT,EAZMyR,EAAStF,aAavB,CAAExM,KAAMjG,GAAsBiB,mBAAoBqF,cAXvD,SAACC,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMjG,GAAsBkB,mBAAoBqF,SAb5CoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,iBAmJ1C,SAASG,GAAW5T,GAClB,MAAO,CACLF,KAAMjG,GAAsBnC,eAC5BsI,UAIJ,SAASuT,GAAYvT,GACnB,MAAO,CACLF,KAAMjG,GAAsBlC,gBAC5BqI,UAIJ,SAASgU,GAAmBhU,GAC1B,MAAO,CACLF,KAAMjG,GAAsBjC,wBAC5BoI,UCzWG,IAAM6kB,GAA4B,CACrCxR,OAKJ,SAAgB8L,GAEZ,OAAO,SAAA7L,GACHA,EAkBwB,CAAExT,KAAO1C,KAjBjCif,GAA0BC,kBAAkB6C,GAAKrpB,MAAK,SAAA8b,GAkB1D,IAAiBzR,EAjBTmT,EAASC,IAAY,IACrBD,GAgBSnT,EAhBQyR,EAAStF,aAgBD,CAAExM,KAAM1C,GAA4C+C,WAd7E,IAAI4C,EAAO6O,EAAStF,aACR,MAARvJ,GACAA,EAAK4c,SAAQ,SAAUC,UAAYA,EAAE9a,aAEzCwO,EAWR,SAAuBnT,GAAS,MAAO,CAAEL,KAAM1C,GAA+C+C,SAX7E4hB,CAAchf,OAE3B,SAAA3C,GACIkT,EASR,SAAiBlT,GAAS,MAAO,CAAEN,KAAM1C,GAA4CgD,SATpEoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBApB1CF,eACAmM,WA8BJ,SAAoBP,GAChB,OAAO,SAAA7L,GACHA,EAcwB,CAAExT,KAAM1C,KAbhCif,GAA0BC,kBAAkB6C,GAAKrpB,MAAK,SAAA8b,GAClD0B,EAASC,IAAY,IACrB,IAAIxQ,EAAO6O,EAAStF,aACR,MAARvJ,GACAA,EAAK4c,SAAQ,SAAUC,UAAYA,EAAE9a,aAEzCwO,EAQyB,CAAExT,KAAM1C,GAA+C+C,MAR/D4C,OAEjB,SAAA3C,GACIkT,EAMZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM1C,GAA+CgD,SANnEoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBAQlD,SAASF,GAAYvT,GACjB,MAAO,CACHF,KAAM1C,GAA6C4C,UCxDpD,IAAM8kB,GAAmB,CAC5B1J,cAGJ,SAAuB2J,GACnB,OAAO,SAAAzR,GACHA,EAuBwB,CAAExT,KAAM1E,KArBhC+f,GAAkBC,cAAc2J,GAAQjvB,MACpC,SAAA8b,GAqBR,IAAiB7O,EAnBD6O,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,GAiBHvQ,EAjBoB6O,EAAStF,aAiBd,CAAExM,KAAM1E,GAAuC2H,UAhB3DuQ,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM1E,GAAuCgF,SAR3DoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBC3B3C,IAAMuR,GAAkB,CAC7BC,YAOF,SAAqBliB,GACnB,IAAM2P,EAAiB,CACrBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEvB,OAAOgQ,MAAM,GAAD,OACPC,YADO,wBAEVN,GACA5c,KAAK6b,KAfPuT,eAkBF,SAAwBniB,GACtB,IAAM2P,EAAiB,CACrBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEvB,OAAOgQ,MAAM,GAAD,OACPC,YADO,iBAEVN,GACA5c,KAAK6b,KA1BPwT,qBA6BF,WACE,IAAMzS,EAAiB,CACrBC,OAAQ,MACRC,QAASpC,MAGX,OAAOuC,MAAM,GAAD,OACPC,YADO,iCAEVN,GACA5c,KAAK6b,KArCPyT,eAwCF,SAAwBC,GACtB,IAAM3S,EAAiB,CACrBC,OAAQ,MACRC,QAASpC,MAEX,OAAOuC,MAAM,GAAD,OACPC,YADO,sCACoDqS,GAC9D3S,GACA5c,KAAK6b,KA/CP6K,YAkDF,SAAqBC,GACnB,IAAM/J,EAAiB,CACrBC,OAAQ,MACRC,QAASpC,MAEX,OAAOuC,MACL,UAAGC,YAAH,4BAA6DyJ,EAC7D/J,GACA5c,KAAK6b,M,mEC7DT2T,KAAQC,IAAMC,KAASF,QAAQC,I,IAGVE,G,qFACnB,SAAM5T,GACJ,IAAI6T,EAAK,GAIT,OAHAC,KAAOC,UAAU/T,GAAM,SAAUgU,EAAKC,GACpCJ,EAAKI,KAEAJ,I,sBAGT,SAASK,GAEMlK,KAAKmK,MAAMD,EAAa5gB,UAArC,IACM8gB,EAAUF,EAAaE,QAEzBC,EAAM,CACRC,YAAa,CAAC,GAAI,GAAI,GAAI,IAC1BC,OAAQ,GACR7L,SAAU,KAEV8L,OAAQ,SAAUC,EAAaC,GAC7B,MAAO,CACLC,MAAO,CAEL,CACEC,QAAS,CACP,CACE5U,KAAMyU,EAAY7S,WAAa,OAAS8S,EACxCG,UAAW,eAQvBC,QAAS,CACP,CACE9U,KAAM,gBACN6U,UAAW,SACXE,SAAU,GACVC,MAAM,EACNC,OAAQ,GAEV,CACEC,MAAO,CACLC,OAAQ,CAAC,MAAO,MAAO,OACvBnU,KAAM,CACJ,CACE,CACEiU,OAAQ,CAAC,GAAI,GAAI,EAAG,GACpBG,MAAO,GACPC,OAAQ,GACRR,UAAW,SAEXS,MAAO,0BAA4BlB,EAAQ3b,aAE7C,CAEEuH,KAAM,CAGJ,CACEA,KAAM,KAAOoU,EAAQ9hB,YAAc,KAAO8hB,EAAQ5b,QAClDuc,SAAU,GACVC,MAAM,EACNC,OAAQ,CAAC,GAAI,GAAI,EAAG,GACpBJ,UAAW,UAGb,CACE7U,KAAM,YAAcoU,EAAQ9b,OAC5Bid,SAAS,EACTR,SAAU,GACVF,UAAW,UAEb,CACE7U,KACE,sBACA,IAAIwV,MAAOC,qBADX,mBAIAvB,EAAa5gB,SACb,KACFyhB,SAAU,GACVF,UAAW,YAOjB,CACEI,OAAQ,CAAC,GAAI,GAAI,EAAG,GACpBpB,GAAIK,EAAa5gB,SACjBoiB,IAAK,OAIT,CAEE,CACEC,QAAS,EACT3V,KAAM,CAEJ,CACEgV,MAAM,EACNhV,KACE,iBACAkU,EAAa0B,WAAWC,WAwBxB,IACFd,SAAU,MAIhB,GACA,MAKNR,OAAQ,IAGV,CAEEU,QAAS,EACTC,MAAO,CACLC,OAAQ,CAAC,MAAO,MAAO,MAAO,OAC9BnU,KAAMgJ,KAAK8L,kBAAkB5B,KAGjC,CAEEgB,MAAO,CACLa,QAAS,CAAC,GAAI,IACdd,OAAQ,EACRE,OAAQ,CAAC,KACTnU,KAAM,CAAC,CAAC,0CAA2C,CAAC,QAI1DgV,OAAQ,CACNC,aAAc,CACZjB,MAAM,EACND,SAAU,GACVmB,MAAO,QACPC,UAAW,QACXtB,UAAW,YAKjBpB,KAAQ2C,UAAU/B,GAAKgC,SAASnC,EAAa5gB,SAAW,U,+BAI1D,SAAkBpC,GAChB,IAAI0Z,EAAI,GAERA,EAAE0L,KAAK,CAAC,YAAa,wBAAyB,SAAU,WAExDplB,EAAKqlB,WAAWzI,SAAQ,SAAC0I,GACnBA,EAASljB,SAASkI,OAAS,GAC7BoP,EAAE0L,KAAK,CACLE,EAASljB,SACTkjB,EAASziB,YACTyiB,EAASvf,IACTuf,EAASC,YAKf,IAAIC,EAAYxlB,EAAKqlB,WAAW1kB,KAAI,SAAC8kB,GAAD,OAASA,EAAIrjB,YAE7CsjB,EADiB,YAAO,IAAIC,IAAIH,IACFlb,OAOlC,OANAoP,EAAE0L,KAAK,CACL,CAAEzB,UAAW,OAAQ7U,KAAM,kBAAoB4W,GAC/C,GACA,CAAE/B,UAAW,OAAQ7U,KAAM,mBAAqB9O,EAAK+F,KACrD,CAAE4d,UAAW,OAAQ7U,KAAM,iBAAmB9O,EAAK4lB,eAE9ClM,M,KC7MEmM,GAAkB,CAC7BvV,OAcF,SAAgBtQ,GACd,OAAO,SAACuQ,GACNA,EAeO,CAAExT,KAAMzE,GAAkB1E,iBAdjCquB,GAAgBC,YAAYliB,GAAMjN,MAChC,SAAC8b,GAeL,IAAiBzR,EAdXmT,EAASC,IAAY,IACrBD,GAaWnT,EAbMyR,EAAStF,aAcvB,CAAExM,KAAMzE,GAAkBzE,eAAgBuJ,cAZ/C,SAACC,GACCkT,EAASC,IAAY,IACrBD,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMzE,GAAkBxE,eAAgBuJ,SAbpCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAxBxC0R,qBAwCF,WACE,OAAO,SAAC7R,GACNA,EAaO,CAAExT,KAAMzE,GAAkBsR,yBAXjCqY,GAAgBG,uBAAuBrvB,MACrC,SAAC8b,GAYL,IAAiBzR,EAXXmT,GAWWnT,EAXMyR,EAAStF,aAYvB,CAAExM,KAAMzE,GAAkBuR,uBAAwBzM,cAVvD,SAACC,GACCkT,EAWN,SAAiBlT,GACf,MAAO,CAAEN,KAAMzE,GAAkByR,uBAAwB1M,SAZ5CoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAjDxCyR,eAgEF,SAAwBniB,GACtB,OAAO,SAACuQ,GACNA,EA2BF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMzE,GAAkBhF,eAAgB0M,QA5BxC4Q,CAAQ5Q,IACjBiiB,GAAgBE,eAAeniB,GAAMjN,MACnC,SAAC8b,GAGKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cAEXkB,EAsBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMzE,GAAkB/E,eAAgByM,QAvBhCoI,CAAQyG,IACjB0B,EAASM,IAAW,IAGpBN,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMzE,GAAkB9E,eAAgB6J,SAbpCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAvFxCI,WA4NF,SAAoB9Q,GAClB,MAAO,CACLjD,KAAMzE,GAAkByY,oBACxB/Q,SA9NFgR,YAsGF,SAAqB5Q,EAAMoB,GACzB,IAAIxB,EAAO,CACTY,OAAQR,EACRmB,SAAUC,GAEZ,OAAO,SAAC+O,GACNA,EAwBO,CAAExT,KAAMzE,GAAkB9D,mBAtBjCytB,GAAgBjR,YAAY5Q,EAAMoB,GAAUzO,MAC1C,SAAC8b,GACKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMzE,GAAkB7D,iBAAkBuL,QArBlCoI,CAAQpI,IACjBuQ,EAASU,IAAmB,IAC5BV,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMzE,GAAkB5D,iBAAkB2I,SAbtCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA7HxCG,cACAK,YAsLF,SAAqBjU,GACnB,MAAO,CACLF,KAAMzE,GAAkBsD,iBACxBqB,WAxLFuT,eACAS,sBACAoR,eAyIF,SAAwBC,GACtB,OAAO,SAAC/R,GACNA,EAwBO,CAAExT,KAAMzE,GAAkBI,qBAtBjCupB,GAAgBI,eAAeC,GAAMvvB,MACnC,SAAC8b,GACKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAqBD,CAAExT,KAAMzE,GAAkBK,mBAAoBqH,KArB5B6O,IACjB0B,EAASU,IAAmB,KAEO,QAA1BpC,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMzE,GAAkBM,mBAAoByE,SAbxCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA5JxC9H,QA8MF,SAAiB3L,GACf,MAAO,CACLF,KAAMzE,GAAkBO,QACxBoE,WAhNF4L,cAsMF,SAAuB5L,GACrB,MAAO,CACLF,KAAMzE,GAAkBQ,cACxBmE,YA9BJ,SAAS4T,GAAW5T,GAClB,MAAO,CACLF,KAAMzE,GAAkB3D,eACxBsI,UAUJ,SAASuT,GAAYvT,GACnB,MAAO,CACLF,KAAMzE,GAAkB1D,gBACxBqI,UAIJ,SAASgU,GAAmBhU,GAC1B,MAAO,CACLF,KAAMzE,GAAkBzD,wBACxBoI,UC/MG,IAAM6oB,GAAqB,CAC9BxV,OAMJ,SAAgB8L,GACZ,OAAO,SAAA7L,GACHA,EAkBwB,CAAExT,KAAMzC,KAjBhCge,GAAmBC,kBAAkB6D,GAAKrpB,MAAK,SAAA8b,GAkBnD,IAAiBzR,EAjBTmT,EAASC,IAAY,IACrBD,GAgBSnT,EAhBQyR,EAAStF,aAgBD,CAAExM,KAAMzC,GAAqC8C,WAdtE,IAAI4C,EAAO6O,EAAStF,aACR,MAARvJ,GACAA,EAAK4c,SAAQ,SAAUC,UAAYA,EAAE9a,aAEzCwO,EAWR,SAAuBnT,GAAS,MAAO,CAAEL,KAAMzC,GAAwC8C,SAXtE4hB,CAAchf,OAEvB,SAAA3C,GACIkT,EASZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMzC,GAAqC+C,SATzDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBApB9CF,eACAmM,WA8BJ,SAAoBP,GAChB,OAAO,SAAA7L,GACHA,EAwBwB,CAAExT,KAAMzC,KAvBhCge,GAAmBC,kBAAkB6D,GAAKrpB,MAAK,SAAA8b,GAC3C0B,EAASC,IAAY,IACrB,IAAIxQ,EAAO6O,EAAStF,aACR,MAARvJ,GACAA,EAAK4c,SAAQ,SAAUC,UACZA,EAAE9a,iBACF8a,EAAE9E,UACF8E,EAAEkJ,cACFlJ,EAAEmJ,oBACFnJ,EAAEnT,kBACFmT,EAAE3X,iBACF2X,EAAEtX,iBACFsX,EAAEvX,iBACFuX,EAAEoJ,eAGjB1V,EAQyB,CAAExT,KAAMzC,GAAwC8C,MARxD4C,OAEjB,SAAA3C,GACIkT,EAMZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMzC,GAAwC+C,SAN5DoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBApD9C8H,mBAkEJ,SAA4B4D,GACxB,OAAO,SAAA7L,GACHA,EAYwB,CAAExT,KAAMzC,KAXhCge,GAAmBE,mBAAmB4D,GAAKrpB,MAAK,SAAA8b,GAC5C0B,EAASC,IAAY,IACrBD,EAUyB,CAAExT,KAAMzC,GAAuC8C,MAVvDyR,OAEjB,SAAAxR,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMzC,GAAuC+C,SAR3DoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBAflD,SAASF,GAAYvT,GACjB,MAAO,CACHF,KAAMzC,GAAsC2C,UChE7C,IAAMipB,GAAsB,CACjC5V,OAeF,SAAgB8L,GACd,OAAO,SAAC7L,GACNA,EAeO,CAAExT,KAAMhE,GAAgBnF,iBAd/Bgf,GAAcO,gBAAgBiJ,GAAKrpB,MACjC,SAAC8b,GAeL,IAAiBzR,EAdXmT,EAASC,IAAY,IACrBD,GAaWnT,EAbMyR,EAAStF,aAcvB,CAAExM,KAAMhE,GAAgBlF,eAAgBuJ,cAZ7C,SAACC,GACCkT,EAASC,IAAY,IACrBD,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMhE,GAAgBjF,eAAgBuJ,SAblCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAzBxCyV,YAyCF,SAAqBnmB,GACnB,OAAO,SAACuQ,GACNA,EAcO,CAAExT,KAAMhE,GAAgBI,sBAZ/ByZ,GAAcE,cAAc9S,GAAMjN,MAChC,SAAC8b,GAaL,IAAiBzR,EAZXmT,GAYWnT,EAZMyR,EAAStF,aAavB,CAAExM,KAAMhE,GAAgBK,oBAAqBgE,cAXlD,SAACC,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMhE,GAAgBM,oBAAqBgE,SAbvCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAlDxC0V,WAqHF,SAAoBpmB,GAClB,OAAO,SAACuQ,GACNA,EAcO,CAAExT,KAAMhE,GAAgBO,qBAZ/BsZ,GAAcK,aAAajT,GAAMjN,MAC/B,SAAC8b,GAaL,IAAiBzR,EAZXmT,GAYWnT,EAZMyR,EAAStF,aAavB,CAAExM,KAAMhE,GAAgBQ,mBAAoB6D,cAXjD,SAACC,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMhE,GAAgBS,mBAAoB6D,SAbtCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA9HxC2V,YAwKF,SAAqBrmB,GACnB,OAAO,SAACuQ,GACNA,EAcO,CAAExT,KAAMhE,GAAgBU,sBAZ/BmZ,GAAcI,aAAahT,GAAMjN,MAC/B,SAAC8b,GAaL,IAAiBzR,EAZXmT,GAYWnT,EAZMyR,EAAStF,aAavB,CAAExM,KAAMhE,GAAgBW,oBAAqB0D,cAXlD,SAACC,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMhE,GAAgBY,oBAAqB0D,SAbvCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAjLxC4V,YAiMF,SAAqBtmB,GACnB,OAAO,SAACuQ,GACNA,EAcO,CAAExT,KAAMhE,GAAgBa,sBAZ/BgZ,GAAcI,aAAahT,GAAMjN,MAC/B,SAAC8b,GAaL,IAAiBzR,EAZXmT,GAYWnT,EAZMyR,EAAStF,aAavB,CAAExM,KAAMhE,GAAgBc,oBAAqBuD,cAXlD,SAACC,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMhE,GAAgBe,oBAAqBuD,SAbvCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA1MxCmC,aA0NF,SAAsB7S,GACpB,OAAO,SAACuQ,GACNA,EAwBF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM/H,GAA8BgL,QAzBpC4Q,CAAQ5Q,IAEjB4S,GAAcC,aAAa7S,GAAMjN,MAC/B,SAAC8b,GAEKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM/H,GAA8BgL,QArB5BoI,CAAQyG,EAAStF,eAC1BgH,EAASM,IAAW,IACpBN,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM/H,GAA8BqI,SAbhCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA9OxCwC,aA8PF,SAAsBlT,GACpB,OAAO,SAACuQ,GACNA,EAwBF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMhE,GAAgBtF,eAAgBuM,QAzBtC4Q,CAAQ5Q,IAEjB4S,GAAcM,aAAalT,GAAMjN,MAC/B,SAAC8b,GAEKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMhE,GAAgBrF,eAAgBsM,QArB9BoI,CAAQpI,IACjBuQ,EAASM,IAAW,IACpBN,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMhE,GAAgBpF,eAAgB0J,SAblCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAlRxCM,YAkSF,SAAqB5Q,EAAMoB,GACzB,IAAIxB,EAAO,CACTY,OAAQR,EACRmB,SAAUC,GAEZ,OAAO,SAAC+O,GACNA,EAyBO,CAAExT,KAAMhE,GAAgBvE,mBAvB/Boe,GAAc5B,YAAY5Q,EAAMoB,GAAUzO,MACxC,SAAC8b,GACKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAqBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMhE,GAAgBtE,iBAAkBuL,QAtBhCoI,CAAQpI,IACjBuQ,EAASU,IAAmB,IAC5BlD,OAAOC,SAASuY,SAChBhW,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMhE,GAAgBrE,iBAAkB2I,SAbpCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA1TxCG,cACAL,eACAS,sBACAuV,yBAsIF,WACE,OAAO,SAACjW,GACNA,EAcO,CAAExT,KAAMhE,GAAgBmB,6BAZ/B0Y,GAAcQ,6BAA6BrgB,MACzC,SAAC8b,GAaL,IAAiBzR,EAZXmT,GAYWnT,EAZMyR,EAAStF,aAavB,CAAExM,KAAMhE,GAAgBoB,2BAA4BiD,cAXzD,SAACC,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMhE,GAAgBqB,2BAA4BiD,SAb9CoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA/IxCiM,WAwDF,SAAoBP,GAClB,OAAO,SAAC7L,GACNA,EAuCO,CAAExT,KAAMhE,GAAgBgB,oBAtC/B6Y,GAAcS,yBAAyB+I,GAAKrpB,MAC1C,SAAC8b,GACC0B,EAASC,IAAY,IACrB,IAAIxQ,EAAO6O,EAAStF,aACR,MAARvJ,GACFA,EAAK4c,SAAQ,SAAUC,UACdA,EAAE9a,iBACF8a,EAAEjc,cACFic,EAAEC,iBACFD,EAAEE,gBACFF,EAAExb,cACFwb,EAAEG,gBACFH,EAAEtb,gBACFsb,EAAEI,uBACFJ,EAAEpb,gBACFob,EAAEvO,aACFuO,EAAEK,oBACFL,EAAEM,YACFN,EAAE3X,iBACF2X,EAAEvX,iBACFuX,EAAEO,iBACFP,EAAEQ,kBACFR,EAAE4J,gBACF5J,EAAErT,gBACFqT,EAAE6J,iBACF7J,EAAE7b,gBACF6b,EAAEzb,eAGbmP,EAYG,CAAExT,KAAMhE,GAAgBiB,kBAAmBoD,MAZ7B4C,OAEnB,SAAC3C,GACCkT,EAWN,SAAiBlT,GACf,MAAO,CAAEN,KAAMhE,GAAgBkB,kBAAmBoD,SAZrCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBA0O1C,SAASG,GAAW5T,GAClB,MAAO,CACLF,KAAMhE,GAAgBpE,eACtBsI,UAIJ,SAASuT,GAAYvT,GACnB,MAAO,CACLF,KAAMhE,GAAgBnE,gBACtBqI,UAIJ,SAASgU,GAAmBhU,GAC1B,MAAO,CACLF,KAAMhE,GAAgBlE,wBACtBoI,UCvWJslB,KAAQC,IAAMC,KAASF,QAAQC,ICGxB,IAAMmE,GAA0B,CACrC9N,mBASF,SAA4B7Y,EAAM4mB,GAChC,OAAO,SAACrW,GACNA,EAwCF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMxC,GAAmDyF,QAzCzD4Q,CAAQ5Q,IACjB2Y,GAAwBE,mBAAmB7Y,GAAMjN,MAC/C,SAAC8zB,GAEC,GAAgB,OAAZA,GAA6C,QAAzBA,EAAQxX,aAAwB,CACtD,IAAIyX,EAAmBC,GAAYC,WAAWF,iBAC9C,GAAIA,EAAiBne,cAAgBme,EAAiBne,aAAa2B,OAAS,EAK1E,GAHiBwc,EAAiBne,aAAawB,QAC7C,SAAC8c,GAAD,OAAOA,EAAE5c,OAASwc,EAAQtd,aAAac,SAE1BC,OAAS,EAGtB,OAFAiG,EAAS1H,IAAc,SACvB0H,EAASI,GAAa/H,QAAQ,oBAKlC,IAAIse,EAAQJ,EAAiBne,aACxBue,IACHA,EAAQ,IAGV3W,EAoBR,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMxC,GAAmDyF,QArBnDoI,CAAQye,EAAQtd,eAErBqd,GAAeM,EAAM5c,OAAS,GAChCiG,EAoBV,SAAwBvQ,GACtB,MAAO,CAAEjD,KAAMxC,GAAwDyF,QArBtDmnB,EAAe,SAG1B5W,EAAS3H,IAAQ,IACjB2H,EAASI,GAAa/H,QAAQie,EAAQzX,qBAG1C,SAAC/R,GACCkT,EAqBN,SAAiBlT,GACf,MAAO,CAAEN,KAAMxC,GAAmD8C,SAtBrDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA7CxC0W,kBAsEF,SAA2Bte,GACzB,MAAO,CACL/L,KAAMxC,GACNuO,gBAxEFiQ,qBA4EF,SAA8B/Y,GAC5B,OAAO,SAACuQ,GACNA,EAwBF,SAAiBvQ,GACf,MAAO,CACLjD,KAAMxC,GACNyF,QA3BO4Q,CAAQ5Q,IACjB2Y,GAAwBI,qBAAqB/Y,GAAMjN,MACjD,SAAC8b,GAGKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAASI,GAAavI,QAAQyG,EAASO,kBACvCmB,EAsBV,SAAiBvQ,GACf,MAAO,CACLjD,KAAMxC,GACNyF,QAzBeoI,CAAQyG,EAAStF,eAC1BgH,EA2BV,SAAwBvQ,GACtB,MAAO,CAAEjD,KAAMxC,GAAwDyF,QA5BtDmnB,EAAe,KACW,QAA1BtY,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EA2BN,SAAiBlT,GACf,MAAO,CACLN,KAAMxC,GACN8C,SA9BWoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAhGxCuI,oBAkIF,SAA6BoO,GAC3B,OAAO,SAAC9W,GACNA,EAeO,CAAExT,KAAMxC,KAdfoe,GAAwBM,oBAAoBoO,GAAQt0B,MAClD,SAAC8b,GAeL,IAAiB7O,EAdXuQ,EAASC,IAAY,IACrBD,GAaWvQ,EAbM6O,EAAStF,aAcvB,CAAExM,KAAMxC,GAA0CyF,aAZvD,SAAC3C,GACCkT,EAASC,IAAY,IACrBD,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMxC,GAA0C8C,SAb5CoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA5IxCgN,WAiLF,SAAoB1d,GAClB,OAAO,SAACuQ,GACNA,EAEF,SAAiBvQ,GACf,MAAO,CACLjD,KAAMxC,GACNyF,QALOoI,CAAQpI,MAlLnB6I,iBACAD,YA0JF,SAAS4H,GAAYvT,GACnB,MAAO,CACLF,KAAMxC,GACN0C,UAIJ,SAAS4L,GAAc5L,GACrB,MAAO,CACLF,KAAMxC,GACN0C,UAIJ,SAAS2L,GAAQ3L,GACf,MAAO,CACLF,KAAMxC,GACN0C,UClLG,IAAMqqB,GAAwB,CACnCzO,mBAKF,SAA4B7Y,EAAM4mB,GAChC,OAAO,SAACrW,GACNA,EAwCF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMJ,GAAiDqD,QAzCvD4Q,CAAQ5Q,IACjB2Y,GAAwBE,mBAAmB7Y,GAAMjN,MAC/C,SAAC8zB,GAEC,GAAgB,OAAZA,GAA6C,QAAzBA,EAAQxX,aAAwB,CACtD,IAAIyX,EAAmBC,GAAYC,WAAWF,iBAC9C,GAAIA,EAAiBne,cAAgBme,EAAiBne,aAAa2B,OAAS,EAK1E,GAHiBwc,EAAiBne,aAAawB,QAC7C,SAAC8c,GAAD,OAAOA,EAAE5c,OAASwc,EAAQtd,aAAac,SAE1BC,OAAS,EAGtB,OAFAiG,EAAS1H,IAAc,SACvB0H,EAASI,GAAa/H,QAAQ,oBAKlC,IAAIse,EAAQJ,EAAiBne,aACxBue,IACHA,EAAQ,IAGV3W,EAoBR,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMJ,GAAiDqD,QArBjDoI,CAAQye,EAAQtd,eAErBqd,GAAeM,EAAM5c,OAAS,GAChCiG,EAoBV,SAAwBvQ,GACtB,MAAO,CAAEjD,KAAMJ,GAAsDqD,QArBpDmnB,EAAe,SAG1B5W,EAAS3H,IAAQ,IACjB2H,EAASI,GAAa/H,QAAQie,EAAQzX,qBAG1C,SAAC/R,GACCkT,EAqBN,SAAiBlT,GACf,MAAO,CAAEN,KAAMJ,GAAiDU,SAtBnDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAzCxC0W,kBAkEF,SAA2Bte,GACzB,MAAO,CACL/L,KAAMJ,GACNmM,gBArEkBiQ,qBAyEtB,SAA8B/Y,GAC5B,OAAO,SAACuQ,GACNA,EAyBF,SAAiBvQ,GACf,MAAO,CACLjD,KAAMJ,GACNqD,QA5BO4Q,CAAQ5Q,IAEjB2Y,GAAwBI,qBAAqB/Y,GAAMjN,MACjD,SAAC8b,GAGKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAASI,GAAavI,QAAQyG,EAASO,kBACvCmB,EAsBV,SAAiBvQ,GACf,MAAO,CACLjD,KAAMJ,GACNqD,QAzBeoI,CAAQyG,EAAStF,eAC1BgH,EA2BV,SAAwBvQ,GACtB,MAAO,CAAEjD,KAAMJ,GAAsDqD,QA5BpDmnB,EAAe,KACW,QAA1BtY,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EA2BN,SAAiBlT,GACf,MAAO,CACLN,KAAMJ,GACNU,SA9BWoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA/FGuI,oBA4L7C,SAA6BoO,GAC3B,OAAO,SAAC9W,GACNA,EAeO,CAAExT,KAAMJ,KAdfgc,GAAwBM,oBAAoBoO,GAAQt0B,MAClD,SAAC8b,GAeL,IAAiB7O,EAdXuQ,EAASC,IAAY,IACrBD,GAaWvQ,EAbM6O,EAAStF,aAcvB,CAAExM,KAAMJ,GAAwCqD,aAZrD,SAAC3C,GACCkT,EAASC,IAAY,IACrBD,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMJ,GAAwCU,SAb1CoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAvMyBgN,WA4OnE,SAAoB1d,GAClB,OAAO,SAACuQ,GACNA,EAEF,SAAiBvQ,GACf,MAAO,CACLjD,KAAMJ,GACNqD,QALOoI,CAAQpI,MA9OyDgZ,mBAmI9E,SAA4BhZ,GAC1B,OAAO,SAACuQ,GACNA,EAyBF,SAAiBvQ,GACf,MAAO,CACLjD,KAAMJ,GACNqD,QA5BO4Q,CAAQ5Q,IAEjB2Y,GAAwBK,mBAAmBhZ,GAAMjN,MAC/C,SAAC8b,GAGKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAASI,GAAavI,QAAQyG,EAASO,kBACvCmB,EAsBV,SAAiBvQ,GACf,MAAO,CACLjD,KAAMJ,GACNqD,QAzBeoI,CAAQyG,EAAStF,eAC1BgH,EA2BV,SAAwBvQ,GACtB,MAAO,CAAEjD,KAAMJ,GAAsDqD,QA5BpDmnB,EAAe,KACW,QAA1BtY,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EA2BN,SAAiBlT,GACf,MAAO,CACLN,KAAMJ,GACNU,SA9BWoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAxJxC7H,iBAAgBD,YAsNlB,SAAS4H,GAAYvT,GACnB,MAAO,CACLF,KAAMJ,GACNM,UAIJ,SAAS4L,GAAc5L,GACrB,MAAO,CACLF,KAAMJ,GACNM,UAIJ,SAAS2L,GAAQ3L,GACf,MAAO,CACLF,KAAMJ,GACNM,UC5OG,IAAMsqB,GAA6B,CACtCjX,OAMJ,SAAgB8L,GACZ,OAAO,SAAA7L,GACHA,EAmBwB,CAAExT,KAAMvC,KAjBhC0e,GAA2BC,0BAA0BiD,GAAKrpB,MAAK,SAAA8b,GAkBnE,IAAiBzR,EAjBTmT,EAASC,IAAY,IACrBD,GAgBSnT,EAhBQyR,EAAStF,aAgBD,CAAExM,KAAMvC,GAA6C4C,WAb9E,IAAI4C,EAAO6O,EAAStF,aACR,MAARvJ,GACAA,EAAK4c,SAAQ,SAAUC,UAAYA,EAAE9a,gBAGzC,SAAA1E,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMvC,GAA6C6C,SARjEoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBArB9CF,eACAmM,WAiDJ,SAAoBP,GAChB,OAAO,SAAA7L,GACHA,EAcwB,CAAExT,KAAMvC,KAbhC0e,GAA2BG,gCAAgC+C,GAAKrpB,MAAK,SAAA8b,GACjE0B,EAASC,IAAY,IACrB,IAAIxQ,EAAO6O,EAAStF,aACR,MAARvJ,GACAA,EAAK4c,SAAQ,SAAUC,UAAYA,EAAE9a,aAEzCwO,EAQyB,CAAExT,KAAMvC,GAAgD4C,MARhE4C,OAEjB,SAAA3C,GACIkT,EAMZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMvC,GAAgD6C,SANpEoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA7D9C0I,iBA6BJ,SAA0BxY,GACtB,OAAO,SAAA2P,GACHA,EAYwB,CAAExT,KAAMvC,KAXhC0e,GAA2BE,iBAAiBxY,GAAQ7N,MAAK,SAAA8b,GAY7D,IAAiBzR,EAXTmT,EAASC,IAAY,IACrBD,GAUSnT,EAVQyR,EAAStF,aAUD,CAAExM,KAAMvC,GAAmD4C,cARpF,SAAAC,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMvC,GAAmD6C,SARvEoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBA+BlD,SAASF,GAAYvT,GACjB,MAAO,CACHF,KAAMvC,GAA8CyC,UC9ErD,IAAMuqB,GAAkB,CAC3BC,YAYJ,SAAqBznB,GACjB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,wBAAyDN,GAChE5c,KAAK6b,KAlBV8Y,eA+BJ,SAAwB1nB,GACpB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,2BAA4DN,GACnE5c,KAAK6b,KArCV+Y,kBAyCJ,SAA2B3nB,GACvBsb,QAAQC,IAAIvb,GACZ,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,8BAA+DN,GACtE5c,KAAK6b,KAhDVgZ,eAkDJ,SAAwB5nB,GACpB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,2BAA4DN,GACnE5c,KAAK6b,KAxDViZ,kBA0DJ,SAA2B7nB,GACvB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,8BAA+DN,GACtE5c,KAAK6b,KAhEVoC,YAmEJ,SAAqB8W,EAAYtmB,GAE7B,IAAMmO,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAEb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,gCAAyD6X,EAAzD,YAAuEtmB,GAAYmO,GAC1F5c,KAAK6b,KAzEVmZ,aA2EJ,SAAsBD,EAAYtmB,GAE9B,IAAMmO,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAEb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,iCAA0D6X,EAA1D,YAAwEtmB,GAAYmO,GAC3F5c,KAAK6b,KAjFVoZ,eAeJ,SAAwBhoB,GACpB,IAAM2P,EAAiB,CACnBC,OAAQ,OACRC,QAASpC,KACTqC,KAAMpC,KAAKqC,UAAU/P,IAEzB,OAAOgQ,MAAM,GAAD,OAAIC,YAAJ,2BAA4DN,GACnE5c,KAAK6b,KArBV+I,iBAmFJ,WACI,IAAMhI,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAGb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,2BAA4DN,GACnE5c,KAAK6b,KAzFVqZ,oBA2FJ,SAA6BjoB,GACzB,IAAM2P,EAAiB,CACnBC,OAAQ,MACRC,QAASpC,MAGb,OAAOuC,MAAM,GAAD,OAAIC,YAAJ,iDAA0EjQ,GAAQ2P,GACzF5c,KAAK6b,MCzGP,IAAMsZ,GAAkB,CAC7B5X,OAmBF,SAAgBtQ,GACd,OAAO,SAACuQ,GACNA,EAeO,CAAExT,KAAM+B,GAAkBlL,iBAdjC4zB,GAAgBC,YAAYznB,GAAMjN,MAChC,SAAC8b,GAeL,IAAiBzR,EAdXmT,EAASC,IAAY,IACrBD,GAaWnT,EAbMyR,EAAStF,aAcvB,CAAExM,KAAM+B,GAAkBjL,eAAgBuJ,cAZ/C,SAACC,GACCkT,EAASC,IAAY,IACrBD,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM+B,GAAkBhL,eAAgBuJ,SAbpCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA7BxCyX,UA8CF,SAAmBnoB,GACjB,OAAO,SAACuQ,GACNA,EAeO,CAAExT,KAAM+B,GAAkBC,oBAdjCyoB,GAAgBQ,eAAehoB,GAAMjN,MACnC,SAAC8b,GAeL,IAAiBzR,EAdXmT,EAAS6X,IAAa,IACtB7X,GAaWnT,EAbMyR,EAAStF,aAcvB,CAAExM,KAAM+B,GAAkBE,kBAAmB5B,cAZlD,SAACC,GACCkT,EAAS6X,IAAa,IACtB7X,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM+B,GAAkBG,kBAAmB5B,SAbvCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAxDxC2X,eAwEF,SAAwBroB,GACtB,OAAO,SAACuQ,GACNA,EAwBF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM+B,GAAkBxL,eAAgB0M,QAzBxC4Q,CAAQ5Q,IACjBwnB,GAAgBE,eAAe1nB,GAAMjN,MACnC,SAAC8b,GAEKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cAEXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM+B,GAAkBvL,eAAgByM,QArBhCoI,CAAQyG,EAAStF,eAC1BgH,EAASM,IAAW,IACpBN,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM+B,GAAkBtL,eAAgB6J,SAbpCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA5FxCkX,eAmJF,SAAwB5nB,GACtB,OAAO,SAACuQ,GACNA,EAwBF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM+B,GAAkBrL,eAAgBuM,QAzBxC4Q,CAAQ5Q,IACjBwnB,GAAgBI,eAAe5nB,GAAMjN,MACnC,SAAC8b,GAEKA,GAAYA,EAASQ,eAEO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM+B,GAAkBpL,eAAgBsM,QArBhCoI,CAAQpI,IACjBuQ,EAASM,IAAW,IACpBN,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM+B,GAAkBnL,eAAgB0J,SAbpCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAvKxCI,WAqVF,SAAoB9Q,GAClB,MAAO,CACLjD,KAAM+B,GAAkBiS,oBACxB/Q,SAvVFgR,YA4NF,SAAqBsX,EAAU9mB,GAC7B,IAAIxB,EAAO,CACTuD,WAAY+kB,EACZ/mB,SAAUC,GAEZ,OAAO,SAAC+O,GACNA,EAwBO,CAAExT,KAAM+B,GAAkBtK,mBAtBjCgzB,GAAgBxW,YAAYsX,EAAU9mB,GAAUzO,MAC9C,SAAC8b,GACKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM+B,GAAkBrK,iBAAkBuL,QArBlCoI,CAAQpI,IACjBuQ,EAASU,IAAmB,IAC5BV,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM+B,GAAkBpK,iBAAkB2I,SAbtCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAnPxCqX,aAmQF,SAAsBO,EAAU9mB,GAC9B,IAAIxB,EAAO,CACTyL,SAAU6c,EACV/mB,SAAUC,GAEZ,OAAO,SAAC+O,GACNA,EAwBO,CAAExT,KAAM+B,GAAkBI,oBAtBjCsoB,GAAgBO,aAAaO,EAAU9mB,GAAUzO,MAC/C,SAAC8b,GACKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM+B,GAAkBK,kBAAmBa,QArBnCoI,CAAQpI,IACjBuQ,EAASU,IAAmB,IAC5BV,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM+B,GAAkBM,kBAAmB/B,SAbvCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA1RxCG,cACA0X,YAiTF,SAAqBtrB,GACnB,MAAO,CACLF,KAAM+B,GAAkBO,gBACxBpC,WAnTFuT,eACA4X,gBACAnX,sBACAuX,oBAsUF,SAA6BvrB,GAC3B,MAAO,CACLF,KAAM+B,GAAkBS,yBACxBtC,WAxUFwrB,eAmVF,SAAwBzoB,EAAM0oB,GAC5B,OAAO,SAACnY,GACNA,EAkBO,CAAExT,KAAM+B,GAAkBU,yBAjBjCgoB,GAAgB7P,iBAAiB3X,GAAMjN,MACrC,SAAC8b,GAkBL,IAAiBzR,EAZXmT,GAYWnT,EAZMyR,EAAStF,aAavB,CAAExM,KAAM+B,GAAkBW,uBAAwBrC,cAXvD,SAACC,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM+B,GAAkBY,uBAAwBrC,SAb5CoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAhWxCiX,kBAiGF,SAA2B3nB,GACzB,OAAO,SAACuQ,GACNA,EAwBF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM+B,GAAkBxL,eAAgB0M,QAzBxC4Q,CAAQ5Q,IACjBwnB,GAAgBG,kBAAkB3nB,GAAMjN,MACtC,SAAC8b,GAEKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cAEXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM+B,GAAkBvL,eAAgByM,QArBhCoI,CAAQyG,EAAStF,eAC1BgH,EAASM,IAAW,IACpBN,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM+B,GAAkBtL,eAAgB6J,SAbpCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBArHxCmX,kBA4KF,SAA2B7nB,GACzB,OAAO,SAACuQ,GACNA,EAwBF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM+B,GAAkBrL,eAAgBuM,QAzBxC4Q,CAAQ5Q,IACjBwnB,GAAgBK,kBAAkB7nB,GAAMjN,MACtC,SAAC8b,GAEKA,GAAYA,EAASQ,eAEO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM+B,GAAkBpL,eAAgBsM,QArBhCoI,CAAQpI,IACjBuQ,EAASM,IAAW,IACpBN,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM+B,GAAkBnL,eAAgB0J,SAbpCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAhMxCiY,kBA+WF,SAA2B3oB,GACzB,OAAO,SAACuQ,GACNA,EAiBO,CAAExT,KAAM+B,GAAkBa,4BAhBjC6nB,GAAgBS,oBAAoBjoB,GAAMjN,MACxC,SAAC8b,GAiBL,IAAiBzR,EAZXmT,GAYWnT,EAZMyR,EAAStF,aAavB,CAAExM,KAAM+B,GAAkBc,0BAA2BxC,cAX1D,SAACC,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM+B,GAAkBe,0BAA2BxC,SAb/CoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBA3F1C,SAASG,GAAW5T,GAClB,MAAO,CACLF,KAAM+B,GAAkBnK,eACxBsI,UAYJ,SAASuT,GAAYvT,GACnB,MAAO,CACLF,KAAM+B,GAAkBlK,gBACxBqI,UAGJ,SAASmrB,GAAanrB,GACpB,MAAO,CACLF,KAAM+B,GAAkBQ,iBACxBrC,UAGJ,SAASgU,GAAmBhU,GAC1B,MAAO,CACLF,KAAM+B,GAAkBjK,wBACxBoI,UChVG,IAAM2rB,GAA2B,CACtCC,OAiCF,SAAgB7oB,GACd,OAAO,SAACuQ,GACNA,EA2BO,CAAExT,KAAMtC,KA1Bf+e,GAAyBC,YAAYzZ,GAAMjN,MACzC,SAAC8b,GACC0B,EAASC,IAAY,IAErB,IAEIsY,EAFEC,EAAOla,EAAStF,aAClBoZ,EAAK,GAEToG,EAAKnM,SAAQ,SAACoM,GACRF,GAAOE,EAAQjR,KAEjB+Q,EAAME,EAAQjR,GACd4K,EAAGyC,KAAK4D,OAIZzY,EAcG,CAAExT,KAAMtC,GAAiD2C,MAd3CulB,OAEnB,SAACtlB,GACCkT,EAASC,IAAY,IACrBD,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMtC,GAAiD4C,SAbnDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAvDxCuY,QAuEF,SAAiBjpB,GACf,OAAO,SAACuQ,GACNA,EA2BO,CAAExT,KAAMtC,KA1Bf+e,GAAyBC,YAAYzZ,GAAMjN,MACzC,SAAC8b,GACC0B,EAASC,IAAY,IAErB,IAEIsY,EAsBO1rB,EAxBL2rB,EAAOla,EAAStF,aAClBoZ,EAAK,GAEToG,EAAKnM,SAAQ,SAACoM,GACRF,GAAOE,EAAQjR,KAEjB+Q,EAAME,EAAQjR,GACd4K,EAAGyC,KAAK4D,OAIZzY,GAaWnT,EAbMyR,EAAStF,aAcvB,CAAExM,KAAMtC,GAAmD2C,cAZhE,SAACC,GACCkT,EAASC,IAAY,IACrBD,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMtC,GAAmD4C,SAbrDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA7FxC+I,YAIF,SAAqBzZ,GACnB,OAAO,SAACuQ,GACNA,EAeO,CAAExT,KAAMtC,KAdf+e,GAAyBC,YAAYzZ,GAAMjN,MACzC,SAAC8b,GAeL,IAAiBzR,EAdXmT,EAASC,IAAY,IACrBD,GAaWnT,EAbMyR,EAAStF,aAcvB,CAAExM,KAAMtC,GAAoD2C,cAZjE,SAACC,GACCkT,EAASC,IAAY,IACrBD,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAMtC,GAAoD4C,SAbtDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAdxCiJ,WA4GF,SAAoB3Z,GAClB,OAAO,SAACuQ,GACNA,EAeO,CAAExT,KAAMtC,KAdf+e,GAAyBG,WAAW3Z,GAAMjN,MACxC,SAAC8b,GAeL,IAAiBzR,EAdXmT,EAASC,IAAY,IACrBD,GAaWnT,EAbMyR,EAAStF,aAcvB,CACLxM,KAAMtC,GACN2C,cAdA,SAACC,GACCkT,EAASC,IAAY,IACrBD,EAeN,SAAiBlT,GACf,MAAO,CACLN,KAAMtC,GACN4C,SAlBWoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBAsB1C,SAASF,GAAYvT,GACnB,MAAO,CACLF,KAAMtC,GACNwC,UCpJG,IAAMisB,GAAsB,CACjCrY,WAOF,SAAoB5T,GAClB,MAAO,CACLF,KAAMrC,GAAsB/F,eAC5BsI,WATF4c,kBAcF,SAA2B7Z,GACzB,OAAO,SAACuQ,GACNA,EAsBF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMrC,GAAsBC,eAAgBqF,QAvB5C4Q,IAETgJ,GAAoBC,kBAAkB7Z,GAAMjN,MAC1C,SAAC8b,GACKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAmBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMrC,GAAsBE,eAAgBoF,QApBpCoI,CAAQyG,EAAStF,eAC1BgH,EAAS4Y,MACT5Y,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAWN,SAAiBlT,GACf,MAAO,CAAEN,KAAMrC,GAAsBG,eAAgBwC,SAZxCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAjCxC0Y,eAiDF,WACE,OAAO,SAAC7Y,GAoBR,IAAiBvQ,EAnBfuQ,EAoBO,CAAExT,KAAMrC,GAAsB9G,eAAgBoM,SAnBrD4Z,GAAoBE,gBAAgB/mB,MAClC,SAAC8b,GACKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,aACXkB,EAiBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMrC,GAAsB7G,eAAgBmM,QAlBpCoI,CAAQyG,EAAStF,eACS,QAA1BsF,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAWN,SAAiBlT,GACf,MAAO,CAAEN,KAAMrC,GAAsB5G,eAAgBuJ,SAZxCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAjExCyY,iBACAE,kBAgHF,SAA2Bjd,GAEzB,OAAO,SAACmE,GAuBR,IAAiBvQ,EAtBfuQ,EAuBO,CAAExT,KAAMrC,GAAsBrG,eAAgB2L,SArBrD4Z,GAAoBI,aAAa5N,GAAKrZ,MACpC,SAAC8b,GACKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAmBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMrC,GAAsBpG,eAAgB0L,QApBpCoI,CAAQyG,EAAStF,eAC1BgH,EAAS4Y,MACT5Y,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAWN,SAAiBlT,GACf,MAAO,CAAEN,KAAMrC,GAAsBnG,eAAgB8I,SAZxCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBAtD1C,SAASyY,KACP,OAAO,SAAC5Y,GAoBR,IAAiBvQ,EAnBfuQ,EAoBO,CAAExT,KAAMrC,GAAsBI,gBAAiBkF,SAnBtD4Z,GAAoBG,eAAehnB,MACjC,SAAC8b,GACKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,aACXkB,EAiBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAMrC,GAAsBK,gBAAiBiF,QAlBrCoI,CAAQyG,EAAStF,eACS,QAA1BsF,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAWN,SAAiBlT,GACf,MAAO,CAAEN,KAAMrC,GAAsB5G,eAAgBuJ,SAZxCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,iBCrGnC,IAAM4Y,GAAoC,CAC/ChZ,OAiDF,SAAgB8L,GACd,OAAO,SAAC7L,GACNA,EAsBO,CAAExT,KAAM9B,KArBfif,GAAmCM,qBAAqB4B,GAAKrpB,MAC3D,SAAC8b,GAsBL,IAAiBzR,EArBXmT,EAASC,IAAY,IACrBD,GAoBWnT,EApBMyR,EAAStF,aAqBvB,CAAExM,KAAM9B,GAAoDmC,WAnB/D,IAAI4C,EAAO6O,EAAStF,aACR,MAARvJ,GACFA,EAAK4c,SAAQ,SAAUC,UACdA,EAAE9a,iBACF8a,EAAEla,aAGb4N,EAcN,SAAuBnT,GACrB,MAAO,CAAEL,KAAM9B,GAAuDmC,SAfzD4hB,CAAchf,OAEzB,SAAC3C,GACCkT,EAcN,SAAiBlT,GACf,MAAO,CAAEN,KAAM9B,GAAoDoC,SAftDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAnExCF,eACAmM,WA4JF,SAAoBP,GAClB,OAAO,SAAC7L,GACNA,EAoBO,CAAExT,KAAM9B,KAnBfif,GAAmCM,qBAAqB4B,GAAKrpB,MAC3D,SAAC8b,GACC0B,EAASC,IAAY,IACrB,IAAIxQ,EAAO6O,EAAStF,aACR,MAARvJ,GACFA,EAAK4c,SAAQ,SAAUC,UACdA,EAAE9a,iBACF8a,EAAEla,aAGb4N,EAYG,CAAExT,KAAM9B,GAAuDmC,MAZjD4C,OAEnB,SAAC3C,GACCkT,EAWN,SAAiBlT,GACf,MAAO,CAAEN,KAAM9B,GAAuDoC,SAZzDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA5KxC0J,gBAkMF,SAAyBzT,GACvB,IAAI3G,EAAO,CACTqa,WAAY1T,GAEd,OAAO,SAAC4J,GACNA,EAwBO,CAAExT,KAAM9B,KAtBfif,GAAmCE,gBAAgBzT,GAAU5T,MAC3D,SAAC8b,GACKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM9B,GAAsD+E,QArBpDoI,CAAQpI,IACjBuQ,EAASU,IAAmB,IAC5BV,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM9B,GAAsDoC,SAbxDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAxNxC4J,eAmTF,SAAwB3T,EAAS4iB,GAC/B,IAAIvpB,EAAO,CACTqa,WAAY1T,EACZ4T,OAAQgP,GAEV,OAAO,SAAChZ,GACNA,EAwBO,CAAExT,KAAM9B,KAtBfif,GAAmCI,eAAeta,GAAMjN,MACtD,SAAC8b,GACKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM9B,GAAsD+E,QArBpDoI,CAAQpI,IACjBuQ,EAASU,IAAmB,IAC5BV,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM9B,GAAsDoC,SAbxDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA1UxCgM,kBA0VF,SAA2BN,GACzB,OAAO,SAAC7L,GACNA,EAgBO,CAAExT,KAAM9B,KAdfif,GAAmCC,kBAAkBiC,GAAKrpB,MACxD,SAAC8b,GAeL,IAAiBzR,EAdXmT,EAASC,IAAY,IACrBD,GAaWnT,EAbMyR,EAAStF,aAcvB,CAAExM,KAAM9B,GAAoDmC,cAZjE,SAACC,GACCkT,EAASC,IAAY,IACrBD,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM9B,GAAoDoC,SAbtDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBArWxCG,WA4XF,SAAoB5T,GAClB,MAAO,CACLF,KAAM9B,GACNgC,WA9XF+T,YAkYF,SAAqBrK,EAAUnF,GAC7B,IAAIxB,EAAO,CACTqa,WAAY1T,EACZpF,SAAUC,GAEZ,OAAO,SAAC+O,GACNA,EAwBO,CAAExT,KAAM9B,KAtBfif,GAAmClJ,YAAYrK,EAAUnF,GAAUzO,MACjE,SAAC8b,GACKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM9B,GAAsD+E,QArBpDoI,CAAQpI,IACjBuQ,EAASU,IAAmB,IAC5BV,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM9B,GAAsDoC,SAbxDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAzZxC+J,cAmOF,SAAuB9T,GACrB,IAAI3G,EAAO,CACTqa,WAAY1T,GAEd,OAAO,SAAC4J,GACNA,EAwBO,CAAExT,KAAM9B,KAtBfif,GAAmCO,cAAc9T,GAAU5T,MACzD,SAAC8b,GACKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM9B,GAAsD+E,QArBpDoI,CAAQpI,IACjBuQ,EAASU,IAAmB,IAC5BV,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM9B,GAAsDoC,SAbxDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAzPxC8Y,YA4EF,SAAqBpN,GACnB,OAAO,SAAC7L,GACNA,EAsBO,CAAExT,KAAM9B,KArBfif,GAAmCQ,uBAAuB0B,GAAKrpB,MAC7D,SAAC8b,GAsBL,IAAiBzR,EArBXmT,EAASC,IAAY,IACrBD,GAoBWnT,EApBMyR,EAAStF,aAqBvB,CAAExM,KAAM9B,GAAoDmC,WAnB/D,IAAI4C,EAAO6O,EAAStF,aACR,MAARvJ,GACFA,EAAK4c,SAAQ,SAAUC,UACdA,EAAE9a,iBACF8a,EAAEla,aAGb4N,EAcN,SAAuBnT,GACrB,MAAO,CAAEL,KAAM9B,GAAuDmC,SAfzD4hB,CAAchf,OAEzB,SAAC3C,GACCkT,EAcN,SAAiBlT,GACf,MAAO,CAAEN,KAAM9B,GAAoDoC,SAftDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA9FxCkK,iBAuQF,SAA0BjU,GACxB,IAAI3G,EAAO,CACTqa,WAAY1T,GAEd,OAAO,SAAC4J,GACNA,EAwBO,CAAExT,KAAM9B,KAtBfif,GAAmCU,iBAAiBjU,GAAU5T,MAC5D,SAAC8b,GACKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM9B,GAAsD+E,QArBpDoI,CAAQpI,IACjBuQ,EAASU,IAAmB,IAC5BV,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM9B,GAAsDoC,SAbxDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA7RxC+Y,eA+GF,SAAwBrN,GACtB,OAAO,SAAC7L,GACNA,EAsBO,CAAExT,KAAM9B,KArBfif,GAAmCS,2BAA2ByB,GAAKrpB,MACjE,SAAC8b,GAsBL,IAAiBzR,EArBXmT,EAASC,IAAY,IACrBD,GAoBWnT,EApBMyR,EAAStF,aAqBvB,CAAExM,KAAM9B,GAAoDmC,WAnB/D,IAAI4C,EAAO6O,EAAStF,aACR,MAARvJ,GACFA,EAAK4c,SAAQ,SAAUC,UACdA,EAAE9a,iBACF8a,EAAEla,aAGb4N,EAcN,SAAuBnT,GACrB,MAAO,CAAEL,KAAM9B,GAAuDmC,SAfzD4hB,CAAchf,OAEzB,SAAC3C,GACCkT,EAcN,SAAiBlT,GACf,MAAO,CAAEN,KAAM9B,GAAoDoC,SAftDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAjIxC+I,YAEF,SAAqBzZ,EAAM0pB,GACzB,OAAO,SAACnZ,GACNA,EAuBO,CAAExT,KAAMtC,KArBfyf,GAAmCW,cAAc7a,GAAMjN,MACrD,SAAC8b,GAsBL,IAAiBzR,EArBPyR,GAAYA,EAASQ,aACO,QAA1BR,EAASQ,aACXkB,GAmBOnT,EAnBUyR,EAAStF,aAoB3B,CAAExM,KAAMtC,GAAoD2C,WAnBxB,QAA1ByR,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,kBAGvCmB,EAASI,GAAatT,MAAM,iCAGhC,SAACA,GACCkT,EAWN,SAAiBlT,GACf,MAAO,CAAEN,KAAMtC,GAAoD4C,SAZtDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBA4J1C,SAASF,GAAYvT,GACnB,MAAO,CACLF,KAAM9B,GACNgC,UA0LJ,SAASgU,GAAmBhU,GAC1B,MAAO,CACLF,KAAM9B,GACNgC,UC9XG,IAAM0sB,GAAmB,CAC9BrZ,OAYF,SAAgB8L,GACd,OAAO,SAAC7L,GACNA,EAgBO,CAAExT,KAAM7B,KAdf6f,GAAiBG,aAAakB,GAAKrpB,MACjC,SAAC8b,GAeL,IAAiBzR,EAdXmT,EAASC,IAAY,IACrBD,GAaWnT,EAbMyR,EAAStF,aAcvB,CAAExM,KAAM7B,GAAmCkC,cAZhD,SAACC,GACCkT,EAASC,IAAY,IACrBD,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM7B,GAAmCmC,SAbrCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAvBxCsK,UAuFF,SAAmBhb,GACjB,OAAO,SAACuQ,GACNA,EAwBF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM7B,GAAmC8E,QAzBzC4Q,CAAQ5Q,IAEjB+a,GAAiBC,UAAUhb,GAAMjN,MAC/B,SAAC8b,GAEKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM7B,GAAmC8E,QArBjCoI,CAAQyG,EAAStF,eAC1BgH,EAASM,IAAW,IACpBN,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM7B,GAAmCmC,SAbrCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA3GxCuK,UA2HF,SAAmBjb,GACjB,OAAO,SAACuQ,GACNA,EAwBF,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM7B,GAAmC8E,QAzBzC4Q,CAAQ5Q,IAEjB+a,GAAiBE,UAAUjb,GAAMjN,MAC/B,SAAC8b,GAEKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAoBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM7B,GAAmC8E,QArBjCoI,CAAQpI,IACjBuQ,EAASM,IAAW,IACpBN,EAASI,GAAavI,QAAQyG,EAASO,mBACJ,QAA1BP,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM7B,GAAmCmC,SAbrCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA/IxCM,YA+JF,SAAqB4Y,EAAOpoB,GAC1B,IAAIxB,EAAO,CACTyM,MAAOmd,EACProB,SAAUC,GAEZ,OAAO,SAAC+O,GACNA,EAyBO,CAAExT,KAAM7B,KAvBf6f,GAAiB/J,YAAY4Y,EAAOpoB,GAAUzO,MAC5C,SAAC8b,GACKA,GAAYA,EAASQ,eACO,QAA1BR,EAASQ,cACXkB,EAqBV,SAAiBvQ,GACf,MAAO,CAAEjD,KAAM7B,GAAqC8E,QAtBnCoI,CAAQpI,IACjBuQ,EAASU,IAAmB,IAC5BV,EAASI,GAAavI,QAAQyG,EAASO,kBACvCrB,OAAOC,SAASuY,UACmB,QAA1B1X,EAASQ,aAClBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAI3C,SAAC/R,GACCkT,EAYN,SAAiBlT,GACf,MAAO,CAAEN,KAAM7B,GAAqCmC,SAbvCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAvLxCG,cACAL,eACAS,sBACA0L,WAoMF,SAAoBP,GAClB,OAAO,SAAC7L,GACNA,EAoBO,CAAExT,KAAM7B,KAnBf6f,GAAiBG,aAAakB,GAAKrpB,MACjC,SAAC8b,GAEC0B,EAASC,IAAY,IACrB,IAAIxQ,EAAO6O,EAAStF,aACR,MAARvJ,GACFA,EAAK4c,SAAQ,SAAUC,OAIzBtM,EAYG,CAAExT,KAAM7B,GAAsCkC,MAZhC4C,OAEnB,SAAC3C,GACCkT,EAWN,SAAiBlT,GACf,MAAO,CAAEN,KAAM7B,GAAsCmC,SAZxCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBApNxCmZ,gBAsDF,WACE,OAAO,SAAAtZ,GACHA,EAcK,CAAExT,KAAM7B,KAZb6f,GAAiBI,oBAAoBpoB,MAAK,SAAA8b,GAc9C,IAAiBzR,EAbTmT,GAaSnT,EAbQyR,EAAStF,aAczB,CAAExM,KAAM7B,GAAqCkC,cAZ9C,SAAAC,GACIkT,EAaZ,SAAiBlT,GACf,MAAO,CAAEN,KAAM7B,GAAqCmC,SAdjCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA9D9C0K,gBA+BF,WACE,OAAO,SAAA7K,GACHA,EAcwB,CAAExT,KAAM7B,KAZhC6f,GAAiBK,kBAAkBroB,MAAK,SAAA8b,GAa5C,IAAiBzR,EAZTmT,EAASC,IAAY,IACrBD,GAWSnT,EAXQyR,EAAStF,aAWD,CAAExM,KAAM7B,GAAsCkC,cATvE,SAAAC,GACIkT,EAASC,IAAY,IACrBD,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM7B,GAAsCmC,SAR1DoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBAwLhD,SAASG,GAAW5T,GAClB,MAAO,CACLF,KAAM7B,GACN+B,UAIJ,SAASuT,GAAYvT,GACnB,MAAO,CACLF,KAAM7B,GACN+B,UAIJ,SAASgU,GAAmBhU,GAC1B,MAAO,CACLF,KAAM7B,GACN+B,UC9PG,IAAM6sB,GAA0C,CACrDxZ,OAKF,SAAgB8L,GACd,OAAO,SAAC7L,GACNA,EAsBO,CAAExT,KAAM3B,KArBf8e,GAAmCY,2BAA2BsB,GAAKrpB,MACjE,SAAC8b,GAsBL,IAAiBzR,EArBXmT,EAASC,IAAY,IACrBD,GAoBWnT,EApBMyR,EAAStF,aAqBvB,CAAExM,KAAM3B,GAA0DgC,WAnBrE,IAAI4C,EAAO6O,EAAStF,aACR,MAARvJ,GACFA,EAAK4c,SAAQ,SAAUC,UACdA,EAAE9a,iBACF8a,EAAEla,aAGb4N,EAcN,SAAuBnT,GACrB,MAAO,CAAEL,KAAM3B,GAA6DgC,SAf/D4hB,CAAchf,OAEzB,SAAC3C,GACCkT,EAcN,SAAiBlT,GACf,MAAO,CAAEN,KAAM3B,GAA0DiC,SAf5DoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAvBxCF,eACAmM,WAyCF,SAAoBP,GAClB,OAAO,SAAC7L,GACNA,EAoBO,CAAExT,KAAM3B,KAnBf8e,GAAmCY,2BAA2BsB,GAAKrpB,MACjE,SAAC8b,GACC0B,EAASC,IAAY,IACrB,IAAIxQ,EAAO6O,EAAStF,aACR,MAARvJ,GACFA,EAAK4c,SAAQ,SAAUC,UACdA,EAAE9a,iBACF8a,EAAEla,aAGb4N,EAYG,CAAExT,KAAM3B,GAA6DgC,MAZvD4C,OAEnB,SAAC3C,GACCkT,EAWN,SAAiBlT,GACf,MAAO,CAAEN,KAAM3B,GAA6DiC,SAZ/DoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBAe1C,SAASF,GAAYvT,GACnB,MAAO,CACLF,KAAM3B,GACN6B,UC/EG,IAAM8sB,GAAyB,CAClCzZ,OAUJ,SAAgBtQ,GACZ,OAAO,SAAAuQ,GACHA,EAcwB,CAAExT,KAAM5B,KAZhCqgB,GAAiB5E,iBAAiB5W,GAAMjN,MAAK,SAAA8b,GAajD,IAAiBzR,EAZTmT,EAASC,IAAY,IACrBD,GAWSnT,EAXQyR,EAAStF,aAWD,CAAExM,KAAM5B,GAAmCiC,cATpE,SAAAC,GACIkT,EAASC,IAAY,IACrBD,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM5B,GAAmCkC,SARvDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBApB9CgG,cA8BJ,SAAuB1W,GACnB,OAAO,SAAAuQ,GACHA,EA0BJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM5B,GAAmC6E,QA1B9D4Q,CAAQ5Q,IAEjBwb,GAAiB9E,cAAc1W,GAAMjN,MACjC,SAAA8b,GAEQA,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,EAASM,IAAW,IAChBhC,EAAStF,cACTgH,EAkBxB,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM5B,GAAmC6E,QAlB1CoI,CAAQyG,EAAStF,eAE9BgH,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM5B,GAAmCkC,SARvDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBApD9CiG,cA8DJ,SAAuB3W,GACnB,OAAO,SAAAuQ,GACHA,EAwBJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM5B,GAAmC6E,QAxB9D4Q,CAAQ5Q,IAEjBwb,GAAiB7E,cAAc3W,GAAMjN,MACjC,SAAA8b,GAEQA,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,EAASM,IAAW,IACpBN,EAiBpB,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM5B,GAAmC6E,QAjB9CoI,CAAQpI,IACjBuQ,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM5B,GAAmCkC,SARvDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAlF9CM,YA6FJ,SAAqB3L,EAAW7D,GAC5B,IAAIxB,EAAO,CACPmB,UAAWkE,EACX9D,SAAUC,GAEd,OAAO,SAAA+O,GACHA,EAsBwB,CAAExT,KAAM5B,KApBhCqgB,GAAiBxK,YAAY3L,EAAW7D,GAAUzO,MAC9C,SAAA8b,GACQA,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,EAiBpB,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM5B,GAAqC6E,QAjBhDoI,CAAQpI,IACjBuQ,EAASU,IAAmB,IAC5BV,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAOZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM5B,GAAqCkC,SAPzDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBApH9CgR,YA6HJ,WACI,OAAO,SAAAnR,GACHA,EAYwB,CAAExT,KAAM5B,KAVhCqgB,GAAiB3E,kBAAkB9jB,MAAK,SAAA8b,GAW5C,IAAiBzR,EAVTmT,GAUSnT,EAVQyR,EAAStF,aAUD,CAAExM,KAAM5B,GAAwCiC,cARzE,SAAAC,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM5B,GAAwCkC,SAR5DoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBArI9CG,cACAL,eACAS,uBA6IJ,SAASJ,GAAW5T,GAChB,MAAO,CACHF,KAAM5B,GAAmC8B,UAIjD,SAASuT,GAAYvT,GACjB,MAAO,CACHF,KAAM5B,GAAoC8B,UAIlD,SAASgU,GAAmBhU,GACxB,MAAO,CACHF,KAAM5B,GAA4C8B,UChKnD,IAAM+sB,GAAoB,CAC7B1Z,OAWJ,SAAgBtQ,GAEZ,OAAO,SAAAuQ,GACHA,EAawB,CAAExT,KAAM1B,GAAoBzH,iBAZpD6nB,GAAkBE,gBAAgB3b,GAAMjN,MAAK,SAAA8b,GAajD,IAAiBzR,EAZTmT,EAASC,IAAY,IACrBD,GAWSnT,EAXQyR,EAAStF,aAWD,CAAExM,KAAM1B,GAAoBxH,eAAgBuJ,cATrE,SAAAC,GACIkT,EAASC,IAAY,IACrBD,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM1B,GAAoBvH,eAAgBuJ,SARxDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBArB9CgL,aAkFJ,SAAsB1b,GAElB,OAAO,SAAAuQ,GACHA,EAyBJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM1B,GAAoB/H,eAAgB0M,QAzB/D4Q,CAAQ5Q,IAEjByb,GAAkBC,aAAa1b,GAAMjN,MACjC,SAAA8b,GACQA,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,EAoBpB,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM1B,GAAoB9H,eAAgByM,QApB/CoI,CAAQyG,EAAStF,eAC1BgH,EAASM,IAAW,IACpBN,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAUZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM1B,GAAoB7H,eAAgB6J,SAVxDoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAtG9CM,YAkHJ,SAAqBiZ,EAAUzoB,GAC3B,IAAIxB,EAAO,CACPiqB,SAAUA,EACV1oB,SAAUC,GAEd,OAAO,SAAA+O,GACHA,EAuBwB,CAAExT,KAAM1B,GAAoB7G,mBArBpDinB,GAAkBzK,YAAYiZ,EAAUzoB,GAAUzO,MAC9C,SAAA8b,GACQA,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,EAkBpB,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAM1B,GAAoB5G,iBAAkBuL,QAlBjDoI,CAAQpI,IACjBuQ,EAASU,IAAmB,IAC5BV,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAM1B,GAAoB3G,iBAAkB2I,SAR1DoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA1IhCG,cACdL,eACAS,sBACAiZ,WA6BJ,WAEI,OAAO,SAAC3Z,GACNA,EAYS,CAAExT,KAAM1B,GAAoBC,kBAXrCmgB,GAAkBG,WAAW7oB,MAC3B,SAAC8b,GAYH,IAAiBzR,EAXbmT,GAWanT,EAXIyR,EAAStF,aAYrB,CAAExM,KAAM1B,GAAoBE,gBAAiB6B,cAVpD,SAACC,GACCkT,EAWJ,SAAiBlT,GACf,MAAO,CAAEN,KAAM1B,GAAoBG,gBAAiB6B,SAZzCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAtCxCmL,WAqDJ,WAEI,OAAO,SAACtL,GACNA,EAYS,CAAExT,KAAM1B,GAAoBI,kBAXrCggB,GAAkBI,aAAa9oB,MAC7B,SAAC8b,GAYH,IAAiBzR,EAXbmT,GAWanT,EAXIyR,EAAStF,aAYrB,CAAExM,KAAM1B,GAAoBK,gBAAiB0B,cAVpD,SAACC,GACCkT,EAWJ,SAAiBlT,GACf,MAAO,CAAEN,KAAM1B,GAAoBM,gBAAiB0B,SAZzCoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,mBAiF5C,SAASG,GAAW5T,GAChB,MAAO,CACHF,KAAM1B,GAAoB1G,eAAgBsI,UAIlD,SAASuT,GAAYvT,GACjB,MAAO,CACHF,KAAM1B,GAAoBzG,gBAAiBqI,UAInD,SAASgU,GAAmBhU,GACxB,MAAO,CACHF,KAAM1B,GAAoBxG,wBAAyBoI,UCvKpD,IAAMktB,GAAsB,CAC/B7Z,OAcJ,SAAgBtQ,GACZ,OAAO,SAAAuQ,GACHA,EAawB,CAAExT,KAAMlB,GAAsBjI,iBAZtDkoB,GAAoBH,gBAAgB3b,GAAMjN,MAAK,SAAA8b,GAanD,IAAiBzR,EAZTmT,EAASC,IAAY,IACrBD,GAWSnT,EAXQyR,EAAStF,aAWD,CAAExM,KAAMlB,GAAsBhI,eAAgBuJ,cATvE,SAAAC,GACIkT,EAASC,IAAY,IACrBD,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMlB,GAAsB/H,eAAgBuJ,SAR1DoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAvB9CqL,cAiCJ,SAAuB/b,GACnB,OAAO,SAAAuQ,GACHA,EA2BJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMlB,GAAsBC,gBAAiBkE,QA3BlE4Q,CAAQ5Q,IAEjB8b,GAAoBC,cAAc/b,GAAMjN,MACpC,SAAA8b,GAEQA,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,EAqBpB,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMlB,GAAsBE,gBAAiBiE,QArBlDoI,CAAQyG,EAAStF,eAC1BgH,EAASU,IAAmB,IAC5BV,EAASW,IAAY,IACrBX,EAAS6Z,IAAY,IAErB7Z,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMlB,GAAsBG,gBAAiBqB,SAR3DoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAxD9CsL,aAmEJ,SAAsBhc,GAClB,OAAO,SAAAuQ,GACHA,EA2BJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMlB,GAAsBI,eAAgB+D,QA3BjE4Q,CAAQ5Q,IAEjB8b,GAAoBE,aAAahc,GAAMjN,MACnC,SAAA8b,GAEQA,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,EAqBpB,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMlB,GAAsBK,eAAgB8D,QArBjDoI,CAAQpI,IACjBuQ,EAASU,IAAmB,IAC5BV,EAASW,IAAY,IACrBX,EAAS6Z,IAAY,IAErB7Z,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMlB,GAAsBM,eAAgBkB,SAR1DoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA1F9CuL,iBAoGJ,SAA0Bjc,GACtB,OAAO,SAAAuQ,GACHA,EAyBJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMlB,GAAsBvI,eAAgB0M,QAzBjE4Q,CAAQ5Q,IAEjB8b,GAAoBG,iBAAiBjc,GAAMjN,MACvC,SAAA8b,GAEQA,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,EAmBpB,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMlB,GAAsBtI,eAAgByM,QAnBjDoI,CAAQyG,EAAStF,eAC1BgH,EAASM,IAAW,IACpBN,EAASW,IAAY,IACrBX,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMlB,GAAsBrI,eAAgB6J,SAR1DoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAzH9C2Z,SAoKJ,SAAkBjO,GACd,OAAO,SAAA7L,GACHA,EAcwB,CAAExT,KAAMlB,GAAsBU,sBAZtDuf,GAAoBxJ,cAAc8J,GAAKrpB,MAAK,SAAA8b,GAahD,IAAiBzR,EAZTmT,EAASC,IAAY,IACrBD,GAWSnT,EAXQyR,EAAStF,aAWD,CAAExM,KAAMlB,GAAsBW,oBAAqBY,cAT5E,SAAAC,GACIkT,EAASC,IAAY,IACrBD,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMlB,GAAsBY,oBAAqBY,SAR/DoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA9K9CwL,cAkIJ,SAAuBlc,GACnB,OAAO,SAAAuQ,GACHA,EA0BJ,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMlB,GAAsBO,sBAAuB4D,QA1BxE4Q,CAAQ5Q,IAEjB8b,GAAoBI,cAAclc,GAAMjN,MACpC,SAAA8b,GAEQA,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,EAoBpB,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMlB,GAAsBQ,sBAAuB2D,QApBxDoI,CAAQyG,EAAStF,eAC1BgH,EAASC,IAAY,IAErBD,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAASC,IAAY,IACrBD,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMlB,GAAsBS,sBAAuBe,SARjEoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBAxJ9CM,YAyLJ,SAAqBhR,GACjB,OAAO,SAAAuQ,GACHA,EAuBwB,CAAExT,KAAMlB,GAAsBrH,mBArBtDsnB,GAAoB9K,YAAYhR,GAAMjN,MAClC,SAAA8b,GACQA,GAAYA,EAASQ,eACS,QAA1BR,EAASQ,cACTkB,EAkBpB,SAAiBvQ,GAAQ,MAAO,CAAEjD,KAAMlB,GAAsBpH,iBAAkBuL,QAlBnDoI,CAAQpI,IACjBuQ,EAASU,IAAmB,IAC5BV,EAASI,GAAavI,QAAQyG,EAASO,mBACN,QAA1BP,EAASQ,aAChBkB,EAASI,GAAa/H,QAAQiG,EAASO,kBAEvCmB,EAASI,GAAatT,MAAMwR,EAASO,sBAIjD,SAAA/R,GACIkT,EAQZ,SAAiBlT,GAAS,MAAO,CAAEN,KAAMlB,GAAsBnH,iBAAkB2I,SAR5DoT,CAAQpT,EAAMqT,aACvBH,EAASI,GAAatT,MAAMA,EAAMqT,kBA5M9CG,cACAK,eACAkZ,eACA5Z,eACAS,uBAkNJ,SAASJ,GAAW5T,GAChB,MAAO,CACHF,KAAMlB,GAAsBlH,eAAgBsI,UAGpD,SAASiU,GAAYjU,GACjB,MAAO,CACHF,KAAMlB,GAAsBD,iBAAkBqB,UAItD,SAASmtB,GAAYntB,GACjB,MAAO,CACHF,KAAMlB,GAAsBa,wBAAyBO,UAI7D,SAASuT,GAAYvT,GACjB,MAAO,CACHF,KAAMlB,GAAsBjH,gBAAiBqI,UAIrD,SAASgU,GAAmBhU,GACxB,MAAO,CACHF,KAAMlB,GAAsBhH,wBAAyBoI,UC5P9C,WAA0B,wCCA1B,OAA0B,gC,QCQnCqtB,G,kDACJ,WAAYvD,GAAQ,IAAD,8BACjB,cAAMA,IACDlqB,MAAQ,CACX0tB,WAAW,EACXvpB,SAAU,KACVS,SAAU,KACV+oB,UAAU,EACVC,WAAW,EACXC,aAAa,EACbC,IAAK,KAELC,UAAW,CACT5pB,SAAU,GACVS,SAAU,IAEZopB,kBAAmB,kBACnBC,YAAa,SACb7pB,MAAO,GACP8pB,gBAAiB,CACf9pB,MAAO,MAET+pB,QAAQ,GAEV,EAAKC,WAAa,EAAKA,WAAWC,KAAhB,gBAClB,EAAKC,aAAe,EAAKA,aAAaD,KAAlB,gBACpB,EAAKE,WAAa,EAAKA,WAAWF,KAAhB,gBAClB,EAAKG,eAAiB,EAAKA,eAAeH,KAApB,gBACtB,EAAKI,SAAW,EAAKA,SAASJ,KAAd,gBAChB,EAAKK,mBAAqB,EAAKA,mBAAmBL,KAAxB,gBAC1B,EAAKpa,WAAa,EAAKA,WAAWoa,KAAhB,gBAClB,EAAKM,iBAAmB,EAAKA,iBAAiBN,KAAtB,gBACxB,EAAKO,UAAY,EAAKA,UAAUP,KAAf,gBA/BA,E,qDAkCnB,WACEtd,eAAe8P,WAAW,gBAC1B9P,eAAe8P,WAAW,QAC1B9P,eAAe8P,WAAW,YAC1B9P,eAAe8P,WAAW,YAC1B9P,eAAe8P,WAAW,gBAC1B9P,eAAe8P,WAAW,iBAC1B9P,eAAe8P,WAAW,kBAC1B9P,eAAe8P,WAAW,eAC1B9P,eAAe8P,WAAW,gC,0BAG5B,SAAagO,GACX,MAAsBA,EAAMC,OAAtBC,EAAN,EAAMA,KAAM/Z,EAAZ,EAAYA,MACRga,EAAS/S,KAAKjc,MAAM+tB,UACxB,OAAQgB,GACN,IAAK,WACH/Z,EAAQ6Z,EAAMC,OAAOG,QAKzBhT,KAAKmS,WAAWpZ,EAAO+Z,GACvB9S,KAAKiT,SAAL,aAAgBF,UAASD,EAAO/Z,M,wBAElC,SAAWA,EAAO+Z,GAChB,IAAIC,EAAS/S,KAAKjc,MAAM+tB,UAExB,OAAQgB,GACN,IAAK,WACW,OAAV/Z,GAAkBA,EAAMvH,OAAS,EACnCuhB,EAAO7qB,SAAW,8BACT6Q,EAAMvH,QAAU,EAEpBuH,EAAMma,MAAM,iDAEVH,EAAO7qB,SAAW,KADvB6qB,EAAOI,SAAW,+BAGfJ,EAAO7qB,SAAW,KACzB,MACF,IAAK,WACW,OAAV6Q,GAAkBA,EAAMvH,OAAS,EACnCuhB,EAAOpqB,SAAW,wBACboqB,EAAOpqB,SAAW,KAK7B,OArBc,I,4BAwBhB,WACEqX,KAAKiT,SAAS,CAAEtB,WAAY3R,KAAKjc,MAAM4tB,c,wBAGzC,SAAWiB,EAAOhD,GAAO,IAAD,OACtBgD,EAAMQ,iBACN,IAcMjU,EAdFkU,GAAa,EACbC,EAAatT,KAAKjc,MAAM+tB,WAE5ByB,OAAOC,QAAQF,GAAYzrB,KAAI,YAAmB,IAAD,mBAAhB4rB,EAAgB,KACzCzD,GADyC,KACnC,EAAKjsB,MAAM0vB,IAMvB,OALY,EAAKtB,WAAWnC,EAAKyD,KAE/B,EAAKR,SAAS,CAAEK,WAAYD,IAC5BA,GAAa,GAERA,KAGLA,KAEU,KAARzD,EACFzQ,EAAW,CACThX,MAAO6X,KAAKjc,MAAMmE,SAClBS,SAAUqX,KAAKjc,MAAM4E,SACrB+qB,YAAa,GAEE,KAAR9D,IACTzQ,EAAW,CACThX,MAAO6X,KAAKjc,MAAMmE,SAClBS,SAAUqX,KAAKjc,MAAM4E,SACrB+qB,YAAa,IAKjB1T,KAAKiO,MAAMhT,UAAUkE,M,6BAKzB,WACEa,KAAKiT,SAAS,CAAE9qB,MAAO6X,KAAKjc,MAAMmE,WAClC,IAAI6qB,EAAS/S,KAAKjc,MAAMkuB,gBACxBsB,OAAOC,QAAQT,GAAQlrB,KAAI,YAAmB,IAAD,mBAAhB4rB,EAAgB,UAE3C,OADAV,EAAOU,GAAO,GACPV,EAAOU,Q,wBAIlB,WACEzT,KAAKiT,SAAS,CAAEU,SAAS,EAAMxrB,MAAO6X,KAAKjc,MAAMoE,U,sBAInD,WACE6X,KAAKiT,SAAS,CACZU,SAAS,EACT3B,YAAa,WAEfhS,KAAK4T,oB,8BAGP,SAAiBhB,GAAQ,IAAD,OACtBA,EAAMQ,iBACN,IAAIC,GAAa,EACbC,EAAatT,KAAKjc,MAAMkuB,gBAY5B,GAVAsB,OAAOC,QAAQF,GAAYzrB,KAAI,YAAmB,IAAD,mBAAhB4rB,EAAgB,KACzCzD,GADyC,KACnC,EAAKjsB,MAAM0vB,IAMvB,OALY,EAAKI,mBAAmB7D,EAAKyD,KAEvC,EAAKR,SAAS,CAAEK,WAAYD,IAC5BA,GAAa,GAERA,KAGLA,EAAY,CACd,IAAMlU,EAAW,CACfhX,MAAO6X,KAAKjc,MAAMoE,OAGpB6X,KAAKiO,MAAM1S,eAAe4D,M,gCAI9B,SAAmByT,GACjB,MAAwBA,EAAMC,OAAtBC,EAAR,EAAQA,KAAM/Z,EAAd,EAAcA,MACVga,EAAS/S,KAAKjc,MAAMkuB,gBAExBjS,KAAK6T,mBAAmB9a,EAAO+Z,GAC/B9S,KAAKiT,SAAL,aAAgBF,UAASD,EAAO/Z,M,uBAGlC,WACE,OACEiH,KAAKiO,MAAM6F,MACX9T,KAAKiO,MAAM6F,IAAIvd,cACgB,OAA/ByJ,KAAKiO,MAAM6F,IAAIvd,eAEfyJ,KAAKiT,SAAS,CACZxB,WAAW,KAEN,K,gCAIX,SAAmB1Y,EAAO+Z,GACxB,IAAIC,EAAS/S,KAAKjc,MAAMkuB,gBACpB8B,GAAU,EAEd,OAAQjB,GACN,IAAK,QACU,MAAT/Z,GAAiBA,EAAMvH,OAAS,GAClCuiB,GAAU,EACVhB,EAAO5qB,MAAQ,+BACN4Q,EAAMvH,QAAU,EAEpBuH,EAAMma,MAAM,iDAGVH,EAAO5qB,MAAQ,IAFpB4rB,GAAU,EACVhB,EAAO5qB,MAAQ,gCAGZ4qB,EAAO5qB,MAAQ,GAM1B,OAAO4rB,I,oBAET,WAAU,IAAD,OACP,OACE,uCACE,2BAASC,UAAU,GAAGC,MAAO,CAAEC,QAAS,KAAxC,UACE,sBAAKC,MAAM,WAAX,SACE,sBAAKH,UAAU,0BAAf,SACE,uBAAKA,UAAU,MAAf,UACE,sBAAKA,UAAU,WAAf,SACE,sBAAKA,UAAU,GAAf,SACE,sBAAKI,IAAKC,GAAKL,UAAU,0BAG7B,sBAAKA,UAAU,eAAf,SACE,uBAAKA,UAAU,yBAAf,UACE,sBAAKA,UAAU,aAAf,SACE,sBAAKI,IAAKE,GAAON,UAAU,OAc7B,uBACEO,SAAU,SAACC,GACT,EAAKlC,WAAWkC,EAAG,MAErBP,MAAO,CAAEQ,WAAY,QAJvB,SAME,uBAAKT,UAAU,iBAAf,UACE,uBAAKA,UAAU,yBAAf,UACE,sBAAKA,UAAU,sBAAf,SACE,uBAAMA,UAAU,mBAAhB,SACE,oBAAGA,UAAU,mBAGjB,wBACEU,YACE1U,KAAKiO,MAAM6F,MACX9T,KAAKiO,MAAM6F,IAAIvd,cACgB,OAA/ByJ,KAAKiO,MAAM6F,IAAIvd,cAIjBtS,KAAK,OACL0wB,YAAY,qBACZC,SAAU5U,KAAKqS,aACfS,KAAK,WACLkB,UAAU,eACVa,YAAU,IAEZ,uBAAMb,UAAU,mBACkB,MAAjChU,KAAKjc,MAAM+tB,UAAU5pB,SACpB,sBAAK8rB,UAAU,SAAf,SACGhU,KAAKjc,MAAM+tB,UAAU5pB,WAEtB,QAGN,uBAAK8rB,UAAU,yBAAf,UACE,sBAAKA,UAAU,sBAAf,SACE,uBAAMA,UAAU,mBAAhB,SACE,oBAAGA,UAAU,mBAGjB,wBACEU,YACE1U,KAAKiO,MAAM6F,MACX9T,KAAKiO,MAAM6F,IAAIvd,cACgB,OAA/ByJ,KAAKiO,MAAM6F,IAAIvd,cAIjBtS,KAAM+b,KAAKjc,MAAM4tB,UAAY,WAAa,OAC1CmD,aAAa,MACbF,SAAU5U,KAAKqS,aACfsC,YAAY,WACZ7B,KAAK,WACLkB,UAAU,eACVa,YAAU,IAEZ,uBAAMb,UAAU,oBAChB,oBACEA,UACEhU,KAAKjc,MAAM4tB,UACP,uBACA,6BAENoD,QAAS/U,KAAKuS,iBAEkB,MAAjCvS,KAAKjc,MAAM+tB,UAAUnpB,SACpB,sBAAKqrB,UAAU,SAAf,SACGhU,KAAKjc,MAAM+tB,UAAUnpB,WAEtB,QAGN,uBACEqsB,QACEhV,KAAKiO,MAAM6F,MACX9T,KAAKiO,MAAM6F,IAAIvd,cACgB,OAA/ByJ,KAAKiO,MAAM6F,IAAIvd,aAIjByd,UAAU,yBARZ,UAUE,sBAAKA,UAAU,sBAAf,SACE,uBAAMA,UAAU,mBAAhB,SACE,oBACEG,MAAM,oBACN,cAAY,aAIlB,wBACElwB,KAAK,OACL0wB,YAAY,YACZC,SAAU5U,KAAKqS,aACfS,KAAK,MACLkB,UAAU,eACVa,YAAU,IAEZ,uBAAMb,UAAU,mBACa,MAA5BhU,KAAKjc,MAAM+tB,UAAUD,IACpB,sBAAKmC,UAAU,SAAf,SACGhU,KAAKjc,MAAM+tB,UAAUD,MAEtB,QAGN,sBACEmC,UAAU,yBACVe,QAAS,kBACP,EAAK9B,SAAS,CACZrB,aAAa,EACbzpB,MAAO,EAAKpE,MAAMmE,YALxB,6BAYA,sBAAK8rB,UAAU,kBAAf,SACE,yBAAQA,UAAU,uCAAlB,uCAgDhB,sBAAKA,UAAU,cAAf,qBAGF,gBAAC,SAAD,CACEiB,OAAO,kBACPtB,QAAS3T,KAAKjc,MAAM6tB,YACpBsD,OAAQ,kBAAM,EAAKjC,SAAS,CAAErB,aAAa,KAH7C,UAKE,qBAAIqC,MAAO,CAAE/H,MAAO,WAApB,4BACA,wFACA,wBAAMqI,SAAUvU,KAAK0S,iBAArB,UACE,wBACEzuB,KAAK,OACL0wB,YAAY,WACZ5b,MAAOiH,KAAKjc,MAAMoE,MAClBysB,SAAU5U,KAAKyS,mBACfK,KAAK,QACLkB,UAAU,eACVa,YAAU,IAEyB,MAApC7U,KAAKjc,MAAMkuB,gBAAgB9pB,MAC1B,sBAAK6rB,UAAU,QAAf,SAAwBhU,KAAKjc,MAAMkuB,gBAAgB9pB,QACjD,KACJ,sBAAK6rB,UAAU,6BAAf,SACE,eAAC,SAAD,CACEmB,MAAM,QACNnB,UAAU,kBACV/vB,KAAK,SACLmxB,KAAK,cACLL,QAAS,kBAAM,EAAK9B,SAAS,CAAErB,aAAa,sB,GA7bxCyD,aAqqBLC,gBAlBS,SAACvxB,GAAW,IAAD,QACjC,MAAO,CACL+vB,KACE,UAAA/vB,EAAMyH,aAAN,eAAanH,SAAb,UAAsBN,EAAMyH,aAA5B,aAAsB,EAAanH,MAAM,IAAzC,UACIN,EAAMyH,aADV,aACI,EAAanH,MAAM,GACnB,KACNotB,UAAS,UAAE1tB,EAAMyH,aAAR,aAAE,EAAaC,WAID,SAACgM,GAC1B,MAAO,CACLwD,UAAW,SAACzP,GAAD,OAAWiM,EAASuN,GAAa/J,UAAUzP,KACtD+P,eAAgB,SAACrU,GAAD,OACduQ,EAAS+N,GAAsBjK,eAAerU,QAIrCouB,CAA6C9D,I,mBC3qBvC+D,G,sCACjBhP,iBAAmB,G,KACnBD,OAAS,G,KACTkP,iBAAmB,E,KACnBC,cAAgB,G,KAChBC,aAAe,E,KACfC,cAAgB,E,KAChBC,SAAW,G,KACXC,UAAY,G,KACZC,YAAc,G,KACdC,QAAU,G,KACVC,YAAc,G,KACdC,YAAc,ICdH,ICAA,IDAA,IAA0B,wC,UEA1B,I,OCAA,IDAA,IAA0B,qCEA1B,OAA0B,oC,ICA1B,I,OCAA,OAA0B,+BCA1B,OAA0B,+B,6GCyC5BC,GAAb,kDACE,WAAYjI,GAAQ,IAAD,yBACjB,cAAMA,IAwgBRkI,wBAA0B,SAAC3B,GACzB,EAAKvB,SAAS,CAAEmD,YAAa5B,EAAE3B,OAAO9Z,QACtC,EAAKsd,iBAAiBC,UAAY9B,EAAE3B,OAAO9Z,OA3gB1B,EA8gBnBwd,kBA9gBmB,yCA8gBC,WAAO3D,GAAP,kBAAArQ,EAAA,sDAelB,GAdAqQ,EAAMQ,iBACFoD,GAAoB,EACpBlD,EAAa,EAAKvvB,MAAM0yB,aAE5BlD,OAAOC,QAAQF,GAAYzrB,KAAI,YAAmB,IAAD,mBAAhB4rB,EAAgB,KACzCzD,GADyC,KACnC,EAAKjsB,MAAM0vB,IAMvB,OALY,EAAKiD,gBAAgB1G,EAAKyD,KAEpC,EAAKR,SAAS,CAAEK,WAAYkD,IAC5BA,GAAoB,GAEfA,KAGLA,EACF,IAGE,EAAKG,SAML,EAAK1D,UAAS,SAAC2D,GAAD,MAAgB,CAAER,YAAa,OAI7C,EAAKnD,SAAS,CAAE4D,kBAAkB,IAClC,MAAOtyB,GAEPie,QAAQje,MAAM,qCAAsCA,GAhCtC,2CA9gBD,sDAEjB,EAAK8xB,iBAAmB,IAAId,GAC5B,EAAKxxB,OAAL,GACE+yB,OAAO,EACPC,aAAa,EACbC,YAAY,EACZC,WAAW,EACXC,UAAU,EACV3B,cAAe,GACfxnB,OAAQ,KACRpG,YAAY,EACZ4e,iBAAkB,MAClBD,OAAQrR,OAAOC,SAASiiB,KACxB3B,iBAAkB,EAClB4B,eAAgB,EAChBvtB,UAAW,GACXwtB,OAAQ,GACRC,cAAc,EACdxvB,OAAQ,GACRyJ,MAAO,GACPgmB,KAAM,GACNC,aAAc,GACdC,MAAO,GACPrvB,SAAU,GACVsvB,aAAc,GACdC,WAAW,EACXC,WAAY,EACZ3pB,QAAQ,EACR4pB,YAAa,GACbC,cAAe,GACfC,cAAe,GACfC,WAAY,GA7Bd,0BA8Ba,IA9Bb,wBA+BW,IA/BX,0BAgCa,IAhCb,4BAiCe,IAjCf,kCAkCoB,GAlCpB,4BAmCe,IAnCf,mCAoCsB,MApCtB,0BAqCa,CACTR,aAAc,KACdD,KAAM,KACNE,MAAO,KACPrvB,SAAU,KACVsvB,aAAc,KACdO,MAAO,KACPH,cAAe,KACfC,cAAe,KACfG,QAAS,GACTC,YAAa,KA/CjB,6BAiDgB,CACZ/B,YAAa,OAlDjB,8BAoDiB,CACbmB,KAAM,KACNC,aAAc,KACdS,MAAO,KACPR,MAAO,KACPK,cAAe,KACfC,cAAe,KACfG,QAAS,KA3Db,GA+DA,EAAK5F,WAAa,EAAKA,WAAWF,KAAhB,gBAClB,EAAKgG,eAAiB,EAAKA,eAAehG,KAApB,gBACtB,EAAKC,aAAe,EAAKA,aAAaD,KAAlB,gBACpB,EAAKiG,cAAgB,EAAKhG,aAAaD,KAAlB,gBACrB,EAAKI,SAAW,EAAKA,SAASJ,KAAd,gBAChB,EAAK8C,OAAS,EAAKA,OAAO9C,KAAZ,gBACd,EAAKkG,eAAiB,EAAKA,eAAelG,KAApB,gBACtB,EAAKpa,WAAa,EAAKA,WAAWoa,KAAhB,gBAClB,EAAKmG,aAAe,EAAKA,aAAanG,KAAlB,gBACpB,EAAK5U,aAAe,EAAKA,aAAa4U,KAAlB,gBACpB,EAAKoG,SAAW,EAAKA,SAASpG,KAAd,gBAChB,EAAKqG,aAAe,EAAKA,aAAarG,KAAlB,gBACpB,EAAKsG,qCACH,EAAKA,qCAAqCtG,KAA1C,gBACgB,IAAIuG,gBAAgB1jB,OAAOC,SAAS0jB,QAC5BC,IAAI,OAjFb,OAmFjB,EAAKxC,iBAAiB/P,OAAS,EAAKviB,MAAMuiB,OAC1C,EAAK+P,iBAAiBC,UAAY,EAAKvyB,MAAMqyB,YAC7C,EAAKC,iBAAiBb,iBAAmB,EAAKzxB,MAAMyxB,iBACpD,EAAKa,iBAAiB9P,iBAAmB,EAAKxiB,MAAMwiB,iBAtFnC,EADrB,kDA2FE,SAAeuS,EAAKC,GAKlB,OAAO7hB,MAAM,+DAAD,OACqD4hB,EADrD,gBACgEC,EADhE,6BAHW,CACrBjiB,OAAQ,QAKR7c,KAAK6b,MAnGX,+BAwGE,WACiBb,OAAO+jB,OAClB/jB,OAAO+jB,QACT/jB,OAAO+jB,OAAOC,OAAOh/B,KAArB,yCAA0B,WAAgBi/B,GAAhB,UAAA3W,EAAA,sEAClB9L,QAAQ0iB,IAAID,EAAMrxB,KAAI,SAACirB,GAAD,OAAU7d,OAAO+jB,OAAOI,OAAOtG,OADnC,2CAA1B,yDA3GN,8BAiIE,SAAiBuG,GACfrZ,KAAKiT,SAAS,CACZ+D,YAAY,IAGdhX,KAAKiO,MAAM3Q,cAAc+b,KAtI7B,sBAyIE,WACErZ,KAAKiT,SAAS,CACZqE,cAAc,MA3IpB,6BA+IE,SAAgBve,EAAO+Z,GACrB,IAAIC,EAAS/S,KAAKjc,MAAM0yB,aACpB1C,GAAU,EACd,OAAQjB,GACN,IAAK,eACE/Z,GAASA,EAAMvH,OAAS,GAC3BuiB,GAAU,EACVhB,EAAOqD,YAAc,mCAChBrD,EAAOqD,YAAc,GAKhC,OAAOrC,IA5JX,8BAgKE,SAAiBhb,EAAO+Z,GACtB,IAAIC,EAAS/S,KAAKjc,MAAM+tB,UACpBiC,GAAU,EACd,OAAQjB,GACN,IAAK,QACE/Z,GAASA,EAAMvH,OAAS,GAC3BuiB,GAAU,EACVhB,EAAOwE,KAAO,2BACLxe,EAAMvH,QAAU,EACpBuH,EAAMma,MAAM,sCAGVH,EAAOwE,KAAO,IAFnBxD,GAAU,EACVhB,EAAOwE,KAAO,+BAEXxE,EAAOwE,KAAO,GACrB,MACF,IAAK,SACExe,GAASA,EAAMvH,OAAS,GAC3BuiB,GAAU,EACVhB,EAAO0E,MAAQ,+BACN1e,GAASA,EAAMvH,OAAS,EAC5BuH,EAAMma,MAAM,iDAGVH,EAAO0E,MAAQ,IAFpB1D,GAAU,EACVhB,EAAO0E,MAAQ,gCAEZ1E,EAAO0E,MAAQ,GACtB,MACF,IAAK,YACE1e,GAASA,EAAMvH,OAAS,GAC3BuiB,GAAU,EACVhB,EAAO3qB,SAAW,gCACT2Q,GAASA,EAAMvH,OAAS,EAC5BuH,EAAMma,MAAM,gBAGVH,EAAO3qB,SAAW,MAFvB2rB,GAAU,EACVhB,EAAO3qB,SAAW,iCAEf2qB,EAAO3qB,SAAW,GACzB,MACF,IAAK,gBACE2Q,GAASA,EAAMvH,OAAS,GAC3BuiB,GAAU,EACVhB,EAAO2E,aAAe,+BACjB3E,EAAO2E,aAAe,GAOjC,OAAO3D,IAhNX,8BAmNE,SAAiBhb,EAAO+Z,GACtB,IAAIC,EAAS/S,KAAKjc,MAAM+tB,UACpBiC,GAAU,EACd,OAAQjB,GACN,IAAK,gBACE/Z,GAASA,EAAMvH,OAAS,GAC3BuiB,GAAU,EACVhB,EAAOyE,aAAe,2BACbze,EAAMvH,QAAU,EACpBuH,EAAMma,MAAM,sCAGVH,EAAOyE,aAAe,IAF3BzD,GAAU,EACVhB,EAAOyE,aAAe,+BAEnBzE,EAAOyE,aAAe,GAC7B,MACF,IAAK,SACEze,GAASA,EAAMvH,OAAS,GAC3BuiB,GAAU,EACVhB,EAAO0E,MAAQ,+BACN1e,GAASA,EAAMvH,OAAS,EAC5BuH,EAAMma,MAAM,iDAGVH,EAAO0E,MAAQ,IAFpB1D,GAAU,EACVhB,EAAO0E,MAAQ,gCAEZ1E,EAAO0E,MAAQ,GACtB,MACF,IAAK,SACE1e,GAASA,EAAMvH,OAAS,GAC3BuiB,GAAU,EACVhB,EAAOkF,MAAQ,gCACNlf,GAASA,EAAMvH,OAAS,EAC5BuH,EAAMma,MAAM,gBAGVH,EAAOkF,MAAQ,MAFpBlE,GAAU,EACVhB,EAAOkF,MAAQ,iCAEZlF,EAAOkF,MAAQ,GACtB,MAOF,IAAK,WACElf,GAASA,EAAMnB,WAAWpG,OAAS,GACtCuiB,GAAU,EACVhB,EAAOmF,QAAU,gCACZnF,EAAOmF,QAAU,GACxB,MACF,IAAK,eACEnf,GAASA,EAAMnB,WAAWpG,OAAS,GACtCuiB,GAAU,EACVhB,EAAOoF,YAAc,iCAChBpF,EAAOoF,YAAc,GAOhC,OAAOpE,IA/QX,sBAkRE,WACE,IAAIuF,EAAQC,SAASC,eAAe,WAGhCC,EAAMF,SAASC,eAAe,SACnBD,SAASC,eAAe,SAEvCC,EAAIC,QAAU,WACZJ,EAAMrF,MAAM0F,QAAU,QACXJ,SAASC,eAAe,UAK1BD,SAASK,uBAAuB,SAAS,GAG/CF,QAAU,WACbJ,EAAMrF,MAAM0F,QAAU,UApS5B,4BAwSE,SAAe/G,GAAQ,IAAD,OAEpBA,EAAMQ,iBAEN,IAAIyG,GAAkB,EAClBvG,EAAatT,KAAKjc,MAAM+tB,UAC5ByB,OAAOC,QAAQF,GAAYzrB,KAAI,YAAmB,IAAD,mBAAhB4rB,EAAgB,KACzCzD,GADyC,KACnC,EAAKjsB,MAAM0vB,IAOvB,OANY,EAAKqG,iBAAiB9J,EAAKyD,KAErC,EAAKR,SAAS,CAAEK,WAAYuG,IAC5BA,GAAkB,GAGbA,KAGT,IAAME,EAAe,CACnBvC,aAAcxX,KAAKjc,MAAMyzB,aACzBC,MAAOzX,KAAKjc,MAAM0zB,MAClBQ,MAAOjY,KAAKjc,MAAMk0B,MAClBH,cAAe9X,KAAKjc,MAAM+zB,cAC1BC,cAAe/X,KAAKjc,MAAMg0B,cAC1BG,QAASlY,KAAKjc,MAAMm0B,QACpBd,eAAgBpX,KAAKiO,MAAM+L,0BAA0B5C,eACrDvtB,UAAWmW,KAAKiO,MAAM+L,0BAA0BnwB,UAChDwtB,OAAQrX,KAAKiO,MAAM+L,0BAA0B3C,OAC7C9lB,MAAOyO,KAAKiO,MAAM+L,0BAA0BzoB,MAC5C4mB,YAAanY,KAAKjc,MAAMo0B,aAGtB0B,GACF7Z,KAAKiO,MAAMxQ,eAAesc,GAG5B/Z,KAAKiO,MAAM3Q,kBA3Uf,+BA8UE,SAAkBkX,GAChB,GAAIA,EAAE0D,QACJ,OAAO,sBAAK9D,IAAKI,EAAE0D,QAAS9M,MAAM,WAhVxC,0BAoVE,SAAawH,GACX,IAAIG,EAAS/S,KAAKjc,MAAM+tB,UAGxB,GADAiB,EAAOmF,QAAU,GACbtF,EAAMqH,KACJrH,EAAMqH,IAAIlkB,SAAU,CACtB,IAAMA,EAAWnB,KAAKC,MAAM+d,EAAMqH,IAAIlkB,UAClCA,IAC4B,QAA1BA,EAASQ,aACXyJ,KAAKiT,SAAS,CACZiF,QAASniB,EAASmkB,SAEe,QAA1BnkB,EAASQ,eAClBwc,EAAOmF,QAAU,iCACjBlY,KAAKiT,SAAS,CACZiF,QAAS,UAnWvB,wBAkXE,SAAWtF,GAAQ,IAAD,SAEhBA,EAAMQ,iBAEN,IAAI+G,GAAiB,EACjB7G,EAAatT,KAAKjc,MAAM+tB,UAC5ByB,OAAOC,QAAQF,GAAYzrB,KAAI,YAAmB,IAAD,mBAAhB4rB,EAAgB,KACzCzD,GADyC,KACnC,EAAKjsB,MAAM0vB,IAOvB,OANY,EAAK2G,iBAAiBpK,EAAKyD,KAErC,EAAKR,SAAS,CAAEK,WAAY6G,IAC5BA,GAAiB,GAGZA,KAGT,IAAME,EAAe,CACnB9C,KAAMvX,KAAKjc,MAAMwzB,KACjBE,MAAOzX,KAAKjc,MAAM0zB,MAClBrvB,SAAU4X,KAAKjc,MAAMqE,SACrBsvB,aAAc1X,KAAKjc,MAAM2zB,aACzBN,eAAc,UAAEpX,KAAKiO,MAAM+L,iCAAb,aAAE,EAAsC5C,gBAGpD+C,GACFna,KAAKiO,MAAM1Q,eAAe8c,GAG5Bra,KAAKiT,SAAL,eAAiBoH,EAAe,OA/YpC,uBAkZE,WACEra,KAAKiT,SAAS,CACZsE,KAAM,GACNE,MAAO,GACPrvB,SAAU,GACVsvB,aAAc,GACd5F,UAAW,CACTyF,KAAM,KACNE,MAAO,KACPrvB,SAAU,KACVsvB,aAAc,KACdO,MAAO,KACPH,cAAe,KACfC,cAAe,KACfG,QAAS,GACTC,YAAa,GACbX,aAAc,OAGlB,IAAIzE,EAAS/S,KAAKjc,MAAM+tB,UACxByB,OAAOC,QAAQT,GAAQlrB,KAAI,YAAmB,IAAD,mBAAhB4rB,EAAgB,UAC3CV,EAAOU,GAAO,QAvapB,0BA2aE,SAAahb,EAAW6hB,EAAgB1H,GACtC5S,KAAKiT,SAAS,CAAEllB,OAAQ6kB,EAAM7Z,QAE9B,IAAI7R,EAAO,CACT2C,UAAW4O,EACX8hB,cAAe3H,EAAM7Z,MACrBxH,MAAOqhB,EAAM7Z,MACbqe,eAAgBkD,GAGd7hB,GACFuH,KAAKiO,MAAMzQ,aAAatW,KAtb9B,0BA2bE,SAAa0rB,GACX,MAAwBA,EAAMC,OAAtBC,EAAR,EAAQA,KAAM/Z,EAAd,EAAcA,MACVga,EAAS/S,KAAKjc,MAAMy2B,aAExBxa,KAAKoa,iBAAiBrhB,EAAO+Z,GAC7B9S,KAAKiT,SAAL,aAAgBF,UAASD,EAAO/Z,MAhcpC,2BAmcE,SAAc6Z,GACZ,MAAwBA,EAAMC,OAAtBC,EAAR,EAAQA,KAAM/Z,EAAd,EAAcA,MACVga,EAAS/S,KAAKjc,MAAMy2B,aAExBxa,KAAK8Z,iBAAiB/gB,EAAO+Z,GAC7B9S,KAAKiT,SAAL,aAAgBF,UAASD,EAAO/Z,MAxcpC,oBA2cE,WACEiH,KAAKiO,MAAMlW,YAAW,KA5c1B,4BA8cE,WACEiI,KAAKiO,MAAMwM,mBAAkB,KA/cjC,wBAkdE,WACEza,KAAKiO,MAAMlW,YAAW,KAnd1B,0BAsdE,WACEiI,KAAKiO,MAAMwM,mBAAkB,KAvdjC,oBA2dE,WAAU,IAAD,OACHC,UAAUC,YACZD,UAAUC,YAAYC,oBACpB,SAACC,GACC,EAAKC,aAAaD,MAEpB,SAACE,GAEC,EAAKC,iBAAiB,EAAK3E,oBAE7B,CAAE4E,oBAAoB,EAAMC,WAAY,MAG1Clb,KAAKgb,iBAAiBhb,KAAKqW,oBAxejC,0BA4eE,SAAawE,GACX7a,KAAKqW,iBAAiBV,cAAgBkF,EAASM,OAAOC,UACtDpb,KAAKqW,iBAAiBX,aAAemF,EAASM,OAAOE,SACrDrb,KAAK0Y,yCA/eT,kDAkfE,WAAwC,IAAD,OAErC1Y,KAAKsb,eACHtb,KAAKqW,iBAAiBX,aACtB1V,KAAKqW,iBAAiBV,eACtB17B,MACA,SAAC8b,GACC,IAAM+d,EAAM/d,EACZ,EAAKsgB,iBAAiBT,SAAW9B,EAAIyH,QAAQC,eAC7C,EAAKnF,iBAAiBR,UAAY/B,EAAIyH,QAAQx3B,MAC9C,EAAKsyB,iBAAiBP,YAAchC,EAAIyH,QAAQE,QAChD,EAAKpF,iBAAiBN,QAAUjC,EAAIyH,QAAQG,SAC5C,EAAKrF,iBAAiBL,YAAclC,EAAI6H,aACxC,EAAK1I,SAAS,CACZ2I,SAAU9H,EAAI6H,eAEhB,EAAKX,iBAAiB,EAAK3E,qBAE7B,SAAC9xB,GAEC,EAAKy2B,iBAAiB,EAAK3E,uBAtgBnC,oBAojBE,WAAU,IAAD,IAEHwF,EAFG,OACP,EAA+B7b,KAAKjc,MAApC,EAAQ6zB,WAAR,EAAoB3pB,OAEpB4tB,EACE7b,KAAKiO,MAAM+L,2BACXha,KAAKiO,MAAM+L,0BAA0B8B,YACjClnB,KAAKC,MAAL,UAAWmL,KAAKiO,aAAhB,iBAAW,EAAY+L,iCAAvB,aAAW,EAAuC8B,aAClD,GAEN,OACE,mCACE,uBAAK9H,UAAU,gBAAf,UACE,sBAAKA,UAAU,iBAAf,SACE,sBAAKA,UAAU,YAAf,SACE,uBAAKA,UAAU,MAAf,UACE,sBAAKA,UAAU,WAAf,SACE,sBAAKA,UAAU,iBAAf,SACE,sBAAKI,IAAK2H,SAGd,sBAAK/H,UAAU,yBAAf,SACE,sBAAKG,MAAM,uBAAX,SACE,gCACE,oBAAGA,MAAM,iBAAiB,cAAY,SADxC,8BAE2B,IACzB,oBAAGA,MAAM,qBAAqB,cAAY,SAH5C,0BAQJ,sBAAKH,UAAU,uBAAf,SACE,uBAAKA,UAAU,sCAAf,UACE,sBAAKG,MAAM,GAAGC,IAAK4H,KACnB,sBAAK7H,MAAM,GAAGC,IAAK6H,iBAO5Bjc,KAAKjc,MAAM8yB,kBACV,gBAAC,SAAD,CACE5B,OAAO,uBACPtB,QAAS3T,KAAKjc,MAAM8yB,iBACpB3B,OAAQ,kBAAM,EAAKjC,SAAS,CAAE4D,kBAAkB,KAHlD,UAKE,sBAAK7C,UAAU,UAAf,SACE,uBAAKA,UAAU,UAAf,UACE,wBAAOkI,QAAQ,cAAf,iCACA,eAAC,aAAD,CACEC,GAAG,cACHpjB,MAAOiH,KAAKjc,MAAMqyB,YAClBxB,SAAU5U,KAAKmW,+BAIrB,sBAAKnC,UAAU,SAAf,SACE,eAAC,SAAD,CACEA,UAAU,WACVmB,MAAM,SACNJ,QAAS/U,KAAKuW,yBAMmB,MAAxCvW,KAAKiO,MAAM+L,2BACyC,OAArDha,KAAKiO,MAAM+L,0BAA0BzjB,aACnC,uBAAKyd,UAAU,YAAf,UACyD,MAArDhU,KAAKiO,MAAM+L,0BAA0B3vB,gBACvC,EACE,wBACE+xB,UAAQ,EACRC,UAAQ,EACRjI,IAAKpU,KAAKiO,MAAM+L,0BAA0B3vB,aAC1C8xB,GAAG,UACHnH,QAAM,IAGR,GAIA,MADAhV,KAAKiO,MAAM+L,0BAA0BsC,sBAEvC,EACE,uBAAKtH,OAAQhV,KAAKjc,MAAM+yB,MAAOqF,GAAG,UAAUnI,UAAU,QAAtD,UACE,uBACEe,QAAS,WACP,EAAK9B,SAAS,CAAE6D,OAAO,KAEzB9C,UAAU,kBAJZ,kBAQA,sBACEA,UAAU,gBACVI,IACEpU,KAAKiO,MAAM+L,0BAA0BsC,mBAEvCH,GAAG,UAEL,sBAAKA,GAAG,eAGV,GAGF,uBAAKnI,UAAU,uBAAf,UACE,sBAAKA,UAAU,6BAAf,SACE,sBAAKG,MAAM,GAAGC,IAAKmI,OAGrB,sBAAKvI,UAAU,uBAAf,SACE,qBAAIA,UAAU,eAAd,SACGhU,KAAKiO,MAAM+L,0BAA0B1jB,oBAI1C,sBAAK0d,UAAU,cAAf,SACsD,MAAnDhU,KAAKiO,MAAM+L,0BAA0BhC,YACa,KAAnDhY,KAAKiO,MAAM+L,0BAA0BhC,WACnC,uBAAKhE,UAAU,cAAf,cAEE,uBAAMA,UAAU,SAASwI,IAAE,EAA3B,kFAFF,OASAxc,KAAKjc,MAAMu0B,oBAKjB,sBAAKtE,UAAU,oBAAf,SACE,sBAAKA,UAAU,cAAf,SACE,uBAAKA,UAAU,MAAf,UACE,sBAAKA,UAAU,4CAAf,SACE,uBAAKA,UAAU,iBAAf,UACE,sBACEI,IACEpU,KAAKiO,MAAM+L,0BAA0B5vB,eAGzC,8BACG4V,KAAKiO,MAAM+L,0BAA0BjwB,cAGxC,wBAEA,uBAAKiqB,UAAU,eAAf,UACE,sBAAKA,UAAU,WAAf,SAEI,MADDhU,KAAKiO,MAAM+L,0BAA0ByC,YAGpC,KADFzc,KAAKiO,MAAM+L,0BAA0ByC,WAEnC,wBACEzI,UAAU,WACVe,QAAS,kBAAM,EAAK/c,cAFtB,UAIE,oBACEgc,UAAU,mBACV,cAAY,SACR,IAPR,cAUE,OAGN,sBAAKA,UAAU,wBAAf,SAEI,MADDhU,KAAKiO,MAAM+L,0BAA0B0C,UAGpC,KADF1c,KAAKiO,MAAM+L,0BAA0B0C,SAEnC,wBACE1I,UAAU,WACVe,QAAS,kBACP,EAAK9B,SAAS,CACZgE,WAAY,EAAKlzB,MAAMkzB,aAJ7B,UAQE,oBACEjD,UAAU,aACV,cAAY,SAVhB,cAaGhU,KAAKiO,MAAM0O,QACZ3c,KAAKiO,MAAM0O,OAAOpC,cACdva,KAAKiO,MAAM0O,OAAOpC,cAClBva,KAAKiO,MAAM+L,0BACRO,cAjBT,IAmBGva,KAAKiO,MAAM0O,QACZ3c,KAAKiO,MAAM0O,OAAOC,YACd5c,KAAKiO,MAAM0O,OAAOC,YAEA,MADlB5c,KAAKiO,MAAM+L,0BACR4C,YACH,EACA5c,KAAKiO,MAAM+L,0BACR4C,YA1BT,OA6BE,OAEN,sBAAK5I,UAAU,wBAAf,SAEI,MADDhU,KAAKiO,MAAM+L,0BAA0B6C,SAGpC,KADF7c,KAAKiO,MAAM+L,0BAA0B6C,QAEnC,wBACE7I,UAAU,WACVe,QAAS,kBACP,EAAK9B,SAAS,CACZiE,UAAW,EAAKnzB,MAAMmzB,YAJ5B,UAQE,oBACElD,UAAU,cACV,cAAY,SAVhB,WAcE,UAIR,sBAAKA,UAAU,GAAf,SACGhU,KAAKjc,MAAMkzB,UACV,sBAAKjD,UAAU,gBAAf,SAEE,GADChU,KAAKiO,MAAM+L,0BAA0B8C,QAEpC,eAAC,UAAD,CACEC,QAAQ,EACRhkB,MAAOiH,KAAKjc,MAAMgK,OAClB6mB,SAAU,SAACJ,GAAD,OACR,EAAKhX,aACH,EAAKyQ,MAAM+L,0BACRnwB,UACH,EAAKokB,MAAM+L,0BACR5C,eACH5C,MAKN,eAAC,UAAD,CACEuI,QAAQ,EACRC,UAAQ,EACRjkB,MACEiH,KAAKiO,MAAM+L,0BACRO,cAEL3F,SAAU,SAACJ,GAAD,OACR,EAAKhX,aACH,EAAKyQ,MAAM+L,0BACRnwB,UACH,EAAKokB,MAAM+L,0BACR5C,eACH5C,QAMR,OAGN,sBAAKR,UAAU,kBAgBf,+BACGhU,KAAKjc,MAAMmzB,SACV,uBAAKlD,UAAU,eAAf,UACE,sBAAKA,UAAU,qBAAf,SACE,eAACiJ,GAAA,EAAD,CACEhT,IACEjK,KAAKiO,MAAM+L,0BACRkD,SAELC,MACEnd,KAAKiO,MAAM+L,0BACRkD,SAELlJ,UAAU,mCATZ,SAWE,eAACoJ,GAAA,EAAD,CAAcC,KAAM,GAAIC,OAAK,QAGjC,sBAAKtJ,UAAU,qBAAf,SACE,eAACuJ,GAAA,EAAD,CACEtT,IACEjK,KAAKiO,MAAM+L,0BACRkD,SAELC,MACEnd,KAAKiO,MAAM+L,0BACRkD,SAELlJ,UAAU,mCATZ,SAWE,eAACwJ,GAAA,EAAD,CAAaH,KAAM,GAAIC,OAAK,QAGhC,sBAAKtJ,UAAU,qBAAf,SACE,eAACyJ,GAAA,EAAD,CACExT,IACEjK,KAAKiO,MAAM+L,0BACRkD,SAELC,MACEnd,KAAKiO,MAAM+L,0BACRkD,SAELlJ,UAAU,mCATZ,SAWE,eAAC0J,GAAA,EAAD,CAAcL,KAAM,GAAIC,OAAK,QAGjC,sBAAKtJ,UAAU,qBAAf,SACE,eAAC2J,GAAA,EAAD,CACE1T,IACEjK,KAAKiO,MAAM+L,0BACRkD,SAELC,MACEnd,KAAKiO,MAAM+L,0BACRkD,SAELlJ,UAAU,mCATZ,SAWE,eAAC4J,GAAA,EAAD,CAAcP,KAAM,GAAIC,OAAK,QAGjC,sBAAKtJ,UAAU,qBAAf,SACE,eAAC6J,GAAA,EAAD,CACE5T,IACEjK,KAAKiO,MAAM+L,0BACRkD,SAELC,MACEnd,KAAKiO,MAAM+L,0BACRkD,SAELlJ,UAAU,mCATZ,SAWE,eAAC8J,GAAA,EAAD,CAAWT,KAAM,GAAIC,OAAK,WAI9B,OAGN,+BACGtd,KAAKjc,MAAM8zB,YACV,sBAAK7D,UAAU,eAAf,SACE,uBAAMA,UAAU,aAAhB,SAC2C,MAAxChU,KAAKiO,MAAM+L,2BAEM,MADlBha,KAAKiO,MAAM+L,0BACR8B,YACD,qCACE,uBAAM9H,UAAU,aAAhB,SACGT,OAAO0F,KAAK4C,GAAOh0B,KAAI,SAACyJ,GACvB,OAAQA,GACN,IAAK,WACH,OACE,uBAAM0iB,UAAU,aAAhB,SACE,oBACEmD,KAAM0E,EAAMvqB,GACZuhB,OAAO,SAFT,SAIE,eAACuK,GAAA,EAAD,CACEC,KAAM,GACNC,OAAK,QAMf,IAAK,YACH,OACE,uBAAMtJ,UAAU,aAAhB,SACE,oBACEmD,KAAM0E,EAAMvqB,GACZuhB,OAAO,SAFT,SAIE,sBACEzH,MAAM,OACNC,OAAO,OACP+I,ICj/BrC,myDDu/B2B,IAAK,WACH,OACE,uBAAMJ,UAAU,aAAhB,SACE,oBACEmD,KAAM0E,EAAMvqB,GACZuhB,OAAO,SAFT,SAIE,sBACEzH,MAAM,OACNC,OAAO,OACP+I,IEjgCrC,2+BFugC2B,IAAK,UACH,OACE,uBAAMJ,UAAU,aAAhB,SACE,oBACEmD,KAAM0E,EAAMvqB,GACZuhB,OAAO,SAFT,SAIE,sBACEzH,MAAM,OACNC,OAAO,OACP+I,IAAKoJ,WAMf,IAAK,YACH,OACE,uBAAMxJ,UAAU,aAAhB,SACE,oBACEmD,KAAM0E,EAAMvqB,GACZuhB,OAAO,SAFT,SAIE,sBACEzH,MAAM,OACNC,OAAO,OACP+I,IGjiCrC,+hFHuiC2B,QACE,OACE,uBAAMJ,UAAU,aAAhB,SACE,oBACEmD,KAAM0E,EAAMvqB,GACZuhB,OAAO,SAFT,SAIE,sBACEzH,MAAM,OACNC,OAAO,OACP+I,IIjjCrC,mhCJ4jCmB,OAIJ,YAKV,sBAAKJ,UAAU,6BAAf,SACE,yBAAOA,UAAU,qCAAjB,UACE,sBAAKA,UAAU,YAAf,SACE,uBAAKA,UAAU,cAAf,UACE,qBACEmD,KAAK,0CACLtE,OAAO,SAFT,UAIE,sBAAKuB,IAAI,yDACT,gDAEF,qBACE+C,KAAK,8CACLtE,OAAO,SAFT,UAIE,sBAAKuB,IAAI,0DACT,iDAEF,qBACE+C,KAAK,qEACLtE,OAAO,SAFT,UAIE,sBAAKuB,IAAI,yDACT,gDAEF,qBACE+C,KAAK,0CACLtE,OAAO,SAFT,UAIE,sBAAKuB,IAAI,0DACT,+CAEF,qBACE+C,KAAK,wFACLtE,OAAO,SAFT,UAIE,sBAAKuB,IAAI,0DACT,gDAEF,qBACE+C,KAAK,qCACLtE,OAAO,SAFT,UAIE,sBAAKuB,IAAI,yDACT,oDAIN,sBAAKJ,UAAU,eACdhU,KAAKiO,MAAM+L,2BACZha,KAAKiO,MAAM+L,0BACRzvB,sBACHwzB,MAAMC,QACJhe,KAAKiO,MAAM+L,0BACRzvB,sBAEDyV,KAAKiO,MAAM+L,0BAA0BzvB,qBAAqB1C,KACxD,SAACyJ,EAAG2sB,GACF,MAAc,YAAV3sB,EAAE4sB,IAEF,iCACE,gCACE,qBAAIlK,UAAU,iBAAd,SACE,6BAAI1iB,EAAE4sB,QAER,8BACE,6BACE,qBACEjK,MAAO,CACL/H,MAAO,MACPnB,SAAU,QAEZoM,KAAM7lB,EAAE6sB,MACRtL,OAAO,SACPuL,IAAI,sBAPN,UASG,IACA9sB,EAAE6sB,iBAjBDF,GA0BZ,iCACE,gCACE,qBAAIjK,UAAU,iBAAd,SACE,6BAAI1iB,EAAE4sB,QAER,8BACE,6BAAI5sB,EAAE6sB,cANAF,MAcpB,iBAOd,eAAC,SAAD,CACEhJ,OAAO,8BACPqE,OAAK,EACL+E,iBAAiB,EACjB1K,QAAS3T,KAAKiO,MAAMqQ,mBACpBtK,UAAU,QACVkB,OAAQlV,KAAKsY,eANf,SAQE,uBAAM/D,SAAUvU,KAAKoY,eAArB,SACE,uBAAKpE,UAAU,MAAf,UACE,uBAAKA,UAAU,gBAAf,UACE,eAACuK,GAAA,EAAD,CACEpC,GAAG,iBACHkB,KAAK,QACLzI,SAAU5U,KAAKqY,cACfmG,QAAQ,WACR1L,KAAK,eACL/Z,MAAOiH,KAAKjc,MAAMyzB,aAClBxD,UAAU,YACVmB,MAAM,kBAE+B,KAAtCnV,KAAKjc,MAAM+tB,UAAU0F,aACpB,sBAAKxD,UAAU,QAAf,SACGhU,KAAKjc,MAAM+tB,UAAU0F,eAGxB,MAIJ,uBAAKxD,UAAU,gBAAf,UACE,eAACuK,GAAA,EAAD,CACEpC,GAAG,iBACHkB,KAAK,QACLzI,SAAU5U,KAAKqY,cACfmG,QAAQ,WACR1L,KAAK,QACL/Z,MAAOiH,KAAKjc,MAAM0zB,MAClBzD,UAAU,YACVmB,MAAM,WAEwB,KAA/BnV,KAAKjc,MAAM+tB,UAAU2F,MACpB,sBAAKzD,UAAU,QAAf,SACGhU,KAAKjc,MAAM+tB,UAAU2F,QAGxB,MAIJ,uBAAKzD,UAAU,gBAAf,UACE,eAACuK,GAAA,EAAD,CACEpC,GAAG,iBACHkB,KAAK,QACLzI,SAAU5U,KAAKqY,cACfmG,QAAQ,WACR1L,KAAK,QACL/Z,MAAOiH,KAAKjc,MAAMk0B,MAClBjE,UAAU,YACVmB,MAAM,mBAEwB,KAA/BnV,KAAKjc,MAAM+tB,UAAUmG,MACpB,sBAAKjE,UAAU,QAAf,SACGhU,KAAKjc,MAAM+tB,UAAUmG,QAGxB,MAIJ,uBAAKjE,UAAU,gBAAf,UACE,eAACuK,GAAA,EAAD,CACEpC,GAAG,iBACHkB,KAAK,QACLzI,SAAU5U,KAAKqY,cACfmG,QAAQ,WACR1L,KAAK,gBACL/Z,MAAOiH,KAAKjc,MAAMg0B,cAClB/D,UAAU,YACVmB,MAAM,oBAEgC,KAAvCnV,KAAKjc,MAAM+tB,UAAUiG,cACpB,sBAAK/D,UAAU,QAAf,SACGhU,KAAKjc,MAAM+tB,UAAUiG,gBAGxB,MAIJ,uBAAK/D,UAAU,gBAAf,UACE,eAACuK,GAAA,EAAD,CACEpC,GAAG,iBACHkB,KAAK,QACLzI,SAAU5U,KAAKqY,cACfmG,QAAQ,WACR1L,KAAK,gBACL/Z,MAAOiH,KAAKjc,MAAM+zB,cAClB9D,UAAU,YACVmB,MAAM,oBAEgC,KAAvCnV,KAAKjc,MAAM+tB,UAAUgG,cACpB,sBAAK9D,UAAU,QAAf,SACGhU,KAAKjc,MAAM+tB,UAAUgG,gBAGxB,MAIJ,uBAAK9D,UAAU,gBAAf,UACE,eAACuK,GAAA,EAAD,CACEpC,GAAG,iBACHkB,KAAK,QACLzI,SAAU5U,KAAKqY,cACfmG,QAAQ,WACR1L,KAAK,cACL/Z,MAAOiH,KAAKjc,MAAMo0B,YAClBnE,UAAU,YACVmB,MAAM,kBAE8B,KAArCnV,KAAKjc,MAAM+tB,UAAUqG,YACpB,sBAAKnE,UAAU,QAAf,SACGhU,KAAKjc,MAAM+tB,UAAUqG,cAGxB,MAGJ,uBAAKnE,UAAU,gBAAf,UACE,sBAAKA,UAAU,OAAf,mCAEA,uBAAKA,UAAU,OAAf,UACE,eAAC,cAAD,CACElB,KAAK,UACL2L,KAAK,QACLxU,IACE9S,kCAGFunB,MAAM,EACNC,SAAU3e,KAAKyY,aACfmG,QAAS5e,KAAK6e,aACdC,OAAO,YAGR9e,KAAKjc,MAAMm0B,QACV,sBACElE,UAAU,gCACVC,MAAO,CACL0F,QAAS,QACToF,OAAQ,kBAJZ,SAOE,+BACE,sBACEC,IAAI,WACJj0B,KAAK,eACLqpB,IAAKpU,KAAKjc,MAAMm0B,QAChB9M,MAAM,YAIV,KAE8B,OAAjCpL,KAAKjc,MAAM+tB,UAAUoG,QACpB,sBAAKlE,UAAU,QAAf,SACGhU,KAAKjc,MAAM+tB,UAAUoG,UAEtB,WAIR,sBAAKlE,UAAU,6BAAf,SACE,eAAC,SAAD,CAAQmB,MAAM,SAASC,KAAK,4BAOtC,sBAAKjB,MAAM,qBAAX,SACE,sBAAKH,UAAU,4CAAf,SACE,sBAAKA,UAAU,WAAf,SACE,uBAAKA,UAAU,8BAAf,WAGE,KAF0C,MAAxChU,KAAKiO,MAAM+L,2BACXha,KAAKiO,MAAM+L,0BAA0BrrB,WAErC,wBACEytB,UAAQ,EACRC,UAAQ,EACRjI,IAAKpU,KAAKiO,MAAM+L,0BAA0BrrB,UAC1CwtB,GAAG,UACHnH,QAAM,IAGR,GAGF,sBAAKhB,UAAU,6BAAf,SAC2C,MAAxChU,KAAKiO,MAAM+L,0BACV,uBAAKhG,UAAU,0BAAf,UACE,uBAAKA,UAAU,cAAf,UACG,IACD,sBAAKI,IAAK6K,GAAUjL,UAAU,QAEhC,sBAAKA,UAAU,iCAAf,SACE,qBAAIA,UAAU,aAAd,SAEIhU,KAAKiO,MAAM+L,0BACR1jB,oBAIT,sBAAK0d,UAAU,iCAAf,SACE,yBACE/vB,KAAK,SACL+vB,UAAU,wBACVe,QAAS,kBAAM,EAAK/c,cAHtB,2BAUJ,cASd,eAAC,SAAD,CACEid,OAAO,gBACPqE,OAAK,EACL+E,iBAAiB,EACjB1K,QAAS3T,KAAKiO,MAAMiR,mBACpBlL,UAAU,QACVkB,OAAQlV,KAAKkV,OANf,SAQE,uBAAMX,SAAUvU,KAAKsS,WAArB,SACE,uBAAK0B,UAAU,MAAf,UACE,uBAAKA,UAAU,gBAAf,UACE,eAACuK,GAAA,EAAD,CACEpC,GAAG,iBACHkB,KAAK,QACLzI,SAAU5U,KAAKqS,aACfmM,QAAQ,WACR1L,KAAK,OACL/Z,MAAOiH,KAAKjc,MAAMwzB,KAClBvD,UAAU,YACVmB,MAAM,UAEuB,KAA9BnV,KAAKjc,MAAM+tB,UAAUyF,KACpB,sBAAKvD,UAAU,QAAf,SAAwBhU,KAAKjc,MAAM+tB,UAAUyF,OAE7C,MAIJ,uBAAKvD,UAAU,gBAAf,UACE,eAACuK,GAAA,EAAD,CACEpC,GAAG,iBACHkB,KAAK,QACLzI,SAAU5U,KAAKqS,aACfmM,QAAQ,WACR1L,KAAK,QACL/Z,MAAOiH,KAAKjc,MAAM0zB,MAClBzD,UAAU,YACVmB,MAAM,WAEwB,KAA/BnV,KAAKjc,MAAM+tB,UAAU2F,MACpB,sBAAKzD,UAAU,QAAf,SAAwBhU,KAAKjc,MAAM+tB,UAAU2F,QAE7C,MAGJ,uBAAKzD,UAAU,gBAAf,UACE,eAACuK,GAAA,EAAD,CACEpC,GAAG,iBACHkB,KAAK,QACLzI,SAAU5U,KAAKqS,aACfmM,QAAQ,WACR1L,KAAK,WACL/Z,MAAOiH,KAAKjc,MAAMqE,SAClB4rB,UAAU,YACVmB,MAAM,mBAE2B,KAAlCnV,KAAKjc,MAAM+tB,UAAU1pB,SACpB,sBAAK4rB,UAAU,QAAf,SAAwBhU,KAAKjc,MAAM+tB,UAAU1pB,WAE7C,MAGJ,uBAAK4rB,UAAU,gBAAf,UACE,eAACuK,GAAA,EAAD,CACEpC,GAAG,iBACHkB,KAAK,QACLzI,SAAU5U,KAAKqS,aACfmM,QAAQ,WACR1L,KAAK,eACL/Z,MAAOiH,KAAKjc,MAAM2zB,aAClB1D,UAAU,YACVmB,MAAM,cAE+B,KAAtCnV,KAAKjc,MAAM+tB,UAAU4F,aACpB,sBAAK1D,UAAU,QAAf,SACGhU,KAAKjc,MAAM+tB,UAAU4F,eAGxB,MAGJ,sBAAK1D,UAAU,6BAAf,SACE,eAAC,SAAD,CAAQmB,MAAM,SAASC,KAAK,yBAMpC,sBAAKpB,UAAU,UAAf,SAKE,sBAAKA,UAAU,aAAf,SACE,uBAAKA,UAAU,+BAAf,UACE,sBAAKA,UAAU,uBAAf,wEAGA,uBAAKA,UAAU,uBAAf,kCACwB,IACtB,oBAAGmD,KAAK,wBAAwBtE,OAAO,SAASmB,UAAU,GAA1D,uDAr9ClB,GAA2CqB,aAygD5BC,gBAvCS,SAACvxB,GAIvB,OADAye,QAAQC,IAAI,eAAgB1e,EAAMo7B,sBAAsBC,SACjD,CACLzC,OAAQ54B,EAAMo7B,sBAAsBpxB,OACpCisB,2BACGj2B,EAAMo7B,sBAAsB96B,OAC3BN,EAAMo7B,sBAAsB96B,MAAMmN,QAAU,EAC1CzN,EAAMo7B,sBAAsB96B,MAAM,GAClC,KACN66B,mBAAoBn7B,EAAMo7B,sBAAsB3xB,mBAChD8wB,mBAAoBv6B,EAAMo7B,sBAAsB1xB,mBAChD4xB,aACGt7B,EAAMo7B,sBAAsBC,SAC3Br7B,EAAMo7B,sBAAsBC,QAAQ5tB,QAAU,EAC5CzN,EAAMo7B,sBAAsBC,QAAQ,GACpC,SAIiB,SAAC3nB,GAC1B,MAAO,CACL6F,cAAe,SAACgiB,GAAD,OACb7nB,EAAS0Q,GAA6B7K,cAAcgiB,KACtD/hB,eAAgB,SAAC5P,GAAD,OACd8J,EAAS0Q,GAA6B5K,eAAe5P,KACvD8P,eAAgB,SAAC5P,GAAD,OACd4J,EAAS0Q,GAA6B1K,eAAe5P,KACvD2P,aAAc,SAAC+hB,GAAD,OACZ9nB,EAAS0Q,GAA6B3K,aAAa+hB,KACrD9E,kBAAmB,SAACt2B,GAAD,OACjBsT,EAAS0Q,GAA6BC,mBAAmBjkB,KAC3D4T,WAAY,SAAC5T,GAAD,OACVsT,EAAS0Q,GAA6BpQ,WAAW5T,KACnDq7B,cAAe,SAACH,GAAD,OACb5nB,EAAS0Q,GAA6BqX,cAAcH,QAG3C/J,CAGbY,IKhiDWuJ,I,OAAb,kDACE,WAAYxR,GAAQ,IAAD,8BACjB,cAAMA,IACDlqB,MAAQ,CACXK,SAAS,EACTs7B,aAAc,EACdC,KAAM,GALS,EADrB,qDAUE,WACE,IAAMC,EAAY,IAAIjH,gBAAgB1jB,OAAOC,SAAS0jB,QAC3CgH,EAAU/G,IAAI,OACzB7Y,KAAKiO,MAAM3Q,cAAc,CAAEI,IAAKkiB,MAbpC,gCAgBE,SAAmBC,GACjB,GACEA,EAAU7F,4BACVha,KAAKiO,MAAM+L,0BAEcha,KAAKiO,MAAtB6R,eArBd,oBAyBE,WACE,IAAQ9F,EAA8Bha,KAAKiO,MAAnC+L,0BAIR,OAHAxX,QAAQC,IAAI,6BAA8BuX,GAGrCA,EAaH,uBAAKhG,UAAU,wBAAf,UACE,sBAAKA,UAAU,oBAAf,SACE,sBAAKA,UAAU,YAAf,SACE,uBAAKA,UAAU,MAAf,UACE,sBAAKA,UAAU,WAAf,SACE,sBAAKA,UAAU,iBAAf,SACE,sBAAKI,IAAK2H,SAGd,sBAAK/H,UAAU,yBAAf,SACE,sBAAKA,UAAU,uBAAf,SACE,gCACE,oBAAGG,MAAM,iBAAiB,cAAY,SADxC,6BAE2B,IACzB,oBAAGA,MAAM,qBAAqB,cAAY,SAH5C,0BAQJ,sBAAKH,UAAU,uBAAf,SACE,uBAAKA,UAAU,sCAAf,UACE,sBAAKG,MAAM,GAAGC,IAAK4H,KACnB,sBAAK7H,MAAM,GAAGC,IAAK6H,iBAM7B,uBAAKjI,UAAU,2BAAf,UACE,sBAAKA,UAAU,sBAAf,SACE,sBAAKA,UAAU,aAAf,SACE,sBAAKA,UAAU,SAAf,SACE,8DAKN,sBACEmI,GAAG,SACHnI,UAAU,+DAFZ,SAIE,sBAAKA,UAAU,iBAAf,SACE,sBACEA,UAAU,gBACVI,IAAK4F,EAA0B+F,aAC/Bf,IAAI,gBAIV,sBAAKhL,UAAU,gBAAf,SACE,sBAAKA,UAAU,uBAAf,SACE,oBAAGC,MAAO,CAAEhJ,OAAQ,UAApB,SACG+O,EAA0BjwB,kBAIjC,sBAAKiqB,UAAU,UAAf,SACE,uBAAKA,UAAU,aAAf,UACE,yBAAOA,UAAU,WAAjB,UACE,gCACE,qBAAIC,MAAO,CAAE7I,MAAO,OAApB,SACE,uDAEF,8BAAK4O,EAA0BxC,kBAEjC,gCACE,8BACE,oDAEF,8BAAKwC,EAA0B/B,WAEjC,gCACE,8BACE,wDAEF,8BAAK+B,EAA0BgG,mBAEjC,gCACE,8BACE,gEAEF,8BAAKhG,EAA0BiG,kBAEjC,gCACE,8BACE,+DAEF,8BAAKjG,EAA0B7B,iBAgBjC,gCACE,8BACE,6DAEF,8BACE,qBACEhB,KAAM6C,EAA0BkG,aAChCrN,OAAO,SACPuL,IAAI,sBAHN,uBAKa,YAIjB,gCACE,8BACE,8DAEF,8BAAKpE,EAA0BmG,gBAEjC,gCACE,8BACE,+DAEDnG,EAA0BoG,UACzB,8BAAKpG,EAA0BoG,YAE/B,4DAIN,sBAAKpM,UAAU,wBAAf,SACE,sBAAKA,UAAU,0BAAf,SACE,uBAAKA,UAAU,eAAf,UACE,sBAAKA,UAAU,qBAAf,SACE,eAACiJ,GAAA,EAAD,CACEhT,IAAKjK,KAAKiO,MAAM+L,0BAA0BkD,SAC1CC,MAAOnd,KAAKiO,MAAM+L,0BAA0BkD,SAC5ClJ,UAAU,mCAHZ,SAKE,eAACoJ,GAAA,EAAD,CAAcC,KAAM,GAAIC,OAAK,QAGjC,sBAAKtJ,UAAU,qBAAf,SACE,eAACuJ,GAAA,EAAD,CACEtT,IAAKjK,KAAKiO,MAAM+L,0BAA0BkD,SAC1CC,MAAOnd,KAAKiO,MAAM+L,0BAA0BkD,SAC5ClJ,UAAU,mCAHZ,SAKE,eAACwJ,GAAA,EAAD,CAAaH,KAAM,GAAIC,OAAK,QAGhC,sBAAKtJ,UAAU,qBAAf,SACE,eAACyJ,GAAA,EAAD,CACExT,IAAKjK,KAAKiO,MAAM+L,0BAA0BkD,SAC1CC,MAAOnd,KAAKiO,MAAM+L,0BAA0BkD,SAC5ClJ,UAAU,mCAHZ,SAKE,eAAC0J,GAAA,EAAD,CAAcL,KAAM,GAAIC,OAAK,QAGjC,sBAAKtJ,UAAU,qBAAf,SACE,eAAC2J,GAAA,EAAD,CACE1T,IAAKjK,KAAKiO,MAAM+L,0BAA0BkD,SAC1CC,MAAOnd,KAAKiO,MAAM+L,0BAA0BkD,SAC5ClJ,UAAU,mCAHZ,SAKE,eAAC4J,GAAA,EAAD,CAAcP,KAAM,GAAIC,OAAK,QAGjC,sBAAKtJ,UAAU,qBAAf,SACE,eAAC6J,GAAA,EAAD,CACE5T,IAAKjK,KAAKiO,MAAM+L,0BAA0BkD,SAC1CC,MAAOnd,KAAKiO,MAAM+L,0BAA0BkD,SAC5ClJ,UAAU,mCAHZ,SAKE,eAAC8J,GAAA,EAAD,CAAWT,KAAM,GAAIC,OAAK,0BA9L1C,sBAAKtJ,UAAU,wBAAf,SACE,sBAAKA,UAAU,sBAAf,SACE,yGAlCZ,GAAwBqB,cAyPTC,gBAbS,SAACvxB,GAAW,IAAD,EACjC,MAAO,CACLi2B,0BAAyB,UAAEj2B,EAAMo7B,6BAAR,aAAE,EAA6BtxB,aAIjC,SAAC4J,GAC1B,MAAO,CACL6F,cAAe,SAACgiB,GAAD,OACb7nB,EAAS0Q,GAA6BE,SAASiX,QAItChK,CAA6CmK,IC9Q7C,OAA0B,mC,UCA1B,OAA0B,qCCQnCY,G,kDACJ,WAAYpS,GAAQ,IAAD,8BACjB,cAAMA,IAmKRqS,SAAW,KApKQ,EAmLnBC,aAAe,WACTtrB,OAAOurB,YAAc,GAClB,EAAKz8B,MAAM08B,KACd,EAAKxN,SAAS,CAAEwN,KAAK,IAGnB,EAAK18B,MAAM08B,KACb,EAAKxN,SAAS,CAAEwN,KAAK,KAxLzB,EAAK18B,MAAQ,CACX08B,KAAK,EACLv4B,SAAU,IAGZ,EAAKw4B,WAAa,CAChB,CACEvL,MAAO,YACPC,KAAM,gBACNnL,IAAK,KAEP,CACEkL,MAAO,UACPC,KAAM,aACN/wB,MAAO,CACL,CACE8wB,MAAO,iBACPlL,IAAK,0BACLmL,KAAM,qBAER,CACED,MAAO,cACPlL,IAAK,uBACLmL,KAAM,qBAER,CACED,MAAO,iBACPlL,IAAK,0BACLmL,KAAM,qBAER,CACED,MAAO,wBACPlL,IAAK,iCACLmL,KAAM,qBAER,CACED,MAAO,6BACPlL,IAAK,uBACLmL,KAAM,qBAER,CACED,MAAO,gBACPlL,IAAK,yBACLmL,KAAM,qBAER,CACED,MAAO,gBACPlL,IAAK,yBACLmL,KAAM,qBAER,CACED,MAAO,yBACPlL,IAAK,iCACLmL,KAAM,qBAER,CACED,MAAO,aACPlL,IAAK,sBACLmL,KAAM,uBAIZ,CACED,MAAO,aACPC,KAAM,qBACN/wB,MAAO,CACL,CACE8wB,MAAO,eACPlL,IAAK,2BACLmL,KAAM,uBAIZ,CACED,MAAO,eACPC,KAAM,qBACN/wB,MAAO,CACL,CACE8wB,MAAO,UACPlL,IAAK,wBACLmL,KAAM,qBAER,CACED,MAAO,aACPlL,IAAK,2BACLmL,KAAM,qBAER,CACED,MAAO,SACPlL,IAAK,uBACLmL,KAAM,qBAER,CACED,MAAO,sBACPlL,IAAK,mCACLmL,KAAM,uBAIZ,CACED,MAAO,UACPC,KAAM,kBACN/wB,MAAO,CACL,CACE8wB,MAAO,mBACPlL,IAAK,4BACLmL,KAAM,qBAER,CACED,MAAO,iBACPlL,IAAK,0BACLmL,KAAM,qBAER,CACED,MAAO,mBACPlL,IAAK,4BACLmL,KAAM,qBAER,CACED,MAAO,gBACPlL,IAAK,yBACLmL,KAAM,qBAER,CACED,MAAO,wBACPlL,IAAK,iCACLmL,KAAM,qBAER,CACED,MAAO,uBACPlL,IAAK,+BACLmL,KAAM,qBAER,CACED,MAAO,2BACPlL,IAAK,mCACLmL,KAAM,qBAER,CACED,MAAO,0BACPlL,IAAK,kCACLmL,KAAM,qBAER,CACED,MAAO,wBACPlL,IAAK,iCACLmL,KAAM,qBAER,CACED,MAAO,kBACPlL,IAAK,YACLmL,KAAM,qBAER,CACED,MAAO,uBACPlL,IAAK,+BACLmL,KAAM,wBA9JG,E,qDAsKnB,WACEngB,OAAO0rB,iBAAiB,SAAU3gB,KAAKugB,cACvC,IAAIp1B,EAAS2J,eAAeC,QAAQ,YACpCiL,KAAKiO,MAAM2S,SAASz1B,GACpB6U,KAAKiO,MAAM5S,eAAelQ,GAC1B,IAAI01B,EAAoB/rB,eAAeC,QAAQ,gBAC/CiL,KAAKiT,SAAS,CAAE/qB,SAAU24B,M,kCAG5B,WACE5rB,OAAO6rB,oBAAoB,SAAU,Q,oBAevC,WACE,OACE,uBAAK9M,UAAU,gBAAf,UACE,sBAAKA,UAAU,4BAAf,SACE,qBAAGmD,KAAK,aAAR,UACG,IACD,qBAAInD,UAAU,UAAd,SACE,sBAAKI,IAAK2H,YAIhB,sBAAK/H,UAAU,aAAf,SACE,uBAAKA,UAAU,gCAAf,UACE,wBAAMA,UAAU,yBAAhB,UACG,IADH,YAEYhU,KAAKjc,MAAMmE,SACrB,sBACE82B,IAAI,cACJhL,UAAU,6BACVI,IAAK2M,QAGT,uBAAK/M,UAAU,YAAf,UACE,uBACEA,UAAU,WACVe,QAAS,kBAAO9f,OAAOC,SAAW,YAFpC,UAIE,oBAAG8e,UAAU,eAJf,qBAMA,uBACEA,UAAU,WACVe,QAAS,SAACP,GACR1f,eAAe8P,WAAW,gBAC1B9P,eAAe8P,WAAW,QAC1B9P,eAAe8P,WAAW,YAC1B9P,eAAe8P,WAAW,YAC1B9P,eAAe8P,WAAW,gBAC1B9P,eAAe8P,WAAW,iBAC1B9P,eAAe8P,WAAW,kBAC1B9P,eAAe8P,WAAW,eAC1B9P,eAAe8P,WAAW,8BAC1BK,YAAW,WACThQ,OAAOC,SAAW,WACjB,MAdP,UAiBE,oBAAG8e,UAAU,mBAjBf,2B,GA7NOqB,aAyQNC,gBAjBS,SAACvxB,GACvB,MAAO,CACLi9B,SAAUj9B,EAAM2H,KAAKrH,UAIE,SAACoT,GAC1B,MAAO,CACLmpB,SAAU,SAACz1B,GACTsM,EAAS6N,GAAYC,QAAQpa,KAE/BkQ,eAAgB,SAAClQ,GACfsM,EAAS6N,GAAYjK,eAAelQ,QAK3BmqB,CAA6C+K,IC/QvCY,G,4JACnB,WACE,OACE,uBAAKjN,UAAU,aAAf,UACE,sBAAKA,UAAU,qBAAf,+DAGA,uBAAKA,UAAU,+BAAf,kCACwB,IACtB,oBACEmD,KAAK,wBACLtE,OAAO,SACPmB,UAAU,cAHZ,8C,GAT0BqB,aCK9B6L,I,yDACJ,WAAYjT,GAAQ,IAAD,8BACjB,cAAMA,IACDlqB,MAAQ,CACX08B,KAAK,GAEP,EAAKp8B,MAAQ,CACX,CACE8wB,MAAO,YACPC,KAAM,kBACNnL,IAAK,KAEP,CACEkL,MAAO,UACPC,KAAM,aACN/wB,MAAO,CACL,CACE+wB,KAAM,cACND,MAAO,cACPlL,IAAK,wBAIP,CACEmL,KAAM,eACND,MAAO,iBACPlL,IAAK,2BAGP,CACEmL,KAAM,kBACND,MAAO,kBACPlL,IAAK,4BAIP,CACEkL,MAAO,cACPlL,IAAK,uBACLmL,KAAM,eAER,CACED,MAAO,gBACPlL,IAAK,yBACLmL,KAAM,qBAER,CACED,MAAO,gBACPlL,IAAK,yBACLmL,KAAM,qBAER,CACED,MAAO,yBACPlL,IAAK,iCACLmL,KAAM,qBAER,CACED,MAAO,wBACPlL,IAAK,iCACLmL,KAAM,aAER,CACED,MAAO,aACPlL,IAAK,sBACLmL,KAAM,wBAIZ,CACED,MAAO,eACPC,KAAM,qBACN/wB,MAAO,CACL,CACE8wB,MAAO,UACPlL,IAAK,wBACLmL,KAAM,qBAER,CACED,MAAO,SACPlL,IAAK,uBACLmL,KAAM,qBAER,CACED,MAAO,aACPlL,IAAK,2BACLmL,KAAM,qBAER,CACED,MAAO,sBACPlL,IAAK,mCACLmL,KAAM,uBAIZ,CACED,MAAO,UACPC,KAAM,kBACN/wB,MAAO,CACL,CACE8wB,MAAO,sBACPlL,IAAK,4BACLmL,KAAM,qBAER,CACED,MAAO,iBACPlL,IAAK,0BACLmL,KAAM,qBAER,CACED,MAAO,mBACPlL,IAAK,4BACLmL,KAAM,qBAER,CACED,MAAO,gBACPlL,IAAK,yBACLmL,KAAM,qBAER,CACED,MAAO,wBACPlL,IAAK,iCACLmL,KAAM,qBAER,CACED,MAAO,wBACPlL,IAAK,iCACLmL,KAAM,qBAER,CACED,MAAO,uBACPlL,IAAK,+BACLmL,KAAM,qBAER,CACED,MAAO,2BACPlL,IAAK,mCACLmL,KAAM,qBAER,CACED,MAAO,0BACPlL,IAAK,kCACLmL,KAAM,qBAER,CACED,MAAO,kBACPlL,IAAK,2BACLmL,KAAM,qBAER,CACED,MAAO,uBACPlL,IAAK,+BACLmL,KAAM,wBAtJG,E,0CA6JnB,WACE,OACE,sBAAKpB,UAAS,UAAKhU,KAAKjc,MAAM08B,KAAO,cAAgBtE,GAAG,WAAxD,SACE,eAAC,WAAD,CAASgF,MAAOnhB,KAAKiO,MAAM+S,SAAU3C,iBAAiB,U,GAjKxChJ,cAyLPC,gBAjBS,SAACvxB,GACvB,MAAO,CACL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","file":"static/js/main.7c759f99.chunk.js","sourcesContent":["const reportWebVitals = onPerfEntry => {\n if (onPerfEntry && onPerfEntry instanceof Function) {\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\n getCLS(onPerfEntry);\n getFID(onPerfEntry);\n getFCP(onPerfEntry);\n getLCP(onPerfEntry);\n getTTFB(onPerfEntry);\n });\n }\n};\n\nexport default reportWebVitals;\n","export const CartonConstants = {\r\n CREATE_REQUEST: 'CARTON_CREATE_REQUEST',\r\n CREATE_SUCCESS: 'CARTON_CREATE_SUCCESS',\r\n CREATE_FAILURE: 'CARTON_CREATE_FAILURE',\r\n\r\n UPDATE_REQUEST: 'CARTON_UPDATE_REQUEST',\r\n UPDATE_SUCCESS: 'CARTON_UPDATE_SUCCESS',\r\n UPDATE_FAILURE: 'CARTON_UPDATE_FAILURE',\r\n\r\n GETALL_REQUEST: 'CARTON_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'CARTON_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'CARTON_GETALL_FAILURE',\r\n\r\n GETCARTONDDL_REQUEST: 'CARTON_DDL_REQUEST',\r\n GETCARTONDDL_SUCCESS: 'CARTON_DDL_SUCCESS',\r\n GETCARTONDDL_FAILURE: 'CARTON_DDL_FAILURE',\r\n\r\n GETALL_AVAILABLE_REQUEST: 'CARTON_GETALL_AVAILABLE_REQUEST',\r\n GETALL_AVAILABLE_SUCCESS: 'CARTON_GETALL_AVAILABLE_SUCCESS',\r\n GETALL_AVAILABLE_FAILURE: 'CARTON_GETALL_AVAILABLE_FAILURE',\r\n\r\n DELETE_REQUEST: 'CARTON_DELETE_REQUEST',\r\n DELETE_SUCCESS: 'CARTON_DELETE_SUCCESS',\r\n DELETE_FAILURE: 'CARTON_DELETE_FAILURE',\r\n\r\n ISACTIVE_REQUEST: 'CARTON_ISACTIVE_REQUEST',\r\n ISACTIVE_SUCCESS: 'CARTON_ISACTIVE_SUCCESS',\r\n ISACTIVE_FAILURE: 'CARTON_ISACTIVE_FAILURE',\r\n\r\n DIALOG_REQUEST: 'DIALOG_REQUEST',\r\n\r\n //DIALOGUE_REQUEST:'DIALOGUE_REQUEST',\r\n\r\n LOADING_REQUEST: 'LOADING_REQUEST',\r\n\r\n DIALOG_ISACTIVE_REQUEST: 'DIALOG_ISACTIVE_REQUEST'\r\n};","export const alertConstants = {\r\n SUCCESS: 'ALERT_SUCCESS',\r\n WARNING: 'ALERT_WARNING',\r\n ERROR: 'ALERT_ERROR',\r\n CLEAR: 'ALERT_CLEAR'\r\n};","export const productConstants = {\r\n CREATE_REQUEST: 'PRODUCTS_CREATE_REQUEST',\r\n CREATE_SUCCESS: 'PRODUCTS_CREATE_SUCCESS',\r\n CREATE_FAILURE: 'PRODUCTS_CREATE_FAILURE',\r\n\r\n UPDATE_REQUEST: 'PRODUCTS_UPDATE_REQUEST',\r\n UPDATE_SUCCESS: 'PRODUCTS_UPDATE_SUCCESS',\r\n UPDATE_FAILURE: 'PRODUCTS_UPDATE_FAILURE',\r\n\r\n GETALL_REQUEST: 'PRODUCTS_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'PRODUCTS_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'PRODUCTS_GETALL_FAILURE',\r\n\r\n UPDATE_ID_REQUEST: 'ID_UPDATE_REQUEST',\r\n UPDATE_ID_SUCCESS: 'ID_UPDATE_SUCCESS',\r\n UPDATE_ID_FAILURE: 'ID_UPDATE_FAILURE',\r\n\r\n GET_ID_REQUEST: 'GET_ID_REQUEST',\r\n GET_ID_SUCCESS: 'GET_ID_SUCCESS',\r\n GET_ID_FAILURE: 'GET_ID_FAILURE',\r\n\r\n DELETE_REQUEST: 'PRODUCTS_DELETE_REQUEST',\r\n DELETE_SUCCESS: 'PRODUCTS_DELETE_SUCCESS',\r\n DELETE_FAILURE: 'PRODUCTS_DELETE_FAILURE' ,\r\n\r\n ISACTIVE_REQUEST: 'PRODUCTS_ISACTIVE_REQUEST',\r\n ISACTIVE_SUCCESS: 'PRODUCTS_ISACTIVE_SUCCESS',\r\n ISACTIVE_FAILURE: 'PRODUCTS_ISACTIVE_FAILURE',\r\n \r\n GETPRDCTDDL_REQUEST: 'PRODUCTS_GETPRDCTDDL_REQUEST',\r\n GETPRDCTDDL_SUCCESS: 'PRODUCTS_GETPRDCTDDL_SUCCESS',\r\n GETPRDCTDDL_FAILURE: 'PRODUCTS_GETPRDCTDDL_FAILURE',\r\n\r\n\r\n ADD_MRP_REQUEST: 'ADD_MRP_REQUEST',\r\n ADD_MRP_SUCCESS: 'ADD_MRP_SUCCESS',\r\n ADD_MRP_FAILURE: 'ADD_MRP_FAILURE',\r\n\r\n GET_MRP_REQUEST: 'GET_MRP_REQUEST',\r\n GET_MRP_SUCCESS: 'GET_MRP_SUCCESS',\r\n GET_MRP_FAILURE: 'GET_MRP_FAILURE',\r\n\r\n GET_ProductWarranty_REQUEST: 'GET_ProductWarranty_REQUEST',\r\n GET_ProductWarranty_SUCCESS: 'GET_ProductWarranty_SUCCESS',\r\n GET_ProductWarranty_FAILURE: 'GET_ProductWarranty_FAILURE',\r\n\r\n\r\n\r\n DIALOG_REQUEST:'DIALOG_REQUEST',\r\n\r\n LOADING_REQUEST:'LOADING_REQUEST',\r\n\r\n DIALOG_ISACTIVE_REQUEST:'DIALOG_ISACTIVE_REQUEST',\r\n};","export const userConstants = {\r\n CREATE_REQUEST: 'USERS_CREATE_REQUEST',\r\n CREATE_SUCCESS: 'USERS_CREATE_SUCCESS',\r\n CREATE_FAILURE: 'USERS_CREATE_FAILURE',\r\n\r\n UPDATE_REQUEST: 'USERS_UPDATE_REQUEST',\r\n UPDATE_SUCCESS: 'USERS_UPDATE_SUCCESS',\r\n UPDATE_FAILURE: 'USERS_UPDATE_FAILURE',\r\n\r\n GETALL_REQUEST: 'USERS_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'USERS_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'USERS_GETALL_FAILURE',\r\n\r\n DELETE_REQUEST: 'USERS_DELETE_REQUEST',\r\n DELETE_SUCCESS: 'USERS_DELETE_SUCCESS',\r\n DELETE_FAILURE: 'USERS_DELETE_FAILURE',\r\n\r\n GETROLEDDL_REQUEST: 'ROLE_DDL_REQUEST',\r\n GETROLEDDL_SUCCESS: 'ROLE_DDL_SUCCESS',\r\n GETROLEDDL_FAILURE: 'GETROLEDDL_FAILURE',\r\n\r\n GETWDDL_REQUEST: 'GETWDDL_REQUEST',\r\n GETWDDL_SUCCESS: 'GETWDDL_SUCCESS',\r\n GETWDDL_FAILURE: 'GETWDDL_FAILURE',\r\n \r\n ISACTIVE_REQUEST: 'USER_ISACTIVE_REQUEST',\r\n ISACTIVE_SUCCESS: 'USER_ISACTIVE_SUCCESS',\r\n ISACTIVE_FAILURE: 'USER_ISACTIVE_FAILURE',\r\n\r\n GETEXPORT_REQUEST: 'USER_GETEXPORT_REQUEST',\r\n GETEXPORT_SUCCESS: 'USER_GETEXPORT_SUCCESS',\r\n GETEXPORT_FAILURE: 'USER_GETEXPORT_FAILURE',\r\n \r\n DIALOG_REQUEST:'DIALOG_REQUEST',\r\n\r\n LOADING_REQUEST:'LOADING_REQUEST',\r\n\r\n DIALOG_ISACTIVE_REQUEST:'DIALOG_ISACTIVE_REQUEST'\r\n};","export const roleMasterConstants = {\r\n CREATE_REQUEST: 'ROLE_CREATE_REQUEST',\r\n CREATE_SUCCESS: 'ROLE_CREATE_SUCCESS',\r\n CREATE_FAILURE: 'ROLE_CREATE_FAILURE',\r\n\r\n UPDATE_REQUEST: 'ROLE_UPDATE_REQUEST',\r\n UPDATE_SUCCESS: 'ROLE_UPDATE_SUCCESS',\r\n UPDATE_FAILURE: 'ROLE_UPDATE_FAILURE',\r\n\r\n GETALL_REQUEST: 'ROLE_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'ROLE_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'ROLE_GETALL_FAILURE',\r\n\r\n DELETE_REQUEST: 'ROLE_DELETE_REQUEST',\r\n DELETE_SUCCESS: 'ROLE_DELETE_SUCCESS',\r\n DELETE_FAILURE: 'ROLE_DELETE_FAILURE',\r\n\r\n \r\n ISACTIVE_REQUEST: 'ROLE_ISACTIVE_REQUEST',\r\n ISACTIVE_SUCCESS: 'ROLE_ISACTIVE_SUCCESS',\r\n ISACTIVE_FAILURE: 'ROLE_ISACTIVE_FAILURE',\r\n\r\n DIALOG_REQUEST: 'DIALOG_REQUEST',\r\n\r\n GETROLEDDL_REQUEST: 'ROLE_DDL_REQUEST',\r\n GETROLEDDL_SUCCESS: 'ROLE_DDL_SUCCESS',\r\n GETROLEDDL_FAILURE: 'GETROLEDDL_FAILURE',\r\n\r\n GET_PAGES_REQUEST: 'GET_PAGES_REQUEST',\r\n GET_PAGES_SUCCESS: 'GET_PAGES_SUCCESS',\r\n GET_PAGES_FAILURE: 'GET_PAGES_FAILURE',\r\n\r\n UPDATE_PAGE_STORE:'UPDATE_PAGE_STORE',\r\n\r\n LOADING_REQUEST:'LOADING_REQUEST',\r\n\r\n DIALOG_ISACTIVE_REQUEST:'DIALOG_ISACTIVE_REQUEST'\r\n};","export const dashboardConstants = {\r\n \r\n\r\n GETALL_REQUEST: 'DASHBOARD_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'DASHBOARD_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'DASHBOARD_GETALL_FAILURE',\r\n\r\n LOADING_REQUEST:'LOADING_REQUEST',\r\n\r\n};","export const loginConstants = {\r\n CREATE_REQUEST: \"LOGIN_CREATE_REQUEST\",\r\n CREATE_SUCCESS: \"LOGIN_CREATE_SUCCESS\",\r\n TIMEOUT_SUCCESS: \"LOGIN_TIMEOUT_SUCCESS\",\r\n CREATE_FAILURE: \"LOGIN_CREATE_FAILURE\",\r\n};\r\n","export const menuConstants = {\r\n GETALL_REQUEST: 'MENU_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'MENU_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'MENU_GETALL_FAILURE' \r\n};","export const changePasswordConstants = {\r\n CREATE_REQUEST: 'CHANGEPASSWORD_CREATE_REQUEST',\r\n CREATE_SUCCESS: 'CHANGEPASSWORD_CREATE_SUCCESS',\r\n CREATE_FAILURE: 'CHANGEPASSWORD_CREATE_FAILURE', \r\n \r\n GETALL_REQUEST: 'CHANGEPASSWORD_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'CHANGEPASSWORD_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'CHANGEPASSWORD_GETALL_FAILURE',\r\n\r\n CREATE_FORGOT_REQUEST: 'CHANGEPASSWORD_CREATE_FORGOT_REQUEST',\r\n CREATE_FORGOT_SUCCESS: 'CHANGEPASSWORD_CREATE_FORGET_SUCCESS',\r\n CREATE_FORGOT_FAILURE: 'CHANGEPASSWORD_CREATE_FORGET_FAILURE', \r\n\r\n};","export const mappingRptConstants ={\r\n GETALL_REQUEST: 'MAPPING_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'MAPPING_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'MAPPING_GETALL_FAILURE',\r\n\r\n GETEXPORT_REQUEST: 'MAPPING_GETEXPORT_REQUEST',\r\n GETEXPORT_SUCCESS: 'MAPPING_GETEXPORT_SUCCESS',\r\n GETEXPORT_FAILURE: 'MAPPING_GETEXPORT_FAILURE',\r\n\r\n LOADING_REQUEST: 'LOADING_REQUEST'\r\n}","export const FeedbackRptConstants = {\r\n GETALL_REQUEST: \"FEEDBACK_GETALL_REQUEST\",\r\n GETALL_SUCCESS: \"FEEDBACK_GETALL_SUCCESS\",\r\n GETALL_FAILURE: \"FEEDBACK_GETALL_FAILURE\",\r\n\r\n GETEXPORT_REQUEST: \"FEEDBACK_GETEXPORT_REQUEST\",\r\n GETEXPORT_SUCCESS: \"FEEDBACK_GETEXPORT_SUCCESS\",\r\n GETEXPORT_FAILURE: \"FEEDBACK_GETEXPORT_FAILURE\",\r\n\r\n LOADING_REQUEST: \"LOADING_REQUEST\",\r\n};\r\n","export const mappingConstants = {\r\n CREATE_REQUEST: 'MAPPINGS_CREATE_REQUEST',\r\n CREATE_SUCCESS: 'MAPPINGS_CREATE_SUCCESS',\r\n CREATE_FAILURE: 'MAPPINGS_CREATE_FAILURE',\r\n\r\n UPDATE_REQUEST: 'MAPPINGS_UPDATE_REQUEST',\r\n UPDATE_SUCCESS: 'MAPPINGS_UPDATE_SUCCESS',\r\n UPDATE_FAILURE: 'MAPPINGS_UPDATE_FAILURE',\r\n\r\n GETALL_REQUEST: 'MAPPINGS_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'MAPPINGS_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'MAPPINGS_GETALL_FAILURE',\r\n\r\n DELETE_REQUEST: 'MAPPINGS_DELETE_REQUEST',\r\n DELETE_SUCCESS: 'MAPPINGS_DELETE_SUCCESS',\r\n DELETE_FAILURE: 'MAPPINGS_DELETE_FAILURE',\r\n \r\n GETALL_TONO_REQUEST: 'MAPPING_GETALL_TONO_REQUEST',\r\n GETALL_TONO_SUCCESS: 'MAPPING_GETALL_TONO_SUCCESS',\r\n GETALL_TONO_FAILURE: 'MAPPING_GETALL_TONO_FAILURE',\r\n\r\n \r\n GETALL_AVAILABLE_REQUEST: 'MAPPING_GETALL_AVAILABLE_REQUEST',\r\n GETALL_AVAILABLE_SUCCESS: 'MAPPING_GETALL_AVAILABLE_SUCCESS',\r\n GETALL_AVAILABLE_FAILURE: 'MAPPING_GETALL_AVAILABLE_FAILURE',\r\n\r\n DIALOG_REQUEST:'DIALOG_REQUEST',\r\n\r\n DIALOGUE_REQUEST:'DIALOGUE_REQUEST',\r\n\r\n LOADING_REQUEST:'LOADING_REQUEST'\r\n};","export const issueNoConstants = {\r\n CREATE_REQUEST: 'ISSUE_CREATE_REQUEST',\r\n CREATE_SUCCESS: 'ISSUE_CREATE_SUCCESS',\r\n CREATE_FAILURE: 'ISSUE_CREATE_FAILURE',\r\n\r\n UPDATE_REQUEST: 'ISSUE_UPDATE_REQUEST',\r\n UPDATE_SUCCESS: 'ISSUE_UPDATE_SUCCESS',\r\n UPDATE_FAILURE: 'ISSUE_UPDATE_FAILURE',\r\n\r\n GETALL_REQUEST: 'ISSUE_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'ISSUE_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'ISSUE_GETALL_FAILURE',\r\n\r\n GETALL_FROMNO_REQUEST: 'ISSUE_GETALL_FROMNO_REQUEST',\r\n GETALL_FROMNO_SUCCESS: 'ISSUE_GETALL_FROMNO_SUCCESS',\r\n GETALL_FROMNO_FAILURE: 'ISSUE_GETALL_FROMNO_FAILURE',\r\n\r\n DELETE_REQUEST: 'ISSUE_DELETE_REQUEST',\r\n DELETE_SUCCESS: 'ISSUE_DELETE_SUCCESS',\r\n DELETE_FAILURE: 'ISSUE_DELETE_FAILURE',\r\n \r\n LOADING_REQUEST:'LOADING_REQUEST',\r\n DIALOG_REQUEST:'DIALOG_REQUEST'\r\n};","export const damageConstants = {\r\n CREATE_REQUEST: 'DAMAGE_CREATE_REQUEST',\r\n CREATE_SUCCESS: 'DAMAGE_CREATE_SUCCESS',\r\n CREATE_FAILURE: 'DAMAGE_CREATE_FAILURE',\r\n\r\n UPDATE_REQUEST: 'DAMAGE_UPDATE_REQUEST',\r\n UPDATE_SUCCESS: 'DAMAGE_UPDATE_SUCCESS',\r\n UPDATE_FAILURE: 'DAMAGE_UPDATE_FAILURE',\r\n\r\n GETALL_REQUEST: 'DAMAGE_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'DAMAGE_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'DAMAGE_GETALL_FAILURE',\r\n\r\n DELETE_REQUEST: 'DAMAGE_DELETE_REQUEST',\r\n DELETE_SUCCESS: 'DAMAGE_DELETE_SUCCESS',\r\n DELETE_FAILURE: 'DAMAGE_DELETE_FAILURE',\r\n \r\n DIALOG_REQUEST:'DIALOG_REQUEST',\r\n\r\n LOADING_REQUEST:'LOADING_REQUEST'\r\n};","export const LoyaltySchemeRptConstants ={\r\n GETALL_REQUEST: 'LOYALTYSCHEME_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'LOYALTYSCHEME_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'LOYALTYSCHEME_GETALL_FAILURE',\r\n\r\n GETEXPORT_REQUEST: 'LOYALTYSCHEME_GETEXPORT_REQUEST',\r\n GETEXPORT_SUCCESS: 'LOYALTYSCHEME_GETEXPORT_SUCCESS',\r\n GETEXPORT_FAILURE: 'LOYALTYSCHEME_GETEXPORT_FAILURE',\r\n\r\n LOADING_REQUEST: 'LOADING_REQUEST'\r\n}","export const RedemptionLogRptConstants ={\r\n GETALL_REQUEST: 'REDEMPTIONLOG_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'REDEMPTIONLOG_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'REDEMPTIONLOG_GETALL_FAILURE',\r\n\r\n GETEXPORT_REQUEST: 'REDEMPTIONLOG_GETEXPORT_REQUEST',\r\n GETEXPORT_SUCCESS: 'REDEMPTIONLOG_GETEXPORT_SUCCESS',\r\n GETEXPORT_FAILURE: 'REDEMPTIONLOG_GETEXPORT_FAILURE',\r\n\r\n LOADING_REQUEST: 'LOADING_REQUEST'\r\n}","export const UserloyalityLogRptConstants ={\r\n GETALL_REQUEST: 'USERLOYALITYLOG_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'USERLOYALITYLOG_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'USERLOYALITYLOG_GETALL_FAILURE',\r\n\r\n GETEXPORT_REQUEST: 'USERLOYALITYLOG_GETEXPORT_REQUEST',\r\n GETEXPORT_SUCCESS: 'USERLOYALITYLOG_GETEXPORT_SUCCESS',\r\n GETEXPORT_FAILURE: 'USERLOYALITYLOG_GETEXPORT_FAILURE',\r\n\r\n LOADING_REQUEST: 'LOADING_REQUEST'\r\n}","export const verificationLogConstants ={\r\n GETALL_REQUEST: 'VERIFICATION_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'VERIFICATION_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'VERIFICATION_GETALL_FAILURE',\r\n\r\n GETEXPORT_REQUEST: 'VERIFICATION_GETEXPORT_REQUEST',\r\n GETEXPORT_SUCCESS: 'VERIFICATION_GETEXPORT_SUCCESS',\r\n GETEXPORT_FAILURE: 'VERIFICATION_GETEXPORT_FAILURE',\r\n\r\n LOADING_REQUEST: 'LOADING_REQUEST'\r\n}","export const demappingConstants = {\r\n CREATE_REQUEST: 'DEMAPPINGS_CREATE_REQUEST',\r\n CREATE_SUCCESS: 'DEMAPPINGS_CREATE_SUCCESS',\r\n CREATE_FAILURE: 'DEMAPPINGS_CREATE_FAILURE',\r\n\r\n UPDATE_REQUEST: 'DEMAPPINGS_UPDATE_REQUEST',\r\n UPDATE_SUCCESS: 'DEMAPPINGS_UPDATE_SUCCESS',\r\n UPDATE_FAILURE: 'DEMAPPINGS_UPDATE_FAILURE',\r\n\r\n GETALL_REQUEST: 'DEMAPPINGS_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'DEMAPPINGS_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'DEMAPPINGS_GETALL_FAILURE',\r\n\r\n DELETE_REQUEST: 'DEMAPPINGS_DELETE_REQUEST',\r\n DELETE_SUCCESS: 'DEMAPPINGS_DELETE_SUCCESS',\r\n DELETE_FAILURE: 'DEMAPPINGS_DELETE_FAILURE',\r\n \r\n DIALOG_REQUEST:'DIALOG_REQUEST',\r\n\r\n LOADING_REQUEST:'LOADING_REQUEST'\r\n};","export const productAuthenticationConstants = {\r\n CREATE_REQUEST: 'PRODUCTAUTHENTICATIONS_CREATE_REQUEST',\r\n CREATE_SUCCESS: 'PRODUCTAUTHENTICATIONS_CREATE_SUCCESS',\r\n CREATE_FAILURE: 'PRODUCTAUTHENTICATIONS_CREATE_FAILURE',\r\n\r\n UPDATE_REQUEST: 'PRODUCTAUTHENTICATIONS_UPDATE_REQUEST',\r\n UPDATE_SUCCESS: 'PRODUCTAUTHENTICATIONS_UPDATE_SUCCESS',\r\n UPDATE_FAILURE: 'PRODUCTAUTHENTICATIONS_UPDATE_FAILURE',\r\n\r\n GETALL_REQUEST: 'PRODUCTAUTHENTICATIONS_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'PRODUCTAUTHENTICATIONS_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'PRODUCTAUTHENTICATIONS_GETALL_FAILURE',\r\n\r\n WGETALL_REQUEST: 'WGETALL_REQUEST',\r\n WGETALL_SUCCESS: 'WGETALL_SUCCESS',\r\n WGETALL_FAILURE: 'WGETALL_FAILURE',\r\n\r\n DELETE_REQUEST: 'PRODUCTAUTHENTICATIONS_DELETE_REQUEST',\r\n DELETE_SUCCESS: 'PRODUCTAUTHENTICATIONS_DELETE_SUCCESS',\r\n DELETE_FAILURE: 'PRODUCTAUTHENTICATIONS_DELETE_FAILURE',\r\n\r\n UPDATE_FEEDBACK_REQUEST: 'PRODUCTAUTHENTICATIONS_UPDATE_FEEDBACK_REQUEST',\r\n UPDATE_FEEDBACK_SUCCESS: 'PRODUCTAUTHENTICATIONS_UPDATE_FEEDBACK_SUCCESS',\r\n UPDATE_FEEDBACK_FAILURE: 'PRODUCTAUTHENTICATIONS_UPDATE_FEEDBACK_FAILURE',\r\n\r\n UPDATE_WARRANTY_REQUEST: 'PRODUCTAUTHENTICATIONS_UPDATE_WARRANTY_REQUEST',\r\n UPDATE_WARRANTY_SUCCESS: 'PRODUCTAUTHENTICATIONS_UPDATE_WARRANTY_SUCCESS',\r\n UPDATE_WARRANTY_FAILURE: 'PRODUCTAUTHENTICATIONS_UPDATE_WARRANTY_FAILURE',\r\n\r\n UPDATE_RATING_REQUEST: 'PRODUCTAUTHENTICATIONS_RATING_UPDATE_REQUEST',\r\n UPDATE_RATING_SUCCESS: 'PRODUCTAUTHENTICATIONS_RATING_UPDATE_SUCCESS',\r\n UPDATE_RATING_FAILURE: 'PRODUCTAUTHENTICATIONS_RATING_UPDATE_FAILURE',\r\n\r\n FEEDBACK_DIALOG_REQUEST: 'FEEDBACK_DIALOG_REQUEST',\r\n WARRANTY_DIALOG_REQUEST: 'WARRANTY_DIALOG_REQUEST'\r\n};","export const productConfigurationConstants = {\r\n CREATE_REQUEST: 'CONFIGURATION_CREATE_REQUEST',\r\n CREATE_SUCCESS: 'CONFIGURATION_CREATE_SUCCESS',\r\n CREATE_FAILURE: 'CONFIGURATION_CREATE_FAILURE',\r\n\r\n UPDATE_REQUEST: 'CONFIGURATION_UPDATE_REQUEST',\r\n UPDATE_SUCCESS: 'CONFIGURATION_UPDATE_SUCCESS',\r\n UPDATE_FAILURE: 'CONFIGURATION_UPDATE_FAILURE',\r\n\r\n GETALL_REQUEST: 'CONFIGURATION_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'CONFIGURATION_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'CONFIGURATION_GETALL_FAILURE', \r\n\r\n GETCONFIGDDL_REQUEST: 'CONFIGURATION_GETCMPNYDDL_REQUEST',\r\n GETCONFIGDDL_SUCCESS: 'CONFIGURATION_GETCONFIGDDL_SUCCESS',\r\n GETCONFIGDDL_FAILURE: 'CONFIGURATION_GETCONFIGDDL_FAILURE',\r\n \r\n RESET_REQUEST: 'RESET_REQUEST',\r\n\r\n};","export const companyConstants = {\r\n CREATE_REQUEST: 'COMPANY_CREATE_REQUEST',\r\n CREATE_SUCCESS: 'COMPANY_CREATE_SUCCESS',\r\n CREATE_FAILURE: 'COMPANY_CREATE_FAILURE',\r\n\r\n UPDATE_REQUEST: 'COMPANY_UPDATE_REQUEST',\r\n UPDATE_SUCCESS: 'COMPANY_UPDATE_SUCCESS',\r\n UPDATE_FAILURE: 'COMPANY_UPDATE_FAILURE',\r\n\r\n GETALL_REQUEST: 'COMPANY_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'COMPANY_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'COMPANY_GETALL_FAILURE',\r\n\r\n DELETE_REQUEST: 'COMPANY_DELETE_REQUEST',\r\n DELETE_SUCCESS: 'COMPANY_DELETE_SUCCESS',\r\n DELETE_FAILURE: 'COMPANY_DELETE_FAILURE',\r\n \r\n ISACTIVE_REQUEST: 'COMPANY_REQUEST',\r\n ISACTIVE_SUCCESS: 'COMPANY_ISACTIVE_SUCCESS',\r\n ISACTIVE_FAILURE: 'COMPANY_ISACTIVE_FAILURE',\r\n \r\n GETCMPNYDDL_REQUEST: 'COMPANY_GETCMPNYDDL_REQUEST',\r\n GETCMPNYDDL_SUCCESS: 'COMPANY_GETCMPNYDDL_SUCCESS',\r\n GETCMPNYDDL_FAILURE: 'COMPANY_GETCMPNYDDL_FAILURE',\r\n\r\n DIALOG_REQUEST:'DIALOG_REQUEST',\r\n\r\n LOADING_REQUEST:'LOADING_REQUEST',\r\n\r\n DIALOG_ISACTIVE_REQUEST:'DIALOG_ISACTIVE_REQUEST'\r\n};","export const OrderBookingConstants = {\r\n CREATE_REQUEST: \"ORDERBOOKING_CREATE_REQUEST\",\r\n CREATE_SUCCESS: \"ORDERBOOKING_CREATE_SUCCESS\",\r\n CREATE_FAILURE: \"ORDERBOOKING_CREATE_FAILURE\",\r\n\r\n UPDATE_REQUEST: \"ORDERBOOKING_UPDATE_REQUEST\",\r\n UPDATE_SUCCESS: \"ORDERBOOKING_UPDATE_SUCCESS\",\r\n UPDATE_FAILURE: \"ORDERBOOKING_UPDATE_FAILURE\",\r\n\r\n GETALL_REQUEST: \"ORDERBOOKING_GETALL_REQUEST\",\r\n GETALL_SUCCESS: \"ORDERBOOKING_GETALL_SUCCESS\",\r\n GETALL_FAILURE: \"ORDERBOOKING_GETALL_FAILURE\",\r\n\r\n DELETE_REQUEST: \"ORDERBOOKING_DELETE_REQUEST\",\r\n DELETE_SUCCESS: \"ORDERBOOKING_DELETE_SUCCESS\",\r\n DELETE_FAILURE: \"ORDERBOOKING_DELETE_FAILURE\",\r\n\r\n ISACTIVE_REQUEST: \"ORDERBOOKING_ISACTIVE_REQUEST\",\r\n ISACTIVE_SUCCESS: \"ORDERBOOKING_ISACTIVE_SUCCESS\",\r\n ISACTIVE_FAILURE: \"ORDERBOOKING_ISACTIVE_FAILURE\",\r\n\r\n GETORDERDDL_REQUEST: \"ORDER_DDL_REQUEST\",\r\n GETORDERDDL_SUCCESS: \"ORDER_DDL_SUCCESS\",\r\n GETORDERDDL_FAILURE: \"ORDER_DDL_FAILURE\",\r\n\r\n GETORDERDTL_REQUEST: \"ORDER_DTL_REQUEST\",\r\n GETORDERDTL_SUCCESS: \"ORDER_DTL_SUCCESS\",\r\n GETORDERDTL_FAILURE: \"ORDER_DTL_FAILURE\",\r\n\r\n GETDEALERDDL_REQUEST: \"GETDEALERDDL_REQUEST\",\r\n GETDEALERDDL_SUCCESS: \"GETDEALERDDL_SUCCESS\",\r\n GETDEALERDDL_FAILURE: \"GETDEALERDDL_FAILURE\",\r\n\r\n GETSEARCH_REQUEST: \"GETSEARCH_REQUEST\",\r\n GETSEARCH_SUCCESS: \"GETSEARCH_SUCCESS\",\r\n GETSEARCH_FAILURE: \"GETSEARCH_FAILURE\",\r\n\r\n UPLOAD_SO_REQUEST: \"UPLOAD_SO_REQUEST\",\r\n UPLOAD_SO_SUCCESS: \"UPLOAD_SO_SUCCESS\",\r\n UPLOAD_SO_FAILURE: \"UPLOAD_SO_FAILURE\",\r\n\r\n GET_SO_LOG_REQUEST: \"GET_SO_LOG_REQUEST\",\r\n GET_SO_LOG_SUCCESS: \"GET_SO_LOG_SUCCESS\",\r\n GET_SO_LOG_FAILURE: \"GET_SO_LOG_FAILURE\",\r\n\r\n GETPRODUCTS_REQUEST: \"GETPRODUCTS_REQUEST\",\r\n GETPRODUCTS_SUCCESS: \"GETPRODUCTS_SUCCESS\",\r\n GETPRODUCTS_FAILURE: \"GETPRODUCTS_FAILURE\",\r\n\r\n DIALOG_REQUEST: \"DIALOG_REQUEST\",\r\n\r\n LOADING_REQUEST: \"LOADING_REQUEST\",\r\n\r\n DIALOG_ISACTIVE_REQUEST: \"DIALOG_ISACTIVE_REQUEST\",\r\n};\r\n","export const OrderBookingRptConstants ={\r\n GETALL_REQUEST: 'ORDERBOOKING_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'ORDERBOOKING_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'ORDERBOOKING_GETALL_FAILURE',\r\n\r\n GETEXPORT_REQUEST: 'ORDERBOOKING_GETEXPORT_REQUEST',\r\n GETEXPORT_SUCCESS: 'ORDERBOOKING_GETEXPORT_SUCCESS',\r\n GETEXPORT_FAILURE: 'ORDERBOOKING_GETEXPORT_FAILURE',\r\n\r\n LOADING_REQUEST: 'LOADING_REQU EST'\r\n}","export const SqlEditorConstants = {\r\n RUN_SCRIPT_REQUEST: 'RUN_SCRIPT_REQUEST',\r\n RUN_SCRIPT_SUCCESS: 'RUN_SCRIPT_SUCCESS',\r\n RUN_SCRIPT_FAILURE: 'RUN_SCRIPT_FAILURE',\r\n};","export const DispatchConstants = {\r\n CREATE_REQUEST: \"DISPATCH_CREATE_REQUEST\",\r\n CREATE_SUCCESS: \"DISPATCH_CREATE_SUCCESS\",\r\n CREATE_FAILURE: \"DISPATCH_CREATE_FAILURE\",\r\n\r\n UPDATE_REQUEST: \"DISPATCH_UPDATE_REQUEST\",\r\n UPDATE_SUCCESS: \"DISPATCH_UPDATE_SUCCESS\",\r\n UPDATE_FAILURE: \"DISPATCH_UPDATE_FAILURE\",\r\n\r\n GETALL_REQUEST: \"DISPATCH_GETALL_REQUEST\",\r\n GETALL_SUCCESS: \"DISPATCH_GETALL_SUCCESS\",\r\n GETALL_FAILURE: \"DISPATCH_GETALL_FAILURE\",\r\n\r\n GETDISPATCHDDL_REQUEST: \"DISPATCH_DDL_REQUEST\",\r\n GETDISPATCHDDL_SUCCESS: \"DISPATCH_DDL_SUCCESS\",\r\n GETDISPATCHDDL_FAILURE: \"DISPATCH_DDL_FAILURE\",\r\n\r\n GETALL_AVAILABLE_REQUEST: \"DISPATCH_GETALL_AVAILABLE_REQUEST\",\r\n GETALL_AVAILABLE_SUCCESS: \"DISPATCH_GETALL_AVAILABLE_SUCCESS\",\r\n GETALL_AVAILABLE_FAILURE: \"DISPATCH_GETALL_AVAILABLE_FAILURE\",\r\n\r\n DELETE_REQUEST: \"DISPATCH_DELETE_REQUEST\",\r\n DELETE_SUCCESS: \"DISPATCH_DELETE_SUCCESS\",\r\n DELETE_FAILURE: \"DISPATCH_DELETE_FAILURE\",\r\n\r\n ISACTIVE_REQUEST: \"DISPATCH_ISACTIVE_REQUEST\",\r\n ISACTIVE_SUCCESS: \"DISPATCH_ISACTIVE_SUCCESS\",\r\n ISACTIVE_FAILURE: \"DISPATCH_ISACTIVE_FAILURE\",\r\n\r\n SO_DETAILS_REQUEST: \"SO_DETAILS_REQUEST\",\r\n SO_DETAILS_SUCCESS: \"SO_DETAILS_SUCCESS\",\r\n SO_DETAILS_FAILURE: \"SO_DETAILS_FAILURE\",\r\n\r\n DIALOG_REQUEST: \"DIALOG_REQUEST\",\r\n\r\n //DIALOGUE_REQUEST:'DIALOGUE_REQUEST',\r\n\r\n LOADING_REQUEST: \"LOADING_REQUEST\",\r\n\r\n DIALOG_ISACTIVE_REQUEST: \"DIALOG_ISACTIVE_REQUEST\",\r\n\r\n Warning: \"Warning\",\r\n Alreadypacked: \"Alreadypacked\",\r\n};\r\n","export const dealerConstants = {\r\n CREATE_REQUEST: 'DEALERS_CREATE_REQUEST',\r\n CREATE_SUCCESS: 'DEALERS_CREATE_SUCCESS',\r\n CREATE_FAILURE: 'DEALERS_CREATE_FAILURE',\r\n\r\n UPDATE_REQUEST: 'DEALERS_UPDATE_REQUEST',\r\n UPDATE_SUCCESS: 'DEALERS_UPDATE_SUCCESS',\r\n UPDATE_FAILURE: 'DEALERS_UPDATE_FAILURE',\r\n\r\n GETALL_REQUEST: 'USERS_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'USERS_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'USERS_GETALL_FAILURE',\r\n\r\n DELETE_REQUEST: 'USERS_DELETE_REQUEST',\r\n DELETE_SUCCESS: 'USERS_DELETE_SUCCESS',\r\n DELETE_FAILURE: 'USERS_DELETE_FAILURE',\r\n\r\n GETCOUNTRYDDL_REQUEST: 'COUNTRY_DDL_REQUEST',\r\n GETCOUNTRYDDL_SUCCESS: 'COUNTRY_DDL_SUCCESS',\r\n GETCOUNTRYDDL_FAILURE: 'GETCOUNTRYDDL_FAILURE',\r\n\r\n GETSTATEDDL_REQUEST: 'GETSTATEDDL_REQUEST',\r\n GETSTATEDDL_SUCCESS: 'GETSTATEDDL_SUCCESS',\r\n GETSTATEDDL_FAILURE: 'GETSTATEDDL_FAILURE',\r\n\r\n GETFIRMDDL_REQUEST: 'FIRM_DDL_REQUEST',\r\n GETFIRMDDL_SUCCESS: 'FIRM_DDL_SUCCESS',\r\n GETFIRMDDL_FAILURE: 'GETFIRMDDL_FAILURE',\r\n\r\n GETSCITYDDL_REQUEST: 'GETSCITYDDL_REQUEST',\r\n GETSCITYDDL_SUCCESS: 'GETSCITYDDL_SUCCESS',\r\n GETSCITYDDL_FAILURE: 'GETSCITYDDL_FAILURE',\r\n\r\n GETBCITYDDL_REQUEST: 'GETBCITYDDL_REQUEST',\r\n GETBCITYDDL_SUCCESS: 'GETBCITYDDL_SUCCESS',\r\n GETBCITYDDL_FAILURE: 'GETBCITYDDL_FAILURE',\r\n \r\n ISACTIVE_REQUEST: 'USER_ISACTIVE_REQUEST',\r\n ISACTIVE_SUCCESS: 'USER_ISACTIVE_SUCCESS',\r\n ISACTIVE_FAILURE: 'USER_ISACTIVE_FAILURE',\r\n\r\n GETEXPORT_REQUEST: 'DEALER_GETEXPORT_REQUEST',\r\n GETEXPORT_SUCCESS: 'DEALER_GETEXPORT_SUCCESS',\r\n GETEXPORT_FAILURE: 'DEALER_GETEXPORT_FAILURE',\r\n \r\n DIALOG_REQUEST:'DIALOG_REQUEST',\r\n\r\n LOADING_REQUEST:'LOADING_REQUEST',\r\n\r\n DIALOG_ISACTIVE_REQUEST:'DIALOG_ISACTIVE_REQUEST',\r\n\r\n GET_TRANSPORTATION_REQUEST: 'GET_TRANSPORTATION_REQUEST',\r\n GET_TRANSPORTATION_SUCCESS: 'GET_TRANSPORTATION_SUCCESS',\r\n GET_TRANSPORTATION_FAILURE: 'GET_TRANSPORTATION_FAILURE',\r\n};","export const TertiaryPackingRptConstants ={\r\n GETALL_REQUEST: 'TERTIARY_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'TERTIARY_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'TERTIARY_GETALL_FAILURE',\r\n\r\n GETEXPORT_REQUEST: 'TERTIARY_GETEXPORT_REQUEST',\r\n GETEXPORT_SUCCESS: 'TERTIARY_GETEXPORT_SUCCESS',\r\n GETEXPORT_FAILURE: 'TERTIARY_GETEXPORT_FAILURE',\r\n\r\n LOADING_REQUEST: 'LOADING_REQUEST'\r\n}","export const DispatchRptConstants ={\r\n GETALL_REQUEST: 'DISPATCH_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'DISPATCH_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'DISPATCH_GETALL_FAILURE',\r\n\r\n GETEXPORT_REQUEST: 'DISPATCH_GETEXPORT_REQUEST',\r\n GETEXPORT_SUCCESS: 'DISPATCH_GETEXPORT_SUCCESS',\r\n GETEXPORT_FAILURE: 'DISPATCH_GETEXPORT_FAILURE',\r\n\r\n GETPRINT_REQUEST: 'DISPATCH_GETPRINT_REQUEST',\r\n GETPRINT_SUCCESS: 'DISPATCH_GETPRINT_SUCCESS',\r\n GETPRINT_FAILURE: 'DISPATCH_GETPRINT_FAILURE',\r\n\r\n LOADING_REQUEST: 'LOADING_REQUEST'\r\n}","export const secondaryPackingConstants = {\r\n ProductByQrScan_REQUEST: \"ProductByQrScan_REQUEST\",\r\n ProductByQrScan_SUCCESS: \"ProductByQrScan_SUCCESS\",\r\n ProductByQrScan_FAILURE: \"ProductByQrScan_FAILURE\",\r\n ProductByQrScan_Warning: \"ProductByQrScan_Warning\",\r\n\r\n UPDATE_SCANNED_REQUEST: \"UPDATE_SCANNED_REQUEST\",\r\n ProductQrScan_CARTONCOMPLETE: \"ProductQrScan_CARTONCOMPLETE\",\r\n SAVE_SECONDARY_PACKING_RESUEST: \"SAVE_SECONDARY_PACKING_RESUEST\",\r\n SAVE_SECONDARY_PACKING_SUCCESS: \"SAVE_SECONDARY_PACKING_SUCCESS\",\r\n SAVE_SECONDARY_PACKING_FAILURE: \"SAVE_SECONDARY_PACKING_FAILURE\",\r\n\r\n\r\n SECONDARY_PACKING_SUCCESS: \"SECONDARY_PACKING_SUCCESS\",\r\n\r\n GETALL_REQUEST: \"SECONDARY_PACKING_GETALL_REQUEST\",\r\n GETALL_SUCCESS: \"SECONDARY_PACKING_GETALL_SUCCESS\",\r\n GETALL_FAILURE: \"SECONDARY_PACKING_GETALL_FAILURE\",\r\n\r\n REMOVE_ITEM: \"REMOVE_ITEM\",\r\n\r\n LOADING_REQUEST: \"SECONDARY_PACKING_LOADING_REQUEST\",\r\n\r\n Warning: \"Warning\",\r\n Alreadypacked: \"Alreadypacked\",\r\n};\r\n","export const SecondaryPackingRptConstants = {\r\n GETALL_REQUEST: 'SECONDARYPACKING_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'SECONDARYPACKING_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'SECONDARYPACKING_GETALL_FAILURE',\r\n\r\n GETEXPORT_REQUEST: 'SECONDARYPACKING_GETEXPORT_REQUEST',\r\n GETEXPORT_SUCCESS: 'SECONDARYPACKING_GETEXPORT_SUCCESS',\r\n GETEXPORT_FAILURE: 'SECONDARYPACKING_GETEXPORT_FAILURE',\r\n\r\n GETVENDORDDL_REQUEST: 'GETVENDORDDL_REQUEST',\r\n GETVENDORDDL_SUCCESS: 'GETVENDORDDL_SUCCESS',\r\n GETVENDORDDL_FAILURE: 'GETVENDORDDL_FAILURE',\r\n\r\n LOADING_REQUEST: 'LOADING_REQUEST'\r\n}","\r\nexport const QRCodeTrackingRptConstants = {\r\n TRACK_SCAN_INFO_REQUEST: 'TRACK_SCAN_INFO_REQUEST',\r\n TRACK_SCAN_INFO_SUCCESS: 'TRACK_SCAN_INFO_SUCCESS',\r\n TRACK_SCAN_INFO_FAILURE: 'TRACK_SCAN_INFO_FAILURE',\r\n\r\n TRACK_TOGGLE_REQUEST: 'TRACK_TOGGLE_REQUEST',\r\n TRACK_TOGGLE_SUCCESS: 'TRACK_TOGGLE_SUCCESS',\r\n TRACK_TOGGLE_FAILURE: 'TRACK_TOGGLE_FAILURE',\r\n\r\n TRACK_TOGGLE_2_REQUEST: 'TRACK_TOGGLE_2_REQUEST',\r\n TRACK_TOGGLE_2_SUCCESS: 'TRACK_TOGGLE_2_SUCCESS',\r\n TRACK_TOGGLE_2_FAILURE: 'TRACK_TOGGLE_2_FAILURE',\r\n\r\n TRACK_JOURNEY_INFO_REQUEST: 'TRACK_JOURNEY_INFO_REQUEST',\r\n TRACK_JOURNEY_INFO_SUCCESS: 'TRACK_JOURNEY_INFO_SUCCESS',\r\n TRACK_JOURNEY_INFO_FAILURE: 'TRACK_JOURNEY_INFO_FAILURE',\r\n LOADING_REQUEST:'LOADING_REQUEST', \r\n}","export const SliderProMsgConstants = {\r\n UPLOAD_REQUEST: \"FILES_UPLOAD_REQUEST\",\r\n UPLOAD_SUCCESS: \"FILES_UPLOAD_SUCCESS\",\r\n UPLOAD_FAILURE: \"FILES_UPLOAD_FAILURE\",\r\n\r\n GETALL_REQUEST: \"HOMESLIDER_GETALL_REQUEST\",\r\n GETALL_SUCCESS: \"HOMESLIDER_GETALL_SUCCESS\",\r\n GETALL_FAILURE: \"HOMESLIDER_GETALL_FAILURE\",\r\n\r\n GETALLS_REQUEST: \"ALLSLIDER_GETALL_REQUEST\",\r\n GETALLS_SUCCESS: \"ALLSLIDER_GETALL_SUCCESS\",\r\n GETALLS_FAILURE: \"ALLSLIDER_GETALL_FAILURE\",\r\n\r\n DELETE_REQUEST: \"HOMESLIDER_DELETE_REQUEST\",\r\n DELETE_SUCCESS: \"HOMESLIDER_DELETE_SUCCESS\",\r\n DELETE_FAILURE: \"HOMESLIDER_DELETE_FAILURE\",\r\n};\r\n","export const WarrantyRegistrationReportConstants ={\r\n GETALL_REQUEST: 'WARRANTY_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'WARRANTY_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'WARRANTY_GETALL_FAILURE',\r\n\r\n GETEXPORT_REQUEST: 'WARRANTY_GETEXPORT_REQUEST',\r\n GETEXPORT_SUCCESS: 'WARRANTY_GETEXPORT_SUCCESS',\r\n GETEXPORT_FAILURE: 'WARRANTY_GETEXPORT_FAILURE',\r\n\r\n LOADING_REQUEST: 'LOADING_REQUEST',\r\n\r\n DIALOG_REQUEST : 'DIALOG_REQUEST',\r\n\r\n ISACTIVE_REQUEST :'WARRANTY_ISACTIVE_REQUEST',\r\n ISACTIVE_SUCCESS: 'WARRANTY_ISACTIVE_SUCCESS',\r\n ISACTIVE_FAILURE : 'WARRANTY_ISACTIVE_SUCCESS',\r\n\r\n DIALOG_ISACTIVE_REQUEST : 'DIALOG_ISACTIVE_REQUEST'\r\n}","export const BinMasterConstants = {\r\n CREATE_REQUEST: 'BIN_CREATE_REQUEST',\r\n CREATE_SUCCESS: 'BIN_CREATE_SUCCESS',\r\n CREATE_FAILURE: 'BIN_CREATE_FAILURE',\r\n\r\n UPDATE_REQUEST: 'BIN_UPDATE_REQUEST',\r\n UPDATE_SUCCESS: 'BIN_UPDATE_SUCCESS',\r\n UPDATE_FAILURE: 'BIN_UPDATE_FAILURE',\r\n\r\n GETALL_REQUEST: 'BIN_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'BIN_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'BIN_GETALL_FAILURE',\r\n\r\n DELETE_REQUEST: 'BIN_DELETE_REQUEST',\r\n DELETE_SUCCESS: 'BIN_DELETE_SUCCESS',\r\n DELETE_FAILURE: 'BIN_DELETE_FAILURE',\r\n\r\n GETWHDDL_REQUEST: 'WH_DDL_REQUEST',\r\n GETWHDDL_SUCCESS: 'WH_DDL_SUCCESS',\r\n GETWHDDL_FAILURE: 'GETWHDDL_FAILURE',\r\n \r\n ISACTIVE_REQUEST: 'BIN_ISACTIVE_REQUEST',\r\n ISACTIVE_SUCCESS: 'BIN_ISACTIVE_SUCCESS',\r\n ISACTIVE_FAILURE: 'BIN_ISACTIVE_FAILURE',\r\n\r\n GETEXPORT_REQUEST: 'GETEXPORT_REQUEST',\r\n GETEXPORT_SUCCESS: 'GETEXPORT_SUCCESS',\r\n GETEXPORT_FAILURE: 'GETEXPORT_FAILURE',\r\n\r\n GETALLBIN_REQUEST: 'BIN_GETALLBIN_REQUEST',\r\n GETALLBIN_SUCCESS: 'BIN_GETALLBIN_SUCCESS',\r\n GETALLBIN_FAILURE: 'BIN_GETALLBIN_FAILURE',\r\n \r\n DIALOG_REQUEST:'DIALOG_REQUEST',\r\n\r\n LOADING_REQUEST:'LOADING_REQUEST',\r\n\r\n DIALOG_ISACTIVE_REQUEST:'DIALOG_ISACTIVE_REQUEST'\r\n};","export const warehouseConstants = {\r\n CREATE_REQUEST: 'COMPANY_CREATE_REQUEST',\r\n CREATE_SUCCESS: 'COMPANY_CREATE_SUCCESS',\r\n CREATE_FAILURE: 'COMPANY_CREATE_FAILURE',\r\n\r\n UPDATE_REQUEST: 'COMPANY_UPDATE_REQUEST',\r\n UPDATE_SUCCESS: 'COMPANY_UPDATE_SUCCESS',\r\n UPDATE_FAILURE: 'COMPANY_UPDATE_FAILURE',\r\n\r\n GETALL_REQUEST: 'COMPANY_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'COMPANY_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'COMPANY_GETALL_FAILURE',\r\n\r\n DELETE_REQUEST: 'COMPANY_DELETE_REQUEST',\r\n DELETE_SUCCESS: 'COMPANY_DELETE_SUCCESS',\r\n DELETE_FAILURE: 'COMPANY_DELETE_FAILURE',\r\n \r\n ISACTIVE_REQUEST: 'COMPANY_REQUEST',\r\n ISACTIVE_SUCCESS: 'COMPANY_ISACTIVE_SUCCESS',\r\n ISACTIVE_FAILURE: 'COMPANY_ISACTIVE_FAILURE',\r\n \r\n GETCMPNYDDL_REQUEST: 'COMPANY_GETCMPNYDDL_REQUEST',\r\n GETCMPNYDDL_SUCCESS: 'COMPANY_GETCMPNYDDL_SUCCESS',\r\n GETCMPNYDDL_FAILURE: 'COMPANY_GETCMPNYDDL_FAILURE',\r\n\r\n DIALOG_REQUEST:'DIALOG_REQUEST',\r\n\r\n LOADING_REQUEST:'LOADING_REQUEST',\r\n\r\n DIALOG_ISACTIVE_REQUEST:'DIALOG_ISACTIVE_REQUEST'\r\n};","export const WarrantyRejectRegistrationReportConstants ={\r\n GETALL_REQUEST: 'WARRANTY_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'WARRANTY_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'WARRANTY_GETALL_FAILURE',\r\n\r\n GETEXPORT_REQUEST: 'WARRANTY_GETEXPORT_REQUEST',\r\n GETEXPORT_SUCCESS: 'WARRANTY_GETEXPORT_SUCCESS',\r\n GETEXPORT_FAILURE: 'WARRANTY_GETEXPORT_FAILURE',\r\n\r\n LOADING_REQUEST: 'LOADING_REQUEST',\r\n}","export const GiftMasterConstants = {\r\n CREATE_REQUEST: 'GiftMaster_CREATE_REQUEST',\r\n CREATE_SUCCESS: 'GiftMaster_CREATE_SUCCESS',\r\n CREATE_FAILURE: 'GiftMaster_CREATE_FAILURE',\r\n\r\n UPDATE_REQUEST: 'GiftMaster_UPDATE_REQUEST',\r\n UPDATE_SUCCESS: 'GiftMaster_UPDATE_SUCCESS',\r\n UPDATE_FAILURE: 'GiftMaster_UPDATE_FAILURE',\r\n\r\n GETALL_REQUEST: 'GiftMaster_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'GiftMaster_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'GiftMaster_GETALL_FAILURE',\r\n\r\n GETQDDL_REQUEST: 'GiftMaster_GETQDDL_REQUEST',\r\n GETQDDL_SUCCESS: 'GiftMaster_GETQDDL_SUCCESS',\r\n GETQDDL_FAILURE: 'GiftMaster_GETQDDL_FAILURE',\r\n\r\n GETPDDL_REQUEST: 'GiftMaster_GETPDDL_REQUEST',\r\n GETPDDL_SUCCESS: 'GiftMaster_GETPDDL_SUCCESS',\r\n GETPDDL_FAILURE: 'GiftMaster_GETPDDL_FAILURE',\r\n\r\n GETALL_AVAILABLE_REQUEST: 'GiftMaster_GETALL_AVAILABLE_REQUEST',\r\n GETALL_AVAILABLE_SUCCESS: 'GiftMaster_GETALL_AVAILABLE_SUCCESS',\r\n GETALL_AVAILABLE_FAILURE: 'GiftMaster_GETALL_AVAILABLE_FAILURE',\r\n\r\n DELETE_REQUEST: 'GiftMaster_DELETE_REQUEST',\r\n DELETE_SUCCESS: 'GiftMaster_DELETE_SUCCESS',\r\n DELETE_FAILURE: 'GiftMaster_DELETE_FAILURE',\r\n \r\n ISACTIVE_REQUEST: 'GiftMaster_ISACTIVE_REQUEST',\r\n ISACTIVE_SUCCESS: 'GiftMaster_ISACTIVE_SUCCESS',\r\n ISACTIVE_FAILURE: 'GiftMaster_ISACTIVE_FAILURE',\r\n \r\n DIALOG_REQUEST:'DIALOG_REQUEST',\r\n\r\n DIALOGUE_REQUEST:'DIALOGUE_REQUEST',\r\n \r\n LOADING_REQUEST:'LOADING_REQUEST',\r\n\r\n DIALOG_ISACTIVE_REQUEST:'DIALOG_ISACTIVE_REQUEST'\r\n};","export const GiftGenerateConstants = {\r\n APPROVE_REQUEST: 'GiftGenerate_APPROVE_REQUEST',\r\n APPROVE_SUCCESS: 'GiftGenerate_APPROVE_SUCCESS',\r\n APPROVE_FAILURE: 'GiftGenerate_APPROVE_FAILURE',\r\n\r\n CANCEL_REQUEST: 'GiftGenerate_CANCEL_REQUEST',\r\n CANCEL_SUCCESS: 'GiftGenerate_CANCEL_SUCCESS',\r\n CANCEL_FAILURE: 'GiftGenerate_CANCEL_FAILURE',\r\n\r\n CREATE_REQUEST: 'GiftGenerate_CREATE_REQUEST',\r\n CREATE_SUCCESS: 'GiftGenerate_CREATE_SUCCESS',\r\n CREATE_FAILURE: 'GiftGenerate_CREATE_FAILURE',\r\n\r\n GETALL_REQUEST: 'GiftGenerate_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'GiftGenerate_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'GiftGenerate_GETALL_FAILURE',\r\n\r\n GETALL_USERPT_REQUEST: 'GiftGenerate_GETALL_USERPT_REQUEST',\r\n GETALL_USERPT_SUCCESS: 'GiftGenerate_GETALL_USERPT_SUCCESS',\r\n GETALL_USERPT_FAILURE: 'GiftGenerate_GETALL_USERPT_FAILURE',\r\n\r\n GETALL_USER_REQUEST: 'GiftGenerate_GETALL_USER_REQUEST',\r\n GETALL_USER_SUCCESS: 'GiftGenerate_GETALL_USER_SUCCESS',\r\n GETALL_USER_FAILURE: 'GiftGenerate_GETALL_USER_FAILURE',\r\n\r\n\r\n DELETE_REQUEST: 'GiftGenerate_DELETE_REQUEST',\r\n DELETE_SUCCESS: 'GiftGenerate_DELETE_SUCCESS',\r\n DELETE_FAILURE: 'GiftGenerate_DELETE_FAILURE',\r\n \r\n ISACTIVE_REQUEST: 'GiftGenerate_ISACTIVE_REQUEST',\r\n ISACTIVE_SUCCESS: 'GiftGenerate_ISACTIVE_SUCCESS',\r\n ISACTIVE_FAILURE: 'GiftGenerate_ISACTIVE_FAILURE',\r\n \r\n DIALOG_REQUEST:'DIALOG_REQUEST',\r\n\r\n DIALOGUE_REQUEST:'DIALOGUE_REQUEST',\r\n \r\n LOADING_REQUEST:'LOADING_REQUEST',\r\n\r\n DIALOG_ISACTIVE_REQUEST:'DIALOG_ISACTIVE_REQUEST',\r\n\r\n REJECT_DIALOGUE_REQUEST : 'REJECT_DIALOGUE_REQUEST'\r\n};","export const ProductPackingConstants = {\r\n \r\n ProductByQrScan_REQUEST: \"ProductByQrScan_REQUEST\",\r\n ProductByQrScan_SUCCESS: \"ProductByQrScan_SUCCESS\",\r\n ProductByQrScan_FAILURE: \"ProductByQrScan_FAILURE\",\r\n ProductByQrScan_Warning: \"ProductByQrScan_Warning\",\r\n\r\n UPDATE_SCANNED_REQUEST: \"UPDATE_SCANNED_REQUEST\",\r\n ProductQrScan_CARTONCOMPLETE: \"ProductQrScan_CARTONCOMPLETE\",\r\n SAVE_SECONDARY_PACKING_RESUEST: \"SAVE_SECONDARY_PACKING_RESUEST\",\r\n SAVE_SECONDARY_PACKING_SUCCESS: \"SAVE_SECONDARY_PACKING_SUCCESS\",\r\n SAVE_SECONDARY_PACKING_FAILURE: \"SAVE_SECONDARY_PACKING_FAILURE\",\r\n\r\n\r\n SECONDARY_PACKING_SUCCESS: \"SECONDARY_PACKING_SUCCESS\",\r\n\r\n GETALL_REQUEST: \"SECONDARY_PACKING_GETALL_REQUEST\",\r\n GETALL_SUCCESS: \"SECONDARY_PACKING_GETALL_SUCCESS\",\r\n GETALL_FAILURE: \"SECONDARY_PACKING_GETALL_FAILURE\",\r\n\r\n REMOVE_ITEM: \"REMOVE_ITEM\",\r\n\r\n LOADING_REQUEST: \"SECONDARY_PACKING_LOADING_REQUEST\",\r\n\r\n Warning: \"Warning\",\r\n Alreadypacked: \"Alreadypacked\",\r\n};\r\n","import { verificationLogConstants } from \"../constants\";\r\n\r\nexport function verification(state = {}, action) {\r\n switch (action.type) {\r\n case verificationLogConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool,\r\n };\r\n case verificationLogConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case verificationLogConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas,\r\n };\r\n case verificationLogConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case verificationLogConstants.GETEXPORT_REQUEST:\r\n return {\r\n ...state,\r\n exporting: true,\r\n };\r\n case verificationLogConstants.GETEXPORT_SUCCESS:\r\n return {\r\n ...state,\r\n exportitems: action.datas,\r\n };\r\n case verificationLogConstants.GETEXPORT_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","export const DemappingRptConstants ={\r\n GETALL_REQUEST: 'DEMAPPING_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'DEMAPPING_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'DEMAPPING_GETALL_FAILURE',\r\n\r\n GETEXPORT_REQUEST: 'DEMAPPING_GETEXPORT_REQUEST',\r\n GETEXPORT_SUCCESS: 'DEMAPPING_GETEXPORT_SUCCESS',\r\n GETEXPORT_FAILURE: 'DEMAPPING_GETEXPORT_FAILURE',\r\n\r\n LOADING_REQUEST: 'LOADING_REQUEST'\r\n}","export const DamageRptConstants ={\r\n GETALL_REQUEST: 'DAMAGE_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'DAMAGE_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'DAMAGE_GETALL_FAILURE',\r\n\r\n GETEXPORT_REQUEST: 'DAMAGE_GETEXPORT_REQUEST',\r\n GETEXPORT_SUCCESS: 'DAMAGE_GETEXPORT_SUCCESS',\r\n GETEXPORT_FAILURE: 'DAMAGE_GETEXPORT_FAILURE',\r\n\r\n LOADING_REQUEST: 'LOADING_REQUEST'\r\n}","export const loyalityschemeConstants = {\r\n CREATE_REQUEST: 'LOYALITYSCHEME_CREATE_REQUEST',\r\n CREATE_SUCCESS: 'LOYALITYSCHEME_CREATE_SUCCESS',\r\n CREATE_FAILURE: 'LOYALITYSCHEME_CREATE_FAILURE',\r\n\r\n UPDATE_REQUEST: 'LOYALITYSCHEME_UPDATE_REQUEST',\r\n UPDATE_SUCCESS: 'LOYALITYSCHEME_UPDATE_SUCCESS',\r\n UPDATE_FAILURE: 'LOYALITYSCHEME_UPDATE_FAILURE',\r\n\r\n GETALL_REQUEST: 'LOYALITYSCHEME_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'LOYALITYSCHEME_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'LOYALITYSCHEME_GETALL_FAILURE',\r\n\r\n GETPRDCTDDL_REQUEST: 'LOYALITYSCHEME_GETPRDCTDDL_REQUEST',\r\n GETPRDCTDDL_SUCCESS: 'LOYALITYSCHEME_GETPRDCTDDL_SUCCESS',\r\n GETPRDCTDDL_FAILURE: 'LOYALITYSCHEME_GETPRDCTDDL_FAILURE',\r\n\r\n GETALL_AVAILABLE_REQUEST: 'LOYALITYSCHEME_GETALL_AVAILABLE_REQUEST',\r\n GETALL_AVAILABLE_SUCCESS: 'LOYALITYSCHEME_GETALL_AVAILABLE_SUCCESS',\r\n GETALL_AVAILABLE_FAILURE: 'LOYALITYSCHEME_GETALL_AVAILABLE_FAILURE',\r\n\r\n DELETE_REQUEST: 'LOYALITYSCHEME_DELETE_REQUEST',\r\n DELETE_SUCCESS: 'LOYALITYSCHEME_DELETE_SUCCESS',\r\n DELETE_FAILURE: 'LOYALITYSCHEME_DELETE_FAILURE',\r\n \r\n ISACTIVE_REQUEST: 'LOYALITYSCHEME_ISACTIVE_REQUEST',\r\n ISACTIVE_SUCCESS: 'LOYALITYSCHEME_ISACTIVE_SUCCESS',\r\n ISACTIVE_FAILURE: 'LOYALITYSCHEME_ISACTIVE_FAILURE',\r\n \r\n DIALOG_REQUEST:'DIALOG_REQUEST',\r\n\r\n DIALOGUE_REQUEST:'DIALOGUE_REQUEST',\r\n \r\n LOADING_REQUEST:'LOADING_REQUEST',\r\n\r\n DIALOG_ISACTIVE_REQUEST:'DIALOG_ISACTIVE_REQUEST'\r\n};","export const RedemptionApprovalConstants = {\r\n APPROVE_REQUEST: 'REDEMPTIONAPPROVAL_APPROVE_REQUEST',\r\n APPROVE_SUCCESS: 'REDEMPTIONAPPROVAL_APPROVE_SUCCESS',\r\n APPROVE_FAILURE: 'REDEMPTIONAPPROVAL_APPROVE_FAILURE',\r\n\r\n CANCEL_REQUEST: 'REDEMPTIONAPPROVAL_CANCEL_REQUEST',\r\n CANCEL_SUCCESS: 'REDEMPTIONAPPROVAL_CANCEL_SUCCESS',\r\n CANCEL_FAILURE: 'REDEMPTIONAPPROVAL_CANCEL_FAILURE',\r\n\r\n CREATE_REQUEST: 'REDEMPTIONAPPROVAL_CREATE_REQUEST',\r\n CREATE_SUCCESS: 'REDEMPTIONAPPROVAL_CREATE_SUCCESS',\r\n CREATE_FAILURE: 'REDEMPTIONAPPROVAL_CREATE_FAILURE',\r\n\r\n GETALL_REQUEST: 'REDEMPTIONAPPROVAL_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'REDEMPTIONAPPROVAL_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'REDEMPTIONAPPROVAL_GETALL_FAILURE',\r\n\r\n GETALL_USERPT_REQUEST: 'REDEMPTIONAPPROVAL_GETALL_USERPT_REQUEST',\r\n GETALL_USERPT_SUCCESS: 'REDEMPTIONAPPROVAL_GETALL_USERPT_SUCCESS',\r\n GETALL_USERPT_FAILURE: 'REDEMPTIONAPPROVAL_GETALL_USERPT_FAILURE',\r\n\r\n GETALL_USER_REQUEST: 'REDEMPTIONAPPROVAL_GETALL_USER_REQUEST',\r\n GETALL_USER_SUCCESS: 'REDEMPTIONAPPROVAL_GETALL_USER_SUCCESS',\r\n GETALL_USER_FAILURE: 'REDEMPTIONAPPROVAL_GETALL_USER_FAILURE',\r\n\r\n\r\n DELETE_REQUEST: 'REDEMPTIONAPPROVAL_DELETE_REQUEST',\r\n DELETE_SUCCESS: 'REDEMPTIONAPPROVAL_DELETE_SUCCESS',\r\n DELETE_FAILURE: 'REDEMPTIONAPPROVAL_DELETE_FAILURE',\r\n \r\n ISACTIVE_REQUEST: 'REDEMPTIONAPPROVAL_ISACTIVE_REQUEST',\r\n ISACTIVE_SUCCESS: 'REDEMPTIONAPPROVAL_ISACTIVE_SUCCESS',\r\n ISACTIVE_FAILURE: 'REDEMPTIONAPPROVAL_ISACTIVE_FAILURE',\r\n \r\n DIALOG_REQUEST:'DIALOG_REQUEST',\r\n\r\n DIALOGUE_REQUEST:'DIALOGUE_REQUEST',\r\n \r\n LOADING_REQUEST:'LOADING_REQUEST',\r\n\r\n DIALOG_ISACTIVE_REQUEST:'DIALOG_ISACTIVE_REQUEST',\r\n\r\n REJECT_DIALOGUE_REQUEST : 'REJECT_DIALOGUE_REQUEST'\r\n};","export const TertiaryPackingConstants = {\r\n ProductByQrScan_REQUEST: \"ProductByQrScan_REQUEST\",\r\n ProductByQrScan_SUCCESS: \"ProductByQrScan_SUCCESS\",\r\n ProductByQrScan_Warning: \"ProductByQrScan_Warning\",\r\n ProductByQrScan_FAILURE: \"ProductByQrScan_FAILURE\",\r\n\r\n UPDATE_SCANNED_REQUEST: \"UPDATE_SCANNED_REQUEST\",\r\n\r\n SAVE_TERTIARY_PACKING_RESUEST: \"SAVE_TERTIARY_PACKING_RESUEST\",\r\n SAVE_TERTIARY_PACKING_FAILURE: \"SAVE_TERTIARY_PACKING_FAILURE\",\r\n\r\n GETALL_REQUEST: \"TERTIARY_PACKING_GETALL_REQUEST\",\r\n GETALL_SUCCESS: \"TERTIARY_PACKING_GETALL_SUCCESS\",\r\n GETALL_FAILURE: \"TERTIARY_PACKING_GETALL_FAILURE\",\r\n\r\n GETALL_SCAN_REQUEST: \"TERTIARY_PACKING_GETALL_SCAN_REQUEST\",\r\n GETALL_SCAN_SUCCESS: \"TERTIARY_PACKING_GETALL_SCAN_SUCCESS\",\r\n GETALL_SCAN_FAILURE: \"TERTIARY_PACKING_GETALL_SCAN_FAILURE\",\r\n\r\n GETALL_CARTON_REQUEST: \"TERTIARY_PACKING_GETALL_CARTON_REQUEST\",\r\n GETALL_CARTON_SUCCESS: \"TERTIARY_PACKING_GETALL_CARTON_SUCCESS\",\r\n GETALL_CARTON_FAILURE: \"TERTIARY_PACKING_GETALL_CARTON_FAILURE\",\r\n\r\n LOADING_REQUEST: \"TERTIARY_PACKING_LOADING_REQUEST\",\r\n\r\n Warning: \"Warning\",\r\n Alreadypacked: \"Alreadypacked\",\r\n};\r\n","export const ProductPurchaseRptConstants ={\r\n GETALL_REQUEST: 'PRODUCTPURCHASER_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'PRODUCTPURCHASER_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'PRODUCTPURCHASER_GETALL_FAILURE',\r\n\r\n GETEXPORT_REQUEST: 'PRODUCTPURCHASER_GETEXPORT_REQUEST',\r\n GETEXPORT_SUCCESS: 'PRODUCTPURCHASER_GETEXPORT_SUCCESS',\r\n GETEXPORT_FAILURE: 'PRODUCTPURCHASER_GETEXPORT_FAILURE',\r\n\r\n LOADING_REQUEST: 'LOADING_REQUEST'\r\n}","export const categoryConstants = {\r\n CREATE_REQUEST: 'CATEGORY_CREATE_REQUEST',\r\n CREATE_SUCCESS: 'CATEGORY_CREATE_SUCCESS',\r\n CREATE_FAILURE: 'CATEGORY_CREATE_FAILURE',\r\n\r\n UPDATE_REQUEST: 'CATEGORY_UPDATE_REQUEST',\r\n UPDATE_SUCCESS: 'CATEGORY_UPDATE_SUCCESS',\r\n UPDATE_FAILURE: 'CATEGORY_UPDATE_FAILURE',\r\n\r\n GETALL_REQUEST: 'CATEGORY_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'CATEGORY_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'CATEGORY_GETALL_FAILURE',\r\n\r\n GETSUBALL_REQUEST: 'CATEGORY_GETSUBALL_REQUEST',\r\n GETSUBALL_SUCCESS: 'CATEGORY_GETSUBALL_SUCCESS',\r\n GETSUBALL_FAILURE: 'CATEGORY_GETSUBALL_FAILURE',\r\n\r\n ISACTIVE_REQUEST: 'CATEGORY_ISACTIVE_REQUEST',\r\n ISACTIVE_SUCCESS: 'CATEGORY_ISACTIVE_SUCCESS',\r\n ISACTIVE_FAILURE: 'CATEGORY_ISACTIVE_FAILURE',\r\n\r\n ISACTIVE2_REQUEST: 'SUBCATEGORY_ISACTIVE2_REQUEST',\r\n ISACTIVE2_SUCCESS: 'SUBCATEGORY_ISACTIVE2_SUCCESS',\r\n ISACTIVE2_FAILURE: 'SUBCATEGORY_ISACTIVE2_FAILURE',\r\n\r\n DIALOG_REQUEST: 'DIALOG_REQUEST',\r\n LOADING_REQUEST: 'LOADING_REQUEST',\r\n DIALOG_ISACTIVE_REQUEST: 'DIALOG_ISACTIVE_REQUEST',\r\n\r\n DIALOG_REQUEST2: 'DIALOG_REQUEST2',\r\n LOADING_REQUEST2: 'LOADING_REQUEST2',\r\n DIALOG_ISACTIVE_REQUEST2: 'DIALOG_ISACTIVE_REQUEST2',\r\n\r\n\r\n GETCATEGORYDDL_REQUEST: 'GETCATEGORYDDL_REQUEST',\r\n GETCATEGORYDDL_SUCCESS: 'GETCATEGORYDDL_SUCCESS',\r\n GETCATEGOYRDDL_FAILURE: 'GETCATEGOYRDDL_FAILURE',\r\n\r\n GETSUBCATEGORYDDL_REQUEST: 'PRODUCTS_GETSUBCATEGORYDDL_REQUEST',\r\n GETSUBCATEGORYDDL_SUCCESS: 'PRODUCTS_GETSUBCATEGORYDDL_SUCCESS',\r\n GETSUBCATEGORYDDL_FAILURE: 'PRODUCTS_GETSUBCATEGORYDDL_FAILURE',\r\n\r\n};","import { SliderProMsgConstants } from \"../constants\";\r\n\r\nexport function SliderProMsg(state = {}, action) {\r\n switch (action.type) {\r\n case SliderProMsgConstants.UPLOAD_REQUEST:\r\n return {\r\n ...state,\r\n creating: true,\r\n };\r\n case SliderProMsgConstants.UPLOAD_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.data,\r\n };\r\n case SliderProMsgConstants.UPLOAD_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n case SliderProMsgConstants.GETALLS_REQUEST:\r\n return {\r\n ...state,\r\n creating: true,\r\n };\r\n case SliderProMsgConstants.GETALLS_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.data,\r\n };\r\n case SliderProMsgConstants.GETALLS_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n case SliderProMsgConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n creating: true,\r\n };\r\n case SliderProMsgConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n item: action.data,\r\n };\r\n case SliderProMsgConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n //delete\r\n\r\n case SliderProMsgConstants.DELETE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true,\r\n };\r\n\r\n case SliderProMsgConstants.DELETE_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.data,\r\n };\r\n\r\n case SliderProMsgConstants.DELETE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { combineReducers } from 'redux';\r\nimport { Carton } from './CartonReducer';\r\nimport { product } from './productReducer';\r\nimport { user } from './userReducer';\r\nimport { alert } from './alertReducer';\r\nimport { role } from \"./roleMasterReducer\";\r\nimport { dashboard } from \"./dashboardReducer\";\r\nimport { login } from \"./loginReducer\";\r\nimport { menu } from \"./menuReducer\";\r\nimport { changePassword } from \"./changePasswordReducer\";\r\nimport { mapping } from \"./mappingReducer\";\r\nimport { issueNo } from './issueNoReducer';\r\nimport { damage } from './damageReducer';\r\nimport { verification } from \"./verificationLogReducer\";\r\nimport { mappingRpt } from \"./mappingRptReducer\";\r\nimport { FeedbackRpt } from \"./FeedbackRptReducer\";\r\nimport { DemappingRpt } from './DemappingRptReducer';\r\nimport { DamageRpt } from './DamageRptReducer';\r\nimport { LoyaltySchemeRpt } from './LoyaltySchemeRptReducer';\r\nimport { RedemptionLogRpt } from './RedemptionLogRptReducer';\r\nimport { UserloyalityLogRpt } from './UserloyalityLogRptReducer';\r\nimport { SqlEditor } from \"./SqlEditorReducer\";\r\nimport { demapping } from './demappingReducer';\r\nimport { productAuthentication } from './productAuthenticationReducer';\r\nimport { productConfiguration } from './productConfigurationReducer';\r\nimport { company } from \"./companyReducer\";\r\nimport { OrderBooking } from \"./OrderBookingReducer\";\r\nimport { OrderBookingRpt } from \"./OrderBookingRptReducer\";\r\nimport { loyalityscheme } from './loyalityschemeReducer';\r\nimport { Dispatch } from './DispatchReducer';\r\nimport { DispatchReport } from './DispatchRptReducer'\r\nimport { RedemptionApproval } from './RedemptionApprovalReducer';\r\nimport { TertiaryPacking } from './TertiaryPackingReducer';\r\nimport { TertiaryPackingRpt } from './TertiaryPackingRptReducer';\r\nimport { ProductPurchaseRpt } from './ProductPurchaseRptReducer';\r\nimport { ProductPacking } from './ProductPackingReducer';\r\nimport { secondaryPacking } from './secondaryPackingReducer';\r\nimport { SecondaryPackingReport } from './SecondaryPackingRptReducer';\r\nimport { dealer } from './dealerReducer';\r\nimport { category } from './categoryReducer';\r\nimport { QRCodeTrackingRpt } from './QRCodeTrackingRptReducer';\r\nimport { SliderProMsg } from './SliderProMsgReducer';\r\nimport { warranty } from './WarrantyRegistrationReportReducer';\r\nimport { warrantyReject } from './WarrantyRejectRegistrationReportReducer';\r\nimport { BinMaster } from './BinMasterReducer';\r\nimport { GiftMaster } from './GiftMasterReducer';\r\nimport { GiftGenerate } from './GiftGenerateReducer'\r\nimport { VendorProductAllocation } from './VendorProductAllocationReducer';\r\nconst rootReducer = combineReducers({\r\n user,\r\n alert,\r\n Carton,\r\n product,\r\n role,\r\n dashboard,\r\n login,\r\n menu,\r\n changePassword,\r\n mappingRpt,\r\n DemappingRpt,\r\n DamageRpt,\r\n FeedbackRpt,\r\n SqlEditor,\r\n issueNo,\r\n damage,\r\n verification,\r\n mapping,\r\n verification,\r\n demapping,\r\n productAuthentication,\r\n productConfiguration,\r\n company,\r\n OrderBooking,\r\n OrderBookingRpt,\r\n LoyaltySchemeRpt,\r\n RedemptionLogRpt,\r\n UserloyalityLogRpt,\r\n RedemptionApproval,\r\n loyalityscheme,\r\n TertiaryPacking,\r\n TertiaryPackingRpt,\r\n Dispatch,\r\n DispatchReport,\r\n ProductPurchaseRpt,\r\n secondaryPacking,\r\n SecondaryPackingReport,\r\n dealer,\r\n category,\r\n QRCodeTrackingRpt,\r\n SliderProMsg,\r\n warranty,\r\n SliderProMsg,\r\n BinMaster,\r\n warrantyReject,\r\n GiftMaster,\r\n GiftGenerate,\r\n ProductPacking,\r\n VendorProductAllocation\r\n});\r\n\r\nexport default rootReducer;","import { userConstants, dealerConstants } from \"../constants\";\r\n\r\nexport function user(state = {}, action) {\r\n switch (action.type) {\r\n case userConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool,\r\n };\r\n\r\n //start City\r\n case dealerConstants.GETCITYDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case dealerConstants.GETCITYDDL_SUCCESS:\r\n return {\r\n ...state,\r\n cityddl: action.datas,\r\n };\r\n case dealerConstants.GETCITYDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n //end City\r\n case userConstants.DIALOG_REQUEST:\r\n return {\r\n ...state,\r\n showDialog: action.isbool,\r\n };\r\n case userConstants.DIALOG_ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n showIsActiveDialog: action.isbool,\r\n };\r\n case userConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case userConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas,\r\n };\r\n case userConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case userConstants.CREATE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true,\r\n };\r\n case userConstants.CREATE_SUCCESS:\r\n return {\r\n ...state,\r\n items:\r\n state.items == null ? [action.data] : [action.data, ...state.items],\r\n };\r\n case userConstants.CREATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case userConstants.UPDATE_REQUEST:\r\n return {\r\n ...state,\r\n items: state.items.map((item) =>\r\n item.UserId == action.data.UserId ? { ...item, updating: true } : item\r\n ),\r\n };\r\n case userConstants.UPDATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map((item) =>\r\n item.UserId === action.data.UserId ? action.data : item\r\n ),\r\n };\r\n case userConstants.UPDATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case userConstants.DELETE_REQUEST:\r\n return {\r\n ...state,\r\n deleting: true,\r\n };\r\n case userConstants.DELETE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map((item) =>\r\n item.UserId === action.data\r\n ? {\r\n UserId: item.userId,\r\n UserName: item.UserName,\r\n Email: item.Email,\r\n MobileNo: item.MobileNo,\r\n CompanyId: item.CompanyId,\r\n CompanyName: item.CompanyName,\r\n RoleId: item.RoleId,\r\n RoleName: item.RoleName,\r\n IsActive: item.isActive,\r\n Password: item.Password,\r\n ConfirmPassword: item.Password,\r\n CreatedDate: item.CreatedDate,\r\n }\r\n : item\r\n ),\r\n };\r\n\r\n case userConstants.GETROLEDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case userConstants.GETROLEDDL_SUCCESS:\r\n return {\r\n ...state,\r\n rollddl: action.datas,\r\n };\r\n case userConstants.GETROLEDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case userConstants.GETWDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case userConstants.GETWDDL_SUCCESS:\r\n return {\r\n ...state,\r\n Wdd2: action.datas,\r\n };\r\n case userConstants.GETWDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n case userConstants.DELETE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case userConstants.ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n activating: true,\r\n };\r\n case userConstants.ISACTIVE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map((item) =>\r\n item.UserId === action.data.UserId\r\n ? {\r\n UserId: item.UserId,\r\n UserName: item.UserName,\r\n Email: item.Email,\r\n MobileNo: item.MobileNo,\r\n CompanyId: item.CompanyId,\r\n CompanyName: item.CompanyName,\r\n RoleId: item.RoleId,\r\n RoleName: item.RoleName,\r\n IsActive: action.data.IsActive,\r\n TotalRows: item.TotalRows,\r\n Password: item.Password,\r\n ConfirmPassword: item.Password,\r\n CreatedDate: item.CreatedDate,\r\n }\r\n : item\r\n ),\r\n };\r\n case userConstants.ISACTIVE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case userConstants.GETEXPORT_REQUEST:\r\n return {\r\n ...state,\r\n exporting: true,\r\n };\r\n case userConstants.GETEXPORT_SUCCESS:\r\n return {\r\n ...state,\r\n exportitems: action.datas,\r\n };\r\n case userConstants.GETEXPORT_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { alertConstants } from '../constants';\r\n\r\nexport function alert(state = {}, action) {\r\n switch (action.type) {\r\n case alertConstants.SUCCESS:\r\n return {\r\n type: 'alert-success',\r\n message: action.message\r\n };\r\n case alertConstants.WARNING:\r\n return {\r\n type: 'alert-warning',\r\n message: action.message\r\n };\r\n case alertConstants.ERROR:\r\n return {\r\n type: 'alert-danger',\r\n message: action.message\r\n };\r\n case alertConstants.CLEAR:\r\n return {};\r\n default:\r\n return state\r\n }\r\n}","import { CartonConstants } from \"../constants/CartonConstants\";\r\n\r\nexport function Carton(state = {}, action) {\r\n switch (action.type) {\r\n case CartonConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case CartonConstants.DIALOG_REQUEST:\r\n return {\r\n ...state,\r\n showDialog: action.isbool\r\n };\r\n //case CartonConstants.DIALOGUE_REQUEST:\r\n // return {\r\n // ...state,\r\n // showDialogue: action.isbool\r\n // };\r\n case CartonConstants.DIALOG_ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n showIsActiveDialog: action.isbool\r\n };\r\n //case CartonConstants.UPDATE_PAGE_STORE:\r\n // return {\r\n // ...state,\r\n // pages: action.pageList\r\n // };\r\n case CartonConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case CartonConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n\r\n case CartonConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n case CartonConstants.GETALL_AVAILABLE_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case CartonConstants.GETALL_AVAILABLE_SUCCESS:\r\n return {\r\n ...state,\r\n Mappseries: action.datas,\r\n \r\n };\r\n case CartonConstants.GETALL_AVAILABLE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n case CartonConstants.CREATE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true\r\n };\r\n case CartonConstants.CREATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items == null ? [action.data] : [action.data, ...state.items]\r\n };\r\n case CartonConstants.CREATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n case CartonConstants.UPDATE_REQUEST:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.CartonId === action.data.CartonId ? { ...item, updating: true } : item\r\n )\r\n };\r\n case CartonConstants.UPDATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.CartonId === action.data.CartonId ? action.data : item\r\n )\r\n };\r\n case CartonConstants.UPDATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n case CartonConstants.DELETE_REQUEST:\r\n return {\r\n ...state,\r\n deleting: true\r\n };\r\n case CartonConstants.DELETE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.CartonId === action.data ? {\r\n CompanyId: item.CompanyId,\r\n CartonName: item.CartonName,\r\n //roleId: item.roleId,\r\n //RoleName: item.roleName,\r\n //RoleDesc: item.RoleDesc,\r\n isActive: item.isActive,\r\n //CreatedDate: item.CreatedDate\r\n } : item\r\n )\r\n };\r\n case CartonConstants.DELETE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n case CartonConstants.GETCARTONDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case CartonConstants.GETCARTONDDL_SUCCESS:\r\n return {\r\n ...state,\r\n cartonddl: action.datas\r\n };\r\n case CartonConstants.GETCARTONDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n //case CartonConstants.GETALL_FAILURE:\r\n // return {\r\n // ...state,\r\n // error: action.error\r\n // };\r\n//\r\n // case CartonConstants.GETPRDCTDDL_REQUEST:\r\n // return {\r\n // ...state,\r\n // loading: true\r\n // };\r\n //case CartonConstants.GETPRDCTDDL_SUCCESS:\r\n // return {\r\n // ...state,\r\n // prdctddl: action.datas\r\n // };\r\n //case CartonConstants.GETPRDCTDDL_FAILURE:\r\n // return {\r\n // ...state,\r\n // error: action.error\r\n // };\r\n // case CartonConstants.GET_PAGES_REQUEST:\r\n // return {\r\n // ...state,\r\n // getpages: true\r\n // };\r\n // case CartonConstants.GET_PAGES_SUCCESS:\r\n // return {\r\n // ...state,\r\n // pages: action.pages\r\n // };\r\n // case CartonConstants.GET_PAGES_FAILURE:\r\n // return {\r\n // ...state,\r\n // error: action.error\r\n // };\r\n case CartonConstants.ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n activating: true\r\n };\r\n case CartonConstants.ISACTIVE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.CartonId === action.data.CartonId ? {\r\n CompanyId: item.CompanyId,\r\n CartonName: item.CartonName,\r\n //RoleId: item.RoleId,\r\n //RoleName: item.RoleName,\r\n //RoleDesc: item.RoleDesc,\r\n TotalRows: item.TotalRows,\r\n IsActive: action.data.IsActive,\r\n CreatedDate: item.CreatedDate\r\n } : item\r\n )\r\n };\r\n case CartonConstants.ISACTIVE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n}","import { productConstants } from '../constants';\r\n\r\nexport function product(state = {}, action) {\r\n switch (action.type) {\r\n case productConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case productConstants.DIALOG_REQUEST:\r\n return {\r\n ...state,\r\n showDialog: action.isbool\r\n };\r\n case productConstants.DIALOG_ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n showIsActiveDialog: action.isbool\r\n };\r\n case productConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case productConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case productConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case productConstants.GET_ID_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case productConstants.GET_ID_SUCCESS:\r\n return {\r\n ...state,\r\n Ids: action.datas\r\n };\r\n case productConstants.GET_ID_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case productConstants.UPDATE_ID_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case productConstants.UPDATE_ID_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case productConstants.UPDATE_ID_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case productConstants.GET_MRP_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case productConstants.GET_MRP_SUCCESS:\r\n return {\r\n ...state,\r\n MRPData: action.datas\r\n };\r\n case productConstants.GET_MRP_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case productConstants.ADD_MRP_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case productConstants.ADD_MRP_SUCCESS:\r\n return {\r\n ...state,\r\n addData: action.datas\r\n };\r\n case productConstants.ADD_MRP_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case productConstants.CREATE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true\r\n };\r\n case productConstants.CREATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items == null ? [action.data] : [action.data, ...state.items]\r\n };\r\n case productConstants.CREATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case productConstants.UPDATE_REQUEST:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.ProductId == action.data.ProductId ? { ...item, updating: true } : item\r\n )\r\n };\r\n case productConstants.UPDATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.ProductId === action.data.ProductId ? action.data : item\r\n )\r\n };\r\n case productConstants.UPDATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case productConstants.DELETE_REQUEST:\r\n return {\r\n ...state,\r\n deleting: true\r\n };\r\n case productConstants.DELETE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.ProductId === action.data ? {\r\n ProductId: item.ProductId,\r\n CompanyId: item.CompanyId,\r\n CompanyName: item.CompanyName,\r\n ProductCode: item.ProductCode,\r\n ProductName: item.ProductName,\r\n ProductDescription: item.ProductDescription,\r\n PermissibleScan: item.PermissibleScan,\r\n GenuineMessage: item.GenuineMessage,\r\n AlreadyScannedMsg: item.AlreadyScannedMsg,\r\n ProductImage: item.ProductImage,\r\n GenuineAudio: item.GenuineAudio,\r\n AlreadyScannedAudio: item.AlreadyScannedAudio,\r\n ProductSpecification: item.ProductSpecification,\r\n IsActive: false,\r\n CreatedDate: item.CreatedDate,\r\n UpdatedDate: item.UpdatedDate,\r\n CategoryId: item.CategoryId,\r\n // subcategoryId : item.subcategoryId,\r\n CategoryName: item.CategoryName,\r\n // subcategoryName : item.subcategoryName,\r\n ProductWarranty: item.ProductWarranty,\r\n AboutThisItem: item.AboutThisItem,\r\n PackageContent: item.PackageContent\r\n } : item\r\n )\r\n };\r\n case productConstants.DELETE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case productConstants.GETPRDCTDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case productConstants.GETPRDCTDDL_SUCCESS:\r\n return {\r\n ...state,\r\n prdctddl: action.datas\r\n };\r\n case productConstants.GETPRDCTDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case productConstants.ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n activating: true\r\n };\r\n case productConstants.ISACTIVE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.ProductId === action.data.ProductId ? {\r\n ProductId: item.ProductId,\r\n CompanyId: item.CompanyId,\r\n CompanyName: item.CompanyName,\r\n ProductCode: item.ProductCode,\r\n ProductName: item.ProductName,\r\n ProductDescription: item.ProductDescription,\r\n PermissibleScan: item.PermissibleScan,\r\n GenuineMessage: item.GenuineMessage,\r\n AlreadyScannedMsg: item.AlreadyScannedMsg,\r\n ProductImage: item.ProductImage,\r\n GenuineAudio: item.GenuineAudio,\r\n AlreadyScannedAudio: item.AlreadyScannedAudio,\r\n ProductSpecification: item.ProductSpecification,\r\n IsActive: action.data.IsActive,\r\n TotalRows: item.TotalRows,\r\n CreatedDate: item.CreatedDate,\r\n UpdatedDate: item.UpdatedDate,\r\n ProductWarranty: item.ProductWarranty,\r\n AboutThisItem: item.AboutThisItem,\r\n PackageContent: item.PackageContent\r\n } : item\r\n )\r\n };\r\n case productConstants.ISACTIVE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n default:\r\n return state\r\n }\r\n}\r\n","import { roleMasterConstants } from '../constants';\r\n\r\nexport function role(state = {}, action) {\r\n switch (action.type) {\r\n case roleMasterConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case roleMasterConstants.DIALOG_REQUEST:\r\n return {\r\n ...state,\r\n showDialog: action.isbool\r\n };\r\n case roleMasterConstants.DIALOG_ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n showIsActiveDialog: action.isbool\r\n };\r\n case roleMasterConstants.UPDATE_PAGE_STORE:\r\n return {\r\n ...state,\r\n pages: action.pageList\r\n };\r\n case roleMasterConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case roleMasterConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case roleMasterConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case roleMasterConstants.CREATE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true\r\n };\r\n case roleMasterConstants.CREATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items == null ? [action.data] : [action.data, ...state.items]\r\n };\r\n case roleMasterConstants.CREATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case roleMasterConstants.UPDATE_REQUEST:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.RoleId === action.data.RoleId ? { ...item, updating: true } : item\r\n )\r\n };\r\n case roleMasterConstants.UPDATE_SUCCESS:\r\n return {\r\n ...state,\r\n roleUpdate: state.items.map(item =>\r\n item.RoleId === action.data.RoleId ? action.data : item\r\n )\r\n };\r\n case roleMasterConstants.UPDATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case roleMasterConstants.DELETE_REQUEST:\r\n return {\r\n ...state,\r\n deleting: true\r\n };\r\n case roleMasterConstants.DELETE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.RoleId === action.data ? {\r\n CompanyId: item.CompanyId,\r\n CompanyName: item.CompanyName,\r\n roleId: item.roleId,\r\n RoleName: item.roleName,\r\n RoleDesc: item.RoleDesc,\r\n isActive: item.isActive,\r\n CreatedDate: item.CreatedDate\r\n } : item\r\n )\r\n };\r\n case roleMasterConstants.DELETE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case roleMasterConstants.GETROLEDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case roleMasterConstants.GETROLEDDL_SUCCESS:\r\n return {\r\n ...state,\r\n rollddl: action.datas\r\n };\r\n case roleMasterConstants.GETROLEDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case roleMasterConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case roleMasterConstants.GET_PAGES_REQUEST:\r\n return {\r\n ...state,\r\n getpages: true\r\n };\r\n case roleMasterConstants.GET_PAGES_SUCCESS:\r\n return {\r\n ...state,\r\n pages: action.pages\r\n };\r\n case roleMasterConstants.GET_PAGES_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case roleMasterConstants.ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n activating: true\r\n };\r\n case roleMasterConstants.ISACTIVE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.RoleId === action.data.RoleId ? {\r\n CompanyId: item.CompanyId,\r\n CompanyName: item.CompanyName,\r\n RoleId: item.RoleId,\r\n RoleName: item.RoleName,\r\n RoleDesc: item.RoleDesc,\r\n TotalRows: item.TotalRows,\r\n IsActive: action.data.IsActive,\r\n CreatedDate: item.CreatedDate\r\n } : item\r\n )\r\n };\r\n case roleMasterConstants.ISACTIVE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n}","import { dashboardConstants } from '../constants';\r\n\r\nexport function dashboard(state = {}, action) { \r\n switch (action.type) {\r\n case dashboardConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case dashboardConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case dashboardConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case dashboardConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n \r\n default:\r\n return state\r\n }\r\n}\r\n","import { loginConstants } from \"../constants\";\r\n\r\nexport function login(state = {}, action) {\r\n switch (action.type) {\r\n case loginConstants.CREATE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true,\r\n };\r\n case loginConstants.CREATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: [action.data],\r\n };\r\n case loginConstants.CREATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case loginConstants.TIMEOUT_SUCCESS:\r\n return {\r\n ...state,\r\n enable: action.data,\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { menuConstants } from '../constants';\r\n \r\nexport function menu(state = {}, action) { \r\n switch (action.type) {\r\n case menuConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case menuConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case menuConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n}","import { changePasswordConstants } from '../constants';\r\n\r\nexport function changePassword(state = {}, action) {\r\n switch (action.type) {\r\n \r\n case changePasswordConstants.CREATE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true\r\n };\r\n case changePasswordConstants.CREATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: [action.data]\r\n };\r\n case changePasswordConstants.CREATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n case changePasswordConstants.CREATE_FORGOT_REQUEST:\r\n return {\r\n ...state,\r\n creating: true\r\n };\r\n case changePasswordConstants.CREATE_FORGOT_SUCCESS:\r\n return {\r\n ...state,\r\n items: [action.data, ...state.items]\r\n };\r\n case changePasswordConstants.CREATE_FORGOT_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n }; \r\n case changePasswordConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case changePasswordConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case changePasswordConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n \r\n default:\r\n return state\r\n }\r\n}\r\n","import { mappingRptConstants } from '../constants';\r\n\r\nexport function mappingRpt(state = {}, action) {\r\n switch (action.type) {\r\n case mappingRptConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case mappingRptConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case mappingRptConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case mappingRptConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case mappingRptConstants.GETEXPORT_REQUEST:\r\n return {\r\n ...state,\r\n exporting: true\r\n };\r\n case mappingRptConstants.GETEXPORT_SUCCESS:\r\n return {\r\n ...state,\r\n exportitems: action.datas\r\n };\r\n case mappingRptConstants.GETEXPORT_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n\r\n}","import { DemappingRptConstants } from \"../constants/DemappingRptConstants\";\r\n\r\nexport function DemappingRpt(state = {}, action) {\r\n switch (action.type) {\r\n case DemappingRptConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case DemappingRptConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case DemappingRptConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case DemappingRptConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case DemappingRptConstants.GETEXPORT_REQUEST:\r\n return {\r\n ...state,\r\n exporting: true\r\n };\r\n case DemappingRptConstants.GETEXPORT_SUCCESS:\r\n return {\r\n ...state,\r\n exportitems: action.datas\r\n };\r\n case DemappingRptConstants.GETEXPORT_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n\r\n}","import { DamageRptConstants } from \"../constants/DamageRptConstants\";\r\n\r\nexport function DamageRpt(state = {}, action) {\r\n switch (action.type) {\r\n case DamageRptConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case DamageRptConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case DamageRptConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case DamageRptConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case DamageRptConstants.GETEXPORT_REQUEST:\r\n return {\r\n ...state,\r\n exporting: true\r\n };\r\n case DamageRptConstants.GETEXPORT_SUCCESS:\r\n return {\r\n ...state,\r\n exportitems: action.datas\r\n };\r\n case DamageRptConstants.GETEXPORT_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n\r\n}","import { FeedbackRptConstants } from \"../constants\";\r\n\r\nexport function FeedbackRpt(state = {}, action) {\r\n switch (action.type) {\r\n case FeedbackRptConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool,\r\n };\r\n case FeedbackRptConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case FeedbackRptConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas,\r\n };\r\n case FeedbackRptConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case FeedbackRptConstants.GETEXPORT_REQUEST:\r\n return {\r\n ...state,\r\n exporting: true,\r\n };\r\n case FeedbackRptConstants.GETEXPORT_SUCCESS:\r\n return {\r\n ...state,\r\n exportitems: action.datas,\r\n };\r\n case FeedbackRptConstants.GETEXPORT_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { SqlEditorConstants } from \"../constants\";\r\n\r\nexport function SqlEditor(state = {}, action) {\r\n switch (action.type) {\r\n case SqlEditorConstants.RUN_SCRIPT_REQUEST:\r\n return {\r\n ...state,\r\n creating: true\r\n };\r\n case SqlEditorConstants.RUN_SCRIPT_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.data\r\n };\r\n case SqlEditorConstants.RUN_SCRIPT_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n}\r\n","import { issueNoConstants } from '../constants';\r\n\r\nexport function issueNo(state = {}, action) {\r\n switch (action.type) {\r\n case issueNoConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case issueNoConstants.DIALOG_REQUEST:\r\n return {\r\n ...state,\r\n showDialog: action.isbool\r\n };\r\n case issueNoConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case issueNoConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case issueNoConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n case issueNoConstants.GETALL_FROMNO_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case issueNoConstants.GETALL_FROMNO_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case issueNoConstants.GETALL_FROMNO_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case issueNoConstants.CREATE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true\r\n };\r\n case issueNoConstants.CREATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items == null ? [action.data] : [action.data, ...state.items]\r\n };\r\n case issueNoConstants.CREATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case issueNoConstants.UPDATE_REQUEST:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.IssueId == action.data.IssueId ? { ...item, updating: true } : item\r\n )\r\n };\r\n case issueNoConstants.UPDATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.IssueId === action.data.IssueId ? action.data : item\r\n )\r\n };\r\n case issueNoConstants.UPDATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case issueNoConstants.DELETE_REQUEST:\r\n return {\r\n ...state,\r\n deleting: true\r\n };\r\n case issueNoConstants.DELETE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.issueId === action.data ? {\r\n CreatedBy: item.CreatedBy,\r\n CreatedDt: item.CreatedDt,\r\n issueId: item.issueId,\r\n salesOrderNo: item.salesOrderNo,\r\n companyId: item.companyId,\r\n UpdatedBy: item.UpdatedBy,\r\n UpdatedDt: item.UpdatedDt,\r\n FromNo: item.FromNo,\r\n ToNo: item.ToNo,\r\n IssueQty: item.IssueQty\r\n } : item\r\n )\r\n };\r\n case issueNoConstants.DELETE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n}\r\n","import { damageConstants } from '../constants';\r\n\r\nexport function damage(state = {}, action) {\r\n switch (action.type) {\r\n case damageConstants.DIALOG_REQUEST:\r\n return {\r\n ...state,\r\n showDialog: action.isbool\r\n };\r\n case damageConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case damageConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case damageConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case damageConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case damageConstants.CREATE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true\r\n };\r\n case damageConstants.CREATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.data\r\n };\r\n case damageConstants.CREATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case damageConstants.UPDATE_REQUEST:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.MappingId == action.data.MappingId ? { ...item, updating: true } : item\r\n )\r\n };\r\n case damageConstants.UPDATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.MappingId === action.data.MappingId ? action.data : item\r\n )\r\n };\r\n case damageConstants.UPDATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case damageConstants.DELETE_REQUEST:\r\n return {\r\n ...state,\r\n deleting: true\r\n };\r\n case damageConstants.DELETE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.damageId === action.data ? {\r\n CreatedBy: item.CreatedBy,\r\n CreatedDt: item.CreatedDt,\r\n damageId: item.damageId,\r\n productName: item.productName,\r\n UpdatedBy: item.UpdatedBy,\r\n UpdatedDt: item.UpdatedDt,\r\n FromNo:item.FromNo,\r\n ToNo:item.ToNo,\r\n Qty:item.Qty\r\n } : item\r\n )\r\n };\r\n case damageConstants.DELETE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n}\r\n","import { mappingConstants } from '../constants';\r\n\r\nexport function mapping(state = {}, action) {\r\n switch (action.type) {\r\n case mappingConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case mappingConstants.DIALOG_REQUEST:\r\n return {\r\n ...state,\r\n showDialog: action.isbool\r\n };\r\n\r\n case mappingConstants.DIALOGUE_REQUEST:\r\n return {\r\n ...state,\r\n showDialogue: action.isbool\r\n };\r\n case mappingConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case mappingConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case mappingConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case mappingConstants.CREATE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true\r\n };\r\n case mappingConstants.CREATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items == null ? [action.data] : [action.data, ...state.items]\r\n };\r\n case mappingConstants.CREATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case mappingConstants.UPDATE_REQUEST:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.MappingId == action.data.MappingId ? { ...item, updating: true } : item\r\n )\r\n };\r\n case mappingConstants.UPDATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.MappingId === action.data.MappingId ? action.data : item\r\n )\r\n };\r\n case mappingConstants.UPDATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case mappingConstants.DELETE_REQUEST:\r\n return {\r\n ...state,\r\n deleting: true\r\n };\r\n case mappingConstants.DELETE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.mappingId === action.data ? {\r\n CreatedBy: item.CreatedBy,\r\n CreatedDt: item.CreatedDt,\r\n mappingId: item.mappingId,\r\n productName: item.productName,\r\n UpdatedBy: item.UpdatedBy,\r\n UpdatedDt: item.UpdatedDt,\r\n FromNo: item.FromNo,\r\n ToNo: item.ToNo,\r\n Qty: item.Qty\r\n } : item\r\n )\r\n };\r\n case mappingConstants.DELETE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n case mappingConstants.GETALL_TONO_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case mappingConstants.GETALL_TONO_SUCCESS:\r\n return {\r\n ...state,\r\n issueData: action.datas\r\n };\r\n case mappingConstants.GETALL_TONO_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n case mappingConstants.GETALL_AVAILABLE_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case mappingConstants.GETALL_AVAILABLE_SUCCESS:\r\n return {\r\n ...state,\r\n Issueseries: action.datas\r\n };\r\n case mappingConstants.GETALL_AVAILABLE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n}\r\n","import { demappingConstants } from '../constants';\r\n\r\nexport function demapping(state = {}, action) {\r\n switch (action.type) {\r\n case demappingConstants.DIALOG_REQUEST:\r\n return {\r\n ...state,\r\n showDialog: action.isbool\r\n };\r\n case demappingConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case demappingConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case demappingConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case demappingConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case demappingConstants.CREATE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true\r\n };\r\n case demappingConstants.CREATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.data\r\n };\r\n case demappingConstants.CREATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case demappingConstants.UPDATE_REQUEST:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.demappingId == action.data.demappingId ? { ...item, updating: true } : item\r\n )\r\n };\r\n case demappingConstants.UPDATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.demappingId === action.data.demappingId ? action.data : item\r\n )\r\n };\r\n case demappingConstants.UPDATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case demappingConstants.DELETE_REQUEST:\r\n return {\r\n ...state,\r\n deleting: true\r\n };\r\n case demappingConstants.DELETE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.demappingId === action.data ? {\r\n CreatedBy: item.CreatedBy,\r\n CreatedDt: item.CreatedDt,\r\n demappingId: item.demappingId,\r\n productName: item.productName,\r\n UpdatedBy: item.UpdatedBy,\r\n UpdatedDt: item.UpdatedDt,\r\n FromNo:item.FromNo,\r\n ToNo:item.ToNo,\r\n Qty:item.Qty\r\n } : item\r\n )\r\n };\r\n case demappingConstants.DELETE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n}\r\n","import { productAuthenticationConstants } from '../constants';\r\n\r\nexport function productAuthentication(state = {}, action) {\r\n switch (action.type) {\r\n case productAuthenticationConstants.FEEDBACK_DIALOG_REQUEST:\r\n return {\r\n ...state,\r\n showDialogFeedback: action.isbool\r\n };\r\n case productAuthenticationConstants.WARRANTY_DIALOG_REQUEST:\r\n return {\r\n ...state,\r\n showDialogWarranty: action.isbool\r\n };\r\n case productAuthenticationConstants.UPDATE_FEEDBACK_REQUEST:\r\n return {\r\n ...state,\r\n isfeedback: true\r\n };\r\n case productAuthenticationConstants.UPDATE_FEEDBACK_SUCCESS:\r\n return {\r\n ...state,\r\n feedback: action.datas\r\n };\r\n case productAuthenticationConstants.UPDATE_FEEDBACK_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case productAuthenticationConstants.UPDATE_WARRANTY_REQUEST:\r\n return {\r\n ...state,\r\n isWarranty: true\r\n };\r\n case productAuthenticationConstants.UPDATE_WARRANTY_SUCCESS:\r\n return {\r\n ...state,\r\n warranty: action.datas\r\n };\r\n case productAuthenticationConstants.UPDATE_WARRANTY_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case productAuthenticationConstants.UPDATE_RATING_REQUEST:\r\n return {\r\n ...state,\r\n israting: true\r\n };\r\n case productAuthenticationConstants.UPDATE_RATING_SUCCESS:\r\n return {\r\n ...state,\r\n rating: action.data\r\n };\r\n case productAuthenticationConstants.UPDATE_RATING_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n case productAuthenticationConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case productAuthenticationConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case productAuthenticationConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n case productAuthenticationConstants.CREATE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true\r\n };\r\n case productAuthenticationConstants.CREATE_SUCCESS:\r\n return {\r\n ...state,\r\n // items: [action.data, ...state.items]\r\n items: [action.data]\r\n\r\n };\r\n case productAuthenticationConstants.CREATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case productAuthenticationConstants.UPDATE_REQUEST:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.productAuthenticationId == action.data.productAuthenticationId ? { ...item, updating: true } : item\r\n )\r\n };\r\n case productAuthenticationConstants.UPDATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.productAuthenticationId === action.data.productAuthenticationId ? action.data : item\r\n )\r\n };\r\n case productAuthenticationConstants.UPDATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case productAuthenticationConstants.DELETE_REQUEST:\r\n return {\r\n ...state,\r\n deleting: true\r\n };\r\n case productAuthenticationConstants.DELETE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.productAuthenticationId === action.data ? {\r\n CreatedBy: item.CreatedBy,\r\n CreatedDt: item.CreatedDt,\r\n productAuthenticationId: item.productAuthenticationId,\r\n productName: item.productName,\r\n UpdatedBy: item.UpdatedBy,\r\n UpdatedDt: item.UpdatedDt,\r\n FromNo: item.FromNo,\r\n ToNo: item.ToNo,\r\n Qty: item.Qty\r\n } : item\r\n )\r\n };\r\n case productAuthenticationConstants.DELETE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case productAuthenticationConstants.WGETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case productAuthenticationConstants.WGETALL_SUCCESS:\r\n return {\r\n ...state,\r\n warranty: action.datas\r\n };\r\n case productAuthenticationConstants.WGETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n}\r\n","import { productConfigurationConstants } from '../constants';\r\n\r\nexport function productConfiguration(state = {}, action) {\r\n switch (action.type) {\r\n case productConfigurationConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case productConfigurationConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case productConfigurationConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case productConfigurationConstants.CREATE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true\r\n };\r\n case productConfigurationConstants.CREATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: [action.data, ...state.items]\r\n };\r\n case productConfigurationConstants.CREATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case productConfigurationConstants.UPDATE_REQUEST:\r\n return {\r\n ...state,\r\n items: state.items\r\n };\r\n case productConfigurationConstants.UPDATE_SUCCESS:\r\n return {\r\n //...state,\r\n items: null,\r\n isOpen: false,\r\n roleId: 0\r\n };\r\n case productConfigurationConstants.UPDATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n \r\n case productConfigurationConstants.DELETE_REQUEST:\r\n return {\r\n ...state,\r\n deleting: true\r\n };\r\n case productConfigurationConstants.DELETE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.productAuthenticationId === action.data ? {\r\n CreatedBy: item.CreatedBy,\r\n CreatedDt: item.CreatedDt,\r\n productAuthenticationId: item.productAuthenticationId,\r\n productName: item.productName,\r\n UpdatedBy: item.UpdatedBy,\r\n UpdatedDt: item.UpdatedDt,\r\n FromNo:item.FromNo,\r\n ToNo:item.ToNo,\r\n Qty:item.Qty\r\n } : item\r\n )\r\n };\r\n\r\n\r\n case productConfigurationConstants.GETCONFIGDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case productConfigurationConstants.GETCONFIGDDL_SUCCESS:\r\n return {\r\n ...state,\r\n configddl: action.datas\r\n };\r\n case productConfigurationConstants.GETCONFIGDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n\r\n case productConfigurationConstants.DELETE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case productConfigurationConstants.RESET_REQUEST:\r\n return {\r\n ...state,\r\n reseting: action.isbool\r\n };\r\n default:\r\n return state\r\n }\r\n}","import { companyConstants } from '../constants';\r\n\r\nexport function company(state = {}, action) {\r\n switch (action.type) {\r\n case companyConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case companyConstants.DIALOG_REQUEST:\r\n return {\r\n ...state,\r\n showDialog: action.isbool\r\n };\r\n case companyConstants.DIALOG_ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n showIsActiveDialog: action.isbool\r\n };\r\n case companyConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case companyConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case companyConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case companyConstants.CREATE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true\r\n };\r\n case companyConstants.CREATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: [action.data, ...state.items]\r\n };\r\n case companyConstants.CREATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case companyConstants.UPDATE_REQUEST:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.CompanyId == action.data.CompanyId ? { ...item, updating: true } : item\r\n )\r\n };\r\n case companyConstants.UPDATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.CompanyId === action.data.CompanyId ? action.data : item\r\n )\r\n };\r\n case companyConstants.UPDATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case companyConstants.DELETE_REQUEST:\r\n return {\r\n ...state,\r\n deleting: true\r\n };\r\n case companyConstants.DELETE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.CompanyId === action.data ? {\r\n CompanyId: item.CompanyId,\r\n CompanyName: item.CompanyName,\r\n CompanyDisplayName: item.CompanyDisplayName,\r\n Prefix: item.Prefix,\r\n Email: item.Email,\r\n Mobile: item.Mobile,\r\n WebsiteURL: item.WebsiteURL,\r\n Address: item.Address,\r\n CompanyLogo: item.CompanyLogo,\r\n FakeMessage: item.FakeMessage,\r\n FakeAudio: item.FakeAudio,\r\n IsActive: false,\r\n CreatedDate: item.CreatedDate,\r\n UpdatedDate: item.UpdatedDate\r\n\r\n } : item\r\n )\r\n };\r\n case companyConstants.DELETE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n case companyConstants.GETCMPNYDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case companyConstants.GETCMPNYDDL_SUCCESS:\r\n return {\r\n ...state,\r\n cmpnyddl: action.datas\r\n };\r\n case companyConstants.GETCMPNYDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n case companyConstants.ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n activating: true\r\n };\r\n case companyConstants.ISACTIVE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.CompanyId === action.data.CompanyId ? {\r\n CompanyId: item.CompanyId,\r\n CompanyName: item.CompanyName,\r\n CompanyDisplayName: item.CompanyDisplayName,\r\n Prefix: item.Prefix,\r\n Email: item.Email,\r\n Mobile: item.Mobile,\r\n WebsiteURL: item.WebsiteURL,\r\n Address: item.Address,\r\n CompanyLogo: item.CompanyLogo,\r\n FakeMessage: item.FakeMessage,\r\n FakeAudio: item.FakeAudio,\r\n IsActive: action.data.IsActive,\r\n TotalRows: item.TotalRows,\r\n CreatedDate: item.CreatedDate,\r\n UpdatedDate: item.UpdatedDate\r\n\r\n } : item\r\n )\r\n };\r\n case companyConstants.ISACTIVE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n default:\r\n return state\r\n }\r\n}\r\n","import { OrderBookingConstants } from \"../constants\";\r\n\r\nexport function OrderBooking(state = {}, action) {\r\n switch (action.type) {\r\n case OrderBookingConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool,\r\n };\r\n case OrderBookingConstants.DIALOG_REQUEST:\r\n return {\r\n ...state,\r\n showDialog: action.isbool,\r\n };\r\n case OrderBookingConstants.DIALOG_ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n showIsActiveDialog: action.isbool,\r\n };\r\n case OrderBookingConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case OrderBookingConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas,\r\n };\r\n case OrderBookingConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case OrderBookingConstants.CREATE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true,\r\n };\r\n case OrderBookingConstants.CREATE_SUCCESS:\r\n return {\r\n ...state,\r\n items:\r\n state.items == null ? [action.data] : [action.data, ...state.items],\r\n };\r\n case OrderBookingConstants.CREATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case OrderBookingConstants.UPDATE_REQUEST:\r\n return {\r\n ...state,\r\n items: state.items.map((item) =>\r\n item.OrderBookingNo == action.data.OrderBookingNo\r\n ? { ...item, updating: true }\r\n : item\r\n ),\r\n };\r\n case OrderBookingConstants.UPDATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map((item) =>\r\n item.ProductId === action.data.ProductId ? action.data : item\r\n ),\r\n };\r\n case OrderBookingConstants.GETDEALERDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case OrderBookingConstants.GETDEALERDDL_SUCCESS:\r\n return {\r\n ...state,\r\n dealerddl: action.datas,\r\n };\r\n case OrderBookingConstants.GETDEALERDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n case OrderBookingConstants.GETSEARCH_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case OrderBookingConstants.GETSEARCH_SUCCESS:\r\n return {\r\n ...state,\r\n searchData: action.datas,\r\n };\r\n case OrderBookingConstants.GETSEARCH_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n case OrderBookingConstants.UPLOAD_SO_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case OrderBookingConstants.UPLOAD_SO_SUCCESS:\r\n return {\r\n ...state,\r\n uploadRes: action.datas,\r\n };\r\n case OrderBookingConstants.UPLOAD_SO_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n case OrderBookingConstants.GET_SO_LOG_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case OrderBookingConstants.GET_SO_LOG_SUCCESS:\r\n return {\r\n ...state,\r\n logData: action.datas,\r\n };\r\n case OrderBookingConstants.GET_SO_LOG_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n case OrderBookingConstants.GETPRODUCTS_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case OrderBookingConstants.GETPRODUCTS_SUCCESS:\r\n return {\r\n ...state,\r\n orderProducts: action.datas,\r\n };\r\n case OrderBookingConstants.GETCMPNYDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case OrderBookingConstants.UPDATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case OrderBookingConstants.DELETE_REQUEST:\r\n return {\r\n ...state,\r\n deleting: true,\r\n };\r\n case OrderBookingConstants.DELETE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map((item) =>\r\n item.OrderBookingNo === action.data\r\n ? {\r\n OrderBookingNo: item.OrderBookingNo,\r\n ProductId: item.ProductId,\r\n Qty: item.Qty,\r\n Remark: item.Remark,\r\n\r\n //CompanyName: item.CompanyName,\r\n //CompanyDisplayName: item.CompanyDisplayName,\r\n //Prefix: item.Prefix,\r\n //Email: item.Email,\r\n //Mobile: item.Mobile,\r\n //WebsiteURL: item.WebsiteURL,\r\n //Address: item.Address,\r\n //CompanyLogo: item.CompanyLogo,\r\n //FakeMessage: item.FakeMessage,\r\n //FakeAudio: item.FakeAudio,\r\n IsActive: false,\r\n CreatedDate: item.CreatedDate,\r\n UpdatedDate: item.UpdatedDate,\r\n }\r\n : item\r\n ),\r\n };\r\n case OrderBookingConstants.DELETE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n case OrderBookingConstants.GETCMPNYDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n // case OrderBookingConstants.GETCMPNYDDL_SUCCESS:\r\n // return {\r\n // ...state,\r\n // cmpnyddl: action.datas\r\n // };\r\n case OrderBookingConstants.GETCMPNYDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n case OrderBookingConstants.ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n activating: true,\r\n };\r\n case OrderBookingConstants.ISACTIVE_SUCCESS:\r\n return {\r\n ...state,\r\n success: state.items,\r\n };\r\n case OrderBookingConstants.ISACTIVE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n case OrderBookingConstants.GETORDERDTL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case OrderBookingConstants.GETORDERDTL_SUCCESS:\r\n ;\r\n return {\r\n ...state,\r\n OrderDetail: action.data,\r\n };\r\n case OrderBookingConstants.GETORDERDTL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { OrderBookingRptConstants } from \"../constants\";\r\n\r\nexport function OrderBookingRpt(state = {}, action) {\r\n switch (action.type) {\r\n case OrderBookingRptConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case OrderBookingRptConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case OrderBookingRptConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case OrderBookingRptConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case OrderBookingRptConstants.GETEXPORT_REQUEST:\r\n return {\r\n ...state,\r\n exporting: true\r\n };\r\n case OrderBookingRptConstants.GETEXPORT_SUCCESS:\r\n return {\r\n ...state,\r\n exportitems: action.datas,\r\n isDownload: state.isDownload == null ? 1 : state.isDownload + 1\r\n };\r\n case OrderBookingRptConstants.GETEXPORT_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n\r\n}","import { LoyaltySchemeRptConstants } from \"../constants\";\r\n\r\nexport function LoyaltySchemeRpt(state = {}, action) {\r\n switch (action.type) {\r\n case LoyaltySchemeRptConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case LoyaltySchemeRptConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case LoyaltySchemeRptConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case LoyaltySchemeRptConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case LoyaltySchemeRptConstants.GETEXPORT_REQUEST:\r\n return {\r\n ...state,\r\n exporting: true\r\n };\r\n case LoyaltySchemeRptConstants.GETEXPORT_SUCCESS:\r\n return {\r\n ...state,\r\n exportitems: action.datas\r\n };\r\n case LoyaltySchemeRptConstants.GETEXPORT_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n\r\n}","import { RedemptionLogRptConstants } from \"../constants\";\r\n\r\nexport function RedemptionLogRpt(state = {}, action) {\r\n switch (action.type) {\r\n case RedemptionLogRptConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case RedemptionLogRptConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case RedemptionLogRptConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case RedemptionLogRptConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case RedemptionLogRptConstants.GETEXPORT_REQUEST:\r\n return {\r\n ...state,\r\n exporting: true\r\n };\r\n case RedemptionLogRptConstants.GETEXPORT_SUCCESS:\r\n return {\r\n ...state,\r\n exportitems: action.datas\r\n };\r\n case RedemptionLogRptConstants.GETEXPORT_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n\r\n}","import { UserloyalityLogRptConstants } from \"../constants\";\r\n\r\nexport function UserloyalityLogRpt(state = {}, action) {\r\n switch (action.type) {\r\n case UserloyalityLogRptConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case UserloyalityLogRptConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case UserloyalityLogRptConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case UserloyalityLogRptConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case UserloyalityLogRptConstants.GETEXPORT_REQUEST:\r\n return {\r\n ...state,\r\n exporting: true\r\n };\r\n case UserloyalityLogRptConstants.GETEXPORT_SUCCESS:\r\n return {\r\n ...state,\r\n exportitems: action.datas\r\n };\r\n case UserloyalityLogRptConstants.GETEXPORT_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n\r\n}","import { RedemptionApprovalConstants } from \"../constants/RedemptionApprovalConstants\";\r\n\r\nexport function RedemptionApproval(state = {}, action) {\r\n \r\n switch (action.type) {\r\n case RedemptionApprovalConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case RedemptionApprovalConstants.DIALOG_REQUEST:\r\n return {\r\n ...state,\r\n showDialog: action.isbool\r\n };\r\n case RedemptionApprovalConstants.DIALOGUE_REQUEST:\r\n return {\r\n ...state,\r\n showDialogue: action.isbool\r\n };\r\n case RedemptionApprovalConstants.REJECT_DIALOGUE_REQUEST:\r\n return {\r\n ...state,\r\n canceldialog: action.isbool,\r\n };\r\n case RedemptionApprovalConstants.DIALOG_ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n showIsActiveDialog: action.isbool,\r\n approvedialog: action.isbool,\r\n canceldialog: action.isbool,\r\n };\r\n case RedemptionApprovalConstants.UPDATE_PAGE_STORE:\r\n return {\r\n ...state,\r\n pages: action.pageList\r\n };\r\n case RedemptionApprovalConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case RedemptionApprovalConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case RedemptionApprovalConstants.GETALL_USERPT_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case RedemptionApprovalConstants.GETALL_USERPT_SUCCESS:\r\n return {\r\n ...state,\r\n Userpoints: action.data\r\n //Userpoints: state.Userpoints == null ? [action.data] : [action.data, ...state.Userpoints]\r\n\r\n };\r\n case RedemptionApprovalConstants.GETALL_USERPT_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case RedemptionApprovalConstants.GETALL_USER_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case RedemptionApprovalConstants.GETALL_USER_SUCCESS:\r\n return {\r\n ...state,\r\n Userdataa: action.datas,\r\n\r\n };\r\n case RedemptionApprovalConstants.GETALL_USER_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case RedemptionApprovalConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case RedemptionApprovalConstants.APPROVE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true,\r\n activating: true,\r\n //approvedialog : action.isbool,\r\n };\r\n case RedemptionApprovalConstants.APPROVE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items == null ? [action.data] : [action.data, ...state.items]\r\n };\r\n case RedemptionApprovalConstants.APPROVE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n case RedemptionApprovalConstants.CANCEL_REQUEST:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.UserId === action.data.UserId ? { ...item, updating: true } : item\r\n ),\r\n activating: true,\r\n\r\n canceldialog: action.isbool,\r\n };\r\n case RedemptionApprovalConstants.CANCEL_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.UserId === action.data.UserId ? action.data : item\r\n )\r\n };\r\n case RedemptionApprovalConstants.CANCEL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case RedemptionApprovalConstants.DELETE_REQUEST:\r\n return {\r\n ...state,\r\n deleting: true\r\n };\r\n case RedemptionApprovalConstants.DELETE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.RoleId === action.data ? {\r\n CompanyId: item.CompanyId,\r\n CompanyName: item.CompanyName,\r\n roleId: item.roleId,\r\n RoleName: item.roleName,\r\n RoleDesc: item.RoleDesc,\r\n isActive: item.isActive,\r\n CreatedDate: item.CreatedDate\r\n } : item\r\n )\r\n };\r\n case RedemptionApprovalConstants.DELETE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case RedemptionApprovalConstants.GETROLEDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case RedemptionApprovalConstants.GETROLEDDL_SUCCESS:\r\n return {\r\n ...state,\r\n rollddl: action.datas\r\n };\r\n case RedemptionApprovalConstants.GETROLEDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case RedemptionApprovalConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case RedemptionApprovalConstants.GET_PAGES_REQUEST:\r\n return {\r\n ...state,\r\n getpages: true\r\n };\r\n case RedemptionApprovalConstants.GET_PAGES_SUCCESS:\r\n return {\r\n ...state,\r\n pages: action.pages\r\n };\r\n case RedemptionApprovalConstants.GET_PAGES_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case RedemptionApprovalConstants.ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n activating: true\r\n };\r\n case RedemptionApprovalConstants.ISACTIVE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.RoleId === action.data.RoleId ? {\r\n CompanyId: item.CompanyId,\r\n CompanyName: item.CompanyName,\r\n RoleId: item.RoleId,\r\n RoleName: item.RoleName,\r\n RoleDesc: item.RoleDesc,\r\n TotalRows: item.TotalRows,\r\n IsActive: action.data.IsActive,\r\n CreatedDate: item.CreatedDate\r\n } : item\r\n )\r\n };\r\n case RedemptionApprovalConstants.ISACTIVE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n case RedemptionApprovalConstants.CREATE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true\r\n };\r\n case RedemptionApprovalConstants.CREATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: [action.data, ...state.items]\r\n };\r\n case RedemptionApprovalConstants.CREATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n}","import { loyalityschemeConstants } from \"../constants/loyalityschemeConstants\";\r\n\r\nexport function loyalityscheme(state = {}, action) {\r\n switch (action.type) {\r\n case loyalityschemeConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case loyalityschemeConstants.DIALOG_REQUEST:\r\n return {\r\n ...state,\r\n showDialog: action.isbool\r\n };\r\n case loyalityschemeConstants.DIALOGUE_REQUEST:\r\n return {\r\n ...state,\r\n showDialogue: action.isbool\r\n };\r\n case loyalityschemeConstants.DIALOG_ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n showIsActiveDialog: action.isbool\r\n };\r\n case loyalityschemeConstants.UPDATE_PAGE_STORE:\r\n return {\r\n ...state,\r\n pages: action.pageList\r\n };\r\n case loyalityschemeConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case loyalityschemeConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case loyalityschemeConstants.GETALL_AVAILABLE_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case loyalityschemeConstants.GETALL_AVAILABLE_SUCCESS:\r\n return {\r\n ...state,\r\n Mappseries: action.datas,\r\n \r\n };\r\n case loyalityschemeConstants.GETALL_AVAILABLE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case loyalityschemeConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case loyalityschemeConstants.CREATE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true\r\n };\r\n case loyalityschemeConstants.CREATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items == null ? [action.data] : [action.data, ...state.items]\r\n };\r\n case loyalityschemeConstants.CREATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case loyalityschemeConstants.UPDATE_REQUEST:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.RoleId === action.data.RoleId ? { ...item, updating: true } : item\r\n )\r\n };\r\n case loyalityschemeConstants.UPDATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.RoleId === action.data.RoleId ? action.data : item\r\n )\r\n };\r\n case loyalityschemeConstants.UPDATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case loyalityschemeConstants.DELETE_REQUEST:\r\n return {\r\n ...state,\r\n deleting: true\r\n };\r\n case loyalityschemeConstants.DELETE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.RoleId === action.data ? {\r\n CompanyId: item.CompanyId,\r\n CompanyName: item.CompanyName,\r\n roleId: item.roleId,\r\n RoleName: item.roleName,\r\n RoleDesc: item.RoleDesc,\r\n isActive: item.isActive,\r\n CreatedDate: item.CreatedDate\r\n } : item\r\n )\r\n };\r\n case loyalityschemeConstants.DELETE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case loyalityschemeConstants.GETROLEDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case loyalityschemeConstants.GETROLEDDL_SUCCESS:\r\n return {\r\n ...state,\r\n rollddl: action.datas\r\n };\r\n case loyalityschemeConstants.GETROLEDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case loyalityschemeConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n case loyalityschemeConstants.GETPRDCTDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case loyalityschemeConstants.GETPRDCTDDL_SUCCESS:\r\n return {\r\n ...state,\r\n prdctddl: action.datas\r\n };\r\n case loyalityschemeConstants.GETPRDCTDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case loyalityschemeConstants.GET_PAGES_REQUEST:\r\n return {\r\n ...state,\r\n getpages: true\r\n };\r\n case loyalityschemeConstants.GET_PAGES_SUCCESS:\r\n return {\r\n ...state,\r\n pages: action.pages\r\n };\r\n case loyalityschemeConstants.GET_PAGES_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case loyalityschemeConstants.ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n activating: true\r\n };\r\n case loyalityschemeConstants.ISACTIVE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.RoleId === action.data.RoleId ? {\r\n CompanyId: item.CompanyId,\r\n CompanyName: item.CompanyName,\r\n RoleId: item.RoleId,\r\n RoleName: item.RoleName,\r\n RoleDesc: item.RoleDesc,\r\n TotalRows: item.TotalRows,\r\n IsActive: action.data.IsActive,\r\n CreatedDate: item.CreatedDate\r\n } : item\r\n )\r\n };\r\n case loyalityschemeConstants.ISACTIVE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n}","import { TertiaryPackingConstants } from \"../constants/TertiaryPackingConstants\";\r\n\r\nexport function TertiaryPacking(state = {}, action) {\r\n switch (action.type) {\r\n case TertiaryPackingConstants.ProductByQrScan_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case TertiaryPackingConstants.ProductByQrScan_SUCCESS:\r\n return {\r\n ...state,\r\n scanneditems:\r\n state.scanneditems == null\r\n ? [action.data]\r\n : [action.data, ...state.scanneditems],\r\n };\r\n case TertiaryPackingConstants.ProductByQrScan_Warning:\r\n return {\r\n ...state,\r\n warning: action.data == \"Invalid Item\" ? true : false,\r\n alreadyPacked: action.data != \"Invalid Item\" ? true : false,\r\n };\r\n case TertiaryPackingConstants.ProductByQrScan_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case TertiaryPackingConstants.UPDATE_SCANNED_REQUEST:\r\n return {\r\n ...state,\r\n scanneditems: state.updatedList,\r\n };\r\n case TertiaryPackingConstants.SAVE_SECONDARY_PACKING_RESUEST:\r\n return {\r\n ...state,\r\n saveing: true,\r\n };\r\n case TertiaryPackingConstants.SAVE_SECONDARY_PACKING_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case TertiaryPackingConstants.GETALL_CARTON_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case TertiaryPackingConstants.GETALL_CARTON_SUCCESS:\r\n return {\r\n ...state,\r\n Cartondata: action.datas,\r\n };\r\n case TertiaryPackingConstants.GETALL_CARTON_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case TertiaryPackingConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case TertiaryPackingConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n secondaryItems: action.data,\r\n };\r\n case TertiaryPackingConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case TertiaryPackingConstants.GETALL_SCAN_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case TertiaryPackingConstants.GETALL_SCAN_SUCCESS:\r\n return {\r\n ...state,\r\n TertiaryscanItems: action.data,\r\n };\r\n // return {\r\n // ...state,\r\n // items: state.secondaryItems.map(item =>\r\n // item.qr === action.data.qr ? {\r\n // scanlist: item.scanlist,\r\n // flag: item.flag,\r\n // } : item\r\n // )\r\n // };\r\n case TertiaryPackingConstants.GETALL_SCAN_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case TertiaryPackingConstants.Warning:\r\n return {\r\n ...state,\r\n warning: action.isbool,\r\n };\r\n case TertiaryPackingConstants.Alreadypacked:\r\n return {\r\n ...state,\r\n alreadyPacked: action.isbool,\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { TertiaryPackingRptConstants } from '../constants';\r\n\r\nexport function TertiaryPackingRpt(state = {}, action) {\r\n switch (action.type) {\r\n case TertiaryPackingRptConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case TertiaryPackingRptConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case TertiaryPackingRptConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case TertiaryPackingRptConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case TertiaryPackingRptConstants.GETEXPORT_REQUEST:\r\n return {\r\n ...state,\r\n exporting: true\r\n };\r\n case TertiaryPackingRptConstants.GETEXPORT_SUCCESS:\r\n return {\r\n ...state,\r\n exportitems: action.datas\r\n };\r\n case TertiaryPackingRptConstants.GETEXPORT_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n\r\n}","import { DispatchConstants } from \"../constants/DispatchConstants\";\r\nexport function Dispatch(state = {}, action) {\r\n switch (action.type) {\r\n case DispatchConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool,\r\n };\r\n case DispatchConstants.DIALOG_REQUEST:\r\n return {\r\n ...state,\r\n showDialog: action.isbool,\r\n };\r\n //case DispatchConstants.DIALOGUE_REQUEST:\r\n // return {\r\n // ...state,\r\n // showDialogue: action.isbool\r\n // };\r\n case DispatchConstants.DIALOG_ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n showIsActiveDialog: action.isbool,\r\n };\r\n //case DispatchConstants.UPDATE_PAGE_STORE:\r\n // return {\r\n // ...state,\r\n // pages: action.pageList\r\n // };\r\n case DispatchConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case DispatchConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas,\r\n };\r\n\r\n case DispatchConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n case DispatchConstants.GETALL_AVAILABLE_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case DispatchConstants.GETALL_AVAILABLE_SUCCESS:\r\n return {\r\n ...state,\r\n Mappseries: action.datas,\r\n };\r\n case DispatchConstants.GETALL_AVAILABLE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n case DispatchConstants.SO_DETAILS_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case DispatchConstants.SO_DETAILS_SUCCESS:\r\n return {\r\n ...state,\r\n SODetails: action.data,\r\n dealerId: action.data.ResponseData.DealerId,\r\n };\r\n case DispatchConstants.SO_DETAILS_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n case DispatchConstants.CREATE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true,\r\n };\r\n case DispatchConstants.CREATE_SUCCESS:\r\n return {\r\n ...state,\r\n Dispatch:\r\n state.items == null ? [action.data] : [action.data, ...state.items],\r\n isDownload: state.isDownload == null ? 1 : state.isDownload + 1,\r\n };\r\n case DispatchConstants.CREATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n case DispatchConstants.UPDATE_REQUEST:\r\n return {\r\n ...state,\r\n items: state.items.map((item) =>\r\n item.DispatchId === action.data.DispatchId\r\n ? { ...item, updating: true }\r\n : item\r\n ),\r\n };\r\n case DispatchConstants.UPDATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map((item) =>\r\n item.DispatchId === action.data.DispatchId ? action.data : item\r\n ),\r\n };\r\n case DispatchConstants.UPDATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n case DispatchConstants.DELETE_REQUEST:\r\n return {\r\n ...state,\r\n deleting: true,\r\n };\r\n case DispatchConstants.DELETE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map((item) =>\r\n item.DispatchId === action.data\r\n ? {\r\n CompanyId: item.CompanyId,\r\n DispatchName: item.DispatchName,\r\n //roleId: item.roleId,\r\n //RoleName: item.roleName,\r\n //RoleDesc: item.RoleDesc,\r\n isActive: item.isActive,\r\n //CreatedDate: item.CreatedDate\r\n }\r\n : item\r\n ),\r\n };\r\n case DispatchConstants.DELETE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n case DispatchConstants.GETDispatchDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case DispatchConstants.GETDispatchDDL_SUCCESS:\r\n return {\r\n ...state,\r\n Dispatchddl: action.datas,\r\n };\r\n case DispatchConstants.GETDispatchDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n //case DispatchConstants.GETALL_FAILURE:\r\n // return {\r\n // ...state,\r\n // error: action.error\r\n // };\r\n //\r\n // case DispatchConstants.GETPRDCTDDL_REQUEST:\r\n // return {\r\n // ...state,\r\n // loading: true\r\n // };\r\n //case DispatchConstants.GETPRDCTDDL_SUCCESS:\r\n // return {\r\n // ...state,\r\n // prdctddl: action.datas\r\n // };\r\n //case DispatchConstants.GETPRDCTDDL_FAILURE:\r\n // return {\r\n // ...state,\r\n // error: action.error\r\n // };\r\n // case DispatchConstants.GET_PAGES_REQUEST:\r\n // return {\r\n // ...state,\r\n // getpages: true\r\n // };\r\n // case DispatchConstants.GET_PAGES_SUCCESS:\r\n // return {\r\n // ...state,\r\n // pages: action.pages\r\n // };\r\n // case DispatchConstants.GET_PAGES_FAILURE:\r\n // return {\r\n // ...state,\r\n // error: action.error\r\n // };\r\n case DispatchConstants.ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n activating: true,\r\n };\r\n case DispatchConstants.ISACTIVE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map((item) =>\r\n item.DispatchId === action.data.DispatchId\r\n ? {\r\n CompanyId: item.CompanyId,\r\n DispatchName: item.DispatchName,\r\n //RoleId: item.RoleId,\r\n //RoleName: item.RoleName,\r\n //RoleDesc: item.RoleDesc,\r\n TotalRows: item.TotalRows,\r\n IsActive: action.data.IsActive,\r\n CreatedDate: item.CreatedDate,\r\n }\r\n : item\r\n ),\r\n };\r\n case DispatchConstants.ISACTIVE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case DispatchConstants.Warning:\r\n return {\r\n ...state,\r\n warning: action.isbool,\r\n };\r\n case DispatchConstants.Alreadypacked:\r\n return {\r\n ...state,\r\n alreadyPacked: action.isbool,\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { DispatchRptConstants } from '../constants';\r\n\r\nexport function DispatchReport(state = {}, action) {\r\n switch (action.type) {\r\n case DispatchRptConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case DispatchRptConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case DispatchRptConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case DispatchRptConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case DispatchRptConstants.GETEXPORT_REQUEST:\r\n return {\r\n ...state,\r\n exporting: true\r\n };\r\n case DispatchRptConstants.GETEXPORT_SUCCESS:\r\n debugger\r\n return {\r\n ...state,\r\n exportitems: action.datas,\r\n isDownload: state.isDownload == null ? 1 : state.isDownload + 1\r\n };\r\n case DispatchRptConstants.GETEXPORT_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n case DispatchRptConstants.GETPRINT_REQUEST:\r\n return {\r\n ...state,\r\n loding: true\r\n };\r\n case DispatchRptConstants.GETPRINT_SUCCESS:\r\n return {\r\n ...state,\r\n printdata: action.datas\r\n };\r\n case DispatchRptConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n\r\n}","import { ProductPurchaseRptConstants } from \"../constants/ProductPurchaseRptConstants\";\r\n\r\nexport function ProductPurchaseRpt(state = {}, action) {\r\n switch (action.type) {\r\n case ProductPurchaseRptConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case ProductPurchaseRptConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case ProductPurchaseRptConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n case ProductPurchaseRptConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case ProductPurchaseRptConstants.GETEXPORT_REQUEST:\r\n return {\r\n ...state,\r\n exporting: true\r\n };\r\n case ProductPurchaseRptConstants.GETEXPORT_SUCCESS:\r\n return {\r\n ...state,\r\n exportitems: action.datas\r\n };\r\n case ProductPurchaseRptConstants.GETEXPORT_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n\r\n}","import { secondaryPackingConstants } from \"../constants\";\r\n\r\nexport function secondaryPacking(state = {}, action) {\r\n switch (action.type) {\r\n case secondaryPackingConstants.ProductByQrScan_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case secondaryPackingConstants.ProductByQrScan_SUCCESS:\r\n return {\r\n ...state,\r\n scanneditems:\r\n state.scanneditems == null\r\n ? [action.data]\r\n : [action.data, ...state.scanneditems],\r\n };\r\n case secondaryPackingConstants.ProductQrScan_CARTONCOMPLETE:\r\n return {\r\n ...state,\r\n Tvisible: action.data,\r\n };\r\n case secondaryPackingConstants.ProductByQrScan_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case secondaryPackingConstants.ProductByQrScan_Warning:\r\n return {\r\n ...state,\r\n warning: action.data == \"no data found\" ? true : false,\r\n alreadyPacked: action.data != \"no data found\" ? true : false,\r\n };\r\n case secondaryPackingConstants.UPDATE_SCANNED_REQUEST:\r\n return {\r\n ...state,\r\n scanneditems: state.updatedList,\r\n };\r\n case secondaryPackingConstants.SAVE_SECONDARY_PACKING_RESUEST:\r\n return {\r\n ...state,\r\n saveing: true,\r\n };\r\n case secondaryPackingConstants.SAVE_SECONDARY_PACKING_SUCCESS:\r\n return {\r\n ...state,\r\n secondaryItems:\r\n state.secondaryItems == null\r\n ? [action.data]\r\n : [action.data, ...state.secondaryItems],\r\n scanneditems: undefined,\r\n };\r\n case secondaryPackingConstants.SECONDARY_PACKING_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.data,\r\n };\r\n case secondaryPackingConstants.SAVE_SECONDARY_PACKING_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case secondaryPackingConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case secondaryPackingConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n secondaryItems: action.data,\r\n };\r\n case secondaryPackingConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case secondaryPackingConstants.REMOVE_ITEM:\r\n return {\r\n ...state,\r\n scanneditems:\r\n state.scanneditems.filter((x) => x.SeqNo != action.data).length == 0\r\n ? undefined\r\n : state.scanneditems.filter((x) => x.SeqNo != action.data),\r\n };\r\n case secondaryPackingConstants.Warning:\r\n return {\r\n ...state,\r\n warning: action.isbool,\r\n };\r\n case secondaryPackingConstants.Alreadypacked:\r\n return {\r\n ...state,\r\n alreadyPacked: action.isbool,\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { SecondaryPackingRptConstants } from \"../constants\";\r\n\r\nexport function SecondaryPackingReport(state = {}, action) {\r\n switch (action.type) {\r\n case SecondaryPackingRptConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case SecondaryPackingRptConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case SecondaryPackingRptConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n secondaryitems: action.datas\r\n };\r\n case SecondaryPackingRptConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case SecondaryPackingRptConstants.GETEXPORT_REQUEST:\r\n return {\r\n ...state,\r\n exporting: true\r\n };\r\n case SecondaryPackingRptConstants.GETEXPORT_SUCCESS:\r\n return {\r\n ...state,\r\n exportitems: action.datas,\r\n isDownload: state.isDownload == null ? 1 : state.isDownload + 1\r\n };\r\n case SecondaryPackingRptConstants.GETEXPORT_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case SecondaryPackingRptConstants.GETVENDORDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case SecondaryPackingRptConstants.GETVENDORDDL_SUCCESS:\r\n return {\r\n ...state,\r\n vendorDDL: action.datas\r\n };\r\n case SecondaryPackingRptConstants.GETVENDORDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n\r\n}","import { dealerConstants, userConstants } from \"../constants\";\r\n\r\nexport function dealer(state = {}, action) {\r\n switch (action.type) {\r\n case userConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool,\r\n };\r\n case userConstants.DIALOG_REQUEST:\r\n return {\r\n ...state,\r\n showDialog: action.isbool,\r\n };\r\n case userConstants.DIALOG_ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n showIsActiveDialog: action.isbool,\r\n };\r\n case userConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case userConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas,\r\n };\r\n case userConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case dealerConstants.CREATE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true,\r\n };\r\n case dealerConstants.CREATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map((item) =>\r\n item.UserId === action.data.UserId ? action.data : item\r\n ),\r\n };\r\n case dealerConstants.CREATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case dealerConstants.UPDATE_REQUEST:\r\n return {\r\n ...state,\r\n items: state.items.map((item) =>\r\n item.UserId == action.data.UserId ? { ...item, updating: true } : item\r\n ),\r\n };\r\n case dealerConstants.UPDATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map((item) =>\r\n item.UserId === action.data.UserId ? action.data : item\r\n ),\r\n };\r\n case dealerConstants.UPDATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case userConstants.DELETE_REQUEST:\r\n return {\r\n ...state,\r\n deleting: true,\r\n };\r\n case userConstants.DELETE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map((item) =>\r\n item.UserId === action.data\r\n ? {\r\n UserId: item.userId,\r\n UserName: item.UserName,\r\n Email: item.Email,\r\n MobileNo: item.MobileNo,\r\n CompanyId: item.CompanyId,\r\n CompanyName: item.CompanyName,\r\n RoleId: item.RoleId,\r\n RoleName: item.RoleName,\r\n IsActive: item.isActive,\r\n Password: item.Password,\r\n ConfirmPassword: item.Password,\r\n CreatedDate: item.CreatedDate,\r\n }\r\n : item\r\n ),\r\n };\r\n\r\n case dealerConstants.GETSTATEDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case dealerConstants.GETSTATEDDL_SUCCESS:\r\n return {\r\n ...state,\r\n stateddl: action.datas,\r\n };\r\n case dealerConstants.GETSTATEDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case dealerConstants.GET_TRANSPORTATION_REQUEST:\r\n return {\r\n ...state,\r\n transportdllloading: true,\r\n };\r\n case dealerConstants.GET_TRANSPORTATION_SUCCESS:\r\n return {\r\n ...state,\r\n transportationModeddl: action.datas,\r\n };\r\n case dealerConstants.GET_TRANSPORTATION_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n //start Firm\r\n case dealerConstants.GETFIRMDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case dealerConstants.GETFIRMDDL_SUCCESS:\r\n return {\r\n ...state,\r\n firmddl: action.datas,\r\n };\r\n case dealerConstants.GETFIRMDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n //end firm\r\n\r\n //start Ship City\r\n case dealerConstants.GETSCITYDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case dealerConstants.GETSCITYDDL_SUCCESS:\r\n return {\r\n ...state,\r\n scityddl: action.datas,\r\n };\r\n case dealerConstants.GETSCITYDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n //end Ship City\r\n\r\n //start Bill City\r\n case dealerConstants.GETBCITYDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case dealerConstants.GETBCITYDDL_SUCCESS:\r\n return {\r\n ...state,\r\n bcityddl: action.datas,\r\n };\r\n case dealerConstants.GETBCITYDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n //end Bill City\r\n case userConstants.DELETE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case userConstants.ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n activating: true,\r\n };\r\n case dealerConstants.ISACTIVE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map((item) =>\r\n item.UserId === action.data.UserId\r\n ? {\r\n UserId: item.UserId,\r\n DealerName: item.DealerName,\r\n Email: item.Email,\r\n MobileNo: item.MobileNo,\r\n CompanyId: item.CompanyId,\r\n RoleId: item.RoleId,\r\n RoleName: item.RoleName,\r\n CityId: item.CityId,\r\n Bill_State: item.Bill_State,\r\n Ship_City: item.Ship_City,\r\n Bill_Pincode: item.Bill_Pincode,\r\n }\r\n : item\r\n ),\r\n };\r\n case userConstants.ISACTIVE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case dealerConstants.GETEXPORT_REQUEST:\r\n return {\r\n ...state,\r\n exporting: true,\r\n };\r\n case dealerConstants.GETEXPORT_SUCCESS:\r\n return {\r\n ...state,\r\n exportitems: action.datas,\r\n };\r\n case dealerConstants.GETEXPORT_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { categoryConstants } from \"../constants/categoryConstants\";\r\n\r\nexport function category(state = {}, action) {\r\n switch (action.type) {\r\n case categoryConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool\r\n };\r\n case categoryConstants.DIALOG_REQUEST:\r\n return {\r\n ...state,\r\n showDialog: action.isbool\r\n };\r\n case categoryConstants.DIALOG_REQUEST2:\r\n return {\r\n ...state,\r\n showDialog2: action.isbool\r\n };\r\n case categoryConstants.DIALOG_ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n showIsActiveDialog: action.isbool\r\n };\r\n case categoryConstants.DIALOG_ISACTIVE_REQUEST2:\r\n return {\r\n ...state,\r\n showIsActiveDialog2: action.isbool\r\n };\r\n case categoryConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case categoryConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas\r\n };\r\n\r\n case categoryConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n\r\n case categoryConstants.GETSUBALL_REQUEST:\r\n return {\r\n ...state,\r\n loading2: true\r\n };\r\n\r\n case categoryConstants.GETSUBALL_SUCCESS:\r\n return {\r\n ...state,\r\n subItems: action.datas\r\n };\r\n\r\n case categoryConstants.GETSUBALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n\r\n\r\n case categoryConstants.GETALL_AVAILABLE_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case categoryConstants.GETALL_AVAILABLE_SUCCESS:\r\n return {\r\n ...state,\r\n Mappseries: action.datas,\r\n\r\n };\r\n case categoryConstants.GETALL_AVAILABLE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n case categoryConstants.CREATE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true\r\n };\r\n case categoryConstants.CREATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items == null ? [action.data] : [action.data, ...state.items]\r\n };\r\n case categoryConstants.CREATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n case categoryConstants.UPDATE_REQUEST:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.CategoryId === action.data.CategoryId ? { ...item, updating: true } : item\r\n )\r\n };\r\n case categoryConstants.UPDATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.CategoryId === action.data.CategoryId ? action.data : item\r\n )\r\n };\r\n case categoryConstants.UPDATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n case categoryConstants.DELETE_REQUEST:\r\n return {\r\n ...state,\r\n deleting: true\r\n };\r\n case categoryConstants.DELETE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.CategoryId === action.data ? {\r\n CategoryName: item.CategoryName,\r\n isActive: item.isActive,\r\n } : item\r\n )\r\n };\r\n case categoryConstants.DELETE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case categoryConstants.ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n activating: true\r\n };\r\n case categoryConstants.ISACTIVE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.CategoryId === action.data.CategoryId ? {\r\n CategoryName: item.CategoryName,\r\n FilePath: item.FilePath,\r\n TotalRows: item.TotalRows,\r\n IsActive: action.data.IsActive,\r\n CreatedDate: item.CreatedDate\r\n } : item\r\n )\r\n };\r\n case categoryConstants.ISACTIVE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case categoryConstants.ISACTIVE2_REQUEST:\r\n return {\r\n ...state,\r\n activating: true\r\n };\r\n case categoryConstants.ISACTIVE2_SUCCESS:\r\n return {\r\n ...state,\r\n subItems: state.subItems.map(item =>\r\n item.SubCatId === action.data.SubCatId ? {\r\n CategoryName: item.CategoryName,\r\n SubCategoryName: item.SubCategoryName,\r\n SubCateFilePath: item.SubCateFilePath,\r\n TotalRows: item.TotalRows,\r\n IsActive: action.data.IsActive,\r\n CreatedDate: item.CreatedDate\r\n } : item\r\n )\r\n };\r\n case categoryConstants.ISACTIVE2_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n case categoryConstants.GETCATEGORYDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case categoryConstants.GETCATEGORYDDL_SUCCESS:\r\n \r\n return {\r\n ...state,\r\n categoryddl: action.datas\r\n };\r\n case categoryConstants.GETCATEGOYRDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n\r\n // DELETE_REQUEST:\r\n\r\n case categoryConstants.GETSUBCATEGORYDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case categoryConstants.GETSUBCATEGORYDDL_SUCCESS:\r\n return {\r\n ...state,\r\n subcategoryddl: action.datas\r\n };\r\n case categoryConstants.GETSUBCATEGOYRDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n}","import { QRCodeTrackingRptConstants } from \"../constants\";\r\n\r\nexport function QRCodeTrackingRpt(state = {}, action) {\r\n switch (action.type) {\r\n case QRCodeTrackingRptConstants.TRACK_SCAN_INFO_REQUEST:\r\n return {\r\n ...state,\r\n toggleLoading: true,\r\n };\r\n case QRCodeTrackingRptConstants.TRACK_SCAN_INFO_SUCCESS:\r\n ;\r\n return {\r\n ...state,\r\n TIDproducts: action.datas,\r\n qrs: false,\r\n did: true,\r\n tid: false,\r\n sid: false,\r\n };\r\n case QRCodeTrackingRptConstants.TRACK_SCAN_INFO_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case QRCodeTrackingRptConstants.TRACK_TOGGLE_REQUEST:\r\n return {\r\n ...state,\r\n toggleLoading: true,\r\n };\r\n case QRCodeTrackingRptConstants.TRACK_TOGGLE_SUCCESS:\r\n ;\r\n return {\r\n ...state,\r\n iddata: action.datas,\r\n };\r\n case QRCodeTrackingRptConstants.TRACK_TOGGLE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n case QRCodeTrackingRptConstants.TRACK_TOGGLE_2_REQUEST:\r\n return {\r\n ...state,\r\n toggle2Loading: true,\r\n };\r\n case QRCodeTrackingRptConstants.TRACK_TOGGLE_2_SUCCESS:\r\n \r\n return {\r\n ...state,\r\n iddata2: action.datas,\r\n };\r\n case QRCodeTrackingRptConstants.TRACK_TOGGLE_2_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case QRCodeTrackingRptConstants.TRACK_JOURNEY_INFO_REQUEST:\r\n return {\r\n ...state,\r\n toggleLoading: true,\r\n };\r\n case QRCodeTrackingRptConstants.TRACK_JOURNEY_INFO_SUCCESS:\r\n return {\r\n ...state,\r\n journeyList: action.datas,\r\n qrs: true,\r\n did: false,\r\n tid: false,\r\n sid: false,\r\n };\r\n case QRCodeTrackingRptConstants.TRACK_JOURNEY_INFO_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { WarrantyRegistrationReportConstants } from \"../constants\";\r\n\r\nexport function warranty(state = {}, action) {\r\n switch (action.type) {\r\n case WarrantyRegistrationReportConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool,\r\n };\r\n case WarrantyRegistrationReportConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case WarrantyRegistrationReportConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas,\r\n };\r\n case WarrantyRegistrationReportConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case WarrantyRegistrationReportConstants.GETEXPORT_REQUEST:\r\n return {\r\n ...state,\r\n exporting: true,\r\n };\r\n case WarrantyRegistrationReportConstants.GETEXPORT_SUCCESS:\r\n return {\r\n ...state,\r\n exportitems: action.datas,\r\n };\r\n case WarrantyRegistrationReportConstants.GETEXPORT_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { BinMasterConstants } from \"../constants\";\r\n\r\nexport function BinMaster(state = {}, action) {\r\n switch (action.type) {\r\n case BinMasterConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool,\r\n };\r\n case BinMasterConstants.DIALOG_REQUEST:\r\n return {\r\n ...state,\r\n showDialog: action.isbool,\r\n };\r\n case BinMasterConstants.DIALOG_ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n showIsActiveDialog: action.isbool,\r\n };\r\n case BinMasterConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case BinMasterConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas,\r\n };\r\n case BinMasterConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case BinMasterConstants.CREATE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true,\r\n };\r\n case BinMasterConstants.CREATE_SUCCESS:\r\n return {\r\n ...state,\r\n items:\r\n state.items == null ? [action.data] : [action.data, ...state.items],\r\n };\r\n case BinMasterConstants.CREATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case BinMasterConstants.UPDATE_REQUEST:\r\n return {\r\n ...state,\r\n items: state.items.map((item) =>\r\n item.BinId == action.data.BinId ? { ...item, updating: true } : item\r\n ),\r\n };\r\n case BinMasterConstants.UPDATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map((item) =>\r\n item.BinId === action.data.BinId ? action.data : item\r\n ),\r\n };\r\n case BinMasterConstants.UPDATE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case BinMasterConstants.DELETE_REQUEST:\r\n return {\r\n ...state,\r\n deleting: true,\r\n };\r\n case BinMasterConstants.DELETE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map((item) =>\r\n item.BinId === action.data\r\n ? {\r\n BinId: item.BinId,\r\n RowName: item.RowName,\r\n RowNo: item.ColNo,\r\n ColNo: item.ColNo,\r\n ColAddress: item.ColAddress,\r\n ColStatus : item.ColStatus, \r\n IsActive: item.isActive,\r\n \r\n }\r\n : item\r\n ),\r\n };\r\n\r\n case BinMasterConstants.GETWHDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case BinMasterConstants.GETWHDDL_SUCCESS:\r\n return {\r\n ...state,\r\n WarehouseDDL: action.datas,\r\n };\r\n case BinMasterConstants.GETWHDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n \r\n\r\n case BinMasterConstants.DELETE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case BinMasterConstants.ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n activating: true,\r\n };\r\n case BinMasterConstants.ISACTIVE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map((item) =>\r\n item.BinId === action.data.BinId\r\n ? {\r\n BinId: item.BinId,\r\n RowName: item.RowName,\r\n RowNo: item.ColNo,\r\n ColNo: item.ColNo,\r\n ColAddress: item.ColAddress,\r\n ColStatus : item.ColStatus, \r\n IsActive: item.isActive,\r\n }\r\n : item\r\n ),\r\n };\r\n case BinMasterConstants.ISACTIVE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case BinMasterConstants.GETEXPORT_REQUEST:\r\n return {\r\n ...state,\r\n exporting: true,\r\n };\r\n case BinMasterConstants.GETEXPORT_SUCCESS:\r\n return {\r\n ...state,\r\n exportitems: action.datas,\r\n };\r\n case BinMasterConstants.GETEXPORT_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n\r\n case BinMasterConstants.GETALLBIN_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case BinMasterConstants.GETALLBIN_SUCCESS:\r\n return {\r\n ...state,\r\n Binitems: action.datas\r\n };\r\n case BinMasterConstants.GETALLBIN_FAILURE:\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { WarrantyRejectRegistrationReportConstants } from \"../constants\";\r\n\r\nexport function warrantyReject(state = {}, action) {\r\n switch (action.type) {\r\n case WarrantyRejectRegistrationReportConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loding: action.isbool,\r\n };\r\n case WarrantyRejectRegistrationReportConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case WarrantyRejectRegistrationReportConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas,\r\n };\r\n case WarrantyRejectRegistrationReportConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case WarrantyRejectRegistrationReportConstants.GETEXPORT_REQUEST:\r\n return {\r\n ...state,\r\n exporting: true,\r\n };\r\n case WarrantyRejectRegistrationReportConstants.GETEXPORT_SUCCESS:\r\n return {\r\n ...state,\r\n exportitems: action.datas,\r\n };\r\n case WarrantyRejectRegistrationReportConstants.GETEXPORT_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { GiftMasterConstants } from \"../constants/GiftMasterConstants\";\r\n\r\nexport function GiftMaster(state = {}, action) {\r\n switch (action.type) {\r\n case GiftMasterConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loading: action.isbool\r\n };\r\n case GiftMasterConstants.DIALOG_REQUEST:\r\n return {\r\n ...state,\r\n showDialog: action.isbool\r\n };\r\n case GiftMasterConstants.DIALOGUE_REQUEST:\r\n return {\r\n ...state,\r\n showDialogue: action.isbool\r\n };\r\n case GiftMasterConstants.DIALOG_ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n showIsActiveDialog: action.isbool\r\n };\r\n case GiftMasterConstants.UPDATE_PAGE_STORE:\r\n return {\r\n ...state,\r\n pages: action.pageList\r\n };\r\n case GiftMasterConstants.GETALL_REQUEST:\r\n case GiftMasterConstants.GETALL_AVAILABLE_REQUEST:\r\n case GiftMasterConstants.GETROLEDDL_REQUEST:\r\n case GiftMasterConstants.GETPRDCTDDL_REQUEST:\r\n case GiftMasterConstants.GET_PAGES_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case GiftMasterConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas,\r\n loading: false\r\n };\r\n case GiftMasterConstants.GETALL_AVAILABLE_SUCCESS:\r\n return {\r\n ...state,\r\n Mappseries: action.datas,\r\n loading: false\r\n };\r\n case GiftMasterConstants.GETROLEDDL_SUCCESS:\r\n return {\r\n ...state,\r\n rollddl: action.datas,\r\n loading: false\r\n };\r\n case GiftMasterConstants.GETPRDCTDDL_SUCCESS:\r\n return {\r\n ...state,\r\n prdctddl: action.datas,\r\n loading: false\r\n };\r\n case GiftMasterConstants.GET_PAGES_SUCCESS:\r\n return {\r\n ...state,\r\n pages: action.pages,\r\n loading: false\r\n };\r\n case GiftMasterConstants.CREATE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true\r\n };\r\n case GiftMasterConstants.CREATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: [action.data, ...(state.items || [])],\r\n creating: false\r\n };\r\n case GiftMasterConstants.UPDATE_REQUEST:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.RoleId === action.data.RoleId ? { ...item, updating: true } : item\r\n )\r\n };\r\n case GiftMasterConstants.UPDATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.RoleId === action.data.RoleId ? action.data : item\r\n )\r\n };\r\n case GiftMasterConstants.DELETE_REQUEST:\r\n return {\r\n ...state,\r\n deleting: true\r\n };\r\n case GiftMasterConstants.DELETE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.filter(item => item.RoleId !== action.data)\r\n };\r\n case GiftMasterConstants.ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n activating: true\r\n };\r\n case GiftMasterConstants.ISACTIVE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.RoleId === action.data.RoleId ? { ...item, IsActive: action.data.IsActive } : item\r\n ),\r\n activating: false\r\n };\r\n\r\n \r\n //\\\r\n \r\n case GiftMasterConstants.GETQDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case GiftMasterConstants.GETQDDL_SUCCESS:\r\n return {\r\n ...state,\r\n quarterDDL: action.datas\r\n };\r\n case GiftMasterConstants.GETQDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n //\r\n\r\n // ProductDDl\r\n\r\n //\\\r\n \r\n case GiftMasterConstants.GETPDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case GiftMasterConstants.GETPDDL_SUCCESS:\r\n return {\r\n ...state,\r\n ProductDDList: action.datas\r\n };\r\n case GiftMasterConstants.GETPDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n //\r\n\r\n\r\n case GiftMasterConstants.CREATE_FAILURE:\r\n case GiftMasterConstants.UPDATE_FAILURE:\r\n case GiftMasterConstants.DELETE_FAILURE:\r\n case GiftMasterConstants.GETALL_FAILURE:\r\n case GiftMasterConstants.GETALL_AVAILABLE_FAILURE:\r\n case GiftMasterConstants.GETROLEDDL_FAILURE:\r\n case GiftMasterConstants.GETPRDCTDDL_FAILURE:\r\n case GiftMasterConstants.GET_PAGES_FAILURE:\r\n case GiftMasterConstants.ISACTIVE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n loading: false,\r\n creating: false,\r\n updating: false,\r\n deleting: false,\r\n activating: false\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { GiftGenerateConstants } from \"../constants/GiftGenerateConstants\";\r\n\r\nexport function GiftGenerate(state = {}, action) {\r\n switch (action.type) {\r\n case GiftGenerateConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loading: action.isbool\r\n };\r\n case GiftGenerateConstants.DIALOGUE_REQUEST:\r\n return {\r\n ...state,\r\n showDialogue: action.isbool\r\n };\r\n case GiftGenerateConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case GiftGenerateConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n TableData: action.datas,\r\n loading: false\r\n };\r\n case GiftGenerateConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n loading: false\r\n };\r\n case GiftGenerateConstants.GETROLEDDL_SUCCESS:\r\n return {\r\n ...state,\r\n quarterDDL: action.datas\r\n };\r\n case GiftGenerateConstants.GETROLEDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { ProductPackingConstants } from \"../constants\";\r\n\r\nexport function ProductPacking(state = {}, action) {\r\n switch (action.type) {\r\n case ProductPackingConstants.ProductByQrScan_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case ProductPackingConstants.ProductByQrScan_SUCCESS:\r\n return {\r\n ...state,\r\n scanneditems:\r\n state.scanneditems == null\r\n ? [action.data]\r\n : [action.data, ...state.scanneditems],\r\n };\r\n case ProductPackingConstants.ProductQrScan_CARTONCOMPLETE:\r\n return {\r\n ...state,\r\n Tvisible: action.data,\r\n };\r\n case ProductPackingConstants.ProductByQrScan_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case ProductPackingConstants.ProductByQrScan_Warning:\r\n return {\r\n ...state,\r\n warning: action.data == \"no data found\" ? true : false,\r\n alreadyPacked: action.data != \"no data found\" ? true : false,\r\n };\r\n case ProductPackingConstants.UPDATE_SCANNED_REQUEST:\r\n return {\r\n ...state,\r\n scanneditems: state.updatedList,\r\n };\r\n case ProductPackingConstants.SAVE_SECONDARY_PACKING_RESUEST:\r\n return {\r\n ...state,\r\n saveing: true,\r\n };\r\n case ProductPackingConstants.SAVE_SECONDARY_PACKING_SUCCESS:\r\n return {\r\n ...state,\r\n secondaryItems:\r\n state.secondaryItems == null\r\n ? [action.data]\r\n : [action.data, ...state.secondaryItems],\r\n scanneditems: undefined,\r\n };\r\n case ProductPackingConstants.SECONDARY_PACKING_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.data,\r\n };\r\n case ProductPackingConstants.SAVE_SECONDARY_PACKING_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case ProductPackingConstants.GETALL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n case ProductPackingConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n secondaryItems: action.data,\r\n };\r\n case ProductPackingConstants.GETALL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n };\r\n case ProductPackingConstants.REMOVE_ITEM:\r\n return {\r\n ...state,\r\n scanneditems:\r\n state.scanneditems.filter((x) => x.SeqNo != action.data).length == 0\r\n ? undefined\r\n : state.scanneditems.filter((x) => x.SeqNo != action.data),\r\n };\r\n case ProductPackingConstants.Warning:\r\n return {\r\n ...state,\r\n warning: action.isbool,\r\n };\r\n case ProductPackingConstants.Alreadypacked:\r\n return {\r\n ...state,\r\n alreadyPacked: action.isbool,\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { GiftMasterConstants } from \"../constants/GiftMasterConstants\";\r\n\r\nexport function VendorProductAllocation(state = {}, action) {\r\n switch (action.type) {\r\n case GiftMasterConstants.LOADING_REQUEST:\r\n return {\r\n ...state,\r\n loading: action.isbool\r\n };\r\n case GiftMasterConstants.DIALOG_REQUEST:\r\n return {\r\n ...state,\r\n showDialog: action.isbool\r\n };\r\n case GiftMasterConstants.DIALOGUE_REQUEST:\r\n return {\r\n ...state,\r\n showDialogue: action.isbool\r\n };\r\n case GiftMasterConstants.DIALOG_ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n showIsActiveDialog: action.isbool\r\n };\r\n case GiftMasterConstants.UPDATE_PAGE_STORE:\r\n return {\r\n ...state,\r\n pages: action.pageList\r\n };\r\n case GiftMasterConstants.GETALL_REQUEST:\r\n case GiftMasterConstants.GETALL_AVAILABLE_REQUEST:\r\n case GiftMasterConstants.GETROLEDDL_REQUEST:\r\n case GiftMasterConstants.GETPRDCTDDL_REQUEST:\r\n case GiftMasterConstants.GET_PAGES_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case GiftMasterConstants.GETALL_SUCCESS:\r\n return {\r\n ...state,\r\n items: action.datas,\r\n loading: false\r\n };\r\n case GiftMasterConstants.GETALL_AVAILABLE_SUCCESS:\r\n return {\r\n ...state,\r\n Mappseries: action.datas,\r\n loading: false\r\n };\r\n case GiftMasterConstants.GETROLEDDL_SUCCESS:\r\n return {\r\n ...state,\r\n rollddl: action.datas,\r\n loading: false\r\n };\r\n case GiftMasterConstants.GETPRDCTDDL_SUCCESS:\r\n return {\r\n ...state,\r\n prdctddl: action.datas,\r\n loading: false\r\n };\r\n case GiftMasterConstants.GET_PAGES_SUCCESS:\r\n return {\r\n ...state,\r\n pages: action.pages,\r\n loading: false\r\n };\r\n case GiftMasterConstants.CREATE_REQUEST:\r\n return {\r\n ...state,\r\n creating: true\r\n };\r\n case GiftMasterConstants.CREATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: [action.data, ...(state.items || [])],\r\n creating: false\r\n };\r\n case GiftMasterConstants.UPDATE_REQUEST:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.RoleId === action.data.RoleId ? { ...item, updating: true } : item\r\n )\r\n };\r\n case GiftMasterConstants.UPDATE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.RoleId === action.data.RoleId ? action.data : item\r\n )\r\n };\r\n case GiftMasterConstants.DELETE_REQUEST:\r\n return {\r\n ...state,\r\n deleting: true\r\n };\r\n case GiftMasterConstants.DELETE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.filter(item => item.RoleId !== action.data)\r\n };\r\n case GiftMasterConstants.ISACTIVE_REQUEST:\r\n return {\r\n ...state,\r\n activating: true\r\n };\r\n case GiftMasterConstants.ISACTIVE_SUCCESS:\r\n return {\r\n ...state,\r\n items: state.items.map(item =>\r\n item.RoleId === action.data.RoleId ? { ...item, IsActive: action.data.IsActive } : item\r\n ),\r\n activating: false\r\n };\r\n\r\n\r\n //\\\r\n\r\n case GiftMasterConstants.GETQDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case GiftMasterConstants.GETQDDL_SUCCESS:\r\n return {\r\n ...state,\r\n quarterDDL: action.datas\r\n };\r\n case GiftMasterConstants.GETQDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n //\r\n\r\n // ProductDDl\r\n\r\n //\\\r\n\r\n case GiftMasterConstants.GETPDDL_REQUEST:\r\n return {\r\n ...state,\r\n loading: true\r\n };\r\n case GiftMasterConstants.GETPDDL_SUCCESS:\r\n return {\r\n ...state,\r\n ProductDDList: action.datas\r\n };\r\n case GiftMasterConstants.GETPDDL_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error\r\n };\r\n //\r\n\r\n\r\n case GiftMasterConstants.CREATE_FAILURE:\r\n case GiftMasterConstants.UPDATE_FAILURE:\r\n case GiftMasterConstants.DELETE_FAILURE:\r\n case GiftMasterConstants.GETALL_FAILURE:\r\n case GiftMasterConstants.GETALL_AVAILABLE_FAILURE:\r\n case GiftMasterConstants.GETROLEDDL_FAILURE:\r\n case GiftMasterConstants.GETPRDCTDDL_FAILURE:\r\n case GiftMasterConstants.GET_PAGES_FAILURE:\r\n case GiftMasterConstants.ISACTIVE_FAILURE:\r\n return {\r\n ...state,\r\n error: action.error,\r\n loading: false,\r\n creating: false,\r\n updating: false,\r\n deleting: false,\r\n activating: false\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { createStore, applyMiddleware } from 'redux';\r\nimport thunkMiddleware from 'redux-thunk';\r\n//import { createLogger } from 'redux-logger';\r\nimport rootReducer from '../reducers';\r\n\r\n//const loggerMiddleware = createLogger();\r\n\r\nexport const store = createStore(\r\n rootReducer,\r\n applyMiddleware(\r\n thunkMiddleware,\r\n //loggerMiddleware\r\n )\r\n);","import { createBrowserHistory } from 'history';\r\n\r\nexport const history = createBrowserHistory();","export function authHeader() {\r\n // return authorization header with jwt token\r\n\r\n let user = JSON.parse(sessionStorage.getItem(\"user\"));\r\n const Curenturl = window.location.pathname;\r\n const nNumber = Curenturl.lastIndexOf(\"/\");\r\n const pageName = Curenturl.substring(nNumber + 1);\r\n\r\n if (user && user.Token) {\r\n return {\r\n Authorization: \"Bearer \" + user.Token,\r\n page: pageName,\r\n \"Content-Type\": \"application/json\",\r\n Accept: \"application/json\",\r\n //'Ocp-Apim-Subscription-Key': ` ${this.appContextService.subscriptionKey}`,\r\n \"X-Frame-Options\": \"Deny\",\r\n \"X-XSS-Protection\": \"1\",\r\n \"X-Content-Type-Options\": \"nosniff\",\r\n \"cache-control\": \"max-age=3153600\",\r\n };\r\n } else {\r\n sessionStorage.clear();\r\n window.location = \"/login\";\r\n }\r\n}\r\n\r\nexport function authHeaderFormData() {\r\n // return authorization header with jwt token\r\n\r\n let user = JSON.parse(sessionStorage.getItem(\"user\"));\r\n const Curenturl = window.location.pathname;\r\n const nNumber = Curenturl.lastIndexOf(\"/\");\r\n const pageName = Curenturl.substring(nNumber + 1);\r\n\r\n if (user && user.Token) {\r\n return {\r\n Authorization: \"Bearer \" + user.Token,\r\n page: pageName,\r\n //\"Content-Type\": \"multipart/form-data\",\r\n Accept: \"application/json\",\r\n //'Ocp-Apim-Subscription-Key': ` ${this.appContextService.subscriptionKey}`,\r\n \"X-Frame-Options\": \"Deny\",\r\n \"X-XSS-Protection\": \"1\",\r\n \"X-Content-Type-Options\": \"nosniff\",\r\n \"cache-control\": \"max-age=3153600\",\r\n };\r\n } else {\r\n sessionStorage.clear();\r\n window.location = \"/login\";\r\n }\r\n}\r\n\r\nexport function handleResponse(response) {\r\n return response.text().then((text) => {\r\n const originalReq = response.config;\r\n const curl = window.location.pathname;\r\n const data = text && JSON.parse(text);\r\n if (!response.ok) {\r\n if (\r\n response !== undefined &&\r\n response.status === 418 &&\r\n !curl.includes(\"/login\") &&\r\n !curl.includes(\"/pa\") &&\r\n !curl.includes(\"/wa\") &&\r\n !curl.includes(\"/home\") &&\r\n !curl.includes(\"/about\") &&\r\n !curl.includes(\"/warranty-terms\") &&\r\n !curl.includes(\"/privacy-policy\") &&\r\n !curl.includes(\"/delete-account-data\") &&\r\n !curl.includes(\"/tnc\") &&\r\n !curl.includes(\"/contact-us\") &&\r\n !curl.includes(\"/about-us\")\r\n ) {\r\n const obj = {\r\n ResponseMessage: \"User unauthorized, please contact admin.\",\r\n ResponseCode: response.status,\r\n };\r\n\r\n return obj;\r\n } else if (response.status === 401) {\r\n // auto logout if 401 response returned from api\r\n\r\n sessionStorage.clear();\r\n window.location = \"/login\";\r\n }\r\n\r\n const error = (data && data.message) || response.statusText;\r\n return Promise.reject(error);\r\n }\r\n return data;\r\n });\r\n}\r\n\r\nfunction logout() {\r\n sessionStorage.clear();\r\n}\r\n","import { authHeader, handleResponse } from \"../helpers\";\r\nexport const CartonService = {\r\n GetCarton,\r\n CreateCarton,\r\n UpdateCarton,\r\n GetActiveCartonDDL,\r\n};\r\n\r\nfunction GetCarton(data) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader(),\r\n body: JSON.stringify(data),\r\n };\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}CartonMaster/GetCarton`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction CreateCarton(data) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader(),\r\n body: JSON.stringify(data),\r\n };\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}CartonMaster/CreateCarton`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction UpdateCarton(data) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader(),\r\n body: JSON.stringify(data),\r\n };\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}CartonMaster/UpdateCarton`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction GetActiveCartonDDL() {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader(),\r\n };\r\n\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}CartonMaster/GetActiveCartonDDL`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\n////////////////////////////////////////////////////////////////////////////////////////////////\r\n//import instance from './DefaultApi';\r\n//\r\n//export default class CartonMasterService {\r\n// ControllerName = 'CartonMaster';\r\n//\r\n// //Get Carton List\r\n// GetCarton(tableRequest) {\r\n// return instance.post(`${process.env.REACT_APP_API_URL}${this.ControllerName}/GetCarton`, tableRequest).then(res => res)\r\n// }\r\n//\r\n// // Save Carton Master Data\r\n// CreateCarton(CartonData) {\r\n// return instance.post(`${process.env.REACT_APP_API_URL}${this.ControllerName}/CreateCarton`, CartonData).then(res => res)\r\n// }\r\n//\r\n// // Get Active Carton of Drop Down List\r\n// GetActiveCartonDDL() {\r\n// return instance.get(`${process.env.REACT_APP_API_URL}${this.ControllerName}/GetActiveCartonDDL`).then(res => res)\r\n// }\r\n//}\r\n","import { CartonService } from \"../services/CartonService\";\r\nimport { CartonConstants } from \"../constants/CartonConstants\";\r\nimport { alertActions } from \".\";\r\n\r\nexport const CartonActions = {\r\n getAll,\r\n GetActiveCartonDDL,\r\n CreateCarton,\r\n UpdateCarton,\r\n openDialog,\r\n inActiveRow,\r\n onHideShow,\r\n onHideShoww,\r\n loadingData,\r\n onHideShowIsActive,\r\n};\r\n\r\nfunction getAll(data) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n CartonService.GetCarton(data).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: CartonConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: CartonConstants.GETALL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: CartonConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction GetActiveCartonDDL() {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n CartonService.GetActiveCartonDDL().then(\r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: CartonConstants.GETCARTONDDL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: CartonConstants.GETCARTONDDL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: CartonConstants.GETCARTONDDL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction CreateCarton(data) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n CartonService.CreateCarton(data).then(\r\n (response) => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n //dispatch(success(response.ResponseData));\r\n dispatch(onHideShow(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: CartonConstants.CREATE_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: CartonConstants.CREATE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: CartonConstants.CREATE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction UpdateCarton(data) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n CartonService.UpdateCarton(data).then(\r\n (response) => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n //dispatch(success(response.ResponseData));\r\n dispatch(onHideShow(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: CartonConstants.CREATE_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: CartonConstants.CREATE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: CartonConstants.CREATE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction inActiveRow(user, isActive) {\r\n var data = {\r\n UserId: user,\r\n IsActive: isActive,\r\n };\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n CartonService.inActiveRow(user, isActive).then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: CartonConstants.ISACTIVE_REQUEST };\r\n }\r\n function success(data) {\r\n return { type: CartonConstants.ISACTIVE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: CartonConstants.ISACTIVE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: CartonConstants.DIALOG_REQUEST,\r\n isbool,\r\n };\r\n}\r\nfunction onHideShoww(isbool) {\r\n return {\r\n type: CartonConstants.DIALOGUE_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: CartonConstants.LOADING_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction onHideShowIsActive(isbool) {\r\n return {\r\n type: CartonConstants.DIALOG_ISACTIVE_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction openDialog(data) {\r\n return {\r\n type: CartonConstants.OPEN_DIALOG_REQUEST,\r\n data,\r\n };\r\n}\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const productMasterService = {\r\n createProduct,\r\n updateProduct,\r\n fetchProductData,\r\n inActiveRow,\r\n fetchProductDataID,\r\n fetchProductName,\r\n fetchProductDLL,\r\n GetIds,\r\n UpdateIds,\r\n GetMRPs,\r\n AddMRP,\r\n fetchProductDLLForSecondary\r\n};\r\n\r\nfunction createProduct(data) {\r\n ;\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n\r\n };\r\n //console.log(requestOptions);\r\n return fetch(`${process.env.REACT_APP_API_URL}ProductMaster/CreateProduct`, requestOptions)\r\n .then(handleResponse);\r\n\r\n}\r\n\r\nfunction updateProduct(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}ProductMaster/UpdateProduct`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchProductData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}ProductMaster/GetProducts`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchProductDataID(productId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}ProductMaster/GetProductID/${productId}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchProductName(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}Mapping/GetProductName`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction inActiveRow(productId, isActive) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}ProductMaster/InActiveRow/${productId}/${isActive}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchProductDLL() {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}ProductMaster/GetProductDLL`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchProductDLLForSecondary(isSecondary, userId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}ProductMaster/GetProductDLL?isSecondary=${isSecondary}&userId=${userId}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction GetIds() {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}ProductMaster/GetIds`, requestOptions).then(handleResponse)\r\n}\r\nfunction UpdateIds(type, value) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}ProductMaster/UpdateIds/${type},${value}`, requestOptions).then(handleResponse)\r\n}\r\n\r\nfunction GetMRPs(value) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(value)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}ProductMaster/GetMRPs`, requestOptions).then(handleResponse)\r\n}\r\nfunction AddMRP(value) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(value)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}ProductMaster/AddMRP`, requestOptions).then(handleResponse)\r\n\r\n}\r\n\r\n\r\n\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const userService = {\r\n createUser,\r\n fetchRoleDLL,\r\n updateUser,\r\n fetchUserData,\r\n inActiveRow,\r\n fetchUserApprovalData,\r\n approveUser,\r\n rejectUser,\r\n fetchUserDataExport,\r\n fetchWDLL\r\n};\r\n\r\nfunction createUser(data) { \r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}UserMaster/CreateUser`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchRoleDLL(userId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}UserMaster/GetRoleDLL/${userId}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\nfunction fetchWDLL(userId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}WMaster/GetWarehouseDLL`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction updateUser(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}UserMaster/UpdateUser`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchUserData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}UserMaster/GetUsers`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchUserDataExport(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}UserMaster/GetUserForExport`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction inActiveRow(userId, isActive) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}UserMaster/InActiveRow/${userId}/${isActive}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n\r\nfunction fetchUserApprovalData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}UserMaster/GetUsersForApproval`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n\r\nfunction approveUser(userId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}UserMaster/ApproveUser/${userId}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction rejectUser(userId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}UserMaster/RejectUser/${userId}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n","import { authHeader, handleResponse } from \"../helpers\";\r\nexport const dealerService = {\r\n createDealer,\r\n fetchStateDLL,\r\n fetchCityDLL,\r\n fetchFirmDLL,\r\n updateDealer,\r\n fetchDealerData,\r\n inActiveRow,\r\n fetchTransportationModeDDL,\r\n fetchDealerDataforExport,\r\n};\r\n\r\nfunction createDealer(data) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader(),\r\n body: JSON.stringify(data),\r\n };\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}UserDMaster/CreateDealer`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction updateDealer(data) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader(),\r\n body: JSON.stringify(data),\r\n };\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}UserDMaster/UpdateDealer`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction fetchStateDLL(countryId) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader(),\r\n };\r\n\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}UserDMaster/GetStateDLL/${countryId}`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction fetchCityDLL(userId) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader(),\r\n };\r\n\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}UserDMaster/GetCityDLL/${userId}`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction fetchFirmDLL(userId) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader(),\r\n };\r\n\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}UserDMaster/GetFirmDLL/${userId}`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction fetchTransportationModeDDL() {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader(),\r\n };\r\n\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}UserDMaster/GetTransportationModeDLL`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction fetchDealerData(data) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader(),\r\n body: JSON.stringify(data),\r\n };\r\n\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}UserDMaster/GetDealers`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction fetchDealerDataforExport(data) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader(),\r\n body: JSON.stringify(data),\r\n };\r\n\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}UserDMaster/GetDealersForExport`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction inActiveRow(UserId, isActive) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader(),\r\n };\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}UserDMaster/InActiveRow/${UserId}/${isActive}`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const roleService = {\r\n createRole,\r\n updateRole,\r\n fetchRoleData,\r\n inActiveRow,\r\n fetchRoleDLL,\r\n fetchPageData,\r\n updateRolePermission\r\n};\r\n\r\nfunction createRole(data) {\r\n\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}RoleMaster/CreateRole`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction updateRole(data) {\r\n\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}RoleMaster/UpdateRole`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchRoleData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}RoleMaster/GetRoles`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction inActiveRow(roleId, isActive) {\r\n\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}RoleMaster/InActiveRow/${roleId}/${isActive}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchRoleDLL(userId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}RoleMaster/GetRoleDLL/${userId}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchPageData(roleId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}RoleMaster/GetPages/${roleId}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction updateRolePermission(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}RoleMaster/UpdatePagePermission`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const dashboardService = {\r\n fetchData \r\n};\r\n\r\nfunction fetchData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}Dashboard/GetDashboardData`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const loginService = {\r\n checkUser,\r\n DeleteAccountUser\r\n};\r\n\r\nfunction checkUser(data) {\r\n\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/json' },\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Login/CheckUser`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n\r\nfunction DeleteAccountUser(data) {\r\n\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/json' },\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Login/AccountDeleteUserMobile`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const menuService = {\r\n fetchMenuData,\r\n getAccessRight\r\n};\r\n \r\nfunction fetchMenuData(roleId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n \r\n return fetch(`${process.env.REACT_APP_API_URL}UserMaster/GetUserMenu/${roleId}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction getAccessRight(roleId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n \r\n return fetch(`${process.env.REACT_APP_API_URL}UserMaster/GetAccessRight/${roleId}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const changePasswordService = {\r\n changePassword,\r\n forgotPassword\r\n};\r\n\r\nfunction changePassword(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}UserMaster/ChangePassword`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction forgotPassword(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/json' },\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Login/ForgotPassword`, requestOptions)\r\n .then(handleResponse);\r\n}","import { authHeader, handleResponse } from '../helpers';\r\nexport const mappingService = {\r\n createMapping,\r\n fetchMappingData,\r\n fetchToNo,\r\n GetAvailableseries\r\n};\r\n\r\nfunction createMapping(data) { \r\n\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Mapping/CreateMapping`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n\r\nfunction fetchMappingData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n // return fetch('data/products.json').then(res => res.json()).then(d => d.data);\r\n return fetch(`${process.env.REACT_APP_API_URL}Mapping/GetMappings`, requestOptions)\r\n .then(handleResponse);\r\n}\r\nfunction fetchToNo() {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}Mapping/GetToNumbers`,requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction GetAvailableseries(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}Mapping/GetAvailableseries`,requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const issueNoService = {\r\n createIssueNo,\r\n fetchIssueNoData,\r\n fetchFromNumbersData\r\n};\r\n\r\nfunction createIssueNo(data) { \r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}IssueNo/CreateIssueNumber`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchIssueNoData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}IssueNo/GetIssueNumbers`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchFromNumbersData() {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}IssueNo/GetFromNumbers`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n\r\n\r\n\r\n\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const damageService = {\r\n createDamage,\r\n fetchDamageData\r\n};\r\n\r\nfunction createDamage(data) { \r\n\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Damage/CreateDamage`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchDamageData(data) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}Damage/GetDamages`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n\r\n\r\n\r\n\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const verificationLogServices = {\r\n fetchVerificationData \r\n};\r\n\r\nfunction fetchVerificationData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}VerificationLog/GetVerificationReport`, requestOptions)\r\n .then(handleResponse);\r\n}","import { authHeader, handleResponse } from '../helpers';\r\nexport const mappingRptService = {\r\n fetchMappingData \r\n};\r\n\r\nfunction fetchMappingData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}MappingRpt/GetMappingReport`, requestOptions)\r\n .then(handleResponse);\r\n}","import { authHeader, handleResponse } from \"../helpers\";\r\nexport const FeedbackRptService = {\r\n fetchFeedbackData,\r\n};\r\n\r\nfunction fetchFeedbackData(data) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader(),\r\n body: JSON.stringify(data),\r\n };\r\n\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}FeedbackRpt/GetFeedbackReport`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const productConfigurationService = {\r\n updateProductConfig,\r\n fetchProductConfigData,\r\n sp_getconfigDDL\r\n};\r\n\r\nfunction updateProductConfig(data) {\r\n\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}ProductConfiguration/UpdateProductConfiguration`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchProductConfigData(ProductId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}ProductConfiguration/spGetConfigrationData/${ProductId}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction sp_getconfigDDL(productId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}ProductConfiguration/getconfigDDL/${productId}`, requestOptions)\r\n .then(handleResponse);\r\n}","import { authHeader, handleResponse } from '../helpers';\r\nexport const demappingService = {\r\n createDemapping,\r\n fetchFromNumbersData\r\n};\r\n\r\nfunction createDemapping(data) { \r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}DeMapping/CreateDemapping`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchFromNumbersData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}IssueNo/GetFromNumbers`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const LoyaltySchemeRptService = {\r\n fetchLoyaltySchemeData \r\n};\r\n\r\nfunction fetchLoyaltySchemeData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}LoyaltySchemeRpt/GetLoyaltySchemeReport`, requestOptions)\r\n .then(handleResponse);\r\n}","import { authHeader, handleResponse } from '../helpers';\r\nexport const RedemptionLogRptService = {\r\n fetchRedemptionLogData \r\n};\r\n\r\nfunction fetchRedemptionLogData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}RedemptionLogRpt/GetRedemptionLogReport`, requestOptions)\r\n .then(handleResponse);\r\n}","import { authHeader, handleResponse } from '../helpers';\r\nexport const UserloyalityLogRptService = {\r\n fetchUserloyalityLogData \r\n};\r\n\r\nfunction fetchUserloyalityLogData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}UserloyalityLogRpt/GetUserloyalityLogReport`, requestOptions)\r\n .then(handleResponse);\r\n}","import { authHeader, handleResponse } from '../helpers';\r\nexport const productAuthenticationService = {\r\n verifyProduct,\r\n UpdateFeedback,\r\n updateRating,\r\n UpdateWarranty,\r\n warranty,\r\n};\r\n\r\nfunction UpdateWarranty(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/json' },\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}WarrantyRegistration/WarrantyRegistration`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction verifyProduct(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/json' },\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}ProductAuthentication/VerifyProduct`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction UpdateFeedback(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/json' },\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}ProductAuthentication/UpdateFeedback`, requestOptions)\r\n .then(handleResponse);\r\n}\r\nfunction updateRating(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/json' },\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}ProductAuthentication/UpdateRating`, requestOptions)\r\n .then(handleResponse);\r\n}\r\nfunction warranty(data) {\r\n // Constructing the fetch request\r\n return fetch(`${process.env.REACT_APP_API_URL}WarrantyRegistration/Scanwa?uid=${data.uid}`, {\r\n method: 'GET',\r\n headers: { 'Content-Type': 'application/json' }\r\n })\r\n .then(handleResponse);\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const companyService = {\r\n createCompany,\r\n updateCompany,\r\n fetchCompanyData,\r\n inActiveRow,\r\n FetchCompanyDDL\r\n};\r\n\r\nfunction createCompany(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Company/CreateCompany`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction updateCompany(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Company/UpdateCompany`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchCompanyData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Company/GetCompanys`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction inActiveRow(companyId, isActive) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Company/InActiveRow/${companyId}/${isActive}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction FetchCompanyDDL() {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Company/GetCompanyDLL`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n\r\n","import { authHeader, handleResponse, authHeaderFormData } from \"../helpers\";\r\nexport const OrderBookingService = {\r\n CreateOrder,\r\n updateOrderBooking,\r\n fetchOrderBookingData,\r\n inActiveRow,\r\n FetchOrderDDL,\r\n getDealerDDL,\r\n GetSearchData,\r\n GetProductsData,\r\n fetchCategoryDLL,\r\n ReadRow,\r\n Download,\r\n UploadSODetails,\r\n GetSOInsertLog,\r\n};\r\n\r\nfunction CreateOrder(data) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader(),\r\n body: JSON.stringify(data),\r\n };\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}OrderBooking/CreateOrder`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction updateOrderBooking(data) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader(),\r\n body: JSON.stringify(data),\r\n };\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}OrderBooking/CreateOrder`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction fetchOrderBookingData(data) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader(),\r\n body: JSON.stringify(data),\r\n };\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}OrderBooking/GetOrder`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction inActiveRow(orderBookingno, isActive) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader(),\r\n };\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}OrderBooking/InActiveRow/${orderBookingno}/${isActive}`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction ReadRow(orderBookingno, IsShow) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader(),\r\n };\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}OrderBooking/ReadRow?orderbookingno=${orderBookingno}&IsShow=${IsShow}`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction Download(Id) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader(),\r\n };\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}OrderBooking/GetOrderForExport?OrderId=${Id}`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction FetchOrderDDL() {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader(),\r\n };\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}Company/GetOrderDDL`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction getDealerDDL() {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader(),\r\n };\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}OrderBooking/GetDealerDDL`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction GetSearchData(searchval, cateId, pageSize) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader(),\r\n };\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}OrderBooking/GetSearchData_Web?searchval=${searchval}&cateId=${cateId}&pageSize=${pageSize}`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction GetProductsData(ids) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader(),\r\n body: JSON.stringify(ids),\r\n };\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}OrderBooking/GetProductsData`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction fetchCategoryDLL() {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader(),\r\n };\r\n\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}Category/GetCategoryDLL`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction UploadSODetails(formData) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeaderFormData(),\r\n body: formData,\r\n };\r\n\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}OrderBooking/UploadSODetails`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction GetSOInsertLog(formData) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader(),\r\n body: JSON.stringify(formData),\r\n };\r\n\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}OrderBooking/GetSOInsertLog`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const OrderBookingRptService = {\r\n fetchOrderBookingData \r\n};\r\n\r\nfunction fetchOrderBookingData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}OrderBookingRpt/GetOrderBookingReport`, requestOptions)\r\n .then(handleResponse);\r\n}","import { authHeader, handleResponse } from '../helpers';\r\nexport const SqlEditorServices = {\r\n executeScript\r\n};\r\n\r\nfunction executeScript(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}SqlEditor/ExecuteScript`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n\r\n\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const DispatchRptService = {\r\n fetchDispatchData,\r\n GetDispatchToPrint\r\n};\r\n\r\nfunction fetchDispatchData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}Dispatch/GetDispatch`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction GetDispatchToPrint(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}DispatchRpt/GetDispatchToPrint`, requestOptions)\r\n .then(handleResponse);\r\n}","import { authHeader, handleResponse } from '../helpers';\r\nexport const ProductPurchaseRptService = {\r\n fetchProductPurchaseData \r\n};\r\n\r\nfunction fetchProductPurchaseData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}ProductPurchaseRpt/GetProductPurchaseReport`, requestOptions)\r\n .then(handleResponse);\r\n}","import { authHeader, handleResponse } from '../helpers';\r\nexport const secondaryPackingService = { \r\n ControllerName: 'SecondaryPacking',\r\n getProductByQrScan,\r\n saveSecondaryPacking,ProductPackingSave,\r\n getSecondaryPacking\r\n};\r\n\r\n// Get Product Details by Qr code Scanning\r\nfunction getProductByQrScan(data) { \r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}${this.ControllerName}/GetProductByQrScan`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n// save seconday packing data\r\nfunction saveSecondaryPacking(data) { \r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}${this.ControllerName}/SaveSecondary`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n\r\n\r\nfunction ProductPackingSave(data) { \r\n \r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}${this.ControllerName}/ProductPackingSave`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n// Get Secondary packing Details \r\nfunction getSecondaryPacking(data) { \r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}${this.ControllerName}/GetSecondaryPacking`, requestOptions)\r\n .then(handleResponse);\r\n}","import { authHeader, handleResponse } from '../helpers';\r\nexport const SecondaryPackingRptService = {\r\n fetchSecondaryPackingData,\r\n GetVendorListDDL,\r\n GetSecondaryPackingReportExport\r\n};\r\n\r\nfunction fetchSecondaryPackingData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}SecondaryPackingRpt/GetSecondaryPackingReport`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction GetSecondaryPackingReportExport(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}SecondaryPackingRpt/GetSecondaryPackingReportExport`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction GetVendorListDDL(UserId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader(),\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}SecondaryPackingRpt/GetVendorListDDL?UserId=${UserId}`, requestOptions)\r\n .then(handleResponse);\r\n}","import { authHeader, handleResponse } from '../helpers';\r\nexport const TertiaryPackingRptService = {\r\n fetchTertiaryData \r\n};\r\n\r\nfunction fetchTertiaryData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}TertiaryPackingRpt/GetTertiaryReport`, requestOptions)\r\n .then(handleResponse);\r\n}","import { authHeader, handleResponse } from '../helpers';\r\nexport const QRCodeTrackingRptService = {\r\n GetScanInfo,\r\n GetJourney\r\n};\r\n\r\nfunction GetScanInfo(d) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Dispatch/GetScanInfo?qr=` + d, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction GetJourney(d) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Dispatch/GetJourney?qr=` + d, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n\r\n\r\n","import { authHeader, handleResponse } from \"../helpers\";\r\n\r\nexport const SliderProMsgService = {\r\n UploadSliderImage,\r\n GetSliderHome,\r\n GetAllSlider,\r\n DeleteSlider,\r\n};\r\n\r\nfunction UploadSliderImage(data) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader(),\r\n body: JSON.stringify(data),\r\n };\r\n //console.log(requestOptions);\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}SliderMaster/UploadSlider`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction GetSliderHome(data) {\r\n const requestOptions = {\r\n method: \"Get\",\r\n body: JSON.stringify(data),\r\n };\r\n\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}SliderMaster/getSliderWeb`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction GetAllSlider(data) {\r\n const requestOptions = {\r\n method: \"Get\",\r\n body: JSON.stringify(data),\r\n };\r\n\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}SliderMaster/getllAllSlider`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction DeleteSlider(SId) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader(),\r\n };\r\n\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}SliderMaster/sliderDelete/${SId}`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const WarrantyRegistrationReportServices = {\r\n fetchWarrantyData,\r\n approveWarranty,\r\n rejectWarranty,\r\n fetchWarrantyDataRpt,\r\n claimWarranty,\r\n fetchWarrantyDataClaim,\r\n fetchWarrantyDataReapprove,\r\n WarrantyReaprove,\r\n getWaByQrScan,\r\n fetchWarrantyRejectDataRpt\r\n\r\n};\r\n\r\n\r\nfunction getWaByQrScan(data) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}WarrantyRegistration/getWaByQrScan?Qrdata=${data}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\nfunction fetchWarrantyData(data) {\r\n \r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}WarrantyRegistration/GetWarranty`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchWarrantyDataRpt(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}WarrantyRegistration/GetWarrantyReport`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchWarrantyRejectDataRpt(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}WarrantyRegistration/GetWarrantyRejectReport`, requestOptions)\r\n .then(handleResponse);\r\n}\r\nfunction fetchWarrantyDataClaim(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}WarrantyRegistration/GetWarrantyClaim`, requestOptions)\r\n .then(handleResponse);\r\n}\r\nfunction fetchWarrantyDataReapprove(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}WarrantyRegistration/GetWarrantyReapprove`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction approveWarranty(WarrantyId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}WarrantyRegistration/ApproveWarranty/${WarrantyId}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction claimWarranty(WarrantyId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}WarrantyRegistration/ClaimWarranty/${WarrantyId}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n\r\nfunction WarrantyReaprove(WarrantyId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}WarrantyRegistration/WarrantyReapprove/${WarrantyId}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction rejectWarranty(data) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}WarrantyRegistration/RejectWarranty/${data.WarrantyId}?reason=${data.Reason}`, requestOptions)\r\n .then(handleResponse);\r\n}","import { authHeader, handleResponse } from '../helpers';\r\nexport const BinMasterService = {\r\n createBin, \r\n updateBin,\r\n fetchBinData, \r\n inActiveRow,\r\n fetchWarehouseDDL,\r\n fetchAllBinData\r\n};\r\n\r\nasync function fetchWarehouseDDL() {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n const response = await fetch(`${process.env.REACT_APP_API_URL}WarehouseMaster/GetwarehouseDDL`, requestOptions);\r\n return handleResponse(response\r\n // return fetch(`${process.env.REACT_APP_API_URL}UserMaster/GetRoleDLL/${userId}`, requestOptions)\r\n // .then(handleResponse);\r\n // }\r\n );\r\n}\r\nasync function createBin(data) {;\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n const response = await fetch(`${process.env.REACT_APP_API_URL}BinMaster/CreateLocationMst`, requestOptions);\r\n return handleResponse(response\r\n // return fetch(`${process.env.REACT_APP_API_URL}UserMaster/GetRoleDLL/${userId}`, requestOptions)\r\n // .then(handleResponse);\r\n // }\r\n );\r\n}\r\n\r\n// function fetchRoleDLL(userId) {\r\n// const requestOptions = {\r\n// method: 'GET',\r\n// headers: authHeader()\r\n// };\r\n\r\n// return fetch(`${process.env.REACT_APP_API_URL}UserMaster/GetRoleDLL/${userId}`, requestOptions)\r\n// .then(handleResponse);\r\n// }\r\n\r\nasync function updateBin(data) {\r\n;\r\nconsole.log(data)\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n const response = await fetch(`${process.env.REACT_APP_API_URL}BinMaster/BinlocationUpdate`, requestOptions);\r\n return handleResponse(response\r\n // return fetch(`${process.env.REACT_APP_API_URL}UserMaster/GetRoleDLL/${userId}`, requestOptions)\r\n // .then(handleResponse);\r\n // }\r\n );\r\n}\r\n\r\nasync function fetchBinData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n const response = await fetch(`${process.env.REACT_APP_API_URL}BinMaster/getLocatAlloMst`, requestOptions);\r\n return handleResponse(response\r\n // return fetch(`${process.env.REACT_APP_API_URL}UserMaster/GetRoleDLL/${userId}`, requestOptions)\r\n // .then(handleResponse);\r\n // }\r\n );\r\n}\r\n\r\n\r\nasync function inActiveRow(BinId, isActive) {;\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n const response = await fetch(`${process.env.REACT_APP_API_URL}BinMaster/InActiveRow/${BinId}/${isActive}`, requestOptions);\r\n return handleResponse(response\r\n // return fetch(`${process.env.REACT_APP_API_URL}UserMaster/GetRoleDLL/${userId}`, requestOptions)\r\n // .then(handleResponse);\r\n // }\r\n );\r\n}\r\n\r\n\r\nasync function fetchAllBinData() {;\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader() \r\n };\r\n\r\n const response = await fetch(`${process.env.REACT_APP_API_URL}BinMaster/getGetAllBinMst`, requestOptions);\r\n return handleResponse(response\r\n // return fetch(`${process.env.REACT_APP_API_URL}UserMaster/GetRoleDLL/${userId}`, requestOptions)\r\n // .then(handleResponse);\r\n // }\r\n );\r\n}\r\n\r\n\r\n\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const warehouseService = {\r\n createCompany,\r\n updateCompany,\r\n fetchCompanyData,\r\n inActiveRow,\r\n FetchCompanyDDL\r\n};\r\n\r\nfunction createCompany(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}WMaster/CreateWarehouse`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction updateCompany(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}WMaster/UpdateWarehouse`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchCompanyData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}WMaster/GetWarehouse`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction inActiveRow(companyId, isActive) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Company/InActiveRow/${companyId}/${isActive}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction FetchCompanyDDL() {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Company/GetCompanyDLL`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const GiftMasterService = {\r\n createScheme, \r\n fetchSchemeData,\r\n inActiveRow,\r\n fetchDDL,\r\n ProductDDL,\r\n\r\n};\r\n\r\nfunction createScheme(data) {\r\n \r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Gift/CreateGift`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchDDL() {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}Gift/QuartersDLL`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n\r\n\r\nfunction ProductDDL() {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}ProductMaster/GetProductDLL`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchSchemeData(data) {\r\n \r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}Gift/GetGiftData`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction inActiveRow(userId, isActive) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Loyalityscheme/InActiveRow/${userId}/${isActive}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const GiftGenerateService = {\r\n ApproveRedeem,\r\n CancelRedeem,\r\n createRedemption,\r\n fetchUserData,\r\n fetchSchemeData,\r\n inActiveRow,\r\n GetUserPoints\r\n};\r\n\r\nfunction ApproveRedeem(data) { \r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}RedemptionApproval/ApproveRedeem`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction CancelRedeem(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}RedemptionApproval/CancelRedeem`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction createRedemption(data) {\r\n debugger\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n \r\n return fetch(`${process.env.REACT_APP_API_URL}gift/GenerateGift`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchUserData(data) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader(),\r\n //body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}RedemptionApproval/GetUserDDL`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchSchemeData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}Gift/GiftAssignmentList`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction inActiveRow(data) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}RedemptionApproval/InActiveRow/$`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction GetUserPoints(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}RedemptionApproval/GetUserPoints`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n\r\n\r\n\r\n","import { productMasterService } from \"../services\";\r\nimport { productConstants } from \"../constants\";\r\nimport { alertActions } from \".\";\r\n\r\nexport const productMasterActions = {\r\n getAll,\r\n createProduct,\r\n updateProduct,\r\n inActiveRow,\r\n getProductName,\r\n getPrdctDDL,\r\n onHideShow,\r\n loadingData,\r\n onHideShowIsActive,\r\n UpdateIds,\r\n GetIds,\r\n GetMRPs,\r\n AddMRP,\r\n ProductWarranty,\r\n getPrdctDDLForSecondary\r\n};\r\n\r\nfunction getAll(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n productMasterService.fetchProductData(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: productConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: productConstants.GETALL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: productConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction getProductName(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n productMasterService.fetchProductName(obj).then(\r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: productConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: productConstants.GETALL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: productConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction createProduct(data) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n\r\n productMasterService.createProduct(data).then(\r\n (response) => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n dispatch(onHideShow(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: productConstants.CREATE_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: productConstants.CREATE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: productConstants.CREATE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction updateProduct(data, obj) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n\r\n productMasterService.updateProduct(data).then(\r\n (response) => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(getAll(obj));\r\n dispatch(onHideShow(false));\r\n dispatch(success(data));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: productConstants.UPDATE_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: productConstants.UPDATE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: productConstants.UPDATE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction inActiveRow(productId, isActive) {\r\n var data = {\r\n ProductId: productId,\r\n IsActive: isActive,\r\n };\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n productMasterService.inActiveRow(productId, isActive).then(\r\n (response) => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: productConstants.ISACTIVE_REQUEST };\r\n }\r\n function success(data) {\r\n return { type: productConstants.ISACTIVE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: productConstants.ISACTIVE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction getPrdctDDL() {\r\n return (dispatch) => {\r\n dispatch(request());\r\n productMasterService.fetchProductDLL().then(\r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: productConstants.GETPRDCTDDL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: productConstants.GETPRDCTDDL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: productConstants.GETPRDCTDDL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction getPrdctDDLForSecondary(isSecondary, userId) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n productMasterService.fetchProductDLLForSecondary(isSecondary, userId).then(\r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: productConstants.GETPRDCTDDL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: productConstants.GETPRDCTDDL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: productConstants.GETPRDCTDDL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction UpdateIds(type, value) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n productMasterService.UpdateIds(type, value).then(\r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: productConstants.UPDATE_ID_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: productConstants.UPDATE_ID_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: productConstants.UPDATE_ID_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction GetIds(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n productMasterService.GetIds(obj).then(\r\n (response) => {\r\n dispatch(success(response.ResponseMessage));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: productConstants.GET_ID_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: productConstants.GET_ID_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: productConstants.GET_ID_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction AddMRP(value) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n productMasterService.AddMRP(value).then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(onHideShow(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: productConstants.ADD_MRP_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: productConstants.ADD_MRP_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: productConstants.ADD_MRP_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction GetMRPs(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n productMasterService.GetMRPs(obj).then(\r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: productConstants.GET_MRP_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: productConstants.GET_MRP_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: productConstants.GET_MRP_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction ProductWarranty(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n productMasterService.ProductWarranty(obj).then(\r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: productConstants.GET_ProductWarranty_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: productConstants.GET_ProductWarranty_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: productConstants.GET_ProductWarranty_FAILURE, error };\r\n }\r\n}\r\n\r\n\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: productConstants.DIALOG_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: productConstants.LOADING_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction onHideShowIsActive(isbool) {\r\n return {\r\n type: productConstants.DIALOG_ISACTIVE_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\n","import { userService } from \"../services\";\r\nimport { userConstants } from \"../constants\";\r\nimport { alertActions } from \".\";\r\n\r\nexport const userMasterActions = {\r\n getAll,\r\n getRoleDDL,\r\n createUser,\r\n updateUser,\r\n inActiveRow,\r\n onHideShow,\r\n loadingData,\r\n onHideShowIsActive,\r\n rejectUser,\r\n approveUser,\r\n getAllForApproval,\r\n exportData,\r\n getWDDL,\r\n \r\n};\r\n\r\nfunction getAll(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n userService.fetchUserData(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: userConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: userConstants.GETALL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: userConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\n\r\n\r\n\r\nfunction getAllForApproval(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n userService.fetchUserApprovalData(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: userConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: userConstants.GETALL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: userConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction approveUser(user) {\r\n var data = {\r\n UserId: user,\r\n };\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n userService.approveUser(user).then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: userConstants.ISACTIVE_REQUEST };\r\n }\r\n function success(data) {\r\n return { type: userConstants.ISACTIVE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: userConstants.ISACTIVE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction rejectUser(user) {\r\n var data = {\r\n UserId: user,\r\n };\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n userService.rejectUser(user).then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: userConstants.ISACTIVE_REQUEST };\r\n }\r\n function success(data) {\r\n return { type: userConstants.ISACTIVE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: userConstants.ISACTIVE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction getRoleDDL(data) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n userService.fetchRoleDLL(data).then(\r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: userConstants.GETROLEDDL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: userConstants.GETROLEDDL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: userConstants.GETROLEDDL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction getWDDL(data) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n userService.fetchWDLL(data).then(\r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: userConstants.GETWDDL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: userConstants.GETWDDL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: userConstants.GETWDDL_FAILURE, error };\r\n }\r\n}\r\nfunction createUser(data) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n\r\n userService.createUser(data).then(\r\n (response) => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n dispatch(onHideShow(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: userConstants.CREATE_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: userConstants.CREATE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: userConstants.CREATE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction exportData(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n userService.fetchUserDataExport(obj).then(\r\n (response) => {\r\n ;\r\n dispatch(loadingData(false));\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) {\r\n delete v.TotalRows;\r\n delete v.UserId;\r\n delete v.FirstName;\r\n delete v.LastName;\r\n delete v.RoleId;\r\n delete v.UserType;\r\n delete v.IsActive;\r\n delete v.IsResetPassword;\r\n delete v.Password;\r\n delete v.Token;\r\n delete v.RefreshToken;\r\n delete v.Salt;\r\n delete v.CreatedBy;\r\n delete v.UpdatedBy;\r\n delete v.isDeleted;\r\n delete v.isApproved;\r\n });\r\n }\r\n dispatch(success(data));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: userConstants.GETEXPORT_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: userConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: userConstants.GETEXPORT_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction updateUser(data) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n\r\n userService.updateUser(data).then(\r\n (response) => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShow(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: userConstants.UPDATE_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: userConstants.UPDATE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: userConstants.UPDATE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction inActiveRow(user, isActive) {\r\n var data = {\r\n UserId: user,\r\n IsActive: isActive,\r\n };\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n userService.inActiveRow(user, isActive).then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: userConstants.ISACTIVE_REQUEST };\r\n }\r\n function success(data) {\r\n return { type: userConstants.ISACTIVE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: userConstants.ISACTIVE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: userConstants.DIALOG_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: userConstants.LOADING_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction onHideShowIsActive(isbool) {\r\n return {\r\n type: userConstants.DIALOG_ISACTIVE_REQUEST,\r\n isbool,\r\n };\r\n}\r\n","import { alertConstants } from '../constants';\r\n\r\nexport const alertActions = {\r\n success,\r\n error,\r\n warning,\r\n clear\r\n};\r\n\r\nfunction success(message) {\r\n return { type: alertConstants.SUCCESS, message };\r\n}\r\n\r\nfunction warning(message) {\r\n return { type: alertConstants.WARNING, message };\r\n}\r\n\r\nfunction error(message) {\r\n return { type: alertConstants.ERROR, message };\r\n}\r\n\r\nfunction clear() {\r\n return { type: alertConstants.CLEAR };\r\n}","import { roleService } from '../services';\r\nimport { roleMasterConstants } from '../constants';\r\nimport { alertActions } from '.';\r\n\r\nexport const roleMasterActions = {\r\n getAll,\r\n createRole,\r\n updateRole,\r\n openDialog,\r\n inActiveRow,\r\n onHideShow,\r\n getRoleDDL,\r\n getPages,\r\n updatePageStore,\r\n updateRolePermission,\r\n loadingData,\r\n onHideShowIsActive\r\n};\r\n\r\nfunction getAll(data) {\r\n return dispatch => {\r\n dispatch(request());\r\n roleService.fetchRoleData(data).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: roleMasterConstants.GETALL_REQUEST } }\r\n function success(datas) { return { type: roleMasterConstants.GETALL_SUCCESS, datas } }\r\n function failure(error) { return { type: roleMasterConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction updateRolePermission(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n roleService.updateRolePermission(data).then(\r\n response => {\r\n sessionStorage.removeItem('assignedPermissionsForUser');\r\n dispatch(success(response.ResponseData));\r\n sessionStorage.setItem(\"assignedPermissionsForUser\", JSON.stringify({ assigned: response.ResponseData }));\r\n //history.push('/'); \r\n if (response && response.ResponseCode) {\r\n response.ResponseCode == \"200\" ? dispatch(alertActions.success(response.ResponseMessage))\r\n : response.ResponseCode == \"400\" ? dispatch(alertActions.warning(response.ResponseMessage))\r\n : dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: roleMasterConstants.UPDATE_REQUEST, data } }\r\n function success(data) { return { type: roleMasterConstants.UPDATE_SUCCESS, data } }\r\n function failure(error) { return { type: roleMasterConstants.UPDATE_FAILURE, error } }\r\n};\r\n\r\nfunction getPages(roleId) {\r\n return dispatch => {\r\n dispatch(request());\r\n roleService.fetchPageData(roleId).then(response => {\r\n dispatch(success(response.ResponseData))\r\n\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n }\r\n else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: roleMasterConstants.GET_PAGES_REQUEST } }\r\n function success(pages) { return { type: roleMasterConstants.GET_PAGES_SUCCESS, pages } }\r\n function failure(error) { return { type: roleMasterConstants.GET_PAGES_FAILURE, error } }\r\n}\r\n\r\nfunction createRole(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n roleService.createRole(data).then(\r\n response => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n dispatch(onHideShow(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n }\r\n else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: roleMasterConstants.CREATE_REQUEST, data } }\r\n function success(data) { return { type: roleMasterConstants.CREATE_SUCCESS, data } }\r\n function failure(error) { return { type: roleMasterConstants.CREATE_FAILURE, error } }\r\n};\r\n\r\nfunction updateRole(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n roleService.updateRole(data).then(\r\n response => {\r\n //history.push('/'); \r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShow(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n }\r\n else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n }\r\n else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: roleMasterConstants.UPDATE_REQUEST, data } }\r\n function success(data) { return { type: roleMasterConstants.UPDATE_SUCCESS, data } }\r\n function failure(error) { return { type: roleMasterConstants.UPDATE_FAILURE, error } }\r\n};\r\n\r\nfunction openDialog(data) {\r\n return {\r\n type: roleMasterConstants.OPEN_DIALOG_REQUEST, data\r\n }\r\n}\r\n\r\nfunction inActiveRow(roleId, isActive) {\r\n var data = {\r\n RoleId: roleId,\r\n IsActive: isActive\r\n }\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n roleService.inActiveRow(roleId, isActive).then(\r\n response => {\r\n //history.push('/'); \r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(alertActions.success(response.ResponseMessage))\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: roleMasterConstants.ISACTIVE_REQUEST } }\r\n function success(data) { return { type: roleMasterConstants.ISACTIVE_SUCCESS, data } }\r\n function failure(error) { return { type: roleMasterConstants.ISACTIVE_FAILURE, error } }\r\n};\r\n\r\nfunction getRoleDDL(userId) {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n roleService.fetchRoleDLL(userId).then(response => {\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: roleMasterConstants.GETROLEDDL_REQUEST } }\r\n function success(datas) { return { type: roleMasterConstants.GETROLEDDL_SUCCESS, datas } }\r\n function failure(error) { return { type: roleMasterConstants.GETROLEDDL_FAILURE, error } }\r\n};\r\n\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: roleMasterConstants.DIALOG_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction updatePageStore(pageList) {\r\n return dispatch => {\r\n dispatch(success(pageList))\r\n };\r\n function success(datas) { return { type: roleMasterConstants.UPDATE_PAGE_STORE, pageList } }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: roleMasterConstants.LOADING_REQUEST, isbool\r\n }\r\n}\r\nfunction onHideShowIsActive(isbool) {\r\n return {\r\n type: roleMasterConstants.DIALOG_ISACTIVE_REQUEST, isbool\r\n }\r\n}","import { dashboardService } from '../services';\r\nimport { dashboardConstants } from '../constants';\r\nimport { alertActions } from '.';\r\n\r\nexport const dashboardActions = { \r\n fetchData,\r\n loadingData\r\n};\r\n\r\nfunction fetchData(obj) {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n dashboardService.fetchData(obj).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: dashboardConstants.GETALL_REQUEST } }\r\n function success(datas) { return { type: dashboardConstants.GETALL_SUCCESS, datas } }\r\n function failure(error) { return { type: dashboardConstants.GETALL_FAILURE, error } }\r\n}\r\nfunction loadingData(isbool) {\r\n return {\r\n type: dashboardConstants.LOADING_REQUEST, isbool\r\n }\r\n}","import { loginService } from \"../services\";\r\nimport { loginConstants } from \"../constants\";\r\nimport { alertActions } from \".\";\r\nimport { error } from \"jquery\";\r\n\r\nexport const loginActions = {\r\n DeleteAccountUser,\r\n checkUser\r\n};\r\n\r\nfunction checkUser(data) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n\r\n loginService.checkUser(data).then(\r\n (response) => {\r\n // dispatch(success(response.ResponseData));\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n // response.ResponseCode == \"200\" ? dispatch(alertActions.success(response.ResponseMessage))\r\n // : response.ResponseCode == \"400\" ? dispatch(alertActions.warning(response.ResponseMessage))\r\n // : dispatch(alertActions.error(response.ResponseMessage))\r\n if (response.ResponseCode == \"200\") {\r\n sessionStorage.setItem(\r\n \"LoggedInUser\",\r\n JSON.stringify({ login: true })\r\n );\r\n sessionStorage.setItem(\r\n \"user\",\r\n JSON.stringify(response.ResponseData[0].users[0])\r\n );\r\n sessionStorage.setItem(\r\n \"UserData\",\r\n response.ResponseData[0].users[0].UserId\r\n );\r\n sessionStorage.setItem(\r\n \"UserRole\",\r\n response.ResponseData[0].users[0].RoleId\r\n );\r\n sessionStorage.setItem(\r\n \"UserNameData\",\r\n response.ResponseData[0].users[0].UserName\r\n );\r\n sessionStorage.setItem(\r\n \"UserEmailData\",\r\n response.ResponseData[0].users[0].Email\r\n );\r\n sessionStorage.setItem(\r\n \"UserMobileData\",\r\n response.ResponseData[0].users[0].MobileNo\r\n );\r\n sessionStorage.setItem(\r\n \"CompanyData\",\r\n response.ResponseData[0].users[0].CompanyId\r\n );\r\n sessionStorage.setItem(\r\n \"assignedPermissionsForUser\",\r\n JSON.stringify({\r\n assigned: response.ResponseData[0].assignedPermissionsForUser,\r\n })\r\n );\r\n window.location = \"/dashboard\";\r\n } else if (response.ResponseCode == \"205\") {\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n dispatch(success(response));\r\n setTimeout(() => {\r\n dispatch(timeout(true));\r\n }, 20000);\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: loginConstants.CREATE_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: loginConstants.CREATE_SUCCESS, data };\r\n }\r\n function timeout(data) {\r\n return { type: loginConstants.TIMEOUT_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: loginConstants.CREATE_FAILURE, error };\r\n }\r\n}\r\n\r\n\r\nfunction DeleteAccountUser(data) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n\r\n loginService.DeleteAccountUser(data).then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n dispatch(success(response));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n dispatch(failure(response));\r\n }\r\n setTimeout(() => {\r\n dispatch(timeout(true));\r\n }, 20000);\r\n }\r\n },\r\n (error) => {\r\n // Log the error for debugging\r\n console.error('Error during DeleteAccountUser:', error);\r\n\r\n // Get the error message\r\n const errorMessage = error?.response?.data?.ResponseMessage || error.message || error.toString();\r\n \r\n dispatch(failure(errorMessage));\r\n dispatch(alertActions.error(errorMessage));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: loginConstants.CREATE_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: loginConstants.CREATE_SUCCESS, data };\r\n }\r\n function timeout(data) {\r\n return { type: loginConstants.TIMEOUT_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: loginConstants.CREATE_FAILURE, error };\r\n }\r\n}\r\n","import { menuService } from \"../services\";\r\nimport { menuConstants } from \"../constants\";\r\nimport { alertActions } from \".\";\r\n\r\nexport const menuActions = {\r\n getMenu,\r\n getAccessRight,\r\n};\r\n\r\nfunction getMenu(roleId) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n menuService.fetchMenuData(roleId).then(\r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: menuConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: menuConstants.GETALL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: menuConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction getAccessRight(roleId) {\r\n // menuService.getAccessRight(roleId).then(response => {\r\n // if (response && response.ResponseCode) {\r\n // if (response.ResponseCode == \"200\") {\r\n // //sessionStorage.setItem(\"assignedPermissionsForUser\", JSON.stringify({ assigned: response.ResponseData[0].assignedPermissionsForUser }));\r\n // }\r\n // }\r\n // },\r\n // error => {\r\n // }\r\n // );\r\n\r\n return (dispatch) => {\r\n //dispatch(request());\r\n\r\n menuService.getAccessRight(roleId).then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode == \"200\") {\r\n sessionStorage.removeItem(\"assignedPermissionsForUser\");\r\n sessionStorage.setItem(\r\n \"assignedPermissionsForUser\",\r\n JSON.stringify({ assigned: response.ResponseData })\r\n );\r\n }\r\n }\r\n },\r\n (error) => {\r\n // dispatch(failure(error.toString()));\r\n //dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n}\r\n","import { changePasswordService } from '../services';\r\nimport { changePasswordConstants } from '../constants';\r\nimport { alertActions } from '.';\r\n\r\nexport const changePasswordActions = {\r\n changePassword,\r\n forgotPassword\r\n};\r\n\r\nfunction changePassword(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n changePasswordService.changePassword(data).then(\r\n response => {\r\n if (response && response.ResponseCode) {\r\n if(response.ResponseCode ==\"200\"){\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n\r\n setTimeout(() => {\r\n sessionStorage.clear();\r\n window.location = '/login';\r\n }, 2000); \r\n }\r\n else{\r\n\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: changePasswordConstants.CREATE_REQUEST, data } }\r\n function success(data) { return { type: changePasswordConstants.CREATE_SUCCESS, data } }\r\n function failure(error) { return { type: changePasswordConstants.CREATE_FAILURE, error } }\r\n};\r\n\r\nfunction forgotPassword(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n changePasswordService.forgotPassword(data).then(\r\n response => {\r\n // history.push('/');\r\n if (response && response.ResponseCode) {\r\n if(response.ResponseCode==\"200\"){\r\n dispatch(alertActions.success(response.ResponseMessage)); \r\n }\r\n else{\r\n\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: changePasswordConstants.CREATE_FORGOT_REQUEST, data } }\r\n function success(data) { return { type: changePasswordConstants.CREATE_FORGOT_SUCCESS, data } }\r\n function failure(error) { return { type: changePasswordConstants.CREATE_FORGOT_FAILURE, error } }\r\n};\r\n\r\n\r\n","import { mappingService } from '../services';\r\nimport { mappingConstants } from '../constants';\r\nimport { alertActions } from '.';\r\n\r\nexport const mappingActions = {\r\n getAll,\r\n createMapping,\r\n updateMapping,\r\n GetAvailableseries,\r\n GetToNo,\r\n onHideShow,\r\n onHideShoww,\r\n loadingData\r\n};\r\n\r\nfunction getAll(obj) {\r\n return dispatch => {\r\n dispatch(request());\r\n mappingService.fetchMappingData(obj).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: mappingConstants.GETALL_REQUEST } }\r\n function success(datas) { return { type: mappingConstants.GETALL_SUCCESS, datas } }\r\n function failure(error) { return { type: mappingConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction createMapping(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n mappingService.createMapping(data).then(\r\n response => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n dispatch(onHideShow(false));\r\n dispatch(onHideShoww(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: mappingConstants.CREATE_REQUEST, data } }\r\n function success(data) { return { type: mappingConstants.CREATE_SUCCESS, data } }\r\n function failure(error) { return { type: mappingConstants.CREATE_FAILURE, error } }\r\n};\r\n\r\nfunction updateMapping(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n mappingService.createMapping(data).then(\r\n response => {\r\n dispatch(success(data));\r\n //history.push('/'); \r\n if (response && response.ResponseCode) {\r\n response.ResponseCode == \"200\" ? dispatch(alertActions.success(response.ResponseMessage))\r\n : response.ResponseCode == \"400\" ? dispatch(alertActions.warning(response.ResponseMessage))\r\n : dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: mappingConstants.UPDATE_REQUEST, data } }\r\n function success(data) { return { type: mappingConstants.UPDATE_SUCCESS, data } }\r\n function failure(error) { return { type: mappingConstants.UPDATE_FAILURE, error } }\r\n};\r\n\r\nfunction GetAvailableseries(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n mappingService.GetAvailableseries(data).then(response => {\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: mappingConstants.GETALL_AVAILABLE_REQUEST } }\r\n function success(datas) { return { type: mappingConstants.GETALL_AVAILABLE_SUCCESS, datas } }\r\n function failure(error) { return { type: mappingConstants.GETALL_AVAILABLE_FAILURE, error } }\r\n}\r\n\r\nfunction GetToNo() {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n mappingService.fetchToNo().then(response => {\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: mappingConstants.GETALL_TONO_REQUEST } }\r\n function success(datas) { return { type: mappingConstants.GETALL_TONO_SUCCESS, datas } }\r\n function failure(error) { return { type: mappingConstants.GETALL_TONO_FAILURE, error } }\r\n}\r\n\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: mappingConstants.DIALOG_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction onHideShoww(isbool) {\r\n return {\r\n type: mappingConstants.DIALOGUE_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: mappingConstants.LOADING_REQUEST, isbool\r\n }\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import { issueNoService } from '../services';\r\nimport { issueNoConstants } from '../constants';\r\nimport { alertActions } from '.';\r\n\r\nexport const issueNoActions = {\r\n getAll,\r\n createIssueNo,\r\n updateIssueNo,\r\n getFromNumber,\r\n loadingData,\r\n onHideShow\r\n};\r\n\r\nfunction getAll(obj) {\r\n return dispatch => {\r\n dispatch(request());\r\n issueNoService.fetchIssueNoData(obj).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: issueNoConstants.GETALL_REQUEST } }\r\n function success(datas) { return { type: issueNoConstants.GETALL_SUCCESS, datas } }\r\n function failure(error) { return { type: issueNoConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction getFromNumber() {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n issueNoService.fetchFromNumbersData().then(response => {\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: issueNoConstants.GETALL_FROMNO_REQUEST } }\r\n function success(datas) { return { type: issueNoConstants.GETALL_FROMNO_SUCCESS, datas } }\r\n function failure(error) { return { type: issueNoConstants.GETALL_FROMNO_FAILURE, error } }\r\n}\r\n\r\nfunction createIssueNo(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n issueNoService.createIssueNo(data).then(\r\n response => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n dispatch(onHideShow(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: issueNoConstants.CREATE_REQUEST, data } }\r\n function success(data) { return { type: issueNoConstants.CREATE_SUCCESS, data } }\r\n function failure(error) { return { type: issueNoConstants.CREATE_FAILURE, error } }\r\n};\r\n\r\nfunction updateIssueNo(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n issueNoService.createIssueNo(data).then(\r\n response => {\r\n dispatch(success(data));\r\n //history.push('/'); \r\n if (response && response.ResponseCode) {\r\n response.ResponseCode == \"200\" ? dispatch(alertActions.success(response.ResponseMessage))\r\n : response.ResponseCode == \"400\" ? dispatch(alertActions.warning(response.ResponseMessage))\r\n : dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: issueNoConstants.UPDATE_REQUEST, data } }\r\n function success(data) { return { type: issueNoConstants.UPDATE_SUCCESS, data } }\r\n function failure(error) { return { type: issueNoConstants.UPDATE_FAILURE, error } }\r\n};\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: issueNoConstants.LOADING_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: issueNoConstants.DIALOG_REQUEST, isbool\r\n }\r\n}\r\n\r\n\r\n","import { damageService, mappingService } from '../services';\r\nimport { damageConstants } from '../constants';\r\nimport { alertActions } from '.';\r\n\r\nexport const damageActions = {\r\n getAll,\r\n createDamage,\r\n updateDamage,\r\n onHideShow,\r\n loadingData\r\n};\r\n\r\nfunction getAll(obj) {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n mappingService.fetchMappingData(obj).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: damageConstants.GETALL_REQUEST } }\r\n function success(datas) { return { type: damageConstants.GETALL_SUCCESS, datas } }\r\n function failure(error) { return { type: damageConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction createDamage(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n damageService.createDamage(data).then(\r\n response => { \r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n dispatch(onHideShow(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: damageConstants.CREATE_REQUEST, data } }\r\n function success(data) { return { type: damageConstants.CREATE_SUCCESS, data } }\r\n function failure(error) { return { type: damageConstants.CREATE_FAILURE, error } }\r\n};\r\n\r\nfunction updateDamage(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n damageService.createDamage(data).then(\r\n response => {\r\n dispatch(success(data));\r\n //history.push('/'); \r\n if (response && response.ResponseCode) {\r\n response.ResponseCode == \"200\" ? dispatch(alertActions.success(response.ResponseMessage))\r\n : response.ResponseCode == \"400\" ? dispatch(alertActions.warning(response.ResponseMessage))\r\n : dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: damageConstants.UPDATE_REQUEST, data } }\r\n function success(data) { return { type: damageConstants.UPDATE_SUCCESS, data } }\r\n function failure(error) { return { type: damageConstants.UPDATE_FAILURE, error } }\r\n};\r\n\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: damageConstants.DIALOG_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: damageConstants.LOADING_REQUEST, isbool\r\n }\r\n}\r\n\r\n\r\n\r\n","import { verificationLogServices } from \"../services\";\r\nimport { verificationLogConstants } from \"../constants\";\r\nimport { alertActions } from \".\";\r\n\r\nexport const verificationLogActions = {\r\n getAll,\r\n loadingData,\r\n exportData,\r\n};\r\n\r\nfunction getAll(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n verificationLogServices.fetchVerificationData(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) {\r\n delete v.TotalRows;\r\n delete v.ProductId;\r\n });\r\n }\r\n dispatch(successExport(data));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: verificationLogConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: verificationLogConstants.GETALL_SUCCESS, datas };\r\n }\r\n function successExport(datas) {\r\n return { type: verificationLogConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: verificationLogConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction exportData(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n verificationLogServices.fetchVerificationData(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) {\r\n delete v.TotalRows;\r\n delete v.ProductId;\r\n delete v.VerifiedDate;\r\n delete v.OEM;\r\n delete v.HPCode;\r\n delete v.QrData;\r\n delete v.VerificationMode;\r\n delete v.VerifiedBy;\r\n });\r\n }\r\n dispatch(success(data));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: verificationLogConstants.GETEXPORT_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: verificationLogConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: verificationLogConstants.GETEXPORT_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: verificationLogConstants.LOADING_REQUEST,\r\n isbool,\r\n };\r\n}\r\n","import { mappingRptService } from \"../services\";\r\nimport { mappingRptConstants } from \"../constants\";\r\nimport { alertActions } from \".\";\r\n\r\nexport const mappingRptActions = {\r\n getAll,\r\n loadingData,\r\n exportData,\r\n};\r\n\r\nfunction getAll(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n mappingRptService.fetchMappingData(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) {\r\n delete v.TotalRows;\r\n delete v.CreatedBy;\r\n delete v.DocURL;\r\n delete v.MappingId;\r\n delete v.ProductID;\r\n });\r\n }\r\n dispatch(successExport(data));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: mappingRptConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: mappingRptConstants.GETALL_SUCCESS, datas };\r\n }\r\n function successExport(datas) {\r\n return { type: mappingRptConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: mappingRptConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction exportData(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n mappingRptService.fetchMappingData(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) {\r\n delete v.TotalRows;\r\n delete v.CreatedBy;\r\n delete v.DocURL;\r\n delete v.MappingId;\r\n delete v.ProductID;\r\n delete v.MFGDate;\r\n delete v.EXPDate;\r\n delete v.SeqNo;\r\n });\r\n }\r\n dispatch(success(data));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: mappingRptConstants.GETEXPORT_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: mappingRptConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: mappingRptConstants.GETEXPORT_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: mappingRptConstants.LOADING_REQUEST,\r\n isbool,\r\n };\r\n}\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const DemappingRptService = {\r\n fetchDemappingData \r\n};\r\n\r\nfunction fetchDemappingData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}DemappingRpt/GetDemappingReport`, requestOptions)\r\n .then(handleResponse);\r\n}","import { DemappingRptService } from \"../services/DemappingRptService\";\r\nimport { DemappingRptConstants } from \"../constants/DemappingRptConstants\";\r\nimport { alertActions } from \".\";\r\n\r\nexport const DemappingRptActions = {\r\n getAll,\r\n loadingData,\r\n exportData,\r\n};\r\n\r\nfunction getAll(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n DemappingRptService.fetchDemappingData(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) {\r\n delete v.TotalRows;\r\n delete v.CreatedBy;\r\n delete v.DocURL;\r\n delete v.DemappingId;\r\n delete v.ProductID;\r\n });\r\n }\r\n dispatch(successExport(data));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: DemappingRptConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: DemappingRptConstants.GETALL_SUCCESS, datas };\r\n }\r\n function successExport(datas) {\r\n return { type: DemappingRptConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: DemappingRptConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction exportData(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n DemappingRptService.fetchDemappingData(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) {\r\n delete v.TotalRows;\r\n delete v.CreatedBy;\r\n delete v.DocURL;\r\n delete v.DemappingId;\r\n delete v.ProductID;\r\n });\r\n }\r\n dispatch(success(data));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: DemappingRptConstants.GETEXPORT_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: DemappingRptConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: DemappingRptConstants.GETEXPORT_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: DemappingRptConstants.LOADING_REQUEST,\r\n isbool,\r\n };\r\n}\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const DamageRptService = {\r\n fetchDamageData \r\n};\r\n\r\nfunction fetchDamageData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}DamageRpt/GetDamageReport`, requestOptions)\r\n .then(handleResponse);\r\n}","import { DamageRptService } from \"../services/DamageRptService\";\r\nimport { DamageRptConstants } from \"../constants/DamageRptConstants\";\r\nimport { alertActions } from \".\";\r\n\r\nexport const DamageRptActions = {\r\n getAll,\r\n loadingData,\r\n exportData,\r\n};\r\n\r\nfunction getAll(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n DamageRptService.fetchDamageData(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) {\r\n delete v.TotalRows;\r\n delete v.CreatedBy;\r\n delete v.DocURL;\r\n delete v.DamageId;\r\n delete v.ProductID;\r\n });\r\n }\r\n dispatch(successExport(data));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: DamageRptConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: DamageRptConstants.GETALL_SUCCESS, datas };\r\n }\r\n function successExport(datas) {\r\n return { type: DamageRptConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: DamageRptConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction exportData(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n DamageRptService.fetchDamageData(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) {\r\n delete v.TotalRows;\r\n delete v.CreatedBy;\r\n delete v.DocURL;\r\n delete v.DamageId;\r\n delete v.ProductID;\r\n delete v.DeMappingId;\r\n delete v.MappingId;\r\n delete v.Reason;\r\n delete v.CreatedDt;\r\n delete v.CreatedName;\r\n delete v.UpdatedBy;\r\n delete v.UpdatedDt;\r\n });\r\n }\r\n dispatch(success(data));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: DamageRptConstants.GETEXPORT_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: DamageRptConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: DamageRptConstants.GETEXPORT_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: DamageRptConstants.LOADING_REQUEST,\r\n isbool,\r\n };\r\n}\r\n","import { LoyaltySchemeRptService } from \"../services\";\r\nimport { LoyaltySchemeRptConstants } from \"../constants\";\r\nimport { alertActions } from \".\";\r\n\r\nexport const LoyaltySchemeRptActions = {\r\n getAll,\r\n loadingData,\r\n exportData,\r\n};\r\n\r\nfunction getAll(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n LoyaltySchemeRptService.fetchLoyaltySchemeData(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n\r\n var data = response.ResponseData; //Changes\r\n if (data != null) {\r\n data.forEach(function (v) { delete v.TotalRows;\r\n delete v.CreatedBy;\r\n delete v.DocURL;\r\n delete v.LoyaltySchemeId;\r\n delete v.ProductID;\r\n delete v.Schemedescription;\r\n delete v.UserTypeId;\r\n delete v.product;\r\n delete v.Qty;\r\n delete v.loyaltypnt;\r\n delete v.IsActive;\r\n });\r\n }\r\n dispatch(successExport(data))\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: LoyaltySchemeRptConstants.GETALL_REQUEST };\r\n } //Changes\r\n function success(datas) {\r\n return { type: LoyaltySchemeRptConstants.GETALL_SUCCESS, datas };\r\n }\r\n function successExport(datas) {\r\n return { type: LoyaltySchemeRptConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: LoyaltySchemeRptConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction exportData(obj) {;\r\n return (dispatch) => {\r\n dispatch(request());\r\n LoyaltySchemeRptService.fetchLoyaltySchemeData(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) {\r\n delete v.TotalRows;\r\n delete v.CreatedBy;\r\n delete v.DocURL;\r\n delete v.LoyaltySchemeId;\r\n delete v.ProductID;\r\n delete v.Schemedescription;\r\n delete v.UserTypeId;\r\n delete v.product;\r\n delete v.Qty;\r\n delete v.loyaltypnt;\r\n delete v.IsActive;\r\n });\r\n }\r\n dispatch(success(data));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: LoyaltySchemeRptConstants.GETEXPORT_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: LoyaltySchemeRptConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: LoyaltySchemeRptConstants.GETEXPORT_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: LoyaltySchemeRptConstants.LOADING_REQUEST,\r\n isbool,\r\n };\r\n}\r\n","import { RedemptionLogRptService } from '../services';\r\nimport { RedemptionLogRptConstants } from '../constants';\r\nimport { alertActions } from '.';\r\n\r\nexport const RedemptionLogRptActions = {\r\n getAll,\r\n loadingData,\r\n exportData\r\n};\r\n\r\nfunction getAll(obj)\r\n{\r\n return dispatch =>{\r\n dispatch(request());\r\n\r\n RedemptionLogRptService.fetchRedemptionLogData(obj).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n \r\n );\r\n };\r\n function request() { return { type : RedemptionLogRptConstants.GETALL_REQUEST } } //Changes\r\n function success(datas) { return { type: RedemptionLogRptConstants.GETALL_SUCCESS, datas } }\r\n function successExport(datas) { return { type: RedemptionLogRptConstants.GETEXPORT_SUCCESS, datas } }\r\n function failure(error) { return { type: RedemptionLogRptConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction exportData(obj) {\r\n return dispatch => {\r\n dispatch(request());\r\n RedemptionLogRptService.fetchRedemptionLogData(obj).then(response => {\r\n dispatch(loadingData(false));\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) { delete v.TotalRows; delete v.CreatedBy; \r\n delete v.DocURL; delete v.RedemptionLogId; delete v.ProductID\r\n });\r\n }\r\n dispatch(success(data))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n });\r\n };\r\n function request() { return { type: RedemptionLogRptConstants.GETEXPORT_REQUEST } }\r\n function success(datas) { return { type: RedemptionLogRptConstants.GETEXPORT_SUCCESS, datas } }\r\n function failure(error) { return { type: RedemptionLogRptConstants.GETEXPORT_FAILURE, error } }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: RedemptionLogRptConstants.LOADING_REQUEST, isbool\r\n }\r\n}\r\n\r\n","import { UserloyalityLogRptService } from '../services/UserloyalityLogRptService';\r\nimport { UserloyalityLogRptConstants } from '../constants/UserloyalityLogRptConstants';\r\nimport {alertActions} from '.';\r\n\r\nexport const UserloyalityLogRptActions= {\r\n getAll,\r\n loadingData,\r\n exportData\r\n};\r\n\r\nfunction getAll(obj)\r\n{\r\n return dispatch =>{\r\n dispatch(request());\r\n\r\n UserloyalityLogRptService.fetchUserloyalityLogData(obj).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n \r\n );\r\n };\r\n function request() { return { type : UserloyalityLogRptConstants.GETALL_REQUEST } } //Changes\r\n function success(datas) { return { type: UserloyalityLogRptConstants.GETALL_SUCCESS, datas } }\r\n function successExport(datas) { return { type: UserloyalityLogRptConstants.GETEXPORT_SUCCESS, datas } }\r\n function failure(error) { return { type: UserloyalityLogRptConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction exportData(obj) {\r\n return dispatch => {\r\n dispatch(request());\r\n UserloyalityLogRptService.fetchUserloyalityLogData(obj).then(response => {\r\n dispatch(loadingData(false));\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) { delete v.TotalRows; delete v.CreatedBy; \r\n delete v.DocURL; delete v.UserloyalityLogId; delete v.ProductID\r\n });\r\n }\r\n dispatch(success(data))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n });\r\n };\r\n function request() { return { type: UserloyalityLogRptConstants.GETEXPORT_REQUEST } }\r\n function success(datas) { return { type: UserloyalityLogRptConstants.GETEXPORT_SUCCESS, datas } }\r\n function failure(error) { return { type: UserloyalityLogRptConstants.GETEXPORT_FAILURE, error } }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: UserloyalityLogRptConstants.LOADING_REQUEST, isbool\r\n }\r\n}\r\n\r\n","import { OrderBookingRptService } from '../services';\r\nimport { OrderBookingRptConstants } from '../constants';\r\nimport {alertActions} from '.';\r\n\r\nexport const OrderBookingRptActions = {\r\n getAll,\r\n loadingData,\r\n exportData\r\n};\r\n\r\nfunction getAll(obj)\r\n{\r\n return dispatch =>{\r\n dispatch(request());\r\n OrderBookingRptService.fetchOrderBookingData(obj).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n var data = response.ResponseData; //Changes\r\n if (data != null) {\r\n data.forEach(function (v) { delete v.TotalRows });\r\n } \r\n dispatch(successExport(data))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n \r\n );\r\n };\r\n function request() { return { type : OrderBookingRptConstants.GETALL_REQUEST } } //Changes\r\n function success(datas) { return { type: OrderBookingRptConstants.GETALL_SUCCESS, datas } }\r\n function successExport(datas) { return { type: OrderBookingRptConstants.GETEXPORT_SUCCESS, datas } }\r\n function failure(error) { return { type: OrderBookingRptConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction exportData(obj) {\r\n return dispatch => {\r\n dispatch(request());\r\n OrderBookingRptService.fetchOrderBookingData(obj).then(response => {\r\n dispatch(loadingData(false));\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) { delete v.TotalRows});\r\n }\r\n dispatch(success(data))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n });\r\n };\r\n function request() { return { type: OrderBookingRptConstants.GETEXPORT_REQUEST } }\r\n function success(datas) { return { type: OrderBookingRptConstants.GETEXPORT_SUCCESS, datas } }\r\n function failure(error) { return { type: OrderBookingRptConstants.GETEXPORT_FAILURE, error } }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: OrderBookingRptConstants.LOADING_REQUEST, isbool\r\n }\r\n}\r\n\r\n","import { FeedbackRptService } from \"../services\";\r\nimport { FeedbackRptConstants } from \"../constants\";\r\nimport { alertActions } from \".\";\r\n\r\nexport const FeedbackRptActions = {\r\n getAll,\r\n loadingData,\r\n exportData,\r\n};\r\n\r\nfunction getAll(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n FeedbackRptService.fetchFeedbackData(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) {\r\n delete v.TotalRows;\r\n });\r\n }\r\n dispatch(successExport(data));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: FeedbackRptConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: FeedbackRptConstants.GETALL_SUCCESS, datas };\r\n }\r\n function successExport(datas) {\r\n return { type: FeedbackRptConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: FeedbackRptConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction exportData(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n FeedbackRptService.fetchFeedbackData(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) {\r\n delete v.TotalRows;\r\n });\r\n }\r\n dispatch(success(data));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: FeedbackRptConstants.GETEXPORT_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: FeedbackRptConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: FeedbackRptConstants.GETEXPORT_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: FeedbackRptConstants.LOADING_REQUEST,\r\n isbool,\r\n };\r\n}\r\n","import { demappingService, mappingService } from '../services';\r\nimport { demappingConstants } from '../constants';\r\nimport { alertActions } from '.';\r\n\r\nexport const demappingActions = {\r\n getAll,\r\n createDemapping,\r\n getFromNumber,\r\n onHideShow,\r\n loadingData\r\n};\r\n\r\nfunction getAll(obj) {\r\n return dispatch => {\r\n dispatch(request());\r\n mappingService.fetchMappingData(obj).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: demappingConstants.GETALL_REQUEST } }\r\n function success(datas) { return { type: demappingConstants.GETALL_SUCCESS, datas } }\r\n function failure(error) { return { type: demappingConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction createDemapping(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n demappingService.createDemapping(data).then(\r\n response => {\r\n dispatch(success(response.ResponseData));\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(onHideShow(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: demappingConstants.CREATE_REQUEST, data } }\r\n function success(data) { return { type: demappingConstants.CREATE_SUCCESS, data } }\r\n function failure(error) { return { type: demappingConstants.CREATE_FAILURE, error } }\r\n};\r\n\r\nfunction getFromNumber(obj) {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n demappingService.fetchFromNumbersData(obj).then(response => {\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: demappingConstants.GETALL_REQUEST } }\r\n function success(datas) { return { type: demappingConstants.GETALL_SUCCESS, datas } }\r\n function failure(error) { return { type: demappingConstants.GETALL_FAILURE, error } }\r\n}\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: demappingConstants.DIALOG_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: demappingConstants.LOADING_REQUEST, isbool\r\n }\r\n}\r\n\r\n\r\n\r\n\r\n\r\n","import { productAuthenticationService } from '../services';\r\nimport { productAuthenticationConstants } from '../constants';\r\nimport { alertActions } from '.';\r\n\r\nexport const productAuthenticationActions = {\r\n verifyProduct,\r\n UpdateFeedback,\r\n updateRating,\r\n onHideShow,\r\n UpdateWarranty,\r\n onHideShowWarranty,\r\n Warranty,\r\n};\r\n\r\nfunction UpdateWarranty(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n productAuthenticationService.UpdateWarranty(data).then(\r\n response => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n dispatch(success(response.ResponseData));\r\n dispatch(onHideShowWarranty(false));\r\n // response.ResponseCode == \"200\" ? dispatch(alertActions.success(response.ResponseMessage))\r\n // : response.ResponseCode == \"400\" ? dispatch(alertActions.warning(response.ResponseMessage))\r\n // : dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: productAuthenticationConstants.UPDATE_WARRANTY_REQUEST, data } }\r\n function success(data) { return { type: productAuthenticationConstants.UPDATE_WARRANTY_SUCCESS, data } }\r\n function failure(error) { return { type: productAuthenticationConstants.UPDATE_WARRANTY_FAILURE, error } }\r\n};\r\n\r\nfunction verifyProduct(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n productAuthenticationService.verifyProduct(data).then(\r\n response => {\r\n dispatch(success(response.ResponseData));\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n // response.ResponseCode == \"200\" ? dispatch(alertActions.success(response.ResponseMessage))\r\n // : response.ResponseCode == \"400\" ? dispatch(alertActions.warning(response.ResponseMessage))\r\n // : dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: productAuthenticationConstants.CREATE_REQUEST, data } }\r\n function success(data) { return { type: productAuthenticationConstants.CREATE_SUCCESS, data } }\r\n function failure(error) { return { type: productAuthenticationConstants.CREATE_FAILURE, error } }\r\n};\r\n\r\nfunction UpdateFeedback(data) {\r\n return dispatch => {\r\n productAuthenticationService.UpdateFeedback(data).then(\r\n response => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n //dispatch(success(response.ResponseData));\r\n dispatch(onHideShow(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: productAuthenticationConstants.UPDATE_FEEDBACK_REQUEST, data } }\r\n function success(data) { return { type: productAuthenticationConstants.UPDATE_FEEDBACK_SUCCESS, data } }\r\n function failure(error) { return { type: productAuthenticationConstants.UPDATE_FEEDBACK_FAILURE, error } }\r\n};\r\n\r\nfunction updateRating(data) {\r\n return dispatch => {\r\n productAuthenticationService.updateRating(data).then(\r\n response => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(alertActions.error(error.toString()));\r\n failure(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: productAuthenticationConstants.UPDATE_RATING_REQUEST, data } }\r\n function success(data) { return { type: productAuthenticationConstants.UPDATE_RATING_SUCCESS, data } }\r\n function failure(error) { return { type: productAuthenticationConstants.UPDATE_RATING_FAILURE, error } }\r\n};\r\n\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: productAuthenticationConstants.FEEDBACK_DIALOG_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction onHideShowWarranty(isbool) {\r\n return {\r\n type: productAuthenticationConstants.WARRANTY_DIALOG_REQUEST, isbool\r\n }\r\n\r\n}\r\nfunction Warranty(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n productAuthenticationService.warranty(data).then(\r\n (response) => {\r\n if (response.ResponseCode == \"200\")\r\n dispatch(success(response.ResponseData[0]));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request(data) { return { type: productAuthenticationConstants.WGETALL_REQUEST, data } }\r\n function success(datas) { return { type: productAuthenticationConstants.WGETALL_SUCCESS, datas } }\r\n function failure(error) { return { type: productAuthenticationConstants.WGETALL_FAILURE, error } }\r\n};\r\n\r\n\r\n\r\n\r\n","import { productConfigurationService } from '../services'\r\nimport { productConfigurationConstants } from '../constants';\r\nimport { alertActions } from '.';\r\n\r\nexport const productConfigActions = {\r\n getAll,\r\n updateproductConfiguration,\r\n getconfigDDL,\r\n onHideShow,\r\n onreset\r\n};\r\n\r\nfunction getAll(productId) {\r\n\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n productConfigurationService.fetchProductConfigData(productId).then(response => {\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: productConfigurationConstants.GETALL_REQUEST } }\r\n function success(datas) { return { type: productConfigurationConstants.GETALL_SUCCESS, datas } }\r\n function failure(error) { return { type: productConfigurationConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction updateproductConfiguration(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n productConfigurationService.updateProductConfig(data).then(\r\n response => { \r\n //history.push('/'); \r\n\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: productConfigurationConstants.UPDATE_REQUEST, data } }\r\n function success(data) { return { type: productConfigurationConstants.UPDATE_SUCCESS, data } }\r\n function failure(error) { return { type: productConfigurationConstants.UPDATE_FAILURE, error } }\r\n};\r\n\r\nfunction getconfigDDL(productid) {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n productConfigurationService.sp_getconfigDDL(productid).then(response => {\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };;\r\n\r\n function request() { return { type: productConfigurationConstants.GETCONFIGDDL_REQUEST } }\r\n function success(datas) { return { type: productConfigurationConstants.GETCONFIGDDL_SUCCESS, datas } }\r\n function failure(error) { return { type: productConfigurationConstants.GETCONFIGDDL_FAILURE, error } }\r\n};\r\n\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: productConfigurationConstants.DIALOG_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction onreset(isbool) {\r\n return {\r\n type: productConfigurationConstants.RESET_REQUEST, isbool\r\n }\r\n}\r\n\r\n","import { companyService } from '../services';\r\nimport { companyConstants } from '../constants';\r\nimport { alertActions } from '.';\r\n\r\nexport const companyActions = {\r\n getAll,\r\n createCompany,\r\n updateCompany,\r\n inActiveRow,\r\n getcmpnyddl,\r\n onHideShow,\r\n loadingData,\r\n onHideShowIsActive\r\n};\r\n\r\nfunction getAll(data) {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n companyService.fetchCompanyData(data).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: companyConstants.GETALL_REQUEST } }\r\n function success(datas) { return { type: companyConstants.GETALL_SUCCESS, datas } }\r\n function failure(error) { return { type: companyConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction createCompany(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n companyService.createCompany(data).then(\r\n response => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(onHideShow(false));\r\n if (response.ResponseData) {\r\n dispatch(success(response.ResponseData));\r\n }\r\n dispatch(alertActions.success(response.ResponseMessage))\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: companyConstants.CREATE_REQUEST, data } }\r\n function success(data) { return { type: companyConstants.CREATE_SUCCESS, data } }\r\n function failure(error) { return { type: companyConstants.CREATE_FAILURE, error } }\r\n};\r\n\r\nfunction updateCompany(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n companyService.updateCompany(data).then(\r\n response => {\r\n //history.push('/'); \r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(onHideShow(false));\r\n dispatch(success(data));\r\n dispatch(alertActions.success(response.ResponseMessage))\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: companyConstants.UPDATE_REQUEST, data } }\r\n function success(data) { return { type: companyConstants.UPDATE_SUCCESS, data } }\r\n function failure(error) { return { type: companyConstants.UPDATE_FAILURE, error } }\r\n};\r\n\r\n\r\nfunction inActiveRow(companyId, isActive) {\r\n var data = {\r\n CompanyId: companyId,\r\n IsActive: isActive\r\n }\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n companyService.inActiveRow(companyId, isActive).then(\r\n response => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(alertActions.success(response.ResponseMessage))\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() { return { type: companyConstants.ISACTIVE_REQUEST } }\r\n function success(data) { return { type: companyConstants.ISACTIVE_SUCCESS, data } }\r\n function failure(error) { return { type: companyConstants.ISACTIVE_FAILURE, error } }\r\n};\r\n\r\nfunction getcmpnyddl() {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n companyService.FetchCompanyDDL().then(response => {\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: companyConstants.GETCMPNYDDL_REQUEST } }\r\n function success(datas) { return { type: companyConstants.GETCMPNYDDL_SUCCESS, datas } }\r\n function failure(error) { return { type: companyConstants.GETCMPNYDDL_FAILURE, error } }\r\n};\r\n\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: companyConstants.DIALOG_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: companyConstants.LOADING_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction onHideShowIsActive(isbool) {\r\n return {\r\n type: companyConstants.DIALOG_ISACTIVE_REQUEST, isbool\r\n }\r\n}\r\n\r\n\r\n\r\n\r\n","import { OrderBookingService } from \"../services\";\r\nimport { OrderBookingConstants } from \"../constants\";\r\nimport { alertActions } from \".\";\r\n\r\nexport const OrderBookingActions = {\r\n getAll,\r\n CreateOrder,\r\n updateOrderBooking,\r\n inActiveRow,\r\n onHideShow,\r\n loadingData,\r\n onHideShowIsActive,\r\n getDealerDDL,\r\n GetSearchData,\r\n GetProductsData,\r\n ReadRow,\r\n Download,\r\n UploadSODetails,\r\n GetSOInsertLog,\r\n};\r\n\r\nfunction getAll(data) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n OrderBookingService.fetchOrderBookingData(data).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: OrderBookingConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: OrderBookingConstants.GETALL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: OrderBookingConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction CreateOrder(data) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n\r\n OrderBookingService.CreateOrder(data).then(\r\n (response) => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(onHideShow(false));\r\n if (response.ResponseData) {\r\n dispatch(success(response.ResponseData));\r\n }\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: OrderBookingConstants.CREATE_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: OrderBookingConstants.CREATE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: OrderBookingConstants.CREATE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction updateOrderBooking(data) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n\r\n OrderBookingService.updateOrderBooking(data).then(\r\n (response) => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(onHideShow(false));\r\n dispatch(success(data));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: OrderBookingConstants.UPDATE_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: OrderBookingConstants.UPDATE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: OrderBookingConstants.UPDATE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction inActiveRow(orderBookingno, isActive) {\r\n var data = {\r\n OrderBookingNo: orderBookingno,\r\n IsActive: isActive,\r\n };\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n OrderBookingService.inActiveRow(orderBookingno, isActive).then(\r\n (response) => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: OrderBookingConstants.ISACTIVE_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: OrderBookingConstants.ISACTIVE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: OrderBookingConstants.ISACTIVE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction ReadRow(orderBookingno, IsShow, tblResponse) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n OrderBookingService.ReadRow(orderBookingno, IsShow).then(\r\n (response) => {\r\n dispatch(getAll(tblResponse));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: OrderBookingConstants.ISACTIVE_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: OrderBookingConstants.ISACTIVE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: OrderBookingConstants.ISACTIVE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction GetSOInsertLog(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n OrderBookingService.GetSOInsertLog(obj).then(\r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: OrderBookingConstants.GET_SO_LOG_REQUEST, data };\r\n }\r\n function success(datas) {\r\n return { type: OrderBookingConstants.GET_SO_LOG_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: OrderBookingConstants.GET_SO_LOG_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction Download(Id, OBN, tblResponse) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n OrderBookingService.Download(Id).then(\r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n dispatch(ReadRow(OBN, false, tblResponse));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: OrderBookingConstants.GETORDERDTL_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: OrderBookingConstants.GETORDERDTL_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: OrderBookingConstants.GETORDERDTL_FAILURE, error };\r\n }\r\n}\r\nfunction getDealerDDL() {\r\n return (dispatch) => {\r\n dispatch(request());\r\n OrderBookingService.getDealerDDL().then(\r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: OrderBookingConstants.GETDEALERDDL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: OrderBookingConstants.GETDEALERDDL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: OrderBookingConstants.GETDEALERDDL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction GetSearchData(searchval, cateId, pageSize) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n OrderBookingService.GetSearchData(searchval, cateId, pageSize).then(\r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: OrderBookingConstants.GETSEARCH_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: OrderBookingConstants.GETSEARCH_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: OrderBookingConstants.GETSEARCH_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction UploadSODetails(formData, tblResponse) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n OrderBookingService.UploadSODetails(formData).then(\r\n (response) => {\r\n dispatch(success(response));\r\n if (response.ResponseCode == \"200\") {\r\n dispatch(alertActions.success(response.ResponseMessage.toString()));\r\n dispatch(GetSOInsertLog(tblResponse));\r\n } else\r\n dispatch(alertActions.error(response.ResponseMessage.toString()));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: OrderBookingConstants.UPLOAD_SO_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: OrderBookingConstants.UPLOAD_SO_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: OrderBookingConstants.UPLOAD_SO_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction GetProductsData(ids) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n OrderBookingService.GetProductsData(ids).then(\r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: OrderBookingConstants.GETPRODUCTS_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: OrderBookingConstants.GETPRODUCTS_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: OrderBookingConstants.GETPRODUCTS_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: OrderBookingConstants.DIALOG_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: OrderBookingConstants.LOADING_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction onHideShowIsActive(isbool) {\r\n return {\r\n type: OrderBookingConstants.DIALOG_ISACTIVE_REQUEST,\r\n isbool,\r\n };\r\n}\r\n","import { TertiaryPackingRptService } from '../services';\r\nimport { TertiaryPackingRptConstants } from '../constants';\r\nimport {alertActions} from '.';\r\n\r\nexport const TertiaryPackingRptActions = {\r\n getAll,\r\n loadingData,\r\n exportData\r\n};\r\n\r\nfunction getAll(obj)\r\n{\r\n return dispatch =>{\r\n dispatch(request());\r\n TertiaryPackingRptService.fetchTertiaryData(obj).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) { delete v.TotalRows });\r\n }\r\n dispatch(successExport(data))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n \r\n );\r\n };\r\n function request() { return { type : TertiaryPackingRptConstants.GETALL_REQUEST } }\r\n function success(datas) { return { type: TertiaryPackingRptConstants.GETALL_SUCCESS, datas } }\r\n function successExport(datas) { return { type: TertiaryPackingRptConstants.GETEXPORT_SUCCESS, datas } }\r\n function failure(error) { return { type: TertiaryPackingRptConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction exportData(obj) {\r\n return dispatch => {\r\n dispatch(request());\r\n TertiaryPackingRptService.fetchTertiaryData(obj).then(response => {\r\n dispatch(loadingData(false));\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) { delete v.TotalRows });\r\n }\r\n dispatch(success(data))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n });\r\n };\r\n function request() { return { type: TertiaryPackingRptConstants.GETEXPORT_REQUEST } }\r\n function success(datas) { return { type: TertiaryPackingRptConstants.GETEXPORT_SUCCESS, datas } }\r\n function failure(error) { return { type: TertiaryPackingRptConstants.GETEXPORT_FAILURE, error } }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: TertiaryPackingRptConstants.LOADING_REQUEST, isbool\r\n }\r\n}\r\n","import { SqlEditorServices } from '../services/SqlEditorServices';\r\nimport { SqlEditorConstants } from '../constants/SqlEditorConstants';\r\nimport { alertActions } from '.';\r\n\r\nexport const SqlEditorActions = {\r\n executeScript\r\n};\r\n\r\nfunction executeScript(script) {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n SqlEditorServices.executeScript(script).then(\r\n response => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: SqlEditorConstants.RUN_SCRIPT_REQUEST } }\r\n function success(data) { return { type: SqlEditorConstants.RUN_SCRIPT_SUCCESS, data } }\r\n function failure(error) { return { type: SqlEditorConstants.RUN_SCRIPT_FAILURE, error } }\r\n};\r\n\r\n\r\n","import { authHeader, handleResponse } from \"../helpers\";\r\nexport const DispatchService = {\r\n GetDispatch,\r\n CreateDispatch,\r\n GetActiveDispatchDDL,\r\n fetchSODetails,\r\n GetScanInfo,\r\n};\r\n\r\nfunction GetDispatch(data) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader(),\r\n body: JSON.stringify(data),\r\n };\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}Dispatch/GetDispatch`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction CreateDispatch(data) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader(),\r\n body: JSON.stringify(data),\r\n };\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}Dispatch/Save`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction GetActiveDispatchDDL() {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader(),\r\n };\r\n\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}Dispatch/GetActiveDispatchDDL`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction fetchSODetails(SONo) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader(),\r\n };\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}Dispatch/GetSODetails?SONo=${SONo}`,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n\r\nfunction GetScanInfo(d) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader(),\r\n };\r\n return fetch(\r\n `${process.env.REACT_APP_API_URL}Dispatch/GetScanInfo?qr=` + d,\r\n requestOptions\r\n ).then(handleResponse);\r\n}\r\n","import QRCode from \"qrcode\";\r\nimport pdfMake from \"pdfmake/build/pdfmake\";\r\nimport pdfFonts from \"pdfmake/build/vfs_fonts\";\r\npdfMake.vfs = pdfFonts.pdfMake.vfs;\r\n\r\n/// TO print Dispatch Slip\r\nexport default class PrintDispatchService {\r\n genQR(text) {\r\n let qr = \"\";\r\n QRCode.toDataURL(text, function (err, url) {\r\n qr = url;\r\n });\r\n return qr;\r\n }\r\n\r\n Printpdf(dispatchData) {\r\n // const cmp = dispatchData.Cmp;\r\n let qrdata = this.genQR(dispatchData.CartonId);\r\n const company = dispatchData.company;\r\n //s company.CompanyLogo =this.Logo;\r\n var doc = {\r\n pageMargins: [20, 30, 20, 30],\r\n layout: \"\",\r\n pageSize: \"A4\",\r\n\r\n footer: function (currentPage, pageCount) {\r\n return {\r\n stack: [\r\n //{ text: '', margin: [40, 0, 0, 0] },\r\n {\r\n columns: [\r\n {\r\n text: currentPage.toString() + \" of \" + pageCount,\r\n alignment: \"center\",\r\n },\r\n //{ text: new Date(), alignment: 'right', margin: [0, 0, 10, 0] }\r\n ],\r\n },\r\n ],\r\n };\r\n },\r\n content: [\r\n {\r\n text: \"Dispatch Note\",\r\n alignment: \"center\",\r\n fontSize: 18,\r\n bold: true,\r\n margin: 5,\r\n },\r\n {\r\n table: {\r\n widths: [\"35%\", \"45%\", \"20%\"],\r\n body: [\r\n [\r\n {\r\n margin: [10, 10, 0, 0],\r\n width: 90,\r\n height: 75,\r\n alignment: \"center\",\r\n //rowSpan: 2,\r\n image: \"data:image/jpeg;base64,\" + company.CompanyLogo + \"\",\r\n }, //fontSize: 16, bold: true,margin:[0,20,0,0]\r\n {\r\n //rowSpan: 2,\r\n text: [\r\n //this.selectedddl.value.Name\r\n // { text: 'Krishi Rasayan' + '\\n' + 'Address', fontSize: 12, bold: true, margin: [0, 100, 0, 0], alignment: 'center' },\r\n {\r\n text: \"\\n\" + company.CompanyName + \"\\n\" + company.Address,\r\n fontSize: 12,\r\n bold: true,\r\n margin: [20, 70, 0, 0],\r\n alignment: \"center\",\r\n },\r\n //{ text: '\\n' + company.City + ' - ' + company.Pincode, fontSize: 10, alignment: 'center' },\r\n {\r\n text: \"\\nTel :- \" + company.Mobile,\r\n italics: true,\r\n fontSize: 10,\r\n alignment: \"center\",\r\n },\r\n {\r\n text:\r\n \"\\nDispatch Date : \" +\r\n new Date().toLocaleDateString() +\r\n \"\\n\" +\r\n \"Dispatch No : \" +\r\n dispatchData.CartonId +\r\n \"\\n\",\r\n fontSize: 10,\r\n alignment: \"center\",\r\n },\r\n // { text: 'Krishi Rasayan Exports Pvt. Ltd.' + '\\n 1115, Hemkunt Modi Tower, 98, Nehru Place', fontSize: 12, bold: true, margin: [0, 100, 0, 0], alignment: 'center' },\r\n // { text: '\\n' + \"New Delhi 110019\" + '\\n', fontSize: 10, alignment: 'center' },\r\n // { text: 'Tel :- 011 3088 5555', italics: true, fontSize: 10, alignment: 'center' },\r\n ],\r\n },\r\n {\r\n margin: [20, 10, 5, 5],\r\n qr: dispatchData.CartonId,\r\n fit: \"80\",\r\n },\r\n ],\r\n\r\n [\r\n //fontSize: 16, bold: true,margin:[0,20,0,0]\r\n {\r\n colSpan: 3,\r\n text: [\r\n //this.selectedddl.value.Name\r\n {\r\n bold: true,\r\n text:\r\n \"Dealer Code : \" +\r\n dispatchData.userDetail.DealerCode +\r\n // \"\\nShipping Address : \" +\r\n // dispatchData.userDetail.ship_Address1 +\r\n // \", \" +\r\n // \"\\nShipping Address : \" +\r\n // dispatchData.userDetail.ship_Address1 +\r\n // \", \" +\r\n // dispatchData.userDetail.ship_CityName +\r\n // \", \" +\r\n // dispatchData.userDetail.ship_StateName +\r\n // \", \" +\r\n // dispatchData.userDetail.ship_CountryName +\r\n // \", \" +\r\n // dispatchData.userDetail.ship_Pincode +\r\n // \"\\nBilling Address : \" +\r\n // dispatchData.userDetail.bill_Address1 +\r\n // \", \" +\r\n // dispatchData.userDetail.bill_CityName +\r\n // \", \" +\r\n // dispatchData.userDetail.bill_StateName +\r\n // \", \" +\r\n // dispatchData.userDetail.bill_CountryName +\r\n // \", \" +\r\n // dispatchData.userDetail.bill_Pincode +\r\n \" \",\r\n fontSize: 10,\r\n },\r\n ],\r\n },\r\n \"\",\r\n \"\",\r\n ],\r\n ],\r\n },\r\n\r\n layout: \"\",\r\n },\r\n\r\n {\r\n //for dispatched data\r\n margin: -1,\r\n table: {\r\n widths: [\"25%\", \"30%\", \"20%\", \"25%\"],\r\n body: this.getDispatchedData(dispatchData),\r\n },\r\n },\r\n {\r\n //for special instruction\r\n table: {\r\n heights: [10, 90],\r\n margin: 5,\r\n widths: [\"*\"],\r\n body: [[\"Other Comments or Special Instructions\"], [\"\"]],\r\n },\r\n },\r\n ],\r\n styles: {\r\n filledHeader: {\r\n bold: true,\r\n fontSize: 14,\r\n color: \"white\",\r\n fillColor: \"black\",\r\n alignment: \"center\",\r\n },\r\n },\r\n };\r\n\r\n pdfMake.createPdf(doc).download(dispatchData.CartonId + \".pdf\");\r\n //this.addDispatch.reset();\r\n }\r\n //to get Dispatched data\r\n getDispatchedData(data) {\r\n let d = [];\r\n\r\n d.push([\"Carton No\", \"Product Specification\", \" Units\", \"Amount\"]);\r\n\r\n data.cartonList.forEach((childObj) => {\r\n if (childObj.CartonId.length > 0)\r\n d.push([\r\n childObj.CartonId,\r\n childObj.ProductName,\r\n childObj.Qty,\r\n childObj.Amount,\r\n ]);\r\n // else if (childObj.CartonId.length > 0)\r\n // d.push([childObj.CartonId, childObj.TotalQty]);\r\n });\r\n var cartonIds = data.cartonList.map((row) => row.CartonId);\r\n const uniqueCartonIds = [...new Set(cartonIds)];\r\n var CartonCount = uniqueCartonIds.length;\r\n d.push([\r\n { alignment: \"left\", text: \"Total Cartons: \" + CartonCount },\r\n {},\r\n { alignment: \"left\", text: \"Total Quantity: \" + data.Qty },\r\n { alignment: \"left\", text: \"Total Amount: \" + data.TotalAmount },\r\n ]);\r\n return d;\r\n }\r\n}\r\n","import { DispatchService } from \"../services/DispatchService\";\r\nimport PrintDispatchService from \"../services/PrintDispatchService\";\r\nimport { DispatchConstants } from \"../constants/DispatchConstants\";\r\nimport { alertActions } from \".\";\r\n\r\nexport const DispatchActions = {\r\n getAll,\r\n GetActiveDispatchDDL,\r\n CreateDispatch,\r\n openDialog,\r\n inActiveRow,\r\n onHideShow,\r\n onHideShoww,\r\n loadingData,\r\n onHideShowIsActive,\r\n fetchSODetails,\r\n warning,\r\n alreadyPacked,\r\n};\r\n\r\nfunction getAll(data) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n DispatchService.GetDispatch(data).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: DispatchConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: DispatchConstants.GETALL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: DispatchConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction GetActiveDispatchDDL() {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n DispatchService.GetActiveDispatchDDL().then(\r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: DispatchConstants.GETDispatchDDL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: DispatchConstants.GETDispatchDDL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: DispatchConstants.GETDispatchDDL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction CreateDispatch(data) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n DispatchService.CreateDispatch(data).then(\r\n (response) => {\r\n ;\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n ;\r\n dispatch(success(response));\r\n dispatch(onHideShow(false));\r\n // this.PrintDispatchService = new PrintDispatchService();\r\n // this.PrintDispatchService.Printpdf(response.ResponseData);\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: DispatchConstants.CREATE_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: DispatchConstants.CREATE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: DispatchConstants.CREATE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction inActiveRow(user, isActive) {\r\n var data = {\r\n UserId: user,\r\n IsActive: isActive,\r\n };\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n DispatchService.inActiveRow(user, isActive).then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: DispatchConstants.ISACTIVE_REQUEST };\r\n }\r\n function success(data) {\r\n return { type: DispatchConstants.ISACTIVE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: DispatchConstants.ISACTIVE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction fetchSODetails(SONo) {\r\n return (dispatch) => {\r\n dispatch(request(SONo));\r\n\r\n DispatchService.fetchSODetails(SONo).then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response));\r\n dispatch(onHideShowIsActive(false));\r\n //dispatch(alertActions.success(response.ResponseMessage))\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: DispatchConstants.SO_DETAILS_REQUEST };\r\n }\r\n function success(data) {\r\n return { type: DispatchConstants.SO_DETAILS_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: DispatchConstants.SO_DETAILS_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: DispatchConstants.DIALOG_REQUEST,\r\n isbool,\r\n };\r\n}\r\nfunction onHideShoww(isbool) {\r\n return {\r\n type: DispatchConstants.DIALOGUE_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: DispatchConstants.LOADING_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction onHideShowIsActive(isbool) {\r\n return {\r\n type: DispatchConstants.DIALOG_ISACTIVE_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction alreadyPacked(isbool) {\r\n return {\r\n type: DispatchConstants.Alreadypacked,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction warning(isbool) {\r\n return {\r\n type: DispatchConstants.Warning,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction openDialog(data) {\r\n return {\r\n type: DispatchConstants.OPEN_DIALOG_REQUEST,\r\n data,\r\n };\r\n}\r\n","import { DispatchRptService } from '../services';\r\nimport { DispatchRptConstants } from '../constants';\r\nimport { alertActions } from '.';\r\n\r\nexport const DispatchRptActions = {\r\n getAll,\r\n loadingData,\r\n exportData,\r\n GetDispatchToPrint\r\n};\r\n\r\nfunction getAll(obj) {\r\n return dispatch => {\r\n dispatch(request());\r\n DispatchRptService.fetchDispatchData(obj).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) { delete v.TotalRows });\r\n }\r\n dispatch(successExport(data))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n\r\n );\r\n };\r\n function request() { return { type: DispatchRptConstants.GETALL_REQUEST } }\r\n function success(datas) { return { type: DispatchRptConstants.GETALL_SUCCESS, datas } }\r\n function successExport(datas) { return { type: DispatchRptConstants.GETEXPORT_SUCCESS, datas } }\r\n function failure(error) { return { type: DispatchRptConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction exportData(obj) {\r\n return dispatch => {\r\n dispatch(request());\r\n DispatchRptService.fetchDispatchData(obj).then(response => {\r\n dispatch(loadingData(false));\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) {\r\n delete v.TotalRows;\r\n delete v.Id;\r\n delete v.Status;\r\n delete v.DispatchedTo;\r\n delete v.DispatchId;\r\n delete v.CreatedBy;\r\n delete v.UpdatedDt;\r\n delete v.UpdatedBy;\r\n delete v.TotalCarton;\r\n });\r\n }\r\n dispatch(success(data))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n });\r\n };\r\n function request() { return { type: DispatchRptConstants.GETEXPORT_REQUEST } }\r\n function success(datas) { return { type: DispatchRptConstants.GETEXPORT_SUCCESS, datas } }\r\n function failure(error) { return { type: DispatchRptConstants.GETEXPORT_FAILURE, error } }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: DispatchRptConstants.LOADING_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction GetDispatchToPrint(obj) {\r\n return dispatch => {\r\n dispatch(request());\r\n DispatchRptService.GetDispatchToPrint(obj).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n\r\n );\r\n };\r\n function request() { return { type: DispatchRptConstants.GETPRINT_REQUEST } }\r\n function success(datas) { return { type: DispatchRptConstants.GETPRINT_SUCCESS, datas } }\r\n function failure(error) { return { type: DispatchRptConstants.GETPRINT_FAILURE, error } }\r\n}\r\n","import { dealerService } from \"../services\";\r\n\r\nimport { dealerConstants, userConstants } from \"../constants\";\r\nimport { alertActions } from \".\";\r\nimport { history } from \"../helpers\";\r\n\r\nexport const dealerMasterActions = {\r\n getAll,\r\n getStateDDL,\r\n getFirmDDL,\r\n getSCityDDL,\r\n getBCityDDL,\r\n createDealer,\r\n updateDealer,\r\n inActiveRow,\r\n onHideShow,\r\n loadingData,\r\n onHideShowIsActive,\r\n getTransportationModeDDL,\r\n exportData,\r\n};\r\n\r\nfunction getAll(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n dealerService.fetchDealerData(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: dealerConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: dealerConstants.GETALL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: dealerConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction getStateDDL(data) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n dealerService.fetchStateDLL(data).then( \r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: dealerConstants.GETSTATEDDL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: dealerConstants.GETSTATEDDL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: dealerConstants.GETSTATEDDL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction exportData(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n dealerService.fetchDealerDataforExport(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) {\r\n delete v.TotalRows;\r\n delete v.UserId;\r\n delete v.FirstName;\r\n delete v.LastName;\r\n delete v.RoleId;\r\n delete v.UserType;\r\n delete v.IsActive;\r\n delete v.IsResetPassword;\r\n delete v.Password;\r\n delete v.Token;\r\n delete v.RefreshToken;\r\n delete v.Salt;\r\n delete v.CreatedBy;\r\n delete v.UpdatedBy;\r\n delete v.isDeleted;\r\n delete v.isApproved;\r\n delete v.isDealer;\r\n delete v.DealerId;\r\n delete v.CountryId;\r\n delete v.UserName;\r\n delete v.CompanyName;\r\n });\r\n }\r\n dispatch(success(data));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: dealerConstants.GETEXPORT_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: dealerConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: dealerConstants.GETEXPORT_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction getFirmDDL(data) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n dealerService.fetchFirmDLL(data).then(\r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: dealerConstants.GETFIRMDDL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: dealerConstants.GETFIRMDDL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: dealerConstants.GETFIRMDDL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction getTransportationModeDDL() {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n dealerService.fetchTransportationModeDDL().then(\r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: dealerConstants.GET_TRANSPORTATION_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: dealerConstants.GET_TRANSPORTATION_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: dealerConstants.GET_TRANSPORTATION_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction getSCityDDL(data) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n dealerService.fetchCityDLL(data).then(\r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: dealerConstants.GETSCITYDDL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: dealerConstants.GETSCITYDDL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: dealerConstants.GETSCITYDDL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction getBCityDDL(data) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n dealerService.fetchCityDLL(data).then(\r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: dealerConstants.GETBCITYDDL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: dealerConstants.GETBCITYDDL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: dealerConstants.GETBCITYDDL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction createDealer(data) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n\r\n dealerService.createDealer(data).then(\r\n (response) => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n dispatch(onHideShow(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: userConstants.CREATE_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: userConstants.CREATE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: userConstants.CREATE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction updateDealer(data) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n\r\n dealerService.updateDealer(data).then(\r\n (response) => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShow(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: dealerConstants.UPDATE_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: dealerConstants.UPDATE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: dealerConstants.UPDATE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction inActiveRow(user, isActive) {\r\n var data = {\r\n UserId: user,\r\n IsActive: isActive,\r\n };\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n dealerService.inActiveRow(user, isActive).then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n window.location.reload();\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: dealerConstants.ISACTIVE_REQUEST };\r\n }\r\n function success(data) {\r\n return { type: dealerConstants.ISACTIVE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: dealerConstants.ISACTIVE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: dealerConstants.DIALOG_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: dealerConstants.LOADING_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction onHideShowIsActive(isbool) {\r\n return {\r\n type: dealerConstants.DIALOG_ISACTIVE_REQUEST,\r\n isbool,\r\n };\r\n}\r\n","import QRCode from \"qrcode\";\r\nimport pdfMake from \"pdfmake/build/pdfmake\";\r\nimport pdfFonts from \"pdfmake/build/vfs_fonts\";\r\npdfMake.vfs = pdfFonts.pdfMake.vfs;\r\n\r\n/// TO print Dispatch Slip\r\nexport default class PrintOrderDispatchService {\r\n genQR(text) {\r\n let qr = \"\";\r\n QRCode.toDataURL(text, function (err, url) {\r\n qr = url;\r\n });\r\n return qr;\r\n }\r\n\r\n Printpdf(dispatchData) {\r\n // const cmp = dispatchData.Cmp;\r\n let qrdata = this.genQR(dispatchData.CartonId);\r\n const company = dispatchData.company;\r\n //s company.CompanyLogo =this.Logo;\r\n var doc = {\r\n pageMargins: [20, 30, 20, 30],\r\n layout: \"\",\r\n pageSize: \"A4\",\r\n\r\n footer: function (currentPage, pageCount) {\r\n return {\r\n stack: [\r\n //{ text: '', margin: [40, 0, 0, 0] },\r\n {\r\n columns: [\r\n {\r\n text: currentPage.toString() + \" of \" + pageCount,\r\n alignment: \"center\",\r\n },\r\n //{ text: new Date(), alignment: 'right', margin: [0, 0, 10, 0] }\r\n ],\r\n },\r\n ],\r\n };\r\n },\r\n content: [\r\n {\r\n text: \"Dispatch Note\",\r\n alignment: \"center\",\r\n fontSize: 18,\r\n bold: true,\r\n margin: 5,\r\n },\r\n {\r\n table: {\r\n widths: [\"35%\", \"45%\", \"20%\"],\r\n body: [\r\n [\r\n {\r\n margin: [10, 10, 0, 0],\r\n width: 90,\r\n height: 75,\r\n alignment: \"center\",\r\n //rowSpan: 2,\r\n image: \"data:image/jpeg;base64,\" + company.CompanyLogo + \"\",\r\n }, //fontSize: 16, bold: true,margin:[0,20,0,0]\r\n {\r\n //rowSpan: 2,\r\n text: [\r\n //this.selectedddl.value.Name\r\n // { text: 'Krishi Rasayan' + '\\n' + 'Address', fontSize: 12, bold: true, margin: [0, 100, 0, 0], alignment: 'center' },\r\n {\r\n text: \"\\n\" + company.CompanyName + \"\\n\" + company.Address,\r\n fontSize: 12,\r\n bold: true,\r\n margin: [20, 70, 0, 0],\r\n alignment: \"center\",\r\n },\r\n //{ text: '\\n' + company.City + ' - ' + company.Pincode, fontSize: 10, alignment: 'center' },\r\n {\r\n text: \"\\nTel :- \" + company.Mobile,\r\n italics: true,\r\n fontSize: 10,\r\n alignment: \"center\",\r\n },\r\n {\r\n text:\r\n \"\\nDispatch Date : \" +\r\n new Date().toLocaleDateString() +\r\n \"\\n\" +\r\n \"Dispatch No : \" +\r\n dispatchData.CartonId +\r\n \"\\n\",\r\n fontSize: 10,\r\n alignment: \"center\",\r\n },\r\n // { text: 'Krishi Rasayan Exports Pvt. Ltd.' + '\\n 1115, Hemkunt Modi Tower, 98, Nehru Place', fontSize: 12, bold: true, margin: [0, 100, 0, 0], alignment: 'center' },\r\n // { text: '\\n' + \"New Delhi 110019\" + '\\n', fontSize: 10, alignment: 'center' },\r\n // { text: 'Tel :- 011 3088 5555', italics: true, fontSize: 10, alignment: 'center' },\r\n ],\r\n },\r\n {\r\n margin: [20, 10, 5, 5],\r\n qr: dispatchData.CartonId,\r\n fit: \"80\",\r\n },\r\n ],\r\n\r\n [\r\n //fontSize: 16, bold: true,margin:[0,20,0,0]\r\n {\r\n colSpan: 3,\r\n text: [\r\n //this.selectedddl.value.Name\r\n {\r\n bold: true,\r\n text:\r\n \"Dealer Code : \" +\r\n dispatchData.userDetail.DealerCode +\r\n // \"\\nShipping Address : \" +\r\n // dispatchData.userDetail.ship_Address1 +\r\n // \", \" +\r\n // \"\\nShipping Address : \" +\r\n // dispatchData.userDetail.ship_Address1 +\r\n // \", \" +\r\n // dispatchData.userDetail.ship_CityName +\r\n // \", \" +\r\n // dispatchData.userDetail.ship_StateName +\r\n // \", \" +\r\n // dispatchData.userDetail.ship_CountryName +\r\n // \", \" +\r\n // dispatchData.userDetail.ship_Pincode +\r\n // \"\\nBilling Address : \" +\r\n // dispatchData.userDetail.bill_Address1 +\r\n // \", \" +\r\n // dispatchData.userDetail.bill_CityName +\r\n // \", \" +\r\n // dispatchData.userDetail.bill_StateName +\r\n // \", \" +\r\n // dispatchData.userDetail.bill_CountryName +\r\n // \", \" +\r\n // dispatchData.userDetail.bill_Pincode +\r\n \" \",\r\n fontSize: 10,\r\n },\r\n ],\r\n },\r\n \"\",\r\n \"\",\r\n ],\r\n ],\r\n },\r\n\r\n layout: \"\",\r\n },\r\n\r\n {\r\n //for dispatched data\r\n margin: -1,\r\n table: {\r\n widths: [\"25%\", \"30%\", \"20%\", \"25%\"],\r\n body: this.getDispatchedData(dispatchData),\r\n },\r\n },\r\n {\r\n //for special instruction\r\n table: {\r\n heights: [10, 90],\r\n margin: 5,\r\n widths: [\"*\"],\r\n body: [[\"Other Comments or Special Instructions\"], [\"\"]],\r\n },\r\n },\r\n ],\r\n styles: {\r\n filledHeader: {\r\n bold: true,\r\n fontSize: 14,\r\n color: \"white\",\r\n fillColor: \"black\",\r\n alignment: \"center\",\r\n },\r\n },\r\n };\r\n\r\n pdfMake.createPdf(doc).download(dispatchData.CartonId + \".pdf\");\r\n //this.addDispatch.reset();\r\n }\r\n //to get Dispatched data\r\n getDispatchedData(data) {\r\n let d = [];\r\n\r\n d.push([\"Carton No\", \"Product Specification\", \" Units\", \"Amount\"]);\r\n\r\n data.cartonList.forEach((childObj) => {\r\n if (childObj.CartonId.length > 0)\r\n d.push([\r\n childObj.CartonId,\r\n childObj.ProductName,\r\n childObj.Qty,\r\n childObj.Amount,\r\n ]);\r\n // else if (childObj.CartonId.length > 0)\r\n // d.push([childObj.CartonId, childObj.TotalQty]);\r\n });\r\n var cartonIds = data.cartonList.map((row) => row.CartonId);\r\n const uniqueCartonIds = [...new Set(cartonIds)];\r\n var CartonCount = uniqueCartonIds.length;\r\n d.push([\r\n { alignment: \"left\", text: \"Total Cartons: \" + CartonCount },\r\n {},\r\n { alignment: \"left\", text: \"Total Quantity: \" + data.Qty },\r\n { alignment: \"left\", text: \"Total Amount: \" + data.TotalAmount },\r\n ]);\r\n return d;\r\n }\r\n}\r\n","import { secondaryPackingService } from \"../services\";\r\nimport { secondaryPackingConstants } from \"../constants\";\r\nimport { alertActions } from \".\";\r\n// store\r\nimport * as props from '../helpers/store';\r\n\r\nexport const secondaryPackingActions = {\r\n getProductByQrScan,\r\n updateScannedList,\r\n saveSecondaryPacking,\r\n getSecondaryPacking,\r\n removeItem,\r\n alreadyPacked,\r\n warning,\r\n};\r\n\r\nfunction getProductByQrScan(data, PackingSize) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n secondaryPackingService.getProductByQrScan(data).then(\r\n (resdata) => {\r\n\r\n if (resdata !== null && resdata.ResponseCode === \"200\") {\r\n var secondaryPacking = props.store.getState().secondaryPacking\r\n if (secondaryPacking.scanneditems && secondaryPacking.scanneditems.length > 0) {\r\n\r\n let checkseqNo = secondaryPacking.scanneditems.filter(\r\n (y) => y.SeqNo == resdata.ResponseData.SeqNo\r\n );\r\n if (checkseqNo.length > 0) {\r\n dispatch(alreadyPacked(true));\r\n dispatch(alertActions.warning(\"Already Scanned\"));\r\n return;\r\n }\r\n }\r\n\r\n let lists = secondaryPacking.scanneditems;\r\n if (!lists) {\r\n lists = [];\r\n }\r\n\r\n dispatch(success(resdata.ResponseData));\r\n\r\n if (PackingSize == lists.length + 1) {\r\n dispatch(cartonComplete(true))\r\n }\r\n } else {\r\n dispatch(warning(true));\r\n dispatch(alertActions.warning(resdata.ResponseMessage));\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: secondaryPackingConstants.ProductByQrScan_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: secondaryPackingConstants.ProductByQrScan_SUCCESS, data };\r\n }\r\n function cartonComplete(data) {\r\n return { type: secondaryPackingConstants.ProductQrScan_CARTONCOMPLETE, data };\r\n }\r\n // function warning(data) {\r\n // return {\r\n // type: secondaryPackingConstants.ProductByQrScan_Warning,\r\n // data,\r\n // };\r\n // }\r\n function failure(error) {\r\n return { type: secondaryPackingConstants.ProductByQrScan_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction updateScannedList(updatedList) {\r\n return {\r\n type: secondaryPackingConstants.UPDATE_SCANNED_REQUEST,\r\n updatedList,\r\n };\r\n}\r\n\r\nfunction saveSecondaryPacking(data) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n secondaryPackingService.saveSecondaryPacking(data).then(\r\n (response) => {\r\n\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n dispatch(success(response.ResponseData));\r\n dispatch(cartonComplete(false))\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return {\r\n type: secondaryPackingConstants.SAVE_SECONDARY_PACKING_RESUEST,\r\n data,\r\n };\r\n }\r\n function success(data) {\r\n return {\r\n type: secondaryPackingConstants.SAVE_SECONDARY_PACKING_SUCCESS,\r\n data,\r\n };\r\n }\r\n function cartonComplete(data) {\r\n return { type: secondaryPackingConstants.ProductQrScan_CARTONCOMPLETE, data };\r\n }\r\n function success2(data) {\r\n return {\r\n type: secondaryPackingConstants.SECONDARY_PACKING_SUCCESS,\r\n data,\r\n };\r\n }\r\n function failure(error) {\r\n return {\r\n type: secondaryPackingConstants.SAVE_SECONDARY_PACKING_FAILURE,\r\n error,\r\n };\r\n }\r\n}\r\n\r\nfunction getSecondaryPacking(tblobj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n secondaryPackingService.getSecondaryPacking(tblobj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: secondaryPackingConstants.GETALL_REQUEST };\r\n }\r\n function success(data) {\r\n return { type: secondaryPackingConstants.GETALL_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: secondaryPackingConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: secondaryPackingConstants.LOADING_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction alreadyPacked(isbool) {\r\n return {\r\n type: secondaryPackingConstants.Alreadypacked,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction warning(isbool) {\r\n return {\r\n type: secondaryPackingConstants.Warning,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction removeItem(data) {\r\n return (dispatch) => {\r\n dispatch(success(data));\r\n };\r\n function success(data) {\r\n return {\r\n type: secondaryPackingConstants.REMOVE_ITEM,\r\n data,\r\n };\r\n }\r\n}\r\n","import { secondaryPackingService } from \"../services\";\r\nimport { ProductPackingConstants } from \"../constants\";\r\nimport { alertActions } from \".\";\r\n// store\r\nimport * as props from '../helpers/store';\r\n\r\nexport const ProductPackingActions = {\r\n getProductByQrScan,\r\n updateScannedList, saveSecondaryPacking, getSecondaryPacking, removeItem,ProductPackingSave,\r\n alreadyPacked, warning,\r\n};\r\n\r\nfunction getProductByQrScan(data, PackingSize) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n secondaryPackingService.getProductByQrScan(data).then(\r\n (resdata) => {\r\n \r\n if (resdata !== null && resdata.ResponseCode === \"200\") {\r\n var secondaryPacking = props.store.getState().secondaryPacking\r\n if (secondaryPacking.scanneditems && secondaryPacking.scanneditems.length > 0) {\r\n \r\n let checkseqNo = secondaryPacking.scanneditems.filter(\r\n (y) => y.SeqNo == resdata.ResponseData.SeqNo\r\n );\r\n if (checkseqNo.length > 0) {\r\n dispatch(alreadyPacked(true));\r\n dispatch(alertActions.warning(\"Already Scanned\"));\r\n return;\r\n }\r\n }\r\n\r\n let lists = secondaryPacking.scanneditems;\r\n if (!lists) {\r\n lists = [];\r\n }\r\n\r\n dispatch(success(resdata.ResponseData));\r\n \r\n if (PackingSize == lists.length + 1) {\r\n dispatch(cartonComplete(true))\r\n }\r\n } else {\r\n dispatch(warning(true));\r\n dispatch(alertActions.warning(resdata.ResponseMessage));\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: ProductPackingConstants.ProductByQrScan_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: ProductPackingConstants.ProductByQrScan_SUCCESS, data };\r\n }\r\n function cartonComplete(data) {\r\n return { type: ProductPackingConstants.ProductQrScan_CARTONCOMPLETE, data };\r\n }\r\n // function warning(data) {\r\n // return {\r\n // type: ProductPackingConstants.ProductByQrScan_Warning,\r\n // data,\r\n // };\r\n // }\r\n function failure(error) {\r\n return { type: ProductPackingConstants.ProductByQrScan_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction updateScannedList(updatedList) {\r\n return {\r\n type: ProductPackingConstants.UPDATE_SCANNED_REQUEST,\r\n updatedList,\r\n };\r\n}\r\n\r\nfunction saveSecondaryPacking(data) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n\r\n secondaryPackingService.saveSecondaryPacking(data).then(\r\n (response) => {\r\n \r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n dispatch(success(response.ResponseData));\r\n dispatch(cartonComplete(false))\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return {\r\n type: ProductPackingConstants.SAVE_SECONDARY_PACKING_RESUEST,\r\n data,\r\n };\r\n }\r\n function success(data) {\r\n return {\r\n type: ProductPackingConstants.SAVE_SECONDARY_PACKING_SUCCESS,\r\n data,\r\n };\r\n }\r\n function cartonComplete(data) {\r\n return { type: ProductPackingConstants.ProductQrScan_CARTONCOMPLETE, data };\r\n }\r\n function success2(data) {\r\n return {\r\n type: ProductPackingConstants.SECONDARY_PACKING_SUCCESS,\r\n data,\r\n };\r\n }\r\n function failure(error) {\r\n return {\r\n type: ProductPackingConstants.SAVE_SECONDARY_PACKING_FAILURE,\r\n error,\r\n };\r\n }\r\n}\r\n\r\n\r\n\r\nfunction ProductPackingSave(data) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n\r\n secondaryPackingService.ProductPackingSave(data).then(\r\n (response) => {\r\n \r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n dispatch(success(response.ResponseData));\r\n dispatch(cartonComplete(false))\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return {\r\n type: ProductPackingConstants.SAVE_SECONDARY_PACKING_RESUEST,\r\n data,\r\n };\r\n }\r\n function success(data) {\r\n return {\r\n type: ProductPackingConstants.SAVE_SECONDARY_PACKING_SUCCESS,\r\n data,\r\n };\r\n }\r\n function cartonComplete(data) {\r\n return { type: ProductPackingConstants.ProductQrScan_CARTONCOMPLETE, data };\r\n }\r\n function success2(data) {\r\n return {\r\n type: ProductPackingConstants.SECONDARY_PACKING_SUCCESS,\r\n data,\r\n };\r\n }\r\n function failure(error) {\r\n return {\r\n type: ProductPackingConstants.SAVE_SECONDARY_PACKING_FAILURE,\r\n error,\r\n };\r\n }\r\n}\r\n\r\n\r\nfunction getSecondaryPacking(tblobj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n secondaryPackingService.getSecondaryPacking(tblobj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: ProductPackingConstants.GETALL_REQUEST };\r\n }\r\n function success(data) {\r\n return { type: ProductPackingConstants.GETALL_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: ProductPackingConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: ProductPackingConstants.LOADING_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction alreadyPacked(isbool) {\r\n return {\r\n type: ProductPackingConstants.Alreadypacked,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction warning(isbool) {\r\n return {\r\n type: ProductPackingConstants.Warning,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction removeItem(data) {\r\n return (dispatch) => {\r\n dispatch(success(data));\r\n };\r\n function success(data) {\r\n return {\r\n type: ProductPackingConstants.REMOVE_ITEM,\r\n data,\r\n };\r\n }\r\n}\r\n","import { SecondaryPackingRptService } from '../services';\r\nimport { SecondaryPackingRptConstants } from '../constants';\r\nimport { alertActions } from '.';\r\n\r\nexport const SecondaryPackingRptActions = {\r\n getAll,\r\n loadingData,\r\n exportData,\r\n GetVendorListDDL\r\n};\r\n\r\nfunction getAll(obj) {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n SecondaryPackingRptService.fetchSecondaryPackingData(obj).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n\r\n\r\n var data = response.ResponseData; //Changes\r\n if (data != null) {\r\n data.forEach(function (v) { delete v.TotalRows });\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n\r\n );\r\n };\r\n function request() { return { type: SecondaryPackingRptConstants.GETALL_REQUEST } }\r\n function success(datas) { return { type: SecondaryPackingRptConstants.GETALL_SUCCESS, datas } }\r\n function failure(error) { return { type: SecondaryPackingRptConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction GetVendorListDDL(UserId) {\r\n return dispatch => {\r\n dispatch(request());\r\n SecondaryPackingRptService.GetVendorListDDL(UserId).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n\r\n );\r\n };\r\n function request() { return { type: SecondaryPackingRptConstants.GETVENDORDDL_REQUEST } }\r\n function success(datas) { return { type: SecondaryPackingRptConstants.GETVENDORDDL_SUCCESS, datas } }\r\n function failure(error) { return { type: SecondaryPackingRptConstants.GETVENDORDDL_FAILURE, error } }\r\n}\r\n\r\nfunction exportData(obj) {\r\n return dispatch => {\r\n dispatch(request());\r\n SecondaryPackingRptService.GetSecondaryPackingReportExport(obj).then(response => {\r\n dispatch(loadingData(false));\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) { delete v.TotalRows });\r\n }\r\n dispatch(success(data))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n });\r\n };\r\n function request() { return { type: SecondaryPackingRptConstants.GETEXPORT_REQUEST } }\r\n function success(datas) { return { type: SecondaryPackingRptConstants.GETEXPORT_SUCCESS, datas } }\r\n function failure(error) { return { type: SecondaryPackingRptConstants.GETEXPORT_FAILURE, error } }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: SecondaryPackingRptConstants.LOADING_REQUEST, isbool\r\n }\r\n}\r\n\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const categoryService = {\r\n getCategory,\r\n createCategory,\r\n createSubCategory,\r\n updateCategory,\r\n SubUpdateCategory,\r\n inActiveRow,\r\n inActiveRow2,\r\n getSubCategory,\r\n fetchCategoryDLL,\r\n fetchSubCategoryDLL,\r\n};\r\n\r\nfunction getCategory(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Category/GetCategory`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction getSubCategory(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Category/GetSubCategory`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction createCategory(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Category/CreateCategory`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n\r\nfunction createSubCategory(data) {\r\n console.log(data);\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Category/CreateSubCategory`, requestOptions)\r\n .then(handleResponse);\r\n}\r\nfunction updateCategory(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Category/UpdateCategory`, requestOptions)\r\n .then(handleResponse);\r\n}\r\nfunction SubUpdateCategory(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Category/SubUpdateCategory`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction inActiveRow(categoryId, isActive) {\r\n\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Category/InActiveRow/${categoryId}/${isActive}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\nfunction inActiveRow2(categoryId, isActive) {\r\n\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Category/InActiveRow2/${categoryId}/${isActive}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchCategoryDLL() {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}Category/GetCategoryDLL`, requestOptions)\r\n .then(handleResponse);\r\n}\r\nfunction fetchSubCategoryDLL(data) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}Category/GetSubCategoryDLL?categoryId=${data}`, requestOptions)\r\n .then(handleResponse);\r\n}","import { categoryService } from \"../services/categoryService\";\r\nimport { categoryConstants } from \"../constants/categoryConstants\";\r\nimport { alertActions } from \".\";\r\n\r\nexport const categoryActions = {\r\n getAll,\r\n getSubAll,\r\n createCatagory,\r\n updateCategory,\r\n openDialog,\r\n inActiveRow,\r\n inActiveRow2,\r\n onHideShow,\r\n onHideShow2,\r\n loadingData,\r\n loadingData2,\r\n onHideShowIsActive,\r\n onHideShowIsActive2,\r\n getCategoryDDL,\r\n createSubCategory,\r\n SubUpdateCategory,\r\n getSubCategoryDDL,\r\n};\r\n\r\nfunction getAll(data) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n categoryService.getCategory(data).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: categoryConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: categoryConstants.GETALL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: categoryConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\n\r\nfunction getSubAll(data) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n categoryService.getSubCategory(data).then(\r\n (response) => {\r\n dispatch(loadingData2(false));\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(loadingData2(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: categoryConstants.GETSUBALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: categoryConstants.GETSUBALL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: categoryConstants.GETSUBALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction createCatagory(data) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n categoryService.createCategory(data).then(\r\n (response) => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n ;\r\n dispatch(success(response.ResponseData));\r\n dispatch(onHideShow(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: categoryConstants.CREATE_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: categoryConstants.CREATE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: categoryConstants.CREATE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction createSubCategory(data) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n categoryService.createSubCategory(data).then(\r\n (response) => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n ;\r\n dispatch(success(response.ResponseData));\r\n dispatch(onHideShow(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: categoryConstants.CREATE_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: categoryConstants.CREATE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: categoryConstants.CREATE_FAILURE, error };\r\n }\r\n}\r\n\r\n\r\n\r\nfunction updateCategory(data) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n categoryService.updateCategory(data).then(\r\n (response) => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n ;\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShow(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: categoryConstants.UPDATE_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: categoryConstants.UPDATE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: categoryConstants.UPDATE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction SubUpdateCategory(data) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n categoryService.SubUpdateCategory(data).then(\r\n (response) => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n ;\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShow(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: categoryConstants.UPDATE_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: categoryConstants.UPDATE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: categoryConstants.UPDATE_FAILURE, error };\r\n }\r\n}\r\n\r\n\r\nfunction inActiveRow(category, isActive) {\r\n var data = {\r\n CategoryId: category,\r\n IsActive: isActive,\r\n };\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n categoryService.inActiveRow(category, isActive).then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: categoryConstants.ISACTIVE_REQUEST };\r\n }\r\n function success(data) {\r\n return { type: categoryConstants.ISACTIVE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: categoryConstants.ISACTIVE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction inActiveRow2(category, isActive) {\r\n var data = {\r\n SubCatId: category,\r\n IsActive: isActive,\r\n };\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n categoryService.inActiveRow2(category, isActive).then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: categoryConstants.ISACTIVE2_REQUEST };\r\n }\r\n function success(data) {\r\n return { type: categoryConstants.ISACTIVE2_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: categoryConstants.ISACTIVE2_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: categoryConstants.DIALOG_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\n\r\nfunction onHideShow2(isbool) {\r\n return {\r\n type: categoryConstants.DIALOG_REQUEST2,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: categoryConstants.LOADING_REQUEST,\r\n isbool,\r\n };\r\n}\r\nfunction loadingData2(isbool) {\r\n return {\r\n type: categoryConstants.LOADING_REQUEST2,\r\n isbool,\r\n };\r\n}\r\nfunction onHideShowIsActive(isbool) {\r\n return {\r\n type: categoryConstants.DIALOG_ISACTIVE_REQUEST,\r\n isbool,\r\n };\r\n}\r\nfunction onHideShowIsActive2(isbool) {\r\n return {\r\n type: categoryConstants.DIALOG_ISACTIVE_REQUEST2,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction openDialog(data) {\r\n return {\r\n type: categoryConstants.OPEN_DIALOG_REQUEST,\r\n data,\r\n };\r\n}\r\n\r\nfunction getCategoryDDL(data, flag) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n categoryService.fetchCategoryDLL(data).then(\r\n (response) => {\r\n \r\n\r\n // if (flag == 1) {\r\n // response.ResponseData.splice(0, 0, { label: \"All\", value: \"0\" });\r\n // }\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: categoryConstants.GETCATEGORYDDL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: categoryConstants.GETCATEGORYDDL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: categoryConstants.GETCATEGOYRDDL_FAILURE, error };\r\n }\r\n}\r\n\r\n\r\nfunction getSubCategoryDDL(data) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n categoryService.fetchSubCategoryDLL(data).then(\r\n (response) => {\r\n\r\n // if (flag == 1) {\r\n // response.ResponseData.splice(0, 0, { label: \"All\", value: \"0\" });\r\n // }\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: categoryConstants.GETSUBCATEGORYDDL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: categoryConstants.GETSUBCATEGORYDDL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: categoryConstants.GETSUBCATEGORYDDL_FAILURE, error };\r\n }\r\n}","import { QRCodeTrackingRptService } from \"../services/QRCodeTrackingRptService\";\r\nimport { QRCodeTrackingRptConstants } from \"../constants/QRCodeTrackingRptConstants\";\r\nimport { alertActions } from \".\";\r\n\r\nexport const QRCodeTrackingRptActions = {\r\n toggle,\r\n toggle2,\r\n GetScanInfo,\r\n GetJourney,\r\n};\r\n\r\nfunction GetScanInfo(data) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n QRCodeTrackingRptService.GetScanInfo(data).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: QRCodeTrackingRptConstants.TRACK_SCAN_INFO_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: QRCodeTrackingRptConstants.TRACK_SCAN_INFO_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: QRCodeTrackingRptConstants.TRACK_SCAN_INFO_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction toggle(data) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n QRCodeTrackingRptService.GetScanInfo(data).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n\r\n const resp = response.ResponseData;\r\n let qr = [];\r\n let val;\r\n resp.forEach((element) => {\r\n if (val == element.Id) {\r\n } else {\r\n val = element.Id;\r\n qr.push(element);\r\n }\r\n });\r\n\r\n dispatch(success(qr));\r\n },\r\n (error) => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: QRCodeTrackingRptConstants.TRACK_TOGGLE_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: QRCodeTrackingRptConstants.TRACK_TOGGLE_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: QRCodeTrackingRptConstants.TRACK_TOGGLE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction toggle2(data) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n QRCodeTrackingRptService.GetScanInfo(data).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n\r\n const resp = response.ResponseData;\r\n let qr = [];\r\n let val;\r\n resp.forEach((element) => {\r\n if (val == element.Id) {\r\n } else {\r\n val = element.Id;\r\n qr.push(element);\r\n }\r\n });\r\n\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: QRCodeTrackingRptConstants.TRACK_TOGGLE_2_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: QRCodeTrackingRptConstants.TRACK_TOGGLE_2_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: QRCodeTrackingRptConstants.TRACK_TOGGLE_2_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction GetJourney(data) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n QRCodeTrackingRptService.GetJourney(data).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: QRCodeTrackingRptConstants.TRACK_JOURNEY_INFO_REQUEST };\r\n }\r\n function success(datas) {\r\n return {\r\n type: QRCodeTrackingRptConstants.TRACK_JOURNEY_INFO_SUCCESS,\r\n datas,\r\n };\r\n }\r\n function failure(error) {\r\n return {\r\n type: QRCodeTrackingRptConstants.TRACK_JOURNEY_INFO_FAILURE,\r\n error,\r\n };\r\n }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: QRCodeTrackingRptConstants.LOADING_REQUEST,\r\n isbool,\r\n };\r\n}\r\n","import { SliderProMsgConstants } from \"../constants\";\r\nimport { SliderProMsgService } from \"../services/SliderProMsgService\";\r\nimport { alertActions } from \"./alertActions\";\r\n\r\nexport const SliderProMsgActions = {\r\n onHideShow,\r\n UploadSliderImage,\r\n GetSliderImage,\r\n GetSliderList,\r\n DeleteSliderImage,\r\n};\r\n\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: SliderProMsgConstants.DIALOG_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\n// Slider Image\r\nfunction UploadSliderImage(data) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n SliderProMsgService.UploadSliderImage(data).then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n dispatch(GetSliderList());\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request(data) {\r\n return { type: SliderProMsgConstants.UPLOAD_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: SliderProMsgConstants.UPLOAD_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: SliderProMsgConstants.UPLOAD_FAILURE, error };\r\n }\r\n}\r\n\r\n// Slider Image\r\nfunction GetSliderImage() {\r\n return (dispatch) => {\r\n dispatch(request());\r\n SliderProMsgService.GetSliderHome().then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request(data) {\r\n return { type: SliderProMsgConstants.GETALL_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: SliderProMsgConstants.GETALL_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: SliderProMsgConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction GetSliderList() {\r\n return (dispatch) => {\r\n dispatch(request());\r\n SliderProMsgService.GetAllSlider().then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request(data) {\r\n return { type: SliderProMsgConstants.GETALLS_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: SliderProMsgConstants.GETALLS_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: SliderProMsgConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\n// Slider Delete\r\nfunction DeleteSliderImage(sid) {\r\n ;\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n SliderProMsgService.DeleteSlider(sid).then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n dispatch(GetSliderList());\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request(data) {\r\n return { type: SliderProMsgConstants.DELETE_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: SliderProMsgConstants.DELETE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: SliderProMsgConstants.DELETE_FAILURE, error };\r\n }\r\n}\r\n","import { WarrantyRegistrationReportServices } from \"../services\";\r\nimport { WarrantyRegistrationReportConstants,QRCodeTrackingRptConstants } from \"../constants\";\r\nimport { alertActions } from \".\";\r\n\r\nexport const WarrantyRegistrationReportActions = {\r\n getAll,\r\n loadingData,\r\n exportData,\r\n approveWarranty,\r\n rejectWarranty,\r\n getAllForApproval,\r\n onHideShow,\r\n inActiveRow,\r\n claimWarranty,\r\n getAllclaim,\r\n WarrantyReaprove,\r\n getAllReaprove,\r\n GetScanInfo,\r\n};\r\nfunction GetScanInfo(data, scannedList) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n\r\n WarrantyRegistrationReportServices.getWaByQrScan(data).then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n } else {\r\n dispatch(alertActions.error(\"Invalid response received\"));\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: QRCodeTrackingRptConstants.TRACK_SCAN_INFO_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: QRCodeTrackingRptConstants.TRACK_SCAN_INFO_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: QRCodeTrackingRptConstants.TRACK_SCAN_INFO_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction getAll(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n WarrantyRegistrationReportServices.fetchWarrantyDataRpt(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) {\r\n delete v.TotalRows;\r\n delete v.ProductId;\r\n });\r\n }\r\n dispatch(successExport(data));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: WarrantyRegistrationReportConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: WarrantyRegistrationReportConstants.GETALL_SUCCESS, datas };\r\n }\r\n function successExport(datas) {\r\n return { type: WarrantyRegistrationReportConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: WarrantyRegistrationReportConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\nfunction getAllclaim(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n WarrantyRegistrationReportServices.fetchWarrantyDataClaim(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) {\r\n delete v.TotalRows;\r\n delete v.ProductId;\r\n });\r\n }\r\n dispatch(successExport(data));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: WarrantyRegistrationReportConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: WarrantyRegistrationReportConstants.GETALL_SUCCESS, datas };\r\n }\r\n function successExport(datas) {\r\n return { type: WarrantyRegistrationReportConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: WarrantyRegistrationReportConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction getAllReaprove(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n WarrantyRegistrationReportServices.fetchWarrantyDataReapprove(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) {\r\n delete v.TotalRows;\r\n delete v.ProductId;\r\n });\r\n }\r\n dispatch(successExport(data));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: WarrantyRegistrationReportConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: WarrantyRegistrationReportConstants.GETALL_SUCCESS, datas };\r\n }\r\n function successExport(datas) {\r\n return { type: WarrantyRegistrationReportConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: WarrantyRegistrationReportConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\nfunction exportData(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n WarrantyRegistrationReportServices.fetchWarrantyDataRpt(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) {\r\n delete v.TotalRows;\r\n delete v.ProductId;\r\n });\r\n }\r\n dispatch(success(data));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: WarrantyRegistrationReportConstants.GETEXPORT_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: WarrantyRegistrationReportConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: WarrantyRegistrationReportConstants.GETEXPORT_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: WarrantyRegistrationReportConstants.LOADING_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction approveWarranty(warranty) {\r\n var data = {\r\n WarrantyId: warranty\r\n };\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n WarrantyRegistrationReportServices.approveWarranty(warranty).then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: WarrantyRegistrationReportConstants.ISACTIVE_REQUEST };\r\n }\r\n function success(data) {\r\n return { type: WarrantyRegistrationReportConstants.ISACTIVE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: WarrantyRegistrationReportConstants.ISACTIVE_FAILURE, error };\r\n }\r\n}\r\nfunction claimWarranty(warranty) {\r\n var data = {\r\n WarrantyId: warranty\r\n };\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n WarrantyRegistrationReportServices.claimWarranty(warranty).then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: WarrantyRegistrationReportConstants.ISACTIVE_REQUEST };\r\n }\r\n function success(data) {\r\n return { type: WarrantyRegistrationReportConstants.ISACTIVE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: WarrantyRegistrationReportConstants.ISACTIVE_FAILURE, error };\r\n }\r\n}\r\nfunction WarrantyReaprove(warranty) {\r\n var data = {\r\n WarrantyId: warranty\r\n };\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n WarrantyRegistrationReportServices.WarrantyReaprove(warranty).then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: WarrantyRegistrationReportConstants.ISACTIVE_REQUEST };\r\n }\r\n function success(data) {\r\n return { type: WarrantyRegistrationReportConstants.ISACTIVE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: WarrantyRegistrationReportConstants.ISACTIVE_FAILURE, error };\r\n }\r\n}\r\nfunction rejectWarranty(warranty,reason) {\r\n var data = {\r\n WarrantyId: warranty,\r\n Reason: reason, // Add the reason to the data object\r\n };\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n WarrantyRegistrationReportServices.rejectWarranty(data).then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: WarrantyRegistrationReportConstants.ISACTIVE_REQUEST };\r\n }\r\n function success(data) {\r\n return { type: WarrantyRegistrationReportConstants.ISACTIVE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: WarrantyRegistrationReportConstants.ISACTIVE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction getAllForApproval(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n WarrantyRegistrationReportServices.fetchWarrantyData(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: WarrantyRegistrationReportConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: WarrantyRegistrationReportConstants.GETALL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: WarrantyRegistrationReportConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction onHideShowIsActive(isbool) {\r\n return {\r\n type: WarrantyRegistrationReportConstants.DIALOG_ISACTIVE_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: WarrantyRegistrationReportConstants.DIALOG_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction inActiveRow(warranty, isActive) {\r\n var data = {\r\n WarrantyId: warranty,\r\n IsActive: isActive,\r\n };\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n WarrantyRegistrationReportServices.inActiveRow(warranty, isActive).then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: WarrantyRegistrationReportConstants.ISACTIVE_REQUEST };\r\n }\r\n function success(data) {\r\n return { type: WarrantyRegistrationReportConstants.ISACTIVE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: WarrantyRegistrationReportConstants.ISACTIVE_FAILURE, error };\r\n }\r\n}\r\n","import { BinMasterService } from \"../services\";\r\nimport { BinMasterConstants } from \"../constants\";\r\nimport { alertActions } from \".\";\r\nimport { history } from \"../helpers\";\r\n\r\nexport const BinMasterActions = {\r\n getAll, \r\n createBin,\r\n updateBin,\r\n inActiveRow,\r\n onHideShow,\r\n loadingData,\r\n onHideShowIsActive, \r\n exportData,\r\n getWarehouseDDL,\r\n fetchAllBinData\r\n};\r\n\r\nfunction getAll(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n BinMasterService.fetchBinData(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: BinMasterConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: BinMasterConstants.GETALL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: BinMasterConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction fetchAllBinData() {;\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n BinMasterService.fetchAllBinData().then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: BinMasterConstants.GETALLBIN_REQUEST } }\r\n function success(datas) { return { type: BinMasterConstants.GETALLBIN_SUCCESS, datas } }\r\n function failure(error) { return { type: BinMasterConstants.GETALLBIN_FAILURE, error } }\r\n}\r\n\r\n\r\nfunction getWarehouseDDL() {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n BinMasterService.fetchWarehouseDDL().then(response => {\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n\r\n function request() {\r\n return { type: BinMasterConstants.GETWHDDL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: BinMasterConstants.GETWHDDL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: BinMasterConstants.GETWHDDL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction createBin(data) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n\r\n BinMasterService.createBin(data).then(\r\n (response) => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n dispatch(onHideShow(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: BinMasterConstants.CREATE_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: BinMasterConstants.CREATE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: BinMasterConstants.CREATE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction updateBin(data) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n\r\n BinMasterService.updateBin(data).then(\r\n (response) => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShow(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: BinMasterConstants.UPDATE_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: BinMasterConstants.UPDATE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: BinMasterConstants.UPDATE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction inActiveRow(binId, isActive) {\r\n var data = {\r\n BinId: binId,\r\n IsActive: isActive,\r\n };\r\n return (dispatch) => {\r\n dispatch(request());\r\n\r\n BinMasterService.inActiveRow(binId, isActive).then(\r\n (response) => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n window.location.reload();\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: BinMasterConstants.ISACTIVE_REQUEST };\r\n }\r\n function success(data) {\r\n return { type: BinMasterConstants.ISACTIVE_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: BinMasterConstants.ISACTIVE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction exportData(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n BinMasterService.fetchBinData(obj).then(\r\n (response) => {\r\n ;\r\n dispatch(loadingData(false));\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) {\r\n \r\n });\r\n }\r\n dispatch(success(data));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: BinMasterConstants.GETEXPORT_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: BinMasterConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: BinMasterConstants.GETEXPORT_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: BinMasterConstants.DIALOG_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: BinMasterConstants.LOADING_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction onHideShowIsActive(isbool) {\r\n return {\r\n type: BinMasterConstants.DIALOG_ISACTIVE_REQUEST,\r\n isbool,\r\n };\r\n}\r\n","import { WarrantyRegistrationReportServices } from \"../services\";\r\nimport { WarrantyRejectRegistrationReportConstants } from \"../constants\";\r\nimport { alertActions } from \".\";\r\n\r\nexport const WarrantyRejectRegistrationReportActions = {\r\n getAll,\r\n loadingData,\r\n exportData,\r\n};\r\n\r\nfunction getAll(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n WarrantyRegistrationReportServices.fetchWarrantyRejectDataRpt(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) {\r\n delete v.TotalRows;\r\n delete v.ProductId;\r\n });\r\n }\r\n dispatch(successExport(data));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: WarrantyRejectRegistrationReportConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: WarrantyRejectRegistrationReportConstants.GETALL_SUCCESS, datas };\r\n }\r\n function successExport(datas) {\r\n return { type: WarrantyRejectRegistrationReportConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: WarrantyRejectRegistrationReportConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\n\r\nfunction exportData(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n WarrantyRegistrationReportServices.fetchWarrantyRejectDataRpt(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) {\r\n delete v.TotalRows;\r\n delete v.ProductId;\r\n });\r\n }\r\n dispatch(success(data));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: WarrantyRejectRegistrationReportConstants.GETEXPORT_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: WarrantyRejectRegistrationReportConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: WarrantyRejectRegistrationReportConstants.GETEXPORT_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: WarrantyRejectRegistrationReportConstants.LOADING_REQUEST,\r\n isbool,\r\n };\r\n}\r\n\r\n","import { warehouseService } from \"../services\";\r\nimport { warehouseConstants } from \"../constants\";\r\nimport { alertActions } from '.';\r\n\r\nexport const warehouseMasterActions = {\r\n getAll,\r\n createCompany,\r\n updateCompany,\r\n inActiveRow,\r\n getcmpnyddl,\r\n onHideShow,\r\n loadingData,\r\n onHideShowIsActive\r\n};\r\n\r\nfunction getAll(data) {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n warehouseService.fetchCompanyData(data).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: warehouseConstants.GETALL_REQUEST } }\r\n function success(datas) { return { type: warehouseConstants.GETALL_SUCCESS, datas } }\r\n function failure(error) { return { type: warehouseConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction createCompany(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n warehouseService.createCompany(data).then(\r\n response => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(onHideShow(false));\r\n if (response.ResponseData) {\r\n dispatch(success(response.ResponseData));\r\n }\r\n dispatch(alertActions.success(response.ResponseMessage))\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: warehouseConstants.CREATE_REQUEST, data } }\r\n function success(data) { return { type: warehouseConstants.CREATE_SUCCESS, data } }\r\n function failure(error) { return { type: warehouseConstants.CREATE_FAILURE, error } }\r\n};\r\n\r\nfunction updateCompany(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n warehouseService.updateCompany(data).then(\r\n response => {\r\n //history.push('/'); \r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(onHideShow(false));\r\n dispatch(success(data));\r\n dispatch(alertActions.success(response.ResponseMessage))\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: warehouseConstants.UPDATE_REQUEST, data } }\r\n function success(data) { return { type: warehouseConstants.UPDATE_SUCCESS, data } }\r\n function failure(error) { return { type: warehouseConstants.UPDATE_FAILURE, error } }\r\n};\r\n\r\n\r\nfunction inActiveRow(companyId, isActive) {\r\n var data = {\r\n CompanyId: companyId,\r\n IsActive: isActive\r\n }\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n warehouseService.inActiveRow(companyId, isActive).then(\r\n response => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(alertActions.success(response.ResponseMessage))\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() { return { type: warehouseConstants.ISACTIVE_REQUEST } }\r\n function success(data) { return { type: warehouseConstants.ISACTIVE_SUCCESS, data } }\r\n function failure(error) { return { type: warehouseConstants.ISACTIVE_FAILURE, error } }\r\n};\r\n\r\nfunction getcmpnyddl() {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n warehouseService.FetchCompanyDDL().then(response => {\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: warehouseConstants.GETCMPNYDDL_REQUEST } }\r\n function success(datas) { return { type: warehouseConstants.GETCMPNYDDL_SUCCESS, datas } }\r\n function failure(error) { return { type: warehouseConstants.GETCMPNYDDL_FAILURE, error } }\r\n};\r\n\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: warehouseConstants.DIALOG_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: warehouseConstants.LOADING_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction onHideShowIsActive(isbool) {\r\n return {\r\n type: warehouseConstants.DIALOG_ISACTIVE_REQUEST, isbool\r\n }\r\n}\r\n\r\n\r\n\r\n","import { GiftMasterService } from '../services/GiftMasterService';\r\nimport { GiftMasterConstants } from '../constants/GiftMasterConstants';\r\nimport { userService } from '../services';\r\nimport { userConstants } from '../constants';\r\nimport { alertActions } from '.';\r\nimport { history } from '../helpers';\r\n\r\nexport const GiftMasterActions = {\r\n getAll, \r\n createScheme,\r\n inActiveRow, onHideShow, \r\n loadingData,\r\n onHideShowIsActive,\r\n QuarterDDL,\r\n ProductDDL\r\n};\r\n\r\n\r\n\r\nfunction getAll(data) {\r\n \r\n return dispatch => {\r\n dispatch(request());\r\n GiftMasterService.fetchSchemeData(data).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: GiftMasterConstants.GETALL_REQUEST } }\r\n function success(datas) { return { type: GiftMasterConstants.GETALL_SUCCESS, datas } }\r\n function failure(error) { return { type: GiftMasterConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\n\r\n\r\nfunction QuarterDDL() {\r\n debugger\r\n return (dispatch) => {\r\n dispatch(request());\r\n GiftMasterService.fetchDDL().then(\r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: GiftMasterConstants.GETQDDL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: GiftMasterConstants.GETQDDL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: GiftMasterConstants.GETQDDL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction ProductDDL() {\r\n \r\n return (dispatch) => {\r\n dispatch(request());\r\n GiftMasterService.ProductDDL().then(\r\n (response) => {\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: GiftMasterConstants.GETPDDL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: GiftMasterConstants.GETPDDL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: GiftMasterConstants.GETPDDL_FAILURE, error };\r\n }\r\n}\r\nfunction createScheme(data) {\r\n debugger\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n GiftMasterService.createScheme(data).then(\r\n response => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n dispatch(onHideShow(false)); // Close the dialog\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n\r\n\r\n function request(data) { return { type: GiftMasterConstants.CREATE_REQUEST, data } }\r\n function success(data) { return { type: GiftMasterConstants.CREATE_SUCCESS, data } }\r\n function failure(error) { return { type: GiftMasterConstants.CREATE_FAILURE, error } }\r\n};\r\n\r\nfunction inActiveRow(SchemeId, isActive) {\r\n var data = {\r\n SchemeId: SchemeId,\r\n IsActive: isActive\r\n }\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n GiftMasterService.inActiveRow(SchemeId, isActive).then(\r\n response => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(alertActions.success(response.ResponseMessage))\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: GiftMasterConstants.ISACTIVE_REQUEST } }\r\n function success(data) { return { type: GiftMasterConstants.ISACTIVE_SUCCESS, data } }\r\n function failure(error) { return { type: GiftMasterConstants.ISACTIVE_FAILURE, error } }\r\n};\r\n\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: GiftMasterConstants.DIALOG_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: GiftMasterConstants.LOADING_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction onHideShowIsActive(isbool) {\r\n return {\r\n type: GiftMasterConstants.DIALOG_ISACTIVE_REQUEST, isbool\r\n }\r\n}\r\n\r\n\r\n\r\n","import { GiftGenerateService } from '../services/GiftGenerateService';\r\nimport { GiftGenerateConstants } from '../constants/GiftGenerateConstants';\r\nimport { alertActions } from '.';\r\nimport { history } from '../helpers';\r\n\r\nexport const GiftGenerateActions = {\r\n getAll,\r\n ApproveRedeem,\r\n CancelRedeem,\r\n createRedemption,\r\n UserData,\r\n GetUserPoints,\r\n inActiveRow,\r\n onHideShow,\r\n onHideShoww,\r\n onHideclose,\r\n loadingData,\r\n onHideShowIsActive\r\n};\r\n\r\nfunction getAll(data) {\r\n return dispatch => {\r\n dispatch(request());\r\n GiftGenerateService.fetchSchemeData(data).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: GiftGenerateConstants.GETALL_REQUEST } }\r\n function success(datas) { return { type: GiftGenerateConstants.GETALL_SUCCESS, datas } }\r\n function failure(error) { return { type: GiftGenerateConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction ApproveRedeem(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n GiftGenerateService.ApproveRedeem(data).then(\r\n response => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(onHideShoww(false));\r\n dispatch(onHideclose(false));\r\n \r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: GiftGenerateConstants.APPROVE_REQUEST, data } }\r\n function success(data) { return { type: GiftGenerateConstants.APPROVE_SUCCESS, data } }\r\n function failure(error) { return { type: GiftGenerateConstants.APPROVE_FAILURE, error } }\r\n};\r\n\r\n\r\nfunction CancelRedeem(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n GiftGenerateService.CancelRedeem(data).then(\r\n response => {\r\n //history.push('/'); \r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(onHideShoww(false));\r\n dispatch(onHideclose(false));\r\n \r\n dispatch(alertActions.success(response.ResponseMessage))\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: GiftGenerateConstants.CANCEL_REQUEST, data } }\r\n function success(data) { return { type: GiftGenerateConstants.CANCEL_SUCCESS, data } }\r\n function failure(error) { return { type: GiftGenerateConstants.CANCEL_FAILURE, error } }\r\n};\r\n\r\nfunction createRedemption(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n GiftGenerateService.createRedemption(data).then(\r\n response => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n dispatch(onHideShow(false));\r\n dispatch(onHideShoww(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: GiftGenerateConstants.CREATE_REQUEST, data } }\r\n function success(data) { return { type: GiftGenerateConstants.CREATE_SUCCESS, data } }\r\n function failure(error) { return { type: GiftGenerateConstants.CREATE_FAILURE, error } }\r\n};\r\n\r\nfunction GetUserPoints(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n GiftGenerateService.GetUserPoints(data).then(\r\n response => {\r\n \r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n dispatch(loadingData(false));\r\n \r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: GiftGenerateConstants.GETALL_USERPT_REQUEST, data } }\r\n function success(data) { return { type: GiftGenerateConstants.GETALL_USERPT_SUCCESS, data } }\r\n function failure(error) { return { type: GiftGenerateConstants.GETALL_USERPT_FAILURE, error } }\r\n};\r\n\r\nfunction UserData(obj) {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n GiftGenerateService.fetchUserData(obj).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: GiftGenerateConstants.GETALL_USER_REQUEST } }\r\n function success(datas) { return { type: GiftGenerateConstants.GETALL_USER_SUCCESS, datas } }\r\n function failure(error) { return { type: GiftGenerateConstants.GETALL_USER_FAILURE, error } }\r\n}\r\n\r\n\r\n\r\nfunction inActiveRow(data) {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n GiftGenerateService.inActiveRow(data).then(\r\n response => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(alertActions.success(response.ResponseMessage))\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: GiftGenerateConstants.ISACTIVE_REQUEST } }\r\n function success(data) { return { type: GiftGenerateConstants.ISACTIVE_SUCCESS, data } }\r\n function failure(error) { return { type: GiftGenerateConstants.ISACTIVE_FAILURE, error } }\r\n};\r\n\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: GiftGenerateConstants.DIALOG_REQUEST, isbool\r\n }\r\n}\r\nfunction onHideShoww(isbool) {\r\n return {\r\n type: GiftGenerateConstants.DIALOGUE_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction onHideclose(isbool) {\r\n return {\r\n type: GiftGenerateConstants.REJECT_DIALOGUE_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: GiftGenerateConstants.LOADING_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction onHideShowIsActive(isbool) {\r\n return {\r\n type: GiftGenerateConstants.DIALOG_ISACTIVE_REQUEST, isbool\r\n }\r\n}\r\n\r\n\r\n\r\n","export default __webpack_public_path__ + \"static/media/Header_logo.5b9e3e45.png\";","export default __webpack_public_path__ + \"static/media/bgg.48f7a0bc.png\";","import React, { Component } from \"react\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { Button } from \"primereact/button\";\r\nimport { connect } from \"react-redux\";\r\nimport { loginActions, alertActions, changePasswordActions } from \"../actions\";\r\nimport logo1 from \"./../assets/images/Header_logo.png\";\r\nimport bgg from \"./../assets/images/bgg.png\";\r\n\r\nclass Login extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n resendbtn: true,\r\n UserName: null,\r\n Password: null,\r\n loggedIn: false,\r\n eyeToggle: true,\r\n forgotModal: false,\r\n Otp: null,\r\n\r\n formError: {\r\n UserName: \"\",\r\n Password: \"\",\r\n },\r\n formForgotHeading: \"Forgot Password\",\r\n buttonLabel: \"Submit\",\r\n Email: \"\",\r\n forgotFormError: {\r\n Email: null,\r\n },\r\n btnlog: true,\r\n };\r\n this.formHandle = this.formHandle.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.passwordToggle = this.passwordToggle.bind(this);\r\n this.hideFunc = this.hideFunc.bind(this);\r\n this.handleForgotChange = this.handleForgotChange.bind(this);\r\n this.openDialog = this.openDialog.bind(this);\r\n this.submitForgotForm = this.submitForgotForm.bind(this);\r\n this.setResend = this.setResend.bind(this);\r\n }\r\n\r\n componentDidMount() {\r\n sessionStorage.removeItem(\"LoggedInUser\");\r\n sessionStorage.removeItem(\"user\");\r\n sessionStorage.removeItem(\"UserData\");\r\n sessionStorage.removeItem(\"UserRole\");\r\n sessionStorage.removeItem(\"UserNameData\");\r\n sessionStorage.removeItem(\"UserEmailData\");\r\n sessionStorage.removeItem(\"UserMobileData\");\r\n sessionStorage.removeItem(\"CompanyData\");\r\n sessionStorage.removeItem(\"assignedPermissionsForUser\");\r\n }\r\n\r\n handleChange(event) {\r\n let { name, value } = event.target;\r\n let errors = this.state.formError;\r\n switch (name) {\r\n case \"IsActive\":\r\n value = event.target.checked;\r\n break;\r\n default:\r\n break;\r\n }\r\n this.formHandle(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n formHandle(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n switch (name) {\r\n case \"UserName\":\r\n if (value === null || value.length < 1) {\r\n errors.UserName = \"Please enter your email-id.\";\r\n } else if (value.length >= 1) {\r\n /* eslint-disable */\r\n if (!value.match(/^\\w+([\\.-]?\\w+)*@\\w+([\\.-]?\\w+)*(\\.\\w{2,3})+$/)) {\r\n errors.userName = \"Please enter valid email-id.\";\r\n } else errors.UserName = null;\r\n /* eslint-enable */\r\n } else errors.UserName = null;\r\n break;\r\n case \"Password\":\r\n if (value === null || value.length < 1) {\r\n errors.Password = \"Please enter password\";\r\n } else errors.Password = null;\r\n break;\r\n default:\r\n break;\r\n }\r\n return IsValid;\r\n }\r\n\r\n passwordToggle() {\r\n this.setState({ eyeToggle: !this.state.eyeToggle });\r\n }\r\n\r\n submitForm(event, flag) {\r\n event.preventDefault();\r\n let isfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key];\r\n let valid = this.formHandle(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n return isfrmvalid;\r\n });\r\n\r\n if (isfrmvalid) {\r\n var formData;\r\n if (flag == \"G\") {\r\n formData = {\r\n Email: this.state.UserName,\r\n Password: this.state.Password,\r\n RequestType: 1,\r\n };\r\n } else if (flag == \"L\") {\r\n formData = {\r\n Email: this.state.UserName,\r\n Password: this.state.Password,\r\n RequestType: 2,\r\n //otp: this.state.Otp,\r\n };\r\n }\r\n\r\n this.props.checkUser(formData);\r\n }\r\n }\r\n\r\n //to reset form\r\n formForgotReset() {\r\n this.setState({ Email: this.state.UserName });\r\n let errors = this.state.forgotFormError;\r\n Object.entries(errors).map(([key, value]) => {\r\n errors[key] = \"\";\r\n return errors[key];\r\n });\r\n }\r\n //to open dialog\r\n openDialog() {\r\n this.setState({ visible: true, Email: this.state.Email });\r\n //this.formForgotReset();\r\n }\r\n //to hide function\r\n hideFunc() {\r\n this.setState({\r\n visible: false,\r\n buttonLabel: \"Submit\",\r\n });\r\n this.formForgotReset();\r\n }\r\n //to submit form\r\n submitForgotForm(event) {\r\n event.preventDefault();\r\n let isfrmvalid = true;\r\n let checkerror = this.state.forgotFormError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key];\r\n let valid = this.validateForgotForm(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n return isfrmvalid;\r\n });\r\n\r\n if (isfrmvalid) {\r\n const formData = {\r\n Email: this.state.Email,\r\n };\r\n\r\n this.props.forgotPassword(formData);\r\n }\r\n }\r\n //to handle change\r\n handleForgotChange(event) {\r\n const { name, value } = event.target;\r\n let errors = this.state.forgotFormError;\r\n\r\n this.validateForgotForm(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n\r\n setResend() {\r\n if (\r\n this.props.res &&\r\n this.props.res.ResponseCode &&\r\n this.props.res.ResponseCode == \"205\"\r\n ) {\r\n this.setState({\r\n resendbtn: false,\r\n });\r\n return false;\r\n } else return true;\r\n }\r\n //to validate form\r\n validateForgotForm(value, name) {\r\n let errors = this.state.forgotFormError;\r\n let IsValid = true;\r\n\r\n switch (name) {\r\n case \"Email\":\r\n if (value == null || value.length < 1) {\r\n IsValid = false;\r\n errors.Email = \"Please enter your email-id.\";\r\n } else if (value.length >= 1) {\r\n /* eslint-disable */\r\n if (!value.match(/^\\w+([\\.-]?\\w+)*@\\w+([\\.-]?\\w+)*(\\.\\w{2,3})+$/)) {\r\n IsValid = false;\r\n errors.Email = \"Please enter valid email-id.\";\r\n } else errors.Email = \"\";\r\n /* eslint-enable */\r\n } else errors.Email = \"\";\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n render() {\r\n return (\r\n <>\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n {/* {\r\n this.props.res &&\r\n this.props.res.ResponseCode &&\r\n this.props.res.ResponseCode == \"205\"\r\n ? this.submitForm(e, \"L\")\r\n : this.submitForm(e, \"G\");\r\n }}\r\n style={{ background: \"none\" }}\r\n > */}\r\n\r\n {\r\n this.submitForm(e, \"L\");\r\n }}\r\n style={{ background: \"none\" }}\r\n >\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n {this.state.formError.UserName != null ? (\r\n
\r\n {this.state.formError.UserName}\r\n
\r\n ) : null}\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n {this.state.formError.Password != null ? (\r\n
\r\n {this.state.formError.Password}\r\n
\r\n ) : null}\r\n
\r\n\r\n
\r\n\r\n \r\n this.setState({\r\n forgotModal: true,\r\n Email: this.state.UserName,\r\n })\r\n }\r\n >\r\n Forgot Password\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n {/*
\r\n
*/}\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n\r\n
 
\r\n
\r\n\r\n this.setState({ forgotModal: false })}\r\n >\r\n
Reset Password
\r\n

Enter your Email and instructions will be sent to you!

\r\n
\r\n \r\n {this.state.forgotFormError.Email != null ? (\r\n
{this.state.forgotFormError.Email}
\r\n ) : null}\r\n
\r\n this.setState({ forgotModal: false })}\r\n />\r\n
\r\n \r\n \r\n\r\n {/*
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n {\r\n this.props.res &&\r\n this.props.res.ResponseCode &&\r\n this.props.res.ResponseCode == \"205\"\r\n ? this.submitForm(e, \"L\")\r\n : this.submitForm(e, \"G\");\r\n }}\r\n >\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n {this.state.formError.UserName != null ? (\r\n
\r\n {this.state.formError.UserName}\r\n
\r\n ) : null}\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n {this.state.formError.Password != null ? (\r\n
\r\n {this.state.formError.Password}\r\n
\r\n ) : null}\r\n
\r\n\r\n
\r\n\r\n this.setState({ forgotModal: true, Email: this.state.UserName })}\r\n >\r\n Forgot Password\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n this.setState({ forgotModal: false })}\r\n >\r\n
Reset Password
\r\n

Enter your Email and instructions will be sent to you!

\r\n
\r\n \r\n {this.state.forgotFormError.Email != null ? (\r\n
{this.state.forgotFormError.Email}
\r\n ) : null}\r\n
\r\n this.setState({ forgotModal: false })}\r\n />\r\n
\r\n \r\n */}\r\n \r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n res:\r\n state.login?.items && state.login?.items[0]\r\n ? state.login?.items[0]\r\n : null,\r\n resendbtn: state.login?.enable,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n checkUser: (login) => dispatch(loginActions.checkUser(login)),\r\n forgotPassword: (data) =>\r\n dispatch(changePasswordActions.forgotPassword(data)),\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(Login);\r\n","////to get verify product model\r\n\r\nexport default class VerifyProduct {\r\n VerificationMode = \"\";\r\n QrData = \"\";\r\n VerificationType = 0;\r\n CompanyPrefix = \"\";\r\n Userlatitude = 0;\r\n Userlongitude = 0;\r\n UserCity = \"\";\r\n UserState = \"\";\r\n UserCountry = \"\";\r\n UserZip = \"\";\r\n UserAddress = \"\";\r\n ScratchCode = \"\";\r\n}","export default __webpack_public_path__ + \"static/media/wrong-code.85f26f92.png\";","export default __webpack_public_path__ + \"static/media/sucess-code.5212bc0e.png\";","export default __webpack_public_path__ + \"static/media/lp-logo.943339a9.png\";","export default __webpack_public_path__ + \"static/media/login_logo.d7078415.png\";","export default __webpack_public_path__ + \"static/media/success.2de52eb3.png\";","export default __webpack_public_path__ + \"static/media/t4.ce0f418e.png\";","export default __webpack_public_path__ + \"static/media/AS.31330903.png\";","export default __webpack_public_path__ + \"static/media/GP.1f6ebb08.png\";","import React, { Component } from \"react\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport { Button } from \"primereact/button\";\r\nimport { connect } from \"react-redux\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { FileUpload } from \"primereact/fileupload\";\r\nimport VerifyProduct from \"../models/VerifyProduct\";\r\nimport { productAuthenticationActions } from \"../actions\";\r\nimport { handleResponse } from \"../helpers\";\r\nimport reviewIcon from \"./../assets/images/write-review-icon.png\";\r\nimport shareIcon from \"./../assets/images/share-icon.png\";\r\nimport sucessIcon from \"./../assets/images/sucess-code.png\";\r\nimport fakeIcon from \"./../assets/images/wrong-code.png\";\r\nimport { Rating } from \"primereact/rating\";\r\nimport Lightbox from \"react-image-lightbox\";\r\nimport InstaIcon from \"./../assets/images/instagram.png\";\r\nimport LinkedInIcon from \"./../assets/images/linkedIn.png\";\r\nimport OtherLinkIcon from \"./../assets/images/link.png\";\r\nimport Logo from \"./../assets/images/login_logo.png\";\r\nimport logo from \"./../assets/images/lp-logo.png\";\r\nimport logogg from \"./../assets/images/success.png\";\r\nimport thanku from \"./../assets/images/t4.png\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport AS from \"./../assets/images/AS.png\";\r\nimport GP from \"./../assets/images/GP.png\";\r\n\r\nimport PinterestIcon from \"./../assets/images/pinterest.png\";\r\nimport ReactPlayer from \"react-player\";\r\nimport {\r\n FacebookShareButton,\r\n FacebookIcon,\r\n TwitterIcon,\r\n TwitterShareButton,\r\n WhatsappShareButton,\r\n WhatsappIcon,\r\n LinkedinShareButton,\r\n LinkedinIcon,\r\n EmailShareButton,\r\n EmailIcon,\r\n} from \"react-share\";\r\n\r\nexport class ProductAuthentication extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.clsVerifyProduct = new VerifyProduct();\r\n this.state = {\r\n Promo: false,\r\n formIsValid: false,\r\n IsLocation: false,\r\n ratingBox: false,\r\n shareBox: false,\r\n VerifyProduct: {},\r\n rating: null,\r\n showDialog: false,\r\n VerificationMode: \"Web\",\r\n QrData: window.location.href,\r\n VerificationType: 2,\r\n VerificationId: 0,\r\n ProductId: \"\",\r\n CompId: \"\",\r\n displayBasic: false,\r\n UserId: \"\",\r\n SeqNo: \"\",\r\n Name: \"\",\r\n CustomerName: \"\",\r\n email: \"\",\r\n MobileNo: \"\",\r\n UserFeedback: \"\",\r\n showVideo: true,\r\n photoIndex: 0,\r\n isOpen: false,\r\n socialLinks: \"\",\r\n dealeraddress: \"\",\r\n purchasedfrom: \"\",\r\n IsWarranty: 0,\r\n ProductId: \"\",\r\n Invoice: \"\",\r\n companyId: \"\",\r\n InvoiceDate: \"\",\r\n showVerifyDialog: true,\r\n scratchCode: \"\",\r\n verificationResult: null,\r\n formError: {\r\n CustomerName: null,\r\n Name: null,\r\n email: null,\r\n MobileNo: null,\r\n UserFeedback: null,\r\n MobNo: null,\r\n dealeraddress: null,\r\n purchasedfrom: null,\r\n Invoice: \"\",\r\n InvoiceDate: \"\",\r\n },\r\n ScratchError: {\r\n scratchCode: null,\r\n },\r\n warrantyError: {\r\n Name: null,\r\n CustomerName: null,\r\n MobNo: null,\r\n email: null,\r\n dealeraddress: null,\r\n purchasedfrom: null,\r\n Invoice: \"\",\r\n },\r\n };\r\n\r\n this.submitForm = this.submitForm.bind(this);\r\n this.submitWarranty = this.submitWarranty.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.handleChange1 = this.handleChange.bind(this);\r\n this.hideFunc = this.hideFunc.bind(this);\r\n this.onHide = this.onHide.bind(this);\r\n this.onHideWarranty = this.onHideWarranty.bind(this);\r\n this.openDialog = this.openDialog.bind(this);\r\n this.openWarranty = this.openWarranty.bind(this);\r\n this.updateRating = this.updateRating.bind(this);\r\n this.ImgModal = this.ImgModal.bind(this);\r\n this.setImagePath = this.setImagePath.bind(this);\r\n this.reverseGeocodeLatLngAndVerifyProduct =\r\n this.reverseGeocodeLatLngAndVerifyProduct.bind(this);\r\n const urlParams = new URLSearchParams(window.location.search);\r\n const parmUid = urlParams.get(\"uid\");\r\n //const curl = window.location.href;\r\n this.clsVerifyProduct.QrData = this.state.QrData;\r\n this.clsVerifyProduct.ScratchCd = this.state.scratchCode;\r\n this.clsVerifyProduct.VerificationType = this.state.VerificationType;\r\n this.clsVerifyProduct.VerificationMode = this.state.VerificationMode;\r\n }\r\n\r\n //get reverse geo code\r\n reverseGeoCode(lat, long) {\r\n // tslint:disable-next-line:max-line-length\r\n const requestOptions = {\r\n method: \"GET\",\r\n };\r\n return fetch(\r\n `https://nominatim.openstreetmap.org/reverse?format=json&lat=${lat}&lon=${long}&zoom=18&addressdetails=1`,\r\n requestOptions\r\n ).then(handleResponse);\r\n // return fetch(`https://nominatim.openstreetmap.org/reverse?format=json&lat=${lat}&lon=${long}&zoom=18&addressdetails=1`);\r\n }\r\n\r\n //to trigger api on page call\r\n componentDidMount() {\r\n const caches = window.caches;\r\n if (window.caches) {\r\n window.caches.keys().then(async function (names) {\r\n await Promise.all(names.map((name) => window.caches.delete(name)));\r\n });\r\n }\r\n\r\n // const urlParams = new URLSearchParams(window.location.search);\r\n // const parmUid = urlParams.get('uid');\r\n\r\n // const curl = window.location.href;\r\n\r\n // this.clsVerifyProduct.verificationMode = this.state.verificationMode;\r\n // this.clsVerifyProduct.qrData = this.state.qrData;\r\n // this.clsVerifyProduct.verificationType = this.state.verificationType;\r\n // this.clsVerifyProduct.UID = parmUid;\r\n\r\n // setTimeout(() => {\r\n // // this.findMe();\r\n // }, 1000);\r\n // this.findMe();\r\n }\r\n\r\n // get verify product list data\r\n GetVerifyProduct(productAuthReq) {\r\n this.setState({\r\n IsLocation: false,\r\n });\r\n\r\n this.props.verifyProduct(productAuthReq);\r\n }\r\n //to hide function\r\n hideFunc() {\r\n this.setState({\r\n displayBasic: false,\r\n });\r\n }\r\n // to validate Scratch Form\r\n validateScratch(value, name) {\r\n let errors = this.state.ScratchError;\r\n let IsValid = true;\r\n switch (name) {\r\n case \"scratchCode\":\r\n if (!value || value.length < 1) {\r\n IsValid = false;\r\n errors.scratchCode = \"Please enter your Scratch Code.\";\r\n } else errors.scratchCode = \"\";\r\n break;\r\n default:\r\n break;\r\n }\r\n return IsValid;\r\n }\r\n\r\n //to validate feedback form\r\n validateFeedback(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n switch (name) {\r\n case \"Name\":\r\n if (!value || value.length < 1) {\r\n IsValid = false;\r\n errors.Name = \"Please enter your name.\";\r\n } else if (value.length >= 1) {\r\n if (!value.match(/^[a-zA-Z-,]+(\\s{0,1}[a-zA-Z-, ])*$/)) {\r\n IsValid = false;\r\n errors.Name = \"Please enter only alphabet.\";\r\n } else errors.Name = \"\";\r\n } else errors.Name = \"\";\r\n break;\r\n case \"email\":\r\n if (!value || value.length < 1) {\r\n IsValid = false;\r\n errors.email = \"Please enter your email-id.\";\r\n } else if (value && value.length > 1) {\r\n if (!value.match(/^\\w+([\\.-]?\\w+)*@\\w+([\\.-]?\\w+)*(\\.\\w{2,3})+$/)) {\r\n IsValid = false;\r\n errors.email = \"Please enter valid email-id.\";\r\n } else errors.email = \"\";\r\n } else errors.email = \"\";\r\n break;\r\n case \"MobileNo\":\r\n if (!value || value.length < 1) {\r\n IsValid = false;\r\n errors.MobileNo = \"Please enter your mobile no.\";\r\n } else if (value && value.length > 1) {\r\n if (!value.match(/^[6-9]\\d{9}$/)) {\r\n IsValid = false;\r\n errors.MobileNo = \"Please enter valid mobile no.\";\r\n } else errors.MobileNo = null;\r\n } else errors.MobileNo = \"\";\r\n break;\r\n case \"UserFeedback\":\r\n if (!value || value.length < 1) {\r\n IsValid = false;\r\n errors.UserFeedback = \"Please enter your feedback.\";\r\n } else errors.UserFeedback = \"\";\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n\r\n validateWarranty(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n switch (name) {\r\n case \"CustomerName\":\r\n if (!value || value.length < 1) {\r\n IsValid = false;\r\n errors.CustomerName = \"Please enter your name.\";\r\n } else if (value.length >= 1) {\r\n if (!value.match(/^[a-zA-Z-,]+(\\s{0,1}[a-zA-Z-, ])*$/)) {\r\n IsValid = false;\r\n errors.CustomerName = \"Please enter only alphabet.\";\r\n } else errors.CustomerName = \"\";\r\n } else errors.CustomerName = \"\";\r\n break;\r\n case \"email\":\r\n if (!value || value.length < 1) {\r\n IsValid = false;\r\n errors.email = \"Please enter your email-id.\";\r\n } else if (value && value.length > 1) {\r\n if (!value.match(/^\\w+([\\.-]?\\w+)*@\\w+([\\.-]?\\w+)*(\\.\\w{2,3})+$/)) {\r\n IsValid = false;\r\n errors.email = \"Please enter valid email-id.\";\r\n } else errors.email = \"\";\r\n } else errors.email = \"\";\r\n break;\r\n case \"MobNo\":\r\n if (!value || value.length < 1) {\r\n IsValid = false;\r\n errors.MobNo = \"Please enter your mobile no.\";\r\n } else if (value && value.length > 1) {\r\n if (!value.match(/^[6-9]\\d{9}$/)) {\r\n IsValid = false;\r\n errors.MobNo = \"Please enter valid mobile no.\";\r\n } else errors.MobNo = null;\r\n } else errors.MobNo = \"\";\r\n break;\r\n // case \"UserWarranty\":\r\n // if (!value || value.length < 1) {\r\n // IsValid = false;\r\n // errors.UserFeedback = \"Please enter your warranty.\";\r\n // } else errors.UserFeedback = \"\";\r\n // break;\r\n case \"Invoice\":\r\n if (!value || value.toString().length < 1) {\r\n IsValid = false;\r\n errors.Invoice = \"Please upload product image.\";\r\n } else errors.Invoice = \"\";\r\n break;\r\n case \"InvoiceDate\":\r\n if (!value || value.toString().length < 1) {\r\n IsValid = false;\r\n errors.InvoiceDate = \"Please enter an Invoice Date.\";\r\n } else errors.InvoiceDate = \"\";\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n\r\n ImgModal() {\r\n var modal = document.getElementById(\"myModal\");\r\n\r\n // Get the image and insert it inside the modal - use its \"alt\" text as a caption\r\n var img = document.getElementById(\"myImg\");\r\n var modalImg = document.getElementById(\"img01\");\r\n // var captionText = document.getElementById(\"caption\");\r\n img.onclick = function () {\r\n modal.style.display = \"block\";\r\n modalImg = document.getElementById(\"img01\");\r\n // captionText.innerHTML = this.alt;\r\n };\r\n\r\n // Get the element that closes the modal\r\n var span = document.getElementsByClassName(\"close\")[0];\r\n\r\n // When the user clicks on (x), close the modal\r\n span.onclick = function () {\r\n modal.style.display = \"none\";\r\n };\r\n }\r\n\r\n submitWarranty(event) {\r\n // const { name, value } = event.target;\r\n event.preventDefault();\r\n\r\n let iswarrantyvalid = true;\r\n let checkerror = this.state.formError;\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key];\r\n let valid = this.validateWarranty(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: iswarrantyvalid });\r\n iswarrantyvalid = false;\r\n }\r\n\r\n return iswarrantyvalid;\r\n });\r\n\r\n const warrantyData = {\r\n CustomerName: this.state.CustomerName,\r\n email: this.state.email,\r\n MobNo: this.state.MobNo,\r\n dealeraddress: this.state.dealeraddress,\r\n purchasedfrom: this.state.purchasedfrom,\r\n Invoice: this.state.Invoice,\r\n VerificationId: this.props.ProductAuthenticationData.VerificationId,\r\n ProductId: this.props.ProductAuthenticationData.ProductId,\r\n CompId: this.props.ProductAuthenticationData.CompId,\r\n SeqNo: this.props.ProductAuthenticationData.SeqNo,\r\n InvoiceDate: this.state.InvoiceDate,\r\n };\r\n\r\n if (iswarrantyvalid) {\r\n this.props.UpdateWarranty(warrantyData);\r\n }\r\n\r\n this.props.verifyProduct();\r\n }\r\n\r\n photoBodyTemplate(e) {\r\n if (e.Invoice) {\r\n return ;\r\n }\r\n }\r\n\r\n setImagePath(event) {\r\n let errors = this.state.formError;\r\n\r\n errors.Invoice = \"\";\r\n if (event.xhr) {\r\n if (event.xhr.response) {\r\n const response = JSON.parse(event.xhr.response);\r\n if (response) {\r\n if (response.ResponseCode === \"200\") {\r\n this.setState({\r\n Invoice: response.Source,\r\n });\r\n } else if (response.ResponseCode === \"400\") {\r\n errors.Invoice = \"Only image format is accepted.\";\r\n this.setState({\r\n Invoice: \"\",\r\n });\r\n } else {\r\n // this.messageService.add({ severity: 'error', summary: 'Oops', detail: response.ResponseMessage });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n }\r\n submitForm(event) {\r\n // const { name, value } = event.target;\r\n event.preventDefault();\r\n\r\n let isfeedfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key];\r\n let valid = this.validateFeedback(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfeedfrmvalid });\r\n isfeedfrmvalid = false;\r\n }\r\n\r\n return isfeedfrmvalid;\r\n });\r\n\r\n const feedbackData = {\r\n Name: this.state.Name,\r\n email: this.state.email,\r\n MobileNo: this.state.MobileNo,\r\n UserFeedback: this.state.UserFeedback,\r\n VerificationId: this.props.ProductAuthenticationData?.VerificationId,\r\n };\r\n\r\n if (isfeedfrmvalid) {\r\n this.props.UpdateFeedback(feedbackData);\r\n }\r\n\r\n this.setState({ [feedbackData]: \"\" });\r\n }\r\n\r\n formReset() {\r\n this.setState({\r\n Name: \"\",\r\n email: \"\",\r\n MobileNo: \"\",\r\n UserFeedback: \"\",\r\n formError: {\r\n Name: null,\r\n email: null,\r\n MobileNo: null,\r\n UserFeedback: null,\r\n MobNo: null,\r\n dealeraddress: null,\r\n purchasedfrom: null,\r\n Invoice: \"\",\r\n InvoiceDate: \"\",\r\n CustomerName: \",\",\r\n },\r\n });\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key, value]) => {\r\n errors[key] = \"\";\r\n });\r\n }\r\n\r\n updateRating(productId, verificationId, event) {\r\n this.setState({ rating: event.value });\r\n\r\n var data = {\r\n ProductId: productId,\r\n ProductRating: event.value,\r\n SeqNo: event.value,\r\n VerificationId: verificationId,\r\n };\r\n\r\n if (productId) {\r\n this.props.updateRating(data);\r\n } else {\r\n }\r\n }\r\n\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n let errors = this.state.scratchError;\r\n\r\n this.validateFeedback(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n\r\n handleChange1(event) {\r\n const { name, value } = event.target;\r\n let errors = this.state.scratchError;\r\n\r\n this.validateWarranty(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n\r\n onHide() {\r\n this.props.onHideShow(false);\r\n }\r\n onHideWarranty() {\r\n this.props.onHideShowWarrnty(false);\r\n }\r\n\r\n openDialog() {\r\n this.props.onHideShow(true);\r\n }\r\n\r\n openWarranty() {\r\n this.props.onHideShowWarrnty(true);\r\n }\r\n\r\n //to find location\r\n findMe() {\r\n if (navigator.geolocation) {\r\n navigator.geolocation.getCurrentPosition(\r\n (position) => {\r\n this.showPosition(position);\r\n },\r\n (denied) => {\r\n // alert(JSON.stringify(denied));\r\n this.GetVerifyProduct(this.clsVerifyProduct);\r\n },\r\n { enableHighAccuracy: true, maximumAge: 10000 }\r\n );\r\n } else {\r\n this.GetVerifyProduct(this.clsVerifyProduct);\r\n }\r\n }\r\n //to get exact longitude and latitude\r\n showPosition(position) {\r\n this.clsVerifyProduct.Userlongitude = position.coords.longitude;\r\n this.clsVerifyProduct.Userlatitude = position.coords.latitude;\r\n this.reverseGeocodeLatLngAndVerifyProduct();\r\n }\r\n //to get location\r\n reverseGeocodeLatLngAndVerifyProduct() {\r\n // tslint:disable-next-line: max-line-length\r\n this.reverseGeoCode(\r\n this.clsVerifyProduct.Userlatitude,\r\n this.clsVerifyProduct.Userlongitude\r\n ).then(\r\n (response) => {\r\n const res = response;\r\n this.clsVerifyProduct.UserCity = res.address.state_district;\r\n this.clsVerifyProduct.UserState = res.address.state;\r\n this.clsVerifyProduct.UserCountry = res.address.country;\r\n this.clsVerifyProduct.UserZip = res.address.postcode;\r\n this.clsVerifyProduct.UserAddress = res.display_name;\r\n this.setState({\r\n Location: res.display_name,\r\n });\r\n this.GetVerifyProduct(this.clsVerifyProduct);\r\n },\r\n (error) => {\r\n // alert(JSON.stringify(error))\r\n this.GetVerifyProduct(this.clsVerifyProduct);\r\n }\r\n );\r\n }\r\n handleScratchCodeChange = (e) => {\r\n this.setState({ scratchCode: e.target.value });\r\n this.clsVerifyProduct.ScratchCd = e.target.value;\r\n };\r\n\r\n handleVerifyClick = async (event) => {\r\n event.preventDefault();\r\n let isScratchfrmvalid = true;\r\n let checkerror = this.state.ScratchError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key];\r\n let valid = this.validateScratch(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isScratchfrmvalid });\r\n isScratchfrmvalid = false;\r\n }\r\n return isScratchfrmvalid;\r\n });\r\n\r\n if (isScratchfrmvalid) {\r\n try {\r\n // Wait for the asynchronous verification\r\n // this.GetVerifyProduct(this.clsVerifyProduct)\r\n this.findMe();\r\n // Handle the response\r\n // const verificationResponse = {\r\n // success: response && response.success, // Adjust based on the actual response structure\r\n // };\r\n\r\n this.setState((prevState) => ({ scratchCode: \"\" }));\r\n //this.setState({ verificationResult: verificationResponse.success });\r\n\r\n // Close the dialog\r\n this.setState({ showVerifyDialog: false });\r\n } catch (error) {\r\n // Handle any error during verification\r\n console.error(\"Error during scratch verification:\", error);\r\n }\r\n }\r\n };\r\n\r\n render() {\r\n const { photoIndex, isOpen } = this.state;\r\n let links = null;\r\n links =\r\n this.props.ProductAuthenticationData &&\r\n this.props.ProductAuthenticationData.SocialLinks\r\n ? JSON.parse(this.props?.ProductAuthenticationData?.SocialLinks)\r\n : [];\r\n let share = null;\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n

\r\n :\r\n sales@xtrapowertools.com{\" \"}\r\n :\r\n +91-1244000608\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n {this.state.showVerifyDialog && (\r\n this.setState({ showVerifyDialog: false })}\r\n >\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n )}\r\n\r\n {this.props.ProductAuthenticationData != null &&\r\n this.props.ProductAuthenticationData.ResponseCode == \"200\" ? (\r\n
\r\n {(this.props.ProductAuthenticationData.GenuineAudio != null) ===\r\n true ? (\r\n \r\n ) : (\r\n \"\"\r\n )}\r\n\r\n {(this.props.ProductAuthenticationData.PromotionalMessage !=\r\n null) ===\r\n true ? (\r\n \r\n ) : (\r\n \"\"\r\n )}\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n

\r\n {this.props.ProductAuthenticationData.ResponseMessage}\r\n

\r\n
\r\n\r\n
\r\n {this.props.ProductAuthenticationData.IsWarranty != null &&\r\n this.props.ProductAuthenticationData.IsWarranty == \"1\" ? (\r\n
\r\n (\r\n \r\n Click on the App store and Play Store Icon For Warranty\r\n Registration\r\n \r\n )\r\n
\r\n ) : (\r\n this.state.onHideWarranty\r\n )}\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n {this.props.ProductAuthenticationData.ProductName}\r\n

\r\n\r\n
\r\n\r\n
\r\n
\r\n {this.props.ProductAuthenticationData.IsFeedback !=\r\n null &&\r\n this.props.ProductAuthenticationData.IsFeedback !=\r\n \"0\" ? (\r\n this.openDialog()}\r\n >\r\n {\" \"}\r\n Feedback\r\n \r\n ) : null}\r\n
\r\n\r\n
\r\n {this.props.ProductAuthenticationData.IsRating !=\r\n null &&\r\n this.props.ProductAuthenticationData.IsRating !=\r\n \"0\" ? (\r\n \r\n this.setState({\r\n ratingBox: !this.state.ratingBox,\r\n })\r\n }\r\n >\r\n \r\n Rating  \r\n {this.props.Rating &&\r\n this.props.Rating.ProductRating\r\n ? this.props.Rating.ProductRating\r\n : this.props.ProductAuthenticationData\r\n .ProductRating}\r\n (\r\n {this.props.Rating &&\r\n this.props.Rating.TotalRating\r\n ? this.props.Rating.TotalRating\r\n : this.props.ProductAuthenticationData\r\n .TotalRating == null\r\n ? 0\r\n : this.props.ProductAuthenticationData\r\n .TotalRating}\r\n )\r\n \r\n ) : null}\r\n
\r\n
\r\n {this.props.ProductAuthenticationData.IsShare !=\r\n null &&\r\n this.props.ProductAuthenticationData.IsShare !=\r\n \"0\" ? (\r\n \r\n this.setState({\r\n shareBox: !this.state.shareBox,\r\n })\r\n }\r\n >\r\n \r\n Share\r\n \r\n ) : null}\r\n
\r\n
\r\n\r\n
\r\n {this.state.ratingBox ? (\r\n
\r\n {this.props.ProductAuthenticationData.isRated ==\r\n 0 ? (\r\n \r\n this.updateRating(\r\n this.props.ProductAuthenticationData\r\n .ProductId,\r\n this.props.ProductAuthenticationData\r\n .VerificationId,\r\n e\r\n )\r\n }\r\n />\r\n ) : (\r\n \r\n this.updateRating(\r\n this.props.ProductAuthenticationData\r\n .ProductId,\r\n this.props.ProductAuthenticationData\r\n .VerificationId,\r\n e\r\n )\r\n }\r\n />\r\n )}\r\n
\r\n ) : null}\r\n
\r\n\r\n
\r\n {/*
\r\n {this.props.ProductAuthenticationData != null &&\r\n this.props.ProductAuthenticationData.SocialLinks != null ? (\r\n \r\n this.setState({ socialLinks: !this.state.socialLinks })\r\n }\r\n >\r\n \r\n Social Links\r\n \r\n ) : null}\r\n
*/}\r\n
\r\n\r\n
\r\n {this.state.shareBox ? (\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n ) : null}\r\n
\r\n\r\n
\r\n {this.state.socialLinks ? (\r\n
\r\n \r\n {this.props.ProductAuthenticationData != null &&\r\n this.props.ProductAuthenticationData\r\n .SocialLinks != null ? (\r\n <>\r\n \r\n {Object.keys(links).map((x) => {\r\n switch (x) {\r\n case \"Facebook\": {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n case \"Instagram\": {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n case \"LinkedIn\": {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n case \"Twitter\": {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n case \"Pinterest\": {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n default: {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n }\r\n })}\r\n \r\n \r\n ) : (\r\n \"\"\r\n )}\r\n \r\n
\r\n ) : null}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n Facebook\r\n \r\n \r\n \r\n Instagram\r\n \r\n \r\n \r\n linkedin\r\n \r\n \r\n \r\n Youtube\r\n \r\n \r\n \r\n Whatsapp\r\n \r\n \r\n \r\n Twitter\r\n \r\n
\r\n
\r\n
\r\n {this.props.ProductAuthenticationData &&\r\n this.props.ProductAuthenticationData\r\n .ProductSpecification &&\r\n Array.isArray(\r\n this.props.ProductAuthenticationData\r\n .ProductSpecification\r\n )\r\n ? this.props.ProductAuthenticationData.ProductSpecification.map(\r\n (x, i) => {\r\n if (x.Key === \"Website\") {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n } else {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n }\r\n )\r\n : null}\r\n
\r\n

{x.Key}

\r\n
\r\n

\r\n \r\n {\" \"}\r\n {x.Value}\r\n \r\n

\r\n
\r\n

{x.Key}

\r\n
\r\n

{x.Value}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n {this.state.formError.CustomerName !== \"\" ? (\r\n
\r\n {this.state.formError.CustomerName}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n\r\n
\r\n \r\n {this.state.formError.email !== \"\" ? (\r\n
\r\n {this.state.formError.email}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n\r\n
\r\n \r\n {this.state.formError.MobNo !== \"\" ? (\r\n
\r\n {this.state.formError.MobNo}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n\r\n
\r\n \r\n {this.state.formError.purchasedfrom !== \"\" ? (\r\n
\r\n {this.state.formError.purchasedfrom}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n\r\n
\r\n \r\n {this.state.formError.dealeraddress !== \"\" ? (\r\n
\r\n {this.state.formError.dealeraddress}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n\r\n
\r\n \r\n {this.state.formError.InvoiceDate !== \"\" ? (\r\n
\r\n {this.state.formError.InvoiceDate}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n
Upload Invoice Image*
\r\n\r\n
\r\n \r\n\r\n {this.state.Invoice ? (\r\n \r\n
\r\n \r\n
\r\n
\r\n ) : null}\r\n\r\n {this.state.formError.Invoice !== null ? (\r\n
\r\n {this.state.formError.Invoice}\r\n
\r\n ) : null}\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n ) : (\r\n
\r\n
\r\n
\r\n
\r\n {(this.props.ProductAuthenticationData != null &&\r\n this.props.ProductAuthenticationData.FakeAudio) ===\r\n true ? (\r\n \r\n ) : (\r\n \"\"\r\n )}\r\n\r\n
\r\n {this.props.ProductAuthenticationData != null ? (\r\n
\r\n
\r\n {\" \"}\r\n \r\n
\r\n
\r\n

\r\n {\r\n this.props.ProductAuthenticationData\r\n .ResponseMessage\r\n }\r\n

\r\n
\r\n
\r\n this.openDialog()}\r\n >\r\n Feedback\r\n \r\n
\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n )}\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n {this.state.formError.Name !== \"\" ? (\r\n
{this.state.formError.Name}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n\r\n
\r\n \r\n {this.state.formError.email !== \"\" ? (\r\n
{this.state.formError.email}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n {this.state.formError.MobileNo !== \"\" ? (\r\n
{this.state.formError.MobileNo}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n {this.state.formError.UserFeedback !== \"\" ? (\r\n
\r\n {this.state.formError.UserFeedback}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n {/*
\r\n \r\n
*/}\r\n\r\n
\r\n
\r\n
\r\n Copyright © 2023 | Powered by LSL Tools Private Limited\r\n
\r\n
\r\n Design & Developed by{\" \"}\r\n \r\n Holostik India Limited\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n ////console.log('state.productAuthentication.feedback', state.productAuthentication.showDialogFeedback);\r\n ////console.log('state.productAuthentication.items', state.productAuthentication.items);\r\n console.log(\"scratch DATA\", state.productAuthentication.scratch);\r\n return {\r\n Rating: state.productAuthentication.rating,\r\n ProductAuthenticationData:\r\n (state.productAuthentication.items &&\r\n state.productAuthentication.items.length) > 0\r\n ? state.productAuthentication.items[0]\r\n : null,\r\n ShowDialogFeedback: state.productAuthentication.showDialogFeedback,\r\n ShowDialogWarranty: state.productAuthentication.showDialogWarranty,\r\n ScratchData:\r\n (state.productAuthentication.scratch &&\r\n state.productAuthentication.scratch.length) > 0\r\n ? state.productAuthentication.scratch[0]\r\n : null,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n verifyProduct: (productAuth) =>\r\n dispatch(productAuthenticationActions.verifyProduct(productAuth)),\r\n UpdateFeedback: (feedback) =>\r\n dispatch(productAuthenticationActions.UpdateFeedback(feedback)),\r\n UpdateWarranty: (warranty) =>\r\n dispatch(productAuthenticationActions.UpdateWarranty(warranty)),\r\n updateRating: (ratingData) =>\r\n dispatch(productAuthenticationActions.updateRating(ratingData)),\r\n onHideShowWarrnty: (isbool) =>\r\n dispatch(productAuthenticationActions.onHideShowWarranty(isbool)),\r\n onHideShow: (isbool) =>\r\n dispatch(productAuthenticationActions.onHideShow(isbool)),\r\n verifyScratch: (ScratchData) =>\r\n dispatch(productAuthenticationActions.verifyScratch(ScratchData)),\r\n };\r\n};\r\nexport default connect(\r\n mapStateToProps,\r\n mapDispatchToProps\r\n)(ProductAuthentication);\r\n","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAAA3NCSVQICAjb4U/gAAAACXBIWXMAAADOAAAAzgGU/pOgAAAAGXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAAAftQTFRF/////wAA/wD/gACA/4CAqgBVqgCqqlVVnyCAsxqZvxWAvytqv0BVgCazjBqm2YxAdSC/lSCf1WpK35VArxiHryCHx0hQx1BQih2omR2gzGZJ03VCnxyYmSCfnxyZwShsxi1mzFtKhCCyshuEuxuAvxd2xBtyxCBtxClpxC5kxDJkxDdbxDtbxEBXyElS1oBEqh6IhiCuqhyKuhh9wiBtwjFhxkFVxk1N131FdyO7iiGr1HVE3JA+cSTBmB+dzmdI4Jg+pR6RpRyQvxp4xDtay1VMhSGvphyRyVRL135ErR2Jvxp4xTxaoB+XcyPCnx6WzF1J35g+lx+chSGwnh6WzF1J139DrRuJfyK2hCGx139D2odCuhp+whxzxTdexkNVrByKuhl9xkFVx01NiyCqkiCj0m5G1HZEphyQwhxzxTZdylVLciXCpR2QylVK35c+mB+ddyO8kh+jph2Q0m5G3I8/sxuEx0dRhSGwmB+dpR2QwyJuxDJiylVLz2ZI139DciTCrByKx01N35g+mB+dshuEwydqxCxmx0dRciTCeCO8fyK2hSGwiyCqkh+jmB+dnx6Xph2QrByKshuEuRp+vxl4whxzwyJuwydqxCxmxDJixTddxTxZxkJVx0dRx01NylVLzV1Jz2ZI0m5G1HZE139D2odB3I8/35g+TEZlRwAAAIl0Uk5TAAEBAgIDAwMICgwMDBQUFBgYGBggICAgIyMjIyUoLS0tLTg4ODg4ODg4ODg4ODg4PD8/Pz8/Pz8/Xl5eXmNjY2NmbGxsbG1tbW1zd3eOl5eXl5uhoaGhp7Ozs7O0tLS0v7+/v8LCwsLFxcXFysrKyt7v7+/v7/Dw9fX19fX19fX4+Pj4/P39/f1iCsudAAACJElEQVQ4T22TT08TURRHzzMPTY1VZxig1sxgYloyTYiEdlFQi3Fph4X6CfSDARvjztUMGyRxUSyRQKJNnNDGGAaEUsqMWJOm/quLaaG0/Hb3npP77kvekwDcnFQMLcJZmnUvKH0HkAAz2Vucz1XDILNeDIVoPs1FiT8bdxpIsNJQrzSOTnrgjZFoQiMjXiOZzYBrVwcGxCyTzM57qWQF7uLffnzpWnXxpUnWlZM6NXuA68+1rTe2NqpPSkVQOTgFl2NUfwFTd8h92KuMoUhD0OiOfZRUxzj0y+/+/RR4xzQEhtQERyEfyU8DxGIpwylGottNjgSaVCG8n/ZCB35wHdKjC8sAJwJVChAAYt6AddfFNLMY80ttQAg4FR5nYNkBNjeDJ2S81X4hKSg64TKOOkOyXxhSBS6duLOoQ7/PC3Ed/0wIVD2+c14QIjwpTKfqFQ52jeHURoenhvEO+oSWP47ZFUyB3+oTKE+T820ArByU6RdWjfs8HXY/kzJzsLY6ILTtkQnm5mqMAtt2+1TY0wmfc23JegBjAAW7BkBEsCvrBkq42uGCl1Tv8sUvv22HHUVQl16aaFjSXlm5Eme/RTdRgScDgRnf77ZaXzlL3BQEsvTpXsJa+MNgpJXgY0n6xSlywv42wG9bD6HoS9bG8+RibiNo9tCIEjWT4KwhwRF5JiYGJgCOAxJOXu3MTF+At4oFOr+74G4ohpbogZW6F5SOAf4DFVKv+uC+tE8AAAAASUVORK5CYII=\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAACjklEQVRoge2ZT2gTQRTGv9m0pu0mEAu2ikuJDQqCNNbWniJ6qViwFg+i0osXvTeCDfSmElIPAQ8eRK8FsQiilXqzgvWgLbbpQRFUrD0YW0ItCSbY3edFlCQ7SSd1divM7/bmvZ39vn37Z3YXUCgUCjdh1Qo8idQAiIaIoRuA7oAmAMgR2GsNlDRj4ceVCisa0EbnEiA2/G+1CRO3YuERXpJrwJNIDRDooRxNYjCN+s0rByfschp3K6IhaYoEsSwW5eW4BoihS44ccRjQzcvxOwD4JGipFT8vUcmALfuavZgaDGEtegDPB0PYu927OWmbRNjAnT4DRwwder2GiKHjdp8hQ9eGETbQ2dpYFHeVxE4jbOBN+kdRPFsSO42wgYuTS3ixlEPup4WpxSwuTX6RoWvD1Ilu8D5TwNGxDzK01IRwB7Yawh0whzvKxjyjqar53f56XO7Zgd6gD+0BLwqmhYXlPO6/XcXd+QwKJolKAVCDgVoItzTg6dl2tDT93V1DnQcRQ0fE0HGhoxn945/wNbcuPLcjp9D46WCR+FIOtTZi7FRb9bW9DY4YCAW2Va051ubDiRB3xcDFEQMWATdnVtB77yPOP1rEs89Z27pz+wPCcztyDVydTuPadPpP/ODdd0ycCeL4nuIj3rOrSXhuRzpwa3alKDaJEH/5raxupy5+PKUbIACZvFk2vrCcLxvzez3C80s3wLuzrBbKTW3Zu5BMlAG3UQbcRhlwm//eAPfZoSXma3vDkIQVC9tqrdQB+yWjK7A1Xob/bRRsRo4YcQjE1cI1oIGScuSIo8HiauEa+P1nJC5FkRB03Yx1PuFlq/9iujF30rJYlAGH4dwX6ywBrzRYyUriFQqFwn1+AXvFo7bcPPZdAAAAAElFTkSuQmCC\"","export default \"data:image/png;base64,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\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAABmJLR0QA/wD/AP+gvaeTAAACpUlEQVRoge2Zz2oTQRzHP7lVWu0riNWDD1FNmuLRoAh9hfbSUwtBH6RWBJ+hWi8V2ioIeQFNvXhQUKGN1rTppWA8/HZhMzszO7ud/RPYLwyEZX6T7yczv9n5TaBWrVrToGXgBdAHzoLWB7aBdom+nHUbeA+ME9ph0LeSagIDkiHCNgAWS3Fq0T3gHHeIsP2mQjPTBi6Im9xBZmk2aE3gtabfQfGW49JB/AM2LDFPicMs5WvTLhPEukPsrhK3lZPHRLXIDgHyI0RjP+fgMVF3gVOyQwBcV+L/evaYqAbwkatBANxQxjj16NFJD4gnajfDOOrS+uTLoKteKQb2kFlKq7eUnOxfFAMPM4yxSXxWW74MumoU+fIeMBM8fwT8BI6BJ5b4dSSnohD7eZm1KQTpAfPBsxXgMmLs2BCrgxgACzn6NeoIO8QY+KWJ00FcIMeWUrSGHeISeKzEmCAqUZeYIFYifRrI1jy1EDNAB3in9CkMYgkpRftInXCG5MRaCoh5JId0tUfuELcwl6dJie0KMSDnxLaVp74gDsh5izVVdmkhAFaRo/g5METOTlsU8MY2Qewhx47wje0CUZpMlV2XyQPgVEKo9USH5JxYLcCvVk3cy9Pv2CF6lFBDgNwdqbuTrbL7gR1ijCR14VLfE0nlaQf4BnwNPgNcY3KLLRxkmUmIMfZ7J5M6yhiFL61txcBOhjEaxM9OL30ZdNWRYiDLUaFLfFYLvx0cKgZmU8br6okPPg26SgWZSxGrg/gD3PHs0Ul9si0tHcQoRbx3qcn+xiHGBFH6rbmaqM8s/TepIESoQ+Iwu4i5OeRSuU38BrBSEAA3kfsmXe1hayMqclEQ1SLp/qw8Ae6X4tRBC+iXmdr2kVq+8moBz5Hz0pCCy9NatWpdXf8BbajY29N4sp0AAAAASUVORK5CYII=\"","import React, { Component } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { productAuthenticationActions } from \"../actions\";\r\nimport logo from \"./../assets/images/lp-logo.png\";\r\n\r\nimport AS from \"./../assets/images/AS.png\";\r\nimport GP from \"./../assets/images/GP.png\";\r\nimport \"./wa.css\";\r\nimport {\r\n FacebookShareButton,\r\n FacebookIcon,\r\n TwitterIcon,\r\n TwitterShareButton,\r\n WhatsappShareButton,\r\n WhatsappIcon,\r\n LinkedinShareButton,\r\n LinkedinIcon,\r\n EmailShareButton,\r\n EmailIcon,\r\n} from \"react-share\";\r\n\r\nexport class Wa extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n loading: false,\r\n totalRecords: 0,\r\n rows: 5,\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n const urlParams = new URLSearchParams(window.location.search);\r\n const id = urlParams.get(\"uid\");\r\n this.props.verifyProduct({ uid: urlParams });\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (\r\n prevProps.ProductAuthenticationData !==\r\n this.props.ProductAuthenticationData\r\n ) {\r\n const { FeedbackList } = this.props;\r\n }\r\n }\r\n\r\n render() {\r\n const { ProductAuthenticationData } = this.props;\r\n console.log(\"ProductAuthenticationData:\", ProductAuthenticationData);\r\n\r\n // Check if ProductAuthenticationData is not null or undefined\r\n if (!ProductAuthenticationData) {\r\n return (\r\n
\r\n
\r\n

\r\n Invalid QR Code or Warranty is not Registered for this QR Code\r\n

\r\n
\r\n
\r\n );\r\n }\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n

\r\n :\r\n sales@xtrapowertools.com{\" \"}\r\n :\r\n +91-1244000608\r\n

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

Warranty Card Details

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

\r\n {ProductAuthenticationData.ProductName}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* \r\n \r\n \r\n */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {ProductAuthenticationData.claimdate ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n
\r\n Customer Name:\r\n {ProductAuthenticationData.CustomerName}
\r\n Mobile No.:\r\n {ProductAuthenticationData.MobNo}
\r\n Purchased From:\r\n {ProductAuthenticationData.purchasedFrom}
\r\n Warranty Register Date:\r\n {ProductAuthenticationData.RegisterDate}
\r\n Warranty Invoice Date:\r\n {ProductAuthenticationData.InvoiceDate}
\r\n Warranty Invoice Image:\r\n \r\n \r\n Click Here{\" \"}\r\n \r\n
\r\n Warranty Card Image:\r\n \r\n \r\n Click Here{\" \"}\r\n \r\n
\r\n Warranty Expiry Date:\r\n {ProductAuthenticationData.ExpireDate}
\r\n Warranty Claimed Date:\r\n {ProductAuthenticationData.claimdate}No warranty claimed
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n ProductAuthenticationData: state.productAuthentication?.warranty,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n verifyProduct: (productAuth) =>\r\n dispatch(productAuthenticationActions.Warranty(productAuth)),\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(Wa);\r\n","export default __webpack_public_path__ + \"static/media/avatar.0bb57787.jpg\";","export default __webpack_public_path__ + \"static/media/holologo.1e0f1adb.png\";","import React, { Component } from \"react\";\r\nimport Avtar from \"./../assets/images/avatar.jpg\";\r\nimport { Menubar } from \"primereact/menubar\";\r\nimport { BrowserRouter as Router, Link } from \"react-router-dom\";\r\nimport logo from \"./../assets/images/holologo.png\";\r\nimport { connect } from \"react-redux\";\r\nimport { menuActions } from \"../../src/actions\";\r\n\r\nclass Header extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n nav: false,\r\n UserName: \"\",\r\n };\r\n\r\n this.navigation = [\r\n {\r\n label: \"Dashboard\",\r\n icon: \"pi pi-palette\",\r\n url: \"/\",\r\n },\r\n {\r\n label: \"Masters\",\r\n icon: \"pi pi-user\",\r\n items: [\r\n {\r\n label: \"Company Master\",\r\n url: \"/masters/company-master\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"User Master\",\r\n url: \"/masters/user-master\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Product Master\",\r\n url: \"/masters/product-master\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Product Configuration\",\r\n url: \"/masters/product-configuration\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Role Master / Access Right\",\r\n url: \"/masters/role-master\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Carton Master\",\r\n url: \"/masters/carton-master\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Order Booking\",\r\n url: \"/masters/order-booking\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Loyality Scheme Master\",\r\n url: \"/masters/loyalityscheme-master\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"SQL Editor\",\r\n url: \"/masters/sql-editor\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n ],\r\n },\r\n {\r\n label: \"Activation\",\r\n icon: \"pi pi-fw pi-pencil\",\r\n items: [\r\n {\r\n label: \"Issue Number\",\r\n url: \"/activation/issue-number\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n ],\r\n },\r\n {\r\n label: \"Transactions\",\r\n icon: \"pi pi-fw pi-pencil\",\r\n items: [\r\n {\r\n label: \"Mapping\",\r\n url: \"/transactions/mapping\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"De-mapping\",\r\n url: \"/transactions/de-mapping\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Damage\",\r\n url: \"/transactions/damage\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Redemption Approval\",\r\n url: \"/transactions/RedemptionApproval\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n ],\r\n },\r\n {\r\n label: \"Reports\",\r\n icon: \"pi pi-chart-bar\",\r\n items: [\r\n {\r\n label: \"Verification Log\",\r\n url: \"/reports/verification-log\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Mapping Report\",\r\n url: \"/reports/mapping-report\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Demapping Report\",\r\n url: \"/reports/Demapping-report\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Damage Report\",\r\n url: \"/reports/Damage-report\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Loyalty Scheme Report\",\r\n url: \"/reports/Loyalty-Scheme-report\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Order Booking Report\",\r\n url: \"/reports/orderbooking-report\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Secondary Packing Report\",\r\n url: \"/reports/secondarypacking-report\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Tertiary Packing Report\",\r\n url: \"/reports/TertiaryPacking-report\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Redemption Log Report\",\r\n url: \"/reports/Redemption-Log-report\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Feedback Report\",\r\n url: \"/reports/\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"User Loyality Report\",\r\n url: \"/reports/Userloyality-report\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n ],\r\n },\r\n ];\r\n }\r\n listener = null;\r\n\r\n componentDidMount() {\r\n window.addEventListener(\"scroll\", this.handleScroll);\r\n let roleId = sessionStorage.getItem(\"UserRole\");\r\n this.props.fetchApi(roleId);\r\n this.props.getAccessRight(roleId);\r\n let userNameCollector = sessionStorage.getItem(\"UserNameData\");\r\n this.setState({ UserName: userNameCollector });\r\n }\r\n\r\n componentWillUnmount() {\r\n window.removeEventListener(\"scroll\", null);\r\n }\r\n\r\n handleScroll = () => {\r\n if (window.pageYOffset > 74) {\r\n if (!this.state.nav) {\r\n this.setState({ nav: true });\r\n }\r\n } else {\r\n if (this.state.nav) {\r\n this.setState({ nav: false });\r\n }\r\n }\r\n };\r\n\r\n render() {\r\n return (\r\n
\r\n \r\n
\r\n
\r\n \r\n {\" \"}\r\n Welcome, {this.state.UserName}\r\n \r\n \r\n
\r\n (window.location = \"/profile\")}\r\n >\r\n Change Password\r\n
\r\n {\r\n sessionStorage.removeItem(\"LoggedInUser\");\r\n sessionStorage.removeItem(\"user\");\r\n sessionStorage.removeItem(\"UserData\");\r\n sessionStorage.removeItem(\"UserRole\");\r\n sessionStorage.removeItem(\"UserNameData\");\r\n sessionStorage.removeItem(\"UserEmailData\");\r\n sessionStorage.removeItem(\"UserMobileData\");\r\n sessionStorage.removeItem(\"CompanyData\");\r\n sessionStorage.removeItem(\"assignedPermissionsForUser\");\r\n setTimeout(() => {\r\n window.location = \"/login\";\r\n }, 200);\r\n }}\r\n >\r\n Logout\r\n
\r\n
\r\n
\r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n MenuData: state.menu.items,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (roleId) => {\r\n dispatch(menuActions.getMenu(roleId));\r\n },\r\n getAccessRight: (roleId) => {\r\n dispatch(menuActions.getAccessRight(roleId));\r\n },\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(Header);\r\n","import React, { Component } from \"react\";\r\n\r\nexport default class Footer extends Component {\r\n render() {\r\n return (\r\n
\r\n
\r\n Copyright © 2024 | Powered by Xtra Power Tools\r\n
\r\n
\r\n Design & Developed by{\" \"}\r\n \r\n Holostik India Limited\r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\n","import React, { Component } from \"react\";\r\nimport { PanelMenu } from \"primereact/panelmenu\";\r\nimport { menuActions } from \"../../src/actions\";\r\nimport { Menubar } from \"primereact/menubar\";\r\nimport { connect } from \"react-redux\";\r\nimport logo from \"./../assets/images/Header_logo1.png\";\r\n\r\nclass Sidebar extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n nav: false,\r\n };\r\n this.items = [\r\n {\r\n label: \"Dashboard\",\r\n icon: \"pi pi-dashboard\",\r\n url: \"/\",\r\n },\r\n {\r\n label: \"Masters\",\r\n icon: \"pi pi-user\",\r\n items: [\r\n {\r\n icon: \"pi pi-users\",\r\n label: \"User Master\",\r\n url: \"/masters/user-master\",\r\n //icon: 'pi pi-angle-right'\r\n },\r\n\r\n {\r\n icon: \"pi pi-shield\",\r\n label: \"Product Master\",\r\n url: \"/masters/product-master\",\r\n // icon: 'pi pi-angle-right'\r\n },\r\n {\r\n icon: \"pi pi-chart-bar\",\r\n label: 'company master\"',\r\n url: '/masters/company-master\"',\r\n // icon: 'pi pi-angle-right'\r\n },\r\n\r\n {\r\n label: \"Role Master\",\r\n url: \"/masters/role-master\",\r\n icon: \"pi pi-slack\",\r\n },\r\n {\r\n label: \"Carton Master\",\r\n url: \"/masters/carton-master\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Order Booking\",\r\n url: \"/masters/order-booking\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Loyality Scheme Master\",\r\n url: \"/masters/loyalityscheme-master\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Product Configuration\",\r\n url: \"/masters/product-configuration\",\r\n icon: \"pi pi-cog\",\r\n },\r\n {\r\n label: \"Sql Editor\",\r\n url: \"/masters/sql-editor\",\r\n icon: \"pi pi-check-square\",\r\n },\r\n ],\r\n },\r\n {\r\n label: \"Transactions\",\r\n icon: \"pi pi-fw pi-pencil\",\r\n items: [\r\n {\r\n label: \"Mapping\",\r\n url: \"/transactions/mapping\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Damage\",\r\n url: \"/transactions/damage\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"De mapping\",\r\n url: \"/transactions/de-mapping\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Redemption Approval\",\r\n url: \"/transactions/RedemptionApproval\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n ],\r\n },\r\n {\r\n label: \"Reports\",\r\n icon: \"pi pi-chart-bar\",\r\n items: [\r\n {\r\n label: \"Verification Report\",\r\n url: \"/reports/verification-log\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Mapping-Report\",\r\n url: \"/reports/mapping-report\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Demapping Report\",\r\n url: \"/reports/Demapping-report\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Damage Report\",\r\n url: \"/reports/Damage-report\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Loyalty Scheme Report\",\r\n url: \"/reports/Loyalty-Scheme-report\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Redemption Log Report\",\r\n url: \"/reports/Redemption-Log-report\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Order Booking Report\",\r\n url: \"/reports/orderbooking-report\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Secondary Packing Report\",\r\n url: \"/reports/secondarypacking-report\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Tertiary Packing Report\",\r\n url: \"/reports/TertiaryPacking-report\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"Feedback Report\",\r\n url: \"/reports/feedback-report\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n {\r\n label: \"User Loyality Report\",\r\n url: \"/reports/Userloyality-report\",\r\n icon: \"pi pi-angle-right\",\r\n },\r\n ],\r\n },\r\n ];\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n \r\n {/* */}\r\n
\r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n MenuData: state.menu.items,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (roleId) => {\r\n dispatch(menuActions.getMenu(roleId));\r\n },\r\n getAccessRight: (roleId) => {\r\n dispatch(menuActions.getAccessRight(roleId));\r\n },\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(Sidebar);\r\n","// request for lazy loading for all pages\r\nexport default class tableRequest {\r\n IsActive = true;\r\n PageNo = 1;\r\n First = 1;\r\n SearchValue = \"\";\r\n PageSize = 5;\r\n SortColumn = \"CreatedDate\";\r\n SortOrder = \"DESC\";\r\n FromDate = \"\";\r\n ToDate = \"\";\r\n UserId = JSON.parse(sessionStorage.getItem(\"UserData\"));\r\n DealerId = JSON.parse(sessionStorage.getItem(\"DealerData\"));\r\n type = 1;\r\n}\r\n","import React, { Component } from \"react\";\r\nimport { Chart as CC } from \"primereact/chart\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport { connect } from \"react-redux\";\r\nimport Slider from \"react-slick\";\r\nimport { styled } from \"@mui/material/styles\";\r\nimport Paper from \"@mui/material/Paper\";\r\nimport Table from \"@mui/material/Table\";\r\nimport TableBody from \"@mui/material/TableBody\";\r\nimport TableCell, { tableCellClasses } from \"@mui/material/TableCell\";\r\nimport TableContainer from \"@mui/material/TableContainer\";\r\nimport TableHead from \"@mui/material/TableHead\";\r\nimport TableRow from \"@mui/material/TableRow\";\r\nimport {\r\n dashboardActions,\r\n mappingActions,\r\n SliderProMsgActions,\r\n} from \"../actions\";\r\nimport tableRequest from \"../models/tableRequest.js\";\r\n// import bg from './../assets/images/HP-BG.jpg'\r\nimport \"./Sidebar.css\";\r\n\r\nimport {\r\n Chart,\r\n BarSeries,\r\n Legend,\r\n Tooltip,\r\n Title,\r\n ArgumentAxis,\r\n ValueAxis,\r\n PieSeries,\r\n} from \"@devexpress/dx-react-chart-material-ui\";\r\nimport * as d3Format from \"d3-format\";\r\nimport \"@devexpress/dx-react-chart-bootstrap4/dist/dx-react-chart-bootstrap4.css\";\r\nimport { Animation } from \"@devexpress/dx-react-chart\";\r\nimport { HoverState, Stack, EventTracker } from \"@devexpress/dx-react-chart\";\r\n\r\nconst tooltipContentTitleStyle = {\r\n fontWeight: \"bold\",\r\n};\r\nconst TitleText = (props) => (\r\n \r\n);\r\nconst formatTooltip = d3Format.format(\",.2r\");\r\n\r\nconst Root = (props) => (\r\n \r\n);\r\n\r\nconst RootPie = (props) => (\r\n \r\n);\r\nconst compareTargets = (\r\n { series, point },\r\n { series: targetSeries, point: targetPoint }\r\n) => series === targetSeries && point === targetPoint;\r\n\r\nconst columns = [\r\n { title: \"Order No.\", field: \"OrderBookingNo\" },\r\n { title: \"Order Date\", field: \"OrderDate\" },\r\n { title: \"User Name\", field: \"UserName\" },\r\n { title: \"Dispatch Status\", field: \"Status\" },\r\n];\r\n\r\nconst StyledTableCell = styled(TableCell)(({ theme }) => ({\r\n [`&.${tableCellClasses.head}`]: {\r\n backgroundColor: \"#f3f4f6\",\r\n color: theme.palette.common.black,\r\n fontSize: 13.5,\r\n textTransform: \"uppercase\",\r\n borderBottom: \"none\",\r\n border: \"none\",\r\n fontFamily:\r\n '-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,\"Helvetica Neue\",Arial,\"Noto Sans\",\"Liberation Sans\",sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\"',\r\n },\r\n [`&.${tableCellClasses.body}`]: {\r\n fontSize: 13.5,\r\n },\r\n}));\r\n\r\nconst StyledTableRow = styled(TableRow)(({ theme }) => ({\r\n \"&:nth-of-type(odd)\": {\r\n borderBottom: \"none\",\r\n border: 0,\r\n },\r\n \"&:nth-of-type(even)\": {\r\n borderBottom: \"none\",\r\n border: 0,\r\n },\r\n}));\r\n\r\nclass Dashboard extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.state = {\r\n hover: null,\r\n globalFilter: null,\r\n first: 0,\r\n selection: [\r\n { ShortMonthName: \"Jan\", MonthName: \"January\", OrderCount: 0 },\r\n ],\r\n rows: 5,\r\n totalRecords: 0,\r\n sortOrder: \"\",\r\n loading: false,\r\n UserType: 0,\r\n DealerId: 0,\r\n tooltipTarget: null,\r\n tooltipEnabled: true,\r\n };\r\n this.click = ({ targets }) => {\r\n const target = targets[0];\r\n if (target) {\r\n this.setState(({ selection }) => ({\r\n selection:\r\n selection[0] && compareTargets(selection[0], target)\r\n ? []\r\n : [target],\r\n }));\r\n }\r\n };\r\n this.changeHover = (hover) => this.setState({ hover });\r\n this.changeTooltip = (targetItem) =>\r\n this.setState({ tooltipTarget: targetItem });\r\n this.basicData = {\r\n labels: [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\"],\r\n datasets: [\r\n {\r\n label: \"Pending\",\r\n data: [65, 59, 80, 81, 56, 55, 40],\r\n fill: false,\r\n borderColor: \"#42A5F5\",\r\n },\r\n {\r\n label: \"Active\",\r\n data: [28, 48, 40, 19, 86, 27, 90],\r\n fill: false,\r\n borderColor: \"#FFA726\",\r\n },\r\n ],\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n const userPages = sessionStorage.getItem(\"assignedPermissionsForUser\");\r\n if (userPages) {\r\n const assignedPermissions = JSON.parse(userPages);\r\n const Curenturl = window.location.pathname;\r\n const nNumber = Curenturl.lastIndexOf(\"/\");\r\n const pageName = Curenturl.substring(nNumber + 1);\r\n\r\n const obj = assignedPermissions.assigned.filter((x) => {\r\n return x.ActionName === pageName;\r\n });\r\n\r\n if (obj !== null && obj.length > 0) {\r\n if (!obj[0].IsEdit) {\r\n this.setState({\r\n IsEdit: false,\r\n });\r\n }\r\n if (!obj[0].IsAdd) {\r\n this.setState({\r\n IsAdd: false,\r\n });\r\n }\r\n }\r\n }\r\n this.props.fetchApi(this.tblResponse);\r\n this.props.fetchMappingApi(this.tblResponse);\r\n\r\n const userDetails = sessionStorage.getItem(\"user\");\r\n const DealerId = sessionStorage.getItem(\"UserData\");\r\n\r\n const userdetailsObject = JSON.parse(userDetails);\r\n this.setState({\r\n UserType: userdetailsObject.UserType,\r\n DealerId: DealerId,\r\n });\r\n //this.props.fetchSliderApi();\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.MappingData) {\r\n if (prevProps.MappingData !== this.props.MappingData) {\r\n // this.props.myProp has a different value\r\n if (this.props.MappingData) {\r\n var e = this.props.MappingData;\r\n this.setState({\r\n totalRecords: e[0].TotalRows,\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords !== 0)\r\n this.setState({\r\n totalRecords: 0,\r\n first: 0,\r\n });\r\n }\r\n\r\n if (prevProps.MaxFromNo !== this.props.MaxFromNo) {\r\n this.setState({\r\n FromNo: this.props.MaxFromNo,\r\n });\r\n }\r\n }\r\n\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n }\r\n\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchMappingApi(this.tblResponse);\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField =\r\n event.multiSortMeta[0].field === \"CreatedDate\"\r\n ? \"CreatedDate\"\r\n : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\"; //this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchMappingApi(this.tblResponse);\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n getStatus(value) {\r\n if (value == 0) {\r\n return Pending;\r\n } else if (value == 1) {\r\n return (\r\n Partially Dispatched\r\n );\r\n } else if (value == 2) {\r\n return Dispatched;\r\n }\r\n }\r\n\r\n onPage(event) {\r\n //imitate delay of a backend call\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchMappingApi(this.tblResponse);\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n render() {\r\n var settings = {\r\n dots: true,\r\n infinite: true,\r\n speed: 500,\r\n height: \"100%\",\r\n slidesToShow: 1,\r\n slidesToScroll: 1,\r\n autoplay: true,\r\n };\r\n\r\n const TooltipContent = (props) => {\r\n const { targetItem, text, ...restProps } = props;\r\n return (\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n );\r\n };\r\n\r\n const TooltipContentPieChart = (props) => {\r\n const { targetItem, text, ...restProps } = props;\r\n return (\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n );\r\n };\r\n\r\n const chartdata = {\r\n labels: this.props.Months,\r\n datasets: [\r\n {\r\n label: \"Secondary Product Mapping \",\r\n data: this.props.MappingChart,\r\n fill: false,\r\n borderColor: \"#4bc0c0\",\r\n },\r\n {\r\n label: \"Product Damage\",\r\n data: this.props.DeMappingChart,\r\n fill: false,\r\n borderColor: \"#9bc0c9\",\r\n },\r\n ],\r\n };\r\n\r\n const { hover, selection, tooltipTarget, tooltipEnabled } = this.state;\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n
Numbers Issued
\r\n
\r\n
\r\n \r\n
\r\n

{this.props.TotalIssue ? this.props.TotalIssue : 0}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Secondary Mapping
\r\n
\r\n
\r\n \r\n
\r\n

{this.props.TotalMapping ? this.props.TotalMapping : 0}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Claim Warranty
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

\r\n {this.props.TotalDeMapping ? this.props.TotalDeMapping : 0}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n\r\n {/* new order */}\r\n\r\n
\r\n
\r\n
Damages
\r\n
\r\n
\r\n \r\n
\r\n

{this.props.TotalDamage ? this.props.TotalDamage : 0}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Total Scans
\r\n
\r\n
\r\n \r\n
\r\n

{this.props.TotalScans ? this.props.TotalScans : 0}

\r\n
\r\n
\r\n
\r\n\r\n {/* User Approvel */}\r\n
\r\n
\r\n
Pending User
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

\r\n {this.props.TotalUserApproval\r\n ? this.props.TotalUserApproval\r\n : 0}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n {/*
\r\n
\r\n
Order Booking
\r\n
\r\n \r\n
\r\n
\r\n
*/}\r\n\r\n {/*
\r\n
\r\n
Top Ordered Products
\r\n
\r\n \r\n
\r\n
\r\n
*/}\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n Secondary Product Mapping Vs Damage Charts\r\n
\r\n \r\n
\r\n
\r\n {/*
\r\n
\r\n
Latest Orders
\r\n
\r\n \r\n
\r\n
\r\n
*/}\r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n DashboardList: state.dashboard?.items?.DashboardListData,\r\n TotalMapping: state.dashboard?.items?.DashboardCount?.TotalMapping,\r\n TotalDeMapping: state.dashboard?.items?.DashboardCount?.TotalDeMapping,\r\n TotalDamage: state.dashboard?.items?.DashboardCount?.TotalDamage,\r\n TotalScans: state.dashboard?.items?.DashboardCount?.TotalScans,\r\n TotalIssue: state.dashboard?.items?.DashboardCount?.TotalIssue,\r\n DeMappingChart: state.dashboard?.items?.DeMappingList,\r\n MappingChart: state.dashboard?.items?.MappingList,\r\n Months: state.dashboard?.items?.MonthName,\r\n MappingData: state.mapping.items,\r\n OrderChart: state.dashboard?.items?.OrderCharts,\r\n ProductData: state.dashboard?.items?.ProductData,\r\n OrderDataList: state.dashboard?.items?.OrderDataList,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(dashboardActions.fetchData(obj));\r\n },\r\n loadingData: (isLoding) => dispatch(dashboardActions.loadingData(isLoding)),\r\n fetchMappingApi: (obj) => {\r\n dispatch(mappingActions.getAll(obj));\r\n },\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(Dashboard);\r\n","import React, { Component } from \"react\";\r\nimport { connect } from \"react-redux\";\r\n\r\nclass About extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n };\r\n }\r\n\r\n\r\n render() {\r\n return (\r\n
\r\n about us\r\n
\r\n )\r\n }\r\n}\r\n\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n };\r\n};\r\n\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(About);\r\n","import React, { Component } from 'react'\r\nimport { DataTable } from 'primereact/datatable';\r\nimport { Column } from 'primereact/column';\r\nimport { Button } from 'primereact/button';\r\nimport { InputText } from 'primereact/inputtext';\r\nimport { FileUpload } from 'primereact/fileupload';\r\nimport MenuItem from '@material-ui/core/MenuItem';\r\nimport TextField from '@material-ui/core/TextField';\r\nimport FormControl from '@material-ui/core/FormControl';\r\nimport Select from '@material-ui/core/Select';\r\nimport Checkbox from '@material-ui/core/Checkbox';\r\nimport { connect } from 'react-redux';\r\nimport InputLabel from '@material-ui/core/InputLabel';\r\nimport MuiAlert from '@material-ui/lab/Alert';\r\nimport { Dialog } from 'primereact/dialog';\r\nimport { ToastContainer, toast } from 'react-toastify';\r\nimport { companyActions } from '../../actions';\r\n\r\nimport { TabView, TabPanel } from 'primereact/tabview';\r\nimport Switch from '@material-ui/core/Switch';\r\nimport Moment from 'react-moment';\r\nimport tableRequest from '../../models/tableRequest.js';\r\n\r\n\r\n\r\nclass companyMaster extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.photoBodyTemplate = this.photoBodyTemplate.bind(this);\r\n this.statusBodyTemplate = this.statusBodyTemplate.bind(this);\r\n this.actionBodyTemplate = this.actionBodyTemplate.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.Fdone = this.Fdone.bind(this);\r\n this.onHide = this.onHide.bind(this);\r\n this.openDialog = this.openDialog.bind(this);\r\n this.resetForm = this.resetForm.bind(this);\r\n this.setImagePath = this.setImagePath.bind(this);\r\n this.setAudioPath = this.setAudioPath.bind(this);\r\n this.CreatedDtTemplate = this.CreatedDtTemplate.bind(this);\r\n this.UpdatedDtTemplate = this.UpdatedDtTemplate.bind(this);\r\n this.switchToggleConfirm = this.switchToggleConfirm.bind(this);\r\n this.openDialog = this.openDialog.bind(this);\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.state = {\r\n IsEdit: true,\r\n IsAdd: true,\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n sortOrder: '',\r\n confirm: false,\r\n buttonLabel: 'Next',\r\n switchAction: false,\r\n displayConfirmation: false,\r\n formHeading: 'Add Company',\r\n\r\n createDate: null,\r\n updatedDate: null,\r\n companyId: 0,\r\n companyName: '',\r\n companyDisplayName: '',\r\n prefix: '',\r\n email: '',\r\n mobile: '',\r\n websiteURL: '',\r\n address: '',\r\n companyLogo: '',\r\n activeIndex: 0,\r\n links: [],\r\n name: [],\r\n fakeMessage: '',\r\n FakeAudio: '',\r\n isActive: true,\r\n formError: {\r\n companyName: '',\r\n companyDisplayName: '',\r\n prefix: '',\r\n email: '',\r\n mobile: '',\r\n websiteURL: '',\r\n address: '',\r\n companyLogo: '',\r\n fakeMessage: '',\r\n FakeAudio: ''\r\n }\r\n };\r\n }\r\n componentDidMount() {\r\n const userPages = sessionStorage.getItem('assignedPermissionsForUser')\r\n if (userPages) {\r\n const assignedPermissions = JSON.parse(userPages);\r\n const Curenturl = window.location.pathname;\r\n const nNumber = Curenturl.lastIndexOf('/');\r\n const pageName = Curenturl.substring(nNumber + 1);\r\n\r\n const obj = assignedPermissions.assigned.filter((x) => {\r\n return x.ActionName === pageName\r\n });\r\n\r\n if (obj !== null && obj.length > 0) {\r\n if (!obj[0].IsEdit) {\r\n this.setState({\r\n IsEdit: false\r\n });\r\n } else {\r\n this.setState({\r\n IsEdit: true\r\n });\r\n }\r\n\r\n if (!obj[0].IsAdd) {\r\n this.setState({\r\n IsAdd: false\r\n });\r\n } else {\r\n this.setState({\r\n IsAdd: true\r\n });\r\n }\r\n }\r\n }\r\n\r\n\r\n setTimeout(() => {\r\n this.props.fetchApi(this.tblResponse);\r\n }, 1000);\r\n\r\n // $('.p-column-title').on('click', function () {\r\n // $(this).next().removeClass('pi-sort').toggleClass('pi-sort-up').addClass('pi-sort-down');\r\n // });\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.Companys) {\r\n if (prevProps.Companys !== this.props.Companys) {\r\n // this.props.myProp has a different value\r\n if (this.props.Companys) {\r\n var e = this.props.Companys;\r\n this.setState({\r\n totalRecords: e[0].TotalRows\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords !== 0)\r\n this.setState({\r\n totalRecords: 0,\r\n first: 0\r\n });\r\n }\r\n }\r\n\r\n switchToggleConfirm = (e) => {\r\n this.props.inActiveRow(this.state.companyId, this.state.switchAction);\r\n }\r\n\r\n getDropValue() {\r\n let productName = '';\r\n this.props.ProductTypeData.filter(x => {\r\n if (x.ProductTypeId === this.state.ProductTypeId) {\r\n productName = x.ProductTypeName;\r\n }\r\n });\r\n\r\n return productName;\r\n }\r\n getCurrentDateMMDDYYY() {\r\n var today = new Date();\r\n var dd = String(today.getDate()).padStart(2, '0');\r\n var mm = String(today.getMonth() + 1).padStart(2, '0');\r\n var yyyy = today.getFullYear();\r\n\r\n today = mm + '/' + dd + '/' + yyyy;\r\n return today;\r\n }\r\n\r\n UpdatedDtTemplate(rowData) {\r\n if (rowData.UpdatedDt !== null) {\r\n return (\r\n {rowData.UpdatedDt}\r\n )\r\n }\r\n else {\r\n }\r\n }\r\n\r\n CreatedDtTemplate(rowData) {\r\n return (\r\n {rowData.CreatedDt}\r\n )\r\n }\r\n\r\n handleChange(event) {\r\n let { name, value } = event.target;\r\n let errors = this.state.formError;\r\n switch (name) {\r\n case 'isActive':\r\n value = event.target.checked;\r\n break;\r\n default:\r\n break;\r\n }\r\n this.validateForm(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n validateForm(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n switch (name) {\r\n case 'companyName':\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.companyName = \"Please enter your Company Name.\";\r\n } else errors.companyName = ''\r\n case 'companyDisplayName':\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.companyDisplayName = \"Please enter Company Display Name.\";\r\n } else errors.companyDisplayName = ''\r\n break;\r\n case 'prefix':\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.prefix = \"Please enter prefix\";\r\n }\r\n else if (value.length >= 1) {\r\n if (!value.match(/^[A-Z].{1}$/)) {\r\n IsValid = false;\r\n errors.prefix = \"Please enter valid prefix.\";\r\n } else errors.prefix = ''\r\n\r\n } else errors.prefix = ''\r\n break;\r\n\r\n case 'email':\r\n if (value < 1) {\r\n IsValid = false;\r\n errors.email = \"Please enter email.\";\r\n }\r\n else if (value.length >= 1) {\r\n /* eslint-disable */\r\n if (!value.match(/^\\w+([\\.-]?\\w+)*@\\w+([\\.-]?\\w+)*(\\.\\w{2,3})+$/)) {\r\n IsValid = false;\r\n errors.email = \"Please enter valid email-id.\";\r\n } else errors.email = ''\r\n /* eslint-enable */\r\n } else errors.email = ''\r\n break;\r\n case 'mobile':\r\n if (!value || value.toString().length < 1) {\r\n IsValid = false;\r\n errors.mobile = \"Please enter mobile.\";\r\n }\r\n else if (value.length >= 1) {\r\n if (!value.match(/^[6-9]\\d{9}$/)) {\r\n IsValid = false;\r\n errors.mobile = \"Please enter valid mobile no.\";\r\n } else errors.mobile = ''\r\n } else errors.mobile = ''\r\n break;\r\n case 'websiteURL':\r\n if (!value || value.length < 1) {\r\n IsValid = false;\r\n errors.websiteURL = \"Please enter wesite URL\";\r\n } else errors.websiteURL = ''\r\n break;\r\n case 'address':\r\n if (!value || value.length < 1) {\r\n IsValid = false;\r\n errors.address = \"Please enter address\";\r\n } else errors.address = ''\r\n break;\r\n case 'companyLogo':\r\n if (!value || value.length < 1) {\r\n IsValid = false;\r\n errors.companyLogo = \"Please enter companyLogo\";\r\n } else errors.companyLogo = ''\r\n break;\r\n case 'fakeMessage':\r\n if (!value || value.length < 1) {\r\n IsValid = false;\r\n errors.fakeMessage = \"Please enter fakeMessage\";\r\n } else errors.fakeMessage = ''\r\n break;\r\n case 'FakeAudio':\r\n if (!value || value.length < 1) {\r\n IsValid = false;\r\n errors.FakeAudio = \"Please enter FakeAudio\";\r\n } else errors.FakeAudio = ''\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n resetForm() {\r\n this.setState({\r\n companyId: 0,\r\n companyName: '',\r\n companyDisplayName: '',\r\n prefix: '',\r\n email: '',\r\n mobile: '',\r\n websiteURL: '',\r\n activeIndex: 0,\r\n address: '',\r\n companyLogo: '',\r\n FakeAudio: '',\r\n links: [],\r\n name: [],\r\n fakeMessage: '',\r\n isActive: true,\r\n formError: {\r\n companyName: '',\r\n companyDisplayName: '',\r\n prefix: '',\r\n email: '',\r\n mobile: '',\r\n websiteURL: '',\r\n address: '',\r\n companyLogo: '',\r\n fakeMessage: '',\r\n FakeAudio: ''\r\n }\r\n });\r\n\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key]) => {\r\n errors[key] = '';\r\n return errors[key];\r\n });\r\n }\r\n\r\n submitForm(event) {\r\n\r\n event.preventDefault();\r\n let isfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key]\r\n let valid = this.validateForm(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n return isfrmvalid;\r\n });\r\n if (isfrmvalid) { this.setState({ activeIndex: 1 }); }\r\n\r\n if (isfrmvalid) {\r\n var SocialLinks = {};\r\n for (var i = 0; i < this.state.name.length; i++) {\r\n if (this.state.name[i].length > 0 && this.state.links[i].length > 0)\r\n SocialLinks[this.state.name[i]] = this.state.links[i];\r\n }\r\n const formData = {\r\n CompanyId: this.state.companyId,\r\n CompanyName: this.state.companyName,\r\n CompanyDisplayName: this.state.companyDisplayName,\r\n Prefix: this.state.prefix,\r\n Email: this.state.email,\r\n Mobile: this.state.mobile,\r\n WebsiteURL: this.state.websiteURL,\r\n Address: this.state.address,\r\n CompanyLogo: this.state.companyLogo,\r\n FakeMessage: this.state.fakeMessage,\r\n FakeAudio: this.state.FakeAudio,\r\n\r\n SocialLinks: JSON.stringify(SocialLinks),\r\n IsActive: this.state.isActive,\r\n CreatedDt: this.state.companyId > 0 ? this.state.CreatedDt : this.getCurrentDateMMDDYYY(),\r\n UpdatedDt: this.state.companyId > 0 ? this.getCurrentDateMMDDYYY() : null,\r\n TotalRows: this.state.totalRecords\r\n }\r\n\r\n if (this.state.companyId == 0) {\r\n this.props.createCompany(formData);\r\n }\r\n else {\r\n this.props.updateCompany(formData);\r\n }\r\n\r\n if (!this.props.showDialog) {\r\n this.resetForm();\r\n }\r\n }\r\n }\r\n\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? 'ASC' : 'DESC';\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField = event.multiSortMeta[0].field === \"CreatedDate\" ? \"CreatedDate\" : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? 'DESC' : 'ASC';//this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n photoBodyTemplate(e) {\r\n return \r\n }\r\n statusBodyTemplate(rowData) {\r\n return (\r\n \r\n )\r\n }\r\n // set Image Path\r\n setImagePath(event) {\r\n let errors = this.state.formError;\r\n errors.companyLogo = \"\";\r\n if (event.xhr) {\r\n if (event.xhr.response) {\r\n const response = JSON.parse(event.xhr.response);\r\n if (response) {\r\n if (response.ResponseCode === \"200\") {\r\n this.setState({\r\n companyLogo: response.Source,\r\n });\r\n } else if (response.ResponseCode === \"400\") {\r\n errors.companyLogo = \"Only image format is accepted.\";\r\n this.setState({\r\n companyLogo: \"\",\r\n });\r\n } else {\r\n // this.messageService.add({ severity: 'error', summary: 'Oops', detail: response.ResponseMessage });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n }\r\n // set Audio Path\r\n setAudioPath(event) {\r\n this.setState({\r\n FakeAudio: null\r\n })\r\n let errors = this.state.formError;\r\n errors.FakeAudio = \"\";\r\n if (event.xhr) {\r\n if (event.xhr.response) {\r\n const response = JSON.parse(event.xhr.response);\r\n if (response) {\r\n if (response.ResponseCode === \"200\") {\r\n this.setState({\r\n FakeAudio: response.Source,\r\n });\r\n } else if (response.ResponseCode === \"400\") {\r\n errors.FakeAudio = \"Only audio format is accepted.\";\r\n this.setState({\r\n FakeAudio: \"\",\r\n });\r\n } else {\r\n // this.messageService.add({ severity: 'error', summary: 'Oops', detail: response.ResponseMessage });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n }\r\n\r\n handlelink = i => e => {\r\n\r\n let links = [...this.state.links]\r\n links[i] = e.target.value\r\n this.setState({\r\n links\r\n })\r\n\r\n }\r\n handlename = i => e => {\r\n\r\n let name = [...this.state.name]\r\n name[i] = e.target.value\r\n this.setState({\r\n name\r\n })\r\n\r\n }\r\n handleDelete = i => e => {\r\n e.preventDefault()\r\n let links = [\r\n ...this.state.links.slice(0, i),\r\n ...this.state.links.slice(i + 1)\r\n ]\r\n let name = [\r\n ...this.state.name.slice(0, i),\r\n ...this.state.name.slice(i + 1)\r\n ]\r\n this.setState({\r\n links, name\r\n })\r\n }\r\n Fdone(event) {\r\n event.preventDefault();\r\n let isfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key]\r\n let valid = this.validateForm(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n return isfrmvalid;\r\n });\r\n if (isfrmvalid) { this.setState({ activeIndex: 1 }); }\r\n }\r\n\r\n AddLink = e => {\r\n e.preventDefault()\r\n let links = this.state.links.concat([''])\r\n let name = this.state.name.concat([''])\r\n this.setState({\r\n links, name\r\n })\r\n }\r\n\r\n actionBodyTemplate(rowData) {\r\n const editMode = (e) => {\r\n let name = [];\r\n let links = [];\r\n if (rowData.SocialLinks != undefined && rowData.SocialLinks != null) {\r\n let socialLinks = JSON.parse(rowData.SocialLinks)\r\n\r\n for (let x in socialLinks) {\r\n name.push(x);\r\n links.push(socialLinks[x]);\r\n }\r\n }\r\n this.props.onHideShow(true);\r\n\r\n this.setState({\r\n buttonLabel: 'Next',\r\n formHeading: 'Update Company',\r\n\r\n companyId: rowData.CompanyId,\r\n companyName: rowData.CompanyName,\r\n companyDisplayName: rowData.CompanyDisplayName,\r\n prefix: rowData.Prefix,\r\n email: rowData.Email,\r\n mobile: rowData.Mobile,\r\n websiteURL: rowData.WebsiteURL,\r\n address: rowData.Address, name, links,\r\n companyLogo: rowData.CompanyLogo,\r\n fakeMessage: rowData.FakeMessage,\r\n FakeAudio: rowData.FakeAudio,\r\n isActive: rowData.IsActive,\r\n createdDate: rowData.CreatedDate\r\n });\r\n }\r\n\r\n const switchHandleChange = (e) => {\r\n this.setState({\r\n switchAction: !rowData.IsActive,\r\n companyId: rowData.CompanyId\r\n });\r\n this.props.onHideShowIsActive(true);\r\n }\r\n return (\r\n <>\r\n \r\n\r\n \r\n\r\n \r\n \r\n ))}\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n \r\n \r\n \r\n\r\n this.props.onHideShowIsActive(false)}>\r\n
\r\n \r\n Are you sure you want to {this.state.switchAction == true ? \"Active\" : \"InActive\"}?\r\n
\r\n
\r\n \r\n\r\n )\r\n }\r\n}\r\nconst mapStateToProps = (state) => {\r\n return {\r\n Companys: state.company.items,\r\n showDialog: state.company.showDialog,\r\n loading: state.company.loding,\r\n showIsActiveDialog: state.company.showIsActiveDialog\r\n }\r\n}\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (data) => {\r\n dispatch(companyActions.getAll(data))\r\n },\r\n createCompany: company => dispatch(companyActions.createCompany(company)),\r\n updateCompany: company => dispatch(companyActions.updateCompany(company)),\r\n inActiveRow: (companyId, isActive) => dispatch(companyActions.inActiveRow(companyId, isActive)),\r\n onHideShow: isbool => dispatch(companyActions.onHideShow(isbool)),\r\n onHideShowIsActive: isbool => dispatch(companyActions.onHideShowIsActive(isbool)),\r\n loadingData: (isLoding) => dispatch(companyActions.loadingData(isLoding))\r\n\r\n }\r\n}\r\nexport default connect(mapStateToProps, mapDispatchToProps)(companyMaster)","import React, { Component } from 'react';\r\n// import { Growl } from 'primereact/growl';\r\nimport { Toast } from 'primereact/toast';\r\n\r\n// To show Message when call api\r\nexport class MessageComponent extends Component {\r\n constructor() {\r\n super();\r\n\r\n this.showSuccess = this.showSuccess.bind(this);\r\n this.showInfo = this.showInfo.bind(this);\r\n this.showWarn = this.showWarn.bind(this);\r\n this.showError = this.showError.bind(this);\r\n this.clear = this.clear.bind(this);\r\n }\r\n\r\n // Show Success\r\n showSuccess(msg) {\r\n // this.growl.show({ severity: 'success', detail: msg });\r\n this.toast.show({severity:'success', summary: 'Success Message', detail:msg, life: 3000});\r\n return true;\r\n }\r\n\r\n // Show Info\r\n showInfo(msg) {\r\n this.toast.show({severity:'info', summary: 'Info Message', detail:msg, life: 3000});\r\n // this.growl.show({ severity: 'info', detail: msg });\r\n }\r\n\r\n // Show Warn\r\n showWarn(msg) {\r\n this.toast.show({severity:'warn', summary: 'Warn Message', detail:msg, life: 3000});\r\n // this.growl.show({ severity: 'warn', detail: msg});\r\n }\r\n\r\n // Show Error\r\n showError(msg) {\r\n this.toast.show({severity:'error', summary: 'Error Message', detail:msg, life: 3000});\r\n // this.growl.show({ severity: 'error', detail: msg});\r\n }\r\n\r\n // Show Clear\r\n clear() {\r\n this.toast.clear();\r\n // this.growl.clear();\r\n }\r\n\r\n// html message\r\n render() {\r\n return (\r\n
\r\n
\r\n {/* this.growl = el} /> */}\r\n this.toast = el} />\r\n
\r\n
\r\n )\r\n }\r\n}\r\n\r\nexport default MessageComponent","import React, { Component, Fragment } from \"react\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport ReactExport from \"react-export-excel\";\r\n//import DataTable from \"react-data-table-component\";\r\nimport { Column } from \"primereact/column\";\r\nimport { Button } from \"primereact/button\";\r\nimport { Button as MButton } from \"@material-ui/core\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { FileUpload } from \"primereact/fileupload\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport { connect } from \"react-redux\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport MuiAlert from \"@material-ui/lab/Alert\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { ToastContainer, toast } from \"react-toastify\";\r\nimport { categoryActions, productMasterActions } from \"../../actions\";\r\n//import { categoryActions } from \"../../actions\";\r\nimport { OrderBookingActions } from \"../../actions\";\r\nimport { roleMasterActions } from \"../../actions\";\r\nimport { TabView, TabPanel } from \"primereact/tabview\";\r\nimport Switch from \"@material-ui/core/Switch\";\r\nimport Moment from \"react-moment\";\r\nimport tableRequest from \"../../models/tableRequest.js\";\r\nimport { product } from \"../../reducers/productReducer\";\r\nimport { DateTime } from \"luxon\";\r\nimport { Link } from \"react-router-dom\";\r\nimport { removeData } from \"jquery\";\r\nimport MessageComponent from \"../../templates/Message\";\r\nimport Multiselect from \"multiselect-react-dropdown\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { Container, Row, Label } from \"reactstrap\";\r\nimport { CSVLink } from \"react-csv\";\r\nimport ExcelFile from \"react-export-excel/dist/ExcelPlugin/components/ExcelFile\";\r\nimport ExcelSheet from \"react-export-excel/dist/ExcelPlugin/elements/ExcelSheet\";\r\nimport ExcelColumn from \"react-export-excel/dist/ExcelPlugin/elements/ExcelColumn\";\r\nimport { BorderAll } from \"@material-ui/icons\";\r\n\r\nvar bgColors = {\r\n Default: \"#81b71a\",\r\n Blue: \"#00B1E1\",\r\n Cyan: \"#37BC9B\",\r\n Green: \"#8CC152\",\r\n Red: \"#E9573F\",\r\n Yellow: \"#F6BB42\",\r\n};\r\nclass OrderBooking extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.csvLink = React.createRef();\r\n this.tblResponse = new tableRequest();\r\n this.LocRef = React.createRef();\r\n this.setQty = this.setQty.bind(this);\r\n this.setQtyInCart = this.setQtyInCart.bind(this);\r\n this.getQty = this.getQty.bind(this);\r\n this.statusBodyTemplate = this.statusBodyTemplate.bind(this);\r\n this.actionBodyTemplate = this.actionBodyTemplate.bind(this);\r\n this.getDropValueOfDealer = this.getDropValueOfDealer.bind(this);\r\n this.noOfProducts = this.noOfProducts.bind(this);\r\n this.ProductSelect = this.ProductSelect.bind(this);\r\n this.onSelectState = this.onSelectState.bind(this);\r\n this.onRemoveState = this.onRemoveState.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.addToCart = this.addToCart.bind(this);\r\n this.onHide = this.onHide.bind(this);\r\n this.openDialog = this.openDialog.bind(this);\r\n this.getProductStuff = this.getProductStuff.bind(this);\r\n this.resetForm = this.resetForm.bind(this);\r\n this.getProductList = this.getProductList.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.CreatedDtTemplate = this.CreatedDtTemplate.bind(this);\r\n this.UpdatedDtTemplate = this.UpdatedDtTemplate.bind(this);\r\n this.switchToggleConfirm = this.switchToggleConfirm.bind(this);\r\n this.increaseValue = this.increaseValue.bind(this);\r\n this.increaseValueInCart = this.increaseValueInCart.bind(this);\r\n this.decreaseValue = this.decreaseValue.bind(this);\r\n this.decreaseValueInCart = this.decreaseValueInCart.bind(this);\r\n this.removeProduct = this.removeProduct.bind(this);\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.state = {\r\n cartButtonText: \"ADD TO CART\",\r\n icon: \"fa fa-cart-plus\",\r\n isAdded: false,\r\n showCart: false,\r\n searchValue: \"\",\r\n IsDetails: false,\r\n IsEdit: true,\r\n IsAdd: true,\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n sortOrder: \"\",\r\n confirm: false,\r\n buttonLabel: \"Create Order\",\r\n switchAction: true,\r\n displayConfirmation: false,\r\n formHeading: \"Create Order\",\r\n productDetails: [],\r\n UserId: 0,\r\n DealerId: 0,\r\n MRP: \"\",\r\n OrderBookingNo: 0,\r\n product: \"\",\r\n productId: \"\",\r\n categoryId: 0,\r\n ProductName: \"\",\r\n Qty: 1,\r\n SelectedProducts: [],\r\n Remark: \"\",\r\n isActive: true,\r\n CreatedDate: null,\r\n UpdatedDate: null,\r\n UserType: 0,\r\n productDetailsError: [{ product: \"\", Qty: \"\", MRP: \"\" }],\r\n pageSize: 20,\r\n formError: {\r\n OrderBookingNo: 0,\r\n productId: \"\",\r\n categoryId: \"\",\r\n ProductName: \"\",\r\n DealerId: \"\",\r\n //Qty: \"\",\r\n Remark: \"\",\r\n MRP: \"\",\r\n //product: \"\",\r\n },\r\n };\r\n }\r\n componentDidMount() {\r\n const userPages = sessionStorage.getItem(\"assignedPermissionsForUser\");\r\n const userDetails = sessionStorage.getItem(\"user\");\r\n const DealerId = sessionStorage.getItem(\"UserData\");\r\n const userdetailsObject = JSON.parse(userDetails);\r\n this.setState({\r\n UserType: userdetailsObject.UserType,\r\n DealerId: userdetailsObject.UserType > 1 ? DealerId : 0,\r\n UserId: userdetailsObject.UserId,\r\n UserType: userdetailsObject.UserType,\r\n });\r\n if (userPages) {\r\n const assignedPermissions = JSON.parse(userPages);\r\n const Curenturl = window.location.pathname;\r\n const nNumber = Curenturl.lastIndexOf(\"/\");\r\n const pageName = Curenturl.substring(nNumber + 1);\r\n\r\n const obj = assignedPermissions.assigned.filter((x) => {\r\n return x.ActionName === pageName;\r\n });\r\n\r\n if (obj !== null && obj.length > 0) {\r\n if (!obj[0].IsEdit) {\r\n this.setState({\r\n IsEdit: false,\r\n });\r\n } else {\r\n this.setState({\r\n IsEdit: true,\r\n });\r\n }\r\n\r\n if (!obj[0].IsAdd) {\r\n this.setState({\r\n IsAdd: false,\r\n });\r\n } else {\r\n this.setState({\r\n IsAdd: true,\r\n });\r\n }\r\n }\r\n }\r\n this.tblResponse.DealerId = userdetailsObject.UserType > 1 ? DealerId : 0;\r\n this.props.fetchApi(this.tblResponse);\r\n this.props.getCategoryDDL();\r\n this.props.getDealerDDL();\r\n //this.props.getProductDDL();\r\n this.props.getSearchData(this.state.searchValue, 0, this.state.pageSize);\r\n //this.props.getSearchDataByCatId(\"\");\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.bookinglist) {\r\n if (prevProps.bookinglist !== this.props.bookinglist) {\r\n // this.props.myProp has a different value\r\n if (this.props.bookinglist) {\r\n var e = this.props.bookinglist;\r\n this.setState({\r\n totalRecords: parseInt(e[0].TotalRows),\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords !== 0)\r\n this.setState({\r\n totalRecords: 0,\r\n first: 0,\r\n });\r\n }\r\n }\r\n\r\n switchToggleConfirm = (e) => {\r\n this.props.inActiveRow(this.state.OrderBookingNo, this.state.switchAction);\r\n this.tblResponse.DealerId =\r\n this.state.UserType > 1 ? this.state.DealerId : 0;\r\n setTimeout(() => {\r\n this.props.fetchApi(this.tblResponse);\r\n }, 1000);\r\n };\r\n // handle click event of the Remove button\r\n handleRemoveClick = (id) => {\r\n var list = [...this.state.productDetails];\r\n\r\n list = list.filter((item) => item.product != id);\r\n //list.splice(index, 1);\r\n this.setState({ productDetails: list });\r\n };\r\n\r\n // handle click event of the Add button\r\n handleAddClick = (productData) => {\r\n this.setState({\r\n productDetails: [\r\n ...this.state.productDetails,\r\n {\r\n product: productData.value,\r\n Qty: 1,\r\n MRP: productData.MRP,\r\n HPCode: productData.HPCode,\r\n OEM: productData.OEM,\r\n ProductName: productData.ProductName,\r\n },\r\n ],\r\n productDetailsError: [\r\n ...this.state.productDetailsError,\r\n { product: \"\", Qty: \"\", MRP: \"\" },\r\n ],\r\n });\r\n };\r\n\r\n handleChange(event, i) {\r\n let { name, value } = event.target;\r\n let errors = this.state.formError;\r\n switch (name) {\r\n case \"IsActive\":\r\n value = event.target.checked;\r\n break;\r\n default:\r\n break;\r\n }\r\n this.validateForm(value, name);\r\n this.setState({ errors, [name]: value }, () => {\r\n if (name == \"categoryId\" || name == \"searchValue\") {\r\n this.props.getSearchData(\r\n this.state.searchValue,\r\n parseInt(this.state.categoryId),\r\n this.state.pageSize\r\n );\r\n }\r\n });\r\n }\r\n\r\n // handle input change\r\n handleInputChange = (e, index) => {\r\n const { name, value } = e.target;\r\n let repeat = false;\r\n if (name == \"product\") {\r\n this.state.productDetails.filter((product) => {\r\n if (product.product == value) repeat = true;\r\n });\r\n }\r\n if (repeat) {\r\n this.refs.Messchild.showWarn(\r\n \"This Product is already Selected in this order, Please increase the Quantity if you want to add more Pieces of it\"\r\n );\r\n return;\r\n }\r\n const list = [...this.state.productDetails];\r\n list[index][name] = value;\r\n let mrp = \"\";\r\n let OEM = \"\";\r\n let HPCode = \"\";\r\n if (name == \"product\") {\r\n this.props.productData.filter((product) => {\r\n if (product.value == value) {\r\n mrp = product.MRP;\r\n OEM = product.OEM;\r\n HPCode = product.HPCode;\r\n }\r\n });\r\n list[index][\"MRP\"] = mrp;\r\n list[index][\"OEM\"] = OEM;\r\n list[index][\"HPCode\"] = HPCode;\r\n this.state.MRP = mrp;\r\n }\r\n this.setState({ productDetails: list });\r\n };\r\n\r\n validateProductDetails(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n switch (name) {\r\n case \"DealerId\":\r\n if (!value) {\r\n IsValid = false;\r\n errors.DealerId = \"Please select dealer.\";\r\n } else errors.DealerId = \"\";\r\n break;\r\n default:\r\n break;\r\n }\r\n return IsValid;\r\n }\r\n\r\n handleMultipleProducts(event, i) {\r\n this.handleChange(event, i);\r\n this.handleInputChange(event, i);\r\n }\r\n\r\n getCurrentDateMMDDYYY() {\r\n var today = new Date();\r\n var dd = String(today.getDate()).padStart(2, \"0\");\r\n var mm = String(today.getMonth() + 1).padStart(2, \"0\");\r\n var yyyy = today.getFullYear();\r\n today = mm + \"/\" + dd + \"/\" + yyyy;\r\n return today;\r\n }\r\n\r\n UpdatedDtTemplate(rowData) {\r\n if (rowData.UpdatedDt !== null) {\r\n return {rowData.UpdatedDt};\r\n } else {\r\n }\r\n }\r\n\r\n CreatedDtTemplate(rowData) {\r\n return {rowData.CreatedDt};\r\n }\r\n\r\n getProductList(event) {\r\n this.setState({ ProductId: event.target.value });\r\n this.props.getProductDDL(event.target.value);\r\n }\r\n\r\n validateForm(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n switch (name) {\r\n case \"product\":\r\n if (!value) {\r\n IsValid = false;\r\n errors.product = \"Please select Product.\";\r\n } else errors.product = \"\";\r\n break;\r\n case \"DealerId\":\r\n if (!value) {\r\n IsValid = false;\r\n errors.DealerId = \"Please select dealer.\";\r\n } else errors.DealerId = \"\";\r\n break;\r\n case \"Qty\":\r\n value = value === \"\" ? 1 : value;\r\n if (value >= 1) {\r\n if (parseInt(value) < 1) {\r\n IsValid = false;\r\n errors.Qty = \"Qty must be greater than 0\";\r\n } else if (!value.toString().match(/^[0-9]+$/.exec(value))) {\r\n IsValid = false;\r\n errors.Qty = \"Please enter only number.\";\r\n } else {\r\n errors.Qty = null;\r\n }\r\n } else {\r\n IsValid = false;\r\n errors.Qty = \"Please Enter Qty\";\r\n }\r\n break;\r\n default:\r\n break;\r\n }\r\n return IsValid;\r\n }\r\n\r\n getDropValueOfRole() {\r\n let roleName = \"\";\r\n this.props.UserDealerData.filter((x) => {\r\n if (x.value === this.state.DealerId.toString()) {\r\n roleName = x.label;\r\n }\r\n });\r\n return roleName;\r\n }\r\n\r\n submitseries(event) {\r\n event.preventDefault();\r\n this.props.onHideShoww(false);\r\n }\r\n getDropValueOfDealer(id) {\r\n let dealer = \"\";\r\n this.props.UserDealerData.filter((x) => {\r\n if (x.value === id.toString()) {\r\n dealer = x;\r\n }\r\n });\r\n this.setState({\r\n Dealer: dealer,\r\n });\r\n return dealer;\r\n }\r\n\r\n submitForm(event) {\r\n this.setState({ showConfirmDialog: false });\r\n event.preventDefault();\r\n\r\n let isfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key];\r\n let valid = this.validateForm(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n return isfrmvalid;\r\n });\r\n if (this.state.SelectedProducts.length == 0) {\r\n isfrmvalid = false;\r\n this.refs.Messchild.showWarn(\"Please Add Products to Cart\");\r\n } else {\r\n isfrmvalid = this.state.SelectedProducts.some((i) => i.Qty != 0);\r\n var sfrmvalid = this.state.SelectedProducts.some((i) => i.Qty != NaN);\r\n // if (!isfrmvalid || sfrmvalid) {\r\n // isfrmvalid = false\r\n // this.refs.Messchild.showWarn(\"Please Enter Product(s) Quantity\");\r\n // return;\r\n // }\r\n }\r\n if (\r\n this.state.OrderBookingNo != 0 &&\r\n this.state.SelectedProducts.length == this.state.tmpDetails.length\r\n ) {\r\n var count = 0;\r\n for (var i = 0; i < this.state.SelectedProducts.length; i++) {\r\n if (\r\n this.state.SelectedProducts[i].Qty != this.state.tmpDetails[i].Qty\r\n ) {\r\n count++;\r\n }\r\n }\r\n if (count == 0) {\r\n isfrmvalid = false;\r\n this.refs.Messchild.showWarn(\"No changes in Order, can't update\");\r\n return;\r\n }\r\n }\r\n if (isfrmvalid) {\r\n const formData = {\r\n OrderBookingNo: this.state.OrderBookingNo,\r\n DealerId: this.state.DealerId,\r\n Remark: this.state.Remark,\r\n productDetails: this.state.SelectedProducts,\r\n IsActive: this.state.isActive,\r\n CreatedDate:\r\n this.state.OrderBookingNo > 0\r\n ? this.state.CreatedDate\r\n : this.getCurrentDateMMDDYYY(),\r\n CreatedBy: this.state.UserId,\r\n };\r\n if (formData.OrderBookingNo == 0) {\r\n this.props.CreateOrder(formData);\r\n event.preventDefault();\r\n //console.log(formData);\r\n } else {\r\n this.props.CreateOrder(formData);\r\n event.preventDefault();\r\n //console.log(formData);\r\n }\r\n if (!this.props.showDialog) {\r\n this.resetForm();\r\n }\r\n setTimeout(() => {\r\n this.tblResponse.DealerId =\r\n this.state.UserType > 1 ? this.state.DealerId : 0;\r\n this.props.fetchApi(this.tblResponse);\r\n }, 500);\r\n }\r\n }\r\n getDropValueOfCategory() {\r\n let categoryName = \"\";\r\n this.props.CategoryData.filter((x) => {\r\n if (x.value === this.state.categoryId.toString()) {\r\n categoryName = x.label;\r\n }\r\n });\r\n\r\n return categoryName;\r\n }\r\n\r\n resetForm() {\r\n this.setState({\r\n cartButtonText: \"ADD TO CART\",\r\n icon: \"fa fa-cart-plus\",\r\n isAdded: false,\r\n showCart: false,\r\n searchValue: \"\",\r\n OrderBookingNo: \"\",\r\n IsDetails: false,\r\n SelectedProducts: [],\r\n categoryId: 0,\r\n ProductId: \"\",\r\n product: \"\",\r\n DealerId: this.state.UserType > 1 ? this.state.DealerId : \"\",\r\n Qty: 1,\r\n MRP: \"\",\r\n productDetails: [],\r\n Remark: \"\",\r\n isActive: true,\r\n pageSize: 20,\r\n formError: {\r\n ProductId: \"\",\r\n product: \"\",\r\n categoryId: \"\",\r\n Qty: \"\",\r\n MRP: \"\",\r\n productDetails: [],\r\n },\r\n });\r\n\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key]) => {\r\n errors[key] = \"\";\r\n return errors[key];\r\n });\r\n this.props.getSearchData(\r\n this.state.searchValue,\r\n this.state.categoryId,\r\n this.state.pageSize\r\n );\r\n }\r\n\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n this.tblResponse.DealerId = this.state.DealerId;\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.tblResponse.DealerId =\r\n this.state.UserType > 1 ? this.state.DealerId : 0;\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.tblResponse.DealerId =\r\n this.state.UserType > 1 ? this.state.DealerId : 0;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField =\r\n event.multiSortMeta[0].field === \"CreatedDate\"\r\n ? \"CreatedDate\"\r\n : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\"; //this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.tblResponse.DealerId =\r\n this.state.UserType > 1 ? this.state.DealerId : 0;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n statusBodyTemplate(rowData) {\r\n if (rowData) {\r\n return (\r\n \r\n );\r\n }\r\n }\r\n\r\n actionBodyTemplate(rowData) {\r\n const editModeUpdate = (e) => {\r\n this.onHide();\r\n this.props.getCategoryDDL();\r\n this.setState({\r\n tmpDetails: rowData.tmpDetails != null ? rowData.tmpDetails : [],\r\n showCart: true,\r\n buttonLabel: \"Update Order\",\r\n formHeading: \"Order Update\",\r\n OrderBookingNo: rowData.OrderBookingNo,\r\n categoryId: 0,\r\n DealerId: rowData.DealerId.toString(),\r\n Remark: rowData.Remark,\r\n SelectedProducts:\r\n rowData.productDetails != null ? rowData.productDetails : [],\r\n IsActive: rowData.IsActive,\r\n CreatedDate: rowData.CreatedDate,\r\n });\r\n };\r\n\r\n const reorderMode = (e) => {\r\n this.onHide();\r\n this.props.getCategoryDDL();\r\n this.props.onHideShow(true);\r\n this.setState({\r\n showCart: true,\r\n buttonLabel: \"Create Order\",\r\n formHeading: \"Reorder\",\r\n OrderBookingNo: 0,\r\n categoryId: 0,\r\n DealerId: rowData.DealerId.toString(),\r\n Remark: rowData.Remark,\r\n SelectedProducts:\r\n rowData.productDetails != null ? rowData.productDetails : [],\r\n IsActive: rowData.IsActive,\r\n CreatedDate: rowData.CreatedDate,\r\n });\r\n };\r\n\r\n const ShowRow = (e) => {\r\n if (!e.target.className.toString().includes(\"slash\")) {\r\n this.props.readRow(rowData.OrderBookingNo, false, this.tblResponse);\r\n } else {\r\n this.props.readRow(rowData.OrderBookingNo, true, this.tblResponse);\r\n }\r\n };\r\n\r\n const Download = (e) => {\r\n this.setState({\r\n fileName:\r\n rowData.OrderBookingNo + \"_\" + new Date().toString().split(\"GMT\")[0],\r\n });\r\n this.props.download(rowData.Id, rowData.OrderBookingNo, this.tblResponse);\r\n setTimeout(() => {\r\n this.csvLink.current.element.click();\r\n }, 3000);\r\n };\r\n\r\n const switchHandleChange = (e) => {\r\n this.setState({\r\n switchAction: !rowData.IsActive,\r\n OrderBookingNo: rowData.OrderBookingNo,\r\n });\r\n\r\n this.props.onHideShowIsActive(true);\r\n };\r\n if (rowData) {\r\n return (\r\n <>\r\n {this.state.IsEdit === true ? (\r\n
event.stopPropagation()}>\r\n \r\n Reorder\r\n {\" \"}\r\n  \r\n
\r\n ) : (\r\n
event.stopPropagation()}>\r\n \r\n Reorder\r\n {\" \"}\r\n  \r\n
\r\n )}\r\n \r\n );\r\n }\r\n }\r\n\r\n getOrderNo(rowData) {\r\n if (rowData) {\r\n return (\r\n <>\r\n {rowData.IsShow ? (\r\n \r\n \r\n {rowData.OrderBookingNo}\r\n \r\n ) : (\r\n \r\n \r\n {rowData.OrderBookingNo}\r\n \r\n )}\r\n \r\n );\r\n }\r\n }\r\n\r\n noOfProducts(rowData) {\r\n //let no = JSON.parse(rowData.productDetails);\r\n //return no.length;\r\n if (rowData.productDetails != null) return rowData.productDetails.length;\r\n else return 0;\r\n }\r\n\r\n getStatus(rowData) {\r\n var value = rowData.Status;\r\n if (value == 0) {\r\n return Pending;\r\n } else if (value == 1) {\r\n return (\r\n Partially Dispatched\r\n );\r\n } else if (value == 2) {\r\n return Dispatched;\r\n }\r\n }\r\n\r\n onHide() {\r\n this.props.onHideShow(false);\r\n this.resetForm();\r\n }\r\n openDialog() {\r\n this.props.onHideShow(true);\r\n this.setState({\r\n IsDetails: false,\r\n buttonLabel: \"Create Order\",\r\n formHeading: \"Create Order\",\r\n });\r\n this.resetForm();\r\n }\r\n\r\n getProductStuff(e) {\r\n this.props.getSearchData(\r\n e.target.value,\r\n this.state.categoryId,\r\n this.state.pageSize\r\n );\r\n }\r\n\r\n onSelectState(selectedList, selectedItem) {\r\n var repeat = this.state.productDetails.some(\r\n (i) => i.product == selectedItem.value\r\n );\r\n if (repeat) {\r\n this.refs.Messchild.showWarn(\r\n \"This Product is already Selected in this order, Please increase the Quantity if you want to add more Pieces of it\"\r\n );\r\n return;\r\n }\r\n this.ProductSelect(selectedItem);\r\n this.handleAddClick(selectedItem);\r\n }\r\n\r\n onRemoveState(selectedList, removedItem) {\r\n this.handleRemoveClick(removedItem.value);\r\n this.setState({\r\n SelectedProducts: this.state.SelectedProducts.filter(\r\n (item) => item.value != removedItem.value\r\n ),\r\n });\r\n }\r\n\r\n ProductSelect(id) {\r\n this.setState({\r\n SelectedProducts: [...this.state.SelectedProducts, id],\r\n });\r\n }\r\n\r\n increaseValue(i) {\r\n if (\r\n this.state.SelectedProducts.some(\r\n (row) => row.ProductId === this.props.SearchData[i].ProductId\r\n )\r\n ) {\r\n } else {\r\n var pushEle = this.props.SearchData[i];\r\n pushEle.Qty = 0;\r\n this.state.SelectedProducts.push(pushEle);\r\n }\r\n var index = this.state.SelectedProducts.findIndex(\r\n (x) => x.ProductId === this.props.SearchData[i].ProductId\r\n );\r\n var value = parseInt(this.state.SelectedProducts[index].Qty);\r\n value = isNaN(value) ? 0 : value;\r\n value++;\r\n const list = [...this.state.SelectedProducts];\r\n list[index][\"Qty\"] = parseInt(value);\r\n this.setState({\r\n SelectedProducts: list,\r\n });\r\n }\r\n\r\n increaseValueInCart(i) {\r\n var value = parseInt(this.state.SelectedProducts[i].Qty);\r\n value = isNaN(value) ? 0 : value;\r\n value++;\r\n const list = [...this.state.SelectedProducts];\r\n list[i][\"Qty\"] = parseInt(value);\r\n this.setState({\r\n SelectedProducts: list,\r\n });\r\n }\r\n\r\n decreaseValue(i) {\r\n if (\r\n this.state.SelectedProducts.some(\r\n (row) => row.ProductId === this.props.SearchData[i].ProductId\r\n )\r\n ) {\r\n var index = this.state.SelectedProducts.findIndex(\r\n (x) => x.ProductId === this.props.SearchData[i].ProductId\r\n );\r\n var value = parseInt(this.state.SelectedProducts[index].Qty);\r\n value = isNaN(value) ? 0 : value;\r\n value--;\r\n if (value <= 0) {\r\n this.state.SelectedProducts.splice(index, 1);\r\n } else {\r\n this.state.SelectedProducts[index][\"Qty\"] = parseInt(value);\r\n }\r\n const list = [...this.state.SelectedProducts];\r\n this.setState({\r\n SelectedProducts: list,\r\n });\r\n }\r\n }\r\n\r\n decreaseValueInCart(i) {\r\n if (this.state.SelectedProducts[i].Qty > 1) {\r\n var value = parseInt(this.state.SelectedProducts[i].Qty);\r\n value = isNaN(value) ? 0 : value;\r\n value--;\r\n const list = [...this.state.SelectedProducts];\r\n list[i][\"Qty\"] = parseInt(value);\r\n this.setState({\r\n SelectedProducts: list,\r\n });\r\n }\r\n }\r\n\r\n setQtyInCart(e, i) {\r\n //if (e.target.value != \"\") {\r\n const list = [...this.state.SelectedProducts];\r\n list[i][\"Qty\"] = parseInt(e.target.value);\r\n this.setState({\r\n SelectedProducts: list,\r\n });\r\n // } else {\r\n // this.refs.Messchild.showWarn(\"Enter Quantity Greater than 0\");\r\n // }\r\n }\r\n\r\n setQty(e, i) {\r\n //if (e.target.value != \"\") {\r\n if (\r\n this.state.SelectedProducts.some(\r\n (row) => row.ProductId === this.props.SearchData[i].ProductId\r\n )\r\n ) {\r\n } else {\r\n this.state.SelectedProducts.push(this.props.SearchData[i]);\r\n }\r\n var index = this.state.SelectedProducts.findIndex(\r\n (x) => x.ProductId === this.props.SearchData[i].ProductId\r\n );\r\n const list = [...this.state.SelectedProducts];\r\n list[index][\"Qty\"] = parseInt(e.target.value);\r\n this.setState({\r\n SelectedProducts: list,\r\n });\r\n // } else {\r\n // this.refs.Messchild.showWarn(\"Enter Quantity Greater than 0\");\r\n // }\r\n }\r\n\r\n getQty(i) {\r\n if (\r\n this.state.SelectedProducts.some(\r\n (row) => row.ProductId === this.props.SearchData[i].ProductId\r\n )\r\n ) {\r\n var index = this.state.SelectedProducts.findIndex(\r\n (x) => x.ProductId === this.props.SearchData[i].ProductId\r\n );\r\n return this.state.SelectedProducts[index].Qty;\r\n } else {\r\n return 0;\r\n }\r\n }\r\n\r\n addToCart() {\r\n this.setState({\r\n isAdded: true,\r\n cartButtonText: \"ADDED\",\r\n });\r\n var added = this.state.isAdded;\r\n const button = document.querySelector(\".addtocart\");\r\n button.style.background = \"#06457c\";\r\n }\r\n\r\n removeProduct(e, i) {\r\n this.state.SelectedProducts.splice(i, 1);\r\n const list = [...this.state.SelectedProducts];\r\n this.setState({\r\n SelectedProducts: list,\r\n });\r\n }\r\n\r\n render() {\r\n const renderFooter = (name) => {\r\n return (\r\n
\r\n this.props.onHideShowIsActive(false)}\r\n className=\"p-button-text\"\r\n />\r\n \r\n
\r\n );\r\n };\r\n\r\n const viewDetails = (e) => {\r\n var rowData = e.data;\r\n this.tblResponse.DealerId =\r\n this.state.UserType > 1 ? this.state.DealerId : 0;\r\n //this.props.readRow(rowData.OrderBookingNo, false, this.tblResponse);\r\n this.setState({\r\n showCart: true,\r\n IsDetails: true,\r\n buttonLabel: \"\",\r\n formHeading: \"Order Details\",\r\n OrderBookingNo: rowData.OrderBookingNo,\r\n categoryId: 0,\r\n DealerId: rowData.DealerId.toString(),\r\n Remark: rowData.Remark,\r\n SelectedProducts:\r\n rowData.productDetails != null ? rowData.productDetails : [],\r\n IsActive: rowData.IsActive,\r\n CreatedDate: rowData.CreatedDate,\r\n });\r\n };\r\n\r\n const renderOrderFooter = (name) => {\r\n return (\r\n
\r\n this.setState({ showConfirmDialog: false })}\r\n />\r\n\r\n \r\n
\r\n );\r\n };\r\n\r\n const rowClass = (data) => {\r\n var colortag;\r\n if (data.IsShow) colortag = createStyle(\"#9ba9b480\");\r\n //createStyle(\"#2d4050\");\r\n return { [colortag]: data.IsShow };\r\n };\r\n\r\n function createStyle(color) {\r\n var style = document.getElementsByTagName(\"style\");\r\n var colortag = color.replace(\"#\", \"mycolor\");\r\n //Assuming there is a style section in the head\r\n var pos = style[0].innerHTML.indexOf(colortag);\r\n if (pos < 0) {\r\n if (style[0]) {\r\n style[0].innerHTML +=\r\n \".\" +\r\n colortag +\r\n `\r\n {\r\n background-color: ${color}!important;\r\n font-weight: bold;\r\n }\r\n `;\r\n }\r\n }\r\n return colortag;\r\n }\r\n\r\n const header = (\r\n
\r\n
\r\n

Order Booking

\r\n
\r\n
\r\n \r\n \r\n this.searchFilter(e)}\r\n placeholder=\"Global Search\"\r\n />\r\n \r\n \r\n {/* {this.state.IsAdd === true ? (\r\n \r\n ) : (\r\n \r\n )} */}\r\n
\r\n
\r\n );\r\n\r\n return (\r\n
\r\n \r\n\r\n
\r\n \r\n {\r\n this.dt = el;\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n {this.state.IsEdit === true ? (\r\n event.stopPropagation()}\r\n header=\"Action\"\r\n style={{ width: \"20%\" }}\r\n body={this.actionBodyTemplate}\r\n >\r\n ) : (\r\n event.stopPropagation()}\r\n header=\"Action\"\r\n style={{ width: \"20%\", display: \"none\" }}\r\n >\r\n )}\r\n \r\n
\r\n\r\n {/* CREATE ORDER DIALOG FORM STARTS */}\r\n\r\n \r\n
\r\n
\r\n \r\n this.setState({ showCart: true })}\r\n />\r\n
\r\n\r\n
\r\n {/* SELECT DEALER POPUP STARTS */}\r\n\r\n
\r\n \r\n 1 || this.state.IsDetails\r\n ? true\r\n : false\r\n }\r\n filter\r\n value={\r\n this.state.DealerId == 0\r\n ? this.state.Dealer\r\n : this.state.DealerId\r\n }\r\n options={this.props.UserDealerData}\r\n optionLabel=\"label\"\r\n optionValue=\"value\"\r\n onChange={this.handleChange}\r\n name=\"DealerId\"\r\n className=\"form-control custom-select\"\r\n placeholder=\"Select Dealer*\"\r\n >\r\n \r\n {this.state.formError.DealerId !== \"\" ? (\r\n
{this.state.formError.DealerId}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n {this.state.formError.Remark !== \"\" ? (\r\n
{this.state.formError.Remark}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n\r\n {/* Product Catgery */}\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n {/* IS ACTIVE TAG */}\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n {/*
*/}\r\n \r\n
\r\n \r\n {this.props.SearchData.map((x, i) => {\r\n return (\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

{x.ProductName}

\r\n
\r\n {x.MRP > 0 ?
₹{x.MRP}
: \"\"}\r\n
{x.OEM}
\r\n
{x.HPCode}
\r\n
\r\n \r\n event.preventDefault()\r\n }\r\n >\r\n \r\n this.decreaseValue(i)\r\n }\r\n value=\"Decrease Value\"\r\n >\r\n -\r\n
\r\n \r\n this.setQty(event, i)\r\n }\r\n value={this.getQty(i)}\r\n />\r\n \r\n this.increaseValue(i)\r\n }\r\n value=\"Increase Value\"\r\n >\r\n +\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n })}\r\n \r\n\r\n
*/}\r\n\r\n
;\r\n // }\r\n\r\n // create html part\r\n render() {\r\n const renderFooter = (name) => {\r\n return (\r\n
\r\n
\r\n );\r\n }\r\n const header = (\r\n
\r\n
\r\n

Carton Master

\r\n
\r\n
\r\n \r\n \r\n this.searchFilter(e)} placeholder=\"Global Search\" />\r\n \r\n\r\n {this.state.IsAdd === true ?\r\n
\r\n
\r\n );\r\n\r\n return (\r\n
\r\n \r\n\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {/* */}\r\n \r\n\r\n {/**/}\r\n \r\n {/*
*/}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n {this.state.formError.CartonName !== '' ?\r\n
{this.state.formError.CartonName}
: ''}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n {this.state.formError.CartonSize !== '' ?\r\n
{this.state.formError.CartonSize}
: ''}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n {this.state.formError.Description !== '' ?\r\n
{this.state.formError.Description}
: ''}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n {/*
\r\n \r\n
*/}\r\n {/*
\r\n \r\n
*/}\r\n
\r\n\r\n
Please Click Below Button To Submit*
\r\n\r\n
\r\n
\r\n\r\n Note: Fields marked as (*) are required\r\n\r\n
\r\n\r\n
\r\n
\r\n {/*
*/}\r\n
\r\n\r\n this.props.onHideShowIsActive(false)}>\r\n
\r\n \r\n Are you sure you want to {this.state.switchAction == true ? \"Active\" : \"InActive\"}?\r\n
\r\n
\r\n
\r\n
\r\n\r\n )\r\n }\r\n}\r\n\r\n\r\nconst mapStateToProps = (state) => { \r\n return {\r\n CartonData: state.Carton?.items,\r\n //UserRoleData: state.role.rollddl,\r\n //UserRoleData: state.role.rollddl,\r\n // Mappseries: state.cartonMaster.Mappseries,\r\n //showDialogue: state.CartonMaster.showDialogue,\r\n productData: state.product.prdctddl,\r\n showDialog: state.Carton.showDialog,\r\n loading: state.company.loding,\r\n showIsActiveDialog: state.Carton.showIsActiveDialog\r\n }\r\n}\r\n\r\nconst mapDispatchToProps = (dispatch) => { \r\n return {\r\n fetchApi: (data) => {\r\n dispatch(CartonActions.getAll(data))\r\n },\r\n openPermissionDialog: data => dispatch(CartonActions.openDialog(data)),\r\n createCarton: user => dispatch(CartonActions.CreateCarton(user)),\r\n updateCarton: user => dispatch(CartonActions.UpdateCarton(user)),\r\n inActiveRow: (user, isActive) => dispatch(CartonActions.inActiveRow(user, isActive)),\r\n onHideShow: isbool => dispatch(CartonActions.onHideShow(isbool)),\r\n onHideShoww: isbool => dispatch(CartonActions.onHideShoww(isbool)),\r\n onHideShowIsActive: isbool => dispatch(CartonActions.onHideShowIsActive(isbool)),\r\n //getRoleDDL: (userId) => dispatch(roleMasterActions.getRoleDDL(userId)),\r\n loadingData: (isLoding) => dispatch(CartonActions.loadingData(isLoding))\r\n }\r\n}\r\nexport default connect(mapStateToProps, mapDispatchToProps)(cartonMaster)","import { authHeader, handleResponse } from '../helpers';\r\nexport const loyalityschemeService = {\r\n createScheme,\r\n UpdateScheme,\r\n fetchSchemeData,\r\n inActiveRow,\r\n GetAvailableseries\r\n};\r\n\r\nfunction createScheme(data) {\r\n \r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Loyalityscheme/CreateScheme`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction UpdateScheme(data) {\r\n\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Loyalityscheme/CreateScheme`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchSchemeData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}Loyalityscheme/GetSchemes`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction inActiveRow(userId, isActive) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Loyalityscheme/InActiveRow/${userId}/${isActive}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\nfunction GetAvailableseries(proddata) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(proddata)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}Loyalityscheme/GetAvailableseries`,requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n\r\n\r\n\r\n\r\n","import { loyalityschemeService } from '../services/loyalityschemeService';\r\nimport { loyalityschemeConstants } from '../constants/loyalityschemeConstants';\r\nimport { userService } from '../services';\r\nimport { userConstants } from '../constants';\r\nimport { alertActions } from '.';\r\nimport { history } from '../helpers';\r\n\r\nexport const loyalityschemeActions = {\r\n getAll,\r\n getRoleDDL,\r\n GetAvailableseries,\r\n createScheme,\r\n updateScheme,\r\n inActiveRow,\r\n onHideShow,\r\n onHideShoww,\r\n loadingData,\r\n onHideShowIsActive\r\n};\r\n\r\nfunction getAll(data) {\r\n return dispatch => {\r\n dispatch(request());\r\n loyalityschemeService.fetchSchemeData(data).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: loyalityschemeConstants.GETALL_REQUEST } }\r\n function success(datas) { return { type: loyalityschemeConstants.GETALL_SUCCESS, datas } }\r\n function failure(error) { return { type: loyalityschemeConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction getRoleDDL(data) {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n userService.fetchRoleDLL(data).then(response => {\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n function request() { return { type: userConstants.GETROLEDDL_REQUEST } }\r\n function success(datas) { return { type: userConstants.GETROLEDDL_SUCCESS, datas } }\r\n function failure(error) { return { type: userConstants.GETROLEDDL_FAILURE, error } }\r\n};\r\n\r\nfunction GetAvailableseries(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n loyalityschemeService.GetAvailableseries(data).then(response => {\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: userConstants.GETROLEDDL_REQUEST } }\r\n function request() { return { type: loyalityschemeConstants.GETALL_AVAILABLE_REQUEST } }\r\n function success(datas) { return { type: loyalityschemeConstants.GETALL_AVAILABLE_SUCCESS, datas } }\r\n function failure(error) { return { type: loyalityschemeConstants.GETALL_AVAILABLE_FAILURE, error } }\r\n}\r\n\r\nfunction createScheme(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n loyalityschemeService.createScheme(data).then(\r\n response => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n dispatch(onHideShow(false));\r\n dispatch(onHideShoww(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: loyalityschemeConstants.CREATE_REQUEST, data } }\r\n function success(data) { return { type: loyalityschemeConstants.CREATE_SUCCESS, data } }\r\n function failure(error) { return { type: loyalityschemeConstants.CREATE_FAILURE, error } }\r\n};\r\n\r\n\r\nfunction updateScheme(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n loyalityschemeService.UpdateScheme(data).then(\r\n response => {\r\n //history.push('/'); \r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(
{new Date(data).toString()}
));\r\n dispatch(onHideShow(false));\r\n dispatch(onHideShow(false));\r\n dispatch(alertActions.success(response.ResponseMessage))\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: loyalityschemeConstants.UPDATE_REQUEST, data } }\r\n function success(data) { return { type: loyalityschemeConstants.UPDATE_SUCCESS, data } }\r\n function failure(error) { return { type: loyalityschemeConstants.UPDATE_FAILURE, error } }\r\n};\r\n\r\n\r\nfunction inActiveRow(SchemeId, isActive) {\r\n var data = {\r\n SchemeId: SchemeId,\r\n IsActive: isActive\r\n }\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n loyalityschemeService.inActiveRow(SchemeId, isActive).then(\r\n response => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(alertActions.success(response.ResponseMessage))\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: loyalityschemeConstants.ISACTIVE_REQUEST } }\r\n function success(data) { return { type: loyalityschemeConstants.ISACTIVE_SUCCESS, data } }\r\n function failure(error) { return { type: loyalityschemeConstants.ISACTIVE_FAILURE, error } }\r\n};\r\n\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: loyalityschemeConstants.DIALOG_REQUEST, isbool\r\n }\r\n}\r\nfunction onHideShoww(isbool) {\r\n return {\r\n type: loyalityschemeConstants.DIALOGUE_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: loyalityschemeConstants.LOADING_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction onHideShowIsActive(isbool) {\r\n return {\r\n type: loyalityschemeConstants.DIALOG_ISACTIVE_REQUEST, isbool\r\n }\r\n}\r\n\r\n\r\n\r\n","import React, { Component } from \"react\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport { Button } from \"primereact/button\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport { FileUpload } from \"primereact/fileupload\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport { Calendar } from \"primereact/calendar\";\r\nimport { connect } from \"react-redux\";\r\nimport Moment from \"react-moment\";\r\nimport { ToastContainer, toast } from \"react-toastify\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { loyalityschemeActions } from \"../../actions/loyalityschemeAction\";\r\nimport { productMasterActions } from \"../../actions\";\r\nimport { userMasterActions } from \"../../actions\";\r\nimport { roleMasterActions } from \"../../actions\";\r\nimport tableRequest from \"../../models/tableRequest\";\r\n// import { userTypeMasterActions } from '../../actions';\r\nimport Switch from \"@material-ui/core/Switch\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\n\r\nclass loyalityscheme extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.statusBodyTemplate = this.statusBodyTemplate.bind(this);\r\n this.actionBodyTemplate = this.actionBodyTemplate.bind(this);\r\n this.switchToggleConfirm = this.switchToggleConfirm.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.Availableseries = this.Availableseries.bind(this);\r\n this.openDialog = this.openDialog.bind(this);\r\n this.onHidee = this.onHidee.bind(this);\r\n this.openDialogue = this.openDialogue.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.getProductList = this.getProductList.bind(this);\r\n this.CreatedDateTemplate = this.CreatedDateTemplate.bind(this);\r\n this.UpdatedDateTemplate = this.UpdatedDateTemplate.bind(this);\r\n this.resetForm = this.resetForm.bind(this);\r\n this.onHide = this.onHide.bind(this);\r\n this.getRoleList = this.getRoleList.bind(this);\r\n //this.getRoleDDL = this.getRoleDDL.bind(this);\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.onPage1 = this.onPage1.bind(this);\r\n this.onSort1 = this.onSort1.bind(this);\r\n this.onRowSelect = this.onRowSelect.bind(this);\r\n this.submitseries = this.submitseries.bind(this);\r\n this.onChangeDDL = this.onChangeDDL.bind(this);\r\n // const UserTypeData = [\r\n // { value: 1, label: 'Web' },\r\n // { value: 2, label: 'Mobile' }\r\n // ]\r\n const SchemeCategoryData = [\r\n { value: 1, label: \"Paytm\" },\r\n { value: 2, label: \"Loyality Points\" },\r\n ];\r\n\r\n this.state = {\r\n selectedProduct: \"\",\r\n productId: \"\",\r\n IsAdd: true,\r\n IsEdit: true,\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n first1: 0,\r\n rows1: 5,\r\n totalRecords1: 0,\r\n globalFilter: null,\r\n sortOrder: \"\",\r\n buttonLabel: \"Submit\",\r\n switchAction: false,\r\n formHeading: \"Add Loyality Master\",\r\n UserId: 0,\r\n RoleId: 0,\r\n //UserTypeId: '',\r\n Mappseriesdata: [],\r\n selectedProduct: null,\r\n // UserTypeData: [\r\n // { value: 1, label: 'Web' },\r\n // { value: 2, label: 'Mobile' }\r\n // ],\r\n SchemeCategoryData: [\r\n { value: 1, label: \"UPI\" },\r\n { value: 2, label: \"Loyality Points\" },\r\n ],\r\n productId: \"\",\r\n SchemeName: \"\",\r\n Schemedescription: \"\",\r\n SchemeCategory: \"\",\r\n //UserTypeId: '',\r\n product: \"\",\r\n Qty: \"\",\r\n StartDate: new Date(),\r\n EndDate: new Date(),\r\n FromNo: \"\",\r\n ToNo: \"\",\r\n Status: \"\",\r\n loyalitypnt: \"\",\r\n IsActive: true,\r\n CreatedDate: null,\r\n UpdatedDate: null,\r\n isEditing: false,\r\n formError: {\r\n productId: \"\",\r\n SchemeName: \"\",\r\n Schemedescription: \"\",\r\n SchemeCategory: \"\",\r\n RoleId: \"\",\r\n StartDate: \"\",\r\n EndDate: \"\",\r\n FromNo: \"\",\r\n //UserTypeId: '',\r\n product: \"\",\r\n Qty: \"\",\r\n loyalitypnt: \"\",\r\n },\r\n };\r\n }\r\n componentDidMount() {\r\n const userPages = sessionStorage.getItem(\"assignedPermissionsForUser\");\r\n if (userPages) {\r\n const assignedPermissions = JSON.parse(userPages);\r\n const Curenturl = window.location.pathname;\r\n const nNumber = Curenturl.lastIndexOf(\"/\");\r\n const pageName = Curenturl.substring(nNumber + 1);\r\n\r\n const obj = assignedPermissions.assigned.filter((x) => {\r\n return x.ActionName === pageName;\r\n });\r\n\r\n if (obj !== null && obj.length > 0) {\r\n if (!obj[0].IsEdit) {\r\n this.setState({\r\n IsEdit: false,\r\n });\r\n }\r\n if (!obj[0].IsAdd) {\r\n this.setState({\r\n IsAdd: false,\r\n });\r\n } else {\r\n this.setState({\r\n IsAdd: true,\r\n });\r\n }\r\n }\r\n }\r\n\r\n var date = new Date();\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() + 7);\r\n this.tblResponse.FromDate = date.toLocaleDateString();\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.setState({\r\n StartDate: new Date(),\r\n EndDate: date,\r\n });\r\n\r\n this.setState({\r\n Mappseriesdata: this.props.Mappseries,\r\n });\r\n\r\n this.props.fetchApi(this.tblResponse);\r\n\r\n const userId = \"2\";\r\n this.props.getRoleDDL(userId);\r\n this.props.getProductDDL();\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.SchememappingData) {\r\n if (prevProps.SchememappingData !== this.props.SchememappingData) {\r\n // this.props.myProp has a different value\r\n if (this.props.SchememappingData) {\r\n var e = this.props.SchememappingData;\r\n if (e[0]) {\r\n this.setState({\r\n totalRecords: e[0].TotalRows,\r\n });\r\n }\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords !== 0)\r\n this.setState({\r\n totalRecords: 0,\r\n first: 0,\r\n });\r\n }\r\n\r\n if (this.props.Mappseriesdata) {\r\n if (prevProps.Mappseriesdata !== this.props.Mappseriesdata) {\r\n // this.props.myProp has a different value\r\n if (this.props.Mappseriesdata) {\r\n var e = this.props.Mappseriesdata;\r\n this.setState({\r\n totalRecords1: e[0].this.props.TotalRows1,\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords1 !== 0)\r\n this.setState({\r\n totalRecords1: 0,\r\n first1: 0,\r\n });\r\n }\r\n }\r\n\r\n switchToggleConfirm = (e) => {\r\n this.props.inActiveRow(this.state.SchemeId, this.state.switchAction);\r\n setTimeout(() => {\r\n this.props.fetchApi(this.tblResponse);\r\n }, 2000);\r\n };\r\n\r\n Availableseries(event) {\r\n // this.setState({\r\n // RoleId: this.state.RoleId ,\r\n // product : event.target.value,\r\n // productData: this.props.productData\r\n // });\r\n const data = {\r\n RoleId: this.state.RoleId,\r\n ProductId: this.state.product,\r\n };\r\n setTimeout(() => {\r\n this.props.GetAvailableseries(data);\r\n }, 500);\r\n this.openDialogue();\r\n }\r\n\r\n onChangeDDL(e) {\r\n this.setState({ RoleId: e.target.value });\r\n this.getFromNo(e.target.value, \"r\");\r\n }\r\n\r\n getFromNo(value, name) {\r\n var data = {\r\n RoleId: value,\r\n };\r\n this.props.GetAvailableseries(data);\r\n setTimeout(() => {\r\n this.setState({ FromNo: this.props.FromNo });\r\n }, 800);\r\n }\r\n\r\n handleChange(event) {\r\n let { name, value } = event.target;\r\n let errors = this.state.formError;\r\n switch (name) {\r\n case \"IsActive\":\r\n value = event.target.checked;\r\n break;\r\n default:\r\n break;\r\n }\r\n this.validateForm(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n\r\n getRoleList(event) {\r\n this.setState({ UserTypeId: event.target.value });\r\n this.props.getRoleDDL(event.target.value);\r\n }\r\n\r\n UpdatedDateTemplate(rowData) {\r\n if (rowData.UpdatedDate !== null) {\r\n return {rowData.UpdatedDate};\r\n } else {\r\n }\r\n }\r\n\r\n CreatedDateTemplate(rowData) {\r\n if (rowData.UpdatedDate !== null) {\r\n return {rowData.CreatedDate};\r\n }\r\n }\r\n getProductList(event) {\r\n this.props.getProductDDL();\r\n }\r\n\r\n validateForm(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n switch (name) {\r\n case \"SchemeName\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.SchemeName = \"Please enter Scheme name.\";\r\n } else errors.SchemeName = \"\";\r\n break;\r\n case \"Schemedescription\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.Schemedescription = \"Please enter Scheme description\";\r\n } else errors.Schemedescription = \"\";\r\n break;\r\n case \"SchemeCategory\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.SchemeCategory = \"Please enter Scheme Category.\";\r\n } else errors.SchemeCategory = \"\";\r\n break;\r\n case \"RoleId\":\r\n if (!value) {\r\n IsValid = false;\r\n errors.RoleId = \"Please select user role.\";\r\n } else errors.RoleId = \"\";\r\n break;\r\n // case 'UserTypeId':\r\n // if (!value) {\r\n // IsValid = false;\r\n // errors.UserTypeId = \"Please select User Type.\";\r\n // } else errors.UserTypeId = ''\r\n // break;\r\n case \"FromNo\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.FromNo = \"Please enter From No.\";\r\n } else {\r\n if (!value.toString().match(/^[0-9]+$/.exec(value))) {\r\n IsValid = false;\r\n errors.Qty = \"Please enter only number.\";\r\n this.setState({ Qty: 0 });\r\n } else {\r\n errors.ToNo = null;\r\n errors.Qty = null;\r\n errors.FromNo = null;\r\n const fromNumber =\r\n value.toString().trim() === \"\"\r\n ? 0\r\n : parseInt(value.toString().trim());\r\n const qty =\r\n this.state.Qty.toString().trim() === \"\"\r\n ? 0\r\n : parseInt(this.state.Qty.toString().trim());\r\n if (fromNumber >= 1 && qty >= 1) {\r\n const toNumber = qty + fromNumber - 1;\r\n if (toNumber >= 0) {\r\n this.setState({ ToNo: toNumber });\r\n } else {\r\n IsValid = false;\r\n errors.Qty =\r\n \"To number should be greater than or equal to from number.\";\r\n this.setState({ ToNo: 0 });\r\n }\r\n } else {\r\n // IsValid = false;\r\n // errors.ToNo = \"To number should be greater than from number.\";\r\n this.setState({ ToNo: 0 });\r\n }\r\n }\r\n }\r\n break;\r\n case \"product\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.product = \"Please select Product.\";\r\n } else errors.product = \"\";\r\n break;\r\n case \"Qty\":\r\n if (!value === value) {\r\n IsValid = false;\r\n } else {\r\n if (value < 1) {\r\n IsValid = false;\r\n errors.Qty = \"Please enter your quantity.\";\r\n } else {\r\n if (!value.toString().match(/^[0-9]+$/.exec(value))) {\r\n IsValid = false;\r\n errors.Qty = \"Please enter only number.\";\r\n this.setState({ Qty: 0 });\r\n } else {\r\n errors.ToNo = null;\r\n errors.Qty = null;\r\n errors.FromNo = null;\r\n const qty =\r\n value.toString().trim() === \"\"\r\n ? 0\r\n : parseInt(value.toString().trim());\r\n const fromNumber =\r\n this.state.FromNo.toString().trim() === \"\"\r\n ? 0\r\n : parseInt(this.state.FromNo.toString().trim());\r\n if (fromNumber >= 1 && qty >= 1) {\r\n const toNumber = qty + fromNumber - 1;\r\n if (toNumber >= 0) {\r\n this.setState({ ToNo: toNumber });\r\n } else {\r\n IsValid = false;\r\n errors.Qty =\r\n \"To number should be greater than or equal to from number.\";\r\n this.setState({ ToNo: 0 });\r\n }\r\n } else {\r\n // IsValid = false;\r\n // errors.ToNo = \"To number should be greater than from number.\";\r\n this.setState({ ToNo: 0 });\r\n }\r\n }\r\n }\r\n }\r\n break;\r\n case \"loyalitypnt\":\r\n value = value === \"\" ? 0 : value;\r\n if (value === null || parseInt(value) < 1) {\r\n IsValid = false;\r\n errors.loyalitypnt = \"Loyalty points must be greater than 0\";\r\n } else errors.loyalitypnt = null;\r\n break;\r\n case \"StartDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n errors.StartDate = \"Please select start date.\";\r\n // this.refs.Messchild.showError(\"Please select from date.\");\r\n //this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please select start date.', life: 3000 });\r\n\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n errors.StartDate = \"Please enter only date.\";\r\n //this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please enter only date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (value instanceof Date && this.state.ToDate instanceof Date) {\r\n const startDate = value;\r\n const endDate = this.state.EndDate;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n errors.StartDate = \"Start date must be less than End date.\";\r\n //this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Start date must be less than End date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"From date must be less than to date.\");\r\n return;\r\n } else errors.StartDate = null;\r\n }\r\n\r\n break;\r\n case \"EndDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n errors.EndDate = \"Please select to date.\";\r\n //this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please select to date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"Please select to date.\");\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n errors.EndDate = \"Please enter only date.\";\r\n //this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please enter only date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (\r\n value instanceof Date &&\r\n this.state.StartDate instanceof Date\r\n ) {\r\n const startDate = this.state.StartDate;\r\n const endDate = value;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n errors.EndDate = \"End date must be greater than Start date.\";\r\n //this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'To date must be greater than from date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"To date must be greater than from date.\");\r\n return;\r\n } else errors.EndDate = null;\r\n }\r\n\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n\r\n getDropValueOfRole() {\r\n let roleName = \"\";\r\n this.props.UserRoleData.filter((x) => {\r\n if (x.value === this.state.RoleId.toString()) {\r\n roleName = x.label;\r\n }\r\n });\r\n\r\n return roleName;\r\n }\r\n\r\n // getDropValueOfRole() {\r\n // let roleName = '';\r\n // this.props.UserRoleData.filter(x => {\r\n // if (x.value === this.state.RoleId.toString()) {\r\n // roleName = x.label;\r\n // }\r\n // });\r\n\r\n // return roleName;\r\n // }\r\n\r\n // getDropValueOfUserType() {\r\n // let usertype = '';\r\n // this.state.UserTypeData.filter(x => {\r\n // if (x.value === this.state.UserTypeId) {\r\n // usertype = x.label;\r\n // }\r\n // });\r\n\r\n // return usertype;\r\n // }\r\n\r\n getDropValueOfSchemeCategory() {\r\n let SchemeCategoryId = \"\";\r\n this.state.SchemeCategoryData.filter((x) => {\r\n if (x.value === this.state.SchemeCategory) {\r\n SchemeCategoryId = x.label;\r\n }\r\n });\r\n\r\n return SchemeCategoryId;\r\n }\r\n\r\n submitseries(event) {\r\n event.preventDefault();\r\n\r\n this.props.onHideShoww(false);\r\n }\r\n\r\n submitForm(event) {\r\n event.preventDefault();\r\n let isfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key];\r\n let valid = this.validateForm(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n return isfrmvalid;\r\n });\r\n\r\n if (isfrmvalid) {\r\n const ddlValuRole = this.getDropValueOfRole();\r\n //const ddlValuRole = this.getDropValueOfRole();\r\n //const ddlValuUserType = this.getDropValueOfUserType();\r\n const ddlValuSchemeCategory = this.getDropValueOfSchemeCategory();\r\n const formData = {\r\n SchemeId: this.state.SchemeId,\r\n productId: this.state.productId,\r\n SchemeName: this.state.SchemeName,\r\n Schemedescription: this.state.Schemedescription,\r\n SchemeCategory: this.state.SchemeCategory,\r\n RoleId: this.state.RoleId,\r\n //UserTypeId: this.state.UserTypeId,\r\n product: this.state.product,\r\n Qty: this.state.Qty,\r\n FromNo: this.state.FromNo,\r\n ToNo: this.state.ToNo,\r\n StartDate: this.state.StartDate.toLocaleDateString(),\r\n EndDate: this.state.EndDate.toLocaleDateString(),\r\n Status: this.state.Status,\r\n loyalitypnt: this.state.loyalitypnt,\r\n IsActive: this.state.IsActive,\r\n CreatedDate:\r\n this.state.UserId > 0\r\n ? this.state.CreatedDate\r\n : this.getCurrentDateMMDDYYY(),\r\n UpdatedDate:\r\n this.state.UserId > 0 ? this.getCurrentDateMMDDYYY() : null,\r\n RoleName: ddlValuRole != null ? ddlValuRole : \"\",\r\n TotalRows: this.state.totalRecords,\r\n };\r\n if (formData.SchemeId > 0) {\r\n this.props.updateScheme(formData);\r\n event.preventDefault();\r\n setTimeout(() => {\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n } else {\r\n if (this.props.SchememappingData !== null) {\r\n }\r\n this.props.createScheme(formData);\r\n event.preventDefault();\r\n setTimeout(() => {\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n if (!this.props.showDialog) {\r\n this.resetForm();\r\n }\r\n }\r\n }\r\n\r\n // getRoleDDL(event) {\r\n // this.props.getRoleDDL();\r\n // }\r\n resetForm() {\r\n this.setState({\r\n productId: \"\",\r\n SchemeId: 0,\r\n SchemeName: \"\",\r\n Schemedescription: \"\",\r\n SchemeCategory: \"\",\r\n //UserTypeId: '',\r\n RoleId: \"\",\r\n product: \"\",\r\n Qty: \"\",\r\n StartDate: \"\",\r\n EndDate: \"\",\r\n FromNo: \"\",\r\n ToNo: \"\",\r\n Status: \"\",\r\n loyalitypnt: \"\",\r\n IsActive: true,\r\n formError: {\r\n productId: \"\",\r\n SchemeName: \"\",\r\n Schemedescription: \"\",\r\n SchemeCategory: \"\",\r\n FromNo: \"\",\r\n ToNo: \"\",\r\n StartDate: \"\",\r\n EndDate: \"\",\r\n Status: \"\",\r\n //UserTypeId: '',\r\n product: \"\",\r\n Qty: \"\",\r\n loyalitypnt: \"\",\r\n },\r\n });\r\n\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key]) => {\r\n errors[key] = \"\";\r\n return errors[key];\r\n });\r\n }\r\n\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n }\r\n\r\n getLazyLoadingValues1(event) {\r\n this.setState({ rows1: event.rows, first1: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n onPage1(event) {\r\n //this.props.loadingData(true);\r\n //imitate delay of a backend call\r\n // setTimeout(() => {\r\n // this.getLazyLoadingValues1(event);\r\n // this.props.GetAvailableseries(this.tblResponse);\r\n // }, 250);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField =\r\n event.multiSortMeta[0].field === \"CreatedDate\"\r\n ? \"CreatedDate\"\r\n : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\"; //this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n onSort1(event) {\r\n //this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField =\r\n event.multiSortMeta[0].field === \"CreatedDate\"\r\n ? \"CreatedDate\"\r\n : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\"; //this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n //this.props.GetAvailableseries(this.tblResponse);\r\n }\r\n\r\n onHide() {\r\n this.props.onHideShow(false);\r\n this.resetForm();\r\n }\r\n openDialog() {\r\n this.resetForm();\r\n this.props.onHideShow(true);\r\n this.setState({\r\n buttonLabel: \"Submit\",\r\n formHeading: \"Add Scheme\",\r\n isEditing: false,\r\n });\r\n }\r\n onHidee() {\r\n this.props.onHideShoww(false);\r\n }\r\n\r\n openDialogue() {\r\n this.props.onHideShoww(true);\r\n this.setState({ buttonLabel: \"Submit\", formHeadingg: \"Available Series\" });\r\n //this.props.GetAvailableseries(this.tblResponse);\r\n }\r\n onRowSelect(event) {\r\n //this.toast.show({ severity: 'info', summary: 'Series Selected', detail: `FromNo: ${event.data.FromNo}`, detail: `ToNo: ${event.data.ToNo}`, life: 3000 });\r\n this.setState({\r\n FromNo: event.data.FromNo,\r\n ToNo: event.data.ToNo,\r\n Qty: event.data.ToNo - event.data.FromNo + 1,\r\n });\r\n this.onHidee();\r\n }\r\n statusBodyTemplate(rowData) {\r\n if (rowData) {\r\n return (\r\n \r\n );\r\n }\r\n }\r\n getCurrentDateMMDDYYY() {\r\n var today = new Date();\r\n var dd = String(today.getDate()).padStart(2, \"0\");\r\n var mm = String(today.getMonth() + 1).padStart(2, \"0\");\r\n var yyyy = today.getFullYear();\r\n\r\n today = mm + \"/\" + dd + \"/\" + yyyy;\r\n return today;\r\n }\r\n actionBodyTemplate(rowData) {\r\n \r\n const editMode = (e) => {\r\n this.props.onHideShow(true);\r\n this.setState({\r\n buttonLabel: \"Update\",\r\n formHeading: \"Update Scheme\",\r\n SchemeId: rowData.SchemeId,\r\n SchemeName: rowData.SchemeName,\r\n Schemedescription: rowData.Schemedescription,\r\n SchemeCategory: rowData.SchemeCategory,\r\n //UserTypeId: rowData.UserTypeId,\r\n RoleId: rowData.RoleId,\r\n product: rowData.ProductId,\r\n Qty: rowData.Qty,\r\n StartDate: new Date(rowData.StartDate),\r\n EndDate: new Date(rowData.EndDate),\r\n FromNo: rowData.FromNo,\r\n ToNo: rowData.ToNo,\r\n Status: rowData.Status,\r\n IsActive: rowData.IsActive,\r\n loyalitypnt: rowData.loyalitypnt,\r\n CreatedDate: rowData.CreatedDate,\r\n isEditing: true,\r\n });\r\n };\r\n const switchHandleChange = (e) => {\r\n this.setState({\r\n switchAction: !rowData.IsActive,\r\n SchemeId: rowData.SchemeId,\r\n });\r\n this.props.onHideShowIsActive(true);\r\n };\r\n\r\n if (rowData) {\r\n return (\r\n <>\r\n {this.state.IsEdit === true ? (\r\n
\r\n \r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n \r\n );\r\n }\r\n }\r\n\r\n render() {\r\n const renderFooter = () => {\r\n return (\r\n
\r\n this.props.onHideShowIsActive(false)}\r\n className=\"p-button-text\"\r\n />\r\n this.switchToggleConfirm()}\r\n autoFocus\r\n />\r\n
\r\n );\r\n };\r\n const header = (\r\n
\r\n
\r\n

Scheme Master

\r\n
\r\n
\r\n \r\n \r\n this.searchFilter(e)}\r\n placeholder=\"Global Search\"\r\n />\r\n \r\n\r\n {this.state.IsAdd === true ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n
\r\n );\r\n\r\n return (\r\n
\r\n \r\n\r\n
\r\n {\r\n this.dt = el;\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {this.state.IsEdit === true ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n
\r\n \r\n {/*
*/}\r\n
\r\n
\r\n \r\n {this.state.formError.SchemeName !== \"\" ? (\r\n
{this.state.formError.SchemeName}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n {this.state.formError.Schemedescription !== \"\" ? (\r\n
\r\n {this.state.formError.Schemedescription}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n\r\n
\r\n \r\n \r\n Select Scheme Category*\r\n \r\n \r\n \r\n None\r\n \r\n {this.state.SchemeCategoryData.map((key) => (\r\n {key.label}\r\n ))}\r\n \r\n \r\n {this.state.formError.SchemeCategory !== \"\" ? (\r\n
\r\n {this.state.formError.SchemeCategory}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n {/*
\r\n \r\n Select User Type*\r\n \r\n \r\n {this.state.formError.UserTypeId !== '' ?\r\n
{this.state.formError.UserTypeId}
: ''}\r\n
*/}\r\n
\r\n \r\n \r\n Select User Role*\r\n \r\n \r\n \r\n None\r\n \r\n\r\n {/* \r\n Mechanic\r\n */}\r\n\r\n {this.props.UserRoleData == (undefined || null)\r\n ? null\r\n : this.props.UserRoleData.map((key) => {\r\n if (key.label != \"Dealer\") {\r\n return (\r\n {key.label}\r\n );\r\n }\r\n })}\r\n \r\n \r\n {this.state.formError.RoleId !== \"\" ? (\r\n
{this.state.formError.RoleId}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n\r\n
\r\n \r\n {\r\n this.handleChange(e);\r\n }}\r\n options={this.props.productData}\r\n optionValue=\"value\"\r\n optionLabel=\"label\"\r\n className=\"form-control\"\r\n placeholder={\"Select Product \"}\r\n name=\"product\"\r\n filter\r\n />\r\n \r\n {this.state.formError.product !== \"\" ? (\r\n
{this.state.formError.product}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n\r\n
\r\n \r\n {/* {this.state.IsAdd === true ? (\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n {this.state.formError.Qty !== \"\" ? (\r\n
{this.state.formError.Qty}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n\r\n
\r\n \r\n {this.state.formError.loyalitypnt !== \"\" ? (\r\n
{this.state.formError.loyalitypnt}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n\r\n
\r\n Start Date: \r\n \r\n {this.state.formError.StartDate !== \"\" ? (\r\n
{this.state.formError.StartDate}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n End Date: \r\n \r\n {this.state.formError.EndDate !== \"\" ? (\r\n
{this.state.formError.EndDate}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n\r\n
\r\n {\" \"}\r\n \r\n
\r\n\r\n {/*
\r\n {this.state.IsEdit === true ?\r\n
*/}\r\n
\r\n
Please Click Below Button To Submit*
\r\n\r\n \r\n
\r\n\r\n
\r\n Note: Fields marked as (*) are required\r\n
\r\n
\r\n {/*
*/}\r\n \r\n this.props.onHideShowIsActive(false)}\r\n >\r\n
\r\n \r\n \r\n Are you sure you want to{\" \"}\r\n {this.state.switchAction == true ? \"Active\" : \"InActive\"}?\r\n \r\n
\r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n SchememappingData: state.loyalityscheme.items,\r\n UserRoleData: state.role.rollddl,\r\n FromNo:\r\n state.loyalityscheme.Mappseries != null\r\n ? state.loyalityscheme.Mappseries[0].FromNo\r\n : \"\",\r\n //UserRoleData: state.role.rollddl,\r\n Mappseries: state.loyalityscheme.Mappseries,\r\n showDialogue: state.loyalityscheme.showDialogue,\r\n productData: state.product.prdctddl,\r\n showDialog: state.role.showDialog,\r\n loading: state.company.loding,\r\n showIsActiveDialog: state.loyalityscheme.showIsActiveDialog,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(loyalityschemeActions.getAll(obj));\r\n },\r\n getProductDDL: () => {\r\n dispatch(productMasterActions.getPrdctDDL());\r\n },\r\n GetAvailableseries: (data) => {\r\n dispatch(loyalityschemeActions.GetAvailableseries(data));\r\n },\r\n createScheme: (user) => dispatch(loyalityschemeActions.createScheme(user)),\r\n updateScheme: (user) => dispatch(loyalityschemeActions.updateScheme(user)),\r\n inActiveRow: (SchemeId, isActive) =>\r\n dispatch(loyalityschemeActions.inActiveRow(SchemeId, isActive)),\r\n onHideShow: (isbool) => dispatch(loyalityschemeActions.onHideShow(isbool)),\r\n onHideShoww: (isbool) =>\r\n dispatch(loyalityschemeActions.onHideShoww(isbool)),\r\n onHideShowIsActive: (isbool) =>\r\n dispatch(loyalityschemeActions.onHideShowIsActive(isbool)),\r\n getRoleDDL: (data) => dispatch(userMasterActions.getRoleDDL(data)),\r\n loadingData: (isLoding) =>\r\n dispatch(loyalityschemeActions.loadingData(isLoding)),\r\n };\r\n};\r\nexport default connect(mapStateToProps, mapDispatchToProps)(loyalityscheme);\r\n","import React, { Component } from \"react\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport { Button } from \"primereact/button\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport { connect } from \"react-redux\";\r\nimport { ToastContainer, toast } from \"react-toastify\";\r\nimport { GiftMasterActions } from \"../../actions/GiftMasterAction\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport tableRequest from \"../../models/tableRequest\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { MultiSelect } from 'primereact/multiselect';\r\n\r\nclass GiftMaster extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.statusBodyTemplate = this.statusBodyTemplate.bind(this);\r\n this.actionBodyTemplate = this.actionBodyTemplate.bind(this);\r\n this.openDialog = this.openDialog.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.resetForm = this.resetForm.bind(this);\r\n this.onHide = this.onHide.bind(this);\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n\r\n this.state = {\r\n selectedQuarter: \"\",\r\n ProductDDL:\"\",\r\n GiftName: \"\",\r\n Qty:0,\r\n CreateBy: \"\",\r\n IsAdd: true,\r\n IsEdit: true,\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0, \r\n switchAction: false,\r\n formHeading: \"Add Loyalty Master\",\r\n CreatedBy:0, \r\n formError: {\r\n Qty: \"\",\r\n },\r\n };\r\n }\r\n\r\n validateForm = () => {\r\n const { GiftName, Qty, ProductDDL, selectedQuarter } = this.state;\r\n const errors = {};\r\n let isValid = true;\r\n \r\n if (!GiftName) {\r\n errors.GiftName = \"Gift Name is required.\";\r\n isValid = false;\r\n }\r\n if (Qty <= 0) {\r\n errors.Qty = \"Quantity must be greater than 0.\";\r\n isValid = false;\r\n }\r\n if (!selectedQuarter) {\r\n errors.selectedQuarter = \"Please select a quarter.\";\r\n isValid = false;\r\n }\r\n if (ProductDDL.length === 0) {\r\n errors.ProductDDL = \"Please select at least one product.\";\r\n isValid = false;\r\n }\r\n \r\n this.setState({ formError: errors });\r\n return isValid;\r\n };\r\n \r\n componentDidMount() {\r\n const userPages = sessionStorage.getItem(\"assignedPermissionsForUser\");\r\n if (userPages) {\r\n const assignedPermissions = JSON.parse(userPages);\r\n const Curenturl = window.location.pathname;\r\n const nNumber = Curenturl.lastIndexOf(\"/\");\r\n const pageName = Curenturl.substring(nNumber + 1);\r\n\r\n const obj = assignedPermissions.assigned.filter((x) => x.ActionName === pageName);\r\n\r\n if (obj !== null && obj.length > 0) {\r\n if (!obj[0].IsEdit) this.setState({ IsEdit: false });\r\n if (!obj[0].IsAdd) this.setState({ IsAdd: false });\r\n }\r\n }\r\n\r\n var date = new Date();\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() + 7);\r\n this.tblResponse.FromDate = date.toLocaleDateString();\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.props.fetchApi(this.tblResponse);\r\n this.props.GetQuarterDDl(); // Fetch products and other data for dropdowns\r\n this.props.GetProductDDl();\r\n\r\n }\r\n\r\n handleChange = (e) => {\r\n //this.setState({ [e.target.name]: e.target.value });\r\n this.setState({ ProductDDL: e.value });\r\n}\r\n\r\n\r\nsubmitForm = (e) => {\r\n e.preventDefault();\r\n if (!this.validateForm()) {\r\n toast.error(\"Please fix validation errors.\");\r\n return;\r\n }\r\n const user = JSON.parse(sessionStorage.getItem(\"user\"));\r\n const userId = user ? user.UserId : null; \r\n\r\n // Convert the selected products array to a comma-separated string\r\n const selectedProductsString = this.state.ProductDDL.join(',');\r\n\r\n const formData = {\r\n QuarterName: this.state.selectedQuarter,\r\n GiftName: this.state.GiftName,\r\n Qty: this.state.Qty,\r\n ProductIds: selectedProductsString, // Add the selected products as a string\r\n CreatedBy: userId\r\n };\r\n\r\n // Dispatch the action with formData\r\n this.props.createScheme(formData);\r\nconsole.log(formData);\r\n // Reset the form after submission\r\n this.resetForm();\r\n setTimeout(() => {\r\n this.props.fetchApi(this.tblResponse);\r\n}, 2000);\r\n}\r\n\r\n resetForm() {\r\n this.setState({ \r\n selectedQuarter: \"\", \r\n GiftName: \"\",\r\n Qty: \"\",\r\n CreateBy: \"\",\r\n IsActive: true,\r\n formError: { \r\n Qty: \"\", \r\n },\r\n });\r\n }\r\n\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField = event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\";\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n onHide() {\r\n this.props.onHideShow(false);\r\n this.resetForm();\r\n }\r\n\r\n openDialog() {\r\n this.resetForm();\r\n this.props.onHideShow(true);\r\n this.setState({\r\n buttonLabel: \"Submit\",\r\n formHeading: \"Add Scheme\",\r\n isEditing: false,\r\n });\r\n } \r\n\r\n onRowSelect(event) {\r\n this.setState({\r\n FromNo: event.data.FromNo,\r\n ToNo: event.data.ToNo,\r\n Qty: event.data.ToNo - event.data.FromNo + 1,\r\n });\r\n this.onHidee();\r\n }\r\n\r\n statusBodyTemplate(rowData) {\r\n if (rowData) {\r\n // Status template code\r\n }\r\n }\r\n \r\n\r\n actionBodyTemplate(rowData) {\r\n const editMode = () => {\r\n this.props.onHideShow(true);\r\n this.setState({\r\n buttonLabel: \"Update\",\r\n formHeading: \"Update Scheme\", \r\n RoleId: rowData.RoleId, \r\n Qty: rowData.Qty,\r\n CreateBy: rowData.CreateBy,\r\n selectedQuarter: rowData.QuarterName,\r\n GiftName: rowData.GiftName,\r\n IsActive: rowData.IsActive, \r\n isEditing: true,\r\n });\r\n };\r\n \r\n // Edit\r\n if (rowData) {\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n\r\n
\r\n

Result Details

\r\n
\r\n \r\n \r\n {this.getHeader()}\r\n \r\n \r\n {this.getRowsData()}\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n )\r\n\r\n }\r\n\r\n}\r\n\r\n\r\nconst mapStateToProps = (state) => {\r\n ////console.log('state.SqlEditor.items', state.SqlEditor.items);\r\n return {\r\n data: state.SqlEditor.items\r\n }\r\n}\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n runScript: script => dispatch(SqlEditorActions.executeScript(script))\r\n\r\n }\r\n}\r\nexport default connect(mapStateToProps, mapDispatchToProps)(SqlEditor)\r\n\r\n","import React, { Component } from \"react\";\r\nimport Avtar from \"./../assets/images/avatar.jpg\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport { Button } from \"primereact/button\";\r\nimport { connect } from \"react-redux\";\r\nimport { loginActions, changePasswordActions, alertActions } from \"../actions\";\r\n\r\nclass Profile extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n UserName: \"\",\r\n Email: \"\",\r\n MobileNo: \"\",\r\n OldPassword: \"\",\r\n NewPassword: \"\",\r\n ConfirmPassword: \"\",\r\n UserId: 0,\r\n\r\n formError: {\r\n OldPassword: null,\r\n NewPassword: null,\r\n ConfirmPassword: \"\",\r\n },\r\n };\r\n this.handleChange = this.handleChange.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n }\r\n\r\n // submit form and create or update user\r\n submitForm(event) {\r\n event.preventDefault();\r\n\r\n let isfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key];\r\n let valid = this.validateForm(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n\r\n return isfrmvalid;\r\n });\r\n\r\n if (isfrmvalid) {\r\n let userCollector = JSON.parse(sessionStorage.getItem(\"UserData\"));\r\n\r\n if (isfrmvalid) {\r\n const formmData = {\r\n Email: this.state.UserName,\r\n Password: this.state.OldPassword,\r\n };\r\n this.props.checkUser(formmData);\r\n }\r\n\r\n const formData = {\r\n // UserName: this.state.UserName,\r\n OldPassword: this.state.OldPassword,\r\n NewPassword: this.state.NewPassword,\r\n UserId: userCollector,\r\n };\r\n this.props.changePassword(formData);\r\n }\r\n }\r\n\r\n //to validate form\r\n validateForm(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n switch (name) {\r\n case \"OldPassword\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.OldPassword = \"Please enter old password.\";\r\n } else if (value.length >= 1 && this.state.NewPassword.length >= 1) {\r\n errors.OldPassword = \"\";\r\n errors.NewPassword = \"\";\r\n if (value === this.state.NewPassword) {\r\n IsValid = false;\r\n errors.OldPassword =\r\n \"Old password and new password should not be same.\";\r\n }\r\n } else errors.OldPassword = \"\";\r\n break;\r\n\r\n case \"NewPassword\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.NewPassword = \"Please enter new password.\";\r\n } else if (!value.match(/^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d).{4,10}$/)) {\r\n IsValid = false;\r\n errors.NewPassword =\r\n \"Password should be minimum 4 characters long, 1 uppercase & 1 lowercase character with 1 number.\";\r\n } else if (value.length >= 1 && this.state.OldPassword.length >= 1) {\r\n errors.OldPassword = \"\";\r\n errors.NewPassword = \"\";\r\n if (value === this.state.OldPassword) {\r\n IsValid = false;\r\n errors.NewPassword =\r\n \"New password and old password should not be same.\";\r\n } else if (\r\n !value &&\r\n value.length >= 1 &&\r\n this.state.ConfirmPassword.length >= 1\r\n ) {\r\n errors.NewPassword = \"\";\r\n errors.ConfirmPassword = \"\";\r\n if (!(value === this.state.ConfirmPassword)) {\r\n IsValid = false;\r\n errors.NewPassword = \"password does not match\";\r\n } else errors.NewPassword = \"\";\r\n } else errors.NewPassword = \"\";\r\n break;\r\n } else errors.NewPassword = \"\";\r\n break;\r\n\r\n case \"ConfirmPassword\":\r\n if (!value && value.length < 1) {\r\n IsValid = false;\r\n errors.ConfirmPassword = \"Please enter confirm password.\";\r\n } else if (value.length >= 1 && this.state.NewPassword.length >= 1) {\r\n errors.NewPassword = \"\";\r\n errors.ConfirmPassword = \"\";\r\n if (value !== this.state.NewPassword) {\r\n IsValid = false;\r\n errors.ConfirmPassword =\r\n \"New password and Confirm password should be same.\";\r\n }\r\n } else if (\r\n !value &&\r\n value.length >= 1 &&\r\n this.state.NewPassword.length >= 1\r\n ) {\r\n errors.NewPassword = \"\";\r\n errors.ConfirmPassword = \"\";\r\n if (!(value === this.state.NewPassword)) {\r\n IsValid = false;\r\n errors.ConfirmPassword = \"Confirm password does not match\";\r\n } else errors.ConfirmPassword = \"\";\r\n } else errors.ConfirmPassword = \"\";\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n // call every change of form and validation part also\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n let errors = this.state.formError;\r\n\r\n this.validateForm(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n\r\n componentDidMount() {\r\n let userNameCollector = sessionStorage.getItem(\"UserNameData\");\r\n let userEmailCollector = sessionStorage.getItem(\"UserEmailData\");\r\n let userMobileCollector = sessionStorage.getItem(\"UserMobileData\");\r\n\r\n this.setState({\r\n UserName: userNameCollector,\r\n Email: userEmailCollector,\r\n MobileNo: userMobileCollector,\r\n });\r\n }\r\n render() {\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n

Change Password

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n {this.state.formError.OldPassword !== \"\" ? (\r\n
\r\n {this.state.formError.OldPassword}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n {this.state.formError.NewPassword !== \"\" ? (\r\n
\r\n {this.state.formError.NewPassword}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n {this.state.formError.ConfirmPassword !== \"\" ? (\r\n
\r\n {this.state.formError.ConfirmPassword}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n UserName: state.changePassword.items?.filter((x) => x.UserName !== null)[0]\r\n ?.UserName,\r\n Email: state.changePassword.items?.filter((x) => x.Email !== null)[0]\r\n ?.Email,\r\n MobileNo: state.changePassword.items?.filter((x) => x.MobileNo !== null)[0]\r\n .MobileNo,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchUserApi: () => {\r\n dispatch(changePasswordActions.fetchUserData());\r\n },\r\n\r\n checkUser: (login) => dispatch(loginActions.checkUser(login)),\r\n changePassword: (changePassword) =>\r\n dispatch(changePasswordActions.changePassword(changePassword)),\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(Profile);\r\n","import React, { Component } from 'react'\r\nimport { DataTable } from 'primereact/datatable';\r\nimport { Column } from 'primereact/column';\r\nimport { Button } from 'primereact/button';\r\nimport { InputText } from 'primereact/inputtext';\r\nimport TextField from '@material-ui/core/TextField';\r\nimport { connect } from 'react-redux';\r\nimport Moment from 'react-moment';\r\nimport { Dialog } from 'primereact/dialog';\r\nimport { ToastContainer, toast } from 'react-toastify';\r\nimport { issueNoActions, demappingActions } from '../../actions';\r\nimport tableRequest from '../../models/tableRequest.js';\r\n\r\nclass IssueNumber extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n // this.statusBodyTemplate = this.statusBodyTemplate.bind(this);\r\n // this.actionBodyTemplate = this.actionBodyTemplate.bind(this);\r\n this.exportCSV = this.exportCSV.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.resetForm = this.resetForm.bind(this);\r\n this.CreatedDtTemplate = this.CreatedDtTemplate.bind(this);\r\n this.UpdatedDtTemplate = this.UpdatedDtTemplate.bind(this);\r\n this.switchToggleConfirm = this.switchToggleConfirm.bind(this);\r\n this.onHide = this.onHide.bind(this);\r\n this.openDialog = this.openDialog.bind(this);\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.state = {\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n sortOrder: '',\r\n confirm: false,\r\n buttonLabel: 'Submit',\r\n formHeading: 'Add Issue No',\r\n displayModal: false,\r\n switchAction: false,\r\n showSnackbar: false,\r\n displayConfirmation: false,\r\n ProductName: '',\r\n SalesOrderNo: '',\r\n updateLoader: false,\r\n IssueId: 0,\r\n CreatedDt: null,\r\n UpdatedDt: null,\r\n ProductId: 0,\r\n ProductName: '',\r\n FromNo: '',\r\n ToNo: '',\r\n IssueQty: '',\r\n IsActive: true,\r\n formError: {\r\n ProductId: null,\r\n FromNo: '',\r\n ToNo: '',\r\n IssueQty: '',\r\n SalesOrderNo: '',\r\n CreatedDt: null,\r\n UpdatedDt: null,\r\n\r\n }\r\n };\r\n }\r\n //to trigger api on page call\r\n componentDidMount() {\r\n this.props.fetchApi(this.tblResponse);\r\n this.props.fetchFromNumberApi(this.tblResponse);\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.IssueData) {\r\n if (prevProps.IssueData !== this.props.IssueData) {\r\n // this.props.myProp has a different value\r\n if (this.props.IssueData) {\r\n var e = this.props.IssueData;\r\n this.setState({\r\n totalRecords: e[0].TotalRows\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords !== 0)\r\n this.setState({\r\n totalRecords: 0,\r\n first: 0\r\n });\r\n }\r\n }\r\n\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? 'ASC' : 'DESC';\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField = event.multiSortMeta[0].field === \"CreatedDate\" ? \"CreatedDate\" : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? 'DESC' : 'ASC';//this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n getDropValue() {\r\n let productId = '';\r\n this.props.ProductData.filter(x => {\r\n if (x.ProductId === this.state.ProductId) {\r\n productId = x.ProductId;\r\n }\r\n });\r\n\r\n return productId;\r\n }\r\n //to manage switch toggle confirm box\r\n switchToggleConfirm = (e) => {\r\n this.setState({ confirm: true, displayConfirmation: false })\r\n const formData = {\r\n MachineId: this.state.MachineId\r\n }\r\n this.props.inActiveRow(this.state.MachineId);\r\n }\r\n\r\n //to handle form\r\n handleChange(event) {\r\n let { name, value } = event.target;\r\n let errors = this.state.formError;\r\n // switch (name) {\r\n // case 'IsActive':\r\n // value = event.target.checked;\r\n // break;\r\n // default:\r\n // break;\r\n // }\r\n this.validateForm(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n //to validate form data\r\n validateForm(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n\r\n switch (name) {\r\n // case 'FrmNo':\r\n // if (value.length < 1) {\r\n // IsValid = false;\r\n // errors.FrmNo = \"Please enter FrmNo.\";\r\n // } else errors.FrmNo = ''\r\n // break;\r\n\r\n // case 'ToNo':\r\n // if (value.length < 1) {\r\n // IsValid = false;\r\n // errors.ToNo = \"Please enter ToNo.\";\r\n // } else errors.ToNo = ''\r\n // break;\r\n case 'IssueQty':\r\n if (value.trim().length < 1) {\r\n IsValid = false;\r\n errors.IssueQty = \"Please enter your quantity.\";\r\n }\r\n else {\r\n if (!value.match(/^[0-9]+$/)) {\r\n IsValid = false;\r\n errors.IssueQty = \"Please enter only number.\";\r\n this.setState({ IssueQty: 0 })\r\n } else {\r\n\r\n errors.ToNo = null;\r\n errors.IssueQty = null;\r\n errors.FromNo = null;\r\n const qty = value.trim() === '' ? 0 : parseInt(value.trim());\r\n const fromNumber = this.props.MaxFromNo.toString().trim() === '' ? 0 : parseInt(this.props.MaxFromNo.toString().trim());\r\n if (fromNumber >= 1 && qty >= 1) {\r\n const toNumber = (qty + fromNumber) - 1;\r\n if (toNumber >= 0) {\r\n this.setState({ ToNo: toNumber })\r\n } else {\r\n IsValid = false;\r\n errors.IssueQty = \"To number should be greater than or equal to from number.\";\r\n this.setState({ ToNo: 0 })\r\n }\r\n\r\n } else {\r\n // IsValid = false;\r\n // errors.ToNo = \"To number should be greater than from number.\";\r\n this.setState({ ToNo: 0 })\r\n }\r\n }\r\n }\r\n break;\r\n case 'SalesOrderNo':\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.SalesOrderNo = \"Please enter sales order no.\";\r\n } else errors.SalesOrderNo = ''\r\n break;\r\n\r\n\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n //to get current date\r\n getCurrentDateMMDDYYY() {\r\n var today = new Date();\r\n var dd = String(today.getDate()).padStart(2, '0');\r\n var mm = String(today.getMonth() + 1).padStart(2, '0');\r\n var yyyy = today.getFullYear();\r\n\r\n today = mm + '/' + dd + '/' + yyyy;\r\n return today;\r\n }\r\n //to submit form data\r\n submitForm(event) {\r\n event.preventDefault();\r\n let isfromvalid = true;\r\n let checkerror = this.state.formError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key]\r\n let valid = this.validateForm(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfromvalid });\r\n isfromvalid = false;\r\n }\r\n return isfromvalid;\r\n });\r\n\r\n if (isfromvalid) {\r\n const formData = {\r\n IssueId: this.state.IssueId,\r\n FromNo: this.props.MaxFromNo,\r\n ToNo: this.state.ToNo,\r\n IssueQty: this.state.IssueQty,\r\n SalesOrderNo: this.state.SalesOrderNo,\r\n CreatedDt: this.state.IssueId > 0 ? this.state.CreatedDt : this.getCurrentDateMMDDYYY(),\r\n UpdatedDt: this.state.IssueId > 0 ? this.getCurrentDateMMDDYYY() : null,\r\n TotalRows:this.state.totalRecords\r\n }\r\n\r\n if (this.state.IssueId == 0) {\r\n this.props.createIssueNo(formData);\r\n }\r\n }\r\n }\r\n\r\n //to reset form\r\n resetForm() {\r\n this.setState({\r\n IssueQty: '',\r\n IssueId: 0,\r\n FromNo: '',\r\n ToNo: '',\r\n IssueQty: '',\r\n SalesOrderNo: '',\r\n formError: {\r\n FromNo: '',\r\n ToNo: '',\r\n IssueQty: '',\r\n SalesOrderNo: ''\r\n }\r\n });\r\n\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key]) => {\r\n errors[key] = '';\r\n return errors[key];\r\n });\r\n }\r\n //to hide function\r\n onHide() {\r\n this.props.onHideShow(false);\r\n this.resetForm();\r\n }\r\n openDialog() {\r\n this.props.onHideShow(true);\r\n this.setState({ buttonLabel: 'Submit', formHeading: 'Add Issue No' })\r\n\r\n this.props.fetchFromNumberApi(this.tblResponse);\r\n }\r\n\r\n //to get format of date\r\n UpdatedDtTemplate(rowData) {\r\n if (rowData.UpdatedDt !== null) {\r\n return (\r\n {rowData.UpdatedDt}\r\n )\r\n }\r\n }\r\n //to get format of date\r\n CreatedDtTemplate(rowData) {\r\n if (rowData.CreatedDt !== null) {\r\n\r\n return (\r\n {rowData.CreatedDt}\r\n )\r\n }\r\n }\r\n\r\n //to disable checkbox\r\n // statusBodyTemplate(rowData) {\r\n // return (\r\n // \r\n // )\r\n // } \r\n //to edit rowdata\r\n\r\n //to export data\r\n exportCSV() {\r\n this.dt.exportCSV();\r\n }\r\n\r\n //to render html\r\n render() {\r\n const renderFooter = (name) => {\r\n return (\r\n
\r\n {/*
\r\n );\r\n }\r\n\r\n const header = (\r\n
\r\n
\r\n

Issue Number

\r\n
\r\n
\r\n \r\n \r\n this.searchFilter(e)} placeholder=\"Global Search\" />\r\n \r\n */}\r\n
\r\n
\r\n );\r\n\r\n return (\r\n\r\n
\r\n \r\n
\r\n { this.dt = el; }}>\r\n {/* */}\r\n \r\n \r\n \r\n \r\n\r\n\r\n {/* \r\n */}\r\n {/* */}\r\n {/* */}\r\n \r\n
\r\n \r\n
\r\n
\r\n {/*
\r\n \r\n Select Product\r\n \r\n \r\n {this.state.formError.ProductId !== '' ?\r\n
{this.state.formError.ProductId}
: ''}\r\n
*/}\r\n
\r\n \r\n {this.state.formError.SalesOrderNo !== '' ?\r\n
{this.state.formError.SalesOrderNo}
: ''}\r\n
\r\n
\r\n \r\n {/* {this.state.formError.FrmNo !== '' ?\r\n
{this.state.formError.FrmNo}
: ''} */}\r\n
\r\n
\r\n \r\n {/* {this.state.formError.ToNo !== '' ?\r\n
{this.state.formError.ToNo}
: ''} */}\r\n
\r\n
\r\n \r\n {this.state.formError.IssueQty !== '' ?\r\n
{this.state.formError.IssueQty}
: ''}\r\n
\r\n
\r\n
\r\n\r\n
\r\n Note: Fields marked as (*) are requiredpp\r\n
\r\n
\r\n
\r\n
\r\n\r\n this.setState({ displayConfirmation: false })}>\r\n
\r\n \r\n Are you sure you want to InActive?\r\n
\r\n
\r\n\r\n
\r\n\r\n )\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n IssueData: state.issueNo.items,\r\n MaxFromNo: state.demapping?.items?.FromNo,\r\n showDialog: state.issueNo.showDialog,\r\n loading: state.issueNo.loding\r\n }\r\n}\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(issueNoActions.getAll(obj))\r\n },\r\n fetchFromNumberApi: (obj) => {\r\n dispatch(demappingActions.getFromNumber(obj))\r\n },\r\n onHideShow: isbool => dispatch(issueNoActions.onHideShow(isbool)),\r\n createIssueNo: issueData => dispatch(issueNoActions.createIssueNo(issueData)),\r\n loadingData: (isLoding) => dispatch(issueNoActions.loadingData(isLoding))\r\n }\r\n}\r\nexport default connect(mapStateToProps, mapDispatchToProps)(IssueNumber)","import React, { Component } from \"react\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport { Button } from \"primereact/button\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\n\r\nimport { Toast } from \"primereact/toast\";\r\nimport { Calendar } from \"primereact/calendar\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport { connect } from \"react-redux\";\r\nimport Moment from \"react-moment\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { ToastContainer, toast } from \"react-toastify\";\r\nimport { mappingActions, productMasterActions } from \"../../actions\";\r\nimport tableRequest from \"../../models/tableRequest.js\";\r\n\r\nclass Mapping extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.actionBodyTemplate = this.actionBodyTemplate.bind(this);\r\n this.exportCSV = this.exportCSV.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.submitseries = this.submitseries.bind(this);\r\n this.resetForm = this.resetForm.bind(this);\r\n this.CreatedDateTemplate = this.CreatedDateTemplate.bind(this);\r\n this.UpdatedDateTemplate = this.UpdatedDateTemplate.bind(this);\r\n this.switchToggleConfirm = this.switchToggleConfirm.bind(this);\r\n this.onHide = this.onHide.bind(this);\r\n this.onHidee = this.onHidee.bind(this);\r\n this.openDialog = this.openDialog.bind(this);\r\n this.openDialogue = this.openDialogue.bind(this);\r\n this.resetFormHide = this.resetFormHide.bind(this);\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.onRowSelect = this.onRowSelect.bind(this);\r\n this.state = {\r\n IsAdd: true,\r\n IsClick: true,\r\n IsEdit: true,\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n sortOrder: \"\",\r\n confirm: false,\r\n MFGDate: new Date(),\r\n EXPDate: new Date(),\r\n buttonLabel: \"Submit\",\r\n buttonLabel1: \"Upload Certificate\",\r\n formHeading: \"Add Mapping\",\r\n displayModal: false,\r\n switchAction: false,\r\n showSnackbar: false,\r\n displayConfirmation: false,\r\n FileName: \"\",\r\n ProductNameDLL: [],\r\n MappingId: 0,\r\n CreatedDate: null,\r\n UpdatedDate: null,\r\n ProductId: \"\",\r\n ProductName: \"\",\r\n FromNo: 1,\r\n ToNo: \"\",\r\n Qty: \"\",\r\n BatchNo: \"\",\r\n IsActive: true,\r\n Issueseriesdata: [],\r\n selectedProduct: null,\r\n formError: {\r\n ProductId: \"\",\r\n FromNo: \"\",\r\n ToNo: \"\",\r\n Qty: \"\",\r\n },\r\n serieserror: {\r\n FromNo: \"\",\r\n ToNo: \"\",\r\n Qty: \"\",\r\n },\r\n };\r\n }\r\n //to trigger api on page call\r\n componentDidMount() {\r\n const userPages = sessionStorage.getItem(\"assignedPermissionsForUser\");\r\n if (userPages) {\r\n const assignedPermissions = JSON.parse(userPages);\r\n const Curenturl = window.location.pathname;\r\n const nNumber = Curenturl.lastIndexOf(\"/\");\r\n const pageName = Curenturl.substring(nNumber + 1);\r\n const obj = assignedPermissions.assigned.filter((x) => {\r\n return x.ActionName === pageName;\r\n });\r\n if (obj !== null && obj.length > 0) {\r\n if (!obj[0].IsEdit) {\r\n this.setState({\r\n IsEdit: false,\r\n });\r\n }\r\n if (!obj[0].IsAdd) {\r\n this.setState({\r\n IsAdd: false,\r\n });\r\n }\r\n }\r\n }\r\n var date = new Date();\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() + 7);\r\n this.tblResponse.FromDate = date.toLocaleDateString();\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.setState({\r\n MFGDate: new Date(),\r\n EXPDate: date,\r\n });\r\n this.setState({\r\n Issueseriesdata: this.props.Issueseries,\r\n });\r\n this.props.fetchApi(this.tblResponse);\r\n this.props.getPrdctDDL();\r\n this.props.getToNumber();\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.MappingData) {\r\n if (prevProps.MappingData !== this.props.MappingData) {\r\n // this.props.myProp has a different value\r\n if (this.props.MappingData) {\r\n var e = this.props.MappingData;\r\n this.setState({\r\n totalRecords: e[0].TotalRows,\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords !== 0)\r\n this.setState({\r\n totalRecords: 0,\r\n first: 0,\r\n });\r\n }\r\n if (prevProps.MaxFromNo !== this.props.MaxFromNo) {\r\n this.setState({\r\n FromNo: this.props.MaxFromNo,\r\n });\r\n }\r\n }\r\n\r\n // singleCheck() {\r\n // let obj = {};\r\n // const checkboxes = document.getElementsByName('childCheck');\r\n // for (var checkbox of checkboxes) {\r\n // if (checkbox.checked) {\r\n // obj[checkbox.value] = true;\r\n // } else {\r\n // obj[checkbox.value] = false;\r\n // }\r\n // }\r\n // return JSON.stringify(obj);\r\n // }\r\n\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField =\r\n event.multiSortMeta[0].field === \"CreatedDate\"\r\n ? \"CreatedDate\"\r\n : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\"; //this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n getDropValue() {\r\n let productId = \"\";\r\n this.props.ProductData.filter((x) => {\r\n if (x.ProductId === this.state.ProductId) {\r\n productId = x.ProductId;\r\n }\r\n });\r\n return productId;\r\n }\r\n //to manage switch toggle confirm box\r\n switchToggleConfirm = (e) => {\r\n this.setState({ confirm: true, displayConfirmation: false });\r\n const formData = {\r\n MachineId: this.state.MachineId,\r\n };\r\n this.props.inActiveRow(this.state.MachineId);\r\n };\r\n\r\n // Availableseries(event) {\r\n // //this.setState({ ProductId : event.target.value});\r\n // this.props.GetAvailableseries(event.target.value);\r\n\r\n // }\r\n\r\n //to handle form\r\n handleChange(event) {\r\n let { name, value } = event.target;\r\n let errors = this.state.formError;\r\n // switch (name) {\r\n // case 'IsActive':\r\n // value = event.target.checked;\r\n // break;\r\n // default:\r\n // break;\r\n // }\r\n this.validateForm(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n\r\n onFileChange = (event) => {\r\n // Update the state\r\n this.setState({ selectedFile: event.target.files[0] });\r\n };\r\n\r\n //to validate form data\r\n validateForm(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n\r\n switch (name) {\r\n case \"ProductId\":\r\n if (value == \"\" || value === 0) {\r\n IsValid = false;\r\n errors.ProductId = \"Please select Product\";\r\n } else errors.ProductId = null;\r\n break;\r\n case \"Qty\":\r\n if (!value === value) {\r\n IsValid = false;\r\n } else {\r\n if (value < 1) {\r\n IsValid = false;\r\n errors.Qty = \"Please enter your quantity.\";\r\n } else {\r\n if (!value.toString().match(/^[0-9]+$/.exec(value))) {\r\n IsValid = false;\r\n errors.Qty = \"Please enter only number.\";\r\n this.setState({ Qty: 0 });\r\n } else {\r\n errors.ToNo = null;\r\n errors.Qty = null;\r\n errors.FromNo = null;\r\n const qty =\r\n value.toString().trim() === \"\"\r\n ? 0\r\n : parseInt(value.toString().trim());\r\n const fromNumber =\r\n this.state.FromNo.toString().trim() === \"\"\r\n ? 0\r\n : parseInt(this.state.FromNo.toString().trim());\r\n if (fromNumber >= 1 && qty >= 1) {\r\n const toNumber = qty + fromNumber - 1;\r\n if (toNumber >= 0) {\r\n this.setState({ ToNo: toNumber });\r\n } else {\r\n IsValid = false;\r\n errors.Qty =\r\n \"To number should be greater than or equal to from number.\";\r\n this.setState({ ToNo: 0 });\r\n }\r\n } else {\r\n // IsValid = false;\r\n // errors.ToNo = \"To number should be greater than from number.\";\r\n this.setState({ ToNo: 0 });\r\n }\r\n }\r\n }\r\n }\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n //to get current date\r\n getCurrentDateMMDDYYY() {\r\n var today = new Date();\r\n var dd = String(today.getDate()).padStart(2, \"0\");\r\n var mm = String(today.getMonth() + 1).padStart(2, \"0\");\r\n var yyyy = today.getFullYear();\r\n\r\n today = mm + \"/\" + dd + \"/\" + yyyy;\r\n return today;\r\n }\r\n\r\n //to submit series data\r\n submitseries(event) {\r\n event.preventDefault();\r\n this.props.onHideShoww(false);\r\n }\r\n\r\n submitForm(event) {\r\n event.preventDefault();\r\n let isfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key];\r\n let valid = this.validateForm(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n return isfrmvalid;\r\n });\r\n\r\n if (isfrmvalid) {\r\n const ddlValu = this.getDropValue();\r\n\r\n const formData = {\r\n MappingId: this.state.MappingId,\r\n ProductId: this.state.ProductId,\r\n FromNo: this.state.FromNo,\r\n ToNo: this.state.ToNo,\r\n Qty: this.state.Qty,\r\n BatchNo: this.state.BatchNo,\r\n MFGDate: this.state.MFGDate.toLocaleDateString(),\r\n EXPDate: this.state.EXPDate.toLocaleDateString(),\r\n CreatedDate:\r\n this.state.MappingId > 0\r\n ? this.state.CreatedDatee\r\n : this.getCurrentDateMMDDYYY(),\r\n UpdatedDate:\r\n this.state.MappingId > 0 ? this.getCurrentDateMMDDYYY() : null,\r\n ProductName: ddlValu != null ? ddlValu : \"\",\r\n TotalRows: this.state.totalRecords,\r\n };\r\n\r\n if (this.state.MappingId == 0) {\r\n this.props.createMapping(formData);\r\n } else {\r\n this.props.updateMapping(formData);\r\n }\r\n }\r\n }\r\n\r\n //to reset form\r\n resetForm() {\r\n this.setState({\r\n ProductId: \"\",\r\n MappingId: 0,\r\n MFGDate: \"\",\r\n EXPDate: \"\",\r\n FromNo: \"\",\r\n ToNo: \"\",\r\n Qty: \"\",\r\n BatchNo: \"\",\r\n // Location: '',\r\n // DocURL: '',\r\n formError: {\r\n FromNo: \"\",\r\n ToNo: \"\",\r\n Qty: \"\",\r\n // BatchNo: '',\r\n // Location: '',\r\n // DocURL: '',\r\n ProductId: \"\",\r\n },\r\n });\r\n\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key]) => {\r\n errors[key] = \"\";\r\n return errors[key];\r\n });\r\n\r\n // const checkboxes = document.getElementsByName('childCheck');\r\n // for (var checkbox of checkboxes) {\r\n // checkbox.checked = false;\r\n // }\r\n }\r\n\r\n //to reset form on hide\r\n resetFormHide() {\r\n this.setState({\r\n ProductId: \"\",\r\n MappingId: 0,\r\n ToNo: \"\",\r\n Qty: \"\",\r\n BatchNo: \"\",\r\n // Location: '',\r\n // DocURL: '',\r\n formError: {\r\n FromNo: \"\",\r\n ToNo: \"\",\r\n Qty: \"\",\r\n // BatchNo: '',\r\n // Location: '',\r\n // DocURL: '',\r\n ProductId: \"\",\r\n },\r\n });\r\n\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key]) => {\r\n errors[key] = \"\";\r\n return errors[key];\r\n });\r\n }\r\n //to hide function\r\n onHide() {\r\n this.props.onHideShow(false);\r\n this.resetFormHide();\r\n }\r\n\r\n openDialog() {\r\n this.props.onHideShow(true);\r\n this.setState({ buttonLabel: \"Submit\", formHeading: \"Add Mapping\" });\r\n\r\n this.props.getToNumber();\r\n }\r\n\r\n onHidee() {\r\n this.props.onHideShoww(false);\r\n }\r\n\r\n openDialogue() {\r\n this.props.onHideShoww(true);\r\n this.setState({ buttonLabel: \"Submit\", formHeadingg: \"Available Series\" });\r\n this.props.GetAvailableseries(this.tblResponse);\r\n }\r\n\r\n onRowSelect(event) {\r\n //this.toast.show({ severity: 'info', summary: 'Series Selected', detail: `FromNo: ${event.data.FromNo}`, detail: `ToNo: ${event.data.ToNo}`, life: 3000 });\r\n this.setState({\r\n FromNo: event.data.FromNo,\r\n ToNo: event.data.ToNo,\r\n Qty: event.data.ToNo - event.data.FromNo + 1,\r\n });\r\n this.onHidee();\r\n }\r\n\r\n // onRowUnselect(event) {\r\n // this.toast.show({ severity: 'warn', summary: 'Series Unselected', detail: `FromNo: ${event.data.FromNo}`, detail: `ToNo: ${event.data.ToNo}`, life: 3000 });\r\n // }\r\n\r\n // toCapitalize(str) {\r\n // return str.charAt(0).toUpperCase() + str.slice(1);\r\n // }\r\n\r\n //to get format of date\r\n UpdatedDateTemplate(rowData) {\r\n if (rowData.UpdatedDate !== null) {\r\n return {rowData.UpdatedDate};\r\n }\r\n }\r\n //to get format of date\r\n CreatedDateTemplate(rowData) {\r\n if (rowData.CreatedDate !== null) {\r\n return {rowData.CreatedDate};\r\n }\r\n }\r\n\r\n // changevalue(event, field) {\r\n // var ischeck = event.currentTarget.checked;\r\n // var id = event.currentTarget.id;\r\n // setTimeout(() => {\r\n // this.checkCheckBox(ischeck, id);\r\n // }, 200);\r\n\r\n // this.ischeckAllCheck(field);\r\n // }\r\n\r\n // checkCheckBox(ischeck, id) {\r\n // document.getElementById(id).checked = ischeck;\r\n // }\r\n\r\n //to edit rowdata\r\n actionBodyTemplate(rowData, i) {\r\n const editMode = (e) => {\r\n this.setState({\r\n buttonLabel: \"Update\",\r\n formHeading: \"Update Mapping\",\r\n displayModal: true,\r\n ProductId: rowData.ProductId,\r\n MappingId: rowData.MappingId,\r\n FromNo: rowData.FromNo,\r\n ToNo: rowData.ToNo,\r\n Qty: rowData.Qty,\r\n BatchNo: rowData.BatchNo,\r\n MFGDate: new Date(rowData.MFGDate),\r\n EXPDate: new Date(rowData.EXPDate),\r\n // Location: rowData.Location,\r\n // DocURL: rowData.DocURL,\r\n CreatedDate: rowData.CreatedDate,\r\n });\r\n };\r\n return */}\r\n \r\n \r\n );\r\n\r\n return (\r\n
\r\n {/* */}\r\n\r\n \r\n
\r\n {\r\n this.dt = el;\r\n }}\r\n >\r\n {/* */}\r\n \r\n \r\n \r\n \r\n {this.state.IsAdd === true ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n
\r\n \r\n
\r\n
\r\n {/*
\r\n \r\n Select Product\r\n \r\n \r\n {this.state.formError.ProductId !== '' ?\r\n
{this.state.formError.ProductId}
: ''}\r\n
*/}\r\n\r\n
\r\n \r\n {this.state.formError.FromNo !== \"\" ? (\r\n
{this.state.formError.FromNo}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n {this.state.formError.ToNo !== \"\" ? (\r\n
{this.state.formError.ToNo}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n {this.state.formError.Qty !== \"\" ? (\r\n
{this.state.formError.Qty}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n\r\n
\r\n {this.state.IsAdd === true ? (\r\n
\r\n
\r\n Note: Fields marked as (*) are required\r\n
\r\n
\r\n
\r\n \r\n\r\n this.setState({ displayConfirmation: false })}\r\n >\r\n
\r\n \r\n Are you sure you want to InActive?\r\n
\r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n MappingData: state.demapping.items,\r\n ProductData: state.product.items,\r\n showDialog: state.demapping.showDialog,\r\n loading: state.company.loding,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(demappingActions.getAll(obj));\r\n },\r\n fetchProductApi: () => {\r\n dispatch(productMasterActions.getProductName());\r\n },\r\n createDemapping: (machine) =>\r\n dispatch(demappingActions.createDemapping(machine)),\r\n onHideShow: (isbool) => dispatch(demappingActions.onHideShow(isbool)),\r\n loadingData: (isLoding) => dispatch(demappingActions.loadingData(isLoding)),\r\n };\r\n};\r\nexport default connect(mapStateToProps, mapDispatchToProps)(DeMapping);\r\n","import React, { Component } from \"react\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport { Button } from \"primereact/button\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport { connect } from \"react-redux\";\r\nimport Moment from \"react-moment\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { ToastContainer, toast } from \"react-toastify\";\r\nimport {\r\n damageActions,\r\n mappingActions,\r\n productMasterActions,\r\n} from \"../../actions\";\r\nimport tableRequest from \"../../models/tableRequest.js\";\r\n// import Loaders from '../../templates/Loaders';\r\nimport Switch from \"@material-ui/core/Switch\";\r\n\r\nclass Damage extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n // this.statusBodyTemplate = this.statusBodyTemplate.bind(this);\r\n this.actionBodyTemplate = this.actionBodyTemplate.bind(this);\r\n this.exportCSV = this.exportCSV.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.resetForm = this.resetForm.bind(this);\r\n this.CreatedDtTemplate = this.CreatedDtTemplate.bind(this);\r\n this.UpdatedDtTemplate = this.UpdatedDtTemplate.bind(this);\r\n this.switchToggleConfirm = this.switchToggleConfirm.bind(this);\r\n this.onHide = this.onHide.bind(this);\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n\r\n this.state = {\r\n IsAdd: true,\r\n IsEdit: true,\r\n confirm: false,\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n sortOrder: \"\",\r\n buttonLabel: \"Submit\",\r\n formHeading: \"Add Mapping\",\r\n displayModal: false,\r\n switchAction: false,\r\n showSnackbar: false,\r\n displayConfirmation: false,\r\n ProductName: \"\",\r\n updateLoader: false,\r\n MappingId: 0,\r\n CreatedDt: null,\r\n UpdatedDt: null,\r\n ProductId: 0,\r\n DamageId: 0,\r\n FromNo: \"\",\r\n ToNo: \"\",\r\n Qty: \"\",\r\n refrenceFromNo: 0,\r\n refrenceToNo: 0,\r\n Reason: \"\",\r\n IsActive: true,\r\n formError: {\r\n ProductName: \"\",\r\n FromNo: \"\",\r\n ToNo: \"\",\r\n Qty: \"\",\r\n Reason: \"\",\r\n CreatedDt: null,\r\n UpdatedDt: null,\r\n },\r\n };\r\n }\r\n //to trigger api on page call\r\n componentDidMount() {\r\n const userPages = sessionStorage.getItem(\"assignedPermissionsForUser\");\r\n if (userPages) {\r\n const assignedPermissions = JSON.parse(userPages);\r\n const Curenturl = window.location.pathname;\r\n const nNumber = Curenturl.lastIndexOf(\"/\");\r\n const pageName = Curenturl.substring(nNumber + 1);\r\n\r\n const obj = assignedPermissions.assigned.filter((x) => {\r\n return x.ActionName === pageName;\r\n });\r\n\r\n if (obj !== null && obj.length > 0) {\r\n if (!obj[0].IsEdit) {\r\n this.setState({\r\n IsEdit: false,\r\n });\r\n }\r\n if (!obj[0].IsAdd) {\r\n this.setState({\r\n IsAdd: false,\r\n });\r\n }\r\n }\r\n }\r\n this.props.fetchApi(this.tblResponse);\r\n this.setState({ updateLoader: true });\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.MappingData) {\r\n if (prevProps.MappingData !== this.props.MappingData) {\r\n // this.props.myProp has a different value\r\n if (this.props.MappingData) {\r\n var e = this.props.MappingData;\r\n this.setState({\r\n totalRecords: e[0].TotalRows,\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords !== 0)\r\n this.setState({\r\n totalRecords: 0,\r\n first: 0,\r\n });\r\n }\r\n\r\n if (prevProps.MaxFromNo !== this.props.MaxFromNo) {\r\n this.setState({\r\n FromNo: this.props.MaxFromNo,\r\n });\r\n }\r\n }\r\n\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n }\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField =\r\n event.multiSortMeta[0].field === \"CreatedDate\"\r\n ? \"CreatedDate\"\r\n : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\"; //this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n getDropValue() {\r\n // let productId = '';\r\n // this.props.ProductData.filter(x => {\r\n // if (x.ProductId === this.state.ProductId) {\r\n // productId = x.ProductId;\r\n // }\r\n // });\r\n // return productId;\r\n }\r\n\r\n //to manage switch toggle confirm box\r\n switchToggleConfirm = (e) => {\r\n this.setState({ confirm: true, displayConfirmation: false });\r\n const formData = {\r\n MachineId: this.state.MachineId,\r\n };\r\n this.props.inActiveRow(this.state.MachineId);\r\n };\r\n\r\n //to handle form\r\n handleChange(event) {\r\n let { name, value } = event.target;\r\n let errors = this.state.formError;\r\n // switch (name) {\r\n // case 'IsActive':\r\n // value = event.target.checked;\r\n // break;\r\n // default:\r\n // break;\r\n // }\r\n this.validateForm(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n //to validate form data\r\n validateForm(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n\r\n switch (name) {\r\n case \"Reason\":\r\n if (!value) {\r\n IsValid = false;\r\n errors.Reason = \"Please enter Reason\";\r\n } else errors.Reason = \"\";\r\n break;\r\n case \"FromNo\":\r\n if (value < 1) {\r\n IsValid = false;\r\n errors.FromNo = \"Please enter your from number.\";\r\n } else {\r\n if (!value.toString().match(/^[0-9]+$/)) {\r\n IsValid = false;\r\n errors.FromNo = \"Please enter only number.\";\r\n this.setState({ Qty: 0 });\r\n } else {\r\n errors.FromNo = null;\r\n errors.ToNo = null;\r\n errors.Qty = null;\r\n const fromNumber =\r\n value.toString() === \"\" ? 0 : parseInt(value.toString());\r\n const toNumber =\r\n this.state.ToNo === \"\" ? 0 : parseInt(this.state.ToNo);\r\n if (\r\n fromNumber >= this.state.refrenceFromNo &&\r\n fromNumber <= this.state.refrenceToNo &&\r\n toNumber >= this.state.refrenceFromNo &&\r\n toNumber <= this.state.refrenceToNo\r\n ) {\r\n if (fromNumber <= toNumber) {\r\n const qty = toNumber - fromNumber + 1;\r\n if (qty >= 0) {\r\n this.setState({ Qty: qty });\r\n } else {\r\n IsValid = false;\r\n errors.FromNo = \"From No. should be less than to number.\";\r\n this.setState({ Qty: 0 });\r\n }\r\n } else {\r\n IsValid = false;\r\n errors.FromNo = \"From No. should be less than to number.\";\r\n this.setState({ Qty: 0 });\r\n }\r\n } else {\r\n IsValid = false;\r\n errors.FromNo =\r\n \"From No. should be less than To no. and numbers must exist between mapped series\";\r\n this.setState({ Qty: 0 });\r\n }\r\n }\r\n }\r\n break;\r\n case \"ToNo\":\r\n if (value < 1) {\r\n IsValid = false;\r\n errors.ToNo = \"Please enter your to number.\";\r\n } else {\r\n if (!value.toString().match(/^[0-9]+$/.exec(value))) {\r\n IsValid = false;\r\n errors.FromNo = \"Please enter only number.\";\r\n this.setState({ Qty: 0 });\r\n } else {\r\n errors.FromNo = null;\r\n errors.ToNo = null;\r\n errors.Qty = null;\r\n const toNumber =\r\n value.toString() === \"\" ? 0 : parseInt(value.toString());\r\n const fromNumber =\r\n this.state.FromNo === \"\" ? 0 : parseInt(this.state.FromNo);\r\n if (\r\n fromNumber >= this.state.refrenceFromNo &&\r\n fromNumber <= this.state.refrenceToNo &&\r\n toNumber >= this.state.refrenceFromNo &&\r\n toNumber <= this.state.refrenceToNo\r\n ) {\r\n if (fromNumber <= toNumber) {\r\n const qty = toNumber - fromNumber + 1;\r\n if (qty >= 0) {\r\n this.setState({ Qty: qty });\r\n } else {\r\n IsValid = false;\r\n errors.ToNo = \"To No. should be greater than from number.\";\r\n this.setState({ Qty: 0 });\r\n }\r\n } else {\r\n IsValid = false;\r\n errors.ToNo = \"To No. should be greater than from number.\";\r\n this.setState({ Qty: 0 });\r\n }\r\n } else {\r\n IsValid = false;\r\n errors.ToNo =\r\n \"To No. should be greater than from no. and numbers must exist between mapped series.\";\r\n this.setState({ Qty: 0 });\r\n }\r\n }\r\n }\r\n break;\r\n case \"Qty\":\r\n if (value < 1) {\r\n IsValid = false;\r\n errors.Qty = \"Please enter your quantity\";\r\n } else errors.Qty = null;\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n //to get current date\r\n getCurrentDateMMDDYYY() {\r\n var today = new Date();\r\n var dd = String(today.getDate()).padStart(2, \"0\");\r\n var mm = String(today.getMonth() + 1).padStart(2, \"0\");\r\n var yyyy = today.getFullYear();\r\n\r\n today = mm + \"/\" + dd + \"/\" + yyyy;\r\n return today;\r\n }\r\n //to submit form data\r\n submitForm(event) {\r\n event.preventDefault();\r\n let isfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key];\r\n let valid = this.validateForm(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n return isfrmvalid;\r\n });\r\n\r\n if (isfrmvalid) {\r\n const ddlValu = this.getDropValue();\r\n\r\n const formData = {\r\n FromNo: this.state.FromNo,\r\n ToNo: this.state.ToNo,\r\n Qty: this.state.Qty,\r\n Reason: this.state.Reason,\r\n CreatedBy: JSON.parse(sessionStorage.getItem(\"UserData\")),\r\n UpdatedBy: JSON.parse(sessionStorage.getItem(\"UserData\")),\r\n };\r\n this.setState({ updateLoader: false });\r\n\r\n if (this.state.MappingId == 0) {\r\n this.props.createDamage(formData);\r\n this.props.fetchApi();\r\n\r\n this.setState({\r\n updateLoader: true,\r\n });\r\n } else {\r\n this.props.createDamage(formData);\r\n this.props.fetchApi();\r\n\r\n this.setState({\r\n updateLoader: true,\r\n });\r\n }\r\n }\r\n }\r\n\r\n //to reset form\r\n resetForm() {\r\n this.setState({\r\n DamageId: 0,\r\n FromNo: \"\",\r\n ToNo: \"\",\r\n Qty: \"\",\r\n Reason: \"\",\r\n formError: {\r\n FromNo: \"\",\r\n ToNo: \"\",\r\n Qty: \"\",\r\n Reason: \"\",\r\n },\r\n });\r\n\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key]) => {\r\n errors[key] = \"\";\r\n return errors[key];\r\n });\r\n }\r\n //to hide function\r\n\r\n onHide() {\r\n this.resetForm();\r\n //this.setState({ displayModal: false })\r\n this.props.onHideShow(false);\r\n }\r\n openDialog() {\r\n this.props.onHideShow(true);\r\n this.setState({ buttonLabel: \"Damage\", formHeading: \"Damage\" });\r\n }\r\n\r\n //to get format of date\r\n UpdatedDtTemplate(rowData) {\r\n if (rowData.UpdatedDt !== null) {\r\n return {rowData.UpdatedDt};\r\n }\r\n }\r\n //to get format of date\r\n CreatedDtTemplate(rowData) {\r\n if (rowData.CreatedDt !== null) {\r\n return {rowData.CreatedDt};\r\n }\r\n }\r\n //to disable checkbox\r\n // statusBodyTemplate(rowData) {\r\n // return (\r\n // \r\n // )\r\n // }\r\n //to edit rowdata\r\n actionBodyTemplate(rowData) {\r\n const editMode = (e) => {\r\n this.setState({\r\n ProductId: rowData.ProductId,\r\n ProductName: rowData.ProductName,\r\n MappingId: rowData.MappingId,\r\n FromNo: rowData.FromNo,\r\n ToNo: rowData.ToNo,\r\n Qty: rowData.Qty,\r\n Reason: rowData.Reason,\r\n refrenceFromNo: rowData.FromNo,\r\n refrenceToNo: rowData.ToNo,\r\n });\r\n };\r\n return (\r\n {\r\n editMode(e);\r\n this.openDialog();\r\n }}\r\n />\r\n );\r\n }\r\n //to export data\r\n exportCSV() {\r\n this.dt.exportCSV();\r\n }\r\n\r\n //to render html\r\n render() {\r\n const renderFooter = (name) => {\r\n return (\r\n
\r\n {/*
\r\n );\r\n };\r\n\r\n const header = (\r\n
\r\n
\r\n

Damage

\r\n
\r\n
\r\n \r\n \r\n this.searchFilter(e)}\r\n placeholder=\"Global Search\"\r\n />\r\n \r\n {/* */}\r\n
\r\n
\r\n );\r\n\r\n return (\r\n
\r\n {/* */}\r\n\r\n \r\n
\r\n {\r\n this.dt = el;\r\n }}\r\n >\r\n {/* */}\r\n \r\n \r\n \r\n \r\n {this.state.IsAdd === true ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n
\r\n \r\n
\r\n
\r\n {/*
\r\n \r\n Select Product\r\n \r\n \r\n {this.state.formError.ProductId !== '' ?\r\n
{this.state.formError.ProductId}
: ''}\r\n
*/}\r\n\r\n
\r\n \r\n {this.state.formError.FromNo !== \"\" ? (\r\n
{this.state.formError.FromNo}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n {this.state.formError.ToNo !== \"\" ? (\r\n
{this.state.formError.ToNo}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n {this.state.formError.Qty !== \"\" ? (\r\n
{this.state.formError.Qty}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n {this.state.formError.Reason !== \"\" ? (\r\n
{this.state.formError.Reason}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n {this.state.IsAdd === true ? (\r\n
\r\n
\r\n Note: Fields marked as (*) are required\r\n
\r\n
\r\n
\r\n \r\n\r\n this.setState({ displayConfirmation: false })}\r\n >\r\n
\r\n \r\n Are you sure you want to InActive?\r\n
\r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n MappingData: state.damage.items,\r\n ProductData: state.product.items,\r\n showDialog: state.damage.showDialog,\r\n loading: state.company.loding,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(damageActions.getAll(obj));\r\n },\r\n fetchProductApi: () => {\r\n dispatch(productMasterActions.getProductName());\r\n },\r\n createDamage: (machine) => dispatch(damageActions.createDamage(machine)),\r\n updateDamage: (machine) => dispatch(damageActions.updateDamage(machine)),\r\n onHideShow: (isbool) => dispatch(damageActions.onHideShow(isbool)),\r\n loadingData: (isLoding) => dispatch(mappingActions.loadingData(isLoding)),\r\n };\r\n};\r\nexport default connect(mapStateToProps, mapDispatchToProps)(Damage);\r\n","import React, { Component } from \"react\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport { Button } from \"primereact/button\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport { FileUpload } from \"primereact/fileupload\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport { connect } from \"react-redux\";\r\nimport Moment from \"react-moment\";\r\nimport { ToastContainer, toast } from \"react-toastify\";\r\nimport { roleMasterActions, userMasterActions } from \"../../actions\";\r\nimport tableRequest from \"../../models/tableRequest\";\r\n// import { userTypeMasterActions } from '../../actions';\r\nimport Switch from \"@material-ui/core/Switch\";\r\nimport { Calendar } from \"primereact/calendar\";\r\nimport { CSVLink } from \"react-csv\";\r\nimport ExcelFile from \"react-export-excel/dist/ExcelPlugin/components/ExcelFile\";\r\nimport ExcelSheet from \"react-export-excel/dist/ExcelPlugin/elements/ExcelSheet\";\r\nimport ExcelColumn from \"react-export-excel/dist/ExcelPlugin/elements/ExcelColumn\";\r\n\r\nclass userMaster extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.csvLink = React.createRef();\r\n this.tblResponse = new tableRequest();\r\n this.statusBodyTemplate = this.statusBodyTemplate.bind(this);\r\n this.actionBodyTemplate = this.actionBodyTemplate.bind(this);\r\n this.switchToggleConfirm = this.switchToggleConfirm.bind(this);\r\n this.exportCSV = this.exportCSV.bind(this);\r\n this.exportCSVAll = this.exportCSVAll.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.handleWChange = this.handleWChange.bind(this);\r\n this.openDialog = this.openDialog.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.FilterData = this.FilterData.bind(this);\r\n this.CreatedDateTemplate = this.CreatedDateTemplate.bind(this);\r\n this.UpdatedDateTemplate = this.UpdatedDateTemplate.bind(this);\r\n this.resetForm = this.resetForm.bind(this);\r\n this.onHide = this.onHide.bind(this);\r\n this.getRoleList = this.getRoleList.bind(this);\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n const UserTypeData = [\r\n { value: 1, label: \"Web\" },\r\n { value: 3, label: \"Warehouse\" },\r\n ];\r\n\r\n this.state = {\r\n FromDate: new Date(),\r\n ToDate: new Date(),\r\n IsAdd: true,\r\n //headers: {},\r\n IsEdit: true,\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n sortOrder: \"\",\r\n buttonLabel: \"Submit\",\r\n switchAction: false,\r\n formHeading: \"Add User Master\",\r\n UserId: 0,\r\n RoleId: 0,\r\n UserTypeId: \"\",\r\n UserTypeData: [\r\n { value: 1, label: \"Web\" },\r\n { value: 3, label: \"Warehouse\" },\r\n ],\r\n UserName: \"\",\r\n Email: \"\",\r\n MobileNo: \"\",\r\n Password: \"\",\r\n ConfirmPassword: \"\",\r\n IsActive: true,\r\n CreatedDate: null,\r\n UpdatedDate: null,\r\n formError: {\r\n UserName: \"\",\r\n UserTypeId: \"\",\r\n Email: \"\",\r\n MobileNo: \"\",\r\n Password: \"\",\r\n ConfirmPassword: \"\",\r\n RoleId: \"\",\r\n WareHouseId: \"\",\r\n },\r\n };\r\n }\r\n componentDidMount() {\r\n var date = new Date();\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() - 30);\r\n this.tblResponse.FromDate = date.toLocaleDateString();\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.setState({\r\n FromDate: date,\r\n ToDate: new Date(),\r\n });\r\n const userPages = sessionStorage.getItem(\"assignedPermissionsForUser\");\r\n if (userPages) {\r\n const assignedPermissions = JSON.parse(userPages);\r\n const Curenturl = window.location.pathname;\r\n const nNumber = Curenturl.lastIndexOf(\"/\");\r\n const pageName = Curenturl.substring(nNumber + 1);\r\n\r\n const obj = assignedPermissions.assigned.filter((x) => {\r\n return x.ActionName === pageName;\r\n });\r\n\r\n if (obj !== null && obj.length > 0) {\r\n if (!obj[0].IsEdit) {\r\n this.setState({\r\n IsEdit: false,\r\n });\r\n }\r\n if (!obj[0].IsAdd) {\r\n this.setState({\r\n IsAdd: false,\r\n });\r\n } else {\r\n this.setState({\r\n IsAdd: true,\r\n });\r\n }\r\n }\r\n }\r\n this.props.getWDDL(this.tblResponse);\r\n this.props.fetchApi(this.tblResponse);\r\n\r\n // const userId = JSON.parse(sessionStorage.getItem(\"UserData\"));\r\n // this.props.getRoleDDL(userId);\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.UserData) {\r\n if (prevProps.UserData !== this.props.UserData) {\r\n // this.props.myProp has a different value\r\n if (this.props.UserData) {\r\n var e = this.props.UserData;\r\n this.setState({\r\n totalRecords: e[0].TotalRows,\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords !== 0)\r\n this.setState({\r\n totalRecords: 0,\r\n first: 0,\r\n });\r\n }\r\n }\r\n\r\n switchToggleConfirm = (e) => {\r\n this.props.inActiveRow(this.state.UserId, this.state.switchAction);\r\n };\r\n\r\n FilterData() {\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n handleChange(event) {\r\n let { name, value } = event.target;\r\n let errors = this.state.formError;\r\n switch (name) {\r\n case \"IsActive\":\r\n value = event.target.checked;\r\n break;\r\n default:\r\n break;\r\n }\r\n this.validateForm(value, name);\r\n\r\n if (name == \"RoleId\") {\r\n this.props.UserRoleData?.filter((x) => {\r\n if (x.value === value.toString()) {\r\n this.state.RoleName = x.label;\r\n }\r\n });\r\n }\r\n this.setState({ errors, [name]: value });\r\n }\r\n handleWChange(event) {\r\n let { name, value } = event.target;\r\n let errors = this.state.formError;\r\n switch (name) {\r\n case \"IsActive\":\r\n value = event.target.checked;\r\n break;\r\n default:\r\n break;\r\n }\r\n this.validateForm(value, name);\r\n if (name == \"WareHouseId\") {\r\n this.props.UserWData?.filter((x) => {\r\n if (x.value === value.toString()) {\r\n this.state.WName = x.label;\r\n }\r\n });\r\n }\r\n this.setState({ errors, [name]: value });\r\n }\r\n handleChangeDate(event) {\r\n const { name, value } = event.target;\r\n switch (name) {\r\n case \"FromDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n // this.refs.Messchild.showError(\"Please select from date.\");\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select from date.\",\r\n life: 3000,\r\n });\r\n\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (value instanceof Date && this.state.ToDate instanceof Date) {\r\n const startDate = value;\r\n const endDate = this.state.ToDate;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"From date must be less than to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"From date must be less than to date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n case \"ToDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please select to date.\");\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (\r\n value instanceof Date &&\r\n this.state.FromDate instanceof Date\r\n ) {\r\n const startDate = this.state.FromDate;\r\n const endDate = value;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"To date must be greater than from date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"To date must be greater than from date.\");\r\n return;\r\n }\r\n }\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n this.setState({ [name]: value });\r\n }\r\n\r\n getRoleList(event) {\r\n // this.getWList(event);\r\n this.setState({ UserTypeId: event.target.value });\r\n this.props.getRoleDDL(event.target.value);\r\n\r\n }\r\n getWList(event) {\r\n this.setState({ UserTypeId: event.target.value });\r\n this.props.getWDDL(event.target.value);\r\n }\r\n\r\n UpdatedDateTemplate(rowData) {\r\n if (rowData.UpdatedDate !== null) {\r\n return {rowData.UpdatedDate};\r\n }\r\n }\r\n\r\n CreatedDateTemplate(rowData) {\r\n if (rowData.UpdatedDate !== null) {\r\n return {rowData.CreatedDate};\r\n }\r\n }\r\n validateForm(value, name) {\r\n let errors = { ...this.state.formError }; // Make a copy of formError\r\n let IsValid = true;\r\n\r\n if (this.state.UserTypeId === 3) {\r\n switch (name) {\r\n case \"UserName\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.UserName = \"Please enter username.\";\r\n } else {\r\n errors.UserName = \"\";\r\n }\r\n break;\r\n case \"UserTypeId\":\r\n if (!value) {\r\n IsValid = false;\r\n errors.UserTypeId = \"Please select user type.\";\r\n } else {\r\n errors.UserTypeId = \"\";\r\n }\r\n break;\r\n case \"RoleId\":\r\n if (!value) {\r\n IsValid = false;\r\n errors.RoleId = \"Please select user role.\";\r\n } else {\r\n errors.RoleId = \"\";\r\n }\r\n break;\r\n case \"WareHouseId\":\r\n if (!value) {\r\n IsValid = false;\r\n errors.WareHouseId = \"Please select Warehouse.\";\r\n } else {\r\n errors.WareHouseId = \"\";\r\n }\r\n break;\r\n case \"Email\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.Email = \"Please enter email.\";\r\n } else if (!value.match(/^\\w+([\\.-]?\\w+)*@\\w+([\\.-]?\\w+)*(\\.\\w{2,3})+$/)) {\r\n IsValid = false;\r\n errors.Email = \"Please enter valid email.\";\r\n } else {\r\n errors.Email = \"\";\r\n }\r\n break;\r\n case \"MobileNo\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.MobileNo = \"Please enter mobile number.\";\r\n } else if (!value.match(/^[6-9]\\d{9}$/)) {\r\n IsValid = false;\r\n errors.MobileNo = \"Please enter valid mobile number.\";\r\n } else {\r\n errors.MobileNo = \"\";\r\n }\r\n break;\r\n case \"Password\":\r\n if (!value || value.length < 4) {\r\n IsValid = false;\r\n errors.Password = \"Password should be minimum 4 characters long.\";\r\n } else {\r\n errors.Password = \"\";\r\n }\r\n break;\r\n case \"ConfirmPassword\":\r\n if (value !== this.state.Password) {\r\n IsValid = false;\r\n errors.ConfirmPassword = \"Passwords do not match.\";\r\n } else {\r\n errors.ConfirmPassword = \"\";\r\n }\r\n break;\r\n default:\r\n break;\r\n }\r\n } else {\r\n switch (name) {\r\n case \"UserName\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.UserName = \"Please enter username.\";\r\n } else {\r\n errors.UserName = \"\";\r\n }\r\n break;\r\n case \"UserTypeId\":\r\n if (!value) {\r\n IsValid = false;\r\n errors.UserTypeId = \"Please select user type.\";\r\n } else {\r\n errors.UserTypeId = \"\";\r\n }\r\n break;\r\n case \"RoleId\":\r\n if (!value) {\r\n IsValid = false;\r\n errors.RoleId = \"Please select user role.\";\r\n } else {\r\n errors.RoleId = \"\";\r\n }\r\n break;\r\n case \"Email\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.Email = \"Please enter email.\";\r\n } else if (!value.match(/^\\w+([\\.-]?\\w+)*@\\w+([\\.-]?\\w+)*(\\.\\w{2,3})+$/)) {\r\n IsValid = false;\r\n errors.Email = \"Please enter valid email.\";\r\n } else {\r\n errors.Email = \"\";\r\n }\r\n break;\r\n case \"MobileNo\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.MobileNo = \"Please enter mobile number.\";\r\n } else if (!value.match(/^[6-9]\\d{9}$/)) {\r\n IsValid = false;\r\n errors.MobileNo = \"Please enter valid mobile number.\";\r\n } else {\r\n errors.MobileNo = \"\";\r\n }\r\n break;\r\n case \"Password\":\r\n if (!value || value.length < 4) {\r\n IsValid = false;\r\n errors.Password = \"Password should be minimum 4 characters long.\";\r\n } else {\r\n errors.Password = \"\";\r\n }\r\n break;\r\n case \"ConfirmPassword\":\r\n if (value !== this.state.Password) {\r\n IsValid = false;\r\n errors.ConfirmPassword = \"Passwords do not match.\";\r\n } else {\r\n errors.ConfirmPassword = \"\";\r\n }\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n // Update state with new errors\r\n this.setState({ formError: errors });\r\n return IsValid;\r\n }\r\n\r\n\r\n getDropValueOfRole() {\r\n let roleName = \"\";\r\n this.props.UserRoleData?.filter((x) => {\r\n if (x.value === this.state.RoleId.toString()) {\r\n roleName = x.label;\r\n }\r\n });\r\n\r\n return roleName;\r\n }\r\n getDropValueOfW() {\r\n let WName = \"\";\r\n this.props.UserWData?.filter((x) => {\r\n if (x.value === this.state.WareHouseId.toString()) {\r\n WName = x.label;\r\n }\r\n });\r\n\r\n return WName;\r\n }\r\n\r\n getDropValueOfUserType() {\r\n let usertype = \"\";\r\n this.state.userTypeData.filter((x) => {\r\n if (x.value === this.state.userTypeId) {\r\n usertype = x.label;\r\n }\r\n });\r\n\r\n return usertype;\r\n }\r\n\r\n submitForm(event) {\r\n event.preventDefault();\r\n let isfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key];\r\n let valid = this.validateForm(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n return isfrmvalid;\r\n });\r\n\r\n if (isfrmvalid) {\r\n const ddlValuRole = this.getDropValueOfRole();\r\n const formData = {\r\n UserId: this.state.UserId,\r\n UserType: this.state.UserTypeId,\r\n RoleId: this.state.RoleId,\r\n WareHouseId: this.state.WareHouseId,\r\n UserName: this.state.UserName,\r\n Email: this.state.Email,\r\n MobileNo: this.state.MobileNo,\r\n Password: this.state.Password,\r\n IsActive: this.state.IsActive,\r\n CreatedDate:\r\n this.state.UserId > 0\r\n ? this.state.CreatedDate\r\n : this.getCurrentDateMMDDYYY(),\r\n UpdatedDate: this.state.UserId > 0 ? this.getCurrentDateMMDDYYY() : null,\r\n RoleName: ddlValuRole != null ? ddlValuRole : \"\",\r\n TotalRows: this.state.totalRecords,\r\n isApproved: true,\r\n isDeleted: false,\r\n };\r\n if (formData.UserId > 0) {\r\n this.props.updateUser(formData);\r\n if (\r\n formData.UserId === JSON.parse(sessionStorage.getItem(\"UserData\"))\r\n ) {\r\n setTimeout(() => {\r\n sessionStorage.removeItem(\"LoggedInUser\");\r\n window.location = \"/login\";\r\n }, 2000);\r\n }\r\n } else {\r\n this.props.createUser(formData);\r\n }\r\n\r\n if (!this.props.showDialog) {\r\n this.resetForm();\r\n }\r\n }\r\n }\r\n\r\n // getRoleDDL(event) {\r\n // this.props.getRoleDDL();\r\n // }\r\n resetForm() {\r\n this.setState({\r\n UserId: 0,\r\n UserTypeId: \"\",\r\n UserName: \"\",\r\n RoleId: \"\",\r\n WareHouseId: \"\",\r\n UserTypeId: \"\",\r\n Email: \"\",\r\n MobileNo: \"\",\r\n Password: \"\",\r\n ConfirmPassword: \"\",\r\n IsActive: true,\r\n UserTypeData: [\r\n { value: 1, label: \"Web\" },\r\n { value: 3, label: \"Warehouse\" },\r\n ],\r\n formError: {\r\n UserName: \"\",\r\n UserTypeId: \"\",\r\n Email: \"\",\r\n MobileNo: \"\",\r\n Password: \"\",\r\n ConfirmPassword: \"\",\r\n },\r\n });\r\n\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key]) => {\r\n errors[key] = \"\";\r\n return errors[key];\r\n });\r\n }\r\n\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField =\r\n event.multiSortMeta[0].field === \"CreatedDate\"\r\n ? \"CreatedDate\"\r\n : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\"; //this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n onHide() {\r\n this.props.onHideShow(false);\r\n this.resetForm();\r\n }\r\n openDialog() {\r\n this.props.onHideShow(true);\r\n this.setState({ buttonLabel: \"Submit\", formHeading: \"Add User\" });\r\n }\r\n statusBodyTemplate(rowData) {\r\n if (rowData) {\r\n return (\r\n \r\n );\r\n }\r\n }\r\n getCurrentDateMMDDYYY() {\r\n var today = new Date();\r\n var dd = String(today.getDate()).padStart(2, \"0\");\r\n var mm = String(today.getMonth() + 1).padStart(2, \"0\");\r\n var yyyy = today.getFullYear();\r\n\r\n today = mm + \"/\" + dd + \"/\" + yyyy;\r\n return today;\r\n }\r\n actionBodyTemplate(rowData) {\r\n\r\n const editMode = (e) => {\r\n this.props.getRoleDDL(rowData.UserType);\r\n this.props.onHideShow(true);\r\n debugger\r\n this.setState({\r\n buttonLabel: \"Update\",\r\n formHeading: \"Update User\",\r\n UserId: rowData.UserId == null ? 0 : rowData.UserId,\r\n UserName: rowData.UserName,\r\n Email: rowData.Email,\r\n MobileNo: rowData.MobileNo,\r\n RoleId: rowData.RoleId,\r\n WareHouseId: rowData.WareHouseId,\r\n IsActive: rowData.IsActive,\r\n Password: rowData.Password,\r\n ConfirmPassword: rowData.Password,\r\n CreatedDate: rowData.CreatedDate,\r\n UserTypeData: [\r\n { value: 1, label: \"Web\" },\r\n { value: 2, label: \"Mobile\" },\r\n { value: 3, label: \"Warehouse\" },\r\n ],\r\n UserTypeId: rowData.UserType\r\n });\r\n };\r\n const switchHandleChange = (e) => {\r\n this.setState({\r\n switchAction: !rowData.IsActive,\r\n UserId: rowData.UserId,\r\n });\r\n this.props.onHideShowIsActive(true);\r\n };\r\n\r\n if (rowData) {\r\n return (\r\n <>\r\n {this.state.IsEdit === true && rowData.RoleId !== 4 ? (\r\n
\r\n \r\n \r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n \r\n );\r\n }\r\n }\r\n\r\n exportCSV() {\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n this.tblResponse.First = -1;\r\n this.tblResponse.PageSize = -1;\r\n this.props.exportData(this.tblResponse);\r\n setTimeout(() => {\r\n this.csvLink.current.element.click();\r\n }, 3000);\r\n }\r\n exportCSVAll() {\r\n this.tblResponse.FromDate = \"2022-01-01\";\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.tblResponse.First = -1;\r\n this.tblResponse.PageSize = -1;\r\n this.props.exportData(this.tblResponse);\r\n setTimeout(() => {\r\n this.csvLink.current.element.click();\r\n }, 3000);\r\n }\r\n\r\n render() {\r\n const renderFooter = (name) => {\r\n return (\r\n
\r\n this.props.onHideShowIsActive(false)}\r\n className=\"p-button-text\"\r\n />\r\n \r\n
\r\n );\r\n };\r\n // const header = (\r\n\r\n // );\r\n\r\n return (\r\n
\r\n \r\n
\r\n
\r\n
User Master
\r\n
\r\n
\r\n
\r\n \r\n \r\n this.searchFilter(e)}\r\n placeholder=\"Global Search\"\r\n />\r\n \r\n {this.state.IsAdd === true ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n Submit\r\n \r\n
\r\n
\r\n \r\n Export\r\n \r\n \r\n Export All\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n {\r\n this.dt = el;\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n {/* */}\r\n\r\n {/* */}\r\n {this.state.IsEdit === true ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n {this.state.formError.UserName !== \"\" ? (\r\n
{this.state.formError.UserName}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n \r\n Select User Type*\r\n \r\n \r\n \r\n None\r\n \r\n {this.state.UserTypeData.map((key) => (\r\n {key.label}\r\n ))}\r\n \r\n \r\n {this.state.formError.UserTypeId !== \"\" ? (\r\n
{this.state.formError.UserTypeId}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n \r\n Select User Role*\r\n \r\n \r\n \r\n None\r\n \r\n {this.props.UserRoleData == (undefined || null)\r\n ? null\r\n : this.props.UserRoleData.map((key) => (\r\n {key.label}\r\n ))}\r\n \r\n \r\n {this.state.formError.RoleId !== \"\" ? (\r\n
{this.state.formError.RoleId}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n {this.state.UserTypeId === 3 ? (\r\n <>\r\n
\r\n \r\n \r\n Select Warehouse*\r\n \r\n \r\n \r\n None\r\n \r\n {this.props.UserWData == (undefined || null)\r\n ? null\r\n : this.props.UserWData.map((key) => (\r\n {key.label}\r\n ))}\r\n \r\n \r\n {this.state.formError.WareHouseId !== \"\" ? (\r\n
{this.state.formError.WareHouseId}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n \r\n ) : null}\r\n
\r\n \r\n {this.state.formError.Email !== \"\" ? (\r\n
{this.state.formError.Email}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n {/*
\r\n \r\n {this.state.formError.MobileNo !== '' ?\r\n
{this.state.formError.MobileNo}
: ''}\r\n
*/}\r\n
\r\n \r\n {this.state.formError.MobileNo !== \"\" ? (\r\n
{this.state.formError.MobileNo}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n {this.state.formError.Password !== \"\" ? (\r\n
{this.state.formError.Password}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n {this.state.formError.ConfirmPassword !== \"\" ? (\r\n
\r\n {this.state.formError.ConfirmPassword}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n {\" \"}\r\n \r\n
\r\n\r\n
\r\n {this.state.IsEdit === true ? (\r\n
\r\n
\r\n Note: Fields marked as (*) are required\r\n
\r\n
\r\n
\r\n \r\n this.props.onHideShowIsActive(false)}\r\n >\r\n
\r\n \r\n \r\n Are you sure you want to{\" \"}\r\n {this.state.switchAction == true ? \"Active\" : \"InActive\"}?\r\n \r\n
\r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n UserData: state.user.items,\r\n UserRoleData: state.role.rollddl,\r\n UserWData: state.user.Wdd2,\r\n showDialog: state.role.showDialog,\r\n loading: state.company.loding,\r\n showIsActiveDialog: state.user.showIsActiveDialog,\r\n List:\r\n state.user.exportitems == (null || undefined)\r\n ? []\r\n : state.user.exportitems,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(userMasterActions.getAll(obj));\r\n },\r\n createUser: (user) => dispatch(userMasterActions.createUser(user)),\r\n updateUser: (user) => dispatch(userMasterActions.updateUser(user)),\r\n inActiveRow: (user, isActive) =>\r\n dispatch(userMasterActions.inActiveRow(user, isActive)),\r\n onHideShow: (isbool) => dispatch(userMasterActions.onHideShow(isbool)),\r\n onHideShowIsActive: (isbool) =>\r\n dispatch(userMasterActions.onHideShowIsActive(isbool)),\r\n getRoleDDL: (data) => dispatch(userMasterActions.getRoleDDL(data)),\r\n getWDDL: (data) => dispatch(userMasterActions.getWDDL(data)),\r\n loadingData: (isLoding) =>\r\n dispatch(userMasterActions.loadingData(isLoding)),\r\n exportData: (obj) => {\r\n dispatch(userMasterActions.exportData(obj));\r\n },\r\n };\r\n};\r\nexport default connect(mapStateToProps, mapDispatchToProps)(userMaster);\r\n","import React, { Component } from \"react\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport { Calendar } from \"primereact/calendar\";\r\nimport { alertActions, verificationLogActions } from \"../../actions\";\r\nimport { connect } from \"react-redux\";\r\nimport tableRequest from \"../../models/tableRequest.js\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport CsvDownloader from \"react-csv-downloader\";\r\nimport { CSVLink } from \"react-csv\";\r\n\r\nclass VerificationLog extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.FilterData = this.FilterData.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.state = {\r\n loading: false,\r\n FromDate: new Date(),\r\n ToDate: new Date(),\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n visible: false,\r\n sortOrder: \"\",\r\n datalist: [],\r\n };\r\n }\r\n componentDidMount() {\r\n var date = new Date();\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() - 7);\r\n this.tblResponse.FromDate = date.toLocaleDateString();\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.setState({\r\n FromDate: date,\r\n ToDate: new Date(),\r\n });\r\n this.props.fetchApi(this.tblResponse);\r\n this.props.exportingData(this.tblResponse);\r\n }\r\n\r\n onChange = (date) => this.setState({ FromDate: \"\", ToDate: \"\" });\r\n\r\n // GetVerification()\r\n // {\r\n // let ToDt = new Date();\r\n // let FrmDt = new Date();\r\n // FrmDt.setDate(ToDt.getDate() - 7);\r\n\r\n // const myFmDt = this.getCurrentDateYYYYMMDD(FrmDt);\r\n // const myToDt = this.getCurrentDateYYYYMMDD(ToDt);\r\n\r\n // this.tblResponse.FromDate =this.state.FromDate;\r\n // this.tblResponse.ToDate = this.state.ToDate;\r\n // this.props.fetchApi(this.tblResponse);\r\n // }\r\n FilterData() {;\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n getCurrentDateYYYYMMDD(dt) {\r\n var dd = String(dt.getDate()).padStart(2, \"0\");\r\n var mm = String(dt.getMonth() + 1).padStart(2, \"0\");\r\n var yyyy = dt.getFullYear();\r\n\r\n dt = yyyy + \"/\" + mm + \"/\" + dd;\r\n return dt;\r\n }\r\n\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n switch (name) {\r\n case \"FromDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n // this.refs.Messchild.showError(\"Please select from date.\");\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select from date.\",\r\n life: 3000,\r\n });\r\n\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (value instanceof Date && this.state.ToDate instanceof Date) {\r\n const startDate = value;\r\n const endDate = this.state.ToDate;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"From date must be less than to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"From date must be less than to date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n case \"ToDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please select to date.\");\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (\r\n value instanceof Date &&\r\n this.state.FromDate instanceof Date\r\n ) {\r\n const startDate = this.state.FromDate;\r\n const endDate = value;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"To date must be greater than from date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"To date must be greater than from date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n this.setState({ [name]: value });\r\n }\r\n\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n handleProductName(rowData) {\r\n if (rowData.ProductName == null) {\r\n let list;\r\n list = rowData.QrData;\r\n return list;\r\n } else {\r\n return rowData.ProductName;\r\n }\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField =\r\n event.multiSortMeta[0].field === \"CreatedDate\"\r\n ? \"CreatedDt\"\r\n : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\"; //this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.verificationList) {\r\n if (prevProps.verificationList !== this.props.verificationList) {\r\n // this.props.myProp has a different value\r\n if (this.props.verificationList) {\r\n var e = this.props.verificationList;\r\n this.setState({\r\n totalRecords: e[0].TotalRows,\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords !== 0)\r\n this.setState({\r\n totalRecords: 0,\r\n first: 0,\r\n });\r\n }\r\n }\r\n render() {\r\n return (\r\n
\r\n {/* */}\r\n (this.toast = el)} />\r\n
\r\n
\r\n

Verification Report

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n Submit\r\n \r\n  \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n {\r\n this.dt = el;\r\n }}\r\n >\r\n \r\n \r\n {/* */}\r\n {/* */}\r\n {/* */}\r\n \r\n \r\n {/* */}\r\n \r\n {/* */}\r\n \r\n \r\n \r\n {/* */}\r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n verificationList: state.verification.items,\r\n List:\r\n state.verification.exportitems == undefined\r\n ? []\r\n : state.verification.exportitems,\r\n loading: state.verification.loding,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(verificationLogActions.getAll(obj));\r\n },\r\n loadingData: (isLoding) =>\r\n dispatch(verificationLogActions.loadingData(isLoding)),\r\n exportingData: (obj) => dispatch(verificationLogActions.exportData(obj)),\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(VerificationLog);\r\n","import React, { Component } from \"react\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport { Calendar } from \"primereact/calendar\";\r\nimport { alertActions, mappingRptActions } from \"../../actions\";\r\nimport { connect } from \"react-redux\";\r\nimport tableRequest from \"../../models/tableRequest.js\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { CSVLink } from \"react-csv\";\r\n\r\nclass MappingRpt extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.FilterData = this.FilterData.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.state = {\r\n loading: false,\r\n FromDate: new Date(),\r\n ToDate: new Date(),\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n visible: false,\r\n sortOrder: \"\",\r\n datalist: [],\r\n };\r\n }\r\n componentDidMount() {\r\n var date = new Date();\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() - 7);\r\n this.tblResponse.FromDate = date.toLocaleDateString();\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.setState({\r\n FromDate: date,\r\n ToDate: new Date(),\r\n });\r\n this.props.fetchApi(this.tblResponse);\r\n this.props.exportingData(this.tblResponse);\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (prevProps.mappingList !== this.props.mappingList) {\r\n // this.props.myProp has a different value\r\n if (this.props.mappingList) {\r\n var e = this.props.mappingList;\r\n this.setState({\r\n totalRecords: e[0].TotalRows,\r\n });\r\n }\r\n }\r\n }\r\n\r\n GetMapping() {\r\n let ToDt = new Date();\r\n let FrmDt = new Date();\r\n FrmDt.setDate(ToDt.getDate() - 7);\r\n\r\n const myFmDt = this.getCurrentDateYYYYMMDD(FrmDt);\r\n const myToDt = this.getCurrentDateYYYYMMDD(ToDt);\r\n\r\n this.tblResponse.FromDate = myFmDt;\r\n this.tblResponse.ToDate = myToDt;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n FilterData() {\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n getCurrentDateYYYYMMDD(dt) {\r\n var dd = String(dt.getDate()).padStart(2, \"0\");\r\n var mm = String(dt.getMonth() + 1).padStart(2, \"0\");\r\n var yyyy = dt.getFullYear();\r\n\r\n dt = yyyy + \"/\" + mm + \"/\" + dd;\r\n return dt;\r\n }\r\n\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n switch (name) {\r\n case \"FromDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n // this.refs.Messchild.showError(\"Please select from date.\");\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select from date.\",\r\n life: 3000,\r\n });\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (value instanceof Date && this.state.ToDate instanceof Date) {\r\n const startDate = value;\r\n const endDate = this.state.ToDate;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"From date must be less than to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"From date must be less than to date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n case \"ToDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please select to date.\");\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (\r\n value instanceof Date &&\r\n this.state.FromDate instanceof Date\r\n ) {\r\n const startDate = this.state.FromDate;\r\n const endDate = value;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"To date must be greater than from date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"To date must be greater than from date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n this.setState({ [name]: value });\r\n }\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n // this.setState({\r\n // loading: true\r\n // });\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField =\r\n event.multiSortMeta[0].field === \"CreatedDate\"\r\n ? \"CreatedDate\"\r\n : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\"; //this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n (this.toast = el)} />\r\n
\r\n
\r\n

Mapping Report

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n Submit\r\n \r\n  \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n {\r\n this.dt = el;\r\n }}\r\n >\r\n \r\n \r\n {/* \r\n \r\n */}\r\n {/* */}\r\n {/* */}\r\n \r\n {/* */}\r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n mappingList: state.mappingRpt.items,\r\n List:\r\n state.mappingRpt.exportitems == undefined\r\n ? []\r\n : state.mappingRpt.exportitems,\r\n loading: state.verification.loding,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(mappingRptActions.getAll(obj));\r\n },\r\n loadingData: (isLoding) =>\r\n dispatch(mappingRptActions.loadingData(isLoding)),\r\n exportingData: (obj) => dispatch(mappingRptActions.exportData(obj)),\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(MappingRpt);\r\n","import React, { Component } from 'react'\r\nimport { DataTable } from 'primereact/datatable';\r\nimport { Column } from 'primereact/column';\r\nimport TextField from '@material-ui/core/TextField';\r\nimport { Calendar } from 'primereact/calendar';\r\nimport { alertActions, DemappingRptActions } from '../../actions/DemappingRptActions';\r\nimport { connect } from 'react-redux';\r\nimport tableRequest from '../../models/tableRequest.js';\r\nimport { Toast } from 'primereact/toast';\r\nimport { CSVLink } from \"react-csv\";\r\nimport { InputText } from 'primereact/inputtext';\r\n\r\nclass DemappingRpt extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.FilterData = this.FilterData.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.state = {\r\n loading: false,\r\n FromDate: new Date(),\r\n ToDate: new Date(),\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n visible: false,\r\n sortOrder: '',\r\n datalist: [],\r\n }\r\n }\r\n componentDidMount() {\r\n var date = new Date();\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() - 7);\r\n this.tblResponse.FromDate = date.toLocaleDateString();\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.setState({\r\n FromDate: date,\r\n ToDate: new Date()\r\n });\r\n this.props.fetchApi(this.tblResponse);\r\n this.props.exportingData(this.tblResponse);\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (prevProps.DemappingRptList !== this.props.DemappingRptList) {\r\n // this.props.myProp has a different value\r\n if (this.props.DemappingRptList) {\r\n var e = this.props.DemappingRptList;\r\n this.setState({\r\n totalRecords: e[0].TotalRows\r\n });\r\n }\r\n }\r\n }\r\n\r\n GetDemapping() {\r\n let ToDt = new Date();\r\n let FrmDt = new Date();\r\n FrmDt.setDate(ToDt.getDate() - 7);\r\n\r\n const myFmDt = this.getCurrentDateYYYYMMDD(FrmDt);\r\n const myToDt = this.getCurrentDateYYYYMMDD(ToDt);\r\n\r\n this.tblResponse.FromDate = myFmDt;\r\n this.tblResponse.ToDate = myToDt;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n FilterData() {\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n getCurrentDateYYYYMMDD(dt) {\r\n var dd = String(dt.getDate()).padStart(2, '0');\r\n var mm = String(dt.getMonth() + 1).padStart(2, '0');\r\n var yyyy = dt.getFullYear();\r\n\r\n dt = yyyy + '/' + mm + '/' + dd;\r\n return dt;\r\n }\r\n\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n switch (name) {\r\n case 'FromDate':\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n // this.refs.Messchild.showError(\"Please select from date.\");\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please select from date.', life: 3000 });\r\n\r\n return;\r\n }\r\n else if (!(value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please enter only date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n }\r\n else if ((value instanceof Date) && (this.state.ToDate instanceof Date)) {\r\n const startDate = value;\r\n const endDate = this.state.ToDate;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'From date must be less than to date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"From date must be less than to date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n case 'ToDate':\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please select to date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"Please select to date.\");\r\n return;\r\n }\r\n else if (!(value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please enter only date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n }\r\n else if ((value instanceof Date) && (this.state.FromDate instanceof Date)) {\r\n const startDate = this.state.FromDate;\r\n const endDate = value;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'To date must be greater than from date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"To date must be greater than from date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n this.setState({ [name]: value });\r\n }\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? 'ASC' : 'DESC';\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField = event.multiSortMeta[0].field === \"CreatedDate\" ? \"CreatedDate\" : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? 'DESC' : 'ASC';//this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n render() {\r\n\r\n return (\r\n
\r\n this.toast = el} />\r\n
\r\n
\r\n

Demapping Report

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n  \r\n \r\n
\r\n
\r\n \r\n
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n
\r\n
\r\n { this.dt = el; }}>\r\n {/* */}\r\n \r\n \r\n \r\n {/* */}\r\n {/* */}\r\n \r\n {/* */}\r\n \r\n
\r\n
\r\n )\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => { \r\n return {\r\n DemappingRptList: state.DemappingRpt.items,\r\n List: state.DemappingRpt.exportitems == undefined ? [] : state.DemappingRpt.exportitems,\r\n loading: state.verification.loding\r\n }\r\n}\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(DemappingRptActions.getAll(obj))\r\n },\r\n loadingData: (isLoding) => dispatch(DemappingRptActions.loadingData(isLoding)),\r\n exportingData: (obj) => dispatch(DemappingRptActions.exportData(obj))\r\n }\r\n}\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(DemappingRpt)\r\n","import React, { Component } from 'react'\r\nimport { DataTable } from 'primereact/datatable';\r\nimport { Column } from 'primereact/column';\r\nimport TextField from '@material-ui/core/TextField';\r\nimport { Calendar } from 'primereact/calendar';\r\nimport { alertActions, DamageRptActions } from '../../actions/DamageRptActions';\r\nimport { connect } from 'react-redux';\r\nimport tableRequest from '../../models/tableRequest.js';\r\nimport { Toast } from 'primereact/toast';\r\nimport { CSVLink } from \"react-csv\";\r\nimport { InputText } from 'primereact/inputtext';\r\n\r\nclass DamageRpt extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.FilterData = this.FilterData.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.state = {\r\n loading: false,\r\n FromDate: new Date(),\r\n ToDate: new Date(),\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n visible: false,\r\n sortOrder: '',\r\n datalist: [],\r\n }\r\n }\r\n componentDidMount() {\r\n var date = new Date();\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() - 7);\r\n this.tblResponse.FromDate = date.toLocaleDateString();\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.setState({\r\n FromDate: date,\r\n ToDate: new Date()\r\n });\r\n this.props.fetchApi(this.tblResponse);\r\n this.props.exportingData(this.tblResponse);\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (prevProps.DamageRptList !== this.props.DamageRptList) {\r\n // this.props.myProp has a different value\r\n if (this.props.DamageRptList) {\r\n var e = this.props.DamageRptList;\r\n this.setState({\r\n totalRecords: e[0].TotalRows\r\n });\r\n }\r\n }\r\n }\r\n\r\n GetDamage() {\r\n let ToDt = new Date();\r\n let FrmDt = new Date();\r\n FrmDt.setDate(ToDt.getDate() - 7);\r\n\r\n const myFmDt = this.getCurrentDateYYYYMMDD(FrmDt);\r\n const myToDt = this.getCurrentDateYYYYMMDD(ToDt);\r\n\r\n this.tblResponse.FromDate = myFmDt;\r\n this.tblResponse.ToDate = myToDt;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n FilterData() {\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n getCurrentDateYYYYMMDD(dt) {\r\n var dd = String(dt.getDate()).padStart(2, '0');\r\n var mm = String(dt.getMonth() + 1).padStart(2, '0');\r\n var yyyy = dt.getFullYear();\r\n\r\n dt = yyyy + '/' + mm + '/' + dd;\r\n return dt;\r\n }\r\n\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n switch (name) {\r\n case 'FromDate':\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n // this.refs.Messchild.showError(\"Please select from date.\");\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please select from date.', life: 3000 });\r\n\r\n return;\r\n }\r\n else if (!(value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please enter only date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n }\r\n else if ((value instanceof Date) && (this.state.ToDate instanceof Date)) {\r\n const startDate = value;\r\n const endDate = this.state.ToDate;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'From date must be less than to date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"From date must be less than to date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n case 'ToDate':\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please select to date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"Please select to date.\");\r\n return;\r\n }\r\n else if (!(value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please enter only date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n }\r\n else if ((value instanceof Date) && (this.state.FromDate instanceof Date)) {\r\n const startDate = this.state.FromDate;\r\n const endDate = value;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'To date must be greater than from date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"To date must be greater than from date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n this.setState({ [name]: value });\r\n }\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? 'ASC' : 'DESC';\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);;\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField = event.multiSortMeta[0].field === \"CreatedDate\" ? \"CreatedDate\" : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? 'DESC' : 'ASC';//this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n render() {\r\n\r\n return (\r\n
\r\n this.toast = el} />\r\n
\r\n
\r\n

Damage Report

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n  \r\n \r\n
\r\n
\r\n \r\n
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n
\r\n
\r\n { this.dt = el; }}>\r\n {/* */}\r\n \r\n \r\n \r\n {/* */}\r\n {/* */}\r\n \r\n {/* */}\r\n \r\n
\r\n
\r\n )\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n DamageRptList: state.DamageRpt.items,\r\n List: state.DamageRpt.exportitems == undefined ? [] : state.DamageRpt.exportitems,\r\n loading: state.verification.loding\r\n }\r\n}\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(DamageRptActions.getAll(obj))\r\n },\r\n loadingData: (isLoding) => dispatch(DamageRptActions.loadingData(isLoding)),\r\n exportingData: (obj) => dispatch(DamageRptActions.exportData(obj))\r\n }\r\n}\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(DamageRpt)\r\n","import React, { Component } from \"react\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport { Calendar } from \"primereact/calendar\";\r\nimport { alertActions, LoyaltySchemeRptActions } from \"../../actions\";\r\nimport { connect } from \"react-redux\";\r\nimport tableRequest from \"../../models/tableRequest.js\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { CSVLink } from \"react-csv\";\r\n\r\nclass LoyaltySchemeRpt extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.FilterData = this.FilterData.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.state = {\r\n loading: false,\r\n FromDate: new Date(),\r\n ToDate: new Date(),\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n visible: false,\r\n sortOrder: \"\",\r\n datalist: [],\r\n };\r\n }\r\n componentDidMount() {\r\n var date = new Date();\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() - 7);\r\n this.tblResponse.FromDate = date.toLocaleDateString();\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.setState({\r\n FromDate: date,\r\n ToDate: new Date(),\r\n });\r\n this.props.fetchApi(this.tblResponse);\r\n this.props.exportingData(this.tblResponse);\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (prevProps.LoyaltySchemeList !== this.props.LoyaltySchemeList) {\r\n // this.props.myProp has a different value\r\n if (this.props.LoyaltySchemeList) {\r\n var e = this.props.LoyaltySchemeList;\r\n this.setState({\r\n totalRecords: e[0].TotalRows,\r\n });\r\n }\r\n }\r\n }\r\n\r\n GetLoyaltyScheme() {\r\n let ToDt = new Date();\r\n let FrmDt = new Date();\r\n FrmDt.setDate(ToDt.getDate() - 7);\r\n\r\n const myFmDt = this.getCurrentDateYYYYMMDD(FrmDt);\r\n const myToDt = this.getCurrentDateYYYYMMDD(ToDt);\r\n\r\n this.tblResponse.FromDate = myFmDt;\r\n this.tblResponse.ToDate = myToDt;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n FilterData() { ;\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n getCurrentDateYYYYMMDD(dt) {\r\n var dd = String(dt.getDate()).padStart(2, \"0\");\r\n var mm = String(dt.getMonth() + 1).padStart(2, \"0\");\r\n var yyyy = dt.getFullYear();\r\n\r\n dt = yyyy + \"/\" + mm + \"/\" + dd;\r\n return dt;\r\n }\r\n\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n switch (name) {\r\n case \"FromDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n // this.refs.Messchild.showError(\"Please select from date.\");\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select from date.\",\r\n life: 3000,\r\n });\r\n\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (value instanceof Date && this.state.ToDate instanceof Date) {\r\n const startDate = value;\r\n const endDate = this.state.ToDate;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"From date must be less than to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"From date must be less than to date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n case \"ToDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please select to date.\");\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (\r\n value instanceof Date &&\r\n this.state.FromDate instanceof Date\r\n ) {\r\n const startDate = this.state.FromDate;\r\n const endDate = value;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"To date must be greater than from date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"To date must be greater than from date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n this.setState({ [name]: value });\r\n }\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n // this.setState({\r\n // loading: true\r\n // });\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField =\r\n event.multiSortMeta[0].field === \"CreatedDate\"\r\n ? \"CreatedDate\"\r\n : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\"; //this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n (this.toast = el)} />\r\n
\r\n
\r\n

Scheme Report

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n Submit\r\n \r\n  \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n {\r\n this.dt = el;\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* */}\r\n \r\n {/* */}\r\n {/* */}\r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n ////console.log('state.LoyaltySchemeRpt.items', state.LoyaltySchemeRpt.items);\r\n return {\r\n LoyaltySchemeList: state.LoyaltySchemeRpt.items,\r\n List:\r\n state.LoyaltySchemeRpt.exportitems == undefined\r\n ? []\r\n : state.LoyaltySchemeRpt.exportitems,\r\n loading: state.verification.loding,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(LoyaltySchemeRptActions.getAll(obj));\r\n },\r\n loadingData: (isLoding) =>\r\n dispatch(LoyaltySchemeRptActions.loadingData(isLoding)),\r\n exportingData: (obj) => dispatch(LoyaltySchemeRptActions.exportData(obj)),\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(LoyaltySchemeRpt);\r\n","import React, { Component } from \"react\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport { Calendar } from \"primereact/calendar\";\r\nimport { alertActions, FeedbackRptActions } from \"../../actions\";\r\nimport { connect } from \"react-redux\";\r\nimport tableRequest from \"../../models/tableRequest.js\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { CSVLink } from \"react-csv\";\r\n\r\nclass FeedbackRpt extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.FilterData = this.FilterData.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.state = {\r\n loading: false,\r\n FromDate: new Date(),\r\n ToDate: new Date(),\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n visible: false,\r\n sortOrder: \"\",\r\n datalist: [],\r\n };\r\n }\r\n componentDidMount() {\r\n var date = new Date();\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() - 7);\r\n this.tblResponse.FromDate = date.toLocaleDateString();\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.setState({\r\n FromDate: date,\r\n ToDate: new Date(),\r\n });\r\n this.props.fetchApi(this.tblResponse);\r\n this.props.exportingData(this.tblResponse);\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (prevProps.FeedbackList !== this.props.FeedbackList) {\r\n // this.props.myProp has a different value\r\n if (this.props.FeedbackList) {\r\n var e = this.props.FeedbackList;\r\n this.setState({\r\n totalRecords: e[0].TotalRows,\r\n });\r\n }\r\n }\r\n }\r\n\r\n GetFeedback() {\r\n let ToDt = new Date();\r\n let FrmDt = new Date();\r\n FrmDt.setDate(ToDt.getDate() - 7);\r\n\r\n const myFmDt = this.getCurrentDateYYYYMMDD(FrmDt);\r\n const myToDt = this.getCurrentDateYYYYMMDD(ToDt);\r\n\r\n this.tblResponse.FromDate = myFmDt;\r\n this.tblResponse.ToDate = myToDt;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n FilterData() {\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n getCurrentDateYYYYMMDD(dt) {\r\n var dd = String(dt.getDate()).padStart(2, \"0\");\r\n var mm = String(dt.getMonth() + 1).padStart(2, \"0\");\r\n var yyyy = dt.getFullYear();\r\n\r\n dt = yyyy + \"/\" + mm + \"/\" + dd;\r\n return dt;\r\n }\r\n\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n switch (name) {\r\n case \"FromDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n // this.refs.Messchild.showError(\"Please select from date.\");\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select from date.\",\r\n life: 3000,\r\n });\r\n\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (value instanceof Date && this.state.ToDate instanceof Date) {\r\n const startDate = value;\r\n const endDate = this.state.ToDate;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"From date must be less than to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"From date must be less than to date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n case \"ToDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please select to date.\");\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (\r\n value instanceof Date &&\r\n this.state.FromDate instanceof Date\r\n ) {\r\n const startDate = this.state.FromDate;\r\n const endDate = value;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"To date must be greater than from date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"To date must be greater than from date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n this.setState({ [name]: value });\r\n }\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n // this.setState({\r\n // loading: true\r\n // });\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField =\r\n event.multiSortMeta[0].field === \"CreatedDate\"\r\n ? \"CreatedDt\"\r\n : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\"; //this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n (this.toast = el)} />\r\n
\r\n
\r\n

Feedback Report

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n Submit\r\n \r\n  \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n {\r\n this.dt = el;\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n FeedbackList: state.FeedbackRpt.items,\r\n List:\r\n state.FeedbackRpt.exportitems == undefined\r\n ? []\r\n : state.FeedbackRpt.exportitems,\r\n loading: state.verification.loding,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(FeedbackRptActions.getAll(obj));\r\n },\r\n loadingData: (isLoding) =>\r\n dispatch(FeedbackRptActions.loadingData(isLoding)),\r\n exportingData: (obj) => dispatch(FeedbackRptActions.exportData(obj)),\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(FeedbackRpt);\r\n","import React, { Component } from \"react\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport { Button } from \"primereact/button\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport { connect } from \"react-redux\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { ToastContainer, toast } from \"react-toastify\";\r\nimport { productConfigActions, productMasterActions } from \"../../actions\";\r\nimport Moment from \"react-moment\";\r\nimport { isThisISOWeek } from \"date-fns\";\r\n\r\nclass ProductConfiguration extends Component {\r\n constructor(props) {\r\n super(props); \r\n this.photoBodyTemplate = this.photoBodyTemplate.bind(this);\r\n this.statusBodyTemplate = this.statusBodyTemplate.bind(this);\r\n this.actionBodyTemplate = this.actionBodyTemplate.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.resetForm = this.resetForm.bind(this);\r\n this.CreatedDtTemplate = this.CreatedDtTemplate.bind(this);\r\n this.UpdatedDtTemplate = this.UpdatedDtTemplate.bind(this);\r\n this.switchToggleConfirm = this.switchToggleConfirm.bind(this);\r\n this.onHide = this.onHide.bind(this);\r\n this.getProductList = this.getProductList.bind(this);\r\n this.singleCheck = this.singleCheck.bind(this);\r\n this.getConfigurationList = this.getConfigurationList.bind(this);\r\n this.configureField2 = this.configureField2.bind(this);\r\n this.configureField = this.configureField.bind(this);\r\n this.state = {\r\n IsAdd: true,\r\n IsEdit: true,\r\n loading: false,\r\n confirm: false,\r\n productSpecItem: [{ productSpec: \"\", value: \"\" }],\r\n ConfigurationData: [\r\n {\r\n ConfigureItem: \"Company Logo\",\r\n Value: \"CompanyLogo\",\r\n ConfigureItem1: \"Product Image\",\r\n Value1: \"ProductImage\",\r\n },\r\n //{ ConfigureItem: 'Product Image', Value: \"ProductImage\" },\r\n\r\n {\r\n ConfigureItem: \"Product Information\",\r\n Value: \"ProductInformation\",\r\n ConfigureItem1: \"Product Rating\",\r\n Value1: \"ProductRating\",\r\n },\r\n // { ConfigureItem: 'Product Rating', Value: \"ProductRating\" },\r\n {\r\n ConfigureItem: \"Share\",\r\n Value: \"Share\",\r\n ConfigureItem1: \"Feedback\",\r\n Value1: \"Feedback\",\r\n },\r\n // { ConfigureItem: 'Feedback', Value: \"Feedback\" },\r\n {\r\n ConfigureItem: \"Genuine Audio\",\r\n Value: \"GenuineAudio\",\r\n ConfigureItem1: \"Already Scanned Audio\",\r\n Value1: \"AlreadyScannedAudio\",\r\n },\r\n // { ConfigureItem: 'Already Scanned Audio', Value: \"AlreadyScannedAudio\" },\r\n {\r\n ConfigureItem: \"Genuine Message\",\r\n Value: \"GenuineMessage\",\r\n ConfigureItem1: \"Already Scanned Message\",\r\n Value1: \"AlreadyScannedMessage\",\r\n },\r\n // { ConfigureItem: 'Already Scanned Message', Value: \"AlreadyScannedMessage\" },\r\n {\r\n ConfigureItem: \"Promotional Messages\",\r\n Value: \"PromotionalMessages\",\r\n // ConfigureItem1: \"Similar Products\",\r\n // Value1: \"SimilarProducts\",\r\n },\r\n // { ConfigureItem: 'Similar Products', Value: \"SimilarProducts\" },\r\n // {\r\n // ConfigureItem: \"Similar Products Rating\",\r\n // Value: \"SimilarProductsRating\",\r\n // },\r\n ],\r\n selectedProduct: \"\",\r\n activeIndex: 1,\r\n buttonLabel: \"Submit\",\r\n switchAction: false,\r\n displayConfirmation: false,\r\n formHeading: \"Add Product\",\r\n displayModal: false,\r\n UpdatedDt: null,\r\n productId: \"\",\r\n IsCheckedAll: false,\r\n IsField1: false,\r\n IsField2: false,\r\n productConfiguration: \"\",\r\n formError: {\r\n productId: \"\",\r\n productConfiguration: \"\",\r\n },\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n const userPages = sessionStorage.getItem(\"assignedPermissionsForUser\");\r\n if (userPages) {\r\n const assignedPermissions = JSON.parse(userPages);\r\n const Curenturl = window.location.pathname;\r\n const nNumber = Curenturl.lastIndexOf(\"/\");\r\n const pageName = Curenturl.substring(nNumber + 1);\r\n\r\n const obj = assignedPermissions.assigned.filter((x) => {\r\n return x.ActionName === pageName;\r\n });\r\n\r\n if (obj !== null && obj.length > 0) {\r\n if (!obj[0].IsEdit) {\r\n this.setState({\r\n IsEdit: false,\r\n });\r\n }\r\n if (!obj[0].IsAdd) {\r\n this.setState({\r\n IsAdd: false,\r\n });\r\n }\r\n }\r\n }\r\n this.props.getProductDDL();\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.configddl) {\r\n if (\r\n prevProps.configddl !== this.props.configddl ||\r\n prevProps.productId !== this.props.productId\r\n ) {\r\n // this.props.myProp has a different value\r\n if (this.props.configddl) {\r\n const configur = this.props.configddl;\r\n const checkboxes = document.getElementsByName(\"childCheck\");\r\n if (configur) {\r\n const obj = JSON.parse(configur);\r\n Object.entries(obj).map(([key, value]) => {\r\n if (key) {\r\n for (var checkbox of checkboxes) {\r\n if (key === checkbox.value) {\r\n const keyval = value;\r\n if (keyval) {\r\n document.getElementById(key).checked = true;\r\n } else {\r\n checkbox.checked = false;\r\n }\r\n }\r\n }\r\n } else {\r\n checkbox.checked = false;\r\n }\r\n });\r\n this.ischeckAllCheck(\"Field1\");\r\n this.ischeckAllCheck(\"Field2\");\r\n } else {\r\n for (let checkbox of checkboxes) {\r\n checkbox.checked = false;\r\n }\r\n }\r\n }\r\n }\r\n } else {\r\n // const checkboxes = document.getElementsByName('childCheck');\r\n // for (var checkbox of checkboxes) {\r\n // checkbox.checked = false;\r\n // }\r\n // document.getElementById('Field1').checked = false;\r\n // document.getElementById('Field2').checked = false;\r\n }\r\n }\r\n\r\n singleCheck() {\r\n let obj = {};\r\n const checkboxes = document.getElementsByName(\"childCheck\");\r\n for (var checkbox of checkboxes) {\r\n if (checkbox.checked) {\r\n obj[checkbox.value] = true;\r\n } else {\r\n obj[checkbox.value] = false;\r\n }\r\n }\r\n\r\n return JSON.stringify(obj);\r\n }\r\n\r\n switchToggleConfirm = (event) => {\r\n this.setState({ confirm: true, displayConfirmation: false });\r\n // const formData = {\r\n // productId: this.state.productId\r\n // }\r\n // this.props.inActiveRow(this.state.productId);\r\n };\r\n\r\n getProductList(event) {\r\n this.props.getProductDDL();\r\n }\r\n\r\n getConfigurationList(event) {\r\n this.resetForm();\r\n this.setState({ productId: event.target.value });\r\n this.props.getconfigDDL(event.target.value);\r\n }\r\n\r\n allCheckProduct(event) {\r\n this.setState({ IsCheckedAll: event.target.checked });\r\n }\r\n\r\n allCheck(event) {\r\n if (event.target.id === \"Field1\") {\r\n this.setState({ IsField1: event.target.checked });\r\n this.state.ConfigurationData.forEach((item) => {\r\n var idfist = item.Value;\r\n if (idfist) {\r\n setTimeout(() => {\r\n this.checkCheckBox(event.target.checked, idfist);\r\n }, 200);\r\n }\r\n });\r\n } else if (event.target.id === \"Field2\") {\r\n this.setState({ IsField2: event.target.checked });\r\n this.state.ConfigurationData.forEach((element) => {\r\n var id = element.Value1;\r\n if (id) {\r\n setTimeout(() => {\r\n this.checkCheckBox(event.target.checked, id);\r\n }, 200);\r\n }\r\n });\r\n }\r\n }\r\n\r\n ischeckAllCheck(filed) {\r\n if (filed === \"Field1\") {\r\n var first = true;\r\n this.state.ConfigurationData.forEach((item) => {\r\n var idfist = item.Value;\r\n if (idfist) {\r\n if (!document.getElementById(idfist).checked) {\r\n this.setState({ IsField1: false });\r\n first = false;\r\n }\r\n }\r\n });\r\n\r\n if (first) {\r\n this.setState({ IsField1: true });\r\n }\r\n } else if (filed === \"Field2\") {\r\n var second = true;\r\n this.state.ConfigurationData.forEach((item) => {\r\n var idsecond = item.Value1;\r\n if (idsecond) {\r\n if (!document.getElementById(idsecond).checked) {\r\n this.setState({ IsField2: false });\r\n second = false;\r\n }\r\n }\r\n });\r\n\r\n if (second) {\r\n this.setState({ IsField2: true });\r\n }\r\n }\r\n }\r\n\r\n // handle input change\r\n handleInputChange = (event, index) => {\r\n const { name, value } = event.target;\r\n const list = [...this.state.productSpecItem];\r\n list[index][name] = value;\r\n this.setState({ productSpecItem: list });\r\n };\r\n // handle click event of the Remove button\r\n handleRemoveClick = (index) => {\r\n const list = [...this.state.productSpecItem];\r\n list.splice(index, 1);\r\n this.setState({ productSpecItem: list });\r\n };\r\n\r\n // handle click event of the Add button\r\n handleAddClick = () => {\r\n this.setState({\r\n productSpecItem: [\r\n ...this.state.productSpecItem,\r\n { productSpec: \"\", value: \"\" },\r\n ],\r\n });\r\n };\r\n getCurrentDateMMDDYYY() {\r\n var today = new Date();\r\n var dd = String(today.getDate()).padStart(2, \"0\");\r\n var mm = String(today.getMonth() + 1).padStart(2, \"0\");\r\n var yyyy = today.getFullYear();\r\n\r\n today = mm + \"/\" + dd + \"/\" + yyyy;\r\n return today;\r\n }\r\n UpdatedDtTemplate(rowData) {\r\n if (rowData.UpdatedDt !== null) {\r\n return {rowData.UpdatedDt};\r\n }\r\n }\r\n\r\n CreatedDtTemplate(rowData) {\r\n return {rowData.CreatedDt};\r\n }\r\n handleChange(event) {\r\n let { name, value } = event.target;\r\n let errors = this.state.formError;\r\n switch (name) {\r\n case \"isActive\":\r\n value = event.target.checked;\r\n break;\r\n default:\r\n break;\r\n }\r\n this.validateForm(value, name);\r\n this.setState({ errors, [name]: value });\r\n\r\n let checked = event.target.checked;\r\n this.setState((prevState) => {\r\n let { list, allChecked } = prevState;\r\n if (name === \"checkAll\") {\r\n allChecked = checked;\r\n list = list.map((item) => ({ ...item, isChecked: checked }));\r\n } else {\r\n list = list.map((item) =>\r\n item.name === name ? { ...item, isChecked: checked } : item\r\n );\r\n allChecked = list.every((item) => item.isChecked);\r\n }\r\n return { list, allChecked };\r\n });\r\n }\r\n\r\n validateForm(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n switch (name) {\r\n case \"productId\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.productId = \"Please select Product.\";\r\n } else errors.productId = \"\";\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n resetForm() {\r\n this.setState({\r\n productId: \"\",\r\n productConfiguration: \"\",\r\n IsCheckedAll: \"\",\r\n IsField1: false,\r\n IsField2: false,\r\n formError: {\r\n productId: \"\",\r\n productConfiguration: \"\",\r\n IsCheckedAll: \"\",\r\n },\r\n });\r\n\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key]) => {\r\n errors[key] = \"\";\r\n return errors[key];\r\n });\r\n\r\n const checkboxes = document.getElementsByName(\"childCheck\");\r\n for (var checkbox of checkboxes) {\r\n checkbox.checked = false;\r\n }\r\n // document.getElementById('Field1').checked = false;\r\n // document.getElementById('Field2').checked = false;\r\n }\r\n\r\n onHide() {\r\n this.setState({ displayModal: false });\r\n //this.props.onHideShow(false);\r\n this.resetForm();\r\n }\r\n\r\n submitForm(event) {\r\n event.preventDefault();\r\n let isfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key];\r\n let valid = this.validateForm(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n return isfrmvalid;\r\n });\r\n\r\n if (isfrmvalid) {\r\n var confg = this.singleCheck();\r\n var products = [];\r\n //this.state.productId.forEach(element => {\r\n var obj = new Object();\r\n obj.productId = this.state.productId;\r\n obj.ProductConfiguration = confg;\r\n products.push(obj);\r\n //});\r\n\r\n var formdata = {\r\n IsCheckedAll: this.state.IsCheckedAll,\r\n ProductMasters: products,\r\n //ProductConfiguration: this.state.ProductConfiguration\r\n };\r\n this.props.updateproductConfiguration(formdata);\r\n this.resetForm();\r\n }\r\n }\r\n\r\n photoBodyTemplate(e) {\r\n return ;\r\n }\r\n statusBodyTemplate(rowData) {\r\n return (\r\n \r\n );\r\n }\r\n\r\n changevalue(event, field) {\r\n var ischeck = event.currentTarget.checked;\r\n var id = event.currentTarget.id;\r\n setTimeout(() => {\r\n this.checkCheckBox(ischeck, id);\r\n }, 200);\r\n\r\n this.ischeckAllCheck(field);\r\n }\r\n\r\n checkCheckBox(ischeck, id) {\r\n document.getElementById(id).checked = ischeck;\r\n }\r\n\r\n configureField2(rowData) {\r\n return
{rowData.ConfigureItem1}
;\r\n }\r\n\r\n configureField(rowData) {\r\n return
{rowData.ConfigureItem}
;\r\n }\r\n\r\n actionBodyTemplate(rowData, i) {\r\n if (i.field == \"1\") {\r\n if (rowData.hasOwnProperty(\"Value\")) {\r\n return (\r\n <>\r\n {\r\n this.changevalue(e, \"Field1\")}\r\n name=\"childCheck\"\r\n inputprops={{ \"aria-label\": \"primary checkbox\" }}\r\n />\r\n // this.changevalue(e)} name=\"childCheck\" value={rowData.Value} resetFilterOnHide=\"true\" />\r\n }\r\n \r\n );\r\n }\r\n } else if (i.field == \"2\") {\r\n if (rowData.hasOwnProperty(\"Value1\")) {\r\n return (\r\n <>\r\n {\r\n this.changevalue(e, \"Field2\")}\r\n name=\"childCheck\"\r\n inputprops={{ \"aria-label\": \"primary checkbox\" }}\r\n />\r\n // this.changevalue(e)} name=\"childCheck\" value={rowData.Value} resetFilterOnHide=\"true\" />\r\n }\r\n \r\n );\r\n }\r\n }\r\n }\r\n\r\n render() {\r\n const renderFooter = (name) => {\r\n return (\r\n
\r\n this.setState({ displayConfirmation: false })}\r\n className=\"p-button-text\"\r\n />\r\n \r\n
\r\n );\r\n };\r\n const selectheaderField1 = (\r\n
\r\n Select\r\n this.allCheck(e)}\r\n color=\"primary\"\r\n inputProps={{ \"aria-label\": \"primary checkbox\" }}\r\n />\r\n
\r\n );\r\n const selectheaderField2 = (\r\n
\r\n Select\r\n this.allCheck(e)}\r\n color=\"primary\"\r\n inputProps={{ \"aria-label\": \"primary checkbox\" }}\r\n />\r\n
\r\n );\r\n\r\n const header = (\r\n
\r\n
\r\n

Product Configuration

\r\n
\r\n\r\n
\r\n \r\n this.getConfigurationList(e)}\r\n placeholder=\"Select Product\"\r\n />\r\n {this.state.formError.productId !== \"\" ? (\r\n
{this.state.formError.productId}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n this.allCheckProduct(e)}\r\n color=\"primary\"\r\n inputProps={{ \"aria-label\": \"primary checkbox\" }}\r\n />\r\n {/* this.allCheck(e)}> */}\r\n Configure for all products\r\n
\r\n
\r\n );\r\n\r\n return (\r\n
\r\n \r\n\r\n
\r\n
\r\n {\r\n this.dt = el;\r\n }}\r\n header={header}\r\n globalFilter={this.state.globalFilter}\r\n className=\"p-datatable-customers\"\r\n rowHover={true}\r\n loading={this.state.loading}\r\n emptyMessage=\"No data found.\"\r\n singleCheck={false}\r\n sortMode=\"multiple\"\r\n currentPageReportTemplate=\"Showing {first} to {last} of {totalRecords}\"\r\n >\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n {this.state.IsEdit === true ? (\r\n this.submitForm(e)}\r\n />\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n \r\n this.setState({ displayConfirmation: false })}\r\n >\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\nconst mapStateToProps = (state) => {\r\n return {\r\n productData: state.product.prdctddl,\r\n configddl: state.productConfiguration.configddl?.ProductConfiguration,\r\n productId: state.productConfiguration.configddl?.ProductId,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n getProductDDL: () => {\r\n dispatch(productMasterActions.getPrdctDDL());\r\n },\r\n\r\n getconfigDDL: (productid) => {\r\n dispatch(productConfigActions.getconfigDDL(productid));\r\n },\r\n // createProduct: product => dispatch(productMasterActions.createProduct(product)),\r\n updateproductConfiguration: (data) =>\r\n dispatch(productConfigActions.updateproductConfiguration(data)),\r\n // inActiveRow: product => dispatch(productMasterActions.inActiveRow(product))\r\n onHideShow: (isbool) => dispatch(productConfigActions.onHideShow(isbool)),\r\n onreset: (isbool) => dispatch(productConfigActions.onreset(isbool)),\r\n };\r\n};\r\nexport default connect(\r\n mapStateToProps,\r\n mapDispatchToProps\r\n)(ProductConfiguration);\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const RedemptionApprovalService = {\r\n ApproveRedeem,\r\n CancelRedeem,\r\n createRedemption,\r\n fetchUserData,\r\n fetchSchemeData,\r\n inActiveRow,\r\n GetUserPoints\r\n};\r\n\r\nfunction ApproveRedeem(data) { \r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}RedemptionApproval/ApproveRedeem`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction CancelRedeem(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}RedemptionApproval/CancelRedeem`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction createRedemption(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n ////console.log('requestOptions',requestOptions)\r\n return fetch(`${process.env.REACT_APP_API_URL}RedemptionApproval/createRedemption`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchUserData(data) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader(),\r\n //body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}RedemptionApproval/GetUserDDL`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchSchemeData(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}RedemptionApproval/GetSchemes`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction inActiveRow(data) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}RedemptionApproval/InActiveRow/$`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction GetUserPoints(data) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}RedemptionApproval/GetUserPoints`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n\r\n\r\n\r\n","import { RedemptionApprovalService } from '../services/RedemptionApprovalService';\r\nimport { RedemptionApprovalConstants } from '../constants/RedemptionApprovalConstants';\r\nimport { alertActions } from '.';\r\nimport { history } from '../helpers';\r\n\r\nexport const RedemptionApprovalActions = {\r\n getAll,\r\n ApproveRedeem,\r\n CancelRedeem,\r\n createRedemption,\r\n UserData,\r\n GetUserPoints,\r\n inActiveRow,\r\n onHideShow,\r\n onHideShoww,\r\n onHideclose,\r\n loadingData,\r\n onHideShowIsActive\r\n};\r\n\r\nfunction getAll(data) {\r\n return dispatch => {\r\n dispatch(request());\r\n RedemptionApprovalService.fetchSchemeData(data).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: RedemptionApprovalConstants.GETALL_REQUEST } }\r\n function success(datas) { return { type: RedemptionApprovalConstants.GETALL_SUCCESS, datas } }\r\n function failure(error) { return { type: RedemptionApprovalConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction ApproveRedeem(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n RedemptionApprovalService.ApproveRedeem(data).then(\r\n response => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(onHideShoww(false));\r\n dispatch(onHideclose(false));\r\n \r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: RedemptionApprovalConstants.APPROVE_REQUEST, data } }\r\n function success(data) { return { type: RedemptionApprovalConstants.APPROVE_SUCCESS, data } }\r\n function failure(error) { return { type: RedemptionApprovalConstants.APPROVE_FAILURE, error } }\r\n};\r\n\r\n\r\nfunction CancelRedeem(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n RedemptionApprovalService.CancelRedeem(data).then(\r\n response => {\r\n //history.push('/'); \r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(onHideShoww(false));\r\n dispatch(onHideclose(false));\r\n \r\n dispatch(alertActions.success(response.ResponseMessage))\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: RedemptionApprovalConstants.CANCEL_REQUEST, data } }\r\n function success(data) { return { type: RedemptionApprovalConstants.CANCEL_SUCCESS, data } }\r\n function failure(error) { return { type: RedemptionApprovalConstants.CANCEL_FAILURE, error } }\r\n};\r\n\r\nfunction createRedemption(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n RedemptionApprovalService.createRedemption(data).then(\r\n response => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n dispatch(onHideShow(false));\r\n dispatch(onHideShoww(false));\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: RedemptionApprovalConstants.CREATE_REQUEST, data } }\r\n function success(data) { return { type: RedemptionApprovalConstants.CREATE_SUCCESS, data } }\r\n function failure(error) { return { type: RedemptionApprovalConstants.CREATE_FAILURE, error } }\r\n};\r\n\r\nfunction GetUserPoints(data) {\r\n return dispatch => {\r\n dispatch(request(data));\r\n\r\n RedemptionApprovalService.GetUserPoints(data).then(\r\n response => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(response.ResponseData));\r\n dispatch(loadingData(false));\r\n \r\n dispatch(alertActions.success(response.ResponseMessage));\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) { return { type: RedemptionApprovalConstants.GETALL_USERPT_REQUEST, data } }\r\n function success(data) { return { type: RedemptionApprovalConstants.GETALL_USERPT_SUCCESS, data } }\r\n function failure(error) { return { type: RedemptionApprovalConstants.GETALL_USERPT_FAILURE, error } }\r\n};\r\n\r\n// function GetUserPoints(data) {\r\n// return dispatch => {\r\n// dispatch(request(data));\r\n\r\n// RedemptionApprovalService.GetUserPoints(data).then(response => {\r\n// dispatch(loadingData(false));\r\n// dispatch(success(response.ResponseData))\r\n// },\r\n// error => {\r\n// dispatch(loadingData(false));\r\n// dispatch(failure(error.toString()));\r\n// dispatch(alertActions.error(error.toString()));\r\n// }\r\n// );\r\n// };\r\n\r\n// function request(data) { return { type: RedemptionApprovalConstants.GETALL_USERPT_REQUEST,data } }\r\n// function success(datas) { return { type: RedemptionApprovalConstants.GETALL_USERPT_SUCCESS, datas } }\r\n// function failure(error) { return { type: RedemptionApprovalConstants.GETALL_USERPT_FAILURE, error } }\r\n// }\r\n\r\nfunction UserData(obj) {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n RedemptionApprovalService.fetchUserData(obj).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: RedemptionApprovalConstants.GETALL_USER_REQUEST } }\r\n function success(datas) { return { type: RedemptionApprovalConstants.GETALL_USER_SUCCESS, datas } }\r\n function failure(error) { return { type: RedemptionApprovalConstants.GETALL_USER_FAILURE, error } }\r\n}\r\n\r\n\r\n\r\nfunction inActiveRow(data) {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n RedemptionApprovalService.inActiveRow(data).then(\r\n response => {\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(success(data));\r\n dispatch(onHideShowIsActive(false));\r\n dispatch(alertActions.success(response.ResponseMessage))\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage))\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage))\r\n }\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: RedemptionApprovalConstants.ISACTIVE_REQUEST } }\r\n function success(data) { return { type: RedemptionApprovalConstants.ISACTIVE_SUCCESS, data } }\r\n function failure(error) { return { type: RedemptionApprovalConstants.ISACTIVE_FAILURE, error } }\r\n};\r\n\r\nfunction onHideShow(isbool) {\r\n return {\r\n type: RedemptionApprovalConstants.DIALOG_REQUEST, isbool\r\n }\r\n}\r\nfunction onHideShoww(isbool) {\r\n return {\r\n type: RedemptionApprovalConstants.DIALOGUE_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction onHideclose(isbool) {\r\n return {\r\n type: RedemptionApprovalConstants.REJECT_DIALOGUE_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: RedemptionApprovalConstants.LOADING_REQUEST, isbool\r\n }\r\n}\r\n\r\nfunction onHideShowIsActive(isbool) {\r\n return {\r\n type: RedemptionApprovalConstants.DIALOG_ISACTIVE_REQUEST, isbool\r\n }\r\n}\r\n\r\n\r\n\r\n","import React, { Component } from 'react'\r\nimport { DataTable } from 'primereact/datatable';\r\nimport { Column } from 'primereact/column';\r\nimport { Button } from 'primereact/button';\r\nimport { InputText } from 'primereact/inputtext';\r\nimport { Dialog } from 'primereact/dialog';\r\nimport TextField from '@material-ui/core/TextField';\r\nimport { FileUpload } from 'primereact/fileupload';\r\nimport MenuItem from '@material-ui/core/MenuItem';\r\nimport FormControl from '@material-ui/core/FormControl';\r\nimport Select from '@material-ui/core/Select';\r\nimport InputLabel from '@material-ui/core/InputLabel';\r\nimport Checkbox from '@material-ui/core/Checkbox';\r\nimport { Calendar } from 'primereact/calendar';\r\nimport { connect } from 'react-redux';\r\nimport Moment from 'react-moment';\r\nimport { ToastContainer, toast } from 'react-toastify';\r\nimport { Toast } from 'primereact/toast';\r\nimport { RedemptionApprovalActions } from '../../actions/RedemptionApprovalActions';\r\nimport { productMasterActions } from '../../actions';\r\nimport { roleMasterActions } from '../../actions';\r\nimport tableRequest from '../../models/tableRequest';\r\nimport { Dropdown } from 'primereact/dropdown';\r\n// import { RoleMasterActions } from '../../actions';\r\nimport Switch from '@material-ui/core/Switch';\r\n\r\nclass RedemptionApproval extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n\r\n this.actionBodyTemplate = this.actionBodyTemplate.bind(this);\r\n //this.Databody = this.Databody.bind(this);\r\n //this.switchToggleConfirm = this.switchToggleConfirm.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.getUserList = this.getUserList.bind(this);\r\n this.openDialog = this.openDialog.bind(this);\r\n this.onHidee = this.onHidee.bind(this);\r\n this.onHideclose = this.onHideclose.bind(this);\r\n this.openDialogue = this.openDialogue.bind(this);\r\n this.openRejectDialogue = this.openRejectDialogue.bind(this);\r\n this.RedemptionRequest = this.RedemptionRequest.bind(this);\r\n this.RedemptionReject = this.RedemptionReject.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.getProductList = this.getProductList.bind(this);\r\n this.CreatedDateTemplate = this.CreatedDateTemplate.bind(this);\r\n this.UpdatedDateTemplate = this.UpdatedDateTemplate.bind(this)\r\n this.resetForm = this.resetForm.bind(this);\r\n this.onHide = this.onHide.bind(this);\r\n //this.getRoleDDL = this.getRoleDDL.bind(this);\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n\r\n\r\n const RoleData = [\r\n { value: 1, label: 'Web' },\r\n { value: 2, label: 'Mobile' }\r\n ]\r\n const RedeemTypeData = [\r\n { value: 1, label: 'Paytm' },\r\n { value: 2, label: 'Loyality Points' }\r\n ]\r\n\r\n this.state = {\r\n selectedProduct: '',\r\n productId: '',\r\n IsAdd: true,\r\n IsEdit: true,\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n first1: 0,\r\n rows1: 5,\r\n totalRecords1: 0,\r\n globalFilter: null,\r\n sortOrder: '',\r\n buttonLabel: 'Submit',\r\n Approve: false,\r\n formHeading: 'Create Redemption Request',\r\n UserId: '',\r\n RedeemTypeId: 0,\r\n RoleId: 0,\r\n RoleId: '',\r\n CancellationReason: '',\r\n Mappseriesdata: [],\r\n Userdropdown: [],\r\n selectedProduct: null,\r\n RoleData: [\r\n { value: 1, label: 'Web' },\r\n { value: 2, label: 'Mobile' }\r\n ],\r\n RedeemTypeData: [\r\n { value: 1, label: 'Paytm' },\r\n { value: 2, label: 'Loyality Points' }\r\n ],\r\n\r\n Name: '',\r\n Email: '',\r\n RedeemType: '',\r\n RoleId: '',\r\n product: '',\r\n RedeemPoint: '',\r\n UserPoints: '',\r\n IsActive: true,\r\n CreatedDate: null,\r\n UpdatedDate: null,\r\n formError: {\r\n UserId: '',\r\n RedeemType: '',\r\n RedeemPoint: '',\r\n }\r\n };\r\n }\r\n componentDidMount() {\r\n const userPages = sessionStorage.getItem('assignedPermissionsForUser')\r\n if (userPages) {\r\n const assignedPermissions = JSON.parse(userPages);\r\n const Curenturl = window.location.pathname;\r\n const nNumber = Curenturl.lastIndexOf('/');\r\n const pageName = Curenturl.substring(nNumber + 1);\r\n\r\n const obj = assignedPermissions.assigned.filter((x) => {\r\n return x.ActionName === pageName\r\n });\r\n\r\n if (obj !== null && obj.length > 0) {\r\n if (!obj[0].IsEdit) {\r\n this.setState({\r\n IsEdit: false\r\n });\r\n }\r\n if (!obj[0].IsAdd) {\r\n this.setState({\r\n IsAdd: false\r\n });\r\n } else {\r\n this.setState({\r\n IsAdd: true\r\n });\r\n }\r\n }\r\n }\r\n\r\n this.setState({\r\n Mappseriesdata: this.props.Mappseries\r\n })\r\n\r\n\r\n this.props.fetchApi(this.tblResponse);\r\n this.props.UserData(this.tblResponse);\r\n //this.props.GetUserPoints(this.tblResponse);\r\n\r\n\r\n this.props.getProductDDL();\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.SchememappingData) {\r\n if (prevProps.SchememappingData !== this.props.SchememappingData) {\r\n // this.props.myProp has a different value\r\n if (this.props.SchememappingData) {\r\n var e = this.props.SchememappingData;\r\n this.setState({\r\n totalRecords: e[0].TotalRows\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords !== 0)\r\n this.setState({\r\n totalRecords: 0,\r\n first: 0\r\n });\r\n }\r\n\r\n if (this.props.Mappseriesdata) {\r\n if (prevProps.Mappseriesdata !== this.props.Mappseriesdata) {\r\n // this.props.myProp has a different value\r\n if (this.props.Mappseriesdata) {\r\n var e = this.props.Mappseriesdata;\r\n this.setState({\r\n totalRecords1: e[0].this.props.TotalRows1\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords1 !== 0)\r\n this.setState({\r\n totalRecords1: 0,\r\n first1: 0\r\n });\r\n }\r\n }\r\n\r\n // switchToggleConfirm = (e) => {\r\n // this.props.inActiveRow(this.state.UserId, this.state.switchAction);\r\n // }\r\n\r\n getUserList(event) {\r\n this.setState({ UserId: event.target.value });\r\n this.props.UserData(event.target.value);\r\n const userpnt = {\r\n UserId: event.target.value\r\n }\r\n this.props.GetUserPoints(userpnt)\r\n setTimeout(() => {\r\n const e = this.props.Userpoints;\r\n if (e != null) {\r\n this.setState({\r\n UserPoints: e[0].UserPoints\r\n });\r\n } else {\r\n this.setState({\r\n UserPoints: 0.0\r\n });\r\n }\r\n }, 2000);\r\n }\r\n\r\n handleChange(event) {\r\n let { name, value } = event.target;\r\n let errors = this.state.formError;\r\n switch (name) {\r\n case 'IsActive':\r\n value = event.target.checked;\r\n break;\r\n default:\r\n break;\r\n }\r\n this.validateForm(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n\r\n UpdatedDateTemplate(rowData) {\r\n if (rowData.UpdatedDate !== null) {\r\n return (\r\n {rowData.UpdatedDate}\r\n )\r\n }\r\n else {\r\n\r\n }\r\n }\r\n\r\n CreatedDateTemplate(rowData) {\r\n if (rowData.UpdatedDate !== null) {\r\n\r\n return (\r\n {rowData.CreatedDate}\r\n )\r\n }\r\n }\r\n getProductList(event) {\r\n this.props.getProductDDL();\r\n }\r\n\r\n validateForm(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n switch (name) {\r\n case 'UserId ':\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.UserId = \"Please Select User.\";\r\n } else errors.UserId = ''\r\n break;\r\n case 'RedeemType':\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.RedeemType = \"Please enter Redeem Type.\";\r\n } else errors.RedeemType = ''\r\n break;\r\n\r\n case 'RedeemPoint':\r\n value = value === '' ? 0 : value;\r\n if (value !== 0) {\r\n if (parseInt(value) < 1) {\r\n IsValid = false;\r\n errors.RedeemPoint = \"Reedem points must be greater than 0\";\r\n }\r\n else if (!value.toString().match(/^[0-9]+$/.exec(value))) {\r\n IsValid = false;\r\n errors.RedeemPoint = \"Please enter only number.\";\r\n }\r\n else {\r\n errors.RedeemPoint = null;\r\n }\r\n }\r\n else {\r\n IsValid = false;\r\n errors.RedeemPoint = \"Please Enter Redeem Points\";\r\n }\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n\r\n getDropValueOfUser() {\r\n let User = '';\r\n this.props.Userdataa.filter(x => {\r\n if (x.value === this.props.Userdataa) {\r\n User = x.label;\r\n }\r\n });\r\n\r\n return User;\r\n }\r\n\r\n getDropValueOfRedeemType() {\r\n\r\n let RedeemTypeId = '';\r\n this.state.RedeemTypeData.filter(x => {\r\n if (x.value === this.state.RedeemType) {\r\n RedeemTypeId = x.label;\r\n }\r\n });\r\n\r\n return RedeemTypeId;\r\n }\r\n\r\n\r\n submitForm(event) {\r\n event.preventDefault();\r\n\r\n let isfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key]\r\n let valid = this.validateForm(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n return isfrmvalid;\r\n });\r\n\r\n if (isfrmvalid) {\r\n const ddlValuUser = this.getDropValueOfUser();\r\n // const ddlValuRole = this.getDropValueOfRole();\r\n // const ddlValuRedeemType = this.getDropValueOfRedeemType();\r\n const formData = {\r\n\r\n UserId: this.state.UserId,\r\n Userdropdown: ddlValuUser != null ? ddlValuUser : \"\",\r\n RedeemReqType: this.state.RedeemType, //= 1 ? this.state.RedeemType = 'Paytm' : this.state.RedeemType = 'Loyality Points',\r\n UserPoints: this.state.UserPoints,\r\n RedeemPoint: this.state.RedeemPoint,\r\n UpdatedBy: JSON.parse(sessionStorage.getItem(\"UserData\")),\r\n TotalRows: this.state.totalRecords\r\n }\r\n this.props.createRedemption(formData);\r\n event.preventDefault();\r\n setTimeout(() => {\r\n this.props.fetchApi(this.tblResponse);\r\n }, 800);\r\n\r\n if (!this.props.showDialog) {\r\n this.resetForm();\r\n }\r\n }\r\n\r\n }\r\n\r\n resetForm() {\r\n this.setState({\r\n UserId: '',\r\n UserData: '',\r\n RedeemType: '',\r\n UserPoints: '',\r\n RedeemPoint: '',\r\n\r\n formError: {\r\n UserId: '',\r\n RedeemType: '',\r\n RedeemPoint: '',\r\n }\r\n });\r\n\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key]) => {\r\n errors[key] = '';\r\n return errors[key];\r\n });\r\n }\r\n\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? 'ASC' : 'DESC';\r\n }\r\n\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField = event.multiSortMeta[0].field === \"CreatedDate\" ? \"CreatedDate\" : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? 'DESC' : 'ASC';//this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n onHide() {\r\n this.props.onHideShow(false);\r\n this.resetForm();\r\n }\r\n openDialog() {\r\n this.props.onHideShow(true);\r\n this.setState({ buttonLabel: 'Submit', formHeading: 'Add Scheme' })\r\n }\r\n onHidee() {\r\n this.props.onHideShoww(false);\r\n }\r\n\r\n openDialogue() {\r\n this.props.onHideShoww(true);\r\n }\r\n onHideclose() {\r\n this.props.onHideclose(false);\r\n }\r\n\r\n openRejectDialogue() {\r\n this.props.onHideclose(true);\r\n //this.setState({ buttonLabel: 'Submit', formHeadingg: 'Confirmation' })\r\n\r\n }\r\n\r\n getCurrentDateMMDDYYY() {\r\n var today = new Date();\r\n var dd = String(today.getDate()).padStart(2, '0');\r\n var mm = String(today.getMonth() + 1).padStart(2, '0');\r\n var yyyy = today.getFullYear();\r\n\r\n today = mm + '/' + dd + '/' + yyyy;\r\n return today;\r\n }\r\n\r\n RedemptionReject() {\r\n //var e = this.props.SchememappingData\r\n\r\n const formData = {\r\n RedeemReqId: this.state.RedeemReqId,\r\n UpdatedBy: JSON.parse(sessionStorage.getItem(\"UserData\")),\r\n CancellationReason: this.state.CancellationReason\r\n }\r\n this.props.CancelRedeem(formData);\r\n setTimeout(() => {\r\n this.props.fetchApi(this.tblResponse);\r\n }, 800);\r\n }\r\n\r\n\r\n\r\n\r\n RedemptionRequest() {\r\n //var e = this.props.SchememappingData\r\n\r\n const formData = {\r\n RedeemReqId: this.state.RedeemReqId,\r\n UpdatedBy: JSON.parse(sessionStorage.getItem(\"UserData\")),\r\n }\r\n this.props.ApproveRedeem(formData);\r\n setTimeout(() => {\r\n this.props.fetchApi(this.tblResponse);\r\n }, 800);\r\n }\r\n\r\n\r\n actionBodyTemplate(rowData) {\r\n const editMode = (e) => {\r\n if (e == 'Approve') {\r\n this.openDialogue();\r\n }\r\n else {\r\n this.openRejectDialogue();\r\n }\r\n\r\n this.setState({\r\n RedeemReqId: rowData.RedeemReqId,\r\n UpdatedBy: rowData.UpdatedBy\r\n });\r\n }\r\n\r\n if (rowData) {\r\n return (\r\n <>\r\n {this.state.IsEdit === true ?\r\n
\r\n
\r\n : \"\"\r\n }\r\n \r\n )\r\n }\r\n }\r\n\r\n render() {\r\n\r\n const header = (\r\n
\r\n
\r\n

Redemption Approval

\r\n
\r\n
\r\n \r\n \r\n this.searchFilter(e)} placeholder=\"Global Search\" />\r\n \r\n\r\n {this.state.IsAdd === true ?\r\n
\r\n
\r\n );\r\n\r\n return (\r\n
\r\n \r\n\r\n
\r\n { this.dt = el; }}>\r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* \r\n
\r\n \r\n {/*
*/}\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n {this.state.formError.UserId !== '' ?\r\n
{this.state.formError.UserId}
: ''}\r\n
\r\n\r\n
\r\n \r\n {/* Select Redeem Type* */}\r\n \r\n \r\n {this.state.formError.RedeemType !== '' ?\r\n
{this.state.formError.RedeemType}
: ''}\r\n
\r\n\r\n\r\n
\r\n \r\n {/* {this.state.formError.Userpnts !==\r\n '' ?\r\n
{this.state.formError.Userpnts}
: ''} */}\r\n
\r\n
\r\n \r\n {this.state.formError.RedeemPoint !== '' ?\r\n
{this.state.formError.RedeemPoint}
: ''}\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n\r\n
\r\n
Please Click Below Button To Submit*
\r\n\r\n
\r\n\r\n
\r\n Note: Fields marked as (*) are required\r\n
\r\n
\r\n {/*
*/}\r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n \r\n Are you sure you want to Approve?\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n \r\n Are you sure you want to Reject?\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n )\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n ////console.log('state.RedemptionApproval.items', state.RedemptionApproval.items);\r\n ////console.log('state.RedemptionApproval.Userdataa', state.RedemptionApproval.Userdataa);\r\n ////console.log('state.RedemptionApproval.Userpoints', state.RedemptionApproval.Userpoints);\r\n return {\r\n SchememappingData: state.RedemptionApproval.items,\r\n Userpoints: state.RedemptionApproval.Userpoints,\r\n showDialogue: state.RedemptionApproval.showDialogue,\r\n productData: state.product.prdctddl,\r\n showDialog: state.role.showDialog,\r\n loading: state.company.loding,\r\n showIsActiveDialog: state.RedemptionApproval.showIsActiveDialog,\r\n ApprovedData: state.RedemptionApproval.itemss,\r\n CanceledData: state.RedemptionApproval.itemss,\r\n Userdataa: state.RedemptionApproval.Userdataa,\r\n //approvedialog: state.RedemptionApproval.approvedialog,\r\n canceldialog: state.RedemptionApproval.canceldialog,\r\n }\r\n}\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(RedemptionApprovalActions.getAll(obj))\r\n },\r\n getProductDDL: () => {\r\n dispatch(productMasterActions.getPrdctDDL())\r\n },\r\n GetUserPoints: (data) => {\r\n dispatch(RedemptionApprovalActions.GetUserPoints(data))\r\n },\r\n ApproveRedeem: data => dispatch(RedemptionApprovalActions.ApproveRedeem(data)),\r\n CancelRedeem: data => dispatch(RedemptionApprovalActions.CancelRedeem(data)),\r\n UserData: data => dispatch(RedemptionApprovalActions.UserData(data)),\r\n createRedemption: data => dispatch(RedemptionApprovalActions.createRedemption(data)),\r\n onHideShow: isbool => dispatch(RedemptionApprovalActions.onHideShow(isbool)),\r\n onHideShoww: isbool => dispatch(RedemptionApprovalActions.onHideShoww(isbool)),\r\n onHideclose: isbool => dispatch(RedemptionApprovalActions.onHideclose(isbool)),\r\n onHideShowIsActive: isbool => dispatch(RedemptionApprovalActions.onHideShowIsActive(isbool)),\r\n\r\n loadingData: (isLoding) => dispatch(RedemptionApprovalActions.loadingData(isLoding))\r\n }\r\n}\r\nexport default connect(mapStateToProps, mapDispatchToProps)(RedemptionApproval)","import React, { Component } from 'react'\r\nimport { DataTable } from 'primereact/datatable';\r\nimport { Column } from 'primereact/column';\r\nimport TextField from '@material-ui/core/TextField';\r\nimport { Calendar } from 'primereact/calendar';\r\nimport { alertActions, RedemptionLogRptActions } from \"../../actions\";\r\nimport { connect } from 'react-redux';\r\nimport tableRequest from '../../models/tableRequest.js';\r\nimport { Toast } from 'primereact/toast';\r\nimport { CSVLink } from \"react-csv\";\r\n\r\nclass RedemptionLogRpt extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.FilterData = this.FilterData.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.state = {\r\n loading: false,\r\n FromDate: new Date(),\r\n ToDate: new Date(),\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n visible: false,\r\n sortOrder: '',\r\n datalist: [],\r\n }\r\n }\r\n componentDidMount() {\r\n var date = new Date();\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() - 7);\r\n this.tblResponse.FromDate = date.toLocaleDateString();\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.setState({\r\n FromDate: date,\r\n ToDate: new Date()\r\n });\r\n this.props.fetchApi(this.tblResponse);\r\n this.props.exportingData(this.tblResponse);\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (prevProps.RedemptionLogList !== this.props.RedemptionLogList) {\r\n // this.props.myProp has a different value\r\n if (this.props.RedemptionLogList) {\r\n var e = this.props.RedemptionLogList;\r\n this.setState({\r\n totalRecords: e[0].TotalRows\r\n });\r\n }\r\n }\r\n }\r\n\r\n GetRedemptionLog() {\r\n let ToDt = new Date();\r\n let FrmDt = new Date();\r\n FrmDt.setDate(ToDt.getDate() - 7);\r\n\r\n const myFmDt = this.getCurrentDateYYYYMMDD(FrmDt);\r\n const myToDt = this.getCurrentDateYYYYMMDD(ToDt);\r\n\r\n this.tblResponse.FromDate = myFmDt;\r\n this.tblResponse.ToDate = myToDt;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n FilterData() {\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n getCurrentDateYYYYMMDD(dt) {\r\n var dd = String(dt.getDate()).padStart(2, '0');\r\n var mm = String(dt.getMonth() + 1).padStart(2, '0');\r\n var yyyy = dt.getFullYear();\r\n\r\n dt = yyyy + '/' + mm + '/' + dd;\r\n return dt;\r\n }\r\n\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n switch (name) {\r\n case 'FromDate':\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n // this.refs.Messchild.showError(\"Please select from date.\");\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please select from date.', life: 3000 });\r\n\r\n return;\r\n }\r\n else if (!(value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please enter only date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n }\r\n else if ((value instanceof Date) && (this.state.ToDate instanceof Date)) {\r\n const startDate = value;\r\n const endDate = this.state.ToDate;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'From date must be less than to date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"From date must be less than to date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n case 'ToDate':\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please select to date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"Please select to date.\");\r\n return;\r\n }\r\n else if (!(value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please enter only date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n }\r\n else if ((value instanceof Date) && (this.state.FromDate instanceof Date)) {\r\n const startDate = this.state.FromDate;\r\n const endDate = value;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'To date must be greater than from date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"To date must be greater than from date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n this.setState({ [name]: value });\r\n }\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? 'ASC' : 'DESC';\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n // this.setState({\r\n // loading: true\r\n // });\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);;\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField = event.multiSortMeta[0].field === \"CreatedDate\" ? \"CreatedDate\" : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? 'DESC' : 'ASC';//this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n render() {\r\n\r\n return (\r\n
\r\n this.toast = el} />\r\n
\r\n
\r\n

Redemption Log Report

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n  \r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n { this.dt = el; }}>\r\n {/* */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n )\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n ////console.log('state.RedemptionLogRpt.items', state.RedemptionLogRpt.items);\r\n return {\r\n RedemptionLogList: state.RedemptionLogRpt.items,\r\n List: state.RedemptionLogRpt.exportitems == undefined ? [] : state.RedemptionLogRpt.exportitems,\r\n loading: state.verification.loding\r\n }\r\n}\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(RedemptionLogRptActions.getAll(obj))\r\n },\r\n loadingData: (isLoding) => dispatch(RedemptionLogRptActions.loadingData(isLoding)),\r\n exportingData: (obj) => dispatch(RedemptionLogRptActions.exportData(obj))\r\n }\r\n}\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(RedemptionLogRpt)\r\n","import React, { Component } from 'react'\r\nimport { DataTable } from 'primereact/datatable';\r\nimport { Column } from 'primereact/column';\r\nimport TextField from '@material-ui/core/TextField';\r\nimport { Calendar } from 'primereact/calendar';\r\n//import {alertActions, UserloyalityLogRptActions } from \"../../actions\";\r\nimport { UserloyalityLogRptActions } from '../../actions/UserloyaltyLogRptActions';\r\nimport { alertActions } from '../../actions';\r\nimport { connect } from 'react-redux';\r\nimport tableRequest from '../../models/tableRequest.js';\r\nimport { Toast } from 'primereact/toast';\r\nimport { CSVLink } from \"react-csv\";\r\n\r\nclass UserloyalityLogRpt extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.FilterData = this.FilterData.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.state = {\r\n loading: false,\r\n FromDate: new Date(),\r\n ToDate: new Date(),\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n visible: false,\r\n sortOrder: '',\r\n datalist: [],\r\n }\r\n }\r\n componentDidMount() {\r\n var date = new Date();\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() - 7);\r\n this.tblResponse.FromDate = date.toLocaleDateString();\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.setState({\r\n FromDate: date,\r\n ToDate: new Date()\r\n });\r\n this.props.fetchApi(this.tblResponse);\r\n this.props.exportingData(this.tblResponse);\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (prevProps.UserloyalityLogList !== this.props.UserloyalityLogList) {\r\n // this.props.myProp has a different value\r\n if (this.props.UserloyalityLogList) {\r\n var e = this.props.UserloyalityLogList;\r\n this.setState({\r\n totalRecords: e[0].TotalRows\r\n });\r\n }\r\n }\r\n }\r\n\r\n GetUserloyalityLog() {\r\n let ToDt = new Date();\r\n let FrmDt = new Date();\r\n FrmDt.setDate(ToDt.getDate() - 7);\r\n\r\n const myFmDt = this.getCurrentDateYYYYMMDD(FrmDt);\r\n const myToDt = this.getCurrentDateYYYYMMDD(ToDt);\r\n\r\n this.tblResponse.FromDate = myFmDt;\r\n this.tblResponse.ToDate = myToDt;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n FilterData() {\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n getCurrentDateYYYYMMDD(dt) {\r\n var dd = String(dt.getDate()).padStart(2, '0');\r\n var mm = String(dt.getMonth() + 1).padStart(2, '0');\r\n var yyyy = dt.getFullYear();\r\n\r\n dt = yyyy + '/' + mm + '/' + dd;\r\n return dt;\r\n }\r\n\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n switch (name) {\r\n case 'FromDate':\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n // this.refs.Messchild.showError(\"Please select from date.\");\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please select from date.', life: 3000 });\r\n\r\n return;\r\n }\r\n else if (!(value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please enter only date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n }\r\n else if ((value instanceof Date) && (this.state.ToDate instanceof Date)) {\r\n const startDate = value;\r\n const endDate = this.state.ToDate;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'From date must be less than to date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"From date must be less than to date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n case 'ToDate':\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please select to date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"Please select to date.\");\r\n return;\r\n }\r\n else if (!(value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please enter only date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n }\r\n else if ((value instanceof Date) && (this.state.FromDate instanceof Date)) {\r\n const startDate = this.state.FromDate;\r\n const endDate = value;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'To date must be greater than from date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"To date must be greater than from date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n this.setState({ [name]: value });\r\n }\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? 'ASC' : 'DESC';\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n // this.setState({\r\n // loading: true\r\n // });\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);;\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField = event.multiSortMeta[0].field === \"CreatedDate\" ? \"CreatedDate\" : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? 'DESC' : 'ASC';//this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n render() {\r\n\r\n return (\r\n
\r\n this.toast = el} />\r\n
\r\n
\r\n

User Loyalty Log Report

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n  \r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n { this.dt = el; }}>\r\n \r\n \r\n \r\n \r\n \r\n {/* \r\n */}\r\n {/* */}\r\n \r\n \r\n {/* */}\r\n {/* */}\r\n \r\n
\r\n
\r\n )\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n ////console.log('state.UserloyalityLogRpt.items', state.UserloyalityLogRpt.items);\r\n return {\r\n UserloyalityLogList: state.UserloyalityLogRpt.items,\r\n List: state.UserloyalityLogRpt.exportitems == undefined ? [] : state.UserloyalityLogRpt.exportitems,\r\n loading: state.verification.loding\r\n }\r\n}\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(UserloyalityLogRptActions.getAll(obj))\r\n },\r\n loadingData: (isLoding) => dispatch(UserloyalityLogRptActions.loadingData(isLoding)),\r\n exportingData: (obj) => dispatch(UserloyalityLogRptActions.exportData(obj))\r\n }\r\n}\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(UserloyalityLogRpt)\r\n","export default __webpack_public_path__ + \"static/media/AlreadyScanned.50775474.mp3\";","export default __webpack_public_path__ + \"static/media/InvalidScan.f99f8ab7.mp3\";","import React, { Component } from \"react\";\r\nimport \"primereact/resources/primereact.min.css\";\r\nimport \"primeicons/primeicons.css\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { Button } from \"primereact/button\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport tableRequest from \"../../models/tableRequest.js\";\r\nimport { confirmAlert } from \"react-confirm-alert\"; // Import\r\nimport \"react-confirm-alert/src/react-confirm-alert.css\"; // Import css\r\nimport { connect } from \"react-redux\";\r\nimport { alertActions, CartonActions, secondaryPackingActions, productMasterActions,} from \"../../actions\";\r\nimport alreadyPacked from \"../../assets/audio/AlreadyScanned.mp3\";\r\nimport invalidScan from \"../../assets/audio/InvalidScan.mp3\";\r\n\r\n\r\nclass SecondaryPacking extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.autoref = React.createRef();\r\n this.autorefCID = React.createRef();\r\n // this.UserService = new UserService();\r\n // this.CartonMasterService = new CartonMasterService();\r\n // this.MappingService = new MappingService();\r\n // this.SecondaryPackingService = new SecondaryPackingService();\r\n // this.PrintSecondaryPackagingService = new PrintSecondaryPackagingService();\r\n this.tblResponse = new tableRequest();\r\n this.alreadyPacked = new Audio(alreadyPacked);\r\n this.invalidScan = new Audio(invalidScan);\r\n this.state = {\r\n productSelected: false,\r\n reason: \"\",\r\n CartonName: \"\",\r\n Tvisible: false,\r\n ProductId: \"\",\r\n ProductName: \"\",\r\n PackingSize: \"\",\r\n rvisible: false,\r\n globalFilter: null,\r\n visible: false,\r\n sortIcon: false,\r\n productLoading: true,\r\n cartoonLoading: false,\r\n sortOrder: \"1\",\r\n formError: {},\r\n CartonDDL: [],\r\n CartonId: [],\r\n buttonLabel: \"Submit\",\r\n sales: [],\r\n scanItems: [],\r\n loading: true,\r\n first: 0,\r\n rows: 10,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n emptyMessage: \"No Data found\",\r\n IsDisabledCartonDDL: false,\r\n scanTxt: \"\",\r\n userId: 0\r\n };\r\n\r\n this.actionTemplate = this.actionTemplate.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.submitFormFinal = this.submitFormFinal.bind(this);\r\n this.onPage = this.onPage.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.DATASEND = this.DATASEND.bind(this);\r\n this.ScanItem = this.ScanItem.bind(this);\r\n }\r\n //trigger api function on page call\r\n componentDidMount() {\r\n this.setState({ userId: sessionStorage.getItem(\"UserData\") });\r\n this.tblResponse.UserId = sessionStorage.getItem(\"UserData\");\r\n this.tblResponse.SortColumn = \"CartonId\";\r\n setTimeout(() => {\r\n this.props.GetSecondaryPacking(this.tblResponse);\r\n }, 100);\r\n this.props.getPrdctDDL(sessionStorage.getItem(\"UserData\"));\r\n this.props.fetchCartonList();\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.alreadyPackedAudio) {\r\n this.alreadyPacked.play();\r\n this.props.alreadyPacked(false);\r\n } else if (this.props.warningAudio) {\r\n this.invalidScan.play();\r\n this.props.warning(false);\r\n }\r\n\r\n if (prevProps.Tvisible != this.props.Tvisible) {\r\n debugger\r\n this.setState({ Tvisible: this.props.Tvisible });\r\n if (this.props.Tvisible == false) {\r\n this.setState({\r\n productSelected: false,\r\n CartonName: \"\"\r\n });\r\n } else {\r\n setTimeout(() => {\r\n this.autorefCID.current.focus();\r\n }, 500);\r\n }\r\n }\r\n }\r\n\r\n // PAGE EVENT CALL\r\n onPage(event) {\r\n this.setState({\r\n loading: true,\r\n });\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.GetSecondaryPacking(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n getDropValue() {\r\n\r\n let productId = \"\";\r\n this.props.ProductData.forEach((x) => {\r\n if (x.ProductId === this.state.ProductId) {\r\n productId = x.ProductId;\r\n }\r\n\r\n });\r\n return productId;\r\n }\r\n\r\n // set lazy loading values\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n }\r\n\r\n // call every change of form and validation part also\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n const trimmedValue = value.trim();\r\n let errors = this.state.formError;\r\n\r\n if (this.props.scanItems === undefined) {\r\n this.setState({\r\n productSelected: false\r\n });\r\n } else {\r\n this.setState({\r\n productSelected: true\r\n });\r\n }\r\n\r\n if (name === 'ProductId') {\r\n const filteredProduct = this.props.ProductData.find(product => product.value === value);\r\n if (filteredProduct) {\r\n this.setState({\r\n PackingSize: filteredProduct.PackingSize,\r\n [name]: value\r\n });\r\n }\r\n }\r\n\r\n // Update state with the new value and errors\r\n this.setState({\r\n errors,\r\n [name]: trimmedValue\r\n });\r\n }\r\n\r\n\r\n\r\n // validate form\r\n validateForm(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n //to validate each form field with required conditions\r\n switch (name) {\r\n case \"UserName\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.UserName = \"Please enter your username.\";\r\n } else errors.UserName = \"\";\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n\r\n // reset form text value\r\n formReset() {\r\n this.setState({\r\n IsDisabledCartonDDL: false,\r\n Tvisible: false,\r\n ReferenceID: \"\",\r\n CartonName: \"\",\r\n reason: \"\",\r\n rvisible: false,\r\n reason: \"\",\r\n UserName: \"\",\r\n FirstName: \"\",\r\n LastName: \"\",\r\n Email: \"\",\r\n MobileNo: \"\",\r\n Password: \"\",\r\n ConfirmPassword: \"\",\r\n IsActive: true,\r\n CartonId: [],\r\n ProductId: [],\r\n reason: \"\",\r\n });\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key, value]) => {\r\n errors[key] = \"\";\r\n });\r\n }\r\n\r\n // open Dialog\r\n openDialog() {\r\n this.setState({ visible: true });\r\n this.formReset();\r\n }\r\n\r\n submitForm(event) {\r\n if (this.props.scanItems == undefined) {\r\n this.props.showWarn(\"Scan First\");\r\n return;\r\n }\r\n else if (this.state.PackingSize != this.props.scanItems.length && this.state.reason.trim().length < 4) {\r\n // let reason = prompt(\"Carton is not fully Packed. \\n Please Specify the Reason in min 5 chars Max 500 Chars\", \"\");\r\n // reason = reason != null ? reason.trim() : \"\";\r\n this.setState({ rvisible: true })\r\n }\r\n else {\r\n this.setState({ Tvisible: true });\r\n }\r\n }\r\n\r\n // submit packing\r\n submitFormFinal(event) {\r\n event.preventDefault();\r\n if (this.props.scanItems == undefined) {\r\n this.props.showWarn(\"Scan First\");\r\n return;\r\n }\r\n if (this.state.PackingSize >= this.props.scanItems.length) {\r\n if (this.state.PackingSize != this.props.scanItems.length && this.state.reason.trim().length < 4) {\r\n let reason = prompt(\"Carton is not fully Packed. \\n Please Specify the Reason in min 5 chars Max 500 Chars\", \"\");\r\n reason = reason != null ? reason.trim() : \"\";\r\n if (reason.length >= 5) {\r\n this.setState({ reason });\r\n } else {\r\n alert(\"Please provide a reason with at least 5 characters.\");\r\n }\r\n }\r\n else {\r\n this.setState({ productLoading: false });\r\n const formData = {\r\n secondaryPackingDetails: this.props.scanItems.map(item => ({\r\n ...item,\r\n ProductId: this.state.ProductId\r\n })),\r\n reason: this.state.reason,\r\n ProductId: this.state.ProductId,\r\n CartonId: this.state.CartonName,\r\n CreatedBy: this.state.userId\r\n };\r\n this.setState({ productLoading: true });\r\n this.props.saveSecondaryPacking(formData)\r\n this.autoref.current.focus();\r\n this.state.scanItems = [];\r\n }\r\n } else {\r\n this.props.showWarn(\"Carton Contain Many item, Pls removed\");\r\n }\r\n }\r\n\r\n // get active carton drop down list\r\n GetActiveCartonDDL() {\r\n this.CartonMasterService.GetActiveCartonDDL().then((data) => {\r\n const resdata = data.data;\r\n //if ResponseCode is 200\r\n if (resdata !== null && resdata.ResponseCode === \"200\") {\r\n this.setState({\r\n CartonDDL: resdata.ResponseData,\r\n });\r\n }\r\n });\r\n }\r\n\r\n // scan qr code\r\n ScanItem(e) {\r\n if (e.key === \"Enter\") {\r\n debugger\r\n let qr = e.target.value;\r\n\r\n if (this.state.ProductId.length === 0) {\r\n this.props.showWarn(\"Select Product\");\r\n this.setState({ scanTxt: '' });\r\n return;\r\n }\r\n\r\n if (this.state.PackingSize === 0) {\r\n this.props.showWarn(\"Please select a product with a defined package size.\");\r\n this.setState({ scanTxt: '' });\r\n return;\r\n }\r\n else\r\n if (this.state.PackingSize === this.props.scanItems?.length) {\r\n this.setState({\r\n scanTxt: \"\"\r\n });\r\n this.props.showWarn(\"Carton Full\");\r\n this.setState({ Tvisible: true });\r\n setTimeout(() => {\r\n this.autorefCID.current.focus();\r\n }, 1000);\r\n return;\r\n }\r\n\r\n const fObj = { QrData: qr };\r\n this.props.GetProductByQrScan(fObj, this.state.PackingSize);\r\n this.setState({\r\n scanTxt: \"\",\r\n productSelected: true,\r\n });\r\n e.target.value = \"\";\r\n }\r\n }\r\n\r\n\r\n // delete user data\r\n deleteScanned(SeqNo) {\r\n let arrayfilter = this.props.scanItems.filter((x) => x.SeqNo != SeqNo);\r\n }\r\n\r\n DATASEND(data) {\r\n if (data === '310') {\r\n this.setState({ Tvisible: true });\r\n } else {\r\n this.setState({ Tvisible: false });\r\n }\r\n }\r\n\r\n // seach table\r\n searchFilter(e) {\r\n this.setState({\r\n loading: true,\r\n });\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.GetSecondaryPacking(this.tblResponse);\r\n }\r\n\r\n callbackFunction = (childData) => {\r\n this.setState({ message: childData });\r\n };\r\n\r\n // disabled checkbox\r\n activeTemplate(rowData, column) {\r\n return ;\r\n }\r\n\r\n // Sort table\r\n onSort(event) {\r\n this.setState({\r\n sortOrder: this.state.sortOrder === 1 ? 2 : 1,\r\n sortIcon: !this.state.sortIcon,\r\n });\r\n const sortField =\r\n event.sortField == \"CreatedDt\" ? \"CreatedDt\" : event.sortField;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\";\r\n this.props.GetSecondaryPacking(this.tblResponse);\r\n const clickData = document.getElementsByClassName(\r\n \"p-sortable-column-icon pi pi-fw pi-sort\"\r\n );\r\n ////console.log(event);\r\n }\r\n\r\n // edit form\r\n actionTemplate(rowData, column) {\r\n const deleteFunc = () => {\r\n confirmAlert({\r\n title: \"Confirm to delete\",\r\n message: \"Are you sure you want to delete this item?\",\r\n buttons: [\r\n {\r\n label: \"Yes\",\r\n onClick: () => {\r\n this.props.removeItem(rowData.SeqNo);\r\n this.setState({ productSelected: false });\r\n }\r\n },\r\n {\r\n label: \"No\",\r\n onClick: () => null\r\n }\r\n ]\r\n });\r\n };\r\n\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n\r\n // create html part\r\n render() {\r\n const items = [{ label: \"Transaction\" }, { label: \"Secondary Packing\" }];\r\n const TabView = (\r\n {\r\n this.setState({ Tvisible: false });\r\n }}\r\n >\r\n
\r\n {\" \"}\r\n {\r\n this.setState({ CartonName: e.target.value.toString().trim() });\r\n }}\r\n onKeyDown={(e) => {\r\n if (e.key == \"Enter\") {\r\n if (e.target.value.includes(\"SID\") && (e.target.value.match(/SID/g) || []).length == 1\r\n && (e.target.value.match(/XP/g) || []).length == 1\r\n && (e.target.value.match(/SID-XP-(19|20)\\d{2}-[0-9]\\d{6,10}/g) || []).length == 1) {\r\n this.submitFormFinal(e);\r\n } else {\r\n this.props.showWarn(\"Invalid Cartons\");\r\n this.setState({ CartonName: \"\" });\r\n }\r\n }\r\n }}\r\n ref={this.autorefCID}\r\n />\r\n
\r\n \r\n );\r\n const home = { icon: \"pi pi-home\", url: \"/dashboard\" };\r\n let header = (\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {\r\n this.handleChange(e);\r\n }}\r\n options={this.props.ProductData}\r\n optionValue=\"value\"\r\n optionLabel=\"label\"\r\n className=\"form-control custom-select\"\r\n placeholder={\"Select Product\"}\r\n name=\"ProductId\"\r\n filter\r\n />\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {\r\n this.handleChange(e);\r\n }}\r\n id=\"scanTxt\"\r\n onKeyDown={(e) => {\r\n this.ScanItem(e);\r\n }}\r\n />\r\n
\r\n
\r\n\r\n
\r\n this.setState({ globalFilter: e.target.value })}\r\n placeholder=\"Global Search\"\r\n size=\"30\"\r\n />\r\n \r\n
\r\n
\r\n );\r\n\r\n let header2 = (\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n );\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n console.log(\"Scaned DATA:\", state.secondaryPacking?.Product)\r\n return {\r\n CartonDDL: state.Carton?.cartonddl,\r\n Tvisible: state.secondaryPacking?.Tvisible,\r\n code: state.secondaryPacking.Product,\r\n scanItems: state.secondaryPacking?.scanneditems,\r\n secondaryItems: state.secondaryPacking?.secondaryItems,\r\n second: state.secondaryPacking.items,\r\n warningAudio: state.secondaryPacking?.warning,\r\n alreadyPackedAudio: state.secondaryPacking?.alreadyPacked,\r\n ProductData:\r\n (typeof state.product.prdctddl !== \"undefined\" &&\r\n state.product.prdctddl !== null) === true\r\n ? state.product?.prdctddl\r\n : null,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n dispatch: dispatch,\r\n fetchCartonList: () => {\r\n dispatch(CartonActions.GetActiveCartonDDL());\r\n },\r\n GetProductByQrScan: (QrData, PackingSize) =>\r\n dispatch(\r\n secondaryPackingActions.getProductByQrScan(QrData, PackingSize)\r\n ),\r\n removeItem: (data) => dispatch(secondaryPackingActions.removeItem(data)),\r\n saveSecondaryPacking: (formData) =>\r\n dispatch(secondaryPackingActions.saveSecondaryPacking(formData)),\r\n showWarn: (message) => dispatch(alertActions.warning(message)),\r\n GetSecondaryPacking: (tblObj) =>\r\n dispatch(secondaryPackingActions.getSecondaryPacking(tblObj)),\r\n warning: (bool) => dispatch(secondaryPackingActions.warning(bool)),\r\n alreadyPacked: (bool) =>\r\n dispatch(secondaryPackingActions.alreadyPacked(bool)),\r\n getPrdctDDL: (userId) => dispatch(productMasterActions.getPrdctDDLForSecondary(1, userId)),\r\n };\r\n};\r\nexport default connect(mapStateToProps, mapDispatchToProps)(SecondaryPacking);\r\n","import React, { Component } from \"react\";\r\nimport \"primereact/resources/primereact.min.css\";\r\nimport \"primeicons/primeicons.css\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport { authHeader, handleResponse } from \"../../helpers\";\r\nimport { Column } from \"primereact/column\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { Button } from \"primereact/button\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport tableRequest from \"../../models/tableRequest.js\";\r\nimport { confirmAlert } from \"react-confirm-alert\"; // Import\r\nimport \"react-confirm-alert/src/react-confirm-alert.css\"; // Import css\r\nimport { connect } from \"react-redux\";\r\nimport {\r\n alertActions,\r\n CartonActions,\r\n ProductPackingActions,\r\n productMasterActions,\r\n} from \"../../actions\";\r\nimport alreadyPacked from \"../../assets/audio/AlreadyScanned.mp3\";\r\nimport invalidScan from \"../../assets/audio/InvalidScan.mp3\";\r\nimport { toast } from \"react-toastify\";\r\n\r\nclass ProductPacking extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.autoref = React.createRef();\r\n this.autorefCID = React.createRef();\r\n this.tblResponse = new tableRequest();\r\n this.alreadyPacked = new Audio(alreadyPacked);\r\n this.invalidScan = new Audio(invalidScan);\r\n\r\n const currentYear = new Date().getFullYear();\r\n this.state = {\r\n productSelected: false,\r\n istextEnabledSec: true,\r\n YearData: currentYear, // Set current year as default\r\n yearOptions: this.generateYearOptions(currentYear),\r\n reason: \"\",\r\n CartonName: \"\",\r\n Tvisible: false,\r\n ProductId: \"\",\r\n ProductName: \"\",\r\n PackingSize: \"\",\r\n rvisible: false,\r\n globalFilter: null,\r\n visible: false,\r\n sortIcon: false,\r\n productLoading: true,\r\n cartoonLoading: false,\r\n sortOrder: \"1\",\r\n formError: {},\r\n CartonDDL: [],\r\n CartonId: [],\r\n buttonLabel: \"Submit\",\r\n sales: [],\r\n scanItems: [],\r\n loading: true,\r\n first: 0,\r\n rows: 10,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n emptyMessage: \"No Data found\",\r\n IsDisabledCartonDDL: false,\r\n scanTxt: \"\",\r\n userId: 0,\r\n // ------\r\n SFromNo: \"\",\r\n SToNo: \"\",\r\n totalQty: 0,\r\n PFromNo: \"\",\r\n PToNo: \"\",\r\n PQty: \"\",\r\n RequestType: \"1\",\r\n divStyle: { display: \"none\" },\r\n divStyleTwo: { display: \"none\" }, // Initial state for div style\r\n message: \"\",\r\n messageTwo: \"\",\r\n CartonTotalQty: \"\",\r\n //rvisible: true,\r\n errors: {\r\n ProductId: \"\",\r\n SFromNo: \"\",\r\n SToNo: \"\",\r\n PFromNo: \"\",\r\n PToNo: \"\",\r\n PQty: \"\",\r\n },\r\n };\r\n this.actionTemplate = this.actionTemplate.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.ShandleChange = this.ShandleChange.bind(this);\r\n this.PhandleChange = this.PhandleChange.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.submitFormFinal = this.submitFormFinal.bind(this);\r\n this.onPage = this.onPage.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.DATASEND = this.DATASEND.bind(this);\r\n this.ScanItem = this.ScanItem.bind(this);\r\n this.generateYearOptions = this.generateYearOptions.bind(this);\r\n this.calculateQty = this.calculateQty.bind(this);\r\n }\r\n //trigger api function on page call\r\n componentDidMount() {\r\n this.setState({ userId: sessionStorage.getItem(\"UserData\") });\r\n this.tblResponse.UserId = sessionStorage.getItem(\"UserData\");\r\n this.tblResponse.SortColumn = \"CartonId\";\r\n setTimeout(() => {\r\n this.props.GetSecondaryPacking(this.tblResponse);\r\n }, 100);\r\n this.props.getPrdctDDL(sessionStorage.getItem(\"UserData\"));\r\n this.props.fetchCartonList();\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.alreadyPackedAudio) {\r\n this.alreadyPacked.play();\r\n this.props.alreadyPacked(false);\r\n } else if (this.props.warningAudio) {\r\n this.invalidScan.play();\r\n this.props.warning(false);\r\n }\r\n\r\n if (prevProps.Tvisible != this.props.Tvisible) {\r\n this.setState({ Tvisible: this.props.Tvisible });\r\n if (this.props.Tvisible == false) {\r\n this.setState({\r\n productSelected: false,\r\n CartonName: \"\",\r\n });\r\n } else {\r\n setTimeout(() => {\r\n this.autorefCID.current.focus();\r\n }, 500);\r\n }\r\n }\r\n }\r\n\r\n // PAGE EVENT CALL\r\n onPage(event) {\r\n this.setState({\r\n loading: true,\r\n });\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.GetSecondaryPacking(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n handleNumberInput = (e) => {\r\n if (!/[0-9]/.test(e.key)) {\r\n e.preventDefault();\r\n }\r\n };\r\n getDropValue() {\r\n let productId = \"\";\r\n this.props.ProductData.forEach((x) => {\r\n if (x.ProductId === this.state.ProductId) {\r\n productId = x.ProductId;\r\n }\r\n });\r\n return productId;\r\n }\r\n\r\n // set lazy loading values\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n }\r\n\r\n // Function to handle API call\r\n handleApiHit = () => {\r\n debugger;\r\n if (this.validateFormOne()) {\r\n const { SFromNo, SToNo } = this.state;\r\n\r\n const payload = {\r\n sFromNo: SFromNo,\r\n sToNo: SToNo,\r\n };\r\n\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n ...authHeader(), // Include authentication headers if needed\r\n },\r\n body: JSON.stringify(payload),\r\n };\r\n\r\n fetch(\r\n `${process.env.REACT_APP_API_URL}SecondaryPacking/checkseries`,\r\n requestOptions\r\n )\r\n .then((response) => {\r\n if (!response.ok) {\r\n throw new Error(\r\n \"Network response was not ok \" + response.statusText\r\n );\r\n }\r\n return response.json();\r\n })\r\n .then((data) => {\r\n const responseCode = data.ResponseCode;\r\n\r\n // Set state based on response code\r\n let divStyle = {};\r\n let message = \"\";\r\n let isTextBoxEnabled = true;\r\n let isButtonEnabled = true;\r\n let istextEnabledSec = false;\r\n let istextEnabledCheck = false;\r\n\r\n if (responseCode === \"200\") {\r\n divStyle = {\r\n display: \"block\",\r\n // backgroundColor: '#65e4a1'\r\n };\r\n message = \"✅\";\r\n isTextBoxEnabled = true; // Enable textboxes\r\n isButtonEnabled = false; // Disable button\r\n\r\n istextEnabledCheck = true;\r\n istextEnabledSec = false;\r\n } else if (responseCode === \"300\") {\r\n divStyle = {\r\n display: \"block\",\r\n backgroundColor: \"#FF9090\",\r\n };\r\n message = \"❌ SID Already Exist \";\r\n isTextBoxEnabled = false; // Disable textboxes\r\n isButtonEnabled = false; // Disable button\r\n istextEnabledSec = true;\r\n } else {\r\n divStyle = { display: \"none\" }; // Hide for all other codes\r\n isTextBoxEnabled = true; // Enable textboxes\r\n isButtonEnabled = true; // Enable button\r\n }\r\n\r\n // Update the state\r\n this.setState({\r\n divStyle,\r\n message,\r\n isTextBoxEnabled,\r\n isButtonEnabled,\r\n istextEnabledSec,\r\n istextEnabledCheck,\r\n });\r\n })\r\n .catch((error) => {\r\n // Handle any errors during the API call\r\n console.error(\"Error:\", error);\r\n this.setState({\r\n divStyle: { display: \"block\", backgroundColor: \"red\" },\r\n message: \"Failed to connect to the server\",\r\n isTextBoxEnabled: false,\r\n isButtonEnabled: true,\r\n });\r\n });\r\n }\r\n };\r\n\r\n handleApiHitTwo = () => {\r\n debugger;\r\n // Run form validation before proceeding\r\n if (this.validateForm()) {\r\n const { PFromNo, PToNo, RequestType } = this.state;\r\n let isBtnSaveEnabled = true;\r\n let istextEnabledpid = false;\r\n let istextEnabledCheck = false;\r\n const payload = {\r\n pFromNo: PFromNo,\r\n pToNo: PToNo,\r\n RequestType: RequestType,\r\n };\r\n\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n ...authHeader(), // Include authentication headers if needed\r\n },\r\n body: JSON.stringify(payload),\r\n };\r\n\r\n fetch(\r\n `${process.env.REACT_APP_API_URL}SecondaryPacking/checkseries`,\r\n requestOptions\r\n )\r\n .then((response) => {\r\n if (!response.ok) {\r\n throw new Error(\r\n \"Network response was not ok \" + response.statusText\r\n );\r\n }\r\n return response.json();\r\n })\r\n .then((data) => {\r\n const responseCode = data.ResponseCode;\r\n\r\n // Set state based on response code\r\n let divStyleTwo = {};\r\n let messageTwo = \"\";\r\n if (responseCode === \"200\") {\r\n divStyleTwo = {\r\n display: \"block\",\r\n // backgroundColor: '#65e4a1'\r\n };\r\n messageTwo = \"✅\";\r\n isBtnSaveEnabled = true;\r\n istextEnabledpid = true;\r\n istextEnabledCheck = true;\r\n } else if (responseCode === \"300\") {\r\n divStyleTwo = {\r\n display: \"block\",\r\n backgroundColor: \"#FF9090\",\r\n };\r\n messageTwo = \"❌ Primary Id Already Exist \";\r\n } else {\r\n divStyleTwo = { display: \"none\" };\r\n messageTwo = \"\";\r\n }\r\n\r\n this.setState({\r\n divStyleTwo,\r\n messageTwo,\r\n isBtnSaveEnabled,\r\n istextEnabledpid,\r\n istextEnabledCheck,\r\n });\r\n })\r\n .catch((error) => {\r\n console.error(\"Error:\", error);\r\n this.setState({\r\n divStyleTwo: { display: \"block\", backgroundColor: \"red\" },\r\n messageTwo: \"Failed to connect to the server\",\r\n });\r\n });\r\n }\r\n };\r\n\r\n // call every change of form and validation part also\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n const trimmedValue = value.trim();\r\n let errors = this.state.formError;\r\n\r\n // if (this.props.scanItems === undefined) {\r\n // this.setState({\r\n // productSelected: false\r\n // });\r\n // } else {\r\n // this.setState({\r\n // productSelected: true\r\n // });\r\n // // ---------------\r\n\r\n // }\r\n\r\n if (name === \"ProductId\") {\r\n const filteredProduct = this.props.ProductData.find(\r\n (product) => product.value === value\r\n );\r\n if (filteredProduct) {\r\n this.setState({\r\n PackingSize: filteredProduct.PackingSize,\r\n [name]: value,\r\n });\r\n }\r\n }\r\n\r\n // Update state with the new value and errors\r\n this.setState({\r\n errors,\r\n [name]: trimmedValue,\r\n });\r\n }\r\n\r\n ShandleChange = (event) => {\r\n const { name, value } = event.target;\r\n let errors = { ...this.state.errors };\r\n\r\n // Clear the error for the specific field when user starts typing\r\n errors[name] = \"\";\r\n\r\n this.setState(\r\n {\r\n [name]: value,\r\n errors,\r\n },\r\n this.calculateQty\r\n );\r\n setTimeout(() => {\r\n this.handleApiHit();\r\n }, 4000);\r\n };\r\n\r\n calculateQty = () => {\r\n const { SFromNo, SToNo, PackingSize } = this.state;\r\n const fromNo = parseInt(SFromNo, 10);\r\n const toNo = parseInt(SToNo, 10);\r\n const PackingSizeNo = parseInt(PackingSize, 10);\r\n\r\n if (!isNaN(fromNo) && !isNaN(toNo) && toNo >= fromNo) {\r\n const CartonTotalQty = toNo - fromNo + 1;\r\n const totalQty = CartonTotalQty * PackingSizeNo;\r\n this.setState({ totalQty, CartonTotalQty });\r\n }\r\n };\r\n\r\n PhandleChange = (event) => {\r\n const { name, value } = event.target;\r\n let errors = { ...this.state.errors };\r\n\r\n // Clear the error for the specific field when user starts typing\r\n errors[name] = \"\";\r\n\r\n this.setState(\r\n {\r\n [name]: value,\r\n errors,\r\n },\r\n this.pcalculateQty // Ensure calculateTotalQty is called after state update\r\n );\r\n\r\n setTimeout(() => {\r\n this.handleApiHitTwo();\r\n }, 4000);\r\n };\r\n\r\n pcalculateQty = () => {\r\n const { PFromNo, PQty } = this.state;\r\n const fromNo = parseInt(PFromNo, 10);\r\n const qty = parseInt(PQty, 10);\r\n if (!isNaN(fromNo) && !isNaN(qty)) {\r\n const PToNo = fromNo + qty - 1;\r\n this.setState({ PToNo });\r\n }\r\n };\r\n\r\n // validate form\r\n validateForm(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n //to validate each form field with required conditions\r\n switch (name) {\r\n case \"UserName\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.UserName = \"Please enter your username.\";\r\n } else errors.UserName = \"\";\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n\r\n // reset form text value\r\n formReset() {\r\n this.setState({\r\n IsDisabledCartonDDL: false,\r\n Tvisible: false,\r\n ReferenceID: \"\",\r\n CartonName: \"\",\r\n reason: \"\",\r\n rvisible: false,\r\n reason: \"\",\r\n UserName: \"\",\r\n FirstName: \"\",\r\n LastName: \"\",\r\n Email: \"\",\r\n MobileNo: \"\",\r\n Password: \"\",\r\n ConfirmPassword: \"\",\r\n IsActive: true,\r\n CartonId: [],\r\n ProductId: [],\r\n reason: \"\",\r\n ProductId: [],\r\n CreatedBy: \"\",\r\n SFromNo: \"\",\r\n SToNo: \"\",\r\n PFromNo: \"\",\r\n PToNo: \"\",\r\n PQty: \"\",\r\n PackingSize: \"\",\r\n });\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key, value]) => {\r\n errors[key] = \"\";\r\n });\r\n }\r\n\r\n // open Dialog\r\n openDialog() {\r\n this.setState({ visible: true });\r\n this.formReset();\r\n }\r\n\r\n submitForm = (event) => {\r\n event.preventDefault();\r\n if (this.validateForm()) {\r\n // Proceed with submission if validation passes\r\n alert(\"Form submitted successfully!\");\r\n // Add your form submission logic here\r\n }\r\n };\r\n\r\n //old Save\r\n // submitForm(event) {\r\n // if (this.props.scanItems == undefined) {\r\n // this.props.showWarn(\"Scan First\");\r\n // return;\r\n // }\r\n // else if (this.state.PackingSize != this.props.scanItems.length && this.state.reason.trim().length < 4) {\r\n // // let reason = prompt(\"Carton is not fully Packed. \\n Please Specify the Reason in min 5 chars Max 500 Chars\", \"\");\r\n // // reason = reason != null ? reason.trim() : \"\";\r\n // this.setState({ rvisible: true })\r\n // }\r\n // else {\r\n // this.setState({ Tvisible: true });\r\n // }\r\n // }\r\n\r\n // submit packing old COde\r\n submitFormFinal(event) {\r\n event.preventDefault();\r\n\r\n // Initial validation for required fields\r\n const { ProductId, SFromNo, SToNo, PFromNo, PToNo, PQty, PackingSize } =\r\n this.state;\r\n\r\n // Validate selected product\r\n if (!ProductId) {\r\n this.props.showWarn(\"Please select a product.\");\r\n return;\r\n }\r\n if (!PackingSize) {\r\n this.props.showWarn(\"PackingSize Be Auto Select\");\r\n return;\r\n }\r\n\r\n // Validate SFromNo and SToNo fields\r\n if (!SFromNo || !SToNo) {\r\n this.props.showWarn(\r\n \"Please provide both Carton From No and Carton To No.\"\r\n );\r\n return;\r\n }\r\n\r\n // Validate PFromNo, PToNo, and PQty fields only if they are enabled\r\n if (this.state.isTextBoxEnabled) {\r\n if (!PFromNo || !PToNo || !PQty) {\r\n this.props.showWarn(\r\n \"Please provide Primary From No, Primary To No and Primary Qty.\"\r\n );\r\n return;\r\n }\r\n }\r\n // Prepare form data for submission\r\n const formData = {\r\n ProductId: this.state.ProductId,\r\n CartonId: this.state.CartonName,\r\n CreatedBy: this.state.userId,\r\n SFromNo: this.state.SFromNo,\r\n SToNo: this.state.SToNo,\r\n PFromNo: this.state.PFromNo,\r\n PToNo: this.state.PToNo,\r\n PQty: this.state.PQty,\r\n PackingSize: this.state.PackingSize,\r\n };\r\n this.props.ProductPackingSave(formData);\r\n this.formReset();\r\n this.state.istextEnabledpid = false;\r\n this.state.istextEnabledCheck = true;\r\n this.state.istextEnabledSec = true;\r\n\r\n setTimeout(() => {\r\n this.props.GetSecondaryPacking(this.tblResponse);\r\n }, 2000);\r\n }\r\n\r\n // get active carton drop down list\r\n GetActiveCartonDDL() {\r\n this.CartonMasterService.GetActiveCartonDDL().then((data) => {\r\n const resdata = data.data;\r\n //if ResponseCode is 200\r\n if (resdata !== null && resdata.ResponseCode === \"200\") {\r\n this.setState({\r\n CartonDDL: resdata.ResponseData,\r\n });\r\n }\r\n });\r\n }\r\n\r\n // scan qr code\r\n ScanItem(e) {\r\n if (e.key === \"Enter\") {\r\n let qr = e.target.value;\r\n\r\n if (this.state.ProductId.length === 0) {\r\n this.props.showWarn(\"Select Product\");\r\n this.setState({ scanTxt: \"\" });\r\n return;\r\n }\r\n\r\n if (this.state.PackingSize === 0) {\r\n this.props.showWarn(\r\n \"Please select a product with a defined package size.\"\r\n );\r\n this.setState({ scanTxt: \"\" });\r\n return;\r\n } else if (this.state.PackingSize === this.props.scanItems?.length) {\r\n this.setState({\r\n scanTxt: \"\",\r\n });\r\n this.props.showWarn(\"Carton Full\");\r\n this.setState({ Tvisible: true });\r\n setTimeout(() => {\r\n this.autorefCID.current.focus();\r\n }, 1000);\r\n return;\r\n }\r\n\r\n const fObj = { QrData: qr };\r\n this.props.GetProductByQrScan(fObj, this.state.PackingSize);\r\n this.setState({\r\n scanTxt: \"\",\r\n productSelected: true,\r\n });\r\n e.target.value = \"\";\r\n }\r\n }\r\n\r\n // delete user data\r\n deleteScanned(SeqNo) {\r\n let arrayfilter = this.props.scanItems.filter((x) => x.SeqNo != SeqNo);\r\n }\r\n\r\n DATASEND(data) {\r\n if (data === \"310\") {\r\n this.setState({ Tvisible: true });\r\n } else {\r\n this.setState({ Tvisible: false });\r\n }\r\n }\r\n\r\n // seach table\r\n searchFilter(e) {\r\n this.setState({\r\n loading: true,\r\n });\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.GetSecondaryPacking(this.tblResponse);\r\n }\r\n\r\n callbackFunction = (childData) => {\r\n this.setState({ message: childData });\r\n };\r\n\r\n // disabled checkbox\r\n activeTemplate(rowData, column) {\r\n return ;\r\n }\r\n\r\n // Sort table\r\n onSort(event) {\r\n this.setState({\r\n sortOrder: this.state.sortOrder === 1 ? 2 : 1,\r\n sortIcon: !this.state.sortIcon,\r\n });\r\n const sortField =\r\n event.sortField == \"CreatedDt\" ? \"CreatedDt\" : event.sortField;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\";\r\n this.props.GetSecondaryPacking(this.tblResponse);\r\n const clickData = document.getElementsByClassName(\r\n \"p-sortable-column-icon pi pi-fw pi-sort\"\r\n );\r\n ////console.log(event);\r\n }\r\n\r\n // edit form\r\n actionTemplate(rowData, column) {\r\n const deleteFunc = () => {\r\n confirmAlert({\r\n title: \"Confirm to delete\",\r\n message: \"Are you sure you want to delete this item?\",\r\n buttons: [\r\n {\r\n label: \"Yes\",\r\n onClick: () => {\r\n this.props.removeItem(rowData.SeqNo);\r\n this.setState({ productSelected: false });\r\n },\r\n },\r\n {\r\n label: \"No\",\r\n onClick: () => null,\r\n },\r\n ],\r\n });\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n\r\n validateFormOne = () => {\r\n const { ProductId, SFromNo, SToNo } = this.state;\r\n let errors = {};\r\n\r\n if (!ProductId) {\r\n errors.ProductId = \"Please select a product.\";\r\n }\r\n\r\n if (!SFromNo) {\r\n errors.SFromNo = \"Please enter Carton From No.\";\r\n }\r\n\r\n if (!SToNo) {\r\n errors.SToNo = \"Please enter Carton To No.\";\r\n } else if (parseInt(SFromNo) >= parseInt(SToNo)) {\r\n errors.SToNo = \"Carton From No. should be less than Carton To No.\";\r\n }\r\n\r\n this.setState({ errors });\r\n\r\n // Return true if no errors\r\n return Object.keys(errors).length === 0;\r\n };\r\n\r\n generateYearOptions = (startYear) => {\r\n const numberOfYears = 2;\r\n const options = [];\r\n for (let i = 0; i < numberOfYears; i++) {\r\n const year = startYear - i;\r\n options.push({ label: year.toString(), value: year });\r\n }\r\n return options;\r\n };\r\n\r\n YearhandleChange = (event) => {\r\n debugger;\r\n this.setState({ YearData: event.value });\r\n };\r\n\r\n validateForm = () => {\r\n const { ProductId, SFromNo, SToNo, PFromNo, PToNo, PQty, totalQty } =\r\n this.state;\r\n let errors = {};\r\n\r\n if (!ProductId) {\r\n errors.ProductId = \"Please select a product.\";\r\n }\r\n\r\n if (!SFromNo) {\r\n errors.SFromNo = \"Please enter Carton From No.\";\r\n }\r\n\r\n if (!SToNo) {\r\n errors.SToNo = \"Please enter Carton To No.\";\r\n } else if (parseInt(SFromNo) >= parseInt(SToNo)) {\r\n errors.SToNo = \"Carton From No. should be less than Carton To No.\";\r\n }\r\n\r\n if (!PFromNo) {\r\n errors.PFromNo = \"Please enter Primary From No.\";\r\n }\r\n\r\n if (!PToNo) {\r\n errors.PToNo = \"Please enter Primary To No.\";\r\n } else if (parseInt(PFromNo) >= parseInt(PToNo)) {\r\n errors.PToNo = \"Primary From No. should be less than Primary To No.\";\r\n }\r\n\r\n if (Number(PQty) !== totalQty) {\r\n errors.PQty = \"Primary Qty should match the Total quantity required.\";\r\n }\r\n\r\n this.setState({ errors });\r\n\r\n // Return true if no errors\r\n return Object.keys(errors).length === 0;\r\n };\r\n\r\n // create html part\r\n render() {\r\n const items = [{ label: \"Transaction\" }, { label: \"Secondary Packing\" }];\r\n const { PQty, totalQty, CartonTotalQty, errors, YearData, yearOptions } =\r\n this.state;\r\n const { divStyle, divStyleTwo, message, messageTwo } = this.state;\r\n const TabView = (\r\n {\r\n this.setState({ Tvisible: false });\r\n }}\r\n >\r\n
\r\n {\" \"}\r\n {\r\n this.setState({ CartonName: e.target.value.toString().trim() });\r\n }}\r\n onKeyDown={(e) => {\r\n if (e.key == \"Enter\") {\r\n if (\r\n e.target.value.includes(\"SID\") &&\r\n (e.target.value.match(/SID/g) || []).length == 1 &&\r\n (e.target.value.match(/XP/g) || []).length == 1 &&\r\n (\r\n e.target.value.match(\r\n /SID-XP-(19|20)\\d{2}-[0-9]\\d{6,10}/g\r\n ) || []\r\n ).length == 1\r\n ) {\r\n this.submitFormFinal(e);\r\n } else {\r\n this.props.showWarn(\"Invalid Cartons\");\r\n this.setState({ CartonName: \"\" });\r\n }\r\n }\r\n }}\r\n ref={this.autorefCID}\r\n />\r\n
\r\n \r\n );\r\n const home = { icon: \"pi pi-home\", url: \"/dashboard\" };\r\n\r\n let header2 = (\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n );\r\n\r\n return (\r\n
\r\n
\r\n

Product Packing

\r\n
\r\n
\r\n
\r\n
\r\n {/* Select Year */}\r\n
\r\n \r\n \r\n this.YearhandleChange(e)}\r\n options={this.state.yearOptions}\r\n optionValue=\"value\"\r\n optionLabel=\"label\"\r\n className=\"form-control custom-select\"\r\n placeholder=\"Select Year\"\r\n name=\"YearData\"\r\n filter\r\n disabled={!this.state.istextEnabledSec}\r\n style={{\r\n width: \"130px\"\r\n }} // Adjust width as needed\r\n />\r\n
\r\n {errors.YearData && (\r\n

{errors.YearData}

\r\n )}\r\n
\r\n
\r\n \r\n

{`Total Carton / 总纸箱 : ${CartonTotalQty}`}

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

\r\n\r\n Primary Item Qty / 主要物品数量 :\r\n {this.state.totalQty}\r\n

\r\n
\r\n
\r\n\r\n
\r\n
\r\n {/* Secondary Product */}\r\n \r\n \r\n Select Product / 选择产品\r\n \r\n this.handleChange(e)}\r\n options={this.props.ProductData}\r\n optionValue=\"value\"\r\n optionLabel=\"label\"\r\n className=\"form-control custom-select\"\r\n placeholder=\"Select Product\"\r\n name=\"ProductId\"\r\n filter\r\n disabled={!this.state.istextEnabledSec}\r\n style={{ width: \"134px\" }}\r\n />\r\n
\r\n {errors.ProductId && (\r\n

{errors.ProductId}

\r\n )}\r\n
\r\n\r\n {/* FromNo */}\r\n
\r\n \r\n \r\n \r\n
\r\n {errors.SFromNo && (\r\n

{errors.SFromNo}

\r\n )}\r\n
\r\n\r\n {/* To No */}\r\n
\r\n \r\n \r\n \r\n {errors.SToNo && (\r\n

\r\n {errors.SToNo}\r\n

\r\n )}\r\n
\r\n
\r\n \r\n\r\n
\r\n {/* P_From No */}\r\n
\r\n \r\n \r\n \r\n {errors.PFromNo && (\r\n

{errors.PFromNo}

\r\n )}\r\n
\r\n
\r\n\r\n {/* P_To No */}\r\n
\r\n \r\n \r\n \r\n
\r\n {errors.PToNo &&

{errors.PToNo}

}\r\n \r\n\r\n {/* P_Qty */}\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n {errors.PQty &&

{errors.PQty}

}\r\n \r\n \r\n
\r\n {/* Primary Packing Size */}\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
{/* Primary Packing Size */}
\r\n \r\n

\r\n
\r\n
\r\n {\r\n this.setState({ rvisible: false });\r\n }}\r\n >\r\n
\r\n
\r\n
Define in min 5 char
\r\n \r\n \r\n
\r\n
\r\n
\r\n {\r\n this.setState({ rvisible: false });\r\n this.submitForm(e);\r\n }}\r\n className=\"btn btn-primary\"\r\n >\r\n Submit\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n {TabView}\r\n
\r\n
\r\n \r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n console.log(\"Scaned DATA:\", state.secondaryPacking?.Product);\r\n return {\r\n CartonDDL: state.Carton?.cartonddl,\r\n Tvisible: state.secondaryPacking?.Tvisible,\r\n code: state.secondaryPacking.Product,\r\n scanItems: state.secondaryPacking?.scanneditems,\r\n secondaryItems: state.secondaryPacking?.secondaryItems,\r\n second: state.secondaryPacking.items,\r\n warningAudio: state.secondaryPacking?.warning,\r\n alreadyPackedAudio: state.secondaryPacking?.alreadyPacked,\r\n ProductData:\r\n (typeof state.product.prdctddl !== \"undefined\" &&\r\n state.product.prdctddl !== null) === true\r\n ? state.product?.prdctddl\r\n : null,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n dispatch: dispatch,\r\n fetchCartonList: () => {\r\n dispatch(CartonActions.GetActiveCartonDDL());\r\n },\r\n GetProductByQrScan: (QrData, PackingSize) =>\r\n dispatch(ProductPackingActions.getProductByQrScan(QrData, PackingSize)),\r\n removeItem: (data) => dispatch(ProductPackingActions.removeItem(data)),\r\n ProductPackingSave: (formData) =>\r\n dispatch(ProductPackingActions.ProductPackingSave(formData)),\r\n showWarn: (message) => dispatch(alertActions.warning(message)),\r\n GetSecondaryPacking: (tblObj) =>\r\n dispatch(ProductPackingActions.getSecondaryPacking(tblObj)),\r\n warning: (bool) => dispatch(ProductPackingActions.warning(bool)),\r\n alreadyPacked: (bool) =>\r\n dispatch(ProductPackingActions.alreadyPacked(bool)),\r\n getPrdctDDL: (userId) =>\r\n dispatch(productMasterActions.getPrdctDDLForSecondary(1, userId)),\r\n };\r\n};\r\nexport default connect(mapStateToProps, mapDispatchToProps)(ProductPacking);\r\n","import { authHeader, handleResponse } from '../helpers';\r\nexport const TertiaryPackingService = { \r\n ControllerName: 'TertiaryPacking',\r\n getProductByQrScan,\r\n fetchCartonData,\r\n saveTertiaryPacking,\r\n getTertiaryPacking,\r\n GetTertiaryPackingScan\r\n};\r\n\r\n// Get Product Details by Qr code Scanning\r\nfunction getProductByQrScan(data) { \r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}${this.ControllerName}/GetProductByQrScan`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction fetchCartonData(data) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader(),\r\n //body: JSON.stringify(data)\r\n };\r\n\r\n return fetch(`${process.env.REACT_APP_API_URL}TertiaryPacking/GetCartonDDL`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n\r\n// save seconday packing data\r\nfunction saveTertiaryPacking(data) { \r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}TertiaryPacking/Save`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n// Get Secondary packing Details \r\nfunction getTertiaryPacking(data) { \r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n body: JSON.stringify(data)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}TertiaryPacking/GetTertiaryPacking`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nfunction GetTertiaryPackingScan(sid, checkItemDate) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: authHeader(),\r\n //body: JSON.stringify(sid, checkItemDate, scanList)\r\n };\r\n return fetch(`${process.env.REACT_APP_API_URL}Dispatch/GetTertiaryPackingScan/${sid}/${checkItemDate}`, requestOptions)\r\n .then(handleResponse);\r\n }\r\n\r\n\r\n","import { TertiaryPackingConstants } from \"../constants/TertiaryPackingConstants\";\r\nimport { TertiaryPackingService } from \"../services/TertiaryPackingService\";\r\nimport { alertActions } from \".\";\r\n\r\nexport const TertiaryPackingActions = {\r\n getProductByQrScan,\r\n CartonData,\r\n updateScannedList,\r\n saveTertiaryPacking,\r\n getTertiaryPacking,\r\n GetTertiaryPackingScan,\r\n warning,\r\n alreadyPacked,\r\n};\r\n\r\n//fetchCartonData\r\n\r\nfunction getProductByQrScan(data, scannedList) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n\r\n TertiaryPackingService.getProductByQrScan(data).then(\r\n (response) => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n const resdata = response.ResponseData;\r\n if (resdata.ProductID > 0) {\r\n let checkseqNo = scannedList?.filter(\r\n (y) => y.SeqNo == resdata.SeqNo\r\n );\r\n if (checkseqNo && checkseqNo.length > 0) {\r\n dispatch(warning(response.ResponseMessage));\r\n dispatch(alertActions.warning(\"already Scanned\"));\r\n return;\r\n }\r\n let IscheckSameProduct = scannedList?.filter(\r\n (y) => y.ProductID == resdata.ProductID\r\n );\r\n if (IscheckSameProduct && IscheckSameProduct.length == 0) {\r\n dispatch(\r\n alertActions.warning(\"You can pack only same product\")\r\n );\r\n return;\r\n }\r\n\r\n dispatch(success(response.ResponseData));\r\n }\r\n } else if (response.ResponseCode === \"400\") {\r\n ;\r\n dispatch(warning(response.ResponseMessage));\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return { type: TertiaryPackingConstants.ProductByQrScan_REQUEST, data };\r\n }\r\n function success(data) {\r\n return { type: TertiaryPackingConstants.ProductByQrScan_SUCCESS, data };\r\n }\r\n function warning(data) {\r\n return {\r\n type: TertiaryPackingConstants.ProductByQrScan_Warning,\r\n data,\r\n };\r\n }\r\n function failure(error) {\r\n return { type: TertiaryPackingConstants.ProductByQrScan_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction CartonData(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n TertiaryPackingService.fetchCartonData(obj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: TertiaryPackingConstants.GETALL_CARTON_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: TertiaryPackingConstants.GETALL_CARTON_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: TertiaryPackingConstants.GETALL_CARTON_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction updateScannedList(updatedList) {\r\n return {\r\n type: TertiaryPackingConstants.UPDATE_SCANNED_REQUEST,\r\n updatedList,\r\n };\r\n}\r\n\r\nfunction saveTertiaryPacking(data) {\r\n return (dispatch) => {\r\n dispatch(request(data));\r\n\r\n TertiaryPackingService.saveTertiaryPacking(data).then(\r\n (response) => {\r\n //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\r\n dispatch(alertActions.success(response.ResponseMessage));\r\n var scanItems = [];\r\n updateScannedList(scanItems);\r\n getTertiaryPacking(scanItems);\r\n } else if (response.ResponseCode === \"400\") {\r\n dispatch(alertActions.warning(response.ResponseMessage));\r\n } else {\r\n dispatch(alertActions.error(response.ResponseMessage));\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(data) {\r\n return {\r\n type: TertiaryPackingConstants.SAVE_TERTIARY_PACKING_RESUEST,\r\n data,\r\n };\r\n }\r\n function failure(error) {\r\n return {\r\n type: TertiaryPackingConstants.SAVE_TERTIARY_PACKING_FAILURE,\r\n error,\r\n };\r\n }\r\n}\r\n\r\nfunction getTertiaryPacking(tblobj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n TertiaryPackingService.getTertiaryPacking(tblobj).then(\r\n (response) => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData));\r\n },\r\n (error) => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: TertiaryPackingConstants.GETALL_REQUEST };\r\n }\r\n function success(data) {\r\n return { type: TertiaryPackingConstants.GETALL_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: TertiaryPackingConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\n//GetTertiaryPackingScan\r\nfunction GetTertiaryPackingScan(qr, flag, scannedItem) {\r\n return (dispatch) => {debugger\r\n dispatch(request());\r\n TertiaryPackingService.GetTertiaryPackingScan(qr, flag).then(\r\n (response) => {debugger\r\n dispatch(loadingData(false));\r\n if (response.ResponseCode == \"200\") {\r\n dispatch(success(response));\r\n } else {\r\n ;\r\n dispatch(warning(response.ResponseMessage));\r\n //dispatch(alertActions.warning(response.ResponseMessage))\r\n dispatch(success(response));\r\n }\r\n },\r\n (error) => {\r\n dispatch(loadingData(false));\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: TertiaryPackingConstants.GETALL_SCAN_REQUEST };\r\n }\r\n function success(data) {\r\n return { type: TertiaryPackingConstants.GETALL_SCAN_SUCCESS, data };\r\n }\r\n function failure(error) {\r\n return { type: TertiaryPackingConstants.GETALL_SCAN_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction alreadyPacked(isbool) {\r\n return {\r\n type: TertiaryPackingConstants.Alreadypacked,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction warning(isbool) {\r\n return {\r\n type: TertiaryPackingConstants.Warning,\r\n isbool,\r\n };\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: TertiaryPackingConstants.LOADING_REQUEST,\r\n isbool,\r\n };\r\n}\r\n","import React, { Component } from \"react\";\r\nimport \"primereact/resources/themes/saga-blue/theme.css\";\r\nimport \"primereact/resources/primereact.min.css\";\r\nimport \"primeicons/primeicons.css\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { confirmAlert } from \"react-confirm-alert\"; // Import\r\nimport { connect } from \"react-redux\";\r\nimport { TertiaryPackingActions } from \"../../actions/TertiaryPackingActions.js\";\r\nimport PrintDispatchService from \"../../services/PrintDispatchService\";\r\nimport MessageComponent from \"../../templates/Message\";\r\nimport { productMasterActions } from \"../../actions/productMasterActions.js\";\r\nimport { DispatchActions } from \"../../actions/DispatchActions.js\";\r\nimport { Button } from \"primereact/button\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport tableRequest from \"../../models/tableRequest.js\";\r\nimport { RedemptionApprovalActions } from \"../../actions/RedemptionApprovalActions.js\";\r\nimport $ from \"jquery\";\r\nimport { BreadCrumb } from \"primereact/breadcrumb\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport { Card } from \"primereact/card\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { secondaryPackingActions } from \"../../actions/secondaryPackingAction.js\";\r\nimport alreadyPacked from \"../../assets/audio/AlreadyScanned.mp3\";\r\nimport invalidScan from \"../../assets/audio/InvalidScan.mp3\";\r\n\r\nclass Dispatch extends Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.getUserList = this.getUserList.bind(this);\r\n this.PrintDispatchService = new PrintDispatchService();\r\n // this.DispatchService = new DispatchService();\r\n // this.PrintDispatchService = new PrintDispatchService();\r\n // this.ApiService = new ApiService();\r\n // this.WareHouseMaterService = new WareHouseMaterService();\r\n this.tblResponse = new tableRequest();\r\n this.alreadyPacked = new Audio(alreadyPacked);\r\n this.invalidScan = new Audio(invalidScan);\r\n this.state = {\r\n DealerId: \"\",\r\n DealerName: \"\",\r\n GstNo: \"\",\r\n OrderBookingNo: \"\",\r\n SONumber: \"\",\r\n SONo: \"\",\r\n scanTxt: \"\",\r\n UserId: \"\",\r\n warehouseVisible: true,\r\n visible: false,\r\n radio: false,\r\n isold: false,\r\n cartoonLoader: false,\r\n scanItemLoader: true,\r\n remarkVisible: false,\r\n olderstockVisible: false,\r\n eventBlock: false,\r\n sortIcon: false,\r\n sortOrder: \"1\",\r\n formError: {},\r\n UserDDL: [],\r\n DispatchDetails: [],\r\n SelectedDDL: [],\r\n wareHouseDDL: [],\r\n WareHouseFactoryDDL: [],\r\n SendTo: [],\r\n buttonLabel: \"Submit\",\r\n sales: [],\r\n scanItems: [],\r\n scanDisp: [],\r\n olderdata: [],\r\n loading: true,\r\n first: 0,\r\n rows: 10,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n emptyMessage: \"No Data found\",\r\n bill_Address1: \"\",\r\n bill_Address2: \"\",\r\n bill_City: \"\",\r\n bill_Country: \"\",\r\n bill_Pincode: \"\",\r\n bill_State: \"\",\r\n ship_Address1: \"\",\r\n ship_Address2: \"\",\r\n ship_City: \"\",\r\n ship_Country: \"\",\r\n ship_Pincode: \"\",\r\n ship_State: \"\",\r\n IsOldProduct: false,\r\n Remark: \"\",\r\n globalFilter: null,\r\n needtoSaveDispatch: \"\",\r\n };\r\n this.hideFunc = this.hideFunc.bind(this);\r\n this.actionTemplate = this.actionTemplate.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n //this.sendToEvent = this.sendToEvent.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.submitRemark = this.submitRemark.bind(this);\r\n this.onPage = this.onPage.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.ScanItem = this.ScanItem.bind(this);\r\n this.onValueChange = this.onValueChange.bind(this);\r\n }\r\n //trigger api function on page call\r\n componentDidMount() {\r\n setTimeout(() => {\r\n this.GetDispatch();\r\n // this.GetWareHouse(0);\r\n const objtoprint = {\r\n CartonId: \"DID-2020-21-00001\",\r\n CreatedDt: \"14/07/20\",\r\n Qty: \"2\",\r\n userDetail: {\r\n UserId: 30,\r\n Token: null,\r\n RefreshToken: null,\r\n ReferenceID: \"CE1215F5-44DE-46F0-B9B7-72E1D1B24172\",\r\n Username: \"ajaytestdealer\",\r\n Password: null,\r\n FirstName: \"new\",\r\n LastName: \"gupta\",\r\n Email: null,\r\n MobileNo: \"8181818181\",\r\n UserType: 2,\r\n ProfileImage: null,\r\n DeviceType: null,\r\n IsActive: true,\r\n InActiveReason: null,\r\n CreatedBy: null,\r\n CreatedDt: \"2020-07-10T13:57:11.46\",\r\n UpdatedBy: null,\r\n UpdatedDt: null,\r\n Salt: null,\r\n CreatedDate: null,\r\n IsResetPassword: false,\r\n TotalRows: 0,\r\n userId: 0,\r\n Id: 0,\r\n ship_Country: \"101\",\r\n ship_State: \"1\",\r\n ship_City: \"93\",\r\n ship_CountryName: \"India\",\r\n ship_StateName: \"Andaman & Nicobar Islands\",\r\n ship_CityName: \"Carnicobar\",\r\n ship_Address1: \"Add1\",\r\n ship_Address2: \"Add2\",\r\n ship_Pincode: \"1902929\",\r\n bill_Country: \"101\",\r\n bill_State: \"4\",\r\n bill_City: \"91\",\r\n bill_CountryName: \"India\",\r\n bill_StateName: \"Assam\",\r\n bill_CityName: \"Cachar\",\r\n bill_Address1: \"Add1\",\r\n bill_Address2: \"Add2\",\r\n bill_Pincode: \"1902929\",\r\n },\r\n cartonList: [\r\n {\r\n ProductName: \"KROSIN-AG\",\r\n TertiaryCartonId: \"TID-2020-21-00001\",\r\n TotalSecondaryCarton: null,\r\n CartonId: null,\r\n TotalQty: \"2\",\r\n ProductUOM: \"Pieces\",\r\n },\r\n {\r\n ProductName: \"Keetnashak\",\r\n TertiaryCartonId: \"TID-2020-21-00002\",\r\n TotalSecondaryCarton: null,\r\n CartonId: null,\r\n TotalQty: \"3\",\r\n ProductUOM: \"Pieces\",\r\n },\r\n ],\r\n };\r\n }, 1000);\r\n\r\n $(\".p-column-title\").on(\"click\", function () {\r\n $(this)\r\n .next()\r\n .removeClass(\"pi-sort\")\r\n .toggleClass(\"pi-sort-up\")\r\n .addClass(\"pi-sort-down\");\r\n });\r\n\r\n this.props.UserData(this.tblResponse);\r\n\r\n //this.GetActiveUsers();\r\n //if user type is 1 state of visible will be set to true\r\n // if (this.ApiService.getUserType() == 1) {\r\n // this.setState({\r\n // visible: true,\r\n // });\r\n // }\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (\r\n this.state.Download &&\r\n this.props.IsDownload >= 1 &&\r\n prevProps.IsDownload != this.props.IsDownload\r\n ) {\r\n const resdata = this.props.Dispatch;\r\n //if ResponseCode is 200 success message will be shown else will move to 'else statement'\r\n if (resdata && resdata !== null && resdata[0].ResponseCode === \"200\") {\r\n //console.log(resdata[0].ResponseData);\r\n //this.PrintDispatchService.Printpdf(resdata[0].ResponseData);\r\n this.state.scanItems = [];\r\n this.setState({\r\n scanItems: [],\r\n scanDisp: [],\r\n SendTo: [],\r\n //KREP-55\r\n remarkVisible: false,\r\n needtoSaveDispatch: \"\",\r\n radio: false,\r\n Download: false,\r\n });\r\n this.GetDispatch();\r\n }\r\n // else if (resdata && resdata.ResponseCode === \"400\") {\r\n // this.refs.Messchild.showWarn(resdata.ResponseMessage);\r\n // } else {\r\n // this.showError(\"Seems Scanned Items already Dispatched\");\r\n // this.formReset();\r\n // this.GetDispatch();\r\n // this.GetWareHouse(0);\r\n // }\r\n }\r\n }\r\n\r\n componentDidUpdate() {\r\n if (this.props.alreadyPackedAudio) {\r\n this.alreadyPacked.play();\r\n this.props.alreadyPacked(false);\r\n } else if (this.props.warningAudio) {\r\n this.invalidScan.play();\r\n this.props.warning(false);\r\n }\r\n }\r\n\r\n // PAGE EVENT CALL\r\n onPage(event) {\r\n this.setState({\r\n loading: true,\r\n });\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.GetDispatch();\r\n }, 250);\r\n }\r\n\r\n hideFunc() {\r\n this.setState({\r\n remarkVisible: false,\r\n olderstockVisible: false,\r\n // formHeading: 'Add User'\r\n });\r\n }\r\n\r\n // set lazy loading values\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n }\r\n\r\n // get users data list from api\r\n GetDispatch() {\r\n debugger\r\n this.formReset();\r\n this.setState({ cartoonLoader: false, eventBlock: false, SONo: \"\" });\r\n this.tblResponse.SortColumn = \"DispatchId\";\r\n this.tblResponse.PageSize = 10;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n // call every change of form and validation part also\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n let errors = this.state.formError;\r\n if (name == \"SendTo\") {\r\n this.setState({ scanTxt: \"\" });\r\n }\r\n const isValid = this.validateForm(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n\r\n getUserList(event) {\r\n const { name, value } = event.target;\r\n let errors = this.state.formError;\r\n if (name == \"SendTo\") {\r\n this.setState({ scanTxt: \"\" });\r\n }\r\n const isValid = this.validateForm(value, name);\r\n this.setState({ errors, [name]: value });\r\n this.setState({ UserId: event.target.value });\r\n this.props.UserData(event.target.value);\r\n const userpnt = {\r\n UserId: event.target.value,\r\n };\r\n }\r\n\r\n // validate form\r\n validateForm(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n //to validate each form field with required conditions\r\n switch (name) {\r\n case \"UserName\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.UserName = \"Please enter your username.\";\r\n } else errors.UserName = \"\";\r\n break;\r\n case \"SendTo\":\r\n ////console.log(value);\r\n this.state.bill_Address1 = value.bill_Address1;\r\n this.state.bill_Address2 = value.bill_Address2;\r\n this.state.bill_Pincode = value.bill_Pincode;\r\n this.state.bill_Country = value.bill_CountryName;\r\n this.state.bill_State = value.bill_StateName;\r\n this.state.bill_City = value.bill_CityName;\r\n this.state.ship_Address1 = value.bill_Address1;\r\n this.state.ship_Address2 = value.bill_Address2;\r\n this.state.ship_Pincode = value.bill_Pincode;\r\n this.state.ship_Country = value.bill_CountryName;\r\n this.state.ship_State = value.bill_StateName;\r\n this.state.ship_City = value.bill_CityName;\r\n this.setState({\r\n eventBlock: true,\r\n });\r\n break;\r\n default:\r\n break;\r\n }\r\n return IsValid;\r\n }\r\n\r\n // reset form text value\r\n formReset() {\r\n this.setState({\r\n ReferenceID: \"\",\r\n UserName: \"\",\r\n FirstName: \"\",\r\n LastName: \"\",\r\n Email: \"\",\r\n MobileNo: \"\",\r\n Password: \"\",\r\n ConfirmPassword: \"\",\r\n IsActive: true,\r\n });\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key, value]) => {\r\n errors[key] = \"\";\r\n });\r\n }\r\n\r\n // open Dialog\r\n openDialog() {\r\n this.setState({ visible: true });\r\n this.formReset();\r\n }\r\n\r\n // submit packing\r\n submitForm(event) {\r\n event.preventDefault();\r\n //if SO length is 0\r\n // if (this.state.SONo.length == 0) {\r\n // this.refs.Messchild.showWarn(\"Enter Sales Order Number\");\r\n // return;\r\n // }\r\n //if scanItems length is 0\r\n if (this.state.scanItems.length == 0) {\r\n this.refs.Messchild.showWarn(\"Scan First\");\r\n return;\r\n } else {\r\n let formData = {\r\n DealerId: this.props.DealerId,\r\n SONo: this.state.SONumber,\r\n scanned: this.state.scanItems,\r\n SendFrom: \"China\",\r\n };\r\n // if old stock is greater than 0\r\n if (this.state.isold) {\r\n //open Dialog to add remark\r\n this.setState({\r\n remarkVisible: true,\r\n needtoSaveDispatch: formData,\r\n });\r\n } else {\r\n this.SaveDispatch(formData);\r\n }\r\n }\r\n }\r\n\r\n submitRemark(event) {\r\n event.preventDefault();\r\n let formD = { ...this.state.needtoSaveDispatch };\r\n formD.Remark = this.state.Remark;\r\n this.SaveDispatch(formD);\r\n }\r\n\r\n SaveDispatch(formData) {\r\n this.setState({ scanItemLoader: false, Download: true });\r\n this.props.createDispatch(formData);\r\n setTimeout(() => {\r\n this.setState({\r\n scanItems: [],\r\n scanDisp: [],\r\n SendTo: [],\r\n //KREP-55\r\n remarkVisible: false,\r\n needtoSaveDispatch: \"\",\r\n radio: false,\r\n Download: false,\r\n });\r\n this.GetDispatch();\r\n }, 3000);\r\n }\r\n\r\n // get active carton drop down list\r\n // GetActiveUsers() {\r\n // this.props.UserDDL.filter((data) => {\r\n // const resdata = data.data;\r\n // //if ResponseCode is 200 UserDDL state will be set to ResponseData\r\n // if (resdata !== null && resdata.ResponseCode === \"200\") {\r\n // const Dealer = (resdata.ResponseData).filter((x) => x.UserType == 1);\r\n // this.setState({\r\n // SelectedDDL: Dealer,\r\n // warehouseVisible: true,\r\n // });\r\n // this.setState({\r\n // UserDDL: resdata.ResponseData,\r\n // });\r\n // }\r\n // });\r\n // }\r\n getDropValueOfUser() {\r\n let User = \"\";\r\n this.props.Userdataa.filter((x) => {\r\n if (x.value === this.props.Userdataa) {\r\n User = x.label;\r\n }\r\n });\r\n return User;\r\n }\r\n\r\n // scan qr code\r\n ScanItem(e) {\r\n if (e.key === \"Enter\") {\r\n let qr = e.target.value;\r\n qr = qr.toString().trim();\r\n // if (\r\n // this.state.SONo.length == 0 ||\r\n // this.props.SODetails == (undefined || null)\r\n // ) {\r\n // this.refs.Messchild.showWarn(\"Enter Sales Order Number\");\r\n // return;\r\n //}\r\n if (qr.includes(\"TID\") || qr.includes(\"SID\")) {\r\n this.setCartonDetails(qr, true);\r\n } else {\r\n this.refs.Messchild.showWarn(\"Invalid Scan\");\r\n this.props.warning(true);\r\n }\r\n this.setState({\r\n scanTxt: \"\",\r\n });\r\n }\r\n }\r\n\r\n // set tertiary details in grid\r\n\r\n setCartonDetails(qr, checkItemDate) {\r\n let id = 1;\r\n this.state.scanItems.forEach((element) => {\r\n if (element.CartonId == qr) {\r\n debugger\r\n this.props.alreadyPacked(true);\r\n this.refs.Messchild.showWarn(\"Already Scanned..!\");\r\n id = 2;\r\n return;\r\n }\r\n });\r\n\r\n // setTimeout(() => {\r\n if (id == 1) {\r\n this.props.GetTertiaryPackingScan(\r\n qr,\r\n checkItemDate,\r\n this.state.scanItems\r\n );\r\n //.then((data) => {\r\n setTimeout(() => {\r\n debugger\r\n const resdata = this.props.TertiaryscanItems;\r\n let _scanList = [];\r\n let _scanDisp = [];\r\n //const resdata = data.data;\r\n //if ResponseCode is 200 else will move to 'else statement'\r\n if (resdata && resdata !== null && resdata.ResponseCode === \"200\") {\r\n debugger\r\n //disable\r\n var ProdData = resdata.ResponseData.map((d) => {\r\n return {\r\n ProductId: d.ProductId,\r\n PQty: d.PQty,\r\n };\r\n });\r\n\r\n var contains = false;\r\n\r\n // const result = ProdData.map(({ ProductId, PQty }) => ({\r\n // contains: this.state.OrderInfos.some(\r\n // (item) =>\r\n // item.ProductId.toString() === ProductId.toString() &&\r\n // item.RemainingQty >= PQty\r\n // ),\r\n // }));\r\n\r\n // const containsExtraProducts = result.some(\r\n // (item) => item.contains == false\r\n // );\r\n\r\n // if (!containsExtraProducts) {\r\n // this.state.OrderInfos.forEach((val) => {\r\n // ProdData.forEach((i) => {\r\n // if (\r\n // i.ProductId.toString() == val.ProductId.toString() &&\r\n // val.RemainingQty >= i.PQty\r\n // ) {\r\n // contains = true;\r\n // val.AddedQty = val.AddedQty + i.PQty;\r\n // val.RemainingQty = val.RemainingQty - i.PQty;\r\n // }\r\n // });\r\n // });\r\n // }\r\n\r\n if (contains != 'false') {\r\n debugger\r\n resdata.ResponseData.forEach((element) => {\r\n debugger\r\n // element.MFGDate =\r\n // element.MFGDate != null || undefined\r\n // ? element.MFGDate.substring(0, 10)\r\n // : element.MFGDate;\r\n // element.EXPDate =\r\n // element.EXPDate != null || undefined\r\n // ? element.EXPDate.substring(0, 10)\r\n // : element.EXPDate;\r\n\r\n if (this.state.scanItems.length > 0) {\r\n debugger\r\n let check = this.state.scanItems.filter(\r\n (y) =>\r\n y.Id == element.Id &&\r\n y.ProductId == element.ProductId//&&\r\n // y.MFGDate == element.MFGDate &&\r\n // y.EXPDate == element.EXPDate\r\n );\r\n\r\n if (check.length > 0) {\r\n this.refs.Messchild.showWarn(\"already Scanned\");\r\n }\r\n }\r\n\r\n this.state.scanItems.push(element);\r\n //this.state.scanItems.push(element);\r\n if (this.state.scanDisp.length > 0) {\r\n let checkseqNo = this.state.scanDisp.filter(\r\n (y) => y.CartonId == element.CartonId\r\n );\r\n\r\n if (checkseqNo.length > 0) {\r\n return;\r\n }\r\n }\r\n\r\n this.state.scanDisp.push(element);\r\n //this.state.scanDisp.push(element);\r\n });\r\n // if (_scanList && _scanList.length > 0) {\r\n // _scanList.forEach((scnItem) => {\r\n // this.state.scanItems.push(scnItem);\r\n // });\r\n // }\r\n\r\n // if (_scanDisp && _scanDisp.length > 0) {\r\n // _scanDisp.forEach((scnItem) => {\r\n // this.state.scanDisp.push(scnItem);\r\n // });\r\n // }\r\n this.setState({\r\n scanItems: this.state.scanItems,\r\n scanTxt: \"\",\r\n radio: true,\r\n //scanDisp: _scanDisp\r\n });\r\n } else {\r\n if (!contains) {\r\n this.props.warning(true);\r\n this.refs.Messchild.showWarn(\r\n \"This Carton contains some extra products which are not part of this order\"\r\n );\r\n }\r\n }\r\n } else if (\r\n resdata &&\r\n resdata !== null &&\r\n resdata.ResponseCode === \"500\"\r\n ) {\r\n let checkseqNo = [];\r\n resdata.ResponseData.forEach((element) => {\r\n if (this.state.scanItems.length > 0) {\r\n let chk = this.state.scanItems.filter(\r\n (y) => y.CartonId == element.CartonId\r\n );\r\n if (chk.length != 0) {\r\n checkseqNo.push(chk);\r\n }\r\n if (checkseqNo.length == resdata.ResponseData.length) {\r\n this.setCartonDetails(qr, false);\r\n return;\r\n }\r\n }\r\n });\r\n /// will show list and input yes or no\r\n ///this.refs.Messchild.showWarn(resdata.ResponseMessage);\r\n // if no\r\n //resolved KREP-132,KREP-121(CR)\r\n if (\r\n checkseqNo == undefined ||\r\n checkseqNo.length != resdata.ResponseData.length\r\n ) {\r\n // confirmAlert({\r\n // title: resdata.ResponseMessage,\r\n // message: 'Are you sure you want to continue scanning the latest stock.',\r\n // buttons: [\r\n // {\r\n // label: 'Yes',\r\n // onClick: () => {\r\n // this.setCartonDetails(qr, false)\r\n // this.setState({ isold: true })\r\n // }\r\n // },\r\n // {\r\n // label: 'No',\r\n // onClick: () => {\r\n // let olddata = [];\r\n // (resdata.ResponseData).forEach(e1 => {\r\n // let scanned\r\n // (this.state.scanItems).forEach(e2 => {\r\n // if (e1.CartonId == e2.CartonId) {\r\n // scanned = 1\r\n // }\r\n // });\r\n // if (scanned == undefined) {\r\n // e1.EXPDate = (e1.EXPDate != null || undefined) ? e1.EXPDate.substring(0, 10) : e1.EXPDate\r\n // olddata.push(e1)\r\n // }\r\n // });\r\n // this.setState({\r\n // olderstockVisible: true,\r\n // olderdata: olddata\r\n // })\r\n // }\r\n // }\r\n // ]\r\n // });\r\n }\r\n } else {\r\n // this.refs.Messchild.showWarn(resdata.ResponseMessage);\r\n }\r\n }, 1000);\r\n //});\r\n }\r\n // }, 50);\r\n }\r\n // delete user data\r\n deleteScanned(TertiaryCartonId) {\r\n var ProdData = this.state.scanItems.map((d) => {\r\n if (d.CartonId == TertiaryCartonId) {\r\n return {\r\n ProductId: d.ProductId,\r\n PQty: d.PQty,\r\n };\r\n }\r\n });\r\n\r\n this.state.OrderInfos.forEach((val) => {\r\n ProdData.forEach((i) => {\r\n if (\r\n i &&\r\n i.ProductId.toString() == val.ProductId.toString() &&\r\n val.RemainingQty >= i.PQty\r\n ) {\r\n val.AddedQty = val.AddedQty - i.PQty;\r\n val.RemainingQty = val.RemainingQty + i.PQty;\r\n }\r\n });\r\n });\r\n\r\n let arrayfilter = this.state.scanItems.filter(\r\n (x) => x.CartonId != TertiaryCartonId\r\n );\r\n\r\n this.setState({\r\n scanItems: arrayfilter,\r\n });\r\n let array = this.state.scanDisp.filter(\r\n (x) => x.CartonId != TertiaryCartonId\r\n );\r\n\r\n this.setState({\r\n scanDisp: array,\r\n });\r\n }\r\n\r\n GetWareHouse(compId) {\r\n this.WareHouseMaterService.GetWareHouseDDL(compId).then((data) => {\r\n const resdata = data.data;\r\n //if ResponseData is not null\r\n if (\r\n resdata !== null &&\r\n resdata.ResponseData !== null &&\r\n resdata.ResponseData.length > 0\r\n ) {\r\n const filteredWareHouse = resdata.ResponseData.filter(\r\n (x) => x.ID != this.ApiService.getWareHouseId()\r\n );\r\n\r\n this.setState({\r\n WareHouseFactoryDDL: filteredWareHouse,\r\n });\r\n }\r\n });\r\n }\r\n\r\n // seach table\r\n searchFilter(e) {\r\n this.setState({\r\n loading: true,\r\n });\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.GetDispatch();\r\n }\r\n\r\n callbackFunction = (childData) => {\r\n this.setState({ message: childData });\r\n };\r\n\r\n onValueChange(event) {\r\n const val = event.target.value;\r\n\r\n if (val == \"Dealer\") {\r\n const Dealer = this.state.UserDDL.filter((x) => x.UserType == 2);\r\n this.setState({\r\n SelectedDDL: Dealer,\r\n warehouseVisible: true,\r\n });\r\n }\r\n if (val == \"Distributor\") {\r\n const Distributor = this.state.UserDDL.filter((x) => x.UserType == 1);\r\n\r\n this.setState({\r\n SelectedDDL: Distributor,\r\n warehouseVisible: true,\r\n });\r\n }\r\n if (val == \"WareHouse\") {\r\n const wareHouse = this.state.WareHouseFactoryDDL.filter(\r\n (x) => x.IsFactory == 0\r\n );\r\n this.setState({\r\n wareHouseDDL: wareHouse,\r\n });\r\n\r\n this.setState({\r\n warehouseVisible: false,\r\n });\r\n }\r\n\r\n if (val == \"Factory\") {\r\n const fact = this.state.WareHouseFactoryDDL.filter(\r\n (x) => x.IsFactory == 1\r\n );\r\n this.setState({\r\n wareHouseDDL: fact,\r\n warehouseVisible: false,\r\n });\r\n }\r\n }\r\n\r\n //To fetch Sales Order Number Details\r\n fetchSODetails(e) {\r\n if (e.key === \"Enter\") {\r\n if (this.state.SONo.length == 0) {\r\n this.refs.Messchild.showWarn(\"Enter Sales Order Number\");\r\n return;\r\n } else {\r\n this.props.fetchSODetails(e.target.value);\r\n setTimeout(() => {\r\n this.setState({\r\n DispatchDetails: this.props.SODetails,\r\n });\r\n let value = this.props.SODetails;\r\n if (value && value.ResponseData != null) {\r\n this.state.bill_Address1 = value.ResponseData.Bill_Address;\r\n this.state.bill_Pincode = value.ResponseData.Bill_Pincode;\r\n this.state.bill_Country = value.ResponseData.Bill_Country;\r\n this.state.bill_State = value.ResponseData.Bill_State;\r\n this.state.bill_City = value.ResponseData.Bill_City;\r\n this.state.ship_Address1 = value.ResponseData.Ship_Address;\r\n this.state.ship_Pincode = value.ResponseData.Ship_Pincode;\r\n this.state.ship_Country = value.ResponseData.Ship_Country;\r\n this.state.ship_State = value.ResponseData.Ship_State;\r\n this.state.ship_City = value.ResponseData.Ship_City;\r\n this.setState({\r\n DealerCode: value.ResponseData.DealerCode,\r\n DealerId: value.ResponseData.DealerId,\r\n DealerName: value.ResponseData.DealerName,\r\n GstNo: value.ResponseData.GstNo,\r\n OrderBookingNo: value.ResponseData.OrderBookingNo,\r\n SONumber: value.ResponseData.SONumber,\r\n eventBlock: true,\r\n OrderInfos: value.ResponseData.OrderInfos,\r\n });\r\n } else {\r\n //this.refs.Messchild.showWarn(\"Invalid Sales Order Number\");\r\n }\r\n }, 2000);\r\n }\r\n }\r\n }\r\n\r\n // disabled checkbox\r\n activeTemplate(rowData, column) {\r\n return ;\r\n }\r\n\r\n // Sort table\r\n onSort(event) {\r\n this.setState({\r\n sortOrder: this.state.sortOrder === 1 ? 2 : 1,\r\n sortIcon: !this.state.sortIcon,\r\n });\r\n const sortField =\r\n event.sortField == \"CreatedDt\" ? \"CreatedDt\" : event.sortField;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\";\r\n this.GetDispatch();\r\n const clickData = document.getElementsByClassName(\r\n \"p-sortable-column-icon pi pi-fw pi-sort\"\r\n );\r\n ////console.log(event);\r\n }\r\n\r\n // edit form\r\n actionTemplate(rowData, column) {\r\n const deleteFunc = () => {\r\n confirmAlert({\r\n title: \"Confirm to delete\",\r\n message: \"Are you sure to do this.\",\r\n buttons: [\r\n {\r\n label: \"Yes\",\r\n onClick: () => this.deleteScanned(rowData.CartonId),\r\n },\r\n {\r\n label: \"No\",\r\n onClick: () => null,\r\n },\r\n ],\r\n });\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n\r\n // create html part\r\n render() {\r\n const items = [{ label: \"Transaction\" }, { label: \"Dispatch\" }];\r\n\r\n const home = { icon: \"pi pi-home\", url: \"/dashboard\" };\r\n let header = (\r\n
\r\n
\r\n
\r\n\r\n this.setState({ globalFilter: e.target.value })}\r\n placeholder=\"Global Search\"\r\n size=\"30\"\r\n />\r\n \r\n
\r\n
\r\n );\r\n\r\n let header2 = (\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n );\r\n\r\n return (\r\n
\r\n
\r\n <>\r\n \r\n {/* */}\r\n \r\n\r\n
\r\n\r\n
\r\n

Stock Receive

\r\n
\r\n\r\n\r\n
\r\n
\r\n {/* \r\n
\r\n {\r\n this.handleChange(e);\r\n }}\r\n name=\"SONo\"\r\n value={this.state.SONo}\r\n type=\"search\"\r\n className=\"form-control\"\r\n id=\"SONo\"\r\n onKeyDown={(e) => {\r\n this.fetchSODetails(e);\r\n }}\r\n />\r\n
*/}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n {\r\n this.handleChange(e);\r\n }}\r\n name=\"scanTxt\"\r\n value={this.state.scanTxt}\r\n type=\"search\"\r\n className=\"form-control\"\r\n id=\"scanTxt\"\r\n onKeyDown={(e) => {\r\n this.ScanItem(e);\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n\r\n
\r\n {/*
\r\n
\r\n \r\n {\r\n this.handleChange(e);\r\n }}\r\n name=\"SONo\"\r\n value={this.state.SONo}\r\n type=\"search\"\r\n className=\"form-control ml-2\"\r\n id=\"SONo\"\r\n onKeyDown={(e) => {\r\n this.fetchSODetails(e);\r\n }}\r\n />\r\n
\r\n\r\n
\r\n \r\n {\r\n this.handleChange(e);\r\n }}\r\n name=\"scanTxt\"\r\n value={this.state.scanTxt}\r\n type=\"search\"\r\n className=\"form-control ml-2\"\r\n id=\"scanTxt\"\r\n onKeyDown={(e) => {\r\n this.ScanItem(e);\r\n }}\r\n />\r\n
\r\n\r\n \r\n
*/}\r\n
\r\n
\r\n \r\n

Sales Order Details

\r\n
\r\n
\r\n \r\n  \r\n {this.state.DealerCode}\r\n
\r\n
\r\n \r\n  \r\n {this.state.OrderBookingNo}\r\n
\r\n
\r\n \r\n  \r\n {this.state.SONumber}\r\n
\r\n {/*
\r\n \r\n  \r\n {this.state.DealerName}\r\n
*/}\r\n {/*
\r\n \r\n  \r\n {this.state.GstNo}\r\n
*/}\r\n
\r\n {/*

Billing Address

\r\n
\r\n
\r\n \r\n  \r\n {this.state.bill_Address1}\r\n
\r\n
\r\n \r\n  \r\n {this.state.bill_City}\r\n
\r\n
\r\n \r\n  \r\n {this.state.bill_State}\r\n
\r\n
\r\n \r\n  \r\n {this.state.bill_Country}\r\n
\r\n
\r\n \r\n  \r\n {this.state.bill_Pincode}\r\n
\r\n
\r\n

Shipping Address

\r\n
\r\n
\r\n \r\n  \r\n {this.state.ship_Address1}\r\n
\r\n
\r\n \r\n  \r\n {this.state.ship_City}\r\n
\r\n
\r\n \r\n  \r\n {this.state.ship_State}\r\n
\r\n
\r\n \r\n  \r\n {this.state.ship_Country}\r\n
\r\n
\r\n \r\n  \r\n {this.state.ship_Pincode}\r\n
\r\n
*/}\r\n
\r\n
\r\n\r\n
\r\n \r\n

Order Info

\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n {/* */}\r\n \r\n \r\n {/* */}\r\n \r\n {/* \r\n */}\r\n \r\n \r\n\r\n
\r\n \r\n Receive Stock\r\n \r\n
\r\n \r\n \r\n
\r\n {/* */}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n //////console.log('state.Dispatch.SODetails', state.Dispatch.SODetails);\r\n return {\r\n TertiaryscanItems: state.TertiaryPacking.TertiaryscanItems,\r\n Userdataa: state.RedemptionApproval.Userdataa,\r\n SODetails: state.Dispatch.SODetails,\r\n DealerId: state.Dispatch.dealerId,\r\n Dispatch: state.Dispatch.Dispatch,\r\n DispatchData: state.Dispatch.items,\r\n IsDownload: state.Dispatch.isDownload,\r\n // ProductData: (typeof (state.product.prdctddl) !== \"undefined\" && state.product.prdctddl !== null) === true ? state.product?.prdctddl : null,\r\n // Issueseries: state.Dispatch.Issueseries,\r\n // MaxFromNo: state.Dispatch?.issueData?.ToNo == (null || undefined) ? 1 : (state.Dispatch?.issueData?.ToNo) + 1,\r\n // showDialog: state.Dispatch.showDialog,\r\n // showDialogue: state.Dispatch.showDialogue,\r\n // loading: state.company.loding\r\n warningAudio: state.secondaryPacking?.warning,\r\n alreadyPackedAudio: state.secondaryPacking?.alreadyPacked,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n GetTertiaryPackingScan: (qr, flag, scannedItem) =>\r\n dispatch(\r\n TertiaryPackingActions.GetTertiaryPackingScan(qr, flag, scannedItem)\r\n ),\r\n fetchApi: (obj) => {\r\n dispatch(DispatchActions.getAll(obj));\r\n },\r\n fetchSODetails: (SONo) => {\r\n dispatch(DispatchActions.fetchSODetails(SONo));\r\n },\r\n fetchProductApi: (obj) => {\r\n dispatch(productMasterActions.getProductName(obj));\r\n },\r\n getToNumber: () => {\r\n dispatch(DispatchActions.GetToNo());\r\n },\r\n UserData: (data) => dispatch(RedemptionApprovalActions.UserData(data)),\r\n createDispatch: (machine) =>\r\n dispatch(DispatchActions.CreateDispatch(machine)),\r\n updateDispatch: (machine) =>\r\n dispatch(DispatchActions.updateDispatch(machine)),\r\n onHideShow: (isbool) => dispatch(DispatchActions.onHideShow(isbool)),\r\n onHideShoww: (isbool) => dispatch(DispatchActions.onHideShoww(isbool)),\r\n getPrdctDDL: () => dispatch(productMasterActions.getPrdctDDL()),\r\n loadingData: (isLoding) => dispatch(DispatchActions.loadingData(isLoding)),\r\n warning: (bool) => dispatch(DispatchActions.warning(bool)),\r\n alreadyPacked: (bool) => dispatch(DispatchActions.alreadyPacked(bool)),\r\n };\r\n};\r\nexport default connect(mapStateToProps, mapDispatchToProps)(Dispatch);\r\n","import React, { Component } from 'react';\r\nimport 'primereact/resources/primereact.min.css';\r\nimport 'primeicons/primeicons.css';\r\nimport { DataTable } from 'primereact/datatable';\r\nimport { Column } from 'primereact/column';\r\n// import DispatchService from '../../services/DispatchService';\r\nimport { InputText } from 'primereact/inputtext';\r\nimport tableRequest from '../../models/tableRequest.js';\r\nimport { BreadCrumb } from 'primereact/breadcrumb';\r\n// import { ConfirmationModal } from '../../template/ConfirmationModal';\r\n// import MessageComponent from '../../template/Message';\r\n// import Loaders from '../../template/Loaders';\r\nimport { connect } from 'react-redux';\r\nimport $ from 'jquery';\r\n\r\nclass DispatchReceive extends Component {\r\n constructor(props) {\r\n super(props);\r\n // this.DispatchService = new DispatchService();\r\n this.tblResponse = new tableRequest();\r\n this.state = {\r\n DispatchId: \"\",\r\n globalFilter: null,\r\n visible: false,\r\n dispatchLoader: true,\r\n scanLoader: false,\r\n sortIcon: false,\r\n sortOrder: '1',\r\n formError: {\r\n DispatchId: \"\"\r\n },\r\n buttonLabel: 'Submit',\r\n sales: [],\r\n selectedStatus: null,\r\n receive: [],\r\n getrow: [],\r\n newrow: [],\r\n scanItems: [],\r\n stateover: [],\r\n loading: true,\r\n first: 0,\r\n rows: 100,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n emptyMessage: 'No Data found'\r\n }\r\n this.actionTemplate = this.actionTemplate.bind(this);\r\n this.activeTemplate = this.activeTemplate.bind(this);\r\n\r\n\r\n this.submitForm = this.submitForm.bind(this);\r\n this.SubmitReceive = this.SubmitReceive.bind(this);\r\n\r\n this.handleChange = this.handleChange.bind(this);\r\n this.hideFunc = this.hideFunc.bind(this);\r\n this.onPage = this.onPage.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.openDialog = this.openDialog.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n }\r\n //trigger api function on page call\r\n componentDidMount() {\r\n setTimeout(() => {\r\n // this.GetDispatchReceive();\r\n }, 1000);\r\n\r\n $('.p-column-title').on('click', function () {\r\n $(this).next().removeClass('pi-sort').toggleClass('pi-sort-up').addClass('pi-sort-down');\r\n });\r\n\r\n ////console.log(\"stateover1 :- \", this.state.stateover);\r\n }\r\n\r\n // PAGE EVENT CALL\r\n onPage(event) {\r\n this.setState({\r\n loading: true\r\n });\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.GetDispatchReceive();\r\n }, 250);\r\n }\r\n\r\n // set lazy loading values\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? 'ASC' : 'DESC';\r\n }\r\n\r\n // get Dispatch Receive data list from api\r\n GetDispatchReceive() { \r\n this.tblResponse.SortColumn = 'DispatchId'\r\n this.DispatchService.GetDispatchReceive(this.tblResponse).then(data => {\r\n this.setState({ scanLoader: true });\r\n\r\n const resdata = data.data;\r\n //if ResponseData not null\r\n if (resdata !== null && resdata.ResponseData !== null && resdata.ResponseData.length > 0) {\r\n this.datasource = resdata.ResponseData;\r\n this.setState({\r\n totalRecords: resdata.ResponseData[0].TotalRows,\r\n first: (this.tblResponse.First - 1),\r\n sales: this.datasource.slice(0, ((this.tblResponse.First - 1) + this.tblResponse.PageSize)),\r\n loading: false\r\n });\r\n }\r\n //if ResponseData is null\r\n else {\r\n this.datasource = null;\r\n this.setState({\r\n totalRecords: 0,\r\n first: 1,\r\n sales: null,\r\n loading: false\r\n });\r\n }\r\n });\r\n }\r\n\r\n // get Dispatch Receive data list from api\r\n\r\n\r\n handleCheckboxChange = event => {\r\n let newArray = [...this.state.receive, event.target.id];\r\n this.setState({\r\n receive: newArray\r\n });\r\n };\r\n\r\n // call every change of form and validation part also\r\n handleChange(event) {\r\n\r\n const { name, value } = event.target;\r\n let errors = this.state.formError;\r\n\r\n this.setState({ errors, [name]: value });\r\n }\r\n\r\n // validate form\r\n validateForm(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n //to validate each form field with required conditions\r\n switch (name) {\r\n case 'DispatchId':\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.DispatchId = \"Please enter DispatchId.\";\r\n }\r\n else if (!value.includes(\"DID\")) {\r\n IsValid = false;\r\n errors.DispatchId = \"Invalid DispatchId.\";\r\n }\r\n else errors.DispatchId = ''\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n\r\n // reset form text value\r\n formReset() {\r\n this.setState({\r\n DispatchId: \"\",\r\n\r\n\r\n });\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key]) => {\r\n errors[key] = '';\r\n });\r\n }\r\n\r\n hideFunc() {\r\n this.setState({\r\n visible: false,\r\n buttonLabel: \"Submit\",\r\n formHeading: \"Add Number Issue\",\r\n });\r\n this.formReset();\r\n }\r\n\r\n // open Dialog\r\n openDialog() {\r\n this.setState({ visible: true });\r\n this.formReset();\r\n }\r\n\r\n // submit packing\r\n submitForm(e) { \r\n // event.preventDefault(); \r\n let isfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n // this.setState({\r\n // DispatchId : e.target.value\r\n // });\r\n\r\n Object.entries(checkerror).map(([key]) => {\r\n\r\n const val = this.state[key];\r\n let valid = this.validateForm(e.target.value, key);//KREP-59 defect\r\n //form is not valid\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n });\r\n\r\n\r\n\r\n //form is valid\r\n if (isfrmvalid) {\r\n const formData = {\r\n\r\n DispatchId: e.target.value,\r\n }\r\n\r\n\r\n\r\n\r\n setTimeout(() => {\r\n // this.DispatchService.SaveDispatchReceive(formData).then(data => {\r\n // const resdata = data.data;\r\n // if (resdata !== null && resdata.ResponseCode === '200') {\r\n\r\n // this.refs.Messchild.showSuccess(resdata.ResponseMessage);\r\n\r\n // this.setState({\r\n // loading: true,\r\n // visible: false\r\n // });\r\n\r\n // this.formReset();\r\n this.GetDispatchReceive();\r\n\r\n // } else if (resdata.ResponseCode === '400') {\r\n // this.refs.Messchild.showWarn(resdata.ResponseMessage);\r\n // } else {\r\n // this.refs.Messchild.showError(resdata.ResponseMessage);\r\n // }\r\n // });\r\n }, 1000);\r\n\r\n\r\n }\r\n }\r\n\r\n\r\n // submit packing\r\n getDispatchCarton(e) {\r\n\r\n if (e.key === 'Enter') {\r\n e.preventDefault();\r\n let isfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n\r\n Object.entries(checkerror).map(([key]) => {\r\n\r\n const val = this.state[key];\r\n let valid = this.validateForm(e.target.value, key);//KREP-59 defect\r\n //form is not valid\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n });\r\n //form is valid\r\n if (isfrmvalid) {\r\n const formData = {\r\n DispatchId: e.target.value,\r\n }\r\n\r\n this.DispatchService.GetDispatchReceiveCarton(formData).then(data => {\r\n \r\n this.setState({ dispatchLoader: true });\r\n const resdata = data.data;\r\n //if response data is not null success message will be shown else will move to 'else statement'\r\n if (resdata.ResponseCode == \"200\" && resdata !== null && resdata.ResponseData !== null && resdata.ResponseData.length > 0) {\r\n this.datasource = resdata.ResponseData;\r\n\r\n this.setState({\r\n carton: this.datasource,\r\n loading: false,\r\n DispatchId: ''\r\n });\r\n if (resdata.ResponseData[0].ResponseMessage != null) {\r\n this.refs.Messchild.showSuccess(resdata.ResponseData[0].ResponseMessage);\r\n }\r\n else {\r\n\r\n }\r\n\r\n } else {\r\n this.refs.Messchild.showWarn(resdata.ResponseMessage);\r\n this.datasource = null;\r\n this.setState({\r\n carton: null,\r\n loading: false\r\n });\r\n }\r\n });\r\n\r\n }\r\n }\r\n\r\n }\r\n\r\n\r\n // seach table\r\n searchFilter(e) {\r\n this.setState({\r\n loading: true\r\n });\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.GetDispatchReceive();\r\n }\r\n\r\n callbackFunction = (childData) => {\r\n this.setState({ message: childData })\r\n }\r\n\r\n\r\n // add checkbox function\r\n activeTemplate(rowData, column) {\r\n\r\n return (\r\n { this.actionTemplate(e, rowData) }} />\r\n )\r\n }\r\n\r\n\r\n // edit form\r\n actionTemplate(e, rowData) {\r\n const getid = rowData.Id;\r\n this.state.newrow.push(getid);\r\n this.state.getrow.push({\r\n \"id\": rowData.Id\r\n });\r\n }\r\n\r\n SubmitReceive() {\r\n // if (!this.state.stateover.length > 0) {\r\n // this.refs.Messchild.showWarn(\"Please Select Cartons To Receive\");\r\n // return;\r\n // } \r\n this.setState({ dispatchLoader: false });\r\n const filterId = this.state.carton.filter(value => {\r\n\r\n this.state.stateover.push({ \"id\": value.DispatchId });\r\n }); \r\n //if stateover is not null else will move to 'else statement'\r\n if (this.state.stateover != null) {\r\n this.DispatchService.DispatchCartonReceive(this.state.stateover).then(data => {\r\n const resdata = data.data;\r\n this.setState({ dispatchLoader: true });\r\n if (resdata !== null && resdata.ResponseCode === '200') {\r\n this.refs.Messchild.showSuccess(resdata.ResponseMessage);\r\n\r\n this.setState({\r\n carton: null\r\n });\r\n this.GetDispatchReceive();\r\n\r\n\r\n } else {\r\n this.refs.Messchild.showWarn(resdata.ResponseMessage);\r\n }\r\n\r\n\r\n });\r\n\r\n }\r\n else {\r\n\r\n\r\n this.DispatchService.DispatchCartonReceive(this.state.getrow).then(data => {\r\n const resdata = data.data;\r\n this.setState({ dispatchLoader: true });\r\n if (resdata !== null && resdata.ResponseCode === '200') {\r\n this.refs.Messchild.showSuccess(resdata.ResponseMessage);\r\n } else {\r\n this.refs.Messchild.showWarn(resdata.ResponseMessage);\r\n }\r\n });\r\n }\r\n }\r\n\r\n\r\n // Sort table\r\n onSort(event) {\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1, sortIcon: !this.state.sortIcon });\r\n const sortField = event.sortField == \"CreatedDt\" ? \"CreatedDt\" : event.sortField;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.GetDispatchReceive();\r\n ////console.log(event);\r\n }\r\n\r\n // create html part\r\n //resolved KREP-134,KREP-114(CR)\r\n render() {\r\n const items = [\r\n { label: 'Transaction' },\r\n { label: 'Dispatch Receive' }\r\n ];\r\n\r\n const home = { icon: 'pi pi-home', url: '/dashboard' }\r\n let header = (\r\n
\r\n
\r\n \r\n this.setState({ globalFilter: e.target.value })} placeholder=\"Global Search\" size=\"30\" />\r\n
\r\n
\r\n );\r\n //////console.log(this.state.selectedStatus);\r\n let subheader = (\r\n
\r\n
\r\n
\r\n
\r\n
Scan Item:
\r\n
\r\n { this.handleChange(e) }} onKeyDown={e => { this.getDispatchCarton(e) }} className=\"custom-input\" name=\"DispatchId\" />\r\n {this.state.formError.DispatchId !== null ?\r\n
{this.state.formError.DispatchId}
: null}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n this.setState({ globalFilter: e.target.value })} placeholder=\"Global Search\" size=\"30\" />\r\n
\r\n
\r\n );\r\n\r\n\r\n return (\r\n
\r\n
\r\n <>\r\n {/* */}\r\n {/* */}\r\n\r\n
\r\n
\r\n

Dispatch Receive

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

Carton List

\r\n
\r\n {/* */}\r\n this.setState({ selectedStatus: e.value })} responsive={true} header={subheader}\r\n emptyMessage={this.state.emptyMessage} value={this.state.carton} sortMode=\"multiple\"\r\n rows={this.state.rows} rowsPerPageOptions={[10, 50, 200, 500]}\r\n lazy={true}\r\n onPage={this.onPage} onSort={this.onSort} className=\"tblAuto\">\r\n {/* */}\r\n \r\n \r\n \r\n \r\n {/* */}\r\n {/* */}\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n )\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n }\r\n}\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n }\r\n}\r\nexport default connect(mapStateToProps, mapDispatchToProps)(DispatchReceive)","export default class qrData {\r\n SrNo = '';\r\n Qrdata = '';\r\n}","import QRCode from 'qrcode'\r\nimport * as jsPDF from 'jspdf';\r\n\r\n\r\n/// TO print cartonslip on secondary packing service\r\nexport default class PrintSecondaryPackagingService {\r\n\r\n genQR(text) {\r\n let qr = \"\";\r\n QRCode.toDataURL(text, function (err, url) {\r\n qr = url;\r\n });\r\n return qr;\r\n }\r\n formPreview1(resp) {\r\n let doc = new jsPDF({\r\n orientation: 'landscape',\r\n unit: 'mm',\r\n format: [90, 70],\r\n compressPdf: true\r\n });\r\n\r\n doc = this.printLblPrntContent1(doc, resp);\r\n doc.save(resp[0].CartonId + '.pdf');\r\n // window.open(doc.output('bloburl'), '_blank');\r\n }\r\n printLblPrntContent1(doc, resp) {\r\n\r\n let i = 1;\r\n let j = 0;\r\n\r\n for (; i <= resp.length; i++) {\r\n // doc.setFontSize(7)\r\n doc.setFontType('bold');\r\n doc.setFont('Times');\r\n var loc = 0,\r\n inc = 3,\r\n docW = 2;\r\n //loc += inc;\r\n //doc.text(50, loc, resp.rateCd);\r\n //loc += inc + 4;\r\n //doc.text(docW, loc, 'Item ');\r\n //doc.text(9 + docW, loc, ': ' + resp[j].itemNm);\r\n //loc += inc + 2;\r\n //doc.text(docW, loc, 'M.R.P. ');\r\n //doc.text(9 + docW, loc, ': INR ' + resp.mrp);\r\n //loc += inc + 1;\r\n //doc.text(docW, loc, 'Lot No ');\r\n //doc.text(9 + docW, loc, ': ' + resp.lotNo);\r\n //loc += inc + 1;\r\n //doc.text(docW, loc, 'Pack ');\r\n //doc.text(9 + docW, loc, ': ' + resp.mfgDt.MyDtFrmt('M yyyy', '-'));\r\n //loc += inc + 1;\r\n //\r\n //doc.text(9 + docW, loc, ': ' + resp.pktWt + ' ' + resp.unitId.unitNm);\r\n doc.setFontSize(10);\r\n\r\n let qrdata = this.genQR(resp[j].CartonId);\r\n ;\r\n doc.addImage(qrdata, 'JPEG', 0, 4, 15, 15, resp[j].CartonId, false);\r\n doc.text(resp[j].ProductName, 1, 4);\r\n\r\n // if (resp[j].Brand.length > 0)\r\n // doc.text(\"Date : \" + resp[j].CreatedDt, 20, 10);\r\n doc.text(resp[j].CreatedDt, 15, 10);\r\n // if (resp[j].ModelNumber.length > 0)\r\n // doc.text(\"Model : \" + resp[j].ModelNumber, 20, 14);\r\n\r\n //doc.text(\"Qty : \" + resp[j].Qty, 20, 18);\r\n doc.text(resp[j].Qty, 15, 16);\r\n doc.setFontSize(10);\r\n doc.text(resp[j].CartonId, 1, 22);\r\n\r\n\r\n // qrdata = '';\r\n j++;\r\n if (resp.length > i)\r\n doc.addPage();\r\n }\r\n return doc;\r\n }\r\n BulkData(type,from,to,pre) {\r\n \r\n let doc = new jsPDF({\r\n orientation: 'landscape',\r\n unit: 'mm',\r\n format: [100, 70],\r\n compressPdf: true\r\n });\r\n doc = this.bulkPrint(doc, type,from,to,\"HP\");\r\n doc.save(`${type}-${from} - ${to}`+'.pdf')\r\n\r\n }\r\n bulkPrint(doc, type,from,to,pre) {\r\n \r\n \r\n let j = 0;\r\n let year= new Date().getFullYear()\r\n\r\n for (let i=from; i <= to; i++) {\r\n doc.setFontType('bold');\r\n doc.setFont('Times');\r\n doc.setFontSize(10);\r\n let val= i.toString().padStart(5, \"0\")\r\n let CartonID=`${type}-${year}-${pre}-${val}`;\r\n let qrdata = this.genQR(CartonID);\r\n ;\r\n doc.addImage(qrdata, 'JPEG', 8, 4, 17, 17, CartonID, false);\r\n // doc.text(resp[j].ProductName, 1, 4);\r\n doc.text( new Date().toDateString(),3,5);\r\n //doc.text(resp[j].Qty, 15, 16);\r\n doc.setFontSize(10);\r\n doc.text(CartonID, 3, 23);\r\n\r\n\r\n // qrdata = '';\r\n doc.addPage();\r\n }\r\n return doc;\r\n }\r\n\r\n}","import React, { Component } from \"react\";\r\nimport MessageComponent from \"../../templates/Message\";\r\nimport \"primereact/resources/themes/saga-blue/theme.css\";\r\nimport \"primereact/resources/primereact.min.css\";\r\nimport \"primeicons/primeicons.css\";\r\nimport tableRequest from \"../../models/tableRequest.js\";\r\nimport qrData from \"../../models/qrData.js\";\r\nimport { BreadCrumb } from \"primereact/breadcrumb\";\r\nimport { Card } from \"primereact/card\";\r\nimport { connect } from \"react-redux\";\r\nimport PrintSecondaryPackagingService from \"../../services/PrintSecondaryPackagingService\";\r\nimport { productMasterActions } from \"../../actions\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport { CSVLink } from \"react-csv\";\r\n\r\nclass CartonSlip extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.PrintSecondaryPackagingService = new PrintSecondaryPackagingService();\r\n this.tblResponse = new tableRequest();\r\n this.csv = React.createRef();\r\n this.qrData = new qrData();\r\n this.state = {\r\n FromNo: null,\r\n Qty: null,\r\n type: \"\",\r\n ToNo: null,\r\n Prefix: \"\",\r\n Sgen: \"\",\r\n Tgen: \"\",\r\n qrData: [],\r\n };\r\n this.createCSV = this.createCSV.bind(this);\r\n this.onValueChange = this.onValueChange.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n }\r\n //to trigger api function o page call\r\n componentDidMount() {\r\n this.GetSTIds();\r\n }\r\n\r\n GetSTIds() {\r\n this.props.getIds();\r\n setTimeout(() => {\r\n this.setState({\r\n Sgen: parseInt(this.props.Sids) + 1,\r\n Tgen: parseInt(this.props.Tids) + 1,\r\n });\r\n }, 800);\r\n }\r\n\r\n createCSV(type, from, to, prefix) {\r\n let year = new Date().getFullYear();\r\n let max = to + 1;\r\n let list = [];\r\n for (let i = from; i < max; i++) {\r\n var qr = new qrData();\r\n let val = i.toString().padStart(7, \"0\");\r\n qr.SrNo = i.toString().padStart(7, \"0\");\r\n qr.Qrdata = `${type}-${prefix}-${year}-${val}`;\r\n list.push(qr);\r\n }\r\n let date = new Date();\r\n this.setState({\r\n qrData: list,\r\n fileName:\r\n `${prefix}-${type}-${from}-${to} ${new Date().toLocaleString()}` +\r\n \".csv\",\r\n });\r\n setTimeout(() => {\r\n this.csv.current.link.click();\r\n }, 500);\r\n }\r\n\r\n submitForm() {\r\n if (\r\n this.state.FromNo == null ||\r\n this.state.ToNo == null ||\r\n this.state.Qty == null ||\r\n this.state.FromNo == \"\" ||\r\n this.state.ToNo == \"\" ||\r\n this.state.Qty == \"\" ||\r\n this.state.FromNo == undefined ||\r\n this.state.ToNo == undefined ||\r\n this.state.Qty == undefined ||\r\n this.state.type == undefined ||\r\n this.state.type == null ||\r\n this.state.type == \"\"\r\n ) {\r\n this.refs.Messchild.showWarn(\"Invalid Arguments\");\r\n } else {\r\n this.setState({\r\n FromNo: this.state.ToNo,\r\n Qty: \"\",\r\n ToNo: \"\",\r\n });\r\n // this.PrintSecondaryPackagingService.BulkData(\r\n // this.state.type,\r\n // this.state.FromNo,\r\n // this.state.ToNo,\r\n // this.state.Prefix\r\n // );\r\n this.createCSV(\r\n this.state.type,\r\n this.state.FromNo,\r\n this.state.ToNo,\r\n 'XP'\r\n );\r\n if (\r\n parseInt(this.state.Sgen) < parseInt(this.state.ToNo) ||\r\n this.state.Tgen < parseInt(this.state.ToNo)\r\n ) {\r\n this.props.updateIds(this.state.type, this.state.ToNo);\r\n setTimeout(() => {\r\n this.GetSTIds();\r\n }, 800);\r\n } else {\r\n this.refs.Messchild.showSuccess(\"Download Succcess\");\r\n }\r\n }\r\n }\r\n handleChange(e) {\r\n //const { name, value } = e.target;\r\n // this.setState({name: value });\r\n // this.setState({FromNo:e})\r\n }\r\n onValueChange(e) {\r\n if (e.target.value == \"TID\") {\r\n this.setState({\r\n type: e.target.value,\r\n FromNo: this.state.Tgen,\r\n Qty: \"\",\r\n ToNo: \"\",\r\n Prefix: sessionStorage.getItem(\"Prefix\"),\r\n });\r\n } else if (e.target.value == \"SID\") {\r\n this.setState({\r\n type: e.target.value,\r\n FromNo: this.state.Sgen,\r\n Qty: \"\",\r\n ToNo: \"\",\r\n Prefix: sessionStorage.getItem(\"Prefix\"),\r\n });\r\n }\r\n }\r\n //sessionStorage.getItem(\"Prefix\")\r\n render() {\r\n const items = [{ label: \"Transactions\" }, { label: \">Carton Slip\" }];\r\n const home = { icon: \"pi pi-home\", url: \"/dashboard\" };\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n \r\n {/* { } */}\r\n \r\n \r\n
\r\n
\r\n

Carton Slip

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n this.setState({\r\n FromNo: e.target.value,\r\n Qty: \"\",\r\n ToNo: \"\",\r\n })\r\n }\r\n className=\"form-control\"\r\n name=\"FromNo\"\r\n />\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n this.setState({\r\n ToNo:\r\n parseInt(e.target.value) +\r\n parseInt(this.state.FromNo) -\r\n 1,\r\n Qty: parseInt(e.target.value),\r\n })\r\n }\r\n className=\"form-control\"\r\n name=\"Qty\"\r\n />\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n SID{\" \"}\r\n {\" \"}\r\n TID\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n Submit\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n let tmp = state.product?.Ids?.split(\"VAL\");\r\n return {\r\n Sids: state.product?.Ids != null && tmp[0],\r\n Tids: state.product?.Ids != null && tmp[1],\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n getIds: () => {\r\n dispatch(productMasterActions.GetIds());\r\n },\r\n updateIds: (type, value) => {\r\n dispatch(productMasterActions.UpdateIds(type, value));\r\n },\r\n };\r\n};\r\nexport default connect(mapStateToProps, mapDispatchToProps)(CartonSlip);\r\n","import React, { Component } from \"react\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport { Button } from \"primereact/button\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport { FileUpload } from \"primereact/fileupload\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport { connect } from \"react-redux\";\r\nimport Moment from \"react-moment\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { ToastContainer, toast } from \"react-toastify\";\r\nimport {\r\n roleMasterActions,\r\n dealerMasterActions,\r\n userMasterActions,\r\n} from \"../../actions\";\r\nimport tableRequest from \"../../models/tableRequest\";\r\nimport Switch from \"@material-ui/core/Switch\";\r\nimport { Calendar } from \"primereact/calendar\";\r\nimport { CSVLink } from \"react-csv\";\r\nimport ExcelFile from \"react-export-excel/dist/ExcelPlugin/components/ExcelFile\";\r\nimport ExcelSheet from \"react-export-excel/dist/ExcelPlugin/elements/ExcelSheet\";\r\nimport ExcelColumn from \"react-export-excel/dist/ExcelPlugin/elements/ExcelColumn\";\r\n\r\nclass dealerMaster extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.csvLink = React.createRef();\r\n this.exportCSV = this.exportCSV.bind(this);\r\n this.FilterData = this.FilterData.bind(this);\r\n this.tblResponse = new tableRequest();\r\n this.statusBodyTemplate = this.statusBodyTemplate.bind(this);\r\n this.actionBodyTemplate = this.actionBodyTemplate.bind(this);\r\n this.switchToggleConfirm = this.switchToggleConfirm.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.openDialog = this.openDialog.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.CreatedDateTemplate = this.CreatedDateTemplate.bind(this);\r\n this.UpdatedDateTemplate = this.UpdatedDateTemplate.bind(this);\r\n this.resetForm = this.resetForm.bind(this);\r\n this.onHide = this.onHide.bind(this);\r\n this.getStateList = this.getStateList.bind(this);\r\n this.getFirmList = this.getFirmList.bind(this);\r\n this.getCityList = this.getCityList.bind(this);\r\n this.setImagePath = this.setImagePath.bind(this);\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n\r\n this.state = {\r\n FromDate: new Date(),\r\n ToDate: new Date(),\r\n IsAdd: true,\r\n IsEdit: true,\r\n first: 0,\r\n isImage: false,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n sortOrder: \"\",\r\n buttonLabel: \"Submit\",\r\n switchAction: false,\r\n formHeading: \"Add Dealer Master\",\r\n GstCertificate: \"\",\r\n DealerId: 0,\r\n pdf: \"\",\r\n RoleId: 0,\r\n NatureFirmId: 0,\r\n PanNo: \"\",\r\n BillingSameAsShipping: false,\r\n CityId: 0,\r\n compId: 0,\r\n UserTypeId: \"\",\r\n TransportationModeId: 0,\r\n CountryData: [{ value: 1, label: \"India\" }],\r\n UserFirmData: [\r\n { value: 1, label: \"Private Ltd\" },\r\n { value: 2, label: \"Ltd\" },\r\n { value: 3, label: \"Proprietorship\" },\r\n { value: 4, label: \"Partnership\" },\r\n ],\r\n DealerName: \"\",\r\n CompanyName: \"\",\r\n Email: \"\",\r\n MobileNo: \"\",\r\n Password: \"\",\r\n ConfirmPassword: \"\",\r\n Nature_Firm: \"\",\r\n GstNo: \"\",\r\n // GstCertificate: '',\r\n Bill_Address: \"\",\r\n Bill_Pincode: \"\",\r\n Bill_Country: \"\",\r\n Bill_State: \"\",\r\n Bill_City: \"\",\r\n CityShip: [],\r\n CityBill: [],\r\n Ship_Address: \"\",\r\n Ship_Pincode: \"\",\r\n Ship_Country: \"\",\r\n Ship_State: \"\",\r\n Ship_City: \"\",\r\n UserId:\"\",\r\n IsActive: true,\r\n isApproved: Boolean,\r\n CreatedDate: null,\r\n UpdatedDate: null,\r\n formError: {\r\n PanNo: \"\",\r\n DealerName: \"\",\r\n CompanyName: \"\",\r\n UserTypeId: \"\",\r\n Bill_Address: \"\",\r\n Bill_Country: \"\",\r\n Bill_State: \"\",\r\n Bill_City: \"\",\r\n Bill_Pincode: \"\",\r\n Ship_Address: \"\",\r\n Ship_Country: \"\",\r\n Ship_State: \"\",\r\n Ship_City: \"\",\r\n Ship_Pincode: \"\",\r\n GstCertificate: \"\",\r\n GstNo: \"\",\r\n Email: \"\",\r\n MobileNo: \"\",\r\n Password: \"\",\r\n ConfirmPassword: \"\",\r\n RoleId: \"\",\r\n CityId: \"\",\r\n NatureFirmId: \"\",\r\n TransportationModeId: \"\",\r\n },\r\n };\r\n }\r\n componentDidMount() {\r\n var date = new Date();\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() - 30);\r\n this.tblResponse.FromDate = date.toLocaleDateString();\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.setState({\r\n FromDate: date,\r\n ToDate: new Date(),\r\n });\r\n const userPages = sessionStorage.getItem(\"assignedPermissionsForUser\");\r\n if (userPages) {\r\n const assignedPermissions = JSON.parse(userPages);\r\n const Curenturl = window.location.pathname;\r\n const nNumber = Curenturl.lastIndexOf(\"/\");\r\n const pageName = Curenturl.substring(nNumber + 1);\r\n\r\n const obj = assignedPermissions.assigned.filter((x) => {\r\n return x.ActionName === pageName;\r\n });\r\n\r\n if (obj !== null && obj.length > 0) {\r\n if (!obj[0].IsEdit) {\r\n this.setState({\r\n IsEdit: false,\r\n });\r\n }\r\n if (!obj[0].IsAdd) {\r\n this.setState({\r\n IsAdd: false,\r\n });\r\n } else {\r\n this.setState({\r\n IsAdd: true,\r\n });\r\n }\r\n }\r\n }\r\n\r\n this.props.fetchApi(this.tblResponse);\r\n this.props.getRoleDDL(2);\r\n this.props.getTransportationModeDDL();\r\n // const userId = JSON.parse(sessionStorage.getItem(\"UserData\"));\r\n // this.props.getRoleDDL(userId);\r\n }\r\n\r\n //\r\n // set Image Path\r\n setImagePath(event) {\r\n let errors = this.state.formError;\r\n errors.GstCertificate = \"\";\r\n if (event.xhr) {\r\n if (event.xhr.response) {\r\n const response = JSON.parse(event.xhr.response);\r\n if (response) {\r\n if (response.ResponseCode === \"200\") {\r\n this.setState({\r\n GstCertificate: response.Source,\r\n pdf: \"\",\r\n isImage: true,\r\n });\r\n if (response.Source.toString().includes(\".pdf\")) {\r\n this.setState({\r\n pdf: event.files[0].name,\r\n isImage: false,\r\n });\r\n }\r\n } else if (response.ResponseCode === \"400\") {\r\n errors.GstCertificate = \"Only image format is accepted.\";\r\n this.setState({\r\n GstCertificate: \"\",\r\n });\r\n } else {\r\n // this.messageService.add({ severity: 'error', summary: 'Oops', detail: response.ResponseMessage });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n }\r\n\r\n ///end image\r\n componentDidUpdate(prevProps) {\r\n if (this.props.UserData) {\r\n if (prevProps.UserData !== this.props.UserData) {\r\n // this.props.myProp has a different value\r\n if (this.props.UserData) {\r\n var e = this.props.UserData;\r\n this.setState({\r\n totalRecords: e[0].TotalRows,\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords !== 0)\r\n this.setState({\r\n totalRecords: 0,\r\n first: 0,\r\n });\r\n }\r\n }\r\n\r\n switchToggleConfirm = (e) => {\r\n this.props.inActiveRow(this.state.UserId, this.state.switchAction);\r\n };\r\n\r\n FilterData() {\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n handleChange(event) {\r\n let { name, value } = event.target;\r\n let errors = this.state.formError;\r\n switch (name) {\r\n case \"IsActive\":\r\n value = event.target.checked;\r\n break;\r\n case \"BillingSameAsShipping\":\r\n value = event.target.checked;\r\n this.SameAsBilling(event);\r\n break;\r\n default:\r\n break;\r\n }\r\n this.validateForm(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n\r\n handleChangeDate(event) {\r\n const { name, value } = event.target;\r\n switch (name) {\r\n case \"FromDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n // this.refs.Messchild.showError(\"Please select from date.\");\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select from date.\",\r\n life: 3000,\r\n });\r\n\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (value instanceof Date && this.state.ToDate instanceof Date) {\r\n const startDate = value;\r\n const endDate = this.state.ToDate;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"From date must be less than to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"From date must be less than to date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n case \"ToDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please select to date.\");\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (\r\n value instanceof Date &&\r\n this.state.FromDate instanceof Date\r\n ) {\r\n const startDate = this.state.FromDate;\r\n const endDate = value;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"To date must be greater than from date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"To date must be greater than from date.\");\r\n return;\r\n }\r\n }\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n this.setState({ [name]: value });\r\n }\r\n\r\n getStateList(event, type) {\r\n //this.handleChange(event)\r\n if (type == \"B\") {\r\n this.setState({ Bill_Country: event.target.value });\r\n this.props.getStateDDL(event.target.value);\r\n } else if (type == \"S\") {\r\n this.setState({ Ship_Country: event.target.value });\r\n this.props.getStateDDL(event.target.value);\r\n }\r\n }\r\n getCityList(event, type, flag) {\r\n if (flag == \"i\") {\r\n if (type == \"B\") {\r\n this.setState({ Bill_State: event.target.value });\r\n this.props.getBCityDDL(event.target.value);\r\n } else if (type == \"S\") {\r\n this.setState({ Ship_State: event.target.value });\r\n this.props.getSCityDDL(event.target.value);\r\n }\r\n } else {\r\n if (type == \"B\") {\r\n this.setState({ Bill_State: event });\r\n this.props.getBCityDDL(event);\r\n } else if (type == \"S\") {\r\n this.setState({ Ship_State: event });\r\n this.props.getSCityDDL(event);\r\n }\r\n }\r\n\r\n //this.handleChange(event)\r\n // if (flag == \"i\") {\r\n // if (type == \"B\") {\r\n // this.setState({ Bill_State: event.target.value });\r\n // this.props.getBCityDDL(event.target.value);\r\n // setTimeout(() => {\r\n\r\n // this.setState({ CityBill: this.props.UserBCityData, Bill_State: event.target.value });\r\n // }, 1500);\r\n // } else if (type == \"S\") {\r\n // this.setState({ Ship_State: event.target.value });\r\n // this.props.getSCityDDL(event.target.value);\r\n // setTimeout(() => {\r\n\r\n // this.setState({ CityShip: this.props.UserSCityData, Ship_State: event.target.value });\r\n // }, 1500);\r\n // }\r\n // } else {\r\n // if (type == \"B\") {\r\n // this.setState({ Bill_State: event });\r\n // this.props.getBCityDDL(event);\r\n // setTimeout(() => {\r\n\r\n // this.setState({\r\n // CityBill: this.props.UserBCityData,\r\n // Bill_City: event,\r\n // });\r\n // }, 1500);\r\n // } else if (type == \"S\") {\r\n // this.setState({ Ship_State: event });\r\n // this.props.getSCityDDL(event);\r\n // setTimeout(() => {\r\n\r\n // this.setState({\r\n // CityShip: this.props.UserSCityData,\r\n // Ship_City: event,\r\n // });\r\n // }, 1500);\r\n // }\r\n // }\r\n }\r\n\r\n getFirmList(event) {\r\n this.setState({ NatureFirmId: event.target.value });\r\n this.props.getFirmDDL(event.target.value);\r\n }\r\n\r\n UpdatedDateTemplate(rowData) {\r\n if (rowData.UpdatedDate !== null) {\r\n return {rowData.UpdatedDate};\r\n }\r\n }\r\n\r\n CreatedDateTemplate(rowData) {\r\n if (rowData.UpdatedDate !== null) {\r\n return {rowData.CreatedDate};\r\n }\r\n }\r\n validateForm(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n switch (name) {\r\n case \"DealerName\":\r\n if (!value) {\r\n IsValid = false;\r\n errors.DealerName = \"Please enter Dealer Name.\";\r\n } else errors.DealerName = \"\";\r\n break;\r\n case \"GstCertificate\":\r\n if (!value) {\r\n IsValid = false;\r\n errors.GstCertificate = \"Please select GST Certificate.\";\r\n } else errors.GstCertificate = \"\";\r\n break;\r\n case \"RoleId\":\r\n if (!value) {\r\n IsValid = false;\r\n errors.RoleId = \"Please select User type.\";\r\n } else errors.RoleId = \"\";\r\n break;\r\n case \"GstNo\":\r\n var gstinformat = new RegExp(\r\n \"^[0-9]{2}[A-Z]{5}[0-9]{4}[A-Z]{1}[1-9A-Z]{1}Z[0-9A-Z]{1}$\"\r\n );\r\n if (!value) {\r\n IsValid = false;\r\n errors.GstNo = \"Please enter GST Number.\";\r\n } else if (value.length >= 1 && !gstinformat.test(value)) {\r\n IsValid = false;\r\n errors.GstNo =\r\n \"GST Identification Number is not valid. It should be in this 11AAAAA1111Z1A1 format.\";\r\n } else errors.GstNo = \"\";\r\n break;\r\n case \"Email\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.Email = \"Please enter email-id.\";\r\n } else if (value.length >= 1) {\r\n /* eslint-disable */\r\n if (!value.match(/^\\w+([\\.-]?\\w+)*@\\w+([\\.-]?\\w+)*(\\.\\w{2,3})+$/)) {\r\n IsValid = false;\r\n errors.Email = \"Please enter valid email-id.\";\r\n } else errors.Email = \"\";\r\n /* eslint-enable */\r\n } else errors.Email = \"\";\r\n break;\r\n case \"MobileNo\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.MobileNo = \"Please enter mobile no.\";\r\n } else if (value.length >= 1) {\r\n if (!value.match(/^[6-9]\\d{9}$/)) {\r\n IsValid = true;\r\n errors.MobileNo = \"Please enter valid mobile no.\";\r\n } else errors.MobileNo = \"\";\r\n } else errors.MobileNo = \"\";\r\n break;\r\n case \"Password\":\r\n if (!value && value.length < 1) {\r\n IsValid = false;\r\n errors.Password = \"Please enter password.\";\r\n } else if (!value.match(/^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d).{4,20}$/)) {\r\n IsValid = false;\r\n errors.Password =\r\n \"Password should be minimum 4 characters long, 1 uppercase & 1 lowercase character with 1 number.\";\r\n } else if (\r\n !value &&\r\n value.length >= 1 &&\r\n this.state.ConfirmPassword.length >= 1\r\n ) {\r\n errors.Password = \"\";\r\n errors.ConfirmPassword = \"\";\r\n if (!(value === this.state.ConfirmPassword)) {\r\n IsValid = false;\r\n errors.Password = \"password does not match\";\r\n } else errors.Password = \"\";\r\n } else errors.Password = \"\";\r\n break;\r\n\r\n case \"ConfirmPassword\":\r\n if (!value && value.length < 1) {\r\n IsValid = false;\r\n errors.ConfirmPassword = \"Please enter confirm password.\";\r\n } else if (value.length >= 1 && this.state.Password.length >= 1) {\r\n errors.Password = \"\";\r\n errors.ConfirmPassword = \"\";\r\n if (value !== this.state.Password) {\r\n IsValid = false;\r\n errors.ConfirmPassword =\r\n \"New password and Confirm password should be same.\";\r\n }\r\n } else if (\r\n !value &&\r\n value.length >= 1 &&\r\n this.state.Password.length >= 1\r\n ) {\r\n errors.Password = \"\";\r\n errors.ConfirmPassword = \"\";\r\n if (!(value === this.state.Password)) {\r\n IsValid = false;\r\n errors.ConfirmPassword = \"Confirm password does not match\";\r\n } else errors.ConfirmPassword = \"\";\r\n } else errors.ConfirmPassword = \"\";\r\n break;\r\n case \"Ship_City\":\r\n if (value == undefined || value == \"\") {\r\n IsValid = false;\r\n errors.Ship_City = \"Please select city\";\r\n } else errors.Ship_City = \"\";\r\n break;\r\n case \"Bill_City\":\r\n if (value == undefined || value == \"\") {\r\n IsValid = false;\r\n errors.Bill_City = \"Please select city\";\r\n } else errors.Bill_City = \"\";\r\n break;\r\n case \"Bill_State\":\r\n if (value == undefined || value == \"\") {\r\n IsValid = false;\r\n errors.Bill_State = \"Please select state\";\r\n } else {\r\n errors.Bill_State = \"\";\r\n }\r\n break;\r\n case \"Ship_State\":\r\n if (value == undefined || value == \"\") {\r\n IsValid = false;\r\n errors.Ship_State = \"Please select state\";\r\n } else {\r\n errors.Ship_State = \"\";\r\n }\r\n break;\r\n case \"Bill_Address\":\r\n if (!value) {\r\n IsValid = false;\r\n errors.Bill_Address = \"Please enter Address\";\r\n } else errors.Bill_Address = \"\";\r\n break;\r\n case \"Bill_Pincode\":\r\n if (!value) {\r\n IsValid = false;\r\n errors.Bill_Pincode = \"Please enter Pincode\";\r\n } else errors.Bill_Pincode = \"\";\r\n break;\r\n case \"Ship_Address\":\r\n if (!value) {\r\n IsValid = false;\r\n errors.Ship_Address = \"Please enter Address\";\r\n } else errors.Ship_Address = \"\";\r\n break;\r\n case \"Bill_Country\":\r\n if (value == undefined || value == \"\") {\r\n IsValid = false;\r\n errors.Bill_Country = \"Please select Country\";\r\n } else errors.Bill_Country = \"\";\r\n break;\r\n case \"Ship_Country\":\r\n if (value == undefined || value == \"\") {\r\n IsValid = false;\r\n errors.Ship_Country = \"Please select Country\";\r\n } else errors.Ship_Country = \"\";\r\n break;\r\n case \"Ship_Pincode\":\r\n if (!value) {\r\n IsValid = false;\r\n errors.Ship_Pincode = \"Please enter Pincode\";\r\n } else errors.Ship_Pincode = \"\";\r\n break;\r\n case \"BillingSameAsShipping\":\r\n if (value) {\r\n errors.Ship_Country = \"\";\r\n errors.Ship_Address = \"\";\r\n errors.Ship_State = \"\";\r\n errors.Ship_City = \"\";\r\n errors.Ship_Pincode = \"\";\r\n }\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n\r\n getDropValueOfRole() {\r\n let roleId = \"\";\r\n this.props.UserRoleData.filter((x) => {\r\n if (x.label === \"Dealer\") {\r\n roleId = x.value;\r\n }\r\n });\r\n\r\n return roleId;\r\n }\r\n getDropValueOfCity() {\r\n let city = \"\";\r\n this.props.UserCityData.filter((x) => {\r\n if (x.value === this.state.CityId.toString()) {\r\n city = x.label;\r\n }\r\n });\r\n\r\n return city;\r\n }\r\n\r\n getDropValueOfFirm() {\r\n let firmName = \"\";\r\n this.props.UserFirmData.filter((x) => {\r\n if (x.value === this.state.NatureFirmId.toString()) {\r\n firmName = x.label;\r\n }\r\n });\r\n\r\n return firmName;\r\n }\r\n getDropValueOfUserType() {\r\n let usertype = \"\";\r\n this.state.CountryData.filter((x) => {\r\n if (x.value === this.state.Ship_Country) {\r\n usertype = x.label;\r\n }\r\n });\r\n\r\n return usertype;\r\n }\r\n\r\n submitForm(event) {\r\n \r\n event.preventDefault();\r\n let isfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key];\r\n let valid = this.validateForm(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n return isfrmvalid;\r\n });\r\n if ((!isfrmvalid) || (isfrmvalid)) {\r\n let roleId = this.getDropValueOfRole();\r\n const formData = {\r\n UserId: this.state.UserId,\r\n UserType: \"2\",\r\n RoleId: roleId,\r\n UserName: this.state.DealerName,\r\n Email: this.state.Email,\r\n MobileNo: this.state.MobileNo,\r\n Password: this.state.Password,\r\n IsActive: this.state.IsActive,\r\n CreatedDate:\r\n this.state.DealerId > 0\r\n ? this.state.CreatedDate\r\n : this.getCurrentDateMMDDYYY(),\r\n UpdatedDate:\r\n this.state.DealerId > 0 ? this.getCurrentDateMMDDYYY() : null,\r\n DealerId: this.state.DealerId,\r\n NatureFirmId: this.state.NatureFirmId,\r\n PanNo: this.state.PanNo,\r\n GstNo: this.state.GstNo,\r\n GstCertificate: this.state.GstCertificate,\r\n Bill_Address: this.state.Bill_Address,\r\n Bill_Pincode: this.state.Bill_Pincode,\r\n Bill_Country: this.state.Bill_Country,\r\n Bill_State: this.state.Bill_State,\r\n Bill_City: this.state.Bill_City,\r\n\r\n Ship_Address: this.state.Ship_Address,\r\n Ship_Pincode: this.state.Ship_Pincode,\r\n Ship_Country: this.state.Ship_Country,\r\n Ship_State: this.state.Ship_State,\r\n Ship_City: this.state.Ship_City,\r\n RoleId: this.state.RoleId,\r\n isApproved: this.state.isApproved,\r\n };\r\n if (formData.UserId > 0) {\r\n this.props.updateDealer(formData);\r\n } else {\r\n //console.log(formData);\r\n this.props.createDealer(formData);\r\n }\r\n if (!this.props.showDialog) {\r\n this.resetForm();\r\n }\r\n setTimeout(() => {\r\n this.props.fetchApi(this.tblResponse);\r\n }, 1000);\r\n }\r\n }\r\n\r\n // getRoleDDL(event) {\r\n // this.props.getRoleDDL();\r\n // }\r\n resetForm() {\r\n this.setState({\r\n UserId: 0,\r\n DealerId: 0,\r\n NatureFirmId: \"\",\r\n PanNo: \"\",\r\n GstNo: \"\",\r\n GstCertificate: \"\",\r\n Bill_Address: \"\",\r\n Bill_Pincode: \"\",\r\n Bill_Country: \"\",\r\n Bill_State: \"\",\r\n Bill_City: \"\",\r\n Ship_Address: \"\",\r\n Ship_Pincode: \"\",\r\n Ship_Country: \"\",\r\n Ship_State: \"\",\r\n Ship_City: \"\",\r\n CreatedDate: \"\",\r\n UpdatedDate: \"\",\r\n compId: \"\",\r\n UserTypeId: \"\",\r\n DealerName: \"\",\r\n CompanyName: \"\",\r\n RoleId: \"\",\r\n CityId: \"\",\r\n Email: \"\",\r\n MobileNo: \"\",\r\n Password: \"\",\r\n ConfirmPassword: \"\",\r\n IsActive: true,\r\n formError: {\r\n DealerName: \"\",\r\n CompanyName: \"\",\r\n UserTypeId: \"\",\r\n Email: \"\",\r\n MobileNo: \"\",\r\n Password: \"\",\r\n ConfirmPassword: \"\",\r\n PanNo: \"\",\r\n Bill_Address: \"\",\r\n Bill_Pincode: \"\",\r\n Bill_Country: \"\",\r\n Bill_State: \"\",\r\n Bill_City: \"\",\r\n Ship_Address: \"\",\r\n Ship_Pincode: \"\",\r\n Ship_Country: \"\",\r\n Ship_State: \"\",\r\n Ship_City: \"\",\r\n GstCertificate: \"\",\r\n GstNo: \"\",\r\n RoleId: \"\",\r\n CityId: \"\",\r\n NatureFirmId: \"\",\r\n },\r\n });\r\n\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key]) => {\r\n errors[key] = \"\";\r\n return errors[key];\r\n });\r\n }\r\n\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n SameAsBilling(event) {\r\n if (event.target.checked) {\r\n this.setState({\r\n Ship_Country: this.state.Bill_Country,\r\n Ship_State: this.state.Bill_State,\r\n Ship_City: this.state.Bill_City,\r\n Ship_Pincode: this.state.Bill_Pincode,\r\n Ship_Address: this.state.Bill_Address,\r\n });\r\n this.props.getSCityDDL(this.state.Bill_State);\r\n } else {\r\n this.setState({\r\n Ship_Country: \"\",\r\n Ship_State: \"\",\r\n Ship_City: \"\",\r\n Ship_Address: \"\",\r\n Ship_Pincode: \"\",\r\n });\r\n }\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField =\r\n event.multiSortMeta[0].field === \"CreatedDate\"\r\n ? \"CreatedDate\"\r\n : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\"; //this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n photoBodyTemplate(e) {\r\n return ;\r\n }\r\n\r\n onHide() {\r\n this.props.onHideShow(false);\r\n this.resetForm();\r\n }\r\n openDialog() {\r\n this.props.onHideShow(true);\r\n this.setState({ buttonLabel: \"Submit\", formHeading: \"Add User\" });\r\n }\r\n statusBodyTemplate(rowData) {\r\n if (rowData) {\r\n return (\r\n \r\n );\r\n }\r\n }\r\n getCurrentDateMMDDYYY() {\r\n var today = new Date();\r\n var dd = String(today.getDate()).padStart(2, \"0\");\r\n var mm = String(today.getMonth() + 1).padStart(2, \"0\");\r\n var yyyy = today.getFullYear();\r\n today = mm + \"/\" + dd + \"/\" + yyyy;\r\n return today;\r\n }\r\n actionBodyTemplate(rowData) {\r\n const editMode = (e) => {\r\n this.props.onHideShow(true);\r\n this.props.getStateDDL(rowData.Bill_Country);\r\n this.getCityList(rowData.Bill_State, \"B\", \"\");\r\n this.getCityList(rowData.Ship_State, \"S\", \"\");\r\n this.setState({\r\n buttonLabel: \"Update\",\r\n formHeading: \"Update Dealer\",\r\n // NatureFirmId: rowData.NatureFirmId,\r\n RoleId: rowData.RoleId.toString(),\r\n UserId: rowData.UserId,\r\n IsActive: rowData.IsActive,\r\n Password: rowData.Password,\r\n ConfirmPassword: rowData.Password,\r\n CreatedDate: rowData.CreatedDate,\r\n DealerId: rowData.DealerId,\r\n DealerName: rowData.DealerName,\r\n PanNo: rowData.PanNo,\r\n // Nature_Firm: rowData.Nature_Firm,\r\n GstNo: rowData.GstNo,\r\n GstCertificate: rowData.GstCertificate,\r\n Email: rowData.Email,\r\n MobileNo: rowData.MobileNo,\r\n Bill_Address: rowData.Bill_Address,\r\n Bill_Pincode: rowData.Bill_Pincode,\r\n Bill_Country: rowData.Bill_Country,\r\n Bill_State: rowData.Bill_State,\r\n Bill_City: rowData.Bill_City,\r\n Ship_Address: rowData.Ship_Address,\r\n Ship_Pincode: rowData.Ship_Pincode,\r\n Ship_Country: rowData.Ship_Country,\r\n Ship_State: rowData.Ship_State,\r\n Ship_City: rowData.Ship_City,\r\n IsActive: rowData.IsActive,\r\n isApproved: rowData.isApproved,\r\n });\r\n };\r\n const switchHandleChange = (e) => {\r\n this.setState({\r\n switchAction: !rowData.IsActive,\r\n UserId: rowData.UserId,\r\n });\r\n this.props.onHideShowIsActive(true);\r\n };\r\n\r\n if (rowData) {\r\n return (\r\n <>\r\n {this.state.IsEdit === true ? (\r\n
\r\n \r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n \r\n );\r\n }\r\n }\r\n\r\n exportCSV() {\r\n \r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n this.tblResponse.First = -1;\r\n this.tblResponse.PageSize = -1;\r\n this.props.exportData(this.tblResponse);\r\n setTimeout(() => {\r\n this.csvLink.current.element.click();\r\n }, 4000);\r\n }\r\n\r\n render() {\r\n const renderFooter = (name) => {\r\n return (\r\n
\r\n this.props.onHideShowIsActive(false)}\r\n className=\"p-button-text\"\r\n />\r\n \r\n
\r\n );\r\n };\r\n\r\n return (\r\n
\r\n \r\n
\r\n
\r\n
Mobile User Master
\r\n
\r\n
\r\n
\r\n \r\n \r\n this.searchFilter(e)}\r\n placeholder=\"Global Search\"\r\n />\r\n \r\n \r\n \r\n \r\n \r\n {this.state.IsAdd === true ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n Submit\r\n \r\n
\r\n
\r\n \r\n Export\r\n \r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n {\r\n this.dt = el;\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {this.state.IsEdit === true ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n Select Type*\r\n \r\n \r\n \r\n --- Select Role Type ---\r\n *\r\n \r\n {this.props.UserRoleData?.map((key) => (\r\n {key.label}\r\n ))}\r\n \r\n \r\n {this.state.formError.RoleId !== \"\" ? (\r\n
\r\n {this.state.formError.RoleId}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n {this.state.formError.DealerName !== \"\" ? (\r\n
{this.state.formError.DealerName}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n {this.state.formError.Email !== \"\" ? (\r\n
{this.state.formError.Email}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n {this.state.formError.MobileNo !== \"\" ? (\r\n
{this.state.formError.MobileNo}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n {this.state.formError.Password !== \"\" ? (\r\n
{this.state.formError.Password}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n {this.state.formError.ConfirmPassword !== \"\" ? (\r\n
\r\n {this.state.formError.ConfirmPassword}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n {this.state.RoleId === \"3\" ? (\r\n <>\r\n
\r\n \r\n {this.state.formError.PanNo !== \"\" ? (\r\n
{this.state.formError.PanNo}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n {this.state.formError.GstNo !== \"\" ? (\r\n
{this.state.formError.GstNo}
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n \r\n {this.state.pdf != \"\" ? {this.state.pdf} : null}\r\n
\r\n {this.state.GstCertificate && this.state.isImage ? (\r\n \r\n
\r\n \r\n
\r\n
\r\n ) : null}\r\n\r\n {this.state.formError.GstCertificate !== null ? (\r\n
\r\n {this.state.formError.GstCertificate}\r\n
\r\n ) : null}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Billing Address*\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n Select Country*\r\n \r\n {\r\n this.getStateList(e, \"B\");\r\n }}\r\n name=\"Bill_Country\"\r\n value={this.state.Bill_Country}\r\n labelId=\"demo-simple-select-outlined-label\"\r\n id=\"demo-simple-select-outlined\"\r\n label=\"Select Country\"\r\n >\r\n \r\n Select Country\r\n *\r\n \r\n {this.state.CountryData.map((key) => (\r\n \r\n {key.label}\r\n \r\n ))}\r\n \r\n \r\n {this.state.formError.Bill_Country !== \"\" ? (\r\n
\r\n {this.state.formError.Bill_Country}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n \r\n {\r\n this.handleChange(e);\r\n }}\r\n options={this.props.UserBCityData}\r\n optionValue=\"value\"\r\n optionLabel=\"label\"\r\n className=\"form-control custom-select\"\r\n placeholder={\"Select City*\"}\r\n name=\"Bill_City\"\r\n filter\r\n />\r\n \r\n\r\n {this.state.formError.Bill_City !== \"\" ? (\r\n
\r\n {this.state.formError.Bill_City}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n \r\n {this.state.formError.Bill_Pincode !== null ? (\r\n
\r\n {this.state.formError.Bill_Pincode}\r\n
\r\n ) : null}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {\r\n this.getCityList(e, \"B\", \"i\");\r\n }}\r\n filter\r\n />\r\n \r\n\r\n {this.state.formError.Bill_State !== \"\" ? (\r\n
\r\n {this.state.formError.Bill_State}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n\r\n
\r\n \r\n \r\n {this.state.formError.Bill_Address !== null ? (\r\n
\r\n {this.state.formError.Bill_Address}\r\n
\r\n ) : null}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n {\" \"}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n Shipping Address*\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n Select Country*\r\n \r\n {\r\n this.getStateList(e, \"S\");\r\n }}\r\n name=\"Ship_Country\"\r\n value={this.state.Ship_Country}\r\n labelId=\"demo-simple-select-outlined-label\"\r\n id=\"demo-simple-select-outlined\"\r\n label=\"Select Country\"\r\n >\r\n \r\n None\r\n \r\n {this.state.CountryData.map((key) => (\r\n \r\n {key.label}\r\n \r\n ))}\r\n \r\n \r\n {this.state.formError.Ship_Country !== \"\" ? (\r\n
\r\n {this.state.formError.Ship_Country}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n Select City*\r\n \r\n \r\n \r\n None\r\n \r\n\r\n {this.props.UserSCityData == (undefined || null)\r\n ? null\r\n : this.props.UserSCityData.map((key) => (\r\n \r\n {key.label}\r\n \r\n ))}\r\n \r\n \r\n\r\n {this.state.formError.Ship_City !== \"\" ? (\r\n
\r\n {this.state.formError.Ship_City}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n\r\n
\r\n \r\n \r\n {this.state.formError.Ship_Pincode !== null ? (\r\n
\r\n {this.state.formError.Ship_Pincode}\r\n
\r\n ) : null}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n Select State*\r\n \r\n {\r\n this.getCityList(e, \"S\", \"i\");\r\n }}\r\n disabled={this.state.BillingSameAsShipping}\r\n name=\"Ship_State\"\r\n value={this.state.Ship_State}\r\n labelId=\"demo-simple-select-outlined-label\"\r\n id=\"demo-simple-select-outlined\"\r\n label=\"Select State*\"\r\n >\r\n {/* \r\n \r\n\r\n {this.state.formError.Ship_State !== \"\" ? (\r\n
\r\n {this.state.formError.Ship_State}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n\r\n
\r\n \r\n \r\n {this.state.formError.Ship_Address !== null ? (\r\n
\r\n {this.state.formError.Ship_Address}\r\n
\r\n ) : null}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n ) : (\r\n \"\"\r\n )}\r\n\r\n\r\n {/*
\r\n \r\n \r\n Select Firm Type*\r\n \r\n \r\n \r\n --- Select Firm Type --- \r\n \r\n {this.state.UserFirmData.map((key) => (\r\n {key.label}\r\n ))}\r\n \r\n \r\n {this.state.formError.NatureFirmId !== \"\" ? (\r\n
\r\n {this.state.formError.NatureFirmId}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
*/}\r\n\r\n\r\n\r\n
\r\n {\" \"}\r\n \r\n
\r\n\r\n\r\n
\r\n {this.state.IsEdit === true ? (\r\n this.submitForm(e)}\r\n label={this.state.buttonLabel}\r\n icon=\"pi pi-check\"\r\n />\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n Note: Fields marked as (*) are required\r\n
\r\n
\r\n \r\n \r\n this.props.onHideShowIsActive(false)}\r\n >\r\n
\r\n \r\n \r\n Are you sure you want to{\" \"}\r\n {this.state.switchAction == true ? \"Active\" : \"InActive\"}?\r\n \r\n
\r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n console.log(\"DDL\", state.dealer.transportationModeddl)\r\n return {\r\n UserRoleData: state.user.rollddl,\r\n UserData: state.dealer.items,\r\n StateData: state.dealer.stateddl,\r\n UserBCityData: state.dealer.bcityddl,\r\n UserSCityData: state.dealer.scityddl,\r\n UserFirmData: state.role.firmddl,\r\n TransportationModeData:\r\n state.dealer.transportationModeddl == undefined\r\n ? []\r\n : state.dealer.transportationModeddl,\r\n showDialog: state.role.showDialog,\r\n loading: state.company.loding,\r\n showIsActiveDialog: state.user.showIsActiveDialog,\r\n List:\r\n state.dealer.exportitems == (null || undefined)\r\n ? []\r\n : state.dealer.exportitems,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(dealerMasterActions.getAll(obj));\r\n },\r\n createDealer: (user) => dispatch(dealerMasterActions.createDealer(user)),\r\n updateDealer: (user) => dispatch(dealerMasterActions.updateDealer(user)),\r\n inActiveRow: (user, isActive) =>\r\n dispatch(dealerMasterActions.inActiveRow(user, isActive)),\r\n onHideShow: (isbool) => dispatch(dealerMasterActions.onHideShow(isbool)),\r\n onHideShowIsActive: (isbool) =>\r\n dispatch(dealerMasterActions.onHideShowIsActive(isbool)),\r\n getStateDDL: (data) => dispatch(dealerMasterActions.getStateDDL(data)),\r\n getFirmDDL: (data) => dispatch(dealerMasterActions.getFirmDDL(data)),\r\n getBCityDDL: (data) => dispatch(dealerMasterActions.getBCityDDL(data)),\r\n getSCityDDL: (data) => dispatch(dealerMasterActions.getSCityDDL(data)),\r\n getTransportationModeDDL: () =>\r\n dispatch(dealerMasterActions.getTransportationModeDDL()),\r\n loadingData: (isLoding) =>\r\n dispatch(dealerMasterActions.loadingData(isLoding)),\r\n getRoleDDL: (data) => dispatch(userMasterActions.getRoleDDL(data)),\r\n exportData: (obj) => {\r\n dispatch(dealerMasterActions.exportData(obj));\r\n },\r\n };\r\n};\r\nexport default connect(mapStateToProps, mapDispatchToProps)(dealerMaster);\r\n","import React, { Component } from \"react\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport { Calendar } from \"primereact/calendar\";\r\nimport { alertActions, SecondaryPackingRptActions } from \"../../actions\";\r\nimport { connect } from \"react-redux\";\r\nimport tableRequest from \"../../models/tableRequest.js\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { CSVLink } from \"react-csv\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\n\r\nclass SecondaryPackingReport extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.csvLink = React.createRef();\r\n this.tblResponse = new tableRequest();\r\n this.tblResponse.PageSize = 10\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.FilterData = this.FilterData.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.Export = this.Export.bind(this);\r\n this.state = {\r\n loading: false,\r\n FromDate: new Date(),\r\n ToDate: new Date(),\r\n first: 0,\r\n rows: 10,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n visible: false,\r\n sortOrder: \"\",\r\n datalist: [],\r\n UserId: 0,\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n var date = new Date();\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() - 7);\r\n this.tblResponse.FromDate = date.toLocaleDateString();\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.setState({\r\n FromDate: date,\r\n ToDate: new Date(),\r\n });\r\n this.tblResponse.DealerId = this.state.UserId;\r\n this.props.fetchApi(this.tblResponse);\r\n this.props.GetVendorListDDL(sessionStorage.getItem(\"UserData\"));\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (prevProps.SecondaryPackingList !== this.props.SecondaryPackingList) {\r\n // this.props.myProp has a different value\r\n if (this.props.SecondaryPackingList) {\r\n var e = this.props.SecondaryPackingList;\r\n this.setState({\r\n totalRecords: parseInt(e[0].TotalRows),\r\n });\r\n }\r\n }\r\n debugger\r\n if (\r\n this.state.Download &&\r\n this.props.IsDownload >= 1 &&\r\n prevProps.IsDownload != this.props.IsDownload\r\n ) {\r\n setTimeout(() => {\r\n this.csvLink.current.link.click();\r\n }, 3000);\r\n this.setState({\r\n Download: false,\r\n });\r\n }\r\n }\r\n\r\n GetOrderBooking() {\r\n let ToDt = new Date();\r\n let FrmDt = new Date();\r\n FrmDt.setDate(ToDt.getDate() - 7);\r\n const myFmDt = this.getCurrentDateYYYYMMDD(FrmDt);\r\n const myToDt = this.getCurrentDateYYYYMMDD(ToDt);\r\n this.tblResponse.FromDate = myFmDt;\r\n this.tblResponse.ToDate = myToDt;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n FilterData() {\r\n this.tblResponse.FromDate = this.state.FromDate.toLocaleDateString();\r\n this.tblResponse.ToDate = this.state.ToDate.toLocaleDateString();\r\n this.tblResponse.DealerId = this.state.UserId;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n getCurrentDateYYYYMMDD(dt) {\r\n var dd = String(dt.getDate()).padStart(2, \"0\");\r\n var mm = String(dt.getMonth() + 1).padStart(2, \"0\");\r\n var yyyy = dt.getFullYear();\r\n dt = yyyy + \"/\" + mm + \"/\" + dd;\r\n return dt;\r\n }\r\n\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n switch (name) {\r\n case \"FromDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n // this.refs.Messchild.showError(\"Please select from date.\");\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select from date.\",\r\n life: 3000,\r\n });\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (value instanceof Date && this.state.ToDate instanceof Date) {\r\n const startDate = value;\r\n const endDate = this.state.ToDate;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"From date must be less than to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"From date must be less than to date.\");\r\n return;\r\n }\r\n }\r\n break;\r\n case \"ToDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please select to date.\");\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (\r\n value instanceof Date &&\r\n this.state.FromDate instanceof Date\r\n ) {\r\n const startDate = this.state.FromDate;\r\n const endDate = value;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"To date must be greater than from date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"To date must be greater than from date.\");\r\n return;\r\n }\r\n }\r\n break;\r\n default:\r\n break;\r\n }\r\n this.setState({ [name]: value });\r\n }\r\n\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n debugger\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.DealerId = this.state.UserId;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n this.tblResponse.FromDate = this.state.FromDate.toLocaleDateString();\r\n this.tblResponse.ToDate = this.state.ToDate.toLocaleDateString();\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n Export() {\r\n this.tblResponse.PageSize = -1;\r\n this.tblResponse.First = 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = this.state.globalFilter == null ? \"\" : this.state.globalFilter;\r\n this.tblResponse.SortColumn = \"CreatedDt\";\r\n this.tblResponse.DealerId = this.state.UserId;\r\n this.tblResponse.SortOrder = \"DESC\";\r\n this.tblResponse.FromDate = this.state.FromDate.toLocaleDateString();\r\n this.tblResponse.ToDate = this.state.ToDate.toLocaleDateString();\r\n this.props.exportData(this.tblResponse);\r\n this.setState({\r\n Download: true,\r\n });\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1, globalFilter: e.target.value });\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\";\r\n this.tblResponse.DealerId = this.state.UserId;\r\n this.tblResponse.FromDate = this.state.FromDate.toLocaleDateString();\r\n this.tblResponse.ToDate = this.state.ToDate.toLocaleDateString();\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField =\r\n event.multiSortMeta[0].field === \"CreatedDate\"\r\n ? \"CreatedDate\"\r\n : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\";\r\n this.tblResponse.DealerId = this.state.UserId;\r\n this.tblResponse.FromDate = this.state.FromDate.toLocaleDateString();\r\n this.tblResponse.ToDate = this.state.ToDate.toLocaleDateString();\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n (this.toast = el)} />\r\n
\r\n
\r\n

Secondary Packing Report

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n {\r\n this.handleChange(e);\r\n }}\r\n options={this.props.VendorDDL}\r\n optionValue=\"value\"\r\n optionLabel=\"label\"\r\n className=\"form-control custom-select\"\r\n placeholder=\"Select Vendor\"\r\n name=\"UserId\"\r\n filter\r\n />
\r\n
\r\n \r\n Submit\r\n \r\n  \r\n \r\n \r\n Export\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n {\r\n this.dt = el;\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n SecondaryPackingList: state.SecondaryPackingReport.secondaryitems,\r\n VendorDDL: state.SecondaryPackingReport.vendorDDL == undefined\r\n ? []\r\n : state.SecondaryPackingReport.vendorDDL,\r\n List:\r\n state.SecondaryPackingReport.exportitems == undefined\r\n ? []\r\n : state.SecondaryPackingReport.exportitems,\r\n loading: state.SecondaryPackingReport.loding,\r\n IsDownload: state.SecondaryPackingReport.isDownload,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(SecondaryPackingRptActions.getAll(obj));\r\n },\r\n loadingData: (isLoding) =>\r\n dispatch(SecondaryPackingRptActions.loadingData(isLoding)),\r\n exportData: (obj) => dispatch(SecondaryPackingRptActions.exportData(obj)),\r\n GetVendorListDDL: (UserId) => dispatch(SecondaryPackingRptActions.GetVendorListDDL(UserId)),\r\n };\r\n};\r\n\r\nexport default connect(\r\n mapStateToProps,\r\n mapDispatchToProps\r\n)(SecondaryPackingReport);\r\n","import React, { Component } from 'react'\r\nimport { DataTable } from 'primereact/datatable';\r\nimport { Column } from 'primereact/column';\r\nimport TextField from '@material-ui/core/TextField';\r\nimport { Calendar } from 'primereact/calendar';\r\nimport { DispatchRptActions, DispatchActions } from \"../../actions\";\r\nimport { connect } from 'react-redux';\r\nimport tableRequest from '../../models/tableRequest.js';\r\nimport { Toast } from 'primereact/toast';\r\nimport { CSVLink } from \"react-csv\";\r\nimport { Button } from \"primereact/button\";\r\nimport PrintDispatchService from \"../../services/PrintDispatchService\";\r\n\r\nclass DispatchReport extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.csvLink = React.createRef();\r\n this.tblResponse = new tableRequest();\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.PrintDispatchService = new PrintDispatchService();\r\n this.handleChange = this.handleChange.bind(this);\r\n this.FilterData = this.FilterData.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.actionBodyTemplate = this.actionBodyTemplate.bind(this);\r\n this.Export = this.Export.bind(this);\r\n this.state = {\r\n loading: false,\r\n FromDate: new Date(),\r\n ToDate: new Date(),\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n visible: false,\r\n sortOrder: '',\r\n datalist: [],\r\n IsEdit: true,\r\n DispatchedTo: '',\r\n Id: 0\r\n }\r\n }\r\n componentDidMount() {\r\n var date = new Date();\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() - 7);\r\n this.tblResponse.FromDate = date.toLocaleDateString();\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.setState({\r\n FromDate: date,\r\n ToDate: new Date()\r\n });\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (prevProps.DispatchList !== this.props.DispatchList) {\r\n // this.props.myProp has a different value\r\n if (this.props.DispatchList) {\r\n var e = this.props.DispatchList;\r\n this.setState({\r\n totalRecords: e[0].TotalRows\r\n });\r\n }\r\n }\r\n\r\n if (\r\n this.state.Download &&\r\n this.props.IsDownload >= 1 &&\r\n prevProps.IsDownload != this.props.IsDownload\r\n ) {\r\n setTimeout(() => {\r\n this.csvLink.current.link.click();\r\n }, 3000);\r\n this.setState({\r\n Download: false,\r\n });\r\n }\r\n }\r\n\r\n GetDispatch() {\r\n let ToDt = new Date();\r\n let FrmDt = new Date();\r\n FrmDt.setDate(ToDt.getDate() - 7);\r\n\r\n const myFmDt = this.getCurrentDateYYYYMMDD(FrmDt);\r\n const myToDt = this.getCurrentDateYYYYMMDD(ToDt);\r\n\r\n this.tblResponse.FromDate = myFmDt;\r\n this.tblResponse.ToDate = myToDt;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n FilterData() {\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n getCurrentDateYYYYMMDD(dt) {\r\n var dd = String(dt.getDate()).padStart(2, '0');\r\n var mm = String(dt.getMonth() + 1).padStart(2, '0');\r\n var yyyy = dt.getFullYear();\r\n\r\n dt = yyyy + '/' + mm + '/' + dd;\r\n return dt;\r\n }\r\n\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n switch (name) {\r\n case 'FromDate':\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n // this.refs.Messchild.showError(\"Please select from date.\");\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please select from date.', life: 3000 });\r\n\r\n return;\r\n }\r\n else if (!(value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please enter only date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n }\r\n else if ((value instanceof Date) && (this.state.ToDate instanceof Date)) {\r\n const startDate = value;\r\n const endDate = this.state.ToDate;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'From date must be less than to date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"From date must be less than to date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n case 'ToDate':\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please select to date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"Please select to date.\");\r\n return;\r\n }\r\n else if (!(value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please enter only date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n }\r\n else if ((value instanceof Date) && (this.state.FromDate instanceof Date)) {\r\n const startDate = this.state.FromDate;\r\n const endDate = value;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'To date must be greater than from date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"To date must be greater than from date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n this.setState({ [name]: value });\r\n }\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? 'ASC' : 'DESC';\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n // this.setState({\r\n // loading: true\r\n // });\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);;\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField = event.multiSortMeta[0].field === \"CreatedDate\" ? \"CreatedDt\" : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? 'DESC' : 'ASC';//this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n actionBodyTemplate(rowData, column) {\r\n //to print\r\n const print = (e) => {\r\n this.props.getDispatchToPrint(rowData)\r\n var options = { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' };\r\n setTimeout(() => {\r\n\r\n const resdata = this.props.PrintData;\r\n this.PrintDispatchService.Printpdf(resdata.ResponseData)\r\n //this.PrintDispatchService.Printpdf(this.props.PrintData, new Date(rowData.CreatedDt).toLocaleDateString(\"en-US\", options));\r\n }, 2000)\r\n ////PRINT SLIP\r\n }\r\n return (\r\n \r\n );\r\n }\r\n\r\n\r\n // actionBodyTemplate(rowData) {\r\n // ;\r\n // const print = (e) => {\r\n\r\n\r\n // //console.log(rowData);\r\n\r\n // //let printDocument = new printDocument();\r\n // //this.printDocument(rowData);\r\n // //this.printDocument(rowData);\r\n // \r\n // // const editMode = (e) => {\r\n // this.setState({\r\n\r\n // //buttonLabel: \"Update\",\r\n // //formHeading: \"Update Mapping\",\r\n // displayModal: true,\r\n // Id: rowData.Id,\r\n // DispatchedTo: rowData.DispatchedTo,\r\n\r\n // });\r\n // this.printDocument(rowData);\r\n // //console.log(rowData);\r\n // };\r\n // return (\r\n // \r\n // );\r\n // }\r\n\r\n Export() {\r\n this.tblResponse.PageSize = -1;\r\n this.tblResponse.First = 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = this.state.globalFilter == null ? \"\" : this.state.globalFilter;\r\n this.tblResponse.SortColumn = \"CreatedDt\";\r\n this.tblResponse.DealerId = this.state.UserId;\r\n this.tblResponse.SortOrder = \"DESC\";\r\n this.tblResponse.FromDate = this.state.FromDate.toLocaleDateString();\r\n this.tblResponse.ToDate = this.state.ToDate.toLocaleDateString();\r\n this.props.exportData(this.tblResponse);\r\n this.setState({\r\n Download: true,\r\n });\r\n }\r\n\r\n render() {\r\n\r\n return (\r\n
\r\n this.toast = el} />\r\n
\r\n
\r\n

Stock Receive Report

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n  \r\n \r\n \r\n Export\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n { this.dt = el; }}>\r\n \r\n \r\n \r\n \r\n \r\n {/* \r\n \r\n \r\n */}\r\n {/* */}\r\n {/* {this.state.IsEdit === true ? (\r\n \r\n ) : (\r\n \r\n )} */}\r\n\r\n \r\n
\r\n
\r\n )\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n ////console.log('state.DispatchReport.items', state.DispatchReport.items);\r\n return {\r\n DispatchList: state.Dispatch.items,\r\n List: state.DispatchReport.exportitems == undefined ? [] : state.DispatchReport.exportitems,\r\n loading: state.verification.loding,\r\n PrintData: state.DispatchReport.printdata == undefined ? [] : state.DispatchReport.printdata,\r\n IsDownload: state.DispatchReport.isDownload,\r\n }\r\n}\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(DispatchActions.getAll(obj))\r\n },\r\n loadingData: (isLoding) => dispatch(DispatchActions.loadingData(isLoding)),\r\n exportData: (obj) => dispatch(DispatchRptActions.exportData(obj)),\r\n getDispatchToPrint: (data) => dispatch(DispatchRptActions.GetDispatchToPrint(data))\r\n }\r\n}\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(DispatchReport)","import React, { Component } from \"react\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport { Calendar } from \"primereact/calendar\";\r\nimport { alertActions, OrderBookingRptActions } from \"../../actions\";\r\nimport { connect } from \"react-redux\";\r\nimport tableRequest from \"../../models/tableRequest.js\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { CSVLink } from \"react-csv\";\r\n\r\nclass OrderBookingRpt extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.csvLink = React.createRef();\r\n this.tblResponse = new tableRequest();\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.FilterData = this.FilterData.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.List = this.List.bind(this);\r\n this.state = {\r\n loading: false,\r\n FromDate: new Date(),\r\n ToDate: new Date(),\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n visible: false,\r\n sortOrder: \"\",\r\n datalist: [],\r\n Download: false,\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n var date = new Date();\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() - 7);\r\n this.tblResponse.FromDate = date.toLocaleDateString();\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.setState({\r\n FromDate: date,\r\n ToDate: new Date(),\r\n });\r\n this.props.fetchApi(this.tblResponse);\r\n\r\n // this.props.exportData(this.tblResponse);\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (prevProps.OrderBooikngList !== this.props.OrderBooikngList) {\r\n // this.props.myProp has a different value\r\n if (this.props.OrderBooikngList) {\r\n var e = this.props.OrderBooikngList;\r\n this.setState({\r\n totalRecords: e[0].TotalRows,\r\n });\r\n }\r\n }\r\n\r\n if (\r\n this.state.Download &&\r\n this.props.IsDownload >= 1 &&\r\n prevProps.IsDownload != this.props.IsDownload\r\n ) {\r\n setTimeout(() => {\r\n this.csvLink.current.link.click();\r\n }, 3000);\r\n this.setState({\r\n Download: false,\r\n });\r\n }\r\n }\r\n\r\n GetOrderBooking() {\r\n let ToDt = new Date();\r\n let FrmDt = new Date();\r\n FrmDt.setDate(ToDt.getDate() - 7);\r\n\r\n const myFmDt = this.getCurrentDateYYYYMMDD(FrmDt);\r\n const myToDt = this.getCurrentDateYYYYMMDD(ToDt);\r\n\r\n this.tblResponse.FromDate = myFmDt;\r\n this.tblResponse.ToDate = myToDt;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n FilterData() {\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n getCurrentDateYYYYMMDD(dt) {\r\n var dd = String(dt.getDate()).padStart(2, \"0\");\r\n var mm = String(dt.getMonth() + 1).padStart(2, \"0\");\r\n var yyyy = dt.getFullYear();\r\n\r\n dt = yyyy + \"/\" + mm + \"/\" + dd;\r\n return dt;\r\n }\r\n\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n switch (name) {\r\n case \"FromDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n // this.refs.Messchild.showError(\"Please select from date.\");\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select from date.\",\r\n life: 3000,\r\n });\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (value instanceof Date && this.state.ToDate instanceof Date) {\r\n const startDate = value;\r\n const endDate = this.state.ToDate;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"From date must be less than to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"From date must be less than to date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n case \"ToDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please select to date.\");\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (\r\n value instanceof Date &&\r\n this.state.FromDate instanceof Date\r\n ) {\r\n const startDate = this.state.FromDate;\r\n const endDate = value;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"To date must be greater than from date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"To date must be greater than from date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n this.setState({ [name]: value });\r\n }\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n List() {\r\n var obj = {\r\n FromDate: this.state.FromDate,\r\n ToDate: this.state.ToDate,\r\n PageSize: -1,\r\n SearchValue: \"\",\r\n SortColumn: \"\",\r\n SortOrder: \"desc\",\r\n First: 1,\r\n };\r\n this.props.exportData(obj);\r\n this.setState({\r\n Download: true,\r\n });\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n // this.setState({\r\n // loading: true\r\n // });\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField =\r\n event.multiSortMeta[0].field === \"CreatedDate\"\r\n ? \"CreatedDate\"\r\n : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\"; //this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n (this.toast = el)} />\r\n
\r\n
\r\n

Order Booking Report

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n Submit\r\n \r\n {/*  \r\n \r\n\r\n */}\r\n  \r\n \r\n \r\n Export\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n {\r\n this.dt = el;\r\n }}\r\n >\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* */}\r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n ////console.log('state.OrderBookingRpt.items', state.OrderBookingRpt.items);\r\n return {\r\n OrderBooikngList: state.OrderBookingRpt.items,\r\n List:\r\n state.OrderBookingRpt.exportitems == undefined\r\n ? []\r\n : state.OrderBookingRpt.exportitems,\r\n loading: state.verification.loding,\r\n IsDownload: state.OrderBookingRpt.isDownload,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(OrderBookingRptActions.getAll(obj));\r\n },\r\n loadingData: (isLoding) =>\r\n dispatch(OrderBookingRptActions.loadingData(isLoding)),\r\n exportData: (obj) => dispatch(OrderBookingRptActions.exportData(obj)),\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(OrderBookingRpt);\r\n","import React, { Component } from \"react\";\r\nimport \"primereact/resources/primereact.min.css\";\r\nimport \"primeicons/primeicons.css\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { connect } from \"react-redux\";\r\nimport { TertiaryPackingActions } from \"../../actions/TertiaryPackingActions.js\";\r\nimport { Button } from \"primereact/button\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport tableRequest from \"../../models/tableRequest.js\";\r\nimport { confirmAlert } from \"react-confirm-alert\"; // Import\r\nimport { BreadCrumb } from \"primereact/breadcrumb\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\n// import { ConfirmationModal } from '../../template/ConfirmationModal';\r\nimport $ from \"jquery\";\r\nimport MessageComponent from \"../../templates/Message\";\r\n// import PrintSecondaryPackagingService from '../../services/PrintSecondaryPackagingService';\r\n// import Loaders from '../../template/Loaders';\r\nimport alreadyPacked from \"../../assets/audio/AlreadyScanned.mp3\";\r\nimport invalidScan from \"../../assets/audio/InvalidScan.mp3\";\r\n\r\nclass TertiaryPacking extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.autoref = React.createRef();\r\n // this.UserService = new UserService();\r\n this.handleChange.bind(this);\r\n this.getCartonList = this.getCartonList.bind(this);\r\n this.alreadyPacked = new Audio(alreadyPacked);\r\n this.invalidScan = new Audio(invalidScan);\r\n // this.CartonMasterService = new CartonMasterService();\r\n // this.MappingService = new MappingService();\r\n // this.TertiaryPackingService = new TertiaryPackingService();\r\n // this.DispatchService = new DispatchService();\r\n // this.PrintSecondaryPackagingService = new PrintSecondaryPackagingService();\r\n this.tblResponse = new tableRequest();\r\n this.state = {\r\n CartonName: \"\",\r\n reason: \"\",\r\n Tvisible: false,\r\n remark: \"\",\r\n older: false,\r\n globalFilter: null,\r\n visible: false,\r\n isold: false,\r\n CartonSize: \"\",\r\n olderstockVisible: false,\r\n\r\n olderdata: [],\r\n sortIcon: false,\r\n Loader1: true,\r\n Loader2: false,\r\n isSelected: false,\r\n preVal: \"\",\r\n rvisible: false,\r\n sortOrder: \"1\",\r\n SelectedCartonDetails: [],\r\n formError: {},\r\n CartonDDL: [],\r\n CartonId: \"\",\r\n buttonLabel: \"Submit\",\r\n sales: [],\r\n scanItems: [],\r\n loading: true,\r\n first: 0,\r\n rows: 10,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n emptyMessage: \"No Data found\",\r\n IsDisabledCartonDDL: false,\r\n scanTxt: \"\", //KREP-55 defect\r\n };\r\n\r\n this.actionTemplate = this.actionTemplate.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.submitFormFinal = this.submitFormFinal.bind(this);\r\n\r\n this.hideFunc = this.hideFunc.bind(this);\r\n this.onPage = this.onPage.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n // this.openDialog = this.openDialog.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n\r\n this.ScanItem = this.ScanItem.bind(this);\r\n }\r\n //trigger api function on page call\r\n componentDidMount() {\r\n // setTimeout(() => {\r\n // //this.GetTertiaryPacking();\r\n // }, 100);\r\n\r\n // $('.p-column-title').on('click', function () {\r\n // $(this).next().removeClass('pi-sort').toggleClass('pi-sort-up').addClass('pi-sort-down');\r\n // });\r\n\r\n //this.GetActiveCartonDDL();\r\n this.props.CartonData(this.tblResponse);\r\n //this.props.GetTertiaryPackingScan(this.tblResponse);\r\n this.props.getTertiaryPacking(this.tblResponse);\r\n }\r\n\r\n componentDidUpdate() {\r\n if (this.props.alreadyPackedAudio) {\r\n this.alreadyPacked.play();\r\n this.props.alreadyPacked(false);\r\n } else if (this.props.warningAudio) {\r\n this.invalidScan.play();\r\n this.props.warning(false);\r\n }\r\n }\r\n\r\n // PAGE EVENT CALL\r\n onPage(event) {\r\n this.setState({\r\n loading: true,\r\n });\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.getTertiaryPacking(this.tblResponse);\r\n //this.GetTertiaryPackingg();\r\n }, 200);\r\n }\r\n\r\n // set lazy loading values\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n }\r\n\r\n // get users data list from api\r\n GetTertiaryPackingg() {\r\n //this.tblResponse.SortColumn = 'TertiaryCartonId';\r\n this.props.getTertiaryPacking(this.tblResponse);\r\n //this.TertiaryPackingService.GetTertiaryPacking(this.tblResponse).then(data => {\r\n\r\n this.setState({ Loader2: true });\r\n const resdata = this.props.TertiaryPackdata;\r\n //if responsedata is not null\r\n if (\r\n resdata !== null &&\r\n resdata.ResponseData !== null &&\r\n resdata.ResponseData.length > 0\r\n ) {\r\n this.datasource = resdata.ResponseData;\r\n this.setState({\r\n totalRecords: resdata.ResponseData[0].TotalRows,\r\n first: this.tblResponse.First - 1,\r\n sales: this.datasource.slice(\r\n 0,\r\n this.tblResponse.First - 1 + this.tblResponse.PageSize\r\n ),\r\n loading: false,\r\n });\r\n }\r\n //if responsedata is null\r\n else {\r\n this.datasource = null;\r\n this.setState({\r\n totalRecords: 0,\r\n first: 1,\r\n sales: null,\r\n loading: false,\r\n });\r\n }\r\n //});\r\n }\r\n\r\n // call every change of form and validation part also\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n let errors = this.state.formError;\r\n\r\n //const isValid = this.validateForm(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n\r\n // validate form\r\n validateForm(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n //to validate each form field with required conditions\r\n switch (name) {\r\n case \"UserName\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.UserName = \"Please enter your username.\";\r\n } else errors.UserName = \"\";\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n\r\n // reset form text value\r\n formReset() {\r\n this.setState({\r\n reason: \"\",\r\n CartonName: \"\",\r\n Tvisible: false,\r\n remark: \"\",\r\n older: false,\r\n globalFilter: null,\r\n visible: false,\r\n isold: false,\r\n SelectedCartonDetails: [],\r\n olderstockVisible: false,\r\n\r\n olderdata: [],\r\n sortIcon: false,\r\n Loader1: true,\r\n Loader2: false,\r\n isSelected: false,\r\n preVal: \"\",\r\n rvisible: false,\r\n sortOrder: \"1\",\r\n formError: {},\r\n CartonDDL: [],\r\n CartonId: \"\",\r\n buttonLabel: \"Submit\",\r\n sales: [],\r\n scanItems: [],\r\n loading: true,\r\n first: 0,\r\n rows: 10,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n emptyMessage: \"No Data found\",\r\n IsDisabledCartonDDL: false,\r\n scanTxt: \"\", //KREP-55 defect\r\n });\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key, value]) => {\r\n errors[key] = \"\";\r\n });\r\n }\r\n\r\n // open Dialog\r\n openDialog() {\r\n this.setState({ visible: true });\r\n this.formReset();\r\n }\r\n\r\n submitForm(event) {\r\n if (this.state.scanItems.length == 0) {\r\n this.refs.Messchild.showWarn(\"Scan First\");\r\n return;\r\n }\r\n // else if (this.state.SelectedCartonDetails[0].CartonSize != this.state.scanItems.length && this.state.reason.trim().length < 4) {\r\n\r\n // // let reason = prompt(\"Carton is not fully Packed. \\n Please Specify the Reason in min 5 chars Max 500 Chars\", \"\");\r\n\r\n // // reason = reason != null ? reason.trim() : \"\";\r\n // this.setState({ rvisible: true })\r\n // }\r\n else {\r\n this.setState({\r\n Tvisible: true,\r\n CartonName: \"\",\r\n });\r\n }\r\n }\r\n\r\n // submit packing\r\n submitFormFinal(event) {\r\n if (this.state.older && this.state.remark == \"\") {\r\n this.setState({ isold: true });\r\n return;\r\n }\r\n\r\n // if (event != undefined) { event.preventDefault(); }\r\n // if (this.state.CartonId.length == 0) {\r\n // this.refs.Messchild.showWarn(\"Select Carton Size\");\r\n // this.setState({ scanTxt: \"\" });\r\n // return;\r\n // }\r\n else if (this.state.scanItems.length == 0) {\r\n this.refs.Messchild.showWarn(\"Scan First\");\r\n return;\r\n }\r\n\r\n // if (this.state.SelectedCartonDetails[0].CartonSize != this.state.scanItems.length && this.state.reason.trim().length < 4) {\r\n // this.setState({ rvisible: true })\r\n // return;\r\n // }\r\n else {\r\n this.setState({ Loader1: false });\r\n const formData = {\r\n //createdBy\r\n //cartonMasterId: this.state.CartonId,\r\n scanned: this.state.scanItems,\r\n\r\n CartonName: this.state.CartonName,\r\n\r\n reason: this.state.reason,\r\n };\r\n\r\n this.setState({ Tvisible: false });\r\n setTimeout(() => {\r\n // this.TertiaryPackingService.Save(formData).then(data => {\r\n\r\n // this.setState({ Loader1: true });\r\n // const resdata = data.data;\r\n // //if ResponseCode is 200 success else error or warning message\r\n // if (resdata !== null && resdata.ResponseCode === '200') {\r\n // if ((resdata.ResponseData).CreatedDt == '410' && (resdata.ResponseData).ProductName == \"Items Already Packed\") {\r\n // this.refs.Messchild.showError(\"Items Already Packed\");\r\n // this.formReset();\r\n // this.GetActiveCartonDDL();\r\n // this.GetTertiaryPackingg();\r\n // }\r\n // else {\r\n // this.refs.Messchild.showSuccess(resdata.ResponseMessage);\r\n // // this.PrintSecondaryPackagingService.formPreview1([resdata.ResponseData]);\r\n // // this.setState({\r\n // // loading: true,\r\n // // visible: false\r\n // // });\r\n // // this.formReset();\r\n // this.setState({\r\n // CartonName: '',\r\n // IsDisabledCartonDDL: false,\r\n // Tvisible: false\r\n // });\r\n\r\n // this.state.scanItems = [];\r\n // this.setState({\r\n // scanItems: []\r\n // });\r\n // this.GetTertiaryPackingg();\r\n\r\n // this.autoref.current.focus();\r\n // }\r\n // } else if (resdata.ResponseCode === '400') {\r\n // this.refs.Messchild.showWarn(resdata.ResponseMessage);\r\n // } else {\r\n\r\n // this.setState({ CartonName: '' })\r\n // this.refs.Messchild.showError(resdata.ResponseMessage);\r\n // }\r\n // });\r\n //this.setState({ productLoading: true });\r\n this.props.saveTertiaryPacking(formData);\r\n this.setState({ reason: \"\" });\r\n this.formReset();\r\n this.autoref.current.focus();\r\n setTimeout(() => {\r\n this.props.getTertiaryPacking(this.tblResponse);\r\n }, 200);\r\n }, 200);\r\n }\r\n }\r\n\r\n getCartonList(event) {\r\n this.state.SelectedCartonDetails = this.props.CartonDDL.filter((carton) => {\r\n if (carton.value == event.target.value) {\r\n return carton;\r\n }\r\n });\r\n this.setState({ CartonId: this.state.SelectedCartonDetails[0].value });\r\n }\r\n\r\n // get active carton drop down list\r\n GetActiveCartonDDL() {\r\n this.CartonMasterService.GetActiveCartonDDL().then((data) => {\r\n const resdata = data.data;\r\n //if ResponseData is not null\r\n if (resdata !== null && resdata.ResponseCode === \"200\") {\r\n this.setState({\r\n CartonDDL: resdata.ResponseData,\r\n });\r\n }\r\n });\r\n }\r\n\r\n hideFunc() {\r\n this.setState({\r\n isold: false,\r\n olderstockVisible: false,\r\n // formHeading: 'Add User'\r\n });\r\n }\r\n\r\n // scan qr code\r\n ScanItem(e, flag) {\r\n let qr = e.target.value;\r\n const scanlist = this.state.scanItems;\r\n //this.props.GetTertiaryPackingScan(qr,flag,scanlist);\r\n let id = 1;\r\n if (e.key === \"Enter\" || !flag) {\r\n let qr = flag ? e.target.value : e;\r\n //let scan = this.props.TertiaryscanItems;\r\n //let Tscan = this.props.TertiaryPackdata;\r\n //let Cartondata = this.props.Cartondata;\r\n\r\n // if (this.state.CartonId.length == 0) {\r\n // this.refs.Messchild.showWarn(\"Select Carton Size\");\r\n // this.setState({ scanTxt: '' })\r\n // return;\r\n // } else\r\n if (!qr.includes(\"SID\")) {\r\n this.refs.Messchild.showWarn(\"Invalid Item\");\r\n this.props.warning(true);\r\n this.setState({ scanTxt: \"\" });\r\n return;\r\n }\r\n // else if (this.state.SelectedCartonDetails[0].CartonSize == this.state.scanItems.length) {\r\n // this.refs.Messchild.showWarn(\"Carton Full\");\r\n // return;\r\n // }\r\n else if (qr.includes(\"SID\")) {\r\n this.state.scanItems.forEach((element) => {\r\n if (element.CartonId == qr) {\r\n this.props.alreadyPacked(true);\r\n this.refs.Messchild.showWarn(\"Already Scanned..!\");\r\n id = 2;\r\n return;\r\n }\r\n });\r\n }\r\n setTimeout(() => {\r\n if (id == 1) {\r\n //const fObj = {UID : qr}\r\n const scanlist = this.state.scanItems;\r\n this.props.GetTertiaryPackingScan(qr, flag);\r\n setTimeout(() => {\r\n const resdata = this.props.TertiaryscanItems;\r\n //if ResponseCode is 200 success else error or warning message\r\n if (resdata !== null && resdata.ResponseCode === \"200\") {\r\n let id = 1;\r\n // if (this.state.scanItems.length > 0) {\r\n // let pid = this.state.scanItems[0].ProductId;\r\n // (resdata.ResponseData).forEach(element => {\r\n // if (element.ProductId != pid) {\r\n // id = 2\r\n // }\r\n // });\r\n // if (id == 2) {\r\n // this.refs.Messchild.showWarn(\"only Similar Items Can be packed\");\r\n // return;\r\n // }\r\n // }\r\n\r\n //disable\r\n setTimeout(() => {\r\n if (id == 2) {\r\n return;\r\n } else {\r\n var element = this.props.TertiaryscanItems;\r\n resdata.ResponseData.forEach((element) => {\r\n element.MFGDate =\r\n element.MFGDate != null || undefined\r\n ? element.MFGDate.substring(0, 10)\r\n : element.MFGDate;\r\n element.EXPDate =\r\n element.EXPDate != null || undefined\r\n ? element.EXPDate.substring(0, 10)\r\n : element.EXPDate;\r\n if (this.state.scanItems.length > 0) {\r\n let checkseqNo = this.state.scanItems.filter(\r\n (y) => y.Id == element.Id\r\n );\r\n\r\n if (checkseqNo.length > 0) {\r\n this.props.alreadyPacked(true);\r\n this.refs.Messchild.showWarn(\"Already Scanned\");\r\n return;\r\n }\r\n }\r\n\r\n this.state.scanItems.push(element);\r\n this.setState({\r\n //IsDisabledCartonDDL: true,\r\n scanItems: this.state.scanItems,\r\n scanTxt: \"\",\r\n radio: true,\r\n });\r\n });\r\n }\r\n // if (this.state.CartonId.CartonSize == this.state.scanItems.length) {\r\n // this.submitForm(e);\r\n // }\r\n }, 200);\r\n } else if (resdata !== null && resdata.ResponseCode === \"500\") {\r\n if (resdata.length == 0) {\r\n this.ScanItem(qr, false);\r\n return;\r\n }\r\n let checkseqNo = [];\r\n resdata.ResponseData.forEach((element) => {\r\n if (this.state.scanItems.length > 0) {\r\n let chk = this.state.scanItems.filter(\r\n (y) => y.Id == element.Id\r\n );\r\n if (chk.length != 0) {\r\n checkseqNo.push(chk);\r\n }\r\n if (checkseqNo.length == resdata.length) {\r\n this.ScanItem(qr, false);\r\n }\r\n }\r\n });\r\n\r\n if (\r\n checkseqNo == undefined ||\r\n checkseqNo.length != resdata.length\r\n ) {\r\n let id = 1;\r\n if (this.state.scanItems.length > 0) {\r\n let pid = this.state.scanItems[0].ProductId;\r\n resdata.forEach((element) => {\r\n if (element.ProductId != pid) {\r\n id = 2;\r\n }\r\n });\r\n if (id == 2) {\r\n this.refs.Messchild.showWarn(\r\n \"only Similar Items Can be packed\"\r\n );\r\n return;\r\n }\r\n }\r\n setTimeout(() => {\r\n if (id == 2) {\r\n return;\r\n }\r\n }, 200);\r\n }\r\n } //// else of response code 5000 ends here\r\n else this.refs.Messchild.showWarn(resdata.ResponseMessage);\r\n }, 1000);\r\n } else if (id != 2) {\r\n this.refs.Messchild.showWarn(\"Invalid Scanned\");\r\n }\r\n }, 200);\r\n this.setState({\r\n scanTxt: \"\",\r\n });\r\n }\r\n }\r\n\r\n // delete user data\r\n deleteScanned(CartonId) {\r\n let arrayfilter = this.state.scanItems.filter(\r\n (x) => x.CartonId != CartonId\r\n );\r\n this.setState({\r\n scanItems: arrayfilter,\r\n });\r\n }\r\n\r\n // seach table\r\n searchFilter(e) {\r\n this.setState({\r\n loading: true,\r\n });\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.getTertiaryPacking(this.tblResponse);\r\n //this.GetTertiaryPackingg();\r\n }\r\n\r\n callbackFunction = (childData) => {\r\n this.setState({ message: childData });\r\n };\r\n\r\n // disabled checkbox\r\n activeTemplate(rowData, column) {\r\n return ;\r\n }\r\n\r\n // Sort table\r\n onSort(event) {\r\n this.setState({\r\n sortOrder: this.state.sortOrder === 1 ? 2 : 1,\r\n sortIcon: !this.state.sortIcon,\r\n });\r\n const sortField =\r\n event.sortField == \"CreatedDt\" ? \"CreatedDt\" : event.sortField;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\";\r\n this.props.getTertiaryPacking(this.tblResponse);\r\n //this.GetTertiaryPackingg();\r\n const clickData = document.getElementsByClassName(\r\n \"p-sortable-column-icon pi pi-fw pi-sort\"\r\n );\r\n ////console.log(event);\r\n }\r\n\r\n // edit form\r\n actionTemplate(rowData, column) {\r\n const deleteFunc = () => {\r\n confirmAlert({\r\n title: \"Confirm to delete\",\r\n message: \"Are you sure to do this.\",\r\n buttons: [\r\n {\r\n label: \"Yes\",\r\n onClick: () => this.deleteScanned(rowData.CartonId),\r\n },\r\n {\r\n label: \"No\",\r\n onClick: () => null,\r\n },\r\n ],\r\n });\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n\r\n // create html part\r\n render() {\r\n const items = [{ label: \"Transaction\" }, { label: \"Tertiary Packing\" }];\r\n const TabView = (\r\n {\r\n this.setState({ Tvisible: false });\r\n }}\r\n >\r\n
\r\n {\" \"}\r\n {\r\n this.setState({ CartonName: e.target.value.toString().trim() });\r\n }}\r\n onKeyDown={(e) => {\r\n if (e.key == \"Enter\") {\r\n //if (e.target.value.includes(sessionStorage.getItem('Prefix')) && e.target.value.includes('SID')) {\r\n if (e.target.value.includes(\"TID\")) {\r\n this.submitFormFinal(e);\r\n } else {\r\n this.props.showWarn(\"Invalid Cartons\");\r\n this.setState({ CartonName: \"\" });\r\n }\r\n }\r\n }}\r\n autoFocus\r\n />\r\n
\r\n \r\n );\r\n const home = { icon: \"pi pi-home\", url: \"/dashboard\" };\r\n let header = (\r\n
\r\n
\r\n

Tertiary Packing

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {\r\n this.handleChange(e);\r\n }}\r\n name=\"scanTxt\"\r\n value={this.state.scanTxt}\r\n type=\"search\"\r\n className=\"form-control mt-2 p-2\"\r\n id=\"scan\"\r\n onKeyDown={(e) => {\r\n this.ScanItem(e, true);\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n \r\n this.setState({ globalFilter: e.target.value })}\r\n placeholder=\"Global Search\"\r\n size=\"30\"\r\n />\r\n \r\n
\r\n
\r\n );\r\n\r\n let header2 = (\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n\r\n return (\r\n
\r\n
\r\n <>\r\n \r\n {/* */}\r\n {/*
\r\n
\r\n

Tertiary Packing

\r\n
\r\n
\r\n \r\n
\r\n
*/}\r\n
\r\n {/*
\r\n {/* */}\r\n \r\n \r\n \r\n {/* \r\n */}\r\n \r\n \r\n\r\n
\r\n \r\n Submit\r\n \r\n
\r\n\r\n
\r\n {/* */}\r\n \r\n \r\n \r\n \r\n {/* */}\r\n {/* */}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n {\r\n this.setState({ isold: false });\r\n this.submitForm();\r\n }}\r\n >\r\n Submit\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n this.setState({ rvisible: false });\r\n }}\r\n >\r\n
\r\n
\r\n
Define in min 5 char
\r\n \r\n \r\n
\r\n
\r\n
\r\n {\r\n this.setState({ rvisible: false });\r\n this.submitForm();\r\n }}\r\n className=\"btn btn-primary\"\r\n >\r\n Submit\r\n \r\n
\r\n \r\n {TabView}\r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n CartonDDL: state.TertiaryPacking.Cartondata,\r\n Cartondata: state.TertiaryPacking.Cartondata,\r\n TertiaryscanItems: state.TertiaryPacking.TertiaryscanItems,\r\n TertiaryPackdata: state.TertiaryPacking.secondaryItems,\r\n warningAudio: state.TertiaryPacking?.warning,\r\n alreadyPackedAudio: state.TertiaryPacking?.alreadyPacked,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n CartonData: (data) => dispatch(TertiaryPackingActions.CartonData(data)),\r\n GetTertiaryPackingScan: (qr, flag) =>\r\n dispatch(TertiaryPackingActions.GetTertiaryPackingScan(qr, flag)),\r\n getTertiaryPacking: (data) =>\r\n dispatch(TertiaryPackingActions.getTertiaryPacking(data)),\r\n saveTertiaryPacking: (formData) =>\r\n dispatch(TertiaryPackingActions.saveTertiaryPacking(formData)),\r\n warning: (bool) => dispatch(TertiaryPackingActions.warning(bool)),\r\n alreadyPacked: (bool) =>\r\n dispatch(TertiaryPackingActions.alreadyPacked(bool)),\r\n };\r\n};\r\nexport default connect(mapStateToProps, mapDispatchToProps)(TertiaryPacking);\r\n","import React, { Component } from \"react\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport { Calendar } from \"primereact/calendar\";\r\nimport { alertActions, TertiaryPackingRptActions } from \"../../actions\";\r\nimport { connect } from \"react-redux\";\r\nimport tableRequest from \"../../models/tableRequest.js\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { CSVLink } from \"react-csv\";\r\n\r\nclass TertiaryPackingRpt extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.FilterData = this.FilterData.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.state = {\r\n loading: false,\r\n FromDate: new Date(),\r\n ToDate: new Date(),\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n visible: false,\r\n sortOrder: \"\",\r\n datalist: [],\r\n };\r\n }\r\n componentDidMount() {\r\n var date = new Date();\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() - 7);\r\n this.tblResponse.FromDate = date.toLocaleDateString();\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.setState({\r\n FromDate: date,\r\n ToDate: new Date(),\r\n });\r\n this.props.fetchApi(this.tblResponse);\r\n //this.props.exportingData(this.tblResponse);\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (prevProps.TertiaryList !== this.props.TertiaryList) {\r\n // this.props.myProp has a different value\r\n if (this.props.TertiaryList) {\r\n var e = this.props.TertiaryList;\r\n this.setState({\r\n totalRecords: e[0].TotalRows,\r\n });\r\n }\r\n }\r\n }\r\n\r\n GetTertiary() {\r\n let ToDt = new Date();\r\n let FrmDt = new Date();\r\n FrmDt.setDate(ToDt.getDate() - 7);\r\n\r\n const myFmDt = this.getCurrentDateYYYYMMDD(FrmDt);\r\n const myToDt = this.getCurrentDateYYYYMMDD(ToDt);\r\n\r\n this.tblResponse.FromDate = myFmDt;\r\n this.tblResponse.ToDate = myToDt;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n FilterData() {\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n getCurrentDateYYYYMMDD(dt) {\r\n var dd = String(dt.getDate()).padStart(2, \"0\");\r\n var mm = String(dt.getMonth() + 1).padStart(2, \"0\");\r\n var yyyy = dt.getFullYear();\r\n\r\n dt = yyyy + \"/\" + mm + \"/\" + dd;\r\n return dt;\r\n }\r\n\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n switch (name) {\r\n case \"FromDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n // this.refs.Messchild.showError(\"Please select from date.\");\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select from date.\",\r\n life: 3000,\r\n });\r\n\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (value instanceof Date && this.state.ToDate instanceof Date) {\r\n const startDate = value;\r\n const endDate = this.state.ToDate;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"From date must be less than to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"From date must be less than to date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n case \"ToDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please select to date.\");\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (\r\n value instanceof Date &&\r\n this.state.FromDate instanceof Date\r\n ) {\r\n const startDate = this.state.FromDate;\r\n const endDate = value;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"To date must be greater than from date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"To date must be greater than from date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n this.setState({ [name]: value });\r\n }\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n // this.setState({\r\n // loading: true\r\n // });\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField =\r\n event.multiSortMeta[0].field === \"CreatedDate\"\r\n ? \"CreatedDt\"\r\n : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\"; //this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n (this.toast = el)} />\r\n
\r\n
\r\n

Tertiary Packing Report

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n Submit\r\n \r\n  \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n {\r\n this.dt = el;\r\n }}\r\n >\r\n \r\n \r\n \r\n {/* \r\n */}\r\n {/* */}\r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n ////console.log('state.TertiaryPackingRpt.items', state.TertiaryPackingRpt.items);\r\n return {\r\n TertiaryList: state.TertiaryPackingRpt.items,\r\n List:\r\n state.TertiaryPackingRpt.exportitems == undefined\r\n ? []\r\n : state.TertiaryPackingRpt.exportitems,\r\n loading: state.verification.loding,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(TertiaryPackingRptActions.getAll(obj));\r\n },\r\n loadingData: (isLoding) =>\r\n dispatch(TertiaryPackingRptActions.loadingData(isLoding)),\r\n exportingData: (obj) => dispatch(TertiaryPackingRptActions.exportData(obj)),\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(TertiaryPackingRpt);\r\n","import { ProductPurchaseRptConstants } from '../constants/ProductPurchaseRptConstants';\r\nimport { ProductPurchaseRptService } from '../services/ProductPurchaseRptService';\r\nimport {alertActions} from '.';\r\n\r\nexport const ProductPurchaseRptActions= {\r\n getAll,\r\n loadingData,\r\n exportData\r\n};\r\n\r\nfunction getAll(obj)\r\n{\r\n return dispatch =>{\r\n dispatch(request());\r\n\r\n ProductPurchaseRptService.fetchProductPurchaseData(obj).then(response => {\r\n dispatch(loadingData(false));\r\n dispatch(success(response.ResponseData))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n \r\n );\r\n };\r\n function request() { return { type : ProductPurchaseRptConstants.GETALL_REQUEST } } //Changes\r\n function success(datas) { return { type: ProductPurchaseRptConstants.GETALL_SUCCESS, datas } }\r\n function successExport(datas) { return { type: ProductPurchaseRptConstants.GETEXPORT_SUCCESS, datas } }\r\n function failure(error) { return { type: ProductPurchaseRptConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction exportData(obj) {\r\n return dispatch => {\r\n dispatch(request());\r\n ProductPurchaseRptService.fetchProductPurchaseData(obj).then(response => {\r\n dispatch(loadingData(false));\r\n var data = response.ResponseData;\r\n if (data != null) {\r\n data.forEach(function (v) { delete v.TotalRows; delete v.CreatedBy; \r\n delete v.DocURL; delete v.ProductPurchaseId; delete v.ProductID\r\n });\r\n }\r\n dispatch(success(data))\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n });\r\n };\r\n function request() { return { type: ProductPurchaseRptConstants.GETEXPORT_REQUEST } }\r\n function success(datas) { return { type: ProductPurchaseRptConstants.GETEXPORT_SUCCESS, datas } }\r\n function failure(error) { return { type: ProductPurchaseRptConstants.GETEXPORT_FAILURE, error } }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: ProductPurchaseRptConstants.LOADING_REQUEST, isbool\r\n }\r\n}\r\n\r\n","import React, { Component } from 'react'\r\nimport { DataTable } from 'primereact/datatable';\r\nimport { Column } from 'primereact/column';\r\nimport TextField from '@material-ui/core/TextField';\r\nimport { Calendar } from 'primereact/calendar';\r\n//import {alertActions, ProductPurchaseRptActions } from \"../../actions\";\r\nimport { ProductPurchaseRptActions } from '../../actions/ProductPurchaseRptActions';\r\nimport { alertActions } from '../../actions';\r\nimport { connect } from 'react-redux';\r\nimport tableRequest from '../../models/tableRequest.js';\r\nimport { Toast } from 'primereact/toast';\r\nimport { CSVLink } from \"react-csv\";\r\n\r\nclass ProductPurchaseRpt extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.FilterData = this.FilterData.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.state = {\r\n loading: false,\r\n FromDate: new Date(),\r\n ToDate: new Date(),\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n visible: false,\r\n sortOrder: '',\r\n datalist: [],\r\n }\r\n }\r\n componentDidMount() {\r\n var date = new Date();\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() - 7);\r\n this.tblResponse.FromDate = date.toLocaleDateString();\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.setState({\r\n FromDate: date,\r\n ToDate: new Date()\r\n });\r\n this.props.fetchApi(this.tblResponse);\r\n this.props.exportingData(this.tblResponse);\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (prevProps.ProductPurchaseList !== this.props.ProductPurchaseList) {\r\n // this.props.myProp has a different value\r\n if (this.props.ProductPurchaseList) {\r\n var e = this.props.ProductPurchaseList;\r\n this.setState({\r\n totalRecords: e[0].TotalRows\r\n });\r\n }\r\n }\r\n }\r\n\r\n GetProductPurchase() {\r\n let ToDt = new Date();\r\n let FrmDt = new Date();\r\n FrmDt.setDate(ToDt.getDate() - 7);\r\n\r\n const myFmDt = this.getCurrentDateYYYYMMDD(FrmDt);\r\n const myToDt = this.getCurrentDateYYYYMMDD(ToDt);\r\n\r\n this.tblResponse.FromDate = myFmDt;\r\n this.tblResponse.ToDate = myToDt;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n FilterData() {\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n getCurrentDateYYYYMMDD(dt) {\r\n var dd = String(dt.getDate()).padStart(2, '0');\r\n var mm = String(dt.getMonth() + 1).padStart(2, '0');\r\n var yyyy = dt.getFullYear();\r\n\r\n dt = yyyy + '/' + mm + '/' + dd;\r\n return dt;\r\n }\r\n\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n switch (name) {\r\n case 'FromDate':\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n // this.refs.Messchild.showError(\"Please select from date.\");\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please select from date.', life: 3000 });\r\n\r\n return;\r\n }\r\n else if (!(value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please enter only date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n }\r\n else if ((value instanceof Date) && (this.state.ToDate instanceof Date)) {\r\n const startDate = value;\r\n const endDate = this.state.ToDate;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'From date must be less than to date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"From date must be less than to date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n case 'ToDate':\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please select to date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"Please select to date.\");\r\n return;\r\n }\r\n else if (!(value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'Please enter only date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n }\r\n else if ((value instanceof Date) && (this.state.FromDate instanceof Date)) {\r\n const startDate = this.state.FromDate;\r\n const endDate = value;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({ severity: 'error', summary: 'Error Message', detail: 'To date must be greater than from date.', life: 3000 });\r\n // this.refs.Messchild.showError(\"To date must be greater than from date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n this.setState({ [name]: value });\r\n }\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? 'ASC' : 'DESC';\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n // this.setState({\r\n // loading: true\r\n // });\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);;\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField = event.multiSortMeta[0].field === \"CreatedDate\" ? \"CreatedDate\" : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? 'DESC' : 'ASC';//this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n render() {\r\n\r\n return (\r\n
\r\n this.toast = el} />\r\n
\r\n
\r\n

Product Purchase Report

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n  \r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n { this.dt = el; }}>\r\n \r\n \r\n \r\n {/*\r\n */}\r\n {/* */}\r\n {/* */}\r\n {/* */}\r\n \r\n
\r\n
\r\n )\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n ////console.log('state.ProductPurchaseRpt.items', state.ProductPurchaseRpt.items);\r\n return {\r\n ProductPurchaseList: state.ProductPurchaseRpt.items,\r\n List: state.ProductPurchaseRpt.exportitems == undefined ? [] : state.ProductPurchaseRpt.exportitems,\r\n loading: state.verification.loding\r\n }\r\n}\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(ProductPurchaseRptActions.getAll(obj))\r\n },\r\n loadingData: (isLoding) => dispatch(ProductPurchaseRptActions.loadingData(isLoding)),\r\n exportingData: (obj) => dispatch(ProductPurchaseRptActions.exportData(obj))\r\n }\r\n}\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(ProductPurchaseRpt)\r\n","import React, { Component } from 'react'\r\nimport { DataTable } from 'primereact/datatable';\r\nimport { Column } from 'primereact/column';\r\nimport { Button } from 'primereact/button';\r\nimport { InputText } from 'primereact/inputtext';\r\nimport { FileUpload } from 'primereact/fileupload';\r\nimport MenuItem from '@material-ui/core/MenuItem';\r\nimport TextField from '@material-ui/core/TextField';\r\nimport FormControl from '@material-ui/core/FormControl';\r\nimport Select from '@material-ui/core/Select';\r\nimport Checkbox from '@material-ui/core/Checkbox';\r\nimport { connect } from 'react-redux';\r\nimport InputLabel from '@material-ui/core/InputLabel';\r\nimport MuiAlert from '@material-ui/lab/Alert';\r\nimport { Dialog } from 'primereact/dialog';\r\nimport { ToastContainer, toast } from 'react-toastify';\r\nimport { productMasterActions } from '../../actions';\r\nimport tableRequest from '../../models/tableRequest.js';\r\n\r\nclass MRPMaster extends Component {\r\n constructor(props){\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.handleChange = this.handleChange.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.onHide = this.onHide.bind(this);\r\n this.resetForm = this.resetForm.bind(this);\r\n this.openDialog = this.openDialog.bind(this);\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.state = {\r\n IsEdit: true,\r\n IsAdd: true,\r\n first: 0,\r\n rows: 5,\r\n TotalRecords: 0,\r\n globalFilter: null,\r\n sortOrder: '',\r\n confirm: false,\r\n buttonLabel: 'Next',\r\n formHeading: 'Add MRP',\r\n ProductId:0,\r\n MRP:'',\r\n formError: {\r\n ProductId:0,\r\n MRP:''\r\n }\r\n };\r\n }\r\n componentDidMount() {\r\n const userPages = sessionStorage.getItem('assignedPermissionsForUser')\r\n if (userPages) {\r\n const assignedPermissions = JSON.parse(userPages);\r\n const Curenturl = window.location.pathname;\r\n const nNumber = Curenturl.lastIndexOf('/');\r\n const pageName = Curenturl.substring(nNumber + 1);\r\n\r\n const obj = assignedPermissions.assigned.filter((x) => {\r\n return x.ActionName === pageName\r\n });\r\n\r\n if (obj !== null && obj.length > 0) {\r\n if (!obj[0].IsEdit) {\r\n this.setState({\r\n IsEdit: false\r\n });\r\n } else {\r\n this.setState({\r\n IsEdit: true\r\n });\r\n }\r\n\r\n if (!obj[0].IsAdd) {\r\n this.setState({\r\n IsAdd: false\r\n });\r\n } else {\r\n this.setState({\r\n IsAdd: true\r\n });\r\n }\r\n }\r\n }\r\n this.props.fetchApi(this.tblResponse); \r\n this.props.getPrdctDDL();\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.MRPData) {\r\n if (prevProps.MRPData !== this.props.MRPData) {\r\n // this.props.myProp has a different value\r\n if (this.props.MRPData) {\r\n var e = this.props.MRPData;\r\n this.setState({\r\n TotalRecords: e[0].TotalRecords\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.TotalRecords !== 0)\r\n this.setState({\r\n TotalRecords: 0,\r\n first: 0\r\n });\r\n }\r\n }\r\n\r\n handleChange(event) {\r\n let { name, value } = event.target;\r\n let errors = this.state.formError;\r\n this.validateForm(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n validateForm(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n switch (name) {\r\n case 'ProductId':\r\n if (value === 0) {\r\n IsValid = false;\r\n errors.ProductId = \"Please select Product\";\r\n } else errors.ProductId = null\r\n break;\r\n case 'MRP':\r\n if (!value === value) {\r\n IsValid = false;\r\n }\r\n else {\r\n if (value < 1) {\r\n IsValid = false;\r\n errors.MRP = \"Please enter MRP.\";\r\n }\r\n else {\r\n if (!value.toString().match(/^[0-9]+$/.exec(value))) {\r\n IsValid = false;\r\n errors.MRP = \"Please enter only number.\";\r\n this.setState({ MRP: 0 })\r\n }\r\n else{\r\n errors.MRP = \"\";\r\n }\r\n }\r\n }\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n resetForm() {\r\n this.setState({\r\n ProductId:0,\r\n MRP:'',\r\n formError: {\r\n ProductId:0,\r\n MRP:'',\r\n }\r\n });\r\n\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key]) => {\r\n errors[key] = '';\r\n return errors[key];\r\n });\r\n }\r\n\r\n submitForm(event) {\r\n\r\n event.preventDefault();\r\n let isfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key]\r\n let valid = this.validateForm(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n return isfrmvalid;\r\n });\r\n if (isfrmvalid) { this.setState({ activeIndex: 1 }); }\r\n\r\n if (isfrmvalid) {\r\n const formData = {\r\n ProductId:this.state.ProductId,\r\n MRP:this.state.MRP\r\n }\r\n this.props.addMRP(formData);\r\n setTimeout(() => {\r\n this.props.fetchApi(this.tblResponse);\r\n }, 1000)\r\n if (!this.props.showDialog) {\r\n this.resetForm();\r\n }\r\n }\r\n }\r\n\r\n getDropValue() {\r\n let productId = '';\r\n this.props.ProductData.filter(x => {\r\n if (x.ProductId === this.state.ProductId) {\r\n productId = x.ProductId;\r\n }\r\n });\r\n return productId;\r\n }\r\n\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? 'ASC' : 'DESC';\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField = event.multiSortMeta[0].field === \"CreatedDate\" ? \"CreatedDate\" : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? 'DESC' : 'ASC';//this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n\r\n onHide() {\r\n this.props.onHideShow(false);\r\n this.resetForm();\r\n }\r\n\r\n openDialog() {\r\n this.props.onHideShow(true);\r\n this.setState({ buttonLabel: 'Next', formHeading: 'Add MRP' })\r\n }\r\n\r\n render(){\r\n const header = (\r\n
\r\n
\r\n

MRP Master

\r\n
\r\n
\r\n \r\n \r\n this.searchFilter(e)} placeholder=\"Global Search\" />\r\n \r\n {/*
\r\n
\r\n );\r\n\r\n return (\r\n
\r\n \r\n\r\n
\r\n { this.dt = el; }}>\r\n\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n Select Product*\r\n \r\n \r\n {this.state.formError.ProductId !== 0 ?\r\n
{this.state.formError.ProductId}
: ''}\r\n
\r\n
\r\n \r\n {this.state.formError.MRP !== '' ?\r\n
{this.state.formError.MRP}
: ''}\r\n
\r\n
\r\n
Please Click Below Button To Submit*
\r\n
\r\n
\r\n
\r\n
\r\n\r\n )\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n ProductData: (typeof (state.product.prdctddl) !== \"undefined\" && state.product.prdctddl !== null) === true ? state.product?.prdctddl : null,\r\n MRPData : state.product.MRPData,\r\n showDialog: state.product.showDialog,\r\n loading: state.product.loding,\r\n showIsActiveDialog: state.product.showIsActiveDialog\r\n }\r\n}\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (data) => {\r\n dispatch(productMasterActions.GetMRPs(data))\r\n },\r\n addMRP: (data) => {dispatch(productMasterActions.AddMRP(data))},\r\n getPrdctDDL: () => dispatch(productMasterActions.getPrdctDDL()),\r\n onHideShow: isbool => dispatch(productMasterActions.onHideShow(isbool)),\r\n onHideShowIsActive: isbool => dispatch(productMasterActions.onHideShowIsActive(isbool)),\r\n loadingData: (isLoding) => dispatch(productMasterActions.loadingData(isLoding))\r\n }\r\n}\r\nexport default connect(mapStateToProps, mapDispatchToProps)(MRPMaster)","import React, { Component } from 'react'\r\nimport { DataTable } from 'primereact/datatable';\r\nimport { Column } from 'primereact/column';\r\nimport { Button } from 'primereact/button';\r\nimport { InputText } from 'primereact/inputtext';\r\nimport { Dialog } from 'primereact/dialog';\r\nimport TextField from '@material-ui/core/TextField';\r\nimport { FileUpload } from 'primereact/fileupload';\r\nimport MenuItem from '@material-ui/core/MenuItem';\r\nimport FormControl from '@material-ui/core/FormControl';\r\nimport Select from '@material-ui/core/Select';\r\nimport InputLabel from '@material-ui/core/InputLabel';\r\nimport Checkbox from '@material-ui/core/Checkbox';\r\nimport { connect } from 'react-redux';\r\nimport Moment from 'react-moment';\r\nimport { ToastContainer, toast } from 'react-toastify';\r\nimport { categoryActions } from '../../actions';\r\nimport tableRequest from '../../models/tableRequest';\r\n// import { userTypeMasterActions } from '../../actions';\r\nimport Switch from '@material-ui/core/Switch';\r\nimport { Dropdown } from \"primereact/dropdown\";\r\n\r\nclass categoryMaster extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.tblResponse2 = new tableRequest();\r\n this.statusBodyTemplate = this.statusBodyTemplate.bind(this);\r\n this.actionBodyTemplate = this.actionBodyTemplate.bind(this);\r\n this.actionBodyTemplateSubCate = this.actionBodyTemplateSubCate.bind(this);\r\n this.switchToggleConfirm = this.switchToggleConfirm.bind(this);\r\n this.switchToggleConfirm2 = this.switchToggleConfirm2.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.openDialog = this.openDialog.bind(this);\r\n this.openDialog2 = this.openDialog2.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.submitForm2 = this.submitForm2.bind(this);\r\n this.CreatedDateTemplate = this.CreatedDateTemplate.bind(this);\r\n this.UpdatedDateTemplate = this.UpdatedDateTemplate.bind(this)\r\n this.resetForm = this.resetForm.bind(this);\r\n this.resetForm2 = this.resetForm2.bind(this)\r\n this.onHide = this.onHide.bind(this);\r\n this.onHide2 = this.onHide2.bind(this);\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.onPage2 = this.onPage2.bind(this);\r\n this.onSort2 = this.onSort.bind(this);\r\n this.uploadFiles = this.uploadFiles.bind(this)\r\n this.photoBodyTemplate = this.photoBodyTemplate.bind(this);\r\n this.photoBodyTemplateSubCate = this.photoBodyTemplateSubCate.bind(this);\r\n this.setImagePath = this.setImagePath.bind(this);\r\n this.setSubCateImagePath = this.setSubCateImagePath.bind(this);\r\n\r\n\r\n\r\n this.state = {\r\n IsAdd: true,\r\n IsEdit: true,\r\n IsEdit2: true,\r\n first: 0,\r\n first2: 0,\r\n rows: 5,\r\n rows2: 5,\r\n sliderImage: '',\r\n SubCateImage: '',\r\n totalRecords: 0,\r\n totalRecords2: 0,\r\n globalFilter: null,\r\n sortOrder: '',\r\n sortOrder2: '',\r\n buttonLabel: 'Submit',\r\n switchAction: false,\r\n switchAction2: false,\r\n formHeading: 'Add Category Master',\r\n formHeading2: 'Add Sub Category Master',\r\n CategoryId: 0,\r\n MCategoryId: 0,\r\n SubCatId: 0,\r\n CategoryName: '',\r\n SubCategoryName: '',\r\n IsActive: true,\r\n CreatedDate: null,\r\n UpdatedDate: null,\r\n formError: {\r\n CategoryName: '',\r\n SubCategoryName: '',\r\n sliderImage: [],\r\n SubCateImage: [],\r\n }\r\n\r\n };\r\n }\r\n\r\n uploadFiles(e) {\r\n e.preventDefault()\r\n //console.log(this.state.file)\r\n }\r\n getDropValueOfCategory() {\r\n let categoryName = \"\";\r\n this.props.CategoryDataList.filter((x) => {\r\n if (x.value === this.state.categoryId.toString()) {\r\n categoryName = x.label;\r\n }\r\n });\r\n\r\n return categoryName;\r\n }\r\n\r\n componentDidMount() {\r\n const userPages = sessionStorage.getItem('assignedPermissionsForUser')\r\n if (userPages) {\r\n const assignedPermissions = JSON.parse(userPages);\r\n const Curenturl = window.location.pathname;\r\n const nNumber = Curenturl.lastIndexOf('/');\r\n const pageName = Curenturl.substring(nNumber + 1);\r\n\r\n const obj = assignedPermissions.assigned.filter((x) => {\r\n return x.ActionName === pageName\r\n });\r\n\r\n if (obj !== null && obj.length > 0) {\r\n if (!obj[0].IsEdit) {\r\n this.setState({\r\n IsEdit: false\r\n });\r\n }\r\n if (!obj[0].IsAdd) {\r\n this.setState({\r\n IsAdd: false\r\n });\r\n } else {\r\n this.setState({\r\n IsAdd: true\r\n });\r\n }\r\n }\r\n }\r\n\r\n this.props.fetchApi(this.tblResponse); \r\n this.props.SubCatefetchApi(this.tblResponse2);\r\n\r\n\r\n // const userId = JSON.parse(sessionStorage.getItem(\"UserData\"));\r\n // this.props.getRoleDDL(userId);\r\n this.props.getCategoryDDL();\r\n }\r\n //category\r\n photoBodyTemplate(e) {\r\n if (e.FilePath) {\r\n return \r\n }\r\n\r\n }\r\n photoBodyTemplateSubCate(e) {\r\n if (e.SubCateFilePath) {\r\n return \r\n }\r\n\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.CategoryData) {\r\n if (prevProps.CategoryData !== this.props.CategoryData) {\r\n // this.props.myProp has a different value\r\n if (this.props.CategoryData) {\r\n var e = this.props.CategoryData;\r\n this.setState({\r\n totalRecords: e[0].TotalRows\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords !== 0)\r\n this.setState({\r\n totalRecords: 0,\r\n first: 0\r\n });\r\n }\r\n // subcate\r\n if (this.props.SubCategoryData) {\r\n if (prevProps.SubCategoryData !== this.props.SubCategoryData) {\r\n // this.props.myProp has a different value\r\n if (this.props.SubCategoryData) {\r\n var e = this.props.SubCategoryData;\r\n this.setState({\r\n totalRecords2: e[0].TotalRows\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords2 !== 0)\r\n this.setState({\r\n totalRecords2: 0,\r\n first: 0\r\n });\r\n }\r\n }\r\n\r\n switchToggleConfirm = (e) => {\r\n \r\n this.props.inActiveRow(this.state.CategoryId, this.state.switchAction);\r\n }\r\n\r\n switchToggleConfirm2 = (e) => {\r\n \r\n this.props.inActiveRow2(this.state.SubCatId, this.state.switchAction2);\r\n this.props.onHideShowIsActive2(false);\r\n }\r\n handleChange(event) {\r\n let { name, value } = event.target;\r\n let errors = this.state.formError;\r\n switch (name) {\r\n case 'IsActive':\r\n value = event.target.checked;\r\n break;\r\n default:\r\n break;\r\n }\r\n this.validateForm(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n\r\n UpdatedDateTemplate(rowData) {\r\n if (rowData.UpdatedDate !== null) {\r\n return (\r\n {rowData.UpdatedDate}\r\n )\r\n }\r\n }\r\n\r\n CreatedDateTemplate(rowData) {\r\n if (rowData.UpdatedDate !== null) {\r\n\r\n return (\r\n {rowData.CreatedDate}\r\n )\r\n }\r\n }\r\n validateForm(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n switch (name) {\r\n case 'CategoryName':\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.CategoryName = \"Please enter Category name.\";\r\n } else errors.CategoryName = ''\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n\r\n validateForm2(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n switch (name) {\r\n case 'SubCategoryName':\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.SubCategoryName = \"Please enter Subcategory name.\";\r\n } else errors.SubCategoryName = ''\r\n break;\r\n case 'MCategoryId':\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.MCategoryId = \"Select Category Name.\";\r\n } else errors.MCategoryId = ''\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n\r\n //category \r\n submitForm(event) {\r\n ;\r\n event.preventDefault();\r\n let isfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key]\r\n let valid = this.validateForm(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n return isfrmvalid;\r\n });\r\n\r\n if (isfrmvalid) {\r\n ;\r\n const formData = {\r\n CategoryId: this.state.CategoryId,\r\n CategoryName: this.state.CategoryName,\r\n IsActive: this.state.IsActive,\r\n CreatedDate: this.state.CategoryId > 0 ? this.state.CreatedDate : this.getCurrentDateMMDDYYY(),\r\n UpdatedDate: this.state.CategoryId > 0 ? this.getCurrentDateMMDDYYY() : null,\r\n TotalRows: this.state.totalRecords,\r\n FilePath: this.state.sliderImage\r\n }\r\n\r\n if (formData.CategoryId > 0) {\r\n this.props.updateCategory(formData);\r\n }\r\n else {\r\n this.props.createCategory(formData);\r\n }\r\n\r\n if (!this.props.showDialog) {\r\n this.resetForm();\r\n }\r\n }\r\n }\r\n //Subcategory \r\n submitForm2(event) {\r\n ;\r\n event.preventDefault();\r\n let isfrmvalid2 = true;\r\n let checkerror = this.state.formError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key]\r\n let valid = this.validateForm2(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid2 });\r\n isfrmvalid2 = false;\r\n }\r\n return isfrmvalid2;\r\n });\r\n\r\n if (isfrmvalid2) {\r\n ;\r\n const formData = {\r\n MCategoryId: this.state.MCategoryId,\r\n SubCatId: this.state.SubCatId,\r\n SubCategoryName: this.state.SubCategoryName,\r\n IsActive: this.state.IsActive,\r\n SubCateFilePath: this.state.SubCateImage,\r\n CreatedDate: this.state.CategoryId > 0 ? this.state.CreatedDate : this.getCurrentDateMMDDYYY(),\r\n UpdatedDate: this.state.CategoryId > 0 ? this.getCurrentDateMMDDYYY() : null,\r\n TotalRows: this.state.totalRecords\r\n\r\n }\r\n\r\n if (formData.SubCatId > 0) {\r\n \r\n this.props.SubUpdateCategory(formData);\r\n this.props.onHideShow2(false);\r\n }\r\n else {\r\n this.props.createSubCategory(formData);\r\n }\r\n\r\n if (!this.props.showDialog2) {\r\n this.resetForm2();\r\n }\r\n\r\n }\r\n }\r\n // getRoleDDL(event) {\r\n // this.props.getRoleDDL();\r\n // }\r\n resetForm() {\r\n this.setState({\r\n CategoryId: 0,\r\n CategoryName: '',\r\n IsActive: true,\r\n formError: {\r\n CategoryName: ''\r\n }\r\n });\r\n\r\n\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key]) => {\r\n errors[key] = '';\r\n return errors[key];\r\n });\r\n }\r\n\r\n\r\n resetForm2() {\r\n this.setState({\r\n MCategoryId: 0,\r\n SubCategoryName: '',\r\n SubCateFilePath: '',\r\n IsActive: true,\r\n SubCateImage: '',\r\n formError: {\r\n SubCategoryName: '',\r\n SubCateFilePath: '',\r\n SubCateImage: ''\r\n\r\n }\r\n });\r\n\r\n\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key]) => {\r\n errors[key] = '';\r\n return errors[key];\r\n });\r\n }\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? 'ASC' : 'DESC';\r\n }\r\n //to lazy loadsubCate\r\n getLazyLoadingValuesSubCate(event) {\r\n this.setState({ rows2: event.rows, first2: event.first });\r\n this.tblResponse2.PageSize = event.rows;\r\n this.tblResponse2.First = event.first + 1;\r\n this.tblResponse2.IsActive = true;\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse2.SortOrder = event.sortOrder === 1 ? 'ASC' : 'DESC';\r\n }\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n\r\n }\r\n\r\n onPage2(event) {\r\n this.props.loadingData2(true);\r\n setTimeout(() => {\r\n this.getLazyLoadingValuesSubCate(event);\r\n this.props.SubCatefetchApi(this.tblResponse2);\r\n }, 250);\r\n\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField = event.multiSortMeta[0].field === \"CreatedDate\" ? \"CreatedDate\" : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? 'DESC' : 'ASC';//this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n onSort2(event) {\r\n this.props.loadingData2(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField = event.multiSortMeta[0].field === \"CreatedDate\" ? \"CreatedDate\" : event.multiSortMeta[0].field;\r\n this.tblResponse2.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse2.SortOrder = this.state.sortOrder === 1 ? 'DESC' : 'ASC';//this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.SubCatefetchApi(this.tblResponse2);\r\n }\r\n\r\n onHide() {\r\n this.props.onHideShow(false);\r\n this.resetForm();\r\n }\r\n onHide2() {\r\n this.props.onHideShow2(false);\r\n this.resetForm2();\r\n }\r\n openDialog() {\r\n this.props.onHideShow(true);\r\n this.setState({ buttonLabel: 'Submit', formHeading: 'Add Category' })\r\n }\r\n openDialog2() {\r\n this.props.onHideShow2(true);\r\n this.setState({ buttonLabel: 'Submit', formHeading2: 'Add Sub Category' })\r\n }\r\n\r\n\r\n statusBodyTemplate(rowData) {\r\n\r\n if (rowData) {\r\n return (\r\n \r\n )\r\n }\r\n }\r\n getCurrentDateMMDDYYY() {\r\n var today = new Date();\r\n var dd = String(today.getDate()).padStart(2, '0');\r\n var mm = String(today.getMonth() + 1).padStart(2, '0');\r\n var yyyy = today.getFullYear();\r\n\r\n today = mm + '/' + dd + '/' + yyyy;\r\n return today;\r\n }\r\n /// this use for category\r\n actionBodyTemplate(rowData) {\r\n const editMode = (e) => {\r\n this.props.onHideShow(true);\r\n this.setState({\r\n buttonLabel: 'Update',\r\n formHeading: 'Update Category',\r\n CategoryId: rowData.CategoryId == null ? 0 : rowData.CategoryId,\r\n SubCate: true,\r\n CategoryName: rowData.CategoryName,\r\n IsActive: rowData.IsActive,\r\n CreatedDate: rowData.CreatedDate,\r\n sliderImage: rowData.FilePath\r\n });\r\n }\r\n const switchHandleChange = (e) => {\r\n \r\n this.setState({\r\n switchAction: !rowData.IsActive,\r\n CategoryId: rowData.CategoryId\r\n });\r\n this.props.onHideShowIsActive(true);\r\n }\r\n\r\n if (rowData) {\r\n return (\r\n <>\r\n {this.state.IsEdit === true ?\r\n
\r\n \r\n
\r\n : \"\"}\r\n \r\n )\r\n }\r\n }\r\n\r\n /// this use for SUbcategory\r\n actionBodyTemplateSubCate(rowData) {\r\n const editModeSubCate = (e) => {\r\n \r\n this.props.onHideShow2(true);\r\n this.setState({\r\n buttonLabel: 'Update',\r\n formHeading: 'Update SubCategory',\r\n SubCatId: rowData.SubCatId == null ? 0 : rowData.SubCatId,\r\n SubCate: true,\r\n SubCategoryName: rowData.SubCategoryName,\r\n MCategoryId: rowData.MCategoryId.toString(),\r\n IsActive: rowData.IsActive,\r\n CreatedDate: rowData.CreatedDate,\r\n SubCateImage: rowData.SubCateFilePath\r\n });\r\n }\r\n const switchHandleChange = (e) => {\r\n this.setState({\r\n switchAction2: !rowData.IsActive,\r\n SubCatId: rowData.SubCatId\r\n });\r\n this.props.onHideShowIsActive2(true);\r\n }\r\n\r\n if (rowData) {\r\n return (\r\n <>\r\n {this.state.IsEdit2 === true ?\r\n
\r\n \r\n
\r\n : \"\"}\r\n \r\n )\r\n }\r\n }\r\n // set Category Image Path\r\n setImagePath(event) {\r\n let errors = this.state.formError;\r\n errors.sliderImage = \"\";\r\n //errors.promotionalImage=\"\";\r\n if (event.xhr) {\r\n if (event.xhr.response) {\r\n const response = JSON.parse(event.xhr.response);\r\n if (response) {\r\n if (response.ResponseCode === \"200\") {\r\n this.setState({\r\n sliderImage: response.Source,\r\n //promotionalImage: response.Source\r\n });\r\n } else if (response.ResponseCode === \"400\") {\r\n errors.sliderImage = \"Only image format is accepted.\";\r\n this.setState({\r\n sliderImage: [],\r\n //promotionalImage:[],\r\n });\r\n } else {\r\n // this.messageService.add({ severity: 'error', summary: 'Oops', detail: response.ResponseMessage });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n }\r\n\r\n // set Category Image Path\r\n setSubCateImagePath(event) {\r\n ;\r\n let errors = this.state.formError;\r\n errors.SubCateImage = \"\";\r\n //errors.promotionalImage=\"\";\r\n if (event.xhr) {\r\n if (event.xhr.response) {\r\n const response = JSON.parse(event.xhr.response);\r\n if (response) {\r\n if (response.ResponseCode === \"200\") {\r\n this.setState({\r\n SubCateImage: response.Source,\r\n //promotionalImage: response.Source\r\n });\r\n } else if (response.ResponseCode === \"400\") {\r\n errors.SubCateImage = \"Only image format is accepted.\";\r\n this.setState({\r\n SubCateImage: [],\r\n //promotionalImage:[],\r\n });\r\n } else {\r\n // this.messageService.add({ severity: 'error', summary: 'Oops', detail: response.ResponseMessage });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n }\r\n render() {\r\n const renderFooter = (name) => {\r\n return (\r\n
\r\n
\r\n\r\n );\r\n }\r\n const renderFooterSubCate = (name) => {\r\n return (\r\n
\r\n
\r\n\r\n );\r\n }\r\n const header = (\r\n
\r\n
\r\n

Category Master

\r\n
\r\n
\r\n \r\n \r\n this.searchFilter(e)} placeholder=\"Global Search\" />\r\n \r\n\r\n {this.state.IsAdd === true ?\r\n
\r\n\r\n
\r\n );\r\n\r\n const SubCateheader = (\r\n
\r\n
\r\n

SubCategory Master

\r\n
\r\n\r\n\r\n
\r\n );\r\n return (\r\n
\r\n \r\n\r\n
\r\n { this.dt = el; }}\r\n >\r\n \r\n \r\n {this.state.IsEdit === true ?\r\n \r\n : }\r\n \r\n
\r\n {/* sub Category datatable 07/05/2023 by Rameshk */}\r\n

\r\n
\r\n\r\n { this.dt = el; }}\r\n >\r\n \r\n \r\n \r\n\r\n {this.state.IsEdit2 === true ?\r\n \r\n : }\r\n \r\n
\r\n\r\n {/* Addd category Popup */}\r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n {this.state.formError.CategoryName !== '' ?\r\n
{this.state.formError.CategoryName}
: ''}\r\n
\r\n
\r\n \r\n\r\n\r\n {/* */}\r\n
\r\n
\r\n

\r\n
\r\n\r\n
\r\n \r\n
\r\n {this.state.sliderImage ? (\r\n
\r\n
\r\n \r\n
\r\n
\r\n ) : null}\r\n\r\n {this.state.formError.sliderImage !== null ? (\r\n
\r\n {this.state.formError.sliderImage}\r\n
\r\n ) : null}\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n {this.state.IsEdit === true ?\r\n
\r\n
\r\n\r\n
\r\n
\r\n

\r\n Note: Fields marked as (*) are required\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n {/* Add Sub Category Popup */}\r\n\r\n \r\n\r\n\r\n
\r\n
\r\n {/* dropdown Categorylist */}\r\n
\r\n \r\n \r\n \r\n\r\n {this.state.formError.MCategoryId !== \"\" ? (\r\n
\r\n {this.state.formError.MCategoryId}\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n {/* SubCategoryName */}\r\n
\r\n \r\n {this.state.formError.SubCategoryName !== '' ?\r\n
{this.state.formError.SubCategoryName}
: ''}\r\n
\r\n {/* FileUpload */}\r\n
\r\n \r\n\r\n\r\n {/* */}\r\n
\r\n\r\n
\r\n

\r\n
\r\n {/* blockimgprive */}\r\n
\r\n \r\n
\r\n {this.state.SubCateImage ? (\r\n
\r\n
\r\n \r\n
\r\n
\r\n ) : null}\r\n\r\n {this.state.formError.SubCateImage !== null ? (\r\n
\r\n {this.state.formError.SubCateImage}\r\n
\r\n ) : null}\r\n\r\n
\r\n\r\n
\r\n
\r\n {this.state.IsEdit === true ?\r\n
\r\n
\r\n Note: Fields marked as (*) are required\r\n
\r\n

\r\n

\r\n

\r\n

\r\n

\r\n

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

\r\n

\r\n\r\n
\r\n\r\n {/* Confirmation start --Ramesh 04/-07/2023 */}\r\n this.props.onHideShowIsActive(false)}>\r\n
\r\n \r\n Are you sure you want to {this.state.switchAction == true ? \"Active\" : \"InActive\"}?\r\n
\r\n
\r\n\r\n this.props.onHideShowIsActive2(false)}>\r\n
\r\n \r\n Are you sure you want to {this.state.switchAction2 == true ? \"Active\" : \"InActive\"}?\r\n
\r\n
\r\n\r\n\r\n
\r\n )\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n console.log(state.category.loding2);\r\n return {\r\n CategoryData: state.category.items,\r\n SubCategoryData: state.category.subItems,\r\n showDialog: state.category.showDialog,\r\n showDialog2: state.category.showDialog2,\r\n loading: state.category.loding,\r\n loading2: state.category.loding2,\r\n showIsActiveDialog: state.category.showIsActiveDialog,\r\n showIsActiveDialog2: state.category.showIsActiveDialog2,\r\n CategoryDataList: state.category.categoryddl,\r\n }\r\n}\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(categoryActions.getAll(obj))\r\n },\r\n SubCatefetchApi: (obj) => {\r\n dispatch(categoryActions.getSubAll(obj))\r\n },\r\n createCategory: category => dispatch(categoryActions.createCatagory(category)),\r\n updateCategory: category => dispatch(categoryActions.updateCategory(category)),\r\n SubUpdateCategory: category => dispatch(categoryActions.SubUpdateCategory(category)),\r\n createSubCategory: category => dispatch(categoryActions.createSubCategory(category)),\r\n inActiveRow: (category, isActive) => dispatch(categoryActions.inActiveRow(category, isActive)),\r\n inActiveRow2: (category, isActive) => dispatch(categoryActions.inActiveRow2(category, isActive)),\r\n onHideShow: isbool => dispatch(categoryActions.onHideShow(isbool)),\r\n onHideShow2: isbool => dispatch(categoryActions.onHideShow2(isbool)),\r\n onHideShowIsActive: isbool => dispatch(categoryActions.onHideShowIsActive(isbool)),\r\n onHideShowIsActive2: isbool => dispatch(categoryActions.onHideShowIsActive2(isbool)),\r\n loadingData: (isLoding) => dispatch(categoryActions.loadingData(isLoding)),\r\n loadingData2: (isLoding) => dispatch(categoryActions.loadingData2(isLoding)),\r\n getCategoryDDL: (data) => dispatch(categoryActions.getCategoryDDL(data, 1)),\r\n }\r\n}\r\nexport default connect(mapStateToProps, mapDispatchToProps)(categoryMaster)\r\n","import React, { Component } from \"react\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport { Calendar } from \"primereact/calendar\";\r\nimport {\r\n alertActions,\r\n mappingRptActions,\r\n QRCodeTrackingRptActions,\r\n} from \"../../actions\";\r\nimport { connect } from \"react-redux\";\r\nimport tableRequest from \"../../models/tableRequest.js\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { CSVLink } from \"react-csv\";\r\n\r\nclass QRCodeTrackingRpt extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n isDetail: false,\r\n journeyList: [],\r\n scanTxt: \"\",\r\n did: false,\r\n tid: false,\r\n qrs: true,\r\n sid: false,\r\n TIDproducts: [],\r\n iddata: [],\r\n expandedRows: \"\",\r\n iddata2: [],\r\n expandedRows2: \"\",\r\n activeIndex: 0,\r\n };\r\n this.items = [];\r\n this.ScanItem = this.ScanItem.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.rowExpansionTemplate = this.rowExpansionTemplate.bind(this);\r\n this.rowExpansionTemplate2 = this.rowExpansionTemplate2.bind(this);\r\n this.toggle = this.toggle.bind(this);\r\n this.toggle2 = this.toggle2.bind(this);\r\n }\r\n\r\n // call every change of form and validation part also\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n let errors = this.state.formError;\r\n\r\n // const isValid = this.validateForm(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n\r\n toggle(e) {\r\n if (e.length == 0 || this.state.expandedRows.length > 0) {\r\n this.setState({ expandedRows: \"\" });\r\n this.setState({\r\n iddata: \"\",\r\n });\r\n } else {\r\n let uid = e.data[0].Id;\r\n if (uid.includes(\"SID\")) {\r\n this.props.toggle2(uid);\r\n } else this.props.toggle(uid);\r\n // this.DispatchService.GetScanInfo(uid).then((res) => {\r\n // const resp = res.data\r\n // let qr = []\r\n // let val\r\n // (resp.ResponseData).forEach(element => {\r\n // if (val == element.Id) { }\r\n // else {\r\n // val = element.Id;\r\n // qr.push(element)\r\n // }\r\n // });\r\n // this.setState({\r\n // iddata: qr\r\n // })\r\n // })\r\n this.setState({ expandedRows: e.data });\r\n }\r\n }\r\n\r\n toggle2(e) {\r\n //console.log(this.state.expandedRows);\r\n if (e.length == 0 || this.state.expandedRows2.length > 0) {\r\n this.setState({ expandedRows2: \"\" });\r\n this.setState({\r\n iddata2: \"\",\r\n });\r\n } else {\r\n let uid = e.data[0].Id;\r\n this.props.toggle2(uid);\r\n // this.DispatchService.GetScanInfo(uid).then((res) => {\r\n // const resp = res.data\r\n // let qr = []\r\n // let val\r\n // (resp.ResponseData).forEach(element => {\r\n // if (val == element.SeqNo) { }\r\n // else {\r\n // val = element.Id;\r\n // qr.push(element)\r\n // }\r\n // });\r\n // this.setState({\r\n // iddata2: qr\r\n // })\r\n // })\r\n this.setState({ expandedRows2: e.data });\r\n }\r\n }\r\n\r\n // scan qr code\r\n ScanItem(e) {\r\n if (e.key === \"Enter\") {\r\n let qr = e.target.value;\r\n\r\n // if (qr.includes(\"iil\")||qr.includes(\"104\")|| (qr.includes(\"SID\")||qr.includes(\"TID\")))\r\n // {\r\n if (qr.includes(\"DID\")) {\r\n this.props.GetScanInfo(qr);\r\n // this.DispatchService.GetScanInfo(qr).then((data) => {\r\n // const res = data.data\r\n // if (res.ResponseCode === \"200\") {\r\n // this.setState({\r\n // qrs: false,\r\n // TIDproducts: res.ResponseData,\r\n // did: true,\r\n // tid: false,\r\n // sid: false\r\n // })\r\n // }\r\n // })\r\n } else {\r\n qr = qr.includes(\"=\") ? qr.split(\"=\")[1] : qr;\r\n this.props.GetJourney(qr);\r\n // this.DispatchService.GetJourney(qr).then((data) => {\r\n // ;\r\n // const resdata = data.data;\r\n // //if response data not null\r\n // if (resdata !== null && resdata.ResponseCode === \"200\") {\r\n\r\n // // this.items = [] = [];\r\n // this.setState({\r\n // journeyList: resdata.ResponseData,\r\n // qrs: true,\r\n // did: false,\r\n // tid: false,\r\n // sid: false\r\n // });\r\n\r\n // } else this.refs.Messchild.showWarn(resdata.ResponseMessage);\r\n // });\r\n }\r\n this.setState({\r\n scanTxt: \"\",\r\n });\r\n }\r\n }\r\n\r\n rowExpansionTemplate(data) {\r\n if (data.Id.includes(\"SID\")) {\r\n return (\r\n
\r\n

Items In {data.Id}

\r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n } else if (data.Id.includes(\"TID\")) {\r\n return (\r\n
\r\n

Items In {data.Id}

\r\n {\r\n this.toggle2(e);\r\n }}\r\n rowExpansionTemplate={this.rowExpansionTemplate2}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n }\r\n rowExpansionTemplate2(data) {\r\n return (\r\n
\r\n

Items In {data.Id}

\r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n\r\n render() {\r\n const item = [];\r\n for (const [index, value] of this.props.journeyList.entries()) {\r\n item.push(\r\n
  • \r\n
    {\" \"}\r\n {value.date ? (\r\n \r\n {value.date}\r\n \r\n ) : null}{\" \"}\r\n
  • \r\n );\r\n }\r\n const itemLength = 60 * item.length + \"px\";\r\n itemLength.toString();\r\n const mystyle = {\r\n height: itemLength,\r\n };\r\n\r\n return (\r\n <>\r\n {/* */}\r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    QR Code Tracking Report

    \r\n
    \r\n
    \r\n
    \r\n {\r\n this.handleChange(e);\r\n }}\r\n name=\"scanTxt\"\r\n value={this.state.scanTxt}\r\n type=\"search\"\r\n autoComplete=\"off\"\r\n className=\"form-control\"\r\n id=\"scan\"\r\n onKeyDown={(e) => {\r\n this.ScanItem(e);\r\n }}\r\n autoFocus\r\n />\r\n
    \r\n {this.state.qrs && (\r\n
      \r\n {item}\r\n
    \r\n )}\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n{/* \r\n
    \r\n

    QR Code Tracking Report

    \r\n
    \r\n
    \r\n {\r\n this.handleChange(e);\r\n }}\r\n name=\"scanTxt\"\r\n value={this.state.scanTxt}\r\n type=\"search\"\r\n autoComplete=\"off\"\r\n className=\"form-control ml-2\"\r\n id=\"scan\"\r\n onKeyDown={(e) => {\r\n this.ScanItem(e);\r\n }}\r\n autoFocus\r\n />\r\n
    \r\n\r\n\r\n
    \r\n {this.props.qrs && (\r\n
      \r\n {item}\r\n
    \r\n )}\r\n
    */}\r\n\r\n\r\n
    \r\n {this.props.did && (\r\n {\r\n this.toggle(e);\r\n }}\r\n rowExpansionTemplate={this.rowExpansionTemplate}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n {this.props.tid && (\r\n {\r\n this.toggle2(e);\r\n }}\r\n rowExpansionTemplate={this.rowExpansionTemplate2}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n {this.props.sid && (\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n
    \r\n \r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n //console.log(\"state.QRCodeTrackingRpt\", state.QRCodeTrackingRpt);\r\n return {\r\n TIDproducts: state.QRCodeTrackingRpt.TIDproducts,\r\n iddata2: state.QRCodeTrackingRpt.iddata2,\r\n iddata: state.QRCodeTrackingRpt.iddata,\r\n loading: state.verification.loding,\r\n journeyList:\r\n state.QRCodeTrackingRpt.journeyList == undefined\r\n ? []\r\n : state.QRCodeTrackingRpt.journeyList,\r\n did: state.QRCodeTrackingRpt.did,\r\n tid: state.QRCodeTrackingRpt.tid,\r\n sid: state.QRCodeTrackingRpt.sid,\r\n qrs: state.QRCodeTrackingRpt.qrs,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n toggle: (obj) => {\r\n dispatch(QRCodeTrackingRptActions.toggle(obj));\r\n },\r\n toggle2: (obj) => {\r\n dispatch(QRCodeTrackingRptActions.toggle2(obj));\r\n },\r\n\r\n GetScanInfo: (data) => dispatch(QRCodeTrackingRptActions.GetScanInfo(data)),\r\n GetJourney: (data) => dispatch(QRCodeTrackingRptActions.GetJourney(data)),\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(QRCodeTrackingRpt);\r\n","import React, { Component } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Button } from \"primereact/button\";\r\nimport { SliderProMsgActions } from \"../../actions\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport { FileUpload } from \"primereact/fileupload\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\n\r\nclass SliderProMsg extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.uploadMultipleFiles = this.uploadMultipleFiles.bind(this);\r\n this.uploadFiles = this.uploadFiles.bind(this);\r\n this.photoBodyTemplate = this.photoBodyTemplate.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n\r\n this.setImagePath = this.setImagePath.bind(this);\r\n\r\n this.submitForm = this.submitForm.bind(this);\r\n\r\n this.state = {\r\n SliderOptionSelectItems: [\r\n { label: \" Home Page Silder\", value: \"WebSlider\" },\r\n { label: \" App Home Page Slider \", value: \"ZAppSlider\" },\r\n { label: \"Promotional Msg\", value: \"ProMsg\" },\r\n ],\r\n SliderUpload: [\r\n { label: \"Video File\", value: \"video/*\" },\r\n { label: \"Image File\", value: \"image/*\" },\r\n { label: \"Audio File\", value: \"audio/*\" },\r\n // { label: 'Text', value: 'Txt' },\r\n ],\r\n editorContent: \"\",\r\n Promo: true,\r\n promotionalStartDate: \"\",\r\n promotionalEndDate: \"\",\r\n editorState: \"\",\r\n storetext: \"\",\r\n setEditorState: \"\",\r\n SliderOption: \"\",\r\n SliderUploadType: \"\",\r\n sliderImage: \"\",\r\n file: [null],\r\n IsAdd: true,\r\n SId: 0,\r\n ProMsg: \"\",\r\n manulText: \"\",\r\n formError: {\r\n sliderImage: \"\",\r\n promotionalStartDate: \"\",\r\n promotionalEndDate: \"\",\r\n SliderOption: \"\",\r\n SliderUploadType: \"\",\r\n },\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n //this.props.fetchApi();\r\n this.props.GetSliderListfetchApi();\r\n }\r\n\r\n // set Slider Image Path\r\n setImagePath(event) {\r\n let errors = this.state.formError;\r\n errors.sliderImage = \"\";\r\n //errors.promotionalImage=\"\";\r\n if (event.xhr) {\r\n if (event.xhr.response) {\r\n const response = JSON.parse(event.xhr.response);\r\n if (response) {\r\n if (response.ResponseCode === \"200\") {\r\n this.setState({\r\n sliderImage: response.Source,\r\n //promotionalImage: response.Source\r\n });\r\n } else if (response.ResponseCode === \"400\") {\r\n errors.sliderImage = \"Only image format is accepted.\";\r\n this.setState({\r\n sliderImage: [],\r\n //promotionalImage:[],\r\n });\r\n } else {\r\n // this.messageService.add({ severity: 'error', summary: 'Oops', detail: response.ResponseMessage });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n }\r\n\r\n photoBodyTemplate(e) {\r\n if (e.SliderImage) {\r\n return ;\r\n }\r\n }\r\n\r\n onHide() {\r\n this.resetForm();\r\n this.props.onHideShow(false);\r\n }\r\n\r\n handleChange(event) {\r\n let { name, value } = event.target;\r\n let errors = this.state.formError;\r\n switch (name) {\r\n case \"isActive\":\r\n value = event.target.checked;\r\n break;\r\n case \"SliderOption\":\r\n if (value.includes(\"ProMsg\"))\r\n this.setState({\r\n Promo: false,\r\n });\r\n else {\r\n this.setState({\r\n Promo: true,\r\n });\r\n }\r\n default:\r\n break;\r\n }\r\n this.validateForm(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n\r\n resetForm() {\r\n this.setState({\r\n Promo: true,\r\n sliderImage: \"\",\r\n SliderOption: \"\",\r\n SliderUploadType: \"\",\r\n storetext: \"\",\r\n promotionalStartDate: \"\",\r\n promotionalEndDate: \"\",\r\n isActive: true,\r\n formError: {\r\n sliderImage: \"\",\r\n },\r\n });\r\n\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key]) => {\r\n errors[key] = \"\";\r\n return errors[key];\r\n });\r\n }\r\n // Upload Slider Submit Form\r\n submitForm(event) {\r\n event.preventDefault();\r\n //console.log(this.state.sliderImage);\r\n let isfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key];\r\n let valid = this.validateForm(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n return isfrmvalid;\r\n });\r\n\r\n if (isfrmvalid) {\r\n const formData = {\r\n FilePath: this.state.sliderImage,\r\n FileType: this.state.SliderUploadType,\r\n UploadFor: this.state.SliderOption,\r\n ProMsg: this.state.ProMsg,\r\n startDate: this.state.promotionalStartDate,\r\n endDate: this.state.promotionalEndDate,\r\n };\r\n //console.log(formData);\r\n this.resetForm();\r\n this.props.uploadSliderImage(formData);\r\n }\r\n }\r\n\r\n //Slider Validate Form\r\n validateForm(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n switch (name) {\r\n // case 'promotionalMessage':\r\n // if (!value || value.length < 1) {\r\n // IsValid = false;\r\n // errors.promotionalMessage = \"Please enter your promotional message.\";\r\n // } else errors.promotionalMessage = ''\r\n // break;\r\n case \"sliderImage\":\r\n if (!value || value.toString().length < 1) {\r\n IsValid = false;\r\n errors.sliderImage = \"Please upload slider image.\";\r\n } else errors.sliderImage = \"\";\r\n break;\r\n case \"SliderOption\":\r\n if (!value || value.toString().length < 1) {\r\n IsValid = false;\r\n errors.SliderOption = \"Please Select Slider Option.\";\r\n } else errors.SliderOption = \"\";\r\n break;\r\n case \"SliderUploadType\":\r\n if (!value || value.toString().length < 1) {\r\n IsValid = false;\r\n errors.SliderUploadType = \"Please Select File Type.\";\r\n } else errors.SliderUploadType = \"\";\r\n break;\r\n case \"promotionalStartDate\":\r\n if (!this.state.Promo && (!value || value.toString().length < 1)) {\r\n IsValid = false;\r\n errors.promotionalStartDate = \"Please Select Start Date.\";\r\n } else errors.promotionalStartDate = \"\";\r\n break;\r\n case \"promotionalEndDate\":\r\n if (!this.state.Promo && (!value || value.toString().length < 1)) {\r\n IsValid = false;\r\n errors.promotionalEndDate = \"Please Select End Date.\";\r\n } else errors.promotionalEndDate = \"\";\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n\r\n uploadMultipleFiles(e) {\r\n this.fileObj.push(e.target.files);\r\n for (let i = 0; i < this.fileObj[0].length; i++) {\r\n this.fileArray.push(URL.createObjectURL(this.fileObj[0][i]));\r\n }\r\n this.setState({ file: this.fileArray });\r\n }\r\n\r\n uploadFiles(e) {\r\n e.preventDefault();\r\n //console.log(this.state.file);\r\n }\r\n\r\n render() {\r\n return (\r\n <>\r\n
    \r\n
    \r\n
    \r\n
    \r\n {\r\n this.handleChange(e);\r\n }}\r\n options={this.state.SliderOptionSelectItems}\r\n optionValue=\"value\"\r\n optionLabel=\"label\"\r\n className=\"form-control custom-select\"\r\n placeholder={\"Select File Upload For \"}\r\n name=\"SliderOption\"\r\n />\r\n {this.state.formError.SliderOption !== null ? (\r\n
    {this.state.formError.SliderOption}
    \r\n ) : null}\r\n
    \r\n
    \r\n {\r\n this.handleChange(e);\r\n }}\r\n options={this.state.SliderUpload}\r\n optionValue=\"value\"\r\n optionLabel=\"label\"\r\n className=\"form-control custom-select\"\r\n placeholder={\"Select File Type \"}\r\n name=\"SliderUploadType\"\r\n />\r\n {this.state.formError.SliderUploadType !== null ? (\r\n
    \r\n {this.state.formError.SliderUploadType}\r\n
    \r\n ) : null}\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n Upload\r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n {this.state.sliderImage ? (\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n ) : null}\r\n\r\n {this.state.formError.sliderImage !== null ? (\r\n
    \r\n {this.state.formError.sliderImage}\r\n
    \r\n ) : null}\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n

    \r\n
    \r\n \r\n \r\n \r\n File Preview\r\n Used For\r\n File Type\r\n End Date\r\n Action\r\n \r\n \r\n \r\n {this.props.data.map((item, i) => (\r\n \r\n \r\n {item.FileType.includes(\"image\") ? (\r\n \r\n ) : null}\r\n {item.FileType.includes(\"video\") ? (\r\n \r\n ) : null}\r\n \r\n \r\n {\" \"}\r\n
    {item.UploadFor}
    \r\n \r\n \r\n
    {item.FileType}
    \r\n \r\n \r\n {item.endDate ? (\r\n
    {item.endDate}
    \r\n ) : (\r\n
    Not Applicable
    \r\n )}\r\n \r\n \r\n

    \r\n {\r\n this.props.DeleteSliderImage(item.SId);\r\n }}\r\n className=\" btn btn-outline-danger mx-1\"\r\n >\r\n \r\n \r\n

    \r\n \r\n \r\n ))}\r\n \r\n \r\n
    \r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n data:\r\n state.SliderProMsg.items == (null || undefined)\r\n ? []\r\n : state.SliderProMsg.items,\r\n //showDialog: state.role.showDialog,\r\n //UploadData: state.upload.items\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n onHideShow: (isbool) => {\r\n dispatch(SliderProMsgActions.onHideShow(isbool));\r\n },\r\n uploadSliderImage: (image) => {\r\n dispatch(SliderProMsgActions.UploadSliderImage(image));\r\n },\r\n fetchApi: () => {\r\n dispatch(SliderProMsgActions.GetSliderImage());\r\n },\r\n GetSliderListfetchApi: () => {\r\n dispatch(SliderProMsgActions.GetSliderList());\r\n },\r\n DeleteSliderImage: (id) => {\r\n dispatch(SliderProMsgActions.DeleteSliderImage(id));\r\n },\r\n };\r\n};\r\nexport default connect(mapStateToProps, mapDispatchToProps)(SliderProMsg);\r\n","import React, { Component } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { OrderBookingActions } from \"../../actions\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { Button } from \"@material-ui/core\";\r\nimport tableRequest from \"../../models/tableRequest\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport ExcelFile from \"react-export-excel/dist/ExcelPlugin/components/ExcelFile\";\r\nimport ExcelSheet from \"react-export-excel/dist/ExcelPlugin/elements/ExcelSheet\";\r\nimport ExcelColumn from \"react-export-excel/dist/ExcelPlugin/elements/ExcelColumn\";\r\nclass SODetails extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.tblResponse.type = 1;\r\n this.tblResponse.SortColumn = \"InsertDate\";\r\n this.ref = React.createRef();\r\n this.handleChange = this.handleChange.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.state = {\r\n file: [null],\r\n first: 0,\r\n SelectedOption: 1,\r\n Options: [\r\n { label: \"All\", value: 1 },\r\n { label: \"Today\", value: 2 },\r\n { label: \"Last 7 Days\", value: 3 },\r\n { label: \"Last 30 Days\", value: 4 },\r\n ],\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n fileName: \"Choose Excel file...\",\r\n formError: {\r\n file: \"\",\r\n },\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n const userDetails = sessionStorage.getItem(\"user\");\r\n const userdetailsObject = JSON.parse(userDetails);\r\n this.setState({\r\n UserId: userdetailsObject.UserId,\r\n });\r\n const userPages = sessionStorage.getItem(\"assignedPermissionsForUser\");\r\n if (userPages) {\r\n const assignedPermissions = JSON.parse(userPages);\r\n const Curenturl = window.location.pathname;\r\n const nNumber = Curenturl.lastIndexOf(\"/\");\r\n const pageName = Curenturl.substring(nNumber + 1);\r\n\r\n const obj = assignedPermissions.assigned.filter((x) => {\r\n return x.ActionName === pageName;\r\n });\r\n\r\n if (obj !== null && obj.length > 0) {\r\n if (!obj[0].IsEdit) {\r\n this.setState({\r\n IsEdit: false,\r\n });\r\n }\r\n if (!obj[0].IsAdd) {\r\n this.setState({\r\n IsAdd: false,\r\n });\r\n } else {\r\n this.setState({\r\n IsAdd: true,\r\n });\r\n }\r\n }\r\n }\r\n\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.logData) {\r\n if (prevProps.logData !== this.props.logData) {\r\n // this.props.myProp has a different value\r\n if (this.props.logData) {\r\n var e = this.props.logData;\r\n this.setState({\r\n totalRecords: e[0].TotalRows,\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords !== 0)\r\n this.setState({\r\n totalRecords: 0,\r\n first: 0,\r\n });\r\n }\r\n }\r\n\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField =\r\n event.multiSortMeta[0].field === \"InsertDate\"\r\n ? \"InsertDate\"\r\n : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\";\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n handleChange(event) {\r\n ;\r\n let { name, value } = event.target;\r\n let errors = this.state.formError;\r\n switch (name) {\r\n case \"file\":\r\n this.setState({\r\n file: event.target.files[0],\r\n fileName: event.target.files[0].name,\r\n });\r\n default:\r\n break;\r\n }\r\n this.validateForm(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n\r\n resetForm() {\r\n this.setState({\r\n file: [null],\r\n fileName: \"Choose Excel file...\",\r\n formError: {\r\n file: \"\",\r\n },\r\n });\r\n\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key]) => {\r\n errors[key] = \"\";\r\n return errors[key];\r\n });\r\n }\r\n // Upload Submit Form\r\n submitForm(event) {\r\n event.preventDefault();\r\n let isfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key];\r\n let valid = this.validateForm(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n return isfrmvalid;\r\n });\r\n\r\n if (isfrmvalid) {\r\n var data = new FormData();\r\n data.append(\r\n \"Inputfile\",\r\n document.querySelector('input[type=\"file\"]').files[0]\r\n );\r\n data.append(\"CreatedBy\", this.state.UserId);\r\n this.props.UploadSODetails(data, this.tblResponse);\r\n setTimeout(() => {\r\n this.resetForm();\r\n }, 1000);\r\n }\r\n }\r\n\r\n DropChange(event) {\r\n this.handleChange(event);\r\n this.tblResponse.type = event.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //Slider Validate Form\r\n validateForm(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n switch (name) {\r\n case \"file\":\r\n if (!value || value.toString().length < 1) {\r\n IsValid = false;\r\n errors.file = \"Please Select Excel file.\";\r\n } else errors.file = \"\";\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n\r\n render() {\r\n const header = (\r\n
    \r\n
    \r\n

    Insert Log

    \r\n
    \r\n
    \r\n {\r\n this.DropChange(e);\r\n }}\r\n options={this.state.Options}\r\n optionValue=\"value\"\r\n optionLabel=\"label\"\r\n className=\"form-control\"\r\n placeholder=\"Select\"\r\n name=\"SelectedOption\"\r\n />\r\n
    \r\n
    \r\n \r\n \r\n this.searchFilter(e)}\r\n placeholder=\"Global Search\"\r\n />\r\n \r\n
    \r\n
    \r\n );\r\n return (\r\n <>\r\n
    \r\n

    \r\n Insert Sales Order Details (Using Excel)\r\n

    \r\n \r\n
    \r\n \r\n {this.state.formError.file !== \"\" ? (\r\n
    {this.state.formError.file}
    \r\n ) : (\r\n \"\"\r\n )}\r\n \r\n Download Sample Excel\r\n \r\n }\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Upload\r\n \r\n
    \r\n
    \r\n
    \r\n {\r\n this.dt = el;\r\n }}\r\n >\r\n \r\n \r\n \r\n {this.state.IsEdit === true ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n
    \r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n logData:\r\n state.OrderBooking.logData == (null || undefined)\r\n ? null\r\n : state.OrderBooking.logData,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n onHideShow: (isbool) => {\r\n dispatch(OrderBookingActions.onHideShow(isbool));\r\n },\r\n UploadSODetails: (obj, tblResponse) => {\r\n dispatch(OrderBookingActions.UploadSODetails(obj, tblResponse));\r\n },\r\n fetchApi: (obj) => {\r\n dispatch(OrderBookingActions.GetSOInsertLog(obj));\r\n },\r\n loadingData: (isLoding) =>\r\n dispatch(OrderBookingActions.loadingData(isLoding)),\r\n };\r\n};\r\nexport default connect(mapStateToProps, mapDispatchToProps)(SODetails);\r\n","import React, { Component } from \"react\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport { Calendar } from \"primereact/calendar\";\r\nimport { connect } from \"react-redux\";\r\nimport tableRequest from \"../../models/tableRequest.js\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport CsvDownloader from \"react-csv-downloader\";\r\nimport { CSVLink } from \"react-csv\";\r\nimport { alertActions, WarrantyRegistrationReportActions } from \"../../actions\";\r\n\r\nclass WarrantyRegistrationReport extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.FilterData = this.FilterData.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.state = {\r\n loading: false,\r\n FromDate: new Date(),\r\n ToDate: new Date(),\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n visible: false,\r\n sortOrder: \"\",\r\n datalist: [],\r\n };\r\n }\r\n componentDidMount() {\r\n var date = new Date();\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() - 7);\r\n this.tblResponse.FromDate = date.toLocaleDateString();\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.setState({\r\n FromDate: date,\r\n ToDate: new Date(),\r\n });\r\n this.props.fetchApi(this.tblResponse);\r\n this.props.exportingData(this.tblResponse);\r\n }\r\n\r\n onChange = (date) => this.setState({ FromDate: \"\", ToDate: \"\" });\r\n\r\n // GetVerification()\r\n // {\r\n // let ToDt = new Date();\r\n // let FrmDt = new Date();\r\n // FrmDt.setDate(ToDt.getDate() - 7);\r\n\r\n // const myFmDt = this.getCurrentDateYYYYMMDD(FrmDt);\r\n // const myToDt = this.getCurrentDateYYYYMMDD(ToDt);\r\n\r\n // this.tblResponse.FromDate =this.state.FromDate;\r\n // this.tblResponse.ToDate = this.state.ToDate;\r\n // this.props.fetchApi(this.tblResponse);\r\n // }\r\n FilterData() {\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n getCurrentDateYYYYMMDD(dt) {\r\n var dd = String(dt.getDate()).padStart(2, \"0\");\r\n var mm = String(dt.getMonth() + 1).padStart(2, \"0\");\r\n var yyyy = dt.getFullYear();\r\n\r\n dt = yyyy + \"/\" + mm + \"/\" + dd;\r\n return dt;\r\n }\r\n\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n switch (name) {\r\n case \"FromDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n // this.refs.Messchild.showError(\"Please select from date.\");\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select from date.\",\r\n life: 3000,\r\n });\r\n\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (value instanceof Date && this.state.ToDate instanceof Date) {\r\n const startDate = value;\r\n const endDate = this.state.ToDate;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"From date must be less than to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"From date must be less than to date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n case \"ToDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please select to date.\");\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (\r\n value instanceof Date &&\r\n this.state.FromDate instanceof Date\r\n ) {\r\n const startDate = this.state.FromDate;\r\n const endDate = value;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"To date must be greater than from date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"To date must be greater than from date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n this.setState({ [name]: value });\r\n }\r\n\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n handleProductName(rowData) {\r\n if (rowData.ProductName == null) {\r\n let list;\r\n list = rowData.QrData;\r\n return list;\r\n } else {\r\n return rowData.ProductName;\r\n }\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField =\r\n event.multiSortMeta[0].field === \"CreatedDate\"\r\n ? \"CreatedDt\"\r\n : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\"; //this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.warrantyList) {\r\n if (prevProps.warrantyList !== this.props.warrantyList) {\r\n // this.props.myProp has a different value\r\n if (this.props.warrantyList) {\r\n var e = this.props.warrantyList;\r\n this.setState({\r\n totalRecords: e[0].TotalRows,\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords !== 0)\r\n this.setState({\r\n totalRecords: 0,\r\n first: 0,\r\n });\r\n }\r\n }\r\n render() {\r\n return (\r\n
    \r\n {/* */}\r\n (this.toast = el)} />\r\n
    \r\n
    \r\n

    Warranty Registration Report

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n Submit\r\n \r\n  \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n {\r\n this.dt = el;\r\n }}\r\n>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n
    \r\n
    \r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n warrantyList: state.warranty.items,\r\n List:\r\n state.warranty.exportitems == undefined\r\n ? []\r\n : state.warranty.exportitems,\r\n loading: state.warranty.loding,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(WarrantyRegistrationReportActions.getAll(obj));\r\n },\r\n loadingData: (isLoding) =>\r\n dispatch(WarrantyRegistrationReportActions.loadingData(isLoding)),\r\n exportingData: (obj) => dispatch(WarrantyRegistrationReportActions.exportData(obj)),\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(WarrantyRegistrationReport);\r\n","import React, { Component } from \"react\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport { Calendar } from \"primereact/calendar\";\r\nimport { connect } from \"react-redux\";\r\nimport tableRequest from \"../../models/tableRequest.js\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport CsvDownloader from \"react-csv-downloader\";\r\nimport { CSVLink } from \"react-csv\";\r\nimport { alertActions, WarrantyRejectRegistrationReportActions } from \"../../actions\";\r\n\r\nclass WarrantyRejectRegistrationReport extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.FilterData = this.FilterData.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.state = {\r\n loading: false,\r\n FromDate: new Date(),\r\n ToDate: new Date(),\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n visible: false,\r\n sortOrder: \"\",\r\n datalist: [],\r\n };\r\n }\r\n componentDidMount() {\r\n var date = new Date();\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() - 7);\r\n this.tblResponse.FromDate = date.toLocaleDateString();\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.setState({\r\n FromDate: date,\r\n ToDate: new Date(),\r\n });\r\n this.props.fetchApi(this.tblResponse);\r\n this.props.exportingData(this.tblResponse);\r\n }\r\n\r\n onChange = (date) => this.setState({ FromDate: \"\", ToDate: \"\" });\r\n\r\n // GetVerification()\r\n // {\r\n // let ToDt = new Date();\r\n // let FrmDt = new Date();\r\n // FrmDt.setDate(ToDt.getDate() - 7);\r\n\r\n // const myFmDt = this.getCurrentDateYYYYMMDD(FrmDt);\r\n // const myToDt = this.getCurrentDateYYYYMMDD(ToDt);\r\n\r\n // this.tblResponse.FromDate =this.state.FromDate;\r\n // this.tblResponse.ToDate = this.state.ToDate;\r\n // this.props.fetchApi(this.tblResponse);\r\n // }\r\n FilterData() {\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n getCurrentDateYYYYMMDD(dt) {\r\n var dd = String(dt.getDate()).padStart(2, \"0\");\r\n var mm = String(dt.getMonth() + 1).padStart(2, \"0\");\r\n var yyyy = dt.getFullYear();\r\n\r\n dt = yyyy + \"/\" + mm + \"/\" + dd;\r\n return dt;\r\n }\r\n\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n switch (name) {\r\n case \"FromDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n // this.refs.Messchild.showError(\"Please select from date.\");\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select from date.\",\r\n life: 3000,\r\n });\r\n\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (value instanceof Date && this.state.ToDate instanceof Date) {\r\n const startDate = value;\r\n const endDate = this.state.ToDate;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"From date must be less than to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"From date must be less than to date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n case \"ToDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please select to date.\");\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (\r\n value instanceof Date &&\r\n this.state.FromDate instanceof Date\r\n ) {\r\n const startDate = this.state.FromDate;\r\n const endDate = value;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"To date must be greater than from date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"To date must be greater than from date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n this.setState({ [name]: value });\r\n }\r\n\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n handleProductName(rowData) {\r\n if (rowData.ProductName == null) {\r\n let list;\r\n list = rowData.QrData;\r\n return list;\r\n } else {\r\n return rowData.ProductName;\r\n }\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField =\r\n event.multiSortMeta[0].field === \"CreatedDate\"\r\n ? \"CreatedDt\"\r\n : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\"; //this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.warrantyList) {\r\n if (prevProps.warrantyList !== this.props.warrantyList) {\r\n // this.props.myProp has a different value\r\n if (this.props.warrantyList) {\r\n var e = this.props.warrantyList;\r\n this.setState({\r\n totalRecords: e[0].TotalRows,\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords !== 0)\r\n this.setState({\r\n totalRecords: 0,\r\n first: 0,\r\n });\r\n }\r\n }\r\n render() {\r\n return (\r\n
    \r\n {/* */}\r\n (this.toast = el)} />\r\n
    \r\n
    \r\n

    Warranty Rejected Report

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n Submit\r\n \r\n  \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n {\r\n this.dt = el;\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n
    \r\n
    \r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n warrantyList: state.warranty.items,\r\n List:\r\n state.warranty.exportitems == undefined\r\n ? []\r\n : state.warranty.exportitems,\r\n loading: state.warranty.loding,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(WarrantyRejectRegistrationReportActions.getAll(obj));\r\n },\r\n loadingData: (isLoding) =>\r\n dispatch(WarrantyRejectRegistrationReportActions.loadingData(isLoding)),\r\n exportingData: (obj) => dispatch(WarrantyRejectRegistrationReportActions.exportData(obj)),\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(WarrantyRejectRegistrationReport);\r\n","import React, { Component } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { ToastContainer } from \"react-toastify\";\r\nimport { WarrantyRegistrationReportActions } from \"../../actions\";\r\nimport tableRequest from \"../../models/tableRequest\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { Button } from \"primereact/button\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport { Dialog } from \"primereact/dialog\";\r\n\r\nclass WarrantyApproval extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.onPage = this.onPage.bind(this);\r\n this.photoBodyTemplate = this.photoBodyTemplate.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.onHide = this.onHide.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.actionBodyTemplate = this.actionBodyTemplate.bind(this);\r\n this.openDialog = this.openDialog.bind(this);\r\n this.state = {\r\n reason: \"\",\r\n rvisible: false, Id: 0,\r\n IsAdd: true,\r\n IsEdit: true,\r\n totalRecords: 0,\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n sortOrder: \"\",\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n const userPages = sessionStorage.getItem(\"assignedPermissionsForUser\");\r\n if (userPages) {\r\n const assignedPermissions = JSON.parse(userPages);\r\n const Curenturl = window.location.pathname;\r\n const nNumber = Curenturl.lastIndexOf(\"/\");\r\n const pageName = Curenturl.substring(nNumber + 1);\r\n const obj = assignedPermissions.assigned.filter((x) => {\r\n return x.ActionName === pageName;\r\n });\r\n\r\n if (obj !== null && obj.length > 0) {\r\n if (!obj[0].IsEdit) {\r\n this.setState({\r\n IsEdit: false,\r\n });\r\n }\r\n if (!obj[0].IsAdd) {\r\n this.setState({\r\n IsAdd: false,\r\n });\r\n } else {\r\n this.setState({\r\n IsAdd: true,\r\n });\r\n }\r\n }\r\n }\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.WarrantyData) {\r\n if (prevProps.WarrantyData !== this.props.WarrantyData) {\r\n // this.props.myProp has a different value\r\n if (this.props.WarrantyData) {\r\n var e = this.props.WarrantyData;\r\n this.setState({\r\n totalRecords: e[0].TotalRows,\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords !== 0)\r\n this.setState({\r\n totalRecords: 0,\r\n first: 0,\r\n });\r\n }\r\n }\r\n\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n this.tblResponse.sortBy = event.sortBy;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField =\r\n event.multiSortMeta[0].field === \"CreatedDate\"\r\n ? \"CreatedDate\"\r\n : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\"; //this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n photoBodyTemplate(e) {\r\n if (e.Invoice) {\r\n return ;\r\n }\r\n }\r\n\r\n photoBodyTemplate2(e) {\r\n if (e.PhysicalCard) {\r\n return ;\r\n }\r\n }\r\n\r\n onHide() {\r\n this.props.onHideShow(false);\r\n }\r\n\r\n openDialog() {\r\n this.props.onHideShow(true);\r\n this.setState({ buttonLabel: \"Submit\", formHeading: \"Add Warranty\" });\r\n }\r\n\r\n actionBodyTemplate(rowData) {\r\n const approve = (e) => {\r\n const confirmed = window.confirm(\"Are you sure you want to approve this warranty?\");\r\n if (confirmed) {\r\n this.props.approveWarranty(rowData.WarrantyId);\r\n this.props.fetchApi(this.tblResponse);\r\n setTimeout(() => {\r\n this.props.fetchApi(this.tblResponse);\r\n }, 1000);\r\n }\r\n };\r\n\r\n const reject = (e) => {\r\n console.log(\"Reject button clicked\");\r\n this.setState({ rvisible: true, Id: rowData.WarrantyId })\r\n };\r\n\r\n const viewDetails = (e) => {\r\n // var rowData = e;\r\n this.tblResponse.WarrantyId =\r\n this.state.WaarrantyId > 1 ? this.state.WaarrantyId : 0;\r\n //this.props.readRow(rowData.OrderBookingNo, false, this.tblResponse);\r\n this.setState({\r\n formHeading: \"Warranty Approval\",\r\n CustomerName: rowData.CustomerName,\r\n Email: rowData.Email,\r\n ProductName: rowData.ProductName,\r\n MobNo: rowData.MobNo,\r\n CityName: rowData.CityName,\r\n StateName: rowData.StateName,\r\n Invoice: rowData.Invoice,\r\n RegisterDate: rowData.RegisterDate,\r\n Invoice: rowData.Invoice,\r\n InvoiceDate: rowData.InvoiceDate,\r\n WaarrantyId: rowData.WaarrantyId,\r\n ExpireDate: rowData.ExpireDate,\r\n PhysicalCard: rowData.PhysicalCard,\r\n // Ship_Pincode: rowData.Ship_Pincode,\r\n // Ship_Address: rowData.Ship_Address,\r\n });\r\n this.props.onHideShow(true);\r\n };\r\n\r\n if (rowData) {\r\n return (\r\n <>\r\n {this.state.IsEdit === true ? (\r\n
    \r\n \r\n \r\n \r\n
    \r\n ) : (\r\n \"\"\r\n )}\r\n \r\n );\r\n }\r\n }\r\n\r\n submitForm(event) {\r\n const { reason } = this.state;\r\n const { Id } = this.state;\r\n this.props.rejectWarranty(Id, reason);\r\n this.props.fetchApi(this.tblResponse);\r\n setTimeout(() => {\r\n this.props.fetchApi(this.tblResponse);\r\n }, 1000);\r\n }\r\n\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n this.setState({\r\n\r\n [name]: value\r\n });\r\n }\r\n render() {\r\n const header = (\r\n
    \r\n
    \r\n

    Warranty Approval

    \r\n
    \r\n
    \r\n \r\n \r\n this.searchFilter(e)}\r\n placeholder=\"Global Search\"\r\n />\r\n \r\n
    \r\n
    \r\n );\r\n\r\n return (\r\n
    \r\n \r\n
    \r\n {\r\n this.dt = el;\r\n }}\r\n >\r\n \r\n {/* */}\r\n {/* */}\r\n \r\n {/* */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {this.state.IsEdit === true ? (\r\n { event.stopPropagation() }}\r\n header=\"Action\"\r\n body={this.actionBodyTemplate}\r\n style={{ width: '14%' }}\r\n >\r\n ) : (\r\n \"\"\r\n )}\r\n \r\n
    \r\n\r\n {/* ---------- */}\r\n {\r\n this.setState({ rvisible: false });\r\n }}\r\n >\r\n
    \r\n
    \r\n
    Define in min 5 char
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n {\r\n\r\n this.setState({ rvisible: false });\r\n this.submitForm(e);\r\n }}\r\n className=\"btn btn-primary\"\r\n >\r\n Submit\r\n \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n WarrantyData: state.warranty.items,\r\n showDialog: state.role.showDialog,\r\n showIsActiveDialog: state.warranty.showIsActiveDialog,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(WarrantyRegistrationReportActions.getAllForApproval(obj));\r\n },\r\n inActiveRow: (WarrantyId, isActive) =>\r\n dispatch(WarrantyRegistrationReportActions.inActiveRow(WarrantyId, isActive)),\r\n approveWarranty: (WarrantyId, isActive) =>\r\n dispatch(WarrantyRegistrationReportActions.approveWarranty(WarrantyId, isActive)),\r\n rejectWarranty: (WarrantyId, reason, isActive) =>\r\n dispatch(WarrantyRegistrationReportActions.rejectWarranty(WarrantyId, reason, isActive)),\r\n // getAllForApproval: (WarrantyId, isActive) =>\r\n // dispatch(WarrantyRegistrationReportActions.getAllForApproval(WarrantyId, isActive)),\r\n onHideShow: (isbool) =>\r\n dispatch(WarrantyRegistrationReportActions.onHideShow(isbool)),\r\n onHideShowIsActive: (isbool) =>\r\n dispatch(WarrantyRegistrationReportActions.onHideShowIsActive(isbool)),\r\n loadingData: (isLoding) =>\r\n dispatch(WarrantyRegistrationReportActions.loadingData(isLoding)),\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(WarrantyApproval);\r\n","import React, { Component } from 'react'\r\nimport { DataTable } from 'primereact/datatable';\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport { Column } from 'primereact/column';\r\nimport { Button } from 'primereact/button';\r\nimport { InputText } from 'primereact/inputtext';\r\nimport { FileUpload } from 'primereact/fileupload';\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport TextField from '@material-ui/core/TextField';\r\nimport FormControl from '@material-ui/core/FormControl';\r\nimport Select from '@material-ui/core/Select';\r\nimport Checkbox from '@material-ui/core/Checkbox';\r\nimport { connect } from 'react-redux';\r\nimport InputLabel from '@material-ui/core/InputLabel';\r\nimport MuiAlert from '@material-ui/lab/Alert';\r\nimport { Dialog } from 'primereact/dialog';\r\nimport { ToastContainer, toast } from 'react-toastify';\r\nimport { warehouseMasterActions, dealerMasterActions } from '../../actions';\r\nimport { TabView, TabPanel } from 'primereact/tabview';\r\nimport Switch from '@material-ui/core/Switch';\r\nimport Moment from 'react-moment';\r\nimport tableRequest from '../../models/tableRequest.js';\r\n\r\n\r\n\r\nclass warehouseMaster extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.photoBodyTemplate = this.photoBodyTemplate.bind(this);\r\n this.statusBodyTemplate = this.statusBodyTemplate.bind(this);\r\n this.actionBodyTemplate = this.actionBodyTemplate.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.Fdone = this.Fdone.bind(this);\r\n this.onHide = this.onHide.bind(this);\r\n this.getStateList = this.getStateList.bind(this);\r\n\r\n this.getCityList = this.getCityList.bind(this);\r\n this.openDialog = this.openDialog.bind(this);\r\n this.resetForm = this.resetForm.bind(this);\r\n this.setImagePath = this.setImagePath.bind(this);\r\n this.setAudioPath = this.setAudioPath.bind(this);\r\n this.CreatedDtTemplate = this.CreatedDtTemplate.bind(this);\r\n this.UpdatedDtTemplate = this.UpdatedDtTemplate.bind(this);\r\n this.switchToggleConfirm = this.switchToggleConfirm.bind(this);\r\n this.openDialog = this.openDialog.bind(this);\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.state = {\r\n IsEdit: true,\r\n IsAdd: true,\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n sortOrder: '',\r\n confirm: false,\r\n buttonLabel: 'Next',\r\n switchAction: false,\r\n displayConfirmation: false,\r\n formHeading: 'Add Warehouse',\r\n CountryData: [{ value: 1, label: \"India\" }],\r\n createDate: null,\r\n updatedDate: null,\r\n WareHouseId: 0,\r\n WareHouseName: '',\r\n WareHouseDisNam: '',\r\n Country: \"\",\r\n State: \"\",\r\n City: \"\",\r\n CityShip: [],\r\n CityBill: [],\r\n // prefix: '',\r\n WareHouseEmailId: '',\r\n WareHouseContactNo1: '',\r\n WareHouseCode: '',\r\n WHAddress1: '',\r\n WareHouseLogo: '',\r\n activeIndex: 0,\r\n links: [],\r\n name: [],\r\n WHAddress2: '',\r\n FakeAudio: '',\r\n isActive: true,\r\n formError: {\r\n WareHouseName: '',\r\n WareHouseDisNam: '',\r\n Country: \"\",\r\n State: \"\",\r\n City: \"\",\r\n\r\n // prefix: '',\r\n WareHouseEmailId: '',\r\n WareHouseContactNo1: '',\r\n WareHouseCode: '',\r\n WHAddress1: '',\r\n WareHouseLogo: '',\r\n WHAddress2: '',\r\n FakeAudio: ''\r\n }\r\n };\r\n }\r\n componentDidMount() {\r\n const userPages = sessionStorage.getItem('assignedPermissionsForUser');\r\n if (userPages) {\r\n try {\r\n const assignedPermissions = JSON.parse(userPages);\r\n const Curenturl = window.location.pathname;\r\n const nNumber = Curenturl.lastIndexOf('/');\r\n const pageName = Curenturl.substring(nNumber + 1);\r\n\r\n const obj = assignedPermissions.assigned.find(x => x.ActionName === pageName);\r\n\r\n if (obj) {\r\n this.setState({\r\n IsEdit: obj.IsEdit,\r\n IsAdd: obj.IsAdd\r\n });\r\n }\r\n } catch (error) {\r\n console.error(\"Error parsing user pages:\", error);\r\n // Handle the error accordingly\r\n }\r\n }\r\n\r\n // You may want to reconsider the timing mechanism here\r\n setTimeout(() => {\r\n this.props.fetchApi(this.tblResponse);\r\n }, 1000);\r\n\r\n // Commented out jQuery code, consider if it's necessary\r\n // $('.p-column-title').on('click', function () {\r\n // $(this).next().removeClass('pi-sort').toggleClass('pi-sort-up').addClass('pi-sort-down');\r\n // });\r\n }\r\n\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.Companys) {\r\n if (prevProps.Companys !== this.props.Companys) {\r\n // this.props.myProp has a different value\r\n if (this.props.Companys) {\r\n var e = this.props.Companys;\r\n this.setState({\r\n totalRecords: e[0].TotalRows\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords !== 0)\r\n this.setState({\r\n totalRecords: 0,\r\n first: 0\r\n });\r\n }\r\n }\r\n\r\n switchToggleConfirm = (e) => {\r\n this.props.inActiveRow(this.state.WareHouseId, this.state.switchAction);\r\n }\r\n\r\n getDropValue() {\r\n let productName = '';\r\n this.props.ProductTypeData.filter(x => {\r\n if (x.ProductTypeId === this.state.ProductTypeId) {\r\n productName = x.ProductTypeName;\r\n }\r\n });\r\n\r\n return productName;\r\n }\r\n getCurrentDateMMDDYYY() {\r\n var today = new Date();\r\n var dd = String(today.getDate()).padStart(2, '0');\r\n var mm = String(today.getMonth() + 1).padStart(2, '0');\r\n var yyyy = today.getFullYear();\r\n\r\n today = mm + '/' + dd + '/' + yyyy;\r\n return today;\r\n }\r\n\r\n UpdatedDtTemplate(rowData) {\r\n if (rowData.UpdatedDt !== null) {\r\n return (\r\n {rowData.UpdatedDt}\r\n )\r\n }\r\n else {\r\n }\r\n }\r\n\r\n CreatedDtTemplate(rowData) {\r\n return (\r\n {rowData.CreatedDt}\r\n )\r\n }\r\n\r\n handleChange(event) {\r\n let { name, value } = event.target;\r\n let errors = this.state.formError;\r\n switch (name) {\r\n case 'isActive':\r\n value = event.target.checked;\r\n break;\r\n default:\r\n break;\r\n }\r\n this.validateForm(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n getStateList(e) {\r\n this.setState({ Country: e.target.value });\r\n this.props.getStateDDL(this.state.Country);\r\n }\r\n\r\n getCityList(event, type, flag) {\r\n if (flag == \"i\") {\r\n if (type == \"B\") {\r\n this.setState({ State: event.target.value });\r\n this.props.getBCityDDL(event.target.value);\r\n }\r\n } else {\r\n if (type == \"B\") {\r\n this.setState({ State: event });\r\n this.props.getBCityDDL(event);\r\n }\r\n }\r\n }\r\n validateForm(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n switch (name) {\r\n case 'WareHouseName':\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.WareHouseName = \"Please enter your warehouse Name.\";\r\n } else errors.WareHouseName = ''\r\n case 'WareHouseDisNam':\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.WareHouseDisNam = \"Please enter warehouse Display Name.\";\r\n } else errors.WareHouseDisNam = ''\r\n break;\r\n case \"Country\":\r\n if (value == undefined || value == \"\") {\r\n IsValid = false;\r\n errors.Country = \"Please select Country\";\r\n } else errors.Country = \"\";\r\n break;\r\n case \"City\":\r\n if (value == undefined || value == \"\") {\r\n IsValid = false;\r\n errors.Bill_City = \"Please select city\";\r\n } else errors.Bill_City = \"\";\r\n break;\r\n case \"State\":\r\n if (value == undefined || value == \"\") {\r\n IsValid = false;\r\n errors.Bill_State = \"Please select state\";\r\n } else {\r\n errors.Bill_State = \"\";\r\n }\r\n break;\r\n // case 'prefix':\r\n // if (value.length < 1) {\r\n // IsValid = false;\r\n // errors.prefix = \"Please enter prefix\";\r\n // }\r\n // else if (value.length >= 1) {\r\n // if (!value.match(/^[A-Z].{1}$/)) {\r\n // IsValid = false;\r\n // errors.prefix = \"Please enter valid prefix.\";\r\n // } else errors.prefix = ''\r\n\r\n // } else errors.prefix = ''\r\n // break;\r\n\r\n case 'WareHouseEmailId':\r\n if (value < 1) {\r\n IsValid = false;\r\n errors.WareHouseEmailId = \"Please enter WareHouseEmailId.\";\r\n }\r\n else if (value.length >= 1) {\r\n /* eslint-disable */\r\n if (!value.match(/^\\w+([\\.-]?\\w+)*@\\w+([\\.-]?\\w+)*(\\.\\w{2,3})+$/)) {\r\n IsValid = false;\r\n errors.WareHouseEmailId = \"Please enter valid WareHouseEmailId-id.\";\r\n } else errors.WareHouseEmailId = ''\r\n /* eslint-enable */\r\n } else errors.WareHouseEmailId = ''\r\n break;\r\n case 'WareHouseContactNo1':\r\n if (!value || value.toString().length < 1) {\r\n IsValid = false;\r\n errors.WareHouseContactNo1 = \"Please enter WareHouseContactNo1.\";\r\n }\r\n else if (value.length >= 1) {\r\n if (!value.match(/^[6-9]\\d{9}$/)) {\r\n IsValid = false;\r\n errors.WareHouseContactNo1 = \"Please enter valid WareHouseContactNo1 no.\";\r\n } else errors.WareHouseContactNo1 = ''\r\n } else errors.WareHouseContactNo1 = ''\r\n break;\r\n case 'WareHouseCode':\r\n if (!value || value.length < 1) {\r\n IsValid = false;\r\n errors.WareHouseCode = \"Please enter wesite URL\";\r\n } else errors.WareHouseCode = ''\r\n break;\r\n case 'WHAddress1':\r\n if (!value || value.length < 1) {\r\n IsValid = false;\r\n errors.WHAddress1 = \"Please enter WHAddress1\";\r\n } else errors.WHAddress1 = ''\r\n break;\r\n case 'WareHouseLogo':\r\n if (!value || value.length < 1) {\r\n IsValid = false;\r\n errors.WareHouseLogo = \"Please enter warehouseLogo\";\r\n } else errors.WareHouseLogo = ''\r\n break;\r\n // case 'WHAddress2':\r\n // if (!value || value.length < 1) {\r\n // IsValid = false;\r\n // errors.WHAddress2 = \"Please enter WHAddress2\";\r\n // } else errors.WHAddress2 = ''\r\n // break;\r\n // case 'FakeAudio':\r\n // if (!value || value.length < 1) {\r\n // IsValid = false;\r\n // errors.FakeAudio = \"Please enter FakeAudio\";\r\n // } else errors.FakeAudio = ''\r\n // break;\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n getDropValueOfCity() {\r\n let city = \"\";\r\n this.props.UserCityData.filter((x) => {\r\n if (x.value === this.state.CityId.toString()) {\r\n city = x.label;\r\n }\r\n });\r\n\r\n return city;\r\n }\r\n resetForm() {\r\n this.setState({\r\n WareHouseId: 0,\r\n WareHouseName: '',\r\n WareHouseDisNam: '',\r\n Country: '',\r\n State: '',\r\n City: '',\r\n // prefix: '',\r\n WareHouseEmailId: '',\r\n WareHouseContactNo1: '',\r\n WareHouseCode: '',\r\n activeIndex: 0,\r\n WHAddress1: '',\r\n WareHouseLogo: '',\r\n FakeAudio: '',\r\n links: [],\r\n name: [],\r\n WHAddress2: '',\r\n isActive: true,\r\n formError: {\r\n WareHouseName: '',\r\n WareHouseDisNam: '',\r\n Country: '',\r\n State: '',\r\n City: '',\r\n // prefix: '',\r\n WareHouseEmailId: '',\r\n WareHouseContactNo1: '',\r\n WareHouseCode: '',\r\n WHAddress1: '',\r\n WareHouseLogo: '',\r\n WHAddress2: '',\r\n FakeAudio: ''\r\n }\r\n });\r\n\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key]) => {\r\n errors[key] = '';\r\n return errors[key];\r\n });\r\n }\r\n\r\n submitForm(event) {\r\n\r\n event.preventDefault();\r\n let isfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key]\r\n let valid = this.validateForm(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n return isfrmvalid;\r\n });\r\n if (isfrmvalid) { this.setState({ activeIndex: 1 }); }\r\n\r\n if (isfrmvalid) {\r\n var SocialLinks = {};\r\n for (var i = 0; i < this.state.name.length; i++) {\r\n if (this.state.name[i].length > 0 && this.state.links[i].length > 0)\r\n SocialLinks[this.state.name[i]] = this.state.links[i];\r\n }\r\n const formData = {\r\n WareHouseId: this.state.WareHouseId,\r\n WareHouseName: this.state.WareHouseName,\r\n WareHouseDisNam: this.state.WareHouseDisNam,\r\n Country: this.state.Country,\r\n State: this.state.State,\r\n City: this.state.City,\r\n // Prefix: this.state.prefix,\r\n State: this.state.State,\r\n City: this.state.City,\r\n WareHouseEmailId: this.state.WareHouseEmailId,\r\n WareHouseContactNo1: this.state.WareHouseContactNo1,\r\n WareHouseCode: this.state.WareHouseCode,\r\n WHAddress1: this.state.WHAddress1,\r\n WareHouseLogo: this.state.WareHouseLogo,\r\n WHAddress2: this.state.WHAddress2,\r\n FakeAudio: this.state.FakeAudio,\r\n\r\n SocialLinks: JSON.stringify(SocialLinks),\r\n IsActive: this.state.isActive,\r\n CreatedDt: this.state.WareHouseId > 0 ? this.state.CreatedDt : this.getCurrentDateMMDDYYY(),\r\n UpdatedDt: this.state.WareHouseId > 0 ? this.getCurrentDateMMDDYYY() : null,\r\n TotalRows: this.state.totalRecords\r\n }\r\n\r\n if (this.state.WareHouseId == 0) {\r\n this.props.createCompany(formData);\r\n }\r\n else {\r\n this.props.updateCompany(formData);\r\n }\r\n\r\n if (!this.props.showDialog) {\r\n this.resetForm();\r\n }\r\n }\r\n }\r\n\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? 'ASC' : 'DESC';\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField = event.multiSortMeta[0].field === \"CreatedDate\" ? \"CreatedDate\" : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? 'DESC' : 'ASC';//this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n photoBodyTemplate(e) {\r\n return \r\n }\r\n statusBodyTemplate(rowData) {\r\n return (\r\n \r\n )\r\n }\r\n // set Image Path\r\n setImagePath(event) {\r\n let errors = this.state.formError;\r\n errors.WareHouseLogo = \"\";\r\n if (event.xhr) {\r\n if (event.xhr.response) {\r\n const response = JSON.parse(event.xhr.response);\r\n if (response) {\r\n if (response.ResponseCode === \"200\") {\r\n this.setState({\r\n WareHouseLogo: response.Source,\r\n });\r\n } else if (response.ResponseCode === \"400\") {\r\n errors.WareHouseLogo = \"Only image format is accepted.\";\r\n this.setState({\r\n WareHouseLogo: \"\",\r\n });\r\n } else {\r\n // this.messageService.add({ severity: 'error', summary: 'Oops', detail: response.ResponseMessage });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n }\r\n // set Audio Path\r\n setAudioPath(event) {\r\n this.setState({\r\n FakeAudio: null\r\n })\r\n let errors = this.state.formError;\r\n errors.FakeAudio = \"\";\r\n if (event.xhr) {\r\n if (event.xhr.response) {\r\n const response = JSON.parse(event.xhr.response);\r\n if (response) {\r\n if (response.ResponseCode === \"200\") {\r\n this.setState({\r\n FakeAudio: response.Source,\r\n });\r\n } else if (response.ResponseCode === \"400\") {\r\n errors.FakeAudio = \"Only audio format is accepted.\";\r\n this.setState({\r\n FakeAudio: \"\",\r\n });\r\n } else {\r\n // this.messageService.add({ severity: 'error', summary: 'Oops', detail: response.ResponseMessage });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n } else {\r\n //this.messageService.add({ severity: 'error', summary: 'Oops', detail: 'Something went wrong' });\r\n }\r\n }\r\n\r\n handlelink = i => e => {\r\n\r\n let links = [...this.state.links]\r\n links[i] = e.target.value\r\n this.setState({\r\n links\r\n })\r\n\r\n }\r\n handlename = i => e => {\r\n\r\n let name = [...this.state.name]\r\n name[i] = e.target.value\r\n this.setState({\r\n name\r\n })\r\n\r\n }\r\n handleDelete = i => e => {\r\n e.preventDefault()\r\n let links = [\r\n ...this.state.links.slice(0, i),\r\n ...this.state.links.slice(i + 1)\r\n ]\r\n let name = [\r\n ...this.state.name.slice(0, i),\r\n ...this.state.name.slice(i + 1)\r\n ]\r\n this.setState({\r\n links, name\r\n })\r\n }\r\n Fdone(event) {\r\n event.preventDefault();\r\n let isfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key]\r\n let valid = this.validateForm(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n return isfrmvalid;\r\n });\r\n if (isfrmvalid) { this.setState({ activeIndex: 1 }); }\r\n }\r\n\r\n AddLink = e => {\r\n e.preventDefault()\r\n let links = this.state.links.concat([''])\r\n let name = this.state.name.concat([''])\r\n this.setState({\r\n links, name\r\n })\r\n }\r\n\r\n actionBodyTemplate(rowData) {\r\n //this.getCityList(rowData.Ship_State, \"S\", \"\");\r\n const editMode = (e) => {\r\n this.props.getStateDDL(rowData.Country);\r\n this.getCityList(rowData.State, \"B\", \"\");\r\n let name = [];\r\n let links = [];\r\n if (rowData.SocialLinks != undefined && rowData.SocialLinks != null) {\r\n let socialLinks = JSON.parse(rowData.SocialLinks)\r\n\r\n for (let x in socialLinks) {\r\n name.push(x);\r\n links.push(socialLinks[x]);\r\n }\r\n }\r\n this.props.onHideShow(true);\r\n\r\n this.setState({\r\n buttonLabel: 'Next',\r\n formHeading: 'Update Company',\r\n\r\n WareHouseId: rowData.WareHouseId,\r\n WareHouseName: rowData.WareHouseName,\r\n WareHouseDisNam: rowData.WareHouseDisNam,\r\n Country: rowData.Country,\r\n State: rowData.State,\r\n City: rowData.City,\r\n // prefix: rowData.Prefix,\r\n WareHouseEmailId: rowData.WareHouseEmailId,\r\n WareHouseContactNo1: rowData.WareHouseContactNo1,\r\n WareHouseCode: rowData.WareHouseCode,\r\n WHAddress1: rowData.WHAddress1, name, links,\r\n WareHouseLogo: rowData.WareHouseLogo,\r\n WHAddress2: rowData.WHAddress2,\r\n FakeAudio: rowData.FakeAudio,\r\n isActive: rowData.IsActive,\r\n createdDate: rowData.CreatedDate\r\n });\r\n }\r\n\r\n const switchHandleChange = (e) => {\r\n this.setState({\r\n switchAction: !rowData.IsActive,\r\n WareHouseId: rowData.WareHouseId\r\n });\r\n this.props.onHideShowIsActive(true);\r\n }\r\n return (\r\n <>\r\n \r\n\r\n \r\n\r\n \r\n \r\n ))}\r\n\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n\r\n \r\n \r\n \r\n\r\n this.props.onHideShowIsActive(false)}>\r\n
    \r\n \r\n Are you sure you want to {this.state.switchAction == true ? \"Active\" : \"InActive\"}?\r\n
    \r\n
    \r\n \r\n\r\n )\r\n }\r\n}\r\nconst mapStateToProps = (state) => {\r\n return {\r\n Companys: state.company.items,\r\n showDialog: state.company.showDialog,\r\n loading: state.company.loding,\r\n showIsActiveDialog: state.company.showIsActiveDialog,\r\n StateData: state.dealer.stateddl,\r\n UserBCityData: state.dealer.bcityddl,\r\n }\r\n}\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (data) => {\r\n dispatch(warehouseMasterActions.getAll(data))\r\n },\r\n createCompany: company => dispatch(warehouseMasterActions.createCompany(company)),\r\n updateCompany: company => dispatch(warehouseMasterActions.updateCompany(company)),\r\n inActiveRow: (WareHouseId, isActive) => dispatch(warehouseMasterActions.inActiveRow(WareHouseId, isActive)),\r\n onHideShow: isbool => dispatch(warehouseMasterActions.onHideShow(isbool)),\r\n getStateDDL: (data) => dispatch(dealerMasterActions.getStateDDL(data)),\r\n getBCityDDL: (data) => dispatch(dealerMasterActions.getBCityDDL(data)),\r\n onHideShowIsActive: isbool => dispatch(warehouseMasterActions.onHideShowIsActive(isbool)),\r\n loadingData: (isLoding) => dispatch(warehouseMasterActions.loadingData(isLoding))\r\n\r\n }\r\n}\r\nexport default connect(mapStateToProps, mapDispatchToProps)(warehouseMaster)","import React, { Component } from \"react\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport { Button } from \"primereact/button\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport { FileUpload } from \"primereact/fileupload\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport { connect } from \"react-redux\";\r\nimport Moment from \"react-moment\";\r\nimport { ToastContainer, } from \"react-toastify\";\r\nimport { roleMasterActions, BinMasterActions } from \"../../actions\";\r\nimport tableRequest from \"../../models/tableRequest\";\r\n// import { CSVLink } from \"react-csv\";\r\nimport Switch from \"@material-ui/core/Switch\";\r\n// import \"./Master.css\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\n\r\nclass BinMaster extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponseExport = new tableRequest();\r\n this.tblResponse = new tableRequest();\r\n this.statusBodyTemplate = this.statusBodyTemplate.bind(this);\r\n this.actionBodyTemplate = this.actionBodyTemplate.bind(this);\r\n this.switchToggleConfirm = this.switchToggleConfirm.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.openDialog = this.openDialog.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.CreatedDateTemplate = this.CreatedDateTemplate.bind(this);\r\n this.UpdatedDateTemplate = this.UpdatedDateTemplate.bind(this);\r\n this.resetForm = this.resetForm.bind(this);\r\n this.onHide = this.onHide.bind(this);\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n\r\n this.state = {\r\n editing: false,\r\n IsAdd: true,\r\n IsEdit: true,\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n CreatedDate: null,\r\n UpdatedDate: null,\r\n sortOrder: \"\",\r\n buttonLabel: \"Submit\",\r\n switchAction: false,\r\n formHeading: \"Add Bin Location\",\r\n wareHouseId: \"\",\r\n UserName: \"\",\r\n RowName: \"\",\r\n RowNo: \"\",\r\n ColNo: \"\",\r\n BinId: 0,\r\n\r\n StoreData: [{ value: 1, label: \"Finished Goods Store\" },\r\n { value: 2, label: \"Semi Finished Goods Store\" },\r\n { value: 3, label: \"Row Material Store\" }],\r\n StoreType: \"\",\r\n Height: \"\",\r\n Width: \"\",\r\n Length: \"\",\r\n Valume: \"\",\r\n\r\n ColStatus: true,\r\n IsActive: true,\r\n formError: {\r\n RowName: \"\",\r\n RowNo: \"\",\r\n ColNo: \"\",\r\n wareHouseId: \"\",\r\n StoreType: \"\",\r\n Height: \"\",\r\n Width: \"\",\r\n Length: \"\",\r\n Valume: \"\",\r\n }\r\n };\r\n }\r\n\r\n // this line use to ssions\r\n componentDidMount() {\r\n const userPages = sessionStorage.getItem(\"assignedPermissionsForUser\");\r\n if (userPages) {\r\n const assignedPermissions = JSON.parse(userPages);\r\n const Curenturl = window.location.pathname;\r\n const nNumber = Curenturl.lastIndexOf(\"/\");\r\n const pageName = Curenturl.substring(nNumber + 1);\r\n const obj = assignedPermissions.assigned.filter((x) => {\r\n return x.ActionName === pageName;\r\n });\r\n if (obj !== null && obj.length > 0) {\r\n if (!obj[0].IsEdit) {\r\n this.setState({\r\n IsEdit: false,\r\n });\r\n }\r\n if (!obj[0].IsAdd) {\r\n this.setState({\r\n IsAdd: false,\r\n });\r\n } else {\r\n this.setState({\r\n IsAdd: true,\r\n });\r\n }\r\n }\r\n }\r\n\r\n this.props.fetchApi(this.tblResponse);\r\n this.props.getWarehouseDDL();\r\n //this.props.fetchAllBinData();\r\n console.log(this.props.Binitems);\r\n this.tblResponseExport.PageSize = -1;\r\n this.tblResponseExport.First = 1;\r\n this.tblResponseExport.IsActive = true;\r\n this.tblResponseExport.SearchValue = \"\";\r\n this.tblResponseExport.SortOrder = \"ASC\";\r\n this.props.exportingData(this.tblResponseExport);\r\n // const userId = JSON.parse(sessionStorage.getItem(\"UserData\"));\r\n\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.BinList) {\r\n if (prevProps.BinList !== this.props.BinList) {\r\n // this.props.myProp has a different value\r\n if (this.props.BinList) {\r\n var e = this.props.BinList;\r\n this.setState({\r\n totalRecords: e[0]?.TotalRows,\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords !== 0)\r\n this.setState({\r\n totalRecords: 0,\r\n first: 0,\r\n });\r\n }\r\n }\r\n\r\n switchToggleConfirm = (e) => {\r\n \r\n this.props.inActiveRow(this.state.BinId, this.state.switchAction);\r\n console.log(\"BINID\", this.state.BinId, this.state.switchAction)\r\n };\r\n\r\n handleChange(event) {\r\n let { name, value } = event.target;\r\n this.validateForm(value, name);\r\n this.setState({ [name]: value });\r\n\r\n }\r\n\r\n UpdatedDateTemplate(rowData) {\r\n if (rowData.UpdatedDate !== null) {\r\n return {rowData.UpdatedDate};\r\n } else {\r\n }\r\n }\r\n\r\n CreatedDateTemplate(rowData) {\r\n if (rowData.UpdatedDate !== null) {\r\n return {rowData.CreatedDate};\r\n }\r\n }\r\n validateForm(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n switch (name) {\r\n case \"wareHouseId\":\r\n if (value === 0) {\r\n IsValid = false;\r\n errors.wareHouseId = \"Please select Warehouse\";\r\n } else errors.wareHouseId = null;\r\n break;\r\n case \"Height\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.Height = \"Please enter height \";\r\n } else errors.Height = \"\";\r\n break;\r\n case \"Width\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.Width = \"Please enter width \";\r\n } else errors.Width = \"\";\r\n break;\r\n // case \"Length\":\r\n // if (value.length < 1) {\r\n // IsValid = false;\r\n // errors.Length = \"Please enter length \";\r\n // } else errors.Length = \"\";\r\n // break;\r\n // case \"Valume\":\r\n // if (value.length < 1) {\r\n // IsValid = false;\r\n // errors.OrderQty = \"Please enter order qty\";\r\n // } else errors.OrderQty = \"\";\r\n // break;\r\n\r\n case \"Length\":\r\n if (value.trim().length < 1) {\r\n IsValid = false;\r\n errors.Length = \"Please enter your lenth.\";\r\n } else {\r\n if (!value.match(/^[0-9]+$/)) {\r\n IsValid = false;\r\n errors.Length = \"Please enter only number.\";\r\n this.setState({ Length: 0 });\r\n } else {\r\n errors.Valume = null;\r\n errors.Height = null;\r\n errors.Length = null;\r\n errors.Width = null;\r\n const Length = value.trim() === '' ? 0 : parseInt(value.trim());\r\n if (this.state.Height >= 1 && Length >= 1 && this.state.Width >= 1) {\r\n const Valume = (this.state.Height * Length * this.state.Width);\r\n console.log(\"DATABHAI\", Valume);\r\n if (this.state.Valume >= 0) {\r\n this.setState({ Valume: Valume })\r\n } else {\r\n IsValid = false;\r\n errors.Length = \"Length qty should be less than or equal to Received number.\";\r\n this.setState({ Length: 0 })\r\n }\r\n }\r\n }\r\n } //errors.DamageQty = \"\";\r\n break;\r\n case \"RowNo\":\r\n if (!value === value) {\r\n IsValid = false;\r\n } else {\r\n if (value < 1) {\r\n IsValid = false;\r\n errors.RowNo = \"Please enter your Row No.\";\r\n } else {\r\n if (!value.toString().match(/^[0-9]+$/.exec(value))) {\r\n IsValid = false;\r\n errors.RowNo = \"Please enter only number.\";\r\n this.setState({ RowNo: 0 });\r\n }\r\n\r\n }\r\n }\r\n default:\r\n break;\r\n }\r\n return IsValid;\r\n }\r\n\r\n validateFormMobile(value, name) {\r\n let errors = this.state.formErrorMobile;\r\n let IsValid = true;\r\n switch (name) {\r\n case \"city\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.city = \"Please enter City name.\";\r\n } else errors.city = \"\";\r\n break;\r\n case \"DealerName\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.DealerName = \"Please Enter Dealer Name.\";\r\n } else errors.DealerName = \"\";\r\n break;\r\n case \"DealerNo\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.DealerNo = \"Please enter Dealer Contact no.\";\r\n } else if (value.length >= 1) {\r\n if (!value.match(/^[6-9]\\d{9}$/)) {\r\n IsValid = true;\r\n errors.DealerNo = \"Please enter valid Contact no.\";\r\n } else errors.DealerNo = \"\";\r\n } else errors.DealerNo = \"\";\r\n break;\r\n case \"aadharImage\":\r\n if (!value || value.toString().length < 1) {\r\n IsValid = false;\r\n errors.aadharImage = \"Please upload Aadhar scan copy.\";\r\n } else errors.aadharImage = \"\";\r\n break;\r\n case \"aadharNo\":\r\n if (!value || value.toString().length < 1) {\r\n IsValid = false;\r\n errors.aadharNo = \"Please enter Aadhar Number.\";\r\n } else if (!value.match(/^[2-9]{1}[0-9]{3}[0-9]{8}$/)) {\r\n IsValid = false;\r\n errors.aadharNo = \"Please enter valid Aadhar Number.\";\r\n } else errors.aadharNo = \"\";\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n\r\n getDropValueOfRole() {\r\n let roleName = \"\";\r\n this.props.UserRoleData.filter((x) => {\r\n if (x.value === this.state.RoleId.toString()) {\r\n roleName = x.label;\r\n }\r\n });\r\n\r\n return roleName;\r\n }\r\n\r\n getDropValueOfUserType() {\r\n let usertype = \"\";\r\n this.state.UserTypeData.filter((x) => {\r\n if (x.value === this.state.UserTypeId) {\r\n usertype = x.label;\r\n }\r\n });\r\n\r\n return usertype;\r\n }\r\n\r\n submitForm(event) {\r\n ;\r\n event.preventDefault();\r\n let isfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key];\r\n let valid = this.validateForm(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n return isfrmvalid;\r\n });\r\n\r\n if (isfrmvalid) {\r\n // const ddlValu = this.getDropValue();\r\n const formData = {\r\n wareHouseId: this.state.wareHouseId,\r\n RowName: this.state.RowName,\r\n RowNo: this.state.RowNo,\r\n ColNo: this.state.ColNo,\r\n BinId: this.state.BinId,\r\n\r\n StoreType: this.state.StoreType,\r\n Height: this.state.Height,\r\n Width: this.state.Width,\r\n Length: this.state.Length,\r\n Valume: this.state.Valume,\r\n\r\n };\r\n // this.props.createBin(formData)\r\n if (formData.BinId > 0) {\r\n ;\r\n this.props.updateBin(formData);\r\n\r\n } else {\r\n this.props.createBin(formData);\r\n }\r\n\r\n if (!this.props.showDialog) {\r\n this.resetForm();\r\n }\r\n\r\n setTimeout(() => {\r\n this.props.fetchApi(this.tblResponse);\r\n }, 1000);\r\n this.onHide();\r\n console.log(formData);\r\n }\r\n }\r\n\r\n // getRoleDDL(event) {\r\n // this.props.getRoleDDL();\r\n // }\r\n resetForm() {\r\n this.setState({\r\n editing: false,\r\n RowName: \"\",\r\n RowNo: \"\",\r\n ColNo: \"\",\r\n\r\n StoreType: \"\",\r\n Height:\"\",\r\n Width:\"\",\r\n Length:\"\",\r\n Valume:\"\",\r\n\r\n IsActive: true,\r\n formError: {\r\n RowName: \"\",\r\n RowNo: \"\",\r\n ColNo: \"\",\r\n\r\n Storetype:\"\",\r\n Height:\"\",\r\n Width:\"\",\r\n Length:\"\",\r\n Valume:\"\",\r\n },\r\n });\r\n\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key]) => {\r\n errors[key] = \"\";\r\n return errors[key];\r\n });\r\n }\r\n\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField =\r\n event.multiSortMeta[0].field === \"CreatedDate\"\r\n ? \"CreatedDate\"\r\n : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\"; //this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n // modal open & close----------\r\n onHide() {\r\n this.props.onHideShow(false);\r\n this.resetForm();\r\n }\r\n openDialog() {\r\n this.props.onHideShow(true);\r\n this.setState({ buttonLabel: \"Submit\", formHeading: \"Add BIN\" });\r\n }\r\n // modal open & close--------------\r\n statusBodyTemplate(rowData) {\r\n if (rowData) {\r\n return (\r\n \r\n );\r\n }\r\n }\r\n getCurrentDateMMDDYYY() {\r\n var today = new Date();\r\n var dd = String(today.getDate()).padStart(2, \"0\");\r\n var mm = String(today.getMonth() + 1).padStart(2, \"0\");\r\n var yyyy = today.getFullYear();\r\n today = mm + \"/\" + dd + \"/\" + yyyy;\r\n return today;\r\n }\r\n\r\n getStatus(rowData) {\r\n var value = rowData?.ColStatus;\r\n // console.log('-----------------' + value)\r\n // console.log(rowData.ColStatus);\r\n if (value == 1) {\r\n return {'\\u00A0'} Full{'\\u00A0'};\r\n }\r\n {\r\n return (\r\n Empty \r\n )\r\n }\r\n }\r\n // getDropValue() {\r\n // let warehouseId = \"\";\r\n // this.props.Warehouseddl.filter((x) => {\r\n // if (x.warehouseId === this.state.warehouseId) {\r\n // warehouseId = x.warehouseId;\r\n // }\r\n // });\r\n // return warehouseId;\r\n // }\r\n\r\n actionBodyTemplate(rowData) {\r\n console.log(rowData)\r\n const editMode = (e) => {\r\n //const ddlValuRole = this.getDropValueOfRole();\r\n this.props.onHideShow(true);\r\n this.setState({\r\n buttonLabel: \"Bin Update\",\r\n formHeading: \"Bin Address Update\",\r\n BinId: rowData.BinId,\r\n WareHouseId: rowData.WareHouseId,\r\n RowName: rowData.RowName,\r\n RowNo: rowData.RowNo,\r\n ColNo: rowData.ColNo,\r\n StoreData: rowData.StoreData,\r\n Height: rowData.Height,\r\n Width: rowData.Width,\r\n Length: rowData.Length,\r\n Valume: rowData.Valume,\r\n ColStatus: rowData.ColStatus,\r\n IsActive: rowData.IsActive,\r\n });\r\n\r\n };\r\n const switchHandleChange = (e) => {\r\n \r\n this.setState({\r\n switchAction: !rowData?.IsActive,\r\n BinId: rowData.BinId,\r\n });\r\n this.props.onHideShowIsActive(true);\r\n };\r\n\r\n if (rowData) {\r\n return (\r\n <>\r\n {this.state.IsEdit === true ? (\r\n
    \r\n \r\n
    \r\n ) : (\r\n \"\"\r\n )}\r\n \r\n );\r\n }\r\n }\r\n\r\n render() {\r\n\r\n const renderFooter = () => {\r\n return (\r\n
    \r\n this.props.onHideShowIsActive(false)}\r\n className=\"p-button-text\"\r\n />\r\n \r\n
    \r\n );\r\n };\r\n const header = (\r\n
    \r\n
    \r\n

    Bin Master

    \r\n
    \r\n
    \r\n \r\n \r\n this.searchFilter(e)}\r\n placeholder=\"Global Search\"\r\n />\r\n \r\n\r\n {this.state.IsAdd === true ? (\r\n \r\n ) : (\r\n \r\n )}\r\n {/* \r\n \r\n */}\r\n
    \r\n
    \r\n );\r\n\r\n return (\r\n
    \r\n \r\n\r\n
    \r\n {\r\n this.dt = el;\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n {/* */}\r\n\r\n\r\n \r\n\r\n {/* \r\n */}\r\n\r\n\r\n {this.state.IsEdit === true ? (\r\n \r\n\r\n ) : (\r\n \r\n )}\r\n \r\n
    \r\n\r\n \r\n {/* open form */}\r\n
    \r\n
    \r\n {/*
    \r\n \r\n \r\n Warehouse Name\r\n \r\n \r\n \r\n None\r\n \r\n {(typeof this.props.Warehouseddl == \"undefined\" ||\r\n this.props.Warehouseddl == null) === true\r\n ? null\r\n : this.props.Warehouseddl?.map((key) => (\r\n {key.label}\r\n ))}\r\n \r\n \r\n {this.state.formError.warehouseId !== \"\" ? (\r\n
    {this.state.formError.warehouseId}
    \r\n ) : (\r\n \"\"\r\n )}\r\n
    */}\r\n {/*
    \r\n \r\n {\r\n this.handleChange(e);\r\n }}\r\n options={this.props.Warehouseddl}\r\n optionValue=\"value\"\r\n optionLabel=\"label\"\r\n className=\"form-control custom-select\"\r\n placeholder={\"Select Warehouse \"}\r\n name=\"wareHouseId\"\r\n filter\r\n />\r\n \r\n {this.state.formError.wareHouseId !== \"\" ? (\r\n
    {this.state.formError.wareHouseId}
    \r\n ) : (\r\n \"\"\r\n )}\r\n
    */}\r\n\r\n
    \r\n \r\n {this.state.formError.FromNo !== \"\" ? (\r\n
    {this.state.formError.RoleName}
    \r\n ) : (\r\n \"\"\r\n )}\r\n
    \r\n\r\n
    \r\n \r\n {this.state.formError.FromNo !== \"\" ? (\r\n
    {this.state.formError.RowNo}
    \r\n ) : (\r\n \"\"\r\n )}\r\n
    \r\n\r\n
    \r\n \r\n {this.state.formError.ColNo !== \"\" ? (\r\n
    {this.state.formError.ColNo}
    \r\n ) : (\r\n \"\"\r\n )}\r\n
    \r\n\r\n {/*
    \r\n \r\n {\r\n this.handleChange(e);\r\n }}\r\n options={this.state.StoreData}\r\n optionValue=\"value\"\r\n optionLabel=\"label\"\r\n className=\"form-control custom-select\"\r\n placeholder={\"Store Type* \"}\r\n name=\"StoreType\"\r\n filter\r\n />\r\n \r\n {this.state.formError.StoreType !== \"\" ? (\r\n
    {this.state.formError.StoreType}
    \r\n ) : (\r\n \"\"\r\n )}\r\n
    */}\r\n\r\n\r\n
    \r\n \r\n {this.state.formError.Height !== \"\" ? (\r\n
    {this.state.formError.Height}
    \r\n ) : (\r\n \"\"\r\n )}\r\n
    \r\n\r\n
    \r\n \r\n {this.state.formError.Width !== \"\" ? (\r\n
    {this.state.formError.Width}
    \r\n ) : (\r\n \"\"\r\n )}\r\n
    \r\n\r\n
    \r\n \r\n {this.state.formError.Length !== \"\" ? (\r\n
    {this.state.formError.Length}
    \r\n ) : (\r\n \"\"\r\n )}\r\n
    \r\n\r\n
    \r\n \r\n {this.state.formError.Valume !== \"\" ? (\r\n
    {this.state.formError.Valume}
    \r\n ) : (\r\n \"\"\r\n )}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n {/* Form Close */}\r\n this.props.onHideShowIsActive(false)}\r\n >\r\n
    \r\n \r\n \r\n Are you sure you want to{\" \"}\r\n {this.state.switchAction == true ? \"Active\" : \"InActive\"}?\r\n \r\n
    \r\n \r\n
    \r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n // console.log('UserData' , state.BinMaster.Binitems,)\r\n //console.log('User', JSON.parse(sessionStorage.getItem(\"UserData\")))\r\n return {\r\n List: state.BinMaster.exportitems == undefined ? [] : state.user.exportitems,\r\n BinList: state.BinMaster.items,\r\n Warehouseddl: state.BinMaster.WarehouseDDL,\r\n showDialog: state.role.showDialog,\r\n loading: state.company.loding,\r\n showIsActiveDialog: state.BinMaster.showIsActiveDialog,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(BinMasterActions.getAll(obj));\r\n },\r\n // fetchAllBinData: () => {\r\n // dispatch(BinMasterActions.fetchAllBinData());\r\n // },\r\n createBin: (bin) => dispatch(BinMasterActions.createBin(bin)),\r\n updateBin: (bin) => dispatch(BinMasterActions.updateBin(bin)),\r\n inActiveRow: (bin, isActive) =>\r\n dispatch(BinMasterActions.inActiveRow(bin, isActive)),\r\n onHideShow: (isbool) => dispatch(BinMasterActions.onHideShow(isbool)),\r\n onHideShowIsActive: (isbool) =>\r\n dispatch(BinMasterActions.onHideShowIsActive(isbool)),\r\n\r\n getWarehouseDDL: () => dispatch(BinMasterActions.getWarehouseDDL()),\r\n\r\n\r\n loadingData: (isLoding) =>\r\n dispatch(BinMasterActions.loadingData(isLoding)),\r\n exportingData: (obj) => dispatch(BinMasterActions.exportData(obj)),\r\n };\r\n};\r\nexport default connect(mapStateToProps, mapDispatchToProps)(BinMaster);\r\n","import React, { Component } from \"react\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport { connect } from \"react-redux\";\r\nimport { WarrantyRegistrationReportActions } from \"../../actions/index.js\";\r\nimport { alignProperty } from \"@mui/material/styles/cssUtils.js\";\r\n\r\nclass WarrantyRequestClaim extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n scanTxt: \"\",\r\n qr: \"\",\r\n };\r\n this.ScanItem = this.ScanItem.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n }\r\n \r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n this.setState({ [name]: value });\r\n }\r\n \r\n ScanItem(e) {\r\n if (e.key === \"Enter\") {\r\n const qr = e.target.value.includes(\"=\") ? e.target.value.split(\"=\")[1] : e.target.value;\r\n this.props.GetScanInfo(qr);\r\n this.setState({ qr: qr });\r\n this.setState({ scanTxt: \"\" });\r\n }\r\n }\r\n \r\n actionBodyTemplate = (rowData) => { \r\n const claimWarranty = () => {\r\n // Call the claimWarranty action and pass the WarrantyId\r\n this.props.claimWarranty(rowData.WarrantyId, true);\r\n setTimeout(() => {\r\n this.props.GetScanInfo(this.state.qr);\r\n }, 100); // Use state to get qr value\r\n window.location.reload();\r\n };\r\n \r\n const isClaimed = rowData.isClaim; // Assuming there's a field like isClaimed in your rowData\r\n \r\n if (isClaimed == \"false\") {\r\n return (\r\n \r\n );\r\n } else {\r\n return (\r\n Claimed // Or any other UI to show it's already claimed\r\n );\r\n }\r\n };\r\n \r\n\r\n actionBodyTemplate2 = (rowData) => {\r\n \r\n const claimWarranty = () => {\r\n // Call the claimWarranty action and pass the WarrantyId\r\n this.props.claimWarranty(rowData.WarrantyId, true);\r\n setTimeout(() => {\r\n this.props.GetScanInfo(this.state.qr);\r\n }, 100);\r\n window.location.reload();\r\n };\r\n\r\n \r\n return (\r\n \r\n );\r\n \r\n };\r\n\r\n render() {\r\n const { TIDproducts } = this.props; // Assuming TIDproducts is passed as props\r\n const item = [TIDproducts];\r\n\r\n\r\n return (\r\n <>\r\n {/* Other components */}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Warranty Claim

    \r\n
    \r\n
    \r\n
    \r\n {\r\n this.handleChange(e);\r\n }}\r\n name=\"scanTxt\"\r\n value={this.state.scanTxt}\r\n type=\"search\"\r\n autoComplete=\"off\"\r\n className=\"form-control\"\r\n id=\"scan\"\r\n onKeyDown={(e) => {\r\n this.ScanItem(e);\r\n }}\r\n autoFocus\r\n />\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {/* Conditionally render DataTable */}\r\n {Object.keys(TIDproducts).length > 0 && (\r\n
    \r\n
    \r\n \r\n \r\n rowData.P.map((product, index) =>
    {product.ProductName}
    )} \r\n header=\"Product Name\" style={{width:\"10%\"}} sortable>
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n {item[0].isApprove == \"1\" ? (\r\n { event.stopPropagation() }}\r\n header=\"Action\"\r\n body={(rowData) => rowData.isClaim ? this.actionBodyTemplate(rowData) : null}\r\n style={{ width: '14%' }}\r\n >\r\n ) : (\r\n Not Approve}\r\n >\r\n )}\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n {item[0].isClaim =='true' ? (\r\n
    \r\n \r\n \r\n {/* Claimed}\r\n > */}\r\n { event.stopPropagation() }}\r\n header=\"Action\"\r\n body={this.actionBodyTemplate2}\r\n style={{ width: '14%' }}\r\n >\r\n \r\n
    \r\n ) : null}\r\n
    \r\n )}\r\n \r\n );\r\n }\r\n}\r\n\r\n\r\nconst mapStateToProps = (state) => {\r\n \r\n return { TIDproducts: state.QRCodeTrackingRpt.TIDproducts || [], };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => ({\r\n GetScanInfo: (data) => dispatch(WarrantyRegistrationReportActions.GetScanInfo(data)),\r\n claimWarranty: (WarrantyId, isActive) =>\r\n dispatch(WarrantyRegistrationReportActions.claimWarranty(WarrantyId, isActive)),\r\n});\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(WarrantyRequestClaim);\r\n","import React, { Component } from \"react\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport { Calendar } from \"primereact/calendar\";\r\nimport { connect } from \"react-redux\";\r\nimport tableRequest from \"../../models/tableRequest.js\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { Button } from \"primereact/button\";\r\nimport CsvDownloader from \"react-csv-downloader\";\r\nimport { CSVLink } from \"react-csv\";\r\nimport { alertActions, WarrantyRegistrationReportActions } from \"../../actions\";\r\n\r\nclass WarrantyReaprove extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.FilterData = this.FilterData.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.state = {\r\n IsAdd: true,\r\n IsEdit: true,\r\n loading: false,\r\n FromDate: new Date(),\r\n ToDate: new Date(),\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n visible: false,\r\n sortOrder: \"\",\r\n datalist: [],\r\n };\r\n }\r\n componentDidMount() {\r\n var date = new Date();\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() - 7);\r\n this.tblResponse.FromDate = date.toLocaleDateString();\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.setState({\r\n FromDate: date,\r\n ToDate: new Date(),\r\n });\r\n this.props.fetchApi(this.tblResponse);\r\n // this.props.exportingData(this.tblResponse);\r\n }\r\n\r\n onChange = (date) => this.setState({ FromDate: \"\", ToDate: \"\" });\r\n\r\n // GetVerification()\r\n // {\r\n // let ToDt = new Date();\r\n // let FrmDt = new Date();\r\n // FrmDt.setDate(ToDt.getDate() - 7);\r\n\r\n // const myFmDt = this.getCurrentDateYYYYMMDD(FrmDt);\r\n // const myToDt = this.getCurrentDateYYYYMMDD(ToDt);\r\n\r\n // this.tblResponse.FromDate =this.state.FromDate;\r\n // this.tblResponse.ToDate = this.state.ToDate;\r\n // this.props.fetchApi(this.tblResponse);\r\n // }\r\n FilterData() {\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n getCurrentDateYYYYMMDD(dt) {\r\n var dd = String(dt.getDate()).padStart(2, \"0\");\r\n var mm = String(dt.getMonth() + 1).padStart(2, \"0\");\r\n var yyyy = dt.getFullYear();\r\n\r\n dt = yyyy + \"/\" + mm + \"/\" + dd;\r\n return dt;\r\n }\r\n\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n switch (name) {\r\n case \"FromDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n // this.refs.Messchild.showError(\"Please select from date.\");\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select from date.\",\r\n life: 3000,\r\n });\r\n\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (value instanceof Date && this.state.ToDate instanceof Date) {\r\n const startDate = value;\r\n const endDate = this.state.ToDate;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"From date must be less than to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"From date must be less than to date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n case \"ToDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please select to date.\");\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (\r\n value instanceof Date &&\r\n this.state.FromDate instanceof Date\r\n ) {\r\n const startDate = this.state.FromDate;\r\n const endDate = value;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"To date must be greater than from date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"To date must be greater than from date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n this.setState({ [name]: value });\r\n }\r\n\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n handleProductName(rowData) {\r\n if (rowData.ProductName == null) {\r\n let list;\r\n list = rowData.QrData;\r\n return list;\r\n } else {\r\n return rowData.ProductName;\r\n }\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField =\r\n event.multiSortMeta[0].field === \"CreatedDate\"\r\n ? \"CreatedDt\"\r\n : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\"; //this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.warrantyList) {\r\n if (prevProps.warrantyList !== this.props.warrantyList) {\r\n // this.props.myProp has a different value\r\n if (this.props.warrantyList) {\r\n var e = this.props.warrantyList;\r\n this.setState({\r\n totalRecords: e[0].TotalRows,\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords !== 0)\r\n this.setState({\r\n totalRecords: 0,\r\n first: 0,\r\n });\r\n }\r\n }\r\n actionBodyTemplate = (rowData) => {\r\n \r\n const claimWarranty = () => {\r\n // Call the claimWarranty action and pass the WarrantyId\r\n this.props.claimWarranty(rowData.WarrantyId, true);\r\n setTimeout(() => {\r\n this.props.fetchApi(this.tblResponse);\r\n }, 1000);\r\n };\r\n\r\n return (\r\n \r\n );\r\n };\r\n\r\n\r\n render() {\r\n return (\r\n
    \r\n {/* */}\r\n (this.toast = el)} />\r\n
    \r\n
    \r\n

    Warranty Re-Approval

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n Submit\r\n \r\n  \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n {\r\n this.dt = el;\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* */}\r\n\r\n { event.stopPropagation() }}\r\n header=\"Action\"\r\n body={this.actionBodyTemplate}\r\n style={{ width: '10%' }}\r\n >\r\n \r\n\r\n
    \r\n
    \r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n warrantyList: state.warranty.items,\r\n List:\r\n state.warranty.exportitems == undefined\r\n ? []\r\n : state.warranty.exportitems,\r\n loading: state.warranty.loding,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(WarrantyRegistrationReportActions.getAllReaprove(obj));\r\n },\r\n claimWarranty: (WarrantyId, isActive) =>\r\n dispatch(WarrantyRegistrationReportActions.WarrantyReaprove(WarrantyId, isActive)),\r\n loadingData: (isLoding) =>\r\n dispatch(WarrantyRegistrationReportActions.loadingData(isLoding)),\r\n exportingData: (obj) => dispatch(WarrantyRegistrationReportActions.exportData(obj)),\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(WarrantyReaprove);\r\n","import React, { Component } from \"react\";\r\nimport \"primereact/resources/themes/saga-blue/theme.css\";\r\nimport \"primereact/resources/primereact.min.css\";\r\nimport \"primeicons/primeicons.css\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { confirmAlert } from \"react-confirm-alert\"; // Import\r\nimport { connect } from \"react-redux\";\r\nimport { TertiaryPackingActions } from \"../../actions/TertiaryPackingActions.js\";\r\nimport PrintDispatchService from \"../../services/PrintDispatchService.js\";\r\nimport MessageComponent from \"../../templates/Message.jsx\";\r\nimport { productMasterActions } from \"../../actions/productMasterActions.js\";\r\nimport { DispatchActions } from \"../../actions/DispatchActions.js\";\r\nimport { Button } from \"primereact/button\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport tableRequest from \"../../models/tableRequest.js\";\r\nimport { RedemptionApprovalActions } from \"../../actions/RedemptionApprovalActions.js\";\r\nimport $ from \"jquery\";\r\nimport { BreadCrumb } from \"primereact/breadcrumb\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport { Card } from \"primereact/card\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { secondaryPackingActions } from \"../../actions/secondaryPackingAction.js\";\r\nimport alreadyPacked from \"../../assets/audio/AlreadyScanned.mp3\";\r\nimport invalidScan from \"../../assets/audio/InvalidScan.mp3\";\r\n\r\nclass NDispatch extends Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.getUserList = this.getUserList.bind(this);\r\n this.PrintDispatchService = new PrintDispatchService();\r\n // this.DispatchService = new DispatchService();\r\n // this.PrintDispatchService = new PrintDispatchService();\r\n // this.ApiService = new ApiService();\r\n // this.WareHouseMaterService = new WareHouseMaterService();\r\n this.tblResponse = new tableRequest();\r\n this.alreadyPacked = new Audio(alreadyPacked);\r\n this.invalidScan = new Audio(invalidScan);\r\n this.state = {\r\n DealerId: \"\",\r\n DealerName: \"\",\r\n GstNo: \"\",\r\n OrderBookingNo: \"\",\r\n SONumber: \"\",\r\n SONo: \"\",\r\n scanTxt: \"\",\r\n UserId: \"\",\r\n warehouseVisible: true,\r\n visible: false,\r\n radio: false,\r\n isold: false,\r\n cartoonLoader: false,\r\n scanItemLoader: true,\r\n remarkVisible: false,\r\n olderstockVisible: false,\r\n eventBlock: false,\r\n sortIcon: false,\r\n sortOrder: \"1\",\r\n formError: {},\r\n UserDDL: [],\r\n DispatchDetails: [],\r\n SelectedDDL: [],\r\n wareHouseDDL: [],\r\n WareHouseFactoryDDL: [],\r\n SendTo: [],\r\n buttonLabel: \"Submit\",\r\n sales: [],\r\n scanItems: [],\r\n scanDisp: [],\r\n olderdata: [],\r\n loading: true,\r\n first: 0,\r\n rows: 10,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n emptyMessage: \"No Data found\",\r\n bill_Address1: \"\",\r\n bill_Address2: \"\",\r\n bill_City: \"\",\r\n bill_Country: \"\",\r\n bill_Pincode: \"\",\r\n bill_State: \"\",\r\n ship_Address1: \"\",\r\n ship_Address2: \"\",\r\n ship_City: \"\",\r\n ship_Country: \"\",\r\n ship_Pincode: \"\",\r\n ship_State: \"\",\r\n IsOldProduct: false,\r\n Remark: \"\",\r\n globalFilter: null,\r\n needtoSaveDispatch: \"\",\r\n };\r\n this.hideFunc = this.hideFunc.bind(this);\r\n this.actionTemplate = this.actionTemplate.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n //this.sendToEvent = this.sendToEvent.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.submitRemark = this.submitRemark.bind(this);\r\n this.onPage = this.onPage.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.ScanItem = this.ScanItem.bind(this);\r\n this.onValueChange = this.onValueChange.bind(this);\r\n }\r\n //trigger api function on page call\r\n componentDidMount() {\r\n setTimeout(() => {\r\n this.GetDispatch();\r\n // this.GetWareHouse(0);\r\n const objtoprint = {\r\n CartonId: \"DID-2020-21-00001\",\r\n CreatedDt: \"14/07/20\",\r\n Qty: \"2\",\r\n userDetail: {\r\n UserId: 30,\r\n Token: null,\r\n RefreshToken: null,\r\n ReferenceID: \"CE1215F5-44DE-46F0-B9B7-72E1D1B24172\",\r\n Username: \"ajaytestdealer\",\r\n Password: null,\r\n FirstName: \"new\",\r\n LastName: \"gupta\",\r\n Email: null,\r\n MobileNo: \"8181818181\",\r\n UserType: 2,\r\n ProfileImage: null,\r\n DeviceType: null,\r\n IsActive: true,\r\n InActiveReason: null,\r\n CreatedBy: null,\r\n CreatedDt: \"2020-07-10T13:57:11.46\",\r\n UpdatedBy: null,\r\n UpdatedDt: null,\r\n Salt: null,\r\n CreatedDate: null,\r\n IsResetPassword: false,\r\n TotalRows: 0,\r\n userId: 0,\r\n Id: 0,\r\n ship_Country: \"101\",\r\n ship_State: \"1\",\r\n ship_City: \"93\",\r\n ship_CountryName: \"India\",\r\n ship_StateName: \"Andaman & Nicobar Islands\",\r\n ship_CityName: \"Carnicobar\",\r\n ship_Address1: \"Add1\",\r\n ship_Address2: \"Add2\",\r\n ship_Pincode: \"1902929\",\r\n bill_Country: \"101\",\r\n bill_State: \"4\",\r\n bill_City: \"91\",\r\n bill_CountryName: \"India\",\r\n bill_StateName: \"Assam\",\r\n bill_CityName: \"Cachar\",\r\n bill_Address1: \"Add1\",\r\n bill_Address2: \"Add2\",\r\n bill_Pincode: \"1902929\",\r\n },\r\n cartonList: [\r\n {\r\n ProductName: \"KROSIN-AG\",\r\n TertiaryCartonId: \"TID-2020-21-00001\",\r\n TotalSecondaryCarton: null,\r\n CartonId: null,\r\n TotalQty: \"2\",\r\n ProductUOM: \"Pieces\",\r\n },\r\n {\r\n ProductName: \"Keetnashak\",\r\n TertiaryCartonId: \"TID-2020-21-00002\",\r\n TotalSecondaryCarton: null,\r\n CartonId: null,\r\n TotalQty: \"3\",\r\n ProductUOM: \"Pieces\",\r\n },\r\n ],\r\n };\r\n }, 1000);\r\n\r\n $(\".p-column-title\").on(\"click\", function () {\r\n $(this)\r\n .next()\r\n .removeClass(\"pi-sort\")\r\n .toggleClass(\"pi-sort-up\")\r\n .addClass(\"pi-sort-down\");\r\n });\r\n\r\n this.props.UserData(this.tblResponse);\r\n\r\n //this.GetActiveUsers();\r\n //if user type is 1 state of visible will be set to true\r\n // if (this.ApiService.getUserType() == 1) {\r\n // this.setState({\r\n // visible: true,\r\n // });\r\n // }\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (\r\n this.state.Download &&\r\n this.props.IsDownload >= 1 &&\r\n prevProps.IsDownload != this.props.IsDownload\r\n ) {\r\n const resdata = this.props.Dispatch;\r\n //if ResponseCode is 200 success message will be shown else will move to 'else statement'\r\n if (resdata && resdata !== null && resdata[0].ResponseCode === \"200\") {\r\n //console.log(resdata[0].ResponseData);\r\n //this.PrintDispatchService.Printpdf(resdata[0].ResponseData);\r\n this.state.scanItems = [];\r\n this.setState({\r\n scanItems: [],\r\n scanDisp: [],\r\n SendTo: [],\r\n //KREP-55\r\n remarkVisible: false,\r\n needtoSaveDispatch: \"\",\r\n radio: false,\r\n Download: false,\r\n });\r\n this.GetDispatch();\r\n }\r\n // else if (resdata && resdata.ResponseCode === \"400\") {\r\n // this.refs.Messchild.showWarn(resdata.ResponseMessage);\r\n // } else {\r\n // this.showError(\"Seems Scanned Items already Dispatched\");\r\n // this.formReset();\r\n // this.GetDispatch();\r\n // this.GetWareHouse(0);\r\n // }\r\n }\r\n }\r\n\r\n componentDidUpdate() {\r\n if (this.props.alreadyPackedAudio) {\r\n this.alreadyPacked.play();\r\n this.props.alreadyPacked(false);\r\n } else if (this.props.warningAudio) {\r\n this.invalidScan.play();\r\n this.props.warning(false);\r\n }\r\n }\r\n\r\n // PAGE EVENT CALL\r\n onPage(event) {\r\n this.setState({\r\n loading: true,\r\n });\r\n\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.GetDispatch();\r\n }, 250);\r\n }\r\n\r\n hideFunc() {\r\n this.setState({\r\n remarkVisible: false,\r\n olderstockVisible: false,\r\n // formHeading: 'Add User'\r\n });\r\n }\r\n\r\n // set lazy loading values\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n }\r\n\r\n // get users data list from api\r\n GetDispatch() {\r\n this.formReset();\r\n this.setState({ cartoonLoader: false, eventBlock: false, SONo: \"\" });\r\n this.tblResponse.SortColumn = \"DispatchId\";\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n // call every change of form and validation part also\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n let errors = this.state.formError;\r\n if (name == \"SendTo\") {\r\n this.setState({ scanTxt: \"\" });\r\n }\r\n const isValid = this.validateForm(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n\r\n getUserList(event) {\r\n const { name, value } = event.target;\r\n let errors = this.state.formError;\r\n if (name == \"SendTo\") {\r\n this.setState({ scanTxt: \"\" });\r\n }\r\n const isValid = this.validateForm(value, name);\r\n this.setState({ errors, [name]: value });\r\n this.setState({ UserId: event.target.value });\r\n this.props.UserData(event.target.value);\r\n const userpnt = {\r\n UserId: event.target.value,\r\n };\r\n }\r\n\r\n // validate form\r\n validateForm(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n //to validate each form field with required conditions\r\n switch (name) {\r\n case \"UserName\":\r\n if (value.length < 1) {\r\n IsValid = false;\r\n errors.UserName = \"Please enter your username.\";\r\n } else errors.UserName = \"\";\r\n break;\r\n case \"SendTo\":\r\n ////console.log(value);\r\n this.state.bill_Address1 = value.bill_Address1;\r\n this.state.bill_Address2 = value.bill_Address2;\r\n this.state.bill_Pincode = value.bill_Pincode;\r\n this.state.bill_Country = value.bill_CountryName;\r\n this.state.bill_State = value.bill_StateName;\r\n this.state.bill_City = value.bill_CityName;\r\n this.state.ship_Address1 = value.bill_Address1;\r\n this.state.ship_Address2 = value.bill_Address2;\r\n this.state.ship_Pincode = value.bill_Pincode;\r\n this.state.ship_Country = value.bill_CountryName;\r\n this.state.ship_State = value.bill_StateName;\r\n this.state.ship_City = value.bill_CityName;\r\n this.setState({\r\n eventBlock: true,\r\n });\r\n break;\r\n default:\r\n break;\r\n }\r\n return IsValid;\r\n }\r\n\r\n // reset form text value\r\n formReset() {\r\n this.setState({\r\n ReferenceID: \"\",\r\n UserName: \"\",\r\n FirstName: \"\",\r\n LastName: \"\",\r\n Email: \"\",\r\n MobileNo: \"\",\r\n Password: \"\",\r\n ConfirmPassword: \"\",\r\n IsActive: true,\r\n });\r\n let errors = this.state.formError;\r\n Object.entries(errors).map(([key, value]) => {\r\n errors[key] = \"\";\r\n });\r\n }\r\n\r\n // open Dialog\r\n openDialog() {\r\n this.setState({ visible: true });\r\n this.formReset();\r\n }\r\n\r\n // submit packing\r\n submitForm(event) {\r\n event.preventDefault();\r\n //if SO length is 0\r\n if (this.state.SONo.length == 0) {\r\n this.refs.Messchild.showWarn(\"Enter Sales Order Number\");\r\n return;\r\n }\r\n //if scanItems length is 0\r\n else if (this.state.scanItems.length == 0) {\r\n this.refs.Messchild.showWarn(\"Scan First\");\r\n return;\r\n } else {\r\n let formData = {\r\n DealerId: this.props.DealerId,\r\n SONo: this.state.SONumber,\r\n scanned: this.state.scanItems,\r\n };\r\n // if old stock is greater than 0\r\n if (this.state.isold) {\r\n //open Dialog to add remark\r\n this.setState({\r\n remarkVisible: true,\r\n needtoSaveDispatch: formData,\r\n });\r\n } else {\r\n this.SaveDispatch(formData);\r\n }\r\n }\r\n }\r\n\r\n submitRemark(event) {\r\n event.preventDefault();\r\n let formD = { ...this.state.needtoSaveDispatch };\r\n formD.Remark = this.state.Remark;\r\n this.SaveDispatch(formD);\r\n }\r\n\r\n SaveDispatch(formData) {\r\n this.setState({ scanItemLoader: false, Download: true });\r\n this.props.createDispatch(formData);\r\n setTimeout(() => {\r\n this.setState({\r\n scanItems: [],\r\n scanDisp: [],\r\n SendTo: [],\r\n //KREP-55\r\n remarkVisible: false,\r\n needtoSaveDispatch: \"\",\r\n radio: false,\r\n Download: false,\r\n });\r\n this.GetDispatch();\r\n }, 3000);\r\n }\r\n\r\n // get active carton drop down list\r\n // GetActiveUsers() {\r\n // this.props.UserDDL.filter((data) => {\r\n // const resdata = data.data;\r\n // //if ResponseCode is 200 UserDDL state will be set to ResponseData\r\n // if (resdata !== null && resdata.ResponseCode === \"200\") {\r\n // const Dealer = (resdata.ResponseData).filter((x) => x.UserType == 1);\r\n // this.setState({\r\n // SelectedDDL: Dealer,\r\n // warehouseVisible: true,\r\n // });\r\n // this.setState({\r\n // UserDDL: resdata.ResponseData,\r\n // });\r\n // }\r\n // });\r\n // }\r\n getDropValueOfUser() {\r\n let User = \"\";\r\n this.props.Userdataa.filter((x) => {\r\n if (x.value === this.props.Userdataa) {\r\n User = x.label;\r\n }\r\n });\r\n return User;\r\n }\r\n\r\n // scan qr code\r\n ScanItem(e) {\r\n if (e.key === \"Enter\") {\r\n let qr = e.target.value;\r\n qr = qr.toString().trim();\r\n if (\r\n this.state.SONo.length == 0 ||\r\n this.props.SODetails == (undefined || null)\r\n ) {\r\n this.refs.Messchild.showWarn(\"Enter Sales Order Number\");\r\n return;\r\n } else if (qr.includes(\"TID\") || qr.includes(\"SID\")) {\r\n this.setCartonDetails(qr, true);\r\n } else {\r\n this.refs.Messchild.showWarn(\"Invalid Scan\");\r\n this.props.warning(true);\r\n }\r\n this.setState({\r\n scanTxt: \"\",\r\n });\r\n }\r\n }\r\n\r\n // set tertiary details in grid\r\n\r\n setCartonDetails(qr, checkItemDate) {\r\n let id = 1;\r\n this.state.scanItems.forEach((element) => {\r\n if (element.CartonId == qr) {\r\n this.props.alreadyPacked(true);\r\n this.refs.Messchild.showWarn(\"Already Scanned..!\");\r\n id = 2;\r\n return;\r\n }\r\n });\r\n\r\n // setTimeout(() => {\r\n if (id == 1) {\r\n this.props.GetTertiaryPackingScan(\r\n qr,\r\n checkItemDate,\r\n this.state.scanItems\r\n );\r\n //.then((data) => {\r\n setTimeout(() => {\r\n const resdata = this.props.TertiaryscanItems;\r\n let _scanList = [];\r\n let _scanDisp = [];\r\n //const resdata = data.data;\r\n //if ResponseCode is 200 else will move to 'else statement'\r\n if (resdata && resdata !== null && resdata.ResponseCode === \"200\") {\r\n //disable\r\n var ProdData = resdata.ResponseData.map((d) => {\r\n return {\r\n ProductId: d.ProductId,\r\n PQty: d.PQty,\r\n };\r\n });\r\n\r\n var contains = false;\r\n\r\n const result = ProdData.map(({ ProductId, PQty }) => ({\r\n contains: this.state.OrderInfos.some(\r\n (item) =>\r\n item.ProductId.toString() === ProductId.toString() &&\r\n item.RemainingQty >= PQty\r\n ),\r\n }));\r\n\r\n const containsExtraProducts = result.some(\r\n (item) => item.contains == false\r\n );\r\n\r\n if (!containsExtraProducts) {\r\n this.state.OrderInfos.forEach((val) => {\r\n ProdData.forEach((i) => {\r\n if (\r\n i.ProductId.toString() == val.ProductId.toString() &&\r\n val.RemainingQty >= i.PQty\r\n ) {\r\n contains = true;\r\n val.AddedQty = val.AddedQty + i.PQty;\r\n val.RemainingQty = val.RemainingQty - i.PQty;\r\n }\r\n });\r\n });\r\n }\r\n\r\n if (contains && !containsExtraProducts) {\r\n resdata.ResponseData.forEach((element) => {\r\n element.MFGDate =\r\n element.MFGDate != null || undefined\r\n ? element.MFGDate.substring(0, 10)\r\n : element.MFGDate;\r\n element.EXPDate =\r\n element.EXPDate != null || undefined\r\n ? element.EXPDate.substring(0, 10)\r\n : element.EXPDate;\r\n\r\n if (this.state.scanItems.length > 0) {\r\n let check = this.state.scanItems.filter(\r\n (y) =>\r\n y.Id == element.Id &&\r\n y.ProductId == element.ProductId &&\r\n y.MFGDate == element.MFGDate &&\r\n y.EXPDate == element.EXPDate\r\n );\r\n\r\n if (check.length > 0) {\r\n this.refs.Messchild.showWarn(\"already Scanned\");\r\n }\r\n }\r\n\r\n this.state.scanItems.push(element);\r\n //this.state.scanItems.push(element);\r\n if (this.state.scanDisp.length > 0) {\r\n let checkseqNo = this.state.scanDisp.filter(\r\n (y) => y.CartonId == element.CartonId\r\n );\r\n\r\n if (checkseqNo.length > 0) {\r\n return;\r\n }\r\n }\r\n\r\n this.state.scanDisp.push(element);\r\n //this.state.scanDisp.push(element);\r\n });\r\n // if (_scanList && _scanList.length > 0) {\r\n // _scanList.forEach((scnItem) => {\r\n // this.state.scanItems.push(scnItem);\r\n // });\r\n // }\r\n\r\n // if (_scanDisp && _scanDisp.length > 0) {\r\n // _scanDisp.forEach((scnItem) => {\r\n // this.state.scanDisp.push(scnItem);\r\n // });\r\n // }\r\n this.setState({\r\n scanItems: this.state.scanItems,\r\n scanTxt: \"\",\r\n radio: true,\r\n //scanDisp: _scanDisp\r\n });\r\n } else {\r\n if (containsExtraProducts) {\r\n this.props.warning(true);\r\n this.refs.Messchild.showWarn(\r\n \"This Carton contains some extra products which are not part of this order\"\r\n );\r\n } else if (!contains) {\r\n this.props.warning(true);\r\n this.refs.Messchild.showWarn(\r\n \"This Carton contains some extra products which are not part of this order\"\r\n );\r\n }\r\n }\r\n } else if (\r\n resdata &&\r\n resdata !== null &&\r\n resdata.ResponseCode === \"500\"\r\n ) {\r\n let checkseqNo = [];\r\n resdata.ResponseData.forEach((element) => {\r\n if (this.state.scanItems.length > 0) {\r\n let chk = this.state.scanItems.filter(\r\n (y) => y.CartonId == element.CartonId\r\n );\r\n if (chk.length != 0) {\r\n checkseqNo.push(chk);\r\n }\r\n if (checkseqNo.length == resdata.ResponseData.length) {\r\n this.setCartonDetails(qr, false);\r\n return;\r\n }\r\n }\r\n });\r\n /// will show list and input yes or no\r\n ///this.refs.Messchild.showWarn(resdata.ResponseMessage);\r\n // if no\r\n //resolved KREP-132,KREP-121(CR)\r\n if (\r\n checkseqNo == undefined ||\r\n checkseqNo.length != resdata.ResponseData.length\r\n ) {\r\n // confirmAlert({\r\n // title: resdata.ResponseMessage,\r\n // message: 'Are you sure you want to continue scanning the latest stock.',\r\n // buttons: [\r\n // {\r\n // label: 'Yes',\r\n // onClick: () => {\r\n // this.setCartonDetails(qr, false)\r\n // this.setState({ isold: true })\r\n // }\r\n // },\r\n // {\r\n // label: 'No',\r\n // onClick: () => {\r\n // let olddata = [];\r\n // (resdata.ResponseData).forEach(e1 => {\r\n // let scanned\r\n // (this.state.scanItems).forEach(e2 => {\r\n // if (e1.CartonId == e2.CartonId) {\r\n // scanned = 1\r\n // }\r\n // });\r\n // if (scanned == undefined) {\r\n // e1.EXPDate = (e1.EXPDate != null || undefined) ? e1.EXPDate.substring(0, 10) : e1.EXPDate\r\n // olddata.push(e1)\r\n // }\r\n // });\r\n // this.setState({\r\n // olderstockVisible: true,\r\n // olderdata: olddata\r\n // })\r\n // }\r\n // }\r\n // ]\r\n // });\r\n }\r\n } else {\r\n this.refs.Messchild.showWarn(resdata.ResponseMessage);\r\n }\r\n }, 1000);\r\n //});\r\n }\r\n // }, 50);\r\n }\r\n // delete user data\r\n deleteScanned(TertiaryCartonId) {\r\n var ProdData = this.state.scanItems.map((d) => {\r\n if (d.CartonId == TertiaryCartonId) {\r\n return {\r\n ProductId: d.ProductId,\r\n PQty: d.PQty,\r\n };\r\n }\r\n });\r\n\r\n this.state.OrderInfos.forEach((val) => {\r\n ProdData.forEach((i) => {\r\n if (\r\n i &&\r\n i.ProductId.toString() == val.ProductId.toString() &&\r\n val.RemainingQty >= i.PQty\r\n ) {\r\n val.AddedQty = val.AddedQty - i.PQty;\r\n val.RemainingQty = val.RemainingQty + i.PQty;\r\n }\r\n });\r\n });\r\n\r\n let arrayfilter = this.state.scanItems.filter(\r\n (x) => x.CartonId != TertiaryCartonId\r\n );\r\n\r\n this.setState({\r\n scanItems: arrayfilter,\r\n });\r\n let array = this.state.scanDisp.filter(\r\n (x) => x.CartonId != TertiaryCartonId\r\n );\r\n\r\n this.setState({\r\n scanDisp: array,\r\n });\r\n }\r\n\r\n GetWareHouse(compId) {\r\n this.WareHouseMaterService.GetWareHouseDDL(compId).then((data) => {\r\n const resdata = data.data;\r\n //if ResponseData is not null\r\n if (\r\n resdata !== null &&\r\n resdata.ResponseData !== null &&\r\n resdata.ResponseData.length > 0\r\n ) {\r\n const filteredWareHouse = resdata.ResponseData.filter(\r\n (x) => x.ID != this.ApiService.getWareHouseId()\r\n );\r\n\r\n this.setState({\r\n WareHouseFactoryDDL: filteredWareHouse,\r\n });\r\n }\r\n });\r\n }\r\n\r\n // seach table\r\n searchFilter(e) {\r\n this.setState({\r\n loading: true,\r\n });\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.GetDispatch();\r\n }\r\n\r\n callbackFunction = (childData) => {\r\n this.setState({ message: childData });\r\n };\r\n\r\n onValueChange(event) {\r\n const val = event.target.value;\r\n if (val == \"Dealer\") {\r\n const Dealer = this.state.UserDDL.filter((x) => x.UserType == 2);\r\n this.setState({\r\n SelectedDDL: Dealer,\r\n warehouseVisible: true,\r\n });\r\n }\r\n if (val == \"Distributor\") {\r\n const Distributor = this.state.UserDDL.filter((x) => x.UserType == 1);\r\n\r\n this.setState({\r\n SelectedDDL: Distributor,\r\n warehouseVisible: true,\r\n });\r\n }\r\n if (val == \"WareHouse\") {\r\n const wareHouse = this.state.WareHouseFactoryDDL.filter(\r\n (x) => x.IsFactory == 0\r\n );\r\n this.setState({\r\n wareHouseDDL: wareHouse,\r\n });\r\n\r\n this.setState({\r\n warehouseVisible: false,\r\n });\r\n }\r\n\r\n if (val == \"Factory\") {\r\n const fact = this.state.WareHouseFactoryDDL.filter(\r\n (x) => x.IsFactory == 1\r\n );\r\n this.setState({\r\n wareHouseDDL: fact,\r\n warehouseVisible: false,\r\n });\r\n }\r\n }\r\n\r\n //To fetch Sales Order Number Details\r\n fetchSODetails(e) {\r\n if (e.key === \"Enter\") {\r\n if (this.state.SONo.length == 0) {\r\n this.refs.Messchild.showWarn(\"Enter Sales Order Number\");\r\n return;\r\n } else {\r\n this.props.fetchSODetails(e.target.value);\r\n setTimeout(() => {\r\n this.setState({\r\n DispatchDetails: this.props.SODetails,\r\n });\r\n let value = this.props.SODetails;\r\n if (value && value.ResponseData != null) {\r\n this.state.bill_Address1 = value.ResponseData.Bill_Address;\r\n this.state.bill_Pincode = value.ResponseData.Bill_Pincode;\r\n this.state.bill_Country = value.ResponseData.Bill_Country;\r\n this.state.bill_State = value.ResponseData.Bill_State;\r\n this.state.bill_City = value.ResponseData.Bill_City;\r\n this.state.ship_Address1 = value.ResponseData.Ship_Address;\r\n this.state.ship_Pincode = value.ResponseData.Ship_Pincode;\r\n this.state.ship_Country = value.ResponseData.Ship_Country;\r\n this.state.ship_State = value.ResponseData.Ship_State;\r\n this.state.ship_City = value.ResponseData.Ship_City;\r\n this.setState({\r\n DealerCode: value.ResponseData.DealerCode,\r\n DealerId: value.ResponseData.DealerId,\r\n DealerName: value.ResponseData.DealerName,\r\n GstNo: value.ResponseData.GstNo,\r\n OrderBookingNo: value.ResponseData.OrderBookingNo,\r\n SONumber: value.ResponseData.SONumber,\r\n eventBlock: true,\r\n OrderInfos: value.ResponseData.OrderInfos,\r\n });\r\n } else {\r\n //this.refs.Messchild.showWarn(\"Invalid Number\");\r\n }\r\n }, 2000);\r\n }\r\n }\r\n }\r\n\r\n // disabled checkbox\r\n activeTemplate(rowData, column) {\r\n return ;\r\n }\r\n\r\n // Sort table\r\n onSort(event) {\r\n this.setState({\r\n sortOrder: this.state.sortOrder === 1 ? 2 : 1,\r\n sortIcon: !this.state.sortIcon,\r\n });\r\n const sortField =\r\n event.sortField == \"CreatedDt\" ? \"CreatedDt\" : event.sortField;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\";\r\n this.GetDispatch();\r\n const clickData = document.getElementsByClassName(\r\n \"p-sortable-column-icon pi pi-fw pi-sort\"\r\n );\r\n ////console.log(event);\r\n }\r\n\r\n // edit form\r\n actionTemplate(rowData, column) {\r\n const deleteFunc = () => {\r\n confirmAlert({\r\n title: \"Confirm to delete\",\r\n message: \"Are you sure to do this.\",\r\n buttons: [\r\n {\r\n label: \"Yes\",\r\n onClick: () => this.deleteScanned(rowData.CartonId),\r\n },\r\n {\r\n label: \"No\",\r\n onClick: () => null,\r\n },\r\n ],\r\n });\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n\r\n // create html part\r\n render() {\r\n const items = [{ label: \"Transaction\" }, { label: \"Dispatch\" }];\r\n\r\n const home = { icon: \"pi pi-home\", url: \"/dashboard\" };\r\n let header = (\r\n
    \r\n
    \r\n
    \r\n \r\n this.setState({ globalFilter: e.target.value })}\r\n placeholder=\"Global Search\"\r\n size=\"30\"\r\n />\r\n \r\n
    \r\n
    \r\n );\r\n\r\n let header2 = (\r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n );\r\n\r\n return (\r\n
    \r\n
    \r\n <>\r\n \r\n \r\n\r\n
    \r\n\r\n
    \r\n

    Dispatch

    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n {\r\n this.handleChange(e);\r\n }}\r\n name=\"SONo\"\r\n value={this.state.SONo}\r\n type=\"search\"\r\n className=\"form-control\"\r\n id=\"SONo\"\r\n onKeyDown={(e) => {\r\n this.fetchSODetails(e);\r\n }}\r\n />\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n {\r\n this.handleChange(e);\r\n }}\r\n name=\"scanTxt\"\r\n value={this.state.scanTxt}\r\n type=\"search\"\r\n className=\"form-control\"\r\n id=\"scanTxt\"\r\n onKeyDown={(e) => {\r\n this.ScanItem(e);\r\n }}\r\n />\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n\r\n
    \r\n {/*
    \r\n
    \r\n \r\n {\r\n this.handleChange(e);\r\n }}\r\n name=\"SONo\"\r\n value={this.state.SONo}\r\n type=\"search\"\r\n className=\"form-control ml-2\"\r\n id=\"SONo\"\r\n onKeyDown={(e) => {\r\n this.fetchSODetails(e);\r\n }}\r\n />\r\n
    \r\n\r\n
    \r\n \r\n {\r\n this.handleChange(e);\r\n }}\r\n name=\"scanTxt\"\r\n value={this.state.scanTxt}\r\n type=\"search\"\r\n className=\"form-control ml-2\"\r\n id=\"scanTxt\"\r\n onKeyDown={(e) => {\r\n this.ScanItem(e);\r\n }}\r\n />\r\n
    \r\n\r\n \r\n
    */}\r\n
    \r\n
    \r\n \r\n

    Sales Order Details

    \r\n
    \r\n
    \r\n \r\n  \r\n {this.state.DealerCode}\r\n
    \r\n
    \r\n \r\n  \r\n {this.state.OrderBookingNo}\r\n
    \r\n
    \r\n \r\n  \r\n {this.state.SONumber}\r\n
    \r\n {/*
    \r\n \r\n  \r\n {this.state.DealerName}\r\n
    */}\r\n {/*
    \r\n \r\n  \r\n {this.state.GstNo}\r\n
    */}\r\n
    \r\n {/*

    Billing Address

    \r\n
    \r\n
    \r\n \r\n  \r\n {this.state.bill_Address1}\r\n
    \r\n
    \r\n \r\n  \r\n {this.state.bill_City}\r\n
    \r\n
    \r\n \r\n  \r\n {this.state.bill_State}\r\n
    \r\n
    \r\n \r\n  \r\n {this.state.bill_Country}\r\n
    \r\n
    \r\n \r\n  \r\n {this.state.bill_Pincode}\r\n
    \r\n
    \r\n */}\r\n
    \r\n
    \r\n\r\n
    \r\n \r\n

    Order Info

    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n {/* */}\r\n \r\n \r\n {/* */}\r\n \r\n {/* \r\n */}\r\n \r\n \r\n\r\n
    \r\n \r\n Submit\r\n \r\n
    \r\n \r\n \r\n
    \r\n {/* */}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n TertiaryscanItems: state.TertiaryPacking.TertiaryscanItems,\r\n Userdataa: state.RedemptionApproval.Userdataa,\r\n SODetails: state.Dispatch.SODetails,\r\n DealerId: state.Dispatch.dealerId,\r\n Dispatch: state.Dispatch.Dispatch,\r\n DispatchData: state.Dispatch.items,\r\n IsDownload: state.Dispatch.isDownload,\r\n // Issueseries: state.Dispatch.Issueseries,\r\n // MaxFromNo: state.Dispatch?.issueData?.ToNo == (null || undefined) ? 1 : (state.Dispatch?.issueData?.ToNo) + 1,\r\n // showDialog: state.Dispatch.showDialog,\r\n // showDialogue: state.Dispatch.showDialogue,\r\n // loading: state.company.loding\r\n warningAudio: state.secondaryPacking?.warning,\r\n alreadyPackedAudio: state.secondaryPacking?.alreadyPacked,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n GetTertiaryPackingScan: (qr, flag, scannedItem) =>\r\n dispatch(\r\n TertiaryPackingActions.GetTertiaryPackingScan(qr, flag, scannedItem)\r\n ),\r\n fetchApi: (obj) => {\r\n dispatch(DispatchActions.getAll(obj));\r\n },\r\n fetchSODetails: (SONo) => {\r\n dispatch(DispatchActions.fetchSODetails(SONo));\r\n },\r\n fetchProductApi: (obj) => {\r\n dispatch(productMasterActions.getProductName(obj));\r\n },\r\n getToNumber: () => {\r\n dispatch(DispatchActions.GetToNo());\r\n },\r\n UserData: (data) => dispatch(RedemptionApprovalActions.UserData(data)),\r\n createDispatch: (machine) =>\r\n dispatch(DispatchActions.CreateDispatch(machine)),\r\n updateDispatch: (machine) =>\r\n dispatch(DispatchActions.updateDispatch(machine)),\r\n onHideShow: (isbool) => dispatch(DispatchActions.onHideShow(isbool)),\r\n onHideShoww: (isbool) => dispatch(DispatchActions.onHideShoww(isbool)),\r\n getPrdctDDL: () => dispatch(productMasterActions.getPrdctDDL()),\r\n loadingData: (isLoding) => dispatch(DispatchActions.loadingData(isLoding)),\r\n warning: (bool) => dispatch(DispatchActions.warning(bool)),\r\n alreadyPacked: (bool) => dispatch(DispatchActions.alreadyPacked(bool)),\r\n };\r\n};\r\nexport default connect(mapStateToProps, mapDispatchToProps)(NDispatch);\r\n","\r\nimport React, { Component } from \"react\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport { Calendar } from \"primereact/calendar\";\r\nimport { connect } from \"react-redux\";\r\nimport tableRequest from \"../../models/tableRequest.js\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { Button } from \"primereact/button\";\r\nimport CsvDownloader from \"react-csv-downloader\";\r\nimport { CSVLink } from \"react-csv\";\r\nimport { alertActions, WarrantyRegistrationReportActions } from \"../../actions\";\r\n\r\nclass WarrantyClaim extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n this.onPage = this.onPage.bind(this);\r\n this.onSort = this.onSort.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.FilterData = this.FilterData.bind(this);\r\n this.searchFilter = this.searchFilter.bind(this);\r\n this.state = {\r\n IsAdd: true,\r\n IsEdit: true,\r\n loading: false,\r\n FromDate: new Date(),\r\n ToDate: new Date(),\r\n first: 0,\r\n rows: 5,\r\n totalRecords: 0,\r\n globalFilter: null,\r\n visible: false,\r\n sortOrder: \"\",\r\n datalist: [],\r\n };\r\n }\r\n componentDidMount() {\r\n var date = new Date();\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() - 7);\r\n this.tblResponse.FromDate = date.toLocaleDateString();\r\n this.tblResponse.ToDate = new Date().toLocaleDateString();\r\n this.setState({\r\n FromDate: date,\r\n ToDate: new Date(),\r\n });\r\n this.props.fetchApi(this.tblResponse);\r\n // this.props.exportingData(this.tblResponse);\r\n }\r\n\r\n onChange = (date) => this.setState({ FromDate: \"\", ToDate: \"\" });\r\n\r\n // GetVerification()\r\n // {\r\n // let ToDt = new Date();\r\n // let FrmDt = new Date();\r\n // FrmDt.setDate(ToDt.getDate() - 7);\r\n\r\n // const myFmDt = this.getCurrentDateYYYYMMDD(FrmDt);\r\n // const myToDt = this.getCurrentDateYYYYMMDD(ToDt);\r\n\r\n // this.tblResponse.FromDate =this.state.FromDate;\r\n // this.tblResponse.ToDate = this.state.ToDate;\r\n // this.props.fetchApi(this.tblResponse);\r\n // }\r\n FilterData() {\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n getCurrentDateYYYYMMDD(dt) {\r\n var dd = String(dt.getDate()).padStart(2, \"0\");\r\n var mm = String(dt.getMonth() + 1).padStart(2, \"0\");\r\n var yyyy = dt.getFullYear();\r\n\r\n dt = yyyy + \"/\" + mm + \"/\" + dd;\r\n return dt;\r\n }\r\n\r\n handleChange(event) {\r\n const { name, value } = event.target;\r\n switch (name) {\r\n case \"FromDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n // this.refs.Messchild.showError(\"Please select from date.\");\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select from date.\",\r\n life: 3000,\r\n });\r\n\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (value instanceof Date && this.state.ToDate instanceof Date) {\r\n const startDate = value;\r\n const endDate = this.state.ToDate;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"From date must be less than to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"From date must be less than to date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n case \"ToDate\":\r\n if (value === null || !(value instanceof Date)) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please select to date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please select to date.\");\r\n return;\r\n } else if (\r\n !value.toLocaleDateString().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/)\r\n ) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"Please enter only date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"Please enter only date.\");\r\n return;\r\n } else if (\r\n value instanceof Date &&\r\n this.state.FromDate instanceof Date\r\n ) {\r\n const startDate = this.state.FromDate;\r\n const endDate = value;\r\n if (!(Date.parse(startDate) <= Date.parse(endDate))) {\r\n this.formIsValid = false;\r\n this.toast.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: \"To date must be greater than from date.\",\r\n life: 3000,\r\n });\r\n // this.refs.Messchild.showError(\"To date must be greater than from date.\");\r\n return;\r\n }\r\n }\r\n\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n this.setState({ [name]: value });\r\n }\r\n\r\n //to lazy load\r\n getLazyLoadingValues(event) {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter ? event.globalFilter : \"\";\r\n //this.tblResponse.SortColumn = event.sortField;\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? \"ASC\" : \"DESC\";\r\n this.tblResponse.FromDate = this.state.FromDate;\r\n this.tblResponse.ToDate = this.state.ToDate;\r\n }\r\n\r\n onPage(event) {\r\n this.props.loadingData(true);\r\n //imitate delay of a backend call\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n handleProductName(rowData) {\r\n if (rowData.ProductName == null) {\r\n let list;\r\n list = rowData.QrData;\r\n return list;\r\n } else {\r\n return rowData.ProductName;\r\n }\r\n }\r\n\r\n //to search\r\n searchFilter(e) {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n //to sort\r\n onSort(event) {\r\n this.props.loadingData(true);\r\n this.setState({ sortOrder: this.state.sortOrder === 1 ? 2 : 1 });\r\n const sortField =\r\n event.multiSortMeta[0].field === \"CreatedDate\"\r\n ? \"CreatedDt\"\r\n : event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField ? sortField : \"\";\r\n this.tblResponse.SortOrder = this.state.sortOrder === 1 ? \"DESC\" : \"ASC\"; //this.state.sortOrder === 1 ? 'DESC' : 'ASC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.warrantyList) {\r\n if (prevProps.warrantyList !== this.props.warrantyList) {\r\n // this.props.myProp has a different value\r\n if (this.props.warrantyList) {\r\n var e = this.props.warrantyList;\r\n this.setState({\r\n totalRecords: e[0].TotalRows,\r\n });\r\n }\r\n }\r\n } else {\r\n if (this.state.totalRecords !== 0)\r\n this.setState({\r\n totalRecords: 0,\r\n first: 0,\r\n });\r\n }\r\n }\r\n actionBodyTemplate = (rowData) => {\r\n const claimWarranty = () => {\r\n // Call the claimWarranty action and pass the WarrantyId\r\n this.props.claimWarranty(rowData.WarrantyId, true);\r\n setTimeout(() => {\r\n this.props.fetchApi(this.tblResponse);\r\n }, 1000);\r\n };\r\n \r\n return (\r\n \r\n );\r\n };\r\n\r\n\r\n render() {\r\n return (\r\n
    \r\n {/* */}\r\n (this.toast = el)} />\r\n
    \r\n
    \r\n

    Warranty Claim Approval

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n Submit\r\n \r\n  \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n {\r\n this.dt = el;\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* */}\r\n\r\n { event.stopPropagation() }}\r\n header=\"Action\"\r\n body={this.actionBodyTemplate}\r\n style={{ width: '14%' }}\r\n >\r\n \r\n\r\n
    \r\n
    \r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n warrantyList: state.warranty.items,\r\n List:\r\n state.warranty.exportitems == undefined\r\n ? []\r\n : state.warranty.exportitems,\r\n loading: state.warranty.loding,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchApi: (obj) => {\r\n dispatch(WarrantyRegistrationReportActions.getAllclaim(obj));\r\n },\r\n claimWarranty: (WarrantyId, isActive) =>\r\n dispatch(WarrantyRegistrationReportActions.claimWarranty(WarrantyId, isActive)),\r\n loadingData: (isLoding) =>\r\n dispatch(WarrantyRegistrationReportActions.loadingData(isLoding)),\r\n exportingData: (obj) => dispatch(WarrantyRegistrationReportActions.exportData(obj)),\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(WarrantyClaim);\r\n","import React, { Component } from 'react';\r\nimport { connect } from 'react-redux';\r\nimport { ProgressSpinner } from 'primereact/progressspinner';\r\nimport { DataTable } from 'primereact/datatable';\r\nimport { Column } from 'primereact/column';\r\nimport { Button } from 'primereact/button';\r\nimport { InputText } from 'primereact/inputtext';\r\nimport { Dialog } from 'primereact/dialog';\r\nimport MenuItem from '@material-ui/core/MenuItem';\r\nimport FormControl from '@material-ui/core/FormControl';\r\nimport Select from '@material-ui/core/Select';\r\nimport InputLabel from '@material-ui/core/InputLabel';\r\nimport { ToastContainer } from 'react-toastify';\r\nimport { GiftGenerateActions } from '../../actions/GiftGenerateActions';\r\nimport { GiftMasterActions } from '../../actions/GiftMasterAction';\r\nimport tableRequest from '../../models/tableRequest';\r\n\r\nclass GiftGenerate extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.tblResponse = new tableRequest();\r\n\r\n this.state = {\r\n selectedQuarter: '',\r\n FindselectedQuarter: '',\r\n searchTerm: '',\r\n loading: false,\r\n formError: {\r\n QuarterName: '',\r\n },\r\n totalRecords: 0,\r\n rows: 10,\r\n first: 0,\r\n globalFilter: '',\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n const userPages = sessionStorage.getItem('assignedPermissionsForUser');\r\n if (userPages) {\r\n const assignedPermissions = JSON.parse(userPages);\r\n const pageName = window.location.pathname.split('/').pop();\r\n\r\n const obj = assignedPermissions.assigned.filter(x => x.ActionName === pageName);\r\n if (obj && obj.length > 0) {\r\n this.setState({\r\n IsEdit: obj[0].IsEdit,\r\n IsAdd: obj[0].IsAdd,\r\n });\r\n }\r\n }\r\n\r\n this.props.fetchApi(this.tblResponse);\r\n this.props.GetQuarterDDl();\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.SchememappingData !== prevProps.SchememappingData) {\r\n const e = this.props.SchememappingData;\r\n this.setState({\r\n totalRecords: e && e[0] ? e[0].TotalRows : 0,\r\n });\r\n }\r\n }\r\n\r\n submitForm = (e) => {\r\n e.preventDefault();\r\n\r\n const user = JSON.parse(sessionStorage.getItem(\"user\"));\r\n const userId = user ? user.UserId : null;\r\n\r\n // Validate quarter selection\r\n if (!this.state.selectedQuarter) {\r\n this.setState({\r\n formError: { ...this.state.formError, QuarterName: 'Quarter is required.' }\r\n });\r\n return;\r\n }\r\n\r\n // Show loader during the submission\r\n this.setState({ loading: true });\r\n\r\n const formData = {\r\n QuarterName: this.state.selectedQuarter,\r\n CreatedBy: userId\r\n };\r\n\r\n // Simulating form submission with a timeout\r\n setTimeout(() => {\r\n // Replace this with actual submission logic\r\n this.props.createRedemption(formData);\r\n this.setState({ loading: false });\r\n\r\n }, 4000); // Simulate a 3-second delay for API call\r\n this.resetForm();\r\n setTimeout(() => {\r\n this.props.fetchApi(this.tblResponse);\r\n }, 6000);\r\n\r\n\r\n };\r\n\r\n resetForm = () => {\r\n this.setState({\r\n selectedQuarter: '',\r\n FindselectedQuarter: '',\r\n formError: {\r\n QuarterName: '',\r\n FindselectedQuarter: '',\r\n }\r\n });\r\n }\r\n\r\n handleQuarterChange = (e) => {\r\n const selectedQuarter = e.target.value;\r\n this.setState({ FindselectedQuarter: selectedQuarter }, () => {\r\n // Make the API call with the selected quarter value\r\n this.getFilteredData(selectedQuarter);\r\n });\r\n };\r\n\r\n\r\n getFilteredData = (selectedQuarter) => {\r\n debugger\r\n // Call your API using the selected quarter value\r\n console.log('Fetching data for quarter:', selectedQuarter);\r\n this.props.loadingData(true);\r\n //this.tblResponse.SearchValue = e.target.value;\r\n this.tblResponse.SearchValue = selectedQuarter;\r\n this.props.fetchApi(this.tblResponse);\r\n\r\n };\r\n\r\n\r\n getLazyLoadingValues = (event) => {\r\n this.setState({ rows: event.rows, first: event.first });\r\n this.tblResponse.PageSize = event.rows;\r\n this.tblResponse.First = event.first + 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue = event.globalFilter || \"\";\r\n this.tblResponse.SortOrder = event.sortOrder === 1 ? 'ASC' : 'DESC';\r\n }\r\n\r\n onPage = (event) => {\r\n this.props.loadingData(true);\r\n setTimeout(() => {\r\n this.getLazyLoadingValues(event);\r\n this.props.fetchApi(this.tblResponse);\r\n }, 250);\r\n }\r\n\r\n searchFilter = (e) => {\r\n this.props.loadingData(true);\r\n this.tblResponse.SearchValue = e.target.value;\r\n // this.tblResponse.Quarter = this.state.FindselectedQuarter;\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n onSort = (event) => {\r\n this.props.loadingData(true);\r\n const sortField = event.multiSortMeta[0].field;\r\n this.tblResponse.SortColumn = sortField;\r\n this.tblResponse.SortOrder = event.multiSortMeta[0].order === 1 ? 'ASC' : 'DESC';\r\n this.props.fetchApi(this.tblResponse);\r\n }\r\n\r\n onHide = () => {\r\n this.props.onHideShow(false);\r\n this.resetForm();\r\n }\r\n\r\n openDialog = () => {\r\n this.props.onHideShow(true);\r\n }\r\n\r\n render() {\r\n const header = (\r\n
    \r\n
    \r\n

    Generated Gifts

    \r\n
    \r\n
    \r\n \r\n \r\n \r\n {/* */}\r\n \r\n
    \r\n \r\n \r\n Quarter\r\n \r\n \r\n {this.state.formError.FindselectedQuarter &&

    {this.state.formError.FindselectedQuarter}

    }\r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n );\r\n\r\n return (\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    Gift Generator
    \r\n
    \r\n
    \r\n \r\n Quarter\r\n \r\n \r\n {this.state.formError.QuarterName &&

    {this.state.formError.QuarterName}

    }\r\n
    \r\n
    \r\n \r\n {this.state.loading ? (\r\n \r\n ) : (\r\n ''\r\n )}\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => ({\r\n TableData: state.GiftGenerate.TableData,\r\n quarterDDL: state.GiftMaster.quarterDDL,\r\n showDialogue: state.GiftGenerate.showDialogue,\r\n loading: state.GiftGenerate.loading,\r\n});\r\n\r\nconst mapDispatchToProps = (dispatch) => ({\r\n fetchApi: (obj) => dispatch(GiftGenerateActions.getAll(obj)),\r\n GetQuarterDDl: () => dispatch(GiftMasterActions.QuarterDDL()),\r\n createRedemption: (data) => dispatch(GiftGenerateActions.createRedemption(data)),\r\n onHideShow: (isbool) => dispatch(GiftGenerateActions.onHideShow(isbool)),\r\n loadingData: (isLoading) => dispatch(GiftGenerateActions.loadingData(isLoading)),\r\n});\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(GiftGenerate);\r\n","import React, { Component } from \"react\";\r\nimport Header from \"./Header\";\r\nimport Footer from \"./Footer\";\r\nimport Sidebar from \"./Sidebar\";\r\nimport { BrowserRouter as Router, Switch, Route } from \"react-router-dom\";\r\nimport Dashboard from \"./../views/Dashboard\";\r\nimport About from \"./../views/About\";\r\nimport CompanyMaster from \"./../components/masters/companyMaster\";\r\nimport OrderBooking from \"./../components/masters/OrderBooking\";\r\nimport userApproval from \"./../components/masters/userApproval\";\r\nimport ProductMaster from \"./../components/masters/productMaster\";\r\nimport roleMaster from \"./../components/masters/roleMaster\";\r\nimport CartonMaster from \"../components/masters/cartonMaster\";\r\nimport loyalityscheme from \"./../components/masters/loyalityScheme\";\r\nimport GiftMaster from \"./../components/masters/GiftMaster\";\r\nimport SqlEditor from \"../components/masters/SqlEditor\";\r\nimport Profile from \"./../views/Profile\";\r\nimport IssueNumber from \"../components/mapping/IssueNumber\";\r\nimport Mapping from \"./../components/transactions/Mapping\";\r\nimport DeMapping from \"./../components/transactions/DeMapping\";\r\nimport Damage from \"./../components/transactions/Damage\";\r\nimport UserMaster from \"./../components/masters/userMaster\";\r\nimport VerificationLog from \"./../components/reports/VerificationLog\";\r\nimport MappingRpt from \"./../components/reports/MappingRpt\";\r\nimport DemappingRpt from \"./../components/reports/DemappingRpt\";\r\nimport DamageRpt from \"../components/reports/DamageRpt\";\r\nimport LoyaltySchemeRpt from \"./../components/reports/LoyaltySchemeRpt\";\r\nimport FeedbackRpt from \"./../components/reports/FeedbackRpt\";\r\nimport ProductConfiguration from \"../components/masters/ProductConfiguration\";\r\nimport RedemptionApproval from \"../components/transactions/RedemptionApproval\";\r\nimport RedemptionLogRpt from \"./../components/reports/RedemptionLogRpt\";\r\nimport UserloyalityLogRpt from \"../components/reports/UserloyalityLogRpt\";\r\nimport SecondaryPacking from \"../components/transactions/SecondaryPacking\";\r\nimport ProductPacking from \"../components/transactions/ProductPacking\";\r\n\r\nimport Dispatch from \"../components/transactions/Dispatch\";\r\n// import OrderDispatch from \"../components/transactions/OrderDispatch\";\r\nimport DispatchReceive from \"../components/transactions/DispatchReceive\";\r\nimport CartonSlip from \"../components/transactions/CartonSlip\";\r\nimport dealerMaster from \"./../components/masters/dealerMaster\";\r\nimport SecondaryPackingReport from \"../components/reports/SecondaryPackingReport\";\r\nimport DispatchReport from \"../components/reports/DispatchReport\";\r\n// import OrderDispatchReport from \"../components/reports/OrderDispatchReport\";\r\nimport OrderBookingRpt from \"../components/reports/OrderBookingRpt\";\r\nimport TertiaryPacking from \"../components/transactions/TertiaryPacking\";\r\nimport TertiaryPackingRpt from \"../components/reports/TertiaryPackingRpt\";\r\nimport ProductPurchaseRpt from \"../components/reports/ProductPurchaseRpt\";\r\nimport MRPMaster from \"../components/masters/MRPMaster\";\r\nimport categoryMaster from \"../components/masters/categoryMaster\";\r\nimport QRCodeTrackingRpt from \"../components/reports/QRCodeTrackingRpt\";\r\nimport SliderProMsg from \"../components/masters/SliderProMsg\";\r\nimport SODetails from \"../components/masters/SODetails\";\r\nimport WarrantyRegistrationReport from \"../components/reports/WarrantyRegistrationReport\";\r\nimport WarrantyRejectRegistrationReport from \"../components/reports/WarrantyRejectRegistrationReport\";\r\nimport WarrantyApproval from \"../components/masters/WarrantyApproval\";\r\nimport WarehouseMaster from \"../components/masters/WarehouseMaster\";\r\nimport BinMaster from \"../components/masters/BinMaster\";\r\nimport WarrantyClaim from \"../components/mapping/WarrantyClaim\";\r\nimport WarrantyReapprove from \"../components/mapping/WarrantyReapprove\";\r\nimport New_Dispatch from \"../components/transactions/New_Dispatch\";\r\nimport Warranyrequesclaim from \"../components/mapping/Warranyrequesclaim\";\r\nimport GiftGenerate from \"../components/transactions/GiftGenerate\";\r\n\r\nexport default class Template extends Component {\r\n render() {\r\n return (\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n );\r\n }\r\n}\r\n","import React, { Component } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SliderProMsgActions } from \"../actions\";\r\nimport { Link } from \"react-router-dom\";\r\nimport Slider from \"react-slick\";\r\n\r\n//import \"./HomePage.css\";\r\n\r\nclass HomePage extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n origin: window.location.origin,\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n this.props.fetchSliderApi();\r\n }\r\n render() {\r\n var settings = {\r\n dots: true,\r\n infinite: true,\r\n speed: 500,\r\n height: \"100%\",\r\n slidesToShow: 1,\r\n slidesToScroll: 1,\r\n autoplay: true,\r\n };\r\n return (\r\n <>\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n {\" \"}\r\n Sales@xtrapowertools.com\r\n \r\n \">\r\n +91 124 4000608\r\n {\" \"}\r\n \r\n {\" \"}\r\n Login Now\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n {/* Mobile side bar */}\r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n Login\r\n {\" \"}\r\n
    \r\n
    \r\n

    \r\n \r\n Home\r\n \r\n

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

    \r\n \r\n About\r\n \r\n

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

    \r\n \r\n Product\r\n \r\n

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

    \r\n \r\n Career\r\n \r\n

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

    \r\n \r\n Dealer\r\n \r\n

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

    \r\n \r\n Gallery\r\n \r\n

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

    \r\n \r\n Resources\r\n \r\n

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

    \r\n \r\n Contact Us\r\n \r\n

    \r\n
    \r\n
    \r\n \r\n \r\n {/* end of side bar */}\r\n {/* \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"...\"\r\n
    \r\n
    \r\n \"...\"\r\n
    \r\n
    \r\n \"...\"\r\n
    \r\n
    \r\n \r\n \r\n
    */}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n {\" \"}\r\n \r\n
    \r\n
    \r\n
    \r\n {\" \"}\r\n \r\n
    \r\n
    \r\n
    \r\n {\" \"}\r\n \r\n
    \r\n
    \r\n
    \r\n {\" \"}\r\n \r\n
    \r\n
    \r\n
    \r\n {\" \"}\r\n \r\n
    \r\n
    \r\n
    \r\n {\" \"}\r\n \r\n
    \r\n
    \r\n
    \r\n {\" \"}\r\n \r\n
    \r\n
    \r\n
    {\" \"}\r\n \r\n {\" \"}\r\n \r\n Previous{\" \"}\r\n {\" \"}\r\n \r\n {\" \"}\r\n {\" \"}\r\n Next{\" \"}\r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n {/*
    \r\n
    \r\n
    \r\n
    \r\n

    Discover the Difference

    \r\n

    We take pride in supplying genuine and best-quality products through our extensive network of suppliers. With over 500 channel partners across India, we have emerged as the market leader in supplying world-class power tools, abrasives, accessories, and more.

    \r\n Learn More\r\n
    \r\n
    \r\n
    \r\n
    */}\r\n\r\n {/* partial:index.partial.html */}\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n Discover the Difference\r\n

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

    \r\n

    \r\n We take pride in supplying genuine and best-quality products\r\n through our extensive network of suppliers. With over 500\r\n channel partners across India, we have emerged as the market\r\n leader in supplying world-class power tools, abrasives,\r\n accessories, and more.\r\n

    \r\n \r\n Learn More\r\n \r\n

    \r\n
    \r\n
    \r\n {/* partial */}\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n NEW PRODUCTS\r\n

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

    XPT 587 GASOLINE CONCRETE CUTTER

    \r\n

    \r\n Xtra Power XPT 587 Concrete Cutter is designed for\r\n professional and demanding construction tasks. This\r\n indispensable tool cuts through concrete, brick...\r\n

    \r\n \r\n Learn More\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n

    NEW LINEUP

    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
      \r\n \r\n
    1. \r\n
    \r\n {/* Carousel items */}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n

    XPT 542 ELECTRIC BL..

    \r\n

    \r\n The XPT 542 Electric Blower is a state-of-the-art,\r\n double-insulated electric corded tool,\r\n specifical...\r\n

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

    XTRA POWER X10

    \r\n

    \r\n X10 Diamond Saw Blade is the pinnacle of\r\n cutting-edge technology and robust design for both\r\n professi...\r\n

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

    XPT 554 DRY WALL SA..

    \r\n

    \r\n Designed for those who demand both precision and\r\n efficiency, the XPT 554 Drywall Sander is set to\r\n re...\r\n

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

    XPT 419W MARBLE CUT..

    \r\n

    \r\n Experience unmatched cutting precision with the\r\n XPT 419W Marble Cutter, a powerhouse tool designed\r\n f...\r\n

    \r\n
    \r\n
    \r\n
    \r\n {/*.row*/}\r\n
    \r\n {/*.item*/}\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n

    XPT 544 TRIMMER

    \r\n

    \r\n The XPT 544 trimmer with a no-load speed of 30000\r\n RPM, a collet capacity of 6.35MM, and an input\r\n pow...\r\n

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

    XPT 546 MIXER DRILL

    \r\n

    \r\n The Xtra Power Mixer Drill is a high-performing\r\n and versatile tool, ideal for a variety of mixing\r\n ta...\r\n

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

    XPT 550 CONCRETE VI..

    \r\n

    \r\n The XPT-550 Concrete Vibrator: A Sturdy Solution\r\n for Optimal Concrete Compression This\r\n cutting-edge...\r\n

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

    XPT 547 MIXER DRILL

    \r\n

    \r\n Equipped with a powerful 1200-watt motor, the\r\n XPT-547 delivers an incredible no-load speed of\r\n 900 RP...\r\n

    \r\n
    \r\n
    \r\n
    \r\n {/*.row*/}\r\n
    \r\n {/*.item*/}\r\n
    \r\n {/*.carousel-inner*/}\r\n
    \r\n {/*.Carousel*/}\r\n
    \r\n
    \r\n \r\n\r\n {/* \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    NEW LINEUP

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

    ONE STOP SOLUTION

    */}\r\n

    \r\n HIGH PERFORMANCE TOOLS & ACCESSORIES\r\n

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

    \r\n PRODUCT CATEGORIES\r\n

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

    Diamond Saw Blades

    \r\n {/*

    ...

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

    Sds Drill Bits & Chisels

    \r\n {/*

    ...

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

    Agriculture Machines

    \r\n {/*

    ...

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

    HOUSE OF XTRA POWER

    */}\r\n {/*
    \r\n \"\"\r\n \"\"\r\n \"\"\r\n \"\"\r\n \"\"\r\n \"\"\r\n
    */}\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    POWER TOOLS

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

    Angle Grinder

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

    Marble Cutter

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

    Circular Saw

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

    Router machine

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

    Rotary Hammer

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

    Planers

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

    Trimmer

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

    Sander

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

    Demolition Hammer

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

    Drill Machine

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

    Screw Driver Drill

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

    Wall Chaser

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

    Mixer

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

    Concrete Vibrator

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

    Straight Grinder

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

    Die Grinder

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

    Jig Saw

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

    Blower

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

    TILE TILING MACHINE

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

    Cut Off Machine

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

    Concrete Cutter

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

    Miter Saw

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

    Impact Wrench

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

    Hot Air Gun

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

    Core Drill

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

    Chain Saw Grinder

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

    Chain Saw

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

    Polisher

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

    Tool Kit

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

    Brush Cutter

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

    Earth Auger

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

    Hedge Trimmer

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

    Water Pump

    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n Show More\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n VIEW\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n What our customers say\r\n

    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n {/* Wrapper for slides */}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n

    \r\n {\" \"}\r\n The quality of the products is excellent. Buying\r\n from Xtra Power feels like getting value for\r\n money. The new products that Company Offers are\r\n attractive. The brand name for Heavy duty, XP, is\r\n very appealing. The response of the team is apt\r\n and on time. The team behaves appropriately all\r\n the time.\r\n

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

    \r\n Jitender Kumar\r\n

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

    \r\n Doing business with Xtra Power does not mean being\r\n their dealer; it means being a partner for life.\r\n Their increase in the digital presence daily is\r\n making my life easier, making it easy for me to\r\n explain and show to customers what Xtra Power is\r\n all about. Their excellent logistics team ensures\r\n we get timely delivery every time without any fuss\r\n or hamper in our sales.\r\n

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

    \r\n Awesh Bansal\r\n

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

    \r\n Xtra Power always tries to deliver something extra\r\n to us. The color scheme of products is so unique\r\n and varied that it stands out every time compared\r\n to its competitors. The quality of the packaging\r\n and its combination makes it eye-catching for\r\n every customer.\r\n

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

    \r\n Shabbir Hussain\r\n

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

    \r\n For the past 15 years, I had never thought about\r\n adding more brands to my portfolio since all my\r\n and customers' needs are being satisfied because\r\n of the range of products they maintain. And, I am\r\n sure I won't have to look anywhere else in the\r\n future because that's what means being associated\r\n with Xtra Power.\r\n

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

    \r\n Manish Agarwal \r\n

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

    \r\n {\" \"}\r\n Believing in Xtra Power has changed my life.\r\n Coming to their head office after so many years\r\n and seeing their team functioning as one unit in\r\n sync has left me astonished. Meeting their team\r\n gave me many insights into sales and marketing\r\n strategies that I never thought I could apply to\r\n my business. The overall experience was an eye\r\n opener for me, making me hold them in high regard.\r\n

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

    \r\n Kailash Panda\r\n

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

    \r\n One thing I like about Xtra power is that they\r\n always maintain a wide variety of spare parts and\r\n machine spare parts. This makes it easy to sell to\r\n clients and end consumers without hesitation.\r\n Whenever a problem arises, the team ensures that\r\n all hands are on deck to help us.\r\n

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

    \r\n Vikas Jain\r\n

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

    TESTIMONIALS

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n Jitender Kumar
    \r\n
    \r\n

    The quality of the products is excellent. Buying from Xtra Power feels like getting value for money. The new products that Company Offers are attractive. The brand name for Heavy duty, XP, is very appealing. The response of the team is apt and on time. The team behaves appropriately all the time.

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n Awesh Bansal
    \r\n
    \r\n

    Doing business with Xtra Power does not mean being their dealer; it means being a partner for life. Their increase in the digital presence daily is making my life easier, making it easy for me to explain and show to customers what Xtra Power is all about. Their excellent logistics team ensures we get timely delivery every time without any fuss or hamper in our sales.

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n Shabbir Hussain
    \r\n
    \r\n

    Xtra Power always tries to deliver something extra to us. The color scheme of products is so unique and varied that it stands out every time compared to its competitors. The quality of the packaging and its combination makes it eye-catching for every customer.

    \r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n
    \r\n \r\n
    \r\n Manish Agarwal
    \r\n
    \r\n

    For the past 15 years, I had never thought about adding more brands to my portfolio since all my and customers' needs are being satisfied because of the range of products they maintain. And, I am sure I won't have to look anywhere else in the future because that's what means being associated with Xtra Power.

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n Kailash Panda
    \r\n
    \r\n

    Believing in Xtra Power has changed my life. Coming to their head office after so many years and seeing their team functioning as one unit in sync has left me astonished. Meeting their team gave me many insights into sales and marketing strategies that I never thought I could apply to my business. The overall experience was an eye opener for me, making me hold them in high regard.

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n Vikas Jain
    \r\n
    \r\n

    One thing I like about Xtra power is that they always maintain a wide variety of spare parts and machine spare parts. This makes it easy to sell to clients and end consumers without hesitation. Whenever a problem arises, the team ensures that all hands are on deck to help us.

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

    Upgrade Your Toolbox

    \r\n
    \r\n {\" \"}\r\n {/* Index Main Section */}\r\n
    \r\n
    \r\n
    \r\n {/*
    \r\n
    \r\n \"\"\r\n
    \r\n \r\n
    */}\r\n
    \r\n
    \r\n
    Contact info
    \r\n
      \r\n
    • \r\n Xtra Power\r\n Tools PRIVATE LIMITED\r\n
      \r\n Regd. Office:PLOT NO. 394, UDYOG VIHAR, PHASE III,\r\n
      \r\n GURUGRAM - 122016
      \r\n HARYANA, INDIA\r\n
      \r\n CIN : U28100HR1995PTC088529\r\n
    • \r\n
    • \r\n \r\n +91 124 4000608\r\n
      \r\n +91 8743800144\r\n
    • \r\n
    • \r\n \r\n \r\n For enquiry/Requirement:\r\n Sales@xtrapowertools.com
      {\" \"}\r\n For query/Feedback: care@xtrapowertools.com\r\n
    • \r\n
    \r\n
    \r\n
    \r\n
    Map
    \r\n \r\n
    \r\n
    \r\n
    For Query
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n Submit\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    Follow Us
    \r\n
      \r\n
    • \r\n \r\n \r\n \r\n
    • \r\n
    • \r\n \r\n \r\n \r\n
    • \r\n
    • \r\n \r\n \r\n \r\n
    • \r\n
    • \r\n \r\n \r\n \r\n
    • \r\n
    • \r\n \r\n \r\n \r\n
    • \r\n
    • \r\n \r\n \r\n \r\n
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Disclaimer

    \r\n

    \r\n Despite every effort has been made to provide accurate images of\r\n each product color, design, description, and packaging, but\r\n actual colors, design, description, and packaging may vary\r\n slightly, due to different device screen settings, the lighting\r\n in the installation location, slight differences in product\r\n finishes over time and other factors. Our company will not\r\n accept responsibility for any color or design differences that\r\n are not factory faults. In purchasing from our company, you\r\n agree to accept the small risk that there will be a slight\r\n variation between the actual color, design, size, description,\r\n packing, and the representation on our website/catalog.\r\n

    \r\n
    \r\n
    \r\n Copyright © 2024 | Powered by Xtra Power Tools Private Limited\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n Facebook\r\n \r\n \r\n \r\n Instagram\r\n \r\n \r\n \r\n linkedin\r\n \r\n \r\n \r\n Youtube\r\n \r\n \r\n \r\n Whatsapp\r\n \r\n \r\n \r\n Twitter\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n );\r\n }\r\n}\r\nconst mapStateToProps = (state) => {\r\n return {\r\n data:\r\n state.SliderProMsg.item == (null || undefined)\r\n ? []\r\n : state.SliderProMsg.item,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n fetchSliderApi: () => {\r\n dispatch(SliderProMsgActions.GetSliderImage());\r\n },\r\n };\r\n};\r\nexport default connect(mapStateToProps, mapDispatchToProps)(HomePage);\r\n","import React, { Component } from \"react\";\r\n\r\nexport default class WarrantyTerms extends Component {\r\n render() {\r\n return (\r\n
    \r\n

    TERMS & CONDITIONS (WARRANTY)

    \r\n Congratulations on purchasing XTRA-POWER Power Tools, which are designed\r\n and manufactured with High Quality, Reliability and Safety Standards.\r\n

    In the event of failure of tools due to material &\r\n manufacturing defects, we undertake to repair the power tools (with\r\n reparable & replaceable parts) free of charge within six months from the\r\n date of purchase, subject to the following:\r\n
    Terms & Conditions:
    \r\n
      \r\n
    1. \r\n To be returned to our authorized dealer at his/her own cost and\r\n risk.\r\n
    2. \r\n
    3. The power tool has been purchased from an accredited dealer.
    4. \r\n
    5. \r\n The claim should be referred to one of the authorized dealers along\r\n with the power tool, stamped warranty card and original purchase\r\n valid invoice with GST number.{\" \"}\r\n
    6. \r\n
    7. \r\n The power tool shall be used strictly for intended purpose in\r\n accordance with the user manual.\r\n
    8. \r\n
    \r\n
    The Warranty Does Not Cover:
    \r\n
      \r\n
    1. \r\n Un-authorized repair, alterations/ modification done by other\r\n agencies.\r\n
    2. \r\n
    3. \r\n All wear and tear parts as Carbon brushes, Armatures with heavy\r\n Commutator wear, Bearings, Gear & Pinion, Chucks, O-Rings,\r\n Mechanical Parts, Switch, Pump Unit, Heating Elements etc which are\r\n consumable in nature.\r\n
    4. \r\n
    5. All electronic circuits, Chargers and Batteries.
    6. \r\n
    7. Attachments and accessories provided with the power tool.
    8. \r\n
    9. \r\n Damage caused by foreign objects, external substances, accidents.\r\n
    10. \r\n
    11. Obvious misuse, abuse, neglect and improper application.
    12. \r\n
    13. Improper power supply conditions of voltage and frequency.
    14. \r\n
    15. All gasoline tools except manufacturing defects.
    16. \r\n
    \r\n These terms only cover general warranty for the product. Please contact\r\n XTRA-POWER POWER TOOLS customer care for more details.\r\n
    \r\n
    \r\n
    Note:
    \r\n
      \r\n
    1. \r\n Armature, Field Coil & Motor will be changed only once during the\r\n warranty period.\r\n
    2. \r\n
    \r\n
    Disclaimer:
    \r\n
      \r\n
    1. The decision of the company shall be final & binding.
    2. \r\n
    3. \r\n Any claim or dispute arising shall be subjected to Gurugram\r\n jurisdiction only.\r\n
    4. \r\n
    \r\n
    \r\n );\r\n }\r\n}\r\n","import React, { Component } from \"react\";\r\n\r\nexport default class PrivacyPolicy extends Component {\r\n render() {\r\n return (\r\n
    \r\n

    \r\n LSL TOOLS PVT. LTD. APPLICATION - PRIVACY POLICY\r\n

    \r\n At LSL TOOLS PVT. LTD., we appreciate that you are trusting us with\r\n information that is important to you, and we want to be transparent\r\n about how we use it. Here we describe the privacy practices for our\r\n applications, software and services (the “Services”). You will learn\r\n about the data we collect, how we use it, and the measures we take to\r\n keep it safe.\r\n

    INFORMATION WE COLLECT

    \r\n

    \r\n When you use our Services, we collect the following types of\r\n information.\r\n

    \r\n

    ACCOUNT INFORMATION

    \r\n

    \r\n Some information is required to create an account on our Services,\r\n such as your name, email address, password and your mobile telephone\r\n number. You may also choose to provide other types of information,\r\n such as a profile photo, date of birth & gender.\r\n

    \r\n

    \r\n If you contact us or participate in a survey, contest, or promotion,\r\n LSL TOOLS PVT. LTD. collects the information you submit such as your\r\n name, contact information, and message.\r\n

    \r\n

    \r\n INFORMATION WE RECEIVE FROM YOUR USE OF OUR SERVICES\r\n

    \r\n

    LOCATION INFORMATION

    \r\n

    \r\n The Services include features that use precise location data,\r\n including GPS signals, device sensors, Wi-Fi access points, and cell\r\n tower IDs. We collect this type of data if you grant us access to your\r\n location while installing the application. We may also derive your\r\n approximate location from your IP address.\r\n

    \r\n

    HOW WE USE INFORMATION

    \r\n

    We use the information we collect for the following purposes,

    \r\n

    PROVIDE AND MAINTAIN THE SERVICES

    \r\n

    \r\n Using the information we collect, we are able to deliver the Services\r\n to you and honor our Terms of Service contract with you. For example,\r\n we need to use your information to provide you with the paperless\r\n warranty feature, and to give you customer support.\r\n

    \r\n

    IMPROVE, PERSONALISE AND DEVELOP THE SERVICES

    \r\n

    \r\n We use the information we collect to improve and personalize the\r\n Services and to develop new ones. For example, we use the information\r\n to troubleshoot and protect against errors; perform data analysis and\r\n testing; conduct research, and develop new features and Services.\r\n

    \r\n

    \r\n When you allow us to collect precise location information, we use that\r\n information to provide and improve features of the Services such as\r\n recording where the product was scanned.\r\n

    \r\n

    COMMUNICATE WITH YOU

    \r\n

    \r\n We use your information when needed to send you Service notifications\r\n and respond to you when you contact us. We may also use your\r\n information to promote new features or products that we think you\r\n would be interested in.\r\n

    \r\n

    PROMOTE SAFETY AND SECURITY

    \r\n

    \r\n We use the information we collect to promote the safety and security\r\n of the Services, our users, and other parties. For example, we may use\r\n the information to authenticate users, protect against fraud and\r\n abuse, respond to a legal request or claim, conduct audits, and\r\n enforce our terms and policies.\r\n

    \r\n

    \r\n For personal data, we rely on several legal bases to process the data.\r\n These include when you have given your consent, which you may withdraw\r\n at any time using your account settings and other tools; when the\r\n processing is necessary to perform a contract with you, like the Terms\r\n of Service; and our legitimate business interests, such as in\r\n improving, personalising, and developing the Services, marketing new\r\n features or products that may be of interest, and promoting safety and\r\n security as described above.\r\n

    \r\n

    HOW INFORMATION IS SHARED

    \r\n

    \r\n We do not share your personal information except in the limited\r\n circumstances described below.\r\n

    \r\n

    FOR LEGAL REASONS OR TO PREVENT HARM

    \r\n

    \r\n We may preserve or disclose information about you to comply with a\r\n law, regulation, legal process, or governmental request; to assert\r\n legal rights or defend against legal claims; or to prevent, detect, or\r\n investigate illegal activity, fraud, abuse, violations of our terms,\r\n or threats to the security of the Services or the physical safety of\r\n any person.\r\n

    \r\n

    \r\n Please note: Our policy is to notify you of legal process seeking\r\n access to your information, such as search warrants, court orders, or\r\n subpoenas unless we are prohibited by law from doing so. In cases\r\n where a court order specifies a non-disclosure period, we provide\r\n delayed notice after the expiration of the non-disclosure period.\r\n Exceptions to our notice policy include exigent or counterproductive\r\n circumstances, for example, when there is an emergency involving a\r\n danger of death or serious physical injury to a person.\r\n

    \r\n

    \r\n If we are involved in a merger, acquisition, or sale of assets, we\r\n will continue to take measures to protect the confidentiality of\r\n personal information and give affected users notice before\r\n transferring any personal information to a new entity.\r\n

    \r\n

    DATA RETENTION

    \r\n

    \r\n We keep your account information, like your name, email address, and\r\n password, for as long as your account is in existence because we need\r\n it to operate your account. We also keep information about you and\r\n your use of the Services for as long as necessary for our legitimate\r\n business interests, for legal reasons, and to prevent harm.\r\n

    \r\n

    \r\n ANALYTICS AND ADVERTISING SERVICES PROVIDED BY OTHERS\r\n

    \r\n

    \r\n We might work with partners who provide us with analytics and\r\n advertising services. This may include helping us understand how users\r\n interact with the Services, serving advertisements on our behalf\r\n across the internet, and measuring the performance of those\r\n advertisements. These companies may use cookies and similar\r\n technologies to collect information about your interactions with the\r\n Services and other websites and applications.\r\n

    \r\n

    INFORMATION SECURITY

    \r\n

    \r\n We work hard to keep your data safe. We use a combination of\r\n technical, administrative, and physical controls to maintain the\r\n security of your data. This includes using Transport Layer Security\r\n (“TLS”) to encrypt many of our Services. No method of transmitting or\r\n storing data is completely secure, however.\r\n

    \r\n

    CHANGES TO THIS POLICY

    \r\n

    \r\n We will notify you before we make material changes to this policy and\r\n give you an opportunity to review the revised policy before deciding\r\n if you would like to continue to use the Services.\r\n

    \r\n

    WHO WE ARE AND HOW TO CONTACT US

    \r\n

    \r\n If you have questions, suggestions, or concerns about this policy, or\r\n about our use of your information, please contact us on Customer Care\r\n No: +91 124 4000608, +91 8743800144.\r\n

    \r\n
    \r\n );\r\n }\r\n}\r\n","import React, { Component } from \"react\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { Button } from \"primereact/button\";\r\nimport { connect } from \"react-redux\";\r\nimport { loginActions, alertActions, changePasswordActions } from \"../actions\";\r\nimport logo1 from \"./../assets/images/Header_logo.png\";\r\n//import bgg from \"./../assets/images/bgg.png\";\r\n\r\nclass DeleteAccount extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n resendbtn: true,\r\n UserName: null,\r\n Password: null,\r\n loggedIn: false,\r\n eyeToggle: true,\r\n forgotModal: false,\r\n Otp: null,\r\n\r\n formError: {\r\n UserName: \"\",\r\n Password: \"\",\r\n },\r\n formForgotHeading: \"Forgot Password\",\r\n buttonLabel: \"Submit\",\r\n Email: \"\",\r\n forgotFormError: {\r\n Email: null,\r\n },\r\n btnlog: true,\r\n };\r\n this.formHandle = this.formHandle.bind(this);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.submitForm = this.submitForm.bind(this);\r\n this.passwordToggle = this.passwordToggle.bind(this);\r\n this.hideFunc = this.hideFunc.bind(this);\r\n this.handleForgotChange = this.handleForgotChange.bind(this);\r\n this.openDialog = this.openDialog.bind(this);\r\n this.submitForgotForm = this.submitForgotForm.bind(this);\r\n this.setResend = this.setResend.bind(this);\r\n }\r\n\r\n componentDidMount() {\r\n sessionStorage.removeItem(\"LoggedInUser\");\r\n sessionStorage.removeItem(\"user\");\r\n sessionStorage.removeItem(\"UserData\");\r\n sessionStorage.removeItem(\"UserRole\");\r\n sessionStorage.removeItem(\"UserNameData\");\r\n sessionStorage.removeItem(\"UserEmailData\");\r\n sessionStorage.removeItem(\"UserMobileData\");\r\n sessionStorage.removeItem(\"CompanyData\");\r\n sessionStorage.removeItem(\"assignedPermissionsForUser\");\r\n }\r\n\r\n handleChange(event) {\r\n let { name, value } = event.target;\r\n let errors = this.state.formError;\r\n switch (name) {\r\n case \"IsActive\":\r\n value = event.target.checked;\r\n break;\r\n default:\r\n break;\r\n }\r\n this.formHandle(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n formHandle(value, name) {\r\n let errors = this.state.formError;\r\n let IsValid = true;\r\n switch (name) {\r\n case \"UserName\":\r\n if (value === null || value.length < 1) {\r\n errors.UserName = \"Please enter your email-id.\";\r\n } else if (value.length >= 1) {\r\n /* eslint-disable */\r\n if (!value.match(/^\\w+([\\.-]?\\w+)*@\\w+([\\.-]?\\w+)*(\\.\\w{2,3})+$/)) {\r\n errors.userName = \"Please enter valid email-id.\";\r\n } else errors.UserName = null;\r\n /* eslint-enable */\r\n } else errors.UserName = null;\r\n break;\r\n case \"Password\":\r\n if (value === null || value.length < 1) {\r\n errors.Password = \"Please enter password\";\r\n } else errors.Password = null;\r\n break;\r\n default:\r\n break;\r\n }\r\n return IsValid;\r\n }\r\n\r\n passwordToggle() {\r\n this.setState({ eyeToggle: !this.state.eyeToggle });\r\n }\r\n\r\n submitForm(event, flag) {\r\n event.preventDefault();\r\n let isfrmvalid = true;\r\n let checkerror = this.state.formError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key];\r\n let valid = this.formHandle(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n return isfrmvalid;\r\n });\r\n\r\n if (isfrmvalid) {\r\n var formData;\r\n if (flag == \"G\") {\r\n formData = {\r\n Email: this.state.UserName,\r\n Password: this.state.Password,\r\n RequestType: 1,\r\n };\r\n } else if (flag == \"L\") {\r\n formData = {\r\n Email: this.state.UserName,\r\n Password: this.state.Password,\r\n RequestType: 2,\r\n //otp: this.state.Otp,\r\n };\r\n }\r\n\r\n this.props.DeleteAccountUser(formData);\r\n }\r\n }\r\n\r\n //to reset form\r\n formForgotReset() {\r\n this.setState({ Email: this.state.UserName });\r\n let errors = this.state.forgotFormError;\r\n Object.entries(errors).map(([key, value]) => {\r\n errors[key] = \"\";\r\n return errors[key];\r\n });\r\n }\r\n //to open dialog\r\n openDialog() {\r\n this.setState({ visible: true, Email: this.state.Email });\r\n //this.formForgotReset();\r\n }\r\n //to hide function\r\n hideFunc() {\r\n this.setState({\r\n visible: false,\r\n buttonLabel: \"Submit\",\r\n });\r\n this.formForgotReset();\r\n }\r\n //to submit form\r\n submitForgotForm(event) {\r\n event.preventDefault();\r\n let isfrmvalid = true;\r\n let checkerror = this.state.forgotFormError;\r\n\r\n Object.entries(checkerror).map(([key, value]) => {\r\n const val = this.state[key];\r\n let valid = this.validateForgotForm(val, key);\r\n if (!valid) {\r\n this.setState({ checkerror: isfrmvalid });\r\n isfrmvalid = false;\r\n }\r\n return isfrmvalid;\r\n });\r\n\r\n if (isfrmvalid) {\r\n const formData = {\r\n Email: this.state.Email,\r\n };\r\n\r\n this.props.forgotPassword(formData);\r\n }\r\n }\r\n //to handle change\r\n handleForgotChange(event) {\r\n const { name, value } = event.target;\r\n let errors = this.state.forgotFormError;\r\n\r\n this.validateForgotForm(value, name);\r\n this.setState({ errors, [name]: value });\r\n }\r\n\r\n setResend() {\r\n if (\r\n this.props.res &&\r\n this.props.res.ResponseCode &&\r\n this.props.res.ResponseCode == \"205\"\r\n ) {\r\n this.setState({\r\n resendbtn: false,\r\n });\r\n return false;\r\n } else return true;\r\n }\r\n //to validate form\r\n validateForgotForm(value, name) {\r\n let errors = this.state.forgotFormError;\r\n let IsValid = true;\r\n\r\n switch (name) {\r\n case \"Email\":\r\n if (value == null || value.length < 1) {\r\n IsValid = false;\r\n errors.Email = \"Please enter your email-id.\";\r\n } else if (value.length >= 1) {\r\n /* eslint-disable */\r\n if (!value.match(/^\\w+([\\.-]?\\w+)*@\\w+([\\.-]?\\w+)*(\\.\\w{2,3})+$/)) {\r\n IsValid = false;\r\n errors.Email = \"Please enter valid email-id.\";\r\n } else errors.Email = \"\";\r\n /* eslint-enable */\r\n } else errors.Email = \"\";\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n return IsValid;\r\n }\r\n render() {\r\n return (\r\n <>\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {/* // */}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    ACCOUNT DELETION REQUEST
    \r\n
    \r\n {\r\n this.submitForm(e, \"L\");\r\n }}\r\n style={{ background: \"none\" }}\r\n >\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n {this.state.formError.UserName != null ? (\r\n
    \r\n {this.state.formError.UserName}\r\n
    \r\n ) : null}\r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n {this.state.formError.Password != null ? (\r\n
    \r\n {this.state.formError.Password}\r\n
    \r\n ) : null}\r\n
    \r\n\r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n {this.state.formError.Otp != null ? (\r\n
    \r\n {this.state.formError.Otp}\r\n
    \r\n ) : null}\r\n
    \r\n\r\n {/* \r\n this.setState({\r\n forgotModal: true,\r\n Email: this.state.UserName,\r\n })\r\n }\r\n >\r\n Forgot Password\r\n
    */}\r\n\r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n {/* // */}\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n\r\n
     
    \r\n
    \r\n\r\n this.setState({ forgotModal: false })}\r\n >\r\n
    Reset Password
    \r\n

    Enter your Email and instructions will be sent to you!

    \r\n
    \r\n \r\n {this.state.forgotFormError.Email != null ? (\r\n
    {this.state.forgotFormError.Email}
    \r\n ) : null}\r\n
    \r\n this.setState({ forgotModal: false })}\r\n />\r\n
    \r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n res:\r\n state.login?.items && state.login?.items[0]\r\n ? state.login?.items[0]\r\n : null,\r\n resendbtn: state.login?.enable,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n DeleteAccountUser: (login) =>\r\n dispatch(loginActions.DeleteAccountUser(login)),\r\n forgotPassword: (data) =>\r\n dispatch(changePasswordActions.forgotPassword(data)),\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(DeleteAccount);\r\n","import React, { Component } from \"react\";\r\nimport \"./tnc.css\";\r\n\r\nexport default class TermsNConditions extends Component {\r\n render() {\r\n return (\r\n
    \r\n

    \r\n TERMS AND CONDITIONS FOR XTRAPOWER TOOLS LUCKY DRAW CONTEST\r\n

    \r\n

    \r\n By participating in the XTRAPOWER TOOLS XTRA GAIN contest, you agree\r\n to abide by the following Terms and Conditions set forth by LSL TOOLS\r\n PVT. LTD. The contest is conducted through authorized dealers and\r\n retailers. By completing your registration, you confirm that you have\r\n read, understood, and irrevocably accepted these Terms and Conditions,\r\n in their latest version, as well as all applicable laws and\r\n regulations, without any restrictions or qualifications.\r\n

    \r\n

    \r\n Contest Period\r\n

    \r\n

    The contest period will be as per tabled below.

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

    S.No.

    \r\n
    \r\n

    Prize

    \r\n
    \r\n

    Period

    \r\n
    \r\n

    From

    \r\n
    \r\n

    To

    \r\n
    \r\n

    1

    \r\n
    \r\n

    Mobile Phone

    \r\n
    \r\n

    Quarterly

    \r\n
    \r\n

    \r\n 1st November 2024\r\n

    \r\n
    \r\n

    \r\n 31st March 2025\r\n

    \r\n
    \r\n

    2

    \r\n
    \r\n

    Car

    \r\n
    \r\n

    Yearly

    \r\n
    \r\n

    \r\n 1st November 2024\r\n

    \r\n
    \r\n

    \r\n 31st March 2026\r\n

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

    \r\n \r\n Note: In case of any changes the information will be updated on our\r\n Website/Mobile App.\r\n \r\n

    \r\n

    \r\n Result\r\n

    \r\n

    \r\n The results will be announced through WhatsApp/Call on the registered\r\n Mobiles number.\r\n

    \r\n

     

    \r\n

    \r\n Eligibility Criteria\r\n

    \r\n

    \r\n In order for you to be eligible for XTRAPOWER TOOLS{\" \"}\r\n lucky draw contest you must satisfy the following criteria:\r\n

    \r\n

    \r\n You must purchase any XTRAPOWER TOOLS Product from any of the\r\n authorized retail outlets, running this offer all over India.\r\n

    \r\n

    \r\n . You should be above 18 (eighteen) years of age; (The minimum age of\r\n participant shall be 18 years)\r\n

    \r\n

    . You must be a citizen of India.

    \r\n

    . This Contest is valid only in India.

    \r\n

    . State of Tamil Nadu is excluded from this contest; *

    \r\n

    \r\n . You must not have any criminal record nor should be of an unsound\r\n mind; and\r\n

    \r\n

    \r\n . You must not be an employee of LSL TOOLS PVT. LTD. and its group\r\n companies, its affiliate or associate companies, or the relative of\r\n any such employee.\r\n

    \r\n

    . You must not be a dealer, retailer & relative of the same.

    \r\n

    \r\n \r\n NOTE:\r\n \r\n \r\n    THE RESIDENTS OF THE STATE OF TAMIL NADU ARE NOT\r\n ELIGIBLE TO PARTICIPATE IN XTRAPOWER TOOLS LUCKY DRAW CONTEST IN\r\n COMPLIANCE WITH THE PROVISIONS OF THE TAMIL NADU PRIZE SCHEME\r\n (PROHIBITION) ACT, 1979. AS PER THE PRIVACY POLICY MENTIONED IN OUR\r\n COMPANY MOBILE APPLICATION.\r\n \r\n

    \r\n

    \r\n You agree that your failure to comply with the Terms and Conditions as\r\n set-out hereinunder and any other formalities stipulated by LSL TOOLS\r\n PVT. LTD. during the Contest Period shall disqualify you from\r\n participating in XTRAPOWER TOOLS lucky draw contest.\r\n

    \r\n

    \r\n  \r\n

    \r\n

    \r\n Conditions for Participation\r\n

    \r\n

    \r\n To participate in the XTRAPOWER TOOLS Lucky Draw contest, you must\r\n purchase  XTRAPOWER TOOLS product from a retail outlet during the\r\n Contest Period. A GST invoice signed and stamped copy of the bill\r\n along with signed and stamped warranty card is mandatory. After your\r\n purchase, register through the XTRAPOWER mobile application, available\r\n for download on the Apple Store or Google Play Store (for iOS and\r\n Android devices). To complete registration, you should scan and\r\n authenticate the sticker found on the product's box. After scanning,\r\n scratch the sticker to reveal a code, which must be entered into the\r\n designated field on the app. Once the code is entered, verified, and\r\n the product is registered for warranty, you will be automatically\r\n entered into the Lucky Draw.\r\n

    \r\n

     

    \r\n

    \r\n Process of Selection of Winners\r\n

    \r\n

    \r\n Winners of the XTRAPOWER TOOLS Lucky Draw contest will be selected by\r\n virtue through a fair and transparent draw process.\r\n

    \r\n

    \r\n LSL TOOLS PVT. LTD. will announce the winners on or before the 10th of\r\n every subsequent quarter. Following the announcement, we will notify\r\n the winners via WhatsApp or SMS on their registered contact numbers,\r\n requesting confirmation to claim their prize. To confirm eligibility,\r\n winners must provide a copy of a valid government-issued ID (such as a\r\n Voter ID, Aadhar Card, or Driving License). Upon receiving the\r\n confirmation and ID verification, we will arrange for the delivery of\r\n the prize within 60 days.\r\n

    \r\n

    \r\n If a winner fails to respond to our WhatsApp/SMS within 30 working\r\n days, is found ineligible, or does not comply with the Terms and\r\n Conditions, they will forfeit their prize. In such cases, the prize\r\n will be offered to the next eligible participant, selected through a\r\n new draw. Our responsibility is limited to informing the winners via\r\n WhatsApp, SMS, and our social media platforms, and we are not obliged\r\n to follow up further. If a winner does not receive communication\r\n regarding their prize, it is their responsibility to contact us using\r\n the details provided on our website.\r\n

    \r\n

    \r\n Participants acknowledge that merely entering the XTRAPOWER TOOLS\r\n Lucky Draw contest does not guarantee a prize. Only those officially\r\n announced as winners by LSL TOOLS PVT. LTD. are eligible to claim the\r\n prizes.\r\n

    \r\n

    \r\n Winners' names will be posted on our website and social media\r\n platforms, including Instagram, Facebook, LinkedIn, and X (formerly\r\n known as Twitter).\r\n

    \r\n

    \r\n NOTE:{\" \"}\r\n \r\n YOU CONFIRM AND ACKNOWLEDGE THAT YOU ARE AWARE THAT BY PARTICIPATING\r\n IN THIS CONTEST, YOU HAVE GIVEN US RIGHTS TO USE YOUR NAME,\r\n PHOTOGRAPH AND OTHER PERSONAL DETAILS FOR THE PURPOSE OF THIS\r\n CONTEST.\r\n \r\n

    \r\n

    \r\n  \r\n

    \r\n

    \r\n Prize Details\r\n

    \r\n

    \r\n The participants who emerge as winners based on the lucky draw\r\n selection in XTRAPOWER TOOLS lucky draw contest will\r\n be entitled in the following manner to claim the following prize:\r\n

    \r\n
      \r\n
    • \r\n 1 (One) lucky winner will be entitled for Car (name of the Brand) up\r\n to Rs. 6 Lac*\r\n
    • \r\n
    • \r\n 10(Ten) lucky winners will be entitled for Mobile Phone\r\n (SAMSUNG/OPPO) worth around Rs. 15,000/- each**\r\n
    • \r\n
    \r\n

    \r\n *Only 1 Car Per Year will be awarded.\r\n

    \r\n

    \r\n **10 Mobile Phones Per Quarter will be awarded.\r\n

    \r\n

    \r\n The winner(s) of the above prize(s) cannot assign or transfer or\r\n exchange their respective prize(s).\r\n

    \r\n

    \r\n  \r\n

    \r\n

    \r\n Limitations of Liability and Release\r\n

    \r\n

    \r\n By participating in the XTRAPOWER TOOLS Lucky Draw Contest, you agree\r\n to release LSL TOOLS PVT. LTD. from any claims, damages, or\r\n liabilities arising from or related to your participation. You also\r\n waive any rights to seek punitive, incidental, consequential, or other\r\n forms of damages.\r\n

    \r\n

    \r\n Please note that LSL TOOLS PVT. LTD. is not responsible for the\r\n quality of prizes, as these items are not manufactured by us. We are\r\n not liable for any defects or damages associated with the awarded\r\n goods.\r\n

    \r\n

    \r\n Winners are solely responsible for any applicable taxes, including\r\n income tax, gift tax, or other statutory tax liabilities that may\r\n arise in connection with the prize(s), as per current regulations.\r\n

    \r\n

    \r\n LSL TOOLS PVT. LTD. assumes no responsibility for any technical issues\r\n or malfunctions that may affect the operation of the XTRAPOWER TOOLS\r\n Lucky Draw Contest.\r\n

    \r\n
      \r\n
    • Hardware or software errors.
    • \r\n
    • \r\n Faulty computer, cable, satellite, network, electronic, Internet\r\n connectivity or other online or network communication problems;\r\n
    • \r\n
    • \r\n Errors or limitations of any internet service providers, servers,\r\n hosts, or other providers;\r\n
    • \r\n
    • Garbled, jumbled, or faulty data transmissions;
    • \r\n
    • Lost, late, delayed, or intercepted transmissions;
    • \r\n
    • \r\n Unauthorized human or non-human intervention of the operation of\r\n XTRAPOWER TOOLS lucky draw contest, including without limitation,\r\n unauthorized tampering, hacking, theft, virus, bugs, or worms; or\r\n
    • \r\n
    • \r\n Destruction of any aspect of XTRAPOWER TOOLS lucky draw contest, or\r\n loss, miscount, misdirection, inaccessibility, or unavailability of\r\n the contact number used in connection with XTRAPOWER TOOLS lucky\r\n draw contest.\r\n
    • \r\n
    \r\n

    \r\n  \r\n

    \r\n

    \r\n Our Rights\r\n

    \r\n

    \r\n LSL TOOLS PVT. LTD.'s decisions regarding all matters related to the\r\n XTRAPOWER TOOLS Lucky Draw Contest will be final and binding on all\r\n participants. We reserve the right to extend, discontinue, or make\r\n changes to the contest at any time, including but not limited to\r\n modifications of the eligibility criteria, participation process,\r\n selection procedures, and contest duration. Such changes may be\r\n implemented at our sole discretion due to business requirements or in\r\n response to statutory or regulatory updates, and all participants will\r\n be bound by these revisions.\r\n

    \r\n

    \r\n The winners, or their legal heirs, will have no further claims or\r\n rights against LSL TOOLS PVT. LTD. beyond the prizes they are awarded.\r\n

    \r\n

     

    \r\n

    \r\n Force Majeure\r\n

    \r\n

    \r\n XTRAPOWER TOOLS lucky draw contest is subject to any force majeure\r\n circumstances i.e. any event directly or indirectly resulting from any\r\n acts of God including but not limited to fire, flood, earthquake, or\r\n other natural disasters, an act of any sovereign including but not\r\n limited to war, rebellion, military or usurped power or confiscation,\r\n destruction or damage to property, riots, terrorist attacks,\r\n lockdowns, and lockouts by or under the order of any government or\r\n imposition of government law, judgment, order or decree, sanction,\r\n embargo or similar action, blockade, or labour dispute, epidemic,\r\n pandemics, accidents, strikes, explosions, or other similar or\r\n different contingencies which are beyond the control of LSL TOOLS PVT.\r\n LTD. which cannot reasonably be forecasted or provided against, and\r\n cannot be predicted by men of ordinary prudence. In case of any such\r\n force majeure conditions, no liability in whatsoever manner can be\r\n attributed to LSL TOOLS PVT. LTD.\r\n

    \r\n

    \r\n  \r\n

    \r\n

    \r\n Governing Law and Jurisdiction\r\n

    \r\n

    \r\n These Terms and Conditions shall be governed by and interpreted in\r\n accordance with the laws of India. Any disputes arising from these\r\n Terms and Conditions will be subject to the exclusive jurisdiction of\r\n the courts in Gurugram.\r\n

    \r\n
    \r\n );\r\n }\r\n}\r\n","import React, { Component } from \"react\";\r\n\r\nexport default class ContactUs extends Component {\r\n render() {\r\n return (\r\n
    \r\n
      \r\n
    • \r\n
      \r\n Questions or feedback? We are here to assist you!\r\n
      \r\n Reach out anytime—our team is ready to help.\r\n
      \r\n
    • \r\n
    • \r\n LSL TOOLS PRIVATE LIMITED\r\n
      \r\n Regd. Office:
      \r\n 394, UDYOG VIHAR, PHASE III, GURUGRAM - 122016\r\n
      HARYANA, INDIA\r\n
      \r\n CIN : U28100HR1995PTC088529,\r\n
    • \r\n
    • \r\n Email:\r\n
      FOR ENQUIRY/REQUIREMENT: sales@xtrapowertools.com\r\n
      \r\n FOR QUERY/FEEDBACK: care@xtrapowertools.com\r\n
    • \r\n
    • Contact Number: +91 124 4000608,+91 8743800144
    • \r\n
    • Monday to Saturday - 9:30 AM to 6:30 PM
    • \r\n
    \r\n
    \r\n );\r\n }\r\n}\r\n","export default __webpack_public_path__ + \"static/media/banner12.f5d344d1.jpg\";","export default __webpack_public_path__ + \"static/media/BrijMohanSingla.2c2b4db0.png\";","export default __webpack_public_path__ + \"static/media/AkashSingla.8cdfd371.png\";","export default __webpack_public_path__ + \"static/media/VivekSingla.3411d79f.png\";","export default __webpack_public_path__ + \"static/media/VikasSingla.47386a2b.png\";","import React from \"react\";\r\nimport banner from \"../assets/images/banner12.jpg\";\r\nimport BrijMohanSingla from \"../assets/images/BrijMohanSingla.png\";\r\nimport AkashSingla from \"../assets/images/AkashSingla.png\";\r\nimport VivekSingla from \"../assets/images/VivekSingla.png\";\r\nimport VikasSingla from \"../assets/images/VikasSingla.png\";\r\nimport \"./AboutUs.css\";\r\nconst AboutUs = () => {\r\n return (\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    XTRA POWER TOOL

    \r\n

    \r\n XTRA POWER is the prime destination for those seeking cutting-edge\r\n power tools and accessories. Our diverse range spans over 12 key\r\n categories: Power Tools, Cleaning Tools, Welding Machines, Air\r\n Compressors, Spare Parts, Abrasives, Measuring Tools, TCT Saw\r\n Blades, Diamond Saw Blades, SDS Drill Bits, Chisels and\r\n Agriculture Machines. Each product undergoes meticulous testing to\r\n ensure optimal performance, earning us the trust of leading\r\n enterprises across India. When it comes to power tools, XTRA POWER\r\n is the name you can rely on for quality, innovation and unmatched\r\n reliability.\r\n

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

    HISTORY

    \r\n

    \r\n Established in 1995, we launched our flagship brand, XTRA POWER,\r\n in 2002, marking a significant milestone in quality and\r\n innovation. With each passing year, we have expanded our offerings\r\n to meet the evolving needs of our customers, guided by both market\r\n trends and our firm commitment to excellence.\r\n

    \r\n

    \r\n Through strategic planning and a steadfast focus on delivering\r\n top-quality products and services, we have empowered our clients\r\n to thrive in a competitive market, ensuring their success and\r\n satisfaction.\r\n

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

    WHY US?

    \r\n

    \r\n At XTRA POWER, integrity and quality form the cornerstone of our\r\n operations. Through a strong network of over 500 distributors\r\n nationwide, we provide a diverse range of high-quality products,\r\n solidifying our position as industry leaders. Our portfolio\r\n includes renowned brands such as HIMAX, AWANT, B&P, FASTCUT and\r\n REWOP, carefully crafted to meet the rigorous standards of\r\n professionals.\r\n

    \r\n

    \r\n Drawing on our expertise in designing machine tools and\r\n agricultural tools, we consistently provide products that\r\n effectively meet evolving market demands.\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    100,000+
    \r\n
    Happy Customers
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    1,000+
    \r\n
    Total Product
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    1,000+
    \r\n
    Vendors and Retailers
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Meet Our Minds

    \r\n

    \r\n At XTRA POWER, our state-of-the-art facility features specialized\r\n divisions dedicated to developing innovative products. With our\r\n experienced team's deep understanding of power tool functionality,\r\n we drive innovation and maintain our industry leadership. Through\r\n thorough research and development led by our professional staff,\r\n we ensure we stay at the forefront of the power tools sector.\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    Brij Mohan Singla
    \r\n
    Founder
    \r\n
    \r\n\r\n
    \r\n \r\n
    Akash Singla
    \r\n
    Co-Founder
    \r\n
    \r\n\r\n
    \r\n \r\n
    Vivek Singla
    \r\n
    Co-Founder
    \r\n
    \r\n\r\n
    \r\n \r\n
    Vikas Singla
    \r\n
    Co-Founder
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default AboutUs;\r\n","import React, { Component } from \"react\";\nimport \"./App.css\";\n// import './DataTableDemo.css';\nimport Login from \"./views/Login\";\nimport ProductAuthentication from \"./views/Pa\";\nimport Wa from \"./views/Wa\";\nimport Template from \"./templates/Template\";\nimport { BrowserRouter as Router, Switch, Route } from \"react-router-dom\";\nimport \"primereact/resources/themes/saga-blue/theme.css\";\nimport \"primereact/resources/primereact.min.css\";\nimport \"primeicons/primeicons.css\";\nimport { ToastContainer } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\n\nimport { connect } from \"react-redux\";\nimport { alertActions } from \"../src/actions\";\nimport HomePage from \"./views/HomePage\";\nimport About from \"./views/About\";\nimport WarrantyTerms from \"./views/WarrantyTerms\";\nimport PrivacyPolicy from \"./views/PrivacyPolicy\";\nimport DeleteAccount from \"./views/DeleteAccount\";\nimport TermsNConditions from \"./views/TermsNConditions\";\nimport ContactUs from \"./views/ContactUs\";\nimport AboutUs from \"./views/AboutUs\";\n\nclass App extends Component {\n constructor(props) {\n super(props);\n this.state = {\n login: false,\n show: true,\n authPage: \" \",\n alertHeading: \"\",\n urlParams: \"\",\n showToaster: false,\n };\n }\n\n componentDidMount() {\n // disable right click\n // document.addEventListener('contextmenu', event => event.preventDefault());\n // document.onkeydown = function (e) {\n // // disable F12 key\n // if (e.keyCode == 123) {\n // return false;\n // }\n // }\n\n //this.props.clear();\n this.setState({ urlParams: window.location.pathname.toLowerCase() });\n let storeCollector = JSON.parse(sessionStorage.getItem(\"LoggedInUser\"));\n if (storeCollector && storeCollector.login) {\n this.setState({\n login: true,\n });\n } else {\n this.setState({\n login: false,\n });\n }\n }\n\n componentWillUnmount() {\n if (this.timeoutId) {\n clearTimeout(this.timeoutId);\n }\n }\n\n render() {\n if (Object.keys(this.props.alert).length > 0) {\n setTimeout(() => this.props.clear(), 6000);\n }\n\n return (\n <>\n \n {this.props.alert.message && (\n \n
    \n {this.props.alert.type === \"alert-warning\" ? (\n \n ) : this.props.alert.type === \"alert-success\" ? (\n \n ) : this.props.alert.type === \"alert-danger\" ? (\n \n ) : null}\n
    \n
    \n
    \n {this.props.alert.type === \"alert-warning\"\n ? \"Warn Message\"\n : this.props.alert.type === \"alert-success\"\n ? \"Success Message\"\n : this.props.alert.type === \"alert-danger\"\n ? \"Error Message\"\n : null}\n
    \n {this.props.alert.message}\n
    \n {/* this.props.clear()}>X */}\n \n )}\n \n \n \n \n \n\n {this.state.login ? (\n this.state.urlParams === \"/pa\" ? (\n \n ) : this.state.urlParams === \"/warranty-terms\" ? (\n \n ) : this.state.urlParams === \"/wa\" ? (\n \n ) : this.state.urlParams === \"/privacy-policy\" ? (\n \n ) : this.state.urlParams === \"/delete-account-data\" ? (\n \n ) : this.state.urlParams === \"/about\" ? (\n \n ) : this.state.urlParams === \"/about-us\" ? (\n \n ) : this.state.urlParams === \"/tnc\" ? (\n \n ) : this.state.urlParams === \"/contact-us\" ? (\n \n ) : (\n