{"version":3,"sources":["Core/Theme/theme.js","Containers/Index/styles.js","Components/Input/styles.js","Components/Input/PlnInput.js","Components/Input/PlnCheckbox.js","Components/Input/PlnDropdown.js","Components/Input/PlnInputCard.js","Components/Input/PlnError.js","Containers/RegistroGestores/styles.js","Core/Api/gestorApi.js","Core/Api/padronApi.js","Core/Api/mailApi.js","Core/Utils/RegExpUtils.js","Core/Api/periodoApi.js","Containers/RegistroGestores/RegistroGestores.js","Containers/Login/styles.js","Core/Api/accountApi.js","Storage/Storage.js","Storage/ConfigPage.js","Containers/Login/Login.js","Containers/Login/ForgotPassword.js","Containers/MainPage/styles.js","Containers/MainPage/MainPage.js","Containers/Layout/makeStyles.js","Containers/Copyright/Copyright.js","Containers/Dashboard/Cards.js","Components/Loading/Loading.js","Core/Utils/Utils.js","Containers/MacroList/MacroList.js","Core/Api/delegadosNoRepresentadosApi.js","Core/Api/comprobanteApi.js","Core/Consts/Consts.js","Components/Filters/RegistrosElectFilter.js","Components/PLNDialog/PLNDialog.js","Core/Utils/Comprobante.js","Core/Utils/Logo.js","Containers/CantonesNoRepresentados/CantonesNoRepresentados.js","Containers/CantonesNoRepresentados/styles.js","Components/ModalHojaInfo/styles.js","Components/ModalHojaInfo/ModalHojaInfo.js","Components/ListSearch/styles.js","Core/Api/papeletaApi.js","Components/ListSearch/ListSearch.js","Core/Api/locationApi.js","Core/Api/prevencionApi.js","Core/Api/balanceGlobalApi.js","Core/Utils/Prevencion.js","Core/Api/papeletaDelegadoCantonal.js","Containers/CantonesNoRepresentados/AddCantonesNoRepresentados.js","Containers/CantonesNoRepresentados/EditCantonesNoRepresentados.js","Containers/RegistroDepositos/data.js","Core/Api/depositosApi.js","Containers/RegistroDepositos/RegistroDepositos.js","Containers/RegistroDepositos/styles.js","Containers/RegistroDepositos/AddDeposito.js","Containers/RegistroDepositos/EditDeposito.js","Containers/ConsultaDebitos/data.js","Core/Api/debitosApi.js","Containers/ConsultaDebitos/ConsultaDebitos.js","Containers/Formulario/styles.js","Containers/Formulario/FRMCantonesNoRepresentados.js","Containers/Formulario/FRMComiteEjecutivoCantonal.js","Containers/Formulario/FRMHojaInformacion.js","Containers/ConsultasPublicas/styles.js","Containers/ConsultasPublicas/CPPapeletasCantonesNoRepresentados.js","Core/Api/papeletaComiteEjecutivoCantonal.js","Containers/ConsultasPublicas/CPPapeletasComiteEjecutivoCantonal.js","Containers/AdjudicacionPuestos/styles.js","Core/Api/adjudicacionPuestos.js","Containers/AdjudicacionPuestos/APCantonesNoRepresentados.js","Routes/routes.js","Containers/Dashboard/Dashboard.js","Containers/Header/NestedMenuItem.tsx","Containers/Header/styles.js","Containers/Header/Header.js","Containers/Logout/styles.js","Containers/Logout/Logout.js","Containers/Dashboard/MenuItems.js","Core/Context/AppContext.js","Containers/Layout/AppBarCustom/AppBarCustom.js","Routes/CustomRoute.js","Middleware/AuthMiddleware.js","Containers/Layout/Layout.js","Core/Context/AppProvider.js","App.js","serviceWorker.js","index.js"],"names":["colors","breakpoints","MOBILE","SM","MD","LG","XL","theme","createMuiTheme","palette","primary","main","secondary","typography","useNextVariants","fontFamily","overrides","MuiContainer","root","width","display","boxSizing","marginLeft","marginRight","paddingLeft","paddingRight","MuiAppBar","colorPrimary","backgroundColor","boxShadow","MuiExpansionPanelSummary","color","MuiExpansionPanelDetails","background","MuiTextField","margin","border","height","paddingTop","paddingBottom","MuiInputLabel","fontSize","transform","MuiLink","MuiInputBase","input","transition","MuiInput","underline","borderBottom","MuiButton","containedPrimary","containedSecondary","MuiButtonGroup","contained","groupedContainedHorizontal","borderRadius","borderLeft","borderColor","borderTop","borderRight","MuiListItem","styles","container","sectionDesktop","up","sectionMobile","imgLogo","maxWidth","padding","down","bp","socialLinks","marginTop","float","listStyle","loginAccess","inputLabel","borderWidth","borderStyle","password","letterSpacing","inputMultiline","inputError","marginBottom","error","textTransform","required","content","checkboxContainer","position","cursor","alignItems","checkbox","justifyContent","left","order","right","checkboxIcon","ccContainer","ccField","flexGrow","cc","ccImg","maxHeight","dropdownContainer","dropdownControl","dropdownArrow","dropdown","dropdownError","PlnInput","withStyles","style","props","classes","label","type","disabled","field","form","touched","errors","isRequired","mask","placeholder","t","useTranslation","htmlFor","name","className","clsx","multiLine","maskChar","value","onChange","onBlur","defaultProps","PlnCheckbox","id","labelChecked","checked","useState","isChecked","setIsChecked","useEffect","e","shortId","generate","PlnDropdown","data","FormControl","variant","Select","IconComponent","target","reduce","list","itm","itemLabel","push","MenuItem","key","onUpdate","creditCardType","setCreditCardType","setMask","length","types","ccType","cctype","alt","src","amex","visa","mastercard","discover","monoDefault","renderCCImage","PlnError","children","data-type","propTypes","PropTypes","oneOfType","arrayOf","node","textAlign","textWeight","subtitle","boxForm","formError","axios","defaults","baseURL","process","getTotalPapeletas","cedula","url","get","join","saveGestor","params","gestorInfo","typeApp","gestor","gestorData","user","userData","telefonos","telefonosData","direcciones","direccionesData","emails","emailsData","post","searchByCedula","REGEX_UTILS","email","phone","digits","nickname","getIGESAvailable","a","getCRUDAvailable","getLoginGESAvailable","useIGESAvailable","useQuery","useCRUDAvailable","Transition","React","forwardRef","tProps","ref","Slide","direction","isRegistroGESAvailable","registroGESAvailable","Lodash","doc","jsPDF","showForm","setShowForm","termConditions","setTermConditions","des_apell1","des_apell2","des_nombre","des_nombre_p","des_nombre_c","des_nombre_d","des_nombre_ad","tel_casa","tel_celu","tel_ofi","des_email","des_email2","des_direccion","des_direccion_trabajo","setGestorData","frmInitValues","telCasa","telCelu","telOfi","dirDomicilio","dirTrabajo","email1","email2","reemail1","passUser","iCedula","setICedula","iValues2","setIValues2","msjErrorCedula","setMsjErrorCedula","msjUserRegistered","setMsjUserRegistered","initialValues","initialValues2","validationSchema","Yup","centeredText","text","y","textWidth","getStringUnitWidth","internal","getFontSize","scaleFactor","textOffset","pageSize","msjDialog","setMsjDialog","open","setOpenDialog","finalDialog","setFinalDialog","handleClose","closeFinalDialog","generateLetter","gestorName","gestorCedula","gestorCorreo","currentDate","Date","toLocaleDateString","year","month","day","timeZone","setFontSize","setFont","paragraph","lines","splitTextToSize","autoTable","overflow","columnWidth","font","columnStyles","0","headerStyles","fillColor","textColor","halign","showHeader","top","addPage","save","sendMailNotification","dataForEmail","then","r","console","log","addGestor","values","isRegistroGESAvailable2","registroGESAvailable2","num_cedula","cod_prov","cod_cant","cod_dist_sede","cod_dist_adm","num_jvirt","num_edad","fec_caduc","sexo","tel_res","tel_cel_n","num_fax","num_fax_ofi","des_nombre_centro","result","response","gestorDataMail","full_name","Fragment","validate","REGEX","test","enableReinitialize","onSubmit","setSubmitting","findGestor","isSubmitting","Container","Grid","spacing","item","xs","justify","component","Alert","severity","Button","Divider","CircularProgress","spinner","TextField","fullWidth","InputProps","readOnly","overflowY","Dialog","TransitionComponent","keepMounted","onClose","aria-labelledby","aria-describedby","DialogTitle","DialogContent","DialogContentText","DialogActions","onClick","loginBox","accountBox","title","labelText","linkText","submitButton","inverseButton","forgotPwdLink","fontWeight","textDecoration","backToLogin","StorageSymbol","Symbol","StorageSymbolEnforce","Storage","enforcer","Error","_token","localStorage","setItem","getItem","_flag","this","isTokenExpired","removeItem","ConfigPageSymbol","ConfigPageSymbolEnforce","ConfigPage","JSON","stringify","config","parse","submitError","setSubmitError","submitErrorMsg","setSubmitErrorMsg","setIsSubmitting","storageInstance","instance","storagePageInstance","publicIp","v4","ip","profileData","pwd","ipAddress","login","res","responseToken","token","setToken","setStorage","showFooter","window","location","href","formik","useFormik","handleChange","lname","submitSuccess","setSubmitSuccess","submitSuccessMsg","setSubmitSuccessMsg","forgotPwd","isPwdUpdated","useremail","setFieldValue","resetPassword","pageBox","paper","useStyles","makeStyles","toolbar","toolbarIcon","mixins","appBar","zIndex","drawer","transitions","create","easing","sharp","duration","leavingScreen","appBarShift","enteringScreen","menuButton","menuButtonHidden","drawerPaper","whiteSpace","drawerPaperClose","overflowX","appBarSpacer","flexDirection","fixedHeight","cardIcon","customChip","Copyright","Typography","align","getFullYear","depositContext","flex","Cards","tokenStorage","decodedToken","useJwt","getToken","totales","setTotales","allTotales","dataTotales","fetchTotalesAPI","gutterBottom","Paper","wrap","provinciales","Avatar","Loading","formatData","_total","toString","replace","getEstadoPapeleta","codStatus","estado","find","description","formatDate","date","dateParts","split","divider","MacroList","listName","btnConfig","tableHeads","tableBody","tableFooter","uiStylesClasses","actionConfig","filters","dataEmpty","showTotals","sumTotalsColumns","displayCopyright","isCrudAvailable","renderHeaders","template","x","TableCell","TableHead","TableRow","renderTableCells","_items","itemProps","Object","getOwnPropertyNames","renderItemActions","_currentRow","options","cr","map","option","showOpt","Tooltip","aria","IconButton","aria-label","size","clickHandler","icon","actionContainer","renderTableData","row","TableBody","renderTableTotals","totalMonto","parseFloat","montoDeposito","renderRegisters","renderSumTotalsColumns","btnAdd","event","Table","renderTable","seeMore","Box","pt","axiosInstance","responseType","_ced","info","codPapeleta","cedulaGestor","consecutivo","consts","distritalesInitValues","provincia","canton","distrito","papeleta","delegado1","delegado2","delegado3","delegado4","delegado5","delegado6","delegado7","delegado8","delegado9","presidente","vicePresidente","secretario","subSecretario","tesoreria","subTesoreria","propietario","cantonalesInitValues","movimiento","cantonal1","cantonal2","cantonal3","cantonal4","cantonal5","cantonal6","cantonal7","provincialesInitValues","provincial1","provincial2","provincial3","provincial4","nacionalesInitValues","puesto","nacional1","nacional2","nacional3","presidenteSectorInitValues","sectorialesInitValues","sector","sectorial1","sectorial2","sectorial3","initListDelegados","lugar","numPuesto","fieldName","nombre","edad","enabled","filled","initListComite","initListCandidatosFiscalia","initListComiteCantonal","initlistComiteProvincial","initListComiteNacional","initListComiteSectorial","initListAddDeposito","initlistPresiSector","initlistPapeletaSector","delegadosMOrder","delegadosFOrder","comiteMOrder","comiteFOrder","comiteCantonalMOrder","comiteCantonalFOrder","comiteProvincialMOrder","comiteProvincialFOrder","comiteNacionalMOrder","comiteNacionalFOrder","presiSectorMOrder","presiSectorFOrder","comiteSectorFOrder","comiteSectorMOrder","estadosDistritales","codigo","movimientosCantonales","movimientosSectoriales","puestosMesa","descripcion","puestosFiscalesMesa","puestosFiscalGeneral","puestosNacionales","puestosRegistrosElectorales","puestosDelegadosDistritales","puestosComiteCantonal","delegadosCantonalesInitValues","initListCandidatosFiscaliaEC","initListDelegadosComiteEjecutivo","comiteEjecutivoCantonalInitValues","fiscal","puestosComiteEjecutivoCantonal","filterInput","grid","RegistrosFilter","currentFilter","responsiveSize","sm","inputId","action","global","removeBtn","submitBtn","simpleBtn","PLNDialog","bodymessage","buttons","submit","remove","simple","button","actionName","_e","preventDefault","clickHander","getTimeStamp","now","getMonth","getDate","getHours","getMinutes","getSeconds","generateComprobante","titleComprobante","generalInfo","candidatosInfo","montosInfo","addImage","datos1","head","body","startY","cellWidth","valign","1","2","3","headStyles","showHead","datos2","fecha","lastAutoTable","finalY","fontStyle","delegados","blankFields","blankFields2","membresia","total","fileTS","generatePrevencion","idPrevencion","dataPapeleta","papeletaInfo","createData","_data","filterEstado","Consts","filter","status","ind_estado","num_consecutivo","province","numero","cod_estado","cod_papeleta","heads","btnBack","btnActions","sectionTitle","fieldFilled","fieldMin","fieldMinFilled","fieldTitle","frmText","lineHeight","frmIconButton","btnSubmitting","searchButton","hideCicularProgress","customFrmDropDown","currentPerson","addPersonToRow","setCurrentSexChanged","tel_celular","dir_habitacion","dir_trabajo","tel_trabajo","fax_trabajo","openMsjDialog","setOpenMsjDialog","handleCloseMsjDialog","changeToNewSex","persist","handleCancel","disableBackdropClick","disableEscapeKeyDown","personInfo","ind_sexo","updatePersonInfo","parseInt","RadioGroup","FormControlLabel","control","Radio","btnDeleteActive","btnDeleteInactive","juventudChip","validateCandidato","validateFiscal","ListSearch","initListData","sexOrderM","sexOrderF","fieldToShow","setListFunc","inPlace","findInOtherList","otherList","validateBy","requireSexOrder","sexFieldAs","onlyJuventud","hideSexColumn","needHojaInfo","isFiscal","requireValidation","listData","setListData","setCurrentPerson","currentSexChanged","inputNameField","setInputNameField","lugarField","setLugarField","openHojaInfo","setOpenHojaInfo","setAllList","doSearchByCedula","numCedula","inputName","person","activo","validPerson","personName","personCedula","personPlace","_isPersonProvincia","_isPersonCanton","_isPersonDistrito","dataVal","sexVal","listToDoSearch","sexOrder","newListData","d","index","i","delegado","vResult","document","getElementById","newList","union","orderedList","orderBy","sexMessage","removePerson","rows","numFields","diff","n","maxLength","getFieldProps","getElementsByName","isInOtherList","forEach","Chip","renderList","isData","selectedSex","delegadoVal","sexValNew","clonedPerson","getProvincesItems","frmOptions","p","cod_provincia","unshift","initValues","jrv","provinciasData","getProvincesAOCPItems","getProvinces","getProvincesAOCP","getCantonsByProvince","idProvince","useProvincias","useProvinciasAOCP","addPrevencion","infoPrevencion","prevencion","dataPrevencion","startPrevencion","nCodPapeleta","nConsecutivo","indProceso","fechaPapeleta","balanceGlobalApi","bResult","currentSaldo","con_papeleta","ind_proceso","cod_usuario","des_login","pResult","addNew","papeletaData","delegadosCantonalEnca","tFrmsCandidatos","getNumPapeletasDelegadoCantonal","idCanton","getNumPapeletaStatus","blockNumPapeleta","numPapeleta","codProvincia","codCanton","updatePapeleta","getCandidatosPapeleta","getAllDataPapeleta","set","numStatus","allPapeletas","papeletasList","plist","iListDelegados","numDelegados","candidatos","candidato","NUM_PUESTO","Promise","all","NUM_CEDULA","personEdad","listDelegados","aDelegados","del","f","undefined","allDelegados","merge","firstDelegado","finalListDelegados","papeletas","getPapeletaInfo","cedGestor","isCRUDAvailable","crudAvailable","history","useHistory","setUser","statusPapeleta","dateField","setDateField","setConsecutivo","setCodPapeleta","fecPapeleta","setFecPapeleta","isSaving","setIsSaving","showfilters","setShowfilters","showNumPapeleta","setShowNumPapeleta","tokenData","today","sProvincia","setSProvincia","sCanton","setSCanton","sPapeleta","setSPapeleta","setNumDelegados","setListDelegados","provincias","cantones","setCantones","setPapeletas","savePapeleta","lCandidates","totalRegistersOnList","keys","c","countBy","rec","count","o","verifyIfCanSave","num_papeleta","des_usuario","totalDelegados","true","Math","floor","totalCuotaJuventudD","Number","isInteger","rNew","nMontos","candidatosDelegados","listCanDelegados","cD","montoInfo","porcentajeDelegados","rUpdate","handleSubmit","clist","cod_canton","useParams","isEmpty","fec_inscripcion","papeletaDate","numeroDeposito","monto","observacion","depositante","last","tableHeaders","getAll","deleteDepositByCod","codDeposit","numDeposito","NUM_DEPOSITO","NUM_MONTO","FEC_DEPOSITO","tipoDeposito","IND_DEPOSITO","ced_depositante","nombreDepositante","COD_DEPOSITO","RegistroDepositos","items","setItems","isDataEmpty","setDataEmpty","dataRemove","setDataRemove","isRemoved","setIsRemoved","removedMsj","setRemoveMsj","hiddenBtn","setHiddenBtn","_response","rowItems","catch","_error","fetchListAPI","removeDepositByNum","_rs","responseInfo","configCallback","isHiddenBtn","message","assign","setTimeout","warn","actions","actionRemove","showAction","_item","fieldOutFilled","fieldTxt","calendarInput","minHeight","isSexOrderRequired","setSTipoDeposito","listAddDeposito","dateDeposito","tiposDepositos","alert","infoDeposito","deposito","depositoData","newDeposito","num_deposito","num_monto","ind_deposito","fec_deposito","tipo","placeholderText","closeOnScroll","dateFormat","selected","isLoadingData","setLoading","defaultDepositData","depositInfo","setDepositInfo","setListDeposito","setTipoDeposito","loadDepositDetails","_codDeposito","dataSet","Array","codDeposito","fetchAPI","updateDeposito","cod_deposito","ced_responsable","_err","registro","IND_PAPELETA","CON_PAPELETA","CED_CANDIDATO","CED_GESTOR","nom_gestor","nom_candidato","fechaRegistro","FEC_REGISTRO","ConsultaDebitos","print","subtitleDoc","boxDocToPdf","textFilled","customField","showPreview","setShowPreview","tableHeaderTitle","dinamicFields","posY","dataT","dataT6","dataPie","tableHeaderTitleCF","n3","showResults","setShowResults","isLoading","setIsLoading","rowSelected","setRowSelected","comite","setComite","filteredItems","setFilteredItems","openPapeleta","setOpenPapeleta","doSearch","searchPapeletas","renderForm","consultar","newRow","getDetallePapeleta","nComite","actionConsultar","l","setDelegados","fiscales","setFiscales","nDelegados","nFiscales","btnPrint","routesList","auth","MainPage","exact","path","Login","ForgotPassword","setFilters","getFilterKeys","applyFilters","activeFilters","myFilter","toLowerCase","includes","printComprobante","comprobanteData","declineCantonalesByNum","currentCodPapeleta","delegadosNoRepresentadosApi","timeoutId","proceedFilters","clearTimeout","ev","updatedValue","currentTarget","actionEdit","actionDecline","actionPrintComprobante","AddCantonesNoRepresentados","EditCantonesNoRepresentados","RegistroGestores","AddDeposito","EditDeposito","FRMCantonesNoRepresentados","FRMComiteEjecutivoCantonal","FRMHojaInformacion","CPPapeletasCantonesNoRepresentados","CPPapeletasComiteEjecutivoCantonal","setSMovimiento","setCurrentDate","movimientos","setMovimientos","adjudicacionPuestos","currDate","cDate","cHora","someDate","num_elegido_a","menuItem","isSubMenuOpen","hover","minWidth","contentContainer","expandIcon","NestedMenuItem","parentId","parentName","childrenItems","parentChildrenItems","anchorEl","setAnchorEl","Boolean","hasChildrenItems","isLeafNode","disableRipple","stopPropagation","onMouseEnter","onMouseLeave","Menu","pointerEvents","getContentAnchorEl","anchorOrigin","vertical","horizontal","transformOrigin","PaperProps","elevation","menuAsambleasCantonales","menuConsultaPublica","menuAdjudicacionPuestos","anchorElMAD","setAnchorElMAD","anchorElCI","setAnchorElCI","anchorElAP","setAnchorElAP","handleCloseMAD","handleCloseCI","handleCloseAP","handleItemClickMAD","link","handleItemClickCI","handleItemClickAP","isLoginGESAvailable","loginGESAvailable","anchorEl2","setAnchorEl2","mobileMoreAnchorEl","setMobileMoreAnchorEl","isMenuOpen","isMenu2Open","isMobileMenuOpen","handleMobileMenuClose","handleMenuClose","handleMenu2Close","renderMenu","Link","renderMenuAdjudicacionPuestos","renderMobileMenu","AppBar","Toolbar","grow","MenuListProps","aria-controls","aria-haspopup","profileButton","avatarIcon","setOpen","isLogout","setIsLogout","handleCloseMenu","Card","CardContent","pos","startCase","camelCase","CardActions","tokenInfo","pageInfo","pageStorage","removeStorage","autoFocus","nested","MenuItems","ListItem","to","ListItemIcon","ListItemText","Collapse","in","timeout","unmountOnExit","List","disablePadding","BalanceContext","createContext","deposits","memberships","inscriptions","saldo","BalanceProvider","Provider","Consumer","AppBarCustom","useContext","balance","getBalanceAPI","globalBalance","setGlobalBalance","fetchBalanceAPI","edge","noWrap","Logout","Drawer","authMiddleware","storage","pathname","CustomRoute","Component","rest","render","CssBaseline","reject","Routes","page","strict","AppProvider","getBalance","_userId","balanceRs","depositos","membresias","inscripciones","App","hostname","match","dotenv","ReactDOM","navigator","serviceWorker","ready","registration","unregister"],"mappings":"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xS,KAAM,GACNyS,KAAM,GACNC,SAAS,EACTC,QAAQ,GAEV,CACE5f,GAAI,EACJsf,MAAO,EACPC,UAAW,EACXC,UAAW,aACX9b,OAAQ,GACR+b,OAAQ,GACRxS,KAAM,GACNyS,KAAM,GACNC,SAAS,EACTC,QAAQ,IAwfVU,gBApfsB,CACtB,CACErT,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,MA2dRsT,gBAxdsB,CACtB,CACEtT,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,MA+bRuT,aA3bmB,CACnB,CACEvT,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,MA2aRwT,aAvamB,CACnB,CACExT,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,MAuZRyT,qBAnZ2B,CAC3B,CACEzT,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,MAgYR0T,qBA5X2B,CAC3B,CACE1T,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,MAyWR2T,uBArW6B,CAC7B,CACE3T,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,MA2VR4T,uBAvV6B,CAC7B,CACE5T,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAAM,MA6UR6T,qBAzU2B,CAC3B,CACE7T,KAAM,KAER,CACEA,KAAM,KAER,CACEA,KAA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","file":"static/js/main.c00fc9d4.chunk.js","sourcesContent":["import { createMuiTheme } from '@material-ui/core/styles';\r\n\r\nexport const colors = {\r\n black: '#000000',\r\n error: 'red',\r\n dark: '#1C1C1C',\r\n darkBlue: '#005670',\r\n gray: '#9A9A9A',\r\n midGray: '#757575',\r\n lightGray: '#797979',\r\n darkGray: '#2a2a2a',\r\n backGray: '#F8F8F8',\r\n orangeGrid:\r\n // eslint-disable-next-line max-len\r\n 'linear-gradient(rgba(255, 163, 0, 0.2) .1em, transparent .1em), linear-gradient(90deg, rgba(255, 163, 0, 0.2) .1em, transparent .1em)',\r\n orange: '#008945',\r\n green: '#008945',\r\n lightGreen: '#84BF48',\r\n orangeGradient:\r\n 'linear-gradient(180deg, #008945 0%, #008945 40%, #E76967 100%)',\r\n success: 'limegreen',\r\n white: '#FFFFFF',\r\n yellow: '#FFA300',\r\n};\r\n\r\nexport const breakpoints = {\r\n MOBILE: 480,\r\n SM: 600,\r\n MD: 960,\r\n LG: 1280,\r\n XL: 1920,\r\n};\r\n\r\nexport const theme = createMuiTheme({\r\n palette: {\r\n primary: {\r\n main: colors.green,\r\n },\r\n secondary: {\r\n main: colors.black,\r\n },\r\n },\r\n typography: {\r\n useNextVariants: true,\r\n fontFamily: \"'Inter'\",\r\n },\r\n overrides: {\r\n MuiContainer: {\r\n root: {\r\n width: '100%',\r\n display: 'block',\r\n boxSizing: 'border-box',\r\n marginLeft: 'auto',\r\n marginRight: 'auto',\r\n paddingLeft: '16px',\r\n paddingRight: '16px',\r\n '@media (min-width: 600px)': {\r\n paddingLeft: 0,\r\n paddingRight: 0,\r\n },\r\n },\r\n },\r\n MuiAppBar: {\r\n colorPrimary: {\r\n backgroundColor: `${colors.lightGreen}`,\r\n boxShadow:\r\n // eslint-disable-next-line max-len\r\n '0px 2px 1px -1px rgba(0,0,0,0.2), 0px 1px 1px 0px rgba(0,0,0,0.14), 0px 1px 3px 0px rgba(0,0,0,0.12)',\r\n },\r\n },\r\n MuiExpansionPanelSummary: {\r\n root: {\r\n backgroundColor: `${colors.white} !important`,\r\n color: `${colors.green} !important`,\r\n },\r\n },\r\n MuiExpansionPanelDetails: {\r\n root: {\r\n background: `${colors.white} !important`,\r\n color: `${colors.green} !important`,\r\n },\r\n },\r\n MuiTextField: {\r\n root: {\r\n margin: '0px 0 20px',\r\n border: `solid 1px ${colors.lightGray}`,\r\n paddingLeft: '25px',\r\n height: '52px',\r\n paddingTop: '10px',\r\n paddingBottom: '6px',\r\n background: `${colors.white}`,\r\n },\r\n },\r\n MuiInputLabel: {\r\n root: {\r\n marginLeft: '25px',\r\n fontSize: '16px',\r\n \"&[data-shrink='true']\": {\r\n color: `${colors.dark}`,\r\n transform: 'translate(0, 10px)',\r\n },\r\n },\r\n },\r\n MuiLink: {\r\n root: {\r\n color: `${colors.green}`,\r\n fontFamily: \"'InterBold'\",\r\n },\r\n },\r\n MuiInputBase: {\r\n input: {\r\n '&:-internal-autofill-selected': {\r\n backgroundColor: `${colors.white} !important`,\r\n },\r\n '&:-webkit-autofill': {\r\n transition:\r\n 'background-color 50000s ease-in-out 0s, color 50000s ease-in-out 0s',\r\n },\r\n '&:-webkit-autofill:focus': {\r\n transition:\r\n 'background-color 50000s ease-in-out 0s, color 50000s ease-in-out 0s',\r\n },\r\n '&:-webkit-autofill:hover': {\r\n transition:\r\n 'background-color 50000s ease-in-out 0s, color 50000s ease-in-out 0s',\r\n },\r\n },\r\n },\r\n MuiInput: {\r\n underline: {\r\n '&:before': {\r\n borderBottom: 'none',\r\n },\r\n '&:hover:not($disabled):before': {\r\n borderBottom: 'none',\r\n },\r\n '&:after': {\r\n borderBottom: 'none',\r\n },\r\n },\r\n },\r\n MuiButton: {\r\n containedPrimary: {\r\n backgroundColor: `${colors.green}`,\r\n border: 0,\r\n height: 50,\r\n boxShadow: 'none',\r\n color: `${colors.white}`,\r\n fontFamily: \"'InterBold'\",\r\n '&:hover': {\r\n color: `${colors.green}`,\r\n backgroundColor: `${colors.white}`,\r\n },\r\n },\r\n containedSecondary: {\r\n backgroundColor: `${colors.white} !important`,\r\n color: `${colors.green} !important`,\r\n '&:hover': {\r\n backgroundColor: `${colors.white} !important`,\r\n },\r\n },\r\n },\r\n MuiButtonGroup: {\r\n contained: {\r\n boxShadow: 'none',\r\n },\r\n groupedContainedHorizontal: {\r\n color: `${colors.white}`,\r\n borderRadius: 10,\r\n backgroundColor: `${colors.green}`,\r\n fontFamily: \"'InterBold'\",\r\n fontSize: '12px',\r\n height: 40,\r\n\r\n '&:hover': {\r\n backgroundColor: `${colors.green}`,\r\n },\r\n\r\n '&:first-child': {\r\n borderLeft: '1px solid',\r\n },\r\n\r\n '&:not(:last-child)': {\r\n borderColor: `${colors.green} !important`,\r\n borderTop: '1px solid',\r\n borderBottom: '1px solid',\r\n },\r\n\r\n '&:last-child': {\r\n borderColor: `${colors.green} !important`,\r\n borderTop: '1px solid',\r\n borderBottom: '1px solid',\r\n borderRight: '1px solid',\r\n },\r\n },\r\n },\r\n MuiListItem: {\r\n root: {\r\n color: `${colors.midGray}`,\r\n },\r\n },\r\n },\r\n});\r\n\r\nexport default { breakpoints, theme };\r\n","import {\r\n colors,\r\n breakpoints as bp,\r\n} from '../../Core/Theme/theme';\r\n\r\nconst styles = theme => ({\r\n container: {\r\n background: colors.backGray,\r\n },\r\n sectionDesktop: {\r\n display: 'none',\r\n [theme.breakpoints.up('md')]: {\r\n display: 'flex',\r\n },\r\n },\r\n sectionMobile: {\r\n display: 'flex',\r\n [theme.breakpoints.up('md')]: {\r\n display: 'none',\r\n },\r\n },\r\n imgLogo: {\r\n maxWidth: '100%',\r\n height: 'auto',\r\n display: 'block',\r\n padding: 15,\r\n [theme.breakpoints.down(bp.MOBILE)]: {\r\n paddingTop: 25,\r\n },\r\n },\r\n socialLinks: {\r\n padding: 0,\r\n marginTop: 25,\r\n marginRight: 25,\r\n float: 'right',\r\n '& li': {\r\n listStyle: 'none',\r\n float: 'left',\r\n marginRight: '10px',\r\n },\r\n },\r\n loginAccess: {\r\n padding: 0,\r\n marginTop: 25,\r\n color: '#999',\r\n marginRight: 25,\r\n float: 'right',\r\n '& li': {\r\n listStyle: 'none',\r\n float: 'left',\r\n marginRight: '10px',\r\n paddingLeft: '25px',\r\n borderLeft: 'solid thin #000',\r\n '& span': {\r\n float: 'right',\r\n marginLeft: 5,\r\n marginTop: 3,\r\n },\r\n },\r\n },\r\n});\r\n\r\nexport default styles;\r\n","import { colors } from '../../Core/Theme/theme';\r\n\r\nconst styles = () => ({\r\n inputLabel: {\r\n display: 'block',\r\n fontSize: '.8em',\r\n color: '#545454',\r\n },\r\n input: {\r\n display: 'block',\r\n width: '100%',\r\n fontSize: '.9em',\r\n padding: '25px 10px 25px 10px',\r\n borderRadius: 10,\r\n borderColor: colors.lightGray,\r\n borderWidth: 1,\r\n borderStyle: 'solid',\r\n margin: '5px 0 20px',\r\n height: '38px',\r\n },\r\n password: {\r\n fontSize: '2em',\r\n letterSpacing: 8,\r\n paddingLeft: 15,\r\n },\r\n inputMultiline: {\r\n height: '6em',\r\n },\r\n inputError: {\r\n marginBottom: 5,\r\n borderColor: '#dd0000',\r\n },\r\n error: {\r\n fontSize: '.8em',\r\n color: '#dd0000',\r\n marginBottom: 20,\r\n '&::first-letter': {\r\n textTransform: 'uppercase',\r\n },\r\n },\r\n required: {\r\n '&::after': {\r\n content: '\"*\"',\r\n color: colors.green,\r\n },\r\n },\r\n checkboxContainer: {\r\n position: 'relative',\r\n cursor: 'pointer',\r\n '& span': {\r\n fontSize: '.8em',\r\n margin: 0,\r\n },\r\n '& > label': {\r\n display: 'flex',\r\n alignItems: 'center',\r\n },\r\n },\r\n checkbox: {\r\n display: 'inline-flex',\r\n width: 30,\r\n height: 30,\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n color: colors.orange,\r\n border: `1px solid ${colors.lightGray}`,\r\n borderRadius: 10,\r\n },\r\n left: {\r\n order: -1,\r\n marginRight: 10,\r\n },\r\n right: {\r\n order: 1,\r\n marginLeft: 10,\r\n },\r\n checkboxIcon: {\r\n position: 'absolute',\r\n },\r\n ccContainer: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'space-between',\r\n margin: '5px 0 20px',\r\n },\r\n ccField: {\r\n flexGrow: 1,\r\n margin: 0,\r\n },\r\n cc: {\r\n width: 75,\r\n display: 'flex',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n },\r\n ccImg: {\r\n maxWidth: '45px',\r\n maxHeight: '35px',\r\n },\r\n dropdownContainer: {\r\n position: 'relative',\r\n },\r\n dropdownControl: {\r\n margin: `5px 0px`,\r\n width: '100%',\r\n },\r\n dropdownArrow: {\r\n color: `${colors.green}`,\r\n marginRight: 20,\r\n },\r\n dropdown: {\r\n borderRadius: 10,\r\n '& div': {\r\n height: 23,\r\n paddingRight: '10px !important',\r\n },\r\n },\r\n dropdownError: {\r\n border: `1px solid ${colors.green}`,\r\n },\r\n});\r\n\r\nexport default styles;\r\n","import React from 'react';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { useTranslation } from 'react-i18next';\r\nimport InputMask from 'react-input-mask';\r\nimport style from './styles';\r\n\r\nconst PlnInput = withStyles(style)(props => {\r\n const {\r\n classes,\r\n label,\r\n type,\r\n disabled,\r\n field,\r\n form: { touched, errors },\r\n required: isRequired,\r\n mask,\r\n placeholder,\r\n style,\r\n } = props;\r\n\r\n const { t } = useTranslation();\r\n\r\n return (\r\n <>\r\n \r\n {t(label)}\r\n \r\n {props.multiLine ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n );\r\n});\r\n\r\nPlnInput.defaultProps = {\r\n label: '',\r\n type: 'text',\r\n disabled: false,\r\n};\r\n\r\nPlnInput.propTypes = {\r\n label: PropTypes.string.isRequired,\r\n type: PropTypes.string.isRequired,\r\n disabled: PropTypes.bool.isRequired,\r\n multiLine: (props, propName) => {\r\n return (\r\n props[propName] &&\r\n props.mask &&\r\n new Error(\r\n 'The multiLine prop and the mask prop cannot both be set',\r\n )\r\n );\r\n },\r\n mask: (props, propName) => {\r\n return (\r\n props[propName] &&\r\n props.multiLine &&\r\n new Error(\r\n 'The multiLine prop and the mask prop cannot both be set',\r\n )\r\n );\r\n },\r\n};\r\n\r\nexport default PlnInput;\r\n","import React, { useState, useEffect } from 'react';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport PropTypes from 'prop-types';\r\nimport shortId from 'shortid';\r\nimport CheckIcon from '@material-ui/icons/Check';\r\nimport clsx from 'clsx';\r\nimport style from './styles';\r\n\r\nconst PlnCheckbox = withStyles(style)(props => {\r\n const {\r\n classes,\r\n id,\r\n label,\r\n labelChecked,\r\n position,\r\n onChange,\r\n field,\r\n checked,\r\n required: isRequired,\r\n } = props;\r\n const [isChecked, setIsChecked] = useState(checked);\r\n\r\n useEffect(() => {\r\n onChange(isChecked);\r\n }, [onChange, isChecked]);\r\n\r\n return (\r\n
\r\n {\r\n setIsChecked(!isChecked);\r\n field.onChange(e);\r\n }}\r\n name={field.name}\r\n onBlur={field.onBlur}\r\n />\r\n \r\n {labelChecked ? (\r\n {isChecked ? labelChecked : label}\r\n ) : (\r\n {label}\r\n )}\r\n \r\n {isChecked && (\r\n \r\n )}\r\n
\r\n \r\n \r\n );\r\n});\r\n\r\nPlnCheckbox.defaultProps = {\r\n id: shortId.generate(),\r\n label: '',\r\n position: 'left',\r\n onChange: () => {},\r\n checked: false,\r\n};\r\n\r\nPlnCheckbox.propTypes = {\r\n id: PropTypes.string.isRequired,\r\n checked: PropTypes.bool.isRequired,\r\n label: PropTypes.string,\r\n labelChecked: PropTypes.string,\r\n position: PropTypes.string,\r\n onChange: PropTypes.func,\r\n};\r\n\r\nexport default PlnCheckbox;\r\n","import React from 'react';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport FormControl from '@material-ui/core/FormControl';\r\nimport KeyboardArrowDownIcon from '@material-ui/icons/KeyboardArrowDown';\r\nimport MenuItem from '@material-ui/core/MenuItem';\r\nimport Select from '@material-ui/core/Select';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\nimport shortId from 'shortid';\r\nimport style from './styles';\r\n\r\nconst PlnDropdown = withStyles(style)(props => {\r\n const {\r\n classes,\r\n data,\r\n id,\r\n label,\r\n field,\r\n onChange,\r\n form: { touched, errors },\r\n required: isRequired,\r\n } = props;\r\n\r\n const { t } = useTranslation();\r\n\r\n return (\r\n
\r\n \r\n {t(label)}\r\n \r\n\r\n \r\n (\r\n \r\n )}\r\n value={field.value ? field.value : ''}\r\n id={id}\r\n onChange={e => {\r\n e.target.name = field.name;\r\n onChange(e.target.value);\r\n field.onChange(e);\r\n }}\r\n >\r\n {data.reduce((list, itm) => {\r\n const { value, itemLabel } = itm;\r\n list.push(\r\n \r\n {itemLabel}\r\n ,\r\n );\r\n return list;\r\n }, [])}\r\n \r\n \r\n
\r\n );\r\n});\r\n\r\nPlnDropdown.defaultProps = {\r\n data: [],\r\n id: shortId.generate(),\r\n label: '',\r\n onChange: () => {},\r\n};\r\n\r\nPlnDropdown.propTypes = {\r\n data: PropTypes.arrayOf(PropTypes.shape()).isRequired,\r\n id: PropTypes.string.isRequired,\r\n label: PropTypes.string,\r\n onChange: PropTypes.func,\r\n};\r\n\r\nexport default PlnDropdown;\r\n","import React, { useState, useEffect } from 'react';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { useTranslation } from 'react-i18next';\r\nimport InputMask from 'react-input-mask';\r\nimport visa from 'payment-icons/min/single/visa.svg';\r\nimport mastercard from 'payment-icons/min/single/mastercard.svg';\r\nimport discover from 'payment-icons/min/single/discover.svg';\r\nimport amex from 'payment-icons/min/single/amex.svg';\r\nimport monoDefault from 'payment-icons/min/mono/default.svg';\r\nimport ccType from 'credit-card-type';\r\nimport style from './styles';\r\n\r\nconst PlnInputCard = withStyles(style)(props => {\r\n const {\r\n classes,\r\n label,\r\n field,\r\n form: { touched, errors },\r\n required: isRequired,\r\n placeholder,\r\n onUpdate,\r\n } = props;\r\n\r\n const { t } = useTranslation();\r\n\r\n const [creditCardType, setCreditCardType] = useState('');\r\n const [mask, setMask] = useState('9999 9999 9999 9999');\r\n\r\n useEffect(() => {\r\n switch (creditCardType) {\r\n case 'american-express':\r\n setMask('9999 9999999 99999');\r\n onUpdate('american-express');\r\n break;\r\n case 'visa':\r\n setMask('9999 9999 9999 9999');\r\n onUpdate('visa');\r\n break;\r\n case 'mastercard':\r\n setMask('9999 9999 9999 9999');\r\n onUpdate('mastercard');\r\n break;\r\n case 'discover':\r\n setMask('9999 9999 9999 9999');\r\n onUpdate('discover');\r\n break;\r\n default:\r\n setCreditCardType('');\r\n setMask('9999 9999 9999 9999');\r\n onUpdate('');\r\n break;\r\n }\r\n\r\n if (field.value.length >= 2) {\r\n const types = ccType(field.value);\r\n\r\n if (types.length) {\r\n setCreditCardType(types[0].type);\r\n } else {\r\n setCreditCardType('');\r\n }\r\n } else {\r\n setCreditCardType('');\r\n }\r\n }, [creditCardType, field.value, onUpdate]);\r\n\r\n const renderCCImage = cctype => {\r\n switch (cctype) {\r\n case 'american-express':\r\n return (\r\n \r\n );\r\n case 'visa':\r\n return (\r\n \r\n );\r\n case 'mastercard':\r\n return (\r\n \r\n );\r\n case 'discover':\r\n return (\r\n \r\n );\r\n default:\r\n return (\r\n \r\n );\r\n }\r\n };\r\n\r\n return (\r\n
\r\n \r\n {t(label)}\r\n \r\n
\r\n \r\n
\r\n {renderCCImage(creditCardType)}\r\n
\r\n
\r\n
\r\n );\r\n});\r\n\r\nPlnInputCard.propTypes = {\r\n label: PropTypes.string,\r\n required: PropTypes.bool,\r\n placeholder: PropTypes.string,\r\n onUpdate: PropTypes.func,\r\n};\r\n\r\nexport default PlnInputCard;\r\n","import React from 'react';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport PropTypes from 'prop-types';\r\nimport style from './styles';\r\n\r\nconst PlnError = withStyles(style)(\r\n ({ classes, children }) => (\r\n
\r\n {children}\r\n
\r\n ),\r\n);\r\n\r\nPlnError.propTypes = {\r\n children: PropTypes.oneOfType([\r\n PropTypes.arrayOf(PropTypes.node),\r\n PropTypes.node,\r\n ]).isRequired,\r\n};\r\n\r\nexport default PlnError;\r\n","import { colors } from '../../Core/Theme/theme';\r\n\r\nconst styles = theme => ({\r\n container: {\r\n textAlign: 'left',\r\n color: colors.lightGray,\r\n '& h3': {\r\n color: colors.darkGray,\r\n marginTop: '50px',\r\n fontSize: '24px',\r\n marginBottom: '10px',\r\n },\r\n '& h4': {\r\n textWeight: 'bold',\r\n marginTop: '0px',\r\n marginBottom: '5px',\r\n },\r\n '& p': {\r\n marginTop: '0px',\r\n marginBottom: '5px',\r\n },\r\n },\r\n subtitle: { color: colors.green },\r\n boxForm: {\r\n marginTop: '30px',\r\n },\r\n sectionDesktop: {\r\n display: 'none',\r\n [theme.breakpoints.up('md')]: {\r\n display: 'flex',\r\n },\r\n },\r\n sectionMobile: {\r\n display: 'flex',\r\n [theme.breakpoints.up('md')]: {\r\n display: 'none',\r\n },\r\n },\r\n formError: {\r\n margin: '5px 0px 25px 0px',\r\n color: `#FF1101`,\r\n },\r\n});\r\n\r\nexport default styles;\r\n","import axios from 'axios';\r\n\r\naxios.defaults.baseURL = process.env.REACT_APP_API_BASE_URL;\r\n\r\n/* eslint-disable import/prefer-default-export */\r\nexport const getTotalPapeletas = cedula => {\r\n const url = [`/gestores/totalPapeletasAOCP/${cedula}`];\r\n\r\n return axios.get(url.join('&'));\r\n};\r\n\r\nexport const findGestor = cedula => {\r\n const url = [`/gestores/findGestor/${cedula}/aocp`];\r\n\r\n return axios.get(url.join('&'));\r\n};\r\n\r\nexport const saveGestor = params => {\r\n const {\r\n gestorData,\r\n userData,\r\n telefonosData,\r\n direccionesData,\r\n emailsData,\r\n } = params;\r\n\r\n const gestorInfo = {\r\n typeApp: 'aocp',\r\n gestor: gestorData,\r\n user: userData,\r\n telefonos: telefonosData,\r\n direcciones: direccionesData,\r\n emails: emailsData,\r\n };\r\n\r\n return axios.post('/gestores', gestorInfo);\r\n};\r\n","/* eslint-disable camelcase */\r\nimport axios from 'axios';\r\n\r\naxios.defaults.baseURL = process.env.REACT_APP_API_BASE_URL;\r\n\r\n/* eslint-disable import/prefer-default-export */\r\nexport const searchByCedula = cedula => {\r\n const url = [`/padron/searchbycedula/${cedula}`];\r\n\r\n return axios.get(url.join('&'));\r\n};\r\n\r\nexport const updatePersonInfo = params => {\r\n const {\r\n num_cedula,\r\n ind_sexo,\r\n telefonosData,\r\n direccionesData,\r\n emailsData,\r\n } = params;\r\n\r\n const personInfo = {\r\n num_cedula,\r\n ind_sexo,\r\n telefonos: telefonosData,\r\n direcciones: direccionesData,\r\n emails: emailsData,\r\n };\r\n\r\n return axios.post('/padron/updatePersonInfo', personInfo);\r\n};\r\n","import axios from 'axios';\r\n\r\naxios.defaults.baseURL = process.env.REACT_APP_API_BASE_URL;\r\n\r\n/* eslint-disable import/prefer-default-export */\r\nexport const sendPLNMail = params => {\r\n /*\r\n const url = [`/padron/searchbycedula/${cedula}`];\r\n\r\n return axios.get(url.join('&'));\r\n */\r\n /*\r\n const { cantonalEnca, tFrmsCandidatos } = params;\r\n\r\n const papeletaData = {\r\n cantonalEnca,\r\n tFrmsCandidatos,\r\n };\r\n */\r\n return axios.post('/mailPLN/sendMail', params);\r\n};\r\n","const REGEX_UTILS = {\r\n cedula: /^[0-9]{9}$/,\r\n email: /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,4}$/i,\r\n phone: /^[0-9]{8}$/,\r\n digits: /^[0-9]+$/,\r\n nickname: /^[a-z0-9~`!@#$%^&|\\*()_={}[\\]:;,.<>+\\/?-]{6,}$/i,\r\n // eslint-disable-next-line max-len\r\n password: /^((?!.*[\\s])(?=.*\\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[`!@#$%^&*()_+\\-=\\[\\]{};':\"\\\\|,.<>\\/?~]).{8,})$/,\r\n};\r\n\r\nexport default REGEX_UTILS;\r\n","import axios from 'axios';\r\nimport { useQuery } from 'react-query';\r\n\r\naxios.defaults.baseURL = process.env.REACT_APP_API_BASE_URL;\r\n\r\nexport const getIGESAvailable = async () => {\r\n try {\r\n const url = [`/periods/isIGESAOCPAvailable`];\r\n\r\n const { data } = await axios.get(url.join('&'));\r\n\r\n return data;\r\n } catch (e) {\r\n return { data: {} };\r\n }\r\n};\r\n\r\nexport const getRGESMMAvailable = async () => {\r\n try {\r\n const url = [`/periods/isRGESMMAvailable`];\r\n\r\n const { data } = await axios.get(url.join('&'));\r\n\r\n return data;\r\n } catch (e) {\r\n return { data: {} };\r\n }\r\n};\r\n\r\nexport const getCRUDAvailable = async () => {\r\n try {\r\n const url = [`/periods/isCRUDAvailableAOCP`];\r\n\r\n const { data } = await axios.get(url.join('&'));\r\n\r\n return data;\r\n } catch (e) {\r\n return { data: {} };\r\n }\r\n};\r\n\r\nexport const getLoginGESAvailable = async () => {\r\n try {\r\n const url = [`/periods/isLoginGESAOCPAvailable`];\r\n\r\n const { data } = await axios.get(url.join('&'));\r\n\r\n return data;\r\n } catch (e) {\r\n return { data: {} };\r\n }\r\n};\r\n\r\nexport const useIGESAvailable = () => {\r\n return useQuery(['iGesAvailable'], () =>\r\n getIGESAvailable(),\r\n );\r\n};\r\n\r\nexport const useRGESMMAvailable = () => {\r\n return useQuery(['rGesMmAvailable'], () =>\r\n getRGESMMAvailable(),\r\n );\r\n};\r\n\r\nexport const useLoginGESAvailable = () => {\r\n return useQuery(['loginGESAvailable'], () =>\r\n getLoginGESAvailable(),\r\n );\r\n};\r\n\r\nexport const useCRUDAvailable = () => {\r\n return useQuery(['crudAvailable'], () =>\r\n getCRUDAvailable(),\r\n );\r\n};\r\n","/* eslint-disable no-lonely-if */\r\n/* eslint-disable no-nested-ternary */\r\n/* eslint-disable max-len */\r\nimport React, { useState } from 'react';\r\nimport Lodash from 'lodash';\r\nimport { jsPDF } from 'jspdf';\r\nimport 'jspdf-autotable';\r\nimport Alert from '@material-ui/lab/Alert';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport {\r\n Container,\r\n Grid,\r\n Button,\r\n TextField,\r\n Divider,\r\n} from '@material-ui/core';\r\nimport CircularProgress from '@material-ui/core/CircularProgress';\r\n\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport DialogActions from '@material-ui/core/DialogActions';\r\nimport DialogContent from '@material-ui/core/DialogContent';\r\nimport DialogContentText from '@material-ui/core/DialogContentText';\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\nimport Slide from '@material-ui/core/Slide';\r\n\r\nimport { Formik, Form, Field, ErrorMessage } from 'formik';\r\nimport * as Yup from 'yup';\r\nimport {\r\n PlnInput,\r\n PlnError,\r\n PlnCheckbox,\r\n} from '../../Components/Input';\r\nimport style from './styles';\r\n\r\nimport {\r\n findGestor,\r\n saveGestor,\r\n} from '../../Core/Api/gestorApi';\r\nimport { searchByCedula } from '../../Core/Api/padronApi';\r\nimport { sendPLNMail } from '../../Core/Api/mailApi';\r\nimport REGEX from '../../Core/Utils/RegExpUtils';\r\n\r\nimport {\r\n useIGESAvailable,\r\n getIGESAvailable,\r\n} from '../../Core/Api/periodoApi';\r\n\r\nconst Transition = React.forwardRef(function Transition(\r\n tProps,\r\n ref,\r\n) {\r\n // eslint-disable-next-line react/jsx-props-no-spreading\r\n return ;\r\n});\r\n\r\nconst RegistroGestores = props => {\r\n // Se valida si esta habilitada la opcion (Registro Gestores)\r\n const isRegistroGESAvailable = useIGESAvailable();\r\n const registroGESAvailable = Lodash.get(\r\n isRegistroGESAvailable,\r\n ['data', 'response'],\r\n null,\r\n );\r\n\r\n /* eslint new-cap: [\"error\", { \"newIsCap\": false }] */\r\n const doc = new jsPDF('p', 'px', 'letter');\r\n const { classes } = props;\r\n const [showForm, setShowForm] = useState(false);\r\n const [termConditions, setTermConditions] = useState(\r\n true,\r\n );\r\n const [gestorData, setGestorData] = useState({\r\n des_apell1: '',\r\n des_apell2: '',\r\n des_nombre: '',\r\n des_nombre_p: '',\r\n des_nombre_c: '',\r\n des_nombre_d: '',\r\n des_nombre_ad: '',\r\n tel_casa: '',\r\n tel_celu: '',\r\n tel_ofi: '',\r\n des_email: '',\r\n des_email2: '',\r\n des_direccion: '',\r\n des_direccion_trabajo: '',\r\n });\r\n\r\n const frmInitValues = {\r\n telCasa: '',\r\n telCelu: '',\r\n telOfi: '',\r\n dirDomicilio: '',\r\n dirTrabajo: '',\r\n email1: '',\r\n email2: '',\r\n reemail1: '',\r\n nickname: '',\r\n passUser: '',\r\n termConditions,\r\n };\r\n\r\n const [iCedula, setICedula] = useState('');\r\n const [iValues2, setIValues2] = useState(frmInitValues);\r\n const [msjErrorCedula, setMsjErrorCedula] = useState('');\r\n const [\r\n msjUserRegistered,\r\n setMsjUserRegistered,\r\n ] = useState('');\r\n\r\n const initialValues = {\r\n cedula: iCedula,\r\n };\r\n\r\n const initialValues2 = iValues2;\r\n\r\n const validationSchema = Yup.object({});\r\n\r\n const formikValidate = values => {\r\n const errors = {};\r\n const { cedula } = values;\r\n\r\n if (!cedula) {\r\n errors.cedula = 'Requerido';\r\n } else if (cedula.length <= 8) {\r\n errors.cedula =\r\n 'Debe utilizar el siguiente formato: 102340567';\r\n } else if (!REGEX.cedula.test(cedula)) {\r\n errors.cedula = 'Solo se permiten números';\r\n }\r\n\r\n return errors;\r\n };\r\n\r\n const formikValidationAfterCed = values => {\r\n // validationSchema2\r\n const errors = {};\r\n const {\r\n email1,\r\n nickname,\r\n passUser,\r\n // eslint-disable-next-line no-shadow\r\n termConditions,\r\n } = values;\r\n\r\n if (!REGEX.email.test(email1)) {\r\n errors.email1 = 'Email inválido';\r\n }\r\n\r\n if (!nickname) {\r\n errors.nickname = 'Requerido';\r\n } else if (!REGEX.nickname.test(nickname)) {\r\n errors.nickname = (\r\n
    \r\n
  • Requiere un mínimo de 6 caracteres
  • \r\n
  • No se permiten espacios
  • \r\n
\r\n );\r\n }\r\n\r\n if (!termConditions) {\r\n errors.termConditions =\r\n '* Debe de haber leído y aceptado los terminos y condiciones';\r\n }\r\n\r\n if (!passUser) {\r\n errors.passUser = 'Requerido';\r\n } else if (!REGEX.password.test(passUser)) {\r\n errors.passUser = (\r\n
    \r\n
  • Requiere un mínimo de 8 caracteres
  • \r\n
  • Debe tener al menos una letra mayúscula
  • \r\n
  • Debe tener al menos una letra minúscula
  • \r\n
  • \r\n Debe tener números y caracteres especiales\r\n
  • \r\n
\r\n );\r\n }\r\n\r\n return errors;\r\n };\r\n\r\n const centeredText = (text, y) => {\r\n const textWidth =\r\n (doc.getStringUnitWidth(text) *\r\n doc.internal.getFontSize()) /\r\n doc.internal.scaleFactor;\r\n const textOffset =\r\n (doc.internal.pageSize.width - textWidth) / 2;\r\n doc.text(textOffset, y, text);\r\n };\r\n\r\n const [msjDialog, setMsjDialog] = useState('');\r\n const [open, setOpenDialog] = React.useState(false);\r\n const [finalDialog, setFinalDialog] = React.useState(\r\n false,\r\n );\r\n\r\n const handleClose = () => {\r\n setOpenDialog(false);\r\n };\r\n\r\n const closeFinalDialog = () => {\r\n setIValues2(frmInitValues);\r\n setShowForm(false);\r\n setICedula('');\r\n // sendMailNotification(gestorDataMail);\r\n };\r\n\r\n const generateLetter = (\r\n gestorName,\r\n gestorCedula,\r\n gestorCorreo,\r\n ) => {\r\n const options = {\r\n year: 'numeric',\r\n month: 'long',\r\n day: 'numeric',\r\n timeZone: 'UTC',\r\n };\r\n const today = new Date();\r\n const currentDate = today.toLocaleDateString(\r\n 'es-ES',\r\n options,\r\n );\r\n\r\n doc.setFontSize(14);\r\n doc.setFont('times', 'bold');\r\n centeredText('PARTIDO LIBERACIÓN NACIONAL', 50);\r\n centeredText('TRIBUNAL DE ELECCIONES INTERNAS', 65);\r\n doc.text(275, 100, `San Jose, ${currentDate}`);\r\n\r\n doc.setFont('times', 'normal');\r\n doc.text(30, 120, 'Señoras y Señores');\r\n doc.text(30, 135, 'Tribunal de Elecciones Internas');\r\n doc.text(30, 150, 'Partido Liberación Nacional');\r\n\r\n let paragraph = `Yo ${gestorName}, mayor de edad, cédula de identidad ${gestorCedula}, por la presente me comprometo y obligo a guardar absoluta confidencialidad sobre todos los datos e información de carácter personal que conozca o a los cuales tenga acceso como consecuencia de la presentación de servicio como gestor (a) durante las Asambleas del Órgano Consultivo Provincial.`;\r\n let lines = doc.splitTextToSize(paragraph, 390);\r\n doc.text(30, 175, lines);\r\n\r\n paragraph =\r\n 'El acceso y tratamiento de los datos de carácter personal, como consecuencia de la relación establecida con el candidato o candidata, se realizará de conformidad con las finalidades previstas, subsistiendo el deber de secreto.';\r\n lines = doc.splitTextToSize(paragraph, 390);\r\n doc.text(30, 255, lines);\r\n\r\n paragraph =\r\n 'Asimismo, me comprometo a efectuar, de forma personal, los trámites relacionados con la gestión de la papeleta o candidatura, ser el responsable de la misma frente al Tribunal de Elecciones Internas para todos los efectos y alcances del proceso de tramitación e inscripción, lo cual incluye prevenciones por omisiones, formulación de consultas, presentación de apelaciones y gestiones de exclusión; además actuar conforme las facultades que otorga el artículo 1256 del Código Civil vigente.';\r\n lines = doc.splitTextToSize(paragraph, 390);\r\n doc.text(30, 305, lines);\r\n\r\n paragraph =\r\n 'Acepto dar fe de la veracidad de la información y datos contenidos en las solicitudes, así como respetar en su totalidad el marco normativo, ético y jurídico que rige el proceso, así como la responsabilidad de salvaguardar los intereses de mis representados(as) y las decisiones, resoluciones y acuerdos del Tribunal de Elecciones Internas.';\r\n lines = doc.splitTextToSize(paragraph, 390);\r\n doc.text(30, 395, lines);\r\n\r\n const columns = ['A'];\r\n const data = [\r\n ['__________________________________________'],\r\n ['FIRMA'],\r\n ];\r\n\r\n doc.autoTable(columns, data, {\r\n theme: 'plain',\r\n styles: {\r\n overflow: 'linebreak',\r\n columnWidth: 'wrap',\r\n font: 'times',\r\n fontSize: 14,\r\n },\r\n columnStyles: {\r\n 0: { columnWidth: 425 },\r\n },\r\n headerStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 16,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHeader: 'never',\r\n margin: { top: 460, left: 27 },\r\n });\r\n\r\n doc.setFontSize(12);\r\n paragraph = `Correo electrónico para notificaciones: ${gestorCorreo}`;\r\n lines = doc.splitTextToSize(paragraph, 390);\r\n doc.text(30, 505, lines);\r\n\r\n doc.addPage();\r\n\r\n doc.setFontSize(14);\r\n doc.setFont('times', 'bold');\r\n paragraph = 'TÉRMINOS Y CONDICIONES DE USO';\r\n lines = doc.splitTextToSize(paragraph, 390);\r\n doc.text(30, 50, lines);\r\n\r\n doc.setFontSize(12);\r\n doc.setFont('times', 'bold');\r\n paragraph = 'Información relevante';\r\n lines = doc.splitTextToSize(paragraph, 390);\r\n doc.text(30, 70, lines);\r\n\r\n doc.setFontSize(10);\r\n doc.setFont('times', 'normal');\r\n paragraph =\r\n 'Al solicitar la generación de su usuario y contraseña como gestor ante el Tribunal de Elecciones Internas (en adelante el Tribunal), de las papeletas y candidaturas que se inscribirán en los procesos internos del Partido Liberación Nacional, usted está aceptando los términos y condiciones que a continuación se detallan.';\r\n lines = doc.splitTextToSize(paragraph, 390);\r\n doc.text(30, 90, lines);\r\n\r\n doc.setFontSize(12);\r\n doc.setFont('times', 'bold');\r\n paragraph = 'Uso personal.';\r\n lines = doc.splitTextToSize(paragraph, 390);\r\n doc.text(30, 130, lines);\r\n\r\n doc.setFontSize(10);\r\n doc.setFont('times', 'normal');\r\n paragraph =\r\n 'El gestor deberá elegir un usuario y una contraseña, para acceder al sistema de inscripción en línea y realizar el registro de las postulaciones bajo su gestoría.';\r\n lines = doc.splitTextToSize(paragraph, 390);\r\n doc.text(30, 150, lines);\r\n\r\n paragraph =\r\n 'Para ello, es necesario el registro de datos reales y fidedignos que permitan asegurar la identidad del gestor. El usuario y contraseña que se generen son de uso estrictamente personal, el Tribunal de Elecciones Internas no se hará responsable por el empleo inadecuado que se produzca en caso de que el gestor entregue dicha información a terceros';\r\n lines = doc.splitTextToSize(paragraph, 390);\r\n doc.text(30, 180, lines);\r\n\r\n doc.setFontSize(12);\r\n doc.setFont('times', 'bold');\r\n paragraph = 'Tratamiento de la información.';\r\n lines = doc.splitTextToSize(paragraph, 390);\r\n doc.text(30, 220, lines);\r\n\r\n doc.setFontSize(10);\r\n doc.setFont('times', 'normal');\r\n paragraph =\r\n 'El acceso y tratamiento de los datos de carácter personal, como consecuencia de la relación establecida con el candidato o candidata, se realizará de conformidad con la finalidad de contar con información de contacto en caso de requerirse la comunicación entre el Tribunal y el postulante. En todo momento subsistirá el deber de secreto';\r\n lines = doc.splitTextToSize(paragraph, 390);\r\n doc.text(30, 240, lines);\r\n\r\n paragraph =\r\n 'Por ello, se autoriza al Partido Liberación Nacional para que se utilice la información suministrada únicamente para mantener contacto con el gestor o candidatos ya sea mediante algún número de teléfono o correo electrónico.';\r\n lines = doc.splitTextToSize(paragraph, 390);\r\n doc.text(30, 280, lines);\r\n\r\n doc.setFontSize(12);\r\n doc.setFont('times', 'bold');\r\n paragraph = 'Información veraz.';\r\n lines = doc.splitTextToSize(paragraph, 390);\r\n doc.text(30, 310, lines);\r\n\r\n doc.setFontSize(10);\r\n doc.setFont('times', 'normal');\r\n paragraph =\r\n 'El gestor da fe de la veracidad de la información digitada, así como de los datos contenidos en las solicitudes de inscripción y demás documentos que deben acompañar la inscripción de una candidatura';\r\n lines = doc.splitTextToSize(paragraph, 390);\r\n doc.text(30, 330, lines);\r\n\r\n doc.setFontSize(12);\r\n doc.setFont('times', 'bold');\r\n paragraph = 'Pago.';\r\n lines = doc.splitTextToSize(paragraph, 390);\r\n doc.text(30, 360, lines);\r\n\r\n doc.setFontSize(10);\r\n doc.setFont('times', 'normal');\r\n paragraph =\r\n 'El sistema de inscripción en línea incluye el monto a cancelar por el correspondiente registro de las candidaturas que el gestor presente. El gestor está en la obligación de verificar dicho monto y proceder con el depósito exacto del monto correspondiente so pena del rechazo de las candidaturas inscritas.';\r\n lines = doc.splitTextToSize(paragraph, 390);\r\n doc.text(30, 380, lines);\r\n\r\n doc.setFontSize(12);\r\n doc.setFont('times', 'bold');\r\n paragraph = 'Inscripción en línea.';\r\n lines = doc.splitTextToSize(paragraph, 390);\r\n doc.text(30, 420, lines);\r\n\r\n doc.setFontSize(10);\r\n doc.setFont('times', 'normal');\r\n paragraph =\r\n 'El gestor entiende que el proceso de inscripción de papeletas y candidaturas será únicamente en línea, en las fechas y horas señaladas en la convocatoria.';\r\n lines = doc.splitTextToSize(paragraph, 390);\r\n doc.text(30, 440, lines);\r\n\r\n paragraph =\r\n 'Los gestores deberán realizar la inscripción en línea, bajo el sistema que el Tribunal pondrá a disposición y con sus respectivos requisitos. La inscripción registrada en línea será la definitiva y válida para participar en el proceso.';\r\n lines = doc.splitTextToSize(paragraph, 390);\r\n doc.text(30, 470, lines);\r\n\r\n doc.save('COMPROBANTE-REGISTRO-GESTOR-AOCP-2021.pdf');\r\n };\r\n\r\n const sendMailNotification = dataForEmail => {\r\n sendPLNMail({ gestor: dataForEmail }).then(r => {\r\n // eslint-disable-next-line no-console\r\n console.log(r);\r\n });\r\n };\r\n\r\n const loadInformation = (values, { setSubmitting }) => {\r\n setOpenDialog(false);\r\n setFinalDialog(false);\r\n const { cedula } = values;\r\n setShowForm(false);\r\n setMsjErrorCedula('');\r\n setMsjUserRegistered('');\r\n findGestor(cedula).then(result => {\r\n const response = Lodash.get(result, [\r\n 'data',\r\n 'response',\r\n ]);\r\n if (response === false) {\r\n searchByCedula(cedula).then(r => {\r\n const data = Lodash.get(\r\n r,\r\n ['data', 'response'],\r\n [],\r\n );\r\n if (data !== false) {\r\n setShowForm(true);\r\n const gestorInfo = Lodash.get(data, [0]);\r\n setGestorData(gestorInfo);\r\n setICedula(gestorInfo.num_cedula);\r\n setIValues2({\r\n telCasa: gestorInfo.tel_casa,\r\n telCelu: gestorInfo.tel_celu,\r\n telOfi: gestorInfo.tel_ofi\r\n ? gestorInfo.tel_ofi\r\n : '',\r\n dirDomicilio: gestorInfo.des_direccion,\r\n dirTrabajo: gestorInfo.des_direccion_trabajo\r\n ? gestorInfo.des_direccion_trabajo\r\n : '',\r\n email1: gestorInfo.des_email,\r\n email2: gestorInfo.des_email2\r\n ? gestorInfo.des_email2\r\n : '',\r\n reemail1: '',\r\n nickname: gestorInfo.num_cedula,\r\n passUser: '',\r\n termConditions: false,\r\n });\r\n } else {\r\n setMsjErrorCedula(\r\n 'El número de cédula ingresado no coincide con ninguna referencia',\r\n );\r\n setShowForm(false);\r\n }\r\n setSubmitting(false);\r\n });\r\n } else {\r\n setMsjUserRegistered(\r\n // eslint-disable-next-line max-len\r\n 'Este usuario Ya fue registrado como Gestor. Favor comunicarse con Ezequiel Hernández al 2519-5521 o al correo ehernandez@plndigital.com',\r\n );\r\n setShowForm(false);\r\n setSubmitting(false);\r\n }\r\n });\r\n };\r\n\r\n const addGestor = async values => {\r\n const isRegistroGESAvailable2 = await getIGESAvailable();\r\n const registroGESAvailable2 = Lodash.get(\r\n isRegistroGESAvailable2,\r\n ['response'],\r\n null,\r\n );\r\n\r\n setMsjDialog('');\r\n setOpenDialog(false);\r\n\r\n const {\r\n dirDomicilio,\r\n dirTrabajo,\r\n email1,\r\n email2,\r\n nickname,\r\n passUser,\r\n // reemail1,\r\n telCasa,\r\n telCelu,\r\n telOfi,\r\n } = values;\r\n\r\n const gestor = {\r\n num_cedula: gestorData.num_cedula,\r\n nickname,\r\n };\r\n\r\n const userData = {\r\n des_nombre_c: gestorData.des_nombre_c,\r\n des_nombre_d: gestorData.des_nombre_d,\r\n des_nombre_ad: gestorData.des_nombre_ad,\r\n des_nombre_p: gestorData.des_nombre_p,\r\n cod_prov: gestorData.cod_prov,\r\n cod_cant: gestorData.cod_cant,\r\n cod_dist_sede: gestorData.cod_dist_sede,\r\n cod_dist_adm: gestorData.cod_dist_adm,\r\n num_jvirt: gestorData.num_jvirt,\r\n des_nombre: gestorData.des_nombre,\r\n des_apell1: gestorData.des_apell1,\r\n des_apell2: gestorData.des_apell2,\r\n num_cedula: gestorData.num_cedula,\r\n num_edad: gestorData.num_edad,\r\n fec_caduc: gestorData.fec_caduc,\r\n sexo: gestorData.sexo,\r\n des_email: email1,\r\n des_email2: email2,\r\n tel_casa: telCasa,\r\n tel_celu: telCelu,\r\n tel_ofi: telOfi,\r\n tel_res: gestorData.tel_res,\r\n tel_cel_n: gestorData.tel_cel_n,\r\n num_fax: gestorData.num_fax,\r\n num_fax_ofi: gestorData.num_fax_ofi,\r\n des_direccion: dirDomicilio,\r\n des_direccion_trabajo: dirTrabajo,\r\n des_nombre_centro: gestorData.des_nombre_centro,\r\n nickname,\r\n passUser,\r\n };\r\n\r\n const telefonosData = {\r\n tel_casa: telCasa,\r\n tel_celu: telCelu,\r\n tel_ofi: telOfi,\r\n };\r\n const direccionesData = {\r\n des_direccion: dirDomicilio,\r\n des_direccion_trabajo: dirTrabajo,\r\n };\r\n const emailsData = {\r\n des_email: email1,\r\n des_email2: email2,\r\n };\r\n\r\n const gestorInfo = {\r\n gestorData: gestor,\r\n userData,\r\n telefonosData,\r\n direccionesData,\r\n emailsData,\r\n };\r\n\r\n if (registroGESAvailable2) {\r\n saveGestor(gestorInfo).then(result => {\r\n const response = Lodash.get(result, [\r\n 'data',\r\n 'response',\r\n ]);\r\n if (response > 0) {\r\n generateLetter(\r\n `${userData.des_nombre} ${userData.des_apell1} ${userData.des_apell2}`,\r\n gestorData.num_cedula,\r\n userData.des_email,\r\n );\r\n const gestorDataMail = {\r\n full_name: `${userData.des_nombre} ${userData.des_apell1} ${userData.des_apell2}`,\r\n des_email: userData.des_email,\r\n des_email2: userData.des_email2,\r\n };\r\n setFinalDialog(true);\r\n setMsjDialog('Gestor Registrado Exitosamente!');\r\n sendMailNotification(gestorDataMail);\r\n } else {\r\n if (response === -1) {\r\n setShowForm(false);\r\n setOpenDialog(true);\r\n setMsjDialog(\r\n 'El tiempo para registrase como gestor ha caducado. No se ha podido crear la cuenta.',\r\n );\r\n } else {\r\n setOpenDialog(true);\r\n setMsjDialog(\r\n 'Ha Ocurrido un Error! Su cuenta NO ha podido ser creada, favor intentarlo nuevamente.',\r\n );\r\n }\r\n }\r\n });\r\n } else {\r\n setOpenDialog(true);\r\n setMsjDialog(\r\n 'El tiempo para registrase como gestor ha caducado. No se ha podido crear la cuenta.',\r\n );\r\n }\r\n };\r\n\r\n const changeTermConditions = val => {\r\n setTermConditions(val);\r\n };\r\n\r\n // Re-Confirmar email\r\n /*\r\n

\r\n * Re-confirme el Correo Electrónico\r\n principal\r\n

\r\n \r\n \r\n */\r\n\r\n return (\r\n \r\n {process.env.REACT_APP_OPTION_REGISTRO_GESTORES ===\r\n 'enabled' && registroGESAvailable ? (\r\n \r\n {({ errors, touched, isSubmitting }) => {\r\n return (\r\n
\r\n \r\n

REGISTRO DE GESTORES

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

\r\n Ingrese el número de cédula del\r\n Gestor y complete la información\r\n requerida.\r\n

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

Número de Cédula

\r\n
\r\n \r\n \r\n {errors.cedula && touched.cedula ? (\r\n
\r\n \r\n {errors.cedula}\r\n \r\n
\r\n ) : null}\r\n
\r\n \r\n \r\n CARGAR DATOS\r\n \r\n \r\n \r\n \r\n {isSubmitting ? (\r\n \r\n \r\n \r\n ) : (\r\n \r\n {msjErrorCedula}\r\n {msjUserRegistered}\r\n \r\n )}\r\n \r\n \r\n );\r\n }}\r\n \r\n ) : registroGESAvailable === null ? (\r\n \r\n

\r\n \r\n

\r\n \r\n ) : (\r\n \r\n

REGISTRO DE GESTORES

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

\r\n Esta sección se encuentra temporalmente\r\n deshabilitada.
\r\n Favor comunicarse con Ezequiel Hernández al\r\n 2519-5521 o al correo\r\n ehernandez@plndigital.com\r\n

\r\n \r\n \r\n \r\n )}\r\n {showForm ? (\r\n \r\n \r\n \r\n \r\n

Primer Apellido

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

Segundo Apellido

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

Nombre

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

Provincia

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

Cantón

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

Distrito

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

Distrito Admin.

\r\n \r\n
\r\n \r\n \r\n \r\n {({ errors, touched, isSubmitting }) => (\r\n
\r\n \r\n \r\n \r\n

\r\n COMPLETE LA SIGUIENTE INFORMACIÓN\r\n

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

Teléfono Casa

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

\r\n Correo Electrónico (secundario)\r\n

\r\n \r\n {errors.email2 && touched.email2 ? (\r\n
\r\n \r\n {errors.email2}\r\n \r\n
\r\n ) : null}\r\n
\r\n \r\n

Teléfono Celular

\r\n \r\n {errors.telCelu && touched.telCelu ? (\r\n
\r\n \r\n {errors.telCelu}\r\n \r\n
\r\n ) : null}\r\n
\r\n \r\n

Teléfono Trabajo

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

Dirección Domicilio

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

Dirección Trabajo

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

\r\n * Correo Electrónico (principal)\r\n

\r\n \r\n {errors.email1 && touched.email1 ? (\r\n
\r\n \r\n {errors.email1}\r\n \r\n
\r\n ) : null}\r\n
\r\n \r\n  \r\n \r\n \r\n

\r\n TÉRMINOS Y CONDICIONES DE USO\r\n

\r\n \r\n
Información relevante.
\r\n

\r\n Al solicitar la generación de su\r\n usuario y contraseña como gestor\r\n ante el Tribunal de Elecciones\r\n Internas (en adelante el\r\n Tribunal), de las papeletas y\r\n candidaturas que se inscribirán en\r\n los procesos internos del Partido\r\n Liberación Nacional, usted está\r\n aceptando los términos y\r\n condiciones que a continuación se\r\n detallan.\r\n

\r\n\r\n
Uso personal.
\r\n

\r\n El gestor deberá elegir un usuario\r\n y una contraseña, para acceder al\r\n sistema de inscripción en línea y\r\n realizar el registro de las\r\n postulaciones bajo su gestoría.\r\n

\r\n

\r\n Para ello, es necesario el\r\n registro de datos reales y\r\n fidedignos que permitan asegurar\r\n la identidad del gestor. El\r\n usuario y contraseña que se\r\n generen son de uso estrictamente\r\n personal, el Tribunal de\r\n Elecciones Internas no se hará\r\n responsable por el empleo\r\n inadecuado que se produzca en caso\r\n de que el gestor entregue dicha\r\n información a terceros.\r\n

\r\n\r\n
\r\n Tratamiento de la información.\r\n
\r\n

\r\n El acceso y tratamiento de los\r\n datos de carácter personal, como\r\n consecuencia de la relación\r\n establecida con el candidato o\r\n candidata, se realizará de\r\n conformidad con la finalidad de\r\n contar con información de contacto\r\n en caso de requerirse la\r\n comunicación entre el Tribunal y\r\n el postulante. En todo momento\r\n subsistirá el deber de secreto.\r\n

\r\n

\r\n Por ello, se autoriza al Partido\r\n Liberación Nacional para que se\r\n utilice la información\r\n suministrada únicamente para\r\n mantener contacto con el gestor o\r\n candidatos ya sea mediante algún\r\n número de teléfono o correo\r\n electrónico.\r\n

\r\n\r\n
Información veraz.
\r\n

\r\n El gestor da fe de la veracidad de\r\n la información digitada, así como\r\n de los datos contenidos en las\r\n solicitudes de inscripción y demás\r\n documentos que deben acompañar la\r\n inscripción de una candidatura.\r\n

\r\n\r\n
Pago.
\r\n

\r\n El sistema de inscripción en línea\r\n incluye el monto a cancelar por el\r\n correspondiente registro de las\r\n candidaturas que el gestor\r\n presente. El gestor está en la\r\n obligación de verificar dicho\r\n monto y proceder con el depósito\r\n exacto del monto correspondiente\r\n so pena del rechazo de las\r\n candidaturas inscritas.\r\n

\r\n\r\n
Inscripción en línea.
\r\n

\r\n El gestor entiende que el proceso\r\n de inscripción de papeletas y\r\n candidaturas será únicamente en\r\n línea, en las fechas y horas\r\n señaladas en la convocatoria.\r\n

\r\n

\r\n Los gestores deberán realizar la\r\n inscripción en línea, bajo el\r\n sistema que el Tribunal pondrá a\r\n disposición y con sus respectivos\r\n requisitos. La inscripción\r\n registrada en línea será la\r\n definitiva y válida para\r\n participar en el proceso.\r\n

\r\n \r\n
\r\n \r\n \r\n Digite sus Credenciales de Acceso\r\n \r\n \r\n \r\n

* Usuario

\r\n \r\n {errors.nickname &&\r\n touched.nickname ? (\r\n \r\n \r\n {errors.nickname}\r\n \r\n \r\n ) : null}\r\n
\r\n \r\n

* Contraseña

\r\n \r\n {errors.passUser &&\r\n touched.passUser ? (\r\n \r\n \r\n {errors.passUser}\r\n \r\n \r\n ) : null}\r\n
\r\n \r\n \r\n changeTermConditions(\r\n isChecked,\r\n )\r\n }\r\n />\r\n {errors.termConditions &&\r\n touched.termConditions ? (\r\n \r\n \r\n {errors.termConditions}\r\n \r\n \r\n ) : null}\r\n \r\n \r\n \r\n REGISTRAR\r\n \r\n \r\n
\r\n \r\n \r\n Mensaje\r\n \r\n \r\n \r\n {msjDialog}\r\n \r\n \r\n \r\n \r\n Entendido\r\n \r\n \r\n \r\n \r\n \r\n Mensaje\r\n \r\n \r\n \r\n {msjDialog}\r\n \r\n \r\n \r\n \r\n Cerrar\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n
\r\n ) : (\r\n ''\r\n )}\r\n
\r\n );\r\n};\r\n\r\nexport default withStyles(style)(RegistroGestores);\r\n","import { colors } from '../../Core/Theme/theme';\r\n\r\nconst styles = () => ({\r\n loginBox: {\r\n root: { backgroundColor: '#fff' },\r\n backgroundColor: '#fff',\r\n padding: '30px 20px 20px 20px',\r\n maxWidth: 600,\r\n },\r\n accountBox: {\r\n backgroundColor: '#fff',\r\n textAlign: 'center',\r\n padding: '10px 30px 30px 30px',\r\n },\r\n title: {\r\n marginTop: '10px',\r\n color: '#212529',\r\n textAlign: 'center',\r\n },\r\n subtitle: {\r\n marginTop: '0px',\r\n color: '#555555',\r\n textAlign: 'center',\r\n letterSpacing: '3px',\r\n },\r\n form: {\r\n marginTop: 35,\r\n },\r\n labelText: { color: '#545454' },\r\n linkText: {\r\n color: '#008945',\r\n fontSize: '.8em',\r\n margin: '0 5px 0 5px',\r\n },\r\n input: {\r\n display: 'block',\r\n width: '100%',\r\n fontSize: '.9em',\r\n padding: 20,\r\n borderRadius: 10,\r\n borderColor: colors.lightGray,\r\n borderWidth: 1,\r\n borderStyle: 'solid',\r\n margin: '5px 0 20px',\r\n },\r\n submitButton: {\r\n display: 'block',\r\n width: '100%',\r\n marginTop: 20,\r\n textTransform: 'none',\r\n fontSize: '.9em',\r\n },\r\n error: {\r\n margin: '5px 0px 25px 0px',\r\n color: `${colors.error}`,\r\n },\r\n formError: {\r\n margin: '5px 0px 25px 0px',\r\n color: `${colors.error}`,\r\n },\r\n inverseButton: {\r\n display: 'block',\r\n width: '100%',\r\n background: '#fff',\r\n fontSize: '.9em',\r\n color: `${colors.orange}`,\r\n marginTop: 20,\r\n textTransform: 'none',\r\n borderRadius: 10,\r\n borderColor: `${colors.orange}`,\r\n borderWidth: 2,\r\n borderStyle: 'solid',\r\n '&:hover': {\r\n backgroundColor: `${colors.white}`,\r\n },\r\n },\r\n spinner: {\r\n color: '#008945',\r\n },\r\n forgotPwdLink: {\r\n textAlign: 'right',\r\n fontWeight: 'bold',\r\n '& a': {\r\n color: '#008945',\r\n textDecoration: 'none',\r\n '&:hover': {\r\n color: '#84BF48',\r\n },\r\n },\r\n },\r\n backToLogin: {\r\n textAlign: 'center',\r\n fontWeight: 'bold',\r\n '& a': {\r\n color: '#008945',\r\n textDecoration: 'none',\r\n '&:hover': {\r\n color: '#84BF48',\r\n },\r\n },\r\n },\r\n});\r\n\r\nexport default styles;\r\n","import axios from 'axios';\r\n\r\naxios.defaults.baseURL = process.env.REACT_APP_API_BASE_URL;\r\n\r\nexport const login = params => {\r\n const { nickname, password, ipAddress } = params;\r\n\r\n const profileData = {\r\n nickname,\r\n pwd: password,\r\n ip: ipAddress,\r\n };\r\n\r\n return axios.post('/auth/loginAocp', profileData);\r\n};\r\n\r\nexport const forgotPwd = params => {\r\n const { nickname } = params;\r\n\r\n const profileData = {\r\n nickname,\r\n };\r\n\r\n return axios.post('/auth/forgotPassword', profileData);\r\n};\r\n\r\nexport const getDataLocation = () => {\r\n return axios.get(\r\n 'https://geolocation-db.com/json/0f761a30-fe14-11e9-b59f-e53803842572',\r\n );\r\n};\r\n\r\nexport const addUser = params => {\r\n const { uid, email } = params;\r\n\r\n const profileData = {\r\n auth_id: uid,\r\n email,\r\n };\r\n\r\n return axios.post('/profiles', profileData);\r\n};\r\n\r\nexport const getProfile = params => {\r\n const { token, uid } = params;\r\n\r\n const options = {\r\n headers: { 'Auth-Token': token },\r\n };\r\n\r\n const url = [`/profiles/${uid}`];\r\n\r\n return axios.get(url.join('&'), options);\r\n};\r\n\r\nexport const updateProfile = params => {\r\n const { profile, token } = params;\r\n\r\n const options = {\r\n headers: { 'Auth-Token': token },\r\n };\r\n\r\n return axios.patch('/profiles', profile, options);\r\n};\r\n","/* eslint-disable class-methods-use-this */\r\nconst StorageSymbol = Symbol('empty');\r\nconst StorageSymbolEnforce = Symbol('empty');\r\n\r\nclass Storage {\r\n constructor(enforcer) {\r\n if (enforcer !== StorageSymbolEnforce) {\r\n throw new Error('Cannot construct singleton');\r\n }\r\n\r\n // this.isTokenExpired = true;\r\n }\r\n\r\n static get instance() {\r\n if (!this[StorageSymbol]) {\r\n this[StorageSymbol] = new Storage(\r\n StorageSymbolEnforce,\r\n );\r\n }\r\n return this[StorageSymbol];\r\n }\r\n\r\n setToken(_token) {\r\n localStorage.setItem('token', _token);\r\n }\r\n\r\n getToken() {\r\n const localToken = localStorage.getItem('token');\r\n return localToken;\r\n }\r\n\r\n setIsTokenExpired(_flag) {\r\n this.isTokenExpired = _flag;\r\n }\r\n\r\n getIsTokenExpired() {\r\n return this.isTokenExpired;\r\n }\r\n\r\n removeStorage() {\r\n localStorage.removeItem('token');\r\n }\r\n}\r\n\r\nexport default Storage;\r\n","/* eslint-disable class-methods-use-this */\r\nconst ConfigPageSymbol = Symbol('empty');\r\nconst ConfigPageSymbolEnforce = Symbol('empty');\r\n\r\nclass ConfigPage {\r\n constructor(enforcer) {\r\n if (enforcer !== ConfigPageSymbolEnforce) {\r\n throw new Error('Cannot construct singleton');\r\n }\r\n }\r\n\r\n static get instance() {\r\n if (!this[ConfigPageSymbol]) {\r\n this[ConfigPageSymbol] = new ConfigPage(\r\n ConfigPageSymbolEnforce,\r\n );\r\n }\r\n return this[ConfigPageSymbol];\r\n }\r\n\r\n setStorage(data) {\r\n localStorage.setItem(\r\n 'config',\r\n typeof data === 'object'\r\n ? JSON.stringify(data)\r\n : { config: null },\r\n );\r\n }\r\n\r\n getStorage() {\r\n return JSON.parse(localStorage.getItem('config'));\r\n }\r\n\r\n removeStorage() {\r\n localStorage.removeItem('config');\r\n }\r\n}\r\n\r\nexport default ConfigPage;\r\n","import React, { useState } from 'react';\r\nimport publicIp from 'public-ip';\r\n// import { useHistory } from 'react-router-dom';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport {\r\n Container,\r\n Button,\r\n CircularProgress,\r\n} from '@material-ui/core';\r\nimport Alert from '@material-ui/lab/Alert';\r\nimport Lodash from 'lodash';\r\n// import PropTypes from 'prop-types';\r\nimport { useFormik } from 'formik';\r\nimport * as Yup from 'yup';\r\nimport clsx from 'clsx';\r\nimport style from './styles';\r\n\r\n// import useAccount from '../../Redux/Common/Account/accountHook';\r\nimport { login } from '../../Core/Api/accountApi';\r\nimport Storage from '../../Storage/Storage';\r\nimport ConfigPage from '../../Storage/ConfigPage';\r\n\r\n// import { getProfile } from '../../Core/Api';\r\n\r\nconst Login = props => {\r\n const { classes } = props;\r\n\r\n const [submitError, setSubmitError] = useState(false);\r\n const [submitErrorMsg, setSubmitErrorMsg] = useState('');\r\n const [isSubmitting, setIsSubmitting] = useState(false);\r\n\r\n const initialValues = { nickname: '', password: '' };\r\n\r\n const validationSchema = Yup.object({\r\n nickname: Yup.string().required('Campo Requerido'),\r\n password: Yup.string().required('Campo Requerido'),\r\n });\r\n\r\n const storageInstance = Storage.instance;\r\n const storagePageInstance = ConfigPage.instance;\r\n\r\n const onSubmit = values => () => {\r\n const { nickname, password } = values;\r\n setSubmitError(false);\r\n setSubmitErrorMsg('');\r\n setIsSubmitting(true);\r\n\r\n if (nickname.length > 0 && password.length > 0) {\r\n publicIp.v4().then(ip => {\r\n login({\r\n nickname,\r\n password,\r\n ipAddress: ip,\r\n }).then(res => {\r\n const isToken = Lodash.get(\r\n res,\r\n ['data', 'response', 'token'],\r\n null,\r\n );\r\n\r\n if (isToken !== null) {\r\n setSubmitError(false);\r\n setSubmitErrorMsg('');\r\n const responseToken = res.data.response.token;\r\n\r\n storageInstance.setToken(responseToken);\r\n storagePageInstance.setStorage({\r\n showHeader: false,\r\n showFooter: true,\r\n });\r\n window.location.href = '/dashboard';\r\n } else {\r\n setSubmitError(true);\r\n setSubmitErrorMsg(\r\n 'Usuario o Contraseña son inválidos',\r\n );\r\n }\r\n setIsSubmitting(false);\r\n });\r\n\r\n // eslint-disable-next-line no-unused-vars\r\n const resToken =\r\n // eslint-disable-next-line max-len\r\n 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJjb2RfdXN1YXJpbyI6MTI0NCwiaW5kX2VzdGFkbyI6MSwiZGVzX2xvZ2luIjoiNDAxOTIwMjM4IiwiZGVzX25vbWJyZSI6IkVTVEVCQU4gUklDQVJETyBSQU1JUkVaIFJVSVoiLCJudW1fY2VkdWxhIjo0MDE5MjAyMzgsInRpcG9fdXN1YXJpbyI6IkdFUyIsImNvZF9wZXJpb2RvIjoxNywic3lzdGVtX2VuYWJsZWQiOnRydWUsImlhdCI6MTYxMTQ3MTQzMywibG9naW5fZGF0ZSI6IjIwMjEtMDEtMjQifQ.OxWlMDhuhXB-18-HpJjero7EAcKzPypbgr1oONImJxs';\r\n });\r\n } else {\r\n setSubmitError(true);\r\n setSubmitErrorMsg(\r\n 'Favor ingrese su usuario y contraseña',\r\n );\r\n setIsSubmitting(false);\r\n }\r\n };\r\n\r\n const formik = useFormik({\r\n initialValues,\r\n validationSchema,\r\n onSubmit,\r\n });\r\n\r\n Login.propTypes = {};\r\n\r\n return (\r\n <>\r\n \r\n

\r\n Ingreso de Gestores\r\n

\r\n

\r\n ASAMBLEAS DEL ÓRGANO CONSULTIVO PROVINCIAL\r\n

\r\n
\r\n {submitError && (\r\n
\r\n \r\n {submitErrorMsg}\r\n \r\n
\r\n )}\r\n\r\n \r\n Usuario\r\n \r\n \r\n {formik.errors.nickname && (\r\n \r\n {formik.errors.nickname}\r\n \r\n )}\r\n \r\n Contraseña\r\n \r\n \r\n {formik.errors.password && (\r\n \r\n {formik.errors.password}\r\n \r\n )}\r\n\r\n

\r\n \r\n ¿Olvidó su contraseña?\r\n \r\n

\r\n\r\n \r\n {isSubmitting ? (\r\n \r\n ) : (\r\n 'INGRESAR'\r\n )}\r\n \r\n\r\n \r\n Copyright ©2021 Partido Liberación Nacional\r\n
\r\n TELEFONOS: 2549-5500 / 2549-5504 CENTRAL\r\n TELEFÓNICA\r\n

\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default withStyles(style)(Login);\r\n","import React, { useState } from 'react';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport {\r\n Container,\r\n Button,\r\n CircularProgress,\r\n} from '@material-ui/core';\r\nimport Alert from '@material-ui/lab/Alert';\r\nimport Lodash from 'lodash';\r\nimport { useFormik } from 'formik';\r\nimport * as Yup from 'yup';\r\nimport clsx from 'clsx';\r\nimport style from './styles';\r\n\r\nimport { forgotPwd } from '../../Core/Api/accountApi';\r\n\r\nconst ForgotPassword = props => {\r\n const { classes } = props;\r\n\r\n const [submitError, setSubmitError] = useState(false);\r\n const [submitSuccess, setSubmitSuccess] = useState(false);\r\n const [submitErrorMsg, setSubmitErrorMsg] = useState('');\r\n const [submitSuccessMsg, setSubmitSuccessMsg] = useState(\r\n '',\r\n );\r\n const [isSubmitting, setIsSubmitting] = useState(false);\r\n\r\n const initialValues = { nickname: '' };\r\n\r\n const validationSchema = Yup.object({\r\n nickname: Yup.string().required('Campo Requerido'),\r\n });\r\n\r\n const resetPassword = formik => () => {\r\n const { nickname } = formik.values;\r\n setSubmitError(false);\r\n setSubmitErrorMsg('');\r\n setIsSubmitting(true);\r\n\r\n if (nickname.length > 0) {\r\n forgotPwd({\r\n nickname,\r\n }).then(res => {\r\n const isPwdUpdated = Lodash.get(\r\n res,\r\n ['data', 'response', 'status'],\r\n false,\r\n );\r\n\r\n const useremail = Lodash.get(\r\n res,\r\n ['data', 'response', 'email'],\r\n false,\r\n );\r\n\r\n if (isPwdUpdated) {\r\n setSubmitSuccess(true);\r\n formik.setFieldValue('nickname', '');\r\n setSubmitSuccessMsg(\r\n `Su Contraseña ha sido actualizada y enviada al correo: ${useremail}`,\r\n );\r\n // window.location.href = '/dashboard';\r\n } else {\r\n setSubmitError(true);\r\n setSubmitErrorMsg(\r\n 'Lo sentimos el usuario ingresado no se encuentra registrado',\r\n );\r\n }\r\n setIsSubmitting(false);\r\n });\r\n } else {\r\n setSubmitError(true);\r\n setIsSubmitting(false);\r\n setSubmitErrorMsg('Favor ingrese el usuario');\r\n }\r\n };\r\n\r\n const formik = useFormik({\r\n initialValues,\r\n validationSchema,\r\n });\r\n\r\n ForgotPassword.propTypes = {};\r\n\r\n return (\r\n <>\r\n \r\n

\r\n Recuperación de Contraseña\r\n

\r\n

\r\n DIGITE SU SU USUARIO DE INGRESO AL SISTEMA\r\n

\r\n
\r\n \r\n Usuario\r\n \r\n \r\n {submitSuccess && (\r\n
\r\n \r\n {submitSuccessMsg}\r\n \r\n
\r\n )}\r\n {submitError && (\r\n
\r\n \r\n {submitErrorMsg}\r\n \r\n
\r\n )}\r\n \r\n {isSubmitting ? (\r\n \r\n ) : (\r\n 'Restablecer Contraseña'\r\n )}\r\n \r\n\r\n

\r\n Volver\r\n

\r\n\r\n \r\n Copyright ©2021 Partido Liberación Nacional\r\n
\r\n TELEFONOS: 2549-5500 / 2549-5504 CENTRAL\r\n TELEFÓNICA\r\n

\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default withStyles(style)(ForgotPassword);\r\n","const styles = () => ({\r\n pageBox: {\r\n root: { backgroundColor: '#fff' },\r\n backgroundColor: '#fff',\r\n padding: 0,\r\n maxWidth: 1200,\r\n },\r\n paper: {\r\n padding: 20,\r\n textAlign: 'center',\r\n },\r\n});\r\n\r\nexport default styles;\r\n","import React from 'react';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport { Container } from '@material-ui/core';\r\nimport style from './styles';\r\n\r\nconst MainPage = props => {\r\n const { classes } = props;\r\n\r\n MainPage.propTypes = {};\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default withStyles(style)(MainPage);\r\n","import { makeStyles } from '@material-ui/core/styles';\r\n\r\nconst drawerWidth = 340;\r\n\r\nconst useStyles = makeStyles(theme => ({\r\n root: {\r\n display: 'flex',\r\n },\r\n toolbar: {\r\n paddingRight: 24, // keep right padding when drawer closed\r\n },\r\n toolbarIcon: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'flex-end',\r\n padding: '0 8px',\r\n ...theme.mixins.toolbar,\r\n },\r\n appBar: {\r\n zIndex: theme.zIndex.drawer + 1,\r\n transition: theme.transitions.create(\r\n ['width', 'margin'],\r\n {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n },\r\n ),\r\n },\r\n appBarShift: {\r\n marginLeft: drawerWidth,\r\n width: `calc(100% - ${drawerWidth}px)`,\r\n transition: theme.transitions.create(\r\n ['width', 'margin'],\r\n {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.enteringScreen,\r\n },\r\n ),\r\n },\r\n menuButton: {\r\n marginRight: 36,\r\n },\r\n menuButtonHidden: {\r\n display: 'none',\r\n },\r\n title: {\r\n flexGrow: 1,\r\n textAlign: 'left',\r\n },\r\n drawerPaper: {\r\n position: 'relative !important',\r\n whiteSpace: 'nowrap',\r\n width: drawerWidth,\r\n transition: theme.transitions.create('width', {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n },\r\n drawerPaperClose: {\r\n overflowX: 'hidden',\r\n transition: theme.transitions.create('width', {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n width: theme.spacing(7),\r\n [theme.breakpoints.up('sm')]: {\r\n width: theme.spacing(9),\r\n },\r\n },\r\n appBarSpacer: theme.mixins.toolbar,\r\n content: {\r\n flexGrow: 1,\r\n height: '100vh',\r\n overflow: 'auto',\r\n },\r\n container: {\r\n paddingTop: theme.spacing(4),\r\n paddingBottom: theme.spacing(4),\r\n },\r\n paper: {\r\n padding: theme.spacing(2),\r\n display: 'flex',\r\n overflow: 'auto',\r\n flexDirection: 'column',\r\n },\r\n fixedHeight: {\r\n height: 240,\r\n },\r\n imgLogo: {\r\n width: 263,\r\n padding: 15,\r\n },\r\n cardIcon: {\r\n background: '#84BF48',\r\n },\r\n customChip: {\r\n marginRight: 10,\r\n },\r\n}));\r\n\r\nexport default useStyles;\r\n","import React from 'react';\r\nimport Typography from '@material-ui/core/Typography';\r\n\r\nconst Copyright = () => {\r\n return (\r\n \r\n Copyright ©2021 Partido Liberación Nacional\r\n
\r\n TELEFONOS: 2549-5500 / 2549-5504 CENTRAL TELEFÓNICA\r\n {` ${new Date().getFullYear()}`}\r\n {'.'}\r\n \r\n );\r\n};\r\n\r\nexport default Copyright;\r\n","/* eslint-disable jsx-a11y/anchor-is-valid */\r\nimport React, { useState, useEffect } from 'react';\r\nimport Lodash from 'lodash';\r\nimport { useJwt } from 'react-jwt';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport Paper from '@material-ui/core/Paper';\r\nimport Avatar from '@material-ui/core/Avatar';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport ReceiptIcon from '@material-ui/icons/Receipt';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport Storage from '../../Storage/Storage';\r\n\r\nimport { getTotalPapeletas } from '../../Core/Api/gestorApi';\r\n\r\nconst useStyles = makeStyles({\r\n depositContext: {\r\n flex: 1,\r\n },\r\n\r\n paper: {\r\n padding: 20,\r\n display: 'flex',\r\n overflow: 'auto',\r\n flexDirection: 'column',\r\n },\r\n fixedHeight: {\r\n height: 240,\r\n },\r\n\r\n cardIcon: {\r\n background: '#84BF48',\r\n },\r\n});\r\n\r\nexport default function Cards() {\r\n const classes = useStyles();\r\n const tokenStorage = Storage.instance;\r\n\r\n const { decodedToken } = useJwt(tokenStorage.getToken());\r\n\r\n const [totales, setTotales] = useState([]);\r\n\r\n useEffect(() => {\r\n async function fetchTotalesAPI() {\r\n if (decodedToken) {\r\n const allTotales = await getTotalPapeletas(\r\n decodedToken.num_cedula,\r\n );\r\n\r\n const dataTotales = Lodash.get(\r\n allTotales,\r\n ['data', 'response'],\r\n [],\r\n );\r\n setTotales(dataTotales);\r\n }\r\n }\r\n\r\n fetchTotalesAPI();\r\n }, [decodedToken]);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n Papeletas\r\n \r\n \r\n \r\n \r\n \r\n \r\n Cantones no Representados\r\n \r\n \r\n {totales.provinciales} registros\r\n \r\n \r\n \r\n \r\n ver todas\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import React from 'react';\r\nimport CircularProgress from '@material-ui/core/CircularProgress';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport PropTypes from 'prop-types';\r\n\r\nconst useStyles = makeStyles({\r\n container: {\r\n width: '100%',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n },\r\n type: {\r\n padding: '5px 0',\r\n },\r\n});\r\n\r\nconst Loading = props => {\r\n const { label } = props;\r\n const classes = useStyles();\r\n return (\r\n
\r\n \r\n \r\n {label}\r\n \r\n
\r\n );\r\n};\r\n\r\nLoading.propTypes = {\r\n label: PropTypes.string.isRequired,\r\n};\r\n\r\nexport default Loading;\r\n","import Lodash from 'lodash';\r\n\r\nconst matchClass = (className, classToSearch) => {\r\n // const patt = new RegExp(`((${classToSearch})-([0-9]+)*)`);\r\n // const res = patt.test(className);\r\n return className.includes(classToSearch);\r\n};\r\n\r\nconst getUrlParams = url => {\r\n const regex = /[?&]([^=#]+)=([^&#]*)/g;\r\n const params = {};\r\n let match;\r\n // eslint-disable-next-line no-cond-assign\r\n while ((match = regex.exec(url))) {\r\n // eslint-disable-next-line prefer-destructuring\r\n params[match[1]] = match[2];\r\n }\r\n return params;\r\n};\r\n\r\nexport const formatData = _total => {\r\n return _total\r\n .toString()\r\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\r\n};\r\n\r\nexport const getEstadoPapeleta = codStatus => {\r\n const estadosPapeleta = [\r\n { id: 2, description: 'Registrada' },\r\n { id: 3, description: 'Confección' },\r\n { id: 4, description: 'Prevención' },\r\n { id: 5, description: 'Anulada' },\r\n ];\r\n\r\n const estado = Lodash.find(estadosPapeleta, {\r\n id: codStatus,\r\n });\r\n\r\n return codStatus ? estado.description : '';\r\n};\r\n\r\nexport const urlHasResetCode = url => {\r\n const params = getUrlParams(url);\r\n const { oobCode } = params;\r\n if (oobCode !== undefined && oobCode.length > 0) {\r\n return true;\r\n }\r\n return false;\r\n};\r\n\r\nexport const urlResetCode = url => {\r\n const params = getUrlParams(url);\r\n const { oobCode } = params;\r\n if (oobCode !== undefined && oobCode.length > 0) {\r\n return oobCode;\r\n }\r\n return '';\r\n};\r\n\r\nexport const formatDate = date => {\r\n const dateParts = date.split('/');\r\n const month = dateParts[1];\r\n const day = dateParts[0];\r\n const year = dateParts[2];\r\n\r\n return [year, month, day].join('-');\r\n};\r\n\r\nexport const splitInGroupOf = (arr, len) => {\r\n const chunks = [];\r\n let i = 0;\r\n const n = arr.length;\r\n while (i < n) {\r\n chunks.push(arr.slice(i, (i += len)));\r\n }\r\n return chunks;\r\n};\r\n\r\nexport default matchClass;\r\n","import React from 'react';\nimport Lodash from 'lodash';\nimport { makeStyles } from '@material-ui/core/styles';\nimport Container from '@material-ui/core/Container';\nimport Typography from '@material-ui/core/Typography';\nimport Tooltip from '@material-ui/core/Tooltip';\nimport IconButton from '@material-ui/core/IconButton';\nimport Grid from '@material-ui/core/Grid';\nimport Paper from '@material-ui/core/Paper';\nimport Button from '@material-ui/core/Button';\nimport Divider from '@material-ui/core/Divider';\nimport Table from '@material-ui/core/Table';\nimport TableBody from '@material-ui/core/TableBody';\nimport TableCell from '@material-ui/core/TableCell';\nimport TableHead from '@material-ui/core/TableHead';\nimport TableRow from '@material-ui/core/TableRow';\nimport PropTypes from 'prop-types';\nimport Box from '@material-ui/core/Box';\nimport Copyright from '../Copyright/Copyright';\nimport Loading from '../../Components/Loading/Loading';\nimport { formatData } from '../../Core/Utils/Utils';\n\nconst useStyles = makeStyles(() => ({\n divider: {\n backgroundColor: '#008945',\n margin: '20px 0',\n padding: 1,\n },\n}));\nconst MacroList = props => {\n const {\n listName,\n btnConfig,\n tableHeads,\n tableBody,\n tableFooter,\n uiStylesClasses,\n actionConfig,\n filters,\n dataEmpty,\n showTotals,\n sumTotalsColumns,\n displayCopyright,\n isCrudAvailable,\n } = props;\n const classes = useStyles();\n\n const renderHeaders = () => {\n let template = [];\n let item = {};\n\n if (tableHeads.length > 0) {\n for (let x = 0; x < tableHeads.length; x++) {\n item = tableHeads[x];\n template.push(\n \n {item.name}\n ,\n );\n }\n\n template.push(\n  ,\n );\n\n template = (\n \n {template}\n \n );\n }\n\n return template;\n };\n\n const renderTableCells = _items => {\n const template = [];\n const itemProps = Object.getOwnPropertyNames(_items);\n\n if (itemProps.length) {\n for (let x = 0; x < itemProps.length; x++) {\n if (\n x + 1 !== itemProps.length ||\n actionConfig().length === 0\n ) {\n template.push(\n \n {_items[itemProps[x]]}\n ,\n );\n }\n }\n }\n\n return template;\n };\n\n const renderItemActions = _currentRow => {\n const cr = Lodash.get(_currentRow, ['cod_estado'], 0);\n\n let options = [];\n const actions = actionConfig();\n\n options = actions.map(option => {\n let showOpt = true;\n\n if (cr === 'Registrada' && option.key === 'edit') {\n showOpt = cr === 'Anulada';\n } else if (\n cr === 'Anulada' &&\n option.key === 'imprimir'\n ) {\n showOpt = false;\n } else if (\n cr === 'Confección' &&\n option.key === 'imprimir'\n ) {\n showOpt = false;\n } else if (\n cr === 'Anulada' &&\n option.key === 'remove'\n ) {\n showOpt = false;\n } else if (\n cr === 'Anulada' &&\n option.key === 'edit'\n ) {\n showOpt = false;\n } else if (\n cr === 'Prevención' &&\n option.key === 'edit'\n ) {\n showOpt = false;\n }\n\n return showOpt ? (\n \n {\n if (option.clickHandler) {\n option.clickHandler(_currentRow);\n }\n }}\n >\n {option.icon}\n \n \n ) : null;\n });\n\n return (\n \n
\n {options}\n
\n
\n );\n };\n\n const renderTableData = () => {\n let template = [];\n let row = {};\n\n if (tableBody.length > 0) {\n for (let x = 0; x < tableBody.length; x++) {\n row = tableBody[x];\n template.push(\n \n {renderTableCells(row)}\n {renderItemActions(row)}\n ,\n );\n }\n\n template = (\n {template}\n );\n }\n\n return template;\n };\n\n const renderTableTotals = () => {\n let template = [];\n let totalMonto = 0;\n for (let x = 0; x < tableBody.length; x++) {\n totalMonto += parseFloat(\n tableBody[x].montoDeposito.replace(/,/g, ''),\n );\n }\n if (tableBody.length > 0) {\n template = (\n \n Registros: {tableBody.length} | Total: ¢\n {`${formatData(totalMonto)}.00`}\n \n );\n }\n\n return template;\n };\n\n const renderRegisters = () => {\n let template = [];\n\n if (tableBody.length > 0) {\n template = (\n \n # Registros: {tableBody.length}\n \n );\n }\n\n return template;\n };\n\n const renderSumTotalsColumns = () => {\n let template = [];\n let row = {};\n\n if (tableFooter.length > 0) {\n for (let x = 0; x < tableFooter.length; x++) {\n row = tableFooter[x];\n template.push(\n \n {renderTableCells(row)}\n {renderItemActions(row)}\n ,\n );\n }\n\n template = (\n {template}\n );\n }\n\n return template;\n };\n\n const renderTable = () => {\n const errorMsj = 'No se encontraron registros';\n let template = ;\n\n if (!dataEmpty) {\n if (tableHeads.length > 0 && tableBody.length > 0) {\n template = (\n \n {showTotals\n ? [\n renderHeaders(),\n renderTableData(),\n renderTableTotals(),\n ]\n : [\n renderHeaders(),\n renderTableData(),\n sumTotalsColumns\n ? renderSumTotalsColumns()\n : null,\n renderRegisters(),\n ]}\n
\n );\n }\n } else {\n template = (\n \n {errorMsj}\n \n );\n }\n\n return template;\n };\n\n React.useEffect(() => {\n // console.log(tableBody);\n });\n\n return (\n \n \n \n \n \n {listName}\n {isCrudAvailable && (\n btnConfig.event()}\n >\n {btnConfig.name}\n \n )}\n \n {filters || <>}\n \n {renderTable()}\n
\n  \n
\n
\n
\n
\n {displayCopyright && (\n \n \n \n )}\n \n );\n};\n\nMacroList.defaultProps = {\n filters: null,\n showTotals: false,\n sumTotalsColumns: false,\n displayCopyright: true,\n isCrudAvailable: true,\n tableFooter: [],\n};\n\nMacroList.propTypes = {\n listName: PropTypes.string.isRequired,\n filters: PropTypes.shape({}),\n btnConfig: PropTypes.instanceOf(Object).isRequired,\n actionConfig: PropTypes.instanceOf(Function).isRequired,\n tableHeads: PropTypes.instanceOf(Array).isRequired,\n tableBody: PropTypes.instanceOf(Array).isRequired,\n tableFooter: PropTypes.instanceOf(Array),\n uiStylesClasses: PropTypes.instanceOf(Object).isRequired,\n dataEmpty: PropTypes.bool.isRequired,\n showTotals: PropTypes.bool,\n sumTotalsColumns: PropTypes.bool,\n displayCopyright: PropTypes.bool,\n isCrudAvailable: PropTypes.bool,\n};\n\nexport default MacroList;\n","import axios from 'axios';\r\n\r\nconst axiosInstance = axios.create({\r\n baseURL: process.env.REACT_APP_API_BASE_URL,\r\n responseType: 'json',\r\n});\r\n\r\nconst getPapeletaDistritalByCod = (_ced, _codDistrital) => {\r\n return axiosInstance.get(\r\n `papeletaDistrital/getByCodPapeleta/${_ced}/${_codDistrital}`,\r\n );\r\n};\r\n\r\nconst getAllPapeletasByUserId = _ced => {\r\n return axiosInstance.get(\r\n `papeletaCantonesNoRepresentados/${_ced}`,\r\n );\r\n};\r\n\r\nconst declinePapeleta = params => {\r\n const { codPapeleta, cedulaGestor, consecutivo } = params;\r\n\r\n const info = {\r\n codPapeleta,\r\n cedulaGestor,\r\n consecutivo,\r\n };\r\n\r\n return axiosInstance.post(\r\n `papeletaCantonesNoRepresentados/anular`,\r\n info,\r\n );\r\n};\r\n\r\nexport default {\r\n getSpecificDistrital: getPapeletaDistritalByCod,\r\n getDelegadosCantonales: getAllPapeletasByUserId,\r\n actionDeclinePapeleta: declinePapeleta,\r\n};\r\n","import axios from 'axios';\r\n// import Lodash from 'lodash';\r\n\r\naxios.defaults.baseURL = process.env.REACT_APP_API_BASE_URL;\r\n\r\n// eslint-disable-next-line import/prefer-default-export\r\nexport const newDeposito = params => {\r\n const { depositoData } = params;\r\n\r\n const infoDeposito = {\r\n deposito: depositoData,\r\n };\r\n\r\n return axios.post(\r\n '/depositos/saveDepositoED',\r\n infoDeposito,\r\n );\r\n};\r\n\r\nexport const getDataComprobante = params => {\r\n return axios.post('/comprobante/getInfoAocp', params);\r\n};\r\n","const distritalesInitValues = {\r\n provincia: 9,\r\n canton: 999,\r\n distrito: 999,\r\n papeleta: 999,\r\n delegado1: '',\r\n delegado2: '',\r\n delegado3: '',\r\n delegado4: '',\r\n delegado5: '',\r\n delegado6: '',\r\n delegado7: '',\r\n delegado8: '',\r\n delegado9: '',\r\n presidente: '',\r\n vicePresidente: '',\r\n secretario: '',\r\n subSecretario: '',\r\n tesoreria: '',\r\n subTesoreria: '',\r\n propietario: '',\r\n};\r\nconst cantonalesInitValues = {\r\n provincia: 9,\r\n canton: 999,\r\n movimiento: 9,\r\n papeleta: 999,\r\n cantonal1: '',\r\n cantonal2: '',\r\n cantonal3: '',\r\n cantonal4: '',\r\n cantonal5: '',\r\n cantonal6: '',\r\n cantonal7: '',\r\n};\r\nconst provincialesInitValues = {\r\n provincia: 9,\r\n movimiento: 9,\r\n papeleta: 999,\r\n provincial1: '',\r\n provincial2: '',\r\n provincial3: '',\r\n provincial4: '',\r\n};\r\nconst nacionalesInitValues = {\r\n movimiento: 9,\r\n puesto: 9,\r\n nacional1: '',\r\n nacional2: '',\r\n nacional3: '',\r\n};\r\nconst presidenteSectorInitValues = {\r\n presidente: '',\r\n};\r\nconst sectorialesInitValues = {\r\n sector: 9,\r\n sectorial1: '',\r\n sectorial2: '',\r\n sectorial3: '',\r\n};\r\nconst delegadosCantonalesInitValues = {\r\n provincia: 9,\r\n canton: 999,\r\n papeleta: 999,\r\n delegado1: '',\r\n delegado2: '',\r\n delegado3: '',\r\n delegado4: '',\r\n delegado5: '',\r\n delegado6: '',\r\n delegado7: '',\r\n delegado8: '',\r\n delegado9: '',\r\n};\r\nconst comiteEjecutivoCantonalInitValues = {\r\n provincia: 9,\r\n canton: 999,\r\n papeleta: 999,\r\n delegado1: '',\r\n delegado2: '',\r\n delegado3: '',\r\n delegado4: '',\r\n delegado5: '',\r\n delegado6: '',\r\n fiscal: '',\r\n};\r\nconst initListDelegados = [\r\n {\r\n id: 1,\r\n lugar: 1,\r\n numPuesto: 1,\r\n fieldName: 'delegado1',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: false,\r\n filled: false,\r\n },\r\n {\r\n id: 2,\r\n lugar: 2,\r\n numPuesto: 2,\r\n fieldName: 'delegado2',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 3,\r\n lugar: 3,\r\n numPuesto: 3,\r\n fieldName: 'delegado3',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 4,\r\n lugar: 4,\r\n numPuesto: 4,\r\n fieldName: 'delegado4',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 5,\r\n lugar: 5,\r\n numPuesto: 5,\r\n fieldName: 'delegado5',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 6,\r\n lugar: 6,\r\n numPuesto: 6,\r\n fieldName: 'delegado6',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 7,\r\n lugar: 7,\r\n numPuesto: 7,\r\n fieldName: 'delegado7',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 8,\r\n lugar: 8,\r\n numPuesto: 8,\r\n fieldName: 'delegado8',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 9,\r\n lugar: 9,\r\n numPuesto: 9,\r\n fieldName: 'delegado9',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n];\r\nconst initListDelegadosComiteEjecutivo = [\r\n {\r\n id: 1,\r\n lugar: 1,\r\n numPuesto: 1,\r\n fieldName: 'delegado1',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: false,\r\n filled: false,\r\n },\r\n {\r\n id: 2,\r\n lugar: 2,\r\n numPuesto: 2,\r\n fieldName: 'delegado2',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 3,\r\n lugar: 3,\r\n numPuesto: 3,\r\n fieldName: 'delegado3',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 4,\r\n lugar: 4,\r\n numPuesto: 4,\r\n fieldName: 'delegado4',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 5,\r\n lugar: 5,\r\n numPuesto: 5,\r\n fieldName: 'delegado5',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 6,\r\n lugar: 6,\r\n numPuesto: 6,\r\n fieldName: 'delegado6',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n];\r\n\r\nconst initListComite = [\r\n {\r\n id: 1,\r\n lugar: 'Presidente',\r\n numPuesto: 10,\r\n fieldName: 'presidente',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: false,\r\n filled: false,\r\n },\r\n {\r\n id: 2,\r\n lugar: 'Vicepresidente',\r\n numPuesto: 11,\r\n fieldName: 'vicePresidente',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 3,\r\n lugar: 'Secretario',\r\n numPuesto: 12,\r\n fieldName: 'secretario',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 4,\r\n lugar: 'Subsecretario',\r\n numPuesto: 13,\r\n fieldName: 'subSecretario',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 5,\r\n numPuesto: 14,\r\n lugar: 'Tesorería',\r\n fieldName: 'tesoreria',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 6,\r\n lugar: 'Subtesorería',\r\n numPuesto: 15,\r\n fieldName: 'subTesoreria',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n];\r\n\r\nconst initListCandidatosFiscalia = [\r\n {\r\n id: 1,\r\n lugar: 'Propietario',\r\n numPuesto: 16,\r\n fieldName: 'propietario',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: false,\r\n filled: false,\r\n },\r\n];\r\n\r\nconst initListCandidatosFiscaliaEC = [\r\n {\r\n id: 1,\r\n lugar: 'Fiscal',\r\n numPuesto: 7,\r\n fieldName: 'fiscal',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: false,\r\n filled: false,\r\n },\r\n];\r\n\r\nconst initListComiteCantonal = [\r\n {\r\n id: 1,\r\n lugar: 1,\r\n numPuesto: 1,\r\n fieldName: 'cantonal1',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: false,\r\n filled: false,\r\n },\r\n {\r\n id: 2,\r\n lugar: 2,\r\n numPuesto: 2,\r\n fieldName: 'cantonal2',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 3,\r\n lugar: 3,\r\n numPuesto: 3,\r\n fieldName: 'cantonal3',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 4,\r\n lugar: 4,\r\n numPuesto: 4,\r\n fieldName: 'cantonal4',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 5,\r\n lugar: 5,\r\n numPuesto: 5,\r\n fieldName: 'cantonal5',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 6,\r\n lugar: 6,\r\n numPuesto: 6,\r\n fieldName: 'cantonal6',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 7,\r\n lugar: 7,\r\n numPuesto: 7,\r\n fieldName: 'cantonal7',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n];\r\n\r\nconst initlistComiteProvincial = [\r\n {\r\n id: 1,\r\n lugar: 1,\r\n numPuesto: 1,\r\n fieldName: 'provincial1',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: false,\r\n filled: false,\r\n },\r\n {\r\n id: 2,\r\n lugar: 2,\r\n numPuesto: 2,\r\n fieldName: 'provincial2',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 3,\r\n lugar: 3,\r\n numPuesto: 3,\r\n fieldName: 'provincial3',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 4,\r\n lugar: 4,\r\n numPuesto: 4,\r\n fieldName: 'provincial4',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n];\r\n\r\nconst initListComiteNacional = [\r\n {\r\n id: 1,\r\n lugar: 1,\r\n numPuesto: 1,\r\n fieldName: 'nacional1',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: false,\r\n filled: false,\r\n },\r\n {\r\n id: 2,\r\n lugar: 2,\r\n numPuesto: 2,\r\n fieldName: 'nacional2',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 3,\r\n lugar: 3,\r\n numPuesto: 3,\r\n fieldName: 'nacional3',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n];\r\n\r\nconst initlistPresiSector = [\r\n {\r\n id: 1,\r\n lugar: 1,\r\n numPuesto: 1,\r\n fieldName: 'presidente',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: false,\r\n filled: false,\r\n },\r\n];\r\n\r\nconst initListComiteSectorial = [\r\n {\r\n id: 1,\r\n lugar: 1,\r\n numPuesto: 1,\r\n fieldName: 'sectorial1',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: false,\r\n filled: false,\r\n },\r\n {\r\n id: 2,\r\n lugar: 2,\r\n numPuesto: 2,\r\n fieldName: 'sectorial2',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n {\r\n id: 3,\r\n lugar: 3,\r\n numPuesto: 3,\r\n fieldName: 'sectorial3',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: true,\r\n filled: false,\r\n },\r\n];\r\n\r\nconst initListAddDeposito = [\r\n {\r\n id: 1,\r\n lugar: 1,\r\n numPuesto: 1,\r\n fieldName: 'depositante',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: false,\r\n filled: false,\r\n },\r\n];\r\n\r\nconst initlistPapeletaSector = [\r\n {\r\n id: 1,\r\n lugar: 1,\r\n numPuesto: 1,\r\n fieldName: 'candidato1',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: false,\r\n filled: false,\r\n },\r\n {\r\n id: 2,\r\n lugar: 2,\r\n numPuesto: 2,\r\n fieldName: 'candidato2',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: false,\r\n filled: false,\r\n },\r\n {\r\n id: 3,\r\n lugar: 3,\r\n numPuesto: 3,\r\n fieldName: 'candidato3',\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: '',\r\n enabled: false,\r\n filled: false,\r\n },\r\n];\r\n\r\nconst delegadosMOrder = [\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n];\r\nconst delegadosFOrder = [\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n];\r\n\r\nconst comiteMOrder = [\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n];\r\n\r\nconst comiteFOrder = [\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n];\r\n\r\nconst comiteCantonalMOrder = [\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n];\r\n\r\nconst comiteCantonalFOrder = [\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n];\r\n\r\nconst comiteProvincialMOrder = [\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n];\r\n\r\nconst comiteProvincialFOrder = [\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n];\r\n\r\nconst comiteNacionalMOrder = [\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n];\r\n\r\nconst comiteNacionalFOrder = [\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n];\r\n\r\nconst presiSectorMOrder = [\r\n {\r\n sexo: 'M',\r\n },\r\n];\r\nconst presiSectorFOrder = [\r\n {\r\n sexo: 'F',\r\n },\r\n];\r\nconst comiteSectorMOrder = [\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n];\r\nconst comiteSectorFOrder = [\r\n {\r\n sexo: 'F',\r\n },\r\n {\r\n sexo: 'M',\r\n },\r\n {\r\n sexo: 'F',\r\n },\r\n];\r\n\r\nconst puestosDelegadosDistritales = [\r\n {\r\n codigo: 1,\r\n descripcion: '# 1',\r\n },\r\n {\r\n codigo: 2,\r\n descripcion: '# 2',\r\n },\r\n {\r\n codigo: 3,\r\n descripcion: '# 3',\r\n },\r\n {\r\n codigo: 4,\r\n descripcion: '# 4',\r\n },\r\n {\r\n codigo: 5,\r\n descripcion: '# 5',\r\n },\r\n {\r\n codigo: 6,\r\n descripcion: '# 6',\r\n },\r\n {\r\n codigo: 7,\r\n descripcion: '# 7',\r\n },\r\n {\r\n codigo: 8,\r\n descripcion: '# 8',\r\n },\r\n {\r\n codigo: 9,\r\n descripcion: '# 9',\r\n },\r\n {\r\n codigo: 10,\r\n descripcion: 'PRESIDENCIA',\r\n },\r\n {\r\n codigo: 11,\r\n descripcion: 'VICEPRESIDENCIA',\r\n },\r\n {\r\n codigo: 12,\r\n descripcion: 'SECRETARIO(A)',\r\n },\r\n {\r\n codigo: 13,\r\n descripcion: 'SUBSECRETARIO(A)',\r\n },\r\n {\r\n codigo: 14,\r\n descripcion: 'TESORERO(A)',\r\n },\r\n {\r\n codigo: 15,\r\n descripcion: 'SUBTESORERO(A)',\r\n },\r\n {\r\n codigo: 16,\r\n descripcion: 'FISCAL PROPIETARIO',\r\n },\r\n {\r\n codigo: 17,\r\n descripcion: 'FISCAL SUPLENTE',\r\n },\r\n];\r\n\r\nconst puestosComiteCantonal = [\r\n {\r\n codigo: 1,\r\n descripcion: '# 1 (PRESID)',\r\n },\r\n {\r\n codigo: 2,\r\n descripcion: '# 2',\r\n },\r\n {\r\n codigo: 3,\r\n descripcion: '# 3',\r\n },\r\n {\r\n codigo: 4,\r\n descripcion: '# 4',\r\n },\r\n {\r\n codigo: 5,\r\n descripcion: '# 5',\r\n },\r\n {\r\n codigo: 6,\r\n descripcion: '# 6',\r\n },\r\n {\r\n codigo: 7,\r\n descripcion: '# 7',\r\n },\r\n];\r\n\r\nconst puestosComiteEjecutivoCantonal = [\r\n {\r\n codigo: 1,\r\n descripcion: 'PRESIDENCIA',\r\n },\r\n {\r\n codigo: 2,\r\n descripcion: 'VICEPRESIDENCIA',\r\n },\r\n {\r\n codigo: 3,\r\n descripcion: 'SECRETARIO(A)',\r\n },\r\n {\r\n codigo: 4,\r\n descripcion: 'SUBSECRETARIO(A)',\r\n },\r\n {\r\n codigo: 5,\r\n descripcion: 'TESORERO(A)',\r\n },\r\n {\r\n codigo: 6,\r\n descripcion: 'SUBTESORERO(A)',\r\n },\r\n {\r\n codigo: 7,\r\n descripcion: 'FISCAL PROPIETARIO(A)',\r\n },\r\n];\r\n\r\nconst estadosDistritales = [\r\n {\r\n codigo: 2,\r\n estado: 'Registrada',\r\n },\r\n {\r\n codigo: 3,\r\n estado: 'Confección',\r\n },\r\n {\r\n codigo: 4,\r\n estado: 'Prevención',\r\n },\r\n {\r\n codigo: 5,\r\n estado: 'Anulada',\r\n },\r\n];\r\n\r\nconst movimientosCantonales = [\r\n {\r\n codigo: 1,\r\n movimiento: 'Mujeres',\r\n },\r\n {\r\n codigo: 2,\r\n movimiento: 'Juventud',\r\n },\r\n {\r\n codigo: 3,\r\n movimiento: 'Cooperativo',\r\n },\r\n {\r\n codigo: 4,\r\n movimiento: 'Trabajadores',\r\n },\r\n];\r\n\r\nconst movimientosSectoriales = [\r\n {\r\n codigo: 2,\r\n sector: 'Profesional',\r\n },\r\n {\r\n codigo: 3,\r\n sector: 'Educativo',\r\n },\r\n {\r\n codigo: 4,\r\n sector: 'Empesarial',\r\n },\r\n];\r\n\r\nconst puestosMesa = [\r\n {\r\n codigo: 3,\r\n descripcion: 'Propietario',\r\n },\r\n {\r\n codigo: 4,\r\n descripcion: 'Suplente',\r\n },\r\n];\r\n\r\nconst puestosFiscalesMesa = [\r\n {\r\n codigo: 5,\r\n descripcion: 'Propietario',\r\n },\r\n {\r\n codigo: 6,\r\n descripcion: 'Suplente',\r\n },\r\n];\r\n\r\nconst puestosFiscalGeneral = [\r\n {\r\n codigo: 7,\r\n descripcion: 'Fiscal General',\r\n },\r\n];\r\n\r\nconst puestosNacionales = [\r\n {\r\n codigo: 1,\r\n descripcion: 'Presidente',\r\n },\r\n {\r\n codigo: 2,\r\n descripcion: 'Vicepresidente',\r\n },\r\n {\r\n codigo: 3,\r\n descripcion: 'Secretario',\r\n },\r\n];\r\n\r\nconst puestosRegistrosElectorales = [\r\n {\r\n codigo: 1,\r\n descripcion: 'Presid.',\r\n },\r\n {\r\n codigo: 2,\r\n descripcion: 'Secre.',\r\n },\r\n];\r\n\r\nconst consts = {\r\n distritalesInitValues,\r\n cantonalesInitValues,\r\n provincialesInitValues,\r\n nacionalesInitValues,\r\n presidenteSectorInitValues,\r\n sectorialesInitValues,\r\n initListDelegados,\r\n initListComite,\r\n initListCandidatosFiscalia,\r\n initListComiteCantonal,\r\n initlistComiteProvincial,\r\n initListComiteNacional,\r\n initListComiteSectorial,\r\n initListAddDeposito,\r\n initlistPresiSector,\r\n initlistPapeletaSector,\r\n delegadosMOrder,\r\n delegadosFOrder,\r\n comiteMOrder,\r\n comiteFOrder,\r\n comiteCantonalMOrder,\r\n comiteCantonalFOrder,\r\n comiteProvincialMOrder,\r\n comiteProvincialFOrder,\r\n comiteNacionalMOrder,\r\n comiteNacionalFOrder,\r\n presiSectorMOrder,\r\n presiSectorFOrder,\r\n comiteSectorFOrder,\r\n comiteSectorMOrder,\r\n estadosDistritales,\r\n movimientosCantonales,\r\n movimientosSectoriales,\r\n puestosMesa,\r\n puestosFiscalesMesa,\r\n puestosFiscalGeneral,\r\n puestosNacionales,\r\n puestosRegistrosElectorales,\r\n puestosDelegadosDistritales,\r\n puestosComiteCantonal,\r\n delegadosCantonalesInitValues,\r\n initListCandidatosFiscaliaEC,\r\n initListDelegadosComiteEjecutivo,\r\n comiteEjecutivoCantonalInitValues,\r\n puestosComiteEjecutivoCantonal,\r\n};\r\n\r\nexport default consts;\r\n","import React from 'react';\r\nimport TextField from '@material-ui/core/TextField';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport { Grid } from '@material-ui/core';\r\nimport PropTypes from 'prop-types';\r\n\r\nconst useStyles = makeStyles(() => ({\r\n root: {\r\n flexGrow: 1,\r\n '& .MuiTextField-root': {\r\n border: 0,\r\n marginBottom: '20px',\r\n width: '25ch',\r\n },\r\n '& .MuiOutlinedInput-input': {\r\n padding: '10px',\r\n },\r\n },\r\n filterInput: {\r\n marginBottom: '0 !important',\r\n paddingLeft: '10px !important',\r\n },\r\n grid: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'flex-start',\r\n paddingRight: '0 !important',\r\n paddingBottom: '0 !important',\r\n },\r\n}));\r\n\r\nconst RegistrosFilter = props => {\r\n const classes = useStyles();\r\n const { config } = props;\r\n\r\n const renderFilters = () => {\r\n return (\r\n \r\n \r\n {config.map(currentFilter => (\r\n \r\n {\r\n if (\r\n typeof currentFilter.action ===\r\n 'function'\r\n ) {\r\n await currentFilter.action(event);\r\n }\r\n }}\r\n />\r\n \r\n ))}\r\n \r\n \r\n );\r\n };\r\n\r\n return (\r\n \r\n \r\n {renderFilters()}\r\n \r\n \r\n );\r\n};\r\n\r\nRegistrosFilter.propTypes = {\r\n config: PropTypes.arrayOf(\r\n PropTypes.shape({\r\n label: PropTypes.string.isRequired,\r\n action: PropTypes.func.isRequired,\r\n value: PropTypes.string.isRequired,\r\n responsiveSize: PropTypes.shape({\r\n xs: PropTypes.number.isRequired,\r\n sm: PropTypes.number,\r\n md: PropTypes.number,\r\n lg: PropTypes.number,\r\n }),\r\n inputId: PropTypes.string.isRequired,\r\n }),\r\n ).isRequired,\r\n};\r\n\r\nexport default RegistrosFilter;\r\n","import React from 'react';\r\nimport Slide from '@material-ui/core/Slide';\r\nimport { Button, Divider } from '@material-ui/core';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport DialogActions from '@material-ui/core/DialogActions';\r\nimport DialogContent from '@material-ui/core/DialogContent';\r\nimport DialogContentText from '@material-ui/core/DialogContentText';\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\n\r\nconst Transition = React.forwardRef(function Transition(\r\n tProps,\r\n ref,\r\n) {\r\n // eslint-disable-next-line react/jsx-props-no-spreading\r\n return ;\r\n});\r\n\r\nconst useStyles = makeStyles(() => ({\r\n global: {\r\n padding: '12px 24px',\r\n },\r\n divider: {\r\n backgroundColor: '#008945',\r\n margin: '0 auto',\r\n padding: 1,\r\n width: '96%',\r\n },\r\n removeBtn: {\r\n border: '1px solid',\r\n borderColor: '#CC0B00',\r\n color: '#CC0B00',\r\n '&:hover, &:focus': {\r\n backgroundColor: '#DA2229 !important',\r\n color: '#fff !important',\r\n },\r\n '&:disabled': {\r\n borderColor: 'rgba(0, 0, 0, 0.26)',\r\n },\r\n },\r\n submitBtn: {},\r\n simpleBtn: {\r\n border: '1px solid',\r\n borderColor: '#028945',\r\n color: '#028945',\r\n '&:hover, &:focus': {\r\n backgroundColor: '#028945 !important',\r\n color: '#fff !important',\r\n },\r\n },\r\n}));\r\n\r\nconst PLNDialog = props => {\r\n const classes = useStyles();\r\n const { bodymessage, title, buttons } = props;\r\n\r\n const colors = {\r\n submit: classes.submitBtn,\r\n remove: classes.removeBtn,\r\n simple: classes.simpleBtn,\r\n };\r\n\r\n const renderButtons = () => {\r\n if (buttons.length > 0) {\r\n return buttons.map(button => {\r\n return (\r\n {\r\n _e.preventDefault();\r\n\r\n if (\r\n typeof button.clickHander === 'function'\r\n ) {\r\n button.clickHander();\r\n } else {\r\n throw new Error('Click event is missing!');\r\n }\r\n }}\r\n >\r\n {button.title}\r\n \r\n );\r\n });\r\n }\r\n\r\n return <>;\r\n };\r\n\r\n return (\r\n \r\n \r\n {title}\r\n \r\n \r\n \r\n \r\n {bodymessage}\r\n \r\n \r\n \r\n {renderButtons()}\r\n \r\n \r\n );\r\n};\r\n\r\nPLNDialog.propTypes = {\r\n bodymessage: PropTypes.string.isRequired,\r\n title: PropTypes.string.isRequired,\r\n buttons: PropTypes.instanceOf(Array).isRequired,\r\n};\r\n\r\nexport default PLNDialog;\r\n","/* eslint-disable max-len */\nimport { jsPDF } from 'jspdf';\nimport 'jspdf-autotable';\nimport { getLogoPLN } from './Logo';\nimport { splitInGroupOf } from './Utils';\n\nconst getTimeStamp = () => {\n const now = new Date();\n return `${\n now.getMonth() + 1\n }/${now.getDate()}/${now.getFullYear()} ${now.getHours()}:${\n now.getMinutes() < 10\n ? `0${now.getMinutes()}`\n : now.getMinutes()\n }:${\n now.getSeconds() < 10\n ? `0${now.getSeconds()}`\n : now.getSeconds()\n }`;\n};\n\n// eslint-disable-next-line import/prefer-default-export\nexport const generateComprobante = (\n titleComprobante,\n generalInfo,\n candidatosInfo,\n gestorInfo,\n montosInfo,\n) => {\n // eslint-disable-next-line new-cap\n const doc = new jsPDF('p', 'px', 'letter');\n\n const imgData = getLogoPLN();\n doc.addImage(imgData, 'JPEG', 30, 50);\n\n // ENCABEZADO DEL DOCUMENTO\n doc.setFont('times', 'bold');\n doc.text(200, 45, 'PARTIDO LIBERACIÓN NACIONAL');\n doc.setFontSize(12);\n doc.text(200, 60, 'Tribunal de Elecciones Internas');\n doc.setFont('times', 'normal');\n doc.setFontSize(10);\n doc.text(200, 75, `${titleComprobante} Periodo 2021`);\n doc.setFont('times', 'normal');\n doc.setFontSize(12);\n doc.text(200, 90, 'Comprobante de Inscripción');\n\n const columns = ['PROVINCIA', 'CANTÓN', 'N° PAPELETA'];\n\n const datos1 = [\n [\n generalInfo.provincia,\n generalInfo.canton,\n generalInfo.papeleta,\n ],\n ];\n\n const typeTable1 = 'grid';\n const showTheHeader = true;\n\n doc.autoTable({\n head: [columns],\n body: datos1,\n theme: typeTable1,\n startY: 110,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'wrap',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n 1: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n 2: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n 3: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n fontSize: 30,\n },\n },\n headStyles: {\n fillColor: [238, 238, 238],\n fontSize: 9,\n textColor: 0,\n halign: 'center',\n },\n showHead: showTheHeader,\n margin: { left: 20 },\n });\n\n const columns2 = ['Fecha', 'Consecutivo'];\n const datos2 = [\n [\n `FECHA INSCRIPCIÓN: ${generalInfo.fecha}`,\n `CONSECUTIVO: ${generalInfo.consecutivo}`,\n ],\n ];\n\n doc.autoTable({\n head: [columns2],\n body: datos2,\n theme: typeTable1,\n startY: doc.lastAutoTable.finalY + 0,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'wrap',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n 1: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n },\n headStyles: {\n fillColor: [204, 204, 204],\n fontSize: 9,\n textColor: 0,\n halign: 'center',\n },\n showHead: false,\n margin: { left: 20 },\n });\n\n const block1 = ['Title'];\n const titleBlock = [\n [\n 'CANDIDATOS(AS) A DELEGADOS(AS) ANTE EL ÓRGANO CONSULTIVO NACIONAL',\n ],\n ];\n\n doc.autoTable({\n head: [block1],\n body: titleBlock,\n theme: typeTable1,\n startY: doc.lastAutoTable.finalY + 10,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'wrap',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'center',\n valign: 'middle',\n fontStyle: 'bold',\n textColor: 0,\n fillColor: [221, 221, 221],\n },\n },\n headStyles: {\n fillColor: [221, 221, 221],\n fontSize: 9,\n textColor: 0,\n halign: 'center',\n },\n showHead: false,\n margin: { left: 20 },\n });\n\n const headerblock1 = ['LUGAR', 'CEDULA', 'NOMBRE'];\n\n doc.autoTable({\n head: [headerblock1],\n body: candidatosInfo.delegados,\n theme: typeTable1,\n startY: doc.lastAutoTable.finalY,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'wrap',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n 1: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n 2: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n },\n headStyles: {\n fillColor: [238, 238, 238],\n fontSize: 9,\n textColor: 0,\n halign: 'center',\n },\n showHead: true,\n margin: { left: 20 },\n });\n\n const block4 = ['Gestor'];\n const titleBlock4 = [\n ['GESTOR ANTE EL TRIBUNAL DE ELECCIONES INTERNAS'],\n ];\n\n doc.autoTable({\n head: [block4],\n body: titleBlock4,\n theme: typeTable1,\n startY: doc.lastAutoTable.finalY + 10,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'wrap',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'center',\n valign: 'middle',\n fontStyle: 'bold',\n textColor: 0,\n fillColor: [221, 221, 221],\n },\n },\n headStyles: {\n fillColor: [221, 221, 221],\n fontSize: 9,\n textColor: 0,\n fontWeight: 'bold',\n halign: 'center',\n },\n showHead: false,\n margin: { left: 20 },\n });\n\n const headerblock4 = ['NOMBRE', 'CÉDULA'];\n const blankFields = [\n ['NOMBRE', gestorInfo.cedula],\n ['CÉDULA', gestorInfo.nombre],\n ];\n\n doc.autoTable({\n head: [headerblock4],\n body: blankFields,\n theme: typeTable1,\n startY: doc.lastAutoTable.finalY,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'wrap',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'center',\n valign: 'middle',\n fontStyle: 'bold',\n textColor: 0,\n fillColor: [238, 238, 238],\n },\n 1: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n },\n headStyles: {\n fillColor: [204, 204, 204],\n fontSize: 9,\n textColor: 0,\n halign: 'center',\n },\n showHead: false,\n margin: { left: 20 },\n });\n\n const block5 = ['Total'];\n const titleBlock5 = [\n ['TOTAL A CANCELAR EN LA INSCRIPCIÓN'],\n ];\n\n doc.autoTable({\n head: [block5],\n body: titleBlock5,\n theme: typeTable1,\n startY: doc.lastAutoTable.finalY + 10,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'wrap',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'center',\n valign: 'middle',\n fontStyle: 'bold',\n textColor: 0,\n fillColor: [221, 221, 221],\n },\n },\n headStyles: {\n fillColor: [221, 221, 221],\n fontSize: 9,\n textColor: 0,\n fontWeight: 'bold',\n halign: 'center',\n },\n showHead: false,\n margin: { left: 20 },\n });\n\n const headerblock5 = ['NOMBRE', 'CÉDULA'];\n const blankFields2 = [\n ['INCRIPCIÓN DE PAPELETA', montosInfo.papeleta],\n ['MEMBRESÍAS', montosInfo.membresia],\n ['TOTAL', montosInfo.total],\n ];\n\n doc.autoTable({\n head: [headerblock5],\n body: blankFields2,\n theme: typeTable1,\n startY: doc.lastAutoTable.finalY,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'wrap',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'center',\n valign: 'middle',\n fontStyle: 'bold',\n textColor: 0,\n fillColor: [238, 238, 238],\n },\n 1: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n },\n headStyles: {\n fillColor: [204, 204, 204],\n fontSize: 9,\n textColor: 0,\n halign: 'center',\n },\n showHead: false,\n margin: { left: 20 },\n });\n\n const fileTS = getTimeStamp();\n doc.save(\n `COMPROBANTE-DELEGADOS-CANTONALES-${fileTS}.pdf`,\n );\n};\n\nexport const generateComprobanteComiteEjecutivoCantonal = (\n titleComprobante,\n generalInfo,\n candidatosInfo,\n gestorInfo,\n montosInfo,\n) => {\n // eslint-disable-next-line new-cap\n const doc = new jsPDF('p', 'px', 'letter');\n\n const imgData = getLogoPLN();\n doc.addImage(imgData, 'JPEG', 30, 50);\n\n // ENCABEZADO DEL DOCUMENTO\n doc.setFont('times', 'bold');\n doc.text(200, 45, 'PARTIDO LIBERACIÓN NACIONAL');\n doc.setFontSize(12);\n doc.text(200, 60, 'Tribunal de Elecciones Internas');\n doc.setFont('times', 'normal');\n doc.text(200, 75, `${titleComprobante} Periodo 2021`);\n doc.setFont('times', 'normal');\n doc.text(200, 90, 'Comprobante de Inscripción');\n\n const columns = ['PROVINCIA', 'CANTÓN', 'N° PAPELETA'];\n\n const datos1 = [\n [\n generalInfo.provincia,\n generalInfo.canton,\n generalInfo.papeleta,\n ],\n ];\n\n const typeTable1 = 'grid';\n const showTheHeader = true;\n\n doc.autoTable({\n head: [columns],\n body: datos1,\n theme: typeTable1,\n startY: 110,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'wrap',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n 1: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n 2: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n },\n headStyles: {\n fillColor: [238, 238, 238],\n fontSize: 9,\n textColor: 0,\n halign: 'center',\n },\n showHead: showTheHeader,\n margin: { left: 20 },\n });\n\n const columns2 = ['Fecha', 'Consecutivo'];\n const datos2 = [\n [\n `FECHA INSCRIPCIÓN: ${generalInfo.fecha}`,\n `CONSECUTIVO: ${generalInfo.consecutivo}`,\n ],\n ];\n\n doc.autoTable({\n head: [columns2],\n body: datos2,\n theme: typeTable1,\n startY: doc.lastAutoTable.finalY + 0,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'wrap',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n 1: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n },\n headStyles: {\n fillColor: [204, 204, 204],\n fontSize: 9,\n textColor: 0,\n halign: 'center',\n },\n showHead: false,\n margin: { left: 20 },\n });\n\n const block1 = ['Title'];\n const titleBlock = [\n ['CANDIDATOS(AS) AL COMITÉ EJECUTIVO CANTONAL'],\n ];\n\n doc.autoTable({\n head: [block1],\n body: titleBlock,\n theme: typeTable1,\n startY: doc.lastAutoTable.finalY + 10,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'wrap',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'center',\n valign: 'middle',\n fontStyle: 'bold',\n textColor: 0,\n fillColor: [221, 221, 221],\n },\n },\n headStyles: {\n fillColor: [221, 221, 221],\n fontSize: 9,\n textColor: 0,\n halign: 'center',\n },\n showHead: false,\n margin: { left: 20 },\n });\n\n const headerblock1 = ['LUGAR', 'CEDULA', 'NOMBRE'];\n\n doc.autoTable({\n head: [headerblock1],\n body: candidatosInfo.delegados,\n theme: typeTable1,\n startY: doc.lastAutoTable.finalY,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'wrap',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n 1: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n 2: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n },\n headStyles: {\n fillColor: [238, 238, 238],\n fontSize: 9,\n textColor: 0,\n halign: 'center',\n },\n showHead: true,\n margin: { left: 20 },\n });\n\n const block3 = ['Title'];\n const titleBlock3 = [['CANDIDATOS(AS) PARA LA FISCALÍA']];\n\n doc.autoTable({\n head: [block3],\n body: titleBlock3,\n theme: typeTable1,\n startY: doc.lastAutoTable.finalY + 10,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'wrap',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'center',\n valign: 'middle',\n fontStyle: 'bold',\n textColor: 0,\n fillColor: [221, 221, 221],\n },\n },\n headStyles: {\n fillColor: [221, 221, 221],\n fontSize: 9,\n textColor: 0,\n halign: 'center',\n },\n showHead: false,\n margin: { left: 20 },\n });\n\n doc.autoTable({\n head: [headerblock1],\n body: candidatosInfo.fiscales,\n theme: typeTable1,\n startY: doc.lastAutoTable.finalY,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'wrap',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n 1: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n 2: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n },\n headStyles: {\n fillColor: [238, 238, 238],\n fontSize: 9,\n textColor: 0,\n halign: 'center',\n },\n showHead: true,\n margin: { left: 20 },\n });\n\n const block4 = ['Gestor'];\n const titleBlock4 = [\n ['GESTOR ANTE EL TRIBUNAL DE ELECCIONES INTERNAS'],\n ];\n\n doc.autoTable({\n head: [block4],\n body: titleBlock4,\n theme: typeTable1,\n startY: doc.lastAutoTable.finalY + 10,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'wrap',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'center',\n valign: 'middle',\n fontStyle: 'bold',\n textColor: 0,\n fillColor: [221, 221, 221],\n },\n },\n headStyles: {\n fillColor: [221, 221, 221],\n fontSize: 9,\n textColor: 0,\n fontWeight: 'bold',\n halign: 'center',\n },\n showHead: false,\n margin: { left: 20 },\n });\n\n const headerblock4 = ['NOMBRE', 'CÉDULA'];\n const blankFields = [\n ['NOMBRE', gestorInfo.cedula],\n ['CÉDULA', gestorInfo.nombre],\n ];\n\n doc.autoTable({\n head: [headerblock4],\n body: blankFields,\n theme: typeTable1,\n startY: doc.lastAutoTable.finalY,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'wrap',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'center',\n valign: 'middle',\n fontStyle: 'bold',\n textColor: 0,\n fillColor: [238, 238, 238],\n },\n 1: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n },\n headStyles: {\n fillColor: [204, 204, 204],\n fontSize: 9,\n textColor: 0,\n halign: 'center',\n },\n showHead: false,\n margin: { left: 20 },\n });\n\n const block5 = ['Total'];\n const titleBlock5 = [\n ['TOTAL A CANCELAR EN LA INSCRIPCIÓN'],\n ];\n\n doc.autoTable({\n head: [block5],\n body: titleBlock5,\n theme: typeTable1,\n startY: doc.lastAutoTable.finalY + 10,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'wrap',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'center',\n valign: 'middle',\n fontStyle: 'bold',\n textColor: 0,\n fillColor: [221, 221, 221],\n },\n },\n headStyles: {\n fillColor: [221, 221, 221],\n fontSize: 9,\n textColor: 0,\n fontWeight: 'bold',\n halign: 'center',\n },\n showHead: false,\n margin: { left: 20 },\n });\n\n const headerblock5 = ['NOMBRE', 'CÉDULA'];\n const blankFields2 = [\n ['INCRIPCIÓN DE PAPELETA', montosInfo.papeleta],\n ['MEMBRESÍAS', montosInfo.membresia],\n ['TOTAL', montosInfo.total],\n ];\n\n doc.autoTable({\n head: [headerblock5],\n body: blankFields2,\n theme: typeTable1,\n startY: doc.lastAutoTable.finalY,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'wrap',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'center',\n valign: 'middle',\n fontStyle: 'bold',\n textColor: 0,\n fillColor: [238, 238, 238],\n },\n 1: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n },\n headStyles: {\n fillColor: [204, 204, 204],\n fontSize: 9,\n textColor: 0,\n halign: 'center',\n },\n showHead: false,\n margin: { left: 20 },\n });\n\n const fileTS = getTimeStamp();\n doc.save(\n `COMPROBANTE-COMITE-EJECUTIVO-CANTONAL-${fileTS}.pdf`,\n );\n};\n\nexport const generatePrevencion = (\n idPrevencion,\n dataPapeleta,\n gestorInfo,\n) => {\n // eslint-disable-next-line new-cap\n const doc = new jsPDF('p', 'px', 'letter');\n\n const imgData = getLogoPLN();\n doc.addImage(imgData, 'JPEG', 30, 50);\n\n // ENCABEZADO DEL DOCUMENTO\n doc.setFont('times', 'bold');\n doc.text(200, 45, 'PARTIDO LIBERACIÓN NACIONAL');\n doc.setFontSize(12);\n doc.text(200, 60, 'Tribunal de Elecciones Internas');\n doc.setFont('times', 'normal');\n doc.text(200, 75, `PREVENCIÓN DE SUBSANACIONES`);\n doc.setFont('times', 'bold');\n doc.text(200, 90, `Prevención: ${idPrevencion}`);\n doc.setFont('times', 'normal');\n\n const blockText = ['Title'];\n const titleText = [\n [\n `Se procede a PREVENIR la subsanación de vicios, errores u omisiones en el proceso de inscripción de candidaturas de manera automática. Se le informa al (la) señor(a) gestor(a):`,\n ],\n ];\n\n doc.autoTable({\n head: [blockText],\n body: titleText,\n theme: 'plain',\n startY: 115,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'auto',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'left',\n valign: 'middle',\n fontStyle: 'normal',\n overflow: 'linebreak',\n cellWidth: 'auto',\n fontSize: 12,\n textColor: 0,\n fillColor: [256, 256, 256],\n },\n },\n headStyles: {\n fillColor: [221, 221, 221],\n fontSize: 9,\n textColor: 0,\n halign: 'left',\n },\n showHead: false,\n margin: { left: 20 },\n });\n\n const typeTable1 = 'grid';\n\n const columns2 = ['NOMBRE', 'CEDULA'];\n const datos2 = [[gestorInfo.cedula, gestorInfo.nombre]];\n\n doc.autoTable({\n head: [columns2],\n body: datos2,\n theme: typeTable1,\n startY: 145,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'wrap',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n 1: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n },\n headStyles: {\n fillColor: [204, 204, 204],\n fontSize: 9,\n textColor: 0,\n halign: 'center',\n },\n showHead: true,\n margin: { left: 20 },\n });\n\n const block1 = ['Title'];\n const titleBlock = [\n [\n `Que, verificada la documentación respectiva, ha sido detectado el faltante de los siguientes requisitos en la inscripción:`,\n ],\n ];\n\n doc.autoTable({\n head: [block1],\n body: titleBlock,\n theme: 'plain',\n startY: doc.lastAutoTable.finalY + 10,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'auto',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'left',\n valign: 'middle',\n fontStyle: 'normal',\n overflow: 'linebreak',\n cellWidth: 'auto',\n fontSize: 12,\n textColor: 0,\n fillColor: [256, 256, 256],\n },\n },\n headStyles: {\n fillColor: [221, 221, 221],\n fontSize: 9,\n textColor: 0,\n halign: 'left',\n },\n showHead: false,\n margin: { left: 20 },\n });\n\n const headerblock1 = [\n 'PAPELETA',\n 'CONSECUTIVO',\n 'NOTIFICACIÓN',\n ];\n\n const papeletaInfo = [\n [\n dataPapeleta.title,\n dataPapeleta.consecutivo,\n dataPapeleta.fecha,\n ],\n ];\n\n doc.autoTable({\n head: [headerblock1],\n body: papeletaInfo,\n theme: typeTable1,\n startY: doc.lastAutoTable.finalY,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'wrap',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n 1: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n 2: {\n halign: 'center',\n valign: 'middle',\n fillColor: [255, 255, 255],\n },\n },\n headStyles: {\n fillColor: [238, 238, 238],\n fontSize: 9,\n textColor: 0,\n halign: 'center',\n },\n showHead: true,\n margin: { left: 20 },\n });\n\n const block4 = ['MID TITLE'];\n const titleBlock4 = [\n [\n 'SE HALLÓ QUE: Se debe registrar depósito de la inscripción.',\n ],\n ];\n\n doc.autoTable({\n head: [block4],\n body: titleBlock4,\n theme: 'plain',\n startY: doc.lastAutoTable.finalY + 10,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'wrap',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'center',\n valign: 'middle',\n fontStyle: 'bold',\n fontSize: 12,\n textColor: 0,\n fillColor: [256, 256, 256],\n },\n },\n headStyles: {\n fillColor: [221, 221, 221],\n fontSize: 9,\n textColor: 0,\n fontWeight: 'bold',\n halign: 'center',\n },\n showHead: false,\n margin: { left: 20 },\n });\n\n const block5 = ['FINAL TEXT'];\n const titleBlock5 = [\n [\n 'Se tendrá por notificada esta prevención a la persona que materialmente solicite la inscripción, sin importar que sea o no el gestor de la candidatura. Se advierte que la omisión de cumplir con lo aquí prevenido, o su cumplimiento fuera del plazo especificado (3 días hábiles al terminar el periodo de inscripciones), conlleva la denegatoria de la inscripción de la candidatura.',\n ],\n ];\n\n doc.autoTable({\n head: [block5],\n body: titleBlock5,\n theme: 'plain',\n startY: doc.lastAutoTable.finalY + 10,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'auto',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'left',\n valign: 'middle',\n cellWidth: 'auto',\n fontStyle: 'normal',\n fontSize: 12,\n textColor: 0,\n fillColor: [256, 256, 256],\n },\n },\n headStyles: {\n fillColor: [221, 221, 221],\n fontSize: 9,\n textColor: 0,\n fontWeight: 'bold',\n halign: 'left',\n },\n showHead: false,\n margin: { left: 20 },\n });\n\n const blockFooter = ['Footer'];\n const titleBlockFooter = [\n [\n 'PLNDigital.com 2021 Email: consultas@plndigital.com PLN; Mata Redonda, 125m O. del edificio del M.A.G., Casa Liberacionista \"José Figueres Ferrer\" Tel: (506)2549-5500. Aptdo:10051-1000 San José. Desarrollado por Corporación DSI S.A. http://www.corpodsi.com',\n ],\n ];\n\n doc.autoTable({\n head: [blockFooter],\n body: titleBlockFooter,\n theme: 'plain',\n startY: doc.lastAutoTable.finalY + 200,\n styles: {\n overflow: 'linebreak',\n cellWidth: 'auto',\n font: 'times',\n },\n columnStyles: {\n 0: {\n halign: 'center',\n valign: 'middle',\n cellWidth: 'auto',\n fontStyle: 'normal',\n fontSize: 9,\n textColor: 0,\n fillColor: [256, 256, 256],\n },\n },\n headStyles: {\n fillColor: [221, 221, 221],\n fontSize: 9,\n textColor: 0,\n fontWeight: 'bold',\n halign: 'center',\n },\n showHead: false,\n margin: { left: 20 },\n });\n\n const fileTS = getTimeStamp();\n doc.save(`COMPROBANTE-PREVENCION-${fileTS}.pdf`);\n};\n\nexport const generateGafete = (\n title,\n dataGafete,\n typeGafete,\n) => {\n const imgData = getLogoPLN();\n // eslint-disable-next-line new-cap\n const doc = new jsPDF('l', 'px', 'letter');\n\n const nestedTableCell = {\n content: '',\n styles: {\n minCellHeight: 165,\n },\n };\n\n const gafetesXHoja = splitInGroupOf(dataGafete, 4);\n\n // console.log(gafetesXHoja);\n\n const infoGafetes = gafetesXHoja;\n const totalPaginas = infoGafetes.length - 1;\n for (let pG = 0; pG < infoGafetes.length; pG++) {\n const pageXGafete = infoGafetes[pG];\n // console.log(pageXGafete);\n let columnsGafete = [['A']];\n let tableWG = 267;\n if (pageXGafete.length >= 2) {\n columnsGafete = [['A', 'B']];\n tableWG = 534;\n }\n doc.autoTable({\n theme: 'grid',\n head: columnsGafete,\n body: [[nestedTableCell]],\n foot: columnsGafete,\n startY: 20,\n showHead: false,\n showFoot: false,\n tableWidth: tableWG,\n didDrawCell: dataG => {\n if (\n dataG.row.index === 0 &&\n dataG.row.section === 'body'\n ) {\n const titleText = [\n [`PARTIDO LIBERACIÓN NACIONAL`],\n ];\n doc.addImage(\n imgData,\n 'JPEG',\n dataG.cell.x + 95,\n dataG.cell.y + 5,\n 75,\n 22,\n );\n\n doc.autoTable({\n startY: dataG.cell.y + 35,\n margin: { left: dataG.cell.x + 2 },\n tableWidth: dataG.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n halign: 'center',\n fontStyle: 'bold',\n },\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n },\n },\n columns: [\n { dataKey: 'Title', header: 'Title' },\n ],\n body: titleText,\n showHead: false,\n });\n\n doc.autoTable({\n startY: doc.lastAutoTable.finalY,\n margin: { left: dataG.cell.x + 2 },\n tableWidth: dataG.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n halign: 'center',\n },\n columns: [{ dataKey: 'Name', header: 'Name' }],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n padding: { bottom: 0 },\n },\n },\n body: [\n [pageXGafete[dataG.column.index].nombre],\n ],\n showHead: false,\n });\n\n doc.autoTable({\n startY: doc.lastAutoTable.finalY,\n margin: { left: dataG.cell.x + 2 },\n tableWidth: dataG.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n fontStyle: 'bold',\n halign: 'center',\n },\n columns: [\n {\n dataKey: 'separator1',\n header: 'separator1',\n },\n ],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n fontSize: 8,\n halign: 'left',\n cellPadding: 0,\n margin: { left: 40 },\n },\n },\n body: [\n [\n ' ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯',\n ],\n ],\n showHead: false,\n });\n\n doc.autoTable({\n startY: doc.lastAutoTable.finalY,\n margin: { left: dataG.cell.x + 2 },\n tableWidth: dataG.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n fontStyle: 'bold',\n halign: 'center',\n },\n columns: [\n { dataKey: 'NameLabel', header: 'NameLabel' },\n ],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n cellPadding: 0,\n fontSize: 8,\n },\n },\n body: [[`Nombre ${title}`]],\n showHead: false,\n });\n\n doc.autoTable({\n startY: doc.lastAutoTable.finalY,\n margin: { left: dataG.cell.x + 2 },\n tableWidth: dataG.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n fontStyle: 'bold',\n halign: 'center',\n },\n columns: [\n {\n dataKey: 'CedulaLabel',\n header: 'CedulaLabel',\n },\n ],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n },\n },\n body: [\n [\n `Cédula: ${\n pageXGafete[dataG.column.index].cedula\n }`,\n ],\n ],\n showHead: false,\n });\n\n // Cuando el tipo de gafete no es para Fiscal General\n if (typeGafete !== 3) {\n doc.autoTable({\n startY: doc.lastAutoTable.finalY + 5,\n margin: { left: dataG.cell.x + 2 },\n tableWidth: dataG.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n halign: 'center',\n cellPadding: 0,\n },\n columns: [\n { dataKey: 'Tipo', header: 'Tipo' },\n { dataKey: 'Junta', header: 'Junta' },\n { dataKey: 'Distrito', header: 'Distrito' },\n ],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n padding: { bottom: 0 },\n },\n 1: {\n fillColor: [255, 255, 255],\n padding: { bottom: 0 },\n },\n 2: {\n fillColor: [255, 255, 255],\n padding: { bottom: 0 },\n },\n },\n body: [\n [\n pageXGafete[dataG.column.index].puesto,\n `${pageXGafete[dataG.column.index].jrv}`,\n pageXGafete[dataG.column.index].distrito,\n ],\n ['TIPO', 'JUNTA N°', 'DISTRITO'],\n ],\n showHead: false,\n });\n }\n\n doc.autoTable({\n startY: doc.lastAutoTable.finalY + 10,\n margin: { left: dataG.cell.x + 2 },\n tableWidth: dataG.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n halign: 'center',\n },\n columns: [{ dataKey: 'Name', header: 'Name' }],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n padding: { bottom: 0 },\n },\n },\n body: [['6 de Junio 2021']],\n showHead: false,\n });\n\n doc.autoTable({\n startY: doc.lastAutoTable.finalY,\n margin: { left: dataG.cell.x + 2 },\n tableWidth: dataG.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n fontStyle: 'bold',\n halign: 'center',\n },\n columns: [\n {\n dataKey: 'separator2',\n header: 'separator2',\n },\n ],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n fontSize: 8,\n halign: 'left',\n cellPadding: 0,\n margin: { left: 40 },\n },\n },\n body: [\n [\n ' ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯',\n ],\n ],\n showHead: false,\n });\n\n doc.autoTable({\n startY: doc.lastAutoTable.finalY,\n margin: { left: dataG.cell.x + 2 },\n tableWidth: dataG.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n fontStyle: 'bold',\n halign: 'center',\n },\n columns: [\n { dataKey: 'NameLabel', header: 'NameLabel' },\n ],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n fontSize: 8,\n cellPadding: 0,\n },\n },\n body: [['Fecha de la elección']],\n showHead: false,\n });\n }\n },\n });\n\n if (pageXGafete.length > 3) {\n doc.autoTable({\n startY: doc.lastAutoTable.finalY,\n theme: 'grid',\n head: [['2019', '2020']],\n body: [[nestedTableCell]],\n foot: [['2019', '2020']],\n showHead: false,\n showFoot: false,\n didDrawCell(data) {\n if (\n data.row.index === 0 &&\n data.row.section === 'body'\n ) {\n const titleText = [\n [`PARTIDO LIBERACIÓN NACIONAL`],\n ];\n doc.addImage(\n imgData,\n 'JPEG',\n data.cell.x + 95,\n data.cell.y + 5,\n 75,\n 22,\n );\n\n doc.autoTable({\n startY: data.cell.y + 35,\n margin: { left: data.cell.x + 2 },\n tableWidth: data.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n halign: 'center',\n fontStyle: 'bold',\n },\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n },\n },\n columns: [\n { dataKey: 'Title', header: 'Title' },\n ],\n body: titleText,\n showHead: false,\n });\n\n doc.autoTable({\n startY: doc.lastAutoTable.finalY,\n margin: { left: data.cell.x + 2 },\n tableWidth: data.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n halign: 'center',\n },\n columns: [\n { dataKey: 'Name', header: 'Name' },\n ],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n padding: { bottom: 0 },\n },\n },\n body: [\n [pageXGafete[data.column.index + 2].nombre],\n ],\n showHead: false,\n });\n\n doc.autoTable({\n startY: doc.lastAutoTable.finalY,\n margin: { left: data.cell.x + 2 },\n tableWidth: data.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n fontStyle: 'bold',\n halign: 'center',\n },\n columns: [\n {\n dataKey: 'separator1',\n header: 'separator1',\n },\n ],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n fontSize: 8,\n halign: 'left',\n cellPadding: 0,\n margin: { left: 40 },\n },\n },\n body: [\n [\n ' ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯',\n ],\n ],\n showHead: false,\n });\n\n doc.autoTable({\n startY: doc.lastAutoTable.finalY,\n margin: { left: data.cell.x + 2 },\n tableWidth: data.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n fontStyle: 'bold',\n halign: 'center',\n },\n columns: [\n {\n dataKey: 'NameLabel',\n header: 'NameLabel',\n },\n ],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n cellPadding: 0,\n fontSize: 8,\n },\n },\n body: [[`Nombre ${title}`]],\n showHead: false,\n });\n\n doc.autoTable({\n startY: doc.lastAutoTable.finalY,\n margin: { left: data.cell.x + 2 },\n tableWidth: data.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n fontStyle: 'bold',\n halign: 'center',\n },\n columns: [\n {\n dataKey: 'CedulaLabel',\n header: 'CedulaLabel',\n },\n ],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n },\n },\n body: [\n [\n `Cédula: ${\n pageXGafete[data.column.index + 2]\n .cedula\n }`,\n ],\n ],\n showHead: false,\n });\n // Cuando el tipo de gafete no es para Fiscal General\n if (typeGafete !== 3) {\n doc.autoTable({\n startY: doc.lastAutoTable.finalY + 5,\n margin: { left: data.cell.x + 2 },\n tableWidth: data.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n halign: 'center',\n cellPadding: 0,\n },\n columns: [\n { dataKey: 'Tipo', header: 'Tipo' },\n { dataKey: 'Junta', header: 'Junta' },\n {\n dataKey: 'Distrito',\n header: 'Distrito',\n },\n ],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n padding: { bottom: 0 },\n },\n 1: {\n fillColor: [255, 255, 255],\n padding: { bottom: 0 },\n },\n 2: {\n fillColor: [255, 255, 255],\n padding: { bottom: 0 },\n },\n },\n body: [\n [\n pageXGafete[data.column.index + 2]\n .puesto,\n `${\n pageXGafete[data.column.index + 2].jrv\n }`,\n pageXGafete[data.column.index + 2]\n .distrito,\n ],\n ['TIPO', 'JUNTA N°', 'DISTRITO'],\n ],\n showHead: false,\n });\n }\n doc.autoTable({\n startY: doc.lastAutoTable.finalY + 10,\n margin: { left: data.cell.x + 2 },\n tableWidth: data.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n halign: 'center',\n },\n columns: [\n { dataKey: 'Name', header: 'Name' },\n ],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n padding: { bottom: 0 },\n },\n },\n body: [['6 de Junio 2021']],\n showHead: false,\n });\n\n doc.autoTable({\n startY: doc.lastAutoTable.finalY,\n margin: { left: data.cell.x + 2 },\n tableWidth: data.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n fontStyle: 'bold',\n halign: 'center',\n },\n columns: [\n {\n dataKey: 'separator2',\n header: 'separator2',\n },\n ],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n fontSize: 8,\n halign: 'left',\n cellPadding: 0,\n margin: { left: 40 },\n },\n },\n body: [\n [\n ' ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯',\n ],\n ],\n showHead: false,\n });\n\n doc.autoTable({\n startY: doc.lastAutoTable.finalY,\n margin: { left: data.cell.x + 2 },\n tableWidth: data.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n fontStyle: 'bold',\n halign: 'center',\n },\n columns: [\n {\n dataKey: 'NameLabel',\n header: 'NameLabel',\n },\n ],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n fontSize: 8,\n cellPadding: 0,\n },\n },\n body: [['Fecha de la elección']],\n showHead: false,\n });\n }\n },\n });\n } else if (pageXGafete.length === 3) {\n doc.autoTable({\n startY: doc.lastAutoTable.finalY,\n theme: 'grid',\n head: [['A']],\n body: [[nestedTableCell]],\n foot: [['A']],\n showHead: false,\n showFoot: false,\n tableWidth: 267,\n didDrawCell(data) {\n if (\n data.row.index === 0 &&\n data.row.section === 'body'\n ) {\n const titleText = [\n [`PARTIDO LIBERACIÓN NACIONAL`],\n ];\n doc.addImage(\n imgData,\n 'JPEG',\n data.cell.x + 95,\n data.cell.y + 5,\n 75,\n 22,\n );\n\n doc.autoTable({\n startY: data.cell.y + 35,\n margin: { left: data.cell.x + 2 },\n tableWidth: data.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n halign: 'center',\n fontStyle: 'bold',\n },\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n },\n },\n columns: [\n { dataKey: 'Title', header: 'Title' },\n ],\n body: titleText,\n showHead: false,\n });\n\n doc.autoTable({\n startY: doc.lastAutoTable.finalY,\n margin: { left: data.cell.x + 2 },\n tableWidth: data.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n halign: 'center',\n },\n columns: [\n { dataKey: 'Name', header: 'Name' },\n ],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n padding: { bottom: 0 },\n },\n },\n body: [\n [pageXGafete[data.column.index + 2].nombre],\n ],\n showHead: false,\n });\n\n doc.autoTable({\n startY: doc.lastAutoTable.finalY,\n margin: { left: data.cell.x + 2 },\n tableWidth: data.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n fontStyle: 'bold',\n halign: 'center',\n },\n columns: [\n {\n dataKey: 'separator1',\n header: 'separator1',\n },\n ],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n fontSize: 8,\n halign: 'left',\n cellPadding: 0,\n margin: { left: 40 },\n },\n },\n body: [\n [\n ' ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯',\n ],\n ],\n showHead: false,\n });\n\n doc.autoTable({\n startY: doc.lastAutoTable.finalY,\n margin: { left: data.cell.x + 2 },\n tableWidth: data.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n fontStyle: 'bold',\n halign: 'center',\n },\n columns: [\n {\n dataKey: 'NameLabel',\n header: 'NameLabel',\n },\n ],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n cellPadding: 0,\n fontSize: 8,\n },\n },\n body: [[`Nombre ${title}`]],\n showHead: false,\n });\n\n doc.autoTable({\n startY: doc.lastAutoTable.finalY,\n margin: { left: data.cell.x + 2 },\n tableWidth: data.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n fontStyle: 'bold',\n halign: 'center',\n },\n columns: [\n {\n dataKey: 'CedulaLabel',\n header: 'CedulaLabel',\n },\n ],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n },\n },\n body: [\n [\n `Cédula: ${\n pageXGafete[data.column.index + 2]\n .cedula\n }`,\n ],\n ],\n showHead: false,\n });\n\n // Cuando el tipo de gafete no es para Fiscal General\n if (typeGafete !== 3) {\n doc.autoTable({\n startY: doc.lastAutoTable.finalY + 5,\n margin: { left: data.cell.x + 2 },\n tableWidth: data.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n halign: 'center',\n cellPadding: 0,\n },\n columns: [\n { dataKey: 'Tipo', header: 'Tipo' },\n { dataKey: 'Junta', header: 'Junta' },\n {\n dataKey: 'Distrito',\n header: 'Distrito',\n },\n ],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n padding: { bottom: 0 },\n },\n 1: {\n fillColor: [255, 255, 255],\n padding: { bottom: 0 },\n },\n 2: {\n fillColor: [255, 255, 255],\n padding: { bottom: 0 },\n },\n },\n body: [\n [\n pageXGafete[data.column.index + 2]\n .puesto,\n `${\n pageXGafete[data.column.index + 2].jrv\n }`,\n pageXGafete[data.column.index + 2]\n .distrito,\n ],\n ['TIPO', 'JUNTA N°', 'DISTRITO'],\n ],\n showHead: false,\n });\n }\n\n doc.autoTable({\n startY: doc.lastAutoTable.finalY + 10,\n margin: { left: data.cell.x + 2 },\n tableWidth: data.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n halign: 'center',\n },\n columns: [\n { dataKey: 'Name', header: 'Name' },\n ],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n padding: { bottom: 0 },\n },\n },\n body: [['6 de Junio 2021']],\n showHead: false,\n });\n\n doc.autoTable({\n startY: doc.lastAutoTable.finalY,\n margin: { left: data.cell.x + 2 },\n tableWidth: data.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n fontStyle: 'bold',\n halign: 'center',\n },\n columns: [\n {\n dataKey: 'separator2',\n header: 'separator2',\n },\n ],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n fontSize: 8,\n halign: 'left',\n cellPadding: 0,\n margin: { left: 40 },\n },\n },\n body: [\n [\n ' ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯',\n ],\n ],\n showHead: false,\n });\n\n doc.autoTable({\n startY: doc.lastAutoTable.finalY,\n margin: { left: data.cell.x + 2 },\n tableWidth: data.cell.width - 4,\n styles: {\n maxCellHeight: 4,\n fontStyle: 'bold',\n halign: 'center',\n },\n columns: [\n {\n dataKey: 'NameLabel',\n header: 'NameLabel',\n },\n ],\n columnStyles: {\n 0: {\n fillColor: [255, 255, 255],\n fontSize: 8,\n cellPadding: 0,\n },\n },\n body: [['Fecha de la elección']],\n showHead: false,\n });\n }\n },\n });\n }\n\n if (pG < totalPaginas) {\n doc.addPage();\n }\n }\n\n // doc.addPage();\n\n const fileTS = getTimeStamp();\n doc.save(\n `GAFETES-${title.replace(' ', '-')}-${fileTS}.pdf`,\n );\n};\n","// eslint-disable-next-line import/prefer-default-export\r\nexport const getLogoPLN = () => {\r\n const imgData =\r\n // eslint-disable-next-line max-len\r\n 'data:image/jpeg;base64,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';\r\n return imgData;\r\n};\r\n","/* eslint-disable jsx-a11y/anchor-is-valid */\r\nimport React, { useState, useEffect } from 'react';\r\nimport Lodash from 'lodash';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport { useJwt } from 'react-jwt';\r\nimport BlockIcon from '@material-ui/icons/Block';\r\nimport EditIcon from '@material-ui/icons/Edit';\r\nimport PrintIcon from '@material-ui/icons/Print';\r\nimport CircularProgress from '@material-ui/core/CircularProgress';\r\nimport MacroList from '../MacroList/MacroList';\r\nimport delegadosNoRepresentadosApi from '../../Core/Api/delegadosNoRepresentadosApi';\r\nimport { getDataComprobante } from '../../Core/Api/comprobanteApi';\r\nimport Storage from '../../Storage/Storage';\r\nimport Consts from '../../Core/Consts/Consts';\r\nimport Filters from '../../Components/Filters/RegistrosElectFilter';\r\nimport PLNDialog from '../../Components/PLNDialog/PLNDialog';\r\n\r\nimport { generateComprobante } from '../../Core/Utils/Comprobante';\r\nimport { useCRUDAvailable } from '../../Core/Api/periodoApi';\r\n\r\n// Generate Order Data\r\nfunction createData(_data) {\r\n const filterEstado = Consts.estadosDistritales.filter(\r\n status => {\r\n return status.codigo === _data.ind_estado;\r\n },\r\n );\r\n\r\n return {\r\n consecutivo: _data.num_consecutivo,\r\n province: _data.provincia,\r\n canton: _data.canton,\r\n numero: _data.numero,\r\n cod_estado: filterEstado[0].estado,\r\n cod_papeleta: _data.cod_papeleta,\r\n };\r\n}\r\n\r\nconst heads = [\r\n {\r\n name: 'Consecutivo',\r\n },\r\n {\r\n name: 'Provincia',\r\n },\r\n {\r\n name: 'Cantón',\r\n },\r\n {\r\n name: 'Número',\r\n },\r\n {\r\n name: 'Estado',\r\n },\r\n];\r\n\r\nconst useStyles = makeStyles(() => ({\r\n btnAdd: {\r\n float: 'right',\r\n width: 150,\r\n height: 30,\r\n marginTop: 5,\r\n },\r\n container: {\r\n paddingTop: 40,\r\n paddingBottom: 40,\r\n },\r\n paper: {\r\n padding: 20,\r\n display: 'flex',\r\n overflow: 'auto',\r\n flexDirection: 'column',\r\n },\r\n}));\r\n\r\nexport default function CantonesNoRepresentados() {\r\n // Se valida si esta habilitado CRUD\r\n const isCRUDAvailable = useCRUDAvailable();\r\n\r\n const crudAvailable = Lodash.get(\r\n isCRUDAvailable,\r\n ['data', 'response'],\r\n null,\r\n );\r\n\r\n const classes = useStyles();\r\n const tokenStorage = Storage.instance;\r\n\r\n const { decodedToken } = useJwt(tokenStorage.getToken());\r\n\r\n const [filters, setFilters] = useState({\r\n province: '',\r\n canton: '',\r\n });\r\n\r\n // eslint-disable-next-line no-unused-vars\r\n const [user, setUser] = useState([]);\r\n const [items, setItems] = useState([]);\r\n const [isDataEmpty, setDataEmpty] = useState(false);\r\n const [filteredItems, setFilteredItems] = useState([]); // used for filtering\r\n\r\n const [open, setOpenDialog] = useState(false);\r\n const [isRemoved, setIsRemoved] = useState(false); // used on remove modal\r\n const [removedMsj, setRemoveMsj] = useState(\r\n 'La Papeleta será anulada. ¿Desea proceder?',\r\n );\r\n const [dataRemove, setDataRemove] = React.useState(null);\r\n const [hiddenBtn, setHiddenBtn] = useState(false);\r\n\r\n const getFilterKeys = Object.getOwnPropertyNames(filters);\r\n const TIMING_ON_SEARCH = 900;\r\n\r\n /**\r\n * Filter Items\r\n */\r\n const applyFilters = async () => {\r\n const activeFilters = getFilterKeys.filter(\r\n filter => filters[filter] !== '',\r\n );\r\n\r\n setDataEmpty(true);\r\n\r\n if (activeFilters.length > 0) {\r\n // eslint-disable-next-line no-unused-vars\r\n const dataFiltered = activeFilters.map(myFilter => {\r\n const result = items.filter(_item => {\r\n let currentFilter = _item[myFilter];\r\n if (typeof currentFilter === 'number')\r\n currentFilter = currentFilter.toString();\r\n\r\n return currentFilter\r\n .toLowerCase()\r\n .includes(filters[myFilter].toLowerCase());\r\n });\r\n\r\n setDataEmpty(!result.length > 0);\r\n if (result.length > 0) setFilteredItems(result);\r\n return result;\r\n });\r\n } else {\r\n setFilteredItems(items);\r\n setDataEmpty(false);\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n if (decodedToken) {\r\n setUser(decodedToken);\r\n }\r\n }, [decodedToken]);\r\n\r\n const printComprobante = codPapeleta => {\r\n getDataComprobante({\r\n codPapeleta,\r\n type: 1,\r\n }).then(r => {\r\n const comprobanteData = Lodash.get(\r\n r,\r\n ['data', 'response'],\r\n [],\r\n );\r\n\r\n // console.log(comprobanteData);\r\n // Informacion General\r\n const { generalInfo } = comprobanteData;\r\n\r\n // Informacion Gestor\r\n const gestorInfo = {\r\n cedula: user.num_cedula,\r\n nombre: user.des_nombre,\r\n };\r\n\r\n // Informacion Candidatos\r\n const candidatosInfo = {\r\n delegados: comprobanteData.comite.delegados,\r\n };\r\n\r\n const montoInfo = {\r\n papeleta: comprobanteData.montosInfo.papeleta,\r\n membresia: comprobanteData.montosInfo.membresia,\r\n total: comprobanteData.montosInfo.total,\r\n };\r\n\r\n generateComprobante(\r\n 'ASAMBLEAS DE ÓRGANO CONSULTIVO PROVINCIAL',\r\n generalInfo,\r\n candidatosInfo,\r\n gestorInfo,\r\n montoInfo,\r\n );\r\n });\r\n };\r\n\r\n const listFilters = () => {\r\n return [\r\n {\r\n label: 'Provincia:',\r\n action: async ev => {\r\n const updatedValue = {\r\n province: ev.currentTarget.value,\r\n };\r\n await setFilters({\r\n ...filters,\r\n ...updatedValue,\r\n });\r\n },\r\n value: filters.province,\r\n inputId: 'filter-provincia',\r\n responsiveSize: {\r\n xs: 6,\r\n sm: 3,\r\n },\r\n },\r\n {\r\n label: 'Cantón:',\r\n action: async ev => {\r\n const updatedValue = {\r\n canton: ev.currentTarget.value,\r\n };\r\n await setFilters({\r\n ...filters,\r\n ...updatedValue,\r\n });\r\n },\r\n value: filters.canton,\r\n inputId: 'filter-canton',\r\n responsiveSize: {\r\n xs: 6,\r\n sm: 3,\r\n },\r\n },\r\n ];\r\n };\r\n\r\n /**\r\n * List all actions that a user can do for each item in the list\r\n */\r\n const setActions = () => {\r\n const actions = [];\r\n\r\n if (crudAvailable) {\r\n const actionEdit = {\r\n aria: 'Editar Papeleta',\r\n key: 'edit',\r\n showAction: true,\r\n icon: (\r\n \r\n ),\r\n clickHandler: _item => {\r\n window.location.href = `/cantones-no-representados/edit/${_item.cod_papeleta}`;\r\n },\r\n };\r\n\r\n actions.push(actionEdit);\r\n\r\n const actionDecline = {\r\n aria: 'Anular Papeleta',\r\n key: 'remove',\r\n showAction: true,\r\n icon: (\r\n \r\n ),\r\n clickHandler: _item => {\r\n setDataRemove(_item);\r\n setOpenDialog(true);\r\n },\r\n };\r\n\r\n actions.push(actionDecline);\r\n }\r\n\r\n const actionPrintComprobante = {\r\n aria: 'Imprimir Comprobante',\r\n key: 'imprimir',\r\n showAction: true,\r\n icon: (\r\n \r\n ),\r\n clickHandler: _item => {\r\n printComprobante(_item.cod_papeleta);\r\n },\r\n };\r\n\r\n actions.push(actionPrintComprobante);\r\n\r\n return actions;\r\n };\r\n\r\n /**\r\n * Anular papeleta\r\n */\r\n const declineCantonalesByNum = async () => {\r\n const currentCodPapeleta = dataRemove.cod_papeleta;\r\n\r\n if (currentCodPapeleta && currentCodPapeleta > 0) {\r\n setIsRemoved(true);\r\n\r\n await delegadosNoRepresentadosApi\r\n .actionDeclinePapeleta({\r\n codPapeleta: currentCodPapeleta,\r\n cedulaGestor: decodedToken.num_cedula,\r\n consecutivo: dataRemove.consecutivo,\r\n })\r\n .then(_response => {\r\n const info = _response.data.response;\r\n\r\n if (info === 1 && _response.status === 200) {\r\n setIsRemoved(false);\r\n setHiddenBtn(true);\r\n setRemoveMsj(\r\n `Papeleta: ${currentCodPapeleta} anulada correctamente.`,\r\n );\r\n setTimeout(() => {\r\n setOpenDialog(false);\r\n window.location.href =\r\n '/cantones-no-representados';\r\n }, 3000);\r\n } else {\r\n setHiddenBtn(false);\r\n setRemoveMsj(\r\n 'La operación no se pudo completar. Intente de nuevo.',\r\n );\r\n }\r\n });\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n async function fetchListAPI() {\r\n if (decodedToken) {\r\n await delegadosNoRepresentadosApi\r\n .getDelegadosCantonales(decodedToken.num_cedula)\r\n .then(_response => {\r\n const info = _response.data.response;\r\n\r\n if (info instanceof Object) {\r\n const rowItems = info.map(row => {\r\n return createData(row);\r\n });\r\n\r\n setItems(rowItems);\r\n setFilteredItems(rowItems);\r\n setDataEmpty(false);\r\n } else {\r\n setDataEmpty(true);\r\n }\r\n })\r\n .catch(_error => {\r\n // eslint-disable-next-line no-console\r\n console.log(_error);\r\n });\r\n }\r\n }\r\n\r\n fetchListAPI();\r\n }, [decodedToken]);\r\n\r\n useEffect(() => {\r\n async function proceedFilters() {\r\n await applyFilters();\r\n }\r\n\r\n // if (filteredItems.length > 0) proceedFilters();\r\n\r\n const timeoutId = setTimeout(() => {\r\n if (filteredItems.length > 0) proceedFilters();\r\n }, TIMING_ON_SEARCH);\r\n return () => clearTimeout(timeoutId);\r\n }, [filters]);\r\n\r\n return (\r\n \r\n }\r\n dataEmpty={isDataEmpty}\r\n listName=\"Lista de Papeletas Cantones No Representados\"\r\n uiStylesClasses={classes}\r\n btnConfig={{\r\n name: '+ Registro',\r\n event: () =>\r\n (window.location.href = `/cantones-no-representados/add`),\r\n }}\r\n actionConfig={setActions}\r\n tableHeads={heads}\r\n tableBody={filteredItems}\r\n isCrudAvailable={crudAvailable}\r\n />\r\n {}}\r\n title=\"Anular Papeleta\"\r\n bodymessage={removedMsj}\r\n buttons={\r\n hiddenBtn\r\n ? []\r\n : [\r\n {\r\n actionName: 'cancel',\r\n color: 'simple',\r\n title: 'Cerrar',\r\n clickHander: () => {\r\n setOpenDialog(!open);\r\n },\r\n },\r\n {\r\n actionName: 'delete',\r\n disabled: isRemoved,\r\n color: 'remove',\r\n title: isRemoved ? (\r\n \r\n ) : (\r\n 'Anular'\r\n ),\r\n clickHander: declineCantonalesByNum,\r\n },\r\n ]\r\n }\r\n />\r\n \r\n );\r\n}\r\n","const styles = () => ({\r\n container: {\r\n paddingTop: 40,\r\n paddingBottom: 40,\r\n },\r\n paper: {\r\n padding: 20,\r\n display: 'flex',\r\n overflow: 'auto',\r\n flexDirection: 'column',\r\n },\r\n btnBack: {\r\n float: 'right',\r\n width: 150,\r\n height: 30,\r\n marginTop: 5,\r\n },\r\n btnActions: {\r\n float: 'right',\r\n height: 50,\r\n marginTop: 5,\r\n marginRight: 10,\r\n },\r\n sectionTitle: {\r\n fontSize: '16px',\r\n marginTop: 10,\r\n marginBottom: 10,\r\n padding: 5,\r\n color: '#fff',\r\n borderRadius: 4,\r\n background: '#008945',\r\n },\r\n field: {\r\n border: 'solid thin #ccc',\r\n padding: 20,\r\n background: '#f1f1f1',\r\n },\r\n fieldFilled: {\r\n border: 'solid thin #ccc',\r\n padding: 10,\r\n background: '#f1f1f1',\r\n },\r\n fieldMin: {\r\n border: 'solid thin #ccc',\r\n width: 35,\r\n padding: 20,\r\n textAlign: 'center',\r\n background: '#f1f1f1',\r\n },\r\n fieldMinFilled: {\r\n border: 'solid thin #ccc',\r\n width: 35,\r\n padding: 10,\r\n textAlign: 'center',\r\n background: '#f1f1f1',\r\n },\r\n fieldTitle: { margin: 0, padding: 0 },\r\n frmText: {\r\n width: '100%',\r\n height: '38px',\r\n padding: 5,\r\n margin: 0,\r\n display: 'block',\r\n fontSize: '.9em',\r\n lineHeight: 38,\r\n borderColor: '#797979',\r\n borderStyle: 'solid',\r\n borderWidth: 1,\r\n borderRadius: 10,\r\n },\r\n frmIconButton: { marginLeft: 10 },\r\n btnSubmitting: {\r\n width: 104,\r\n float: 'right',\r\n height: 50,\r\n marginTop: 5,\r\n marginRight: 10,\r\n },\r\n});\r\n\r\nexport default styles;\r\n","const styles = () => ({\r\n btnBack: {\r\n float: 'right',\r\n width: 150,\r\n height: 30,\r\n marginTop: 5,\r\n },\r\n btnActions: {\r\n float: 'right',\r\n height: 50,\r\n marginTop: 5,\r\n marginRight: 10,\r\n },\r\n btnSubmitting: {\r\n width: 123,\r\n background: '#fff',\r\n float: 'right',\r\n height: 50,\r\n marginTop: 5,\r\n marginRight: 10,\r\n },\r\n sectionTitle: {\r\n fontSize: '16px',\r\n marginTop: 10,\r\n marginBottom: 10,\r\n padding: 5,\r\n color: '#fff',\r\n borderRadius: 4,\r\n background: '#008945',\r\n },\r\n field: {\r\n border: 'solid thin #ccc',\r\n padding: 20,\r\n background: '#f1f1f1',\r\n },\r\n fieldFilled: {\r\n border: 'solid thin #ccc',\r\n padding: 10,\r\n background: '#f1f1f1',\r\n },\r\n fieldMin: {\r\n border: 'solid thin #ccc',\r\n width: 35,\r\n padding: 20,\r\n textAlign: 'center',\r\n background: '#f1f1f1',\r\n },\r\n fieldMinFilled: {\r\n border: 'solid thin #ccc',\r\n width: 35,\r\n padding: 10,\r\n textAlign: 'center',\r\n background: '#f1f1f1',\r\n },\r\n fieldTitle: { margin: 0, padding: 0 },\r\n frmText: {\r\n width: '100%',\r\n height: '38px',\r\n padding: 5,\r\n margin: 0,\r\n display: 'block',\r\n fontSize: '.9em',\r\n lineHeight: 38,\r\n borderColor: '#797979',\r\n borderStyle: 'solid',\r\n borderWidth: 1,\r\n borderRadius: 10,\r\n '&::-webkit-outer-spin-button, &::-webkit-inner-spin-button': {\r\n '-webkit-appearance': 'none',\r\n margin: 0,\r\n },\r\n '-moz-appearance': 'textfield',\r\n },\r\n searchButton: {\r\n background: '#84BF48',\r\n color: '#fff',\r\n marginLeft: 5,\r\n },\r\n\r\n hideCicularProgress: {\r\n display: 'none',\r\n },\r\n customFrmDropDown: {\r\n /*\r\n '& .MuiFormControl-root': {\r\n margin: '0 !important',\r\n },\r\n */\r\n '& .MuiOutlinedInput-input': {\r\n color: '#00ff00',\r\n },\r\n },\r\n formError: {\r\n margin: '5px 0px 25px 0px',\r\n color: `#FF1101`,\r\n },\r\n});\r\n\r\nexport default styles;\r\n","/* eslint-disable radix */\r\n/* eslint-disable jsx-a11y/label-has-associated-control */\r\n/* eslint-disable max-len */\r\n/* eslint-disable react/prop-types */\r\n/* eslint-disable camelcase */\r\nimport React, { useState, useEffect } from 'react';\r\nimport Lodash from 'lodash';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport PropTypes from 'prop-types';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport {\r\n Grid,\r\n Button,\r\n Radio,\r\n FormControlLabel,\r\n} from '@material-ui/core';\r\nimport Alert from '@material-ui/lab/Alert';\r\nimport CircularProgress from '@material-ui/core/CircularProgress';\r\n\r\nimport { Formik, Field, Form } from 'formik';\r\nimport { RadioGroup } from 'formik-material-ui';\r\nimport * as Yup from 'yup';\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport DialogActions from '@material-ui/core/DialogActions';\r\nimport DialogContent from '@material-ui/core/DialogContent';\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\nimport DialogContentText from '@material-ui/core/DialogContentText';\r\nimport Slide from '@material-ui/core/Slide';\r\nimport { PlnInput } from '../Input';\r\nimport REGEX from '../../Core/Utils/RegExpUtils';\r\n\r\nimport style from './styles';\r\n\r\nimport { updatePersonInfo } from '../../Core/Api/padronApi';\r\n\r\nconst Transition = React.forwardRef(function Transition(\r\n tProps,\r\n ref,\r\n) {\r\n // eslint-disable-next-line react/jsx-props-no-spreading\r\n return ;\r\n});\r\n\r\nconst ModalHojaInfo = props => {\r\n const {\r\n classes,\r\n onClose,\r\n // value: valueProp,\r\n open,\r\n // currentDelegado,\r\n currentPerson,\r\n addPersonToRow,\r\n setCurrentSexChanged,\r\n } = props;\r\n\r\n const frmInitValues = {\r\n sexo: '',\r\n email: '',\r\n tel_casa: '',\r\n tel_celular: '',\r\n dir_habitacion: '',\r\n dir_trabajo: '',\r\n tel_trabajo: '',\r\n fax_trabajo: '',\r\n };\r\n const [iValues2, setIValues2] = useState(frmInitValues);\r\n\r\n const [msjDialog, setMsjDialog] = useState('');\r\n const [openMsjDialog, setOpenMsjDialog] = useState(false);\r\n\r\n const handleCloseMsjDialog = () => {\r\n setOpenMsjDialog(false);\r\n };\r\n\r\n const validationSchema = Yup.object({});\r\n const initialValues2 = iValues2;\r\n\r\n const changeToNewSex = event => {\r\n event.persist();\r\n setCurrentSexChanged(event.target.value);\r\n };\r\n\r\n useEffect(() => {\r\n if (open) {\r\n setIValues2({\r\n sexo: currentPerson.sexo\r\n ? `${currentPerson.sexo}`\r\n : '',\r\n email: currentPerson.des_email\r\n ? currentPerson.des_email\r\n : '',\r\n tel_casa: currentPerson.tel_casa\r\n ? currentPerson.tel_casa\r\n : '',\r\n tel_celular: currentPerson.tel_celu\r\n ? currentPerson.tel_celu\r\n : '',\r\n dir_habitacion: currentPerson.des_direccion\r\n ? currentPerson.des_direccion\r\n : '',\r\n dir_trabajo: currentPerson.des_direccion_trabajo\r\n ? currentPerson.des_direccion_trabajo\r\n : '',\r\n tel_trabajo: currentPerson.tel_ofi\r\n ? currentPerson.tel_ofi\r\n : '',\r\n fax_trabajo: currentPerson.num_fax_ofi\r\n ? currentPerson.num_fax_ofi\r\n : '',\r\n });\r\n }\r\n }, [open, setIValues2]);\r\n\r\n const handleCancel = () => {\r\n onClose(false);\r\n setIValues2(!iValues2);\r\n };\r\n\r\n const addInfoPerson = (values, { setSubmitting }) => {\r\n setSubmitting(true);\r\n const {\r\n dir_habitacion,\r\n dir_trabajo,\r\n email,\r\n fax_trabajo,\r\n sexo,\r\n tel_casa,\r\n tel_celular,\r\n tel_trabajo,\r\n } = values;\r\n\r\n const personData = {\r\n num_cedula: currentPerson.num_cedula,\r\n // eslint-disable-next-line radix\r\n ind_sexo: parseInt(sexo),\r\n telefonosData: {\r\n tel_casa,\r\n tel_celu: tel_celular,\r\n tel_ofi: tel_trabajo,\r\n num_fax_ofi: fax_trabajo,\r\n },\r\n direccionesData: {\r\n des_direccion: dir_habitacion,\r\n des_direccion_trabajo: dir_trabajo,\r\n },\r\n emailsData: {\r\n des_email: email,\r\n },\r\n };\r\n\r\n updatePersonInfo(personData).then(result => {\r\n const response = Lodash.get(result, [\r\n 'data',\r\n 'response',\r\n ]);\r\n if (response > 0) {\r\n addPersonToRow(parseInt(sexo));\r\n setSubmitting(false);\r\n onClose(true);\r\n } else {\r\n setSubmitting(false);\r\n setOpenMsjDialog(true);\r\n setMsjDialog(\r\n 'Ha Ocurrido un Error! Esta persona NO puede ser agregada, favor intentarlo nuevamente.',\r\n );\r\n }\r\n });\r\n };\r\n\r\n const formikValidate = values => {\r\n const errors = {};\r\n // eslint-disable-next-line no-unused-vars\r\n const { sexo, email, tel_casa, tel_celular } = values;\r\n\r\n if (!email) {\r\n errors.email = 'Requerido';\r\n } else if (!REGEX.email.test(email)) {\r\n errors.email = 'Email inválido';\r\n }\r\n\r\n if (!sexo) {\r\n errors.sexo = 'Requerido';\r\n }\r\n\r\n /*\r\n if (!tel_casa) {\r\n errors.tel_casa = 'Requerido';\r\n } else if (!REGEX.phone.test(tel_casa)) {\r\n errors.tel_casa = 'Formato inválido';\r\n }\r\n */\r\n\r\n if (!tel_celular) {\r\n errors.tel_celular = 'Requerido';\r\n } else if (!REGEX.phone.test(tel_celular)) {\r\n errors.tel_celular = 'Formato inválido';\r\n }\r\n\r\n return errors;\r\n };\r\n\r\n ModalHojaInfo.propTypes = {\r\n onClose: PropTypes.func.isRequired,\r\n open: PropTypes.bool.isRequired,\r\n // value: PropTypes.string.isRequired,\r\n // currentDelegado: PropTypes.shape({}).isRequired,\r\n currentPerson: PropTypes.shape({}).isRequired,\r\n addPersonToRow: PropTypes.func.isRequired,\r\n setCurrentSexChanged: PropTypes.func.isRequired,\r\n };\r\n\r\n return (\r\n <>\r\n \r\n \r\n {formik => (\r\n
\r\n \r\n Actualización de Datos\r\n \r\n \r\n \r\n Hoja de Información\r\n \r\n \r\n \r\n

\r\n Cédula\r\n

\r\n
\r\n {currentPerson.num_cedula}\r\n
\r\n
\r\n \r\n

\r\n Nombre\r\n

\r\n
\r\n {`${currentPerson.des_nombre} ${currentPerson.des_apell1} ${currentPerson.des_apell2}`}\r\n
\r\n
\r\n \r\n

\r\n \r\n *\r\n \r\n Sexo\r\n

\r\n \r\n }\r\n label=\"Masculino\"\r\n disabled={\r\n parseInt(formik.values.sexo) > 0\r\n }\r\n onChange={changeToNewSex}\r\n />\r\n }\r\n label=\"Femenino\"\r\n disabled={\r\n parseInt(formik.values.sexo) > 0\r\n }\r\n onChange={changeToNewSex}\r\n />\r\n \r\n {formik.errors.sexo &&\r\n formik.touched.sexo ? (\r\n
\r\n \r\n {formik.errors.sexo}\r\n \r\n
\r\n ) : null}\r\n
\r\n \r\n

\r\n \r\n *\r\n \r\n Correo Electrónico\r\n

\r\n \r\n {formik.errors.email &&\r\n formik.touched.email ? (\r\n
\r\n \r\n {formik.errors.email}\r\n \r\n
\r\n ) : null}\r\n
\r\n \r\n

\r\n \r\n {' '}\r\n \r\n Teléfono Habitación\r\n

\r\n \r\n {formik.errors.tel_casa &&\r\n formik.touched.tel_casa ? (\r\n
\r\n \r\n {formik.errors.tel_casa}\r\n \r\n
\r\n ) : null}\r\n
\r\n \r\n

\r\n \r\n *\r\n {' '}\r\n Celular\r\n

\r\n \r\n {formik.errors.tel_celular &&\r\n formik.touched.tel_celular ? (\r\n
\r\n \r\n {formik.errors.tel_celular}\r\n \r\n
\r\n ) : null}\r\n
\r\n \r\n

\r\n Dirección de Habitación\r\n

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

\r\n Dirección de Trabajo\r\n

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

\r\n Teléfono Trabajo\r\n

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

\r\n Fax Trabajo\r\n

\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n Cancelar\r\n \r\n \r\n {formik.isSubmitting ? (\r\n \r\n ) : (\r\n <>Agregar\r\n )}\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n Mensaje\r\n \r\n \r\n \r\n {msjDialog}\r\n \r\n \r\n \r\n \r\n Entendido\r\n \r\n \r\n \r\n \r\n );\r\n};\r\nexport default withStyles(style)(ModalHojaInfo);\r\n","const styles = () => ({\r\n btnBack: {\r\n float: 'right',\r\n width: 150,\r\n height: 30,\r\n marginTop: 5,\r\n },\r\n btnActions: {\r\n float: 'right',\r\n height: 50,\r\n marginTop: 5,\r\n marginRight: 10,\r\n },\r\n sectionTitle: {\r\n fontSize: '16px',\r\n marginTop: 10,\r\n marginBottom: 10,\r\n padding: 5,\r\n color: '#fff',\r\n borderRadius: 4,\r\n background: '#008945',\r\n },\r\n field: {\r\n border: 'solid thin #ccc',\r\n padding: 20,\r\n background: '#f1f1f1',\r\n },\r\n fieldFilled: {\r\n border: 'solid thin #ccc',\r\n padding: 10,\r\n background: '#f1f1f1',\r\n },\r\n fieldMin: {\r\n border: 'solid thin #ccc',\r\n width: 35,\r\n padding: 20,\r\n textAlign: 'center',\r\n background: '#f1f1f1',\r\n float: 'left',\r\n },\r\n fieldMinFilled: {\r\n border: 'solid thin #ccc',\r\n width: 35,\r\n padding: 10,\r\n textAlign: 'center',\r\n background: '#f1f1f1',\r\n float: 'left',\r\n },\r\n fieldTitle: { margin: 0, padding: 0 },\r\n frmText: {\r\n width: '100%',\r\n height: '38px',\r\n padding: 5,\r\n margin: 0,\r\n display: 'block',\r\n fontSize: '.9em',\r\n lineHeight: 38,\r\n borderColor: '#797979',\r\n borderStyle: 'solid',\r\n borderWidth: 1,\r\n borderRadius: 10,\r\n '&::-webkit-outer-spin-button, &::-webkit-inner-spin-button': {\r\n '-webkit-appearance': 'none',\r\n margin: 0,\r\n },\r\n '-moz-appearance': 'textfield',\r\n },\r\n searchButton: {\r\n background: '#84BF48',\r\n color: '#fff',\r\n marginLeft: 5,\r\n },\r\n\r\n hideCicularProgress: {\r\n display: 'none',\r\n },\r\n btnDeleteActive: {\r\n color: '#cc0000',\r\n float: 'right',\r\n },\r\n btnDeleteInactive: {\r\n color: '#ccc',\r\n float: 'right',\r\n },\r\n juventudChip: {\r\n marginLeft: 10,\r\n marginTop: 9,\r\n margin: 5,\r\n fontWeight: 'bold',\r\n width: '25px',\r\n height: '25px',\r\n fontSize: 10,\r\n '& span.MuiChip-label': {\r\n paddingLeft: 9,\r\n paddingRight: 9,\r\n },\r\n },\r\n});\r\n\r\nexport default styles;\r\n","/* eslint-disable camelcase */\r\nimport axios from 'axios';\r\n\r\naxios.defaults.baseURL = process.env.REACT_APP_API_BASE_URL;\r\n\r\n/* eslint-disable import/prefer-default-export */\r\nexport const validateCandidato = cedula => {\r\n const url = [`/papeleta/validateCandidatoAOCP/${cedula}`];\r\n\r\n return axios.get(url.join('&'));\r\n};\r\n\r\nexport const validateFiscal = cedula => {\r\n const url = [`/papeleta/validateFiscalEC/${cedula}`];\r\n\r\n return axios.get(url.join('&'));\r\n};\r\n","/* eslint-disable radix */\r\n/* eslint-disable no-underscore-dangle */\r\n/* eslint-disable max-len */\r\n/* eslint-disable camelcase */\r\nimport React, { useState } from 'react';\r\nimport Lodash from 'lodash';\r\nimport PropTypes from 'prop-types';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport { Grid, Button } from '@material-ui/core';\r\nimport CircularProgress from '@material-ui/core/CircularProgress';\r\nimport Table from '@material-ui/core/Table';\r\nimport TableBody from '@material-ui/core/TableBody';\r\nimport TableCell from '@material-ui/core/TableCell';\r\nimport TableHead from '@material-ui/core/TableHead';\r\nimport TableRow from '@material-ui/core/TableRow';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport SearchIcon from '@material-ui/icons/Search';\r\nimport IconButton from '@material-ui/core/IconButton';\r\nimport DeleteIcon from '@material-ui/icons/Delete';\r\nimport Chip from '@material-ui/core/Chip';\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport DialogActions from '@material-ui/core/DialogActions';\r\nimport DialogContent from '@material-ui/core/DialogContent';\r\nimport DialogContentText from '@material-ui/core/DialogContentText';\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\nimport Slide from '@material-ui/core/Slide';\r\nimport ModalHojaInfo from '../ModalHojaInfo/ModalHojaInfo';\r\n\r\nimport style from './styles';\r\n\r\nimport { searchByCedula } from '../../Core/Api/padronApi';\r\nimport {\r\n validateCandidato,\r\n validateFiscal,\r\n} from '../../Core/Api/papeletaApi';\r\n\r\nconst Transition = React.forwardRef(function Transition(\r\n tProps,\r\n ref,\r\n) {\r\n // eslint-disable-next-line react/jsx-props-no-spreading\r\n return ;\r\n});\r\n\r\nconst ListSearch = props => {\r\n const {\r\n classes,\r\n title,\r\n formik,\r\n initListData,\r\n sexOrderM,\r\n sexOrderF,\r\n fieldToShow,\r\n // eslint-disable-next-line no-unused-vars\r\n inPlace,\r\n setListFunc,\r\n findInOtherList,\r\n otherList,\r\n validateBy,\r\n requireSexOrder,\r\n sexFieldAs,\r\n onlyJuventud,\r\n hideSexColumn,\r\n needHojaInfo,\r\n isFiscal,\r\n requireValidation,\r\n } = props;\r\n\r\n // Opciones Seleccionadas\r\n const [listData, setListData] = useState(initListData);\r\n const [currentPerson, setCurrentPerson] = useState({});\r\n const [\r\n currentSexChanged,\r\n setCurrentSexChanged,\r\n ] = useState(null);\r\n const [inputNameField, setInputNameField] = useState('');\r\n const [lugarField, setLugarField] = useState(null);\r\n\r\n // Dialog Data\r\n const [msjDialog, setMsjDialog] = useState('');\r\n const [open, setOpenDialog] = React.useState(false);\r\n const [openHojaInfo, setOpenHojaInfo] = React.useState(\r\n false,\r\n );\r\n const handleCloseHojaInfo = isData => {\r\n setOpenHojaInfo(false);\r\n if (!isData) {\r\n formik.setFieldValue(inputNameField, '');\r\n }\r\n };\r\n const handleClose = () => {\r\n setOpenDialog(false);\r\n };\r\n\r\n const setAllList = list => {\r\n setListData(list);\r\n setListFunc(list);\r\n };\r\n\r\n const addPersonToRow = selectedSex => {\r\n // Se obtiene el campo del delegado a editar\r\n const delegadoVal = Lodash.find(listData, {\r\n id: lugarField,\r\n });\r\n\r\n // Sexo de la persona\r\n let sexValNew = 'M';\r\n if (parseInt(currentSexChanged) !== 1) {\r\n sexValNew = 'F';\r\n }\r\n\r\n if (delegadoVal.id !== 1) {\r\n if (sexValNew !== delegadoVal.sexo) {\r\n const sexMessage =\r\n 'El candidato a ingresar debe de respetar la alternabilidad.';\r\n setMsjDialog(sexMessage);\r\n setOpenDialog(true);\r\n return;\r\n }\r\n }\r\n\r\n // Se realiza una copia de la persona para modificar el sexo\r\n const clonedPerson = {\r\n ...currentPerson,\r\n sexo: selectedSex,\r\n };\r\n const personName = `${clonedPerson.des_nombre} ${clonedPerson.des_apell1} ${clonedPerson.des_apell2}`;\r\n const personCedula = clonedPerson.num_cedula;\r\n\r\n // Sexo de la persona\r\n let sexVal = 'M';\r\n if (clonedPerson.sexo !== 1) {\r\n sexVal = 'F';\r\n }\r\n\r\n let listToDoSearch = listData;\r\n\r\n if (lugarField === 1) {\r\n let sexOrder = sexOrderM;\r\n if (clonedPerson.sexo !== 1) {\r\n sexOrder = sexOrderF;\r\n }\r\n\r\n const newListData = Lodash.map(\r\n listData,\r\n (d, index) => {\r\n const newData = {\r\n id: d.id,\r\n lugar: d.lugar,\r\n numPuesto: d.numPuesto,\r\n fieldName: d.fieldName,\r\n cedula: index === 0 ? d.cedula : '',\r\n nombre: index === 0 ? d.nombre : '',\r\n sexo: requireSexOrder\r\n ? sexOrder[index].sexo\r\n : sexFieldAs,\r\n edad: d.edad,\r\n enabled: index === 0,\r\n filled: d.filled,\r\n };\r\n\r\n return newData;\r\n },\r\n );\r\n\r\n // Se limpian todos los campos\r\n for (let i = 0; i < newListData.length; i++) {\r\n if (i !== 0) {\r\n formik.setFieldValue(\r\n newListData[i].fieldName,\r\n '',\r\n );\r\n }\r\n }\r\n\r\n listToDoSearch = newListData;\r\n }\r\n\r\n // Se obtiene el campo del delegado a editar\r\n const delegado = Lodash.find(listToDoSearch, {\r\n id: lugarField,\r\n });\r\n\r\n delegado.sexo = sexVal;\r\n delegado.cedula = personCedula;\r\n delegado.nombre = personName;\r\n delegado.edad = clonedPerson.num_edad;\r\n delegado.enabled = true;\r\n delegado.filled = true;\r\n\r\n const newList = Lodash.union(\r\n [delegado],\r\n listToDoSearch,\r\n );\r\n\r\n const orderedList = Lodash.orderBy(\r\n newList,\r\n ['id'],\r\n ['asc'],\r\n );\r\n setAllList(orderedList);\r\n };\r\n\r\n const doSearchByCedula = async (\r\n numCedula,\r\n inputName,\r\n lugar,\r\n ) => {\r\n // Se busca por número de cédula\r\n searchByCedula(numCedula).then(r => {\r\n const info = Lodash.get(r, ['data', 'response'], []);\r\n if (info !== false) {\r\n // Datos de la persona\r\n const person = Lodash.get(info, [0]);\r\n\r\n if (person.activo < 1) {\r\n setMsjDialog(\r\n 'Esta persona NO se encuentra activa en el PADRÓN ELECTORAL. Favor ingresar otra persona',\r\n );\r\n setOpenDialog(true);\r\n formik.setFieldValue(inputName, '');\r\n } else {\r\n // Se valida que la persona sea valida para continuar con el proceso\r\n let validPerson = true;\r\n if (onlyJuventud) {\r\n if (person.num_edad > 35) {\r\n validPerson = false;\r\n }\r\n }\r\n\r\n if (validPerson) {\r\n // Nombre de la persona\r\n const personName = `${person.des_nombre} ${person.des_apell1} ${person.des_apell2}`;\r\n const personCedula = person.num_cedula;\r\n // console.log('person', person);\r\n let personPlace = false;\r\n let _isPersonProvincia = true;\r\n let _isPersonCanton = true;\r\n let _isPersonDistrito = true;\r\n\r\n // VALIDATE DISTRITALES\r\n if (validateBy.length === 3) {\r\n if (\r\n parseInt(validateBy[0].value) !==\r\n parseInt(person.cod_prov)\r\n ) {\r\n _isPersonProvincia = false;\r\n }\r\n\r\n if (\r\n parseInt(validateBy[1].value) !==\r\n parseInt(person.cod_cant)\r\n ) {\r\n _isPersonCanton = false;\r\n }\r\n\r\n if (\r\n parseInt(validateBy[2].value) !==\r\n parseInt(person.cod_dist_adm)\r\n ) {\r\n _isPersonDistrito = false;\r\n }\r\n\r\n if (\r\n _isPersonProvincia &&\r\n _isPersonCanton &&\r\n _isPersonDistrito\r\n ) {\r\n personPlace = true;\r\n }\r\n }\r\n\r\n // VALIDATE CANTONALES\r\n if (validateBy.length === 2) {\r\n if (\r\n parseInt(validateBy[0].value) !==\r\n parseInt(person.cod_prov)\r\n ) {\r\n _isPersonProvincia = false;\r\n }\r\n\r\n if (\r\n parseInt(validateBy[1].value) !==\r\n parseInt(person.cod_cant)\r\n ) {\r\n _isPersonCanton = false;\r\n }\r\n\r\n if (_isPersonProvincia && _isPersonCanton) {\r\n personPlace = true;\r\n }\r\n }\r\n\r\n // VALIDATE PROVINCIALES & NONE\r\n if (validateBy.length === 1) {\r\n if (validateBy[0].dataVal === 'none') {\r\n personPlace = true;\r\n } else {\r\n if (\r\n parseInt(validateBy[0].value) !==\r\n parseInt(person.cod_prov)\r\n ) {\r\n _isPersonProvincia = false;\r\n }\r\n\r\n if (_isPersonProvincia) {\r\n personPlace = true;\r\n }\r\n }\r\n }\r\n\r\n // Sexo de la persona\r\n let sexVal = 'M';\r\n if (person.sexo !== 1) {\r\n sexVal = 'F';\r\n }\r\n\r\n let listToDoSearch = listData;\r\n if (personPlace) {\r\n // Se valida si requiere la HOJA DE INFORMACION\r\n if (needHojaInfo) {\r\n setCurrentSexChanged(person.sexo);\r\n if (lugar === 1) {\r\n let sexOrder = sexOrderM;\r\n if (person.sexo !== 1) {\r\n sexOrder = sexOrderF;\r\n }\r\n\r\n const newListData = Lodash.map(\r\n listData,\r\n (d, index) => {\r\n const newData = {\r\n id: d.id,\r\n lugar: d.lugar,\r\n numPuesto: d.numPuesto,\r\n fieldName: d.fieldName,\r\n cedula: index === 0 ? d.cedula : '',\r\n nombre: index === 0 ? d.nombre : '',\r\n sexo: requireSexOrder\r\n ? sexOrder[index].sexo\r\n : sexFieldAs,\r\n edad: d.edad,\r\n enabled: index !== 0,\r\n filled: d.filled,\r\n };\r\n\r\n return newData;\r\n },\r\n );\r\n\r\n // Se limpian todos los campos\r\n for (\r\n let i = 0;\r\n i < newListData.length;\r\n i++\r\n ) {\r\n if (i !== 0) {\r\n formik.setFieldValue(\r\n newListData[i].fieldName,\r\n '',\r\n );\r\n }\r\n }\r\n\r\n listToDoSearch = newListData;\r\n }\r\n\r\n // Se obtiene el campo del delegado a editar\r\n const delegado = Lodash.find(\r\n listToDoSearch,\r\n {\r\n id: lugar,\r\n },\r\n );\r\n\r\n if (\r\n delegado.sexo === sexVal ||\r\n person.sexo === null\r\n ) {\r\n if (!isFiscal) {\r\n // SE VALIDA EL CANDIDATO\r\n validateCandidato(numCedula).then(\r\n vResult => {\r\n if (vResult.data > 0) {\r\n setMsjDialog(\r\n 'La persona que intenta registrar ya se inscribió como fiscal en una papeleta provincial. No puede inscribirse en este puesto',\r\n );\r\n setOpenDialog(true);\r\n document.getElementById(\r\n `cp-${inputName}`,\r\n ).style.display = 'none';\r\n formik.setFieldValue(\r\n inputName,\r\n '',\r\n );\r\n } else {\r\n setCurrentPerson(person);\r\n setOpenHojaInfo(true);\r\n }\r\n },\r\n );\r\n } else {\r\n validateFiscal(numCedula).then(\r\n vResult => {\r\n if (vResult.data > 0) {\r\n setMsjDialog(\r\n 'La persona que intenta registrar ya se inscribió como candidato(a) en otra papeleta. O resulto electo en distritales. No puede inscribirse en este puesto',\r\n );\r\n setOpenDialog(true);\r\n document.getElementById(\r\n `cp-${inputName}`,\r\n ).style.display = 'none';\r\n formik.setFieldValue(\r\n inputName,\r\n '',\r\n );\r\n } else {\r\n setCurrentPerson(person);\r\n setOpenHojaInfo(true);\r\n }\r\n },\r\n );\r\n }\r\n } else {\r\n delegado.sexo = requireSexOrder\r\n ? delegado.sexo\r\n : sexFieldAs;\r\n delegado.cedula = '';\r\n delegado.nombre = '';\r\n delegado.edad = '';\r\n delegado.enabled = false;\r\n delegado.filled = false;\r\n\r\n const newList = Lodash.union(\r\n [delegado],\r\n listToDoSearch,\r\n );\r\n\r\n const orderedList = Lodash.orderBy(\r\n newList,\r\n ['id'],\r\n ['asc'],\r\n );\r\n\r\n setAllList(orderedList);\r\n\r\n let sexMessage =\r\n 'El candidato a ingresar debe de respetar la alternabilidad.';\r\n if (!requireSexOrder) {\r\n sexMessage =\r\n 'En esta papeleta solo se permite de ingresar mujeres';\r\n }\r\n setMsjDialog(sexMessage);\r\n setOpenDialog(true);\r\n // Se limpian el campo\r\n formik.setFieldValue(inputName, '');\r\n }\r\n } else {\r\n if (lugar === 1) {\r\n let sexOrder = sexOrderM;\r\n if (person.sexo !== 1) {\r\n sexOrder = sexOrderF;\r\n }\r\n\r\n const newListData = Lodash.map(\r\n listData,\r\n (d, index) => {\r\n const newData = {\r\n id: d.id,\r\n lugar: d.lugar,\r\n numPuesto: d.numPuesto,\r\n fieldName: d.fieldName,\r\n cedula: index === 0 ? d.cedula : '',\r\n nombre: index === 0 ? d.nombre : '',\r\n sexo: requireSexOrder\r\n ? sexOrder[index].sexo\r\n : sexFieldAs,\r\n edad: d.edad,\r\n enabled: index === 0,\r\n filled: d.filled,\r\n };\r\n\r\n return newData;\r\n },\r\n );\r\n\r\n // Se limpian todos los campos\r\n for (\r\n let i = 0;\r\n i < newListData.length;\r\n i++\r\n ) {\r\n if (i !== 0) {\r\n formik.setFieldValue(\r\n newListData[i].fieldName,\r\n '',\r\n );\r\n }\r\n }\r\n\r\n listToDoSearch = newListData;\r\n }\r\n\r\n // Se obtiene el campo del delegado a editar\r\n const delegado = Lodash.find(\r\n listToDoSearch,\r\n {\r\n id: lugar,\r\n },\r\n );\r\n\r\n if (delegado.sexo === sexVal) {\r\n if (!isFiscal) {\r\n if (requireValidation) {\r\n // SE VALIDA EL CANDIDATO\r\n validateCandidato(numCedula).then(\r\n vResult => {\r\n if (vResult.data > 0) {\r\n setMsjDialog(\r\n 'La persona que intenta registrar ya se inscribió como fiscal en una papeleta provincial. No puede inscribirse en este puesto',\r\n );\r\n setOpenDialog(true);\r\n document.getElementById(\r\n `cp-${inputName}`,\r\n ).style.display = 'none';\r\n formik.setFieldValue(\r\n inputName,\r\n '',\r\n );\r\n } else {\r\n delegado.sexo = sexVal;\r\n delegado.cedula = personCedula;\r\n delegado.nombre = personName;\r\n delegado.edad = person.num_edad;\r\n delegado.enabled = true;\r\n delegado.filled = true;\r\n\r\n const newList = Lodash.union(\r\n [delegado],\r\n listToDoSearch,\r\n );\r\n\r\n const orderedList = Lodash.orderBy(\r\n newList,\r\n ['id'],\r\n ['asc'],\r\n );\r\n setAllList(orderedList);\r\n }\r\n },\r\n );\r\n } else {\r\n delegado.sexo = sexVal;\r\n delegado.cedula = personCedula;\r\n delegado.nombre = personName;\r\n delegado.edad = person.num_edad;\r\n delegado.enabled = true;\r\n delegado.filled = true;\r\n\r\n const newList = Lodash.union(\r\n [delegado],\r\n listToDoSearch,\r\n );\r\n\r\n const orderedList = Lodash.orderBy(\r\n newList,\r\n ['id'],\r\n ['asc'],\r\n );\r\n setAllList(orderedList);\r\n }\r\n } else {\r\n validateFiscal(numCedula).then(\r\n vResult => {\r\n if (vResult.data > 0) {\r\n setMsjDialog(\r\n 'La persona que intenta registrar ya se inscribió como candidato(a) en otra papeleta. O resulto electo en distritales. No puede inscribirse en este puesto',\r\n );\r\n setOpenDialog(true);\r\n document.getElementById(\r\n `cp-${inputName}`,\r\n ).style.display = 'none';\r\n formik.setFieldValue(\r\n inputName,\r\n '',\r\n );\r\n } else {\r\n delegado.sexo = sexVal;\r\n delegado.cedula = personCedula;\r\n delegado.nombre = personName;\r\n delegado.edad = person.num_edad;\r\n delegado.enabled = true;\r\n delegado.filled = true;\r\n\r\n const newList = Lodash.union(\r\n [delegado],\r\n listToDoSearch,\r\n );\r\n\r\n const orderedList = Lodash.orderBy(\r\n newList,\r\n ['id'],\r\n ['asc'],\r\n );\r\n setAllList(orderedList);\r\n }\r\n },\r\n );\r\n }\r\n /*\r\n delegado.sexo = sexVal;\r\n delegado.cedula = personCedula;\r\n delegado.nombre = personName;\r\n delegado.edad = person.num_edad;\r\n delegado.enabled = true;\r\n delegado.filled = true;\r\n\r\n const newList = Lodash.union(\r\n [delegado],\r\n listToDoSearch,\r\n );\r\n\r\n const orderedList = Lodash.orderBy(\r\n newList,\r\n ['id'],\r\n ['asc'],\r\n );\r\n setAllList(orderedList);\r\n */\r\n } else {\r\n delegado.sexo = requireSexOrder\r\n ? delegado.sexo\r\n : sexFieldAs;\r\n delegado.cedula = '';\r\n delegado.nombre = '';\r\n delegado.edad = '';\r\n delegado.filled = false;\r\n\r\n const newList = Lodash.union(\r\n [delegado],\r\n listToDoSearch,\r\n );\r\n const orderedList = Lodash.orderBy(\r\n newList,\r\n ['id'],\r\n ['asc'],\r\n );\r\n setAllList(orderedList);\r\n let sexMessage =\r\n 'El candidato a ingresar debe de respetar la alternabilidad.';\r\n if (!requireSexOrder) {\r\n sexMessage =\r\n 'En esta papeleta solo se permite de ingresar mujeres';\r\n }\r\n setMsjDialog(sexMessage);\r\n setOpenDialog(true);\r\n // Se limpian el campo\r\n formik.setFieldValue(inputName, '');\r\n }\r\n }\r\n } else {\r\n // eslint-disable-next-line no-lonely-if\r\n if (validateBy !== 'none') {\r\n setMsjDialog(\r\n // eslint-disable-next-line max-len\r\n `La persona ingresada NO pertece a la localidad en selección. Ingrese otra cédula`,\r\n );\r\n setOpenDialog(true);\r\n formik.setFieldValue(inputName, '');\r\n }\r\n }\r\n } else {\r\n setMsjDialog(\r\n // eslint-disable-next-line max-len\r\n `La persona ingresada NO posee la edad requerida de JUVENTUD para este puesto`,\r\n );\r\n setOpenDialog(true);\r\n formik.setFieldValue(inputName, '');\r\n }\r\n }\r\n } else {\r\n setMsjDialog(\r\n 'El número de cédula ingresado no coincide con ninguna referencia',\r\n );\r\n setOpenDialog(true);\r\n formik.setFieldValue(inputName, '');\r\n }\r\n document.getElementById(\r\n `cp-${inputName}`,\r\n ).style.display = 'none';\r\n });\r\n };\r\n\r\n const searchPerson = (inputName, lugar) => () => {\r\n setCurrentPerson({});\r\n setInputNameField(inputName);\r\n setLugarField(lugar);\r\n const numCedula = document.getElementsByName(\r\n inputName,\r\n )[0].value;\r\n\r\n if (numCedula.length > 0 && numCedula.length === 9) {\r\n document.getElementById(\r\n `cp-${inputName}`,\r\n ).style.display = 'block';\r\n\r\n if (findInOtherList) {\r\n let isInOtherList = false;\r\n otherList.forEach(list => {\r\n const existCedula = Lodash.find(list, {\r\n // eslint-disable-next-line radix\r\n cedula: parseInt(numCedula),\r\n });\r\n\r\n if (existCedula) {\r\n isInOtherList = true;\r\n }\r\n });\r\n\r\n if (isInOtherList) {\r\n const newListData = Lodash.map(listData, d => {\r\n const newData = {\r\n id: d.id,\r\n lugar: d.lugar,\r\n numPuesto: d.numPuesto,\r\n fieldName: d.fieldName,\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n edad: d.edad,\r\n enabled: false,\r\n filled: false,\r\n };\r\n\r\n return newData;\r\n });\r\n\r\n // Se limpian todos los campos\r\n for (let i = 0; i < newListData.length; i++) {\r\n formik.setFieldValue(\r\n newListData[i].fieldName,\r\n '',\r\n );\r\n }\r\n\r\n const orderedList = Lodash.orderBy(\r\n newListData,\r\n ['id'],\r\n ['asc'],\r\n );\r\n setAllList(orderedList);\r\n\r\n setMsjDialog(\r\n // eslint-disable-next-line max-len\r\n 'Quien se postule para el cargo de la fiscalía no pueden estar asociado a ningún otro puesto o papeleta',\r\n );\r\n setOpenDialog(true);\r\n document.getElementById(\r\n `cp-${inputName}`,\r\n ).style.display = 'none';\r\n return;\r\n }\r\n }\r\n\r\n const existCedula = Lodash.find(listData, {\r\n // eslint-disable-next-line radix\r\n cedula: parseInt(numCedula),\r\n });\r\n\r\n if (existCedula && lugar !== 1) {\r\n setMsjDialog('Esta cédula ya fué ingresada');\r\n setOpenDialog(true);\r\n formik.setFieldValue(inputName, '');\r\n document.getElementById(\r\n `cp-${inputName}`,\r\n ).style.display = 'none';\r\n } else {\r\n doSearchByCedula(numCedula, inputName, lugar);\r\n }\r\n } else {\r\n setMsjDialog(\r\n 'Debe digitar un número de cédula válido',\r\n );\r\n setOpenDialog(true);\r\n }\r\n };\r\n\r\n const removePerson = (inputName, lugar) => () => {\r\n if (lugar === 1) {\r\n const newListData = Lodash.map(\r\n listData,\r\n (d, index) => {\r\n const newData = {\r\n id: d.id,\r\n lugar: d.lugar,\r\n numPuesto: d.numPuesto,\r\n fieldName: d.fieldName,\r\n cedula: '',\r\n nombre: '',\r\n sexo: '',\r\n enabled: index !== 0,\r\n filled: false,\r\n };\r\n\r\n return newData;\r\n },\r\n );\r\n\r\n // Se limpian todos los campos\r\n for (let i = 0; i < newListData.length; i++) {\r\n // if (i !== 0) {\r\n formik.setFieldValue(newListData[i].fieldName, '');\r\n // }\r\n }\r\n\r\n setAllList(newListData);\r\n } else {\r\n // Se obtiene el campo del delegado a editar\r\n const delegado = Lodash.find(listData, {\r\n id: lugar,\r\n });\r\n\r\n delegado.cedula = '';\r\n delegado.nombre = '';\r\n delegado.enabled = false;\r\n delegado.filled = false;\r\n\r\n const newList = Lodash.union([delegado], listData);\r\n const orderedList = Lodash.orderBy(\r\n newList,\r\n ['id'],\r\n ['asc'],\r\n );\r\n formik.setFieldValue(inputName, '');\r\n setAllList(orderedList);\r\n }\r\n };\r\n\r\n const renderList = () => {\r\n const rows = [];\r\n const numFields =\r\n fieldToShow > 0 ? listData.length - fieldToShow : 0;\r\n const diff = listData.length - numFields;\r\n\r\n for (let n = 0; n < diff; n++) {\r\n rows.push(listData[n]);\r\n }\r\n\r\n const allRows = rows.map(row => (\r\n \r\n {!hideSexColumn && (\r\n \r\n {row.lugar}\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {row.nombre}\r\n \r\n \r\n {!hideSexColumn && (\r\n \r\n \r\n {row.sexo}\r\n \r\n {row.edad !== '' &&\r\n parseInt(row.edad) <= 35 && (\r\n \r\n )}\r\n\r\n \r\n \r\n \r\n \r\n )}\r\n {hideSexColumn && (\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n ));\r\n\r\n return allRows;\r\n };\r\n\r\n ListSearch.defaultProps = {\r\n inPlace: 0,\r\n findInOtherList: false,\r\n otherList: [],\r\n requireSexOrder: true,\r\n sexFieldAs: '',\r\n onlyJuventud: false,\r\n hideSexColumn: false,\r\n needHojaInfo: true,\r\n isFiscal: false,\r\n requireValidation: true,\r\n };\r\n\r\n ListSearch.propTypes = {\r\n title: PropTypes.string.isRequired,\r\n // eslint-disable-next-line react/forbid-prop-types\r\n formik: PropTypes.any.isRequired,\r\n initListData: PropTypes.arrayOf(PropTypes.shape())\r\n .isRequired,\r\n sexOrderM: PropTypes.arrayOf(PropTypes.shape())\r\n .isRequired,\r\n sexOrderF: PropTypes.arrayOf(PropTypes.shape())\r\n .isRequired,\r\n fieldToShow: PropTypes.number.isRequired,\r\n inPlace: PropTypes.number,\r\n setListFunc: PropTypes.func.isRequired,\r\n findInOtherList: PropTypes.bool,\r\n otherList: PropTypes.arrayOf(\r\n PropTypes.arrayOf(PropTypes.shape()),\r\n ),\r\n // eslint-disable-next-line react/forbid-prop-types\r\n validateBy: PropTypes.any.isRequired,\r\n requireSexOrder: PropTypes.bool,\r\n sexFieldAs: PropTypes.string,\r\n onlyJuventud: PropTypes.bool,\r\n hideSexColumn: PropTypes.bool,\r\n needHojaInfo: PropTypes.bool,\r\n isFiscal: PropTypes.bool,\r\n requireValidation: PropTypes.bool,\r\n };\r\n\r\n return (\r\n <>\r\n
\r\n \r\n {title}\r\n \r\n\r\n \r\n \r\n \r\n {!hideSexColumn && (\r\n \r\n Lugar\r\n \r\n )}\r\n \r\n Cédula\r\n \r\n Nombre\r\n {!hideSexColumn && (\r\n Sexo\r\n )}\r\n {hideSexColumn && (\r\n  \r\n )}\r\n \r\n \r\n {renderList()}\r\n
\r\n
\r\n\r\n \r\n \r\n ¡Atención!\r\n \r\n \r\n \r\n {msjDialog}\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n );\r\n};\r\n\r\nexport default withStyles(style)(ListSearch);\r\n","import axios from 'axios';\r\nimport { useQuery } from 'react-query';\r\n\r\naxios.defaults.baseURL = process.env.REACT_APP_API_BASE_URL;\r\n\r\nconst getProvincesItems = async data => {\r\n const frmOptions = data.map(p => {\r\n return {\r\n itemLabel: p.des_nombre_p,\r\n value: p.cod_provincia,\r\n };\r\n });\r\n\r\n frmOptions.unshift({\r\n itemLabel: '- SELECCIONE LA PROVINCIA -',\r\n value: 9,\r\n });\r\n\r\n const initValues = {\r\n provincia: 9,\r\n canton: 999,\r\n distrito: 999,\r\n papeleta: 999,\r\n jrv: 999,\r\n };\r\n\r\n return {\r\n provinciasData: data,\r\n frmOptions,\r\n initValues,\r\n };\r\n};\r\n\r\nconst getProvincesAOCPItems = async data => {\r\n const frmOptions = data.map(p => {\r\n return {\r\n itemLabel: p.des_nombre_p,\r\n value: p.cod_provincia,\r\n };\r\n });\r\n\r\n frmOptions.unshift({\r\n itemLabel: '- SELECCIONE LA PROVINCIA -',\r\n value: 9,\r\n });\r\n\r\n const initValues = {\r\n provincia: 9,\r\n canton: 999,\r\n distrito: 999,\r\n papeleta: 999,\r\n jrv: 999,\r\n };\r\n\r\n return {\r\n provinciasData: data,\r\n frmOptions,\r\n initValues,\r\n };\r\n};\r\n\r\nconst getMovimientosItems = async data => {\r\n const frmOptions = data.map(p => {\r\n return {\r\n itemLabel: p.DES,\r\n value: p.COD,\r\n };\r\n });\r\n\r\n frmOptions.unshift({\r\n itemLabel: '- SELECCIONE EL MOVIMIENTO -',\r\n value: 9,\r\n });\r\n\r\n const initValues = {\r\n movimiento: 9,\r\n };\r\n\r\n return {\r\n movimientosData: data,\r\n frmOptions,\r\n initValues,\r\n };\r\n};\r\nconst getSectoresItems = async data => {\r\n const frmOptions = data.map(p => {\r\n return {\r\n itemLabel: p.DES,\r\n value: p.COD,\r\n };\r\n });\r\n\r\n frmOptions.unshift({\r\n itemLabel: '- SELECCIONE EL SECTOR -',\r\n value: 9,\r\n });\r\n\r\n const initValues = {\r\n sector: 9,\r\n };\r\n\r\n return {\r\n sectoresData: data,\r\n frmOptions,\r\n initValues,\r\n };\r\n};\r\n\r\nexport const getMovimientosCantonales = async () => {\r\n try {\r\n const url = [`/MovimientosCantonales`];\r\n\r\n const { data } = await axios.get(url.join('&'));\r\n\r\n const movimientosData = getMovimientosItems(\r\n data.response,\r\n );\r\n\r\n return movimientosData;\r\n } catch (e) {\r\n return { movimientosData: {} };\r\n }\r\n};\r\n\r\nexport const getSectores = async () => {\r\n try {\r\n const url = [`/sectores`];\r\n\r\n const { data } = await axios.get(url.join('&'));\r\n\r\n const sectoresData = getSectoresItems(data.response);\r\n\r\n return sectoresData;\r\n } catch (e) {\r\n return { sectoresData: {} };\r\n }\r\n};\r\n\r\nexport const getProvinces = async () => {\r\n try {\r\n const url = [`/provinces`];\r\n\r\n const { data } = await axios.get(url.join('&'));\r\n const provinciasData = getProvincesItems(data.response);\r\n\r\n return provinciasData;\r\n } catch (e) {\r\n return { provinciasData: {} };\r\n }\r\n};\r\n\r\nexport const getProvincesAOCP = async () => {\r\n try {\r\n const url = [`/provinces/getProvincesAOCP`];\r\n\r\n const { data } = await axios.get(url.join('&'));\r\n const provinciasData = getProvincesAOCPItems(\r\n data.response,\r\n );\r\n\r\n return provinciasData;\r\n } catch (e) {\r\n return { provinciasData: {} };\r\n }\r\n};\r\n\r\nexport const getCantonsByProvince = idProvince => {\r\n const url = [`/cantons/findByProvinceAOCP/${idProvince}`];\r\n\r\n return axios.get(url.join('&'));\r\n};\r\n\r\nexport const getDistritoBy = (idProvince, idCanton) => {\r\n const url = [`/districts/${idProvince}/${idCanton}`];\r\n\r\n return axios.get(url.join('&'));\r\n};\r\n\r\nexport const getDistritoByTwo = (idProvince, idCanton) => {\r\n const url = [\r\n `/districts/getBy2/${idProvince}/${idCanton}`,\r\n ];\r\n\r\n return axios.get(url.join('&'));\r\n};\r\n\r\nexport const getCantidadDelegados = (\r\n idProvince,\r\n idCanton,\r\n) => {\r\n const url = [\r\n `/cantons/delegados/${idProvince}/${idCanton}`,\r\n ];\r\n\r\n return axios.get(url.join('&'));\r\n};\r\n\r\nexport const useProvincias = () => {\r\n return useQuery(['provinciasData'], () => getProvinces());\r\n};\r\n\r\nexport const useProvinciasAOCP = () => {\r\n return useQuery(['provinciasData'], () =>\r\n getProvincesAOCP(),\r\n );\r\n};\r\n\r\nexport const useMovimientos = () => {\r\n return useQuery(['movimientosData'], () =>\r\n getMovimientosCantonales(),\r\n );\r\n};\r\n\r\nexport const useSectores = () => {\r\n return useQuery(['sectoresData'], () => getSectores());\r\n};\r\n","import axios from 'axios';\r\n// import Lodash from 'lodash';\r\n\r\naxios.defaults.baseURL = process.env.REACT_APP_API_BASE_URL;\r\n\r\n// eslint-disable-next-line import/prefer-default-export\r\nexport const addPrevencion = params => {\r\n const { dataPrevencion } = params;\r\n\r\n const infoPrevencion = {\r\n prevencion: dataPrevencion,\r\n };\r\n\r\n return axios.post(\r\n '/prevencion/addPrevencionAOCP',\r\n infoPrevencion,\r\n );\r\n};\r\n","import axios from 'axios';\r\n\r\nconst axiosInstance = axios.create({\r\n baseURL: process.env.REACT_APP_API_BASE_URL,\r\n responseType: 'json',\r\n});\r\n\r\nconst getFullBalanceById = _ced => {\r\n return axiosInstance.get(\r\n `gestores/cuadroSaldosAOCP/${_ced}`,\r\n );\r\n};\r\n\r\nexport default {\r\n getBalanceById: getFullBalanceById,\r\n};\r\n","/* eslint-disable radix */\r\nimport Lodash from 'lodash';\r\nimport { addPrevencion } from '../Api/prevencionApi';\r\nimport balanceGlobalApi from '../Api/balanceGlobalApi';\r\nimport { generatePrevencion } from './Comprobante';\r\n\r\n// eslint-disable-next-line import/prefer-default-export\r\nexport const startPrevencion = async (\r\n user,\r\n nCodPapeleta,\r\n nConsecutivo,\r\n indProceso,\r\n title,\r\n fechaPapeleta,\r\n gestorInfo,\r\n) => {\r\n await balanceGlobalApi\r\n .getBalanceById(user.num_cedula)\r\n .then(bResult => {\r\n const currentSaldo = Lodash.get(\r\n bResult,\r\n ['data', 'response', 'saldo'],\r\n 0,\r\n );\r\n\r\n if (parseInt(currentSaldo) < 0) {\r\n // Inicia la Prevencion\r\n const dataPrevencion = {\r\n num_cedula: user.num_cedula,\r\n cod_papeleta: nCodPapeleta,\r\n con_papeleta: nConsecutivo,\r\n ind_proceso: indProceso,\r\n ind_estado: 1,\r\n cod_usuario: user.des_login,\r\n };\r\n\r\n addPrevencion({ dataPrevencion }).then(pResult => {\r\n const idPrevencion = Lodash.get(\r\n pResult,\r\n ['data', 'response'],\r\n 0,\r\n );\r\n if (idPrevencion > 0) {\r\n // Se genera el comprobante de prevencion\r\n const dataPapeleta = {\r\n title,\r\n consecutivo: nConsecutivo,\r\n fecha: fechaPapeleta,\r\n };\r\n generatePrevencion(\r\n idPrevencion,\r\n dataPapeleta,\r\n gestorInfo,\r\n );\r\n }\r\n });\r\n }\r\n });\r\n};\r\n","/* eslint-disable no-unused-vars */\nimport axios from 'axios';\nimport Lodash from 'lodash';\nimport { useQuery } from 'react-query';\nimport Consts from '../Consts/Consts';\n\naxios.defaults.baseURL = process.env.REACT_APP_API_BASE_URL;\n\nexport const addNew = params => {\n const { delegadosCantonalEnca, tFrmsCandidatos } = params;\n\n const papeletaData = {\n delegadosCantonalEnca,\n tFrmsCandidatos,\n };\n\n return axios.post(\n '/papeletaCantonesNoRepresentados',\n papeletaData,\n );\n};\n\nexport const getNumPapeletasDelegadoCantonal = (\n idProvince,\n idCanton,\n) => {\n const url = [\n `/papeletaCantonesNoRepresentados/numPapeletas/${idProvince}/${idCanton}`,\n ];\n\n return axios.get(url.join('&'));\n};\n\nexport const searchPapeletas = (\n codProvincia,\n codCanton,\n numero,\n) => {\n const url = [\n `/papeletaCantonesNoRepresentados/doSearch/${codProvincia}/${codCanton}/${numero}`,\n ];\n\n return axios.get(url.join('&'));\n};\n\nexport const getDetallePapeleta = codPapeleta => {\n const url = [\n `/papeletaCantonesNoRepresentados/getDetallePapeleta/${codPapeleta}`,\n ];\n\n return axios.get(url.join('&'));\n};\n\nexport const getNumPapeletaStatus = params => {\n const { papeleta, provincia, canton } = params;\n const url = [\n `/papeletaCantonesNoRepresentados/numPapeletaStatus/${papeleta}/${provincia}/${canton}`,\n ];\n return axios.get(url.join('&'));\n};\n\nexport const blockNumPapeleta = params => {\n const { numPapeleta, codProvincia, codCanton } = params;\n\n const papeletaData = {\n numPapeleta,\n codProvincia,\n codCanton,\n };\n\n return axios.post(\n '/papeletaCantonesNoRepresentados/blockNumPapeleta',\n papeletaData,\n );\n};\n\nexport const updatePapeleta = params => {\n const {\n codPapeleta,\n delegadosCantonalEnca,\n tFrmsCandidatos,\n } = params;\n\n const papeletaData = {\n codPapeleta,\n delegadosCantonalEnca,\n tFrmsCandidatos,\n };\n\n return axios.post(\n '/papeletaCantonesNoRepresentados/update',\n papeletaData,\n );\n};\n\nconst getCandidatosPapeleta = async codPapeleta => {\n const url = [\n `/papeleta/getCandidatosPapeletaAOCP/${codPapeleta}`,\n ];\n\n const { data } = await axios.get(url.join('&'));\n\n return data;\n};\n\nconst getCantidadDelegados = async (\n idProvince,\n idCanton,\n) => {\n const url = [\n `/cantons/delegados/${idProvince}/${idCanton}`,\n ];\n\n const { data } = await axios.get(url.join('&'));\n\n return data[0].numDelegados;\n};\n\nconst searchByCedula = async cedula => {\n const url = [`/padron/searchbycedula/${cedula}`];\n const { data } = await axios.get(url.join('&'));\n return data;\n};\n\nconst preparedList = list => {\n const unlockedList = list.map(e => {\n Lodash.set(e, 'enabled', false);\n return e;\n });\n return unlockedList;\n};\n\nconst getAllDataPapeleta = async (data, codPapeleta) => {\n const initValues = Consts.delegadosCantonalesInitValues;\n Lodash.set(initValues, 'provincia', data.cod_prov);\n Lodash.set(initValues, 'canton', data.cod_cant);\n // Estado: REGISTRADA\n if (data.ind_estado === 2) {\n Lodash.set(initValues, 'papeleta', 999);\n // Estado: INSCRITA\n } else {\n const numStatus = await getNumPapeletaStatus({\n papeleta: data.numero,\n provincia: data.cod_prov,\n canton: data.cod_cant,\n });\n\n const numeroStatus = Lodash.get(numStatus, ['data']);\n\n if (numeroStatus === 1) {\n Lodash.set(initValues, 'papeleta', data.numero);\n } else {\n Lodash.set(initValues, 'papeleta', 999);\n }\n }\n\n const allPapeletas = await getNumPapeletasDelegadoCantonal(\n data.cod_prov,\n data.cod_cant,\n );\n\n const papeletasList = Lodash.get(allPapeletas, ['data']);\n const plist = papeletasList.map(({ papeleta }) => {\n return {\n itemLabel: papeleta,\n value: papeleta,\n };\n });\n plist.unshift({\n itemLabel: '- NUMERO DE PAPELETA -',\n value: 999,\n });\n\n // Se preparan las listas para que los campos esten desbloquedos\n const iListDelegados = preparedList(\n Consts.initListDelegados,\n );\n\n // Se obtiene el numero de delegados\n const numDelegados = 4;\n\n // Se obtienen todos los candidatos registrados en la papeleta\n const candidatos = await getCandidatosPapeleta(\n codPapeleta,\n );\n\n /* ====== Lista de Delegados ====== */\n const delegados = candidatos.filter(candidato => {\n return candidato.NUM_PUESTO < 5;\n });\n\n const listDelegados = await Promise.all(\n delegados.map(async (d, index) => {\n const delegado = await searchByCedula(d.NUM_CEDULA);\n\n // Datos de la persona\n const person = Lodash.get(delegado, ['response', 0]);\n\n // Nombre de la persona\n const personName = `${person.des_nombre} ${person.des_apell1} ${person.des_apell2}`;\n const personCedula = person.num_cedula;\n const personEdad = person.num_edad;\n\n let sexVal = 'M';\n if (person.sexo !== 1) {\n sexVal = 'F';\n }\n\n Lodash.set(\n initValues,\n `delegado${d.NUM_PUESTO}`,\n personCedula,\n );\n\n return {\n id: d.NUM_PUESTO,\n lugar: d.NUM_PUESTO,\n numPuesto: d.NUM_PUESTO,\n fieldName: `delegado${d.NUM_PUESTO}`,\n cedula: personCedula,\n nombre: personName,\n sexo: sexVal,\n edad: personEdad,\n enabled: true,\n filled: true,\n };\n }),\n );\n\n const aDelegados = iListDelegados.map(del => {\n const f = Lodash.find(listDelegados, {\n fieldName: del.fieldName,\n });\n\n if (f === undefined) {\n return del;\n }\n return f;\n });\n\n // Merging List Delegados\n const allDelegados = Lodash.merge(\n iListDelegados,\n aDelegados,\n );\n\n const firstDelegado = allDelegados[0].sexo;\n let sexOrder = Consts.delegadosMOrder;\n if (firstDelegado !== 'M') {\n sexOrder = Consts.delegadosFOrder;\n }\n\n // Se establece el sexo para el resto de la lista\n const finalListDelegados = Lodash.map(\n allDelegados,\n (d, index) => {\n const newData = {\n id: d.id,\n lugar: d.lugar,\n numPuesto: d.numPuesto,\n fieldName: d.fieldName,\n cedula: d.cedula,\n nombre: d.nombre,\n sexo: sexOrder[index].sexo,\n edad: d.edad,\n enabled: d.cedula !== '',\n filled: d.filled,\n };\n\n return newData;\n },\n );\n\n return {\n papeletaData: data,\n numDelegados,\n papeletas: plist,\n candidatos: {\n listDelegados: finalListDelegados,\n },\n initValues,\n };\n};\n\nexport const getPapeletaInfo = async params => {\n try {\n const { cedGestor, codPapeleta } = params;\n\n const url = [\n `/papeletaCantonesNoRepresentados/getByCodPapeleta/${cedGestor}/${codPapeleta}`,\n ];\n\n const { data } = await axios.get(url.join('&'));\n const papeletaData = getAllDataPapeleta(\n data.response[0],\n codPapeleta,\n );\n\n return papeletaData;\n } catch (e) {\n return { papeletaData: {} };\n }\n};\n\nexport const usePapeletaInfo = (cedGestor, codPapeleta) => {\n return useQuery(\n ['papeletaData', cedGestor, codPapeleta],\n () => getPapeletaInfo(cedGestor, codPapeleta),\n );\n};\n","/* eslint-disable max-len */\r\n/* eslint-disable radix */\r\n/* eslint-disable camelcase */\r\nimport React, { useState, useEffect } from 'react';\r\nimport { useHistory } from 'react-router-dom';\r\nimport Lodash from 'lodash';\r\nimport { useJwt } from 'react-jwt';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport { Grid, Button, Divider } from '@material-ui/core';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Box from '@material-ui/core/Box';\r\nimport Container from '@material-ui/core/Container';\r\nimport Paper from '@material-ui/core/Paper';\r\nimport CircularProgress from '@material-ui/core/CircularProgress';\r\nimport ArrowBackIcon from '@material-ui/icons/ArrowBack';\r\nimport SaveIcon from '@material-ui/icons/Save';\r\nimport SendIcon from '@material-ui/icons/Send';\r\n\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport DialogActions from '@material-ui/core/DialogActions';\r\nimport DialogContent from '@material-ui/core/DialogContent';\r\nimport DialogContentText from '@material-ui/core/DialogContentText';\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\nimport Slide from '@material-ui/core/Slide';\r\n\r\nimport { Formik, Field } from 'formik';\r\nimport * as Yup from 'yup';\r\nimport style from './styles';\r\n\r\nimport { PlnDropdown } from '../../Components/Input';\r\nimport Copyright from '../Copyright/Copyright';\r\nimport ListSearch from '../../Components/ListSearch/ListSearch';\r\nimport {\r\n useProvinciasAOCP,\r\n getCantonsByProvince,\r\n} from '../../Core/Api/locationApi';\r\nimport { getEstadoPapeleta } from '../../Core/Utils/Utils';\r\nimport { generateComprobante } from '../../Core/Utils/Comprobante';\r\nimport { startPrevencion } from '../../Core/Utils/Prevencion';\r\n\r\nimport Consts from '../../Core/Consts/Consts';\r\nimport Storage from '../../Storage/Storage';\r\n\r\nimport {\r\n addNew,\r\n updatePapeleta,\r\n getNumPapeletasDelegadoCantonal,\r\n getNumPapeletaStatus,\r\n blockNumPapeleta,\r\n} from '../../Core/Api/papeletaDelegadoCantonal';\r\n\r\nimport { useCRUDAvailable } from '../../Core/Api/periodoApi';\r\n\r\nconst Transition = React.forwardRef(function Transition(\r\n tProps,\r\n ref,\r\n) {\r\n // eslint-disable-next-line react/jsx-props-no-spreading\r\n return ;\r\n});\r\n\r\nconst AddCantonesNoRepresentados = props => {\r\n // Se valida si esta habilitado CRUD\r\n const isCRUDAvailable = useCRUDAvailable();\r\n const crudAvailable = Lodash.get(\r\n isCRUDAvailable,\r\n ['data', 'response'],\r\n null,\r\n );\r\n const { classes } = props;\r\n const history = useHistory();\r\n const { data } = useProvinciasAOCP();\r\n\r\n const [user, setUser] = useState([]);\r\n const [statusPapeleta] = useState(3);\r\n const [dateField, setDateField] = useState('');\r\n const [consecutivo, setConsecutivo] = useState('');\r\n const [codPapeleta, setCodPapeleta] = useState(null);\r\n const [fecPapeleta, setFecPapeleta] = useState('');\r\n const [isSaving, setIsSaving] = useState(false);\r\n const [showfilters, setShowfilters] = useState(true);\r\n const [showNumPapeleta, setShowNumPapeleta] = useState(\r\n false,\r\n );\r\n\r\n const tokenData = Storage.instance;\r\n const { decodedToken } = useJwt(tokenData.getToken());\r\n\r\n const [msjDialog, setMsjDialog] = useState('');\r\n const [open, setOpenDialog] = React.useState(false);\r\n const [finalDialog, setFinalDialog] = React.useState(\r\n false,\r\n );\r\n\r\n const handleClose = () => {\r\n setOpenDialog(false);\r\n setIsSaving(false);\r\n };\r\n\r\n const closeFinalDialog = () => {\r\n history.push('/cantones-no-representados');\r\n };\r\n\r\n // Date Options\r\n const options = {\r\n year: 'numeric',\r\n month: '2-digit',\r\n day: '2-digit',\r\n // timeZone: 'UTC',\r\n };\r\n\r\n useEffect(() => {\r\n if (decodedToken !== null) {\r\n setUser(decodedToken);\r\n }\r\n\r\n const today = new Date();\r\n setDateField(\r\n today.toLocaleDateString('es-ES', options),\r\n );\r\n }, [decodedToken, options]);\r\n\r\n const [showForm, setShowForm] = useState(false);\r\n\r\n // Opciones Seleccionadas\r\n const [sProvincia, setSProvincia] = useState(9);\r\n const [sCanton, setSCanton] = useState(999);\r\n const [sPapeleta, setSPapeleta] = useState(999);\r\n const [numDelegados, setNumDelegados] = useState(0);\r\n\r\n const [listDelegados, setListDelegados] = useState(\r\n Consts.initListDelegados,\r\n );\r\n\r\n // Lista de: Provincias, Cantones, Distritos\r\n const [initialValues] = useState(\r\n Lodash.get(data, ['initValues'], {\r\n provincia: 9,\r\n canton: 999,\r\n distrito: 999,\r\n papeleta: 999,\r\n delegado1: '',\r\n delegado2: '',\r\n delegado3: '',\r\n delegado4: '',\r\n delegado5: '',\r\n delegado6: '',\r\n delegado7: '',\r\n delegado8: '',\r\n delegado9: '',\r\n presidente: '',\r\n vicePresidente: '',\r\n secretario: '',\r\n subSecretario: '',\r\n tesoreria: '',\r\n subTesoreria: '',\r\n propietario: '',\r\n }),\r\n );\r\n const provincias = Lodash.get(\r\n data,\r\n ['frmOptions'],\r\n [\r\n {\r\n itemLabel: '- SELECCIONE LA PROVINCIA -',\r\n value: 9,\r\n },\r\n ],\r\n );\r\n const [cantones, setCantones] = useState([\r\n { itemLabel: '- SELECCIONE EL CANTÓN-', value: 999 },\r\n ]);\r\n\r\n const [papeletas, setPapeletas] = useState([\r\n { itemLabel: '- NUMERO DE PAPELETA -', value: 999 },\r\n ]);\r\n\r\n const setProvincia = p => {\r\n initialValues.provincia = p;\r\n initialValues.canton = 999;\r\n if (p !== 9) {\r\n setShowForm(false);\r\n getCantonsByProvince(p).then(result => {\r\n if (result.status === 200) {\r\n const cantonsList = Lodash.get(result, [\r\n 'data',\r\n 'response',\r\n ]);\r\n\r\n const clist = cantonsList.map(\r\n ({ cod_canton, des_nombre_c }) => {\r\n return {\r\n itemLabel: des_nombre_c,\r\n value: cod_canton,\r\n };\r\n },\r\n );\r\n clist.unshift({\r\n itemLabel: '- SELECCIONE EL CANTÓN-',\r\n value: 999,\r\n });\r\n\r\n setSProvincia(\r\n Lodash.find(provincias, {\r\n value: p,\r\n }),\r\n );\r\n setCantones(clist);\r\n }\r\n });\r\n } else {\r\n setCantones([\r\n {\r\n itemLabel: '- SELECCIONE EL CANTÓN-',\r\n value: 999,\r\n },\r\n ]);\r\n }\r\n };\r\n\r\n const setCanton = c => {\r\n setShowfilters(false);\r\n initialValues.provincia = sProvincia.value;\r\n initialValues.canton = c;\r\n\r\n if (c !== 999) {\r\n setShowForm(true);\r\n setShowNumPapeleta(true);\r\n setSCanton(\r\n Lodash.find(cantones, {\r\n value: c,\r\n }),\r\n );\r\n setNumDelegados(4);\r\n\r\n getNumPapeletasDelegadoCantonal(\r\n sProvincia.value,\r\n c,\r\n ).then(result => {\r\n if (result.status === 200) {\r\n const papeletasList = Lodash.get(result, [\r\n 'data',\r\n ]);\r\n const plist = papeletasList.map(\r\n ({ papeleta }) => {\r\n return {\r\n itemLabel: papeleta,\r\n value: papeleta,\r\n };\r\n },\r\n );\r\n plist.unshift({\r\n itemLabel: '- NUMERO DE PAPELETA -',\r\n value: 999,\r\n });\r\n\r\n setPapeletas(plist);\r\n }\r\n });\r\n }\r\n };\r\n\r\n const setPapeleta = p => {\r\n initialValues.papeleta = p;\r\n setSPapeleta(\r\n Lodash.find(papeletas, {\r\n value: p,\r\n }),\r\n );\r\n };\r\n\r\n const validationSchema = Yup.object({});\r\n\r\n // Se valida que exista al menos 1 en la lista\r\n const verifyIfCanSave = lCandidates => {\r\n const totalRegistersOnList = Object.keys(\r\n lCandidates,\r\n ).map(c => {\r\n const total = Lodash.countBy(lCandidates[c], rec => {\r\n return rec.filled === true;\r\n });\r\n const result = Lodash.get(total, 'true', 0);\r\n return { count: result };\r\n });\r\n\r\n const canSave = Lodash.find(totalRegistersOnList, o => {\r\n return o.count > 0;\r\n });\r\n\r\n let status = true;\r\n if (!canSave) {\r\n status = false;\r\n }\r\n\r\n return status;\r\n };\r\n\r\n const saveForm = (\r\n values,\r\n { setSubmitting, setFieldValue },\r\n ) => {\r\n const { provincia, canton, papeleta } = values;\r\n\r\n setSubmitting(true);\r\n // Se valida que se haya seleccionado un numero de papeleta\r\n if (papeleta === 999) {\r\n setMsjDialog(\r\n 'Debe seleccionar el número de papeleta',\r\n );\r\n setOpenDialog(true);\r\n setIsSaving(false);\r\n setSubmitting(false);\r\n\r\n return;\r\n }\r\n\r\n /*\r\n // Se valida que esté el 50% de los Delegados\r\n const mitadDelegados = Math.floor(numDelegados / 2);\r\n */\r\n const totalDelegados = Lodash.countBy(\r\n listDelegados,\r\n rec => {\r\n return rec.filled === true;\r\n },\r\n );\r\n\r\n if (\r\n totalDelegados.true === undefined ||\r\n totalDelegados.true < 4\r\n ) {\r\n setMsjDialog(\r\n 'Debe completarse el 100% de los delegados en la papeleta',\r\n );\r\n setOpenDialog(true);\r\n setSubmitting(false);\r\n return;\r\n }\r\n\r\n // Segun el estado de la papeleta, se Crea o Actualiza\r\n getNumPapeletaStatus({\r\n papeleta,\r\n provincia,\r\n canton,\r\n }).then(result => {\r\n const papeletaStatus = Lodash.get(\r\n result,\r\n ['data'],\r\n 0,\r\n );\r\n\r\n if (papeletaStatus === 1) {\r\n // Encabezado Papeleta\r\n const delegadosCantonalEnca = {\r\n cod_prov: provincia,\r\n cod_cant: canton,\r\n ind_estado: 2,\r\n num_papeleta: papeleta,\r\n num_consecutivo: consecutivo,\r\n num_cedula: user.num_cedula,\r\n des_usuario: user.des_login,\r\n };\r\n\r\n // Detalle Papeleta\r\n const tFrmsCandidatos = {\r\n delegados: listDelegados,\r\n };\r\n\r\n if (consecutivo === '') {\r\n // Se valida el 50% de la Cuota de Juventud en los DELEGADOS\r\n // eslint-disable-next-line no-unused-vars\r\n const porcentajeDelegados = Math.floor(\r\n tFrmsCandidatos.delegados.length * 0.5,\r\n );\r\n\r\n const totalCuotaJuventudD = Lodash.countBy(\r\n tFrmsCandidatos.delegados,\r\n rec => {\r\n return (\r\n Number.isInteger(rec.edad) && rec.edad <= 35\r\n );\r\n },\r\n );\r\n\r\n if (\r\n totalCuotaJuventudD.true === undefined ||\r\n totalCuotaJuventudD.true < 2\r\n ) {\r\n setMsjDialog(\r\n // eslint-disable-next-line max-len\r\n 'La papeleta NO cumple con el 50% de la cuota de Juventud en La lista de Delegados. Favor revise los miembros de su papeleta',\r\n );\r\n setOpenDialog(true);\r\n setSubmitting(false);\r\n return;\r\n }\r\n\r\n // Se Crea Nueva Papeleta\r\n addNew({\r\n delegadosCantonalEnca,\r\n tFrmsCandidatos,\r\n }).then(rNew => {\r\n const nCodPapeleta = Lodash.get(\r\n rNew,\r\n ['data', 'codPapeleta'],\r\n '',\r\n );\r\n const nConsecutivo = Lodash.get(\r\n rNew,\r\n ['data', 'consecutivo'],\r\n '',\r\n );\r\n const fechaPapeleta = Lodash.get(\r\n rNew,\r\n ['data', 'fecha'],\r\n '',\r\n );\r\n const nMontos = Lodash.get(\r\n rNew,\r\n ['data', 'montos'],\r\n '',\r\n );\r\n\r\n // Se bloquea el numero de papeleta\r\n blockNumPapeleta({\r\n numPapeleta: sPapeleta.value,\r\n codProvincia: sProvincia.value,\r\n codCanton: sCanton.value,\r\n });\r\n\r\n // COMPROBANTE: Se genera el Comprobante de la papeleta\r\n\r\n // Informacion General\r\n const generalInfo = {\r\n provincia: sProvincia.itemLabel,\r\n canton: sCanton.itemLabel,\r\n papeleta: sPapeleta.value,\r\n fecha: fechaPapeleta,\r\n consecutivo: nConsecutivo,\r\n };\r\n\r\n // Informacion Gestor\r\n const gestorInfo = {\r\n cedula: user.num_cedula,\r\n nombre: user.des_nombre,\r\n };\r\n\r\n // Informacion Delegados\r\n const candidatosDelegados = tFrmsCandidatos.delegados.map(\r\n ({ cedula, lugar, nombre }) => {\r\n return [lugar, cedula, nombre];\r\n },\r\n );\r\n\r\n const listCanDelegados = [];\r\n for (let cD = 0; cD < numDelegados; cD++) {\r\n listCanDelegados.push(\r\n candidatosDelegados[cD],\r\n );\r\n }\r\n\r\n // Informacion Candidatos\r\n const candidatosInfo = {\r\n delegados: listCanDelegados,\r\n };\r\n const montoInfo = {\r\n papeleta: nMontos.papeleta,\r\n membresia: nMontos.membresia,\r\n total: nMontos.total,\r\n };\r\n\r\n generateComprobante(\r\n 'ASAMBLEAS DE ÓRGANO CONSULTIVO PROVINCIAL',\r\n generalInfo,\r\n candidatosInfo,\r\n gestorInfo,\r\n montoInfo,\r\n );\r\n\r\n // PROCESO DE PREVENCIÓN\r\n startPrevencion(\r\n user,\r\n nCodPapeleta,\r\n nConsecutivo,\r\n 1,\r\n 'Papeleta Delegados Órgano Consultivo Nacional',\r\n fechaPapeleta,\r\n gestorInfo,\r\n );\r\n\r\n setSubmitting(false);\r\n setConsecutivo(nConsecutivo);\r\n setCodPapeleta(nCodPapeleta);\r\n setMsjDialog(\r\n 'La información de la papeleta se GUARDÓ correctamente.',\r\n );\r\n setFinalDialog(true);\r\n });\r\n } else {\r\n // Se valida el 50% de la Cuota de Juventud en los DELEGADOS\r\n const porcentajeDelegados = Math.floor(\r\n tFrmsCandidatos.delegados.length * 0.5,\r\n );\r\n\r\n const totalCuotaJuventudD = Lodash.countBy(\r\n tFrmsCandidatos.delegados,\r\n rec => {\r\n return (\r\n Number.isInteger(rec.edad) && rec.edad <= 35\r\n );\r\n },\r\n );\r\n\r\n if (\r\n totalCuotaJuventudD.true === undefined ||\r\n totalCuotaJuventudD.true < porcentajeDelegados\r\n ) {\r\n setMsjDialog(\r\n // eslint-disable-next-line max-len\r\n 'La papeleta NO cumple con el 50% de la cuota de Juventud en La lista de Delegados. Favor revise los miembros de su papeleta',\r\n );\r\n setOpenDialog(true);\r\n setSubmitting(false);\r\n return;\r\n }\r\n\r\n // Se Actualiza la Papeleta\r\n updatePapeleta({\r\n codPapeleta,\r\n delegadosCantonalEnca,\r\n tFrmsCandidatos,\r\n }).then(rUpdate => {\r\n const nCodPapeleta = Lodash.get(\r\n rUpdate,\r\n ['data', 'codPapeleta'],\r\n '',\r\n );\r\n\r\n const nMontos = Lodash.get(\r\n rUpdate,\r\n ['data', 'montos'],\r\n '',\r\n );\r\n\r\n if (nCodPapeleta !== '') {\r\n // Se bloquea el numero de papeleta\r\n blockNumPapeleta({\r\n numPapeleta: sPapeleta.value,\r\n codProvincia: sProvincia.value,\r\n codCanton: sCanton.value,\r\n });\r\n\r\n // COMPROBANTE: Se genera el Comprobante de la papeleta\r\n\r\n // Informacion General\r\n const generalInfo = {\r\n provincia: sProvincia.itemLabel,\r\n canton: sCanton.itemLabel,\r\n papeleta: sPapeleta.value,\r\n fecha: fecPapeleta,\r\n consecutivo,\r\n };\r\n\r\n // Informacion Gestor\r\n const gestorInfo = {\r\n cedula: user.num_cedula,\r\n nombre: user.des_nombre,\r\n };\r\n\r\n // Informacion Delegados\r\n const candidatosDelegados = tFrmsCandidatos.delegados.map(\r\n ({ cedula, lugar, nombre }) => {\r\n return [lugar, cedula, nombre];\r\n },\r\n );\r\n\r\n const listCanDelegados = [];\r\n for (let cD = 0; cD < numDelegados; cD++) {\r\n listCanDelegados.push(\r\n candidatosDelegados[cD],\r\n );\r\n }\r\n\r\n // Informacion Candidatos\r\n const candidatosInfo = {\r\n delegados: listCanDelegados,\r\n };\r\n const montoInfo = {\r\n papeleta: nMontos.papeleta,\r\n membresia: nMontos.membresia,\r\n total: nMontos.total,\r\n };\r\n generateComprobante(\r\n 'ASAMBLEAS DE ÓRGANO CONSULTIVO PROVINCIAL',\r\n generalInfo,\r\n candidatosInfo,\r\n gestorInfo,\r\n montoInfo,\r\n );\r\n\r\n // PROCESO DE PREVENCIÓN\r\n startPrevencion(\r\n user,\r\n nCodPapeleta,\r\n consecutivo,\r\n 1,\r\n 'Papeleta Delegados Órgano Consultivo Nacional',\r\n fecPapeleta,\r\n gestorInfo,\r\n );\r\n\r\n setSubmitting(false);\r\n setMsjDialog(\r\n 'La Información de la papeleta se ACTUALIZÓ correctamente.',\r\n );\r\n setFinalDialog(true);\r\n } else {\r\n setMsjDialog(\r\n 'La información NO pudo ser actualizada',\r\n );\r\n setSubmitting(false);\r\n setOpenDialog(true);\r\n }\r\n });\r\n }\r\n } else {\r\n setMsjDialog(\r\n // eslint-disable-next-line max-len\r\n 'ATENCIÓN: El número de papeleta seleccionado YA fue elegido. Debe de seleccionar otro número de papeleta',\r\n );\r\n setOpenDialog(true);\r\n setIsSaving(false);\r\n setSubmitting(false);\r\n setSPapeleta(\r\n Lodash.find(papeletas, {\r\n value: 999,\r\n }),\r\n );\r\n setFieldValue('papeleta', 999);\r\n getNumPapeletasDelegadoCantonal(\r\n provincia,\r\n canton,\r\n ).then(r => {\r\n if (r.status === 200) {\r\n const papeletasList = Lodash.get(r, ['data']);\r\n const plist = papeletasList.map(p => {\r\n return {\r\n itemLabel: p.papeleta,\r\n value: p.papeleta,\r\n };\r\n });\r\n plist.unshift({\r\n itemLabel: '- NUMERO DE PAPELETA -',\r\n value: 999,\r\n });\r\n\r\n setPapeletas(plist);\r\n }\r\n });\r\n }\r\n });\r\n };\r\n\r\n const savePapeleta = values => () => {\r\n setIsSaving(true);\r\n const { provincia, canton, papeleta } = values;\r\n\r\n // Se valida que se haya seleccionado un numero de papeleta\r\n if (papeleta === 999) {\r\n setMsjDialog(\r\n 'Debe seleccionar el número de papeleta',\r\n );\r\n setOpenDialog(true);\r\n setIsSaving(false);\r\n return;\r\n }\r\n\r\n const tFrmsCandidatos = {\r\n delegados: listDelegados,\r\n };\r\n\r\n // Se valida que exista al menos 1 candidato en la papeleta\r\n const canSave = verifyIfCanSave(tFrmsCandidatos);\r\n\r\n if (canSave) {\r\n const delegadosCantonalEnca = {\r\n cod_prov: provincia,\r\n cod_cant: canton,\r\n ind_estado: 3,\r\n num_papeleta: papeleta,\r\n num_consecutivo: consecutivo,\r\n num_cedula: user.num_cedula,\r\n des_usuario: user.des_login,\r\n };\r\n\r\n if (consecutivo === '') {\r\n addNew({\r\n delegadosCantonalEnca,\r\n tFrmsCandidatos,\r\n }).then(result => {\r\n const nCodPapeleta = Lodash.get(\r\n result,\r\n ['data', 'codPapeleta'],\r\n '',\r\n );\r\n const nConsecutivo = Lodash.get(\r\n result,\r\n ['data', 'consecutivo'],\r\n '',\r\n );\r\n const fechaPapeleta = Lodash.get(\r\n result,\r\n ['data', 'fecha'],\r\n '',\r\n );\r\n setConsecutivo(nConsecutivo);\r\n setCodPapeleta(nCodPapeleta);\r\n setFecPapeleta(fechaPapeleta);\r\n setMsjDialog(\r\n 'La información de la papeleta se GUARDÓ correctamente.',\r\n );\r\n setOpenDialog(true);\r\n });\r\n } else {\r\n updatePapeleta({\r\n codPapeleta,\r\n delegadosCantonalEnca,\r\n tFrmsCandidatos,\r\n }).then(result => {\r\n const nCodPapeleta = Lodash.get(\r\n result,\r\n ['data', 'codPapeleta'],\r\n '',\r\n );\r\n if (nCodPapeleta !== '') {\r\n setMsjDialog(\r\n 'La Información de la papeleta se ACTUALIZÓ correctamente.',\r\n );\r\n setOpenDialog(true);\r\n } else {\r\n setMsjDialog(\r\n 'La información NO pudo ser actualizada',\r\n );\r\n setOpenDialog(true);\r\n }\r\n });\r\n }\r\n } else {\r\n setMsjDialog(\r\n 'Al menos debe de haber ingresado un candidato en la papeleta',\r\n );\r\n setOpenDialog(true);\r\n setIsSaving(false);\r\n }\r\n };\r\n\r\n AddCantonesNoRepresentados.propTypes = {};\r\n\r\n return (\r\n <>\r\n {crudAvailable ? (\r\n \r\n \r\n \r\n \r\n \r\n Nueva Papeleta Cantones No Representados\r\n {\r\n history.push(\r\n '/cantones-no-representados',\r\n );\r\n }}\r\n >\r\n Regresar\r\n \r\n \r\n \r\n {formik => (\r\n <>\r\n
\r\n \r\n \r\n

Provincia

\r\n \r\n setProvincia(provincia)\r\n }\r\n />\r\n
\r\n \r\n

Cantón

\r\n \r\n setCanton(canton)\r\n }\r\n />\r\n
\r\n \r\n \r\n \r\n

Número de Papeleta:

\r\n \r\n setPapeleta(papeleta)\r\n }\r\n />\r\n
\r\n \r\n \r\n\r\n {showForm ? (\r\n
\r\n \r\n Datos del Gestor\r\n \r\n \r\n \r\n \r\n Estado\r\n \r\n \r\n {getEstadoPapeleta(\r\n statusPapeleta,\r\n )}\r\n
\r\n \r\n \r\n \r\n Fecha\r\n \r\n \r\n {dateField}\r\n \r\n \r\n \r\n \r\n Consecutivo\r\n \r\n \r\n {consecutivo}\r\n \r\n \r\n \r\n \r\n Cédula\r\n \r\n \r\n {user.num_cedula}\r\n \r\n \r\n \r\n \r\n Nombre\r\n \r\n \r\n {user.des_nombre}\r\n \r\n \r\n \r\n \r\n Provincia\r\n \r\n \r\n {sProvincia.itemLabel}\r\n \r\n \r\n \r\n \r\n Cantón\r\n \r\n \r\n {sCanton.itemLabel}\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n {formik.isSubmitting ? (\r\n \r\n ) : (\r\n <>\r\n Enviar\r\n \r\n \r\n )}\r\n \r\n \r\n {isSaving ? (\r\n \r\n ) : (\r\n <>\r\n Guardar\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n ) : (\r\n ''\r\n )}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n Mensaje\r\n \r\n \r\n \r\n {msjDialog}\r\n \r\n \r\n \r\n \r\n Entendido\r\n \r\n \r\n \r\n \r\n \r\n Mensaje\r\n \r\n \r\n \r\n {msjDialog}\r\n \r\n \r\n \r\n \r\n Cerrar\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n ) : (\r\n \r\n \r\n \r\n

\r\n Esta sección se encuentra temporalmente\r\n deshabilitada.
\r\n Favor comunicarse con Ezequiel Hernández al\r\n 2519-5521 o al correo\r\n ehernandez@plndigital.com\r\n

\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default withStyles(style)(\r\n AddCantonesNoRepresentados,\r\n);\r\n","/* eslint-disable max-len */\r\n/* eslint-disable camelcase */\r\nimport React, { useState, useEffect } from 'react';\r\nimport { useHistory, useParams } from 'react-router-dom';\r\nimport Lodash from 'lodash';\r\nimport Container from '@material-ui/core/Container';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport { Grid, Button, Divider } from '@material-ui/core';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Paper from '@material-ui/core/Paper';\r\nimport CircularProgress from '@material-ui/core/CircularProgress';\r\nimport ArrowBackIcon from '@material-ui/icons/ArrowBack';\r\nimport Box from '@material-ui/core/Box';\r\nimport SaveIcon from '@material-ui/icons/Save';\r\nimport SendIcon from '@material-ui/icons/Send';\r\n\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport DialogActions from '@material-ui/core/DialogActions';\r\nimport DialogContent from '@material-ui/core/DialogContent';\r\nimport DialogContentText from '@material-ui/core/DialogContentText';\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\nimport Slide from '@material-ui/core/Slide';\r\n\r\nimport { Formik, Field } from 'formik';\r\nimport { useJwt } from 'react-jwt';\r\nimport * as Yup from 'yup';\r\nimport Loading from '../../Components/Loading/Loading';\r\nimport { PlnDropdown } from '../../Components/Input';\r\nimport Copyright from '../Copyright/Copyright';\r\nimport ListSearch from '../../Components/ListSearch/ListSearch';\r\nimport Consts from '../../Core/Consts/Consts';\r\nimport style from './styles';\r\nimport { getEstadoPapeleta } from '../../Core/Utils/Utils';\r\nimport { generateComprobante } from '../../Core/Utils/Comprobante';\r\nimport { startPrevencion } from '../../Core/Utils/Prevencion';\r\nimport Storage from '../../Storage/Storage';\r\n\r\nimport { useCRUDAvailable } from '../../Core/Api/periodoApi';\r\n\r\nimport {\r\n usePapeletaInfo,\r\n updatePapeleta,\r\n getNumPapeletasDelegadoCantonal,\r\n getNumPapeletaStatus,\r\n blockNumPapeleta,\r\n} from '../../Core/Api/papeletaDelegadoCantonal';\r\n\r\nconst Transition = React.forwardRef(function Transition(\r\n tProps,\r\n ref,\r\n) {\r\n // eslint-disable-next-line react/jsx-props-no-spreading\r\n return ;\r\n});\r\n\r\nconst EditCantonesNoRepresentados = props => {\r\n // Se valida si esta habilitado CRUD\r\n const isCRUDAvailable = useCRUDAvailable();\r\n const crudAvailable = Lodash.get(\r\n isCRUDAvailable,\r\n ['data', 'response'],\r\n null,\r\n );\r\n const { classes } = props;\r\n const { id } = useParams();\r\n const history = useHistory();\r\n\r\n const [user, setUser] = useState([]);\r\n const [isSaving, setIsSaving] = useState(false);\r\n\r\n const [listDelegados, setListDelegados] = useState(\r\n Consts.initListDelegados,\r\n );\r\n\r\n const [msjDialog, setMsjDialog] = useState('');\r\n const [open, setOpenDialog] = React.useState(false);\r\n const [finalDialog, setFinalDialog] = React.useState(\r\n false,\r\n );\r\n const handleClose = () => {\r\n setOpenDialog(false);\r\n setIsSaving(false);\r\n };\r\n\r\n const closeFinalDialog = () => {\r\n history.push('/cantones-no-representados');\r\n };\r\n\r\n const validationSchema = Yup.object({});\r\n\r\n const tokenData = Storage.instance;\r\n const { decodedToken } = useJwt(tokenData.getToken());\r\n\r\n const numCedula = Lodash.get(\r\n decodedToken,\r\n ['num_cedula'],\r\n 0,\r\n );\r\n\r\n const { data } = usePapeletaInfo({\r\n cedGestor: numCedula,\r\n codPapeleta: id,\r\n });\r\n\r\n // Datos Generales de la papeleta\r\n const papeletaData = Lodash.get(\r\n data,\r\n ['papeletaData'],\r\n [],\r\n );\r\n\r\n // Cantidad de Delegados\r\n const numDelegados = Lodash.get(\r\n data,\r\n ['numDelegados'],\r\n [],\r\n );\r\n\r\n // Lista de Candidatos incritos\r\n const candidatos = Lodash.get(data, ['candidatos'], []);\r\n\r\n useEffect(() => {\r\n if (decodedToken) {\r\n setUser(decodedToken);\r\n }\r\n }, [decodedToken]);\r\n\r\n if (!Lodash.isEmpty(papeletaData)) {\r\n const {\r\n numero,\r\n ind_estado,\r\n provincia,\r\n canton,\r\n cod_cant,\r\n cod_prov,\r\n fec_inscripcion,\r\n num_consecutivo,\r\n } = papeletaData;\r\n\r\n // Date Options\r\n const options = {\r\n year: 'numeric',\r\n month: '2-digit',\r\n day: '2-digit',\r\n };\r\n\r\n const today = new Date(fec_inscripcion);\r\n const papeletaDate = today.toLocaleDateString(\r\n 'es-ES',\r\n options,\r\n );\r\n\r\n const initialValues = Lodash.get(\r\n data,\r\n ['initValues'],\r\n [],\r\n );\r\n\r\n const setPapeleta = p => {\r\n initialValues.papeleta = p;\r\n };\r\n\r\n const papeletas = Lodash.get(data, ['papeletas'], []);\r\n\r\n // Se valida que exista al menos 1 en la lista\r\n const verifyIfCanSave = lCandidates => {\r\n const totalRegistersOnList = Object.keys(\r\n lCandidates,\r\n ).map(c => {\r\n const total = Lodash.countBy(\r\n lCandidates[c],\r\n rec => {\r\n return rec.filled === true;\r\n },\r\n );\r\n const result = Lodash.get(total, 'true', 0);\r\n return { count: result };\r\n });\r\n\r\n const canSave = Lodash.find(\r\n totalRegistersOnList,\r\n o => {\r\n return o.count > 0;\r\n },\r\n );\r\n\r\n let status = true;\r\n if (!canSave) {\r\n status = false;\r\n }\r\n\r\n return status;\r\n };\r\n\r\n const saveForm = (\r\n values,\r\n { setSubmitting, setFieldValue },\r\n ) => {\r\n const { papeleta } = values;\r\n\r\n // Se valida que se haya seleccionado un numero de papeleta\r\n if (papeleta === 999) {\r\n setMsjDialog(\r\n 'Debe seleccionar el número de papeleta',\r\n );\r\n setOpenDialog(true);\r\n setIsSaving(false);\r\n setSubmitting(false);\r\n\r\n return;\r\n }\r\n\r\n /*\r\n // Se valida que esté el 50% de los Delegados\r\n const mitadDelegados = Math.floor(numDelegados / 2);\r\n */\r\n const totalDelegados = Lodash.countBy(\r\n listDelegados,\r\n rec => {\r\n return rec.filled === true;\r\n },\r\n );\r\n\r\n if (\r\n totalDelegados.true === undefined ||\r\n totalDelegados.true < 4\r\n ) {\r\n setMsjDialog(\r\n 'Debe completarse el 100% de los delegados en la papeleta',\r\n );\r\n setOpenDialog(true);\r\n setSubmitting(false);\r\n return;\r\n }\r\n\r\n // Segun el estado de la papeleta, se Crea o Actualiza\r\n getNumPapeletaStatus({\r\n papeleta,\r\n provincia: cod_prov,\r\n canton: cod_cant,\r\n }).then(result => {\r\n const papeletaStatus = Lodash.get(\r\n result,\r\n ['data'],\r\n 0,\r\n );\r\n\r\n if (papeletaStatus === 1) {\r\n // Encabezado Papeleta\r\n const delegadosCantonalEnca = {\r\n cod_prov,\r\n cod_cant,\r\n ind_estado: 2,\r\n num_papeleta: papeleta,\r\n num_consecutivo,\r\n num_cedula: user.num_cedula,\r\n des_usuario: user.des_login,\r\n };\r\n\r\n // Detalle Papeleta\r\n const tFrmsCandidatos = {\r\n delegados: listDelegados,\r\n };\r\n\r\n // Se valida el 50% de la Cuota de Juventud en los DELEGADOS\r\n // eslint-disable-next-line no-unused-vars\r\n const porcentajeDelegados = Math.floor(\r\n tFrmsCandidatos.delegados.length * 0.5,\r\n );\r\n\r\n const totalCuotaJuventudD = Lodash.countBy(\r\n tFrmsCandidatos.delegados,\r\n rec => {\r\n return (\r\n Number.isInteger(rec.edad) && rec.edad <= 35\r\n );\r\n },\r\n );\r\n\r\n if (\r\n totalCuotaJuventudD.true === undefined ||\r\n totalCuotaJuventudD.true < 2\r\n ) {\r\n setMsjDialog(\r\n // eslint-disable-next-line max-len\r\n 'La papeleta NO cumple con el 50% de la cuota de Juventud en La lista de Delegados. Favor revise los miembros de su papeleta',\r\n );\r\n setOpenDialog(true);\r\n setSubmitting(false);\r\n return;\r\n }\r\n\r\n // Se Actualiza la Papeleta\r\n updatePapeleta({\r\n codPapeleta: id,\r\n delegadosCantonalEnca,\r\n tFrmsCandidatos,\r\n }).then(rUpdate => {\r\n const nCodPapeleta = Lodash.get(\r\n rUpdate,\r\n ['data', 'codPapeleta'],\r\n '',\r\n );\r\n\r\n const nMontos = Lodash.get(\r\n rUpdate,\r\n ['data', 'montos'],\r\n '',\r\n );\r\n\r\n if (nCodPapeleta !== '') {\r\n // Se bloquea el numero de papeleta\r\n blockNumPapeleta({\r\n numPapeleta: papeleta,\r\n codProvincia: cod_prov,\r\n codCanton: cod_cant,\r\n });\r\n\r\n // COMPROBANTE: Se genera el Comprobante de la papeleta\r\n\r\n // Informacion General\r\n const generalInfo = {\r\n provincia,\r\n canton,\r\n papeleta,\r\n fecha: papeletaDate,\r\n consecutivo: num_consecutivo,\r\n };\r\n\r\n // Informacion Gestor\r\n const gestorInfo = {\r\n cedula: user.num_cedula,\r\n nombre: user.des_nombre,\r\n };\r\n\r\n // Informacion Delegados\r\n const candidatosDelegados = tFrmsCandidatos.delegados.map(\r\n ({ cedula, lugar, nombre }) => {\r\n return [lugar, cedula, nombre];\r\n },\r\n );\r\n\r\n const listCanDelegados = [];\r\n for (let cD = 0; cD < numDelegados; cD++) {\r\n listCanDelegados.push(\r\n candidatosDelegados[cD],\r\n );\r\n }\r\n\r\n // Informacion Candidatos\r\n const candidatosInfo = {\r\n delegados: listCanDelegados,\r\n };\r\n const montoInfo = {\r\n papeleta: nMontos.papeleta,\r\n membresia: nMontos.membresia,\r\n total: nMontos.total,\r\n };\r\n generateComprobante(\r\n 'ASAMBLEAS DE ÓRGANO CONSULTIVO PROVINCIAL',\r\n generalInfo,\r\n candidatosInfo,\r\n gestorInfo,\r\n montoInfo,\r\n );\r\n\r\n // PROCESO DE PREVENCIÓN\r\n startPrevencion(\r\n user,\r\n nCodPapeleta,\r\n num_consecutivo,\r\n 1,\r\n 'Papeleta Delegados Órgano Consultivo Nacional',\r\n papeletaDate,\r\n gestorInfo,\r\n );\r\n\r\n setSubmitting(false);\r\n setMsjDialog(\r\n 'La Información de la papeleta se ACTUALIZÓ correctamente.',\r\n );\r\n setFinalDialog(true);\r\n } else {\r\n setMsjDialog(\r\n 'La información NO pudo ser actualizada',\r\n );\r\n setSubmitting(false);\r\n setOpenDialog(true);\r\n }\r\n });\r\n } else {\r\n setMsjDialog(\r\n // eslint-disable-next-line max-len\r\n 'ATENCIÓN: El número de papeleta seleccionado YA fue elegido. Debe de seleccionar otro número de papeleta',\r\n );\r\n setOpenDialog(true);\r\n setIsSaving(false);\r\n setSubmitting(false);\r\n setFieldValue('papeleta', 999);\r\n getNumPapeletasDelegadoCantonal(\r\n cod_prov,\r\n cod_cant,\r\n ).then(r => {\r\n if (r.status === 200) {\r\n const papeletasList = Lodash.get(r, ['data']);\r\n const plist = papeletasList.map(p => {\r\n return {\r\n itemLabel: p.papeleta,\r\n value: p.papeleta,\r\n };\r\n });\r\n plist.unshift({\r\n itemLabel: '- NUMERO DE PAPELETA -',\r\n value: 999,\r\n });\r\n\r\n // setPapeletas(plist);\r\n }\r\n });\r\n }\r\n });\r\n };\r\n\r\n const savePapeleta = values => () => {\r\n setIsSaving(true);\r\n const { papeleta } = values;\r\n\r\n // Se valida que se haya seleccionado un numero de papeleta\r\n if (papeleta === 999) {\r\n setMsjDialog(\r\n 'Debe seleccionar el número de papeleta',\r\n );\r\n setOpenDialog(true);\r\n setIsSaving(false);\r\n return;\r\n }\r\n\r\n const tFrmsCandidatos = {\r\n delegados: listDelegados,\r\n };\r\n\r\n // Se valida que exista al menos 1 candidato en la papeleta\r\n const canSave = verifyIfCanSave(tFrmsCandidatos);\r\n\r\n if (canSave) {\r\n const delegadosCantonalEnca = {\r\n cod_prov,\r\n cod_cant,\r\n ind_estado: 3,\r\n num_papeleta: papeleta,\r\n num_consecutivo,\r\n num_cedula: user.num_cedula,\r\n des_usuario: user.des_login,\r\n };\r\n\r\n updatePapeleta({\r\n codPapeleta: id,\r\n delegadosCantonalEnca,\r\n tFrmsCandidatos,\r\n }).then(result => {\r\n const nCodPapeleta = Lodash.get(\r\n result,\r\n ['data', 'codPapeleta'],\r\n '',\r\n );\r\n if (nCodPapeleta !== '') {\r\n setMsjDialog(\r\n 'La Información de la papeleta se ACTUALIZÓ correctamente.',\r\n );\r\n setOpenDialog(true);\r\n } else {\r\n setMsjDialog(\r\n 'La información NO pudo ser actualizada',\r\n );\r\n setOpenDialog(true);\r\n setIsSaving(false);\r\n }\r\n });\r\n } else {\r\n setMsjDialog(\r\n 'Al menos debe de haber ingresado un candidato en la papeleta',\r\n );\r\n setOpenDialog(true);\r\n setIsSaving(false);\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n {crudAvailable ? (\r\n \r\n \r\n \r\n \r\n \r\n {`Editar Papeleta Distrital: ${id}`}\r\n {\r\n history.push(\r\n '/cantones-no-representados',\r\n );\r\n }}\r\n >\r\n Regresar\r\n \r\n \r\n \r\n {formik => (\r\n
\r\n \r\n \r\n \r\n Número de Papeleta:\r\n \r\n {ind_estado === 3 ? (\r\n \r\n setPapeleta(papeleta)\r\n }\r\n />\r\n ) : (\r\n \r\n {numero}\r\n \r\n )}\r\n \r\n \r\n \r\n
\r\n \r\n Datos del Gestor\r\n \r\n \r\n \r\n \r\n Estado\r\n \r\n \r\n {getEstadoPapeleta(\r\n ind_estado,\r\n )}\r\n
\r\n \r\n \r\n \r\n Fecha\r\n \r\n \r\n {papeletaDate}\r\n \r\n \r\n \r\n \r\n Consecutivo\r\n \r\n \r\n {num_consecutivo}\r\n \r\n \r\n \r\n \r\n Cédula\r\n \r\n \r\n {user.num_cedula}\r\n \r\n \r\n \r\n \r\n Nombre\r\n \r\n \r\n {user.des_nombre}\r\n \r\n \r\n \r\n \r\n Provincia\r\n \r\n \r\n {provincia}\r\n \r\n \r\n \r\n \r\n Cantón\r\n \r\n \r\n {canton}\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n {formik.isSubmitting ? (\r\n \r\n ) : (\r\n <>\r\n Enviar\r\n \r\n \r\n )}\r\n \r\n\r\n \r\n {isSaving ? (\r\n \r\n ) : (\r\n <>\r\n Actualizar{' '}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n Mensaje\r\n \r\n \r\n \r\n {msjDialog}\r\n \r\n \r\n \r\n \r\n Entendido\r\n \r\n \r\n \r\n \r\n \r\n Mensaje\r\n \r\n \r\n \r\n {msjDialog}\r\n \r\n \r\n \r\n \r\n Cerrar\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n ) : (\r\n \r\n \r\n \r\n

\r\n Esta sección se encuentra temporalmente\r\n deshabilitada.
\r\n Favor comunicarse con Ezequiel Hernández\r\n al 2519-5521 o al correo\r\n ehernandez@plndigital.com\r\n

\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n // eslint-disable-next-line no-else-return\r\n } else {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n};\r\n\r\nexport default withStyles(style)(\r\n EditCantonesNoRepresentados,\r\n);\r\n","function createData(\r\n consecutivo,\r\n numeroDeposito,\r\n monto,\r\n fecha,\r\n observacion,\r\n cedula,\r\n depositante,\r\n last,\r\n) {\r\n return {\r\n consecutivo,\r\n numeroDeposito,\r\n monto,\r\n fecha,\r\n observacion,\r\n cedula,\r\n depositante,\r\n last,\r\n };\r\n}\r\n\r\nexport const tableHeaders = [\r\n {\r\n name: 'Número Depósito',\r\n },\r\n {\r\n name: 'Monto',\r\n },\r\n {\r\n name: 'Fecha',\r\n },\r\n {\r\n name: 'Tipo Depósito',\r\n },\r\n {\r\n name: 'Ced. Dep',\r\n },\r\n {\r\n name: 'Depositante',\r\n },\r\n];\r\n\r\nexport const dataRows = [\r\n createData(\r\n 1976,\r\n '178698521135',\r\n '550,000.00',\r\n '23/02/2021',\r\n 'Depósito para Inscripciones',\r\n '100230628',\r\n 'Calvo Solorzano Marta',\r\n 'A',\r\n ),\r\n];\r\n","import axios from 'axios';\r\n// import Lodash from 'lodash';\r\n\r\naxios.defaults.baseURL = process.env.REACT_APP_API_BASE_URL;\r\n\r\n// eslint-disable-next-line import/prefer-default-export\r\nexport const newDeposito = params => {\r\n const { depositoData } = params;\r\n\r\n const infoDeposito = {\r\n deposito: depositoData,\r\n };\r\n\r\n return axios.post(\r\n '/depositos/saveDepositoAOCP',\r\n infoDeposito,\r\n );\r\n};\r\n\r\nexport const updateDeposito = deposito => {\r\n const infoDeposito = {\r\n deposito,\r\n };\r\n\r\n return axios.post(\r\n '/depositos/updateDeposit',\r\n infoDeposito,\r\n );\r\n};\r\n\r\nexport const getAll = cedula => {\r\n const url = [`/depositos/byGestorAOCP/${cedula}`];\r\n\r\n return axios.get(url.join('&'));\r\n};\r\n\r\nexport const getDepositInfoByCod = codDeposit => {\r\n return axios.get(\r\n `/depositos/getDepositoAOCP/${codDeposit}`,\r\n );\r\n};\r\n\r\nexport const deleteDepositByCod = codDeposit => {\r\n return axios.get(\r\n `/depositos/removeDepositAOCP/${codDeposit}`,\r\n );\r\n};\r\n","import React, { useState, useEffect } from 'react';\r\nimport Lodash from 'lodash';\r\nimport { useJwt } from 'react-jwt';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport DeleteSharpIcon from '@material-ui/icons/DeleteSharp';\r\n// import EditIcon from '@material-ui/icons/Edit';\r\nimport CircularProgress from '@material-ui/core/CircularProgress';\r\nimport { tableHeaders } from './data';\r\nimport MacroList from '../MacroList/MacroList';\r\nimport Storage from '../../Storage/Storage';\r\n\r\nimport {\r\n getAll,\r\n deleteDepositByCod,\r\n} from '../../Core/Api/depositosApi';\r\nimport { formatData } from '../../Core/Utils/Utils';\r\nimport PLNDialog from '../../Components/PLNDialog/PLNDialog';\r\nimport { useCRUDAvailable } from '../../Core/Api/periodoApi';\r\n\r\nfunction createData(_data) {\r\n return {\r\n numDeposito: _data.NUM_DEPOSITO,\r\n montoDeposito: `${formatData(_data.NUM_MONTO)}`,\r\n fecha: _data.FEC_DEPOSITO,\r\n tipoDeposito:\r\n _data.IND_DEPOSITO === 0\r\n ? 'Membresía'\r\n : 'Inscripción',\r\n ced_depositante: _data.ced_depositante,\r\n nombreDepositante: `${_data.des_nombre} ${_data.des_apell1} ${_data.des_apell2}`,\r\n id: _data.COD_DEPOSITO,\r\n };\r\n}\r\n\r\nconst useStyles = makeStyles(() => ({\r\n btnAdd: {\r\n float: 'right',\r\n width: 150,\r\n height: 30,\r\n marginTop: 5,\r\n },\r\n container: {\r\n paddingTop: 40,\r\n paddingBottom: 40,\r\n },\r\n paper: {\r\n padding: 20,\r\n display: 'flex',\r\n overflow: 'auto',\r\n flexDirection: 'column',\r\n },\r\n}));\r\n\r\nconst RegistroDepositos = () => {\r\n // Se valida si esta habilitado CRUD\r\n const isCRUDAvailable = useCRUDAvailable();\r\n const crudAvailable = Lodash.get(\r\n isCRUDAvailable,\r\n ['data', 'response'],\r\n null,\r\n );\r\n\r\n const classes = useStyles();\r\n const tokenStorage = Storage.instance;\r\n\r\n const [items, setItems] = useState([]);\r\n const [isDataEmpty, setDataEmpty] = useState(false);\r\n\r\n const { decodedToken } = useJwt(tokenStorage.getToken());\r\n\r\n const [open, setOpenDialog] = React.useState(false);\r\n const [dataRemove, setDataRemove] = React.useState(null);\r\n const [isRemoved, setIsRemoved] = useState(false); // used on remove modal\r\n const [removedMsj, setRemoveMsj] = useState(\r\n 'El registro se eliminará permanentemente. ¿Desea proceder?',\r\n );\r\n const [hiddenBtn, setHiddenBtn] = useState(false);\r\n\r\n useEffect(() => {\r\n async function fetchListAPI() {\r\n if (decodedToken) {\r\n await getAll(decodedToken.num_cedula)\r\n .then(_response => {\r\n const info = _response.data.response;\r\n if (info instanceof Object) {\r\n const rowItems = info.map(row => {\r\n return createData(row);\r\n });\r\n\r\n setItems(rowItems);\r\n // setFilteredItems(rowItems);\r\n setDataEmpty(false);\r\n } else {\r\n setDataEmpty(true);\r\n }\r\n })\r\n .catch(_error => {\r\n // eslint-disable-next-line no-console\r\n console.log(_error);\r\n });\r\n }\r\n }\r\n\r\n fetchListAPI();\r\n }, [decodedToken]);\r\n\r\n /**\r\n * List all actions that a user can do for each item in the list\r\n */\r\n const setActions = () => {\r\n const actions = [];\r\n\r\n if (crudAvailable) {\r\n /*\r\n const actionEdit = {\r\n aria: 'Editar Depósito',\r\n key: 'edit',\r\n showAction: true,\r\n icon: (\r\n \r\n ),\r\n clickHandler: _item => {\r\n window.location.href = `/registro-depositos/edit/${_item.id}`;\r\n },\r\n };\r\n\r\n actions.push(actionEdit);\r\n */\r\n const actionRemove = {\r\n aria: 'Eliminar Depósito',\r\n key: 'remove',\r\n showAction: true,\r\n icon: (\r\n \r\n ),\r\n clickHandler: _item => {\r\n setDataRemove(_item);\r\n setOpenDialog(true);\r\n },\r\n };\r\n\r\n actions.push(actionRemove);\r\n }\r\n return actions;\r\n };\r\n\r\n /**\r\n * Remove a member selected by user\r\n */\r\n const removeDepositByNum = async () => {\r\n const codDeposit = dataRemove.id;\r\n\r\n if (codDeposit && codDeposit > 0) {\r\n setIsRemoved(true);\r\n\r\n await deleteDepositByCod(codDeposit)\r\n .then(_rs => {\r\n const responseInfo = _rs.data;\r\n\r\n const configCallback = {\r\n isRemoved: true,\r\n isHiddenBtn: true,\r\n message:\r\n 'La operación no se pudo completar. Intente de nuevo.',\r\n };\r\n\r\n if (\r\n responseInfo.response === 1 &&\r\n responseInfo.row.length === 1 &&\r\n _rs.status === 200\r\n ) {\r\n Object.assign(configCallback, {\r\n isRemoved: false,\r\n isHiddenBtn: true,\r\n message: 'Depósito eliminado correctamente.',\r\n });\r\n }\r\n\r\n setIsRemoved(configCallback.isRemoved);\r\n setHiddenBtn(configCallback.isHiddenBtn);\r\n setRemoveMsj(configCallback.message);\r\n setTimeout(() => {\r\n setOpenDialog(false);\r\n window.location.href = '/registro-depositos/';\r\n }, 3000);\r\n })\r\n .catch(error => {\r\n // eslint-disable-next-line no-console\r\n console.warn(error);\r\n });\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n \r\n (window.location.href = `/registro-depositos/add`),\r\n }}\r\n actionConfig={setActions}\r\n tableHeads={tableHeaders}\r\n tableBody={items}\r\n showTotals\r\n isCrudAvailable={crudAvailable}\r\n />\r\n {}}\r\n title=\"Eliminar Registro Depósito\"\r\n bodymessage={removedMsj}\r\n buttons={\r\n hiddenBtn\r\n ? []\r\n : [\r\n {\r\n actionName: 'cancel',\r\n color: 'simple',\r\n title: 'Cerrar',\r\n clickHander: () => {\r\n setOpenDialog(!open);\r\n },\r\n },\r\n {\r\n actionName: 'delete',\r\n disabled: isRemoved,\r\n color: 'remove',\r\n title: isRemoved ? (\r\n \r\n ) : (\r\n 'Eliminar'\r\n ),\r\n clickHander: removeDepositByNum,\r\n },\r\n ]\r\n }\r\n />\r\n \r\n );\r\n};\r\n\r\nexport default RegistroDepositos;\r\n","const styles = () => ({\r\n container: {\r\n paddingTop: 40,\r\n paddingBottom: 40,\r\n },\r\n paper: {\r\n padding: 20,\r\n display: 'flex',\r\n overflow: 'auto',\r\n flexDirection: 'column',\r\n },\r\n btnBack: {\r\n float: 'right',\r\n width: 150,\r\n height: 30,\r\n marginTop: 5,\r\n },\r\n btnActions: {\r\n float: 'right',\r\n height: 50,\r\n marginTop: 5,\r\n marginRight: 10,\r\n },\r\n sectionTitle: {\r\n fontSize: '16px',\r\n marginTop: 10,\r\n marginBottom: 10,\r\n padding: 5,\r\n color: '#fff',\r\n borderRadius: 4,\r\n background: '#008945',\r\n },\r\n field: {\r\n border: 'solid thin #ccc',\r\n padding: 20,\r\n background: '#f1f1f1',\r\n },\r\n fieldFilled: {\r\n border: 'solid thin #ccc',\r\n padding: 10,\r\n background: '#f1f1f1',\r\n },\r\n fieldOutFilled: {\r\n border: 'solid thin #ccc',\r\n borderRadius: '10px',\r\n padding: 10,\r\n background: '#fff',\r\n },\r\n fieldTxt: {\r\n border: 'solid thin #ccc',\r\n padding: 10,\r\n background: '#fff',\r\n },\r\n fieldMin: {\r\n border: 'solid thin #ccc',\r\n width: 35,\r\n padding: 20,\r\n textAlign: 'center',\r\n background: '#f1f1f1',\r\n },\r\n fieldMinFilled: {\r\n border: 'solid thin #ccc',\r\n width: 35,\r\n padding: 10,\r\n textAlign: 'center',\r\n background: '#f1f1f1',\r\n },\r\n fieldTitle: { margin: 0, padding: 0 },\r\n frmText: {\r\n width: '100%',\r\n height: '38px',\r\n padding: 5,\r\n margin: 0,\r\n display: 'block',\r\n fontSize: '.9em',\r\n lineHeight: 38,\r\n borderColor: '#797979',\r\n borderStyle: 'solid',\r\n borderWidth: 1,\r\n borderRadius: 10,\r\n },\r\n frmIconButton: { marginLeft: 10 },\r\n btnSubmitting: {\r\n width: 104,\r\n float: 'right',\r\n height: 50,\r\n marginTop: 5,\r\n marginRight: 10,\r\n },\r\n formError: {\r\n margin: '5px 0px 25px 0px',\r\n color: `#FF1101`,\r\n },\r\n calendarInput: {\r\n background: 'transparent',\r\n minHeight: '20px',\r\n padding: 0,\r\n margin: 0,\r\n border: 0,\r\n width: '100%',\r\n },\r\n});\r\n\r\nexport default styles;\r\n","/* eslint-disable radix */\n/* eslint-disable camelcase */\nimport React, { useState, useEffect } from 'react';\nimport { useHistory } from 'react-router-dom';\nimport Lodash from 'lodash';\nimport { useJwt } from 'react-jwt';\nimport { withStyles } from '@material-ui/core/styles';\nimport DatePicker from 'react-datepicker';\nimport 'react-datepicker/dist/react-datepicker.css';\nimport { Grid, Button, Divider } from '@material-ui/core';\nimport Typography from '@material-ui/core/Typography';\nimport Box from '@material-ui/core/Box';\nimport Container from '@material-ui/core/Container';\nimport Paper from '@material-ui/core/Paper';\nimport CircularProgress from '@material-ui/core/CircularProgress';\nimport ArrowBackIcon from '@material-ui/icons/ArrowBack';\nimport SaveIcon from '@material-ui/icons/Save';\nimport Alert from '@material-ui/lab/Alert';\n// import SendIcon from '@material-ui/icons/Send';\n\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogContentText from '@material-ui/core/DialogContentText';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport Slide from '@material-ui/core/Slide';\n\nimport { Formik, Field } from 'formik';\nimport * as Yup from 'yup';\nimport { formatDate } from '../../Core/Utils/Utils';\nimport style from './styles';\n\nimport {\n PlnDropdown,\n PlnInput,\n} from '../../Components/Input';\n\nimport Copyright from '../Copyright/Copyright';\nimport ListSearch from '../../Components/ListSearch/ListSearch';\n\nimport Consts from '../../Core/Consts/Consts';\nimport Storage from '../../Storage/Storage';\nimport REGEX from '../../Core/Utils/RegExpUtils';\n\nimport { newDeposito } from '../../Core/Api/depositosApi';\nimport { useCRUDAvailable } from '../../Core/Api/periodoApi';\n\nconst Transition = React.forwardRef(function Transition(\n tProps,\n ref,\n) {\n // eslint-disable-next-line react/jsx-props-no-spreading\n return ;\n});\n\nconst AddDeposito = props => {\n // Se valida si esta habilitado CRUD\n const isCRUDAvailable = useCRUDAvailable();\n const crudAvailable = Lodash.get(\n isCRUDAvailable,\n ['data', 'response'],\n null,\n );\n const { classes } = props;\n const history = useHistory();\n\n const [user, setUser] = useState([]);\n\n // eslint-disable-next-line no-unused-vars\n const today = new Date();\n const [dateField, setDateField] = useState(null);\n\n const [isSaving, setIsSaving] = useState(false);\n\n const [sexFieldAs] = useState('');\n const [isSexOrderRequired] = useState(true);\n const [onlyJuventud] = useState(false);\n\n const tokenData = Storage.instance;\n const { decodedToken } = useJwt(tokenData.getToken());\n\n const [msjDialog, setMsjDialog] = useState('');\n const [open, setOpenDialog] = React.useState(false);\n const [finalDialog, setFinalDialog] = React.useState(\n false,\n );\n const handleClose = () => {\n setOpenDialog(false);\n setIsSaving(false);\n };\n\n const closeFinalDialog = () => {\n history.push('/registro-depositos');\n };\n\n // Date Options\n const options = {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n // timeZone: 'UTC',\n };\n\n // const today = new Date();\n // setDateField(today);\n\n useEffect(() => {\n if (decodedToken !== null) {\n setUser(decodedToken);\n }\n }, [decodedToken]);\n\n const [showForm] = useState(true);\n\n // eslint-disable-next-line no-unused-vars\n const [sTipoDeposito, setSTipoDeposito] = useState(9);\n\n const [listAddDeposito] = useState(\n Consts.initListAddDeposito,\n );\n\n const [initialValues] = useState({\n tipoDeposito: 9,\n depositante: '',\n numDeposito: '',\n dateDeposito: null,\n montoDeposito: 0,\n });\n\n // eslint-disable-next-line no-unused-vars\n const [tiposDepositos, setTiposDeposito] = useState([\n { itemLabel: '- TIPO DEPOSITO -', value: 9 },\n { itemLabel: 'Membresías', value: 1 },\n { itemLabel: 'Inscripciones', value: 2 },\n ]);\n\n const setTipoDeposito = d => {\n initialValues.tipoDeposito = d;\n if (d !== 9) {\n setSTipoDeposito(\n Lodash.find(tiposDepositos, {\n value: d,\n }),\n );\n }\n };\n\n const validationSchema = Yup.object({});\n\n const formikValidate = values => {\n const errors = {};\n const {\n numDeposito,\n montoDeposito,\n dateDeposito,\n depositante,\n } = values;\n\n if (!depositante) {\n errors.depositante = 'Digite una cédula válida.';\n } else if (!REGEX.cedula.test(depositante)) {\n errors.depositante = 'Formato incorrecto';\n }\n\n if (!dateDeposito) {\n errors.dateDeposito = 'Defina la fecha';\n }\n\n if (!numDeposito || parseInt(numDeposito, 10) === 0) {\n errors.numDeposito = 'Digite un número';\n } else if (!REGEX.digits.test(numDeposito)) {\n errors.numDeposito = 'Sólo se permiten números';\n }\n\n if (!montoDeposito || parseInt(numDeposito, 10) === 0) {\n errors.montoDeposito = 'Digite un monto';\n } else if (!REGEX.digits.test(montoDeposito)) {\n errors.montoDeposito = 'Sólo se permiten números';\n }\n\n return errors;\n };\n\n const saveForm = (values, { setSubmitting }) => {\n setSubmitting(false);\n const {\n depositante,\n montoDeposito,\n numDeposito,\n tipoDeposito,\n dateDeposito,\n } = values;\n\n if (tipoDeposito === 9) {\n alert('Debe de seleccionar el tipo de depósito');\n } else {\n const depositoData = {\n num_cedula: user.num_cedula,\n num_deposito: parseInt(numDeposito),\n num_monto: parseInt(montoDeposito),\n ced_depositante: depositante,\n des_usuario: user.des_login,\n ind_deposito: tipoDeposito - 1,\n fec_deposito: formatDate(\n dateDeposito.toLocaleDateString('es-ES', options),\n ),\n };\n\n newDeposito({ depositoData }).then(rNew => {\n const response = Lodash.get(\n rNew,\n ['data', 'response'],\n false,\n );\n\n if (response) {\n setSubmitting(false);\n setMsjDialog(\n 'El Depósito se ALMACENÓ correctamente.',\n );\n setFinalDialog(true);\n } else {\n setMsjDialog('La Deposito NO pudo ser efectuado');\n setSubmitting(false);\n setOpenDialog(true);\n }\n });\n }\n };\n\n AddDeposito.propTypes = {};\n\n return (\n <>\n {crudAvailable ? (\n \n \n \n \n \n Nueva Depósito\n {\n history.push('/registro-depositos');\n }}\n >\n Regresar\n \n \n \n {formik => (\n <>\n
\n \n\n {showForm ? (\n
\n \n \n

Tipo Depósito:

\n \n setTipoDeposito(tipo)\n }\n />\n
\n \n \n \n Datos del Depósito\n \n \n \n \n Fecha del Depósito\n \n \n {\n setDateField(date);\n formik.setFieldValue(\n 'dateDeposito',\n date,\n );\n }}\n />\n
\n {formik.errors\n .dateDeposito &&\n formik.touched\n .dateDeposito ? (\n \n \n {\n formik.errors\n .dateDeposito\n }\n \n \n ) : null}\n \n \n \n Cédula Gestor\n \n \n {user.num_cedula}\n \n \n \n \n Nombre del Gestor\n \n \n {user.des_nombre}\n \n \n \n \n Número del Depósito\n \n \n {formik.errors\n .numDeposito &&\n formik.touched\n .numDeposito ? (\n \n \n {\n formik.errors\n .numDeposito\n }\n \n \n ) : null}\n \n \n \n Monto del Depósito\n \n \n {formik.errors\n .montoDeposito &&\n formik.touched\n .montoDeposito ? (\n \n \n {\n formik.errors\n .montoDeposito\n }\n \n \n ) : null}\n \n \n\n {}}\n validateBy={[\n {\n dataVal: 'none',\n value: 1,\n },\n ]}\n requireSexOrder={\n isSexOrderRequired\n }\n sexFieldAs={sexFieldAs}\n onlyJuventud={onlyJuventud}\n hideSexColumn\n needHojaInfo={false}\n requireValidation={false}\n />\n {formik.errors.depositante &&\n formik.touched.depositante ? (\n \n \n {\n formik.errors\n .depositante\n }\n \n \n ) : null}\n\n \n \n \n {formik.isSubmitting ? (\n \n ) : (\n <>\n Guardar\n \n \n )}\n \n \n \n \n ) : (\n ''\n )}\n \n \n )}\n \n \n \n Mensaje\n \n \n \n {msjDialog}\n \n \n \n \n Entendido\n \n \n \n \n \n Mensaje\n \n \n \n {msjDialog}\n \n \n \n \n Cerrar\n \n \n \n
\n
\n
\n \n \n \n \n ) : (\n \n \n \n

\n Esta sección se encuentra temporalmente\n deshabilitada.
\n Favor comunicarse con Ezequiel Hernández al\n 2519-5521 o al correo\n ehernandez@plndigital.com\n

\n \n \n \n )}\n \n );\n};\n\nexport default withStyles(style)(AddDeposito);\n","import React, { useState, useEffect } from 'react';\r\nimport { useHistory, useParams } from 'react-router-dom';\r\nimport Lodash from 'lodash';\r\nimport { useJwt } from 'react-jwt';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport DatePicker from 'react-datepicker';\r\nimport 'react-datepicker/dist/react-datepicker.css';\r\nimport { Grid, Button, Divider } from '@material-ui/core';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Box from '@material-ui/core/Box';\r\nimport Container from '@material-ui/core/Container';\r\nimport Paper from '@material-ui/core/Paper';\r\nimport CircularProgress from '@material-ui/core/CircularProgress';\r\nimport ArrowBackIcon from '@material-ui/icons/ArrowBack';\r\nimport SaveIcon from '@material-ui/icons/Save';\r\nimport Alert from '@material-ui/lab/Alert';\r\n\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport DialogActions from '@material-ui/core/DialogActions';\r\nimport DialogContent from '@material-ui/core/DialogContent';\r\nimport DialogContentText from '@material-ui/core/DialogContentText';\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\nimport Slide from '@material-ui/core/Slide';\r\n\r\nimport { Formik, Field } from 'formik';\r\nimport * as Yup from 'yup';\r\nimport { formatDate } from '../../Core/Utils/Utils';\r\nimport style from './styles';\r\n\r\nimport {\r\n PlnDropdown,\r\n PlnInput,\r\n} from '../../Components/Input';\r\nimport Loading from '../../Components/Loading/Loading';\r\n\r\nimport Copyright from '../Copyright/Copyright';\r\nimport ListSearch from '../../Components/ListSearch/ListSearch';\r\n\r\nimport Consts from '../../Core/Consts/Consts';\r\nimport Storage from '../../Storage/Storage';\r\nimport REGEX from '../../Core/Utils/RegExpUtils';\r\n\r\nimport {\r\n getDepositInfoByCod,\r\n updateDeposito,\r\n} from '../../Core/Api/depositosApi';\r\n\r\nimport { useCRUDAvailable } from '../../Core/Api/periodoApi';\r\n\r\nconst Transition = React.forwardRef(function Transition(\r\n tProps,\r\n ref,\r\n) {\r\n // eslint-disable-next-line react/jsx-props-no-spreading\r\n return ;\r\n});\r\n\r\nconst EditDeposito = props => {\r\n // Se valida si esta habilitado CRUD\r\n const isCRUDAvailable = useCRUDAvailable();\r\n const crudAvailable = Lodash.get(\r\n isCRUDAvailable,\r\n ['data', 'response'],\r\n null,\r\n );\r\n\r\n const { classes } = props;\r\n const history = useHistory();\r\n const { id } = useParams();\r\n\r\n const [user, setUser] = useState([]);\r\n\r\n const [dateField, setDateField] = useState(null);\r\n\r\n const [isSaving, setIsSaving] = useState(false);\r\n\r\n const [isLoadingData, setLoading] = useState(true);\r\n const tokenData = Storage.instance;\r\n const { decodedToken } = useJwt(tokenData.getToken());\r\n\r\n const [msjDialog, setMsjDialog] = useState('');\r\n const [open, setOpenDialog] = React.useState(false);\r\n const [finalDialog, setFinalDialog] =\r\n React.useState(false);\r\n\r\n const defaultDepositData = {\r\n tipoDeposito: 9,\r\n depositante: '',\r\n numDeposito: '',\r\n dateDeposito: null,\r\n montoDeposito: '',\r\n };\r\n\r\n const [depositInfo, setDepositInfo] = useState(\r\n defaultDepositData,\r\n );\r\n\r\n const [initialValues] = useState({\r\n tipoDeposito: 9,\r\n depositante: '',\r\n numDeposito: '',\r\n dateDeposito: null,\r\n montoDeposito: '',\r\n });\r\n\r\n const [showForm] = useState(true);\r\n\r\n // eslint-disable-next-line no-unused-vars\r\n const [sTipoDeposito, setSTipoDeposito] = useState(9);\r\n\r\n // eslint-disable-next-line no-unused-vars\r\n const [listAddDeposito, setListDeposito] = useState(\r\n Consts.initListAddDeposito,\r\n );\r\n\r\n // eslint-disable-next-line no-unused-vars\r\n const [tiposDepositos, setTiposDeposito] = useState([\r\n { itemLabel: '- TIPO DEPOSITO -', value: 9 },\r\n { itemLabel: 'Membresías', value: 1 },\r\n { itemLabel: 'Inscripciones', value: 2 },\r\n ]);\r\n\r\n const handleClose = () => {\r\n setOpenDialog(false);\r\n setIsSaving(false);\r\n };\r\n\r\n const closeFinalDialog = () => {\r\n history.push('/registro-depositos');\r\n };\r\n\r\n const setTipoDeposito = d => {\r\n initialValues.tipoDeposito = d;\r\n if (d !== 9) {\r\n setSTipoDeposito(\r\n Lodash.find(tiposDepositos, {\r\n value: d,\r\n }),\r\n );\r\n }\r\n };\r\n\r\n const loadDepositDetails = async _codDeposito => {\r\n try {\r\n let dataSet = {};\r\n if (_codDeposito) {\r\n const info = await getDepositInfoByCod(\r\n _codDeposito,\r\n );\r\n\r\n const data = info.data.response;\r\n\r\n if (data instanceof Array && info.status === 200) {\r\n dataSet = {\r\n depositante: data[0].num_cedula,\r\n nombreDepositante: `${data[0].des_nombre} ${data[0].des_apell1} ${data[0].des_apell2}`,\r\n numDeposito: parseInt(data[0].num_deposito, 10),\r\n montoDeposito: parseInt(data[0].num_monto, 10),\r\n dateDeposito: new Date(data[0].fec_deposito),\r\n tipoDeposito:\r\n parseInt(data[0].ind_deposito, 10) + 1,\r\n };\r\n } else {\r\n dataSet = defaultDepositData;\r\n }\r\n } else {\r\n dataSet = defaultDepositData;\r\n }\r\n setDateField(dataSet.dateDeposito);\r\n setDepositInfo(dataSet);\r\n setTipoDeposito(dataSet.tipoDeposito);\r\n\r\n setLoading(false);\r\n } catch (error) {\r\n // eslint-disable-next-line no-console\r\n console.warn(error);\r\n }\r\n };\r\n\r\n // Date Options\r\n const options = {\r\n year: 'numeric',\r\n month: '2-digit',\r\n day: '2-digit',\r\n // timeZone: 'UTC',\r\n };\r\n\r\n useEffect(() => {\r\n if (decodedToken !== null) {\r\n setUser(decodedToken);\r\n }\r\n }, [decodedToken]);\r\n\r\n useEffect(() => {\r\n async function fetchAPI() {\r\n const codDeposito = parseInt(id, 10);\r\n\r\n if (codDeposito < 0) {\r\n history.push('/registro-depositos');\r\n } else {\r\n setLoading(true);\r\n await loadDepositDetails(codDeposito);\r\n }\r\n }\r\n\r\n fetchAPI();\r\n });\r\n\r\n const validationSchema = Yup.object({});\r\n\r\n const formikValidate = values => {\r\n const errors = {};\r\n const {\r\n numDeposito,\r\n montoDeposito,\r\n dateDeposito,\r\n depositante,\r\n } = values;\r\n\r\n if (!depositante) {\r\n errors.depositante = 'Digite una cédula válida.';\r\n } else if (!REGEX.cedula.test(depositante)) {\r\n errors.depositante = 'Formato incorrecto';\r\n }\r\n\r\n if (!dateDeposito) {\r\n errors.dateDeposito = 'Defina la fecha';\r\n }\r\n\r\n if (!numDeposito || parseInt(numDeposito, 10) === 0) {\r\n errors.numDeposito = 'Digite un número';\r\n } else if (!REGEX.digits.test(numDeposito)) {\r\n errors.numDeposito = 'Sólo se permiten números';\r\n }\r\n\r\n if (!montoDeposito || parseInt(numDeposito, 10) === 0) {\r\n errors.montoDeposito = 'Digite un monto';\r\n } else if (!REGEX.digits.test(montoDeposito)) {\r\n errors.montoDeposito = 'Sólo se permiten números';\r\n }\r\n\r\n return errors;\r\n };\r\n\r\n const saveForm = (values, { setSubmitting }) => {\r\n setSubmitting(false);\r\n const {\r\n depositante,\r\n montoDeposito,\r\n numDeposito,\r\n tipoDeposito,\r\n dateDeposito,\r\n } = values;\r\n\r\n const depositoData = {\r\n cod_deposito: id,\r\n ced_responsable: user.num_cedula,\r\n num_deposito: parseInt(numDeposito, 10),\r\n num_monto: parseInt(montoDeposito, 10),\r\n ced_depositante: depositante,\r\n des_usuario: user.des_login,\r\n ind_deposito: tipoDeposito - 1,\r\n fec_deposito: formatDate(\r\n dateDeposito.toLocaleDateString('es-ES', options),\r\n ),\r\n };\r\n\r\n updateDeposito({ depositoData })\r\n .then(_rs => {\r\n const { data, status } = _rs;\r\n\r\n if (data.response.status && status === 200) {\r\n setSubmitting(false);\r\n setMsjDialog(\r\n `El Depósito # ${id}. ha sido actualizado.`,\r\n );\r\n setFinalDialog(true);\r\n } else {\r\n setMsjDialog(\r\n 'Error al intentar actualizar el depósito. Intente de nuevo!.',\r\n );\r\n setSubmitting(false);\r\n setOpenDialog(true);\r\n }\r\n })\r\n // eslint-disable-next-line no-console\r\n .catch(_err => console.log(_err));\r\n };\r\n\r\n return (\r\n <>\r\n {crudAvailable ? (\r\n \r\n \r\n \r\n \r\n \r\n Editar Depósito\r\n {\r\n history.push('/registro-depositos');\r\n }}\r\n >\r\n Regresar\r\n \r\n \r\n {!isLoadingData ? (\r\n \r\n {formik => (\r\n <>\r\n \r\n \r\n\r\n {showForm ? (\r\n
\r\n \r\n \r\n

Tipo Depósito:

\r\n \r\n setTipoDeposito(tipo)\r\n }\r\n />\r\n
\r\n \r\n \r\n \r\n Datos del Depósito\r\n \r\n \r\n \r\n \r\n Fecha del Depósito\r\n \r\n \r\n {\r\n setDateField(date);\r\n formik.setFieldValue(\r\n 'dateDeposito',\r\n date,\r\n );\r\n }}\r\n />\r\n
\r\n {formik.errors\r\n .dateDeposito &&\r\n formik.touched\r\n .dateDeposito ? (\r\n \r\n \r\n {\r\n formik.errors\r\n .dateDeposito\r\n }\r\n \r\n \r\n ) : null}\r\n
\r\n \r\n \r\n Cédula Gestor\r\n \r\n \r\n {user.num_cedula}\r\n \r\n \r\n \r\n \r\n Nombre del Gestor\r\n \r\n \r\n {user.des_nombre}\r\n \r\n \r\n \r\n \r\n Número del Depósito\r\n \r\n \r\n {formik.errors\r\n .numDeposito &&\r\n formik.touched\r\n .numDeposito ? (\r\n \r\n \r\n {\r\n formik.errors\r\n .numDeposito\r\n }\r\n \r\n \r\n ) : null}\r\n \r\n \r\n \r\n Monto del Depósito\r\n \r\n \r\n {formik.errors\r\n .montoDeposito &&\r\n formik.touched\r\n .montoDeposito ? (\r\n \r\n \r\n {\r\n formik.errors\r\n .montoDeposito\r\n }\r\n \r\n \r\n ) : null}\r\n \r\n
\r\n\r\n \r\n {formik.errors.depositante &&\r\n formik.touched.depositante ? (\r\n \r\n \r\n {\r\n formik.errors\r\n .depositante\r\n }\r\n \r\n \r\n ) : null}\r\n\r\n \r\n \r\n \r\n {formik.isSubmitting ? (\r\n \r\n ) : (\r\n <>\r\n Guardar\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n ) : (\r\n ''\r\n )}\r\n \r\n \r\n )}\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n \r\n Mensaje\r\n \r\n \r\n \r\n {msjDialog}\r\n \r\n \r\n \r\n \r\n Entendido\r\n \r\n \r\n \r\n \r\n \r\n Mensaje\r\n \r\n \r\n \r\n {msjDialog}\r\n \r\n \r\n \r\n \r\n Cerrar\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ) : (\r\n \r\n \r\n \r\n

\r\n Esta sección se encuentra temporalmente\r\n deshabilitada.
\r\n Favor comunicarse con Ezequiel Hernández al\r\n 2519-5521 o al correo\r\n ehernandez@plndigital.com\r\n

\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default withStyles(style)(EditDeposito);\r\n","function createData(\r\n tipo,\r\n consecutivo,\r\n cedula,\r\n candidato,\r\n monto,\r\n registro,\r\n last,\r\n) {\r\n return {\r\n tipo,\r\n consecutivo,\r\n cedula,\r\n candidato,\r\n monto,\r\n registro,\r\n last,\r\n };\r\n}\r\n\r\nexport const tableHeaders = [\r\n {\r\n name: 'Tipo',\r\n },\r\n {\r\n name: 'Consecutivo',\r\n },\r\n {\r\n name: 'Cedula',\r\n },\r\n {\r\n name: 'Gestor/Candidato',\r\n },\r\n {\r\n name: 'Monto',\r\n },\r\n {\r\n name: 'Registro',\r\n },\r\n];\r\n\r\nexport const dataRows = [\r\n createData(\r\n 'Distrital',\r\n '1',\r\n '111140239',\r\n 'Chistopher Barrantes Bolaños',\r\n '35000',\r\n '1/3/2021',\r\n ),\r\n createData(\r\n 'Nacional',\r\n '1',\r\n '401920238',\r\n 'Esteban Ramirez Ruiz',\r\n '35000',\r\n '1/3/2021',\r\n ),\r\n];\r\n","import axios from 'axios';\r\n// import Lodash from 'lodash';\r\n\r\naxios.defaults.baseURL = process.env.REACT_APP_API_BASE_URL;\r\n\r\n// eslint-disable-next-line import/prefer-default-export\r\nexport const getAll = cedula => {\r\n const url = [`/debitos/byGestorAOCP/${cedula}`];\r\n\r\n return axios.get(url.join('&'));\r\n};\r\n","import React, { useState, useEffect } from 'react';\r\nimport { useJwt } from 'react-jwt';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport { tableHeaders } from './data';\r\nimport MacroList from '../MacroList/MacroList';\r\nimport Storage from '../../Storage/Storage';\r\nimport { getAll } from '../../Core/Api/debitosApi';\r\nimport { formatData } from '../../Core/Utils/Utils';\r\n\r\nfunction createData(_data) {\r\n return {\r\n tipo:\r\n _data.IND_PAPELETA === 0\r\n ? 'Membresía'\r\n : 'Inscripción',\r\n consecutivo: _data.CON_PAPELETA,\r\n cedula:\r\n _data.CED_CANDIDATO === null\r\n ? _data.CED_GESTOR\r\n : _data.CED_CANDIDATO,\r\n candidato:\r\n _data.CED_CANDIDATO === null\r\n ? _data.nom_gestor\r\n : _data.nom_candidato,\r\n monto: `${formatData(_data.NUM_MONTO)}`,\r\n fechaRegistro: _data.FEC_REGISTRO,\r\n actions: '',\r\n };\r\n}\r\n\r\nconst useStyles = makeStyles(() => ({\r\n btnAdd: {\r\n float: 'right',\r\n width: 150,\r\n height: 30,\r\n marginTop: 5,\r\n },\r\n container: {\r\n paddingTop: 40,\r\n paddingBottom: 40,\r\n },\r\n paper: {\r\n padding: 20,\r\n display: 'flex',\r\n overflow: 'auto',\r\n flexDirection: 'column',\r\n },\r\n}));\r\n\r\nconst ConsultaDebitos = () => {\r\n const classes = useStyles();\r\n const tokenStorage = Storage.instance;\r\n\r\n const [items, setItems] = useState([]);\r\n const [isDataEmpty, setDataEmpty] = useState(false);\r\n\r\n const { decodedToken } = useJwt(tokenStorage.getToken());\r\n\r\n useEffect(() => {\r\n async function fetchListAPI() {\r\n if (decodedToken) {\r\n await getAll(decodedToken.num_cedula)\r\n .then(_response => {\r\n const info = _response.data.response;\r\n\r\n if (info instanceof Object) {\r\n const rowItems = info.map(row => {\r\n return createData(row);\r\n });\r\n\r\n setItems(rowItems);\r\n // setFilteredItems(rowItems);\r\n setDataEmpty(false);\r\n } else {\r\n setDataEmpty(true);\r\n }\r\n })\r\n .catch(_error => {\r\n // eslint-disable-next-line no-console\r\n console.log(_error);\r\n });\r\n }\r\n }\r\n\r\n fetchListAPI();\r\n }, [decodedToken]);\r\n\r\n /**\r\n * List all actions that a user can do for each item in the list\r\n */\r\n const setActions = () => {\r\n const actions = [];\r\n return actions;\r\n };\r\n\r\n return (\r\n <>\r\n {\r\n window.print();\r\n },\r\n }}\r\n actionConfig={setActions}\r\n tableHeads={tableHeaders}\r\n tableBody={items}\r\n />\r\n \r\n );\r\n};\r\n\r\nexport default ConsultaDebitos;\r\n","import { colors } from '../../Core/Theme/theme';\r\n\r\nconst styles = theme => ({\r\n container: {\r\n textAlign: 'left',\r\n color: colors.lightGray,\r\n paddingBottom: 80,\r\n '& h3': {\r\n color: colors.darkGray,\r\n marginTop: '50px',\r\n fontSize: '24px',\r\n marginBottom: '10px',\r\n },\r\n '& h4': {\r\n textWeight: 'bold',\r\n marginTop: '0px',\r\n marginBottom: '5px',\r\n },\r\n '& p': {\r\n marginTop: '0px',\r\n marginBottom: '5px',\r\n },\r\n },\r\n subtitle: { color: colors.green },\r\n subtitleDoc: { color: colors.darkGray },\r\n boxForm: {\r\n marginTop: '30px',\r\n },\r\n boxDocToPdf: {\r\n backgroundColor: colors.white,\r\n color: colors.darkGray,\r\n '& h3': {\r\n color: colors.green,\r\n marginTop: '50px',\r\n fontSize: '20px',\r\n marginBottom: '10px',\r\n },\r\n },\r\n sectionDesktop: {\r\n display: 'none',\r\n [theme.breakpoints.up('md')]: {\r\n display: 'flex',\r\n },\r\n },\r\n sectionMobile: {\r\n display: 'flex',\r\n [theme.breakpoints.up('md')]: {\r\n display: 'none',\r\n },\r\n },\r\n textFilled: {\r\n background: '#f1f1f1',\r\n padding: '10px',\r\n width: '80%',\r\n margin: '0 auto',\r\n },\r\n customField: {\r\n background: '#fff',\r\n border: 'solid thin #999',\r\n padding: '10px',\r\n width: '250px',\r\n margin: '0 auto',\r\n },\r\n});\r\n\r\nexport default styles;\r\n","/* eslint-disable max-len */\r\n/* eslint new-cap: [\"error\", { \"newIsCap\": false }] */\r\n/* eslint-disable camelcase */\r\nimport React, { useState } from 'react';\r\nimport Lodash from 'lodash';\r\nimport { jsPDF } from 'jspdf';\r\nimport 'jspdf-autotable';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport { Formik, Field } from 'formik';\r\nimport * as Yup from 'yup';\r\nimport { Container, Grid, Button } from '@material-ui/core';\r\nimport { PlnDropdown } from '../../Components/Input';\r\nimport style from './styles';\r\n\r\nimport {\r\n useProvinciasAOCP,\r\n getCantonsByProvince,\r\n} from '../../Core/Api/locationApi';\r\n\r\nconst FRMCantonesNoRepresentados = props => {\r\n const { classes } = props;\r\n const { data } = useProvinciasAOCP();\r\n\r\n const doc = new jsPDF('p', 'px', 'letter');\r\n\r\n const [showPreview, setShowPreview] = useState(false);\r\n\r\n // Opciones Seleccionadas\r\n const [sProvincia, setSProvincia] = useState(9);\r\n // eslint-disable-next-line no-unused-vars\r\n const [sCanton, setSCanton] = useState(999);\r\n\r\n const [numDelegados, setNumDelegados] = useState(0);\r\n\r\n // Lista de: Provincias, Cantones, Distritos y Movimientos\r\n const [initialValues] = useState(\r\n Lodash.get(data, ['initValues'], {\r\n provincia: 9,\r\n canton: 999,\r\n }),\r\n );\r\n\r\n const provincias = Lodash.get(\r\n data,\r\n ['frmOptions'],\r\n [\r\n {\r\n itemLabel: '- SELECCIONE LA PROVINCIA -',\r\n value: 9,\r\n },\r\n ],\r\n );\r\n\r\n const [cantones, setCantones] = useState([\r\n { itemLabel: '- SELECCIONE EL CANTÓN-', value: 999 },\r\n ]);\r\n\r\n const validationSchema = Yup.object({});\r\n\r\n const setProvincia = p => {\r\n setShowPreview(false);\r\n setCantones([\r\n {\r\n itemLabel: '- SELECCIONE EL CANTÓN-',\r\n value: 999,\r\n },\r\n ]);\r\n initialValues.provincia = p;\r\n initialValues.canton = 999;\r\n initialValues.distrito = 999;\r\n if (p !== 9) {\r\n getCantonsByProvince(p).then(result => {\r\n if (result.status === 200) {\r\n const cantonsList = Lodash.get(result, [\r\n 'data',\r\n 'response',\r\n ]);\r\n\r\n const clist = cantonsList.map(\r\n ({ cod_canton, des_nombre_c }) => {\r\n return {\r\n itemLabel: des_nombre_c,\r\n value: cod_canton,\r\n };\r\n },\r\n );\r\n clist.unshift({\r\n itemLabel: '- SELECCIONE EL CANTÓN-',\r\n value: 999,\r\n });\r\n\r\n setSProvincia(\r\n Lodash.find(provincias, {\r\n value: p,\r\n }),\r\n );\r\n setCantones(clist);\r\n }\r\n });\r\n }\r\n };\r\n\r\n const setCanton = c => {\r\n setShowPreview(true);\r\n initialValues.provincia = sProvincia.value;\r\n initialValues.canton = c;\r\n\r\n if (c !== 999) {\r\n setSCanton(\r\n Lodash.find(cantones, {\r\n value: c,\r\n }),\r\n );\r\n setNumDelegados(4);\r\n }\r\n };\r\n\r\n const renderForm = () => {\r\n return (\r\n
\r\n \r\n \r\n

Provincia

\r\n \r\n setProvincia(provincia)\r\n }\r\n />\r\n
\r\n \r\n

Cantón

\r\n setCanton(canton)}\r\n />\r\n
\r\n
\r\n
\r\n );\r\n };\r\n\r\n const tableHeaderTitle = [\r\n 'PRIMER LUGAR',\r\n 'SEGUNDO LUGAR',\r\n 'TERCER LUGAR',\r\n 'CUARTO LUGAR',\r\n 'QUINTO LUGAR',\r\n 'SEXTO LUGAR',\r\n 'SÉPTIMO LUGAR',\r\n 'OCTAVO LUGAR',\r\n 'NOVENO LUGAR',\r\n ];\r\n\r\n const getTimeStamp = () => {\r\n const now = new Date();\r\n return `${\r\n now.getMonth() + 1\r\n }/${now.getDate()}/${now.getFullYear()} ${now.getHours()}:${\r\n now.getMinutes() < 10\r\n ? `0${now.getMinutes()}`\r\n : now.getMinutes()\r\n }:${\r\n now.getSeconds() < 10\r\n ? `0${now.getSeconds()}`\r\n : now.getSeconds()\r\n }`;\r\n };\r\n const centeredText = (text, y) => {\r\n const textWidth =\r\n (doc.getStringUnitWidth(text) *\r\n doc.internal.getFontSize()) /\r\n doc.internal.scaleFactor;\r\n const textOffset =\r\n (doc.internal.pageSize.width - textWidth) / 2;\r\n doc.text(textOffset, y, text);\r\n };\r\n\r\n const getNotesPDF = () => {\r\n let notesData = [];\r\n\r\n notesData = [\r\n [\r\n // eslint-disable-next-line max-len\r\n `* No se aceptarán inscripciones con documentación o número de candidatos incompletos.`,\r\n ],\r\n [\r\n // eslint-disable-next-line max-len\r\n `* El gestor(a) es ahora el representante de la papeleta contenida en este formulario ante el T.E.I., para todos los efectos de su inscripción y tramitación.`,\r\n ],\r\n [\r\n // eslint-disable-next-line max-len\r\n `* RECUERDE: Las nominas deben ordenarse con alternabilidad de género. Debe haber dentro de los candidatos(as) al menos un 20% personas entre 18 a 35 años de edad.`,\r\n ],\r\n ];\r\n\r\n return notesData;\r\n };\r\n\r\n const generatePDF = () => {\r\n // ENCABEZADO DEL DOCUMENTO\r\n doc.setFont('times', 'bold');\r\n doc.text(\r\n 20,\r\n 40,\r\n process.env.REACT_APP_PDF_PARTIDO_REPORTS,\r\n );\r\n doc.setFontSize(12);\r\n doc.text(\r\n 20,\r\n 60,\r\n 'Asambleas del Órgano Consultivo Provincial',\r\n );\r\n doc.setFont('times', 'normal');\r\n doc.text(\r\n 20,\r\n 80,\r\n process.env.REACT_APP_PDF_PERIODO_REPORTS,\r\n );\r\n\r\n doc.setFont('times', 'bold');\r\n\r\n centeredText(\r\n process.env.REACT_APP_PDF_TITLE_FORMULARIO_REPORTS,\r\n 100,\r\n );\r\n\r\n doc.setFont('times', 'normal');\r\n doc.text(20, 120, 'Señores');\r\n doc.text(\r\n 20,\r\n 130,\r\n process.env.REACT_APP_PDF_TITLE_TRIBUNAL_REPORTS,\r\n );\r\n\r\n let paragraph = `Nosotros los abajo firmantes, miembros activos del Partido, de conformidad con lo dispuesto en el Reglamento para la Elección de Cantones No Representados, solicitamos la inscripción de las siguientes candidaturas para participar en la escogencia de los delegados ante el Órgano Consultivo Nacional para:`;\r\n let lines = doc.splitTextToSize(paragraph, 415);\r\n doc.text(20, 140, lines);\r\n\r\n const columns = [\r\n 'Posible N° de Papeleta',\r\n 'Provincia',\r\n 'Cantón',\r\n ];\r\n\r\n const typeTable1 = 'grid';\r\n const showTheHeader = true;\r\n const baseHeightText = 220;\r\n const baseHeightTable = 85;\r\n\r\n const datos1 = [\r\n ['', sProvincia.itemLabel, sCanton.itemLabel],\r\n ];\r\n\r\n // TABLA FORMULARIO\r\n doc.autoTable({\r\n head: [columns],\r\n body: datos1,\r\n theme: typeTable1,\r\n startY: 170,\r\n styles: {\r\n overflow: 'linebreak',\r\n cellWidth: 'wrap',\r\n font: 'times',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n },\r\n 1: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n },\r\n 2: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: showTheHeader,\r\n margin: { left: 20 },\r\n });\r\n\r\n // TABLA: CANDIDATOS DELEGADOS DISTRITALES\r\n doc.setFontSize(12);\r\n doc.setFont('times', 'normal');\r\n\r\n // eslint-disable-next-line max-len\r\n paragraph = `Declaramos incondicionalmente nuestra adhesión al Partido y a sus principios ideológicos y programáticos y aceptamos en su totalidad las normas ético­jurídicas que rigen el proceso, así como las decisiones, resoluciones y acuerdos del Tribunal de Elecciones Internas. Igualmente nos comprometemos a contribuir económicamente al mantenimiento del Partido, según lo dispuesto en el Articulo 14, inciso a) del Estatuto. La nómina de nuestra papeleta, integrada en orden alternativo de género, es la siguiente:`;\r\n\r\n lines = doc.splitTextToSize(paragraph, 425);\r\n doc.text(20, baseHeightText, lines);\r\n\r\n const dinamicFields = numDelegados;\r\n const theTitle =\r\n 'CANDIDATOS(AS) A DELEGADOS ANTE EL ÓRGANO CONSULTIVO NACIONAL';\r\n\r\n doc.setFont('times', 'bold');\r\n centeredText(theTitle, 280);\r\n\r\n let posY = doc.lastAutoTable.finalY + baseHeightTable;\r\n\r\n for (let n = 0; n < dinamicFields; n++) {\r\n if (n !== 0) {\r\n posY = doc.lastAutoTable.finalY + 5;\r\n }\r\n\r\n const numRow = n + 1;\r\n const columnsT = ['A'];\r\n let dataT = [];\r\n dataT = [[`${numRow} - ${tableHeaderTitle[n]}`]];\r\n\r\n doc.autoTable({\r\n head: [columnsT],\r\n body: dataT,\r\n theme: 'grid',\r\n startY: posY,\r\n styles: { font: 'times', fontStyle: 'bold' },\r\n columnStyles: {\r\n 0: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n const columns2 = [\r\n 'CÉDULA',\r\n 'PRIMER APELLIDO',\r\n 'SEGUNDO APELLIDO',\r\n 'NOMBRE',\r\n ];\r\n\r\n const datos2 = [['', '', '', '', '']];\r\n\r\n doc.autoTable({\r\n head: [columns2],\r\n body: datos2,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY,\r\n styles: {\r\n overflow: 'linebreak',\r\n cellWidth: 'wrap',\r\n font: 'times',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n },\r\n 1: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n },\r\n 2: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n },\r\n 3: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n margin: { left: 20 },\r\n });\r\n\r\n const columns3 = ['A'];\r\n const data3 = [\r\n [\r\n // eslint-disable-next-line max-len\r\n `En este acto con mi firma de puño y letra, ratifico mi aceptación como candidato(a). Asimismo autorizo al gestor(a) para que deposite lo correspondiente a mi cuota de membrecía.`,\r\n ],\r\n ];\r\n\r\n // posY += 45;\r\n doc.autoTable({\r\n head: [columns3],\r\n body: data3,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY,\r\n styles: { font: 'times' },\r\n columnStyles: {\r\n 0: {\r\n halign: 'left',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n const columns4 = ['', ''];\r\n const data4 = [\r\n [\r\n ' FIRMA ',\r\n '_____________________________________________',\r\n ],\r\n ];\r\n\r\n doc.autoTable({\r\n head: [columns4],\r\n body: data4,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY,\r\n styles: { font: 'times', color: '#000' },\r\n columnStyles: {\r\n 0: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n },\r\n 1: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n }\r\n\r\n // TABLA: GESTOR DE LA PAPELETA\r\n const columnsT3 = ['A'];\r\n const dataT3 = [\r\n [\r\n `GESTOR DE LA PAPELETA ANTE EL TRIBUNAL DE ELECCIONES INTERNAS`,\r\n ],\r\n ];\r\n\r\n doc.autoTable({\r\n head: [columnsT3],\r\n body: dataT3,\r\n theme: 'plain',\r\n startY: doc.lastAutoTable.finalY + 10,\r\n styles: {\r\n font: 'times',\r\n fontStyle: 'bold',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n fontSize: 12,\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n posY = doc.lastAutoTable.finalY + 5;\r\n\r\n const columnsT4 = ['A', 'B'];\r\n const dataT4 = [\r\n [\r\n 'CÉDULA',\r\n ' ',\r\n ],\r\n [\r\n 'NOMBRE COMPLETO',\r\n ' ',\r\n ],\r\n [\r\n 'FIRMA',\r\n ' ',\r\n ],\r\n ];\r\n\r\n doc.autoTable({\r\n head: [columnsT4],\r\n body: dataT4,\r\n theme: 'grid',\r\n startY: posY,\r\n styles: { font: 'times', fontStyle: 'bold' },\r\n columnStyles: {\r\n 0: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n },\r\n 1: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n posY = doc.lastAutoTable.finalY + 5;\r\n\r\n // TABLA: NOTAS\r\n const columnsT5 = ['A'];\r\n const dataT5 = [[`Notas`]];\r\n\r\n doc.autoTable({\r\n head: [columnsT5],\r\n body: dataT5,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY + 10,\r\n styles: {\r\n font: 'times',\r\n fontStyle: 'bold',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n fontSize: 12,\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n const columnsT6 = ['A'];\r\n const dataT6 = getNotesPDF();\r\n\r\n doc.autoTable({\r\n head: [columnsT6],\r\n body: dataT6,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY,\r\n styles: {\r\n font: 'times',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'left',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n fontSize: 10,\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'left',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n // FOOTER DOCUMENT\r\n const columnsPie = ['A'];\r\n const dataPie = [\r\n [\r\n // eslint-disable-next-line max-len\r\n `PLNDigital.com ${process.env.REACT_APP_PDF_YEAR_REPORTS} Email: consultas@plndigital.com PLN; Mata Redonda, 125m O. del edificio del M.A.G., Casa Liberacionista \"José Figueres Ferrer\" Tel: (506)2549­5500. Aptdo:10051­1000 San José. Sitio web desarrollado por Corporación DSI S.A.`,\r\n ],\r\n ];\r\n doc.autoTable({\r\n head: [columnsPie],\r\n body: dataPie,\r\n theme: 'plain',\r\n startY: doc.lastAutoTable.finalY + 50,\r\n styles: {\r\n font: 'times',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'left',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n fontSize: 10,\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'left',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n const fileTS = getTimeStamp();\r\n doc.save(\r\n `formulario-cantones-no-representados-${fileTS}.pdf`,\r\n );\r\n };\r\n\r\n if (!Lodash.isEmpty(provincias)) {\r\n return (\r\n \r\n

FORMULARIO DE CANTONES NO REPRESENTADOS

\r\n

\r\n Complete la siguiente información:\r\n

\r\n
\r\n \r\n {renderForm()}\r\n \r\n\r\n {showPreview ? (\r\n
\r\n \r\n \r\n \r\n DESCARGAR FORMULARIO\r\n \r\n \r\n \r\n
\r\n ) : (\r\n ''\r\n )}\r\n
\r\n \r\n );\r\n }\r\n return '';\r\n};\r\n\r\nFRMCantonesNoRepresentados.propTypes = {};\r\n\r\nexport default withStyles(style)(\r\n FRMCantonesNoRepresentados,\r\n);\r\n","/* eslint-disable max-len */\r\n/* eslint new-cap: [\"error\", { \"newIsCap\": false }] */\r\n/* eslint-disable camelcase */\r\nimport React, { useState } from 'react';\r\nimport Lodash from 'lodash';\r\nimport { jsPDF } from 'jspdf';\r\nimport 'jspdf-autotable';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport { Formik, Field } from 'formik';\r\nimport * as Yup from 'yup';\r\nimport { Container, Grid, Button } from '@material-ui/core';\r\nimport { PlnDropdown } from '../../Components/Input';\r\nimport style from './styles';\r\n\r\nimport {\r\n useProvincias,\r\n getCantonsByProvince,\r\n} from '../../Core/Api/locationApi';\r\n\r\nconst FRMComiteEjecutivoCantonal = props => {\r\n const { classes } = props;\r\n const { data } = useProvincias();\r\n\r\n const doc = new jsPDF('p', 'px', 'letter');\r\n\r\n const [showPreview, setShowPreview] = useState(false);\r\n\r\n // Opciones Seleccionadas\r\n const [sProvincia, setSProvincia] = useState(9);\r\n // eslint-disable-next-line no-unused-vars\r\n const [sCanton, setSCanton] = useState(999);\r\n\r\n const [numDelegados] = useState(6);\r\n\r\n // Lista de: Provincias, Cantones, Distritos y Movimientos\r\n const [initialValues] = useState(\r\n Lodash.get(data, ['initValues'], {\r\n provincia: 9,\r\n canton: 999,\r\n }),\r\n );\r\n\r\n const provincias = Lodash.get(\r\n data,\r\n ['frmOptions'],\r\n [\r\n {\r\n itemLabel: '- SELECCIONE LA PROVINCIA -',\r\n value: 9,\r\n },\r\n ],\r\n );\r\n\r\n const [cantones, setCantones] = useState([\r\n { itemLabel: '- SELECCIONE EL CANTÓN-', value: 999 },\r\n ]);\r\n\r\n const validationSchema = Yup.object({});\r\n\r\n const setProvincia = p => {\r\n setShowPreview(false);\r\n setCantones([\r\n {\r\n itemLabel: '- SELECCIONE EL CANTÓN-',\r\n value: 999,\r\n },\r\n ]);\r\n initialValues.provincia = p;\r\n initialValues.canton = 999;\r\n initialValues.distrito = 999;\r\n if (p !== 9) {\r\n getCantonsByProvince(p).then(result => {\r\n if (result.status === 200) {\r\n const cantonsList = Lodash.get(result, [\r\n 'data',\r\n 'response',\r\n ]);\r\n\r\n const clist = cantonsList.map(\r\n ({ cod_canton, des_nombre_c }) => {\r\n return {\r\n itemLabel: des_nombre_c,\r\n value: cod_canton,\r\n };\r\n },\r\n );\r\n clist.unshift({\r\n itemLabel: '- SELECCIONE EL CANTÓN-',\r\n value: 999,\r\n });\r\n\r\n setSProvincia(\r\n Lodash.find(provincias, {\r\n value: p,\r\n }),\r\n );\r\n setCantones(clist);\r\n }\r\n });\r\n }\r\n };\r\n\r\n const setCanton = c => {\r\n setShowPreview(true);\r\n initialValues.provincia = sProvincia.value;\r\n initialValues.canton = c;\r\n\r\n if (c !== 999) {\r\n setSCanton(\r\n Lodash.find(cantones, {\r\n value: c,\r\n }),\r\n );\r\n }\r\n };\r\n\r\n const renderForm = () => {\r\n return (\r\n
\r\n \r\n \r\n

Provincia

\r\n \r\n setProvincia(provincia)\r\n }\r\n />\r\n
\r\n \r\n

Cantón

\r\n setCanton(canton)}\r\n />\r\n
\r\n
\r\n
\r\n );\r\n };\r\n\r\n const tableHeaderTitle = [\r\n 'PRIMER LUGAR',\r\n 'SEGUNDO LUGAR',\r\n 'TERCER LUGAR',\r\n 'CUARTO LUGAR',\r\n 'QUINTO LUGAR',\r\n 'SEXTO LUGAR',\r\n 'SÉPTIMO LUGAR',\r\n 'OCTAVO LUGAR',\r\n 'NOVENO LUGAR',\r\n ];\r\n\r\n const tableHeaderTitleCF = ['PROPIETARIO'];\r\n\r\n const getTimeStamp = () => {\r\n const now = new Date();\r\n return `${\r\n now.getMonth() + 1\r\n }/${now.getDate()}/${now.getFullYear()} ${now.getHours()}:${\r\n now.getMinutes() < 10\r\n ? `0${now.getMinutes()}`\r\n : now.getMinutes()\r\n }:${\r\n now.getSeconds() < 10\r\n ? `0${now.getSeconds()}`\r\n : now.getSeconds()\r\n }`;\r\n };\r\n\r\n const centeredText = (text, y) => {\r\n const textWidth =\r\n (doc.getStringUnitWidth(text) *\r\n doc.internal.getFontSize()) /\r\n doc.internal.scaleFactor;\r\n const textOffset =\r\n (doc.internal.pageSize.width - textWidth) / 2;\r\n doc.text(textOffset, y, text);\r\n };\r\n\r\n const getNotesPDF = () => {\r\n let notesData = [];\r\n\r\n notesData = [\r\n [\r\n // eslint-disable-next-line max-len\r\n `* No se aceptarán inscripciones con documentación o número de candidatos incompletos.`,\r\n ],\r\n [\r\n // eslint-disable-next-line max-len\r\n `* El gestor(a) es ahora el representante de la papeleta contenida en este formulario ante el T.E.I., para todos los efectos de su inscripción y tramitación.`,\r\n ],\r\n [\r\n // eslint-disable-next-line max-len\r\n `* RECUERDE: Las nominas deben ordenarse con alternabilidad de género. Debe haber dentro de los candidatos(as) al menos un 20% personas entre 18 a 35 años de edad.`,\r\n ],\r\n ];\r\n\r\n return notesData;\r\n };\r\n\r\n const generatePDF = () => {\r\n // ENCABEZADO DEL DOCUMENTO\r\n doc.setFont('times', 'bold');\r\n doc.text(\r\n 20,\r\n 40,\r\n process.env.REACT_APP_PDF_PARTIDO_REPORTS,\r\n );\r\n doc.setFontSize(12);\r\n doc.text(20, 60, 'Asambleas Cantonales');\r\n doc.setFont('times', 'normal');\r\n doc.text(\r\n 20,\r\n 80,\r\n process.env.REACT_APP_PDF_PERIODO_REPORTS,\r\n );\r\n\r\n doc.setFont('times', 'bold');\r\n\r\n centeredText(\r\n process.env.REACT_APP_PDF_TITLE_FORMULARIO_REPORTS,\r\n 100,\r\n );\r\n\r\n doc.setFont('times', 'normal');\r\n doc.text(20, 120, 'Señores');\r\n doc.text(\r\n 20,\r\n 130,\r\n process.env.REACT_APP_PDF_TITLE_TRIBUNAL_REPORTS,\r\n );\r\n\r\n let paragraph = `Nosotros los abajo firmantes, miembros activos del Partido, de conformidad con lo dispuesto en el Reglamento para las Asambleas Cantonales, solicitamos la inscripción de las siguientes candidaturas para participar en la escogencia del Comité Ejecutivo Cantonal para:`;\r\n let lines = doc.splitTextToSize(paragraph, 415);\r\n doc.text(20, 140, lines);\r\n\r\n const columns = [\r\n 'Posible N° de Papeleta',\r\n 'Provincia',\r\n 'Cantón',\r\n ];\r\n\r\n const typeTable1 = 'grid';\r\n const showTheHeader = true;\r\n const baseHeightText = 220;\r\n const baseHeightTable = 85;\r\n\r\n const datos1 = [\r\n ['', sProvincia.itemLabel, sCanton.itemLabel],\r\n ];\r\n\r\n // TABLA FORMULARIO\r\n doc.autoTable({\r\n head: [columns],\r\n body: datos1,\r\n theme: typeTable1,\r\n startY: 170,\r\n styles: {\r\n overflow: 'linebreak',\r\n cellWidth: 'wrap',\r\n font: 'times',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n },\r\n 1: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n },\r\n 2: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: showTheHeader,\r\n margin: { left: 20 },\r\n });\r\n\r\n // TABLA: CANDIDATOS DELEGADOS DISTRITALES\r\n doc.setFontSize(12);\r\n doc.setFont('times', 'normal');\r\n // eslint-disable-next-line max-len\r\n paragraph = `Declaramos incondicionalmente nuestra adhesión al Partido y a sus principios ideológicos y programáticos y aceptamos en su totalidad las normas ético­jurídicas que rigen el proceso, así como las decisiones, resoluciones y acuerdos del Tribunal de Elecciones Internas. Igualmente nos comprometemos a contribuir económicamente al mantenimiento del Partido, según lo dispuesto en el Articulo 14, inciso a) del Estatuto. La nómina de nuestra papeleta, integrada en orden alternativo de género, es la siguiente:`;\r\n\r\n lines = doc.splitTextToSize(paragraph, 425);\r\n doc.text(20, baseHeightText, lines);\r\n\r\n const dinamicFields = numDelegados;\r\n const theTitle =\r\n 'CANDIDATOS(AS) PARA EL COMITÉ EJECUTIVO CANTONAL';\r\n\r\n doc.setFont('times', 'bold');\r\n centeredText(theTitle, 280);\r\n\r\n let posY = doc.lastAutoTable.finalY + baseHeightTable;\r\n\r\n for (let n = 0; n < dinamicFields; n++) {\r\n if (n !== 0) {\r\n posY = doc.lastAutoTable.finalY + 5;\r\n }\r\n\r\n const numRow = n + 1;\r\n const columnsT = ['A'];\r\n let dataT = [];\r\n dataT = [[`${numRow} - ${tableHeaderTitle[n]}`]];\r\n\r\n doc.autoTable({\r\n head: [columnsT],\r\n body: dataT,\r\n theme: 'grid',\r\n startY: posY,\r\n styles: { font: 'times', fontStyle: 'bold' },\r\n columnStyles: {\r\n 0: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n const columns2 = [\r\n 'CÉDULA',\r\n 'PRIMER APELLIDO',\r\n 'SEGUNDO APELLIDO',\r\n 'NOMBRE',\r\n ];\r\n\r\n const datos2 = [['', '', '', '', '']];\r\n\r\n doc.autoTable({\r\n head: [columns2],\r\n body: datos2,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY,\r\n styles: {\r\n overflow: 'linebreak',\r\n cellWidth: 'wrap',\r\n font: 'times',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n },\r\n 1: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n },\r\n 2: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n },\r\n 3: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n margin: { left: 20 },\r\n });\r\n\r\n const columns3 = ['A'];\r\n const data3 = [\r\n [\r\n // eslint-disable-next-line max-len\r\n `En este acto con mi firma de puño y letra, ratifico mi aceptación como candidato(a). Asimismo autorizo al gestor(a) para que deposite lo correspondiente a mi cuota de membrecía.`,\r\n ],\r\n ];\r\n\r\n // posY += 45;\r\n doc.autoTable({\r\n head: [columns3],\r\n body: data3,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY,\r\n styles: { font: 'times' },\r\n columnStyles: {\r\n 0: {\r\n halign: 'left',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n const columns4 = ['', ''];\r\n const data4 = [\r\n [\r\n ' FIRMA ',\r\n '_____________________________________________',\r\n ],\r\n ];\r\n\r\n doc.autoTable({\r\n head: [columns4],\r\n body: data4,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY,\r\n styles: { font: 'times', color: '#000' },\r\n columnStyles: {\r\n 0: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n },\r\n 1: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n }\r\n\r\n // TABLA: CANDIDATOS FISCALÍA\r\n const columnsT2 = ['A'];\r\n const dataT2 = [[`CANDIDATO(A) A LA FISCALÍA`]];\r\n\r\n doc.autoTable({\r\n head: [columnsT2],\r\n body: dataT2,\r\n theme: 'plain',\r\n startY: doc.lastAutoTable.finalY + 10,\r\n styles: {\r\n font: 'times',\r\n fontStyle: 'bold',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n fontSize: 12,\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n posY = doc.lastAutoTable.finalY + 5;\r\n\r\n for (let n3 = 0; n3 < tableHeaderTitleCF.length; n3++) {\r\n if (n3 !== 0) {\r\n posY = doc.lastAutoTable.finalY + 5;\r\n }\r\n\r\n const columns2 = [\r\n 'CÉDULA',\r\n 'PRIMER APELLIDO',\r\n 'SEGUNDO APELLIDO',\r\n 'NOMBRE',\r\n ];\r\n const datos2 = [['', '', '', '', '']];\r\n\r\n // posY += 15;\r\n doc.autoTable({\r\n head: [columns2],\r\n body: datos2,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY,\r\n styles: {\r\n overflow: 'linebreak',\r\n cellWidth: 'wrap',\r\n font: 'times',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n },\r\n 1: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n },\r\n 2: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n },\r\n 3: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n margin: { left: 20 },\r\n });\r\n\r\n const columns3 = ['A'];\r\n const data3 = [\r\n [\r\n // eslint-disable-next-line max-len\r\n `En este acto con mi firma de puño y letra, ratifico mi aceptación como candidato(a). Asimismo autorizo al gestor(a) para que deposite lo correspondiente a mi cuota de membrecía.`,\r\n ],\r\n ];\r\n\r\n // posY += 45;\r\n doc.autoTable({\r\n head: [columns3],\r\n body: data3,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY,\r\n styles: { font: 'times' },\r\n columnStyles: {\r\n 0: {\r\n halign: 'left',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n const columns4 = ['', ''];\r\n const data4 = [\r\n [\r\n ' FIRMA ',\r\n '_____________________________________________',\r\n ],\r\n ];\r\n\r\n // posY += 70;\r\n doc.autoTable({\r\n head: [columns4],\r\n body: data4,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY,\r\n styles: { font: 'times', color: '#000' },\r\n columnStyles: {\r\n 0: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n },\r\n 1: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n }\r\n\r\n // TABLA: GESTOR DE LA PAPELETA\r\n const columnsT3 = ['A'];\r\n const dataT3 = [\r\n [\r\n `GESTOR DE LA PAPELETA ANTE EL TRIBUNAL DE ELECCIONES INTERNAS`,\r\n ],\r\n ];\r\n\r\n doc.autoTable({\r\n head: [columnsT3],\r\n body: dataT3,\r\n theme: 'plain',\r\n startY: doc.lastAutoTable.finalY + 10,\r\n styles: {\r\n font: 'times',\r\n fontStyle: 'bold',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n fontSize: 12,\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n posY = doc.lastAutoTable.finalY + 5;\r\n\r\n const columnsT4 = ['A', 'B'];\r\n const dataT4 = [\r\n [\r\n 'CÉDULA',\r\n ' ',\r\n ],\r\n [\r\n 'NOMBRE COMPLETO',\r\n ' ',\r\n ],\r\n [\r\n 'FIRMA',\r\n ' ',\r\n ],\r\n ];\r\n\r\n doc.autoTable({\r\n head: [columnsT4],\r\n body: dataT4,\r\n theme: 'grid',\r\n startY: posY,\r\n styles: { font: 'times', fontStyle: 'bold' },\r\n columnStyles: {\r\n 0: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n },\r\n 1: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n posY = doc.lastAutoTable.finalY + 5;\r\n\r\n // TABLA: NOTAS\r\n const columnsT5 = ['A'];\r\n const dataT5 = [[`Notas`]];\r\n\r\n doc.autoTable({\r\n head: [columnsT5],\r\n body: dataT5,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY + 10,\r\n styles: {\r\n font: 'times',\r\n fontStyle: 'bold',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n fontSize: 12,\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n const columnsT6 = ['A'];\r\n const dataT6 = getNotesPDF();\r\n\r\n doc.autoTable({\r\n head: [columnsT6],\r\n body: dataT6,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY,\r\n styles: {\r\n font: 'times',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'left',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n fontSize: 10,\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'left',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n // FOOTER DOCUMENT\r\n const columnsPie = ['A'];\r\n const dataPie = [\r\n [\r\n // eslint-disable-next-line max-len\r\n `PLNDigital.com ${process.env.REACT_APP_PDF_YEAR_REPORTS} Email: consultas@plndigital.com PLN; Mata Redonda, 125m O. del edificio del M.A.G., Casa Liberacionista \"José Figueres Ferrer\" Tel: (506)2549­5500. Aptdo:10051­1000 San José. Sitio web desarrollado por Corporación DSI S.A.`,\r\n ],\r\n ];\r\n doc.autoTable({\r\n head: [columnsPie],\r\n body: dataPie,\r\n theme: 'plain',\r\n startY: doc.lastAutoTable.finalY + 50,\r\n styles: {\r\n font: 'times',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'left',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n fontSize: 10,\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'left',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n const fileTS = getTimeStamp();\r\n doc.save(\r\n `formulario-comite-ejecutivo-cantonal-${fileTS}.pdf`,\r\n );\r\n };\r\n\r\n if (!Lodash.isEmpty(provincias)) {\r\n return (\r\n \r\n

FORMULARIO COMITÉ EJECUTIVO CANTONAL

\r\n

\r\n Seleccione la Información Requerida\r\n

\r\n
\r\n \r\n {renderForm()}\r\n \r\n\r\n {showPreview ? (\r\n
\r\n \r\n \r\n \r\n DESCARGAR FORMULARIO\r\n \r\n \r\n \r\n
\r\n ) : (\r\n ''\r\n )}\r\n
\r\n \r\n );\r\n }\r\n return '';\r\n};\r\n\r\nFRMComiteEjecutivoCantonal.propTypes = {};\r\n\r\nexport default withStyles(style)(\r\n FRMComiteEjecutivoCantonal,\r\n);\r\n","/* eslint-disable max-len */\r\n/* eslint new-cap: [\"error\", { \"newIsCap\": false }] */\r\n/* eslint-disable camelcase */\r\nimport React from 'react';\r\nimport { jsPDF } from 'jspdf';\r\nimport 'jspdf-autotable';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport { Container, Grid, Button } from '@material-ui/core';\r\nimport style from './styles';\r\n\r\nconst FRMHojaInformacion = props => {\r\n const { classes } = props;\r\n\r\n const doc = new jsPDF('p', 'px', 'letter');\r\n\r\n const getTimeStamp = () => {\r\n const now = new Date();\r\n return `${\r\n now.getMonth() + 1\r\n }/${now.getDate()}/${now.getFullYear()} ${now.getHours()}:${\r\n now.getMinutes() < 10\r\n ? `0${now.getMinutes()}`\r\n : now.getMinutes()\r\n }:${\r\n now.getSeconds() < 10\r\n ? `0${now.getSeconds()}`\r\n : now.getSeconds()\r\n }`;\r\n };\r\n\r\n const centeredText = (text, y) => {\r\n const textWidth =\r\n (doc.getStringUnitWidth(text) *\r\n doc.internal.getFontSize()) /\r\n doc.internal.scaleFactor;\r\n const textOffset =\r\n (doc.internal.pageSize.width - textWidth) / 2;\r\n doc.text(textOffset, y, text);\r\n };\r\n\r\n const generateHojaInformacion = () => {\r\n // ENCABEZADO DEL DOCUMENTO\r\n doc.setFont('times', 'bold');\r\n doc.text(\r\n 20,\r\n 40,\r\n process.env.REACT_APP_PDF_PARTIDO_REPORTS,\r\n );\r\n doc.setFontSize(12);\r\n doc.text(20, 60, 'TRIBUNAL DE ELECCIONES INTERNAS');\r\n doc.setFont('times', 'normal');\r\n doc.text(\r\n 20,\r\n 80,\r\n process.env.REACT_APP_PDF_PERIODO_REPORTS,\r\n );\r\n\r\n doc.setFont('times', 'bold');\r\n centeredText(\r\n process.env.REACT_APP_PDF_TITLE_HOJA_INFO_REPORTS,\r\n 100,\r\n );\r\n\r\n doc.setFont('times', 'bold');\r\n const columnsA = ['CÉDULA', ''];\r\n const dataA = [['CÉDULA', '']];\r\n\r\n doc.autoTable({\r\n head: [columnsA],\r\n body: dataA,\r\n theme: 'grid',\r\n startY: 120,\r\n styles: {\r\n overflow: 'linebreak',\r\n cellWidth: 'wrap',\r\n font: 'times',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'left',\r\n cellWidth: 130,\r\n textColor: 0,\r\n fillColor: [255, 255, 255],\r\n },\r\n 1: {\r\n halign: 'center',\r\n cellWidth: 290,\r\n textColor: 0,\r\n fillColor: [255, 255, 255],\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n const columnsB = ['NOMBRE', ''];\r\n const dataB = [['NOMBRE', '']];\r\n\r\n doc.autoTable({\r\n head: [columnsB],\r\n body: dataB,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY,\r\n styles: {\r\n overflow: 'linebreak',\r\n cellWidth: 'wrap',\r\n font: 'times',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'left',\r\n cellWidth: 130,\r\n textColor: 0,\r\n fillColor: [255, 255, 255],\r\n },\r\n 1: {\r\n halign: 'center',\r\n cellWidth: 290,\r\n textColor: 0,\r\n fillColor: [255, 255, 255],\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n const columnsC = ['DIRECCION', ''];\r\n const dataC = [['DIRECCIÓN HABITACIÓN', '']];\r\n\r\n doc.autoTable({\r\n head: [columnsC],\r\n body: dataC,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY,\r\n styles: {\r\n overflow: 'linebreak',\r\n cellWidth: 'wrap',\r\n font: 'times',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'left',\r\n cellWidth: 130,\r\n textColor: 0,\r\n fillColor: [255, 255, 255],\r\n },\r\n 1: {\r\n halign: 'center',\r\n cellWidth: 290,\r\n textColor: 0,\r\n fillColor: [255, 255, 255],\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n const columnsD = [\r\n 'TELEFONO HABITACIÓN',\r\n 'CELULAR',\r\n 'FAX',\r\n 'OTRO',\r\n ];\r\n const dataD = [['', '', '', '']];\r\n\r\n doc.autoTable({\r\n head: [columnsD],\r\n body: dataD,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY,\r\n styles: {\r\n overflow: 'linebreak',\r\n cellWidth: 'wrap',\r\n font: 'times',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'left',\r\n cellWidth: 130,\r\n textColor: 0,\r\n fillColor: [255, 255, 255],\r\n },\r\n 1: {\r\n halign: 'left',\r\n cellWidth: 100,\r\n textColor: 0,\r\n fillColor: [255, 255, 255],\r\n },\r\n 2: {\r\n halign: 'left',\r\n cellWidth: 95,\r\n textColor: 0,\r\n fillColor: [255, 255, 255],\r\n },\r\n 3: {\r\n halign: 'left',\r\n cellWidth: 95,\r\n textColor: 0,\r\n fillColor: [255, 255, 255],\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n margin: { left: 20 },\r\n });\r\n\r\n const columnsE = ['DIRECCION TRABAJO', ''];\r\n const dataE = [['DIRECCIÓN TRABAJO', '']];\r\n\r\n doc.autoTable({\r\n head: [columnsE],\r\n body: dataE,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY,\r\n styles: {\r\n overflow: 'linebreak',\r\n cellWidth: 'wrap',\r\n font: 'times',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'left',\r\n cellWidth: 130,\r\n textColor: 0,\r\n fillColor: [255, 255, 255],\r\n },\r\n 1: {\r\n halign: 'center',\r\n cellWidth: 290,\r\n textColor: 0,\r\n fillColor: [255, 255, 255],\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n const columnsF = ['TELEFONO TRABAJO', 'FAX TRABAJO'];\r\n const dataF = [['', '']];\r\n\r\n doc.autoTable({\r\n head: [columnsF],\r\n body: dataF,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY,\r\n styles: {\r\n overflow: 'linebreak',\r\n cellWidth: 'wrap',\r\n font: 'times',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'left',\r\n cellWidth: 230,\r\n textColor: 0,\r\n fillColor: [255, 255, 255],\r\n },\r\n 1: {\r\n halign: 'left',\r\n cellWidth: 190,\r\n textColor: 0,\r\n fillColor: [255, 255, 255],\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n margin: { left: 20 },\r\n });\r\n\r\n const columnsG = [\r\n 'CORREO ELECTRONICO OFICIAL PARA NOTIFICACIONES',\r\n '',\r\n ];\r\n const dataG = [\r\n [\r\n 'CORREO ELECTRÓNICO OFICIAL PARA NOTIFICACIONES',\r\n '',\r\n ],\r\n ];\r\n\r\n doc.autoTable({\r\n head: [columnsG],\r\n body: dataG,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY,\r\n styles: {\r\n overflow: 'linebreak',\r\n cellWidth: 'wrap',\r\n font: 'times',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'left',\r\n cellWidth: 130,\r\n textColor: 0,\r\n fillColor: [255, 255, 255],\r\n },\r\n 1: {\r\n halign: 'center',\r\n cellWidth: 290,\r\n textColor: 0,\r\n fillColor: [255, 255, 255],\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n const columnsH = ['H'];\r\n const dataH = [\r\n [\r\n // eslint-disable-next-line max-len\r\n 'En apego a la Ley No 8968 de Protección de la Persona frente al tratamiento de sus datos personales: Autorizo al Partido Liberación Nacional, para que utilice mi información, con el fin de que el PLN pueda mantener contacto con mi persona, ya sea por teléfono o por correo electrónico.',\r\n ],\r\n ];\r\n\r\n doc.autoTable({\r\n head: [columnsH],\r\n body: dataH,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY,\r\n styles: {\r\n overflow: 'linebreak',\r\n cellWidth: 'wrap',\r\n font: 'times',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'left',\r\n cellWidth: 420,\r\n textColor: 0,\r\n fillColor: [255, 255, 255],\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n const columnsI = ['FIRMA'];\r\n const dataI = [\r\n ['____________________________________________'],\r\n ];\r\n\r\n doc.autoTable({\r\n head: [columnsI],\r\n body: dataI,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY,\r\n styles: {\r\n overflow: 'linebreak',\r\n cellWidth: 'wrap',\r\n font: 'times',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'center',\r\n cellWidth: 420,\r\n textColor: 0,\r\n fillColor: [255, 255, 255],\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n margin: { left: 20 },\r\n });\r\n\r\n // TABLA: NOTAS\r\n const columnsT5 = ['A'];\r\n const dataT5 = [[`Notas`]];\r\n\r\n doc.autoTable({\r\n head: [columnsT5],\r\n body: dataT5,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY + 10,\r\n styles: {\r\n font: 'times',\r\n fontStyle: 'bold',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'center',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n fontSize: 12,\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'center',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n const columnsT6 = ['A'];\r\n const dataT6 = [\r\n [\r\n // eslint-disable-next-line max-len\r\n `Para cada gestor(a) y candidato(a) se debe aportar un correo electrónico personal oficial para recibir notificaciones del T.E.I. o del T.S.E. (No se recomienda utilizar el mismo correo electrónico del gestor).`,\r\n ],\r\n ];\r\n\r\n doc.autoTable({\r\n head: [columnsT6],\r\n body: dataT6,\r\n theme: 'grid',\r\n startY: doc.lastAutoTable.finalY,\r\n styles: {\r\n font: 'times',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'left',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n fontSize: 10,\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'left',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n // FOOTER DOCUMENT\r\n const columnsPie = ['A'];\r\n const dataPie = [\r\n [\r\n // eslint-disable-next-line max-len\r\n `PLNDigital.com ${process.env.REACT_APP_PDF_YEAR_REPORTS} Email: consultas@plndigital.com PLN; Mata Redonda, 125m O. del edificio del M.A.G., Casa Liberacionista \"José Figueres Ferrer\" Tel: (506)2549­5500. Aptdo:10051­1000 San José. Sitio web desarrollado por Corporación DSI S.A.`,\r\n ],\r\n ];\r\n doc.autoTable({\r\n head: [columnsPie],\r\n body: dataPie,\r\n theme: 'plain',\r\n startY: doc.lastAutoTable.finalY + 50,\r\n styles: {\r\n font: 'times',\r\n },\r\n columnStyles: {\r\n 0: {\r\n halign: 'left',\r\n fillColor: [255, 255, 255],\r\n textColor: 0,\r\n fontSize: 10,\r\n },\r\n },\r\n headStyles: {\r\n fillColor: [204, 204, 204],\r\n fontSize: 9,\r\n textColor: 0,\r\n halign: 'left',\r\n },\r\n showHead: 'never',\r\n margin: { left: 20 },\r\n });\r\n\r\n const fileTS = getTimeStamp();\r\n doc.save(`formulario-hoja-informacion-${fileTS}.pdf`);\r\n };\r\n\r\n return (\r\n \r\n

FORMULARIO DE HOJA DE INFORMACIÓN

\r\n
\r\n
\r\n \r\n \r\n \r\n DESCARGAR FORMULARIO\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nFRMHojaInformacion.propTypes = {};\r\n\r\nexport default withStyles(style)(FRMHojaInformacion);\r\n","import { colors } from '../../Core/Theme/theme';\r\n\r\nconst styles = theme => ({\r\n container: {\r\n textAlign: 'left',\r\n color: colors.lightGray,\r\n paddingBottom: 80,\r\n '& h3': {\r\n color: colors.darkGray,\r\n marginTop: '50px',\r\n fontSize: '24px',\r\n marginBottom: '10px',\r\n },\r\n '& h4': {\r\n textWeight: 'bold',\r\n marginTop: '0px',\r\n marginBottom: '5px',\r\n },\r\n '& p': {\r\n marginTop: '0px',\r\n marginBottom: '5px',\r\n },\r\n },\r\n subtitle: { color: colors.green },\r\n subtitleDoc: { color: colors.darkGray },\r\n boxForm: {\r\n marginTop: '30px',\r\n },\r\n boxDocToPdf: {\r\n backgroundColor: colors.white,\r\n color: colors.darkGray,\r\n '& h3': {\r\n color: colors.green,\r\n marginTop: '50px',\r\n fontSize: '20px',\r\n marginBottom: '10px',\r\n },\r\n },\r\n sectionDesktop: {\r\n display: 'none',\r\n [theme.breakpoints.up('md')]: {\r\n display: 'flex',\r\n },\r\n },\r\n sectionMobile: {\r\n display: 'flex',\r\n [theme.breakpoints.up('md')]: {\r\n display: 'none',\r\n },\r\n },\r\n textFilled: {\r\n background: '#f1f1f1',\r\n padding: '10px',\r\n width: '80%',\r\n margin: '0 auto',\r\n },\r\n customField: {\r\n background: '#fff',\r\n border: 'solid thin #999',\r\n padding: '10px',\r\n width: '250px',\r\n margin: '0 auto',\r\n },\r\n field: {\r\n border: 'solid thin #ccc',\r\n padding: 20,\r\n background: '#f1f1f1',\r\n },\r\n fieldFilled: {\r\n border: 'solid thin #ccc',\r\n padding: 10,\r\n background: '#f1f1f1',\r\n },\r\n});\r\n\r\nexport default styles;\r\n","/* eslint new-cap: [\"error\", { \"newIsCap\": false }] */\r\n/* eslint-disable camelcase */\r\nimport React, { useState } from 'react';\r\nimport Lodash from 'lodash';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport { Formik, Field } from 'formik';\r\nimport VisibilityIcon from '@material-ui/icons/Visibility';\r\nimport CircularProgress from '@material-ui/core/CircularProgress';\r\nimport * as Yup from 'yup';\r\nimport Table from '@material-ui/core/Table';\r\nimport TableBody from '@material-ui/core/TableBody';\r\nimport TableCell from '@material-ui/core/TableCell';\r\nimport TableHead from '@material-ui/core/TableHead';\r\nimport TableRow from '@material-ui/core/TableRow';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport DialogActions from '@material-ui/core/DialogActions';\r\nimport DialogContent from '@material-ui/core/DialogContent';\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\nimport Slide from '@material-ui/core/Slide';\r\nimport { Container, Grid, Button } from '@material-ui/core';\r\nimport Box from '@material-ui/core/Box';\r\nimport {\r\n PlnDropdown,\r\n PlnInput,\r\n} from '../../Components/Input';\r\nimport MacroList from '../MacroList/MacroList';\r\nimport style from './styles';\r\nimport Consts from '../../Core/Consts/Consts';\r\nimport Copyright from '../Copyright/Copyright';\r\n\r\nimport {\r\n useProvinciasAOCP,\r\n getCantonsByProvince,\r\n} from '../../Core/Api/locationApi';\r\n\r\nimport {\r\n searchPapeletas,\r\n getDetallePapeleta,\r\n} from '../../Core/Api/papeletaDelegadoCantonal';\r\n\r\nconst Transition = React.forwardRef(function Transition(\r\n tProps,\r\n ref,\r\n) {\r\n // eslint-disable-next-line react/jsx-props-no-spreading\r\n return ;\r\n});\r\n\r\nfunction createData(_data) {\r\n const filterEstado = Consts.estadosDistritales.filter(\r\n status => {\r\n return status.codigo === _data.ind_estado;\r\n },\r\n );\r\n\r\n return {\r\n province: _data.des_nombre_p,\r\n canton: _data.des_nombre_c,\r\n numero: _data.numero,\r\n cod_estado: filterEstado[0].estado,\r\n cedula: _data.num_cedula,\r\n gestor: _data.des_nombre,\r\n cod_papeleta: _data.cod_papeleta,\r\n };\r\n}\r\n\r\nconst CPPapeletasDelegadosCantonales = props => {\r\n const { classes } = props;\r\n const { data } = useProvinciasAOCP();\r\n\r\n const [showResults, setShowResults] = useState(false);\r\n const [isLoading, setIsLoading] = useState(false);\r\n\r\n // Opciones Seleccionadas\r\n const [sProvincia, setSProvincia] = useState([\r\n { itemLabel: '- SELECCIONE LA PROVINCIA -', value: 9 },\r\n ]);\r\n // eslint-disable-next-line no-unused-vars\r\n const [sCanton, setSCanton] = useState([\r\n { itemLabel: '- SELECCIONE EL CANTON -', value: 999 },\r\n ]);\r\n // eslint-disable-next-line no-unused-vars\r\n const [sMovimiento, setSMovimiento] = useState(9);\r\n\r\n // INFORMACION DEL DETALLE DE LA PAPELETA\r\n const [rowSelected, setRowSelected] = useState({\r\n provincia: '',\r\n canton: '',\r\n numero: '',\r\n });\r\n\r\n const [comite, setComite] = useState([]);\r\n\r\n const [isDataEmpty, setDataEmpty] = useState(false);\r\n const [filteredItems, setFilteredItems] = useState([\r\n ['', '', '', '', '', '', ''],\r\n ]); // used for filtering\r\n\r\n const [openPapeleta, setOpenPapeleta] = useState(false);\r\n const handleClose = () => {\r\n setOpenPapeleta(false);\r\n };\r\n\r\n const heads = [\r\n {\r\n name: 'Provincia',\r\n },\r\n {\r\n name: 'Cantón',\r\n },\r\n {\r\n name: 'Número',\r\n },\r\n {\r\n name: 'Estado',\r\n },\r\n {\r\n name: 'Cédula',\r\n },\r\n {\r\n name: 'Nombre Gestor(a)',\r\n },\r\n ];\r\n\r\n // Lista de: Provincias, Cantones, Movimientos\r\n const [initialValues] = useState(\r\n Lodash.get(data, ['initValues'], {\r\n provincia: 9,\r\n canton: 999,\r\n movimiento: 9,\r\n numero: '',\r\n }),\r\n );\r\n\r\n const provincias = Lodash.get(\r\n data,\r\n ['frmOptions'],\r\n [\r\n {\r\n itemLabel: '- SELECCIONE LA PROVINCIA -',\r\n value: 9,\r\n },\r\n ],\r\n );\r\n\r\n const [cantones, setCantones] = useState([\r\n { itemLabel: '- SELECCIONE EL CANTÓN-', value: 999 },\r\n ]);\r\n\r\n const validationSchema = Yup.object({});\r\n\r\n const setProvincia = p => {\r\n initialValues.provincia = p;\r\n initialValues.canton = 999;\r\n initialValues.movimiento = 9;\r\n setCantones([\r\n {\r\n itemLabel: '- SELECCIONE EL CANTÓN-',\r\n value: 999,\r\n },\r\n ]);\r\n if (p !== 9) {\r\n getCantonsByProvince(p).then(result => {\r\n if (result.status === 200) {\r\n const cantonsList = Lodash.get(result, [\r\n 'data',\r\n 'response',\r\n ]);\r\n\r\n const clist = cantonsList.map(\r\n ({ cod_canton, des_nombre_c }) => {\r\n return {\r\n itemLabel: des_nombre_c,\r\n value: cod_canton,\r\n };\r\n },\r\n );\r\n clist.unshift({\r\n itemLabel: '- SELECCIONE EL CANTÓN-',\r\n value: 999,\r\n });\r\n\r\n setSProvincia(\r\n Lodash.find(provincias, {\r\n value: p,\r\n }),\r\n );\r\n setCantones(clist);\r\n }\r\n });\r\n } else {\r\n setSProvincia(9);\r\n setSCanton(999);\r\n }\r\n };\r\n\r\n const setCanton = c => {\r\n initialValues.distrito = 999;\r\n initialValues.provincia = sProvincia.value;\r\n initialValues.canton = c;\r\n initialValues.movimiento = 9;\r\n\r\n if (c !== 999) {\r\n setSCanton(\r\n Lodash.find(cantones, {\r\n value: c,\r\n }),\r\n );\r\n }\r\n };\r\n\r\n const doSearch = values => () => {\r\n setShowResults(true);\r\n setIsLoading(true);\r\n const { canton, numero, provincia } = values;\r\n const codProvincia = provincia === 9 ? -1 : provincia;\r\n const codCanton = canton === 999 ? -1 : canton;\r\n const numPapeleta = numero === '' ? -1 : numero;\r\n searchPapeletas(\r\n codProvincia,\r\n codCanton,\r\n numPapeleta,\r\n ).then(result => {\r\n setIsLoading(false);\r\n const info = Lodash.get(\r\n result,\r\n ['data', 'response'],\r\n [],\r\n );\r\n\r\n if (info instanceof Object && info.length > 0) {\r\n const rowItems = info.map(row => {\r\n return createData(row);\r\n });\r\n setFilteredItems(rowItems);\r\n setDataEmpty(false);\r\n } else {\r\n setFilteredItems([]);\r\n setDataEmpty(true);\r\n }\r\n });\r\n };\r\n\r\n const renderForm = () => {\r\n return (\r\n
\r\n \r\n \r\n

Provincia

\r\n \r\n setProvincia(provincia)\r\n }\r\n />\r\n
\r\n \r\n

Cantón

\r\n setCanton(canton)}\r\n />\r\n
\r\n \r\n

Número

\r\n \r\n
\r\n
\r\n
\r\n );\r\n };\r\n\r\n const consultar = (\r\n provincia,\r\n canton,\r\n numero,\r\n codPapeleta,\r\n ) => {\r\n const newRow = {\r\n ...rowSelected,\r\n provincia,\r\n canton,\r\n numero,\r\n };\r\n\r\n getDetallePapeleta(codPapeleta).then(result => {\r\n setRowSelected(newRow);\r\n const nComite = Lodash.get(\r\n result,\r\n ['data', 'response', 'delegados'],\r\n [],\r\n );\r\n\r\n setComite(nComite);\r\n setOpenPapeleta(true);\r\n });\r\n };\r\n\r\n /**\r\n * List all actions that a user can do for each item in the list\r\n */\r\n const setActions = () => {\r\n const actions = [];\r\n\r\n const actionConsultar = {\r\n aria: 'Consultar',\r\n key: 'consultar',\r\n showAction: true,\r\n icon: (\r\n \r\n ),\r\n clickHandler: _item => {\r\n consultar(\r\n _item.province,\r\n _item.canton,\r\n _item.numero,\r\n _item.cod_papeleta,\r\n );\r\n },\r\n };\r\n\r\n actions.push(actionConsultar);\r\n\r\n return actions;\r\n };\r\n\r\n const renderTable = () => {\r\n return (\r\n
\r\n \r\n Candidatos(as) ante el Órgano Consultivo Nacional\r\n \r\n\r\n \r\n \r\n \r\n \r\n Lugar\r\n \r\n \r\n Cédula\r\n \r\n \r\n Nombre\r\n \r\n \r\n \r\n \r\n {comite.map(l => (\r\n \r\n \r\n {l[0]}\r\n \r\n {l[1]}\r\n {l[2]}\r\n \r\n ))}\r\n \r\n
\r\n
\r\n );\r\n };\r\n\r\n if (!Lodash.isEmpty(provincias)) {\r\n return (\r\n \r\n

CONSULTA PÚBLICA DE INSCRIPCIONES

\r\n

\r\n Papeletas Cantones no Representados\r\n

\r\n \r\n {formik => (\r\n <>\r\n {renderForm()}\r\n \r\n \r\n \r\n BUSCAR\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n\r\n {showResults &&\r\n (!isLoading ? (\r\n \r\n (window.location.href = `/cantonales/add`),\r\n }}\r\n actionConfig={setActions}\r\n tableHeads={heads}\r\n tableBody={filteredItems}\r\n displayCopyright={false}\r\n isCrudAvailable={false}\r\n />\r\n ) : (\r\n \r\n \r\n \r\n \r\n \r\n ))}\r\n\r\n \r\n \r\n Detalle Papeleta de Cantones no Representados\r\n \r\n \r\n \r\n \r\n \r\n \r\n Provincia\r\n \r\n \r\n Cantón\r\n \r\n \r\n Número\r\n \r\n \r\n \r\n \r\n \r\n \r\n {rowSelected.provincia}\r\n \r\n \r\n {rowSelected.canton}\r\n \r\n \r\n {rowSelected.numero}\r\n \r\n \r\n \r\n
\r\n {renderTable()}\r\n
\r\n \r\n \r\n Cerrar\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n return '';\r\n};\r\n\r\nCPPapeletasDelegadosCantonales.propTypes = {};\r\n\r\nexport default withStyles(style)(\r\n CPPapeletasDelegadosCantonales,\r\n);\r\n","/* eslint-disable max-len */\r\n/* eslint-disable no-unused-vars */\r\nimport axios from 'axios';\r\nimport Lodash from 'lodash';\r\nimport { useQuery } from 'react-query';\r\nimport Consts from '../Consts/Consts';\r\n\r\naxios.defaults.baseURL = process.env.REACT_APP_API_BASE_URL;\r\n\r\nexport const addNew = params => {\r\n const { delegadosCantonalEnca, tFrmsCandidatos } = params;\r\n\r\n const papeletaData = {\r\n delegadosCantonalEnca,\r\n tFrmsCandidatos,\r\n };\r\n\r\n return axios.post(\r\n '/papeletaComiteEjecutivoCantonal',\r\n papeletaData,\r\n );\r\n};\r\n\r\nexport const getNumPapeletasDelegadoCantonal = (\r\n idProvince,\r\n idCanton,\r\n) => {\r\n const url = [\r\n `/papeletaComiteEjecutivoCantonal/numPapeletas/${idProvince}/${idCanton}`,\r\n ];\r\n\r\n return axios.get(url.join('&'));\r\n};\r\n\r\nexport const searchPapeletas = (\r\n codProvincia,\r\n codCanton,\r\n numero,\r\n) => {\r\n const url = [\r\n `/papeletaComiteEjecutivoCantonal/doSearch/${codProvincia}/${codCanton}/${numero}`,\r\n ];\r\n\r\n return axios.get(url.join('&'));\r\n};\r\n\r\nexport const getDetallePapeleta = codPapeleta => {\r\n const url = [\r\n `/papeletaComiteEjecutivoCantonal/getDetallePapeleta/${codPapeleta}`,\r\n ];\r\n\r\n return axios.get(url.join('&'));\r\n};\r\n\r\nexport const getNumPapeletaStatus = params => {\r\n const { papeleta, provincia, canton } = params;\r\n const url = [\r\n `/papeletaComiteEjecutivoCantonal/numPapeletaStatus/${papeleta}/${provincia}/${canton}`,\r\n ];\r\n return axios.get(url.join('&'));\r\n};\r\n\r\nexport const blockNumPapeleta = params => {\r\n const { numPapeleta, codProvincia, codCanton } = params;\r\n\r\n const papeletaData = {\r\n numPapeleta,\r\n codProvincia,\r\n codCanton,\r\n };\r\n\r\n return axios.post(\r\n '/papeletaComiteEjecutivoCantonal/blockNumPapeleta',\r\n papeletaData,\r\n );\r\n};\r\n\r\nexport const updatePapeleta = params => {\r\n const {\r\n codPapeleta,\r\n delegadosCantonalEnca,\r\n tFrmsCandidatos,\r\n } = params;\r\n\r\n const papeletaData = {\r\n codPapeleta,\r\n delegadosCantonalEnca,\r\n tFrmsCandidatos,\r\n };\r\n\r\n return axios.post(\r\n '/papeletaComiteEjecutivoCantonal/update',\r\n papeletaData,\r\n );\r\n};\r\n\r\nconst getCandidatosPapeleta = async codPapeleta => {\r\n const url = [\r\n `/papeleta/getCandidatosPapeletaCEC/${codPapeleta}`,\r\n ];\r\n\r\n const { data } = await axios.get(url.join('&'));\r\n\r\n return data;\r\n};\r\n\r\nconst getCantidadDelegados = async (\r\n idProvince,\r\n idCanton,\r\n) => {\r\n const url = [\r\n `/cantons/delegados/${idProvince}/${idCanton}`,\r\n ];\r\n\r\n const { data } = await axios.get(url.join('&'));\r\n\r\n return data[0].numDelegados;\r\n};\r\n\r\nconst searchByCedula = async cedula => {\r\n const url = [`/padron/searchbycedula/${cedula}`];\r\n const { data } = await axios.get(url.join('&'));\r\n return data;\r\n};\r\n\r\nconst preparedList = list => {\r\n const unlockedList = list.map(e => {\r\n Lodash.set(e, 'enabled', false);\r\n return e;\r\n });\r\n return unlockedList;\r\n};\r\n\r\nconst getAllDataPapeleta = async (data, codPapeleta) => {\r\n const initValues =\r\n Consts.comiteEjecutivoCantonalInitValues;\r\n Lodash.set(initValues, 'provincia', data.cod_prov);\r\n Lodash.set(initValues, 'canton', data.cod_cant);\r\n\r\n // Estado: REGISTRADA\r\n if (data.ind_estado === 2) {\r\n Lodash.set(initValues, 'papeleta', 999);\r\n // Estado: INSCRITA\r\n } else {\r\n const numStatus = await getNumPapeletaStatus({\r\n papeleta: data.numero,\r\n provincia: data.cod_prov,\r\n canton: data.cod_cant,\r\n });\r\n\r\n const numeroStatus = Lodash.get(numStatus, ['data']);\r\n\r\n if (numeroStatus === 1) {\r\n Lodash.set(initValues, 'papeleta', data.numero);\r\n } else {\r\n Lodash.set(initValues, 'papeleta', 999);\r\n }\r\n }\r\n\r\n const allPapeletas = await getNumPapeletasDelegadoCantonal(\r\n data.cod_prov,\r\n data.cod_cant,\r\n );\r\n\r\n const papeletasList = Lodash.get(allPapeletas, ['data']);\r\n const plist = papeletasList.map(({ papeleta }) => {\r\n return {\r\n itemLabel: papeleta,\r\n value: papeleta,\r\n };\r\n });\r\n plist.unshift({\r\n itemLabel: '- NUMERO DE PAPELETA -',\r\n value: 999,\r\n });\r\n\r\n // Se preparan las listas para que los campos esten desbloquedos\r\n const iListDelegados = preparedList(\r\n Consts.initListDelegadosComiteEjecutivo,\r\n );\r\n\r\n // Se obtiene el numero de delegados\r\n const numDelegados = 6;\r\n\r\n // Se obtienen todos los candidatos registrados en la papeleta\r\n const candidatos = await getCandidatosPapeleta(\r\n codPapeleta,\r\n );\r\n\r\n /* ====== Lista de Delegados ====== */\r\n const delegados = candidatos.filter(candidato => {\r\n return candidato.NUM_PUESTO < 7;\r\n });\r\n\r\n const listDelegados = await Promise.all(\r\n delegados.map(async (d, index) => {\r\n const delegado = await searchByCedula(d.NUM_CEDULA);\r\n\r\n // Datos de la persona\r\n const person = Lodash.get(delegado, ['response', 0]);\r\n\r\n // Nombre de la persona\r\n const personName = `${person.des_nombre} ${person.des_apell1} ${person.des_apell2}`;\r\n const personCedula = person.num_cedula;\r\n const personEdad = person.num_edad;\r\n\r\n let sexVal = 'M';\r\n if (person.sexo !== 1) {\r\n sexVal = 'F';\r\n }\r\n\r\n Lodash.set(\r\n initValues,\r\n `delegado${d.NUM_PUESTO}`,\r\n personCedula,\r\n );\r\n\r\n return {\r\n id: d.NUM_PUESTO,\r\n lugar: d.NUM_PUESTO,\r\n numPuesto: d.NUM_PUESTO,\r\n fieldName: `delegado${d.NUM_PUESTO}`,\r\n cedula: personCedula,\r\n nombre: personName,\r\n sexo: sexVal,\r\n edad: personEdad,\r\n enabled: true,\r\n filled: true,\r\n };\r\n }),\r\n );\r\n\r\n const iListFiscales = preparedList(\r\n Consts.initListCandidatosFiscaliaEC,\r\n );\r\n\r\n const aDelegados = iListDelegados.map(del => {\r\n const f = Lodash.find(listDelegados, {\r\n fieldName: del.fieldName,\r\n });\r\n\r\n if (f === undefined) {\r\n return del;\r\n }\r\n return f;\r\n });\r\n\r\n // Merging List Delegados\r\n const allDelegados = Lodash.merge(\r\n iListDelegados,\r\n aDelegados,\r\n );\r\n\r\n const firstDelegado = allDelegados[0].sexo;\r\n let sexOrder = Consts.delegadosMOrder;\r\n if (firstDelegado !== 'M') {\r\n sexOrder = Consts.delegadosFOrder;\r\n }\r\n\r\n // Se establece el sexo para el resto de la lista\r\n const finalListDelegados = Lodash.map(\r\n allDelegados,\r\n (d, index) => {\r\n const newData = {\r\n id: d.id,\r\n lugar: d.lugar,\r\n numPuesto: d.numPuesto,\r\n fieldName: d.fieldName,\r\n cedula: d.cedula,\r\n nombre: d.nombre,\r\n sexo: sexOrder[index].sexo,\r\n edad: d.edad,\r\n enabled: d.cedula !== '',\r\n filled: d.filled,\r\n };\r\n\r\n return newData;\r\n },\r\n );\r\n\r\n /* ====== Lista de Fiscales ====== */\r\n const fiscales = candidatos.filter(candidato => {\r\n return candidato.NUM_PUESTO > 6;\r\n });\r\n\r\n const listFiscales = await Promise.all(\r\n fiscales.map(async (d, index) => {\r\n const fiscal = await searchByCedula(d.NUM_CEDULA);\r\n\r\n // Datos de la persona\r\n const person = Lodash.get(fiscal, ['response', 0]);\r\n\r\n // Nombre de la persona\r\n const personName = `${person.des_nombre} ${person.des_apell1} ${person.des_apell2}`;\r\n const personCedula = person.num_cedula;\r\n const personEdad = person.num_edad;\r\n let sexVal = 'M';\r\n if (person.sexo !== 1) {\r\n sexVal = 'F';\r\n }\r\n\r\n // Nombre del campo\r\n const field = Lodash.get(iListFiscales, [index]);\r\n\r\n Lodash.set(initValues, field.fieldName, personCedula);\r\n\r\n return {\r\n id: index + 1,\r\n lugar: field.lugar,\r\n numPuesto: d.NUM_PUESTO,\r\n fieldName: field.fieldName,\r\n cedula: personCedula,\r\n nombre: personName,\r\n sexo: sexVal,\r\n edad: personEdad,\r\n enabled: d.NUM_CEDULA !== '',\r\n filled: true,\r\n };\r\n }),\r\n );\r\n\r\n // Merging List Comite\r\n const allFiscales = Lodash.merge(\r\n iListFiscales,\r\n listFiscales,\r\n );\r\n\r\n return {\r\n papeletaData: data,\r\n numDelegados,\r\n papeletas: plist,\r\n candidatos: {\r\n listDelegados: finalListDelegados,\r\n listFiscales: allFiscales,\r\n },\r\n initValues,\r\n };\r\n};\r\n\r\nexport const getPapeletaInfo = async params => {\r\n try {\r\n const { cedGestor, codPapeleta } = params;\r\n\r\n const url = [\r\n `/papeletaComiteEjecutivoCantonal/getByCodPapeleta/${cedGestor}/${codPapeleta}`,\r\n ];\r\n\r\n const { data } = await axios.get(url.join('&'));\r\n const papeletaData = getAllDataPapeleta(\r\n data.response[0],\r\n codPapeleta,\r\n );\r\n\r\n return papeletaData;\r\n } catch (e) {\r\n return { papeletaData: {} };\r\n }\r\n};\r\n\r\nexport const usePapeletaInfo = (cedGestor, codPapeleta) => {\r\n return useQuery(\r\n ['papeletaData', cedGestor, codPapeleta],\r\n () => getPapeletaInfo(cedGestor, codPapeleta),\r\n );\r\n};\r\n","/* eslint new-cap: [\"error\", { \"newIsCap\": false }] */\r\n/* eslint-disable camelcase */\r\nimport React, { useState } from 'react';\r\nimport Lodash from 'lodash';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport { Formik, Field } from 'formik';\r\nimport VisibilityIcon from '@material-ui/icons/Visibility';\r\nimport CircularProgress from '@material-ui/core/CircularProgress';\r\nimport * as Yup from 'yup';\r\nimport Table from '@material-ui/core/Table';\r\nimport TableBody from '@material-ui/core/TableBody';\r\nimport TableCell from '@material-ui/core/TableCell';\r\nimport TableHead from '@material-ui/core/TableHead';\r\nimport TableRow from '@material-ui/core/TableRow';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport DialogActions from '@material-ui/core/DialogActions';\r\nimport DialogContent from '@material-ui/core/DialogContent';\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\nimport Slide from '@material-ui/core/Slide';\r\nimport { Container, Grid, Button } from '@material-ui/core';\r\nimport Box from '@material-ui/core/Box';\r\nimport {\r\n PlnDropdown,\r\n PlnInput,\r\n} from '../../Components/Input';\r\nimport MacroList from '../MacroList/MacroList';\r\nimport style from './styles';\r\nimport Consts from '../../Core/Consts/Consts';\r\nimport Copyright from '../Copyright/Copyright';\r\n\r\nimport {\r\n useProvincias,\r\n getCantonsByProvince,\r\n} from '../../Core/Api/locationApi';\r\n\r\nimport {\r\n searchPapeletas,\r\n getDetallePapeleta,\r\n} from '../../Core/Api/papeletaComiteEjecutivoCantonal';\r\n\r\nconst Transition = React.forwardRef(function Transition(\r\n tProps,\r\n ref,\r\n) {\r\n // eslint-disable-next-line react/jsx-props-no-spreading\r\n return ;\r\n});\r\n\r\nfunction createData(_data) {\r\n const filterEstado = Consts.estadosDistritales.filter(\r\n status => {\r\n return status.codigo === _data.ind_estado;\r\n },\r\n );\r\n\r\n return {\r\n province: _data.des_nombre_p,\r\n canton: _data.des_nombre_c,\r\n numero: _data.numero,\r\n cod_estado: filterEstado[0].estado,\r\n cedula: _data.num_cedula,\r\n gestor: _data.des_nombre,\r\n cod_papeleta: _data.cod_papeleta,\r\n };\r\n}\r\n\r\nconst CPPapeletasComiteEjecutivoCantonal = props => {\r\n const { classes } = props;\r\n const { data } = useProvincias();\r\n\r\n const [showResults, setShowResults] = useState(false);\r\n const [isLoading, setIsLoading] = useState(false);\r\n\r\n // Opciones Seleccionadas\r\n const [sProvincia, setSProvincia] = useState([\r\n { itemLabel: '- SELECCIONE LA PROVINCIA -', value: 9 },\r\n ]);\r\n // eslint-disable-next-line no-unused-vars\r\n const [sCanton, setSCanton] = useState([\r\n { itemLabel: '- SELECCIONE EL CANTON -', value: 999 },\r\n ]);\r\n // eslint-disable-next-line no-unused-vars\r\n const [sMovimiento, setSMovimiento] = useState(9);\r\n\r\n // INFORMACION DEL DETALLE DE LA PAPELETA\r\n const [rowSelected, setRowSelected] = useState({\r\n provincia: '',\r\n canton: '',\r\n numero: '',\r\n });\r\n\r\n const [delegados, setDelegados] = useState([]);\r\n const [fiscales, setFiscales] = useState([]);\r\n\r\n const [isDataEmpty, setDataEmpty] = useState(false);\r\n const [filteredItems, setFilteredItems] = useState([\r\n ['', '', '', '', '', '', ''],\r\n ]); // used for filtering\r\n\r\n const [openPapeleta, setOpenPapeleta] = useState(false);\r\n const handleClose = () => {\r\n setOpenPapeleta(false);\r\n };\r\n\r\n const heads = [\r\n {\r\n name: 'Provincia',\r\n },\r\n {\r\n name: 'Cantón',\r\n },\r\n {\r\n name: 'Número',\r\n },\r\n {\r\n name: 'Estado',\r\n },\r\n {\r\n name: 'Cédula',\r\n },\r\n {\r\n name: 'Nombre Gestor(a)',\r\n },\r\n ];\r\n\r\n // Lista de: Provincias, Cantones, Movimientos\r\n const [initialValues] = useState(\r\n Lodash.get(data, ['initValues'], {\r\n provincia: 9,\r\n canton: 999,\r\n movimiento: 9,\r\n numero: '',\r\n }),\r\n );\r\n\r\n const provincias = Lodash.get(\r\n data,\r\n ['frmOptions'],\r\n [\r\n {\r\n itemLabel: '- SELECCIONE LA PROVINCIA -',\r\n value: 9,\r\n },\r\n ],\r\n );\r\n\r\n const [cantones, setCantones] = useState([\r\n { itemLabel: '- SELECCIONE EL CANTÓN-', value: 999 },\r\n ]);\r\n\r\n const validationSchema = Yup.object({});\r\n\r\n const setProvincia = p => {\r\n initialValues.provincia = p;\r\n initialValues.canton = 999;\r\n initialValues.movimiento = 9;\r\n setCantones([\r\n {\r\n itemLabel: '- SELECCIONE EL CANTÓN-',\r\n value: 999,\r\n },\r\n ]);\r\n if (p !== 9) {\r\n getCantonsByProvince(p).then(result => {\r\n if (result.status === 200) {\r\n const cantonsList = Lodash.get(result, [\r\n 'data',\r\n 'response',\r\n ]);\r\n\r\n const clist = cantonsList.map(\r\n ({ cod_canton, des_nombre_c }) => {\r\n return {\r\n itemLabel: des_nombre_c,\r\n value: cod_canton,\r\n };\r\n },\r\n );\r\n clist.unshift({\r\n itemLabel: '- SELECCIONE EL CANTÓN-',\r\n value: 999,\r\n });\r\n\r\n setSProvincia(\r\n Lodash.find(provincias, {\r\n value: p,\r\n }),\r\n );\r\n setCantones(clist);\r\n }\r\n });\r\n } else {\r\n setSProvincia(9);\r\n setSCanton(999);\r\n }\r\n };\r\n\r\n const setCanton = c => {\r\n initialValues.distrito = 999;\r\n initialValues.provincia = sProvincia.value;\r\n initialValues.canton = c;\r\n initialValues.movimiento = 9;\r\n\r\n if (c !== 999) {\r\n setSCanton(\r\n Lodash.find(cantones, {\r\n value: c,\r\n }),\r\n );\r\n }\r\n };\r\n\r\n const doSearch = values => () => {\r\n setShowResults(true);\r\n setIsLoading(true);\r\n const { canton, numero, provincia } = values;\r\n const codProvincia = provincia === 9 ? -1 : provincia;\r\n const codCanton = canton === 999 ? -1 : canton;\r\n const numPapeleta = numero === '' ? -1 : numero;\r\n searchPapeletas(\r\n codProvincia,\r\n codCanton,\r\n numPapeleta,\r\n ).then(result => {\r\n setIsLoading(false);\r\n const info = Lodash.get(\r\n result,\r\n ['data', 'response'],\r\n [],\r\n );\r\n\r\n if (info instanceof Object && info.length > 0) {\r\n const rowItems = info.map(row => {\r\n return createData(row);\r\n });\r\n setFilteredItems(rowItems);\r\n setDataEmpty(false);\r\n } else {\r\n setFilteredItems([]);\r\n setDataEmpty(true);\r\n }\r\n });\r\n };\r\n\r\n const renderForm = () => {\r\n return (\r\n
\r\n \r\n \r\n

Provincia

\r\n \r\n setProvincia(provincia)\r\n }\r\n />\r\n
\r\n \r\n

Cantón

\r\n setCanton(canton)}\r\n />\r\n
\r\n \r\n

Número

\r\n \r\n
\r\n
\r\n
\r\n );\r\n };\r\n\r\n const consultar = (\r\n provincia,\r\n canton,\r\n numero,\r\n codPapeleta,\r\n ) => {\r\n const newRow = {\r\n ...rowSelected,\r\n provincia,\r\n canton,\r\n numero,\r\n };\r\n\r\n getDetallePapeleta(codPapeleta).then(result => {\r\n setRowSelected(newRow);\r\n const nDelegados = Lodash.get(\r\n result,\r\n ['data', 'response', 'delegados'],\r\n [],\r\n );\r\n const nFiscales = Lodash.get(\r\n result,\r\n ['data', 'response', 'fiscales'],\r\n [],\r\n );\r\n setDelegados(nDelegados);\r\n setFiscales(nFiscales);\r\n setOpenPapeleta(true);\r\n });\r\n };\r\n\r\n /**\r\n * List all actions that a user can do for each item in the list\r\n */\r\n const setActions = () => {\r\n const actions = [];\r\n\r\n const actionConsultar = {\r\n aria: 'Consultar',\r\n key: 'consultar',\r\n showAction: true,\r\n icon: (\r\n \r\n ),\r\n clickHandler: _item => {\r\n consultar(\r\n _item.province,\r\n _item.canton,\r\n _item.numero,\r\n _item.cod_papeleta,\r\n );\r\n },\r\n };\r\n\r\n actions.push(actionConsultar);\r\n\r\n return actions;\r\n };\r\n\r\n const renderTable = type => {\r\n let title = '';\r\n let list = [];\r\n\r\n if (type === 'delegados') {\r\n title = 'Candidatos(as) Comité Ejecutivo Cantonal';\r\n list = delegados;\r\n } else if (type === 'fiscales') {\r\n title = 'Candidato a la Fiscalía';\r\n list = fiscales;\r\n }\r\n return (\r\n
\r\n \r\n {title}\r\n \r\n\r\n \r\n \r\n \r\n \r\n Lugar\r\n \r\n \r\n Cédula\r\n \r\n \r\n Nombre\r\n \r\n \r\n \r\n \r\n {list.map(l => (\r\n \r\n \r\n {l[0]}\r\n \r\n {l[1]}\r\n {l[2]}\r\n \r\n ))}\r\n \r\n
\r\n
\r\n );\r\n };\r\n\r\n if (!Lodash.isEmpty(provincias)) {\r\n return (\r\n \r\n

CONSULTA PÚBLICA DE INSCRIPCIONES

\r\n

\r\n Papeletas Comité Ejecutivo Cantonal\r\n

\r\n \r\n {formik => (\r\n <>\r\n {renderForm()}\r\n \r\n \r\n \r\n BUSCAR\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n\r\n {showResults &&\r\n (!isLoading ? (\r\n \r\n (window.location.href = `/cantonales/add`),\r\n }}\r\n actionConfig={setActions}\r\n tableHeads={heads}\r\n tableBody={filteredItems}\r\n displayCopyright={false}\r\n isCrudAvailable={false}\r\n />\r\n ) : (\r\n \r\n \r\n \r\n \r\n \r\n ))}\r\n\r\n \r\n \r\n Detalle Papeleta Delegados Cantonales\r\n \r\n \r\n \r\n \r\n \r\n \r\n Provincia\r\n \r\n \r\n Cantón\r\n \r\n \r\n Número\r\n \r\n \r\n \r\n \r\n \r\n \r\n {rowSelected.provincia}\r\n \r\n \r\n {rowSelected.canton}\r\n \r\n \r\n {rowSelected.numero}\r\n \r\n \r\n \r\n
\r\n {renderTable('delegados')}\r\n {renderTable('fiscales')}\r\n
\r\n \r\n \r\n Cerrar\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n return '';\r\n};\r\n\r\nCPPapeletasComiteEjecutivoCantonal.propTypes = {};\r\n\r\nexport default withStyles(style)(\r\n CPPapeletasComiteEjecutivoCantonal,\r\n);\r\n","import { colors } from '../../Core/Theme/theme';\r\n\r\nconst styles = theme => ({\r\n container: {\r\n textAlign: 'left',\r\n color: colors.lightGray,\r\n paddingBottom: 80,\r\n '& h3': {\r\n color: colors.darkGray,\r\n marginTop: '50px',\r\n fontSize: '24px',\r\n marginBottom: '10px',\r\n },\r\n '& h4': {\r\n textWeight: 'bold',\r\n marginTop: '0px',\r\n marginBottom: '5px',\r\n },\r\n '& p': {\r\n marginTop: '0px',\r\n marginBottom: '5px',\r\n },\r\n },\r\n subtitle: { color: colors.green },\r\n subtitleDoc: { color: colors.darkGray },\r\n boxForm: {\r\n marginTop: '30px',\r\n },\r\n boxDocToPdf: {\r\n backgroundColor: colors.white,\r\n color: colors.darkGray,\r\n '& h3': {\r\n color: colors.green,\r\n marginTop: '50px',\r\n fontSize: '20px',\r\n marginBottom: '10px',\r\n },\r\n },\r\n sectionDesktop: {\r\n display: 'none',\r\n [theme.breakpoints.up('md')]: {\r\n display: 'flex',\r\n },\r\n },\r\n sectionMobile: {\r\n display: 'flex',\r\n [theme.breakpoints.up('md')]: {\r\n display: 'none',\r\n },\r\n },\r\n textFilled: {\r\n background: '#f1f1f1',\r\n padding: '10px',\r\n width: '80%',\r\n margin: '0 auto',\r\n },\r\n customField: {\r\n background: '#fff',\r\n border: 'solid thin #999',\r\n padding: '10px',\r\n width: '250px',\r\n margin: '0 auto',\r\n },\r\n field: {\r\n border: 'solid thin #ccc',\r\n padding: 20,\r\n background: '#f1f1f1',\r\n },\r\n fieldFilled: {\r\n border: 'solid thin #ccc',\r\n padding: 10,\r\n background: '#f1f1f1',\r\n },\r\n btnPrint: {\r\n position: 'absolute',\r\n right: 0,\r\n margin: 10,\r\n },\r\n});\r\n\r\nexport default styles;\r\n","/* eslint-disable max-len */\nimport axios from 'axios';\n\nconst axiosInstance = axios.create({\n baseURL: process.env.REACT_APP_API_BASE_URL,\n responseType: 'json',\n});\n\nconst getReporteResultados001 = (\n codProvincia,\n codCanton,\n) => {\n return axiosInstance.get(\n `adjudicacionPuestos/getReporteResultadosEAOCP001/${codProvincia}/${codCanton}`,\n );\n};\n\nexport default {\n getReporteResultados001,\n};\n","/* eslint new-cap: [\"error\", { \"newIsCap\": false }] */\n/* eslint-disable camelcase */\nimport React, { useState } from 'react';\nimport Lodash from 'lodash';\nimport { withStyles } from '@material-ui/core/styles';\nimport { Formik, Field } from 'formik';\nimport CircularProgress from '@material-ui/core/CircularProgress';\nimport * as Yup from 'yup';\nimport { Container, Grid, Button } from '@material-ui/core';\nimport Box from '@material-ui/core/Box';\nimport { PlnDropdown } from '../../Components/Input';\nimport MacroList from '../MacroList/MacroList';\nimport style from './styles';\nimport Copyright from '../Copyright/Copyright';\nimport {\n useProvinciasAOCP,\n getCantonsByProvince,\n} from '../../Core/Api/locationApi';\n\nimport adjudicacionPuestos from '../../Core/Api/adjudicacionPuestos';\n\nfunction createData(_data) {\n return {\n province: _data.des_nombre_p,\n canton: _data.des_nombre_c,\n puesto: _data.num_elegido_a,\n cedula: _data.num_cedula,\n nombre: _data.des_nombre,\n };\n}\n\nconst APCantonesNoRepresentados = props => {\n const { classes } = props;\n const { data } = useProvinciasAOCP();\n\n const [showResults, setShowResults] = useState(false);\n const [isLoading, setIsLoading] = useState(false);\n\n // Opciones Seleccionadas\n const [sProvincia, setSProvincia] = useState([\n { itemLabel: '- SELECCIONE LA PROVINCIA -', value: 9 },\n ]);\n // eslint-disable-next-line no-unused-vars\n const [sCanton, setSCanton] = useState([\n { itemLabel: '- SELECCIONE EL CANTON -', value: 999 },\n ]);\n // eslint-disable-next-line no-unused-vars\n const [sMovimiento, setSMovimiento] = useState(9);\n\n const [isDataEmpty, setDataEmpty] = useState(false);\n const [filteredItems, setFilteredItems] = useState([\n ['', '', '', '', '', ''],\n ]); // used for filtering\n const [currentDate, setCurrentDate] = useState('');\n\n const heads = [\n {\n name: 'Provincia',\n },\n {\n name: 'Cantón',\n },\n {\n name: 'Puesto',\n },\n {\n name: 'Cédula',\n },\n {\n name: 'Nombre',\n },\n ];\n\n // Lista de: Provincias, Cantones, Movimientos\n const [initialValues] = useState(\n Lodash.get(data, ['initValues'], {\n provincia: 9,\n canton: 999,\n movimiento: 9,\n numero: '',\n }),\n );\n\n const provincias = Lodash.get(\n data,\n ['frmOptions'],\n [\n {\n itemLabel: '- SELECCIONE LA PROVINCIA -',\n value: 9,\n },\n ],\n );\n\n const [cantones, setCantones] = useState([\n { itemLabel: '- SELECCIONE EL CANTÓN-', value: 999 },\n ]);\n\n // eslint-disable-next-line prefer-const\n let startMovimientos = [\n { itemLabel: '- SELECCIONE EL MOVIMIENTO -', value: 9 },\n ];\n const [movimientos, setMovimientos] = useState(\n startMovimientos,\n );\n\n const getTimeStamp = someDate => {\n const now = new Date(someDate);\n return `${now.getHours()}:${\n now.getMinutes() < 10\n ? `0${now.getMinutes()}`\n : now.getMinutes()\n }`;\n };\n\n // Date Options\n const options = {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n // timeZone: 'UTC',\n };\n\n const formatDate = date => {\n const dateParts = date.split('/');\n const month = dateParts[1];\n const day = dateParts[0];\n const year = dateParts[2];\n\n return [day, month, year].join('/');\n };\n\n const validationSchema = Yup.object({});\n\n const setProvincia = p => {\n initialValues.provincia = p;\n initialValues.canton = 999;\n initialValues.movimiento = 9;\n setCantones([\n {\n itemLabel: '- SELECCIONE EL CANTÓN-',\n value: 999,\n },\n ]);\n setMovimientos([\n {\n itemLabel: '- SELECCIONE EL MOVIMIENTO -',\n value: 9,\n },\n ]);\n setSMovimiento(\n Lodash.find(movimientos, {\n value: 9,\n }),\n );\n if (p !== 9) {\n getCantonsByProvince(p).then(result => {\n if (result.status === 200) {\n const cantonsList = Lodash.get(result, [\n 'data',\n 'response',\n ]);\n\n const clist = cantonsList.map(\n ({ cod_canton, des_nombre_c }) => {\n return {\n itemLabel: des_nombre_c,\n value: cod_canton,\n };\n },\n );\n clist.unshift({\n itemLabel: '- SELECCIONE EL CANTÓN-',\n value: 999,\n });\n\n setSProvincia(\n Lodash.find(provincias, {\n value: p,\n }),\n );\n setCantones(clist);\n }\n });\n } else {\n setSProvincia(9);\n setSCanton(999);\n }\n };\n\n const setCanton = c => {\n initialValues.distrito = 999;\n initialValues.provincia = sProvincia.value;\n initialValues.canton = c;\n initialValues.movimiento = 9;\n\n if (c !== 999) {\n setSCanton(\n Lodash.find(cantones, {\n value: c,\n }),\n );\n } else {\n setMovimientos([\n {\n itemLabel: '- SELECCIONE EL MOVIMIENTO -',\n value: 9,\n },\n ]);\n }\n };\n\n const doSearch = values => () => {\n setShowResults(true);\n setIsLoading(true);\n const { canton, provincia } = values;\n const codProvincia = provincia === 9 ? -1 : provincia;\n const codCanton = canton === 999 ? -1 : canton;\n adjudicacionPuestos\n .getReporteResultados001(codProvincia, codCanton)\n .then(result => {\n setIsLoading(false);\n const info = Lodash.get(\n result,\n ['data', 'response'],\n [],\n );\n const currDate = Lodash.get(\n result,\n ['data', 'currentDate'],\n [],\n );\n\n const cDate = formatDate(\n new Date(currDate).toLocaleDateString(\n 'es-ES',\n options,\n ),\n );\n const cHora = getTimeStamp(currDate);\n\n if (info instanceof Object && info.length > 0) {\n const rowItems = info.map(row => {\n return createData(row);\n });\n setFilteredItems(rowItems);\n setCurrentDate(\n `Fecha: ${cDate} | Hora: ${cHora}`,\n );\n setDataEmpty(false);\n } else {\n setFilteredItems([]);\n setDataEmpty(true);\n }\n });\n };\n\n const renderForm = () => {\n return (\n
\n \n \n

Provincia

\n \n setProvincia(provincia)\n }\n />\n
\n \n

Cantón

\n setCanton(canton)}\n />\n
\n
\n
\n );\n };\n\n /**\n * List all actions that a user can do for each item in the list\n */\n const setActions = () => {\n const actions = [];\n\n return actions;\n };\n\n if (!Lodash.isEmpty(provincias)) {\n return (\n \n

ADJUDICACIÓN DE PUESTOS

\n

\n Cantones No Representados\n

\n \n {formik => (\n <>\n {renderForm()}\n \n \n \n BUSCAR\n \n \n \n \n )}\n \n\n {showResults &&\n (!isLoading ? (\n <>\n \n (window.location.href = `/cantonales/add`),\n }}\n actionConfig={setActions}\n tableHeads={heads}\n tableBody={filteredItems}\n displayCopyright={false}\n isCrudAvailable={false}\n />\n \n ) : (\n \n \n \n \n \n ))}\n\n \n \n \n \n );\n }\n return '';\n};\n\nAPCantonesNoRepresentados.propTypes = {};\n\nexport default withStyles(style)(APCantonesNoRepresentados);\n","/* eslint-disable max-len */\nimport RegistroGestores from '../Containers/RegistroGestores/RegistroGestores';\nimport Login from '../Containers/Login/Login';\nimport ForgotPassword from '../Containers/Login/ForgotPassword';\nimport MainPage from '../Containers/MainPage/MainPage';\nimport Dashboard from '../Containers/Dashboard/Dashboard';\n\n// Registro Papeletas\nimport CantonesNoRepresentados from '../Containers/CantonesNoRepresentados/CantonesNoRepresentados';\nimport AddCantonesNoRepresentados from '../Containers/CantonesNoRepresentados/AddCantonesNoRepresentados';\nimport EditCantonesNoRepresentados from '../Containers/CantonesNoRepresentados/EditCantonesNoRepresentados';\n\n// Registro Depositos\nimport RegistroDepositos from '../Containers/RegistroDepositos/RegistroDepositos';\nimport AddDeposito from '../Containers/RegistroDepositos/AddDeposito';\nimport EditDeposito from '../Containers/RegistroDepositos/EditDeposito';\n\n// Consulta Debitos\nimport ConsultaDebitos from '../Containers/ConsultaDebitos/ConsultaDebitos';\n\n// Formularios\nimport FRMCantonesNoRepresentados from '../Containers/Formulario/FRMCantonesNoRepresentados';\nimport FRMComiteEjecutivoCantonal from '../Containers/Formulario/FRMComiteEjecutivoCantonal';\nimport FRMHojaInformacion from '../Containers/Formulario/FRMHojaInformacion';\n\n// Consultas Públicas\nimport CPPapeletasCantonesNoRepresentados from '../Containers/ConsultasPublicas/CPPapeletasCantonesNoRepresentados';\nimport CPPapeletasComiteEjecutivoCantonal from '../Containers/ConsultasPublicas/CPPapeletasComiteEjecutivoCantonal';\n\n// Adjudicación de Puestos\nimport APCantonesNoRepresentados from '../Containers/AdjudicacionPuestos/APCantonesNoRepresentados';\n\nconst routesList = [\n {\n auth: false,\n component: MainPage,\n exact: true,\n name: 'mainPage',\n path: '/',\n },\n {\n auth: false,\n component: Login,\n exact: true,\n name: 'login',\n path: '/login',\n },\n {\n auth: false,\n component: ForgotPassword,\n exact: true,\n name: 'forgotPwd',\n path: '/forgot-password',\n },\n {\n auth: true,\n component: Dashboard,\n exact: true,\n name: 'dashboard',\n path: '/dashboard',\n },\n {\n auth: true,\n component: CantonesNoRepresentados,\n exact: true,\n name: 'cantones-no-representados',\n path: '/cantones-no-representados',\n },\n {\n auth: true,\n component: AddCantonesNoRepresentados,\n exact: true,\n name: 'addCantonesNoRepresentados',\n path: '/cantones-no-representados/add',\n },\n {\n auth: true,\n component: EditCantonesNoRepresentados,\n exact: true,\n name: 'editCantonesNoRepresentados',\n path: '/cantones-no-representados/edit/:id',\n },\n {\n auth: false,\n component: RegistroGestores,\n exact: true,\n name: 'registro-gestores',\n path: '/registro-gestores',\n },\n {\n auth: true,\n component: RegistroDepositos,\n exact: true,\n name: 'registroDepositos',\n path: '/registro-depositos',\n },\n {\n auth: true,\n component: AddDeposito,\n exact: true,\n name: 'addDeposito',\n path: '/registro-depositos/add',\n },\n {\n auth: true,\n component: EditDeposito,\n exact: true,\n name: 'editDeposito',\n path: '/registro-depositos/edit/:id',\n },\n {\n auth: true,\n component: ConsultaDebitos,\n exact: true,\n name: 'consultaDebitos',\n path: '/consulta-debitos',\n },\n {\n auth: false,\n component: FRMCantonesNoRepresentados,\n exact: true,\n name: 'frmCantonesNoRepresentados',\n path: '/formulario/cantones-no-representados',\n },\n {\n auth: false,\n component: FRMComiteEjecutivoCantonal,\n exact: true,\n name: 'frmComiteEjecutivoCantonal',\n path: '/formulario/comite-ejecutivo-cantonal',\n },\n {\n auth: false,\n component: FRMHojaInformacion,\n exact: true,\n name: 'FRMHojaInformacion',\n path: '/formulario/hoja-informacion',\n },\n {\n auth: false,\n component: CPPapeletasCantonesNoRepresentados,\n exact: true,\n name: 'cpPapeletasCantonesNoRepresentados',\n path:\n '/consulta-publica/papeletas-cantones-no-representados',\n },\n {\n auth: false,\n component: CPPapeletasComiteEjecutivoCantonal,\n exact: true,\n name: 'cpPapeletasComiteEjecutivoCantonal',\n path: '/consulta-publica/comite-ejecutivo-cantonal',\n },\n {\n auth: false,\n component: APCantonesNoRepresentados,\n exact: true,\n name: 'apCantonesNoRepresentados',\n path: '/adjudicacion-puestos/cantones-no-representados',\n },\n];\n\nexport default routesList;\n","import React from 'react';\r\nimport Box from '@material-ui/core/Box';\r\nimport Container from '@material-ui/core/Container';\r\n\r\nimport useStyles from '../Layout/makeStyles';\r\nimport Copyright from '../Copyright/Copyright';\r\nimport Cards from './Cards';\r\n\r\nexport default function Dashboard() {\r\n const classes = useStyles();\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","/* eslint-disable max-len */\r\n/* eslint-disable arrow-parens */\r\n/* eslint-disable react/jsx-filename-extension */\r\nimport * as React from 'react';\r\nimport {\r\n Menu,\r\n MenuItem,\r\n makeStyles,\r\n Theme,\r\n} from '@material-ui/core';\r\nimport ArrowForwardIosIcon from '@material-ui/icons/ArrowForwardIos';\r\n\r\nconst useStyles = makeStyles((theme: Theme) => ({\r\n menuItem: {\r\n backgroundColor: ({\r\n isSubMenuOpen,\r\n }: {\r\n isSubMenuOpen: boolean;\r\n }) =>\r\n isSubMenuOpen\r\n ? theme.palette.action.hover\r\n : 'transparent',\r\n minWidth: '12rem',\r\n },\r\n contentContainer: {\r\n width: '100%',\r\n display: 'flex',\r\n justifyContent: 'space-between',\r\n alignItems: 'center',\r\n },\r\n name: {\r\n paddingRight: 6,\r\n },\r\n expandIcon: {\r\n fontSize: 12,\r\n },\r\n}));\r\n\r\ntype Item = {\r\n id: string;\r\n name: string;\r\n children?: Item[];\r\n};\r\n\r\ninterface NestedMenuItemProps {\r\n id: string;\r\n name: string;\r\n childrenItems?: Item[];\r\n onClick: (id: string) => void;\r\n}\r\n\r\nconst NestedMenuItem = React.forwardRef<\r\n any,\r\n NestedMenuItemProps\r\n>(\r\n (\r\n {\r\n // eslint-disable-next-line react/prop-types\r\n id: parentId,\r\n // eslint-disable-next-line react/prop-types\r\n name: parentName,\r\n // eslint-disable-next-line react/prop-types\r\n childrenItems: parentChildrenItems = [],\r\n // eslint-disable-next-line react/prop-types\r\n onClick,\r\n },\r\n ref,\r\n ) => {\r\n const [\r\n anchorEl,\r\n setAnchorEl,\r\n ] = React.useState(null);\r\n const isSubMenuOpen = Boolean(Boolean(anchorEl));\r\n const classes = useStyles({ isSubMenuOpen });\r\n const hasChildrenItems =\r\n parentChildrenItems?.length || false;\r\n const isLeafNode = !hasChildrenItems;\r\n\r\n const handleMouseEnter = (\r\n event: React.MouseEvent,\r\n ) => {\r\n setAnchorEl(event.currentTarget);\r\n };\r\n\r\n const handleClose = () => {\r\n setAnchorEl(null);\r\n };\r\n\r\n const handleClick = (event: React.MouseEvent) => {\r\n event.stopPropagation();\r\n if (isLeafNode) {\r\n onClick(parentId);\r\n }\r\n };\r\n\r\n return (\r\n \r\n
\r\n {parentName}\r\n {hasChildrenItems && (\r\n \r\n )}\r\n
\r\n {hasChildrenItems && (\r\n <>\r\n \r\n {/* reset pointer event here so that the menu items could receive mouse events */}\r\n
\r\n {parentChildrenItems.map(item => {\r\n const { id, name, children } = item;\r\n return (\r\n \r\n );\r\n })}\r\n
\r\n \r\n \r\n )}\r\n \r\n );\r\n },\r\n);\r\n\r\nexport default NestedMenuItem;\r\n","import {\r\n colors,\r\n breakpoints as bp,\r\n} from '../../Core/Theme/theme';\r\n\r\nconst styles = theme => ({\r\n container: {\r\n background: colors.backGray,\r\n },\r\n sectionDesktop: {\r\n display: 'none',\r\n [theme.breakpoints.up('md')]: {\r\n display: 'flex',\r\n },\r\n },\r\n sectionMobile: {\r\n display: 'flex',\r\n [theme.breakpoints.up('md')]: {\r\n display: 'none',\r\n },\r\n },\r\n imgLogo: {\r\n maxWidth: '100%',\r\n width: '245px',\r\n height: 'auto',\r\n display: 'block',\r\n padding: 15,\r\n [theme.breakpoints.down(bp.MOBILE)]: {\r\n paddingTop: 25,\r\n },\r\n },\r\n socialLinks: {\r\n padding: 0,\r\n marginTop: 25,\r\n marginRight: 25,\r\n float: 'right',\r\n '& li': {\r\n listStyle: 'none',\r\n float: 'left',\r\n marginRight: '10px',\r\n },\r\n },\r\n loginAccess: {\r\n padding: 0,\r\n marginTop: 25,\r\n color: '#999',\r\n marginRight: 25,\r\n float: 'right',\r\n '& li': {\r\n listStyle: 'none',\r\n float: 'left',\r\n marginRight: '10px',\r\n paddingLeft: '25px',\r\n borderLeft: 'solid thin #000',\r\n '& span': {\r\n float: 'right',\r\n marginLeft: 5,\r\n marginTop: 3,\r\n },\r\n '& a.MuiLink-root': {\r\n color: '#999',\r\n fontFamily: \"'Inter'\",\r\n },\r\n },\r\n },\r\n});\r\n\r\nexport default styles;\r\n","import React, { useState } from 'react';\nimport Lodash from 'lodash';\nimport { withStyles } from '@material-ui/core/styles';\nimport { Container, Grid, Link } from '@material-ui/core';\nimport AppBar from '@material-ui/core/AppBar';\nimport Toolbar from '@material-ui/core/Toolbar';\nimport IconButton from '@material-ui/core/IconButton';\nimport Button from '@material-ui/core/Button';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport Menu from '@material-ui/core/Menu';\nimport MoreIcon from '@material-ui/icons/MoreVert';\nimport FacebookIcon from '@material-ui/icons/Facebook';\nimport InstagramIcon from '@material-ui/icons/Instagram';\nimport TwitterIcon from '@material-ui/icons/Twitter';\nimport YouTubeIcon from '@material-ui/icons/YouTube';\nimport PersonIcon from '@material-ui/icons/Person';\nimport LibraryBooksIcon from '@material-ui/icons/LibraryBooks';\nimport NestedMenuItem from './NestedMenuItem.tsx';\nimport style from './styles';\n\nimport {\n useIGESAvailable,\n useLoginGESAvailable,\n} from '../../Core/Api/periodoApi';\n\nconst menuAsambleasCantonales = [\n {\n id: 'formulario/cantones-no-representados',\n name: 'Cantones no Representados',\n },\n {\n id: 'formulario/hoja-informacion',\n name: 'Hoja de Información',\n },\n];\n\nconst menuConsultaPublica = [\n {\n id:\n 'consulta-publica/papeletas-cantones-no-representados',\n name: 'Cantones no Representados',\n },\n];\n\nconst menuAdjudicacionPuestos = [\n {\n id: 'adjudicacion-puestos/cantones-no-representados',\n name: 'Cantones no Representados',\n },\n];\n\nconst Header = props => {\n const { classes } = props;\n\n const [anchorElMAD, setAnchorElMAD] = useState(null);\n const [anchorElCI, setAnchorElCI] = useState(null);\n const [anchorElAP, setAnchorElAP] = useState(null);\n\n const handleClickMAD = event => {\n setAnchorElMAD(event.currentTarget);\n };\n\n const handleClickCI = event => {\n setAnchorElCI(event.currentTarget);\n };\n\n const handleClickAP = event => {\n setAnchorElAP(event.currentTarget);\n };\n\n const handleCloseMAD = () => {\n setAnchorElMAD(null);\n };\n\n const handleCloseCI = () => {\n setAnchorElCI(null);\n };\n\n const handleCloseAP = () => {\n setAnchorElAP(null);\n };\n\n const handleItemClickMAD = link => {\n setAnchorElMAD(null);\n window.location.href = `/${link}`;\n };\n\n const handleItemClickCI = link => {\n setAnchorElCI(null);\n window.location.href = `/${link}`;\n };\n\n const handleItemClickAP = link => {\n setAnchorElAP(null);\n window.location.href = `/${link}`;\n };\n\n // Se valida si esta habilitada la opcion (Registro Gestores)\n const isRegistroGESAvailable = useIGESAvailable();\n const registroGESAvailable = Lodash.get(\n isRegistroGESAvailable,\n ['data', 'response'],\n null,\n );\n\n // Se valida si esta habilitada la opcion (Login Gestores)\n const isLoginGESAvailable = useLoginGESAvailable();\n const loginGESAvailable = Lodash.get(\n isLoginGESAvailable,\n ['data', 'response'],\n null,\n );\n\n const [anchorEl, setAnchorEl] = useState(null);\n const [anchorEl2, setAnchorEl2] = useState(null);\n const [\n mobileMoreAnchorEl,\n setMobileMoreAnchorEl,\n ] = useState(null);\n\n const menuId = 'primary-search-account-menu';\n const menuId2 = 'consultas-publicas-menu';\n const mobileMenuId = 'primary-search-account-menu-mobile';\n const isMenuOpen = Boolean(anchorEl);\n const isMenu2Open = Boolean(anchorEl2);\n const isMobileMenuOpen = Boolean(mobileMoreAnchorEl);\n\n const handleProfileMenuOpen = event => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleMobileMenuOpen = event => {\n setMobileMoreAnchorEl(event.currentTarget);\n };\n\n const handleMobileMenuClose = () => {\n setMobileMoreAnchorEl(null);\n };\n\n const handleMobileMenu2Close = () => {\n setMobileMoreAnchorEl(null);\n };\n\n const handleMenuClose = () => {\n setAnchorEl(null);\n handleMobileMenuClose();\n };\n\n const handleMenu2Close = () => {\n setAnchorEl2(null);\n handleMobileMenu2Close();\n };\n\n const renderMenu = (\n \n \n \n Convención Interna\n \n \n \n \n Papeletas Distritales\n \n \n \n \n Papeletas Cantonales\n \n \n \n \n Papeletas Provinciales\n \n \n \n \n Papeletas Mov. Nacionales\n \n \n \n \n Presidencia de Sectores\n \n \n \n \n Papeletas de Sectores\n \n \n \n );\n\n const renderMenuAdjudicacionPuestos = (\n \n \n \n Delegados Distritales\n \n \n \n \n Comité Político Cantonal\n \n \n \n \n Representantes Provinciales de Movimientos\n \n \n \n \n Mov. Nacionales\n \n \n \n \n Presidencia de Sectores\n \n \n \n \n Repre. al Organo Consultivo Nac. (Sectores)\n \n \n \n );\n\n const renderMobileMenu = (\n \n \n \n \n \n \n \n \n \n \n \n );\n\n return (\n \n \n \n \n \n \n \n Partido Liberación Nacional\n {' '}\n
\n ASAMBLEAS DEL ÓRGANO CONSULTIVO PROVINCIAL\n
\n \n Periodo 2021\n \n \n \n
\n \n \n {process.env\n .REACT_APP_OPTION_REGISTRO_GESTORES ===\n 'enabled' &&\n registroGESAvailable && (\n
  • \n \n \n Registro Gestores\n \n
  • \n )}\n {process.env.REACT_APP_OPTION_LOGIN_GESTORES ===\n 'enabled' &&\n loginGESAvailable && (\n
  • \n \n \n Ingresar\n \n
  • \n )}\n \n \n
  • \n \n \n \n
  • \n
  • \n \n \n \n
  • \n
  • \n \n \n \n
  • \n
  • \n \n \n \n
  • \n \n
    \n
    \n \n \n \n \n
    \n \n \n Formularios\n \n\n \n {menuAsambleasCantonales.map(item => {\n const { id, name, children } = item;\n return (\n \n );\n })}\n \n\n \n Consulta de Inscripciones\n \n \n {menuConsultaPublica.map(item => {\n const { id, name, children } = item;\n return (\n \n );\n })}\n \n \n Adjudicación Puestos\n \n \n {menuAdjudicacionPuestos.map(item => {\n const { id, name, children } = item;\n return (\n \n );\n })}\n \n
    \n
    \n \n \n \n
    \n
    \n
    \n {renderMobileMenu}\n {renderMenu}\n {renderMenuAdjudicacionPuestos}\n \n
    \n );\n};\n\nexport default withStyles(style)(Header);\n","const styles = () => ({\r\n profileButton: {\r\n color: '#fff',\r\n backgroundColor: '#008945',\r\n cursor: 'pointer',\r\n },\r\n avatarIcon: {\r\n width: 70,\r\n height: 70,\r\n },\r\n});\r\n\r\nexport default styles;\r\n","import React, { useState, useEffect } from 'react';\r\nimport Lodash from 'lodash';\r\nimport { useJwt } from 'react-jwt';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport Button from '@material-ui/core/Button';\r\nimport Menu from '@material-ui/core/Menu';\r\nimport MenuItem from '@material-ui/core/MenuItem';\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport DialogActions from '@material-ui/core/DialogActions';\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\nimport Card from '@material-ui/core/Card';\r\nimport CardActions from '@material-ui/core/CardActions';\r\nimport CardContent from '@material-ui/core/CardContent';\r\nimport Typography from '@material-ui/core/Typography';\r\n\r\nimport Avatar from '@material-ui/core/Avatar';\r\nimport PersonIcon from '@material-ui/icons/Person';\r\nimport ExitToAppIcon from '@material-ui/icons/ExitToApp';\r\nimport style from './styles';\r\n\r\nimport tokenStorage from '../../Storage/Storage';\r\nimport pageStorage from '../../Storage/ConfigPage';\r\n\r\nconst LogOut = props => {\r\n const { classes } = props;\r\n const [open, setOpen] = useState(false);\r\n const [isLogout, setIsLogout] = useState(false);\r\n const [user, setUser] = useState([]);\r\n\r\n const tokenData = tokenStorage.instance;\r\n const { decodedToken } = useJwt(tokenData.getToken());\r\n\r\n useEffect(() => {\r\n if (decodedToken !== null) {\r\n setUser(decodedToken);\r\n }\r\n }, [decodedToken]);\r\n\r\n const handleClickOpen = () => {\r\n setOpen(true);\r\n };\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n const [anchorEl, setAnchorEl] = useState(null);\r\n\r\n const handleClickMenu = event => {\r\n setAnchorEl(event.currentTarget);\r\n };\r\n\r\n const handleCloseMenu = () => {\r\n setAnchorEl(null);\r\n };\r\n\r\n const logout = () => {\r\n setIsLogout(true);\r\n const tokenInfo = tokenStorage.instance;\r\n const pageInfo = pageStorage.instance;\r\n\r\n tokenInfo.removeStorage();\r\n pageInfo.removeStorage();\r\n\r\n setTimeout(() => {\r\n window.location.href = '/';\r\n }, 1000);\r\n };\r\n\r\n return (\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {Lodash.startCase(\r\n Lodash.camelCase(user.des_nombre),\r\n )}\r\n \r\n \r\n Gestor\r\n \r\n \r\n \r\n \r\n Perfil de Usuario\r\n \r\n \r\n \r\n \r\n \r\n \r\n Cerrar Sesión\r\n \r\n \r\n\r\n \r\n \r\n ¿Desea salir del sistema?\r\n \r\n \r\n \r\n \r\n Si\r\n \r\n \r\n \r\n
    \r\n );\r\n};\r\n\r\nexport default withStyles(style)(LogOut);\r\n","import React from 'react';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport List from '@material-ui/core/List';\r\nimport ListItem from '@material-ui/core/ListItem';\r\nimport ListItemIcon from '@material-ui/core/ListItemIcon';\r\nimport ListItemText from '@material-ui/core/ListItemText';\r\nimport Collapse from '@material-ui/core/Collapse';\r\nimport DashboardIcon from '@material-ui/icons/Dashboard';\r\nimport AssignmentIcon from '@material-ui/icons/Assignment';\r\nimport ReceiptIcon from '@material-ui/icons/Receipt';\r\nimport MoneyIcon from '@material-ui/icons/Money';\r\nimport ExpandLess from '@material-ui/icons/ExpandLess';\r\nimport ExpandMore from '@material-ui/icons/ExpandMore';\r\nimport { Link } from 'react-router-dom';\r\n\r\nconst useStyles = makeStyles(theme => ({\r\n root: {\r\n width: '100%',\r\n maxWidth: 360,\r\n backgroundColor: theme.palette.background.paper,\r\n },\r\n nested: {\r\n paddingLeft: theme.spacing(4),\r\n '& a': {\r\n textDecoration: 'none',\r\n color: '#757575',\r\n width: '100%',\r\n },\r\n },\r\n}));\r\n\r\nexport default function MenuItems() {\r\n // Se valida si esta habilitada la opcion (Registro Gestores)\r\n const classes = useStyles();\r\n const [open, setOpen] = React.useState(false);\r\n\r\n const handleClick = () => {\r\n setOpen(!open);\r\n };\r\n\r\n return (\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {open ? : }\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n );\r\n}\r\n","import React from 'react';\r\n\r\nconst BalanceContext = React.createContext({\r\n deposits: 0,\r\n memberships: 0,\r\n inscriptions: 0,\r\n saldo: 0,\r\n});\r\n\r\nexport const BalanceProvider = BalanceContext.Provider;\r\nexport const BalanceConsumer = BalanceContext.Consumer;\r\n\r\nexport default BalanceContext;\r\n","import React, {\r\n useState,\r\n useContext,\r\n useEffect,\r\n} from 'react';\r\nimport { useJwt } from 'react-jwt';\r\nimport clsx from 'clsx';\r\nimport Toolbar from '@material-ui/core/Toolbar';\r\nimport Chip from '@material-ui/core/Chip';\r\nimport IconButton from '@material-ui/core/IconButton';\r\nimport MenuIcon from '@material-ui/icons/Menu';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Drawer from '@material-ui/core/Drawer';\r\nimport ChevronLeftIcon from '@material-ui/icons/ChevronLeft';\r\nimport Divider from '@material-ui/core/Divider';\r\nimport AppBar from '@material-ui/core/AppBar';\r\nimport Logout from '../../Logout/Logout';\r\n\r\nimport MenuItems from '../../Dashboard/MenuItems';\r\nimport BalanceContext from '../../../Core/Context/AppContext';\r\nimport Storage from '../../../Storage/Storage';\r\n\r\nconst AppBarCustom = props => {\r\n const [open, setOpen] = useState(true);\r\n const { classes } = props;\r\n\r\n const tokenStorage = Storage.instance;\r\n\r\n const { decodedToken } = useJwt(tokenStorage.getToken());\r\n\r\n const { balance, getBalanceAPI } = useContext(\r\n BalanceContext,\r\n );\r\n\r\n const [globalBalance, setGlobalBalance] = useState(\r\n balance,\r\n );\r\n\r\n const handleDrawerOpen = () => {\r\n setOpen(true);\r\n };\r\n\r\n const handleDrawerClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n useEffect(() => {\r\n async function fetchBalanceAPI() {\r\n if (decodedToken)\r\n await getBalanceAPI(decodedToken.num_cedula);\r\n }\r\n\r\n fetchBalanceAPI();\r\n }, [decodedToken]);\r\n\r\n useEffect(() => {\r\n if (balance) setGlobalBalance(balance);\r\n }, [balance]);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n PLATAFORMA DE ASAMBLEAS DE ÓRGANO CONSULTIVO\r\n PROVINCIAL\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n );\r\n};\r\n\r\nexport default AppBarCustom;\r\n","/* eslint-disable react/jsx-props-no-spreading */\r\n/* eslint-disable react/prop-types */\r\n/* eslint-disable no-unused-vars */\r\nimport React from 'react';\r\nimport { Route } from 'react-router-dom';\r\nimport CssBaseline from '@material-ui/core/CssBaseline';\r\nimport useStyles from '../Containers/Layout/makeStyles';\r\nimport Header from '../Containers/Header/Header';\r\nimport AppBarCustom from '../Containers/Layout/AppBarCustom/AppBarCustom';\r\nimport AuthMiddleware from '../Middleware/AuthMiddleware';\r\n\r\nconst authMiddleware = new AuthMiddleware();\r\n\r\nconst CustomRoute = ({\r\n auth,\r\n component: Component,\r\n ...rest\r\n}) => {\r\n const classes = useStyles();\r\n\r\n return (\r\n {\r\n const { options } = rest.options || {};\r\n\r\n if (!auth) {\r\n return (\r\n <>\r\n
    \r\n \r\n \r\n );\r\n }\r\n\r\n if (!authMiddleware.validate()) {\r\n return authMiddleware.reject();\r\n }\r\n\r\n return (\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n );\r\n }}\r\n />\r\n );\r\n};\r\n\r\nexport default CustomRoute;\r\n","import React from 'react';\r\nimport { Redirect } from 'react-router-dom';\r\nimport Storage from '../Storage/Storage';\r\n\r\nclass AuthMiddleware {\r\n constructor() {\r\n this.storage = Storage.instance;\r\n }\r\n\r\n validate() {\r\n const token = this.storage.getToken();\r\n return token !== null && token !== '';\r\n }\r\n\r\n // eslint-disable-next-line class-methods-use-this\r\n reject() {\r\n return (\r\n \r\n );\r\n }\r\n}\r\n\r\nexport default AuthMiddleware;\r\n","import React from 'react';\r\nimport { Switch, BrowserRouter } from 'react-router-dom';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport { Container } from '@material-ui/core';\r\nimport style from '../Index/styles';\r\nimport Routes from '../../Routes/routes';\r\nimport CustomRoute from '../../Routes/CustomRoute';\r\n\r\nconst Layout = () => {\r\n return (\r\n \r\n \r\n \r\n {Routes.map(page => {\r\n return (\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default withStyles(style)(Layout);\r\n","import React, { useState } from 'react';\r\nimport { BalanceProvider } from './AppContext';\r\nimport balanceGlobalApi from '../Api/balanceGlobalApi';\r\nimport { formatData } from '../Utils/Utils';\r\n\r\nconst AppProvider = props => {\r\n const { children } = props;\r\n\r\n const [globalBalance, setGlobalBalance] = useState(null);\r\n\r\n const getBalance = async _userId => {\r\n await balanceGlobalApi\r\n .getBalanceById(_userId)\r\n .then(_response => {\r\n const info = _response;\r\n let dataSet = {\r\n deposits: 0,\r\n memberships: 0,\r\n inscriptions: 0,\r\n saldo: 0,\r\n };\r\n\r\n if (info.status === 200 && info.data.response) {\r\n const balanceRs = info.data.response;\r\n\r\n dataSet = {\r\n deposits: formatData(balanceRs.depositos),\r\n memberships: formatData(balanceRs.membresias),\r\n inscriptions: formatData(\r\n balanceRs.inscripciones,\r\n ),\r\n saldo: formatData(balanceRs.saldo),\r\n };\r\n }\r\n\r\n setGlobalBalance(dataSet);\r\n });\r\n };\r\n\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n};\r\n\r\nexport default AppProvider;\r\n","import React from 'react';\r\nimport { MuiThemeProvider } from '@material-ui/core/styles';\r\n// import { Provider } from 'react-redux';\r\nimport { theme as t } from './Core/Theme/theme';\r\n// import store from './Redux';\r\nimport Layout from './Containers/Layout/Layout';\r\nimport AppProvider from './Core/Context/AppProvider';\r\n\r\nconst App = () => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default App;\r\n","/* eslint no-use-before-define: 0 */ // --> OFF\r\n/* eslint no-param-reassign: 0 */ // --> OFF\r\n/* eslint no-console: 0 */ // --> OFF\r\n\r\n// This optional code is used to register a service worker.\r\n// register() is not called by default.\r\n\r\n// This lets the app load faster on subsequent visits in production, and gives\r\n// it offline capabilities. However, it also means that developers (and users)\r\n// will only see deployed updates on subsequent visits to a page, after all the\r\n// existing tabs open on the page have been closed, since previously cached\r\n// resources are updated in the background.\r\n\r\n// To learn more about the benefits of this model and instructions on how to\r\n// opt-in, read https://bit.ly/CRA-PWA\r\n\r\nconst isLocalhost = Boolean(\r\n window.location.hostname === 'localhost' ||\r\n // [::1] is the IPv6 localhost address.\r\n window.location.hostname === '[::1]' ||\r\n // 127.0.0.0/8 are considered localhost for IPv4.\r\n window.location.hostname.match(\r\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/,\r\n ),\r\n);\r\n\r\nexport function register(config) {\r\n if (\r\n process.env.NODE_ENV === 'production' &&\r\n 'serviceWorker' in navigator\r\n ) {\r\n // The URL constructor is available in all browsers that support SW.\r\n const publicUrl = new URL(\r\n process.env.PUBLIC_URL,\r\n window.location.href,\r\n );\r\n if (publicUrl.origin !== window.location.origin) {\r\n // Our service worker won't work if PUBLIC_URL is on a different origin\r\n // from what our page is served on. This might happen if a CDN is used to\r\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\r\n return;\r\n }\r\n\r\n window.addEventListener('load', () => {\r\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\r\n\r\n if (isLocalhost) {\r\n // This is running on localhost. Let's check if a service worker still exists or not.\r\n checkValidServiceWorker(swUrl, config);\r\n\r\n // Add some additional logging to localhost, pointing developers to the\r\n // service worker/PWA documentation.\r\n navigator.serviceWorker.ready.then(() => {\r\n console.log(\r\n 'This web app is being served cache-first by a service ' +\r\n 'worker. To learn more, visit https://bit.ly/CRA-PWA',\r\n );\r\n });\r\n } else {\r\n // Is not localhost. Just register service worker\r\n registerValidSW(swUrl, config);\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction registerValidSW(swUrl, config) {\r\n navigator.serviceWorker\r\n .register(swUrl)\r\n .then(registration => {\r\n registration.onupdatefound = () => {\r\n const installingWorker = registration.installing;\r\n if (installingWorker == null) {\r\n return;\r\n }\r\n installingWorker.onstatechange = () => {\r\n if (installingWorker.state === 'installed') {\r\n if (navigator.serviceWorker.controller) {\r\n // At this point, the updated precached content has been fetched,\r\n // but the previous service worker will still serve the older\r\n // content until all client tabs are closed.\r\n console.log(\r\n 'New content is available and will be used when all ' +\r\n 'tabs for this page are closed. See https://bit.ly/CRA-PWA.',\r\n );\r\n\r\n // Execute callback\r\n if (config && config.onUpdate) {\r\n config.onUpdate(registration);\r\n }\r\n } else {\r\n // At this point, everything has been precached.\r\n // It's the perfect time to display a\r\n // \"Content is cached for offline use.\" message.\r\n console.log(\r\n 'Content is cached for offline use.',\r\n );\r\n\r\n // Execute callback\r\n if (config && config.onSuccess) {\r\n config.onSuccess(registration);\r\n }\r\n }\r\n }\r\n };\r\n };\r\n })\r\n .catch(error => {\r\n console.error(\r\n 'Error during service worker registration:',\r\n error,\r\n );\r\n });\r\n}\r\n\r\nfunction checkValidServiceWorker(swUrl, config) {\r\n // Check if the service worker can be found. If it can't reload the page.\r\n fetch(swUrl, {\r\n headers: { 'Service-Worker': 'script' },\r\n })\r\n .then(response => {\r\n // Ensure service worker exists, and that we really are getting a JS file.\r\n const contentType = response.headers.get(\r\n 'content-type',\r\n );\r\n if (\r\n response.status === 404 ||\r\n (contentType != null &&\r\n contentType.indexOf('javascript') === -1)\r\n ) {\r\n // No service worker found. Probably a different app. Reload the page.\r\n navigator.serviceWorker.ready.then(registration => {\r\n registration.unregister().then(() => {\r\n window.location.reload();\r\n });\r\n });\r\n } else {\r\n // Service worker found. Proceed as normal.\r\n registerValidSW(swUrl, config);\r\n }\r\n })\r\n .catch(() => {\r\n console.log(\r\n 'No internet connection found. App is running in offline mode.',\r\n );\r\n });\r\n}\r\n\r\nexport function unregister() {\r\n if ('serviceWorker' in navigator) {\r\n navigator.serviceWorker.ready\r\n .then(registration => {\r\n registration.unregister();\r\n })\r\n .catch(error => {\r\n console.error(error.message);\r\n });\r\n }\r\n}\r\n","import React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport dotenv from 'dotenv';\r\nimport App from './App';\r\nimport './index.css';\r\nimport * as serviceWorker from './serviceWorker';\r\n\r\ndotenv.config();\r\n\r\nReactDOM.render(, document.getElementById('root'));\r\n\r\n// If you want your app to work offline and load faster, you can change\r\n// unregister() to register() below. Note this comes with some pitfalls.\r\n// Learn more about service workers: https://bit.ly/CRA-PWA\r\nserviceWorker.unregister();\r\n"],"sourceRoot":""}