{"version":3,"sources":["config/app-settings.ts","components/sidebar/sidebar-profile.jsx","components/sidebar/sidebar-nav-list.jsx","components/sidebar/menu.jsx","components/sidebar/sidebar-nav.jsx","components/sidebar/sidebar.jsx","models/generated.ts","components/sidebar-right/sidebar-right.jsx","components/panel/panel.jsx","config/user-context.ts","services/config.ts","services/account.service.ts","helpers/fetch-wrapper.ts","helpers/history.ts","helpers/withUseFormHook.tsx","helpers/role.ts","helpers/date.ts","services/contracts.service.ts","services/documents.service.ts","services/messages.service.ts","helpers/string.ts","models/models.tsx","pages/components/contract-info.tsx","helpers/address.ts","services/alert.service.ts","services/customers.service.ts","pages/components/customer-card.tsx","pages/components/add-customer.tsx","pages/components/customer-selector.tsx","pages/components/customers-section.tsx","pages/components/message.tsx","pages/contract-related-base.tsx","pages/home.tsx","pages/invoices.tsx","services/payments.service.ts","pages/payments.tsx","pages/components/contract-details.tsx","pages/contracts.tsx","services/applications-and-complains.service.ts","pages/applications-and-complains.tsx","services/meters.service.ts","pages/meter-reading.tsx","pages/components/declaration-box-item.tsx","services/declarations.service.ts","pages/declarations.tsx","pages/account/login.tsx","pages/account/register.tsx","pages/account/forgot-password.tsx","pages/account/reset-password.tsx","pages/account/verify-email.tsx","pages/components/message-editor.tsx","pages/message-manager.tsx","services/static-files.service.ts","pages/privacy-policy.tsx","services/contacts.service.ts","pages/contact.tsx","config/app-route.tsx","pages/regulations.tsx","components/content/content.jsx","components/float-sub-menu/float-sub-menu-list.jsx","components/float-sub-menu/float-sub-menu.jsx","services/enovasync.notificatin.service.ts","helpers/array.ts","components/header/dropdown/language.jsx","components/header/dropdown/profile.jsx","components/header/dropdown/mega.jsx","components/header/header.jsx","pages/components/edit-profile.tsx","pages/components/ebok-top-menu.tsx","pages/components/footer.tsx","app.tsx","index.tsx"],"names":["IAppContextDefault","appHeaderNone","appHeaderInverse","appHeaderMegaMenu","appHeaderLanguageBar","hasScroll","appSidebarNone","appSidebarWide","appSidebarLight","appSidebarMinify","appSidebarMobileToggled","appSidebarTransparent","appSidebarSearch","appSidebarFloatSubMenuActive","appSidebarFloatSubMenu","appSidebarFloatSubMenuTop","appSidebarFloatSubMenuLeft","appSidebarFloatSubMenuBottom","appSidebarFloatSubMenuLineTop","appSidebarFloatSubMenuLineBottom","appSidebarFloatSubMenuArrowTop","appSidebarFloatSubMenuArrowBottom","appSidebarFloatSubMenuOffset","appContentNone","appContentClass","appContentFullHeight","appTopMenu","appTopMenuMobileToggled","appSidebarTwo","appSidebarEnd","appSidebarEndToggled","appSidebarEndMobileToggled","toggleAppSidebarMinify","e","toggleAppSidebarMobile","handleSetAppSidebarNone","value","handleSetAppSidebarMinified","handleSetAppSidebarWide","handleSetAppSidebarLight","handleSetAppSidebarTransparent","handleSetAppSidebarSearch","toggleAppSidebarEnd","toggleAppSidebarEndMobile","handleSetAppSidebarEnd","handleAppSidebarFloatSubMenuOnMouseOver","handleAppSidebarFloatSubMenuOnMouseOut","handleAppSidebarOnMouseOver","menu","handleAppSidebarOnMouseOut","handleAppSidebarFloatSubMenuClick","handleSetAppContentNone","handleSetAppContentClass","handleSetAppContentFullHeight","handleSetAppHeaderNone","handleSetAppHeaderInverse","handleSetAppHeaderMegaMenu","handleSetAppHeaderLanguageBar","handleSetAppTopMenu","toggleAppTopMenuMobile","handleSetAppSidebarTwo","handleSetAppBoxedLayout","AppContext","React","createContext","SidebarProfile","props","state","profileActive","handleProfileExpand","bind","preventDefault","this","setState","Consumer","className","to","onClick","Component","SidebarNavList","active","clicked","i","match","icon","data","img","src","alt","caret","children","badge","label","highlight","title","appSidebarMinified","path","exact","search","onMouseOver","onMouseOut","expand","map","submenu","handleExpand","Menu","SidebarNav","menus","handleSidebarSearch","searchValue","target","toLowerCase","filter","item","length","title2","context","type","class","placeholder","onKeyUp","contextType","Sidebar","Fragment","id","options","suppressScrollX","ContractTypeEnum","SidebarRight","collapse","toggleCollapse","index","newArray","collapseObj","push","Card","CardHeader","Collapse","isOpen","CardBody","PanelStat","Panel","toggleExpand","toggleRemove","remove","toggleReload","reload","setTimeout","Provider","theme","nextProps","prevState","PanelHeader","noButton","PanelBody","ContactFormDto","accountId","email","subject","content","submitDate","sentDate","status","property","hasOwnProperty","_data","Date","toString","undefined","toISOString","result","init","DocumentTypeEnum","FieldTypeEnum","CustomerValidationReqeuest","customerNo","invoiceNumber","invoiceAmount","FormStatusEnum","Role","RegisterRequest","firstName","lastName","password","acceptTerms","ResetPasswordRequest","token","UpdateRequest","UserInfoDtoDefault","userId","isLoggedIn","role","User","customerInfos","selectedCustomerInfo","electronicInvoiceAgreed","userInfo","UserContext","login","authenticateResponse","setCustomerInfos","setCustomers","customers","setSelectedCustomer","customerId","setContracts","contracts","setDocuments","setPayments","setMeterWithMeterReads","openAddCustomerModalDialog","serverVars","baseUrl","apiUrl","getConfiguration","refreshTokenTimeout","userSubject","BehaviorSubject","prevUser","accountService","fetchWrapper","post","then","user","next","startRefreshTokenTimer","logout","stopRefreshTokenTimer","history","refreshToken","register","params","verifyEmail","forgotPassword","validateResetToken","resetPassword","request","update","put","asObservable","userValue","console","log","JSON","stringify","catch","err","error","jwtToken","parse","atob","split","timeout","exp","getTime","now","clearTimeout","get","url","requestOptions","method","headers","authHeader","fetch","handleResponse","getFile","actoin","credentials","responce","response","action","blob","ok","includes","statusText","Promise","reject","saveToFileSystem","contentDispositionHeader","filename","join","blobWithType","Blob","saveAs","body","postFiles","values","delete","urlHelper","parameterizeArray","key","arr","arrEncode","encodeURIComponent","isApiUrl","startsWith","Authorization","text","message","createBrowserHistory","withUseFormHook","userFormOptions","form","useForm","roleHelper","compareRole","userRole","minRole","Admin","dateHelper","numberToDateFormat","toDate","moment","format","getMonthName","d","monthNames","getMonth","addDays","getNextDeclarationMonth","thisMonth","monthIn7Days","getMonthNameNum","n","date","days","setDate","getDate","contractsService","getContracts","getContractsWithDetails","getContractsByIds","deactivateContract","getContractsSummary","a","resp","res","ids","contractType","Water","Waste","documentsService","getDocuments","getDocumentsByIds","getInvoiceFile","invoiceId","messagesService","getMessages","addMessage","updateMessage","onlyActive","skip","take","stringHelper","currencyFormat","onUndefinde","Intl","NumberFormat","style","currency","ModalDialogMode","ContractInfo","contractSummaryInfoDto","currentDueCaption","currentDueValue","paymentCaption","paymentDate","overdueValue","overdueCaption","overpaidValue","overpaidCaption","addressHelper","c","withZipCode","street","streetNum","zipCode","city","AlertType","alertSubject","Subject","defaultId","alertService","onAlert","pipe","x","success","alert","Success","Error","info","Info","warn","Warning","clear","autoClose","keepAfterRouteChange","customersService","getCustomers","sendRequestToAssignCustomer","synchronizeAccount","removeCustomer","CustomerCard","closeCustomerModal","isModalDialogOpened","isSynch","from","first","subscribe","val","complete","openAddCustomer","removeCustomerCanceled","prev","showRemoveCustomerConfirmation","removingCustomerId","closeModalDialog","modalDialogMode","Edit","evt","stopPropagation","param","removedCustomer","newCustomerInfos","userContextData","customer","marginRight","show","onConfirm","removeCustomerConfirmed","onCancel","dependencies","showCancel","focusCancelBtn","confirmBtnBsStyle","cancelBtnBsStyle","displayRemoveButton","name","vatid","textAlign","justifyContent","marginLeft","AddCustomer","onSubmit","isProcessing","showInfoAfterValidation","newCustomers","toggle","handleSubmit","errors","formState","hideInfoAfterValidation","confirmBtnText","Modal","ModalHeader","ModalBody","readOnly","required","htmlFor","step","ModalFooter","Button","disabled","color","Spinner","animation","variant","CustomerSelector","handleChangeCustomer","ev","persist","userContext","FloatingLabel","Form","Select","onChange","CustomerSection","openRemoveCustomer","Message","contentText","ContractRelatedComponentBase","force","resolve","contractInfos","contractWithDetails","Home","messages","contractSummaryInfoWater","contractSummaryInfoWaste","contractSummaryInfoAnother","documents","items","Another","setContractsAndDocuments","prevProps","some","Invoices","getItems","docs","filteredItems","getFilterItems","fromDate","fromDateChange","valueOf","toDateChange","acceptDownloadingInvoiceCanceled","showRequestForAcceptDownloadingInvoice","redirectToForm","setMonth","wasDocumentsChanged","dateSale","reduce","b","concat","acceptDownloadingInvoiceConfirmed","cancelBtnText","idx","number","dueDate","valueTotalGross","valuePaid","documentType","InterestNote","downloadAllowed","eFaktura","downloadInvoice","applyForAcceptDownloadingInvoice","paymentsService","getPayments","getPaymentsByIds","Payments","payments","wasPaymentsChanged","amount","descripton","ContractDetails","contractDetails","contract","meters","master","bankAccount","containers","kind","Contracts","change","event","selectedContractType","deattache","showDeattacheConfirmation","deattachingContractId","deattacheConfirmed","contractNumber","newList","deattacheCanceled","selectRow","selectedRow","wasContractsChanged","selectContractType","float","contractDate","applicationsAndComplainsService","getFormSubjects","getFormTemplates","sendApplicationAndComplainForm","formSubjectId","customerIdUri","defaultState","formSubjects","isLoading","selectedFormSubjectId","formTemplates","formWasSend","isSending","sendingError","ApplicationsAndComplains","handleAfterSending","handleSubjectOnChange","loadFormTemplates","formId","preState","numberFormId","parseInt","isNaN","formData","FormData","forEach","append","fieldType","File","fileInput","Array","elements","find","file","files","handleClear","setValueInArray","v","RadioButton","refreshFormSubjects","str","replace","slice","trim","renderField","changeState","RemarkHeader","fontSize","Remark","CheckBox","checked","isRequired","TextArea","BankAccountNumber","inputValue","currentTarget","formatAccount","maxLength","minLength","withParams","useParams","metersService","getMetersWithMeterReads","getMetersWithMeterReadsByIds","MeterReading","ci","setMeterAndSelectedMeterInStatus","selectedMeterId","meterInfos","selected","updatedCi","newItem","meter","contractId","meterReads","readDate","consumption","boxTypes","boxSizes","DeclarationBoxItem","prop","removeClick","getValues","setValue","bg","Body","itemNumber","bs","boxes","boxType","boxSize","boxAmount","itemCount","declarationsService","getDeclarations","submitDeclaration","Declarations","addClick","reset","isValid","fields","field","formSchema","Yup","shape","typeError","of","integer","min","formOptions","resolver","yupResolver","defaultValues","withUseFormHookWithFieldArray","arrayFieldName","control","arrayField","useFieldArray","mode","reValidateMode","Login","loginSubscription","unsubscribe","throwError","tap","redirect","shouldRedirect","isVerified","loading","pattern","Register","emailConfirm","passwordConfirm","oneOf","ForgotPassword","ResetPassword","queryString","window","location","confirmPassword","VerifyEmail","EmailStatus","useState","setRedirect","emailStatus","setEmailStatus","useEffect","pathname","getBody","MessageEditor","Add","messageToManage","publicationDate","height","MessageManager","newValue","openAddMessage","closeMessageEditorModalDialog","exitCode","openEditMessage","changeMessageActivity","changeToActive","deactivationDate","href","staticFilesService","getRegulations","getPrivatePolicy","PrivacyPolicy","innerHtml","dangerouslySetInnerHTML","__html","contactsService","submitContactForm","contactForm","Contact","routes","component","setTitle","routeArray","appTitle","document","Content","listen","route","withRouter","FloatSubMenuList","FloatSubMenu","left","top","bottom","enovaSyncNotificationService","getEnovaSyncStream","Observable","obs","operationsHubConnection","HubConnectionBuilder","withUrl","withAutomaticReconnect","build","onclose","onreconnected","invoke","on","start","stop","arrayHelper","groupBy","list","keyGetter","Map","collection","set","DropdownLanguage","dropdownOpen","Dropdown","tag","DropdownToggle","DropdownMenu","DropdownItem","divider","DropdownProfile","right","DropdownMegaMenu","UncontrolledDropdown","Header","toggleAppHeaderMegaMenuMobile","appHeaderMegaMenuMobile","EditProfile","matches","excludeEmptyString","EbokTopMenu","openEditProfileModalDialog","editProfileProps","closeEditProfileModalDialog","Navbar","collapseOnSelect","sticky","Container","Col","Brand","as","Link","Toggle","Nav","NavDropdown","Item","Divider","Footer","App","appSidebarFloatSubMenuRemove","appSidebarFloatSubMenuCalculate","addCustomerModal","handleScroll","scrollY","appContext","elm","getElementsByClassName","classList","add","alertServiceSubscription","accountServiceUser","userSubscription","enovaSyncNotificationSubscription","newSelectedCustomer","prevSelectedCustomerId","newSelectedCustomerId","prevSelectedCustomer","wasMeterReadsChanged","updateCustomerInfo","customerInfo","addOrUpdateContracts","con","contractInfo","addOrUpdateDocuments","addOrUpdatePayments","grouped","contractIdKey","y","addOrUpdateMeterReads","getElementById","offsetWidth","offsetLeft","offset","offsetParent","getBoundingClientRect","arrowTop","arrowBottom","lineTop","lineBottom","targetTop","windowHeight","innerHeight","querySelector","offsetHeight","aBottom","targetHeight","addEventListener","addNotification","store","insert","container","animationIn","animationOut","dismiss","duration","onScreen","onRemoval","removedBy","handleEnovaSync","switchMap","customerDtos","catchError","finally","handleEnovaSyncContractsAdded","handleEnovaSyncContractsUploaded","handleEnovaSyncDocumentsAdded","handleEnovaSyncPaymentsAdded","handleEnovaSyncMeterReadsAdded","removeEventListener","updater","ici","findIndex","ReactDOM","render"],"mappings":"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","file":"static/js/main.f47d58cb.chunk.js","sourcesContent":["import React from 'react';\r\n\r\nexport interface IAppContext \r\n{\r\n\tappHeaderNone: boolean,\r\n\tappHeaderInverse: boolean,\r\n\tappHeaderMegaMenu: boolean,\r\n\tappHeaderLanguageBar: boolean,\r\n\thasScroll: boolean,\r\n\thandleSetAppHeaderNone: (e: any) => void,\r\n\thandleSetAppHeaderInverse: (e: any) => void,\r\n\thandleSetAppHeaderLanguageBar: (e: any) => void,\r\n\thandleSetAppHeaderMegaMenu: (e: any) => void,\r\n\t\r\n\tappSidebarNone: boolean,\r\n\tappSidebarWide: boolean,\r\n\tappSidebarLight: boolean,\r\n\tappSidebarMinify: boolean,\r\n\tappSidebarMobileToggled: boolean,\r\n\tappSidebarTransparent: boolean,\r\n\tappSidebarSearch: boolean,\r\n\thandleSetAppSidebarNone: (e: any) => void,\r\n\thandleSetAppSidebarWide: (e: any) => void,\r\n\thandleSetAppSidebarLight: (e: any) => void,\r\n\thandleSetAppSidebarMinified: (e: any) => void,\r\n\thandleSetAppSidebarTransparent: (e: any) => void,\r\n\thandleSetAppSidebarSearch: (e: any) => void,\r\n\thandleAppSidebarOnMouseOut: (e: any) => void,\r\n\thandleAppSidebarOnMouseOver: (e: any, menu: any) => void,\r\n\ttoggleAppSidebarMinify: (e: any) => void,\r\n\ttoggleAppSidebarMobile: (e: any) => void,\r\n\t\r\n\tappSidebarFloatSubMenuActive: boolean,\r\n\tappSidebarFloatSubMenu: string,\r\n\tappSidebarFloatSubMenuTop: string,\r\n\tappSidebarFloatSubMenuLeft: string,\r\n\tappSidebarFloatSubMenuBottom: string,\r\n\tappSidebarFloatSubMenuLineTop: string,\r\n\tappSidebarFloatSubMenuLineBottom: string,\r\n\tappSidebarFloatSubMenuArrowTop: string,\r\n\tappSidebarFloatSubMenuArrowBottom: string,\r\n\tappSidebarFloatSubMenuOffset: any,\r\n\thandleAppSidebarFloatSubMenuOnMouseOver: (e: any) => void,\r\n\thandleAppSidebarFloatSubMenuOnMouseOut: (e: any) => void,\r\n\thandleAppSidebarFloatSubMenuClick: () => void,\r\n\t\r\n\tappContentNone: boolean,\r\n\tappContentClass: string,\r\n\tappContentFullHeight: boolean,\r\n\thandleSetAppContentNone: (e: any) => void,\r\n\thandleSetAppContentClass: (e: any) => void,\r\n\thandleSetAppContentFullHeight: (e: any) => void,\r\n\t\r\n\tappTopMenu: boolean,\r\n\tappTopMenuMobileToggled: boolean,\r\n\ttoggleAppTopMenuMobile: (e: any) => void,\r\n\thandleSetAppTopMenu: (e: any) => void,\r\n\t\r\n\tappSidebarTwo: boolean,\r\n\thandleSetAppSidebarTwo: (e: any) => void,\r\n\t\r\n\tappSidebarEnd: boolean,\r\n\tappSidebarEndToggled: boolean,\r\n\tappSidebarEndMobileToggled: boolean,\r\n\ttoggleAppSidebarEnd: (e: any) => void,\r\n\ttoggleAppSidebarEndMobile: (e: any) => void,\r\n\thandleSetAppSidebarEnd: (e: any) => void,\r\n\t\r\n\thandleSetAppBoxedLayout: (e: any) => void\r\n}\r\n\r\nexport const IAppContextDefault = {\t\r\n appHeaderNone: false,\r\n appHeaderInverse: false,\r\n appHeaderMegaMenu: false,\r\n appHeaderLanguageBar: false,\r\n hasScroll: false,\r\n appSidebarNone: true,\r\n appSidebarWide: false,\r\n appSidebarLight: false,\r\n appSidebarMinify: false,\r\n appSidebarMobileToggled: false,\r\n appSidebarTransparent: false,\r\n appSidebarSearch: false,\r\n appSidebarFloatSubMenuActive: false,\r\n appSidebarFloatSubMenu: '',\r\n appSidebarFloatSubMenuTop: 'auto',\r\n appSidebarFloatSubMenuLeft: 'auto',\r\n appSidebarFloatSubMenuBottom: 'auto',\r\n appSidebarFloatSubMenuLineTop: 'auto',\r\n appSidebarFloatSubMenuLineBottom: 'auto',\r\n appSidebarFloatSubMenuArrowTop: 'auto',\r\n appSidebarFloatSubMenuArrowBottom: 'auto',\r\n appSidebarFloatSubMenuOffset: '',\r\n appContentNone: false,\r\n appContentClass: '',\r\n appContentFullHeight: false,\r\n appTopMenu: true,\r\n appTopMenuMobileToggled: false,\r\n appSidebarTwo: false,\r\n appSidebarEnd: false,\r\n appSidebarEndToggled: false,\r\n appSidebarEndMobileToggled: false,\r\n\r\n\r\n toggleAppSidebarMinify: (e: any) => null,\r\n toggleAppSidebarMobile: (e: any) => null,\r\n handleSetAppSidebarNone: (value: any) => null,\r\n handleSetAppSidebarMinified: (value: any) => null,\r\n handleSetAppSidebarWide: (value: any) => null,\r\n handleSetAppSidebarLight: (value: any) => null,\r\n handleSetAppSidebarTransparent: (value: any) => null,\r\n handleSetAppSidebarSearch: (value: any) => null,\r\n toggleAppSidebarEnd: (e: any) => null,\r\n toggleAppSidebarEndMobile: (e: any) => null,\r\n handleSetAppSidebarEnd: (value: any) => null,\r\n handleAppSidebarFloatSubMenuOnMouseOver: (e: any) => null,\r\n handleAppSidebarFloatSubMenuOnMouseOut: (e: any) => null,\r\n handleAppSidebarOnMouseOver: (e: any, menu: any) => null,\r\n handleAppSidebarOnMouseOut: (e: any) => null,\r\n handleAppSidebarFloatSubMenuClick: () =>null,\r\n handleSetAppContentNone: (value: any) => null,\r\n handleSetAppContentClass: (value: any) => null,\r\n handleSetAppContentFullHeight: (value: any) => null,\r\n handleSetAppHeaderNone: (value: any) => null,\r\n handleSetAppHeaderInverse: (value: any) => null,\r\n handleSetAppHeaderMegaMenu: (value: any) => null,\r\n handleSetAppHeaderLanguageBar: (value: any) => null,\r\n handleSetAppTopMenu: (value: any) => null,\r\n toggleAppTopMenuMobile: (e: any) => null,\r\n handleSetAppSidebarTwo: (value: any) => null,\r\n handleSetAppBoxedLayout: (value: any) => null\r\n}\r\n\r\nexport const AppContext = React.createContext(IAppContextDefault);","import React from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport { AppContext } from './../../config/app-settings';\r\n\r\nclass SidebarProfile extends React.Component {\r\n\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\tprofileActive: 0\r\n\t\t};\r\n\t\tthis.handleProfileExpand = this.handleProfileExpand.bind(this);\r\n\t}\r\n\r\n\thandleProfileExpand(e) {\r\n\t\te.preventDefault();\r\n\t\tthis.setState(state => ({\r\n\t\t\tprofileActive: !this.state.profileActive,\r\n\t\t}));\r\n\t}\r\n \r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{({appSidebarMinify}) => (\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\tSean Ngu\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tFront end developer\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
Settings
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
Send Feedback
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
Helps
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t)\r\n\t}\r\n}\r\n\r\nexport default SidebarProfile;","import React from 'react';\r\nimport { Route, Link } from 'react-router-dom';\r\nimport { AppContext } from './../../config/app-settings';\r\n\r\nclass SidebarNavList extends React.Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\tactive: -1,\r\n\t\t\tclicked: -1\r\n\t\t};\r\n\t}\r\n\r\n\thandleExpand(e, i, match) {\r\n\t\te.preventDefault();\r\n\r\n\t\tthis.setState(state => ({\r\n\t\t\tactive: (this.state.active === i ? -1 : i),\r\n\t\t\tclicked: 1\r\n\t\t}));\r\n\t}\r\n \r\n\trender() {\r\n\t\tvar icon = this.props.data.icon &&
;\r\n\t\tvar img = this.props.data.img &&
\"\"
;\r\n\t\tvar caret = (this.props.data.children && !this.props.data.badge) &&
;\r\n\t\tvar label = this.props.data.label && {this.props.data.label};\r\n\t\tvar badge = this.props.data.badge &&
{this.props.data.badge}
;\r\n\t\tvar highlight = this.props.data.highlight && ;\r\n\t\tvar title = this.props.data.title &&
{this.props.data.title} {label} {highlight}
;\r\n\t\t\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{({handleAppSidebarOnMouseOver, handleAppSidebarOnMouseOut, appSidebarMinified}) => (\r\n\t\t\t\t\t (\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{this.props.data.children ? (\r\n\t\t\t\t\t\t\t\t handleAppSidebarOnMouseOver(e, this.props.data)} \r\n\t\t\t\t\t\t\t\t\tonMouseOut={(e) => handleAppSidebarOnMouseOut(e, this.props.data)}\r\n\t\t\t\t\t\t\t\t\tonClick={this.props.expand}>{ img } { icon } { title }{ caret } { badge }\r\n\t\t\t\t\t\t\t):(\r\n\t\t\t\t\t\t\t\t{ img } { icon } { badge } { title }{ caret }\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t{this.props.data.children && (\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t{this.props.data.children && this.props.data.children.map((submenu, i) => (\r\n\t\t\t\t\t\t\t\t\t\t this.handleExpand(e, i, match)}\r\n\t\t\t\t\t\t\t\t\t\t\tactive={i === this.state.active} \r\n\t\t\t\t\t\t\t\t\t\t\tclicked={this.state.clicked}\r\n\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t)} />\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default SidebarNavList;","const Menu = [\r\n { path: '/', icon: 'fa fa-th', title: 'Home' },\r\n { path: '/menu', icon: 'fa fa-align-left', title: 'Menu Level',\r\n children: [\r\n { path: '/menu/menu-1-1', title: 'Menu 1.1',\r\n children: [\r\n { path: '/menu/menu-1-1/menu-2-1', title: 'Menu 2.1',\r\n children: [\r\n { path: '/menu/menu-1-1/menu-2-1/menu-3-1', title: 'Menu 3.1' },\r\n { path: '/menu/menu-1-1/menu-2-1/menu-3-2', title: 'Menu 3.2' }\r\n ]\r\n },\r\n { path: '/menu/menu-1-1/menu-2-2', title: 'Menu 2.2' },\r\n { path: '/menu/menu-1-1/menu-2-3', title: 'Menu 2.3' },\r\n ]\r\n },\r\n { path: '/menu/menu-1-2', title: 'Menu 1.2' },\r\n { path: '/menu/menu-1-3', title: 'Menu 1.3' },\r\n ]\r\n }\r\n]\r\n\r\nexport default Menu;\r\n","import React from 'react';\r\nimport { Route } from 'react-router-dom';\r\nimport { AppContext } from './../../config/app-settings';\r\nimport SidebarNavList from './sidebar-nav-list';\r\nimport menus from './menu';\r\n\r\nclass SidebarNav extends React.Component {\r\n\tstatic contextType = AppContext;\r\n\t\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\tactive: -1,\r\n\t\t\tclicked: -1,\r\n\t\t\tmenus: menus\r\n\t\t};\r\n\t\t\r\n\t\tthis.handleSidebarSearch = this.handleSidebarSearch.bind(this);\r\n\t}\r\n\r\n\thandleExpand(e, i, match) {\r\n\t\te.preventDefault();\r\n\r\n\t\tif (this.state.clicked === -1 && match) {\r\n\t\t\tthis.setState(state => ({\r\n\t\t\t\tactive: -1,\r\n\t\t\t\tclicked: 1\r\n\t\t\t}));\r\n\t\t} else {\r\n\t\t\tthis.setState(state => ({\r\n\t\t\t\tactive: (this.state.active === i ? -1 : i),\r\n\t\t\t\tclicked: 1\r\n\t\t\t}));\r\n\t\t}\r\n\t}\r\n\t\r\n\thandleSidebarSearch(e) {\r\n\t\tlet searchValue = e.target.value;\r\n\t\t\t\tsearchValue = searchValue.toLowerCase();\r\n\t\t\t\t\r\n\t\tthis.setState(state => {\r\n\t\t\tlet newMenus = [];\r\n\t\t\tif (searchValue !== '') {\r\n\t\t\t\tnewMenus = menus.filter(item => {\r\n\t\t\t\t\tlet title = item.title;\r\n\t\t\t\t\t\t\ttitle = title.toLowerCase();\r\n\t\t\t\t\tif (title.search(searchValue) > -1) {\r\n\t\t\t\t\t\titem.search = true;\r\n\t\t\t\t\t\treturn true;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tif (item.children) {\r\n\t\t\t\t\t\t\tfor (var i = 0; i < item.children.length; i++) {\r\n\t\t\t\t\t\t\t\tlet title2 = item.children[i]['title'];\r\n\t\t\t\t\t\t\t\t\t\ttitle2 = title2.toLowerCase();\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tif (title2.search(searchValue) > -1) {\r\n\t\t\t\t\t\t\t\t\titem.search = true;\r\n\t\t\t\t\t\t\t\t\treturn true;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tnewMenus = menus.filter(item => {\r\n\t\t\t\t\titem.search = false;\r\n\t\t\t\t\treturn true;\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\treturn {\r\n\t\t\t\tmenus: newMenus\r\n\t\t\t};\r\n\t\t});\r\n\t}\r\n \r\n\trender() {\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t{this.context.appSidebarSearch && (\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t)}\r\n\t\t\t\t
Navigation
\r\n\t\t\t\t{this.state.menus.map((menu, i) => (\r\n\t\t\t\t\t (\r\n\t\t\t\t\t\t this.handleExpand(e, i, match)}\r\n\t\t\t\t\t\t\tactive={i === this.state.active} \r\n\t\t\t\t\t\t\tclicked={this.state.clicked}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t)} />\r\n\t\t\t\t))}\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default SidebarNav;","import React from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport PerfectScrollbar from 'react-perfect-scrollbar';\r\nimport { AppContext } from './../../config/app-settings';\r\nimport SidebarProfile from './sidebar-profile';\r\nimport SidebarNav from './sidebar-nav';\r\n\r\nclass Sidebar extends React.Component {\r\n\tstatic contextType = AppContext;\r\n\t\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{({toggleAppSidebarMinify, toggleAppSidebarMobile, appSidebarTransparent}) => (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t{!this.context.appSidebarSearch && (\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t)\r\n\t}\r\n}\r\n\r\nexport default Sidebar;\r\n","/* tslint:disable */\r\n/* eslint-disable */\r\n//----------------------\r\n// \r\n// Generated using the NSwag toolchain v13.14.4.0 (NJsonSchema v10.5.2.0 (Newtonsoft.Json v11.0.0.0)) (http://NSwag.org)\r\n// \r\n//----------------------\r\n// ReSharper disable InconsistentNaming\r\n\r\n\r\n\r\nexport class AuthenticateRequest implements IAuthenticateRequest {\r\n email!: string;\r\n password!: string;\r\n\r\n constructor(data?: IAuthenticateRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.email = _data[\"email\"];\r\n this.password = _data[\"password\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): AuthenticateRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AuthenticateRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"email\"] = this.email;\r\n data[\"password\"] = this.password;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IAuthenticateRequest {\r\n email: string;\r\n password: string;\r\n}\r\n\r\nexport class AuthenticateResponse implements IAuthenticateResponse {\r\n id?: number;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n email?: string | undefined;\r\n role?: Role;\r\n created?: Date;\r\n updated?: Date | undefined;\r\n isVerified?: boolean;\r\n jwtToken?: string | undefined;\r\n electronicInvoiceAgreed?: boolean;\r\n\r\n constructor(data?: IAuthenticateResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.firstName = _data[\"firstName\"];\r\n this.lastName = _data[\"lastName\"];\r\n this.email = _data[\"email\"];\r\n this.role = _data[\"role\"];\r\n this.created = _data[\"created\"] ? new Date(_data[\"created\"].toString()) : undefined;\r\n this.updated = _data[\"updated\"] ? new Date(_data[\"updated\"].toString()) : undefined;\r\n this.isVerified = _data[\"isVerified\"];\r\n this.jwtToken = _data[\"jwtToken\"];\r\n this.electronicInvoiceAgreed = _data[\"electronicInvoiceAgreed\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): AuthenticateResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AuthenticateResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"firstName\"] = this.firstName;\r\n data[\"lastName\"] = this.lastName;\r\n data[\"email\"] = this.email;\r\n data[\"role\"] = this.role;\r\n data[\"created\"] = this.created ? this.created.toISOString() : undefined;\r\n data[\"updated\"] = this.updated ? this.updated.toISOString() : undefined;\r\n data[\"isVerified\"] = this.isVerified;\r\n data[\"jwtToken\"] = this.jwtToken;\r\n data[\"electronicInvoiceAgreed\"] = this.electronicInvoiceAgreed;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IAuthenticateResponse {\r\n id?: number;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n email?: string | undefined;\r\n role?: Role;\r\n created?: Date;\r\n updated?: Date | undefined;\r\n isVerified?: boolean;\r\n jwtToken?: string | undefined;\r\n electronicInvoiceAgreed?: boolean;\r\n}\r\n\r\nexport class ContactFormDto implements IContactFormDto {\r\n id?: number;\r\n accountId?: number | undefined;\r\n email?: string | undefined;\r\n subject?: string | undefined;\r\n content?: string | undefined;\r\n submitDate?: Date;\r\n sentDate?: Date | undefined;\r\n status?: FormStatusEnum;\r\n\r\n constructor(data?: IContactFormDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.accountId = _data[\"accountId\"];\r\n this.email = _data[\"email\"];\r\n this.subject = _data[\"subject\"];\r\n this.content = _data[\"content\"];\r\n this.submitDate = _data[\"submitDate\"] ? new Date(_data[\"submitDate\"].toString()) : undefined;\r\n this.sentDate = _data[\"sentDate\"] ? new Date(_data[\"sentDate\"].toString()) : undefined;\r\n this.status = _data[\"status\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ContactFormDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ContactFormDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"accountId\"] = this.accountId;\r\n data[\"email\"] = this.email;\r\n data[\"subject\"] = this.subject;\r\n data[\"content\"] = this.content;\r\n data[\"submitDate\"] = this.submitDate ? this.submitDate.toISOString() : undefined;\r\n data[\"sentDate\"] = this.sentDate ? this.sentDate.toISOString() : undefined;\r\n data[\"status\"] = this.status;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IContactFormDto {\r\n id?: number;\r\n accountId?: number | undefined;\r\n email?: string | undefined;\r\n subject?: string | undefined;\r\n content?: string | undefined;\r\n submitDate?: Date;\r\n sentDate?: Date | undefined;\r\n status?: FormStatusEnum;\r\n}\r\n\r\nexport class ContainerDto implements IContainerDto {\r\n id?: number;\r\n name?: string | undefined;\r\n number?: number;\r\n kind?: string | undefined;\r\n\r\n constructor(data?: IContainerDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.number = _data[\"number\"];\r\n this.kind = _data[\"kind\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ContainerDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ContainerDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"number\"] = this.number;\r\n data[\"kind\"] = this.kind;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IContainerDto {\r\n id?: number;\r\n name?: string | undefined;\r\n number?: number;\r\n kind?: string | undefined;\r\n}\r\n\r\nexport class ContractDto implements IContractDto {\r\n id?: number;\r\n contractType?: ContractTypeEnum;\r\n contractDate?: Date;\r\n contractNumber?: string | undefined;\r\n currentDue?: number;\r\n bankAccountNumber?: string | undefined;\r\n lastChanged?: Date;\r\n meters?: MeterDto[] | undefined;\r\n containers?: ContainerDto[] | undefined;\r\n street?: string | undefined;\r\n streetNum?: string | undefined;\r\n city?: string | undefined;\r\n zipCode?: string | undefined;\r\n\r\n constructor(data?: IContractDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.contractType = _data[\"contractType\"];\r\n this.contractDate = _data[\"contractDate\"] ? new Date(_data[\"contractDate\"].toString()) : undefined;\r\n this.contractNumber = _data[\"contractNumber\"];\r\n this.currentDue = _data[\"currentDue\"];\r\n this.bankAccountNumber = _data[\"bankAccountNumber\"];\r\n this.lastChanged = _data[\"lastChanged\"] ? new Date(_data[\"lastChanged\"].toString()) : undefined;\r\n if (Array.isArray(_data[\"meters\"])) {\r\n this.meters = [] as any;\r\n for (let item of _data[\"meters\"])\r\n this.meters!.push(MeterDto.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"containers\"])) {\r\n this.containers = [] as any;\r\n for (let item of _data[\"containers\"])\r\n this.containers!.push(ContainerDto.fromJS(item));\r\n }\r\n this.street = _data[\"street\"];\r\n this.streetNum = _data[\"streetNum\"];\r\n this.city = _data[\"city\"];\r\n this.zipCode = _data[\"zipCode\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ContractDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ContractDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"contractType\"] = this.contractType;\r\n data[\"contractDate\"] = this.contractDate ? this.contractDate.toISOString() : undefined;\r\n data[\"contractNumber\"] = this.contractNumber;\r\n data[\"currentDue\"] = this.currentDue;\r\n data[\"bankAccountNumber\"] = this.bankAccountNumber;\r\n data[\"lastChanged\"] = this.lastChanged ? this.lastChanged.toISOString() : undefined;\r\n if (Array.isArray(this.meters)) {\r\n data[\"meters\"] = [];\r\n for (let item of this.meters)\r\n data[\"meters\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.containers)) {\r\n data[\"containers\"] = [];\r\n for (let item of this.containers)\r\n data[\"containers\"].push(item.toJSON());\r\n }\r\n data[\"street\"] = this.street;\r\n data[\"streetNum\"] = this.streetNum;\r\n data[\"city\"] = this.city;\r\n data[\"zipCode\"] = this.zipCode;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IContractDto {\r\n id?: number;\r\n contractType?: ContractTypeEnum;\r\n contractDate?: Date;\r\n contractNumber?: string | undefined;\r\n currentDue?: number;\r\n bankAccountNumber?: string | undefined;\r\n lastChanged?: Date;\r\n meters?: MeterDto[] | undefined;\r\n containers?: ContainerDto[] | undefined;\r\n street?: string | undefined;\r\n streetNum?: string | undefined;\r\n city?: string | undefined;\r\n zipCode?: string | undefined;\r\n}\r\n\r\nexport class ContractSummaryInfoDto implements IContractSummaryInfoDto {\r\n name?: string | undefined;\r\n currentDueCaption?: string | undefined;\r\n currentDueValue?: number | undefined;\r\n paymentCaption?: string | undefined;\r\n paymentDate?: string | undefined;\r\n overdueCaption?: string | undefined;\r\n overdueValue?: number | undefined;\n overpaidCaption?: string | undefined;\n overpaidValue?: number | undefined;\r\n\r\n constructor(data?: IContractSummaryInfoDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.currentDueCaption = _data[\"currentDueCaption\"];\r\n this.currentDueValue = _data[\"currentDueValue\"];\r\n this.paymentCaption = _data[\"paymentCaption\"];\r\n this.paymentDate = _data[\"paymentDate\"];\r\n this.overdueCaption = _data[\"overdueCaption\"];\r\n this.overdueValue = _data[\"overdueValue\"];\n this.overpaidCaption = _data[\"overpaidCaption\"];\n this.overpaidValue = _data[\"overpaidValue\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ContractSummaryInfoDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ContractSummaryInfoDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"currentDueCaption\"] = this.currentDueCaption;\r\n data[\"currentDueValue\"] = this.currentDueValue;\r\n data[\"paymentCaption\"] = this.paymentCaption;\r\n data[\"paymentDate\"] = this.paymentDate;\r\n data[\"overdueCaption\"] = this.overdueCaption;\r\n data[\"overdueValue\"] = this.overdueValue;\n data[\"overpaidCaption\"] = this.overpaidCaption;\r\n data[\"overpaidValue\"] = this.overpaidValue;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IContractSummaryInfoDto {\r\n name?: string | undefined;\r\n currentDueCaption?: string | undefined;\r\n currentDueValue?: number | undefined;\r\n paymentCaption?: string | undefined;\r\n paymentDate?: string | undefined;\r\n overdueCaption?: string | undefined;\r\n overdueValue?: number | undefined;\n overpaidCaption?: string | undefined;\n overpaidValue?: number | undefined;\r\n}\r\n\r\nexport enum ContractTypeEnum {\r\n Water = \"Water\",\r\n Waste = \"Waste\",\r\n Another = \"Another\",\r\n}\r\n\r\nexport class ContractWithDetailsDto implements IContractWithDetailsDto {\r\n contract?: ContractDto;\r\n meters?: MeterDto[] | undefined;\r\n containers?: ContainerDto[] | undefined;\n bankAccount?: string | undefined;\r\n\r\n constructor(data?: IContractWithDetailsDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.contract = _data[\"contract\"] ? ContractDto.fromJS(_data[\"contract\"]) : undefined;\r\n if (Array.isArray(_data[\"meters\"])) {\r\n this.meters = [] as any;\r\n for (let item of _data[\"meters\"])\r\n this.meters!.push(MeterDto.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"containers\"])) {\r\n this.containers = [] as any;\r\n for (let item of _data[\"containers\"])\r\n this.containers!.push(ContainerDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ContractWithDetailsDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ContractWithDetailsDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"contract\"] = this.contract ? this.contract.toJSON() : undefined;\r\n if (Array.isArray(this.meters)) {\r\n data[\"meters\"] = [];\r\n for (let item of this.meters)\r\n data[\"meters\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.containers)) {\r\n data[\"containers\"] = [];\r\n for (let item of this.containers)\r\n data[\"containers\"].push(item.toJSON());\r\n }\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IContractWithDetailsDto {\r\n contract?: ContractDto;\r\n meters?: MeterDto[] | undefined;\r\n containers?: ContainerDto[] | undefined;\n bankAccount?: string;\r\n}\r\n\r\nexport class CustomerDto implements ICustomerDto {\r\n id?: number;\r\n accountId?: number;\r\n name?: string | undefined;\r\n code?: string | undefined;\r\n vatid?: string | undefined;\r\n lastChange?: Date;\r\n eFaktura?: boolean;\r\n eFakturaFrom?: Date | undefined;\r\n eFakturaTo?: Date | undefined;\r\n bankAccountWater?: string | undefined;\r\n bankAccountWastes?: string | undefined;\r\n street?: string | undefined;\r\n streetNum?: string | undefined;\r\n city?: string | undefined;\r\n zipCode?: string | undefined;\r\n\r\n constructor(data?: ICustomerDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.accountId = _data[\"accountId\"];\r\n this.name = _data[\"name\"];\r\n this.code = _data[\"code\"];\r\n this.vatid = _data[\"vatid\"];\r\n this.lastChange = _data[\"lastChange\"] ? new Date(_data[\"lastChange\"].toString()) : undefined;\r\n this.eFaktura = _data[\"eFaktura\"];\r\n this.eFakturaFrom = _data[\"eFakturaFrom\"] ? new Date(_data[\"eFakturaFrom\"].toString()) : undefined;\r\n this.eFakturaTo = _data[\"eFakturaTo\"] ? new Date(_data[\"eFakturaTo\"].toString()) : undefined;\r\n this.bankAccountWater = _data[\"bankAccountWater\"];\r\n this.bankAccountWastes = _data[\"bankAccountWastes\"];\r\n this.street = _data[\"street\"];\r\n this.streetNum = _data[\"streetNum\"];\r\n this.city = _data[\"city\"];\r\n this.zipCode = _data[\"zipCode\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CustomerDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CustomerDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"accountId\"] = this.accountId;\r\n data[\"name\"] = this.name;\r\n data[\"code\"] = this.code;\r\n data[\"vatid\"] = this.vatid;\r\n data[\"lastChange\"] = this.lastChange ? this.lastChange.toISOString() : undefined;\r\n data[\"eFaktura\"] = this.eFaktura;\r\n data[\"eFakturaFrom\"] = this.eFakturaFrom ? this.eFakturaFrom.toISOString() : undefined;\r\n data[\"eFakturaTo\"] = this.eFakturaTo ? this.eFakturaTo.toISOString() : undefined;\r\n data[\"bankAccountWater\"] = this.bankAccountWater;\r\n data[\"bankAccountWastes\"] = this.bankAccountWastes;\r\n data[\"street\"] = this.street;\r\n data[\"streetNum\"] = this.streetNum;\r\n data[\"city\"] = this.city;\r\n data[\"zipCode\"] = this.zipCode;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface ICustomerDto {\r\n id?: number;\r\n accountId?: number;\r\n name?: string | undefined;\r\n code?: string | undefined;\r\n vatid?: string | undefined;\r\n lastChange?: Date;\r\n eFaktura?: boolean;\r\n eFakturaFrom?: Date | undefined;\r\n eFakturaTo?: Date | undefined;\r\n bankAccountWater?: string | undefined;\r\n bankAccountWastes?: string | undefined;\r\n street?: string | undefined;\r\n streetNum?: string | undefined;\r\n city?: string | undefined;\r\n zipCode?: string | undefined;\r\n}\r\n\r\nexport class CustomerValidationReqeuest implements ICustomerValidationReqeuest {\r\n customerNo?: string | undefined;\r\n invoiceNumber?: string | undefined;\r\n invoiceAmount?: number;\r\n\r\n constructor(data?: ICustomerValidationReqeuest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.customerNo = _data[\"customerNo\"];\r\n this.invoiceNumber = _data[\"invoiceNumber\"];\r\n this.invoiceAmount = _data[\"invoiceAmount\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CustomerValidationReqeuest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CustomerValidationReqeuest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"customerNo\"] = this.customerNo;\r\n data[\"invoiceNumber\"] = this.invoiceNumber;\r\n data[\"invoiceAmount\"] = this.invoiceAmount;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface ICustomerValidationReqeuest {\r\n customerNo?: string | undefined;\r\n invoiceNumber?: string | undefined;\r\n invoiceAmount?: number;\r\n}\r\n\r\nexport class DeclarationDto implements IDeclarationDto {\r\n id?: number;\r\n accountId?: number;\r\n customerId?: number;\r\n contractId?: number;\r\n content?: string | undefined;\r\n submitDate?: Date;\r\n sentDate?: Date | undefined;\r\n status?: FormStatusEnum;\r\n\r\n constructor(data?: IDeclarationDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.accountId = _data[\"accountId\"];\r\n this.customerId = _data[\"customerId\"];\r\n this.contractId = _data[\"contractId\"];\r\n this.content = _data[\"content\"];\r\n this.submitDate = _data[\"submitDate\"] ? new Date(_data[\"submitDate\"].toString()) : undefined;\r\n this.sentDate = _data[\"sentDate\"] ? new Date(_data[\"sentDate\"].toString()) : undefined;\r\n this.status = _data[\"status\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): DeclarationDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new DeclarationDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"accountId\"] = this.accountId;\r\n data[\"customerId\"] = this.customerId;\r\n data[\"contractId\"] = this.contractId;\r\n data[\"content\"] = this.content;\r\n data[\"submitDate\"] = this.submitDate ? this.submitDate.toISOString() : undefined;\r\n data[\"sentDate\"] = this.sentDate ? this.sentDate.toISOString() : undefined;\r\n data[\"status\"] = this.status;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IDeclarationDto {\r\n id?: number;\r\n accountId?: number;\r\n customerId?: number;\r\n contractId?: number;\r\n content?: string | undefined;\r\n submitDate?: Date;\r\n sentDate?: Date | undefined;\r\n status?: FormStatusEnum;\r\n}\r\n\r\nexport class Document implements IDocument {\r\n id?: number;\r\n contractId?: number;\r\n customerId?: number;\r\n number?: string | undefined;\r\n valueTotalGross?: number;\r\n valueTotalNetto?: number;\r\n valuePaid?: number;\r\n dateSale?: Date;\r\n documentType?: string | undefined;\r\n dueDate?: Date;\r\n readonly dueValue?: number;\r\n relatedDocuments?: string | undefined;\r\n relatedDocumentIds?: number[] | undefined;\r\n\r\n constructor(data?: IDocument) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.contractId = _data[\"contractId\"];\r\n this.customerId = _data[\"customerId\"];\r\n this.number = _data[\"number\"];\r\n this.valueTotalGross = _data[\"valueTotalGross\"];\r\n this.valueTotalNetto = _data[\"valueTotalNetto\"];\r\n this.valuePaid = _data[\"valuePaid\"];\r\n this.dateSale = _data[\"dateSale\"] ? new Date(_data[\"dateSale\"].toString()) : undefined;\r\n this.documentType = _data[\"documentType\"];\r\n this.dueDate = _data[\"dueDate\"] ? new Date(_data[\"dueDate\"].toString()) : undefined;\r\n (this).dueValue = _data[\"dueValue\"];\r\n this.relatedDocuments = _data[\"relatedDocuments\"];\r\n if (Array.isArray(_data[\"relatedDocumentIds\"])) {\r\n this.relatedDocumentIds = [] as any;\r\n for (let item of _data[\"relatedDocumentIds\"])\r\n this.relatedDocumentIds!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): Document {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Document();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"contractId\"] = this.contractId;\r\n data[\"customerId\"] = this.customerId;\r\n data[\"number\"] = this.number;\r\n data[\"valueTotalGross\"] = this.valueTotalGross;\r\n data[\"valueTotalNetto\"] = this.valueTotalNetto;\r\n data[\"valuePaid\"] = this.valuePaid;\r\n data[\"dateSale\"] = this.dateSale ? this.dateSale.toISOString() : undefined;\r\n data[\"documentType\"] = this.documentType;\r\n data[\"dueDate\"] = this.dueDate ? this.dueDate.toISOString() : undefined;\r\n data[\"dueValue\"] = this.dueValue;\r\n data[\"relatedDocuments\"] = this.relatedDocuments;\r\n if (Array.isArray(this.relatedDocumentIds)) {\r\n data[\"relatedDocumentIds\"] = [];\r\n for (let item of this.relatedDocumentIds)\r\n data[\"relatedDocumentIds\"].push(item);\r\n }\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IDocument {\r\n id?: number;\r\n contractId?: number;\r\n customerId?: number;\r\n number?: string | undefined;\r\n valueTotalGross?: number;\r\n valueTotalNetto?: number;\r\n valuePaid?: number;\r\n dateSale?: Date;\r\n documentType?: string | undefined;\r\n dueDate?: Date;\r\n dueValue?: number;\r\n relatedDocuments?: string | undefined;\r\n relatedDocumentIds?: number[] | undefined;\r\n}\r\n\r\nexport class DocumentDto implements IDocumentDto {\r\n id?: number;\r\n contractId?: number;\r\n number?: string | undefined;\r\n valueTotalGross?: number;\r\n valueTotalNetto?: number;\r\n valuePaid?: number;\r\n dateSale?: Date;\r\n dueDate?: Date;\r\n documentType?: DocumentTypeEnum;\r\n downloadAllowed?: boolean;\r\n customerId?: number;\r\n\r\n constructor(data?: IDocumentDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.contractId = _data[\"contractId\"];\r\n this.number = _data[\"number\"];\r\n this.valueTotalGross = _data[\"valueTotalGross\"];\r\n this.valueTotalNetto = _data[\"valueTotalNetto\"];\r\n this.valuePaid = _data[\"valuePaid\"];\r\n this.dateSale = _data[\"dateSale\"] ? new Date(_data[\"dateSale\"].toString()) : undefined;\r\n this.dueDate = _data[\"dueDate\"] ? new Date(_data[\"dueDate\"].toString()) : undefined;\r\n this.documentType = _data[\"documentType\"];\r\n this.downloadAllowed = _data[\"downloadAllowed\"];\r\n this.customerId = _data[\"customerId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): DocumentDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new DocumentDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"contractId\"] = this.contractId;\r\n data[\"number\"] = this.number;\r\n data[\"valueTotalGross\"] = this.valueTotalGross;\r\n data[\"valueTotalNetto\"] = this.valueTotalNetto;\r\n data[\"valuePaid\"] = this.valuePaid;\r\n data[\"dateSale\"] = this.dateSale ? this.dateSale.toISOString() : undefined;\r\n data[\"dueDate\"] = this.dueDate ? this.dueDate.toISOString() : undefined;\r\n data[\"documentType\"] = this.documentType;\r\n data[\"downloadAllowed\"] = this.downloadAllowed;\r\n data[\"customerId\"] = this.customerId;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IDocumentDto {\r\n id?: number;\r\n contractId?: number;\r\n number?: string | undefined;\r\n valueTotalGross?: number;\r\n valueTotalNetto?: number;\r\n valuePaid?: number;\r\n dateSale?: Date;\r\n dueDate?: Date;\r\n documentType?: DocumentTypeEnum;\r\n downloadAllowed?: boolean;\r\n customerId?: number;\r\n}\r\n\r\nexport enum DocumentTypeEnum {\r\n Invoice = \"Invoice\",\r\n InterestNote = \"InterestNote\",\r\n Correction = \"Correction\",\r\n}\r\n\r\nexport enum FieldTypeEnum {\r\n Number = \"Number\",\r\n Text = \"Text\",\r\n TextArea = \"TextArea\",\r\n Date = \"Date\",\r\n File = \"File\",\r\n CheckBox = \"CheckBox\",\r\n RemarkHeader = \"RemarkHeader\",\r\n Remark = \"Remark\",\n RadioButton = \"RadioButton\",\n BankAccountNumber = \"BankAccountNumber\"\r\n}\r\n\r\nexport class ForgotPasswordRequest implements IForgotPasswordRequest {\r\n email!: string;\r\n\r\n constructor(data?: IForgotPasswordRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.email = _data[\"email\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ForgotPasswordRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ForgotPasswordRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"email\"] = this.email;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IForgotPasswordRequest {\r\n email: string;\r\n}\r\n\r\nexport enum FormStatusEnum {\r\n New = \"New\",\r\n Sent = \"Sent\",\r\n Error = \"Error\",\r\n}\r\n\r\nexport class FormSubjectDto implements IFormSubjectDto {\r\n id?: number;\r\n title?: string | undefined;\r\n targetEmail?: string | undefined;\r\n order?: number;\r\n\r\n constructor(data?: IFormSubjectDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.title = _data[\"title\"];\r\n this.targetEmail = _data[\"targetEmail\"];\r\n this.order = _data[\"order\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FormSubjectDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FormSubjectDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"title\"] = this.title;\r\n data[\"targetEmail\"] = this.targetEmail;\r\n data[\"order\"] = this.order;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IFormSubjectDto {\r\n id?: number;\r\n title?: string | undefined;\r\n targetEmail?: string | undefined;\r\n order?: number;\r\n}\r\n\r\nexport class FormTemplateDto implements IFormTemplateDto {\r\n id?: number;\r\n formSubjectId?: number;\r\n title?: string | undefined;\r\n fieldType?: FieldTypeEnum;\r\n isRequired?: boolean;\r\n max?: number;\r\n order?: number;\n name?: string | undefined;\r\n\r\n constructor(data?: IFormTemplateDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.formSubjectId = _data[\"formSubjectId\"];\r\n this.title = _data[\"title\"];\r\n this.fieldType = _data[\"fieldType\"];\r\n this.isRequired = _data[\"isRequired\"];\r\n this.max = _data[\"max\"];\r\n this.order = _data[\"order\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FormTemplateDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FormTemplateDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"formSubjectId\"] = this.formSubjectId;\r\n data[\"title\"] = this.title;\r\n data[\"fieldType\"] = this.fieldType;\r\n data[\"isRequired\"] = this.isRequired;\r\n data[\"max\"] = this.max;\r\n data[\"order\"] = this.order;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IFormTemplateDto {\r\n id?: number;\r\n formSubjectId?: number;\r\n title?: string | undefined;\r\n fieldType?: FieldTypeEnum;\r\n isRequired?: boolean;\r\n max?: number;\r\n order?: number;\n name?: string | undefined;\r\n}\r\n\r\nexport class MessageDto implements IMessageDto {\r\n id?: number;\r\n subject?: string | undefined;\r\n contentText?: string | undefined;\r\n publicationDate?: Date;\r\n deactivationDate?: Date | undefined;\r\n\r\n constructor(data?: IMessageDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.subject = _data[\"subject\"];\r\n this.contentText = _data[\"contentText\"];\r\n this.publicationDate = _data[\"publicationDate\"] ? new Date(_data[\"publicationDate\"].toString()) : undefined;\r\n this.deactivationDate = _data[\"deactivationDate\"] ? new Date(_data[\"deactivationDate\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): MessageDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MessageDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"subject\"] = this.subject;\r\n data[\"contentText\"] = this.contentText;\r\n data[\"publicationDate\"] = this.publicationDate ? this.publicationDate.toISOString() : undefined;\r\n data[\"deactivationDate\"] = this.deactivationDate ? this.deactivationDate.toISOString() : undefined;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IMessageDto {\r\n id?: number;\r\n subject?: string | undefined;\r\n contentText?: string | undefined;\r\n publicationDate?: Date;\r\n deactivationDate?: Date | undefined;\r\n}\r\n\r\nexport class MeterDto implements IMeterDto {\r\n id?: number;\r\n contractId?: number;\r\n number?: string | undefined;\r\n latestValue?: number | undefined;\r\n master?: boolean;\r\n latestReadTime?: Date | undefined;\r\n latestConsumption?: number | undefined;\r\n startDate?: Date | undefined;\r\n endDate?: Date | undefined;\r\n street?: string | undefined;\r\n streetNum?: string | undefined;\r\n city?: string | undefined;\r\n zipCode?: string | undefined;\r\n\r\n constructor(data?: IMeterDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.contractId = _data[\"contractId\"];\r\n this.number = _data[\"number\"];\r\n this.latestValue = _data[\"latestValue\"];\r\n this.master = _data[\"master\"];\r\n this.latestReadTime = _data[\"latestReadTime\"] ? new Date(_data[\"latestReadTime\"].toString()) : undefined;\r\n this.latestConsumption = _data[\"latestConsumption\"];\r\n this.startDate = _data[\"startDate\"] ? new Date(_data[\"startDate\"].toString()) : undefined;\r\n this.endDate = _data[\"endDate\"] ? new Date(_data[\"endDate\"].toString()) : undefined;\r\n this.street = _data[\"street\"];\r\n this.streetNum = _data[\"streetNum\"];\r\n this.city = _data[\"city\"];\r\n this.zipCode = _data[\"zipCode\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): MeterDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MeterDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"contractId\"] = this.contractId;\r\n data[\"number\"] = this.number;\r\n data[\"latestValue\"] = this.latestValue;\r\n data[\"master\"] = this.master;\r\n data[\"latestReadTime\"] = this.latestReadTime ? this.latestReadTime.toISOString() : undefined;\r\n data[\"latestConsumption\"] = this.latestConsumption;\r\n data[\"startDate\"] = this.startDate ? this.startDate.toISOString() : undefined;\r\n data[\"endDate\"] = this.endDate ? this.endDate.toISOString() : undefined;\r\n data[\"street\"] = this.street;\r\n data[\"streetNum\"] = this.streetNum;\r\n data[\"city\"] = this.city;\r\n data[\"zipCode\"] = this.zipCode;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IMeterDto {\r\n id?: number;\r\n contractId?: number;\r\n number?: string | undefined;\r\n latestValue?: number | undefined;\r\n master?: boolean;\r\n latestReadTime?: Date | undefined;\r\n latestConsumption?: number | undefined;\r\n startDate?: Date | undefined;\r\n endDate?: Date | undefined;\r\n street?: string | undefined;\r\n streetNum?: string | undefined;\r\n city?: string | undefined;\r\n zipCode?: string | undefined;\r\n}\r\n\r\nexport class MeterRead implements IMeterRead {\r\n id?: number;\r\n meterId?: number;\r\n value?: number;\r\n readDate?: Date;\r\n consumption?: number;\r\n\r\n constructor(data?: IMeterRead) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.meterId = _data[\"meterId\"];\r\n this.value = _data[\"value\"];\r\n this.readDate = _data[\"readDate\"] ? new Date(_data[\"readDate\"].toString()) : undefined;\r\n this.consumption = _data[\"consumption\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): MeterRead {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MeterRead();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"meterId\"] = this.meterId;\r\n data[\"value\"] = this.value;\r\n data[\"readDate\"] = this.readDate ? this.readDate.toISOString() : undefined;\r\n data[\"consumption\"] = this.consumption;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IMeterRead {\r\n id?: number;\r\n meterId?: number;\r\n value?: number;\r\n readDate?: Date;\r\n consumption?: number;\r\n}\r\n\r\nexport class MeterReadDto implements IMeterReadDto {\r\n id?: number;\r\n meterId?: number;\r\n value?: number;\r\n readDate?: Date;\r\n consumption?: number;\r\n\r\n constructor(data?: IMeterReadDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.meterId = _data[\"meterId\"];\r\n this.value = _data[\"value\"];\r\n this.readDate = _data[\"readDate\"] ? new Date(_data[\"readDate\"].toString()) : undefined;\r\n this.consumption = _data[\"consumption\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): MeterReadDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MeterReadDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"meterId\"] = this.meterId;\r\n data[\"value\"] = this.value;\r\n data[\"readDate\"] = this.readDate ? this.readDate.toISOString() : undefined;\r\n data[\"consumption\"] = this.consumption;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IMeterReadDto {\r\n id?: number;\r\n meterId?: number;\r\n value?: number;\r\n readDate?: Date;\r\n consumption?: number;\r\n}\r\n\r\nexport class MeterWithMeterReadsDto implements IMeterWithMeterReadsDto {\r\n meter?: MeterDto;\r\n meterReads?: MeterReadDto[] | undefined;\r\n\r\n constructor(data?: IMeterWithMeterReadsDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.meter = _data[\"meter\"] ? MeterDto.fromJS(_data[\"meter\"]) : undefined;\r\n if (Array.isArray(_data[\"meterReads\"])) {\r\n this.meterReads = [] as any;\r\n for (let item of _data[\"meterReads\"])\r\n this.meterReads!.push(MeterReadDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): MeterWithMeterReadsDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MeterWithMeterReadsDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"meter\"] = this.meter ? this.meter.toJSON() : undefined;\r\n if (Array.isArray(this.meterReads)) {\r\n data[\"meterReads\"] = [];\r\n for (let item of this.meterReads)\r\n data[\"meterReads\"].push(item.toJSON());\r\n }\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IMeterWithMeterReadsDto {\r\n meter?: MeterDto;\r\n meterReads?: MeterReadDto[] | undefined;\r\n}\r\n\r\nexport class Payment implements IPayment {\r\n id?: number;\r\n customerId?: number;\r\n descripton?: string | undefined;\r\n amount?: number;\r\n date?: Date;\r\n documentIds?: PaymentInfo[] | undefined;\r\n\r\n constructor(data?: IPayment) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.customerId = _data[\"customerId\"];\r\n this.descripton = _data[\"descripton\"];\r\n this.amount = _data[\"amount\"];\r\n this.date = _data[\"date\"] ? new Date(_data[\"date\"].toString()) : undefined;\r\n if (Array.isArray(_data[\"documentIds\"])) {\r\n this.documentIds = [] as any;\r\n for (let item of _data[\"documentIds\"])\r\n this.documentIds!.push(PaymentInfo.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): Payment {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Payment();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"customerId\"] = this.customerId;\r\n data[\"descripton\"] = this.descripton;\r\n data[\"amount\"] = this.amount;\r\n data[\"date\"] = this.date ? this.date.toISOString() : undefined;\r\n if (Array.isArray(this.documentIds)) {\r\n data[\"documentIds\"] = [];\r\n for (let item of this.documentIds)\r\n data[\"documentIds\"].push(item.toJSON());\r\n }\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPayment {\r\n id?: number;\r\n customerId?: number;\r\n descripton?: string | undefined;\r\n amount?: number;\r\n date?: Date;\r\n documentIds?: PaymentInfo[] | undefined;\r\n}\r\n\r\nexport class PaymentDto implements IPaymentDto {\r\n id?: number;\r\n customerId?: number;\r\n descripton?: string | undefined;\r\n amount?: number;\r\n date?: Date;\r\n documentIds?: PaymentInfoDto[] | undefined;\r\n\r\n constructor(data?: IPaymentDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.customerId = _data[\"customerId\"];\r\n this.descripton = _data[\"descripton\"];\r\n this.amount = _data[\"amount\"];\r\n this.date = _data[\"date\"] ? new Date(_data[\"date\"].toString()) : undefined;\r\n if (Array.isArray(_data[\"documentIds\"])) {\r\n this.documentIds = [] as any;\r\n for (let item of _data[\"documentIds\"])\r\n this.documentIds!.push(PaymentInfoDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PaymentDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PaymentDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"customerId\"] = this.customerId;\r\n data[\"descripton\"] = this.descripton;\r\n data[\"amount\"] = this.amount;\r\n data[\"date\"] = this.date ? this.date.toISOString() : undefined;\r\n if (Array.isArray(this.documentIds)) {\r\n data[\"documentIds\"] = [];\r\n for (let item of this.documentIds)\r\n data[\"documentIds\"].push(item.toJSON());\r\n }\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPaymentDto {\r\n id?: number;\r\n customerId?: number;\r\n descripton?: string | undefined;\r\n amount?: number;\r\n date?: Date;\r\n documentIds?: PaymentInfoDto[] | undefined;\r\n}\r\n\r\nexport class PaymentInfo implements IPaymentInfo {\r\n documentId?: number;\r\n documentType?: string | undefined;\r\n\r\n constructor(data?: IPaymentInfo) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.documentId = _data[\"documentId\"];\r\n this.documentType = _data[\"documentType\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): PaymentInfo {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PaymentInfo();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"documentId\"] = this.documentId;\r\n data[\"documentType\"] = this.documentType;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPaymentInfo {\r\n documentId?: number;\r\n documentType?: string | undefined;\r\n}\r\n\r\nexport class PaymentInfoDto implements IPaymentInfoDto {\r\n documentId?: number;\r\n documentType?: string | undefined;\r\n\r\n constructor(data?: IPaymentInfoDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.documentId = _data[\"documentId\"];\r\n this.documentType = _data[\"documentType\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): PaymentInfoDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PaymentInfoDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"documentId\"] = this.documentId;\r\n data[\"documentType\"] = this.documentType;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPaymentInfoDto {\r\n documentId?: number;\r\n documentType?: string | undefined;\r\n}\r\n\r\nexport class RegisterRequest implements IRegisterRequest {\r\n firstName!: string;\r\n lastName!: string;\r\n email!: string;\r\n password!: string;\r\n acceptTerms?: boolean;\r\n\r\n constructor(data?: IRegisterRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.firstName = _data[\"firstName\"];\r\n this.lastName = _data[\"lastName\"];\r\n this.email = _data[\"email\"];\r\n this.password = _data[\"password\"];\r\n this.acceptTerms = _data[\"acceptTerms\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RegisterRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RegisterRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"firstName\"] = this.firstName;\r\n data[\"lastName\"] = this.lastName;\r\n data[\"email\"] = this.email;\r\n data[\"password\"] = this.password;\r\n data[\"acceptTerms\"] = this.acceptTerms;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IRegisterRequest {\r\n firstName: string;\r\n lastName: string;\r\n email: string;\r\n password: string;\r\n acceptTerms?: boolean;\r\n}\r\n\r\nexport class ResetPasswordRequest implements IResetPasswordRequest {\r\n token!: string;\r\n password!: string;\r\n\r\n constructor(data?: IResetPasswordRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.token = _data[\"token\"];\r\n this.password = _data[\"password\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ResetPasswordRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ResetPasswordRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"token\"] = this.token;\r\n data[\"password\"] = this.password;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IResetPasswordRequest {\r\n token: string;\r\n password: string;\r\n}\r\n\r\nexport class RevokeTokenRequest implements IRevokeTokenRequest {\r\n token?: string | undefined;\r\n\r\n constructor(data?: IRevokeTokenRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.token = _data[\"token\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RevokeTokenRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RevokeTokenRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"token\"] = this.token;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IRevokeTokenRequest {\r\n token?: string | undefined;\r\n}\r\n\r\nexport enum Role {\r\n User = \"User\",\r\n Admin = \"Admin\",\r\n}\r\n\r\nexport class UpdateRequest implements IUpdateRequest {\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n password?: string | undefined;\r\n\r\n constructor(data?: IUpdateRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.firstName = _data[\"firstName\"];\r\n this.lastName = _data[\"lastName\"];\r\n this.password = _data[\"password\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UpdateRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UpdateRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"firstName\"] = this.firstName;\r\n data[\"lastName\"] = this.lastName;\r\n data[\"password\"] = this.password;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IUpdateRequest {\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n password?: string | undefined;\r\n}\r\n\r\nexport class ValidateResetTokenRequest implements IValidateResetTokenRequest {\r\n token!: string;\r\n\r\n constructor(data?: IValidateResetTokenRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.token = _data[\"token\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ValidateResetTokenRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ValidateResetTokenRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"token\"] = this.token;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IValidateResetTokenRequest {\r\n token: string;\r\n}\r\n\r\nexport class VerifyEmailRequest implements IVerifyEmailRequest {\r\n token!: string;\r\n\r\n constructor(data?: IVerifyEmailRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.token = _data[\"token\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): VerifyEmailRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new VerifyEmailRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"token\"] = this.token;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IVerifyEmailRequest {\r\n token: string;\r\n}\n","import React from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport PerfectScrollbar from 'react-perfect-scrollbar';\r\nimport { Collapse, CardHeader, CardBody, Card } from 'reactstrap';\r\nimport { AppContext } from './../../config/app-settings';\r\n\r\nclass SidebarRight extends React.Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.state = {\r\n\t\t\tcollapse: [\r\n\t\t\t\t{\tid: 1, collapse: true },\r\n\t\t\t\t{\tid: 2, collapse: false },\r\n\t\t\t\t{\tid: 3, collapse: false },\r\n\t\t\t\t{\tid: 4, collapse: false },\r\n\t\t\t\t{\tid: 5, collapse: false },\r\n\t\t\t\t{\tid: 6, collapse: false },\r\n\t\t\t\t{\tid: 7, collapse: false },\r\n\t\t\t]\r\n\t\t};\r\n\t\tthis.toggleCollapse = this.toggleCollapse.bind(this);\r\n\t}\r\n\r\n\ttoggleCollapse(index) {\r\n\t\tvar newArray = [];\r\n\t\tfor (let collapseObj of this.state.collapse) {\r\n\t\t\tif (collapseObj.id === index) {\r\n\t\t\t\tcollapseObj.collapse = !collapseObj.collapse;\r\n\t\t\t} else {\r\n\t\t\t\tcollapseObj.collapse = false;\r\n\t\t\t}\r\n\t\t\tnewArray.push(collapseObj);\r\n\t\t}\r\n\r\n\t\tthis.setState({\r\n\t\t\tcollapse: newArray\r\n\t\t});\r\n\t}\r\n \r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{({appSidebarTwo, toggleAppSidebarEndMobile}) => (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{appSidebarTwo && (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

Accordion

\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tthis.state.collapse.map((value, i) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleCollapse(value.id)}>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t Accordion Item #{value.id}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAnim pariatur cliche reprehenderit, enim eiusmod high life accusamus.\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t))\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t
\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t)\r\n\t}\r\n}\r\n\r\n\r\nexport default SidebarRight;\r\n","import React from 'react';\r\n\r\nconst PanelStat = React.createContext();\r\n\r\nclass Panel extends React.Component {\r\n\t\r\n\tstatic getDerivedStateFromProps(nextProps, prevState) {\r\n\t\treturn {\r\n\t\t\treload: nextProps.reload,\r\n\t\t};\r\n\t}\r\n\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\t\r\n\t\tthis.toggleExpand = () => {\r\n\t\t\tthis.setState(state => ({\r\n\t\t\t\texpand: !this.state.expand\r\n\t\t\t}));\r\n\t\t}\r\n\t\t\r\n\t\tthis.toggleRemove = () => {\r\n\t\t\tthis.setState(state => ({\r\n\t\t\t\tremove: !this.state.remove\r\n\t\t\t}));\r\n\t\t}\r\n\t\t\r\n\t\tthis.toggleCollapse = () => {\r\n\t\t\tthis.setState(state => ({\r\n\t\t\t\tcollapse: !this.state.collapse\r\n\t\t\t}));\r\n\t\t}\r\n\t\t\r\n\t\tthis.toggleReload = () => {\r\n\t\t\tif (this.state.reload !== true) {\r\n\t\t\t\tthis.setState(state => ({\r\n\t\t\t\t\treload: true\r\n\t\t\t\t}));\r\n\t\t\t\r\n\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\tthis.setState(state => ({\r\n\t\t\t\t\t\treload: false\r\n\t\t\t\t\t}));\r\n\t\t\t\t}, 2000);\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\tthis.state = {\r\n\t\t\texpand: false,\r\n\t\t\tcollapse: false,\r\n\t\t\treload: false,\r\n\t\t\tremove: false,\r\n\t\t\ttoggleExpand: this.toggleExpand,\r\n\t\t\ttoggleReload: this.toggleReload,\r\n\t\t\ttoggleRemove: this.toggleRemove,\r\n\t\t\ttoggleCollapse: this.toggleCollapse\r\n\t\t}\r\n\t}\r\n\t\r\n\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{(!this.state.remove && \r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{ this.props.children }\r\n\t\t\t\t\t
\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n};\r\n\r\nclass PanelHeader extends React.Component {\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t

{ this.props.children }

\r\n\t\t\t\t{(!this.props.noButton &&\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{({ toggleExpand, toggleRemove, toggleCollapse, toggleReload }) => (\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t  \r\n\t\t\t\t\t\t\t\t  \r\n\t\t\t\t\t\t\t\t  \r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t
\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t)\r\n\t}\r\n}\r\n\r\nclass PanelBody extends React.Component {\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{({ collapse, reload }) => (\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{ this.props.children }\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{(reload && \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t
\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n};\r\n\r\nclass PanelFooter extends React.Component {\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t{ this.props.children }\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n};\r\n\r\nexport { Panel, PanelHeader, PanelBody, PanelFooter };\r\n","import React from 'react';\r\nimport { AuthenticateResponse, IContractWithDetailsDto, ICustomerDto, IDocumentDto, IMeterWithMeterReadsDto, IPaymentDto, Role } from '../models/generated';\r\n\r\nexport interface IUserInfoProps {\r\n userInfo: IUserInfoDto\r\n}\r\n\r\nexport interface IContractInfoDto {\r\n contractWithDetails: IContractWithDetailsDto,\r\n\r\n meterInfos: IMeterWithMeterReadsDto[],\r\n}\r\n\r\nexport interface ICustomerInfoDto {\r\n customer: ICustomerDto,\r\n contractInfos: IContractInfoDto[], \r\n\r\n documents: IDocumentDto[],\r\n payments: IPaymentDto[],\r\n \r\n wasContractsChanged: number,\r\n wasDocumentsChanged: number,\r\n wasPaymentsChanged: number,\r\n wasMeterReadsChanged: number,\n}\r\n\r\nexport interface IUserInfoDto {\r\n userId: number,\r\n email: string,\r\n firstName: string,\r\n lastName: string, \r\n role: Role, \r\n isLoggedIn: boolean,\r\n \r\n customerInfos: ICustomerInfoDto[],\r\n selectedCustomerInfo: ICustomerInfoDto | undefined,\n electronicInvoiceAgreed: boolean\r\n}\r\n\r\nexport interface IUserContextData {\r\n userInfo: IUserInfoDto,\r\n login: (authenticateResponse: AuthenticateResponse | null) => void,\r\n\r\n setCustomerInfos: (customerInfos: ICustomerInfoDto[]) => void,\r\n\r\n setCustomers: (customers: ICustomerDto[]) => void,\r\n\r\n setContracts: (customerId: number, contracts: IContractWithDetailsDto[]) => void,\r\n //addOrUpdateContracts: (customerId: number, contracts: IContractDto[]) => void,\r\n setSelectedCustomer: (customerId: number) => void ,\r\n\r\n setDocuments: (customerId: number, documents: IDocumentDto[]) => void,\r\n\r\n setPayments: (customerId: number, payments: IPaymentDto[]) => void, \r\n\r\n setMeterWithMeterReads: (customerId: number, meterReads: IMeterWithMeterReadsDto[]) => void, \r\n\r\n openAddCustomerModalDialog: () => void\r\n}\r\n\r\nexport const UserInfoDtoDefault: IUserInfoDto = { \r\n userId: 0,\r\n isLoggedIn: false, \r\n email: '',\r\n firstName: '', \r\n lastName: '',\r\n role: Role.User,\r\n customerInfos: [],\r\n selectedCustomerInfo: undefined,\n electronicInvoiceAgreed: false\r\n };\r\n\r\nexport const isLoggedIn = (userInfo?: IUserInfoDto): boolean => {\r\n //console.log('isLoggedIn: ' + (userInfo !== undefined && userInfo !== null && userInfo.isLoggedIn));\r\n return (userInfo !== undefined && userInfo !== null && userInfo.isLoggedIn);\r\n}\r\n\r\nexport const UserContext = React.createContext({ \r\n userInfo: UserInfoDtoDefault, \r\n login: (authenticateResponse: AuthenticateResponse | null) => null,\r\n \r\n setCustomerInfos: (customerInfos: ICustomerInfoDto[]) => null, \r\n setCustomers: (customers: ICustomerDto[]) => null, \r\n setSelectedCustomer: (customerId: number) => null,\r\n \r\n setContracts: (customerId: number, contracts: IContractWithDetailsDto[]) => null,\r\n ///addOrUpdateContracts: (customerId: number, contracts: IContractDto[]) => null,\r\n\r\n setDocuments: (customerId: number, contracts: IDocumentDto[]) => null,\r\n setPayments: (customerId: number, contracts: IPaymentDto[]) => null, \r\n setMeterWithMeterReads: (customerId: number, contracts: IMeterWithMeterReadsDto[]) => null, \r\n openAddCustomerModalDialog: () => null,\r\n});\r\n\r\n","export interface IConfiguration {\r\n apiUrl: string;\r\n baseUrl: string;\r\n}\r\n\r\nconst serverVars: IConfiguration = {\r\n baseUrl: 'https://ebok.zgkszamotuly.pl/',\r\n apiUrl: 'https://ebok.zgkszamotuly.pl/api/1.0'\r\n};\r\n\r\nconst localVars: IConfiguration = {\r\n baseUrl: 'http://localhost:5900',\r\n apiUrl: 'http://localhost:5900/api/1.0'\r\n};\r\n\r\nexport function getConfiguration() {\r\n if (process.env.NODE_ENV === 'production') {\r\n return serverVars;\r\n }\r\n\r\n return localVars;\r\n}\n","import { BehaviorSubject } from 'rxjs';\r\nimport { fetchWrapper, history } from '../helpers';\r\nimport { AuthenticateResponse, RegisterRequest, ResetPasswordRequest, UpdateRequest } from '../models/generated';\r\nimport { getConfiguration } from \"./config\";\r\n\r\n\r\nconst userSubject = new BehaviorSubject(null);\r\nconst baseUrl = `${getConfiguration().apiUrl}/accounts`;\r\nlet prevUser: AuthenticateResponse | null = null;\r\n\r\nexport const accountService = {\r\n login,\r\n logout,\r\n refreshToken,\r\n register,\r\n verifyEmail,\r\n forgotPassword,\r\n validateResetToken,\r\n resetPassword,\r\n update,\r\n user: userSubject.asObservable(),\r\n get prevUser () { return prevUser },\r\n get userValue () { return userSubject.value }\r\n};\r\n\r\n\r\n\r\nfunction login(email: string, password: string) {\r\n return fetchWrapper.post(`${baseUrl}/authenticate`, { email, password })\r\n .then((user: AuthenticateResponse) => {\r\n // publish user to subscribers and start timer to refresh token\r\n prevUser = userSubject.value;\r\n userSubject.next(user);\r\n startRefreshTokenTimer();\r\n return user;\r\n });\r\n}\r\n\r\nfunction logout() {\r\n // revoke token, stop refresh timer, publish null to user subscribers and redirect to login page\r\n fetchWrapper.post(`${baseUrl}/revokeToken`, {});\r\n stopRefreshTokenTimer();\r\n prevUser = userSubject.value;\r\n userSubject.next(null);\r\n history.push('/login');\r\n}\r\n\r\nfunction refreshToken() {\r\n console.log('account.service: refreshToken()')\r\n return fetchWrapper.post(`${baseUrl}/refreshToken`, {})\r\n .then(user => {\r\n // publish user to subscribers and start timer to refresh token\r\n console.log('account.service: refreshToken() ' + JSON.stringify(user))\r\n prevUser = userSubject.value;\r\n userSubject.next(user);\r\n startRefreshTokenTimer();\r\n return user;\r\n })\r\n .catch(err => {\r\n console.error('account.service ' + err);\r\n });\r\n}\r\n\r\nfunction register(params: RegisterRequest) {\r\n return fetchWrapper.post(`${baseUrl}/register`, params);\r\n}\r\n\r\nfunction verifyEmail(token: string) {\r\n return fetchWrapper.post(`${baseUrl}/verifyEmail`, { token });\r\n}\r\n\r\nfunction forgotPassword(email: string) {\r\n return fetchWrapper.post(`${baseUrl}/forgotPassword`, { email });\r\n}\r\n\r\nfunction validateResetToken(token: string) {\r\n return fetchWrapper.post(`${baseUrl}/validateResetToken`, { token });\r\n}\r\n\r\nfunction resetPassword(request: ResetPasswordRequest) {\r\n return fetchWrapper.post(`${baseUrl}/resetPassword`, request);\r\n}\r\n\r\nfunction update(request: UpdateRequest) {\r\n return fetchWrapper.put(`${baseUrl}/update`, request);\r\n}\r\n\r\n\r\nlet refreshTokenTimeout: NodeJS.Timeout | undefined;\r\n\r\nfunction startRefreshTokenTimer() {\r\n stopRefreshTokenTimer();\r\n\r\n if (userSubject.value && userSubject.value.jwtToken) {\r\n // parse json object from base64 encoded jwt token\r\n const jwtToken = JSON.parse(atob(userSubject.value.jwtToken.split('.')[1]));\r\n\r\n // set a timeout to refresh the token a minute before it expires\r\n const expires = new Date(jwtToken.exp * 1000);\r\n const timeout = expires.getTime() - Date.now() - (60 * 1000);\r\n refreshTokenTimeout = setTimeout(refreshToken, timeout);\r\n }\r\n}\r\n\r\nfunction stopRefreshTokenTimer() {\r\n if (refreshTokenTimeout !== undefined) {\r\n clearTimeout(refreshTokenTimeout);\r\n }\r\n refreshTokenTimeout = undefined;\r\n}\r\n","import { accountService } from \"../services/account.service\";\r\nimport { getConfiguration } from \"../services/config\";\r\nimport { saveAs } from 'file-saver';\r\n\r\nexport interface IProcessingModel\r\n{\r\n\tisProcessing: boolean;\r\n error: string | undefined;\r\n}\r\n\r\nexport const fetchWrapper = {\r\n get,\r\n getFile,\r\n saveToFileSystem,\r\n post,\r\n postFiles,\r\n put,\r\n delete: _delete\r\n}\r\n\r\nexport const urlHelper = {\r\n parameterizeArray\r\n}\r\n\r\nfunction parameterizeArray(key: string, arr: any[]) : string {\r\n var arrEncode = arr.map(encodeURIComponent)\r\n return '?'+key+'=' + arrEncode.join('&'+key+'=')\r\n}\r\n \r\n \r\nfunction get(url: string) {\r\n const requestOptions: RequestInit = {\r\n method: 'GET',\r\n headers: authHeader(url)\r\n };\r\n return fetch(url, requestOptions).then(handleResponse);\r\n}\r\n\r\nfunction getFile(url: string, actoin: (response: Response, blob: Blob) => any) {\r\n const requestOptions: RequestInit = {\r\n method: 'GET',\r\n headers: { 'Accept': 'application/json', ...authHeader(url) },\r\n credentials: 'include'\r\n };\r\n return fetch(url, requestOptions)\r\n .then(responce => handleResponseBlob(responce, actoin));\r\n}\r\n\r\nfunction post(url: string, body: any) {\r\n const requestOptions: RequestInit = {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/json', ...authHeader(url) },\r\n credentials: 'include',\r\n body: JSON.stringify(body)\r\n };\r\n return fetch(url, requestOptions).then(handleResponse);\r\n}\r\n\r\nfunction postFiles(url: string, values: any) {\r\n //'Content-Type': 'Multipart/form-data'\r\n const requestOptions: RequestInit = {\r\n method: 'POST',\r\n headers: { 'Accept': 'application/json', ...authHeader(url) },\r\n credentials: 'include',\r\n body: values\r\n };\r\n return fetch(url, requestOptions).then(handleResponse);\r\n}\r\n\r\nfunction put(url: string, body: any) {\r\n const requestOptions: RequestInit = {\r\n method: 'PUT',\r\n headers: { 'Content-Type': 'application/json', ...authHeader(url) },\r\n body: JSON.stringify(body)\r\n };\r\n return fetch(url, requestOptions).then(handleResponse); \r\n}\r\n\r\n// prefixed with underscored because delete is a reserved word in javascript\r\nfunction _delete(url: string) {\r\n const requestOptions: RequestInit = {\r\n method: 'DELETE',\r\n headers: authHeader(url)\r\n };\r\n return fetch(url, requestOptions).then(handleResponse);\r\n}\r\n\r\n// helper functions\r\n\r\nfunction authHeader(url: string): HeadersInit {\r\n // return auth header with jwt if user is logged in and request is to the api url\r\n const user = accountService.userValue;\r\n const isLoggedIn = user && user.jwtToken;\r\n const isApiUrl = url.startsWith(getConfiguration().apiUrl);\r\n if (isLoggedIn && isApiUrl) {\r\n return { Authorization: `Bearer ${user.jwtToken}` };\r\n } else {\r\n return {};\r\n }\r\n}\r\n\r\nfunction handleResponse(response: Response) {\r\n return response.text().then((text: any) => {\r\n const data = text && JSON.parse(text);\r\n \r\n if (!response.ok) {\r\n if ([401, 403].includes(response.status) && accountService.userValue) {\r\n // auto logout if 401 Unauthorized or 403 Forbidden response returned from api\r\n accountService.logout();\r\n }\r\n\r\n const error = (data && data.message) || response.statusText;\r\n return Promise.reject(error);\r\n }\r\n\r\n return data;\r\n });\r\n}\r\n\r\nfunction handleResponseBlob(response: Response, action: (response: Response, blob: Blob) => any) {\r\n console.log('handleResponseBlob')\r\n return response.blob()\r\n .then((blob: Blob) => {\r\n if (!response.ok) {\r\n if ([401, 403].includes(response.status) && accountService.userValue) {\r\n // auto logout if 401 Unauthorized or 403 Forbidden response returned from api\r\n accountService.logout();\r\n }\r\n\r\n const error = response.statusText;\r\n return Promise.reject(error);\r\n }\r\n\r\n if (action !== undefined) {\r\n return action(response, blob);\r\n }\r\n return blob;\r\n });\r\n}\r\n\r\nfunction saveToFileSystem(response: Response, blob: Blob) {\r\n if (response) {\r\n const contentDispositionHeader = response.headers.get(\r\n 'Content-Disposition'\r\n );\r\n \r\n if (contentDispositionHeader) {\r\n const parts: string[] = contentDispositionHeader.split(';');\r\n const filename = parts[1].split('=')[1].split('\"').join('');\r\n const type = response.headers.get('Content-Type');\r\n const blobWithType = new Blob([blob], {\r\n type: (type === null ? undefined : type),\r\n });\r\n saveAs(blobWithType, filename);\r\n }\r\n }\r\n }","import { createBrowserHistory } from 'history';\r\n\r\nexport const history = createBrowserHistory();","import React from 'react';\r\nimport { FieldArrayPath, FieldValues, useFieldArray, useForm, UseFormProps } from \"react-hook-form\";\r\nimport { useParams } from 'react-router-dom';\r\n\r\nexport const withUseFormHook = (Component: any, userFormOptions?: UseFormProps) => {\r\n return (props: any) => {\r\n const form = useForm(userFormOptions);\r\n return \r\n } \r\n}\r\n\r\nexport const withUseFormHookWithFieldArray = (Component: any, arrayFieldName: FieldArrayPath, userFormOptions?: UseFormProps) => {\r\n return (props: any) => {\r\n const form = useForm(userFormOptions);\r\n \r\n const { control } = form;\r\n const arrayField = useFieldArray({\r\n control,\r\n name: arrayFieldName\r\n });\r\n return \r\n } \r\n}\r\n\r\nexport const withParams = (Component: any) => {\r\n return (props: any) => ();\r\n}","import { Role } from \"../models/generated\";\r\n\r\nexport const roleHelper = {\r\n compareRole,\r\n}\r\n\r\nfunction compareRole(userRole: string, minRole: string | undefined): boolean {\r\n if (minRole === undefined) {\r\n return true;\r\n }\r\n if (minRole === Role.User) {\r\n return true;\r\n }\r\n if (minRole === Role.Admin) {\r\n const res = userRole === Role.Admin;\r\n return res;\r\n }\r\n return false;\r\n} ","import moment from \"moment\";\r\n\r\nexport const dateHelper = {\r\n numberToDateFormat,\r\n getMonthName,\r\n addDays,\r\n getNextDeclarationMonth,\r\n getMonthNameNum\r\n}\r\n\r\nconst monthNames = [\"stycznia\", \"lutego\", \"marca\", \"kwietnia\", \"maja\", \"czerwca\",\r\n \"lipca\", \"sierpnia\", \"września\", \"pażdziernika\", \"listopada\", \"grudnia\"\r\n];\r\n\r\nfunction getMonthName(d: Date): string {\r\n return monthNames[d.getMonth() % 12];\r\n}\r\n\r\nfunction getMonthNameNum(n: number): string {\r\n return monthNames[n % 12];\r\n}\r\n\r\nfunction numberToDateFormat(toDate: number | Date | undefined) : string {\r\n return moment(toDate).format('yyyy-MM-DD');\r\n}\r\n\r\nfunction addDays(date: Date, days: number): Date {\r\n date.setDate(date.getDate() + days);\r\n return date;\r\n}\r\n\r\nfunction getNextDeclarationMonth() {\r\n var thisMonth = (new Date()).getMonth();\r\n var monthIn7Days = addDays(new Date(), 7).getMonth();\r\n if (thisMonth === monthIn7Days)\r\n return thisMonth + 1;\r\n else\r\n return thisMonth + 2;\r\n}\r\n","\r\nimport { fetchWrapper, urlHelper } from \"../helpers\";\r\nimport { ContractSummaryInfoDto, ContractTypeEnum, IContractDto, IContractWithDetailsDto } from \"../models/generated\";\r\nimport { getConfiguration } from \"./config\";\r\n\r\nexport const contractsService = {\r\n getContracts,\r\n getContractsWithDetails,\r\n getContractsByIds,\r\n deactivateContract,\r\n getContractsSummary\r\n };\r\n\r\nasync function getContracts(customerId: number): Promise { \r\n const resp = await fetchWrapper.get(getConfiguration().apiUrl + `/contracts/getContracts/${customerId}`);\r\n const res: IContractDto[] = resp;\r\n return res;\r\n}\r\n\r\nasync function getContractsWithDetails(customerId: number): Promise {\r\n const resp = await fetchWrapper.get(getConfiguration().apiUrl + `/contracts/getContractsWithDetails/${customerId}`);\r\n const res: IContractWithDetailsDto[] = resp;\r\n return res; \r\n}\r\n\r\nasync function getContractsByIds(ids: number[]): Promise {\r\n const resp = await fetchWrapper.get(getConfiguration().apiUrl + `/contracts/getContractsByIds${urlHelper.parameterizeArray('ids', ids)}`);\r\n const res: IContractDto[] = resp;\r\n return res;\r\n}\r\n\r\nasync function deactivateContract(id: number): Promise {\r\n const resp = await fetchWrapper.post(getConfiguration().apiUrl + `/contracts/deactivateContract`, id);\r\n const res: IContractDto = resp;\r\n return res;\r\n}\r\n\r\nasync function getContractsSummary(customerId: number, contractType: ContractTypeEnum): Promise {\r\n const resp = await fetchWrapper.get(getConfiguration().apiUrl + `/contracts/getContractsSummary/${customerId}/${contractType === ContractTypeEnum.Water ? 1 : (contractType === ContractTypeEnum.Waste ? 2 : 3)}`);\r\n const res: ContractSummaryInfoDto = resp;\r\n return res; \r\n}\n","\r\nimport { fetchWrapper, urlHelper } from \"../helpers\";\r\nimport { IDocumentDto } from \"../models/generated\";\r\nimport { getConfiguration } from \"./config\";\r\n\r\nexport const documentsService = {\r\n getDocuments,\r\n getDocumentsByIds,\r\n getInvoiceFile\r\n};\r\n\r\nasync function getDocuments(customerId: number): Promise { \r\n const resp = await fetchWrapper.get(getConfiguration().apiUrl + `/documents/getDocuments/${customerId}`);\r\n const res: IDocumentDto[] = resp;\r\n return res;\r\n}\r\n\r\nasync function getDocumentsByIds(ids: number[]): Promise { \r\n const resp = await fetchWrapper.get(getConfiguration().apiUrl + `/documents/getDocumentsByIds${urlHelper.parameterizeArray('ids', ids)}`);\r\n const res: IDocumentDto[] = resp;\r\n return res;\r\n}\r\n\r\nasync function getInvoiceFile(invoiceId: string): Promise {\r\n const resp = await fetchWrapper\r\n .getFile(getConfiguration().apiUrl + `/documents/getInvoiceFile/${encodeURIComponent(invoiceId)}`,\r\n fetchWrapper.saveToFileSystem);\r\n return resp;\r\n}\n","import { fetchWrapper } from \"../helpers\";\r\nimport { IMessageDto } from \"../models/generated\";\r\nimport { getConfiguration } from \"./config\";\r\n\r\nexport const messagesService = {\r\n getMessages, \r\n addMessage,\r\n updateMessage,\r\n };\r\n\r\nasync function getMessages(onlyActive: boolean, skip: number,take?: number): Promise { \r\n const resp = await fetchWrapper.get(getConfiguration().apiUrl + `/messages/getMessages/${onlyActive}/${skip}/${(take) ? '/' + take : ''}`);\r\n const res: IMessageDto[] = resp;\r\n return res;\r\n}\r\n\r\nasync function addMessage(message: IMessageDto): Promise { \r\n const resp = await fetchWrapper.post(getConfiguration().apiUrl + `/messages/addMessage`, message);\r\n const res: IMessageDto = resp;\r\n return res;\r\n}\r\n\r\nasync function updateMessage(message: IMessageDto): Promise { \r\n const resp = await fetchWrapper.post(getConfiguration().apiUrl + `/messages/updateMessage`, message);\r\n const res: IMessageDto = resp;\r\n return res;\r\n}","\r\nexport const stringHelper = {\r\n currencyFormat,\r\n}\r\n\r\nfunction currencyFormat(value: number | undefined | null, onUndefinde: string | undefined = undefined) : string {\r\n if (value !== undefined && value !== null) {\r\n return new Intl.NumberFormat('pl-PL', {\r\n style: 'currency',\r\n currency: 'PLN'\r\n }).format(value);\r\n }\r\n return onUndefinde ?? '---';\r\n}\r\n\r\n","\r\nexport enum ModalDialogMode {\r\n\tView = 0,\r\n\tEdit = 1,\r\n\tAdd = 2,\r\n\tDelete = 3\r\n}\r\n\r\nexport interface IModalDialogProps {\r\n\tmodalDialogMode: ModalDialogMode,\r\n\tisModalDialogOpened: boolean;\r\n\tcloseModalDialog: (exitCode: number | undefined) => void;\r\n}\r\n","import React from 'react';\r\nimport { CardHeader, CardBody, Card } from 'reactstrap';\r\nimport { stringHelper } from '../../helpers/string';\r\nimport { IContractSummaryInfoDto } from '../../models/generated';\r\n\r\ninterface IContractInfoProps {\r\n\tcontractSummaryInfoDto: IContractSummaryInfoDto;\r\n} \r\n\r\nclass ContractInfo extends React.Component {\r\n\trender() {\r\n\t\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t{/* Umowa: {this.props.contractInfo?.contractWithDetails?.contract?.contractNumber} */}\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t
{this.props.contractSummaryInfoDto.currentDueCaption} { stringHelper.currencyFormat(this.props.contractSummaryInfoDto.currentDueValue, '') }
\r\n\t\t\t\t\t
{this.props.contractSummaryInfoDto.paymentCaption} {this.props.contractSummaryInfoDto.paymentDate}
\n\t\t\t\t\t{this.props.contractSummaryInfoDto.overdueValue === null &&\r\n\t\t\t\t\t\t
{this.props.contractSummaryInfoDto.overdueCaption}
\n\t\t\t\t\t}\n\t\t\t\t\t{this.props.contractSummaryInfoDto.overdueValue !== null &&\r\n\t\t\t\t\t\t\t
{this.props.contractSummaryInfoDto.overdueCaption} {stringHelper.currencyFormat(this.props.contractSummaryInfoDto.overdueValue, '')}
\n\t\t\t\t\t}\n\t\t\t\t\t{this.props.contractSummaryInfoDto.overpaidValue != null && this.props.contractSummaryInfoDto.overpaidValue > 0 &&\r\n\t\t\t\t\t\t\t< div >{this.props.contractSummaryInfoDto.overpaidCaption} {stringHelper.currencyFormat(this.props.contractSummaryInfoDto.overpaidValue, '')}
\n\t\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
);\r\n\t}\r\n}\r\n\r\nexport default ContractInfo;\n","\r\nexport const addressHelper = {\r\n format,\r\n}\r\n\r\nfunction format(c: { street?: string | undefined, streetNum?: string| undefined, city?: string| undefined, zipCode?: string | undefined}, withZipCode: boolean = false): string {\r\n return `${c.street} ${c.streetNum}${(withZipCode) ? ', ' + c.zipCode : ''}, ${c.city}`; \r\n}\r\n\r\n","import { Subject } from 'rxjs';\r\nimport { filter } from 'rxjs/operators';\r\n\r\nconst alertSubject = new Subject();\r\nconst defaultId = 'default-alert';\r\n\r\nexport const alertService = {\r\n onAlert,\r\n success,\r\n error,\r\n info,\r\n warn,\r\n alert,\r\n clear\r\n};\r\n\r\nexport enum AlertType\r\n{ \r\n Success = \"success\",\r\n Error = \"danger\", \r\n Info = \"info\",\r\n Warning = \"warning\"\r\n };\r\n\r\nexport type AlertOptions = Partial<{ id: string, autoClose: boolean, keepAfterRouteChange: boolean }>;\r\nexport type Alert = { type: AlertType, message: string, title: string } & AlertOptions; \r\n// enable subscribing to alerts observable\r\nfunction onAlert(id = defaultId) {\r\n return alertSubject.asObservable().pipe(filter(x => x && x.id === id));\r\n}\r\n\r\n// convenience methods\r\nfunction success(title: string, message: string, options: AlertOptions) {\r\n alert({ ...options, type: AlertType.Success, message, title });\r\n}\r\n\r\nfunction error(title: string, message: string, options: AlertOptions) {\r\n alert({ ...options, type: AlertType.Error, message, title });\r\n}\r\n\r\nfunction info(title: string, message: string, options: AlertOptions) {\r\n alert({ ...options, type: AlertType.Info, message, title });\r\n}\r\n\r\nfunction warn(title: string, message: string, options: AlertOptions) {\r\n alert({ ...options, type: AlertType.Warning, message, title });\r\n}\r\n\r\n// core alert method\r\nfunction alert(alert: Alert) {\r\n alert.id = alert.id || defaultId;\r\n alert.autoClose = (alert.autoClose === undefined ? true : alert.autoClose);\r\n alertSubject.next(alert);\r\n}\r\n\r\n// clear alerts\r\nfunction clear(id = defaultId) {\r\n alertSubject.next({ id, \r\n type: AlertType.Info, autoClose: false, title: '', message: '', keepAfterRouteChange: false });\r\n}","\r\nimport { fetchWrapper } from \"../helpers\";\r\nimport { CustomerValidationReqeuest, ICustomerDto } from \"../models/generated\";\r\nimport { getConfiguration } from \"./config\";\r\n\r\nexport const customersService = {\r\n getCustomers,\r\n sendRequestToAssignCustomer,\r\n synchronizeAccount,\r\n removeCustomer\r\n };\r\n\r\n \r\nasync function getCustomers(): Promise { \r\n const resp = await fetchWrapper.get(getConfiguration().apiUrl + '/customers/getCustomers');\r\n const res: ICustomerDto[] = resp;\r\n return res;\r\n}\r\n\r\nasync function sendRequestToAssignCustomer(request: CustomerValidationReqeuest): Promise { \r\n const resp = await fetchWrapper.post(getConfiguration().apiUrl + '/customers/sendRequestToAssignCustomer', request);\r\n const res: ICustomerDto = resp;\r\n return res;\r\n}\r\n\r\nasync function synchronizeAccount(): Promise { \r\n await fetchWrapper.post(getConfiguration().apiUrl + '/customers/synchronizeAccount', {});\r\n return;\r\n}\r\n\r\nasync function removeCustomer(customerId: number): Promise { \r\n const resp = await fetchWrapper.post(getConfiguration().apiUrl + '/customers/removeCustomer', customerId);\r\n const res: ICustomerDto = resp;\r\n return res;\r\n}","import React from 'react';\r\nimport SweetAlert from 'react-bootstrap-sweetalert';\r\nimport { from } from 'rxjs';\r\nimport { first } from 'rxjs/operators';\r\nimport { IUserContextData } from '../../config/user-context';\r\nimport { addressHelper } from '../../helpers/address';\r\nimport { IModalDialogProps, ModalDialogMode } from '../../models/models';\r\nimport { alertService } from '../../services/alert.service';\r\nimport { customersService } from '../../services/customers.service';\r\n \r\ninterface CustomerCardProps {\r\n\tuserContextData: IUserContextData;\r\n\tdisplayRemoveButton: boolean;\r\n}\r\n\r\ninterface CustomerCardState extends IModalDialogProps {\r\n\tisSynch: boolean,\r\n\tshowRemoveCustomerConfirmation: boolean, \r\n\tremovingCustomerId: number | undefined\r\n}\r\n\r\nclass CustomerCard extends React.Component {\r\n\tconstructor(props: CustomerCardProps) {\r\n\t\tsuper(props);\r\n\t\tthis.state = { \r\n\t\t\tisSynch: false,\r\n\t\t\tisModalDialogOpened: false,\r\n\t\t\tcloseModalDialog: this.closeCustomerModal,\r\n\t\t\tmodalDialogMode: ModalDialogMode.Edit,\r\n\t\t\tshowRemoveCustomerConfirmation: false, \r\n\t\t\tremovingCustomerId: undefined\r\n\t\t};\r\n\t}\r\n\r\n\tcloseCustomerModal = (customerId: number | undefined) => {\r\n\t\tthis.setState({ \r\n\t\t\tisModalDialogOpened: false\r\n\t\t});\r\n\t\tthis.synchronizeAccount();\r\n\t};\r\n\r\n\tsynchronizeAccount = () => {\r\n\t\tthis.setState((prevState) => ({ isSynch: true }));\t\r\n\t\tfrom(customersService.synchronizeAccount())\r\n\t\t\t.pipe(\r\n\t\t\t\tfirst()\r\n\t\t\t)\r\n\t\t\t.subscribe({\r\n\t\t\t\tnext: val => \r\n\t\t\t\t{ \r\n\t\t\t\t\tthis.setState((prevState) => ({ isSynch: false }));\t\r\n\t\t\t\t\tconsole.log(`synchronizeAccount success started`); \r\n\t\t\t\t\t\r\n\t\t\t\t},\r\n\t\t\t\tcomplete: () => console.log('synchronizeAccount Complete!'),\r\n\t\t\t\terror: err => \r\n\t\t\t\t{ \r\n\t\t\t\t\tthis.setState((prevState) => ({ isSynch: false }));\t\r\n\t\t\t\t\tconsole.error(`synchronizeAccount Error: ${err}`); \r\n\t\t\t\t} \r\n\t\t\t});\r\n\t}\r\n\r\n\topenAddCustomer = () => {\r\n\t\tthis.setState({ \r\n\t\t\tisModalDialogOpened: true\r\n\t\t});\r\n\t};\r\n\r\n\r\n\tremoveCustomer(evt: React.MouseEvent, id: number | undefined): void {\r\n\t\tevt.preventDefault();\r\n\t\tevt.stopPropagation();\r\n\t\tthis.setState(prev => ({ ...prev, showRemoveCustomerConfirmation: true, removingCustomerId: id }))\r\n\t}\r\n\r\n\tremoveCustomerConfirmed(param: any)\r\n\t{\r\n\t\tconsole.log('removeCustomerConfirmed');\r\n\t\tvar id = this.state.removingCustomerId;\r\n\r\n\t\tif (id !== undefined) {\r\n\t\t\tcustomersService.removeCustomer(id)\r\n\t\t\t.then(removedCustomer => {\r\n\t\t\t\talertService.info('Usuwanie klienta', 'Klient został usunięty', { autoClose: true });\r\n\t\t\t\tvar newCustomerInfos = this.props.userContextData.userInfo.customerInfos.filter(x => x.customer.id !== removedCustomer.id);\r\n\t\t\t\tthis.props.userContextData.setCustomerInfos(newCustomerInfos);\r\n\t\t\t\tthis.setState(prev => ({ ...prev, showRemoveCustomerConfirmation: false, removingCustomerId: undefined }))\r\n\t\t\t})\r\n\t\t\t.catch(err => {\r\n\t\t\t\talertService.error('Usuwanie klienta nie powiodło się', `${err}`, { autoClose: true });\r\n\t\t\t\tconsole.error(`RemoveCustomer Error: ${err}`); \r\n\t\t\t\tthis.setState(prev => ({ ...prev, showRemoveCustomerConfirmation: false, removingCustomerId: undefined }))\r\n\t\t\t})\r\n\t\t}\r\n\t}\r\n\tremoveCustomerCanceled = () => {\r\n\t\tthis.setState(prev => ({ ...prev, showRemoveCustomerConfirmation: false, removingCustomerId: undefined }))\r\n\t}\r\n\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t<>\r\n\t\t\t{\r\n\t\t\t\tthis.props.userContextData.userInfo.selectedCustomerInfo?.customer &&\r\n\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t this.removeCustomerConfirmed(evt)}\r\n\t\t\t\t\t\tonCancel={() => this.removeCustomerCanceled()}\r\n\t\t\t\t\t\tdependencies={[ this.state.removingCustomerId ]}\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\tshowCancel={true}\r\n\t\t\t\t\t\tfocusCancelBtn={true}\r\n\t\t\t\t\t\tconfirmBtnBsStyle=\"danger\"\r\n\t\t\t\t\t\tcancelBtnBsStyle=\"primary\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\tCzy na pewno chcesz usunąć klienta?\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t{/*
*/}\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tthis.props.displayRemoveButton &&\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t{/*
*/}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
{this.props.userContextData.userInfo.selectedCustomerInfo?.customer?.name}
\r\n\t\t\t\t\t\t
{addressHelper.format(this.props.userContextData.userInfo.selectedCustomerInfo?.customer, true)}
\n\t\t\t\t\t\t
NIP: {this.props.userContextData.userInfo.selectedCustomerInfo?.customer?.vatid}
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tthis.props.displayRemoveButton &&\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t}\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t}\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\t\r\n}\r\n\r\nexport default CustomerCard;\n","import React from 'react';\r\nimport { UseFormReturn } from 'react-hook-form';\r\nimport { Button, Modal, ModalBody, ModalFooter, ModalHeader, Spinner } from 'reactstrap';\r\nimport { from } from 'rxjs';\r\nimport { first } from 'rxjs/operators';\r\nimport { ICustomerInfoDto, UserContext } from '../../config/user-context';\r\nimport { IProcessingModel, withUseFormHook } from '../../helpers';\r\nimport { CustomerValidationReqeuest } from '../../models/generated';\r\nimport { alertService } from '../../services/alert.service';\r\nimport { customersService } from '../../services/customers.service';\r\nimport { IModalDialogProps } from '../../models/models';\r\nimport SweetAlert from 'react-bootstrap-sweetalert';\r\n \r\nexport interface IAddCustomerModalProps extends IModalDialogProps, UseFormReturn {\r\n\t\r\n}\r\n\r\nexport interface IAddCustomerModalState extends IProcessingModel\r\n{\r\n\tshowInfoAfterValidation: boolean;\r\n}\r\n\r\ntype FormInputs = {\r\n\t//customerNo: string,\r\n\tinvoiceNumber: string,\r\n\tinvoiceAmount: number,\r\n};\r\n\r\nclass AddCustomer extends React.Component {\r\n\tstatic contextType = UserContext;\r\n\r\n\tconstructor(props: IAddCustomerModalProps) {\r\n\t\tsuper(props);\r\n\t\tthis.state = { \r\n\t\t\tisProcessing: false,\r\n\t\t\terror: undefined,\r\n\t\t\tshowInfoAfterValidation: false\r\n\t\t};\r\n\t}\r\n\r\n\tonSubmit = (data: FormInputs) => {\t\r\n\t\tthis.setState((prevState) => ({ isProcessing: true }));\t\r\n\t\tfrom(customersService.sendRequestToAssignCustomer(new CustomerValidationReqeuest({ ...data })))\r\n\t\t.pipe(first())\r\n\t\t.subscribe({\r\n\t\t\tnext: val => \r\n\t\t\t{ \r\n\t\t\t\tthis.setState((prevState) => ({ isProcessing: false, showInfoAfterValidation: true }));\t\r\n\r\n\t\t\t\tconsole.log(`SendRequestToAssignCustomer: ${val}`); \r\n\t\t\t\talertService.info(`Weryfikacja klienta poprawna`, `Nastąpi synchronizacja danych dla klienta`, { autoClose: true }); \r\n\t\t\t\tif (val) {\r\n\t\t\t\t\tvar newCustomerInfos: ICustomerInfoDto[] = this.context.userInfo?.customerInfos ?? [];\r\n\t\t\t\t\tvar newCustomers = newCustomerInfos.map(x => x.customer);\r\n\t\t\t\t\tnewCustomers.push(val);\r\n\t\t\t\t\tthis.context.setCustomers(newCustomers);\r\n\t\t\t\t\tthis.context.setSelectedCustomer(val);\r\n\t\t\t\t\tthis.props.closeModalDialog(val.id);\t\t\t\t\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tcomplete: () => console.log('SendRequestToAssignCustomer Complete!'),\r\n\t\t\terror: val => \r\n\t\t\t{ \r\n\t\t\t\tthis.setState((prevState) => ({ isProcessing: false }));\t\r\n\t\t\t\tconsole.log(`SendRequestToAssignCustomer Error: ${val}`); \r\n\t\t\t\talertService.error(`Weryfikacja klienta nie powiodła się`, `${val}`, { autoClose: true }); \r\n\t\t\t} \r\n\t\t});\t\r\n \t}\r\n\r\n\thideInfoAfterValidation(evt: any): any {\r\n\t\tthis.setState((prevState) => ({ showInfoAfterValidation: false }));\t\r\n\t}\r\n\r\n\ttoggle = () => {\r\n\t\tthis.props.closeModalDialog(undefined);\r\n\t}\r\n\trender() {\r\n\t\tconst { register, handleSubmit, formState: { errors } } = this.props;\r\n\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t this.hideInfoAfterValidation(evt)}\r\n\t\t\t\t\tconfirmBtnText=\"Ok\"\r\n\t\t\t\t\tshowCancel={false}\r\n\t\t\t\t\tfocusCancelBtn={false}\r\n\t\t\t\t\tconfirmBtnBsStyle=\"primary\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\tTwoje dane są obecnie pobierane i będą dostępne w ciągu 10 minut.\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\tWeryfikacja klienta\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{/*
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{errors.customerNo &&

{errors.customerNo.message}

}\r\n\t\t\t\t\t\t\t
*/}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\tAby zobaczyć swoje faktury i rozliczenia musimy zweryfikować czy jesteś naszym klientem.\r\n\t\t\t\t\t\t\t\tW poniższe pola wpisz odpowiednio numer dowolnej faktury wystawionej przez ZGK Szamotuły oraz widniejącą na niej, kwotę do zapłaty.
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{errors.invoiceNumber &&

{errors.invoiceNumber.message}

}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{errors.invoiceAmount &&

{errors.invoiceAmount.message}

}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n\t\r\n}\r\n\r\nexport default withUseFormHook(AddCustomer);\r\n","import React from 'react';\r\nimport { FloatingLabel, Form } from 'react-bootstrap';\r\nimport { UserContext } from '../../config/user-context';\r\n \r\n\r\nclass CustomerSelector extends React.Component> {\r\n\tstatic contextType = UserContext;\r\n\r\n\thandleChangeCustomer = (ev: any) => {\r\n\t\tev.persist();\r\n\t\tthis.context.setSelectedCustomer(+ev.target.value);\r\n\t}\r\n\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t{userContext => (\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tuserContext.userInfo.customerInfos.map((value, i) => (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t))\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\r\n\r\n\t\t\t\t// \r\n\t\t\t)}\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default CustomerSelector;","import React from 'react';\r\nimport { IUserInfoProps, UserContext } from '../../config/user-context';\r\nimport AddCustomer from './add-customer';\r\nimport { IModalDialogProps, ModalDialogMode } from \"../../models/models\";\r\nimport CustomerSelector from './customer-selector';\r\nimport { customersService } from '../../services/customers.service';\r\nimport { from } from 'rxjs';\r\nimport { first } from 'rxjs/operators';\r\n\r\ninterface ICustomerSectionStatus extends IModalDialogProps {\r\n\tisSynch: boolean\r\n}\r\n\r\n\r\nclass CustomerSection extends React.Component {\r\n\tstatic contextType = UserContext;\r\n\t\r\n\tconstructor(props: IUserInfoProps) {\r\n\t\tsuper(props);\r\n\t\tthis.state = { \r\n\t\t\tisSynch: false,\r\n\t\t\tisModalDialogOpened: false,\r\n\t\t\tcloseModalDialog: this.closeCustomerModal,\r\n\t\t\tmodalDialogMode: ModalDialogMode.Edit\r\n\t\t};\r\n\t}\r\n\r\n\tcloseCustomerModal = (customerId: number | undefined) => {\r\n\t\tthis.setState({ \r\n\t\t\tisModalDialogOpened: false\r\n\t\t});\r\n\t\tthis.synchronizeAccount();\r\n\t};\r\n\r\n\tsynchronizeAccount = () => {\r\n\t\t\r\n\t\t//if (customerId) {\r\n\t\t\t// var customerInfos: ICustomerInfoDto[] = this.context.userInfo?.customerInfos ?? [];\t\t\r\n\t\t\t// var customer = customerInfos.find(x => x.customer?.id === customerId)?.customer;\r\n\r\n\t\t\t// if (customer === undefined) {\r\n\t\t\t// \talertService.error(`Synchronizacja klienta`, `Klient nie istnieje`, { autoClose: true });\r\n\t\t\t// }\r\n\r\n\t\t\tthis.setState((prevState) => ({ isSynch: true }));\t\r\n\t\t\tfrom(customersService.synchronizeAccount())\r\n\t\t\t\t.pipe(\r\n\t\t\t\t\tfirst()\r\n\t\t\t\t)\r\n\t\t\t\t.subscribe({\r\n\t\t\t\t\tnext: val => \r\n\t\t\t\t\t{ \r\n\t\t\t\t\t\tthis.setState((prevState) => ({ isSynch: false }));\t\r\n\t\t\t\t\t\tconsole.log(`synchronizeAccount success started`); \r\n\t\t\t\t\t\t//alertService.info(`Synchronizację dla użytkownika`, `Rozpoczęto synchronizację dla użytkownika` , { autoClose: true }); \r\n\t\t\t\t\t\t//todo: update consumers \r\n\t\t\t\t\t\t//this.context.setCustomers(val);\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t},\r\n\t\t\t\t\tcomplete: () => console.log('synchronizeAccount Complete!'),\r\n\t\t\t\t\terror: err => \r\n\t\t\t\t\t{ \r\n\t\t\t\t\t\tthis.setState((prevState) => ({ isSynch: false }));\t\r\n\t\t\t\t\t\tconsole.log(`synchronizeAccount Error: ${err}`); \r\n\t\t\t\t\t\t//alertService.error(`Synchronizacja klienta nie powiodła się`, `${err}`, { autoClose: true }); \r\n\t\t\t\t\t} \r\n\t\t\t\t});\r\n\t\t//}\r\n\t}\r\n\r\n\t// synchronizeCurrentCustomer = (event: any) => {\r\n\t// \tconsole.log('synchronizeCurrentCustomer');\r\n\t// \tvar customerId = this.context.userInfo?.selectedCustomerInfo?.customer?.id;\r\n\t// \tthis.synchronizeCustomer(customerId);\r\n\t// }\r\n\r\n\topenAddCustomer = () => {\r\n\t\tthis.setState({ \r\n\t\t\tisModalDialogOpened: true\r\n\t\t});\r\n\t};\r\n\topenRemoveCustomer = () => {\r\n\r\n\t}\r\n\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t<>\r\n\t\t\t\t
\r\n\t\t\t\t\t{/* */}\r\n\t\t\t\t\t\r\n\t\t\t\t\t{/* \r\n\t\t\t\t\t */}\r\n\t\t\t\t\t{/* */}\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\r\n\t\t)\r\n\t}\r\n}\r\n\r\nexport default CustomerSection;","import React from 'react';\r\nimport { CardHeader, CardBody, Card } from 'reactstrap';\r\nimport { IMessageDto } from '../../models/generated';\r\n\r\ninterface IMessageProps {\r\n\tmessage: IMessageDto;\r\n} \r\n\r\nclass Message extends React.Component, HTMLDivElement>> {\r\n\r\n\trender() {\r\n\t\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t{this.props.message.subject}\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t{this.props.message.contentText}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default Message;","import React from 'react';\r\nimport { IProcessingModel } from '../helpers';\r\nimport { IContractDto, IContractWithDetailsDto } from '../models/generated';\r\nimport { contractsService } from '../services/contracts.service';\r\nimport { IUserInfoProps } from '../config/user-context';\r\n\r\nexport abstract class ContractRelatedComponentBase

extends React.Component {\r\n getContractsWithDetails = async (customerId: number | undefined, force: boolean = false): Promise => {\r\n\t\treturn new Promise((resolve, reject) => {\r\n\t\t\tif (customerId !== undefined) { \r\n\t\t\t\tthis.setState({ error: undefined, isProcessing: true });\r\n\t\t\t\tif (this.props.userInfo.selectedCustomerInfo?.contractInfos === undefined\r\n\t\t\t\t\t || this.props.userInfo.selectedCustomerInfo?.contractInfos.length === 0\r\n\t\t\t\t\t || force\r\n\t\t\t\t \t) {\r\n\t\t\t\t\t\tcontractsService.getContractsWithDetails(customerId)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tthis.context.setContracts(customerId, res);\t\t\t\t\r\n\t\t\t\t\t\t\t\tthis.setState({ error: undefined, isProcessing: false });\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tresolve(res);\r\n\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t.catch((err) => {\r\n\t\t\t\t\t\t\t\tthis.context.setContracts(customerId, []);\r\n\t\t\t\t\t\t\t\tthis.setState({ error: err, isProcessing: false });\t\t\r\n\t\t\t\t\t\t\t\treject(err);\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.setState({ error: undefined, isProcessing: false });\r\n\t\t\t\t\t\tresolve(this.props.userInfo.selectedCustomerInfo?.contractInfos.map(x => x.contractWithDetails));\r\n\t\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tthis.context.setContracts(customerId, []);\t\r\n\t\t\t\tthis.setState({ error: undefined, isProcessing: false });\r\n\t\t\t\tresolve(undefined);\r\n\t\t\t}\t\t\r\n\t\t});\r\n }\r\n}","import { Panel, PanelHeader, PanelBody } from '../components/panel/panel';\r\nimport { IUserInfoProps, UserContext } from '../config/user-context';\r\nimport { IProcessingModel } from '../helpers';\r\nimport { ContractTypeEnum, IContractSummaryInfoDto, IMessageDto } from '../models/generated';\r\nimport { contractsService } from '../services/contracts.service';\r\nimport { documentsService } from '../services/documents.service';\r\nimport { messagesService } from '../services/messages.service';\r\nimport ContractInfo from './components/contract-info';\r\nimport CustomerCard from './components/customer-card';\r\nimport CustomerSection from './components/customers-section';\r\nimport Message from './components/message';\r\nimport { ContractRelatedComponentBase } from './contract-related-base';\r\n\r\n\r\ninterface IHomeState extends IProcessingModel {\r\n\tmessages: { value: IMessageDto[] } & IProcessingModel,\r\n\tcontractSummaryInfoWater: { value: IContractSummaryInfoDto } & IProcessingModel,\r\n\tcontractSummaryInfoWaste: { value: IContractSummaryInfoDto } & IProcessingModel,\r\n\tcontractSummaryInfoAnother: { value: IContractSummaryInfoDto } & IProcessingModel,\r\n}\r\n\r\nclass Home extends ContractRelatedComponentBase {\r\n\tstatic contextType = UserContext;\r\n\t\r\n\tconstructor(props: IUserInfoProps) {\r\n\t\tsuper(props);\r\n\t\tthis.state = { \r\n\t\t\tisProcessing: false, \r\n\t\t\terror: undefined, \r\n\t\t\tmessages: { isProcessing: false, error: undefined, value: [] },\r\n\t\t\tcontractSummaryInfoWater: { isProcessing: false, error: undefined, value: {} },\r\n\t\t\tcontractSummaryInfoWaste: { isProcessing: false, error: undefined, value: {} },\r\n\t\t\tcontractSummaryInfoAnother: { isProcessing: false, error: undefined, value: {} },\r\n\t\t}\r\n\t\t\t\r\n\t}\r\n\r\n\tprivate setContractsAndDocuments() {\r\n\t\tif (this.props.userInfo?.selectedCustomerInfo?.customer?.id !== undefined) {\r\n\t\t\tthis.setState({ \r\n\t\t\t\tisProcessing: true, error: undefined, \r\n\t\t\t\tcontractSummaryInfoWater: { isProcessing: true, error: undefined, value: {} },\r\n\t\t\t\tcontractSummaryInfoWaste: { isProcessing: true, error: undefined, value: {} },\r\n\t\t\t\tcontractSummaryInfoAnother: { isProcessing: true, error: undefined, value: {} }\r\n\t\t\t});\r\n\t\t\tthis.getContractsWithDetails(this.props.userInfo?.selectedCustomerInfo?.customer?.id)\r\n\t\t\t\t.then((contracts) => {\r\n\t\t\t\t\treturn documentsService.getDocuments(this.props.userInfo!.selectedCustomerInfo!.customer.id!);\r\n\t\t\t\t})\r\n\t\t\t\t.then((documents) => {\r\n\t\t\t\t\tthis.context.setDocuments(this.props.userInfo!.selectedCustomerInfo!.customer.id!, documents);\r\n\t\t\t\t})\r\n\t\t\t\t.catch((err) => {\r\n\t\t\t\t\tthis.setState({ error: err, isProcessing: false });\r\n\t\t\t\t});\r\n\r\n\t\t\tcontractsService.getContractsSummary(this.props.userInfo?.selectedCustomerInfo?.customer?.id, ContractTypeEnum.Water)\r\n\t\t\t\t.then((items) => {\r\n\t\t\t\t\tthis.setState({ contractSummaryInfoWater: { isProcessing: false, error: undefined, value: items } });\r\n\t\t\t\t})\r\n\t\t\t\t.catch((err) => {\r\n\t\t\t\t\tthis.setState({ contractSummaryInfoWater: { isProcessing: false, error: err, value: {} } });\r\n\t\t\t\t});\r\n\t\t\t\r\n\t\t\tcontractsService.getContractsSummary(this.props.userInfo?.selectedCustomerInfo?.customer?.id, ContractTypeEnum.Waste)\r\n\t\t\t\t.then((items) => {\r\n\t\t\t\t\tthis.setState({ contractSummaryInfoWaste: { isProcessing: false, error: undefined, value: items } });\r\n\t\t\t\t})\r\n\t\t\t\t.catch((err) => {\r\n\t\t\t\t\tthis.setState({ contractSummaryInfoWaste: { isProcessing: false, error: err, value: {} } });\r\n\t\t\t\t});\r\n\r\n\t\t\tcontractsService.getContractsSummary(this.props.userInfo?.selectedCustomerInfo?.customer?.id, ContractTypeEnum.Another)\r\n\t\t\t\t.then((items) => {\r\n\t\t\t\t\tthis.setState({ contractSummaryInfoAnother: { isProcessing: false, error: undefined, value: items } });\r\n\t\t\t\t})\r\n\t\t\t\t.catch((err) => {\r\n\t\t\t\t\tthis.setState({ contractSummaryInfoAnother: { isProcessing: false, error: err, value: {} } });\r\n\t\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tcomponentDidMount() {\r\n\t\t\r\n\r\n\t\tthis.setContractsAndDocuments();\r\n\r\n\t\tthis.setState({ \r\n\t\t\tmessages: { isProcessing: true, value: [], error: undefined }\r\n\t\t});\r\n\t\tmessagesService.getMessages(true, 0, undefined)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tthis.setState({ messages: { value: [...res], error: undefined, isProcessing: false } });\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tthis.setState({ messages: { value: [], error: err, isProcessing: false } });\r\n\t\t\t})\t\r\n\t}\r\n\t\r\n\r\n\tcomponentDidUpdate(prevProps: IUserInfoProps) {\r\n\t\tif (prevProps.userInfo?.selectedCustomerInfo?.customer?.id !== this.props.userInfo?.selectedCustomerInfo?.customer?.id) {\r\n\t\t\tthis.setContractsAndDocuments();\r\n\t\t}\r\n\t}\r\n\t\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t<>\r\n\t\t\t\t\r\n\t\t\t\t

\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tTwoje dane\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tthis.props.userInfo.isLoggedIn && this.props.userInfo.selectedCustomerInfo?.customer &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tWiadomości\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t(this.state.messages.error !== undefined) ? \r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t{/* {this.state.contracts.error.message} */}\r\n\t\t\t\t\t\t\t\t\t\t\tWystąpił błąd, skontaktuj się z administratorem.\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t:\t\r\n\t\t\t\t\t\t\t\t\t\t(\r\n\t\t\t\t\t\t\t\t\t\t\t(this.state.messages.value.some(x => true)) ?\r\n\t\t\t\t\t\t\t\t\t\t\t\tthis.state.messages.value?.map((value, i) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t))\r\n\t\t\t\t\t\t\t\t\t\t\t\t:\r\n\t\t\t\t\t\t\t\t\t\t\t\tNie masz żadnej wiadomości\r\n\t\t\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tWoda\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t(this.state.contractSummaryInfoWater.error) ? \r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\tWystąpił błąd, skontaktuj się z administratorem.\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t:\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tOdpady\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t(this.state.contractSummaryInfoWaste.error !== undefined) ? \r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t{/* {this.state.contracts.error.message} */}\r\n\t\t\t\t\t\t\t\t\t\t\tWystąpił błąd, skontaktuj się z administratorem.\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t:\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tInne\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t(this.state.contractSummaryInfoAnother.error !== undefined) ? \r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t{/* {this.state.contracts.error.message} */}\r\n\t\t\t\t\t\t\t\t\t\t\tWystąpił błąd, skontaktuj się z administratorem.\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t:\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\r\n\t\t)\r\n\t}\r\n}\r\n\r\nexport default Home;","import { Panel, PanelHeader, PanelBody } from '../components/panel/panel';\r\nimport moment from 'moment';\r\nimport CustomerSection from './components/customers-section';\r\nimport { IUserInfoProps, UserContext } from '../config/user-context';\r\nimport { documentsService } from '../services/documents.service';\r\nimport { dateHelper, IProcessingModel } from '../helpers';\r\nimport { DocumentTypeEnum, IDocumentDto } from '../models/generated';\r\nimport React from 'react';\r\nimport { alertService } from '../services/alert.service';\r\nimport { stringHelper } from '../helpers/string';\r\nimport SweetAlert from 'react-bootstrap-sweetalert';\r\nimport { Redirect } from 'react-router-dom';\r\n\r\ninterface IInvoicesState extends IProcessingModel {\r\n\ttoDate: number;\r\n\tfromDate: number;\r\n\t//selectedContractType: string;\r\n\tfilteredItems: IDocumentDto[];\r\n\r\n\tshowRequestForAcceptDownloadingInvoice: boolean,\r\n\tredirectToForm: boolean\r\n}\r\n\r\nclass Invoices extends React.Component { \r\n\tstatic contextType = UserContext;\r\n\r\n\tconstructor(props: any){\r\n\t\tsuper(props); \r\n\t\tconst now = new Date();\r\n\t\tthis.state = {\r\n\t\t\t//selectedContractType: '',\r\n\t\t\tfilteredItems: [],\r\n\t\t\tfromDate: new Date(now).setMonth(now.getMonth() - 6),\r\n\t\t\ttoDate: now.getTime(),\r\n\t\t\tisProcessing: false,\r\n\t\t\terror: undefined,\r\n\t\t\tshowRequestForAcceptDownloadingInvoice: false,\r\n\t\t\tredirectToForm: false\r\n\t\t};\r\n\t}\r\n\r\n\tgetItems = async (customerId: number | undefined, force: boolean = false): Promise => {\r\n\t\treturn new Promise((resolve, reject) => {\r\n\r\n\t\t\tif (customerId !== undefined) { \r\n\t\t\t\tthis.setState({ error: undefined, isProcessing: true });\r\n\t\t\t\tdocumentsService.getDocuments(customerId)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tvar docs = this.props.userInfo?.selectedCustomerInfo?.documents ?? [];\r\n\t\t\t\t\t\t// var updatedCi = ci.map(x => {\r\n\t\t\t\t\t\t// \tx.documents = res.filter(newItem=> newItem.contractId === x.contract.id);\r\n\t\t\t\t\t\t// \treturn x;\r\n\t\t\t\t\t\t// });\r\n\r\n\t\t\t\t\t\tthis.context.setDocuments(customerId, res);\r\n\t\t\t\t\t\tthis.setState({ error: undefined, isProcessing: false, \r\n\t\t\t\t\t\t\tfilteredItems: this.getFilterItems(\r\n\t\t\t\t\t\t\t\tdocs,\r\n\t\t\t\t\t\t\t\t\t//this.state.selectedContractType, \r\n\t\t\t\t\t\t\t\t\tthis.state.fromDate, \r\n\t\t\t\t\t\t\t\t\tthis.state.toDate)\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tresolve(res);\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.catch((err) => {\r\n\t\t\t\t\t\tthis.setState({ error: err, isProcessing: false });\r\n\t\t\t\t\t\tconsole.error(err);\r\n\t\t\t\t\t\treject(err);\r\n\t\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tthis.setState({ error: undefined, isProcessing: false });\r\n\t\t\t\tresolve(undefined);\r\n\t\t\t}\t\r\n\t\t});\t\r\n }\r\n\r\n\tcomponentDidMount() {\r\n\t\tconsole.log('componentDidMount');\r\n\t\tif (this.props.userInfo?.selectedCustomerInfo?.customer?.id !== undefined\r\n\t\t\t//&& (this.props.userInfo?.selectedCustomerInfo.contractInfos === undefined\r\n\t\t\t//|| this.props.userInfo?.selectedCustomerInfo.contractInfos.length === 0)\r\n\t\t\t) {\r\n\t\t\t//this.getContracts(this.props.userInfo?.selectedCustomerInfo?.customer?.id)\r\n\t\t\t\t//.then((contracts) => {\r\n\t\t\t\tthis.getItems(this.props.userInfo?.selectedCustomerInfo?.customer?.id)//;\r\n\t\t\t\t//})\r\n\t\t\t\t.catch(err => {\r\n\t\t\t\t\tconsole.error(err);\r\n\t\t\t\t});\r\n\t\t\t\r\n\t\t}\r\n\t}\r\n\r\n\tcomponentDidUpdate(prevProps: IUserInfoProps) {\r\n\t\tif (prevProps?.userInfo?.selectedCustomerInfo?.customer.id !== this.props.userInfo?.selectedCustomerInfo?.customer.id) {\r\n\t\t\t//this.getContracts(this.props.userInfo?.selectedCustomerInfo?.customer?.id)\r\n\t\t\t\t//.then((contracts) => {\r\n\t\t\t\t//\treturn \r\n\t\t\t\tthis.getItems(this.props.userInfo?.selectedCustomerInfo?.customer?.id)//;\r\n\t\t\t\t//})\r\n\t\t\t\t.then((documents) => {\r\n\t\t\t\t\tthis.setState({ \r\n\t\t\t\t\t\tfilteredItems: this.getFilterItems(\r\n\t\t\t\t\t\t\tthis.props.userInfo?.selectedCustomerInfo?.documents ?? [],\r\n\t\t\t\t\t\t\t//this.state.selectedContractType, \r\n\t\t\t\t\t\t\tthis.state.fromDate, this.state.toDate) \r\n\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(err => {\r\n\t\t\t\t\tconsole.error(err);\r\n\t\t\t\t});\r\n\t\t} else {\r\n\t\t\tif (prevProps.userInfo.selectedCustomerInfo?.wasDocumentsChanged !== this.props.userInfo.selectedCustomerInfo?.wasDocumentsChanged ) {\r\n\t\t\t\tthis.setState({ \r\n\t\t\t\t\tfilteredItems: \r\n\t\t\t\t\t\t (this.props.userInfo?.selectedCustomerInfo?.customer?.id !== undefined) ?\r\n\t\t\t\t\t\t\tthis.getFilterItems(\r\n\t\t\t\t\t\t\t\tthis.props.userInfo?.selectedCustomerInfo?.documents ?? [],\r\n\t\t\t\t\t\t\t\t\t//this.state.selectedContractType, \r\n\t\t\t\t\t\t\t\t\tthis.state.fromDate, this.state.toDate) : []\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tgetFilterItems(documents: IDocumentDto[], //selectContractType: DocumentTypeEnum, \r\n\t\tfromDate: number, toDate: number): IDocumentDto[] {\r\n\t\treturn documents\r\n\t\t\t.filter(d => //(selectContractType === undefined || d.documentType === selectContractType) &&\r\n\t\t\t\t\td.dateSale !== undefined \r\n\t\t\t\t\t&& moment(d.dateSale).valueOf() >= fromDate \r\n\t\t\t\t\t&& moment(d.dateSale).valueOf() <= toDate )\t\t\t\r\n\t\t\t.reduce((a, b) => a.concat(b), [] as IDocumentDto[]);\r\n\t\t\t\t\r\n\t}\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t \r\n\r\n\t// change = (event: any) => {\r\n\t// \tthis.setState({ selectedContractType: event.target.value ,\r\n\t// \t\tfilteredItems: this.getFilterItems(\r\n\t// \t\t\tthis.props.userInfo?.selectedCustomerInfo?.documents ?? [],\r\n\t// \t\t\tevent.target.value, \r\n\t// \t\t\tthis.state.fromDate, \r\n\t// \t\t\tthis.state.toDate)\r\n\t// \t});\r\n\t// }\r\n\r\n\tfromDateChange = (e: any) => {\r\n\t\tthis.setState({ fromDate: new Date(e.target.value).valueOf() ,\r\n\t\t\tfilteredItems: this.getFilterItems(\r\n\t\t\t\tthis.props.userInfo?.selectedCustomerInfo?.documents ?? [],\r\n\t\t\t\t//this.state.selectedContractType, \r\n\t\t\t\tnew Date(e.target.value).valueOf(), this.state.toDate) \r\n\t\t\t});\r\n\t}\r\n\r\n\ttoDateChange = (e: any) => {\r\n\t\tthis.setState({ toDate: new Date(e.target.value).valueOf() ,\r\n\t\t\tfilteredItems: this.getFilterItems(\r\n\t\t\t\tthis.props.userInfo?.selectedCustomerInfo?.documents ?? [],\r\n\t\t\t\t//this.state.selectedContractType, \r\n\t\t\t\tthis.state.fromDate, new Date(e.target.value).valueOf()) \r\n\t\t\t}); \r\n\t}\r\n\r\n\tdownloadInvoice(id: string | undefined): void {\r\n\t\tif (id !== undefined) {\r\n\t\t\tdocumentsService.getInvoiceFile(id)\r\n\t\t\t\t.then(b => {\r\n\t\t\t\t\tconsole.log(b);\r\n\t\t\t\t})\r\n\t\t\t\t.catch(err => {\r\n\t\t\t\t\talertService.error('Pogranie faktury', `Błąd: ${err}`, { autoClose: true });\r\n\t\t\t\t})\r\n\t\t}\r\n\t}\r\n\r\n\tapplyForAcceptDownloadingInvoice(): void {\r\n\t\tthis.setState(prev => ({ ...prev, showRequestForAcceptDownloadingInvoice: true,redirectToForm: false }))\r\n\t}\r\n\r\n\tacceptDownloadingInvoiceConfirmed(param: any)\r\n\t{\r\n\t\tthis.setState(prev => ({ ...prev, showRequestForAcceptDownloadingInvoice: false,redirectToForm: true }))\r\n\t}\r\n\tacceptDownloadingInvoiceCanceled = () => {\r\n\t\tthis.setState(prev => ({ ...prev, showRequestForAcceptDownloadingInvoice: false,redirectToForm: false }))\r\n\t}\r\n\r\n\trender() { \r\n\t\t \r\n\t\tif (this.state.redirectToForm) {\r\n\t\t\treturn ;\r\n\t \t}\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t this.acceptDownloadingInvoiceConfirmed(evt)}\r\n\t\t\t\t\t\tonCancel={() => this.acceptDownloadingInvoiceCanceled()}\r\n\t\t\t\t\t\tconfirmBtnText=\"Tak\"\r\n\t\t\t\t\t\tcancelBtnText=\"Nie\"\r\n\t\t\t\t\t\tshowCancel={true}\r\n\t\t\t\t\t\tfocusCancelBtn={true}\r\n\t\t\t\t\t\tconfirmBtnBsStyle=\"danger\"\r\n\t\t\t\t\t\tcancelBtnBsStyle=\"primary\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\tAby móc pobierać elektroniczne obrazy faktury niezbędne jest złożenie wniosku 'Zgoda na przesyłanie faktur w formie elektronicznej...'.
\r\n\t\t\t\t\t\t\tCzy chcesz złożyć wniosek teraz?\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\tFaktury\r\n\t\t\t\t\t \r\n\t\t\t\t\t\t{/*combobox filter*/}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\tNumer rachunku bankowego do opłat jest widoczny na fakturze.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{/*
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t
*/}\r\n\t\t\t\t\t\t\t{/*from dateFilter*/}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{/*to dateFilter*/}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t{/*desktop version*/}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
Numer
\r\n\t\t\t\t\t\t\t\t
Data wystawienia
\r\n\t\t\t\t\t\t\t\t
Termin płatności
\r\n\t\t\t\t\t\t\t\t
Kwota
\r\n\t\t\t\t\t\t\t\t
Pozostało do zapłaty
\r\n\t\t\t\t\t\t\t\t
Pobierz
\r\n\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t{this.state.filteredItems\r\n\t\t\t\t\t\t\t\t\t.map((c,idx) =>\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
{c.number}
\r\n\t\t\t\t\t\t\t\t\t\t\t
{dateHelper.numberToDateFormat(c.dateSale)}
\r\n\t\t\t\t\t\t\t\t\t\t\t
{dateHelper.numberToDateFormat(c.dueDate)}
\r\n\t\t\t\t\t\t\t\t\t\t\t
{stringHelper.currencyFormat(c.valueTotalGross)}
\r\n\t\t\t\t\t\t\t\t\t\t\t
{(c.valueTotalGross !== undefined && c.valuePaid !== undefined) ? stringHelper.currencyFormat(c.valueTotalGross - c.valuePaid) : '---'}
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\t\tc.documentType && c.documentType !== DocumentTypeEnum.InterestNote && c.downloadAllowed === true &&\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tthis.props.userInfo?.selectedCustomerInfo?.customer?.eFaktura === true && \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t this.downloadInvoice(c.number)} className=\"cursor-pointer far fa-file\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t} \r\n\t\t\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\t\tc.documentType && c.documentType !== DocumentTypeEnum.InterestNote && \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t//c.downloadAllowed === true &&\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tthis.props.userInfo?.selectedCustomerInfo?.customer?.eFaktura !== true &&\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t this.applyForAcceptDownloadingInvoice()} className=\"cursor-pointer far fa-envelope-open\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t} \r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t{/*mobile version*/}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
Numer
Data wystawienia
\r\n\t\t\t\t\t\t\t\t
Termin płatności
Kwota
\r\n\t\t\t\t\t\t\t\t
Pozostało do zapłaty
Pobierz
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t{this.state.filteredItems\r\n\t\t\t\t\t\t\t\t\t.map((c, idx) =>\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
{c.number}
{dateHelper.numberToDateFormat(c.dateSale)}
\r\n\t\t\t\t\t\t\t\t\t\t\t
{dateHelper.numberToDateFormat(c.dueDate)}
{stringHelper.currencyFormat(c.valueTotalGross)}
\r\n\t\t\t\t\t\t\t\t\t\t\t
{(c.valueTotalGross !== undefined && c.valuePaid !== undefined) ? stringHelper.currencyFormat(c.valueTotalGross - c.valuePaid) : '---'}
\r\n\t\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\t\tc.documentType && c.documentType !== DocumentTypeEnum.InterestNote && \r\n\t\t\t\t\t\t\t\t\t\t\t\t\tc.downloadAllowed === true &&\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tthis.props.userInfo?.selectedCustomerInfo?.customer?.eFaktura === true && \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t this.downloadInvoice(c.number)} className=\"cursor-pointer far fa-file\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t} \r\n\t\t\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\t\tc.documentType && c.documentType !== DocumentTypeEnum.InterestNote && \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t//c.downloadAllowed === true &&\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tthis.props.userInfo?.selectedCustomerInfo?.customer?.eFaktura !== true &&\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t this.applyForAcceptDownloadingInvoice()} className=\"cursor-pointer far fa-envelope-open-o\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t} \r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\r\n\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t \r\n\t\t)\r\n\t}\r\n\t// Invoice = 1,\r\n\t// InterestNote = 2,\r\n\t// Correction = 3\r\n\t\r\n}\r\n\r\nexport default Invoices; \r\n","\r\nimport { fetchWrapper, urlHelper } from \"../helpers\";\r\nimport { IPaymentDto } from \"../models/generated\";\r\nimport { getConfiguration } from \"./config\";\r\n\r\nexport const paymentsService = {\r\n getPayments,\r\n getPaymentsByIds\r\n};\r\n\r\nasync function getPayments(customerId: number): Promise { \r\n const resp = await fetchWrapper.get(getConfiguration().apiUrl + `/payments/getPayments/${customerId}`);\r\n const res: IPaymentDto[] = resp;\r\n return res;\r\n}\r\n\r\nasync function getPaymentsByIds(ids: number[]): Promise { \r\n const resp = await fetchWrapper.get(getConfiguration().apiUrl + `/payments/getPaymentsByIds${urlHelper.parameterizeArray('ids', ids)}`);\r\n const res: IPaymentDto[] = resp;\r\n return res;\r\n}","import React from 'react';\r\nimport { Panel, PanelHeader, PanelBody } from '../components/panel/panel';\r\nimport { IUserInfoProps, UserContext } from '../config/user-context';\r\nimport CustomerSection from './components/customers-section';\r\nimport { IPaymentDto } from '../models/generated';\r\nimport { dateHelper, IProcessingModel } from '../helpers';\r\nimport { paymentsService } from '../services/payments.service';\r\nimport moment from 'moment';\r\nimport { stringHelper } from '../helpers/string';\r\n\r\ninterface IPaymentsState extends IProcessingModel {\r\n\ttoDate: number;\r\n\tfromDate: number;\r\n\t//selectedContractType: string;\r\n\tfilteredItems: IPaymentDto[];\r\n}\r\n\r\nclass Payments extends React.Component {\r\n\tstatic contextType = UserContext;\r\n\t\r\n\tconstructor(props: any){\r\n\t\tsuper(props); \r\n\t\tconst now = new Date();\r\n\t\tthis.state = {\r\n\t\t\t//selectedContractType: '',\r\n\t\t\tfilteredItems: [],\r\n\t\t\tfromDate: new Date(now).setMonth(now.getMonth() - 6),\r\n\t\t\ttoDate: now.getTime(),\t\t\t\r\n\t\t\t\r\n\t\t\tisProcessing: false,\r\n\t\t\terror: undefined,\r\n\t\t};\r\n\t}\r\n\r\n\tgetItems = async (customerId: number | undefined, force: boolean = false): Promise => {\r\n\t\treturn new Promise((resolve, reject) => {\r\n\r\n\t\t\tif (customerId !== undefined) { \r\n\t\t\t\tthis.setState({ error: undefined, isProcessing: true });\r\n\t\t\t\tpaymentsService.getPayments(customerId)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t// var ci = this.props.userInfo?.selectedCustomerInfo?.contractInfos ?? [];\r\n\t\t\t\t\t\t// var updatedCi = ci.map(x => {\r\n\t\t\t\t\t\t// \tx.payments = res.filter(newItem => newItem.contractId === x.contract.id);\r\n\t\t\t\t\t\t// \treturn x;\r\n\t\t\t\t\t\t// });\r\n\r\n\t\t\t\t\t\tthis.context.setPayments(customerId, res);\r\n\t\t\t\t\t\tthis.setState({ error: undefined, isProcessing: false, \r\n\t\t\t\t\t\t\tfilteredItems: this.getFilterItems(\r\n\t\t\t\t\t\t\t\t\tres,\r\n\t\t\t\t\t\t\t\t\t//this.state.selectedContractType, \r\n\t\t\t\t\t\t\t\t\tthis.state.fromDate, \r\n\t\t\t\t\t\t\t\t\tthis.state.toDate)\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tresolve(res);\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.catch((err) => {\r\n\t\t\t\t\t\tthis.setState({ error: err, isProcessing: false });\r\n\t\t\t\t\t\tconsole.error(err);\r\n\t\t\t\t\t\treject(err);\r\n\t\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tthis.setState({ error: undefined, isProcessing: false });\r\n\t\t\t\tresolve(undefined);\r\n\t\t\t}\t\r\n\t\t});\t\r\n }\r\n\r\n\tcomponentDidMount() {\r\n\t\tconsole.log('componentDidMount');\r\n\t\tif (this.props.userInfo?.selectedCustomerInfo?.customer?.id !== undefined\r\n\t\t\t//&& (this.props.userInfo?.selectedCustomerInfo.contractInfos === undefined\r\n\t\t\t//|| this.props.userInfo?.selectedCustomerInfo.contractInfos.length === 0)\r\n\t\t\t) {\r\n\t\t\t//this.getContracts(this.props.userInfo?.selectedCustomerInfo?.customer?.id)\r\n\t\t\t\t//.then((contracts) => {\r\n\t\t\t\t\tthis.getItems(this.props.userInfo?.selectedCustomerInfo?.customer?.id)//;\r\n\t\t\t\t//})\r\n\t\t\t\t.catch(err => {\r\n\t\t\t\t\tconsole.error(err);\r\n\t\t\t\t});\r\n\t\t\t\r\n\t\t}\r\n\t}\r\n\r\n\tcomponentDidUpdate(prevProps: IUserInfoProps) {\r\n\t\tif (prevProps?.userInfo?.selectedCustomerInfo?.customer.id !== this.props.userInfo?.selectedCustomerInfo?.customer.id) {\r\n\t\t\t//this.getContracts(this.props.userInfo?.selectedCustomerInfo?.customer?.id)\r\n\t\t\t\t//.then((contracts) => {\r\n\t\t\t\t\t//return \r\n\t\t\t\tthis.getItems(this.props.userInfo?.selectedCustomerInfo?.customer?.id)//;\r\n\t\t\t\t//})\r\n\t\t\t\t.then((documents) => {\r\n\t\t\t\t\tthis.setState({ \r\n\t\t\t\t\t\tfilteredItems: this.getFilterItems(\r\n\t\t\t\t\t\t\tthis.props.userInfo?.selectedCustomerInfo?.payments ?? [],\r\n\t\t\t\t\t\t\t//this.state.selectedContractType,\r\n\t\t\t\t\t\t\tthis.state.fromDate, this.state.toDate) \r\n\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(err => {\r\n\t\t\t\t\tconsole.error(err);\r\n\t\t\t\t});\r\n\t\t} else {\r\n\t\t\tif (prevProps.userInfo.selectedCustomerInfo?.wasPaymentsChanged !== this.props.userInfo.selectedCustomerInfo?.wasPaymentsChanged ) {\r\n\t\t\t\tthis.setState({ \r\n\t\t\t\t\tfilteredItems: \r\n\t\t\t\t\t\t (this.props.userInfo?.selectedCustomerInfo?.customer?.id !== undefined) ?\r\n\t\t\t\t\t\t\tthis.getFilterItems(\r\n\t\t\t\t\t\t\t\tthis.props.userInfo?.selectedCustomerInfo?.payments ?? [],\r\n\t\t\t\t\t\t\t\t\t//this.state.selectedContractType, \r\n\t\t\t\t\t\t\t\t\tthis.state.fromDate, this.state.toDate) : []\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tgetFilterItems(payments: IPaymentDto[], //selectContractType: string, \r\n\t\tfromDate: number, toDate: number): IPaymentDto[] {\r\n\t\treturn payments\r\n\t\t\t//.filter(ci => (selectContractType === '' || ci.contract.contractType === selectContractType))\r\n\t\t\t//.map(di => di.payments\r\n\t\t\t\t.filter(d => \r\n\t\t\t\t\td.date !== undefined \r\n\t\t\t\t\t&& moment(d.date).valueOf() >= fromDate \r\n\t\t\t\t\t&& moment(d.date).valueOf() <= toDate )\t\t\t\r\n\t\t\t.reduce((a, b) => a.concat(b), [] as IPaymentDto[]);\r\n\t}\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t \r\n\r\n\t// change = (event: any) => {\r\n\t// \tthis.setState({ selectedContractType: event.target.value ,\r\n\t// \t\tfilteredItems: this.getFilterItems(\r\n\t// \t\t\t//this.props.userInfo?.selectedCustomerInfo?.contractInfos ?? [],\r\n\t// \t\t\tevent.target.value, \r\n\t// \t\t\tthis.state.fromDate, \r\n\t// \t\t\tthis.state.toDate)\r\n\t// \t\t});\r\n\t// }\r\n\r\n\tfromDateChange = (e: any) => {\r\n\t\tthis.setState({ fromDate: new Date(e.target.value).valueOf() ,\r\n\t\t\tfilteredItems: this.getFilterItems(\r\n\t\t\t\tthis.props.userInfo?.selectedCustomerInfo?.payments ?? [],\r\n\t\t\t\t//this.state.selectedContractType, \r\n\t\t\t\tnew Date(e.target.value).valueOf(), this.state.toDate) \r\n\t\t\t});\r\n\t}\r\n\r\n\ttoDateChange = (e: any) => {\r\n\t\tthis.setState({ toDate: new Date(e.target.value).valueOf() ,\r\n\t\t\tfilteredItems: this.getFilterItems(\r\n\t\t\t\tthis.props.userInfo?.selectedCustomerInfo?.payments ?? [],\r\n\t\t\t\t//this.state.selectedContractType, \r\n\t\t\t\tthis.state.fromDate, new Date(e.target.value).valueOf()) \r\n\t\t\t}); \r\n\t}\r\n\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\tPłatności\r\n\t\t\t\t\t\r\n\t\t\t\t\t {/*combobox filter*/}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{/*
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t
*/}\r\n\t\t\t\t\t\t\t{/*from dateFilter*/}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{/*to dateFilter*/}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\t{/*desktop version*/}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
Data
\r\n\t\t\t\t\t\t\t\t
Kwota
\r\n\t\t\t\t\t\t\t\t
Zaksięgowano do
\r\n\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t{this.state.filteredItems\r\n\r\n\t\t\t\t\t\t\t\t\t.map((c,idx) =>\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
{dateHelper.numberToDateFormat(c.date)}
\r\n\t\t\t\t\t\t\t\t\t\t\t
{stringHelper.currencyFormat(c.amount)}
\r\n\t\t\t\t\t\t\t\t\t\t\t
{c.descripton}
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t{/*mobile version*/}\r\n\t\t\t\t\t\t{/*
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
Data
\r\n\t\t\t\t\t\t\t\t
Numer umowy
Adres
\r\n\t\t\t\t\t\t\t\t
Odłącz
\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t{this.state.filterContractInfos\r\n\r\n\t\t\t\t\t\t\t\t\t.map((c, idx) =>\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
{c.contract?.contractDate}
{c.contract?.contractType}
\r\n\t\t\t\t\t\t\t\t\t\t\t
{c.contract?.contractNumber}
{c.addressService}
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
*/}\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t)\r\n\t}\r\n}\r\n\r\nexport default Payments; ","import React from 'react';\r\nimport { ContractTypeEnum, IContractWithDetailsDto } from '../../models/generated';\r\n\r\n\r\ninterface IContractDetailsProps {\r\n\tcontractDetails: IContractWithDetailsDto;\r\n}\r\n\r\nclass ContractDetails extends React.Component, {}> {\r\n\t\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t{(this.props.contractDetails.contract?.contractType === ContractTypeEnum.Water ?\r\n\t\t\t\t
\r\n\t\t\t\t\t{/* className=\"d-none d-lg-block\" > */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
Numer licznika
\r\n\t\t\t\t\t\t
Licznik główny
\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{this.props.contractDetails.meters !== undefined && \r\n\t\t\t\t\t\t\tthis.props.contractDetails.meters\r\n\t\t\t\t\t\t\t.map((c,idx) =>\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
{c.number}
\r\n\t\t\t\t\t\t\t\t\t
{c.master ? : <>}
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t:\r\n\t\t\t\t
\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.props.contractDetails.bankAccount &&\r\n\t\t\t\t\t\t Rachunek bankowy: {this.props.contractDetails.bankAccount} \n\t\t\t\t\t}\r\n\t\t\t\t\t{/* className=\"d-none d-lg-block\" > */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
Nazwa
\r\n\t\t\t\t\t\t
Rodzaj
\r\n\t\t\t\t\t\t
Ilość
\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{this.props.contractDetails.containers !== undefined && \r\n\t\t\t\t\t\t\tthis.props.contractDetails.containers\r\n\t\t\t\t\t\t\t.map((c,idx) =>\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
{c.name}
\r\n\t\t\t\t\t\t\t\t\t
{c.kind}
\r\n\t\t\t\t\t\t\t\t\t
{c.number}
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t)\r\n\t}\r\n} \r\n\r\nexport default ContractDetails;\r\n","import { Panel, PanelHeader, PanelBody } from '../components/panel/panel';\r\nimport moment from 'moment';\r\nimport { ContractTypeEnum, IContractWithDetailsDto } from '../models/generated';\r\nimport CustomerSection from './components/customers-section';\r\nimport { IUserInfoProps, UserContext } from '../config/user-context';\r\nimport CustomerCard from './components/customer-card';\r\nimport { IProcessingModel } from '../helpers';\r\nimport { contractsService } from '../services/contracts.service';\r\nimport { alertService } from '../services/alert.service';\r\nimport { ContractRelatedComponentBase } from './contract-related-base';\r\nimport ContractDetails from './components/contract-details';\r\nimport { addressHelper } from '../helpers/address';\r\nimport SweetAlert from 'react-bootstrap-sweetalert';\r\n\r\ninterface IContractsState extends IProcessingModel {\r\n\tisSynch: boolean\r\n\tselectedContractType: string;\r\n\tfilteredItems: IContractWithDetailsDto[];\r\n\tselectedRow: number | undefined;\r\n\r\n\tshowDeattacheConfirmation: boolean,\r\n\tdeattachingContractId: number | undefined\r\n}\r\n\r\nclass Contracts extends ContractRelatedComponentBase {\r\n\tstatic contextType = UserContext;\r\n\t\r\n\tconstructor(props: any){\r\n\t\tsuper(props); \r\n\t\tthis.state = {\r\n\t\t\tselectedContractType: '',\r\n\t\t\tfilteredItems: [],\r\n\r\n\t\t\tisProcessing: false,\r\n\t\t\terror: undefined,\r\n\t\t\tselectedRow: undefined,\r\n\r\n\t\t\tisSynch: false,\r\n\r\n\t\t\tshowDeattacheConfirmation: false,\r\n\t\t\tdeattachingContractId: undefined\r\n\t\t};\r\n\t}\r\n\r\n\tcomponentDidMount() {\r\n\t\tconsole.log('componentDidMount');\r\n\t\tif (this.props.userInfo?.selectedCustomerInfo?.customer?.id !== undefined\r\n\t\t ) {\r\n\t\t\tthis.getContractsWithDetails(this.props.userInfo?.selectedCustomerInfo?.customer?.id)\r\n\t\t\t.then((contracts) => {\r\n\t\t\t\tthis.setState({ \r\n\t\t\t\t\tfilteredItems: this.getFilterItems(this.state.selectedContractType) });\r\n\t\t\t})\r\n\t\t\t.catch(err => {\r\n\t\t\t\tconsole.error(err);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tcomponentDidUpdate(prevProps: IUserInfoProps) {\r\n\t\tif (prevProps?.userInfo?.selectedCustomerInfo?.customer.id !== this.props.userInfo?.selectedCustomerInfo?.customer.id) {\r\n\t\t\tthis.getContractsWithDetails(this.props.userInfo?.selectedCustomerInfo?.customer?.id)\r\n\t\t\t.then((contracts) => {\r\n\t\t\t\tthis.setState({ \r\n\t\t\t\t\tfilteredItems: this.getFilterItems(this.state.selectedContractType) });\r\n\t\t\t})\r\n\t\t\t.catch(err => {\r\n\t\t\t\tconsole.error(err);\r\n\t\t\t});\r\n\t\t} else {\r\n\t\t\t\tif (prevProps.userInfo.selectedCustomerInfo?.wasContractsChanged !== this.props.userInfo.selectedCustomerInfo?.wasContractsChanged ) {\r\n\t\t\t\t\tthis.setState({ \r\n\t\t\t\t\t\tfilteredItems: \r\n\t\t\t\t\t\t \t(this.props.userInfo?.selectedCustomerInfo?.customer?.id !== undefined) ?\r\n\t\t\t\t\t\t\t\tthis.getFilterItems(this.state.selectedContractType) : []\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tgetFilterItems(selectContractType: string\r\n\t): IContractWithDetailsDto[] {\r\n\t\tvar contractInfos = this.props.userInfo?.selectedCustomerInfo?.contractInfos ?? [];\r\n\t\tvar contractsWithDetails = contractInfos.map(x => x.contractWithDetails);\r\n\t\tvar result = contractsWithDetails.filter(x => (selectContractType === '' || x.contract?.contractType === selectContractType)\r\n\t\t\t\t);\r\n\t\treturn result;\r\n\t}\r\n\r\n\tchange = (event: any) => {\r\n\t\tthis.setState({ selectedContractType: event.target.value, \r\n\t\t\tfilteredItems: this.getFilterItems(event.target.value)\r\n\t\t});\r\n\t}\r\n\r\n\tdeattache = (evt: any, id: number): void => {\r\n\t\tevt.preventDefault();\r\n\t\tevt.stopPropagation();\r\n\t\tthis.setState(prev => ({ ...prev, showDeattacheConfirmation: true, deattachingContractId: id }))\r\n\t} \r\n\r\n\tdeattacheConfirmed = (evt: any) : void => {\r\n\t\tconsole.log('deattacheConfirmed');\r\n\r\n\t\tvar id = this.state.deattachingContractId;\r\n\r\n\t\tif (id !== undefined) {\r\n\t\t\tthis.setState({ error: undefined, isProcessing: true });\r\n\t\t\tcontractsService.deactivateContract(id)\r\n\t\t\t\t.then(x => {\r\n\t\t\t\t\talertService.info('Odłączenie umowy', `Umowa ${x.contractNumber} została odłączona`, { autoClose: true });\r\n\r\n\t\t\t\t\tvar newList = this.props.userInfo?.selectedCustomerInfo?.contractInfos\r\n\t\t\t\t\t\t.filter(x => x.contractWithDetails.contract?.id !== id)\r\n\t\t\t\t\t\t.map(x => x.contractWithDetails);\r\n\r\n\t\t\t\t\tthis.context.setContracts(this.props.userInfo?.selectedCustomerInfo?.customer?.id, newList);\t\t\t\t\r\n\t\t\t\t\tthis.setState({ error: undefined, isProcessing: false, showDeattacheConfirmation: false, deattachingContractId: undefined });\t\r\n\t\t\t\t})\r\n\t\t\t\t.catch(err => {\r\n\t\t\t\t\talertService.error('Odłączenie umowy', `Odłączenie umowy nie powiodło się.`, { autoClose: true });\r\n\t\t\t\t\tthis.setState({ error: err, isProcessing: false, showDeattacheConfirmation: false, deattachingContractId: undefined });\t\r\n\t\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tdeattacheCanceled = () => {\r\n\t\tthis.setState(prev => ({ ...prev, showDeattacheConfirmation: false, deattachingContractId: undefined }))\r\n\t}\r\n\r\n\tselectRow = (id: number): void => {\r\n\t\tif (this.state.selectedRow === id) {\r\n\t\t\tthis.setState({ selectedRow: undefined });\r\n\t\t} else {\r\n\t\t\tthis.setState({ selectedRow: id });\r\n\t\t}\r\n\t\tconsole.log('selectRow');\r\n\t} \r\n\r\n\topenAddCustomer = () => {\r\n\t\tthis.context.openAddCustomerModalDialog();\r\n\t};\r\n\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t
\n\r\n\t\t\t\t\r\n\t\t\t\t\t
Umowy\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{this.props.userInfo.isLoggedIn && this.props.userInfo.selectedCustomerInfo?.customer &&\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tNumer rachunku bankowego do opłat jest widoczny na fakturze.\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t this.deattacheConfirmed(evt)}\r\n\t\t\t\t\t\t\tonCancel={() => this.deattacheCanceled()}\r\n\t\t\t\t\t\t\tdependencies={[ this.state.deattachingContractId ]}\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tshowCancel={true}\r\n\t\t\t\t\t\t\tfocusCancelBtn={true}\r\n\t\t\t\t\t\t\tconfirmBtnBsStyle=\"danger\"\r\n\t\t\t\t\t\t\tcancelBtnBsStyle=\"primary\"\r\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tUmowa zostanie usunięta z Twojego konta i utracisz do niej dostęp w EBOK.
\r\n\t\t\t\t\t\t\tCzy na pewno chcesz odłączyć tą umowę?\r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t{/*combobox filter*/}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\t{/*desktop version*/}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
Data rozpoczęcia
\r\n\t\t\t\t\t\t\t\t
Typ umowy
\r\n\t\t\t\t\t\t\t\t{/* contractNumber */}\r\n\t\t\t\t\t\t\t\t
Numer umowy
\r\n\t\t\t\t\t\t\t\t
Adres
\r\n\t\t\t\t\t\t\t\t
Odłącz
\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t{this.state.filteredItems\r\n\t\t\t\t\t\t\t\t\t.filter(x => x.contract?.id !== undefined)\r\n\t\t\t\t\t\t\t\t\t.map((c, idx) => \r\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
this.selectRow(c.contract!.id!)} className=\"row \">\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{moment(c.contract!.contractDate).format('YYYY-MM-DD')}\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t
{c.contract!.contractType === ContractTypeEnum.Water ? : }
\r\n\t\t\t\t\t\t\t\t\t\t\t\t
{c.contract!.contractNumber}
\r\n\t\t\t\t\t\t\t\t\t\t\t\t
{addressHelper.format(c.contract!)}
\r\n\t\t\t\t\t\t\t\t\t\t\t\t
{ this.deattache(evt, c.contract!.id!); return false; }} className=\"cursor-pointer far fa-eye-slash\">
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\t\tthis.state.selectedRow && this.state.selectedRow === c.contract!.id &&\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t{/*mobile version*/}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
Data rozpoczęcia
Typ umowy
\r\n\t\t\t\t\t\t\t\t
Numer umowy
Adres
\r\n\t\t\t\t\t\t\t\t
Odłącz
\r\n\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t{this.state.filteredItems\r\n\t\t\t\t\t\t\t\t\t.filter(x => x.contract?.id !== undefined)\r\n\t\t\t\t\t\t\t\t\t.map((c, idx) =>\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
this.selectRow(c.contract!.id!)} className=\"row \">\r\n\t\t\t\t\t\t\t\t\t\t\t
{moment(c.contract!.contractDate).format('YYYY-MM-DD')}
{c.contract!.contractType === ContractTypeEnum.Water ? : }
\r\n\t\t\t\t\t\t\t\t\t\t\t
{c.contract!.contractNumber}
{addressHelper.format(c.contract!)}
\r\n\t\t\t\t\t\t\t\t\t\t\t
{ this.deattache(evt, c.contract!.id!); return false; }} className=\"cursor-pointer far fa-eye-slash\">
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tthis.state.selectedRow && this.state.selectedRow === c.contract!.id && \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t)\r\n\t}\r\n} \r\n\r\nexport default Contracts;\r\n","import { fetchWrapper } from \"../helpers\";\r\nimport { IFormSubjectDto, IFormTemplateDto } from \"../models/generated\";\r\nimport { getConfiguration } from \"./config\";\r\n\r\nexport const applicationsAndComplainsService = {\r\n getFormSubjects,\r\n getFormTemplates,\r\n sendApplicationAndComplainForm\r\n};\r\n\r\nasync function getFormSubjects(): Promise { \r\n const resp = await fetchWrapper.get(getConfiguration().apiUrl + '/applicationsAndComplains/getFormSubjects');\r\n const res: IFormSubjectDto[] = await resp;\r\n return res;\r\n}\r\n\r\nasync function getFormTemplates(formSubjectId: number): Promise { \r\n const resp = await fetchWrapper.get(getConfiguration().apiUrl + `/applicationsAndComplains/getFormTemplates/${formSubjectId}`);\r\n const res: IFormTemplateDto[] = await resp;\r\n return res;\r\n}\r\n\r\nasync function sendApplicationAndComplainForm(formSubjectId: number, values: FormData, customerId?: number): Promise { \r\n const customerIdUri = (customerId) ? `/${customerId}` : ``;\r\n const resp = await fetchWrapper.postFiles(getConfiguration().apiUrl + `/applicationsAndComplains/submitForm/${formSubjectId}${customerIdUri}`, values);\r\n return resp.ok;\r\n}","import React, { FormEvent } from 'react';\r\nimport { Panel, PanelHeader, PanelBody } from '../components/panel/panel';\r\nimport { IUserInfoProps } from '../config/user-context';\r\nimport { withParams } from '../helpers';\r\nimport { FieldTypeEnum, IFormSubjectDto, IFormTemplateDto } from \"../models/generated\"\r\nimport { applicationsAndComplainsService } from '../services/applications-and-complains.service';\r\nimport CustomerSection from './components/customers-section';\r\n\r\ninterface IFormTemplateDtoWithValue extends IFormTemplateDto {\r\n\tvalue?: any;\r\n}\r\ninterface IApplicationsAndComplainsState {\r\n\tformSubjects: {\r\n\t\tisLoading: boolean;\r\n\t\tvalues: IFormSubjectDto[];\r\n\t\terror?: any;\t\t\t\r\n\t},\r\n\tselectedFormSubjectId: string,\r\n\tformTemplates: {\r\n\t\tisLoading: boolean;\r\n\t\tvalues: IFormTemplateDtoWithValue[];\r\n\t\terror?: any;\r\n\t}\r\n\tisSending: boolean;\r\n\tsendingError?: any;\r\n\tformWasSend: boolean;\r\n}\r\n\r\nconst defaultState: IApplicationsAndComplainsState = { \r\n\tformSubjects: {\r\n\t\tisLoading: false,\r\n\t\tvalues: [],\r\n\t\terror: undefined\r\n\t},\r\n\tselectedFormSubjectId: \"\",\r\n\tformTemplates: {\r\n\t\tisLoading: false,\r\n\t\tvalues: [],\r\n\t\terror: undefined\r\n\t},\r\n\tformWasSend: false,\r\n\tisSending: false,\r\n\tsendingError: undefined \r\n}\r\n\r\ntype FormIdParams = {\r\n\tformId: string;\r\n};\r\n\r\ninterface IApplicationsAndComplainsProps extends IUserInfoProps {\r\n\tparams: FormIdParams;\r\n}\r\nclass ApplicationsAndComplains extends React.Component {\r\n\tconstructor(props: any) {\r\n\t\tsuper(props);\r\n\t\tthis.state = defaultState;\t\t\r\n\t}\r\n\r\n\thandleAfterSending = (ev: any) => {\r\n\t\tthis.setState(state => ({...defaultState, formSubjects: state.formSubjects}));\r\n\t}\r\n\r\n\thandleSubjectOnChange = (ev: any) => {\r\n\t\tev.persist();\t\t\r\n\t\tthis.loadFormTemplates(ev?.target?.value)\r\n\t}\r\n\r\n\tloadFormTemplates = (formId: any) => {\r\n\t\tthis.setState(preState => ({...preState, selectedFormSubjectId: formId, \r\n\t\t\tformTemplates: { isLoading: (formId !== undefined ), error: undefined, values: []} \r\n\t\t}));\r\n\t\t\r\n\t\tif (formId !== undefined && formId !== \"\")\r\n\t\t{\r\n\t\t\tvar numberFormId = parseInt(formId, 10);\r\n\t\t\tif (!isNaN(numberFormId)) {\r\n\t\t\t\tapplicationsAndComplainsService.getFormTemplates(numberFormId)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tthis.setState(preState => ({...preState, formTemplates: { values: res, error: undefined, isLoading: false }}));\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.catch((err) => this.setState(preState => ({...preState, formTemplates: { values: [], error: err, isLoading: false }})))\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\thandleSubmit = (event: FormEvent) => {\r\n\t\tthis.setState(preState => ({...preState, isSending: true, sendingError: undefined }));\r\n\t\tvar formData = new FormData();\r\n\t\t\r\n\t\tthis.state.formTemplates.values.forEach(x => {\r\n\t\t\t\tformData.append(`id_${x.id}`, x?.id?.toString() || '');\r\n\t\t\t\tformData.append(`title_${x.id}`, x?.title?.toString() || '');\r\n\t\t\t\tformData.append(`fieldType_${x.id}`, x?.fieldType?.toString() || '');\r\n\t\t\t\tif (x.fieldType === FieldTypeEnum.File) {\r\n\t\t\t\t\tvar form = event.target as HTMLFormElement;\r\n\t\t\t\t\tvar fileInput = Array.from(form.elements).find(e => e.id === `id${x.id}`) as HTMLInputElement;\r\n\t\t\t\t\tvar file = (fileInput?.files !== null && fileInput.files.length > 0) ? fileInput.files[0] : undefined;\r\n\t\t\t\t\tformData.append(`value_${x.id}`, file || '');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tformData.append(`value_${x.id}`, x?.value?.toString() || '');\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\tapplicationsAndComplainsService.sendApplicationAndComplainForm(parseInt(this.state.selectedFormSubjectId), formData, this.props.userInfo?.selectedCustomerInfo?.customer?.id)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tthis.setState(prev => ({...prev, isSending: false, formWasSend: true}));\r\n\t\t\t\t})\r\n\t\t\t\t.catch((err) => {\r\n\t\t\t\t\tthis.setState(preState => ({...preState, isSending: false, sendingError: err }))\r\n\t\t\t\t});\r\n\t\t\r\n\t\tevent.preventDefault();\r\n\t}\r\n\t\r\n\thandleClear = (event: React.MouseEvent) => {\r\n\t\tthis.setState(defaultState);\r\n\t\tevent.preventDefault();\r\n\t}\r\n\r\n\tcomponentDidMount() {\r\n\t\tthis.refreshFormSubjects();\r\n\t\r\n\t}\r\n\r\n\trefreshFormSubjects() {\r\n\t\tthis.setState(preState => ({...preState, formSubjects: { error: undefined, isLoading: true, values: [] }}));\r\n\t\tapplicationsAndComplainsService.getFormSubjects()\r\n\t\t\t.then((res) => {\r\n\t\t\t\tthis.setState(preState => ({...preState, formSubjects: { values: res, error: undefined, isLoading: false }}));\r\n\t\t\t\tif (this.props.params?.formId) {\r\n\t\t\t\t\tthis.loadFormTemplates(this.props.params?.formId);\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((err) => this.setState(preState => ({...preState, formSubjects: { values: [], error: err, isLoading: false }})))\r\n\t}\r\n\r\n\tformatAccount(str : any): string {\r\n\t\tif (!str) {\r\n\t\t\treturn '';\r\n\t\t}\r\n\r\n\t\tvar v = str.replace(/[^\\dA-Z]/g, '').split('');\r\n\r\n\t\tif (v.length<3)\r\n\t\t{\r\n\t\t\treturn v.join('');\r\n\t\t}\r\n\r\n\t\tvar reg = /.{4}/g;\r\n\t\tstr = v.slice(0,2).join('') + \" \" + v.slice(2).join('').replace(reg, (a : string) => a + \" \");\r\n\t\t\r\n\t\treturn str.trim();\r\n\t}\r\n\r\n\tsetValueInArray = (values: IFormTemplateDtoWithValue[], i: number, v: any): IFormTemplateDtoWithValue[] => {\r\n\t\tvar res: IFormTemplateDtoWithValue[] = [];\r\n\t\tvalues.forEach(x => {\r\n\t\t\tres.push({...x})\r\n\t\t})\r\n\r\n\t\t//set value to false for each radio buttons from the same group \r\n\t\tif (res[i].fieldType === FieldTypeEnum.RadioButton) {\r\n\t\t\tres.forEach(x => {\r\n\t\t\t\tif (x.fieldType === FieldTypeEnum.RadioButton \r\n\t\t\t\t\t&& x.name === res[i].name /* are in the same group */) {\r\n\t\t\t\t\tx.value = false;\r\n\t\t\t\t}\t\r\n\t\t\t});\r\n\t\t} \r\n\t\t\r\n\t\tres[i].value = v;\t\t\r\n\t\t\r\n\t\treturn res;\r\n\t}\r\n\r\n\trender() {\r\n\t\tvar renderField = (value: IFormTemplateDtoWithValue, changeState: (v: any) => void) => {\r\n\t\t\t\r\n\t\t\tswitch (value.fieldType) {\r\n\t\t\t\tcase FieldTypeEnum.RemarkHeader:\r\n\t\t\t\t\treturn ()\t\r\n\t\t\t\tcase FieldTypeEnum.Remark:\t\r\n\t\t\t\t\treturn ()\t\t\r\n\t\t\t\tcase FieldTypeEnum.CheckBox:\r\n\t\t\t\t\tvalue.value = value.value ?? false;\r\n\t\t\t\t\treturn (<>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t { \r\n\t\t\t\t\t\t\t\t\t\t//value.value = e.target?.checked; \r\n\t\t\t\t\t\t\t\t\t\tchangeState(e.target?.checked)\r\n\t\t\t\t\t\t\t\t\t\tconsole.log(e.target?.checked); }}\r\n\t\t\t\t\t\t\t\t\trequired={value.isRequired} \t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\r\n\t\t\t\tcase FieldTypeEnum.TextArea:\r\n\t\t\t\t\treturn (<>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t