{"version":3,"sources":["data/params.js","components/estudiante/ListadoEstudiantesScreen.js","icons/TextSnippet.js","styles/setTheme.js","components/formato/MobileStyle.js","components/formato/controles/Avatar.js","components/formato/BrowserStyle.js","components/formato/controles/DialogImage.js","components/formato/controles/RadioGroup.js","components/formato/controles/CheckboxGroup.js","components/formato/controles/Select.js","components/formato/controles/Textbox.js","components/formato/controles/ComboCheckbox.js","components/formato/MobileScreen.js","types/preguntaTypes.js","redux/actions/preguntaActions.js","types/estudianteTypes.js","redux/actions/estudianteActions.js","components/formato/controles/Disabled.js","components/formato/controles/Location.js","helpers/urlBase.js","components/formato/controles/Map.js","controls/Alerta.js","components/formato/BrowserScreen.js","components/formato/FormatoScreen.js","components/estudiante/RegistroEstudianteStyle.js","types/ubigeoTypes.js","redux/actions/ubigeoActions.js","controls/Mensaje.js","logErrors.js","helpers/apiCall.js","helpers/ubigeoHelper.js","redux/thunk/ubigeoThunk.js","controls/TextNumber.js","types/instEducativaTypes.js","redux/actions/instEducativaActions.js","helpers/institucionHelper.js","redux/thunk/instEducativaThunk.js","types/municipalidadTypes.js","redux/actions/municipalidadActions.js","helpers/municipalidadHelper.js","redux/thunk/municipalidadThunk.js","types/padreTypes.js","redux/actions/padreActions.js","components/estudiante/registroEstudianteProfile.js","helpers/preguntaHelper.js","types/formatoTypes.js","redux/actions/formatoActions.js","helpers/formatoHelper.js","helpers/veeduriaHelper.js","types/veeduriaTypes.js","controls/Proceso.js","redux/thunk/veeduriaThunk.js","redux/actions/veeduriaActions.js","helpers/estudianteHelper.js","redux/thunk/estudianteThunk.js","controls/Confirmacion.js","types/parametroTypes.js","helpers/parametroHelper.js","redux/thunk/parametroThunk.js","redux/actions/parametroActions.js","components/formato/controles/MapContainer.js","types/coordenadaTypes.js","redux/actions/coordenadasActions.js","components/estudiante/RegistroEstudianteScreen.js","redux/thunk/formatoThunk.js","redux/thunk/preguntaThunk.js","helpers/padreHelper.js","redux/thunk/padreThunk.js","components/padre/RegistroPadreStyle.js","components/padre/registroPadreProfile.js","types/captchaTypes.js","helpers/captchaHelper.js","redux/thunk/captchaThunk.js","redux/actions/captchaActions.js","types/informacionBasicaTypes.js","redux/actions/informacionBasicaActions.js","components/padre/RegistroPadreScreen.js","components/padre/RegistroAdultoScreen.js","components/cabecera/InformacionBasicaStyle.js","components/cabecera/InformacionBasicaScreen.js","App.js","states/informacionBasicaState.js","states/padreState.js","states/captchaState.js","states/ubigeoState.js","states/instEducativaState.js","states/estudianteState.js","states/preguntaState.js","states/veeduriaState.js","states/formatoState.js","states/municipalidadState.js","states/parametroState.js","states/coordenadaState.js","redux/store/store.js","redux/reducers/informacionBasicaReducer.js","redux/reducers/padreReducer.js","redux/reducers/captchaReducer.js","redux/reducers/ubigeoReducer.js","redux/reducers/instEducativaReducer.js","redux/reducers/estudianteReducer.js","redux/reducers/preguntaReducer.js","redux/reducers/veeduriaReducer.js","redux/reducers/formatoReducer.js","redux/reducers/parametroReducer.js","redux/reducers/municipalidadReducer.js","redux/reducers/coordenadasReducer.js","index.js"],"names":["niveles","cod","des","grados_primaria","grados_secundaria","generos","secciones","makeStyles","theme","table","minWidth","withStyles","root","padding","head","backgroundColor","palette","bg_head","color","common","black","body","fontSize","TableCell","bg_group","TableRow","action","hover","warning","main","RemoveRedEyeIcon","success","props","SvgIcon","d","createData","name","calories","fat","carbs","protein","createMuiTheme","primary","red","avatar","subAvatar","secondary","blue","yellow","green","error","grey","width","button","marginTop","spacing","marginRight","actionsContainer","marginBottom","resetContainer","center_item","margin","dividerInset","formControl","small","height","white","smallText","fontWeight","MuiStepper","AvatarControl","clase","numero","sizeText","Avatar","className","Typography","useStyles","smallAdjunto","largeBrowser","largeMobile","smallBrowser","smallMobile","textBrowser","textMobile","align_items_middle","display","alignItems","multiSelect","textField","pregDesc","pregNota","dropZone","fullWidth","previewContainer","container","preview","xs","previewImg","inputStyle","borderBottom","selectStyle","radioStyle","fontHelvetica","DropzoneAreaCustom","minHeight","DropzoneArea","Accordion","border","boxShadow","expanded","MuiAccordion","AccordionSummary","content","MuiAccordionSummary","AccordionDetails","MuiAccordionDetails","flexWrap","justifyContent","overflow","background","paper","imageList","transform","imageListItem","imageListMobile","imageListItemMobile","icon","title","light","MuiImageListItemBar","titleBar","DialogTitle","closeButton","position","right","top","children","classes","onClose","other","disableTypography","variant","IconButton","aria-label","onClick","DialogContent","MuiDialogContent","MuiDialogActions","ImageDialog","isDialogOpened","filtro","listaArchivos","handleCloseDialog","tipo","useEffect","handleClickOpen","handleClose","Dialog","aria-labelledby","open","id","dividers","ImageList","rowHeight","isBrowser","undefined","map","item","ID_PREGUNTA","pregunta","ID_RESPUESTA","respuesta","ImageListItem","key","ID","style","cols","src","BASE64","alt","DESCRIPCION","RadioGroupControl","respuestas","archivos_respuesta","preg","handleChange","useState","isOpen","setIsOpen","setFiltro","FormControl","component","RadioGroup","column","row","onChange","e","filter","rpta","FormControlLabel","value","control","Radio","label","IND_IMAGEN","Chip","clickable","size","objeto","Divider","CheckboxGroupControl","selecciona","selected","RESPUESTA","forEach","element","toString","FormGroup","Checkbox","options","checked","SelectControl","InputLabel","Select","MenuItem","TextboxControl","console","log","wrapper","TextField","autoComplete","helperText","inputProps","maxLength","multiline","TIPO_RPTA_COD","rows","ComboCheckboxControl","MenuProps","multiple","input","Input","renderValue","arrDes","push","split","join","indexOf","ListItemText","preguntaTypes","PREGUNTA_GET_START","PREGUNTA_GET_COMPLETE","PREGUNTA_GET_ERROR","PREGUNTA_SET_COMPLETE","PREGUNTA_SET_HABILITADO","PREGUNTA_SET_UPLOAD","setComplete","payload","type","setHabilitado","setUpload","estudianteTypes","resetValidacion","setExisteObservacion","updateDato","DisabledControl","Fab","disabled","LocationControl","handleReferencia","handleGuardarCoordenada","React","referencia_direccion","setReferencia","coordenada","lat","lng","latitud","longitud","direccion","referencia","inputReferencias","target","handleGuardarReferencia","urlBase","parametro_get_url","appBar","fontFamily","marginLeft","flex","Transition","forwardRef","ref","Slide","direction","posicion","direccion_seleccionada","MapControl","handleGuardar","latitud_ie","longitud_ie","latitud_user","longitud_user","coordenadas","google","window","coord_ie","parseFloat","coord_user","center","setMap","onMapLoad","useCallback","dataOptions","useMemo","controlPosition","maps","ControlPosition","TOP_LEFT","controls","drawingMode","featureFactory","geometry","g","fetch","then","response","isJson","headers","get","includes","json","data","ok","message","status","Promise","reject","display_name","catch","Data","Feature","fullScreen","TransitionComponent","AppBar","Toolbar","edge","Button","autoFocus","googleMapsApiKey","zoom","mapContainerClassName","mapId","isMarkerShown","args","latLng","onLoad","url","scaledSize","err","Alerta","Alert","state","vertical","horizontal","severity","Snackbar","autoHideDuration","anchorOrigin","AlertTitle","BrowserScreen","dispatch","useDispatch","useSelector","grupos","preguntas","dependencias","excluyentes","archivos_pregunta","setValue","informacion_basica","listaDependencias","listaRespuestas","listaExcluyentes","RptasPreguntaSelected","estudiante","instituciones","veeduria","event","preguntaId","cantRespuestasVacias","cantArchivosVacios","idRespuesta","showUpload","setDependencias","setExcluyentes","length","trim","COORDENADAS","IND_PADRE","HABILITADO","ARCHIVO","OBLIGATORIO_ARCHIVO","UPLOAD","existeObservacion","isComplete","setArchivo","files","file","getBase64","reader","FileReader","readAsDataURL","onload","NOMBRE","result","EXTENSION","onerror","valor","tipoControl","texto","FORMATO_ARCHIVO","show","respuestasPreg","INDICADOR_ARCHIVO","CANTIDAD_ARCHIVO","DROPZONE_TEXT","activa","r","ID_PREGUNTA_PADRE","index","respuesta6","listaPadres","x","hab","esElMayor","y","cargo","miembro","tiene","splice","index2","indexX","index3","index4","indexY","index5","index6","indexZ","cantObservaciones","OBSERVACION","existe_observacion","PaperProps","maxHeight","ITEM_HEIGHT","isOpenImageDialog","setIsOpenImageDialog","filtroImageDialog","setFiltroImageDialog","grupo","square","aria-controls","GRUPO_COD","ID_PADRE","CODIGO","NOTA","acceptedFiles","maxFileSize","filesLimit","dropzoneText","getFileLimitExceedMessage","getFileAddedMessage","fileName","getFileRemovedMessage","getDropRejectMessage","rejectedFile","hijo","class","typography","pxToRem","fontWeightRegular","toolbar","paddingLeft","paddingRight","centered","flexDirection","placeholder","FormatoScreen","isLoading","CircularProgress","LinearProgress","headerTitle","heading","iconExpander","detalle","classOne","textTransform","fieldProgress","left","autocompleteProgress","form","largeAvatarBrowser","largeAvatarMobile","buttonStyle","StyledAccordionDetails","StyledAccordionSummary","AccordionEstSummary","StyledAccordionActions","AccordionActions","ubigeoTypes","resetRegiones","resetProvincias","resetDistritos","resetDistritosMuni","Mensaje","text","showConfirmButton","Swal","fire","html","MessagesError","logErrors","errorModel","Type","Message","TypeError","RangeError","EvalError","Headers","axios","interceptors","request","use","token","localStorage","getItem","Authorization","apiCall","method","qs","stringify","apiPdf","responseType","listar_regiones","only_actives","resp","Success","listar_provincias","region","listar_distritos","provincia","getRegionesBD","getState","Validacion","getProvinciasMuniBD","getDistritosMuniBD","FORMATOS","TextNumber","inputRef","format","getInputRef","onValueChange","values","isNumericString","prefix","institucionTypes","resetInstituciones","listar_instituciones","distrito","nivel","tipo_inst_edu","ind_temporal","getInstitucionesBD","municipalidadTypes","getMunicipalidades","resetMunicipalidades","listar_municipalidades","all","getMunicipalidadesBD","padreTypes","validCodigoVerificacion","updatePadre","ProfileSchema","Yup","shape","required","inst_educativa","tipo_doc_hijo","nacionalidad","dni","when","is","min","max","nombre","apellido_paterno","apellido_materno","genero","autorizacion","email","grado","seccion","formato","municipalidad","listar_preguntas","formatoTypes","getFormatos","listar_formatos_by_tipo","insertar_veeduria","download_constancia","statusText","Error","blob","Blob","blobUrl","URL","createObjectURL","link","document","createElement","href","setAttribute","appendChild","click","parentNode","removeChild","veeduriaTypes","ProcesoStart","allowOutsideClick","onBeforeOpen","showLoading","ProcesoEnd","close","download","downloadConstancia","validaDNI","obtieneFormatos","validarDNI","valida_DNI","isValidated","lista_formato","ConfirmControl","onSubmit","alerta","handleOk","disableBackdropClick","disableEscapeKeyDown","maxWidth","DialogActions","flexGrow","parametroTypes","listar_tipos_documento","padre","JSON","listar_tipos_inst_edu","listar_nacionalidades","getTiposDocumentoBD","PARAMETRO_PADRE_COD","ClickLog","Array","fill","mapStyle","option","coordenadaTypes","Component","setCoordenadas","require","SuccessDialogAndDownload","valueProp","radioGroupRef","useRef","onEntering","current","focus","nombres","documento","startIcon","CloudDownload","RegistroEstudianteScreen","regiones","provincias","distritos","regionesMuni","provinciasMuni","distritosMuni","municipalidades","formatos","tipos_documento","tipos_inst_edu","nacionalidades","expandedHijo","setexpandedHijo","expandedIE","setexpandedIE","setexpandedMuni","expandedFormato","setexpandedFormato","scrollToAnchor","anchorName","anchorElement","getElementById","scrollIntoView","alert","setAlert","handleCloseAlert","messageActive","nombre_formato_vee","handleClickListItemX","id_veeduria","nombre_completo","setTimeout","handleReload","bloquearFormato","arr_id_formato_registrados","parse","listado","elemento","indice","array","FORMATO_COD","SELECTED","setItem","removeItem","location","reload","openResetForm","setOpenResetForm","handleClickCloseResetForm","newValue","validaPreguntas","preguntasSinRespuesta","preguntasSinArchivo","codigos","openMap","setOpenMap","ubicacion","setUbicacion","referencia_mapa","setDireccion","handleClickOpenMap","handleCloseMap","handleGuardarPoint","coor","checkedAUTORIZACION","showMore","setShowMore","toggleShowMore","openX","setOpenX","valueX","setValueX","handleCloseX","initialValues","validate","errors","validationSchema","setSubmitting","resetForm","profesor","region_muni","provincia_muni","distrito_muni","referencia_muni","latitud_mapa","longitud_mapa","insertVeeduria","insertVeeduriaBD","touched","handleBlur","handleSubmit","setFieldValue","isSubmitting","isValid","keepMounted","expandIcon","Boolean","labelId","onBlur","opt","i","PARAMETRO_COD","PARAMETRO_DES","FormHelperText","pattern","inputComponent","test","valorDNI","substring","grados","datosRegion","REGION_COD","formatos_activos","cantidad_registrados","element_1","element_2","today","moment","first","FECHA_INICIO","last","FECHA_FIN","HOY","unix","INICIO","REGION_DES","PROVINCIA_COD","PROVINCIA_DES","DISTRITO_COD","DISTRITO_DES","CUI","DIRECCION","LATITUD","LONGITUD","ubicacion_ie","obtenerFormatos","IE_DES","direccion_ie","getPreguntas","FORMATO_DES","IND_UBICACION","IND_COORDENADAS","navigator","geolocation","getCurrentPosition","coords","latitude","longitude","ubicacion_user","indicador_ubicacion","resetProvinciasMuni","MUNICIPALIDAD_COD","MUNICIPALIDAD_DES","indicador_coordenadas","cursor","generateToken","a","getVeeduriaPadre","generate_Token","savePadreBD","codigo","captcha","codigo_verificacion","toLowerCase","responseVeeduria","captchaProgress","popover","pointerEvents","textDisabled","StyledTextField","tipo_doc_padre","fecha_emision","typeError","nullable","celular","captchaTypes","generaCaptcha","getCaptchaSR","img","informacionBasicaTypes","updateInfoBasica","RegistroPadreScreen","isLooked","setIsLooked","setexpanded","MyField","useFormikContext","useField","field","meta","isCurrent","InputProps","utils","DateFnsUtils","locale","esLocale","disableFuture","clearable","invalidDateMessage","inputVariant","maxDateMessage","openTo","clearLabel","cancelLabel","okLabel","views","KeyboardButtonProps","imagen","RegistroAdultoScreen","cargo_nombre","InformacionBasicaScreen","FormLabel","detect","App","path","ComponenteConTipo","useLocation","URLSearchParams","search","setOpen","handleClickListItem","ThemeProvider","Card","textAlign","CardContent","gutterBottom","align","informacionBasicaState","existe","padreState","captchaState","ubigeoState","institucionState","estudianteState","beneficiario","preguntaState","veeduriaState","formatoState","municipalidadState","parametroState","coordenadaState","composeEnhancers","__REDUX_DEVTOOLS_EXTENSION_COMPOSE__","compose","reducers","combineReducers","store","createStore","applyMiddleware","thunk","ReactDOM","render"],"mappings":"oIAAA,uOAAMA,EAAU,CAKZ,CACIC,IAAK,IACLC,IAAI,eAINC,EAAkB,CACpB,CACIF,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,iBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAIPE,EAAoB,CACtB,CACIH,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,iBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,iBAqDPG,EAAU,CACZ,CACIJ,IAAK,IACLC,IAAI,YAER,CACID,IAAK,IACLC,IAAI,cA8GNI,EAAY,CACd,CACIL,IAAK,IACLC,IAAK,YAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,KACLC,IAAK,iBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,KACLC,IAAK,iBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,IACLC,IAAK,gBAET,CACID,IAAK,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","file":"static/js/main.9826f8a6.chunk.js","sourcesContent":["const niveles = [\r\n /* {\r\n cod: 'P',\r\n des:'PRIMARIA',\r\n },*/\r\n {\r\n cod: 'S',\r\n des:'SECUNDARIA',\r\n },\r\n]\r\n\r\nconst grados_primaria = [\r\n {\r\n cod: \"1\",\r\n des: \"Primer grado\",\r\n },\r\n {\r\n cod: \"2\",\r\n des: \"Segundo grado\",\r\n },\r\n {\r\n cod: \"3\",\r\n des: \"Tercer grado\",\r\n },\r\n {\r\n cod: \"4\",\r\n des: \"Cuarto grado\",\r\n },\r\n {\r\n cod: \"5\",\r\n des: \"Quinto grado\",\r\n },\r\n {\r\n cod: \"6\",\r\n des: \"Sexto grado\",\r\n },\r\n]\r\n\r\nconst grados_secundaria = [\r\n {\r\n cod: \"1\",\r\n des: \"Primer grado\",\r\n },\r\n {\r\n cod: \"2\",\r\n des: \"Segundo grado\",\r\n },\r\n {\r\n cod: \"3\",\r\n des: \"Tercer grado\",\r\n },\r\n {\r\n cod: \"4\",\r\n des: \"Cuarto grado\",\r\n },\r\n {\r\n cod: \"5\",\r\n des: \"Quinto grado\",\r\n },\r\n]\r\n// const grados_primaria = [\r\n// {\r\n// cod: \"1\",\r\n// des: \"1ro\",\r\n// },\r\n// {\r\n// cod: \"2\",\r\n// des: \"2do\",\r\n// },\r\n// {\r\n// cod: \"3\",\r\n// des: \"3ro\",\r\n// },\r\n// {\r\n// cod: \"4\",\r\n// des: \"4to\",\r\n// },\r\n// {\r\n// cod: \"5\",\r\n// des: \"5to\",\r\n// },\r\n// {\r\n// cod: \"6\",\r\n// des: \"6to\",\r\n// },\r\n// ]\r\n\r\n// const grados_secundaria = [\r\n// {\r\n// cod: \"1\",\r\n// des: \"1ro\",\r\n// },\r\n// {\r\n// cod: \"2\",\r\n// des: \"2do\",\r\n// },\r\n// {\r\n// cod: \"3\",\r\n// des: \"3ro\",\r\n// },\r\n// {\r\n// cod: \"4\",\r\n// des: \"4to\",\r\n// },\r\n// {\r\n// cod: \"5\",\r\n// des: \"5to\",\r\n// },\r\n// ]\r\n\r\nconst generos = [\r\n {\r\n cod: 'F',\r\n des:'FEMENINO',\r\n },\r\n {\r\n cod: 'M',\r\n des:'MASCULINO',\r\n },\r\n]\r\n\r\n// const secciones = [\r\n// {\r\n// cod: \"1\",\r\n// des: \"ÚNICA\",\r\n// },\r\n// {\r\n// cod: \"A\",\r\n// des: \"A\",\r\n// },\r\n// {\r\n// cod: \"B\",\r\n// des: \"B\",\r\n// },\r\n// {\r\n// cod: \"C\",\r\n// des: \"C\",\r\n// },\r\n// {\r\n// cod: \"D\",\r\n// des: \"D\",\r\n// },\r\n// {\r\n// cod: \"E\",\r\n// des: \"E\",\r\n// },\r\n// {\r\n// cod: \"F\",\r\n// des: \"F\",\r\n// },\r\n// {\r\n// cod: \"G\",\r\n// des: \"G\",\r\n// },\r\n// {\r\n// cod: \"H\",\r\n// des: \"H\",\r\n// },\r\n// {\r\n// cod: \"I\",\r\n// des: \"I\",\r\n// },\r\n// {\r\n// cod: \"J\",\r\n// des: \"J\",\r\n// },\r\n// {\r\n// cod: \"K\",\r\n// des: \"K\",\r\n// },\r\n// {\r\n// cod: \"L\",\r\n// des: \"L\",\r\n// },\r\n// {\r\n// cod: \"M\",\r\n// des: \"M\",\r\n// },\r\n// {\r\n// cod: \"N\",\r\n// des: \"N\",\r\n// },\r\n// {\r\n// cod: \"O\",\r\n// des: \"O\",\r\n// },\r\n// {\r\n// cod: \"P\",\r\n// des: \"P\",\r\n// },\r\n// {\r\n// cod: \"Q\",\r\n// des: \"Q\",\r\n// },\r\n// {\r\n// cod: \"R\",\r\n// des: \"R\",\r\n// },\r\n// {\r\n// cod: \"S\",\r\n// des: \"S\",\r\n// },\r\n// {\r\n// cod: \"T\",\r\n// des: \"T\",\r\n// },\r\n// {\r\n// cod: \"U\",\r\n// des: \"U\",\r\n// },\r\n// {\r\n// cod: \"W\",\r\n// des: \"W\",\r\n// },\r\n// {\r\n// cod: \"X\",\r\n// des: \"X\",\r\n// },\r\n// {\r\n// cod: \"Y\",\r\n// des: \"Y\",\r\n// },\r\n// {\r\n// cod: \"Z\",\r\n// des: \"Z\",\r\n// },\r\n// ]\r\nconst secciones = [\r\n {\r\n cod: \"1\",\r\n des: \"ÚNICA\",\r\n },\r\n {\r\n cod: \"A\",\r\n des: \"Sección.A\",\r\n },\r\n {\r\n cod: \"B\",\r\n des: \"Sección.B\",\r\n },\r\n {\r\n cod: \"C\",\r\n des: \"Sección.C\",\r\n },\r\n {\r\n cod: \"D\",\r\n des: \"Sección.D\",\r\n },\r\n {\r\n cod: \"E\",\r\n des: \"Sección.E\",\r\n },\r\n {\r\n cod: \"F\",\r\n des: \"Sección.F\",\r\n },\r\n {\r\n cod: \"G\",\r\n des: \"Sección.G\",\r\n },\r\n {\r\n cod: \"H\",\r\n des: \"Sección.H\",\r\n },\r\n {\r\n cod: \"I\",\r\n des: \"Sección.I\",\r\n },\r\n {\r\n cod: \"J\",\r\n des: \"Sección.J\",\r\n },\r\n {\r\n cod: \"K\",\r\n des: \"Sección.K\",\r\n },\r\n {\r\n cod: \"L\",\r\n des: \"Sección.L\",\r\n },\r\n {\r\n cod: \"LL\",\r\n des: \"Sección.LL\",\r\n },\r\n {\r\n cod: \"M\",\r\n des: \"Sección.M\",\r\n },\r\n {\r\n cod: \"N\",\r\n des: \"Sección.N\",\r\n },\r\n {\r\n cod: \"O\",\r\n des: \"Sección.O\",\r\n },\r\n {\r\n cod: \"P\",\r\n des: \"Sección.P\",\r\n },\r\n {\r\n cod: \"Q\",\r\n des: \"Sección.Q\",\r\n },\r\n {\r\n cod: \"R\",\r\n des: \"Sección.R\",\r\n },\r\n {\r\n cod: \"RR\",\r\n des: \"Sección.RR\",\r\n },\r\n {\r\n cod: \"S\",\r\n des: \"Sección.S\",\r\n },\r\n {\r\n cod: \"T\",\r\n des: \"Sección.T\",\r\n },\r\n {\r\n cod: \"U\",\r\n des: \"Sección.U\",\r\n },\r\n {\r\n cod: \"V\",\r\n des: \"Sección.V\",\r\n },\r\n {\r\n cod: \"W\",\r\n des: \"Sección.W\",\r\n },\r\n {\r\n cod: \"X\",\r\n des: \"Sección.X\",\r\n },\r\n {\r\n cod: \"Y\",\r\n des: \"Sección.Y\",\r\n },\r\n {\r\n cod: \"Z\",\r\n des: \"Sección.Z\",\r\n },\r\n {\r\n cod: \"A1\",\r\n des: \"Sección.A1\",\r\n },\r\n {\r\n cod: \"B1\",\r\n des: \"Sección.B1\",\r\n },\r\n]\r\n\r\nexport {\r\n niveles,\r\n grados_primaria,\r\n grados_secundaria,\r\n secciones,\r\n generos,\r\n}","import React from 'react'\r\nimport { withStyles, makeStyles } from '@material-ui/core/styles';\r\nimport { Table,\r\n TableBody,\r\n TableCell,\r\n TableContainer,\r\n TableHead,\r\n TableRow,\r\n Paper,\r\n IconButton,\r\n} from '@material-ui/core';\r\nimport DeleteIcon from '@material-ui/icons/Delete';\r\nimport EditIcon from '@material-ui/icons/Edit';\r\nimport RemoveRedEyeIcon from '@material-ui/icons/RemoveRedEye';\r\nimport { TextSnippet } from '../../icons/icons';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n table: {\r\n minWidth: 700,\r\n },\r\n}));\r\n\r\nconst StyledTableCell = withStyles((theme) => ({\r\n root: {\r\n padding: '0px',\r\n },\r\n head: {\r\n backgroundColor: theme.palette.table.bg_head,\r\n color: theme.palette.common.black,\r\n padding: '16px',\r\n },\r\n body: {\r\n fontSize: 14,\r\n },\r\n}))(TableCell);\r\n\r\nconst StyledTableRowGroup = withStyles((theme) => ({\r\n root: {\r\n backgroundColor: theme.palette.table.bg_group,\r\n },\r\n}))(TableRow);\r\n\r\nconst StyledTableRow = withStyles((theme) => ({\r\n root: {\r\n '&:nth-of-type(odd)': {\r\n backgroundColor: theme.palette.action.hover,\r\n },\r\n },\r\n}))(TableRow);\r\n\r\nconst StyledEyeIcon = withStyles((theme) => ({\r\n root: {\r\n color: theme.palette.warning.main,\r\n },\r\n}))(RemoveRedEyeIcon);\r\n\r\n\r\nconst StyledTextSnippet = withStyles((theme) => ({\r\n root: {\r\n color: theme.palette.success.main,\r\n },\r\n}))(TextSnippet);\r\n\r\nfunction createData(name, calories, fat, carbs, protein) {\r\n return { name, calories, fat, carbs, protein };\r\n}\r\n\r\nconst rows = [\r\n createData('Frozen yoghurt', 'PAULO CESAR RAVICHAHUA CACERES', '44254145', 'SECUNDARIA', '2do A'),\r\n createData('Ice cream sandwich', 'AMELIA AIDA ROJAS QUISPE', '41567195', 'PRIMARIA', '3ro C'),\r\n createData('Eclair', 'ROSA CECILIA RAVICHAHUA CACERES', '42856336', 'SECUNDARIA', 'ÚNICO'),\r\n];\r\n\r\nexport const ListadoEstudiantesScreen = () => {\r\n const classes = useStyles();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n ACCIONES\r\n NOMBRES\r\n DNI\r\n NIVEL\r\n AÑO\r\n \r\n \r\n \r\n \r\n \r\n

Grupo

\r\n
\r\n
\r\n {rows.map((row) => (\r\n \r\n {/* \r\n {row.name}\r\n */}\r\n \r\n \r\n \r\n \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.calories}\r\n {row.fat}\r\n {row.carbs}\r\n {row.protein}\r\n \r\n ))}\r\n
\r\n
\r\n
\r\n )\r\n}\r\n","import React from 'react'\r\nimport { SvgIcon } from '@material-ui/core'\r\n\r\nexport const TextSnippet = ( props ) => {\r\n return (\r\n \r\n \r\n \r\n )\r\n}\r\n","import { createMuiTheme } from '@material-ui/core/styles';\r\nimport blue from '@material-ui/core/colors/blue';\r\nimport red from '@material-ui/core/colors/red';\r\nimport grey from '@material-ui/core/colors/grey';\r\nimport { yellow, green } from '@material-ui/core/colors';\r\n\r\nexport const theme = createMuiTheme({\r\n palette: {\r\n primary: {\r\n main: red[900],\r\n bg_head: red[300],\r\n avatar: red[600],\r\n subAvatar: red[400],\r\n },\r\n secondary: {\r\n main: blue[700],\r\n bg_head: blue[100],\r\n avatar: blue[300],\r\n },\r\n warning: {\r\n main: yellow[700],\r\n },\r\n success: {\r\n main: green[400],\r\n },\r\n error: {\r\n main: red[400],\r\n },\r\n table: {\r\n bg_head: grey[400],\r\n bg_group: grey[200],\r\n },\r\n },\r\n // palette: {\r\n // primary: blue,\r\n // secondary: pink,\r\n // },\r\n});\r\n","import { makeStyles, withStyles } from '@material-ui/core/styles'\r\nimport MuiStepper from '@material-ui/core/Stepper'\r\n\r\nexport const useStyles = makeStyles((theme) => ({\r\n root: {\r\n width: '100%',\r\n },\r\n button: {\r\n marginTop: theme.spacing(1),\r\n marginRight: theme.spacing(1),\r\n },\r\n actionsContainer: {\r\n marginBottom: theme.spacing(2),\r\n },\r\n resetContainer: {\r\n padding: theme.spacing(3),\r\n },\r\n center_item: {\r\n margin: 'auto',\r\n },\r\n dividerInset: {\r\n margin: `5px 0 0 ${theme.spacing(9)}px`,\r\n },\r\n formControl: {\r\n margin: theme.spacing(0),\r\n minWidth: 200,\r\n },\r\n small: {\r\n width: theme.spacing(3),\r\n height: theme.spacing(3),\r\n color: theme.white,\r\n backgroundColor: theme.palette.primary.subAvatar,\r\n },\r\n smallText: {\r\n fontSize: 14,\r\n fontWeight: 100,\r\n },\r\n // stepperRoot: {\r\n // '& > *': {\r\n // padding: theme.spacing(0),\r\n // },\r\n // },\r\n}));\r\n\r\nexport const Stepper = withStyles((theme) => ({\r\n root: {\r\n padding: theme.spacing(0),\r\n },\r\n}))(MuiStepper);\r\n\r\n","import React from 'react'\r\nimport { Avatar, Typography } from '@material-ui/core'\r\n\r\nexport const AvatarControl = ( { clase, numero, sizeText } ) => {\r\n\r\n return (\r\n \r\n { numero }\r\n \r\n )\r\n}\r\n","import { makeStyles, withStyles } from '@material-ui/core/styles'\r\nimport MuiAccordion from '@material-ui/core/Accordion'\r\nimport MuiAccordionSummary from '@material-ui/core/AccordionSummary'\r\nimport MuiAccordionDetails from '@material-ui/core/AccordionDetails'\r\nimport { DropzoneArea } from 'material-ui-dropzone';\r\n\r\nexport const useStyles = makeStyles((theme) => ({\r\n root: {\r\n '& > *': {\r\n margin: theme.spacing(1),\r\n width: '100%',\r\n height: theme.spacing(16),\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n },\r\n smallAdjunto: {\r\n width: theme.spacing(3),\r\n height: theme.spacing(3),\r\n },\r\n largeBrowser: {\r\n width: theme.spacing(3),\r\n height: theme.spacing(3),\r\n color: theme.white,\r\n backgroundColor: theme.palette.primary.avatar,\r\n },\r\n largeMobile: {\r\n width: theme.spacing(3),\r\n height: theme.spacing(3),\r\n color: theme.white,\r\n backgroundColor: theme.palette.primary.avatar,\r\n },\r\n smallBrowser: {\r\n width: theme.spacing(3),\r\n height: theme.spacing(3),\r\n color: theme.white,\r\n backgroundColor: theme.palette.primary.subAvatar,\r\n },\r\n smallMobile: {\r\n width: theme.spacing(3),\r\n height: theme.spacing(3),\r\n color: theme.white,\r\n backgroundColor: theme.palette.primary.subAvatar,\r\n },\r\n textBrowser: {\r\n fontSize: '14px',\r\n },\r\n textMobile: {\r\n fontSize: '12px',\r\n },\r\n center_item: {\r\n // margin: 'auto',\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n align_items_middle: {\r\n display: 'flex',\r\n alignItems: 'center'\r\n },\r\n dividerInset: {\r\n margin: `5px 0 0 ${theme.spacing(9)}px`,\r\n },\r\n formControl: {\r\n margin: theme.spacing(0),\r\n minWidth: 250,\r\n },\r\n multiSelect: {\r\n margin: theme.spacing(0),\r\n minWidth: 250,\r\n },\r\n textField: {\r\n margin: theme.spacing(0),\r\n minWidth: 300,\r\n width: '100%',\r\n },\r\n pregDesc: {\r\n fontWeight: 'bold',\r\n fontSize: '16px',\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n pregNota: {\r\n fontWeight: '500',\r\n fontSize: '13px',\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n\r\n\r\n \r\n dropZone: {\r\n height: '100%',\r\n fullWidth: 'true',\r\n },\r\n previewContainer: {\r\n container: 'true',\r\n width: '100%',\r\n height: '100%',\r\n },\r\n preview: {\r\n //width: '100%',\r\n //height: '100%',\r\n //item: 'true',\r\n xs: '12',\r\n },\r\n previewImg: {\r\n //height: '100%',\r\n //width: '100%',\r\n },\r\n \r\n //Agregado\r\n inputStyle: {\r\n \"& .MuiInputBase-input\" :{\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n /*\"& .MuiInputBase-input:focus\" :{\r\n borderBottom: '2px solid #4285f4 !important',\r\n },*/\r\n \"& .MuiInput-underline:after\" :{\r\n borderBottom: '2px solid #4285f4 !important',\r\n },\r\n '& label': {\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n //Color del label con el foco\r\n '& label.Mui-focused': {\r\n color: '#4285f4',\r\n },\r\n '& error': {\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n \"& .MuiFormHelperText-root.Mui-error\":{\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n \"& .MuiFormHelperText-root\":{\r\n // fontFamily: 'HelveticaBold',\r\n }\r\n\r\n /*\"& .MuiInput-underline:after\":{\r\n BorderBottom: '2px solid #4285f4',\r\n }*/\r\n //borderBottom: '1px solid #4285f4 !important',\r\n },\r\n\r\n selectStyle: {\r\n // fontFamily: 'HelveticaBold',\r\n \"& .MuiInputBase-input\" :{\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n \"& .MuiInput-underline:after\" :{\r\n borderBottom: '2px solid #4285f4 !important',\r\n },\r\n //Color del label con el foco\r\n '& label.Mui-focused': {\r\n color: '#4285f4',\r\n },\r\n\r\n \"& .MuiFormHelperText-root.Mui-error\": {\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n },\r\n radioStyle: {\r\n // fontFamily: 'HelveticaBold',\r\n \"& .MuiTypography-body1\" :{\r\n // fontFamily: 'HelveticaBold',\r\n }\r\n },\r\n fontHelvetica: {\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n\r\n}));\r\n\r\n\r\nexport const DropzoneAreaCustom = withStyles({\r\n root: {\r\n minHeight: '180px',\r\n '& .MuiDropzoneArea-text': {\r\n fontSize: '1rem',\r\n marginTop: '10px',\r\n marginBottom: '10px',\r\n },\r\n '& .MuiDropzoneArea-icon': {\r\n color: '#d32f2f',\r\n width: '31px',\r\n height: '31px',\r\n },\r\n '& .MuiGrid-spacing-xs-8 > .MuiGrid-item': {\r\n padding: '20px 32px 10px 32px',\r\n },\r\n \r\n }\r\n})(DropzoneArea);\r\n\r\nexport const Accordion = withStyles({\r\n root: {\r\n border: '1px solid rgba(0, 0, 0, .125)',\r\n width: '100%',\r\n boxShadow: 'none',\r\n '&:not(:last-child)': {\r\n borderBottom: 0,\r\n },\r\n '&:before': {\r\n display: 'none',\r\n },\r\n '&$expanded': {\r\n margin: 'auto',\r\n },\r\n },\r\n expanded: {},\r\n})(MuiAccordion);\r\n\r\nexport const AccordionSummary = withStyles({\r\n root: {\r\n backgroundColor: '#eee',\r\n borderBottom: '1px solid #ddd',\r\n marginBottom: -1,\r\n minHeight: 46,\r\n '&$expanded': {\r\n minHeight: 46,\r\n },\r\n // fontFamily: \"HelveticaBold\",\r\n },\r\n content: {\r\n '&$expanded': {\r\n margin: '12px 0',\r\n },\r\n },\r\n /*fontFamily: 'HelveticaBold',\r\n \"& .MuiTypography-body1\" :{\r\n fontFamily: 'HelveticaBold',\r\n },*/\r\n expanded: {},\r\n})(MuiAccordionSummary);\r\n\r\nexport const AccordionDetails = withStyles((theme) => ({\r\n root: {\r\n padding: theme.spacing(2),\r\n // fontFamily: \"HelveticaBold\",\r\n },\r\n // fontFamily: 'HelveticaBold',\r\n\r\n}))(MuiAccordionDetails);\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport Button from '@material-ui/core/Button';\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport MuiDialogTitle from '@material-ui/core/DialogTitle';\r\nimport MuiDialogContent from '@material-ui/core/DialogContent';\r\nimport MuiDialogActions from '@material-ui/core/DialogActions';\r\nimport IconButton from '@material-ui/core/IconButton';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport Typography from '@material-ui/core/Typography';\r\n\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport ImageList from '@material-ui/core/ImageList';\r\nimport ImageListItem from '@material-ui/core/ImageListItem';\r\nimport ImageListItemBar from '@material-ui/core/ImageListItemBar';\r\nimport StarBorderIcon from '@material-ui/icons/StarBorder';\r\nimport InfoIcon from '@material-ui/icons/Info';\r\nimport { isBrowser } from \"react-device-detect\";\r\n\r\n\r\nconst styles = (theme) => ({\r\n root: {\r\n margin: 0,\r\n padding: theme.spacing(2),\r\n },\r\n closeButton: {\r\n position: 'absolute',\r\n right: theme.spacing(1),\r\n top: theme.spacing(1),\r\n color: theme.palette.grey[500],\r\n },\r\n});\r\n\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n display: 'flex',\r\n flexWrap: 'wrap',\r\n justifyContent: 'space-around',\r\n overflow: 'hidden',\r\n backgroundColor: theme.palette.background.paper,\r\n },\r\n imageList: {\r\n flexWrap: 'nowrap',\r\n transform: 'translateZ(0)',\r\n width: 300,\r\n height: 270,\r\n },\r\n imageListItem: {\r\n width: '300px !important',\r\n height: '250px !important'\r\n },\r\n imageListMobile: {\r\n flexWrap: 'nowrap',\r\n transform: 'translateZ(0)',\r\n width: 200,\r\n height: 250,\r\n },\r\n imageListItemMobile: {\r\n width: '200px !important',\r\n height: '230px !important'\r\n },\r\n icon: {\r\n color: 'rgba(255, 255, 255, 0.54)',\r\n },\r\n title: {\r\n color: theme.palette.primary.light,\r\n fontSize: '10px !important'\r\n },\r\n MuiImageListItemBar: {\r\n title: {\r\n fontSize: '0.75rem !important'\r\n }\r\n },\r\n titleBar: {\r\n background:\r\n 'linear-gradient(to top, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.3) 70%, rgba(0,0,0,0) 100%)',\r\n },\r\n}));\r\n\r\n\r\nconst DialogTitle = withStyles(styles)((props) => {\r\n const { children, classes, onClose, ...other } = props;\r\n return (\r\n \r\n {children}\r\n {onClose ? (\r\n \r\n \r\n \r\n ) : null}\r\n \r\n );\r\n});\r\n\r\nconst DialogContent = withStyles((theme) => ({\r\n root: {\r\n padding: theme.spacing(2),\r\n },\r\n}))(MuiDialogContent);\r\n\r\nconst DialogActions = withStyles((theme) => ({\r\n root: {\r\n margin: 0,\r\n padding: theme.spacing(1),\r\n },\r\n imageList: {\r\n width: 500,\r\n height: 450,\r\n },\r\n}))(MuiDialogActions);\r\n\r\n\r\n\r\nexport default function ImageDialog( { isDialogOpened, filtro, listaArchivos, handleCloseDialog, tipo } ) {\r\n const classes = useStyles();\r\n useEffect(() => {\r\n handleClickOpen();\r\n }, []);\r\n\r\n const handleClickOpen = () => {\r\n };\r\n\r\n const handleClose = () => {\r\n handleCloseDialog(false);\r\n };\r\n\r\n return (\r\n \r\n \r\n Referencia\r\n \r\n \r\n
\r\n \r\n { \r\n listaArchivos != undefined \r\n &&\r\n listaArchivos.map(\r\n (item) => (\r\n ( (tipo == 'pregunta' && item.ID_PREGUNTA == filtro.pregunta) || (tipo == 'respuesta' && item.ID_PREGUNTA == filtro.pregunta && item.ID_RESPUESTA == filtro.respuesta))\r\n &&\r\n \r\n {item.DESCRIPCION}\r\n {/* by: CGR}\r\n // actionIcon={\r\n // \r\n // \r\n // \r\n // }\r\n /> */}\r\n \r\n )\r\n )\r\n }\r\n \r\n
\r\n
\r\n {/* \r\n \r\n */}\r\n
\r\n );\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\n{/* \r\n {item.title}\r\n by: CGR}\r\n actionIcon={\r\n \r\n \r\n \r\n }\r\n />\r\n\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, { useState } from 'react'\r\nimport { FormControl, FormControlLabel, Radio, RadioGroup } from '@material-ui/core'\r\nimport { useStyles} from '../BrowserStyle'\r\nimport Chip from '@material-ui/core/Chip';\r\nimport AttachmentOutlinedIcon from '@material-ui/icons/AttachmentOutlined';\r\nimport InfoOutlinedIcon from '@material-ui/icons/InfoOutlined';\r\nimport ImageDialog from './DialogImage';\r\nimport Divider from '@material-ui/core/Divider';\r\nimport { isBrowser } from 'react-device-detect';\r\n\r\nexport const RadioGroupControl = ( { respuestas, archivos_respuesta, preg, handleChange } ) => {\r\n const classes = useStyles()\r\n const [isOpen, setIsOpen] = useState(false);\r\n const [filtro, setFiltro] = useState({ pregunta: 0, respuesta: 0 });\r\n\r\n const handleOpen = ( objeto ) => {\r\n setIsOpen(!isOpen);\r\n setFiltro(objeto);\r\n };\r\n\r\n return (\r\n <>\r\n \r\n {/* handleChange( e, preg.ID ) } className={ classes.radioStyle }>\r\n {\r\n respuestas.filter( rpta => rpta.ID_PREGUNTA === preg.ID )\r\n .map( rpta => (\r\n <>\r\n
\r\n } \r\n label={ rpta.DESCRIPCION } />\r\n {\r\n rpta.IND_IMAGEN != '0'\r\n &&\r\n }\r\n label=\"Imagen\"\r\n clickable\r\n color=\"primary\"\r\n variant=\"outlined\"\r\n size=\"small\"\r\n onClick={ () => handleOpen( { pregunta: preg.ID, respuesta: rpta.ID } ) }\r\n // onDelete={handleDelete}\r\n />\r\n }\r\n
\r\n {\r\n (!isBrowser)\r\n &&\r\n \r\n }\r\n \r\n ) )\r\n }\r\n
\r\n
\r\n\r\n setIsOpen(false)}\r\n tipo=\"respuesta\"\r\n />\r\n \r\n )\r\n}\r\n","import React, { useState } from 'react'\r\nimport { FormControl, FormControlLabel, FormGroup, Checkbox } from '@material-ui/core'\r\nimport { useStyles} from '../BrowserStyle'\r\nimport Chip from '@material-ui/core/Chip';\r\nimport AttachmentOutlinedIcon from '@material-ui/icons/AttachmentOutlined';\r\nimport InfoOutlinedIcon from '@material-ui/icons/InfoOutlined';\r\nimport ImageDialog from './DialogImage';\r\nimport { isBrowser } from 'react-device-detect';\r\nimport Divider from '@material-ui/core/Divider';\r\n\r\nexport function CheckboxGroupControl( { respuestas, archivos_respuesta, preg, handleChange } ) {\r\n const classes = useStyles()\r\n const selecciona = (rpta) => {\r\n let selected = false;\r\n preg.RESPUESTA.forEach(element => {\r\n if (element === rpta.toString() )\r\n selected = true;\r\n });\r\n return selected;\r\n }\r\n \r\n const [isOpen, setIsOpen] = useState(false);\r\n const [filtro, setFiltro] = useState({ pregunta: 0, respuesta: 0 });\r\n\r\n const handleOpen = ( objeto ) => {\r\n setIsOpen(!isOpen);\r\n setFiltro(objeto);\r\n };\r\n\r\n return (\r\n <>\r\n \r\n {/* */}\r\n \r\n {\r\n respuestas.filter( rpta => rpta.ID_PREGUNTA === preg.ID )\r\n .map( rpta => (\r\n <>\r\n
\r\n handleChange( e, preg.ID ) }\r\n color=\"primary\"\r\n />\r\n }\r\n label={ rpta.DESCRIPCION }\r\n />\r\n {\r\n rpta.IND_IMAGEN != '0'\r\n &&\r\n }\r\n label=\"Imagen\"\r\n clickable\r\n color=\"primary\"\r\n variant=\"outlined\"\r\n size=\"small\"\r\n onClick={ () => handleOpen( { pregunta: preg.ID, respuesta: rpta.ID } ) }\r\n // onDelete={handleDelete}\r\n />\r\n }\r\n
\r\n {\r\n (!isBrowser)\r\n &&\r\n \r\n }\r\n \r\n ) )\r\n }\r\n
\r\n
\r\n\r\n setIsOpen(false)}\r\n tipo=\"respuesta\"\r\n />\r\n \r\n )\r\n}\r\n","import React from 'react'\r\nimport { FormControl, Select, InputLabel, MenuItem } from '@material-ui/core'\r\n\r\nexport const SelectControl = ( { respuestas, preg, handleChange, classes } ) => {\r\n\r\n return (\r\n \r\n \r\n Respuesta\r\n \r\n handleChange( e, preg.ID ) } >\r\n {\r\n respuestas.filter( rpta => rpta.ID_PREGUNTA === preg.ID )\r\n .map( rpta => (\r\n { rpta.DESCRIPCION }\r\n ) )\r\n }\r\n \r\n \r\n\r\n )\r\n}\r\n","import React from 'react'\r\nimport { Button, TextField } from '@material-ui/core'\r\nimport { isBrowser } from 'react-device-detect'\r\n\r\nexport function TextboxControl( { preg, handleChange, classes } ) {\r\n\r\n console.log('TextboxControl')\r\n return (\r\n
\r\n
\r\n
\r\n handleChange( e, preg.ID ) }\r\n />\r\n
\r\n
\r\n
\r\n\r\n )\r\n}\r\n","import React from 'react'\r\nimport { FormControl, Select, InputLabel, MenuItem, Checkbox, ListItemText, Input } from '@material-ui/core'\r\n\r\nexport function ComboCheckboxControl( { respuestas, preg, handleChange, classes, MenuProps } ) {\r\n\r\n return (\r\n \r\n Respuesta\r\n }\r\n renderValue={ ( selected ) =>{ \r\n let arrDes = []\r\n selected.forEach(element => {\r\n arrDes.push( element.split('_')[2] )\r\n });\r\n return arrDes.join(', ')\r\n } }\r\n MenuProps={ MenuProps }\r\n >\r\n {\r\n respuestas.filter( rpta => rpta.ID_PREGUNTA === preg.ID )\r\n .map( rpta => (\r\n \r\n -1}\r\n color=\"primary\" />\r\n \r\n \r\n ) )\r\n }\r\n \r\n \r\n\r\n )\r\n}\r\n","import React, { useState } from 'react'\r\nimport {\r\n Timeline,\r\n TimelineItem,\r\n TimelineSeparator,\r\n TimelineDot,\r\n TimelineConnector,\r\n TimelineContent,\r\n} from '@material-ui/lab'\r\nimport { makeStyles, withStyles } from '@material-ui/core/styles';\r\nimport { theme } from '../../styles/setTheme';\r\nimport { Typography, Button, Step, StepLabel, StepContent, Paper, FormControl, RadioGroup, FormControlLabel, Radio, InputLabel, Select, Input, MenuItem, Checkbox, ListItemText, Divider } from '@material-ui/core';\r\n\r\nimport SimpleBarReact from \"simplebar-react\";\r\nimport 'simplebar/dist/simplebar.min.css';\r\nimport { useSelector } from 'react-redux';\r\nimport { useStyles,\r\n Stepper,\r\n} from './MobileStyle'\r\nimport { AvatarControl } from './controles/Avatar';\r\nimport { RadioGroupControl } from './controles/RadioGroup';\r\nimport { CheckboxGroupControl } from './controles/CheckboxGroup';\r\nimport { SelectControl } from './controles/Select';\r\nimport { TextboxControl } from './controles/Textbox';\r\nimport { ComboCheckboxControl } from './controles/ComboCheckbox';\r\nimport { DropzoneArea } from 'material-ui-dropzone';\r\n\r\n// const preguntas = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]\r\n\r\n// const useStyles = makeStyles((theme) => ({\r\n// timeline: {\r\n// padding: '6px 0px',\r\n// },\r\n// timelineItem: {\r\n// minHeight: '40px',\r\n// height: '40px'\r\n// }\r\n// }));\r\n\r\n\r\n// const TimelineDotCurrent = withStyles({\r\n// root: {\r\n// backgroundColor: theme.palette.primary.main,\r\n// },\r\n// })(TimelineDot);\r\n\r\n// const TimelineDotDone = withStyles({\r\n// root: {\r\n// borderColor: theme.palette.secondary.main,\r\n// },\r\n// })(TimelineDot);\r\n\r\n\r\nexport const MobileScreen = () => {\r\n const classes = useStyles();\r\n const { grupos, preguntas, respuestas } = useSelector( state => state.pregunta )\r\n\r\n function getSteps() {\r\n let arrPreguntas = []\r\n preguntas.filter( preg => preg.ID_PADRE === 0 )\r\n .map( preg => (\r\n arrPreguntas.push( preg.ID )\r\n ) )\r\n return arrPreguntas\r\n }\r\n // , preg.CODIGO\r\n\r\n const [activeStep, setActiveStep] = React.useState(0);\r\n const steps = getSteps();\r\n\r\n const handleNext = () => {\r\n setActiveStep((prevActiveStep) => prevActiveStep + 1);\r\n };\r\n\r\n const handleBack = () => {\r\n setActiveStep((prevActiveStep) => prevActiveStep - 1);\r\n };\r\n\r\n const handleReset = () => {\r\n setActiveStep(0);\r\n };\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n const [value, setValue] = useState(null);\r\n\r\n const handleChange = (event) => {\r\n console.log(event.target.value)\r\n setValue(event.target.value);\r\n };\r\n\r\n\r\n const ITEM_HEIGHT = 48;\r\n const ITEM_PADDING_TOP = 8;\r\n const MenuProps = {\r\n PaperProps: {\r\n style: {\r\n maxHeight: ITEM_HEIGHT * 4.5 + ITEM_PADDING_TOP,\r\n width: 300,\r\n },\r\n },\r\n }\r\n const [personName, setPersonName] = useState([])\r\n\r\n const handleChangeSelect = (event) => {\r\n setPersonName(event.target.value);\r\n }\r\n\r\n function getStepContent(step) {\r\n return preguntas.filter( preg => preg.ID === step )\r\n .map( preg => (\r\n ( preg.IND_PADRE === '0' )\r\n ?\r\n
\r\n
\r\n
\r\n
\r\n
\r\n { preg.DESCRIPCION }\r\n
\r\n
\r\n {\r\n // RADIOBUTTON\r\n ( preg.TIPO_RPTA_COD === 1 )\r\n &&\r\n <>\r\n \r\n \r\n }\r\n {\r\n // CHECKBOX\r\n ( preg.TIPO_RPTA_COD === 2 )\r\n &&\r\n \r\n }\r\n {\r\n // SELECT\r\n ( preg.TIPO_RPTA_COD === 3 )\r\n &&\r\n \r\n }\r\n {\r\n // TEXTBOX\r\n ( preg.TIPO_RPTA_COD === 4 )\r\n &&\r\n \r\n }\r\n {\r\n // COMBOCHECKBOX\r\n ( preg.TIPO_RPTA_COD === 5 || preg.TIPO_RPTA_COD === 6 )\r\n &&\r\n \r\n }\r\n
\r\n
\r\n
\r\n
\r\n
\r\n :\r\n
\r\n
\r\n
\r\n
\r\n { preg.DESCRIPCION }\r\n
\r\n
\r\n \r\n
\r\n
\r\n {\r\n preguntas.filter( hijo => hijo.ID_PADRE === preg.ID )\r\n .map( (hijo, index) => (\r\n <>\r\n
\r\n \r\n
\r\n
\r\n
\r\n { hijo.DESCRIPCION }\r\n
\r\n
\r\n {\r\n // RADIOBUTTON\r\n ( hijo.TIPO_RPTA_COD === 1 )\r\n &&\r\n \r\n }\r\n {\r\n // CHECKBOX\r\n ( hijo.TIPO_RPTA_COD === 2 )\r\n &&\r\n \r\n }\r\n
\r\n
\r\n {\r\n ( index < preguntas.filter( hijo => hijo.ID_PADRE === preg.ID ).length - 1 )\r\n &&\r\n
\r\n \r\n
\r\n }\r\n \r\n ) )\r\n }\r\n
\r\n
\r\n
\r\n
\r\n ) )\r\n }\r\n\r\n return (\r\n \r\n\r\n
\r\n \r\n { steps.map( label => (\r\n \r\n \r\n \r\n { getStepContent(label) }\r\n
\r\n
\r\n \r\n Atrás\r\n \r\n \r\n {activeStep === steps.length - 1 ? 'Finalizar' : 'Siguiente'}\r\n \r\n
\r\n
\r\n
\r\n
\r\n ))}\r\n
\r\n {activeStep === steps.length && (\r\n \r\n All steps completed - you're finished\r\n \r\n \r\n )}\r\n
\r\n\r\n
\r\n //
\r\n //
\r\n // \r\n // \r\n // \r\n // \r\n // \r\n // \r\n // 1\r\n // \r\n // \r\n // \r\n // \r\n // \r\n // \r\n // 2\r\n // \r\n // \r\n // \r\n // \r\n // \r\n // \r\n // 3\r\n // \r\n // \r\n // \r\n // \r\n // \r\n // 4\r\n // \r\n // \r\n\r\n //
\r\n //
\r\n //
\r\n //
\r\n )\r\n}\r\n","export const preguntaTypes = {\r\n PREGUNTA_GET_START: '[Pregunta] GET_START',\r\n PREGUNTA_GET_COMPLETE: '[Pregunta] GET_COMPLETE',\r\n PREGUNTA_GET_ERROR: '[Pregunta] GET_ERROR',\r\n PREGUNTA_SET_COMPLETE: '[Pregunta] SET_COMPLETE',\r\n PREGUNTA_SET_HABILITADO: '[Pregunta] SET_HABILITADO',\r\n PREGUNTA_SET_UPLOAD: '[Pregunta] SET_UPLOAD'\r\n}","import { preguntaTypes } from '../../types/preguntaTypes'\r\n\r\nexport const getPreguntas = ( payload ) => ({\r\n type: preguntaTypes.PREGUNTA_GET_START,\r\n payload\r\n})\r\n\r\nexport const setComplete = ( payload ) => ({\r\n type: preguntaTypes.PREGUNTA_SET_COMPLETE,\r\n payload\r\n})\r\n\r\nexport const setHabilitado = ( payload ) => ({\r\n type: preguntaTypes.PREGUNTA_SET_HABILITADO,\r\n payload\r\n})\r\n\r\nexport const setUpload = ( payload ) => ({\r\n type: preguntaTypes.PREGUNTA_SET_UPLOAD,\r\n payload\r\n})\r\n\r\nexport const setFormatoSelected = ( payload ) => ({\r\n type: preguntaTypes.PREGUNTA_SET_FORMATO_SELECTED,\r\n payload\r\n})\r\n\r\n\r\n","export const estudianteTypes = {\r\n ESTUDIANTE_SAVE_START: '[Estudiante] SAVE_START',\r\n ESTUDIANTE_SAVE_COMPLETE: '[Estudiante] SAVE_COMPLETE',\r\n ESTUDIANTE_SAVE_ERROR: '[Estudiante] SAVE_ERROR',\r\n ESTUDIANTE_VALIDATED: '[Estudiante] VALIDATED',\r\n ESTUDIANTE_SET_OBSERVACION: '[Estudiante] SET_OBSERVACION',\r\n ESTUDIANTE_GET_FORMATOS: '[Estudiante] GET_FORMATOS',\r\n ESTUDIANTE_UPDATED: '[Estudiante] UPDATE' \r\n}","import { estudianteTypes } from \"../../types/estudianteTypes\"\r\n\r\nexport const valida_DNI = ( payload ) => ({\r\n type: estudianteTypes.ESTUDIANTE_SAVE_START,\r\n payload\r\n})\r\n\r\nexport const resetValidacion = ( payload = [] ) => ({\r\n type: estudianteTypes.ESTUDIANTE_VALIDATED,\r\n payload\r\n})\r\n\r\nexport const setExisteObservacion = ( payload ) => ({\r\n type: estudianteTypes.ESTUDIANTE_SET_OBSERVACION,\r\n payload\r\n})\r\n\r\nexport const obtiene_formatos = ( payload ) => ({\r\n type: estudianteTypes.ESTUDIANTE_GET_FORMATOS,\r\n payload\r\n})\r\n\r\nexport const valida_Beneficiario = ( payload ) => ({\r\n type: estudianteTypes.ESTUDIANTE_SAVE_START,\r\n payload\r\n})\r\n\r\nexport const updateDato = ( payload ) => ({\r\n type: estudianteTypes.ESTUDIANTE_UPDATED,\r\n payload\r\n})\r\n","import React from 'react'\r\nimport Fab from '@material-ui/core/Fab';\r\nimport NotInterestedIcon from '@material-ui/icons/NotInterested';\r\n\r\nexport const DisabledControl = () => {\r\n return (\r\n \r\n Deshabilitado\r\n \r\n )\r\n}\r\n","import React, { useState } from 'react'\r\nimport { TextField } from '@material-ui/core'\r\nimport { isBrowser } from 'react-device-detect';\r\n\r\nexport const LocationControl = ( { preg, handleGuardarCoordenada, handleReferencia, classes } ) => {\r\n\r\n const [referencia_mapa, setDireccion] = React.useState('');\r\n const [referencia_direccion, setReferencia] = React.useState('');\r\n const [inputReferencias, setInputReferencias] = useState([\r\n { id: 0, coordenada: { lat: 0, lng: 0 } , latitud: 0, longitud: 0, direccion: '', referencia: '' },\r\n ]);\r\n\r\n const handleGuardarReferencia = (e) => {\r\n inputReferencias[0].referencia = e.target.value;\r\n setReferencia(e.target.value);\r\n handleReferencia( e, preg.ID, inputReferencias );\r\n };\r\n\r\n return (\r\n
\r\n
\r\n
\r\n handleGuardarReferencia( e ) }\r\n />\r\n
\r\n
\r\n
\r\n )\r\n}\r\n\r\n\r\n\r\n// import React, { useState } from 'react'\r\n// import { Button, TextField } from '@material-ui/core'\r\n// import { MapControl } from './Map';\r\n// import { isBrowser } from 'react-device-detect';\r\n// import { useSelector } from 'react-redux';\r\n\r\n// export const LocationControl = ( { preg, handleGuardarCoordenada, handleReferencia, classes } ) => {\r\n\r\n// const [openMap, setOpenMap] = React.useState(false);\r\n// const [ubicacion, setUbicacion] = React.useState({ 'lat': 0, 'lng': 0 });\r\n// const [referencia_mapa, setDireccion] = React.useState('');\r\n// const [referencia_direccion, setReferencia] = React.useState('');\r\n// const [inputReferencias, setInputReferencias] = useState([\r\n// { id: 0, coordenada: { lat: 0, lng: 0 } , latitud: 0, longitud: 0, direccion: '', referencia: '' },\r\n// ]);\r\n \r\n// let { ubicacion_ie, ubicacion_user } = useSelector( state => state.coordenadas )\r\n\r\n// const handleClickOpenMap = () => {\r\n// setOpenMap(true);\r\n// };\r\n\r\n// const handleCloseMap = () => {\r\n// setOpenMap(false);\r\n// };\r\n\r\n// const handleGuardarPoint = (e, coor, direccion) => {\r\n// setUbicacion(coor);\r\n// setDireccion(direccion);\r\n// setOpenMap(false);\r\n// setInputReferencias([{ id: preg.ID, coordenada: coor , latitud: coor.lat, longitud: coor.lng, direccion: direccion, referencia: '' }]);\r\n// handleGuardarCoordenada( e, preg.ID, inputReferencias );\r\n// };\r\n \r\n// const handleGuardarReferencia = (e) => {\r\n// inputReferencias[0].referencia = e.target.value;\r\n// setReferencia(e.target.value);\r\n// handleReferencia( e, preg.ID, inputReferencias );\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// handleGuardarReferencia( e ) }\r\n// />\r\n//
\r\n//
\r\n//
\r\n// )\r\n// }\r\n","//const urlBase = 'http://localhost:63562/api/restful/'\r\nconst urlBase = 'ttps://apps1.contraloria.gob.pe/veeduriasaju/back/api/restful/'\r\n//const urlBase = 'https://apptest27.contraloria.gob.pe/servicioveeduria/api/restful/'\r\n\r\n\r\nconst NEXT_PUBLIC_GOOGLE_MAPS_API_KEY = \"AIzaSyAi9kcw5WqrKHwu5MkMTEZZl-iSjoqvy-0\"\r\n// const NEXT_PUBLIC_GOOGLE_MAPS_API_KEY = \"AIzaSyDv_FqlYAibf3K_BSO4-7e9lGlWll4CHys\"\r\nconst generate_token_url = urlBase + 'padre-familia/generate-token'\r\nconst valida_dni_url = urlBase + 'padre-familia/valida-dni'\r\nconst valida_dni_private_url = urlBase + 'padre-familia/valida-dni-private'\r\nconst get_veeduria_padre_url = urlBase + 'padre-familia/get-veeduria-padre'\r\nconst genera_captcha_url = urlBase + 'captcha/genera-captcha'\r\nconst region_get_url = urlBase + 'region/region-get-all'\r\nconst provincia_get_url = urlBase + 'provincia/provincia-get-all-by-region'\r\nconst distrito_get_url = urlBase + 'distrito/distrito-get-all-by-provincia'\r\nconst institucion_get_url = urlBase + 'inst-edu/inst-edu-get-all-by-ubigeo'\r\nconst pregunta_url = urlBase + 'pregunta/pregunta-get-all'\r\nconst veeduria_url = urlBase + 'veeduria/veeduria-insert-all'\r\nconst valida_existe_dni_url = urlBase + 'estudiante/valida-dni'\r\nconst obtiene_formatos_url = urlBase + 'inst-edu/obtiene-formatos'\r\nconst formato_get_url = urlBase + 'formato/formato-get-all'\r\nconst formato_get_by_nombre_url = urlBase + 'formato/formato-get-by-nombre'\r\nconst parametro_get_url = urlBase + 'parametro/parametro-get-all'\r\nconst municipalidad_get_url = urlBase + 'municipalidad/municipalidad-get-all-by-ubigeo'\r\nconst valida_beneficiario_url = urlBase + 'estudiante/valida-beneficiario'\r\nconst download_pdf_url = urlBase + 'veeduria/download-pdf'\r\n\r\n\r\nexport {\r\n generate_token_url,\r\n valida_dni_url,\r\n valida_dni_private_url,\r\n get_veeduria_padre_url,\r\n genera_captcha_url,\r\n region_get_url,\r\n provincia_get_url,\r\n distrito_get_url,\r\n institucion_get_url,\r\n pregunta_url,\r\n veeduria_url,\r\n valida_existe_dni_url,\r\n obtiene_formatos_url,\r\n formato_get_url,\r\n formato_get_by_nombre_url,\r\n parametro_get_url,\r\n municipalidad_get_url,\r\n valida_beneficiario_url,\r\n NEXT_PUBLIC_GOOGLE_MAPS_API_KEY,\r\n download_pdf_url\r\n}\r\n\r\n\r\n","import React, { useCallback, useMemo, useEffect, useRef, useState } from 'react';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport Button from '@material-ui/core/Button';\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport AppBar from '@material-ui/core/AppBar';\r\nimport Toolbar from '@material-ui/core/Toolbar';\r\nimport IconButton from '@material-ui/core/IconButton';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport Slide from '@material-ui/core/Slide';\r\n\r\nimport {\r\n GoogleMap,\r\n Marker,\r\n Data,\r\n LoadScript,\r\n LoadScriptNext\r\n} from \"@react-google-maps/api\";\r\nimport { NEXT_PUBLIC_GOOGLE_MAPS_API_KEY } from '../../../helpers/urlBase';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n appBar: {\r\n position: 'relative',\r\n backgroundColor: \"#ffffff\",\r\n color: \"#000000\",\r\n fontFamily: 'HelveticaNeueLT Std Cn'\r\n },\r\n title: {\r\n marginLeft: theme.spacing(2),\r\n flex: 1,\r\n },\r\n}));\r\n\r\n\r\nconst Transition = React.forwardRef(function Transition(props, ref) {\r\n return ;\r\n});\r\n\r\nlet posicion = { 'lat': 0, 'lng': 0 };\r\nlet direccion_seleccionada = '';\r\n\r\n\r\nexport const MapControl = ( { open, handleClose, handleGuardar, latitud_ie, longitud_ie, latitud_user, longitud_user, coordenadas, id = 0 } ) => {\r\n const classes = useStyles();\r\n const google = window.google;\r\n\r\n // const coord_ie = useMemo( () => ( { lat: parseFloat(latitud_ie), lng: parseFloat(longitud_ie) } ), [] );\r\n const coord_ie = { lat: parseFloat(latitud_ie), lng: parseFloat(longitud_ie) };\r\n const coord_user = { lat: parseFloat(latitud_user), lng: parseFloat(longitud_user) };\r\n let center = { lat: parseFloat(latitud_ie), lng: parseFloat(longitud_ie) };\r\n \r\n \r\n // const options = useMemo( () => ( {\r\n // mapId: \"2684c20afdb728e7\",\r\n // isMarkerShown: true,\r\n // // disableDefaultUI: false,\r\n // // clickableIcons: false\r\n // } ), [] );\r\n const options = {\r\n mapId: \"2684c20afdb728e7\",\r\n isMarkerShown: true,\r\n // disableDefaultUI: false,\r\n // clickableIcons: false\r\n };\r\n\r\n if (coordenadas.lat != 0)\r\n {\r\n center = coordenadas;\r\n }\r\n else if (latitud_user != null && latitud_user != 0)\r\n {\r\n center.lat = latitud_user;\r\n center.lng = longitud_user;\r\n }\r\n \r\n const [map, setMap] = useState(null);\r\n const onMapLoad = useCallback((map) => {\r\n setMap(map)\r\n }, [])\r\n\r\n\r\n const dataOptions = useMemo(() => {\r\n return map !== null\r\n ? \r\n {\r\n map,\r\n controlPosition: google.maps.ControlPosition.TOP_LEFT,\r\n controls: ['Point'],\r\n drawingMode: 'Point', // \"LineString\" or \"Polygon\".\r\n featureFactory: (geometry) => {\r\n const latitud = geometry.g.lat();\r\n const longitud = geometry.g.lng();\r\n posicion = { 'lat': latitud, 'lng': longitud }\r\n\r\n\r\n\r\n fetch(`https://nominatim.openstreetmap.org/reverse?format=jsonv2&lat=${latitud}&lon=${longitud}`)\r\n .then(async response => {\r\n const isJson = response.headers.get('content-type')?.includes('application/json');\r\n const data = isJson && await response.json();\r\n \r\n if (!response.ok) {\r\n const error = (data && data.message) || response.status;\r\n return Promise.reject(error);\r\n }\r\n\r\n console.log(data.display_name);\r\n direccion_seleccionada = data.display_name;\r\n\r\n \r\n })\r\n .catch(error => {\r\n console.log(\"Error de buscar dirección por coordenadas: \" + error)\r\n });\r\n\r\n\r\n // new google.maps.Geocoder().geocode({ location: posicion }).then((response) => {\r\n // let direccion = '';\r\n // response.results.forEach(x => {\r\n // if (x.types.includes('street_address'))\r\n // direccion = x.formatted_address;\r\n // });\r\n // if (direccion == '')\r\n // response.results.forEach(x => {\r\n // if (x.types.includes('political') && x.types.includes('sublocality') && x.types.includes('sublocality_level_1'))\r\n // direccion = x.formatted_address;\r\n // });\r\n // if (direccion == '')\r\n // response.results.forEach(x => {\r\n // if (x.types.includes('political') && x.types.includes('sublocality') && x.types.includes('sublocality_level_2'))\r\n // direccion = x.formatted_address;\r\n // });\r\n\r\n // let region = '';\r\n // let provincia = '';\r\n // let distrito = '';\r\n // response.results.forEach(x => {\r\n // if ( x.types.includes('administrative_area_level_1') && x.types.includes('political') )\r\n // region = x.formatted_address.split(\",\")[0];\r\n // if ( x.types.includes('administrative_area_level_2') && x.types.includes('political') )\r\n // provincia = x.formatted_address.split(\",\")[0];\r\n // if ( x.types.includes('administrative_area_level_3') && x.types.includes('political') )\r\n // distrito = x.formatted_address.split(\",\")[0];\r\n // });\r\n\r\n // let locality = '';\r\n // if (direccion == '') {\r\n // response.results.forEach(x => {\r\n // if (x.types.includes('route'))\r\n // direccion = x.formatted_address;\r\n // if (x.types.includes('political') && x.types.includes('locality') && x.types.length == 2)\r\n // locality = x.formatted_address;\r\n // });\r\n \r\n // if (direccion == '')\r\n // {\r\n // response.results.forEach(x => {\r\n // if (x.types.includes('postal_code'))\r\n // direccion = x.formatted_address;\r\n // });\r\n // direccion += ( locality != '' ? ' (' + locality + ')' : (' | ' + region + '-' + provincia + '-' + distrito) );\r\n // }\r\n // else {\r\n // direccion += (locality != '' ? ' (' + locality + ')' : (' | ' + region + '-' + provincia + '-' + distrito) );\r\n // }\r\n\r\n // }\r\n // else {\r\n // direccion += ' | ' + region + '-' + provincia + '-' + distrito;\r\n // }\r\n\r\n // console.log(direccion);\r\n // direccion_seleccionada = direccion;\r\n\r\n // }).catch((e) => console.log(\"Error de buscar dirección por coordenadas: \" + e));\r\n\r\n\r\n return new google.maps.Data.Feature({\r\n id: '1',\r\n geometry\r\n })\r\n\r\n }\r\n }\r\n : \r\n null\r\n }, [map])\r\n\r\n\r\n const onClick = (...args) => {\r\n console.log( 'onClick args: ', args[0].latLng.lat(), ' : ', args[0].latLng.lng() )\r\n }\r\n\r\n const onDataLoad = (data) => {\r\n console.log('data: ', data)\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 Seleccione la ubicación\r\n \r\n {/* \r\n {direccion_seleccionada}\r\n */}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n {/* */}\r\n \r\n \r\n {\r\n (latitud_user != null && latitud_user != 0)\r\n &&\r\n \r\n }\r\n \r\n {\r\n coordenadas.lat != 0 &&\r\n \r\n }\r\n {\r\n dataOptions !== null &&\r\n \r\n }\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\n\r\n{/* */}\r\n\r\n\r\n // if (navigator.geolocation) \r\n // {\r\n // navigator.geolocation.watchPosition((position) => {\r\n // debugger;\r\n // setUserPosition({\r\n // latitude: position.coords.latitude,\r\n // longitude: position.coords.longitude,\r\n // });\r\n // });\r\n // }\r\n\r\n\r\n","import React from 'react'\r\nimport { Snackbar, withStyles, makeStyles } from '@material-ui/core'\r\nimport { Alert, AlertTitle } from '@material-ui/lab'\r\nimport { theme } from '../styles/setTheme';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n err: {\r\n backgroundColor: theme.palette.success.main,\r\n color: '#fff',\r\n },\r\n}));\r\n\r\n\r\nconst SuccessAlert = withStyles({\r\n root: {\r\n backgroundColor: theme.palette.success.main,\r\n color: '#fff',\r\n },\r\n icon: {\r\n backgroundColor: theme.palette.success.main,\r\n color: '#fff',\r\n },\r\n})(Alert);\r\n\r\nconst ErrorAlert = withStyles({\r\n root: {\r\n backgroundColor: theme.palette.error.main,\r\n color: '#fff',\r\n },\r\n icon: {\r\n backgroundColor: theme.palette.error.main,\r\n color: '#fff',\r\n },\r\n})(Alert);\r\n\r\nexport const Alerta = ( { state, handleClose } ) => {\r\n \r\nconst classes = useStyles();\r\n const { vertical, horizontal, open, message, severity } = state\r\n return (\r\n \r\n {/* {\r\n ( severity === 'error' )\r\n ? \r\n \r\n Error\r\n { message }\r\n \r\n :\r\n \r\n Éxito\r\n { message }\r\n \r\n } */}\r\n {\r\n ( severity === 'error' )\r\n &&\r\n \r\n Alerta!\r\n { message }\r\n \r\n }\r\n {/* \r\n Alerta!\r\n { message }\r\n */}\r\n \r\n \r\n\r\n\r\n // \r\n )\r\n}\r\n","import React, { useState } from 'react'\r\nimport { Typography, Divider } from '@material-ui/core'\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { useStyles, \r\n Accordion, \r\n AccordionSummary,\r\n AccordionDetails, DropzoneAreaCustom\r\n} from './BrowserStyle'\r\nimport SimpleBarReact from \"simplebar-react\";\r\nimport 'simplebar/dist/simplebar.min.css';\r\nimport { setComplete, setHabilitado, setUpload } from '../../redux/actions/preguntaActions';\r\nimport { setExisteObservacion } from '../../redux/actions/estudianteActions';\r\nimport { DisabledControl } from './controles/Disabled';\r\nimport { RadioGroupControl } from './controles/RadioGroup';\r\nimport { CheckboxGroupControl } from './controles/CheckboxGroup';\r\nimport { SelectControl } from './controles/Select';\r\nimport { TextboxControl } from './controles/Textbox';\r\nimport { ComboCheckboxControl } from './controles/ComboCheckbox';\r\nimport { AvatarControl } from './controles/Avatar';\r\nimport { isBrowser } from \"react-device-detect\";\r\nimport { DropzoneArea } from 'material-ui-dropzone';\r\nimport AttachmentOutlinedIcon from '@material-ui/icons/AttachmentOutlined';\r\nimport InfoOutlinedIcon from '@material-ui/icons/InfoOutlined';\r\nimport Chip from '@material-ui/core/Chip';\r\nimport ImageDialog from './controles/DialogImage';\r\nimport { LocationControl } from './controles/Location';\r\nimport { LocationsControl } from './controles/Locations';\r\nimport { Alert } from '@material-ui/lab';\r\nimport { FlashOnRounded } from '@material-ui/icons';\r\n\r\nexport const BrowserScreen = () => {\r\n const classes = useStyles()\r\n const dispatch = useDispatch()\r\n\r\n let { grupos, preguntas, respuestas, dependencias, excluyentes, archivos_pregunta, archivos_respuesta } = useSelector( state => state.pregunta )\r\n const [value, setValue] = useState(null);\r\n const informacion_basica = useSelector( state => state.informacion_basica )\r\n\r\n let habilita = 0;\r\n let listaDependencias = [];\r\n let listaRespuestas = [];\r\n let listaExcluyentes = [];\r\n let habilitarPreguntas = [];\r\n let RptasPreguntaSelected = [];\r\n \r\n\r\n\r\n \r\n const estudiante = useSelector( state => state.estudiante )\r\n const instituciones = useSelector( state => state.instituciones )\r\n const veeduria = useSelector( state => state.veeduria )\r\n\r\n\r\n\r\n\r\n\r\n const handleChange = (event, preguntaId, coordenadas = []) => {\r\n let cantRespuestasVacias = 0;\r\n let cantArchivosVacios = 0;\r\n let idRespuesta = '';\r\n\r\n preguntas.forEach(preg => {\r\n if ( preg.ID === preguntaId )\r\n {\r\n switch (preg.TIPO_RPTA_COD) {\r\n case 1:\r\n case 3:\r\n // RADIOBUTTON\r\n // SELECT\r\n // setValue({ ...value, [event.target.value]: event.target.value });\r\n idRespuesta = event.target.value.split('_')[1]\r\n\r\n preg.RESPUESTA = []\r\n preg.RESPUESTA.push( idRespuesta )\r\n\r\n showUpload(preg, idRespuesta, true, 'radio')\r\n setDependencias( preg, idRespuesta )\r\n break;\r\n\r\n case 2:\r\n // CHECKBOX\r\n // setValue({ ...value, [event.target.name]: event.target.value });\r\n // alert(preg.ID);\r\n setValue({ ...value, [event.target.name]: event.target.name });\r\n \r\n idRespuesta = event.target.name.split('_')[1]\r\n\r\n if ( event.target.checked )\r\n {\r\n setExcluyentes( preg, idRespuesta );\r\n preg.RESPUESTA.push( idRespuesta )\r\n /* alert(10);\r\n \r\n\r\n switch ( idRespuesta ) {\r\n case 2398:\r\n\r\n alert(idRespuesta);\r\n\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '844' ); // Pregunta 6\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n\r\n break;\r\n\r\n }\r\n\r\n*/\r\n }\r\n else {\r\n preg.RESPUESTA = preg.RESPUESTA.filter( id => id !== idRespuesta )\r\n // alert(0);\r\n // alert(idRespuesta);\r\n }\r\n\r\n showUpload( preg, idRespuesta, event.target.checked, 'check' )\r\n setDependencias( preg, idRespuesta, event.target.checked, 'check' )\r\n break;\r\n\r\n case 4:\r\n case 7:\r\n // TEXTBOX\r\n setValue({ ...value, [event.target.name]: event.target.value });\r\n \r\n preg.RESPUESTA = []\r\n if (event.target.value != '')\r\n preg.RESPUESTA.push( event.target.value )\r\n\r\n idRespuesta = respuestas.filter(e => e.ID_PREGUNTA === preg.ID).length;\r\n\r\n if (idRespuesta != 0)\r\n idRespuesta = respuestas.filter(e => e.ID_PREGUNTA === preg.ID)[0].ID.toString();\r\n\r\n showUpload( preg, idRespuesta, (event.target.value.toString().trim() == '' ? false : true), 'textbox' )\r\n break;\r\n\r\n case 5:\r\n case 6:\r\n // COMBOCHECKBOX\r\n setValue({ ...value, [event.target.value]: event.target.value });\r\n // let values = []\r\n // event.target.value.forEach(element => {\r\n // values.push( element.split('_')[1] )\r\n // });\r\n preg.RESPUESTA = event.target.value\r\n\r\n // setDependencias(preg, event.target.value.split('_')[1]);\r\n break;\r\n\r\n case 8:\r\n case 9:\r\n // LOCATION\r\n preg.RESPUESTA.push({coordenada: 'coordenada'})\r\n console.log('coordenadas:::', coordenadas)\r\n preg.COORDENADAS = coordenadas\r\n break;\r\n \r\n default:\r\n break;\r\n }\r\n }\r\n\r\n if (preg.RESPUESTA.length === 0 && preg.IND_PADRE.toString() === '0' && preg.HABILITADO)\r\n {\r\n cantRespuestasVacias++;\r\n }\r\n\r\n if (preg.ARCHIVO.length === 0 && preg.OBLIGATORIO_ARCHIVO === '1' && preg.UPLOAD)\r\n {\r\n cantArchivosVacios++;\r\n }\r\n });\r\n\r\n existeObservacion()\r\n dispatch( setComplete( { isComplete: ( cantRespuestasVacias === 0 && cantArchivosVacios === 0 ) } ) )\r\n };\r\n \r\n // const handleReferenciaChange = (event, preguntaId, coordenadas = []) => {\r\n // console.log('event:::', coordenadas)\r\n // let cantRespuestasVacias = 0;\r\n // let cantArchivosVacios = 0;\r\n // let idRespuesta = '';\r\n \r\n // console.log('event:::', event.target.value)\r\n // if (coordenadas.length > 0)\r\n // console.log('coordenadas:::', coordenadas.id)\r\n // preguntas.forEach(preg => {\r\n // if ( preg.ID === preguntaId )\r\n // {\r\n // // TEXTBOX\r\n // setValue({ ...value, [event.target.name]: event.target.value });\r\n \r\n // preg.RESPUESTA = []\r\n // if (event.target.value != '')\r\n // preg.RESPUESTA.push( event.target.value )\r\n\r\n // idRespuesta = respuestas.filter(e => e.ID_PREGUNTA === preg.ID).length;\r\n\r\n // if (idRespuesta != 0)\r\n // idRespuesta = respuestas.filter(e => e.ID_PREGUNTA === preg.ID)[0].ID.toString();\r\n\r\n // showUpload( preg, idRespuesta, (event.target.value.toString().trim() == '' ? false : true), 'textbox' )\r\n // }\r\n\r\n // if (preg.RESPUESTA.length === 0 && preg.IND_PADRE.toString() === '0' && preg.HABILITADO)\r\n // {\r\n // cantRespuestasVacias++;\r\n // }\r\n\r\n // if (preg.ARCHIVO.length === 0 && preg.OBLIGATORIO_ARCHIVO === '1' && preg.UPLOAD)\r\n // {\r\n // cantArchivosVacios++;\r\n // }\r\n // });\r\n\r\n // existeObservacion()\r\n // dispatch( setComplete( { isComplete: ( cantRespuestasVacias === 0 && cantArchivosVacios === 0 ) } ) )\r\n // };\r\n\r\n const setArchivo = (files, preguntaId) => {\r\n preguntas.forEach(preg => {\r\n if ( preg.ID === preguntaId )\r\n {\r\n preg.ARCHIVO = []\r\n files.forEach(file => {\r\n getBase64(preg, file);\r\n });\r\n }\r\n });\r\n\r\n };\r\n\r\n const getBase64 = ( pregunta, file ) => {\r\n var reader = new FileReader();\r\n reader.readAsDataURL(file);\r\n reader.onload = function () {\r\n pregunta.ARCHIVO.push( {\r\n NOMBRE: file.name,\r\n BASE64: reader.result,\r\n EXTENSION: file.type,\r\n } );\r\n\r\n let cantRespuestasVacias = 0;\r\n let cantArchivosVacios = 0;\r\n \r\n preguntas.forEach(preg => {\r\n if (preg.RESPUESTA.length === 0 && preg.IND_PADRE.toString() === '0' && preg.HABILITADO)\r\n {\r\n cantRespuestasVacias++;\r\n }\r\n if (preg.ARCHIVO.length === 0 && preg.OBLIGATORIO_ARCHIVO === '1' && preg.UPLOAD)\r\n {\r\n cantArchivosVacios++;\r\n }\r\n });\r\n\r\n dispatch( setComplete({ isComplete: (cantRespuestasVacias === 0 && cantArchivosVacios === 0) }) );\r\n\r\n };\r\n reader.onerror = function (error) {\r\n console.log('Error: ', error);\r\n };\r\n }\r\n\r\n const showUpload = (preg, valor, selected = true, tipoControl) => {\r\n if (valor !== undefined) {\r\n listaRespuestas = respuestas.filter(e => e.ID_PREGUNTA === preg.ID);\r\n \r\n if (listaRespuestas.length > 0)\r\n {\r\n let respuesta = listaRespuestas.filter(e => e.ID.toString() === valor)[0];\r\n\r\n let texto = '';\r\n switch (respuesta.FORMATO_ARCHIVO) {\r\n case 'image/*':\r\n texto = 'Opcional seleccione una imagen tipo PNG, JPG de un tamaño máximo de 30 MB';\r\n break;\r\n case 'video/*':\r\n texto = 'Opcional seleccione un video';\r\n break;\r\n case 'image/*,video/*':\r\n texto = 'Si tienes fotos y/o grabaciones súbelas aquí. (OPCIONAL)';\r\n break;\r\n default:\r\n texto = 'Opcional seleccione un archivo';\r\n break;\r\n }\r\n\r\n let show = false;\r\n if(tipoControl === 'check')\r\n {\r\n let respuestasPreg = preguntas.filter(e => e.ID === preg.ID)[0].RESPUESTA;\r\n\r\n if (respuesta.INDICADOR_ARCHIVO === '1')\r\n show = (respuestasPreg.length != 0)\r\n\r\n // let respuestasPreg = preguntas.filter(e => e.ID === preg.ID)[0].RESPUESTA;\r\n // let desconozco = respuestasPreg.filter(e => e === '161').length;\r\n\r\n // if (desconozco !== 1)\r\n // show = (respuestasPreg.length > 0);\r\n }\r\n // UPLOAD: selected ? (respuesta.INDICADOR_ARCHIVO === '1') : false,\r\n\r\n\r\n if(tipoControl === 'textbox')\r\n {\r\n dispatch( setUpload({ ID: respuesta.ID_PREGUNTA,\r\n UPLOAD: selected ? (respuesta.INDICADOR_ARCHIVO === '1') : false,\r\n CANTIDAD_ARCHIVO: respuesta.CANTIDAD_ARCHIVO,\r\n FORMATO_ARCHIVO: respuesta.FORMATO_ARCHIVO,\r\n OBLIGATORIO_ARCHIVO: respuesta.OBLIGATORIO_ARCHIVO,\r\n DROPZONE_TEXT: texto } ) )\r\n }\r\n else {\r\n dispatch( setUpload({ ID: respuesta.ID_PREGUNTA,\r\n UPLOAD: selected ? (respuesta.INDICADOR_ARCHIVO === '1') : (tipoControl === 'radio' ? false : show),\r\n CANTIDAD_ARCHIVO: respuesta.CANTIDAD_ARCHIVO,\r\n FORMATO_ARCHIVO: respuesta.FORMATO_ARCHIVO,\r\n OBLIGATORIO_ARCHIVO: respuesta.OBLIGATORIO_ARCHIVO,\r\n DROPZONE_TEXT: texto } ) )\r\n }\r\n }\r\n }\r\n }\r\n\r\n \r\n const setDependencias = (preg, valor, selected, tipoControl) => {\r\n\r\n /* alert(tipoControl);\r\n alert(preg.ID.toString());\r\n alert(valor.toString());\r\n alert(selected);*/\r\n\r\n \r\n\r\n if(tipoControl === 'check') {\r\n\r\n \r\n\r\n switch (preg.ID.toString()) {\r\n\r\n case '843':\r\n if (valor.toString() == '2397'){\r\n\r\n if (selected == true){\r\n\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '844' ); // Pregunta 11\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n }\r\n\r\n if (selected == true){\r\n\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '845' ); // Pregunta 11\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n }\r\n \r\n \r\n\r\n if (selected == false){\r\n\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '844' ); // Pregunta 11\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n }\r\n\r\n if (selected == false){\r\n\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '845' ); // Pregunta 11\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n }\r\n\r\n }\r\n break;\r\n\r\n }\r\n\r\n \r\n\r\n \r\n\r\n \r\n switch (preg.ID.toString()) {\r\n\r\n case '575':\r\n let pregunta = '';\r\n switch (valor.toString()) {\r\n case '1605':\r\n pregunta = '576';\r\n break;\r\n case '1606':\r\n pregunta = '577';\r\n break;\r\n case '1607':\r\n pregunta = '578';\r\n break;\r\n case '1608':\r\n pregunta = '579';\r\n break;\r\n case '1609':\r\n pregunta = '580';\r\n break;\r\n case '1610':\r\n pregunta = '581';\r\n break;\r\n case '1611':\r\n pregunta = '582';\r\n break;\r\n case '1612':\r\n pregunta = '583';\r\n break;\r\n }\r\n\r\n habilitarPreguntas = preguntas.filter( e => e.ID == pregunta );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = selected;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: selected, UPLOAD: false }) )\r\n })\r\n break;\r\n \r\n default:\r\n let activa = false;\r\n\r\n preg.RESPUESTA.forEach( r => {\r\n listaDependencias = dependencias.filter(e => e.ID_PREGUNTA_PADRE == preg.ID && e.ID_RESPUESTA == r)\r\n if (listaDependencias.length > 0) {\r\n activa = true;\r\n listaDependencias.forEach( d => {\r\n habilitarPreguntas = preguntas.filter( e => e.ID == d.ID_PREGUNTA );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n })\r\n })\r\n }\r\n });\r\n \r\n if (!activa) {\r\n listaDependencias = dependencias.filter(e => e.ID_PREGUNTA_PADRE == preg.ID)\r\n listaDependencias.forEach( d => {\r\n habilitarPreguntas = preguntas.filter( e => e.ID == d.ID_PREGUNTA );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n })\r\n })\r\n }\r\n\r\n break;\r\n }\r\n\r\n\r\n\r\n\r\n\r\n }\r\n else {\r\n\r\n\r\n \r\n switch (preg.ID.toString()) {\r\n\r\n case '847': // Pregunta 10\r\n switch (valor.toString()) {\r\n case '2472': // SI\r\n \r\n for (let index = 849; index <= 849; index++) { // Pregunta 12\r\n habilitarPreguntas = preguntas.filter( e => e.ID == index.toString() );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n })\r\n }\r\n\r\n \r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '848' ); // Pregunta 11\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '849' ); // Pregunta 12\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n // localStorage.getItem('saj_nivel') == 'P'\r\n\r\n break;\r\n\r\n case '2473': // NO\r\n \r\n\r\n for (let index = 848; index <= 848; index++) { // Pregunta 11\r\n habilitarPreguntas = preguntas.filter( e => e.ID == index.toString() );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n })\r\n }\r\n\r\n \r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '848' ); // Pregunta 11\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '849' ); // Pregunta 12\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n // localStorage.getItem('saj_nivel') == 'P'\r\n\r\n break;\r\n\r\n\r\n }\r\n\r\n break;\r\n \r\n\r\n case '838': // Pregunta 1\r\n switch (valor.toString()) {\r\n case '2379': // SI\r\n\r\n for (let index = 839; index <= 841; index++) { // Pregunta 2\r\n habilitarPreguntas = preguntas.filter( e => e.ID == index.toString() );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n })\r\n }\r\n\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '839' ); // Pregunta 6\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '840' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '841' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '854' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n }); \r\n\r\n break;\r\n \r\n case '2380': // SI\r\n\r\n for (let index = 839; index <= 841; index++) { // Pregunta 2\r\n habilitarPreguntas = preguntas.filter( e => e.ID == index.toString() );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n })\r\n }\r\n\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '839' ); // Pregunta 6\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '840' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '841' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '854' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n break;\r\n\r\n \r\n\r\n\r\n case '2381': // NO\r\n\r\n \r\n \r\n for (let index = 839; index <= 841; index++) { // Pregunta 2\r\n habilitarPreguntas = preguntas.filter( e => e.ID == index.toString() );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n })\r\n }\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '839' ); // Pregunta 6\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '840' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '841' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '854' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n \r\n break;\r\n\r\n\r\n\r\n \r\n \r\n case '23811': // NO\r\n \r\n\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '829' ); // Pregunta 2\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n\r\n\r\n for (let index = 830; index <= 837; index++) { // Pregunta 3\r\n habilitarPreguntas = preguntas.filter( e => e.ID == index.toString() );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n })\r\n }\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '833' ); // Pregunta 6\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '834' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n \r\n break;\r\n }\r\n break;\r\n\r\n case '842': // Pregunta 5\r\n switch (valor.toString()) {\r\n case '2395': // SI\r\n\r\n for (let index = 843; index <= 844; index++) { // Pregunta 2\r\n habilitarPreguntas = preguntas.filter( e => e.ID == index.toString() );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n })\r\n }\r\n\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '843' ); // Pregunta 6\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '844' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '845' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n \r\n \r\n\r\n break;\r\n \r\n\r\n case '2396': // NO\r\n\r\n \r\n\r\n for (let index = 843; index <= 844; index++) { // Pregunta 2\r\n habilitarPreguntas = preguntas.filter( e => e.ID == index.toString() );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n })\r\n }\r\n\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '843' ); // Pregunta 6\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '844' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '845' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n \r\n // localStorage.getItem('saj_nivel') == 'P'\r\n\r\n break;\r\n }\r\n break;\r\n\r\n\r\n case '849': // Pregunta 12\r\n switch (valor.toString()) {\r\n case '2481': // SI\r\n \r\n for (let index = 850; index <= 852; index++) { // Pregunta 2\r\n habilitarPreguntas = preguntas.filter( e => e.ID == index.toString() );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n })\r\n }\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '850' ); // Pregunta 6\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '851' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '852' ); // Pregunta 6\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '853' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n \r\n break;\r\n case '2482': // NO\r\n \r\n for (let index = 850; index <= 853; index++) { // Pregunta 12\r\n habilitarPreguntas = preguntas.filter( e => e.ID == index.toString() );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n })\r\n }\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '850' ); // Pregunta 6\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '851' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '852' ); // Pregunta 6\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '853' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n \r\n break;\r\n \r\n case '2396': // NO\r\n \r\n \r\n \r\n for (let index = 843; index <= 844; index++) { // Pregunta 2\r\n habilitarPreguntas = preguntas.filter( e => e.ID == index.toString() );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n })\r\n }\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '843' ); // Pregunta 6\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '844' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n \r\n // localStorage.getItem('saj_nivel') == 'P'\r\n \r\n break;\r\n }\r\n break;\r\n\r\n case '828': // Pregunta 1\r\n switch (valor.toString()) {\r\n case '2339': // SI\r\n\r\n // let respuesta2 = '';\r\n // habilitarPreguntas = preguntas.filter( e => e.ID == '665' ); // Pregunta 2\r\n // habilitarPreguntas.forEach( e => {\r\n // if(e.RESPUESTA.length != 0 )\r\n // respuesta2 = e.RESPUESTA[0] == '1884' ? 'SI' : 'NO';\r\n // })\r\n\r\n\r\n // habilitarPreguntas = preguntas.filter( e => e.ID == '666' ); // Pregunta 3 (La evaluada)\r\n // habilitarPreguntas.forEach( e => {\r\n // e.RESPUESTA = [];\r\n // e.HABILITADO = (respuesta2 == 'SI') ? true : false;\r\n // e.UPLOAD = false;\r\n // dispatch( setHabilitado({ ID: e.ID, HABILITADO: (respuesta2 == 'SI') ? true : false, UPLOAD: false }) )\r\n // })\r\n\r\n\r\n for (let index = 829; index <= 837; index++) { // Pregunta 2\r\n habilitarPreguntas = preguntas.filter( e => e.ID == index.toString() );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n })\r\n }\r\n\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '833' ); // Pregunta 6\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '834' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n // localStorage.getItem('saj_nivel') == 'P'\r\n\r\n break;\r\n \r\n case '2340': // NO\r\n \r\n\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '829' ); // Pregunta 2\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n\r\n\r\n for (let index = 830; index <= 837; index++) { // Pregunta 3\r\n habilitarPreguntas = preguntas.filter( e => e.ID == index.toString() );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n })\r\n }\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '833' ); // Pregunta 6\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '834' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n // for (let index = 728; index <= 742; index++) {\r\n // habilitarPreguntas = preguntas.filter( e => e.ID == index.toString() ); // Pregunta 4\r\n // habilitarPreguntas.forEach( e => {\r\n // e.RESPUESTA = [];\r\n // e.HABILITADO = true;\r\n // e.UPLOAD = false;\r\n // dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n // })\r\n // }\r\n\r\n \r\n // ['730', '731', '734', '736', '740'].forEach(element => {\r\n // habilitarPreguntas = preguntas.filter( e => e.ID == element ); // Pregunta 8\r\n // habilitarPreguntas.forEach( e => {\r\n // e.RESPUESTA = [];\r\n // e.HABILITADO = false;\r\n // e.UPLOAD = false;\r\n // dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n // })\r\n // });\r\n \r\n break;\r\n }\r\n break;\r\n \r\n/*\r\n case '832': // Pregunta 5\r\n switch (valor.toString()) {\r\n case '2352': // SI\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '833' ); // Pregunta 6\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '834' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n break;\r\n \r\n case '2353': // NO\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '833' ); // Pregunta 6\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '834' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n break;\r\n }\r\n break;\r\n */ \r\n\r\n case '833': // Pregunta 6\r\n switch (valor.toString()) {\r\n case '2354': // a\r\n case '2355': // b\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '834' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n });\r\n break;\r\n \r\n case '2356': // c\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '834' ); // Pregunta 7\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n });\r\n break;\r\n }\r\n break;\r\n \r\n\r\n\r\n\r\n\r\n\r\n case '818': // Pregunta 1\r\n switch (valor.toString()) {\r\n case '2313': // a) Al ingreso\r\n case '2314': // b) A la salida\r\n case '2315': // c) Ingreso y salida\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '819' ); // Pregunta 2\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n })\r\n break;\r\n \r\n case '2316': // d) Nunca\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '819' ); // Pregunta 2\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n })\r\n break;\r\n }\r\n break;\r\n \r\n\r\n case '820': // Pregunta 3\r\n switch (valor.toString()) {\r\n case '2319': // a) Al ingreso\r\n case '2320': // b) A la salida\r\n case '2321': // c) Ingreso y salida\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '821' ); // Pregunta 4\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n })\r\n break;\r\n \r\n case '2322': // d) Nunca\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '821' ); // Pregunta 4\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n })\r\n break;\r\n }\r\n break;\r\n \r\n \r\n\r\n\r\n case '654':\r\n switch (valor.toString()) {\r\n case '1856':\r\n let respuesta6 = '';\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '653' );\r\n habilitarPreguntas.forEach( e => {\r\n if(e.RESPUESTA.length != 0 )\r\n respuesta6 = e.RESPUESTA[0] == '1854' ? 'SI' : 'NO';\r\n })\r\n\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '655' );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = true;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: true, UPLOAD: false }) )\r\n })\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '656' );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = (respuesta6 == 'SI') ? true : false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: (respuesta6 == 'SI') ? true : false, UPLOAD: false }) )\r\n })\r\n break;\r\n \r\n case '1857':\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '655' );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n })\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == '656' );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n })\r\n break;\r\n }\r\n break;\r\n \r\n default:\r\n listaDependencias = dependencias.filter(e => e.ID_PREGUNTA_PADRE == preg.ID && e.ID_RESPUESTA == valor)\r\n if (listaDependencias.length > 0)\r\n {\r\n \r\n listaDependencias.forEach( d => {\r\n \r\n RptasPreguntaSelected = preguntas.filter( e => e.ID == preg.ID );\r\n let cantRptas = 0;\r\n if (RptasPreguntaSelected.length != 0)\r\n cantRptas = RptasPreguntaSelected[0].RESPUESTA.length;\r\n \r\n habilitarPreguntas = preguntas.filter( e => e.ID == d.ID_PREGUNTA );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n let listaPadres = dependencias.filter(x => x.ID_PREGUNTA == e.ID)\r\n let hab = true;\r\n \r\n if (listaPadres.length > 1) {\r\n let esElMayor = true;\r\n listaPadres.forEach( y => {\r\n if( preg.ID < y.ID_PREGUNTA_PADRE )\r\n esElMayor = false\r\n })\r\n \r\n if ( !esElMayor && selected)\r\n hab = false;\r\n else\r\n hab = selected;\r\n }\r\n \r\n e.HABILITADO = hab;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: hab, UPLOAD: false }) )\r\n })\r\n \r\n })\r\n }\r\n else{\r\n listaDependencias = dependencias.filter(e => e.ID_PREGUNTA_PADRE == preg.ID )\r\n if (listaDependencias.length > 0)\r\n {\r\n listaDependencias.forEach( d => {\r\n habilitarPreguntas = preguntas.filter( e => e.ID == d.ID_PREGUNTA );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n })\r\n \r\n })\r\n }\r\n \r\n \r\n }\r\n\r\n if( (informacion_basica.cargo == '004' || informacion_basica.cargo == '005' || informacion_basica.cargo == '006') ||\r\n ((informacion_basica.miembro == '003') && (informacion_basica.cargo == '001' || informacion_basica.cargo == '002' || informacion_basica.cargo == '003')) ) {\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '510' );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n })\r\n }\r\n \r\n if(informacion_basica.cargo == '003' || informacion_basica.cargo == '004' || informacion_basica.cargo == '005' || informacion_basica.cargo == '006') {\r\n habilitarPreguntas = preguntas.filter( e => e.ID == '518' );\r\n habilitarPreguntas.forEach( e => {\r\n e.RESPUESTA = [];\r\n e.HABILITADO = false;\r\n e.UPLOAD = false;\r\n dispatch( setHabilitado({ ID: e.ID, HABILITADO: false, UPLOAD: false }) )\r\n })\r\n }\r\n break;\r\n }\r\n\r\n \r\n\r\n\r\n\r\n\r\n\r\n }\r\n\r\n }\r\n\r\n\r\n\r\n\r\n const setExcluyentes = (preg, valor) => {\r\n listaExcluyentes = excluyentes.filter(e => e.ID_PREGUNTA === preg.ID)\r\n if (listaExcluyentes.length > 0)\r\n {\r\n let tiene = listaExcluyentes.filter(e => e.ID_PREGUNTA === preg.ID)\r\n\r\n switch (valor) {\r\n case '1719':\r\n const index = preg.RESPUESTA.indexOf('1663');\r\n if (index != -1)\r\n preg.RESPUESTA.splice(index, 1); \r\n \r\n const index2 = preg.RESPUESTA.indexOf('1668');\r\n if (index2 != -1)\r\n preg.RESPUESTA.splice(index2, 1); \r\n \r\n const indexX = preg.RESPUESTA.indexOf('1669');\r\n if (indexX != -1)\r\n preg.RESPUESTA.splice(indexX, 1);\r\n break;\r\n\r\n case '1663':\r\n const index3 = preg.RESPUESTA.indexOf('1719');\r\n if (index3 != -1)\r\n preg.RESPUESTA.splice(index3, 1); \r\n \r\n const index4 = preg.RESPUESTA.indexOf('1668');\r\n if (index4 != -1)\r\n preg.RESPUESTA.splice(index4, 1); \r\n \r\n const indexY = preg.RESPUESTA.indexOf('1669');\r\n if (indexY != -1)\r\n preg.RESPUESTA.splice(indexY, 1); \r\n break;\r\n\r\n case '1668':\r\n const index5 = preg.RESPUESTA.indexOf('1719');\r\n if (index5 != -1)\r\n preg.RESPUESTA.splice(index5, 1); \r\n \r\n const index6 = preg.RESPUESTA.indexOf('1663');\r\n if (index6 != -1)\r\n preg.RESPUESTA.splice(index6, 1);\r\n \r\n const indexZ = preg.RESPUESTA.indexOf('1669');\r\n if (indexZ != -1)\r\n preg.RESPUESTA.splice(indexZ, 1); \r\n break;\r\n \r\n \r\n default:\r\n if ( tiene.length > 0 ) {\r\n habilita = listaExcluyentes.filter(e => e.ID_RESPUESTA.toString() === valor).length\r\n if (habilita === 1){\r\n preg.RESPUESTA = [];\r\n }\r\n else\r\n {\r\n switch (tiene.length) {\r\n case 1:\r\n preg.RESPUESTA = preg.RESPUESTA.filter( id => id !== tiene[0].ID_RESPUESTA.toString() )\r\n break;\r\n \r\n case 2:\r\n preg.RESPUESTA = preg.RESPUESTA.filter( id => id !== tiene[0].ID_RESPUESTA.toString() && id !== tiene[1].ID_RESPUESTA.toString() )\r\n break;\r\n }\r\n }\r\n }\r\n break;\r\n }\r\n }\r\n }\r\n\r\n \r\n const existeObservacion = () => {\r\n let cantObservaciones = 0\r\n preguntas.forEach(preg => {\r\n if ( preg.TIPO_RPTA_COD !== 4 && preg.TIPO_RPTA_COD !== 7 ) {\r\n if ( !( preg.RESPUESTA.length === 0 && preg.IND_PADRE.toString() === '0' && preg.HABILITADO ) )\r\n {\r\n listaRespuestas = respuestas.filter( e => e.ID_PREGUNTA === preg.ID );\r\n if ( listaRespuestas.length > 0 )\r\n preg.RESPUESTA.forEach( rpta => {\r\n let respuesta = listaRespuestas.filter( e => e.ID.toString() === rpta )[0];\r\n if ( respuesta.OBSERVACION === '1' )\r\n cantObservaciones++;\r\n });\r\n }\r\n }\r\n });\r\n dispatch( setComplete( { existe_observacion: ( cantObservaciones === preguntas.length ) } ) );\r\n dispatch( setExisteObservacion( { existe_observacion: ( cantObservaciones === preguntas.length ) } ) );\r\n }\r\n\r\n\r\n const ITEM_HEIGHT = 48;\r\n const ITEM_PADDING_TOP = 8;\r\n const MenuProps = {\r\n PaperProps: {\r\n style: {\r\n maxHeight: ITEM_HEIGHT * 4.5 + ITEM_PADDING_TOP,\r\n width: 100,\r\n },\r\n },\r\n }\r\n\r\n\r\n const [isOpenImageDialog, setIsOpenImageDialog] = useState(false);\r\n const [filtroImageDialog, setFiltroImageDialog] = useState({ pregunta: 0, respuesta: 0 });\r\n const handleOpenImageDialog = ( objeto ) => {\r\n setIsOpenImageDialog(!isOpenImageDialog);\r\n setFiltroImageDialog(objeto);\r\n };\r\n\r\n\r\n\r\n return (\r\n <>\r\n {/* */}\r\n
\r\n {\r\n grupos.map( grupo => (\r\n \r\n \r\n { grupo.DESCRIPCION }\r\n \r\n {\r\n preguntas.filter( preg => preg.GRUPO_COD === grupo.ID && preg.ID_PADRE === 0 )\r\n .map( preg => (\r\n <>\r\n {\r\n ( preg.IND_PADRE === '0' )\r\n ?\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n { preg.DESCRIPCION }\r\n {\r\n preg.IND_IMAGEN != '0'\r\n &&\r\n }\r\n label=\"Imagen\"\r\n clickable\r\n color=\"primary\"\r\n variant=\"outlined\"\r\n size=\"small\"\r\n style={{ marginLeft: '10px'}}\r\n onClick={ () => handleOpenImageDialog( { pregunta: preg.ID, respuesta: 0 } ) }\r\n />\r\n }\r\n
\r\n { preg.NOTA }\r\n
\r\n
\r\n {\r\n // RADIOBUTTON\r\n ( preg.TIPO_RPTA_COD === 1 )\r\n &&\r\n <>\r\n
\r\n {\r\n ( preg.HABILITADO )\r\n ?\r\n \r\n :\r\n \r\n }\r\n
\r\n {\r\n ( preg.UPLOAD )\r\n &&\r\n
\r\n {\r\n // if (file.file.type.split('/')[0] === 'image')\r\n // return (\r\n // \r\n // );\r\n // }}\r\n maxFileSize={ 30000000 }\r\n filesLimit={ preg.CANTIDAD_ARCHIVO }\r\n dropzoneText={ preg.DROPZONE_TEXT }\r\n getFileLimitExceedMessage={ (filesLimit) => { return `Se superó el número máximo permitido de archivos. Solo se permiten ${ filesLimit }.` } }\r\n getFileAddedMessage={ (fileName) => { return `El archivo ${ fileName } se agregó correctamente.` } }\r\n getFileRemovedMessage={ (fileName) => { return `Archivo ${ fileName } eliminado.` } }\r\n getDropRejectMessage={ (rejectedFile, acceptedFiles, maxFileSize) => { return `El archivo ${ rejectedFile.name } fue rechazado. El tipo de archivo no es compatible. El archivo es demasiado grande. El límite de tamaño es ${ maxFileSize / 1000000 } megabytes.` } }\r\n //onChange={ (files) => console.log('Files:', files) }\r\n onChange={ ( files ) => setArchivo( files, preg.ID ) }\r\n />\r\n
\r\n }\r\n \r\n }\r\n {\r\n // CHECKBOX\r\n ( preg.TIPO_RPTA_COD === 2 )\r\n &&\r\n <>\r\n
\r\n {\r\n ( preg.HABILITADO )\r\n ?\r\n \r\n :\r\n \r\n }\r\n
\r\n {\r\n ( preg.UPLOAD )\r\n &&\r\n
\r\n { return `Se superó el número máximo permitido de archivos. Solo se permiten ${ filesLimit }.` } }\r\n getFileAddedMessage={ (fileName) => { return `El archivo ${ fileName } se agregó correctamente.` } }\r\n getFileRemovedMessage={ (fileName) => { return `Archivo ${ fileName } eliminado.` } }\r\n getDropRejectMessage={ (rejectedFile, acceptedFiles, maxFileSize) => { return `El archivo ${ rejectedFile.name } fue rechazado. El tipo de archivo no es compatible. El archivo es demasiado grande. El límite de tamaño es ${ maxFileSize / 1000000 } megabytes.` } }\r\n //onChange={ (files) => console.log('Files:', files) }\r\n onChange={ ( files ) => setArchivo( files, preg.ID ) }\r\n \r\n />\r\n
\r\n }\r\n \r\n }\r\n {\r\n // SELECT\r\n ( preg.TIPO_RPTA_COD === 3 )\r\n &&\r\n
\r\n {\r\n ( preg.HABILITADO )\r\n ?\r\n \r\n :\r\n \r\n }\r\n
\r\n }\r\n {\r\n // TEXTBOX\r\n ( preg.TIPO_RPTA_COD === 4 || preg.TIPO_RPTA_COD === 7 )\r\n &&\r\n <>\r\n
\r\n {\r\n ( preg.HABILITADO )\r\n ?\r\n \r\n :\r\n \r\n }\r\n
\r\n {\r\n ( preg.UPLOAD && preg.RESPUESTA.length != 0 )\r\n &&\r\n
\r\n { return `Se superó el número máximo permitido de archivos. Solo se permiten ${ filesLimit }.` } }\r\n getFileAddedMessage={ (fileName) => { return `El archivo ${ fileName } se agregó correctamente.` } }\r\n getFileRemovedMessage={ (fileName) => { return `Archivo ${ fileName } eliminado.` } }\r\n getDropRejectMessage={ (rejectedFile, acceptedFiles, maxFileSize) => { return `El archivo ${ rejectedFile.name } fue rechazado. El tipo de archivo no es compatible. El archivo es demasiado grande. El límite de tamaño es ${ maxFileSize / 1000000 } megabytes.` } }\r\n //onChange={ (files) => console.log('Files:', files) }\r\n onChange={ ( files ) => setArchivo( files, preg.ID ) }\r\n \r\n />\r\n
\r\n }\r\n \r\n }\r\n {\r\n // COMBOCHECKBOX\r\n ( preg.TIPO_RPTA_COD === 5 || preg.TIPO_RPTA_COD === 6 )\r\n &&\r\n \r\n }\r\n {\r\n // ONE LOCATION\r\n ( preg.TIPO_RPTA_COD === 8 )\r\n &&\r\n
\r\n {\r\n ( preg.HABILITADO )\r\n ?\r\n \r\n :\r\n \r\n }\r\n
\r\n }\r\n {\r\n // MANY LOCATIONS\r\n ( preg.TIPO_RPTA_COD === 9 )\r\n &&\r\n
\r\n {\r\n ( preg.HABILITADO )\r\n ?\r\n \r\n // \r\n :\r\n \r\n }\r\n
\r\n }\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n :\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n { preg.DESCRIPCION }\r\n { preg.NOTA }\r\n
\r\n
\r\n {\r\n preguntas.filter( hijo => hijo.ID_PADRE === preg.ID )\r\n .map( (hijo, index) => (\r\n <>\r\n
\r\n \r\n
\r\n
\r\n
\r\n { hijo.DESCRIPCION }\r\n
\r\n
\r\n {\r\n // RADIOBUTTON\r\n ( hijo.TIPO_RPTA_COD === 1 )\r\n &&\r\n \r\n }\r\n {\r\n // CHECKBOX\r\n ( hijo.TIPO_RPTA_COD === 2 )\r\n &&\r\n \r\n }\r\n
\r\n
\r\n {\r\n ( index < preguntas.filter( hijo => hijo.ID_PADRE === preg.ID ).length - 1 )\r\n &&\r\n
\r\n \r\n
\r\n }\r\n \r\n ) )\r\n }\r\n
\r\n
\r\n
\r\n
\r\n
\r\n }\r\n \r\n \r\n ) )\r\n }\r\n
\r\n ) )\r\n }\r\n
\r\n \r\n setIsOpenImageDialog(false)}\r\n tipo=\"pregunta\"\r\n />\r\n {/*
*/}\r\n \r\n )\r\n}\r\n","import React, { forwardRef } from 'react'\r\nimport { Dialog,\r\n AppBar,\r\n Toolbar,\r\n Button,\r\n IconButton,\r\n Slide,\r\n Typography,\r\n LinearProgress,\r\n CircularProgress\r\n} from '@material-ui/core'\r\nimport CloseIcon from '@material-ui/icons/Close'\r\nimport { makeStyles, withStyles } from '@material-ui/core/styles';\r\nimport SaveIcon from '@material-ui/icons/Save';\r\nimport { theme } from '../../styles/setTheme';\r\n\r\nimport {\r\n BrowserView,\r\n MobileView,\r\n // isBrowser,\r\n // isMobile\r\n} from \"react-device-detect\";\r\nimport { MobileScreen } from './MobileScreen';\r\nimport { BrowserScreen } from './BrowserScreen';\r\nimport { BrowserScreenBK_hardCode } from './BrowserScreenBK_hardCode';\r\nimport { useSelector } from 'react-redux';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n title: {\r\n marginLeft: theme.spacing(0),\r\n flex: 1,\r\n fontSize: theme.typography.pxToRem(17),\r\n fontWeight: theme.typography.fontWeightRegular\r\n },\r\n toolbar: {\r\n minHeight: '30px',\r\n paddingLeft: '10px',\r\n paddingRight: '10px',\r\n },\r\n centered: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center',\r\n },\r\n placeholder: {\r\n height: 40,\r\n }\r\n}));\r\n\r\nconst StyledAppBar = withStyles({\r\n root: {\r\n position: 'relative',\r\n backgroundColor: theme.palette.primary.main,\r\n color: \"#ffffff\",\r\n marginBottom: -1,\r\n '&$expanded': {\r\n minHeight: 30,\r\n },\r\n },\r\n})(AppBar);\r\n\r\n\r\nexport const FormatoScreen = () => {\r\n const classes = useStyles();\r\n\r\n let { isLoading } = useSelector( state => state.pregunta )\r\n\r\n return (\r\n <>\r\n {/* \r\n \r\n \r\n Registro de formato\r\n \r\n \r\n */}\r\n\r\n \r\n {\r\n isLoading\r\n ?
\r\n
\r\n \r\n
\r\n
\r\n : \r\n // : \r\n }\r\n
\r\n \r\n {\r\n isLoading\r\n ? \r\n : \r\n // : \r\n }\r\n {/* */}\r\n \r\n\r\n \r\n )\r\n}\r\n","import { makeStyles, AccordionSummary, AccordionActions, AccordionDetails } from \"@material-ui/core\";\r\nimport { withStyles } from '@material-ui/core/styles'\r\nimport { theme } from '../../styles/setTheme'\r\nimport MuiAccordionSummary from '@material-ui/core/AccordionSummary'\r\n\r\nexport const useStyles = makeStyles((theme) => ({\r\n root: {\r\n width: '100%',\r\n },\r\n headerTitle: {\r\n fontSize: '16px !important',\r\n fontWeight: 'bold !important',\r\n // fontFamily: '\"Helvetica\", \"Arial\", sans-serif !important',\r\n },\r\n heading: {\r\n fontSize: theme.typography.pxToRem(17),\r\n fontWeight: theme.typography.fontWeightRegular,\r\n // fontFamily: 'HelveticaBold'\r\n },\r\n icon: {\r\n color: \"#ffffff\",\r\n },\r\n iconExpander: {\r\n color: \"#000\",\r\n },\r\n detalle: {\r\n padding: \"25px 10px 20px\",\r\n },\r\n classOne: {\r\n textTransform: 'lowercase',\r\n '& > :first-letter': {\r\n textTransform: 'uppercase'\r\n }\r\n },\r\n wrapper: {\r\n position: 'relative',\r\n },\r\n fieldProgress: {\r\n color: theme.palette.secondary.primary,\r\n position: 'absolute',\r\n top: '50%',\r\n left: '80%',\r\n marginTop: -6,\r\n marginLeft: -12,\r\n },\r\n autocompleteProgress: {\r\n color: theme.palette.secondary.main,\r\n position: 'absolute',\r\n top: '50%',\r\n left: '50%',\r\n marginTop: -6,\r\n marginLeft: -12,\r\n },\r\n form: {\r\n width: '100%',\r\n marginBottom: 0,\r\n marginTop: '12px',\r\n },\r\n largeAvatarBrowser: {\r\n width: theme.spacing(3),\r\n height: theme.spacing(3),\r\n color: theme.white,\r\n backgroundColor: theme.palette.primary.avatar,\r\n },\r\n largeAvatarMobile: {\r\n width: theme.spacing(3),\r\n height: theme.spacing(3),\r\n color: theme.white,\r\n backgroundColor: theme.palette.primary.avatar,\r\n },\r\n textBrowser: {\r\n fontSize: '14px',\r\n },\r\n textMobile: {\r\n fontSize: '12px',\r\n },\r\n pregDesc: {\r\n fontWeight: 'bold',\r\n fontSize: '16px',\r\n },\r\n\r\n //Agregado\r\n inputStyle: {\r\n \"& .MuiInputBase-input\" :{\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n /*\"& .MuiInputBase-input:focus\" :{\r\n borderBottom: '2px solid #4285f4 !important',\r\n },*/\r\n \"& .MuiInput-underline:after\" :{\r\n borderBottom: '2px solid #4285f4 !important',\r\n },\r\n '& label': {\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n //Color del label con el foco\r\n '& label.Mui-focused': {\r\n color: '#4285f4',\r\n },\r\n '& error': {\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n \"& .MuiFormHelperText-root.Mui-error\":{\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n \"& .MuiFormHelperText-root\":{\r\n // fontFamily: 'HelveticaBold',\r\n }\r\n\r\n /*\"& .MuiInput-underline:after\":{\r\n BorderBottom: '2px solid #4285f4',\r\n }*/\r\n //borderBottom: '1px solid #4285f4 !important',\r\n },\r\n\r\n selectStyle: {\r\n // fontFamily: 'HelveticaBold',\r\n \"& .MuiInputBase-input\" :{\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n \"& .MuiInput-underline:after\" :{\r\n borderBottom: '2px solid #4285f4 !important',\r\n },\r\n //Color del label con el foco\r\n '& label.Mui-focused': {\r\n color: '#4285f4',\r\n },\r\n\r\n \"& .MuiFormHelperText-root.Mui-error\": {\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n },\r\n\r\n radioStyle: {\r\n // fontFamily: 'HelveticaBold',\r\n \"& .MuiTypography-body1\" :{\r\n // fontFamily: 'HelveticaBold',\r\n }\r\n },\r\n\r\n buttonStyle : {\r\n // fontFamily: 'HelveticaBold',\r\n \r\n }\r\n\r\n\r\n}));\r\n\r\n\r\n\r\nexport const StyledAccordionDetails = withStyles({\r\n root: {\r\n padding: \"20px 16px 16px\",\r\n }\r\n})(AccordionDetails);\r\n\r\n\r\n\r\nexport const StyledAccordionSummary = withStyles({\r\n root: {\r\n // backgroundColor: theme.palette.primary.main,\r\n backgroundColor: \"#ddd\",\r\n borderBottom: \"1px solid #A8A8A8\",\r\n //color: \"#ffffff\",\r\n marginBottom: -1,\r\n minHeight: 30,\r\n fontSize: 15,\r\n fontWeight: 500,\r\n color: \"#000000\",\r\n // fontFamily: \"HelveticaBold\",\r\n // boxShadow: '0px 2px 4px -1px rgba(0,0,0,0.2), 0px 4px 5px 0px rgba(0,0,0,0.14), 0px 1px 10px 0px rgba(0,0,0,0.12)',\r\n '&$expanded': {\r\n minHeight: 30,\r\n },\r\n },\r\n content: {\r\n '&$expanded': {\r\n margin: '0px 0',\r\n },\r\n },\r\n expanded: {},\r\n})(AccordionSummary);\r\n\r\n\r\nexport const AccordionEstSummary = withStyles({\r\n root: {\r\n backgroundColor: '#eee',\r\n borderBottom: '1px solid #ddd',\r\n marginBottom: -1,\r\n minHeight: 46,\r\n '&$expanded': {\r\n minHeight: 46,\r\n },\r\n // fontFamily: \"HelveticaBold\",\r\n },\r\n content: {\r\n '&$expanded': {\r\n margin: '12px 0',\r\n },\r\n },\r\n expanded: {},\r\n})(MuiAccordionSummary);\r\n\r\nexport const StyledAccordionActions = withStyles({\r\n root: {\r\n padding: '8px 25px',\r\n },\r\n})(AccordionActions);\r\n","export const ubigeoTypes = {\r\n REGION_RESET: '[Region] RESET',\r\n REGION_GET_START: '[Region] GET_START',\r\n REGION_GET_COMPLETE: '[Region] GET_COMPLETE',\r\n REGION_GET_ERROR: '[Region] GET_ERROR',\r\n \r\n PROVINCIA_RESET: '[Provincia] RESET',\r\n PROVINCIA_GET_START: '[Provincia] GET_START',\r\n PROVINCIA_GET_COMPLETE: '[Provincia] GET_COMPLETE',\r\n PROVINCIA_GET_ERROR: '[Provincia] GET_ERROR',\r\n \r\n DISTRITO_RESET: '[Distrito] RESET',\r\n DISTRITO_GET_START: '[Distrito] GET_START',\r\n DISTRITO_GET_COMPLETE: '[Distrito] GET_COMPLETE',\r\n DISTRITO_GET_ERROR: '[Distrito] GET_ERROR',\r\n\r\n \r\n REGION_MUNI_RESET: '[RegionMuni] RESET',\r\n REGION_MUNI_GET_START: '[RegionMuni] GET_START',\r\n REGION_MUNI_GET_COMPLETE: '[RegionMuni] GET_COMPLETE',\r\n REGION_MUNI_GET_ERROR: '[RegionMuni] GET_ERROR',\r\n \r\n PROVINCIA_MUNI_RESET: '[ProvinciaMuni] RESET',\r\n PROVINCIA_MUNI_GET_START: '[ProvinciaMuni] GET_START',\r\n PROVINCIA_MUNI_GET_COMPLETE: '[ProvinciaMuni] GET_COMPLETE',\r\n PROVINCIA_MUNI_GET_ERROR: '[ProvinciaMuni] GET_ERROR',\r\n \r\n DISTRITO_MUNI_RESET: '[DistritoMuni] RESET',\r\n DISTRITO_MUNI_GET_START: '[DistritoMuni] GET_START',\r\n DISTRITO_MUNI_GET_COMPLETE: '[DistritoMuni] GET_COMPLETE',\r\n DISTRITO_MUNI_GET_ERROR: '[DistritoMuni] GET_ERROR',\r\n}","import { ubigeoTypes } from \"../../types/ubigeoTypes\"\r\n\r\nexport const getRegiones = ( payload ) => ({\r\n type: ubigeoTypes.REGION_GET_START,\r\n payload\r\n})\r\n\r\nexport const resetRegiones = ( payload = [] ) => ({\r\n type: ubigeoTypes.REGION_RESET,\r\n payload\r\n})\r\n\r\nexport const getProvincias = ( payload ) => ({\r\n type: ubigeoTypes.PROVINCIA_GET_START,\r\n payload\r\n})\r\n\r\nexport const resetProvincias = ( payload = [] ) => ({\r\n type: ubigeoTypes.PROVINCIA_RESET,\r\n payload\r\n})\r\n\r\nexport const getDistritos = ( payload ) => ({\r\n type: ubigeoTypes.DISTRITO_GET_START,\r\n payload\r\n})\r\n\r\nexport const resetDistritos = ( payload = [] ) => ({\r\n type: ubigeoTypes.DISTRITO_RESET,\r\n payload\r\n})\r\n\r\n\r\n\r\n\r\nexport const getRegionesMuni = ( payload ) => ({\r\n type: ubigeoTypes.REGION_MUNI_GET_START,\r\n payload\r\n})\r\n\r\nexport const resetRegionesMuni = ( payload = [] ) => ({\r\n type: ubigeoTypes.REGION_MUNI_RESET,\r\n payload\r\n})\r\n\r\nexport const getProvinciasMuni = ( payload ) => ({\r\n type: ubigeoTypes.PROVINCIA_MUNI_GET_START,\r\n payload\r\n})\r\n\r\nexport const resetProvinciasMuni = ( payload = [] ) => ({\r\n type: ubigeoTypes.PROVINCIA_MUNI_RESET,\r\n payload\r\n})\r\n\r\nexport const getDistritosMuni = ( payload ) => ({\r\n type: ubigeoTypes.DISTRITO_MUNI_GET_START,\r\n payload\r\n})\r\n\r\nexport const resetDistritosMuni = ( payload = [] ) => ({\r\n type: ubigeoTypes.DISTRITO_MUNI_RESET,\r\n payload\r\n})\r\n\r\n","import Swal from 'sweetalert2'\r\n\r\nexport const Mensaje = ( text, type = 'Error', icon = 'error', showConfirmButton = true ) => {\r\n // Swal.fire(type, text, icon)\r\n Swal.fire({\r\n title: type,\r\n icon: icon,\r\n html: text,\r\n showConfirmButton: showConfirmButton\r\n })\r\n}\r\n\r\nexport const MensajeExito = ( text, type = 'Error', icon = 'error', showConfirmButton = true ) => {\r\n const swalWithBootstrapButtons = Swal.mixin({\r\n customClass: {\r\n confirmButton: 'btn btn-success',\r\n cancelButton: 'btn btn-danger'\r\n },\r\n buttonsStyling: false\r\n })\r\n\r\n swalWithBootstrapButtons.fire({\r\n title: 'Are you sure?',\r\n text: \"You won't be able to revert this!\",\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes, delete it!',\r\n cancelButtonText: 'No, cancel!',\r\n reverseButtons: true\r\n }).then((result) => {\r\n if (result.isConfirmed) {\r\n swalWithBootstrapButtons.fire(\r\n 'Deleted!',\r\n 'Your file has been deleted.',\r\n 'success'\r\n )\r\n } else if (\r\n /* Read more about handling dismissals below */\r\n result.dismiss === Swal.DismissReason.cancel\r\n ) {\r\n swalWithBootstrapButtons.fire(\r\n 'Cancelled',\r\n 'Your imaginary file is safe :)',\r\n 'error'\r\n )\r\n }\r\n })\r\n}\r\n","export const MessagesError = {\r\n codigo_verificacion: 'Captcha incorrecto'\r\n}\r\n\r\nexport const logErrors = ( e ) => {\r\n const errorModel = {\r\n Type: '',\r\n Message: ''\r\n }\r\nconsole.log(e)\r\nconsole.log(e.Message)\r\n if (e instanceof TypeError) {\r\n errorModel.Type = 'Type Error'\r\n } else if (e instanceof RangeError) {\r\n errorModel.Type = 'Range Error'\r\n } else if (e instanceof EvalError) {\r\n errorModel.Type = 'Eval Error'\r\n } else {\r\n errorModel.Type = 'Aviso'\r\n }\r\n\r\n if ( e.Message )\r\n errorModel.Message = e.Message\r\n else\r\n errorModel.Message = 'No se procesó su solicitud.
Disculpe la molestia.
Por favor, intentar en unos minutos.'\r\n\r\n return errorModel\r\n}\r\n","import qs from 'qs'\r\nimport axios from 'axios'\r\n\r\n\r\nconst Headers = {\r\n 'content-type': 'application/x-www-form-urlencoded;charset=utf-8',\r\n 'Access-Control-Allow-Origin': \"*\"\r\n}\r\n\r\naxios.interceptors.request.use( (request) => {\r\n const token = localStorage.getItem('token');\r\n if ( token )\r\n {\r\n request.headers.Authorization = `Bearer ${token}`;\r\n }\r\n else{\r\n request.headers.Authorization = '';\r\n }\r\n\r\n return request;\r\n}, error => {\r\n return Promise.reject(error);\r\n} );\r\n\r\naxios.interceptors.response.use( \r\n (response) => response,\r\n error => {\r\n return Promise.reject(error);\r\n }\r\n);\r\n\r\nexport const apiCall = ( method, url, data, headers = Headers ) => axios({\r\n method,\r\n url,\r\n data: qs.stringify({\r\n ...data\r\n }),\r\n headers\r\n})\r\n\r\n\r\nexport const apiPdf = ( method, url, data, headers = Headers ) => axios({\r\n method,\r\n url,\r\n data: qs.stringify({\r\n ...data\r\n }),\r\n responseType: 'arraybuffer',\r\n headers\r\n})\r\n\r\n\r\n\r\n\r\n// export const client = (token = null) => {\r\n// const defaultOptions = {\r\n// headers: {\r\n// Authorization: token ? `Bearer ${token}` : '',\r\n// 'content-type': 'application/x-www-form-urlencoded;charset=utf-8',\r\n// 'Access-Control-Allow-Origin': \"*\"\r\n// },\r\n// };\r\n\r\n// return {\r\n// call: ( method, url, data, headers = { ...defaultOptions } ) => axios({\r\n// method,\r\n// url,\r\n// data: qs.stringify({\r\n// ...data\r\n// }),\r\n// headers\r\n// })\r\n// };\r\n// };\r\n","import { region_get_url, provincia_get_url, distrito_get_url } from \"./urlBase\"\r\nimport { apiCall } from \"./apiCall\";\r\n\r\nconst listar_regiones = async ( only_actives ) => {\r\n\r\n try {\r\n\r\n // const token = localStorage.getItem('token')\r\n // const request = client(token)\r\n // const resp = await request.call( 'GET', region_get_url, null )\r\n\r\n const resp = await apiCall( 'GET', `${region_get_url}/${only_actives}`, null )\r\n const response = resp.data\r\n\r\n if ( response.Success ) {\r\n return response\r\n }\r\n else {\r\n console.log('ubigeoHelper', '15')\r\n throw response\r\n }\r\n\r\n } catch ( e ) {\r\n console.log('ubigeoHelper', '20')\r\n throw e\r\n }\r\n}\r\n\r\nconst listar_provincias = async ( region ) => {\r\n\r\n try {\r\n\r\n // const token = localStorage.getItem('token')\r\n // const request = client(token)\r\n // const resp = await request.call( 'GET', `${provincia_get_url}/${region}`, null )\r\n\r\n const resp = await apiCall( 'GET', `${provincia_get_url}/${region}`, null )\r\n const response = resp.data\r\n\r\n if ( response.Success ) {\r\n return response\r\n }\r\n else {\r\n console.log('ubigeoHelper', '36')\r\n throw response\r\n }\r\n\r\n } catch ( e ) {\r\n console.log('ubigeoHelper', '41')\r\n throw e\r\n }\r\n}\r\n\r\nconst listar_distritos = async ( region, provincia ) => {\r\n\r\n try {\r\n\r\n // const token = localStorage.getItem('token')\r\n // const request = client(token)\r\n // const resp = await request.call( 'GET', `${distrito_get_url}/${region}/${provincia}`, null )\r\n\r\n const resp = await apiCall( 'GET', `${distrito_get_url}/${region}/${provincia}`, null )\r\n const response = resp.data\r\n\r\n if ( response.Success ) {\r\n return response\r\n }\r\n else {\r\n console.log('ubigeoHelper', '57')\r\n throw response\r\n }\r\n\r\n } catch ( e ) {\r\n console.log('ubigeoHelper', '62')\r\n throw e\r\n }\r\n}\r\n\r\nexport {\r\n listar_regiones,\r\n listar_provincias,\r\n listar_distritos\r\n}","import { getRegiones, getProvincias, getDistritos, getRegionesMuni, getProvinciasMuni, getDistritosMuni } from \"../actions/ubigeoActions\"\r\nimport { Mensaje } from \"../../controls/Mensaje\"\r\nimport { logErrors } from \"../../logErrors\"\r\nimport { listar_regiones, listar_provincias, listar_distritos } from \"../../helpers/ubigeoHelper\"\r\nimport { ubigeoTypes } from \"../../types/ubigeoTypes\"\r\n\r\nexport const getRegionesBD = () => {\r\n return async( dispatch, getState ) => {\r\n try {\r\n dispatch( getRegiones( [] ) )\r\n \r\n const response = await listar_regiones('1')\r\n\r\n if ( response.Validacion !== '' ){\r\n dispatch( { type: ubigeoTypes.REGION_GET_ERROR, payload: { message: response.Validacion, severity: 'error' } } );\r\n }\r\n else{\r\n dispatch( { type: ubigeoTypes.REGION_GET_COMPLETE, \r\n payload: response.Data } );\r\n }\r\n\r\n } catch ( e ) {\r\n dispatch( { type: ubigeoTypes.REGION_GET_ERROR, payload: [] } );\r\n const err = logErrors( e )\r\n // Mensaje( err.Message, err.Type )\r\n Mensaje( 'Se perdió la conexión.
Intente nuevamente por favor', err.Type )\r\n }\r\n \r\n }\r\n}\r\n\r\n\r\nexport const getProvinciasBD = ( region ) => {\r\n return async( dispatch, getState ) => {\r\n try {\r\n dispatch( getProvincias( [] ) )\r\n \r\n const response = await listar_provincias( region )\r\n\r\n if ( response.Validacion !== '' ){\r\n dispatch( { type: ubigeoTypes.PROVINCIA_GET_ERROR, payload: { message: response.Validacion, severity: 'error' } } );\r\n }\r\n else{\r\n dispatch( { type: ubigeoTypes.PROVINCIA_GET_COMPLETE, \r\n payload: response.Data } );\r\n }\r\n\r\n } catch ( e ) {\r\n dispatch( { type: ubigeoTypes.PROVINCIA_GET_ERROR, payload: [] } );\r\n const err = logErrors( e )\r\n // Mensaje( err.Message, err.Type )\r\n Mensaje( 'Se perdió la conexión.
Intente nuevamente por favor', err.Type )\r\n }\r\n \r\n }\r\n}\r\n\r\n\r\nexport const getDistritosBD = ( region, provincia ) => {\r\n return async( dispatch, getState ) => {\r\n try {\r\n dispatch( getDistritos( [] ) )\r\n \r\n const response = await listar_distritos( region, provincia )\r\n\r\n if ( response.Validacion !== '' ){\r\n dispatch( { type: ubigeoTypes.DISTRITO_GET_ERROR, payload: { message: response.Validacion, severity: 'error' } } );\r\n }\r\n else{\r\n \r\n dispatch( { type: ubigeoTypes.DISTRITO_GET_COMPLETE, \r\n payload: response.Data } );\r\n }\r\n\r\n } catch ( e ) {\r\n dispatch( { type: ubigeoTypes.DISTRITO_GET_ERROR, payload: [] } );\r\n const err = logErrors( e )\r\n // Mensaje( err.Message, err.Type )\r\n Mensaje( 'Se perdió la conexión.
Intente nuevamente por favor', err.Type )\r\n }\r\n \r\n }\r\n}\r\n\r\n\r\n\r\n\r\nexport const getRegionesMuniBD = () => {\r\n return async( dispatch, getState ) => {\r\n try {\r\n dispatch( getRegionesMuni( [] ) )\r\n \r\n const response = await listar_regiones('0')\r\n\r\n if ( response.Validacion !== '' ){\r\n dispatch( { type: ubigeoTypes.REGION_MUNI_GET_ERROR, payload: { message: response.Validacion, severity: 'error' } } );\r\n }\r\n else{\r\n dispatch( { type: ubigeoTypes.REGION_MUNI_GET_COMPLETE, \r\n payload: response.Data } );\r\n }\r\n\r\n } catch ( e ) {\r\n dispatch( { type: ubigeoTypes.REGION_MUNI_GET_ERROR, payload: [] } );\r\n const err = logErrors( e )\r\n // Mensaje( err.Message, err.Type )\r\n Mensaje( 'Se perdió la conexión.
Intente nuevamente por favor', err.Type )\r\n }\r\n \r\n }\r\n}\r\n\r\n\r\nexport const getProvinciasMuniBD = ( region ) => {\r\n return async( dispatch, getState ) => {\r\n try {\r\n dispatch( getProvinciasMuni( [] ) )\r\n \r\n const response = await listar_provincias( region )\r\n\r\n if ( response.Validacion !== '' ){\r\n dispatch( { type: ubigeoTypes.PROVINCIA_MUNI_GET_ERROR, payload: { message: response.Validacion, severity: 'error' } } );\r\n }\r\n else{\r\n dispatch( { type: ubigeoTypes.PROVINCIA_MUNI_GET_COMPLETE, \r\n payload: response.Data } );\r\n }\r\n\r\n } catch ( e ) {\r\n dispatch( { type: ubigeoTypes.PROVINCIA_MUNI_GET_ERROR, payload: [] } );\r\n const err = logErrors( e )\r\n // Mensaje( err.Message, err.Type )\r\n Mensaje( 'Se perdió la conexión.
Intente nuevamente por favor', err.Type )\r\n }\r\n \r\n }\r\n}\r\n\r\n\r\nexport const getDistritosMuniBD = ( region, provincia ) => {\r\n return async( dispatch, getState ) => {\r\n try {\r\n dispatch( getDistritosMuni( [] ) )\r\n \r\n const response = await listar_distritos( region, provincia )\r\n\r\n if ( response.Validacion !== '' ){\r\n dispatch( { type: ubigeoTypes.DISTRITO_MUNI_GET_ERROR, payload: { message: response.Validacion, severity: 'error' } } );\r\n }\r\n else{\r\n \r\n dispatch( { type: ubigeoTypes.DISTRITO_MUNI_GET_COMPLETE, \r\n payload: response.Data } );\r\n }\r\n\r\n } catch ( e ) {\r\n dispatch( { type: ubigeoTypes.DISTRITO_MUNI_GET_ERROR, payload: [] } );\r\n const err = logErrors( e )\r\n // Mensaje( err.Message, err.Type )\r\n Mensaje( 'Se perdió la conexión.
Intente nuevamente por favor', err.Type )\r\n }\r\n \r\n }\r\n}\r\n","import React from 'react'\r\nimport PropTypes from 'prop-types'\r\nimport NumberFormat from 'react-number-format'\r\n\r\nconst FORMATOS = {\r\n dni: '########',\r\n ruc: '###########',\r\n celular: '### ### ###',\r\n}\r\n\r\nexport function TextNumber(props) {\r\n const { inputRef, onChange, ...other } = props;\r\n\r\n var format = ''\r\n switch ( props.name ) {\r\n case 'dni':\r\n format = props.id == 'dni' ? FORMATOS.dni : FORMATOS.ruc\r\n break;\r\n\r\n case 'celular':\r\n format = FORMATOS.celular\r\n break;\r\n \r\n default:\r\n break;\r\n }\r\n return (\r\n {\r\n onChange( { \r\n target: {\r\n name: props.name,\r\n value: values.value,\r\n } } )\r\n \r\n } }\r\n \r\n // thousandSeparator\r\n format={ format }\r\n isNumericString\r\n prefix=\"\"\r\n />\r\n );\r\n}\r\nTextNumber.propTypes = {\r\n inputRef: PropTypes.func.isRequired,\r\n name: PropTypes.string.isRequired,\r\n onChange: PropTypes.func.isRequired,\r\n};\r\n\r\n\r\n\r\n{/* className={ clsx( classes.margin, classes.textField ) } */}\r\n{/* \r\n \r\n DNI\r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n />\r\n */}\r\n\r\n\r\n","export const institucionTypes = {\r\n INSTITUCION_RESET: '[Institucion] RESET',\r\n INSTITUCION_GET_START: '[Institucion] GET_START',\r\n INSTITUCION_GET_COMPLETE: '[Institucion] GET_COMPLETE',\r\n INSTITUCION_GET_ERROR: '[Institucion] GET_ERROR' \r\n}","import { institucionTypes } from '../../types/instEducativaTypes'\r\n\r\nexport const getInstituciones = ( payload ) => ({\r\n type: institucionTypes.INSTITUCION_GET_START,\r\n payload\r\n})\r\n\r\nexport const resetInstituciones = ( payload = [] ) => ({\r\n type: institucionTypes.INSTITUCION_RESET,\r\n payload\r\n})\r\n","import { institucion_get_url } from \"./urlBase\"\r\nimport { apiCall } from \"./apiCall\";\r\n\r\nconst listar_instituciones = async ( region, provincia, distrito, nivel, tipo_inst_edu, ind_temporal ) => {\r\n\r\n try {\r\n\r\n // const token = localStorage.getItem('token')\r\n // const request = client(token)\r\n // const resp = await request.call( 'GET', `${institucion_get_url}/${region}/${provincia}/${distrito}/${nivel}`, null )\r\n const resp = await apiCall( 'GET', `${institucion_get_url}/${region}/${provincia}/${distrito}/${nivel}/${tipo_inst_edu}/${ind_temporal}`, null )\r\n const response = resp.data\r\n\r\n if ( response.Success ) {\r\n return response\r\n }\r\n else {\r\n console.log('ubigeoHelper', '15')\r\n throw response\r\n }\r\n\r\n } catch ( e ) {\r\n console.log('ubigeoHelper', '20')\r\n throw e\r\n }\r\n}\r\n\r\nexport {\r\n listar_instituciones\r\n}","import { Mensaje } from \"../../controls/Mensaje\"\r\nimport { logErrors } from \"../../logErrors\"\r\nimport { listar_instituciones } from \"../../helpers/institucionHelper\"\r\nimport { getInstituciones } from \"../actions/instEducativaActions\"\r\nimport { institucionTypes } from \"../../types/instEducativaTypes\"\r\n\r\nexport const getInstitucionesBD = ( region, provincia, distrito, nivel, tipo_inst_edu, ind_temporal ) => {\r\n return async( dispatch, getState ) => {\r\n try {\r\n dispatch( getInstituciones( [] ) )\r\n \r\n const response = await listar_instituciones( region, provincia, distrito, nivel, tipo_inst_edu, ind_temporal )\r\n\r\n if ( response.Validacion !== '' ){\r\n dispatch( { type: institucionTypes.INSTITUCION_GET_ERROR, payload: { message: response.Validacion, severity: 'error' } } );\r\n }\r\n else{\r\n dispatch( { type: institucionTypes.INSTITUCION_GET_COMPLETE, \r\n payload: response.Data } );\r\n }\r\n\r\n } catch ( e ) {\r\n dispatch( { type: institucionTypes.INSTITUCION_GET_ERROR, payload: [] } );\r\n const err = logErrors( e )\r\n Mensaje( err.Message, err.Type )\r\n }\r\n \r\n }\r\n}","export const municipalidadTypes = {\r\n MUNICIPALIDAD_RESET: '[municipalidad] RESET',\r\n MUNICIPALIDAD_GET_START: '[municipalidad] GET_START',\r\n MUNICIPALIDAD_GET_COMPLETE: '[municipalidad] GET_COMPLETE',\r\n MUNICIPALIDAD_GET_ERROR: '[municipalidad] GET_ERROR',\r\n}","import { municipalidadTypes } from '../../types/municipalidadTypes'\r\n\r\nexport const getMunicipalidades = ( payload ) => ({\r\n type: municipalidadTypes.MUNICIPALIDAD_GET_START,\r\n payload\r\n})\r\n\r\nexport const resetMunicipalidades = ( payload = [] ) => ({\r\n type: municipalidadTypes.MUNICIPALIDAD_RESET,\r\n payload\r\n})\r\n","import { municipalidad_get_url } from \"./urlBase\"\r\nimport { apiCall } from \"./apiCall\";\r\n\r\nconst listar_municipalidades = async ( region, provincia, distrito, all ) => {\r\n try {\r\n const resp = await apiCall( 'GET', `${municipalidad_get_url}/${region}/${provincia}/${distrito}/${all}`, null )\r\n const response = resp.data\r\n\r\n if ( response.Success ) {\r\n return response\r\n }\r\n else {\r\n console.log('municipalidadHelper', '15')\r\n throw response\r\n }\r\n\r\n } catch ( e ) {\r\n console.log('municipalidadHelper', '20')\r\n throw e\r\n }\r\n}\r\n\r\nexport {\r\n listar_municipalidades\r\n}","import { Mensaje } from \"../../controls/Mensaje\"\r\nimport { logErrors } from \"../../logErrors\"\r\nimport { listar_municipalidades } from \"../../helpers/municipalidadHelper\"\r\nimport { getMunicipalidades } from \"../actions/municipalidadActions\"\r\nimport { municipalidadTypes } from \"../../types/municipalidadTypes\"\r\n\r\nexport const getMunicipalidadesBD = ( region, provincia, distrito, all='si' ) => {\r\n return async( dispatch, getState ) => {\r\n try {\r\n dispatch( getMunicipalidades( [] ) )\r\n \r\n const response = await listar_municipalidades( region, provincia, distrito, all )\r\n \r\n if ( response.Validacion !== '' ){\r\n dispatch( { type: municipalidadTypes.MUNICIPALIDAD_GET_ERROR, payload: { message: response.Validacion, severity: 'error' } } );\r\n }\r\n else{\r\n dispatch( { type: municipalidadTypes.MUNICIPALIDAD_GET_COMPLETE, \r\n payload: response.Data } );\r\n }\r\n\r\n } catch ( e ) {\r\n dispatch( { type: municipalidadTypes.MUNICIPALIDAD_GET_ERROR, payload: [] } );\r\n const err = logErrors( e )\r\n Mensaje( err.Message, err.Type )\r\n }\r\n \r\n }\r\n}","export const padreTypes = {\r\n PADRE_SAVE_START: '[Padre] SAVE_START',\r\n PADRE_SAVE_COMPLETE: '[Padre] SAVE_COMPLETE',\r\n PADRE_SAVE_ERROR: '[Padre] SAVE_ERROR',\r\n PADRE_VALIDATED: '[Padre] VALIDATED',\r\n PADRE_UPDATED: '[Padre] UPDATED',\r\n}","import { padreTypes } from \"../../types/padreTypes\"\r\n\r\nexport const savePadre = ( payload ) => ({\r\n type: padreTypes.PADRE_SAVE_START,\r\n payload\r\n})\r\n\r\nexport const validCodigoVerificacion = ( payload ) => ({\r\n type: padreTypes.PADRE_VALIDATED,\r\n payload\r\n})\r\n\r\nexport const updatePadre = ( payload ) => ({\r\n type: padreTypes.PADRE_UPDATED,\r\n payload\r\n})\r\n","import * as Yup from 'yup'\r\n\r\nconst ProfileSchema = Yup.object().shape( {\r\n tipo_inst_edu: Yup.string()\r\n .required('Requerido'),\r\n nivel: Yup.string()\r\n .required('Requerido'),\r\n region: Yup.string()\r\n .required('Requerido'),\r\n provincia: Yup.string()\r\n .required('Requerido'),\r\n distrito: Yup.string()\r\n .required('Requerido'),\r\n inst_educativa: Yup.string()\r\n .required('Requerido'),\r\n tipo_doc_hijo: Yup.string()\r\n .required('Requerido'),\r\n nacionalidad: Yup.string()\r\n .required('Requerido'),\r\n dni: Yup.string()\r\n .when(\"tipo_doc_hijo\", {\r\n is: (tipo_doc_hijo => {\r\n return ( tipo_doc_hijo === '0101' ) ? true : false;\r\n }),\r\n then: Yup.string().required('Requerido')\r\n .min(8, 'Debe tener 8 dígitos')\r\n .max(8, 'Debe tener 8 dígitos'),\r\n })\r\n .when(\"tipo_doc_hijo\", {\r\n is: (tipo_doc_hijo => {\r\n return ( tipo_doc_hijo === '0102' || tipo_doc_hijo === '0103' ) ? true : false;\r\n }),\r\n then: Yup.string().required('Requerido')\r\n .min(12, 'Debe tener 12 caracteres')\r\n .max(12, 'Debe tener 12 caracteres'),\r\n }),\r\n nombre: Yup.string()\r\n .required('Requerido')\r\n .trim('Requerido'),\r\n apellido_paterno: Yup.string()\r\n .required('Requerido')\r\n .trim('Requerido'),\r\n apellido_materno: Yup.string()\r\n .required('Requerido')\r\n .trim('Requerido'),\r\n genero: Yup.string()\r\n .required('Requerido'),\r\n autorizacion: Yup.string()\r\n .required('Requerido'),\r\n email: Yup.string().email('Correo inválido'),\r\n grado: Yup.string()\r\n .required('Requerido'),\r\n // .nullable(),\r\n seccion: Yup.string()\r\n .required('Requerido'),\r\n // acceptTerms: Yup.bool().oneOf([true], 'Debe seleccionar el formato'),\r\n // formato: Yup.array()\r\n // .required(\"Debe seleccionar el formato\"),\r\n formato: Yup.string()\r\n .required(\"Debe seleccionar formato\"),\r\n // municipalidad: Yup.string()\r\n // .required('Requerido')\r\n\r\n\r\n\r\n \r\n // region_muni: Yup.string().required('Requerido'),\r\n // provincia_muni: Yup.string().required('Requerido'),\r\n // distrito_muni: Yup.string().required('Requerido'),\r\n // referencia_muni: Yup.string().required('Requerido'),\r\n\r\n\r\n // region_muni: Yup.string()\r\n // .when(\"formato\", {\r\n // is: ( formato => {\r\n // return formato === '72' || formato === '74' || formato === '76';\r\n // } ),\r\n // then: Yup.string().required('Requerido')\r\n // }),\r\n // provincia_muni: Yup.string()\r\n // .when(\"formato\", {\r\n // is: ( formato => {\r\n // return formato === '72' || formato === '74' || formato === '76';\r\n // } ),\r\n // then: Yup.string().required('Requerido')\r\n // }),\r\n // distrito_muni: Yup.string()\r\n // .when(\"formato\", {\r\n // is: ( formato => {\r\n // return formato === '72' || formato === '74' || formato === '76';\r\n // } ),\r\n // then: Yup.string().required('Requerido')\r\n // }),\r\n // referencia_muni: Yup.string()\r\n // .when(\"formato\", {\r\n // is: ( formato => {\r\n // return formato === '74' || formato === '76';\r\n // } ),\r\n // then: Yup.string().required('Requerido')\r\n // }),\r\n municipalidad: Yup.string()\r\n // .when(\"formato\", {\r\n // is: ( formato => {\r\n // return formato === '72';\r\n // } ),\r\n // then: \r\n // Yup.string()\r\n // .when(\"existe_observacion\", {\r\n // is: ( existe_observacion => {\r\n // return !existe_observacion;\r\n // } ),\r\n // then: Yup.string().required('Requerido')\r\n // })\r\n // })\r\n .when(\"formato\", {\r\n is: ( formato => {\r\n return formato === '95';\r\n } ),\r\n then: Yup.string().required('Requerido')\r\n }),\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n // aceptar_termino: Yup.boolean()\r\n // .oneOf([true]),\r\n // riesgos: Yup.array( Yup.string().oneOf( ['High', 'Medium', 'Low'] ) ).min(1),\r\n // comentario_riesgos: Yup.mixed().when('riesgos', {\r\n // is: ( riesgos ) => riesgos.find( ir => ir === 'High'),\r\n // then: Yup.string().required().min(20).max(100),\r\n // otherwise: Yup.string().min(20).max(100)\r\n // })\r\n} )\r\n\r\n// const schema = yup\r\n// .object({\r\n// red: yup.boolean(),\r\n// orange: yup.boolean(),\r\n// green: yup.boolean()\r\n// })\r\n// .test(\r\n// 'myCustomTest',\r\n// null,\r\n// (obj) => {\r\n// if ( obj.red || obj.orange || obj.green ) {\r\n// return true; // everything is fine\r\n// }\r\n\r\n// return new yup.ValidationError(\r\n// 'Please check one checkbox',\r\n// null,\r\n// 'myCustomFieldName'\r\n// );\r\n// }\r\n// );\r\n\r\nexport default ProfileSchema","import { pregunta_url } from \"./urlBase\"\r\nimport { apiCall } from \"./apiCall\";\r\n\r\nconst listar_preguntas = async ( formato ) => {\r\n\r\n try {\r\n\r\n // const token = localStorage.getItem('token')\r\n // const request = client(token)\r\n // const resp = await request.call( 'GET', pregunta_url, null )\r\n\r\n const resp = await apiCall( 'GET', `${pregunta_url}/${formato}` , null )\r\n const response = resp.data\r\n\r\n if ( response.Success ) {\r\n return response\r\n }\r\n else {\r\n console.log('preguntasHelper', '15')\r\n throw response\r\n }\r\n\r\n } catch ( e ) {\r\n console.log('preguntasHelper', '20')\r\n throw e\r\n }\r\n}\r\n\r\nexport {\r\n listar_preguntas\r\n}","export const formatoTypes = {\r\n FORMATO_RESET: '[Formato] RESET',\r\n FORMATO_GET_START: '[Formato] GET_START',\r\n FORMATO_GET_COMPLETE: '[Formato] GET_COMPLETE',\r\n FORMATO_GET_ERROR: '[Formato] GET_ERROR',\r\n}","import { formatoTypes } from \"../../types/formatoTypes\"\r\n\r\nexport const getFormatos = ( payload ) => ({\r\n type: formatoTypes.FORMATO_GET_START,\r\n payload\r\n})\r\n\r\nexport const resetFormatos = ( payload = [] ) => ({\r\n type: formatoTypes.FORMATO_RESET,\r\n payload\r\n})\r\n\r\n","import { formato_get_url, formato_get_by_nombre_url } from \"./urlBase\"\r\nimport { apiCall } from \"./apiCall\";\r\n\r\nconst listar_formatos = async () => {\r\n\r\n try {\r\n\r\n // const token = localStorage.getItem('token')\r\n // const request = client(token)\r\n // const resp = await request.call( 'GET', formato_get_url, null )\r\n\r\n const resp = await apiCall( 'GET', formato_get_url, null )\r\n const response = resp.data\r\n\r\n if ( response.Success ) {\r\n return response\r\n }\r\n else {\r\n console.log('formatoHelper', '15')\r\n throw response\r\n }\r\n\r\n } catch ( e ) {\r\n console.log('formatoHelper', '20')\r\n throw e\r\n }\r\n}\r\n\r\nconst listar_formatos_by_tipo = async (tipo, miembro) => {\r\n\r\n try {\r\n\r\n // const token = localStorage.getItem('token')\r\n // const request = client(token)\r\n // const resp = await request.call( 'GET', formato_get_by_nombre_url, null )\r\n if (miembro == '')\r\n miembro = '0';\r\nconsole.log('miembro:::::::::::::::', miembro)\r\n const resp = await apiCall( 'GET', `${formato_get_by_nombre_url}/${tipo}/${miembro}`, null )\r\n const response = resp.data\r\n\r\n if ( response.Success ) {\r\n return response\r\n }\r\n else {\r\n console.log('formatoHelper', '15')\r\n throw response\r\n }\r\n\r\n } catch ( e ) {\r\n console.log('formatoHelper', '20')\r\n throw e\r\n }\r\n}\r\n\r\nexport {\r\n listar_formatos,\r\n listar_formatos_by_tipo\r\n}","import { veeduria_url, download_pdf_url } from \"./urlBase\"\r\nimport { apiCall, apiPdf } from \"./apiCall\";\r\n\r\nconst insertar_veeduria = async (data) => {\r\n\r\n try {\r\n\r\n // const token = localStorage.getItem('token')\r\n // const request = client(token)\r\n // const resp = await request.call( 'POST', veeduria_url, data )\r\n\r\n const resp = await apiCall( 'POST', veeduria_url, data )\r\n const response = resp.data\r\n\r\n if ( response.Success ) {\r\n return response\r\n }\r\n else {\r\n console.log('veeduriaHelper', '15')\r\n throw response\r\n }\r\n\r\n } catch ( e ) {\r\n console.log('veeduriaHelper', '20')\r\n throw e\r\n }\r\n}\r\n\r\nconst download_constancia = async (id) => {\r\n\r\n try {\r\n\r\n // const response = await fetch(`${download_pdf_url}/${id}`, {\r\n // method: 'GET',\r\n // headers: {\r\n // 'Content-Type': 'application/json', // Si es necesario\r\n // },\r\n // });\r\n\r\n // if (!response.ok) {\r\n // throw new Error('Error al descargar el archivo PDF');\r\n // }\r\n\r\n // // Convertimos la respuesta a un blob\r\n // const blob = await response.blob();\r\n // // Creamos un objeto URL del blob\r\n // const blobUrl = URL.createObjectURL(blob);\r\n\r\n // // Creamos un enlace invisible\r\n // const link = document.createElement('a');\r\n // link.href = blobUrl;\r\n // link.setAttribute('download', 'archivo.pdf');\r\n // document.body.appendChild(link);\r\n \r\n // // Simulamos el clic en el enlace para iniciar la descarga\r\n // link.click();\r\n\r\n // // Eliminamos el enlace después de la descarga\r\n // link.parentNode.removeChild(link);\r\n\r\n\r\n\r\n\r\n const resp = await apiPdf( 'GET', `${download_pdf_url}/${id}`, null )\r\n debugger;\r\n if (!resp.statusText == 'OK') {\r\n throw new Error('Error al descargar el archivo PDF');\r\n }\r\n\r\n // Convertimos la respuesta a un blob\r\n const blob = new Blob([resp.data], { type: 'application/pdf' });\r\n // Creamos un objeto URL del blob\r\n const blobUrl = URL.createObjectURL(blob);\r\n\r\n // Creamos un enlace invisible\r\n const link = document.createElement('a');\r\n link.href = blobUrl;\r\n link.setAttribute('download', 'constancia.pdf');\r\n document.body.appendChild(link);\r\n \r\n // Simulamos el clic en el enlace para iniciar la descarga\r\n link.click();\r\n\r\n // Eliminamos el enlace después de la descarga\r\n link.parentNode.removeChild(link);\r\n\r\n\r\n\r\n\r\n\r\n\r\n// console.log('download_constancia::', id)\r\n// // const token = localStorage.getItem('token')\r\n// // const request = client(token)\r\n// // const resp = await request.call( 'POST', veeduria_url, data )\r\n\r\n// debugger;\r\n// const resp = await apiPdf( 'GET', `${download_pdf_url}/${id}`, null )\r\n// const response = resp.data\r\n\r\n// // Creamos un blob con la respuesta recibida\r\n// const pdfBlob = new Blob([response.data], { type: 'application/pdf' });\r\n// // Creamos una URL del objeto blob\r\n// const pdfUrl = URL.createObjectURL(pdfBlob);\r\n\r\n// // Ahora puedes usar pdfUrl para abrir el archivo PDF en una nueva ventana o descargarlo automáticamente\r\n// window.open(pdfUrl);\r\n\r\n return 1;\r\n\r\n } catch ( e ) {\r\n console.log('veeduriaHelper', '20')\r\n return 0;\r\n }\r\n}\r\n\r\n\r\nexport {\r\n insertar_veeduria,\r\n download_constancia\r\n}","export const veeduriaTypes = {\r\n VEEDURIA_SAVE_START: '[Veeduria] SAVE_START',\r\n VEEDURIA_SAVE_COMPLETE: '[Veeduria] SAVE_COMPLETE',\r\n VEEDURIA_SAVE_ERROR: '[Veeduria] SAVE_ERROR',\r\n VEEDURIA_DOWNLOAD_START: '[Veeduria] DOWNLOAD_START',\r\n VEEDURIA_DOWNLOAD_COMPLETE: '[Veeduria] DOWNLOAD_COMPLETE',\r\n VEEDURIA_DOWNLOAD_ERROR: '[Veeduria] DOWNLOAD_ERROR'\r\n}","import Swal from 'sweetalert2'\r\n\r\nexport const ProcesoStart = ( title = '' ) => {\r\n Swal.fire({\r\n title,\r\n text: 'Procesando...',\r\n allowOutsideClick: false,\r\n onBeforeOpen: () => {\r\n Swal.showLoading()\r\n }\r\n })\r\n}\r\n\r\nexport const ProcesoEnd = () => {\r\n Swal.close()\r\n}","import { Mensaje } from \"../../controls/Mensaje\"\r\nimport { logErrors } from \"../../logErrors\"\r\nimport { insertar_veeduria, download_constancia } from \"../../helpers/veeduriaHelper\"\r\nimport { veeduriaTypes } from \"../../types/veeduriaTypes\"\r\nimport { insertVeeduria, downloadConstancia } from \"../actions/veeduriaActions\"\r\nimport { ProcesoEnd, ProcesoStart } from \"../../controls/Proceso\"\r\n\r\n\r\nexport const insertVeeduriaBD = (estudiante) => {\r\n return async( dispatch, getState ) => {\r\n try {\r\n const padre = getState().padre\r\n const informacion_basica = getState().informacion_basica\r\n\r\n // const { preguntas: preguntasTotal } = getState().pregunta\r\n // let preguntas;\r\n // let ptaUno = preguntasTotal.filter( e => e.ID == '189' )\r\n // let rptaUno = ptaUno[0].RESPUESTA[0]\r\n // switch (rptaUno) {\r\n // case '619': // Presencial\r\n // preguntas = preguntasTotal.filter( e => e.GRUPO_COD == '43' || e.GRUPO_COD == '44' || e.GRUPO_COD == '45' || e.GRUPO_COD == '46' || e.GRUPO_COD == '47' );\r\n // break;\r\n \r\n // case '620': // Semipresencial\r\n // preguntas = preguntasTotal.filter( e => e.GRUPO_COD == '43' || e.GRUPO_COD == '48' || e.GRUPO_COD == '49' || e.GRUPO_COD == '50' || e.GRUPO_COD == '51' );\r\n // break;\r\n \r\n // case '621': // A distancia\r\n // preguntas = preguntasTotal.filter( e => e.GRUPO_COD == '43' || e.GRUPO_COD == '52' || e.GRUPO_COD == '53' );\r\n // break;\r\n\r\n // default:\r\n // break;\r\n // }\r\n const { preguntas } = getState().pregunta\r\n\r\n dispatch( insertVeeduria() )\r\n \r\n ProcesoStart()\r\n const response = await insertar_veeduria({ informacion_basica, padre, estudiante, preguntas });\r\n\r\n if ( response.Validacion !== '' ){\r\n dispatch( { type: veeduriaTypes.VEEDURIA_SAVE_ERROR, payload: { message: response.Validacion, severity: 'error' } } );\r\n }\r\n else{\r\n debugger;\r\n dispatch( { type: veeduriaTypes.VEEDURIA_SAVE_COMPLETE, \r\n payload: response.Data } );\r\n }\r\n \r\n ProcesoEnd()\r\n\r\n } catch ( e ) {\r\n ProcesoEnd()\r\n const err = logErrors( e )\r\n dispatch( { type: veeduriaTypes.VEEDURIA_SAVE_ERROR, payload: { message: err.Message, severity: 'error' } } );\r\n // dispatch( { type: veeduriaTypes.VEEDURIA_SAVE_ERROR, payload: { message: 'Se perdió la conexión.
Intente nuevamente por favor', severity: 'error' } } );\r\n Mensaje( err.Message, err.Type )\r\n }\r\n \r\n }\r\n}\r\n\r\n\r\n\r\nexport const download = ( id ) => {\r\n return async( dispatch, getState ) => {\r\n try {\r\n console.log('download xxxxxxxx:', id)\r\n dispatch( downloadConstancia() )\r\n \r\n ProcesoStart()\r\n const response = await download_constancia(id);\r\ndebugger;\r\n if ( response == 1 )\r\n dispatch( { type: veeduriaTypes.VEEDURIA_DOWNLOAD_COMPLETE, payload: response.Data } );\r\n else\r\n dispatch( { type: veeduriaTypes.VEEDURIA_DOWNLOAD_ERROR, payload: { message: response.Validacion, severity: 'error' } } );\r\n \r\n ProcesoEnd()\r\n\r\n\r\n } catch ( e ) {\r\n dispatch( { type: veeduriaTypes.VEEDURIA_DOWNLOAD_ERROR, payload: [] } );\r\n const err = logErrors( e )\r\n Mensaje( err.Message, err.Type )\r\n \r\n }\r\n \r\n }\r\n}\r\n\r\n","import { veeduriaTypes } from '../../types/veeduriaTypes'\r\n\r\nexport const insertVeeduria = ( payload ) => ({\r\n type: veeduriaTypes.VEEDURIA_SAVE_START,\r\n payload\r\n})\r\n\r\n\r\nexport const downloadConstancia = ( payload ) => ({\r\n type: veeduriaTypes.VEEDURIA_DOWNLOAD_START,\r\n payload\r\n})\r\n","import { valida_existe_dni_url, obtiene_formatos_url, valida_beneficiario_url } from \"./urlBase\"\r\nimport { apiCall } from \"./apiCall\";\r\n\r\nconst validaDNI = async ( estudiante ) => {\r\n\r\n try {\r\n // const token = localStorage.getItem('token')\r\n // const request = client(token)\r\n // const resp = await request.call( 'POST', valida_existe_dni_url, estudiante )\r\n console.log(estudiante)\r\n const resp = await apiCall( 'POST', valida_existe_dni_url, estudiante )\r\n const response = resp.data\r\n\r\n if ( response.Success ) {\r\n return response\r\n }\r\n else {\r\n console.log('estudianteHelper', '37')\r\n throw response\r\n }\r\n\r\n } catch ( e ) {\r\n console.log('estudianteHelper', '42')\r\n throw e\r\n }\r\n}\r\n\r\nconst obtieneFormatos = async ( estudiante ) => {\r\n\r\n try {\r\n const resp = await apiCall( 'POST', obtiene_formatos_url, estudiante )\r\n const response = resp.data\r\n\r\n if ( response.Success ) {\r\n return response\r\n }\r\n else {\r\n console.log('estudianteHelper', '41')\r\n throw response\r\n }\r\n\r\n } catch ( e ) {\r\n console.log('estudianteHelper', '47')\r\n throw e\r\n }\r\n}\r\n\r\n\r\nconst validaBeneficiario = async ( estudiante ) => {\r\n\r\n try {\r\n console.log(estudiante)\r\n const resp = await apiCall( 'POST', valida_beneficiario_url, estudiante )\r\n const response = resp.data\r\n\r\n if ( response.Success ) {\r\n return response\r\n }\r\n else {\r\n console.log('estudianteHelper', '37')\r\n throw response\r\n }\r\n\r\n } catch ( e ) {\r\n console.log('estudianteHelper', '42')\r\n throw e\r\n }\r\n}\r\n\r\nexport {\r\n validaDNI,\r\n obtieneFormatos,\r\n validaBeneficiario\r\n}","import { estudianteTypes } from \"../../types/estudianteTypes\"\r\nimport { formatoTypes } from \"../../types/formatoTypes\"\r\nimport { resetValidacion, valida_DNI, obtiene_formatos, valida_Beneficiario } from \"../actions/estudianteActions\"\r\nimport { validaDNI, obtieneFormatos, validaBeneficiario } from \"../../helpers/estudianteHelper\"\r\nimport { Mensaje } from \"../../controls/Mensaje\"\r\nimport { logErrors, MessagesError } from \"../../logErrors\"\r\nimport { getFormatos } from \"../actions/formatoActions\"\r\nimport { ProcesoStart, ProcesoEnd } from \"../../controls/Proceso\"\r\nimport { resetDistritos, resetProvincias, resetRegiones } from \"../actions/ubigeoActions\"\r\nimport { resetInstituciones } from \"../actions/instEducativaActions\"\r\nimport { getRegionesBD } from \"./ubigeoThunk\"\r\n\r\nexport const validarDNI = ( estudiante ) => {\r\n return async( dispatch, getState ) => {\r\n try {\r\n const { dni, message, severity } = getState().estudiante\r\n\r\n if (estudiante.dni === dni && severity === 'success' && message !== '') return;\r\n\r\n dispatch( valida_DNI() )\r\n \r\n const response = await validaDNI( estudiante )\r\n\r\n console.log(response)\r\n if ( response.Validacion !== '' ){\r\n dispatch( { type: estudianteTypes.ESTUDIANTE_SAVE_ERROR, payload: { message: response.Validacion, severity: 'error', isValidated: true, lista_formato: response.Data } } );\r\n Mensaje( response.Validacion, 'Aviso', 'info' )\r\n dispatch( resetValidacion( { isValidated: false, message: '', severity: '', lista_formato: response.Data }) )\r\n }\r\n else{\r\n dispatch( { type: estudianteTypes.ESTUDIANTE_SAVE_COMPLETE, \r\n payload: { ...estudiante, message: 'Se validó con éxito', severity: 'success', isValidated: true } } );\r\n dispatch( { type: estudianteTypes.ESTUDIANTE_GET_FORMATOS, \r\n payload: response.Data } );\r\n dispatch( { type: formatoTypes.FORMATO_GET_COMPLETE, \r\n payload: response.Data } );\r\n }\r\n\r\n\r\n } catch ( e ) {\r\n dispatch( { type: estudianteTypes.ESTUDIANTE_SAVE_ERROR, payload: [] } );\r\n const err = logErrors( e )\r\n Mensaje( err.Message, err.Type )\r\n \r\n }\r\n \r\n }\r\n}\r\n\r\nexport const obtenerFormatos = ( estudiante ) => {\r\n return async( dispatch, getState ) => {\r\n try {\r\n // dispatch( obtiene_formatos( { isLoading: true, message: '' } ) )\r\n\r\n const response = await obtieneFormatos( estudiante )\r\n\r\n if ( response.Validacion !== '' ){\r\n dispatch( { type: estudianteTypes.ESTUDIANTE_SAVE_ERROR, payload: { message: response.Validacion, severity: 'error' } } );\r\n }\r\n else{\r\n // dispatch( { type: estudianteTypes.ESTUDIANTE_GET_FORMATOS, \r\n // payload: response.Data } );\r\n dispatch( { type: formatoTypes.FORMATO_GET_COMPLETE, \r\n payload: response.Data } );\r\n }\r\n \r\n // dispatch( obtiene_formatos( { isLoading: false, message: response.Validacion } ) )\r\n\r\n } catch ( e ) {\r\n dispatch( { type: estudianteTypes.ESTUDIANTE_SAVE_ERROR, payload: [] } );\r\n const err = logErrors( e )\r\n Mensaje( err.Message, err.Type )\r\n \r\n }\r\n \r\n }\r\n}\r\n\r\n\r\nexport const validarBeneficiario = ( estudiante ) => {\r\n return async( dispatch, getState ) => {\r\n try {\r\n // dispatch( valida_Beneficiario() )\r\n \r\n ProcesoStart()\r\n\r\n const response = await validaBeneficiario( estudiante )\r\n\r\n console.log(response)\r\n if ( response.Validacion !== '' ){\r\n dispatch( { type: estudianteTypes.ESTUDIANTE_SAVE_ERROR, payload: { message: response.Validacion, severity: 'success', isValidated: true, beneficiario: response.Data != 0 } } );\r\n Mensaje( response.Validacion, 'Aviso', 'info' )\r\n dispatch( resetValidacion( { isValidated: false, message: '', severity: '' }) )\r\n }\r\n else{\r\n dispatch( { type: estudianteTypes.ESTUDIANTE_SAVE_COMPLETE, \r\n payload: { ...estudiante, message: 'Se validó con éxito', severity: 'success', isValidated: true, beneficiario: response.Data != 0 } } );\r\n \r\n ProcesoEnd();\r\n }\r\n\r\n } catch ( e ) {\r\n dispatch( { type: estudianteTypes.ESTUDIANTE_SAVE_ERROR, payload: [] } );\r\n const err = logErrors( e )\r\n Mensaje( err.Message, err.Type )\r\n \r\n }\r\n \r\n }\r\n}\r\n\r\n\r\n\r\n\r\n","\r\nimport React from 'react'\r\nimport { Dialog, DialogTitle, DialogContent, Typography, DialogActions, Button, makeStyles,\r\n List, ListItem, ListItemText } from '@material-ui/core'\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n heading: {\r\n fontSize: theme.typography.pxToRem(17),\r\n fontWeight: theme.typography.fontWeightRegular,\r\n },\r\n}));\r\n\r\nexport const ConfirmControl = ( props ) => {\r\n\r\n const classes = useStyles();\r\n\r\n const { onSubmit, onClose, open, dni, nombre, alerta, ...other } = props;\r\n\r\n const handleCancel = () => {\r\n onClose();\r\n };\r\n\r\n const handleOk = () => {\r\n onSubmit();\r\n };\r\n\r\n return (\r\n \r\n {\r\n alerta\r\n ?\r\n Alerta!\r\n :\r\n ¿Desea recargar la página?\r\n }\r\n \r\n {/* \r\n ¿Desea registrar la veeduría escolar?\r\n */}\r\n {\r\n \r\n alerta\r\n ?\r\n \r\n Debe seleccionar la autorización de registro.\r\n \r\n :\r\n \r\n Se perderán todos los datos ingresados\r\n \r\n }\r\n\r\n {/* \r\n \r\n \r\n \r\n \r\n \r\n */}\r\n\r\n \r\n \r\n \r\n
\r\n {\r\n alerta\r\n ?\r\n
\r\n \r\n
\r\n :\r\n <>\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n }\r\n
\r\n\r\n
\r\n \r\n )\r\n}\r\n","export const parametroTypes = {\r\n TIPO_DOCUMENTO_RESET: '[Tipo_Documento] RESET',\r\n TIPO_DOCUMENTO_GET_START: '[Tipo_Documento] GET_START',\r\n TIPO_DOCUMENTO_GET_COMPLETE: '[Tipo_Documento] GET_COMPLETE',\r\n TIPO_DOCUMENTO_GET_ERROR: '[Tipo_Documento] GET_ERROR',\r\n \r\n TIPO_INST_EDU_RESET: '[Tipo_Inst_Edu] RESET',\r\n TIPO_INST_EDU_GET_START: '[Tipo_Inst_Edu] GET_START',\r\n TIPO_INST_EDU_GET_COMPLETE: '[Tipo_Inst_Edu] GET_COMPLETE',\r\n TIPO_INST_EDU_GET_ERROR: '[Tipo_Inst_Edu] GET_ERROR',\r\n \r\n NACIONALIDAD_RESET: '[Nacionalidad] RESET',\r\n NACIONALIDAD_GET_START: '[Nacionalidad] GET_START',\r\n NACIONALIDAD_GET_COMPLETE: '[Nacionalidad] GET_COMPLETE',\r\n NACIONALIDAD_GET_ERROR: '[Nacionalidad] GET_ERROR',\r\n}","import { parametro_get_url } from \"./urlBase\"\r\n\r\nconst listar_tipos_documento = async ( padre ) => {\r\n\r\n try {\r\n\r\n const resp = await fetch( parametro_get_url, {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/json',\r\n 'Access-Control-Allow-Origin': \"*\" },\r\n body: JSON.stringify({...padre})\r\n })\r\n const response = await resp.json()\r\n\r\n if ( response.Success ) {\r\n return response\r\n }\r\n else {\r\n console.log('parametroHelper', '20')\r\n throw response\r\n }\r\n\r\n } catch ( e ) {\r\n console.log('ubigeoHelper', '41')\r\n throw e\r\n }\r\n}\r\n\r\nconst listar_tipos_inst_edu = async ( padre ) => {\r\n\r\n try {\r\n\r\n const resp = await fetch( parametro_get_url, {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/json',\r\n 'Access-Control-Allow-Origin': \"*\" },\r\n body: JSON.stringify({...padre})\r\n })\r\n const response = await resp.json()\r\n\r\n if ( response.Success ) {\r\n return response\r\n }\r\n else {\r\n console.log('parametroHelper', '20')\r\n throw response\r\n }\r\n\r\n } catch ( e ) {\r\n console.log('ubigeoHelper', '41')\r\n throw e\r\n }\r\n}\r\n\r\nconst listar_nacionalidades = async ( padre ) => {\r\n\r\n try {\r\n\r\n const resp = await fetch( parametro_get_url, {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/json',\r\n 'Access-Control-Allow-Origin': \"*\" },\r\n body: JSON.stringify({...padre})\r\n })\r\n const response = await resp.json()\r\n\r\n if ( response.Success ) {\r\n return response\r\n }\r\n else {\r\n console.log('parametroHelper', '20')\r\n throw response\r\n }\r\n\r\n } catch ( e ) {\r\n console.log('ubigeoHelper', '41')\r\n throw e\r\n }\r\n}\r\n\r\nexport {\r\n listar_tipos_documento,\r\n listar_tipos_inst_edu,\r\n listar_nacionalidades\r\n}","import { getTiposDocumento, getTiposInstEdu, getNacionalidades } from \"../actions/parametroActions\"\r\nimport { Mensaje } from \"../../controls/Mensaje\"\r\nimport { logErrors } from \"../../logErrors\"\r\nimport { listar_tipos_documento, listar_tipos_inst_edu, listar_nacionalidades } from \"../../helpers/parametroHelper\"\r\nimport { parametroTypes } from \"../../types/parametroTypes\"\r\n\r\nexport const getTiposDocumentoBD = () => {\r\n return async( dispatch ) => {\r\n try {\r\n dispatch( getTiposDocumento( [] ) )\r\n \r\n const response = await listar_tipos_documento( { PARAMETRO_PADRE_COD: '0100' } )\r\n\r\n if ( response.Validacion !== '' ){\r\n dispatch( { type: parametroTypes.TIPO_DOCUMENTO_GET_ERROR, payload: { message: response.Validacion, severity: 'error' } } );\r\n }\r\n else{\r\n dispatch( { type: parametroTypes.TIPO_DOCUMENTO_GET_COMPLETE, \r\n payload: response.Data } );\r\n }\r\n\r\n } catch ( e ) {\r\n dispatch( { type: parametroTypes.TIPO_DOCUMENTO_GET_ERROR, payload: [] } );\r\n const err = logErrors( e )\r\n // Mensaje( err.Message, err.Type )\r\n Mensaje( 'Se perdió la conexión.
Intente nuevamente por favor', err.Type )\r\n }\r\n \r\n }\r\n}\r\n\r\n\r\nexport const getTiposInstEduBD = () => {\r\n return async( dispatch ) => {\r\n try {\r\n dispatch( getTiposInstEdu( [] ) )\r\n \r\n const response = await listar_tipos_inst_edu( { PARAMETRO_PADRE_COD: '0200' } )\r\n\r\n if ( response.Validacion !== '' ){\r\n dispatch( { type: parametroTypes.TIPO_INST_EDU_GET_ERROR, payload: { message: response.Validacion, severity: 'error' } } );\r\n }\r\n else{\r\n dispatch( { type: parametroTypes.TIPO_INST_EDU_GET_COMPLETE, \r\n payload: response.Data } );\r\n }\r\n\r\n } catch ( e ) {\r\n dispatch( { type: parametroTypes.TIPO_INST_EDU_GET_ERROR, payload: [] } );\r\n const err = logErrors( e )\r\n // Mensaje( err.Message, err.Type )\r\n Mensaje( 'Se perdió la conexión.
Intente nuevamente por favor', err.Type )\r\n }\r\n \r\n }\r\n}\r\n\r\n\r\nexport const getNacionalidadesBD = () => {\r\n return async( dispatch ) => {\r\n try {\r\n dispatch( getNacionalidades( [] ) )\r\n \r\n const response = await listar_nacionalidades( { PARAMETRO_PADRE_COD: '0300' } )\r\n\r\n if ( response.Validacion !== '' ){\r\n dispatch( { type: parametroTypes.NACIONALIDAD_GET_ERROR, payload: { message: response.Validacion, severity: 'error' } } );\r\n }\r\n else{\r\n dispatch( { type: parametroTypes.NACIONALIDAD_GET_COMPLETE, \r\n payload: response.Data } );\r\n }\r\n\r\n } catch ( e ) {\r\n dispatch( { type: parametroTypes.NACIONALIDAD_GET_ERROR, payload: [] } );\r\n const err = logErrors( e )\r\n // Mensaje( err.Message, err.Type )\r\n Mensaje( 'Se perdió la conexión.
Intente nuevamente por favor', err.Type )\r\n }\r\n \r\n }\r\n}\r\n\r\n","import { parametroTypes } from \"../../types/parametroTypes\"\r\n\r\nexport const getTiposDocumento = ( payload ) => ({\r\n type: parametroTypes.TIPO_DOCUMENTO_GET_START,\r\n payload\r\n})\r\n\r\nexport const resetTiposDocumento = ( payload = [] ) => ({\r\n type: parametroTypes.TIPO_DOCUMENTO_RESET,\r\n payload\r\n})\r\n\r\nexport const getTiposInstEdu = ( payload ) => ({\r\n type: parametroTypes.TIPO_INST_EDU_GET_START,\r\n payload\r\n})\r\n\r\nexport const resetTiposInstEdu = ( payload = [] ) => ({\r\n type: parametroTypes.TIPO_INST_EDU_RESET,\r\n payload\r\n})\r\n\r\nexport const getNacionalidades = ( payload ) => ({\r\n type: parametroTypes.NACIONALIDAD_GET_START,\r\n payload\r\n})\r\n\r\nexport const resetNacionalidades = ( payload = [] ) => ({\r\n type: parametroTypes.NACIONALIDAD_RESET,\r\n payload\r\n})\r\n","import React, { Component } from 'react';\r\nimport * as artData from './../../../data/art_data.json';\r\nimport { GoogleMap, LoadScript, Marker } from '@react-google-maps/api';\r\nimport { NEXT_PUBLIC_GOOGLE_MAPS_API_KEY } from '../../../helpers/urlBase';\r\nimport ArtInfoModal from './modal-map/ArtInfoModal';\r\n\r\nconst DEPAUW_BOUNDS = {\r\n north: 39.653244,\r\n south: 39.621949,\r\n west: -86.902833,\r\n east: -86.831743,\r\n};\r\n\r\nconst ClickLog = new Array(31).fill(0);\r\n\r\nconst DEPAUW_CENTER = { lat: 39.63930503475011, lng: -86.86344078645712 };\r\n\r\nconst mapStyle = { width: '100vw', height: '100vh' };\r\n\r\nconst option = {\r\n isMarkerShown: true,\r\n// restriction: {\r\n// latLngBounds: DEPAUW_BOUNDS,\r\n// strictBounds: false,\r\n// },\r\n\r\n// mapTypeControl: false,\r\n// scaleControl: true,\r\n// streetViewControl: false,\r\n// fullscreenControl: false,\r\n// clickableIcons: false,\r\n};\r\n\r\n\r\nclass MapContainer extends Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n selectedArt: null,\r\n modalShow: false,\r\n userPosition: {\r\n latitude: null,\r\n longitude: null,\r\n },\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n if (navigator.geolocation) {\r\n navigator.geolocation.watchPosition((position) => {\r\n this.setState({\r\n userPosition: {\r\n latitude: position.coords.latitude,\r\n longitude: position.coords.longitude,\r\n },\r\n });\r\n console.log('Latitude is :', position.coords.latitude);\r\n console.log('Longitude is :', position.coords.longitude);\r\n });\r\n }\r\n }\r\n\r\n setSelectedArt = (art) => {\r\n this.setState({\r\n selectedArt: art,\r\n });\r\n ClickLog[art.properties.ART_ID] += 1;\r\n console.log(ClickLog[art.properties.ART_ID]);\r\n };\r\n\r\n setModalShow = (show) => {\r\n this.setState({\r\n modalShow: show,\r\n });\r\n };\r\n\r\n render() {\r\n return (\r\n
\r\n \r\n \r\n \r\n\r\n {artData.features.map((artWork) => (\r\n {\r\n this.setSelectedArt(artWork);\r\n this.setModalShow(true);\r\n }}\r\n icon={{\r\n url: './assets/images/marker.png',\r\n scaledSize: {\r\n width: 40,\r\n height: 40,\r\n },\r\n }}\r\n />\r\n ))}\r\n \r\n \r\n\r\n {/* this.setModalShow(false)}\r\n selectedArt={this.state.selectedArt}\r\n /> */}\r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default MapContainer;\r\n","export const coordenadaTypes = {\r\n SET_COORDENADA: '[Coordenada] SET_COORDENADA',\r\n}","import { coordenadaTypes } from \"../../types/coordenadaTypes\"\r\n\r\nexport const setCoordenadas = ( payload ) => ({\r\n type: coordenadaTypes.SET_COORDENADA,\r\n payload\r\n})\r\n","import React, { useState, useCallback, useEffect, useMemo } from 'react'\r\n\r\nimport { TextField,\r\n FormControl,\r\n InputLabel,\r\n Select,\r\n MenuItem,\r\n Button,\r\n Accordion,\r\n AccordionDetails,\r\n Typography,\r\n CircularProgress,\r\n Divider,\r\n FormControlLabel,\r\n Checkbox,\r\n FormHelperText,\r\n FormGroup,\r\n FormLabel,\r\n Card,\r\n CardHeader,\r\n CardContent,\r\n Radio,\r\n RadioGroup\r\n} from '@material-ui/core'\r\n\r\nimport { Alert, Autocomplete } from '@material-ui/lab'\r\n\r\nimport { ListadoEstudiantesScreen } from './ListadoEstudiantesScreen'\r\nimport SendIcon from '@material-ui/icons/Send'\r\nimport CachedIcon from '@material-ui/icons/Cached'\r\nimport PlaceIcon from '@material-ui/icons/Place';\r\nimport IconButton from '@material-ui/core/IconButton';\r\n\r\nimport { FormatoScreen } from '../formato/FormatoScreen'\r\n\r\nimport { useStyles, StyledAccordionSummary, AccordionEstSummary, StyledAccordionActions, StyledAccordionDetails } from './RegistroEstudianteStyle'\r\nimport ExpandMoreIcon from '@material-ui/icons/ExpandMore'\r\nimport { useSelector, useDispatch } from 'react-redux'\r\nimport { getRegionesBD, getProvinciasBD, getDistritosBD, getRegionesMuniBD, getProvinciasMuniBD, getDistritosMuniBD } from '../../redux/thunk/ubigeoThunk'\r\nimport { TextNumber } from '../../controls/TextNumber'\r\nimport { resetProvincias, resetDistritos, resetProvinciasMuni, resetDistritosMuni, resetRegiones } from '../../redux/actions/ubigeoActions'\r\nimport { getInstituciones, resetInstituciones } from '../../redux/actions/instEducativaActions'\r\nimport { getInstitucionesBD } from '../../redux/thunk/instEducativaThunk'\r\nimport { getMunicipalidades, resetMunicipalidades } from '../../redux/actions/municipalidadActions'\r\nimport { getMunicipalidadesBD } from '../../redux/thunk/municipalidadThunk'\r\nimport { updatePadre } from '../../redux/actions/padreActions'\r\nimport { Formik, Field, useFormikContext, useField } from 'formik'\r\nimport MuiTextField from '@material-ui/core/TextField';\r\nimport {\r\n AutocompleteRenderInputParams,\r\n} from 'formik-material-ui-lab';\r\nimport ProfileSchema from './registroEstudianteProfile'\r\nimport { getPreguntasBD } from '../../redux/thunk/preguntaThunk'\r\nimport { getFormatosByTipoBD } from '../../redux/thunk/formatoThunk'\r\n\r\nimport { insertVeeduriaBD, download } from '../../redux/thunk/veeduriaThunk'\r\nimport { validarDNI, obtenerFormatos } from '../../redux/thunk/estudianteThunk'\r\nimport { resetValidacion, updateDato } from \"../../redux/actions/estudianteActions\"\r\nimport { ConfirmControl } from '../../controls/Confirmacion'\r\nimport { Alerta } from '../../controls/Alerta'\r\nimport { useRef } from 'react'\r\nimport { Mensaje, MensajeExito } from '../../controls/Mensaje'\r\nimport { isBrowser } from \"react-device-detect\";\r\nimport * as moment from 'moment';\r\nimport 'moment/locale/es';\r\nimport { getTiposInstEduBD, getNacionalidadesBD } from '../../redux/thunk/parametroThunk'\r\nimport { AvatarControl } from '../formato/controles/Avatar'\r\nimport { MapControl } from '../formato/controles/Map'\r\nimport MapContainer from '../formato/controles/MapContainer'\r\nimport { setCoordenadas } from '../../redux/actions/coordenadasActions'\r\n\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\nimport DialogContent from '@material-ui/core/DialogContent';\r\nimport DialogActions from '@material-ui/core/DialogActions';\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport PropTypes from 'prop-types';\r\nimport { CloudDownload } from '@material-ui/icons'\r\n\r\nvar decode = require('decode-html');\r\n\r\nconst { niveles, grados_primaria, grados_secundaria, secciones, generos } = require(\"../../data/params\")\r\n\r\n\r\n\r\nfunction SuccessDialogAndDownload(props) {\r\n debugger;\r\n const dispatch = useDispatch()\r\n const { onClose, value: valueProp, open, ...other } = props;\r\n const [value, setValue] = React.useState(valueProp);\r\n const radioGroupRef = React.useRef(null);\r\n\r\n React.useEffect(() => {\r\n if (!open) {\r\n setValue(valueProp);\r\n }\r\n }, [valueProp, open]);\r\n\r\n const handleEntering = () => {\r\n if (radioGroupRef.current != null) {\r\n radioGroupRef.current.focus();\r\n }\r\n };\r\n\r\n const handleDownload = (id) => {\r\n debugger\r\n dispatch( download( id ) )\r\n // onClose();\r\n };\r\n\r\n return (\r\n \r\n ¡Registro Exitoso!\r\n \r\n \r\n Muchas gracias por participar de la veeduría virtual\r\n \r\n \r\n { valueProp.formato }\r\n \r\n \r\n { valueProp.nombres }\r\n \r\n \r\n Nro Documento: { valueProp.documento }\r\n \r\n\r\n\r\n {\r\n (localStorage.getItem('tipo_envio') == 1)\r\n ?\r\n
\r\n \r\n \r\n
\r\n :\r\n
\r\n \r\n
\r\n }\r\n
\r\n {/* \r\n \r\n \r\n */}\r\n \r\n );\r\n}\r\n\r\nSuccessDialogAndDownload.propTypes = {\r\n onClose: PropTypes.func.isRequired,\r\n open: PropTypes.bool.isRequired,\r\n value: PropTypes.string.isRequired,\r\n};\r\n\r\nexport const RegistroEstudianteScreen = () => {\r\n\r\n const classes = useStyles()\r\n\r\n const dispatch = useDispatch()\r\n const padre = useSelector( state => state.padre )\r\n const estudiante = useSelector( state => state.estudiante )\r\n const regiones = useSelector( state => state.regiones )\r\n const provincias = useSelector( state => state.provincias )\r\n const distritos = useSelector( state => state.distritos )\r\n const instituciones = useSelector( state => state.instituciones )\r\n const regionesMuni = useSelector( state => state.regionesMuni )\r\n const provinciasMuni = useSelector( state => state.provinciasMuni )\r\n const distritosMuni = useSelector( state => state.distritosMuni )\r\n const municipalidades = useSelector( state => state.municipalidades )\r\n const formatos = useSelector( state => state.formatos )\r\n const tipos_documento = useSelector( state => state.tipos_documento )\r\n const tipos_inst_edu = useSelector( state => state.tipos_inst_edu ) \r\n \r\n const nacionalidades = useSelector( state => state.nacionalidades ) \r\n let { isComplete, existe_observacion } = useSelector( state => state.pregunta )\r\n const veeduria = useSelector( state => state.veeduria )\r\n const [expandedHijo, setexpandedHijo] = useState(false)\r\n const [expandedIE, setexpandedIE] = useState(false)\r\n const [expandedMuni, setexpandedMuni] = useState(false)\r\n const [expandedFormato, setexpandedFormato] = useState(false)\r\n let { preguntas } = useSelector( state => state.pregunta )\r\n const informacion_basica = useSelector( state => state.informacion_basica )\r\n \r\n\r\n const scrollToAnchor = (anchorName) => {\r\n if (anchorName) {\r\n let anchorElement = document.getElementById(anchorName);\r\n if(anchorElement) { anchorElement.scrollIntoView(); }\r\n }\r\n }\r\n\r\n\r\n const [alert, setAlert] = useState({\r\n open: false,\r\n vertical: 'top',\r\n horizontal: 'center',\r\n message: '',\r\n severity: 'success'\r\n });\r\n const handleCloseAlert = () => {\r\n setAlert({ ...alert, open: false });\r\n };\r\n const messageActive = useRef( veeduria.message )\r\n\r\n\r\n\r\n useEffect(() => {\r\n if ( veeduria.message === 'ok' && veeduria.severity === 'success' )\r\n {\r\n const nombre_formato_vee = localStorage.getItem('nombre_formato_vee');\r\n\r\n if(informacion_basica.cargo == '007') {\r\n handleClickListItemX({ \r\n formato: nombre_formato_vee,\r\n nombres: veeduria.estudiante.nombre + ' ' + veeduria.estudiante.apellido_paterno + ' ' + veeduria.estudiante.apellido_materno,\r\n documento: veeduria.estudiante.dni,\r\n id: veeduria.estudiante.id_veeduria\r\n });\r\n // Mensaje(`\r\n // Muchas gracias por participar de la veeduría virtual\r\n //
\r\n // ${nombre_formato_vee}\r\n //
\r\n //
\r\n // ${veeduria.nombre} ${veeduria.apellido_paterno} ${veeduria.apellido_materno}\r\n //
\r\n // Nro. documento: ${veeduria.dni}\r\n //
\r\n // `, '¡Registro Exitoso!', 'success', localStorage.getItem('tipo_envio') == 1)\r\n }\r\n else {\r\n Mensaje(`\r\n Muchas gracias por participar de la veeduría virtual\r\n
\r\n ${nombre_formato_vee}\r\n
\r\n
\r\n ${padre.nombre_completo}\r\n
\r\n Nro. documento: ${padre.dni}\r\n
\r\n `, '¡Registro Exitoso!', 'success', false)\r\n }\r\n // setAlert({ ...alert, open: true, message: 'Se registró con éxito.', severity: veeduria.severity });\r\n messageActive.current = veeduria.message;\r\n\r\n if (localStorage.getItem('tipo_envio') == 2) {\r\n setTimeout(() => {\r\n handleReload();\r\n }, 50000);\r\n }\r\n else{\r\n setTimeout(() => {\r\n veeduria.message = '';\r\n bloquearFormato();\r\n }, 100);\r\n }\r\n }\r\n\r\n }, [ veeduria, alert ])\r\n\r\n useEffect( () => {\r\n if ( padre.severity === 'success' ) {\r\n setTimeout( () => {\r\n setexpandedHijo( true )\r\n setexpandedIE( true )\r\n setexpandedMuni( true )\r\n setexpandedFormato( true )\r\n dispatch( getFormatosByTipoBD(informacion_basica.cargo, informacion_basica.miembro) )\r\n dispatch( getTiposInstEduBD() )\r\n // dispatch( getPreguntasBD() )\r\n }, 500 );\r\n }\r\n }, [ padre.severity, dispatch ] )\r\n\r\n const MyField = props => {\r\n const {\r\n setFieldValue,\r\n } = useFormikContext();\r\n const [field, meta] = useField(props);\r\n \r\n useEffect(() => {\r\n let isCurrent = true;\r\n if ( estudiante.message?.length > 0 && estudiante.severity !== 'success' && !estudiante.isLoading ) {\r\n if (!!isCurrent) {\r\n setFieldValue(props.name, '');\r\n }\r\n }\r\n\r\n return () => {\r\n isCurrent = false;\r\n };\r\n }, [ setFieldValue, props.name ]);\r\n \r\n useEffect(() => {\r\n if (meta.value.length === 8 && !estudiante.isLoading)\r\n {\r\n if (meta.value !== padre.dni) {\r\n dispatch( validarDNI( { dni: meta.value, tipo_doc_hijo: estudiante.tipo_doc_hijo, lista_formato: formatos.listado } ) )\r\n setFieldValue(\"nivel\", '');\r\n setFieldValue(\"grado\", '');\r\n setFieldValue(\"seccion\", '');\r\n setFieldValue(\"region\", '');\r\n setFieldValue(\"provincia\", '')\r\n setFieldValue(\"distrito\", '')\r\n setFieldValue('inst_educativa', '' );\r\n setFieldValue('formato', '' );\r\n }\r\n }\r\n }, [ meta.value ]);\r\n\r\n return (\r\n <>\r\n {\r\n setFieldValue( \"dni\", target.value )\r\n } }\r\n helperText={ meta.touched ? meta.error : \"\"}\r\n error={ meta.touched && Boolean( meta.error ) }\r\n InputProps={ { inputComponent: TextNumber } }\r\n disabled={ estudiante.isLoading }\r\n {...props}\r\n {...field}\r\n />\r\n { estudiante.isLoading && }\r\n \r\n \r\n );\r\n\r\n\r\n };\r\n\r\n \r\n\r\n const bloquearFormato = () => {\r\n let arr_id_formato_registrados = [];\r\n if (localStorage.getItem('arr_id_formato_registrados') != null)\r\n arr_id_formato_registrados = JSON.parse(localStorage.getItem(\"arr_id_formato_registrados\"));\r\n \r\n arr_id_formato_registrados.push(localStorage.getItem('id_formato_selected'));\r\n\r\n formatos.listado.forEach(element => {\r\n arr_id_formato_registrados.forEach(function (elemento, indice, array) {\r\n if (element.FORMATO_COD == elemento){\r\n element.HABILITADO = false;\r\n element.SELECTED = false;\r\n }\r\n });\r\n\r\n });\r\n\r\n localStorage.setItem('arr_id_formato_registrados', JSON.stringify(arr_id_formato_registrados));\r\n localStorage.removeItem('id_formato_selected');\r\n }\r\n\r\n\r\n const handleReload = () => {\r\n // history.push('/')\r\n // history.replace('/')\r\n\r\n localStorage.removeItem('tipo_envio');\r\n localStorage.removeItem('nombre_formato_vee');\r\n localStorage.removeItem('id_formato_selected');\r\n localStorage.removeItem('arr_id_formato_registrados');\r\n \r\n window.location.reload();\r\n }\r\n\r\n\r\n const [openResetForm, setOpenResetForm] = React.useState(false);\r\n\r\n const handleClickOpenResetForm = () => {\r\n setOpenResetForm(true);\r\n };\r\n \r\n const handleClickCloseResetForm = (newValue) => {\r\n setOpenResetForm(false);\r\n };\r\n\r\n const handleClickValidaForm = () => {\r\n return validaPreguntas();\r\n }\r\n\r\n\r\n\r\n const validaPreguntas = () => {\r\n\r\n let cantRespuestasVacias = 0;\r\n let preguntasSinRespuesta = [];\r\n let preguntasSinArchivo = [];\r\n\r\n preguntas.forEach(preg => {\r\n if (preg.ID != 514 && preg.ID != 534 && preg.ID != 544 && preg.ID != 564)\r\n {\r\n if (preg.TIPO_RPTA_COD == 8 || preg.TIPO_RPTA_COD == 9){\r\n if(preg.COORDENADAS == null || preg.COORDENADAS.length == 0 || preg.COORDENADAS[0].referencia.trim() == ''){\r\n preguntasSinRespuesta.push(preg.CODIGO);\r\n cantRespuestasVacias++;\r\n }\r\n }\r\n else{\r\n if (preg.RESPUESTA.length === 0 && preg.IND_PADRE.toString() === '0' && preg.HABILITADO)\r\n {\r\n preguntasSinRespuesta.push(preg.CODIGO);\r\n cantRespuestasVacias++;\r\n }\r\n if (preg.ARCHIVO.length === 0 && preg.OBLIGATORIO_ARCHIVO === '1' && preg.UPLOAD)\r\n {\r\n preguntasSinArchivo.push(preg.CODIGO);\r\n }\r\n }\r\n }\r\n });\r\n\r\n if ( cantRespuestasVacias === 0 )\r\n {\r\n return true;\r\n }\r\n else{\r\n let codigos = \"\";\r\n preguntasSinRespuesta.forEach(preg => {\r\n codigos += `\r\n ${ preg }\r\n
\r\n `\r\n })\r\n\r\n Mensaje(`\r\n ${\r\n preguntasSinRespuesta.length === 1\r\n ? \"Falta responder la pregunta:\"\r\n : \"Falta responder las preguntas:\"\r\n }\r\n
\r\n
\r\n ${ codigos }\r\n `, '¡Validación!', 'info')\r\n return false;\r\n }\r\n };\r\n\r\n\r\n \r\n const validaSeleccionFormato = () => {\r\n console.log('validaSeleccionFormato:::::', localStorage.getItem('id_formato_selected'))\r\n if ( localStorage.getItem('id_formato_selected') == null )\r\n {\r\n Mensaje('Debe seleccionar una veeduría', '¡Validación!', 'info')\r\n return false;\r\n }\r\n else {\r\n return true;\r\n }\r\n };\r\n\r\n\r\n\r\n const [openMap, setOpenMap] = React.useState(false);\r\n const [ubicacion, setUbicacion] = React.useState({ 'lat': 0, 'lng': 0 });\r\n const [referencia_mapa, setDireccion] = React.useState('');\r\n\r\n const handleClickOpenMap = () => {\r\n setOpenMap(true);\r\n };\r\n\r\n const handleCloseMap = () => {\r\n setOpenMap(false);\r\n };\r\n\r\n const handleGuardarPoint = (e, coor, direccion) => {\r\n console.log(coor)\r\n console.log('direccion: ', direccion);\r\n setUbicacion(coor);\r\n setDireccion(direccion);\r\n setOpenMap(false);\r\n };\r\n\r\n\r\n\r\n\r\n const [state, setState] = React.useState({\r\n checkedAUTORIZACION: false\r\n });\r\n \r\n const handleChangeAUTORIZACION = (event) => {\r\n setState({ ...state, [event.target.name]: event.target.checked });\r\n };\r\n const [showMore, setShowMore] = useState(false);\r\n\r\n const toggleShowMore = () => {\r\n setShowMore(!showMore);\r\n };\r\n\r\n\r\n\r\n \r\n const [openX, setOpenX] = React.useState(false);\r\n const [valueX, setValueX] = React.useState({ \r\n formato: '',\r\n nombres: '',\r\n documento: '',\r\n id: ''\r\n });\r\n\r\n const handleClickListItemX = (newValue) => {\r\n debugger;\r\n setOpenX(true);\r\n setValueX(newValue);\r\n };\r\n\r\n const handleCloseX = () => {\r\n setOpenX(false);\r\n };\r\n\r\n \r\n return (\r\n {\r\n let errors = {};\r\n \r\n if (values.dni.length === 8)\r\n {\r\n if (values.dni === padre.dni)\r\n {\r\n errors.dni = 'No debe ser igual al documento del padre'\r\n }\r\n }\r\n return errors;\r\n }}\r\n validationSchema={ ProfileSchema }\r\n onSubmit={ ( values, { setSubmitting, resetForm } ) => {\r\n const payload = {\r\n tipo_doc_hijo: values.tipo_doc_hijo,\r\n nombre: values.nombre, \r\n apellido_paterno: values.apellido_paterno, \r\n apellido_materno: values.apellido_materno,\r\n dni: values.dni, \r\n nivel: values.nivel,\r\n grado: values.grado,\r\n seccion: values.seccion,\r\n email: values.email,\r\n region: values.region,\r\n provincia: values.provincia,\r\n distrito: values.distrito,\r\n tipo_inst_edu: values.tipo_inst_edu,\r\n profesor: values.profesor,\r\n nacionalidad: values.nacionalidad,\r\n genero: values.genero,\r\n inst_educativa: values.inst_educativa,\r\n formato: values.formato,\r\n region_muni: (values.formato == '95' ? values.region_muni : ''),\r\n provincia_muni: (values.formato == '95' ? values.provincia_muni : ''),\r\n distrito_muni: (values.formato == '95' ? values.distrito_muni : ''),\r\n municipalidad: (values.formato == '95' ? values.municipalidad : ''),\r\n referencia_muni: (values.formato == '95' ? values.referencia_muni : ''),\r\n latitud_mapa: ubicacion.lat,\r\n longitud_mapa: ubicacion.lng,\r\n referencia_mapa: referencia_mapa,\r\n existe_observacion: values.existe_observacion,\r\n lista_formato: formatos.listado,\r\n id_veeduria: estudiante.id_veeduria\r\n }\r\n setOpenResetForm(false);\r\n payload.municipalidad = existe_observacion ? '' : payload.municipalidad\r\n\r\n\r\n if (validaSeleccionFormato()){\r\n if (validaPreguntas()){\r\n console.log('payload::::::::', payload)\r\n dispatch( insertVeeduriaBD( payload ) ) \r\n }\r\n }\r\n\r\n setTimeout(() => {\r\n setSubmitting(false)\r\n }, 5000);\r\n \r\n\r\n } }\r\n >\r\n {({\r\n values,\r\n errors,\r\n touched,\r\n handleChange,\r\n handleBlur,\r\n handleSubmit,\r\n isSubmitting,\r\n isValid,\r\n setFieldValue,\r\n ...props\r\n }) => (\r\n
\r\n {/* */}\r\n \r\n \r\n\r\n {/* Inicio: Estudiante */}\r\n {\r\n (informacion_basica.cargo == '007')\r\n &&\r\n
\r\n \r\n { setexpandedHijo( !expandedHijo ) } }\r\n disabled={padre.severity !== 'success'} style={{ marginTop: \"12px\" }} >\r\n } >\r\n \r\n Datos del estudiante\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n Tipo documento\r\n \r\n \r\n {\r\n touched.tipo_doc_hijo\r\n ? { errors.tipo_doc_hijo }\r\n : null\r\n }\r\n \r\n { tipos_documento.isLoading && }\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n Nacionalidad\r\n \r\n \r\n {\r\n touched.nacionalidad\r\n ? { errors.nacionalidad }\r\n : null\r\n }\r\n \r\n { nacionalidades.isLoading && }\r\n
\r\n
\r\n \r\n
\r\n
\r\n {\r\n values.tipo_doc_hijo === '0101'\r\n ? \r\n // \r\n <>\r\n {\r\n const re = /^[0-9\\b]+$/;\r\n console.log(target.value)\r\n if ( target.value === '' || re.test( target.value)) {\r\n console.log(target.value)\r\n setFieldValue( \"dni\", target.value )\r\n \r\n if (target.value.length === 8) {\r\n if (target.value !== padre.dni) {\r\n dispatch( validarDNI( { dni: target.value, tipo_doc_hijo: estudiante.tipo_doc_hijo, lista_formato: formatos.listado } ) )\r\n dispatch( resetRegiones() )\r\n dispatch( resetProvincias() )\r\n dispatch( resetDistritos() )\r\n dispatch( resetInstituciones() ) \r\n setFieldValue(\"nivel\", '');\r\n setFieldValue(\"grado\", '');\r\n setFieldValue(\"seccion\", '');\r\n setFieldValue(\"region\", '');\r\n setFieldValue(\"provincia\", '')\r\n setFieldValue(\"distrito\", '')\r\n setFieldValue('inst_educativa', '' );\r\n setFieldValue('formato', '' );\r\n setFieldValue( \"dni\", target.value )\r\n }\r\n else {\r\n setFieldValue(\"dni\", '');\r\n Mensaje('El Nro. documento del estudiante no puede ser igual al del padre', '¡Aviso!', 'info')\r\n }\r\n }\r\n \r\n }\r\n else{\r\n let valorDNI = target.value.substring(0, target.value.length - 1);\r\n setFieldValue( \"dni\", valorDNI )\r\n }\r\n \r\n } }\r\n />\r\n \r\n : \r\n values.tipo_doc_hijo === '0102' || values.tipo_doc_hijo === '0103' || values.tipo_doc_hijo === '0104'\r\n ? \r\n {\r\n const regex = /^([a-z0-9]+)$/i;\r\n if (event.target.value === '' || regex.test(event.target.value)) {\r\n setFieldValue(\"dni\", event.target.value);\r\n \r\n if (event.target.value.length === 12)\r\n {\r\n if (event.target.value !== padre.dni)\r\n {\r\n dispatch( validarDNI( { dni: event.target.value,\r\n tipo_doc_hijo: values.tipo_doc_hijo,\r\n lista_formato: formatos.listado } ) );\r\n dispatch( resetRegiones() )\r\n dispatch( resetProvincias() )\r\n dispatch( resetDistritos() )\r\n dispatch( resetInstituciones() )\r\n setFieldValue(\"nivel\", '');\r\n setFieldValue(\"grado\", '');\r\n setFieldValue(\"seccion\", '');\r\n setFieldValue(\"region\", '');\r\n setFieldValue(\"provincia\", '')\r\n setFieldValue(\"distrito\", '')\r\n setFieldValue('inst_educativa', '' );\r\n setFieldValue('formato', '' );\r\n setFieldValue(\"dni\", event.target.value);\r\n }\r\n else {\r\n setFieldValue(\"dni\", '');\r\n Mensaje('El Nro. documento del estudiante no puede ser igual al del padre', '¡Aviso!', 'info')\r\n }\r\n }\r\n }\r\n }}\r\n />\r\n :\r\n null\r\n }\r\n { estudiante.isLoading && }\r\n
\r\n
\r\n
\r\n {\r\n const regex = /^([a-zñáéíóú ]+)$/i;\r\n if (event.target.value === '' || regex.test(event.target.value)) {\r\n setFieldValue(\"nombre\", event.target.value);\r\n }\r\n }}\r\n helperText={ touched.nombre ? errors.nombre : \"\"}\r\n error={ touched.nombre && Boolean( errors.nombre ) }\r\n inputProps={ { style: { textTransform: 'capitalize' }, maxLength: 50 } }\r\n />\r\n
\r\n
\r\n {\r\n const regex = /^([a-zñáéíóú ]+)$/i;\r\n if (event.target.value === '' || regex.test(event.target.value)) {\r\n setFieldValue(\"apellido_paterno\", event.target.value);\r\n }\r\n }}\r\n />\r\n
\r\n
\r\n {\r\n const regex = /^([a-zñáéíóú ]+)$/i;\r\n if (event.target.value === '' || regex.test(event.target.value)) {\r\n setFieldValue(\"apellido_materno\", event.target.value);\r\n }\r\n }}\r\n />\r\n
\r\n \r\n
\r\n \r\n \r\n Género\r\n \r\n \r\n {\r\n touched.genero\r\n ? { errors.genero }\r\n : null\r\n }\r\n \r\n
\r\n \r\n
\r\n {\r\n const regex = /^([a-z0-9@.\\-_ ]+)$/i;\r\n if (event.target.value === '' || regex.test(event.target.value)) {\r\n setFieldValue(\"email\", event.target.value);\r\n }\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n{/* \r\n */}\r\n
\r\n
\r\n }\r\n {/* Fin: Estudiante */}\r\n \r\n \r\n {/* Inicio: Institucion Educativa */}\r\n
\r\n \r\n {\r\n ((!errors.dni && values.dni !== '' && informacion_basica.cargo == '007') || informacion_basica.cargo != '007')\r\n &&\r\n { setexpandedIE( !expandedIE ) } }\r\n disabled={padre.severity !== 'success'} style={{ marginTop: \"12px\" }} >\r\n } >\r\n \r\n Datos de la institución educativa\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n Tipo\r\n \r\n \r\n {\r\n touched.tipo_inst_edu\r\n ? { errors.tipo_inst_edu }\r\n : null\r\n }\r\n \r\n {\r\n values.tipo_inst_edu === '0202'\r\n ? \r\n { 'Si no encuentra su I.E. seleccione \"I.E. PRIVADA\"' }\r\n : \r\n values.tipo_inst_edu === '0203'\r\n ? { 'Si no encuentra su I.E. seleccione \"I.E. POR CONVENIO\"' }\r\n : null\r\n }\r\n { tipos_inst_edu.isLoading && }\r\n
\r\n
\r\n
\r\n \r\n \r\n Nivel\r\n \r\n \r\n {\r\n touched.nivel\r\n ? { errors.nivel }\r\n : null\r\n }\r\n \r\n
\r\n {\r\n (informacion_basica.cargo == '007')\r\n &&\r\n <>\r\n
\r\n \r\n \r\n Grado\r\n \r\n \r\n {\r\n touched.grado\r\n ? { errors.grado }\r\n : null\r\n }\r\n \r\n
\r\n
\r\n \r\n \r\n Sección\r\n \r\n \r\n {\r\n touched.seccion\r\n ? { errors.seccion }\r\n : null\r\n }\r\n \r\n
\r\n
\r\n {\r\n const regex = /^([a-zñáéíóú ]+)$/i;\r\n if (event.target.value === '' || regex.test(event.target.value)) {\r\n setFieldValue(\"profesor\", event.target.value);\r\n }\r\n }}\r\n className={ classes.inputStyle } //agregado\r\n />\r\n
\r\n \r\n }\r\n
\r\n
\r\n \r\n \r\n Región\r\n \r\n \r\n {\r\n touched.region\r\n ? { errors.region }\r\n : null\r\n }\r\n \r\n { regiones.isLoading && }\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n Provincia\r\n \r\n \r\n {\r\n touched.provincia\r\n ? { errors.provincia }\r\n : null\r\n }\r\n \r\n { provincias.isLoading && }\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n Distrito\r\n \r\n \r\n {\r\n touched.distrito\r\n ? { errors.distrito }\r\n : null\r\n }\r\n \r\n { distritos.isLoading && }\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n Institución Educativa\r\n \r\n \r\n {\r\n touched.inst_educativa\r\n ? { errors.inst_educativa }\r\n : null\r\n }\r\n \r\n { instituciones.isLoading && }\r\n {\r\n values.inst_educativa\r\n ? { 'DIRECCIÓN: ' + values.direccion_ie }\r\n : null\r\n }\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n }\r\n
\r\n {/* Fin: Institucion Educativa */}\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n {/* Inicio: Formato */}\r\n
\r\n {\r\n ((!errors.dni && values.dni !== '' && values.inst_educativa !== '' && informacion_basica.cargo == '007') || \r\n (values.inst_educativa !== '' && informacion_basica.cargo != '007'))\r\n && \r\n { setexpandedFormato( !expandedFormato ) } }\r\n disabled={padre.severity !== 'success'} style={{ marginTop: \"12px\" }} >\r\n } >\r\n {\r\n (informacion_basica.cargo == '007')\r\n ?\r\n \r\n Selecciona la Veeduría Escolar en la que participarás\r\n \r\n :\r\n \r\n Veeduría Escolar\r\n \r\n }\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n {/* https://stackblitz.com/edit/formik-checkbox-radio?file=index.tsx */}\r\n {\r\n (values.inst_educativa !== '' && !estudiante.isLoading)\r\n && \r\n \r\n {\r\n setFieldValue( 'formato', value ) \r\n \r\n localStorage.setItem('id_formato_selected', value);\r\n\r\n \r\n if(informacion_basica.cargo != '007') {\r\n setFieldValue( 'nivel', 'S' )\r\n setFieldValue( 'tipo_doc_hijo', '0101' )\r\n setFieldValue( 'nacionalidad', 'xx' )\r\n setFieldValue( 'dni', '12345678' )\r\n setFieldValue( 'nombre', 'xx' )\r\n setFieldValue( 'apellido_paterno', 'xx' )\r\n setFieldValue( 'apellido_materno', 'xx' )\r\n setFieldValue( 'genero', 'xx' )\r\n setFieldValue( 'grado', 'xx' )\r\n setFieldValue( 'seccion', 'xx' )\r\n }\r\n\r\n\r\n\r\n dispatch( getPreguntasBD( value ) )\r\n formatos.listado.forEach(element => {\r\n if (element.FORMATO_COD === value) {\r\n localStorage.setItem('nombre_formato_vee', element.FORMATO_DES);\r\n setFieldValue( \"indicador_ubicacion\", element.IND_UBICACION );\r\n setFieldValue( \"indicador_coordenadas\", element.IND_COORDENADAS );\r\n setFieldValue( 'formato_des', element.FORMATO_DES ) \r\n\r\n\r\n if (element.IND_UBICACION === '1') {\r\n dispatch( getRegionesMuniBD() )\r\n setFieldValue(\"region_muni\", values.region)\r\n dispatch( getProvinciasMuniBD( values.region ) )\r\n dispatch( resetDistritosMuni() )\r\n // dispatch( resetMunicipalidades() )\r\n // setFieldValue(\"provincia_muni\", '')\r\n // setFieldValue(\"distrito_muni\", '')\r\n setFieldValue(\"municipalidad\", '')\r\n setFieldValue(\"provincia_muni\", values.provincia)\r\n dispatch( getDistritosMuniBD( values.region, values.provincia ) )\r\n setFieldValue(\"distrito_muni\", values.distrito)\r\n // dispatch( getMunicipalidadesBD( values.region_muni, values.provincia_muni, values.distrito, 'no' ) )\r\n }\r\n\r\n if (element.IND_COORDENADAS === '1') {\r\n // Inicio: Obtiene ubicación del usuario\r\n if (navigator.geolocation) \r\n {\r\n navigator.geolocation.getCurrentPosition((position) => {\r\n setFieldValue(\"latitud_user\", position.coords.latitude)\r\n setFieldValue(\"longitud_user\", position.coords.longitude)\r\n console.log('Latitude is :', position.coords.latitude);\r\n console.log('Longitude is :', position.coords.longitude);\r\n \r\n dispatch( setCoordenadas({\r\n ubicacion_user: { lat: position.coords.latitude, lng: position.coords.longitude }\r\n } ) )\r\n });\r\n }\r\n // else {\r\n // debugger;\r\n // alert('position.coords.latitude')\r\n // setFieldValue( \"latitud_user\", null )\r\n // setFieldValue( \"longitud_user\", null )\r\n // console.log('Latitude no :');\r\n // }\r\n // Inicio: Obtiene ubicación del usuario\r\n }\r\n }\r\n });\r\n\r\n } }\r\n >\r\n {\r\n informacion_basica.cargo == '001'\r\n ?\r\n formatos.listado.map( formato => (\r\n formato.FORMATO_DES == 'PROGRAMA DE MANTENIMIENTO EN LAS INSTITUCIONES EDUCATIVAS - 2024'\r\n && (\r\n formato.SELECTED\r\n ?\r\n } \r\n label={ formato.FORMATO_DES } />\r\n :\r\n } \r\n label={ formato.FORMATO_DES } />\r\n )\r\n ) )\r\n :\r\n formatos.listado.map( formato => (\r\n formato.FORMATO_DES != 'PROGRAMA DE MANTENIMIENTO EN LAS INSTITUCIONES EDUCATIVAS - 2024'\r\n && (\r\n formato.SELECTED\r\n ?\r\n } \r\n label={ formato.FORMATO_DES } />\r\n :\r\n } \r\n label={ formato.FORMATO_DES } />\r\n )\r\n ) )\r\n // formatos.listado.map( formato => (\r\n // formato.SELECTED\r\n // ?\r\n // } \r\n // label={ formato.FORMATO_DES } />\r\n // :\r\n // } \r\n // label={ formato.FORMATO_DES } />\r\n // ) )\r\n }\r\n \r\n {\r\n touched.formato\r\n ? { errors.formato }\r\n : null\r\n }\r\n \r\n }\r\n \r\n \r\n \r\n {/* Formato */}\r\n {/* \r\n \r\n {\r\n formatos.listado.map( formato => (\r\n {\r\n const groups = values.formato\r\n formato.SELECTED = value;\r\n if ( value ) {\r\n if ( groups ) {\r\n setFieldValue( 'formato', [ formato.FORMATO_COD, ...groups ] )\r\n }\r\n else {\r\n setFieldValue( 'formato', [ formato.FORMATO_COD ] )\r\n }\r\n }\r\n else{\r\n setFieldValue( 'formato', groups.filter( note => note !== formato.FORMATO_COD ) )\r\n }\r\n } }\r\n color=\"primary\"\r\n />\r\n }\r\n label={ formato.FORMATO_DES }\r\n />\r\n ) )\r\n }\r\n \r\n {\r\n touched.formato\r\n ? { errors.formato }\r\n : null\r\n }\r\n */}\r\n \r\n
\r\n \r\n \r\n {\r\n values.indicador_ubicacion == '1' && values.inst_educativa !== '' && localStorage.getItem('id_formato_selected') != null\r\n &&\r\n
\r\n {/* Inicio: Ubicación del barrio */}\r\n \r\n {/* \r\n Recuerda que las observaciones las efectúas sobre tu comunidad\r\n */}\r\n \r\n \r\n \r\n Indícanos tu municipalidad:\r\n \r\n \r\n \r\n \r\n {/* */}\r\n
\r\n
\r\n
\r\n \r\n \r\n Región\r\n \r\n \r\n {\r\n touched.region_muni\r\n ? { errors.region_muni }\r\n : null\r\n }\r\n \r\n { regionesMuni.isLoading && }\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n Provincia\r\n \r\n \r\n {\r\n touched.provincia_muni\r\n ? { errors.provincia_muni }\r\n : null\r\n }\r\n \r\n { provinciasMuni.isLoading && }\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n Distrito\r\n \r\n \r\n {\r\n touched.distrito_muni\r\n ? { errors.distrito_muni }\r\n : null\r\n }\r\n \r\n { distritosMuni.isLoading && }\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n Municipalidad\r\n \r\n {\r\n const { value } = e.target\r\n \r\n if ( !value ) {\r\n setFieldValue( \"municipalidad\", '' )\r\n }\r\n else {\r\n setFieldValue( \"municipalidad\", value )\r\n }\r\n\r\n } }\r\n >\r\n {\r\n municipalidades.listado.map( ( opt, i) => (\r\n { opt.MUNICIPALIDAD_DES }\r\n ) )\r\n }\r\n \r\n {\r\n touched.municipalidad\r\n ? { errors.municipalidad }\r\n : null\r\n }\r\n \r\n { municipalidades.isLoading && }\r\n
\r\n\r\n {/*
\r\n {\r\n const regex = /^([a-z0-9ñáéíóú ]+)$/i;\r\n if (event.target.value === '' || regex.test(event.target.value)) {\r\n setFieldValue(\"referencia_muni\", event.target.value);\r\n }\r\n }}\r\n />\r\n
*/}\r\n
\r\n\r\n {\r\n values.indicador_coordenadas == '1'\r\n &&\r\n <>\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n }\r\n
\r\n
\r\n \r\n \r\n
\r\n {/* Fin: Ubicación del barrio */}\r\n\r\n\r\n\r\n\r\n
\r\n }\r\n \r\n \r\n \r\n\r\n
\r\n {\r\n values.inst_educativa !== '' && localStorage.getItem('id_formato_selected') != null\r\n && \r\n <>\r\n {/* LÓGICA: VARIAS VEEDURÍAS */}\r\n {/* {\r\n (informacion_basica.cargo == '007')\r\n &&\r\n
\r\n \r\n \r\n \r\n VEEDURÍA ESCOLAR: {values.formato_des}\r\n \r\n {\r\n values. == 'BIBLIOTECA ESCOLAR 2024'\r\n &&\r\n \r\n - Ley N° 28044, Ley General de Educación
\r\n - Ley N° 31053 que reconoce y fomenta el derecho a la lectura y promueve el libro
\r\n - DS. 018-2021-MC - Reglamento de la Ley N° 31053
\r\n - Resolución Directoral Nacional N° 234-2005-BNP, Normas para bibliotecas escolares
\r\n - RVM N° 062-2021-MINEDU Documento normativo que aprueba \"Disposiciones para la organización e implementación del Plan Lector en las Instituciones Educativas y Programas educativos de la Educación Básica\"\r\n
\r\n }\r\n {\r\n values.formato_des == 'GESTIÓN DE RIESGOS 2024'\r\n &&\r\n \r\n - Ley N° 29664, Ley que crea el Sistema Nacional de Gestión de Riesgo de Desastres (SINAGERD)
\r\n - Decreto Supremo que aprueba el Reglamento de la Ley N° 29664, que crea el Sistema Nacional de Gestión del Riesgo de Desastres (SINAGERD)
\r\n - Resolución de Secretaría General N° 302-2019-MINEDU de 24.12.2019 – NT \"Disposiciones para la implementación de la Gestión del Riesgo de Emergencias y Desastres en el SectorEducación\"
\r\n - Resolución Ministerial N° 189-2021-MINEDU de 06.05.2021 – \"Disposiciones para los Comité de Gestión Escolar en las Instituciones Educativas Públicas de Educación Básica\"
\r\n - Directiva N° D0000002-2022-INDECI-SEC GRAL - \"Organización, Ejecución y Evaluación de Simulacros Nacionales Multipeligro para los Años 2022 - 2024\"
\r\n - Lineamientos para la ejecución del Simulacro Nacional Multipeligro 2023-2024\r\n
\r\n }\r\n {\r\n values.formato_des == 'QUIOSCOS Y CAFETERÍAS EN LAS II.EE 2024'\r\n &&\r\n \r\n - Ley N° 30021, \"Ley de promoción de la alimentación saludable para niños, niñas y adolescentes\" y su Reglamento vigente.
\r\n - Decreto Supremo Nº 017-2017-SA - Reglamento de la Ley Nº 30021, Ley de Promoción de la Alimentación Saludable:
\r\n - Resolución Ministerial N° 195-2019-MINSA \"Documento Técnico: Lineamientos para la Promoción y Protección de la Alimentación Saludable en las Instituciones Educativas Públicas y Privadas de la Educación Básica\"
\r\n - Resolución Viceministerial N° 054-2021-MINEDU: NT \"Criterios de Diseño para Ambientes de Servicios de Alimentación en los Locales Educativos de la Educación Básica\".
\r\n - Resolución Ministerial N° 033-2020/MINSA, \"Criterios de evaluación a quiosco, cafeterías y comedores escolares en instituciones educativas de educación básica regular públicas y privadas para una alimentación saludable\".
\r\n - Resolución de Secretaría General N° 302-2019-MINEDU de 24.12.2019 – Norma Técnica denominada \"Disposiciones para la implementación de la Gestión del Riesgo de Emergencias y Desastres en el Sector Educación\"\r\n
\r\n }\r\n {\r\n (values.formato_des == 'PROGRAMA DE MANTENIMIENTO EN LAS INSTITUCIONES EDUCATIVAS - 2024' ||\r\n values.formato_des == 'PROGRAMA DE MANTENIMIENTO EN LAS INSTITUCIONES EDUCATIVAS 2024')\r\n &&\r\n \r\n - Ley N° 28044 - Ley General de Educación
\r\n - D.S N° 011-2012-ED, Reglamento de la Ley N° 28044, Ley General de Educación
\r\n - DS Nº 004-2014-MINEDU, Programa Nacional de Infraestructura Educativa (PRONIED)
\r\n - RM N° 557-2020-MINEDU, NT \"Disposiciones generales para la ejecución de mantenimiento y acondicionamiento de infraestructura educativa bajo la modalidad de subvenciones\"
\r\n - RM Nº 679-2023-MINEDU,NT \"Disposiciones para la ejecución del Programa de Mantenimiento para el año 2024\"
\r\n - RVM N° 010-2022-MINEDU, NT \"Criterios Generales de Diseño para Infraestructura Educativa\"
\r\n - Ley Nº 31953 -Ley de Presupuesto del Sector Público para el Año Fiscal 2024.\r\n - Resolución Directoral Ejecutiva N° 000002-2024-MINEDU-VMGI-PRONIED-DE, mediante la cual se aprueba el \"Listado de Locales Educativos beneficiarios del Programa de Mantenimiento para el año 2024\".\r\n
\r\n }\r\n
\r\n
\r\n
\r\n } */}\r\n {/* LÓGICA: VARIAS VEEDURÍAS */}\r\n \r\n \r\n\r\n
\r\n {\r\n const { checked } = e.target\r\n console.log('autorizacion:', checked)\r\n \r\n if (checked)\r\n setFieldValue( \"autorizacion\", '1' )\r\n else\r\n setFieldValue( \"autorizacion\", '' )\r\n \r\n } }\r\n />\r\n }\r\n />\r\n\r\n\r\n\r\n\r\n \r\n \r\n Declaro haber leído el siguiente contenido correspondiente a los Principios de \"La Reserva\" y de \"Participación Ciudadana\" que rige al Control Gubernamental y a las actividades del Programa \"Auditores Juveniles\".\r\n \r\n {showMore && (\r\n <>\r\n

\r\n El Programa \"Auditores Juveniles\" rige sus actividades que son promovidas sobre la base del Convenio 152 - 2019 – MINEDU - Convenio de Cooperación Interinstitucional entre el Ministerio de Educación y la Contraloría General de la República del Perú suscrito el 03 de diciembre de 2019.\r\n

\r\n Asimismo, en el marco del literal \"n\" y \"q\" art. 9 de la Ley 27785 – Ley del Sistema Nacional de Control y de la Contraloría General de la República, respecto a los principios establece lo siguiente: \"La Reserva\", por cuyo mérito se encuentra prohibido que durante la ejecución del control se revele información que pueda causar daño a la entidad, a su personal o al sistema, o dificulte la tarea de este último” y de \"Participación Ciudadana\" que permite la contribución de la ciudadanía en el ejercicio del control gubernamental.\r\n

\r\n En ese sentido, mediante la presente declaración se autoriza la participación del estudiante en las veedurías escolares\r\n \r\n )}\r\n
\r\n \r\n {showMore ? 'Leer menos' : 'Leer más'}\r\n \r\n {/* \r\n {showMore ? 'Leer menos' : 'Leer más'}\r\n */}\r\n
\r\n\r\n \r\n \r\n }\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n {\r\n veeduria.message !== 'ok'\r\n ?\r\n \r\n {/* */}\r\n\r\n \r\n\r\n \r\n {/* LÓGICA: VARIAS VEEDURÍAS */}\r\n {/* {\r\n isBrowser\r\n ?\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n :\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n } */}\r\n {/* LÓGICA: VARIAS VEEDURÍAS */}\r\n\r\n\r\n\r\n
\r\n : null\r\n }\r\n \r\n {/* */}\r\n\r\n \r\n\r\n
\r\n }\r\n
\r\n {/* Fin: Formato */}\r\n \r\n \r\n ) }\r\n \r\n )\r\n}\r\n","import { getFormatos } from \"../actions/formatoActions\"\r\nimport { Mensaje } from \"../../controls/Mensaje\"\r\nimport { logErrors } from \"../../logErrors\"\r\nimport { listar_formatos, listar_formatos_by_tipo } from \"../../helpers/formatoHelper\"\r\nimport { formatoTypes } from \"../../types/formatoTypes\"\r\n\r\nexport const getFormatosBD = () => {\r\n return async( dispatch, getState ) => {\r\n try {\r\n dispatch( getFormatos( [] ) )\r\n \r\n const response = await listar_formatos()\r\n\r\n if ( response.Validacion !== '' ){\r\n dispatch( { type: formatoTypes.FORMATO_GET_ERROR, payload: { message: response.Validacion, severity: 'error' } } );\r\n }\r\n else{\r\n dispatch( { type: formatoTypes.FORMATO_GET_COMPLETE, \r\n payload: response.Data } );\r\n }\r\n\r\n } catch ( e ) {\r\n dispatch( { type: formatoTypes.FORMATO_GET_ERROR, payload: [] } );\r\n const err = logErrors( e )\r\n Mensaje( err.Message, err.Type )\r\n }\r\n \r\n }\r\n}\r\n\r\nexport const getFormatosByTipoBD = ( tipo, miembro ) => {\r\n return async( dispatch, getState ) => {\r\n try {\r\n dispatch( getFormatos( [] ) )\r\n \r\n const response = await listar_formatos_by_tipo( tipo, miembro )\r\n\r\n if ( response.Validacion !== '' ){\r\n dispatch( { type: formatoTypes.FORMATO_GET_ERROR, payload: { message: response.Validacion, severity: 'error' } } );\r\n }\r\n else{\r\n dispatch( { type: formatoTypes.FORMATO_GET_COMPLETE, \r\n payload: response.Data } );\r\n }\r\n\r\n } catch ( e ) {\r\n dispatch( { type: formatoTypes.FORMATO_GET_ERROR, payload: [] } );\r\n const err = logErrors( e )\r\n Mensaje( err.Message, err.Type )\r\n }\r\n \r\n }\r\n}","import { Mensaje } from \"../../controls/Mensaje\"\r\nimport { logErrors } from \"../../logErrors\"\r\nimport { listar_preguntas } from \"../../helpers/preguntaHelper\"\r\nimport { getPreguntas } from \"../actions/preguntaActions\"\r\nimport { preguntaTypes } from \"../../types/preguntaTypes\"\r\n\r\nexport const getPreguntasBD = ( formato ) => {\r\n return async( dispatch, getState ) => {\r\n try {\r\n dispatch( getPreguntas() )\r\n \r\n const response = await listar_preguntas( formato )\r\n\r\n if ( response.Validacion !== '' ){\r\n dispatch( { type: preguntaTypes.PREGUNTA_GET_ERROR, payload: { message: response.Validacion, severity: 'error' } } );\r\n }\r\n else{\r\n dispatch( { type: preguntaTypes.PREGUNTA_GET_COMPLETE, \r\n payload: response.Data } );\r\n }\r\n\r\n } catch ( e ) {\r\n const err = logErrors( e )\r\n dispatch( { type: preguntaTypes.PREGUNTA_GET_ERROR, payload: { message: err.Message, severity: 'error' } } );\r\n Mensaje( err.Message, err.Type )\r\n }\r\n \r\n }\r\n}","import { generate_token_url, valida_dni_private_url, get_veeduria_padre_url } from \"./urlBase\"\r\nimport { apiCall } from \"./apiCall\";\r\n\r\nconst generateToken = async () => {\r\n try {\r\n\r\n // const resp = await fetch( generate_token_url, {\r\n // method: 'POST',\r\n // headers: { 'Content-Type': 'application/json',\r\n // 'Access-Control-Allow-Origin': \"*\" },\r\n // body: JSON.stringify({...padre})\r\n // })\r\n const resp = await fetch( generate_token_url, {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/json',\r\n 'Access-Control-Allow-Origin': \"*\" },\r\n body: JSON.stringify(null)\r\n })\r\n const response = await resp.json()\r\n\r\n if ( response.Success ) {\r\n return response\r\n }\r\n else {\r\n console.log('padreHelper', '36')\r\n throw response\r\n }\r\n\r\n\r\n // const request = client(null)\r\n // const resp = await request.call( 'POST', valida_dni_url, padre )\r\n\r\n // const resp = await apiCall( 'POST', valida_dni_url, padre )\r\n // const response = resp.data\r\n\r\n // if ( response.Success ) {\r\n // return response\r\n // }\r\n // else {\r\n // console.log('padreHelper', '37')\r\n // throw response\r\n // }\r\n\r\n } catch ( e ) {\r\n throw e\r\n }\r\n}\r\n\r\n\r\nconst validaDNI = async ( padre ) => {\r\n\r\n try {\r\n const resp = await apiCall( 'POST', valida_dni_private_url, padre )\r\n const response = resp.data\r\n\r\n if ( response.Success ) {\r\n return response\r\n }\r\n else {\r\n console.log('padreHelper', '41')\r\n throw response\r\n }\r\n\r\n } catch ( e ) {\r\n console.log('padreHelper', e)\r\n console.log('padreHelper', '47')\r\n throw e\r\n }\r\n}\r\n\r\n\r\nconst getVeeduriaPadre = async ( padre ) => {\r\n\r\n try {\r\n const resp = await apiCall( 'POST', get_veeduria_padre_url, padre )\r\n const response = resp.data\r\n \r\n if ( response.Success ) {\r\n return response\r\n }\r\n else {\r\n console.log('padreHelper', '41')\r\n throw response\r\n }\r\n\r\n } catch ( e ) {\r\n console.log('padreHelper', e)\r\n console.log('padreHelper', '47')\r\n throw e\r\n }\r\n}\r\n\r\n\r\n// const validaDNI = async ( padre ) => {\r\n\r\n// try {\r\n// const resp = await fetch( valida_dni_url, {\r\n// method: 'POST',\r\n// headers: { 'Content-Type': 'application/json',\r\n// 'Access-Control-Allow-Origin': \"*\" },\r\n// body: JSON.stringify({...padre})\r\n// })\r\n// const response = await resp.json()\r\n\r\n// if ( response.Success ) {\r\n// return response\r\n// }\r\n// else {\r\n// console.log('padreHelper', '36')\r\n// throw response\r\n// }\r\n\r\n\r\n\r\n// } catch ( e ) {\r\n// console.log('padreHelper', '47')\r\n// throw e\r\n// }\r\n// }\r\n\r\n\r\n\r\n\r\nexport {\r\n generateToken,\r\n validaDNI,\r\n getVeeduriaPadre\r\n}","import { padreTypes } from \"../../types/padreTypes\"\r\nimport { savePadre, validCodigoVerificacion } from \"../actions/padreActions\"\r\nimport { ProcesoStart, ProcesoEnd } from \"../../controls/Proceso\"\r\nimport { generateToken, validaDNI, getVeeduriaPadre } from \"../../helpers/padreHelper\"\r\nimport { Mensaje } from \"../../controls/Mensaje\"\r\nimport { logErrors, MessagesError } from \"../../logErrors\"\r\n\r\n\r\nexport const generate_Token = () => {\r\n return async() => {\r\n try {\r\n const response = await generateToken()\r\n\r\n if ( response.Success ) {\r\n localStorage.setItem('token', response.Data);\r\n }\r\n\r\n } catch ( e ) {\r\n const err = logErrors( e )\r\n Mensaje( err.Message, err.Type )\r\n }\r\n \r\n }\r\n}\r\n\r\n\r\n\r\n\r\nexport const savePadreBD = ( padre ) => {\r\n return async( dispatch, getState ) => {\r\n try {\r\n const { dni } = getState().padre\r\n const { cargo } = getState().informacion_basica\r\ndebugger;\r\n if ( dni !== padre.dni )\r\n {\r\n // INICIO: Con captcha\r\n const { codigo } = getState().captcha\r\n\r\n if ( padre.codigo_verificacion.toLowerCase() !== codigo.toLowerCase() )\r\n {\r\n dispatch( validCodigoVerificacion( { message: MessagesError.codigo_verificacion, severity: 'error' } ) )\r\n }\r\n else{\r\n\r\n ProcesoStart()\r\n dispatch( savePadre( padre ) )\r\n \r\n const response = await validaDNI( padre )\r\n\r\n console.log('validaDNI::', response.Data)\r\n if ( response.Validacion !== '' ){\r\n dispatch( { type: padreTypes.PADRE_SAVE_ERROR, payload: { message: response.Validacion, severity: 'error' } } );\r\n }\r\n else{\r\n \r\n if(cargo == '007') {\r\n dispatch( { type: padreTypes.PADRE_SAVE_COMPLETE, \r\n payload: { ...response.Data, message: 'Se buscó con éxito', severity: 'success', id_veeduria: '0' } } );\r\n }\r\n else {\r\n localStorage.removeItem('token');\r\n localStorage.setItem('token', response.Data.token);\r\n \r\n const responseVeeduria = await getVeeduriaPadre( padre )\r\n // console.log('xxxxxxxxxx:', informacion_basica.cargo)\r\n\r\n if ( responseVeeduria.Validacion !== '' )\r\n dispatch( { type: padreTypes.PADRE_SAVE_ERROR, payload: { message: response.Validacion, severity: 'error' } } );\r\n else\r\n dispatch( { type: padreTypes.PADRE_SAVE_COMPLETE, \r\n payload: { ...response.Data, message: 'Se buscó con éxito', severity: 'success', id_veeduria: (responseVeeduria.Data == null ? '0' : responseVeeduria.Data.estudiante.id_veeduria) } } ); \r\n }\r\n\r\n \r\n }\r\n\r\n ProcesoEnd()\r\n\r\n }\r\n // FIN: Con captcha\r\n\r\n\r\n // // INICIO: Sin captcha\r\n // ProcesoStart()\r\n // dispatch( savePadre( padre ) )\r\n \r\n // const response = await validaDNI( padre )\r\n\r\n // if ( response.Validacion !== '' ){\r\n // dispatch( { type: padreTypes.PADRE_SAVE_ERROR, payload: { message: response.Validacion, severity: 'error' } } );\r\n // }\r\n // else{\r\n // localStorage.setItem('token', response.Data.token);\r\n // dispatch( { type: padreTypes.PADRE_SAVE_COMPLETE, \r\n // payload: { ...response.Data, message: 'Se buscó con éxito', severity: 'success' } } );\r\n // }\r\n\r\n // ProcesoEnd()\r\n // // FIN: Sin captcha\r\n\r\n\r\n\r\n\r\n\r\n }\r\n } catch ( e ) {\r\n ProcesoEnd()\r\n dispatch( { type: padreTypes.PADRE_SAVE_ERROR, payload: [] } );\r\n const err = logErrors( e )\r\n Mensaje( err.Message, err.Type )\r\n \r\n }\r\n \r\n }\r\n}","import { AccordionActions, makeStyles, AccordionSummary, TextField } from \"@material-ui/core\";\r\nimport { withStyles } from '@material-ui/core/styles'\r\nimport { theme } from '../../styles/setTheme'\r\n\r\nimport '../../styles/fonts.css' //Anadido ricardo\r\n// import Typography from 'typography'\r\n\r\n// const typography = new Typography({\r\n// // baseFontSize: '38px',\r\n// // baseLineHeight: 1.45,\r\n// headerFontFamily: ['Avenir Next', 'Helvetica Neue', 'Segoe UI', 'Helvetica', 'Arial', 'sans-serif'],\r\n// bodyFontFamily: ['Georgia', 'serif'],\r\n// // See below for the full list of options.\r\n// })\r\n\r\nexport const useStyles = makeStyles((theme) => ({\r\n form: {\r\n width: '100%',\r\n marginBottom: 0,\r\n // fontFamily: \"HelveticaBold\",\r\n },\r\n icon: {\r\n color: \"#ffffff\",\r\n },\r\n iconExpander: {\r\n color: \"#000\",\r\n },\r\n detalle: {\r\n padding: \"25px 10px 20px\",\r\n },\r\n wrapper: {\r\n position: 'relative',\r\n },\r\n captchaProgress: {\r\n color: theme.palette.secondary.main,\r\n position: 'absolute',\r\n top: '50%',\r\n left: '30%',\r\n },\r\n popover: {\r\n pointerEvents: 'none',\r\n },\r\n paper: {\r\n padding: theme.spacing(1),\r\n },\r\n textDisabled: {\r\n color: theme.palette.primary.main,\r\n fontWeight: 'bold',\r\n },\r\n /*wrapper: {\r\n position: 'relative',\r\n },*/\r\n fieldProgress: {\r\n color: theme.palette.secondary.primary,\r\n position: 'absolute',\r\n top: '50%',\r\n left: '80%',\r\n marginTop: -6,\r\n marginLeft: -12,\r\n },\r\n autocompleteProgress: {\r\n color: theme.palette.secondary.main,\r\n position: 'absolute',\r\n top: '50%',\r\n left: '50%',\r\n marginTop: -6,\r\n marginLeft: -12,\r\n },\r\n /*form: {\r\n width: '100%',\r\n marginBottom: 0,\r\n marginTop: '12px',\r\n },*/\r\n \r\n //Agregado\r\n // heading: {\r\n // // fontFamily: 'HelveticaBold',\r\n // fontFamily: typography.toString(),\r\n // }, \r\n\r\n inputStyle: {\r\n \"& .MuiOutlinedInput-adornedEnd\" :{\r\n paddingRight: '0px'\r\n },\r\n \"& .MuiInputBase-input\" :{\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n /*\"& .MuiInputBase-input:focus\" :{\r\n borderBottom: '2px solid #4285f4 !important',\r\n },*/\r\n \"& .MuiInput-underline:after\" :{\r\n borderBottom: '2px solid #4285f4 !important',\r\n },\r\n '& label': {\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n //Color del label con el foco\r\n '& label.Mui-focused': {\r\n color: '#4285f4',\r\n },\r\n '& error': {\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n \"& .MuiFormHelperText-root.Mui-error\":{\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n\r\n\r\n /*\"& .MuiInput-underline:after\":{\r\n BorderBottom: '2px solid #4285f4',\r\n }*/\r\n //borderBottom: '1px solid #4285f4 !important',\r\n },\r\n\r\n selectStyle: {\r\n // fontFamily: 'HelveticaBold',\r\n \"& .MuiInputBase-input\" :{\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n \"& .MuiInput-underline:after\" :{\r\n borderBottom: '2px solid #4285f4 !important',\r\n },\r\n //Color del label con el foco\r\n '& label.Mui-focused': {\r\n color: '#4285f4',\r\n },\r\n },\r\n\r\n buttonStyle : {\r\n \"& button\": {\r\n color: '#fff',\r\n backgroundColor: '#0000ff',\r\n },\r\n /*\r\n \"& .MuiButton-root\" : {\r\n fontFamily: 'HelveticaBold',\r\n },*/\r\n //backgroundColor: '#4285f4',\r\n // fontFamily: 'HelveticaBold',\r\n ':hover': {\r\n backgroundColor: '#4285f4',\r\n },\r\n\r\n \"& .MuiButton-root.MuiButton-containedPrimary\" : {\r\n backgroundColor: '#4285f4',\r\n },\r\n \r\n \"& .MuiButton-containedPrimary:hover\" : {\r\n backgroundColor: '#4285f4',\r\n }\r\n }\r\n \r\n}));\r\n\r\nexport const StyledAccordionSummary = withStyles({\r\n root: {\r\n // backgroundColor: theme.palette.primary.main,\r\n backgroundColor: \"#ddd\",\r\n borderBottom: \"1px solid #A8A8A8\",\r\n //color: \"#ffffff\",\r\n marginBottom: -1,\r\n minHeight: 30,\r\n fontSize: 15,\r\n fontWeight: 500,\r\n color: \"#000000\",\r\n // fontFamily: \"HelveticaBold\",\r\n\r\n\r\n // boxShadow: '0px 2px 4px -1px rgba(0,0,0,0.2), 0px 4px 5px 0px rgba(0,0,0,0.14), 0px 1px 10px 0px rgba(0,0,0,0.12)',\r\n '&$expanded': {\r\n minHeight: 30,\r\n },\r\n },\r\n content: {\r\n '&$expanded': {\r\n margin: '0px 0',\r\n },\r\n },\r\n expanded: {},\r\n})(AccordionSummary);\r\n\r\nexport const StyledAccordionActions = withStyles({\r\n root: {\r\n padding: '8px 25px',\r\n },\r\n})(AccordionActions);\r\n\r\n\r\nexport const StyledTextField = withStyles({\r\n root: {\r\n \"& .MuiInputBase-root.Mui-disabled\": {\r\n color: \"rgba(0, 0, 0, 0.87)\" // (default alpha is 0.38)\r\n // color: \"rgba(0, 0, 0, 0.6)\" // (default alpha is 0.38)\r\n },\r\n \"& .MuiInputBase-input\" :{\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n \r\n '& label': {\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n \"& .MuiFormHelperText-root\":{\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n \"& .MuiFormHelperText-root.Mui-error\":{\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n }\r\n})(TextField);","import * as Yup from 'yup'\r\nimport * as moment from 'moment';\r\nimport 'moment/locale/es';\r\n\r\nconst localTime = moment().format('YYYY-MM-DD');\r\nconst today = localTime + \"T00:00:00\";\r\n\r\nconst ProfileSchema = Yup.object().shape( {\r\n tipo_doc_padre: Yup.string()\r\n .required('Requerido'),\r\n // dni: Yup.string()\r\n // .required('Requerido')\r\n // .min(8, 'Debe tener 8 dígitos')\r\n // .max(8, 'Debe tener 8 dígitos'),\r\n dni: Yup.string()\r\n .when(\"tipo_doc_padre\", {\r\n is: (tipo_doc_padre => {\r\n return ( tipo_doc_padre === '0101' ) ? true : false;\r\n }),\r\n then: Yup.string().required('Requerido')\r\n .min(8, 'Debe tener 8 dígitos')\r\n .max(8, 'Debe tener 8 dígitos'),\r\n })\r\n .when(\"tipo_doc_padre\", {\r\n is: (tipo_doc_padre => {\r\n return ( tipo_doc_padre === '0102' || tipo_doc_padre === '0103' ) ? true : false;\r\n }),\r\n then: Yup.string().required('Requerido')\r\n .min(12, 'Debe tener 12 caracteres')\r\n .max(12, 'Debe tener 12 caracteres'),\r\n }),\r\n // nombre_completo: Yup.string()\r\n // .required('Requerido'),\r\n\r\n\r\n\r\n // nombre: Yup.string()\r\n // .required('Requerido')\r\n // .trim('Requerido'),\r\n // apellido_paterno: Yup.string()\r\n // .required('Requerido')\r\n // .trim('Requerido'),\r\n // apellido_materno: Yup.string()\r\n // .required('Requerido')\r\n // .trim('Requerido'),\r\n\r\n\r\n\r\n\r\n \r\n nombre: Yup.string()\r\n .when(\"tipo_doc_padre\", {\r\n is: (tipo_doc_padre => {\r\n return ( tipo_doc_padre === '0102' || tipo_doc_padre === '0103' || tipo_doc_padre === '0104' || tipo_doc_padre === '0105' ) ? true : false;\r\n }),\r\n then: Yup.string().required('Requerido').trim('Requerido'),\r\n }),\r\n \r\n apellido_paterno: Yup.string()\r\n .when(\"tipo_doc_padre\", {\r\n is: (tipo_doc_padre => {\r\n return ( tipo_doc_padre === '0102' || tipo_doc_padre === '0103' || tipo_doc_padre === '0104' || tipo_doc_padre === '0105' ) ? true : false;\r\n }),\r\n then: Yup.string().required('Requerido').trim('Requerido'),\r\n }),\r\n\r\n apellido_materno: Yup.string()\r\n .when(\"tipo_doc_padre\", {\r\n is: (tipo_doc_padre => {\r\n return ( tipo_doc_padre === '0102' || tipo_doc_padre === '0103' || tipo_doc_padre === '0104' || tipo_doc_padre === '0105' ) ? true : false;\r\n }),\r\n then: Yup.string().required('Requerido').trim('Requerido'),\r\n }),\r\n\r\n\r\n\r\n \r\n fecha_emision: Yup.date()\r\n .when(\"tipo_doc_padre\", {\r\n is: (tipo_doc_padre => {\r\n return ( tipo_doc_padre === '0101' ) ? true : false;\r\n }),\r\n then: Yup.date().required(\"Requerido\")\r\n .max(today, \"No puede ser mayor a hoy\")\r\n .typeError('Fecha incorrecta'),\r\n })\r\n .nullable(),\r\n\r\n // fecha_emision: Yup.date()\r\n // .required('Requerido')\r\n // .max(new Date() + 1, \"No puede ser mayor a hoy\")\r\n // // .max(new Date(), \"No puede ser mayor a hoy\")\r\n // .typeError('Fecha incorrecta'),\r\n // // .nullable(),\r\n codigo_verificacion: Yup.string()\r\n .required('Requerido')\r\n .min(4, 'Debe tener 4 caracteres')\r\n .max(4, 'Debe tener 4 caracteres'),\r\n celular: Yup.string()\r\n .min(9, 'Debe tener 9 dígitos')\r\n .max(9, 'Debe tener 9 dígitos')\r\n // password: Yup.string(\"\")\r\n // .min(8, \"Password must contain at least 8 characters\")\r\n // .required(\"Enter your password\"),\r\n // confirmPassword: Yup.string(\"Enter your password\")\r\n // .required(\"Confirm your password\")\r\n // .oneOf([Yup.ref(\"password\")], \"Password does not match\")\r\n} )\r\n// validate={ values => { \r\n // var errors = {}\r\n // if ( !values.dni ) {\r\n // errors.dni = 'El DNI es requerido'\r\n // }\r\n // else if ( values.dni.length !== 8 ) {\r\n // errors.dni = 'DNI tiene que tener 8 dígitos'\r\n // }\r\n // else if (isNaN(values.dni)) {\r\n // errors.dni = 'DNI tiene que ser numérico';\r\n // }\r\n \r\n // if ( !values.celular ) {\r\n // errors.celular = 'Es requerido'\r\n // }\r\n // else if ( values.celular.length !== 9 ) {\r\n // errors.celular = 'DNI tiene que tener 8 dígitos'\r\n // }\r\n // else if (isNaN(values.celular)) {\r\n // errors.dni = 'DNI celular tiene que ser numérico';\r\n // }\r\n // return errors\r\n // } }\r\nexport default ProfileSchema","export const captchaTypes = {\r\n CAPTCHA_GET_START: '[Captcha] GET_START',\r\n CAPTCHA_GET_COMPLETE: '[Captcha] GET_COMPLETE',\r\n CAPTCHA_GET_ERROR: '[Captcha] GET_ERROR',\r\n}","import { genera_captcha_url } from \"./urlBase\"\r\n// import { client } from \"./apiCall\";\r\n\r\nconst generaCaptcha = async () => {\r\n\r\n try {\r\n // const request = client(null)\r\n // const resp = await request.call('GET', genera_captcha_url, null)\r\n\r\n // //const resp = await apiCall( 'GET', genera_captcha_url, null )\r\n // const response = resp.data\r\n\r\n\r\n const resp = await fetch( genera_captcha_url, {\r\n method: 'GET',\r\n headers: { 'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',\r\n 'Access-Control-Allow-Origin': \"*\" }\r\n })\r\n const response = await resp.json()\r\n\r\n if ( response.Success ) {\r\n return response.Data\r\n }\r\n else {\r\n console.log('captchaHelper', '14')\r\n throw response\r\n }\r\n\r\n } catch ( e ) {\r\n console.log(e)\r\n console.log('captchaHelper', '20')\r\n throw e\r\n }\r\n}\r\n\r\nexport {\r\n generaCaptcha\r\n}","import { Mensaje } from \"../../controls/Mensaje\"\r\nimport { logErrors } from \"../../logErrors\"\r\nimport { getCaptcha } from \"../actions/captchaActions\"\r\nimport { captchaTypes } from \"../../types/captchaTypes\"\r\nimport { generaCaptcha } from \"../../helpers/captchaHelper\"\r\n\r\nexport const getCaptchaSR = ( captcha ) => {\r\n return async( dispatch ) => {\r\n try {\r\n // ProcesoStart()\r\n dispatch( getCaptcha( captcha ) )\r\n \r\n const img = await generaCaptcha()\r\n\r\n dispatch( { type: captchaTypes.CAPTCHA_GET_COMPLETE, payload: img } );\r\n } catch ( e ) {\r\n dispatch( { type: captchaTypes.CAPTCHA_GET_ERROR, payload: {} } );\r\n const err = logErrors( e )\r\n Mensaje( err.Message, err.Type )\r\n }\r\n \r\n }\r\n}","import { captchaTypes } from \"../../types/captchaTypes\"\r\n\r\nexport const getCaptcha = ( payload ) => ({\r\n type: captchaTypes.CAPTCHA_GET_START,\r\n payload\r\n})\r\n","export const informacionBasicaTypes = {\r\n INFO_BASICA_SAVE_START: '[InfoBasica] SAVE_START',\r\n INFO_BASICA_SAVE_COMPLETE: '[InfoBasica] SAVE_COMPLETE',\r\n INFO_BASICA_SAVE_ERROR: '[InfoBasica] SAVE_ERROR',\r\n INFO_BASICA_VALIDATED: '[InfoBasica] VALIDATED',\r\n INFO_BASICA_UPDATED: '[InfoBasica] UPDATED',\r\n}","import { informacionBasicaTypes } from \"../../types/informacionBasicaTypes\"\r\n\r\nexport const savePadre = ( payload ) => ({\r\n type: informacionBasicaTypes.INFO_BASICA_SAVE_START,\r\n payload\r\n})\r\n\r\nexport const validCodigoVerificacion = ( payload ) => ({\r\n type: informacionBasicaTypes.INFO_BASICA_VALIDATED,\r\n payload\r\n})\r\n\r\nexport const updateInfoBasica = ( payload ) => ({\r\n type: informacionBasicaTypes.INFO_BASICA_UPDATED,\r\n payload\r\n})\r\n","import React, { useState, useEffect, useRef } from 'react'\r\nimport { TextField,\r\n Accordion,\r\n AccordionDetails,\r\n Button,\r\n Typography,\r\n CircularProgress,\r\n Tooltip,\r\n InputAdornment,\r\n IconButton,\r\n FormControl,\r\n InputLabel,\r\n Select,\r\n MenuItem,\r\n FormHelperText,\r\n Divider,\r\n} from '@material-ui/core'\r\nimport {\r\n KeyboardDatePicker,\r\n MuiPickersUtilsProvider,\r\n} from '@material-ui/pickers'\r\nimport SearchIcon from '@material-ui/icons/Search'\r\nimport TextRotationNoneSharpIcon from '@material-ui/icons/TextRotationNoneSharp'\r\nimport ExpandMoreIcon from '@material-ui/icons/ExpandMore'\r\nimport DateFnsUtils from '@date-io/date-fns'\r\nimport esLocale from \"date-fns/locale/es\"\r\nimport 'date-fns'\r\nimport { useDispatch, useSelector } from 'react-redux'\r\nimport { generate_Token, savePadreBD } from '../../redux/thunk/padreThunk'\r\nimport { Alerta } from '../../controls/Alerta'\r\nimport { Mensaje } from '../../controls/Mensaje'\r\nimport { TextNumber } from '../../controls/TextNumber'\r\nimport { useStyles, StyledAccordionSummary, StyledTextField } from './RegistroPadreStyle'\r\nimport { Formik, useField, useFormikContext } from 'formik'\r\nimport ProfileSchema from './registroPadreProfile'\r\nimport { getCaptchaSR } from '../../redux/thunk/captchaThunk'\r\nimport { validCodigoVerificacion, updatePadre } from '../../redux/actions/padreActions'\r\nimport { updateDato } from '../../redux/actions/estudianteActions'\r\n\r\nimport { getTiposDocumentoBD } from '../../redux/thunk/parametroThunk'\r\n\r\nimport { StyledAccordionActions } from './../estudiante/RegistroEstudianteStyle'\r\nimport { updateInfoBasica } from '../../redux/actions/informacionBasicaActions'\r\n\r\nconst { niveles } = require(\"../../data/params\")\r\n\r\nexport const RegistroPadreScreen = ( ) => {\r\n const classes = useStyles();\r\n \r\n const dispatch = useDispatch()\r\n const padre = useSelector( state => state.padre )\r\n const captcha = useSelector( state => state.captcha )\r\n const tipos_documento = useSelector( state => state.tipos_documento )\r\n const informacion_basica = useSelector( state => state.informacion_basica )\r\n\r\n const { generos } = require(\"../../data/params\")\r\n\r\n const [alert, setAlert] = useState({\r\n open: false,\r\n vertical: 'top',\r\n horizontal: 'center',\r\n message: '',\r\n severity: 'success'\r\n });\r\n\r\n const [isLooked, setIsLooked] = useState(false)\r\n const [expanded, setexpanded] = useState(true)\r\n\r\n \r\n useEffect(() => {\r\n if (!isLooked) {\r\n setIsLooked( true )\r\n dispatch( generate_Token() ) \r\n dispatch( getCaptchaSR() )\r\n dispatch( getTiposDocumentoBD() )\r\n \r\n dispatch( updateInfoBasica( {miembro: '' } ) )\r\n dispatch( updateInfoBasica( {cargo: '007' } ) )\r\n \r\n localStorage.removeItem('tipo_envio');\r\n localStorage.removeItem('nombre_formato_vee');\r\n localStorage.removeItem('id_formato_selected');\r\n localStorage.removeItem('arr_id_formato_registrados');\r\n }\r\n }, [ isLooked, dispatch ])\r\n\r\n const handleCloseAlert = () => {\r\n setAlert({ ...alert, open: false });\r\n };\r\n\r\n const messageActive = useRef( padre.message )\r\n\r\n useEffect(() => {\r\n\r\n if ( padre.message !== '' && padre.severity === 'error' && !captcha.isLoading )\r\n {\r\n // setAlert({ ...alert, open: true, message: padre.message, severity: padre.severity });\r\n Mensaje(`\r\n ${\r\n padre.message\r\n }\r\n
\r\n `, '¡Validación!', 'error')\r\n\r\n dispatch( getCaptchaSR() )\r\n dispatch( validCodigoVerificacion( { message: '' } ) )\r\n messageActive.current = padre.message\r\n }\r\n if ( padre.message !== messageActive.current && padre.severity === 'success' )\r\n {\r\n // if (padre.id_veeduria != '0') {\r\n // Mensaje('Ud. ya registró su veeduría.
Si continúa, se actualizarán los datos ingresados.', '¡Aviso!', 'info', true)\r\n // }\r\n // else{\r\n // setAlert({ ...alert, open: true, message: padre.message, severity: padre.severity });\r\n // messageActive.current = padre.message;\r\n // }\r\n \r\n setAlert({ ...alert, open: true, message: padre.message, severity: padre.severity });\r\n messageActive.current = padre.message;\r\n }\r\n }, [ padre, alert, dispatch, captcha ])\r\n\r\n\r\n const MyField = props => {\r\n const {\r\n setFieldValue,\r\n } = useFormikContext();\r\n const [field, meta] = useField(props);\r\n \r\n useEffect(() => {\r\n let isCurrent = true;\r\n // INICIO: Con captcha\r\n if ( padre.codigo_verificacion.toLowerCase() !== captcha.codigo.toLowerCase()\r\n && !padre.isLoading ) {\r\n if (!!isCurrent) {\r\n setFieldValue(props.name, '');\r\n setFieldValue('codigo_verificacion', '');\r\n }\r\n }\r\n else if ( padre.nombre_completo !== '' && !padre.isLoading ) {\r\n if (!!isCurrent) {\r\n setFieldValue(props.name, padre.nombre_completo);\r\n if (padre.celular)\r\n {\r\n setFieldValue('celular', padre.celular);\r\n }\r\n }\r\n }\r\n // FIN: Con captcha\r\n\r\n // // INICIO: Sin captcha\r\n // if ( padre.nombre_completo !== '' && !padre.isLoading ) {\r\n // if (!!isCurrent) {\r\n // setFieldValue(props.name, padre.nombre_completo);\r\n // if (padre.celular)\r\n // {\r\n // setFieldValue('celular', padre.celular);\r\n // }\r\n // }\r\n // }\r\n // // FIN: Sin captcha\r\n\r\n return () => {\r\n isCurrent = false;\r\n };\r\n }, [ setFieldValue, props.name ]);\r\n \r\n return (\r\n <>\r\n \r\n {!!meta.touched && !!meta.error &&
{meta.error}
}\r\n \r\n );\r\n };\r\n\r\n\r\n const MyPhone = props => {\r\n const {\r\n setFieldValue,\r\n } = useFormikContext();\r\n const [field, meta, handleBlur, value] = useField(props);\r\n \r\n useEffect(() => {\r\n console.log(value)\r\n let isCurrent = true;\r\n if ( padre.nombre_completo !== '' && !padre.isLoading ) {\r\n if (!!isCurrent) {\r\n if (padre.celular)\r\n {\r\n setFieldValue('celular', padre.celular);\r\n }\r\n }\r\n }\r\n\r\n return () => {\r\n isCurrent = false;\r\n };\r\n }, [ setFieldValue, props.name ]);\r\n \r\n return (\r\n <>\r\n \r\n {!!meta.touched && !!meta.error &&
{meta.error}
}\r\n \r\n );\r\n };\r\n\r\n\r\n return (\r\n {\r\n const payload = {\r\n tipo_doc_padre: values.tipo_doc_padre, \r\n dni: values.dni, \r\n nombre: values.nombre,\r\n apellido_paterno: values.apellido_paterno, \r\n apellido_materno: values.apellido_materno,\r\n fecha_emision: values.fecha_emision, \r\n codigo_verificacion: values.codigo_verificacion, \r\n celular: values.celular,\r\n genero: values.genero\r\n }\r\n dispatch( savePadreBD( payload ) ) \r\n setTimeout(() => {\r\n setSubmitting(false)\r\n }, 5000);\r\n } }\r\n >\r\n {({\r\n values,\r\n errors,\r\n touched,\r\n handleChange,\r\n handleBlur,\r\n handleSubmit,\r\n isSubmitting,\r\n isValid,\r\n setFieldValue\r\n }) => (\r\n \r\n
\r\n { setexpanded( !expanded ) } }>\r\n } >\r\n \r\n {/* Datos del { informacion_basica.cargo_nombre } */}\r\n Datos del padre/madre de familia\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n Tipo documento\r\n \r\n \r\n {\r\n touched.tipo_doc_padre\r\n ? { errors.tipo_doc_padre }\r\n : null\r\n }\r\n \r\n { tipos_documento.isLoading && }\r\n
\r\n
\r\n
\r\n {\r\n (values.tipo_doc_padre === '0101' || (values.tipo_doc_padre === '0105' && values.tipo_doc_padre !== ''))\r\n &&\r\n {\r\n // if(event.target.value.length == 8) {\r\n // console.log(event.target.value)\r\n // setFieldValue(\"dni\", event.target.value);\r\n // dispatch( updatePadre( {dni: event.target.value } ) )\r\n // }\r\n // }}\r\n helperText={ touched.dni ? errors.dni : \"\"}\r\n error={ touched.dni && Boolean( errors.dni ) }\r\n InputProps={ { inputComponent: TextNumber } }\r\n disabled={ padre.nombre_completo?.length > 0 || padre.isValidated }\r\n />\r\n }\r\n {\r\n values.tipo_doc_padre !== '0101' && values.tipo_doc_padre !== '0105' && values.tipo_doc_padre !== ''\r\n &&\r\n {\r\n const regex = /^([a-z0-9]+)$/i;\r\n if (event.target.value === '' || regex.test(event.target.value)) {\r\n setFieldValue(\"dni\", event.target.value);\r\n }\r\n }}\r\n\r\n />\r\n }\r\n
\r\n
\r\n {\r\n values.tipo_doc_padre === '0101'\r\n ? \r\n 0 } >\r\n 0 }\r\n fullWidth\r\n size=\"small\"\r\n name=\"fecha_emision\"\r\n value={ values.fecha_emision }\r\n onChange={ value => setFieldValue( \"fecha_emision\", value ) }\r\n KeyboardButtonProps={ { \"aria-label\": \"change date\" } }\r\n onBlur={ handleBlur }\r\n helperText={ touched.fecha_emision ? errors.fecha_emision : \"\" }\r\n error={ touched.fecha_emision && Boolean( errors.fecha_emision ) }\r\n />\r\n \r\n : \r\n values.tipo_doc_padre === '0102' || values.tipo_doc_padre === '0103' || values.tipo_doc_padre === '0104' || values.tipo_doc_padre === '0105'\r\n ? \r\n {\r\n const regex = /^([a-zñáéíóú ]+)$/i;\r\n if (event.target.value === '' || regex.test(event.target.value)) {\r\n setFieldValue(\"nombre\", event.target.value);\r\n }\r\n }}\r\n className={ classes.inputStyle } //agregado\r\n />\r\n : \r\n null\r\n }\r\n
\r\n {\r\n values.tipo_doc_padre === '0102' || values.tipo_doc_padre === '0103' || values.tipo_doc_padre === '0104' || values.tipo_doc_padre === '0105'\r\n ?\r\n <>\r\n
\r\n {\r\n const regex = /^([a-zñáéíóú ]+)$/i;\r\n if (event.target.value === '' || regex.test(event.target.value)) {\r\n setFieldValue(\"apellido_paterno\", event.target.value);\r\n }\r\n }}\r\n className={ classes.inputStyle } //agregado\r\n />\r\n
\r\n
\r\n {\r\n const regex = /^([a-zñáéíóú ]+)$/i;\r\n if (event.target.value === '' || regex.test(event.target.value)) {\r\n setFieldValue(\"apellido_materno\", event.target.value);\r\n }\r\n }}\r\n className={ classes.inputStyle } //agregado\r\n />\r\n
\r\n \r\n
\r\n \r\n \r\n Género\r\n \r\n \r\n {\r\n touched.genero\r\n ? { errors.genero }\r\n : null\r\n }\r\n \r\n
\r\n \r\n :\r\n null\r\n }\r\n {\r\n padre.nombre_completo?.length === 0\r\n ?\r\n <>\r\n
\r\n {\r\n values.tipo_doc_padre !== ''\r\n ?\r\n \r\n // \r\n // \r\n // \r\n // ,\r\n // }}\r\n inputProps={ { maxLength: 4, style: { textTransform: 'uppercase' } } }\r\n onBlur={ handleBlur }\r\n onChange={ handleChange }\r\n disabled={ padre.nombre_completo?.length > 0 }\r\n helperText={ touched.codigo_verificacion ? errors.codigo_verificacion : \"\" }\r\n error={ touched.codigo_verificacion && Boolean( errors.codigo_verificacion ) }\r\n autoComplete=\"off\"\r\n className={ classes.inputStyle } //agregado\r\n />\r\n :\r\n null\r\n }\r\n
\r\n
\r\n {\r\n values.tipo_doc_padre !== ''\r\n ?\r\n
\r\n {\r\n ( captcha.imagen )\r\n ? \"captcha\"\r\n : \r\n }\r\n
\r\n :\r\n null\r\n }\r\n
\r\n
\r\n {/* \r\n Aca va el botón\r\n */}\r\n {\r\n values.tipo_doc_padre !== ''\r\n ?\r\n \r\n :\r\n null\r\n }\r\n {/* startIcon={ } */}\r\n
\r\n \r\n :\r\n <>\r\n {\r\n values.tipo_doc_padre === '0101'\r\n ?\r\n
\r\n \r\n
\r\n :\r\n null\r\n }\r\n {/* className=\"s-y-5 s-x-1 s-cols-2 \r\n m-y-2 m-x-4 m-cols-1\r\n l-y-1 l-x-11 l-cols-2\" */}\r\n\r\n\r\n {\r\n (values.tipo_doc_padre === '0101' )\r\n &&\r\n
\r\n \r\n
\r\n }\r\n\r\n\r\n
\r\n {/* {\r\n if ( !target.value ) {\r\n setFieldValue( \"celular\", '' )\r\n dispatch( updatePadre( {celular: '' } ) )\r\n }\r\n else {\r\n setFieldValue( \"celular\", target.value )\r\n dispatch( updatePadre( {celular: target.value } ) )\r\n }\r\n } } /> */}\r\n\r\n\r\n {\r\n if ( !target.value ) {\r\n setFieldValue( \"celular\", '' )\r\n dispatch( updatePadre( {celular: '' } ) )\r\n }\r\n else {\r\n setFieldValue( \"celular\", target.value )\r\n dispatch( updatePadre( {celular: target.value } ) )\r\n }\r\n } }\r\n onBlur={ handleBlur }\r\n InputProps={ { inputComponent: TextNumber } }\r\n autoComplete=\"off\"\r\n />\r\n
\r\n \r\n }\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n Datos utilizados únicamente por el programa Auditores Juveniles para validación de la información\r\n \r\n \r\n
\r\n\r\n
\r\n ) }\r\n \r\n )\r\n}\r\n","import React, { useState, useEffect, useRef } from 'react'\r\nimport { TextField,\r\n Accordion,\r\n AccordionDetails,\r\n Button,\r\n Typography,\r\n CircularProgress,\r\n Tooltip,\r\n InputAdornment,\r\n IconButton,\r\n FormControl,\r\n InputLabel,\r\n Select,\r\n MenuItem,\r\n FormHelperText,\r\n Divider,\r\n} from '@material-ui/core'\r\nimport {\r\n KeyboardDatePicker,\r\n MuiPickersUtilsProvider,\r\n} from '@material-ui/pickers'\r\nimport SearchIcon from '@material-ui/icons/Search'\r\nimport TextRotationNoneSharpIcon from '@material-ui/icons/TextRotationNoneSharp'\r\nimport ExpandMoreIcon from '@material-ui/icons/ExpandMore'\r\nimport DateFnsUtils from '@date-io/date-fns'\r\nimport esLocale from \"date-fns/locale/es\"\r\nimport 'date-fns'\r\nimport { useDispatch, useSelector } from 'react-redux'\r\nimport { generate_Token, savePadreBD } from '../../redux/thunk/padreThunk'\r\nimport { Alerta } from '../../controls/Alerta'\r\nimport { Mensaje } from '../../controls/Mensaje'\r\nimport { TextNumber } from '../../controls/TextNumber'\r\nimport { useStyles, StyledAccordionSummary, StyledTextField } from './RegistroPadreStyle'\r\nimport { Formik, useField, useFormikContext } from 'formik'\r\nimport ProfileSchema from './registroPadreProfile'\r\nimport { getCaptchaSR } from '../../redux/thunk/captchaThunk'\r\nimport { validCodigoVerificacion, updatePadre } from '../../redux/actions/padreActions'\r\nimport { getTiposDocumentoBD } from '../../redux/thunk/parametroThunk'\r\n\r\nimport { StyledAccordionActions } from './../estudiante/RegistroEstudianteStyle'\r\n\r\nconst { niveles } = require(\"../../data/params\")\r\n\r\nexport const RegistroAdultoScreen = ( ) => {\r\n const classes = useStyles();\r\n \r\n const dispatch = useDispatch()\r\n const padre = useSelector( state => state.padre )\r\n const captcha = useSelector( state => state.captcha )\r\n const tipos_documento = useSelector( state => state.tipos_documento )\r\n const informacion_basica = useSelector( state => state.informacion_basica )\r\n\r\n const [alert, setAlert] = useState({\r\n open: false,\r\n vertical: 'top',\r\n horizontal: 'center',\r\n message: '',\r\n severity: 'success'\r\n });\r\n\r\n const [isLooked, setIsLooked] = useState(false)\r\n const [expanded, setexpanded] = useState(true)\r\n\r\n \r\n useEffect(() => {\r\n if (!isLooked) {\r\n console.log('xxxx::', informacion_basica.cargo);\r\n console.log('yyyyy::', padre.tipo_doc_padre);\r\n setIsLooked( true )\r\n dispatch( generate_Token() ) \r\n dispatch( getCaptchaSR() )\r\n dispatch( getTiposDocumentoBD() )\r\n }\r\n }, [ isLooked, dispatch ])\r\n\r\n const handleCloseAlert = () => {\r\n setAlert({ ...alert, open: false });\r\n };\r\n\r\n const messageActive = useRef( padre.message )\r\n\r\n useEffect(() => {\r\n\r\n if ( padre.message !== '' && padre.severity === 'error' && !captcha.isLoading )\r\n {\r\n // setAlert({ ...alert, open: true, message: padre.message, severity: padre.severity });\r\n Mensaje(`\r\n ${\r\n padre.message\r\n }\r\n
\r\n `, '¡Validación!', 'error')\r\n\r\n dispatch( getCaptchaSR() )\r\n dispatch( validCodigoVerificacion( { message: '' } ) )\r\n messageActive.current = padre.message\r\n }\r\n if ( padre.message !== messageActive.current && padre.severity === 'success' )\r\n {\r\n setAlert({ ...alert, open: true, message: padre.message, severity: padre.severity });\r\n messageActive.current = padre.message\r\n }\r\n\r\n }, [ padre, alert, dispatch, captcha ])\r\n\r\n\r\n const MyField = props => {\r\n const {\r\n setFieldValue,\r\n } = useFormikContext();\r\n const [field, meta] = useField(props);\r\n \r\n useEffect(() => {\r\n let isCurrent = true;\r\n // INICIO: Con captcha\r\n if ( padre.codigo_verificacion.toLowerCase() !== captcha.codigo.toLowerCase()\r\n && !padre.isLoading ) {\r\n if (!!isCurrent) {\r\n setFieldValue(props.name, '');\r\n setFieldValue('codigo_verificacion', '');\r\n }\r\n }\r\n else if ( padre.nombre_completo !== '' && !padre.isLoading ) {\r\n if (!!isCurrent) {\r\n setFieldValue(props.name, padre.nombre_completo);\r\n if (padre.celular)\r\n {\r\n setFieldValue('celular', padre.celular);\r\n }\r\n }\r\n }\r\n // FIN: Con captcha\r\n\r\n // // INICIO: Sin captcha\r\n // if ( padre.nombre_completo !== '' && !padre.isLoading ) {\r\n // if (!!isCurrent) {\r\n // setFieldValue(props.name, padre.nombre_completo);\r\n // if (padre.celular)\r\n // {\r\n // setFieldValue('celular', padre.celular);\r\n // }\r\n // }\r\n // }\r\n // // FIN: Sin captcha\r\n\r\n return () => {\r\n isCurrent = false;\r\n };\r\n }, [ setFieldValue, props.name ]);\r\n \r\n return (\r\n <>\r\n \r\n {!!meta.touched && !!meta.error &&
{meta.error}
}\r\n \r\n );\r\n };\r\n\r\n\r\n const MyPhone = props => {\r\n const {\r\n setFieldValue,\r\n } = useFormikContext();\r\n const [field, meta, handleBlur, value] = useField(props);\r\n \r\n useEffect(() => {\r\n console.log(value)\r\n let isCurrent = true;\r\n if ( padre.nombre_completo !== '' && !padre.isLoading ) {\r\n if (!!isCurrent) {\r\n if (padre.celular)\r\n {\r\n setFieldValue('celular', padre.celular);\r\n }\r\n }\r\n }\r\n\r\n return () => {\r\n isCurrent = false;\r\n };\r\n }, [ setFieldValue, props.name ]);\r\n \r\n return (\r\n <>\r\n \r\n {!!meta.touched && !!meta.error &&
{meta.error}
}\r\n \r\n );\r\n };\r\n\r\n\r\n return (\r\n {\r\n const payload = {\r\n tipo_doc_padre: values.tipo_doc_padre, \r\n dni: values.dni, \r\n nombre: values.nombre,\r\n apellido_paterno: values.apellido_paterno, \r\n apellido_materno: values.apellido_materno,\r\n fecha_emision: values.fecha_emision, \r\n codigo_verificacion: values.codigo_verificacion, \r\n celular: values.celular \r\n }\r\n dispatch( savePadreBD( payload ) ) \r\n setTimeout(() => {\r\n setSubmitting(false)\r\n }, 5000);\r\n } }\r\n >\r\n {({\r\n values,\r\n errors,\r\n touched,\r\n handleChange,\r\n handleBlur,\r\n handleSubmit,\r\n isSubmitting,\r\n isValid,\r\n setFieldValue\r\n }) => (\r\n \r\n
\r\n { setexpanded( !expanded ) } }>\r\n } >\r\n \r\n Datos del { informacion_basica.cargo_nombre }\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n Tipo documento\r\n \r\n \r\n {\r\n touched.tipo_doc_padre\r\n ? { errors.tipo_doc_padre }\r\n : null\r\n }\r\n \r\n { tipos_documento.isLoading && }\r\n
\r\n
\r\n
\r\n {\r\n (values.tipo_doc_padre === '0101' || (values.tipo_doc_padre === '0105' && values.tipo_doc_padre !== ''))\r\n &&\r\n 0 || padre.isValidated }\r\n />\r\n }\r\n {\r\n values.tipo_doc_padre !== '0101' && values.tipo_doc_padre !== '0105' && values.tipo_doc_padre !== ''\r\n &&\r\n {\r\n const regex = /^([a-z0-9]+)$/i;\r\n if (event.target.value === '' || regex.test(event.target.value)) {\r\n setFieldValue(\"dni\", event.target.value);\r\n }\r\n }}\r\n\r\n />\r\n }\r\n
\r\n
\r\n {\r\n values.tipo_doc_padre === '0101'\r\n ? \r\n 0 } >\r\n 0 }\r\n fullWidth\r\n size=\"small\"\r\n name=\"fecha_emision\"\r\n value={ values.fecha_emision }\r\n onChange={ value => setFieldValue( \"fecha_emision\", value ) }\r\n KeyboardButtonProps={ { \"aria-label\": \"change date\" } }\r\n onBlur={ handleBlur }\r\n helperText={ touched.fecha_emision ? errors.fecha_emision : \"\" }\r\n error={ touched.fecha_emision && Boolean( errors.fecha_emision ) }\r\n />\r\n \r\n : \r\n values.tipo_doc_padre === '0102' || values.tipo_doc_padre === '0103' || values.tipo_doc_padre === '0104' || values.tipo_doc_padre === '0105'\r\n ? \r\n {\r\n const regex = /^([a-zñáéíóú ]+)$/i;\r\n if (event.target.value === '' || regex.test(event.target.value)) {\r\n setFieldValue(\"nombre\", event.target.value);\r\n }\r\n }}\r\n className={ classes.inputStyle } //agregado\r\n />\r\n : \r\n null\r\n }\r\n
\r\n {\r\n values.tipo_doc_padre === '0102' || values.tipo_doc_padre === '0103' || values.tipo_doc_padre === '0104' || values.tipo_doc_padre === '0105'\r\n ?\r\n <>\r\n
\r\n {\r\n const regex = /^([a-zñáéíóú ]+)$/i;\r\n if (event.target.value === '' || regex.test(event.target.value)) {\r\n setFieldValue(\"apellido_paterno\", event.target.value);\r\n }\r\n }}\r\n className={ classes.inputStyle } //agregado\r\n />\r\n
\r\n
\r\n {\r\n const regex = /^([a-zñáéíóú ]+)$/i;\r\n if (event.target.value === '' || regex.test(event.target.value)) {\r\n setFieldValue(\"apellido_materno\", event.target.value);\r\n }\r\n }}\r\n className={ classes.inputStyle } //agregado\r\n />\r\n
\r\n \r\n :\r\n null\r\n }\r\n {\r\n padre.nombre_completo?.length === 0\r\n ?\r\n <>\r\n
\r\n {\r\n values.tipo_doc_padre !== ''\r\n ?\r\n \r\n // \r\n // \r\n // \r\n // ,\r\n // }}\r\n inputProps={ { maxLength: 4, style: { textTransform: 'uppercase' } } }\r\n onBlur={ handleBlur }\r\n onChange={ handleChange }\r\n disabled={ padre.nombre_completo?.length > 0 }\r\n helperText={ touched.codigo_verificacion ? errors.codigo_verificacion : \"\" }\r\n error={ touched.codigo_verificacion && Boolean( errors.codigo_verificacion ) }\r\n autoComplete=\"off\"\r\n className={ classes.inputStyle } //agregado\r\n />\r\n :\r\n null\r\n }\r\n
\r\n
\r\n {\r\n values.tipo_doc_padre !== ''\r\n ?\r\n
\r\n {\r\n ( captcha.imagen )\r\n ? \"captcha\"\r\n : \r\n }\r\n
\r\n :\r\n null\r\n }\r\n
\r\n
\r\n {/* \r\n Aca va el botón\r\n */}\r\n {\r\n values.tipo_doc_padre !== ''\r\n ?\r\n \r\n :\r\n null\r\n }\r\n {/* startIcon={ } */}\r\n
\r\n \r\n :\r\n <>\r\n {\r\n values.tipo_doc_padre === '0101'\r\n ?\r\n
\r\n \r\n
\r\n :\r\n null\r\n }\r\n {/* className=\"s-y-5 s-x-1 s-cols-2 \r\n m-y-2 m-x-4 m-cols-1\r\n l-y-1 l-x-11 l-cols-2\" */}\r\n\r\n\r\n \r\n
\r\n \r\n
\r\n\r\n\r\n
\r\n {/* {\r\n if ( !target.value ) {\r\n setFieldValue( \"celular\", '' )\r\n dispatch( updatePadre( {celular: '' } ) )\r\n }\r\n else {\r\n setFieldValue( \"celular\", target.value )\r\n dispatch( updatePadre( {celular: target.value } ) )\r\n }\r\n } } /> */}\r\n\r\n\r\n {\r\n if ( !target.value ) {\r\n setFieldValue( \"celular\", '' )\r\n dispatch( updatePadre( {celular: '' } ) )\r\n }\r\n else {\r\n setFieldValue( \"celular\", target.value )\r\n dispatch( updatePadre( {celular: target.value } ) )\r\n }\r\n } }\r\n onBlur={ handleBlur }\r\n InputProps={ { inputComponent: TextNumber } }\r\n autoComplete=\"off\"\r\n />\r\n
\r\n \r\n }\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n Datos utilizados únicamente por el programa Auditores Juveniles para validación de la información\r\n \r\n \r\n
\r\n\r\n
\r\n ) }\r\n \r\n )\r\n}\r\n","import { AccordionActions, makeStyles, AccordionSummary, TextField } from \"@material-ui/core\";\r\nimport { withStyles } from '@material-ui/core/styles'\r\nimport { theme } from '../../styles/setTheme'\r\n\r\nimport '../../styles/fonts.css' //Anadido ricardo\r\n// import Typography from 'typography'\r\n\r\n// const typography = new Typography({\r\n// // baseFontSize: '38px',\r\n// // baseLineHeight: 1.45,\r\n// headerFontFamily: ['Avenir Next', 'Helvetica Neue', 'Segoe UI', 'Helvetica', 'Arial', 'sans-serif'],\r\n// bodyFontFamily: ['Georgia', 'serif'],\r\n// // See below for the full list of options.\r\n// })\r\n\r\nexport const useStyles = makeStyles((theme) => ({\r\n form: {\r\n width: '100%',\r\n marginBottom: 0,\r\n // fontFamily: \"HelveticaBold\",\r\n },\r\n icon: {\r\n color: \"#ffffff\",\r\n },\r\n iconExpander: {\r\n color: \"#000\",\r\n },\r\n detalle: {\r\n padding: \"25px 10px 20px\",\r\n },\r\n wrapper: {\r\n position: 'relative',\r\n },\r\n captchaProgress: {\r\n color: theme.palette.secondary.main,\r\n position: 'absolute',\r\n top: '50%',\r\n left: '30%',\r\n },\r\n popover: {\r\n pointerEvents: 'none',\r\n },\r\n paper: {\r\n padding: theme.spacing(1),\r\n },\r\n textDisabled: {\r\n color: theme.palette.primary.main,\r\n fontWeight: 'bold',\r\n },\r\n /*wrapper: {\r\n position: 'relative',\r\n },*/\r\n fieldProgress: {\r\n color: theme.palette.secondary.primary,\r\n position: 'absolute',\r\n top: '50%',\r\n left: '80%',\r\n marginTop: -6,\r\n marginLeft: -12,\r\n },\r\n autocompleteProgress: {\r\n color: theme.palette.secondary.main,\r\n position: 'absolute',\r\n top: '50%',\r\n left: '50%',\r\n marginTop: -6,\r\n marginLeft: -12,\r\n },\r\n /*form: {\r\n width: '100%',\r\n marginBottom: 0,\r\n marginTop: '12px',\r\n },*/\r\n \r\n //Agregado\r\n // heading: {\r\n // // fontFamily: 'HelveticaBold',\r\n // fontFamily: typography.toString(),\r\n // }, \r\n\r\n inputStyle: {\r\n \"& .MuiOutlinedInput-adornedEnd\" :{\r\n paddingRight: '0px'\r\n },\r\n \"& .MuiInputBase-input\" :{\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n /*\"& .MuiInputBase-input:focus\" :{\r\n borderBottom: '2px solid #4285f4 !important',\r\n },*/\r\n \"& .MuiInput-underline:after\" :{\r\n borderBottom: '2px solid #4285f4 !important',\r\n },\r\n '& label': {\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n //Color del label con el foco\r\n '& label.Mui-focused': {\r\n color: '#4285f4',\r\n },\r\n '& error': {\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n \"& .MuiFormHelperText-root.Mui-error\":{\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n\r\n\r\n /*\"& .MuiInput-underline:after\":{\r\n BorderBottom: '2px solid #4285f4',\r\n }*/\r\n //borderBottom: '1px solid #4285f4 !important',\r\n },\r\n\r\n selectStyle: {\r\n // fontFamily: 'HelveticaBold',\r\n \"& .MuiInputBase-input\" :{\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n \"& .MuiInput-underline:after\" :{\r\n borderBottom: '2px solid #4285f4 !important',\r\n },\r\n //Color del label con el foco\r\n '& label.Mui-focused': {\r\n color: '#4285f4',\r\n },\r\n },\r\n\r\n buttonStyle : {\r\n \"& button\": {\r\n color: '#fff',\r\n backgroundColor: '#0000ff',\r\n },\r\n /*\r\n \"& .MuiButton-root\" : {\r\n fontFamily: 'HelveticaBold',\r\n },*/\r\n //backgroundColor: '#4285f4',\r\n // fontFamily: 'HelveticaBold',\r\n ':hover': {\r\n backgroundColor: '#4285f4',\r\n },\r\n\r\n \"& .MuiButton-root.MuiButton-containedPrimary\" : {\r\n backgroundColor: '#4285f4',\r\n },\r\n \r\n \"& .MuiButton-containedPrimary:hover\" : {\r\n backgroundColor: '#4285f4',\r\n }\r\n }\r\n \r\n}));\r\n\r\nexport const StyledAccordionSummary = withStyles({\r\n root: {\r\n // backgroundColor: theme.palette.primary.main,\r\n backgroundColor: \"#ddd\",\r\n borderBottom: \"1px solid #A8A8A8\",\r\n //color: \"#ffffff\",\r\n marginBottom: -1,\r\n minHeight: 30,\r\n fontSize: 15,\r\n fontWeight: 500,\r\n color: \"#000000\",\r\n // fontFamily: \"HelveticaBold\",\r\n\r\n\r\n // boxShadow: '0px 2px 4px -1px rgba(0,0,0,0.2), 0px 4px 5px 0px rgba(0,0,0,0.14), 0px 1px 10px 0px rgba(0,0,0,0.12)',\r\n '&$expanded': {\r\n minHeight: 30,\r\n },\r\n },\r\n content: {\r\n '&$expanded': {\r\n margin: '0px 0',\r\n },\r\n },\r\n expanded: {},\r\n})(AccordionSummary);\r\n\r\nexport const StyledAccordionActions = withStyles({\r\n root: {\r\n padding: '8px 25px',\r\n },\r\n})(AccordionActions);\r\n\r\n\r\nexport const StyledTextField = withStyles({\r\n root: {\r\n \"& .MuiInputBase-root.Mui-disabled\": {\r\n color: \"rgba(0, 0, 0, 0.87)\" // (default alpha is 0.38)\r\n // color: \"rgba(0, 0, 0, 0.6)\" // (default alpha is 0.38)\r\n },\r\n \"& .MuiInputBase-input\" :{\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n \r\n '& label': {\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n \"& .MuiFormHelperText-root\":{\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n \"& .MuiFormHelperText-root.Mui-error\":{\r\n // fontFamily: 'HelveticaBold',\r\n },\r\n }\r\n})(TextField);","import React, { useState, useEffect, useRef } from 'react'\r\nimport { Accordion,\r\n AccordionDetails,\r\n Typography,\r\n FormControl,\r\n FormLabel,\r\n FormControlLabel,\r\n RadioGroup,\r\n Radio\r\n} from '@material-ui/core'\r\nimport ExpandMoreIcon from '@material-ui/icons/ExpandMore'\r\nimport 'date-fns'\r\nimport { useDispatch, useSelector } from 'react-redux'\r\nimport { Alerta } from '../../controls/Alerta'\r\nimport { useStyles, StyledAccordionSummary } from './InformacionBasicaStyle'\r\nimport { updatePadre } from '../../redux/actions/padreActions'\r\nimport { updateInfoBasica } from '../../redux/actions/informacionBasicaActions'\r\n\r\nimport { isBrowser } from 'react-device-detect';\r\n\r\nexport const InformacionBasicaScreen = ( ) => {\r\n const classes = useStyles();\r\n const [expanded, setexpanded] = useState(true)\r\n \r\n const dispatch = useDispatch()\r\n const informacion_basica = useSelector( state => state.informacion_basica )\r\n const estudiante = useSelector( state => state.estudiante )\r\n\r\n return (\r\n
\r\n { setexpanded( !expanded ) } }>\r\n } >\r\n \r\n Información básica\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n Selecciona tu CARGO/OCUPACIÓN\r\n {\r\n dispatch( updateInfoBasica( {miembro: '' } ) )\r\n dispatch( updateInfoBasica( {cargo: !target.value ? '' : target.value } ) )\r\n let cargo_nombre = 'padre/madre de familia';\r\n switch (target.value) {\r\n case '001':\r\n cargo_nombre = 'Director';\r\n break;\r\n case '002':\r\n cargo_nombre = 'Docente';\r\n break;\r\n case '003':\r\n cargo_nombre = 'Padre de Familia';\r\n break;\r\n case '004':\r\n cargo_nombre = 'Personal administrativo';\r\n break;\r\n // case '005':\r\n // cargo_nombre = 'Especialista DRE/UGEL';\r\n // break;\r\n // case '006':\r\n // cargo_nombre = 'Especialista CGR';\r\n // break;\r\n }\r\n dispatch( updateInfoBasica( {cargo_nombre: cargo_nombre } ) )\r\n dispatch( updatePadre( {tipo_doc_padre: '0101' } ) )\r\n } }\r\n row={isBrowser}>\r\n } label=\"Director\" />\r\n } label=\"Docente\" />\r\n } label=\"Padre de Familia\" />\r\n } label=\"Personal administrativo\" />\r\n {/* \r\n } label=\"Especialista DRE/UGEL\" />\r\n } label=\"Especialista CGR\" /> \r\n } label=\"Estudiante\" />\r\n */}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n {\r\n (informacion_basica.cargo === '008' || informacion_basica.cargo === '009')\r\n &&\r\n \r\n Selecciona si eres miembro del CONEI, de la Comisión de Mantenimiento u otros\r\n {\r\n dispatch( updateInfoBasica( {miembro: !target.value ? '' : target.value } ) )\r\n } }\r\n row={isBrowser}>\r\n } label=\"CONEI (Consejo Educativo Institucional)\" />\r\n } label=\"COMISIÓN DE MANTENIMIENTO\" />\r\n } label=\"OTROS\" />\r\n \r\n \r\n }\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\nimport { ThemeProvider, createMuiTheme } from '@material-ui/core/styles';\r\n\r\nimport { RegistroEstudianteScreen } from './components/estudiante/RegistroEstudianteScreen';\r\nimport { RegistroPadreScreen } from './components/padre/RegistroPadreScreen';\r\nimport { RegistroAdultoScreen } from './components/padre/RegistroAdultoScreen';\r\n\r\nimport { makeStyles } from '@material-ui/core/styles';\r\n// import { ThemeProvider } from '@material-ui/styles';\r\n// import { theme } from './styles/setTheme';\r\nimport { useSelector } from 'react-redux';\r\nimport { FormatoScreen } from './components/formato/FormatoScreen';\r\n\r\nimport Card from '@material-ui/core/Card';\r\nimport CardHeader from '@material-ui/core/CardHeader';\r\nimport Avatar from '@material-ui/core/Avatar';\r\nimport IconButton from '@material-ui/core/IconButton';\r\nimport MoreVertIcon from '@material-ui/icons/MoreVert';\r\nimport InfoRoundedIcon from '@material-ui/icons/InfoRounded';\r\n// import './styles/fonts.scss'\r\n// import './index.css';\r\nimport './styles/main.scss';\r\nimport { InformacionBasicaScreen } from './components/cabecera/InformacionBasicaScreen';\r\nimport { updateInfoBasica } from './redux/actions/informacionBasicaActions';\r\n\r\nimport CardContent from '@material-ui/core/CardContent';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport { isBrowser } from \"react-device-detect\";\r\nimport { BrowserRouter as Router, Route, useLocation } from 'react-router-dom';\r\n\r\nimport { \r\n Button\r\n} from '@material-ui/core'\r\nimport { ConfirmControl } from '../src/controls/Confirmacion'\r\n\r\nconst { detect } = require('detect-browser');\r\n\r\n\r\nconst theme = createMuiTheme({\r\n typography: {\r\n fontFamily: [\r\n 'HelveticaNeueLT Std Cn'\r\n ],\r\n },});\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n width: '100%',\r\n \"& .MuiCardHeader-avatar\": {\r\n marginRight: '0px'\r\n }\r\n },\r\n avatar: {\r\n backgroundColor: theme.palette.primary.main,\r\n },\r\n headerTitle: {\r\n fontSize: '16px !important',\r\n fontWeight: 'bold !important',\r\n // fontFamily:'HelveticaBold',\r\n },\r\n}));\r\n\r\n\r\n\r\nexport const App = () => {\r\n return (\r\n \r\n
\r\n \r\n
\r\n
\r\n );\r\n}\r\n\r\n\r\nfunction ComponenteConTipo() {\r\n const location = useLocation();\r\n const searchParams = new URLSearchParams(location.search);\r\n const tipo = searchParams.get('tipo');\r\n\r\n localStorage.setItem('tipo_persona_registro', tipo);\r\n\r\n const classes = useStyles();\r\n\r\n const padre = useSelector( state => state.padre )\r\n const informacion_basica = useSelector( state => state.informacion_basica )\r\n\r\n const browser = detect();\r\n \r\n\r\n // switch (browser && browser.name) {\r\n // case 'chrome':\r\n // case 'firefox':\r\n // console.log('supported');\r\n // break;\r\n // case 'edge':\r\n // console.log('kinda ok');\r\n // break;\r\n // default:\r\n // console.log('not supported');\r\n // }\r\n\r\n // if (browser) {\r\n // console.log(browser.name, browser.version, browser.os);\r\n // }\r\n\r\n\r\n \r\n const [open, setOpen] = React.useState(false);\r\n\r\n const handleClickListItem = () => {\r\n setOpen(true);\r\n };\r\n const handleReload = () => {\r\n // history.push('/')\r\n // history.replace('/')\r\n\r\n localStorage.removeItem('tipo_envio');\r\n localStorage.removeItem('nombre_formato_vee');\r\n localStorage.removeItem('id_formato_selected');\r\n localStorage.removeItem('arr_id_formato_registrados');\r\n \r\n window.location.reload();\r\n }\r\n\r\n const handleClose = (newValue) => {\r\n setOpen(false);\r\n };\r\n\r\n\r\n return (\r\n <>\r\n \r\n
\r\n
\r\n \r\n {/* \r\n // CGR\r\n // \r\n // \r\n // \r\n // \r\n\r\n\r\n // avatar={\r\n // \r\n // \r\n // \r\n // }\r\n title='PROGRAMA AUDITORES JUVENILES \"BUEN INICIO DE AÑO ESCOLAR\"'\r\n classes={{\r\n title: classes.headerTitle\r\n }} \r\n subheader='Base legal:\r\n · RM N° 086-2023-MINEDU, \"Relación de materiales educativos pata la Educación Básica correspondiente a la dotación 2023\".\r\n · RM N° 474-2022-MINEDU, NT \"Disposiciones para la prestación del servicio educativo en las instituciones y programas educativos de la educación básica para el año 2023\".\r\n · RVM N° 010-2022-MINEDU, actualización de la NT denominada \"Criterios Generales de Diseño para Infraestructura Educativa\".\r\n · RM N° 075-2023-VIVIENDA, que modifica la NT A.120, Accesibilidad Universal en Edificaciones del Reglamento Nacional de Edificaciones.\r\n · RM N°525-2009 - Directiva Sanitaria N° 28-MINSA/DIGESA V.01'\r\n /> */}\r\n\r\n\r\n\r\n\r\n\r\n {/* LÓGICA: UNA ÚNICA VEEDURÍA */}\r\n \r\n \r\n PROGRAMA AUDITORES JUVENILES\r\n
\r\n VEEDURÍA ESCOLAR: BUEN INICIO DEL AÑO ESCOLAR 2025\r\n
\r\n\r\n \r\n Base Legal\r\n
\r\n
\r\n\r\n\r\n \r\n 1. D.S N° 011-2012-ED, Reglamento de la Ley N° 28044, Ley General de Educación y modificatorias.
\r\n 2. R.M N°525-2009, que aprueba la Directiva Sanitaria N° 28-MINSA/DIGESA V.01.43. R.M N° 0543-2013-ED de 30 de octubre de 2013, que aprueba la norma técnica \"Normas y procedimientos para la gestión\r\n del proceso de distribución de materiales y recursos educativos para las instituciones y programas educativos púbicos y centro de recursos educativos\".
\r\n 3. R.M N° 0556-2024-MINDEU, de 5 de noviembre de 2024, que aprueba la norma técnica Escolar en las Instituciones y programas educativos públicos y privados de la Educación básica para el año 2025
\r\n 4. R.M N° 494-2024-MINEDU, Actualizar la “Relación de materiales educativos para la Educación Básica correspondiente a la dotación 2025”, aprobada con la R.M N° 044-2024-MINEDU y actualizada por la R.M N° 335-2024-MINEDU
\r\n 5. R.V.M N° 036-2024-MINEDU, que aprueba la Norma Técnica denominada “Disposiciones para la organización y funcionamiento pedagógico de espacios educativos de Educación Básica Regular\".-
\r\n 6. R.V.V N° 234-2021-MINEDU, que aprueba los “Lineamientos para la incorporación de tecnologías digitales en la educación básica”
\r\n\r\n
\r\n
\r\n\r\n \r\n\r\n\r\n\r\n\r\n\r\n\r\n {/* {\r\n (tipo == 'estudiante')\r\n ?\r\n \r\n \r\n PROGRAMA AUDITORES JUVENILES\r\n \r\n \r\n :\r\n \r\n \r\n PROGRAMA AUDITORES JUVENILES\r\n
\r\n VEEDURÍA ESCOLAR \"PROGRAMA DE MANTENIMIENTO EN LAS INSTITUCIONES EDUCATIVAS - 2024\"\r\n
\r\n \r\n - Ley N° 28044 - Ley General de Educación
\r\n - D.S N° 011-2012-ED, Reglamento de la Ley N° 28044, Ley General de Educación
\r\n - DS Nº 004-2014-MINEDU, Programa Nacional de Infraestructura Educativa (PRONIED)
\r\n - RM N° 557-2020-MINEDU, NT \"Disposiciones generales para la ejecución de mantenimiento y acondicionamiento de infraestructura educativa bajo la modalidad de subvenciones\"
\r\n - RM Nº 679-2023-MINEDU,NT \"Disposiciones para la ejecución del Programa de Mantenimiento para el año 2024\"
\r\n - RVM N° 010-2022-MINEDU, NT \"Criterios Generales de Diseño para Infraestructura Educativa\"
\r\n - Ley Nº 31953 -Ley de Presupuesto del Sector Público para el Año Fiscal 2024.\r\n - Resolución Directoral Ejecutiva N° 000002-2024-MINEDU-VMGI-PRONIED-DE, mediante la cual se aprueba el \"Listado de Locales Educativos beneficiarios del Programa de Mantenimiento para el año 2024\".\r\n
\r\n
\r\n } */}\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n {\r\n isBrowser\r\n ?\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n :\r\n
\r\n \r\n\r\n
\r\n }\r\n\r\n\r\n
\r\n {\r\n (tipo == 'estudiante') && \r\n }\r\n {\r\n (tipo == 'adulto') && \r\n }\r\n {\r\n (informacion_basica.cargo === '001' || informacion_basica.cargo === '002' || informacion_basica.cargo === '003' || informacion_basica.cargo === '004')\r\n &&\r\n \r\n }\r\n\r\n\r\n\r\n \r\n\r\n {\r\n (padre.nombre_completo?.length > 0 || padre.isValidated)\r\n ?\r\n \r\n :\r\n null\r\n }\r\n
\r\n
\r\n
\r\n \r\n )\r\n}\r\n\r\n\r\n","export const informacionBasicaState = {\r\n cargo: '',\r\n cargo_nombre: '',\r\n miembro: '',\r\n dni: '',\r\n nombre: '',\r\n apellido_paterno: '',\r\n apellido_materno: '',\r\n nombre_completo: '',\r\n genero: '',\r\n existe: false,\r\n fecha_emision: null,\r\n codigo_verificacion: '',\r\n isLoading: false,\r\n isValidated: false,\r\n message: '',\r\n severity: '',\r\n token: '',\r\n}","export const padreState = {\r\n id: '',\r\n id_veeduria: '',\r\n tipo_doc_padre: '',\r\n dni: '',\r\n nombre: '',\r\n apellido_paterno: '',\r\n apellido_materno: '',\r\n nombre_completo: '',\r\n celular: '',\r\n existe: false,\r\n fecha_emision: null,\r\n codigo_verificacion: '',\r\n isLoading: false,\r\n isValidated: false,\r\n message: '',\r\n severity: '',\r\n token: '',\r\n}","export const captchaState = {\r\n imagen: '',\r\n codigo: '',\r\n isLoading: false,\r\n}","export const ubigeoState = {\r\n listado: [],\r\n isLoading: false,\r\n message: '',\r\n severity: '',\r\n}","export const institucionState = {\r\n listado: [],\r\n isLoading: false,\r\n message: '',\r\n severity: '',\r\n}","export const estudianteState = {\r\n id: '',\r\n id_veeduria: '',\r\n tipo_inst_edu: '',\r\n nivel: '',\r\n region: '',\r\n provincia: '',\r\n distrito: '',\r\n inst_educativa: '',\r\n\r\n tipo_doc_hijo: '',\r\n nacionalidad: '',\r\n dni: '',\r\n nombre: '',\r\n apellido_paterno: '',\r\n apellido_materno: '',\r\n genero: '',\r\n grado: '',\r\n seccion: '',\r\n email: '',\r\n beneficiario: false,\r\n \r\n formato: '',\r\n lista_formato: [],\r\n\r\n region_muni: '',\r\n provincia_muni: '',\r\n distrito_muni: '',\r\n municipalidad: '',\r\n referencia_muni: '',\r\n existe_observacion: false,\r\n\r\n isLoading: false,\r\n isValidated: false,\r\n message: '',\r\n severity: '',\r\n}","export const preguntaState = {\r\n grupos: [],\r\n preguntas: [],\r\n respuestas: [],\r\n dependencias: [],\r\n excluyentes: [],\r\n isLoading: false,\r\n message: '',\r\n severity: '',\r\n isComplete: false,\r\n existe_observacion: false\r\n}","export const veeduriaState = {\r\n padre: {},\r\n estudiante: {},\r\n preguntas: [],\r\n id: 0,\r\n isLoading: false,\r\n message: '',\r\n severity: ''\r\n}","export const formatoState = {\r\n listado: [],\r\n isLoading: false,\r\n message: '',\r\n severity: '',\r\n}","export const municipalidadState = {\r\n listado: [],\r\n isLoading: false,\r\n message: '',\r\n severity: '',\r\n}","export const parametroState = {\r\n listado: [],\r\n isLoading: false,\r\n message: '',\r\n severity: '',\r\n}","export const coordenadaState = {\r\n ubicacion_ie: { \"lat\": 0, \"lng\": 0 } ,\r\n ubicacion_user: { \"lat\": 0, \"lng\": 0 }\r\n}","import { createStore, combineReducers, applyMiddleware, compose } from \"redux\";\r\nimport { informacionBasicaReducer } from \"../reducers/informacionBasicaReducer\";\r\nimport { padreReducer } from \"../reducers/padreReducer\";\r\nimport thunk from \"redux-thunk\";\r\nimport { captchaReducer } from \"../reducers/captchaReducer\";\r\nimport { regionReducer, provinciaReducer, distritoReducer,\r\n regionMuniReducer, provinciaMuniReducer, distritoMuniReducer } from \"../reducers/ubigeoReducer\";\r\nimport { institucionReducer } from \"../reducers/instEducativaReducer\";\r\nimport { estudianteReducer } from \"../reducers/estudianteReducer\";\r\nimport { preguntaReducer } from \"../reducers/preguntaReducer\";\r\nimport { veeduriaReducer } from \"../reducers/veeduriaReducer\";\r\nimport { formatoReducer } from \"../reducers/formatoReducer\";\r\nimport { municipalidadReducer } from \"../reducers/municipalidadReducer\";\r\nimport { tipoDocumentoReducer, tipoInstEduReducer, nacionalidadReducer } from \"../reducers/parametroReducer\";\r\nimport { coordenadasReducer } from \"../reducers/coordenadasReducer\";\r\n\r\nconst composeEnhancers = (typeof window !== 'undefined' && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__) || compose\r\n\r\nconst reducers = combineReducers( {\r\n informacion_basica: informacionBasicaReducer,\r\n padre: padreReducer,\r\n captcha: captchaReducer,\r\n regiones: regionReducer,\r\n provincias: provinciaReducer,\r\n distritos: distritoReducer,\r\n instituciones: institucionReducer,\r\n estudiante: estudianteReducer,\r\n pregunta: preguntaReducer,\r\n veeduria: veeduriaReducer,\r\n formatos: formatoReducer,\r\n tipos_documento: tipoDocumentoReducer,\r\n tipos_inst_edu: tipoInstEduReducer,\r\n nacionalidades: nacionalidadReducer,\r\n regionesMuni: regionMuniReducer,\r\n provinciasMuni: provinciaMuniReducer,\r\n distritosMuni: distritoMuniReducer,\r\n municipalidades: municipalidadReducer,\r\n coordenadas: coordenadasReducer,\r\n} );\r\n\r\nexport const store = createStore(\r\n reducers,\r\n composeEnhancers( applyMiddleware( thunk ) )\r\n)","import { informacionBasicaTypes } from \"../../types/informacionBasicaTypes\";\r\nimport { informacionBasicaState } from \"../../states/informacionBasicaState\";\r\n\r\nexport const informacionBasicaReducer = ( state = informacionBasicaState, action ) => {\r\n switch ( action.type ) {\r\n\t\tcase informacionBasicaTypes.INFO_BASICA_SAVE_START:\r\n return { ...state, isLoading: true };\r\n\r\n\t\tcase informacionBasicaTypes.INFO_BASICA_SAVE_COMPLETE:\r\n return { ...state, isLoading: false, ...action.payload };\r\n\r\n case informacionBasicaTypes.INFO_BASICA_SAVE_ERROR:\r\n return { ...state, isLoading: false, ...action.payload };\r\n\r\n case informacionBasicaTypes.INFO_BASICA_VALIDATED:\r\n return { ...state, isLoading: false, ...action.payload };\r\n\r\n case informacionBasicaTypes.INFO_BASICA_UPDATED:\r\n return { ...state, isLoading: false, ...action.payload };\r\n \r\n default:\r\n return { ...state };\r\n }\r\n}\r\n","import { padreTypes } from \"../../types/padreTypes\";\r\nimport { padreState } from \"../../states/padreState\";\r\n\r\nexport const padreReducer = ( state = padreState, action ) => {\r\n switch ( action.type ) {\r\n\t\tcase padreTypes.PADRE_SAVE_START:\r\n return { ...state, isLoading: true };\r\n\r\n\t\tcase padreTypes.PADRE_SAVE_COMPLETE:\r\n return { ...state, isLoading: false, ...action.payload };\r\n\r\n case padreTypes.PADRE_SAVE_ERROR:\r\n return { ...state, isLoading: false, ...action.payload };\r\n\r\n case padreTypes.PADRE_VALIDATED:\r\n return { ...state, isLoading: false, ...action.payload };\r\n\r\n case padreTypes.PADRE_UPDATED:\r\n return { ...state, isLoading: false, ...action.payload };\r\n \r\n default:\r\n return { ...state };\r\n }\r\n}\r\n","import { captchaState } from \"../../states/captchaState\";\r\nimport { captchaTypes } from \"../../types/captchaTypes\";\r\n\r\nexport const captchaReducer = ( state = captchaState, action ) => {\r\n switch ( action.type ) {\r\n\t\tcase captchaTypes.CAPTCHA_GET_START:\r\n return { ...state, isLoading: true };\r\n\r\n\t\tcase captchaTypes.CAPTCHA_GET_COMPLETE:\r\n return { ...state, isLoading: false, ...action.payload };\r\n\r\n case captchaTypes.CAPTCHA_GET_ERROR:\r\n return { ...state, isLoading: false };\r\n \r\n default:\r\n return { ...state };\r\n }\r\n}\r\n","import { ubigeoTypes } from \"../../types/ubigeoTypes\";\r\nimport { ubigeoState } from \"../../states/ubigeoState\";\r\n\r\nexport const regionReducer = ( state = ubigeoState, action ) => {\r\n switch ( action.type ) {\r\n\t\tcase ubigeoTypes.REGION_RESET:\r\n return { ...state, isLoading: false, listado: [] };\r\n\r\n\t\tcase ubigeoTypes.REGION_GET_START:\r\n return { ...state, isLoading: true, listado: action.payload };\r\n\r\n\t\tcase ubigeoTypes.REGION_GET_COMPLETE:\r\n return { ...state, isLoading: false, message: 'Se buscó con éxito', severity: 'success', listado: action.payload };\r\n \r\n case ubigeoTypes.REGION_GET_ERROR:\r\n return { ...state, isLoading: false, listado: action.payload };\r\n\r\n default:\r\n return { ...state };\r\n }\r\n}\r\n\r\n\r\nexport const provinciaReducer = ( state = ubigeoState, action ) => {\r\n switch ( action.type ) {\r\n\t\tcase ubigeoTypes.PROVINCIA_RESET:\r\n return { ...state, isLoading: false, listado: [] };\r\n\r\n\t\tcase ubigeoTypes.PROVINCIA_GET_START:\r\n return { ...state, isLoading: true, listado: action.payload };\r\n\r\n\t\tcase ubigeoTypes.PROVINCIA_GET_COMPLETE:\r\n return { ...state, isLoading: false, message: 'Se buscó con éxito', severity: 'success', listado: action.payload };\r\n \r\n case ubigeoTypes.PROVINCIA_GET_ERROR:\r\n return { ...state, isLoading: false, listado: action.payload };\r\n\r\n default:\r\n return { ...state };\r\n }\r\n}\r\n\r\n\r\nexport const distritoReducer = ( state = ubigeoState, action ) => {\r\n switch ( action.type ) {\r\n\t\tcase ubigeoTypes.DISTRITO_RESET:\r\n return { ...state, isLoading: false, listado: [] };\r\n\r\n\t\tcase ubigeoTypes.DISTRITO_GET_START:\r\n return { ...state, isLoading: true, listado: action.payload };\r\n\r\n\t\tcase ubigeoTypes.DISTRITO_GET_COMPLETE:\r\n return { ...state, isLoading: false, message: 'Se buscó con éxito', severity: 'success', listado: action.payload };\r\n \r\n case ubigeoTypes.DISTRITO_GET_ERROR:\r\n return { ...state, isLoading: false, listado: action.payload };\r\n\r\n default:\r\n return { ...state };\r\n }\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\nexport const regionMuniReducer = ( state = ubigeoState, action ) => {\r\n switch ( action.type ) {\r\n\t\tcase ubigeoTypes.REGION_MUNI_RESET:\r\n return { ...state, isLoading: false, listado: [] };\r\n\r\n\t\tcase ubigeoTypes.REGION_MUNI_GET_START:\r\n return { ...state, isLoading: true, listado: action.payload };\r\n\r\n\t\tcase ubigeoTypes.REGION_MUNI_GET_COMPLETE:\r\n return { ...state, isLoading: false, message: 'Se buscó con éxito', severity: 'success', listado: action.payload };\r\n \r\n case ubigeoTypes.REGION_MUNI_GET_ERROR:\r\n return { ...state, isLoading: false, listado: action.payload };\r\n\r\n default:\r\n return { ...state };\r\n }\r\n}\r\n\r\n\r\nexport const provinciaMuniReducer = ( state = ubigeoState, action ) => {\r\n switch ( action.type ) {\r\n\t\tcase ubigeoTypes.PROVINCIA_MUNI_RESET:\r\n return { ...state, isLoading: false, listado: [] };\r\n\r\n\t\tcase ubigeoTypes.PROVINCIA_MUNI_GET_START:\r\n return { ...state, isLoading: true, listado: action.payload };\r\n\r\n\t\tcase ubigeoTypes.PROVINCIA_MUNI_GET_COMPLETE:\r\n return { ...state, isLoading: false, message: 'Se buscó con éxito', severity: 'success', listado: action.payload };\r\n \r\n case ubigeoTypes.PROVINCIA_MUNI_GET_ERROR:\r\n return { ...state, isLoading: false, listado: action.payload };\r\n\r\n default:\r\n return { ...state };\r\n }\r\n}\r\n\r\n\r\nexport const distritoMuniReducer = ( state = ubigeoState, action ) => {\r\n switch ( action.type ) {\r\n\t\tcase ubigeoTypes.DISTRITO_MUNI_RESET:\r\n return { ...state, isLoading: false, listado: [] };\r\n\r\n\t\tcase ubigeoTypes.DISTRITO_MUNI_GET_START:\r\n return { ...state, isLoading: true, listado: action.payload };\r\n\r\n\t\tcase ubigeoTypes.DISTRITO_MUNI_GET_COMPLETE:\r\n return { ...state, isLoading: false, message: 'Se buscó con éxito', severity: 'success', listado: action.payload };\r\n \r\n case ubigeoTypes.DISTRITO_MUNI_GET_ERROR:\r\n return { ...state, isLoading: false, listado: action.payload };\r\n\r\n default:\r\n return { ...state };\r\n }\r\n}\r\n\r\n\r\n","import { institucionTypes } from \"../../types/instEducativaTypes\";\r\nimport { institucionState } from \"../../states/instEducativaState\";\r\n\r\nexport const institucionReducer = ( state = institucionState, action ) => {\r\n switch ( action.type ) {\r\n\t\tcase institucionTypes.INSTITUCION_RESET:\r\n return { ...state, isLoading: false, listado: [] };\r\n\r\n\t\tcase institucionTypes.INSTITUCION_GET_START:\r\n return { ...state, isLoading: true, listado: action.payload };\r\n\r\n\t\tcase institucionTypes.INSTITUCION_GET_COMPLETE:\r\n return { ...state, isLoading: false, message: 'Se buscó con éxito', severity: 'success', listado: action.payload };\r\n \r\n case institucionTypes.INSTITUCION_GET_ERROR:\r\n return { ...state, isLoading: false, listado: action.payload };\r\n\r\n default:\r\n return { ...state };\r\n }\r\n}\r\n","import { estudianteState } from \"../../states/estudianteState\";\r\nimport { estudianteTypes } from \"../../types/estudianteTypes\";\r\n\r\nexport const estudianteReducer = ( state = estudianteState, action ) => {\r\n switch ( action.type ) {\r\n\t\tcase estudianteTypes.ESTUDIANTE_SAVE_START:\r\n return { ...state, isLoading: true, message: '' };\r\n\r\n\t\tcase estudianteTypes.ESTUDIANTE_SAVE_COMPLETE:\r\n return { ...state, isLoading: false, ...action.payload };\r\n\r\n case estudianteTypes.ESTUDIANTE_SAVE_ERROR:\r\n return { ...state, isLoading: false, ...action.payload };\r\n\r\n case estudianteTypes.ESTUDIANTE_VALIDATED:\r\n return { ...state, isLoading: false, ...action.payload };\r\n \r\n\t\tcase estudianteTypes.ESTUDIANTE_SET_OBSERVACION:\r\n return { ...state, ...action.payload };\r\n\r\n case estudianteTypes.ESTUDIANTE_GET_FORMATOS:\r\n return { ...state, lista_formato: action.payload };\r\n\r\n case estudianteTypes.ESTUDIANTE_UPDATED:\r\n return { ...state, isLoading: false, ...action.payload };\r\n \r\n default:\r\n return { ...state };\r\n }\r\n}\r\n","import { preguntaTypes } from \"../../types/preguntaTypes\";\r\nimport { preguntaState } from \"../../states/preguntaState\";\r\n\r\nexport const preguntaReducer = ( state = preguntaState, action ) => {\r\n switch ( action.type ) {\r\n\r\n\t\tcase preguntaTypes.PREGUNTA_GET_START:\r\n return { ...state, isLoading: true };\r\n\r\n\t\tcase preguntaTypes.PREGUNTA_GET_COMPLETE:\r\n return { ...state, isLoading: false, message: 'Se buscó con éxito', severity: 'success', ...action.payload };\r\n \r\n\t\tcase preguntaTypes.PREGUNTA_SET_COMPLETE:\r\n return { ...state, ...action.payload };\r\n\r\n case preguntaTypes.PREGUNTA_SET_HABILITADO:\r\n return {\r\n ...state,\r\n preguntas: state.preguntas.map(\r\n preg => preg.ID === action.payload.ID\r\n ? { ...preg , HABILITADO: action.payload.HABILITADO }\r\n : preg\r\n )\r\n }\r\n\r\n case preguntaTypes.PREGUNTA_SET_UPLOAD:\r\n return {\r\n ...state,\r\n preguntas: state.preguntas.map(\r\n preg => preg.ID === action.payload.ID\r\n ? { ...preg , \r\n UPLOAD: action.payload.UPLOAD, \r\n CANTIDAD_ARCHIVO: action.payload.CANTIDAD_ARCHIVO, \r\n FORMATO_ARCHIVO: action.payload.FORMATO_ARCHIVO, \r\n OBLIGATORIO_ARCHIVO: action.payload.OBLIGATORIO_ARCHIVO,\r\n DROPZONE_TEXT: action.payload.DROPZONE_TEXT }\r\n : preg\r\n )\r\n }\r\n \r\n case preguntaTypes.PREGUNTA_GET_ERROR:\r\n return { ...state, isLoading: false, \r\n grupos: [],\r\n preguntas: [],\r\n respuestas: [],\r\n dependencias: [],\r\n ...action.payload };\r\n\r\n default:\r\n return { ...state };\r\n }\r\n}\r\n","import { veeduriaTypes } from \"../../types/veeduriaTypes\";\r\nimport { veeduriaState } from \"../../states/veeduriaState\";\r\n\r\nexport const veeduriaReducer = ( state = veeduriaState, action ) => {\r\n switch ( action.type ) {\r\n\r\n\t\tcase veeduriaTypes.VEEDURIA_SAVE_START:\r\n return { ...state, isLoading: true };\r\n\r\n\t\tcase veeduriaTypes.VEEDURIA_SAVE_COMPLETE:\r\n debugger;\r\n return { ...state, isLoading: false, message: 'ok', severity: 'success', estudiante: action.payload };\r\n\r\n case veeduriaTypes.VEEDURIA_SAVE_ERROR:\r\n return { ...state, isLoading: false, \r\n padre: {},\r\n estudiante: {},\r\n preguntas: [],\r\n ...action.payload };\r\n\r\n default:\r\n return { ...state };\r\n }\r\n}\r\n","import { formatoTypes } from \"../../types/formatoTypes\";\r\nimport { formatoState } from \"../../states/formatoState\";\r\n\r\nexport const formatoReducer = ( state = formatoState, action ) => {\r\n switch ( action.type ) {\r\n\t\tcase formatoTypes.FORMATO_RESET:\r\n return { ...state, isLoading: false, listado: [] };\r\n\r\n\t\tcase formatoTypes.FORMATO_GET_START:\r\n return { ...state, isLoading: true, listado: action.payload };\r\n\r\n\t\tcase formatoTypes.FORMATO_GET_COMPLETE:\r\n return { ...state, isLoading: false, message: 'Se buscó con éxito', severity: 'success', listado: action.payload };\r\n \r\n case formatoTypes.FORMATO_GET_ERROR:\r\n return { ...state, isLoading: false, listado: action.payload };\r\n\r\n default:\r\n return { ...state };\r\n }\r\n}\r\n","import { parametroTypes } from \"../../types/parametroTypes\";\r\nimport { parametroState } from \"../../states/parametroState\";\r\n\r\nexport const tipoDocumentoReducer = ( state = parametroState, action ) => {\r\n switch ( action.type ) {\r\n\t\tcase parametroTypes.TIPO_DOCUMENTO_RESET:\r\n return { ...state, isLoading: false, listado: [] };\r\n\r\n\t\tcase parametroTypes.TIPO_DOCUMENTO_GET_START:\r\n return { ...state, isLoading: true, listado: action.payload };\r\n\r\n\t\tcase parametroTypes.TIPO_DOCUMENTO_GET_COMPLETE:\r\n return { ...state, isLoading: false, message: 'Se buscó con éxito', severity: 'success', listado: action.payload };\r\n \r\n case parametroTypes.TIPO_DOCUMENTO_GET_ERROR:\r\n return { ...state, isLoading: false, listado: action.payload };\r\n\r\n default:\r\n return { ...state };\r\n }\r\n}\r\n\r\n\r\nexport const tipoInstEduReducer = ( state = parametroState, action ) => {\r\n switch ( action.type ) {\r\n\t\tcase parametroTypes.TIPO_INST_EDU_RESET:\r\n return { ...state, isLoading: false, listado: [] };\r\n\r\n\t\tcase parametroTypes.TIPO_INST_EDU_GET_START:\r\n return { ...state, isLoading: true, listado: action.payload };\r\n\r\n\t\tcase parametroTypes.TIPO_INST_EDU_GET_COMPLETE:\r\n return { ...state, isLoading: false, message: 'Se buscó con éxito', severity: 'success', listado: action.payload };\r\n \r\n case parametroTypes.TIPO_INST_EDU_GET_ERROR:\r\n return { ...state, isLoading: false, listado: action.payload };\r\n\r\n default:\r\n return { ...state };\r\n }\r\n}\r\n\r\n\r\nexport const nacionalidadReducer = ( state = parametroState, action ) => {\r\n switch ( action.type ) {\r\n\t\tcase parametroTypes.NACIONALIDAD_RESET:\r\n return { ...state, isLoading: false, listado: [] };\r\n\r\n\t\tcase parametroTypes.NACIONALIDAD_GET_START:\r\n return { ...state, isLoading: true, listado: action.payload };\r\n\r\n\t\tcase parametroTypes.NACIONALIDAD_GET_COMPLETE:\r\n return { ...state, isLoading: false, message: 'Se buscó con éxito', severity: 'success', listado: action.payload };\r\n \r\n case parametroTypes.NACIONALIDAD_GET_ERROR:\r\n return { ...state, isLoading: false, listado: action.payload };\r\n\r\n default:\r\n return { ...state };\r\n }\r\n}\r\n","import { municipalidadTypes } from \"../../types/municipalidadTypes\";\r\nimport { municipalidadState } from \"../../states/municipalidadState\";\r\n\r\nexport const municipalidadReducer = ( state = municipalidadState, action ) => {\r\n switch ( action.type ) {\r\n\t\tcase municipalidadTypes.MUNICIPALIDAD_RESET:\r\n return { ...state, isLoading: false, listado: [] };\r\n\r\n\t\tcase municipalidadTypes.MUNICIPALIDAD_GET_START:\r\n return { ...state, isLoading: true, listado: action.payload };\r\n\r\n\t\tcase municipalidadTypes.MUNICIPALIDAD_GET_COMPLETE:\r\n return { ...state, isLoading: false, message: 'Se buscó con éxito', severity: 'success', listado: action.payload };\r\n \r\n case municipalidadTypes.MUNICIPALIDAD_GET_ERROR:\r\n return { ...state, isLoading: false, listado: action.payload };\r\n\r\n default:\r\n return { ...state };\r\n }\r\n}\r\n","import { coordenadaState } from \"../../states/coordenadaState\";\r\nimport { coordenadaTypes } from \"../../types/coordenadaTypes\";\r\n\r\nexport const coordenadasReducer = ( state = coordenadaState, action ) => {\r\n switch ( action.type ) {\r\n\t\t case coordenadaTypes.SET_COORDENADA:\r\n return { ...state, ...action.payload };\r\n default:\r\n return { ...state };\r\n }\r\n}\r\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { App } from './App';\nimport './styles/main.scss';\nimport { Provider } from 'react-redux';\nimport { store } from './redux/store/store';\n// import '../src/fonts/Helvetica LT Std Bold Condensed.otf';\n\nReactDOM.render(\n \n \n ,\n document.getElementById('root')\n);\n"],"sourceRoot":""}