{"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","isDownload","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","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","a","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","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","VerificationId","CompId","State","City","productImage","isApprove","isReject","WarrantyRegistrationFileUpload","claimdate","reason","isClaim","isReregister","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","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","purchasedFrom","RegisterDate","PhysicalCard","ExpireDate","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","Export","datalist","exportingData","verificationList","IsDownload","link","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","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","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","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","overflowWrap","WarrantyApproval","WarrantyData","sortBy","WaarrantyId","CityName","StateName","colspan","warehouseMaster","WareHouseName","WareHouseDisNam","Country","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","actionBodyTemplate2","P","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":"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PC,KAAM,aACN1xB,MAAO,CACL,CACEyxB,MAAO,iBACP7L,IAAK,0BACL8L,KAAM,qBAER,CACED,MAAO,cACP7L,IAAK,uBACL8L,KAAM,qBAER,CACED,MAAO,iBACP7L,IAAK,0BACL8L,KAAM,qBAER,CACED,MAAO,wBACP7L,IAAK,iCACL8L,KAAM,qBAER,CACED,MAAO,6BACP7L,IAAK,uBACL8L,KAAM,qBAER,CACED,MAAO,gBACP7L,IAAK,yBACL8L,KAAM,qBAER,CACED,MAAO,gBACP7L,IAAK,yBACL8L,KAAM,qBAER,CACED,MAAO,yBACP7L,IAAK,iCACL8L,KAAM,qBAER,CACED,MAAO,aACP7L,IAAK,sBACL8L,KAAM,uBAIZ,CACED,MAAO,aACPC,KAAM,qBACN1xB,MAAO,CACL,CACEyxB,MAAO,eACP7L,IAAK,2BACL8L,KAAM,uBAIZ,CACED,MAAO,eACPC,KAAM,qBACN1xB,MAAO,CACL,CACEyxB,MAAO,UACP7L,IAAK,wBACL8L,KAAM,qBAER,CACED,MAAO,aACP7L,IAAK,2BACL8L,KAAM,qBAER,CACED,MAAO,SACP7L,IAAK,uBACL8L,KAAM,qBAER,CACED,MAAO,sBACP7L,IAAK,mCACL8L,KAAM,uBAIZ,CACED,MAAO,UACPC,KAAM,kBACN1xB,MAAO,CACL,CACEyxB,MAAO,mBACP7L,IAAK,4BACL8L,KAAM,qBAER,CACED,MAAO,iBACP7L,IAAK,0BACL8L,KAAM,qBAER,CACED,MAAO,mBACP7L,IAAK,4BACL8L,KAAM,qBAER,CACED,MAAO,gBACP7L,IAAK,yBACL8L,KAAM,qBAER,CACED,MAAO,wBACP7L,IAAK,iCACL8L,KAAM,qBAER,CACED,MAAO,uBACP7L,IAAK,+BACL8L,KAAM,qBAER,CACED,MAAO,2BACP7L,IAAK,mCACL8L,KAAM,qBAER,CACED,MAAO,0BACP7L,IAAK,kCACL8L,KAAM,qBAER,CACED,MAAO,wBACP7L,IAAK,iCACL8L,KAAM,qBAER,CACED,MAAO,kBACP7L,IAAK,YACL8L,KAAM,qBAER,CACED,MAAO,uBACP7L,IAAK,+BACL8L,KAAM,wBA9JG,E,qDAsKnB,WACE9gB,OAAOisB,iBAAiB,SAAUjhB,KAAK6gB,cACvC,IAAI11B,EAAS0J,eAAeC,QAAQ,YACpCkL,KAAKgO,MAAMkT,SAAS/1B,GACpB6U,KAAKgO,MAAM5S,eAAejQ,GAC1B,IAAIg2B,EAAoBtsB,eAAeC,QAAQ,gBAC/CkL,KAAK2T,SAAS,CAAEzrB,SAAUi5B,M,kCAG5B,WACEnsB,OAAOosB,oBAAoB,SAAU,Q,oBAevC,WACE,OACE,uBAAK1M,UAAU,gBAAf,UACE,sBAAKA,UAAU,4BAAf,SACE,qBAAGmD,KAAK,aAAR,UACG,IACD,qBAAInD,UAAU,UAAd,SACE,sBAAKI,IAAKyH,YAIhB,sBAAK7H,UAAU,aAAf,SACE,uBAAKA,UAAU,gCAAf,UACE,wBAAMA,UAAU,yBAAhB,UACG,IADH,YAEY1U,KAAKlc,MAAMoE,SACrB,sBACEs3B,IAAI,cACJ9K,UAAU,6BACVI,IAAKuM,QAGT,uBAAK3M,UAAU,YAAf,UACE,uBACEA,UAAU,WACVe,QAAS,kBAAOzgB,OAAOC,SAAW,YAFpC,UAIE,oBAAGyf,UAAU,eAJf,qBAMA,uBACEA,UAAU,WACVe,QAAS,SAACP,GACRrgB,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,oBAAGyf,UAAU,mBAjBf,2B,GA7NOqB,aAyQNC,gBAjBS,SAAClyB,GACvB,MAAO,CACLw9B,SAAUx9B,EAAM4H,KAAKtH,UAIE,SAACoT,GAC1B,MAAO,CACL0pB,SAAU,SAAC/1B,GACTqM,EAAS6N,GAAYC,QAAQna,KAE/BiQ,eAAgB,SAACjQ,GACfqM,EAAS6N,GAAYjK,eAAejQ,QAK3B6qB,CAA6C2K,IC/QvCY,G,4JACnB,WACE,OACE,uBAAK7M,UAAU,aAAf,UACE,sBAAKA,UAAU,qBAAf,+DAGA,uBAAKA,UAAU,+BAAf,kCACwB,IACtB,oBACEmD,KAAK,wBACLtE,OAAO,SACPmB,UAAU,cAHZ,8C,GAT0BqB,aCK9ByL,I,yDACJ,WAAYxT,GAAQ,IAAD,8BACjB,cAAMA,IACDlqB,MAAQ,CACXi9B,KAAK,GAEP,EAAK38B,MAAQ,CACX,CACEyxB,MAAO,YACPC,KAAM,kBACN9L,IAAK,KAEP,CACE6L,MAAO,UACPC,KAAM,aACN1xB,MAAO,CACL,CACE0xB,KAAM,cACND,MAAO,cACP7L,IAAK,wBAIP,CACE8L,KAAM,eACND,MAAO,iBACP7L,IAAK,2BAGP,CACE8L,KAAM,kBACND,MAAO,kBACP7L,IAAK,4BAIP,CACE6L,MAAO,cACP7L,IAAK,uBACL8L,KAAM,eAER,CACED,MAAO,gBACP7L,IAAK,yBACL8L,KAAM,qBAER,CACED,MAAO,gBACP7L,IAAK,yBACL8L,KAAM,qBAER,CACED,MAAO,yBACP7L,IAAK,iCACL8L,KAAM,qBAER,CACED,MAAO,wBACP7L,IAAK,iCACL8L,KAAM,aAER,CACED,MAAO,aACP7L,IAAK,sBACL8L,KAAM,wBAIZ,CACED,MAAO,eACPC,KAAM,qBACN1xB,MAAO,CACL,CACEyxB,MAAO,UACP7L,IAAK,wBACL8L,KAAM,qBAER,CACED,MAAO,SACP7L,IAAK,uBACL8L,KAAM,qBAER,CACED,MAAO,aACP7L,IAAK,2BACL8L,KAAM,qBAER,CACED,MAAO,sBACP7L,IAAK,mCACL8L,KAAM,uBAIZ,CACED,MAAO,UACPC,KAAM,kBACN1xB,MAAO,CACL,CACEyxB,MAAO,sBACP7L,IAAK,4BACL8L,KAAM,qBAER,CACED,MAAO,iBACP7L,IAAK,0BACL8L,KAAM,qBAER,CACED,MAAO,mBACP7L,IAAK,4BACL8L,KAAM,qBAER,CACED,MAAO,gBACP7L,IAAK,yBACL8L,KAAM,qBAER,CACED,MAAO,wBACP7L,IAAK,iCACL8L,KAAM,qBAER,CACED,MAAO,wBACP7L,IAAK,iCACL8L,KAAM,qBAER,CACED,MAAO,uBACP7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","file":"static/js/main.011b22a0.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 isDownload: state.isDownload == null ? 1 : state.isDownload + 1\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 isDownload: state.isDownload == null ? 1 : state.isDownload + 1\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\nasync function 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 const response = await fetch(\r\n `${process.env.REACT_APP_API_URL}DispatchRpt/GetDispatchReport`,\r\n requestOptions\r\n );\r\n return handleResponse(response);\r\n}\r\n\r\nasync function 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 const response = await fetch(\r\n `${process.env.REACT_APP_API_URL}DispatchRpt/GetDispatchToPrint`,\r\n requestOptions\r\n );\r\n return handleResponse(response);\r\n}\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 //history.push('/');\r\n if (response && response.ResponseCode) {\r\n if (response.ResponseCode === \"200\") {\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\nimport { de } from \"date-fns/locale\";\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(\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: DispatchRptConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: DispatchRptConstants.GETALL_SUCCESS, datas };\r\n }\r\n function successExport(datas) {\r\n return { type: DispatchRptConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: DispatchRptConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction exportData(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n DispatchRptService.fetchDispatchData(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.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 delete v.CreatedDt;\r\n delete v.UserName;\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: DispatchRptConstants.GETEXPORT_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: DispatchRptConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: DispatchRptConstants.GETEXPORT_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: DispatchRptConstants.LOADING_REQUEST,\r\n 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(\r\n (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 function request() {\r\n return { type: DispatchRptConstants.GETPRINT_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: DispatchRptConstants.GETPRINT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: DispatchRptConstants.GETPRINT_FAILURE, error };\r\n }\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(\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) {\r\n delete v.TotalRows;\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() {\r\n return { type: SecondaryPackingRptConstants.GETALL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: SecondaryPackingRptConstants.GETALL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: SecondaryPackingRptConstants.GETALL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction GetVendorListDDL(UserId) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n SecondaryPackingRptService.GetVendorListDDL(UserId).then(\r\n (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 function request() {\r\n return { type: SecondaryPackingRptConstants.GETVENDORDDL_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: SecondaryPackingRptConstants.GETVENDORDDL_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: SecondaryPackingRptConstants.GETVENDORDDL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction exportData(obj) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n SecondaryPackingRptService.GetSecondaryPackingReportExport(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: SecondaryPackingRptConstants.GETEXPORT_REQUEST };\r\n }\r\n function success(datas) {\r\n return { type: SecondaryPackingRptConstants.GETEXPORT_SUCCESS, datas };\r\n }\r\n function failure(error) {\r\n return { type: SecondaryPackingRptConstants.GETEXPORT_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction loadingData(isbool) {\r\n return {\r\n type: SecondaryPackingRptConstants.LOADING_REQUEST,\r\n isbool\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 {\r\n WarrantyRegistrationReportConstants,\r\n QRCodeTrackingRptConstants\r\n} 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 {\r\n type: WarrantyRegistrationReportConstants.GETEXPORT_SUCCESS,\r\n datas\r\n };\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 {\r\n type: WarrantyRegistrationReportConstants.GETEXPORT_SUCCESS,\r\n datas\r\n };\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 {\r\n type: WarrantyRegistrationReportConstants.GETEXPORT_SUCCESS,\r\n datas\r\n };\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 delete v.WarrantyId;\r\n delete v.VerificationId;\r\n delete v.CompId;\r\n delete v.State;\r\n delete v.City;\r\n delete v.productImage;\r\n delete v.userId;\r\n delete v.isApprove;\r\n delete v.isReject;\r\n delete v.WarrantyRegistrationFileUpload;\r\n delete v.claimdate;\r\n delete v.reason;\r\n delete v.isClaim;\r\n delete v.isReregister;\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 {\r\n type: WarrantyRegistrationReportConstants.GETEXPORT_SUCCESS,\r\n datas\r\n };\r\n }\r\n function failure(error) {\r\n return {\r\n type: WarrantyRegistrationReportConstants.GETEXPORT_FAILURE,\r\n error\r\n };\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 {\r\n type: WarrantyRegistrationReportConstants.ISACTIVE_FAILURE,\r\n error\r\n };\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 {\r\n type: WarrantyRegistrationReportConstants.ISACTIVE_FAILURE,\r\n error\r\n };\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 {\r\n type: WarrantyRegistrationReportConstants.ISACTIVE_FAILURE,\r\n error\r\n };\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 {\r\n type: WarrantyRegistrationReportConstants.ISACTIVE_FAILURE,\r\n error\r\n };\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 {\r\n type: WarrantyRegistrationReportConstants.ISACTIVE_FAILURE,\r\n error\r\n };\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 { verificationLogActions } 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 VerificationLog 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.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 };\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 onChange = (date) => this.setState({ FromDate: \"\", ToDate: \"\" });\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 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\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 Export() {\r\n this.tblResponse.PageSize = -1;\r\n this.tblResponse.First = 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue =\r\n 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.exportingData(this.tblResponse);\r\n this.setState({\r\n Download: true\r\n });\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 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 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 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 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 IsDownload: state.verification.isDownload\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 =\r\n 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({\r\n sortOrder: this.state.sortOrder === 1 ? 2 : 1,\r\n globalFilter: e.target.value\r\n });\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 \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:\r\n 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) =>\r\n 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 } 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.tblResponse.SortColumn = \"ReceiveDate\";\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({\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 actionBodyTemplate(rowData, column) {\r\n //to print\r\n const print = (e) => {\r\n this.props.getDispatchToPrint(rowData);\r\n var options = {\r\n weekday: \"long\",\r\n year: \"numeric\",\r\n month: \"long\",\r\n day: \"numeric\"\r\n };\r\n setTimeout(() => {\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 // actionBodyTemplate(rowData) {\r\n // ;\r\n // const print = (e) => {\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 =\r\n 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 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 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 {/* {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\nconst mapStateToProps = (state) => {\r\n ////console.log('state.DispatchReport.items', state.DispatchReport.items);\r\n return {\r\n DispatchList: state.DispatchReport.items,\r\n List:\r\n state.DispatchReport.exportitems == undefined\r\n ? []\r\n : state.DispatchReport.exportitems,\r\n loading: state.verification.loding,\r\n PrintData:\r\n state.DispatchReport.printdata == undefined\r\n ? []\r\n : 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(DispatchRptActions.getAll(obj));\r\n },\r\n loadingData: (isLoding) =>\r\n dispatch(DispatchRptActions.loadingData(isLoding)),\r\n exportData: (obj) => dispatch(DispatchRptActions.exportData(obj)),\r\n getDispatchToPrint: (data) =>\r\n dispatch(DispatchRptActions.GetDispatchToPrint(data))\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(DispatchReport);\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, 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 { CSVLink } from \"react-csv\";\r\nimport { WarrantyRegistrationReportActions } from \"../../actions\";\r\n\r\nclass WarrantyRegistrationReport 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.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 };\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 onChange = (date) => this.setState({ FromDate: \"\", ToDate: \"\" });\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 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 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 Export() {\r\n this.tblResponse.PageSize = -1;\r\n this.tblResponse.First = 1;\r\n this.tblResponse.IsActive = true;\r\n this.tblResponse.SearchValue =\r\n 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.exportingData(this.tblResponse);\r\n this.setState({\r\n Download: true\r\n });\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: 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 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 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 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 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 return {\r\n warrantyList: state.warranty.items,\r\n List:\r\n state.warranty.exportitems == undefined ? [] : state.warranty.exportitems,\r\n loading: state.warranty.loding,\r\n IsDownload: state.warranty.isDownload\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) =>\r\n dispatch(WarrantyRegistrationReportActions.exportData(obj))\r\n };\r\n};\r\n\r\nexport default connect(\r\n mapStateToProps,\r\n mapDispatchToProps\r\n)(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