{"version":3,"sources":["pages/registro/extensiones/linkeo.js","pages/registro/extensiones/InsertaCursos.js","pages/registro/extensiones/InsertaClientes.js"],"names":["Auth","AuthService","ip","globales","border_dialog","movil","test","navigator","userAgent","movil_pequeño","ListboxComponent","virtual","ListboxComponent_planes","getRowId","row","ID_SECCION_CLIENTE","getRowId_etiquetas","ID_DETALLE_PLAN","currentdescripcion","columns","name","title","columns_movil","columns_etiquetas","defaultHiddenColumnNames","defaultHiddenColumnNames_etiquetas","tableColumnExtensions","columnName","wordWrapEnabled","align","width","tableColumnExtensions_etiquetas","withStyles","theme","Dialog","borderRadius","margin","padding","maxHeight","height","backdrop","zIndex","color","flexDirection","select","spacing","minWidth","textField","React","Component","constructor","props","super","tablaRef","createRef","cerrarmodal","event","this","setState","open_etiquetar","filtersClientes","value","Request","get","set","getToken","retry","timeout","response","deadline","end","err","res","toString","substr","window","location","reload","optionAutocompleteAdd","openAutoComplete","isLoadingClientes","isSaving","funciones","showToast","rows","JSON","parse","text","length","onBlurAutoCompleteAdd","state","openAutoCompleteAdd","onChangeInput","e","undefined","target","trim","valueAutoCompleteAdd","CUENTA_ALUMNO","NOMBRE_COMPLETO","onChangeAutocompleteAdd","consulta_planes","consulta_etiquetas","onChangeAutocompleteAdd_planes","valueAutoCompleteAdd_planes","openAutoCompleteAdd_planes","consulta_clases","cuenta_alumno","getProfile","user","openBackDrop","etiquetas","tmp","ex","optionAutocompleteAdd_planes","openAutoComplete_planes","isLoading_planes","isSaving_planes","plan","ID_PLAN","post","send","PLAN","USUARIO","changeSelection_etiqueta","selection_etiqueta","guardar","selection","RESP","rows_etiquetas","l","i","isVisibleRowSelected","actualizarbarra","actualizarcircular","isLoggin","heightTableMain","grouping","expandedGroups","filteringColumnExtensions","filters","expandedRowIds","enabledFilterRows","botones_etiquetar","icono","nombre","escritura","onclick","display","VirtualTable_cellComponent","column","ClickBoton","DESCRIPCION_CURSO","ETIQUETADO","ID_DETALLE_PLAN_OPTATIVA","forEach","element","index","find","grupo","push","_jsx","Table","Cell","style","children","Button","textTransform","colores","azul","onClick","variant","startIcon","LabelImportant","componentDidMount","_this","loggedIn","then","b","getHeightTableMain","heightTable","render","classes","_jsxs","Fragment","Backdrop","className","open","CircularProgress","marginTop","disableEnforceFocus","disableAutoFocus","fullWidth","paper","fullScreen","maxWidth","DialogTitle","Typography","component","DialogContent","TextField","id","label","disabled","defaultValue","CustomTable","Columns","Rows","TableColumnExtensions","DefaultHiddenColumnNames","standarPlugin","TableRowsIndexer","ChangeSelection","Selection","showSelectionColumn","BarraBotones","botones","justifyContent","marginBottom","Autocomplete","options","popupIcon","getOptionLabel","option","renderInput","params","onBlur","InputProps","endAdornment","size","readOnly","renderOption","noOptionsText","loadingText","onChange","loading","disableListWrap","autoHighlight","disableClearable","clearText","openText","closeText","popper","onInputChange","DESCRIPCION_PLAN","marginLeft","onBlurAutoCompleteAdd_planes","ref","background","tabla","marginleft_movil","marginleft","marginRight","marginright_movil","marginright","columnWidths","RowComponent","trow","logout","tokenInfo","widthTable","screen","columnExtensions","settingFilter","predicate","filter","getTime","IntegratedFiltering","defaultPredicate","dias","abrev","filterOptions","createFilterOptions","stringify","CODIGO_CURSO","DESCRIPCION_CURSO_HIJO","RowId","FECHA_MATRICULA","RenderOption","alignItems","ListItemAvatar","Avatar","PersonIcon","RenderOptionCurso","lineHeight","fontSize","RenderOptionSeccion","textAlign","ID_SECCION","SECCION","RenderOptionCate","CUENTA_CATEDRATICO","ControlCheck","dia","checked","handleChangeCheck","setHorario","horario","horasInicioRef","minutosInicioRef","merInicioRef","horasFinRef","minutosFinRef","merFinRef","anchorEl","setAnchorEl","useState","arrowRef","setArrowRef","styleButton","handleMenuClose","control","Checkbox","String","currentTarget","Boolean","hideBackdrop","Popper","placement","modifiers","arrow","enabled","preventOverflow","boundariesElement","Fade","in","Paper","elevation","ClickAwayListener","onClickAway","mouseEvent","touchEvent","SelectTime","horasRef","minutosRef","merRef","defaultHoras","getTimeParcial","inicio","defaultMinutos","defaultMeridiano","formStyle","fin","handleOk","getTimeSelect","current","Date","backgroundColor","FormControlLabel","paperCal","paperSeccion","paperConfirm","closeButton","position","right","top","palette","grey","container","paddingTop","paddingBottom","paddingLeft","paddingRight","formControlSelect","formControlSelectFrm","left","borderWidth","borderColor","bottom","content","borderStyle","input1Ref","input2Ref","input3Ref","input4Ref","input5Ref","input6Ref","input7Ref","onBlurAutoComplete","valueAutoComplete","onChangeAutocomplete","itemsSelectPlan","selectedPlan","loadingPlanes","obtener_planes","optionAutocomplete","loadingClientes","onRefresh","cuenta","plataforma","planes","niveles","datosSelect","map","item","x","ID_NIVEL","DESCRIPCION_NIVEL","itemx","j","ListSubheader","disableSticky","MenuItem","handleClickMenu","tieneCal_","tieneCalificaciones_","handleCloseConfirm","openModalConfirm","tipo_gestion","valueNota_","handleCloseSinCalificaciones","openModalSinCalificaciones","readOnlyCali","handleChangeSelect","async","isNaN","parseInt","Promise","resolve","loadingMain","id_plan","obtener_cursos_pendientes","obtener_historial","checkedCal","optionsCursos","obtener_periodos","optionsPeriodos","obtener_secciones","id_cm","id_curso_padre","alias","loadingSecciones","optionsSecciones","onClickAdd","ponderaciones","valueCurso","valuePeriodo","valueSeccion","selectedEstado","maxN1","maxN2","maxN3","maxN4","maxLab","maxExt","titleModal","openModal","editEvent","isEmpty","idRowSelected","rowSelected","id_seccion_","TIENE_CALIFICACIONES","valueCurso_","valuePeriodo_","valueSeccion_","deleteEvent","nombreCurso","seccion","textModal","handleClose","handleCloseMenu","onChangeAutocompleteCursos","ID_CURSO_PADRE","ALIAS","ID_CONTROL_MATRICULA","onChangeAutocompletePeriodo","onChangeAutocompleteSeccion","valueAula","valueCate","valueJornada","checked_1","checked_2","checked_3","checked_4","checked_5","checked_6","checked_7","checkedSeccion","openModalSeccion","validaciones","r","handleOK","id_seccion","nota","id_curso_hijo","ID_CURSO_HIJO","nota1","valN1","nota2","valN2","nota3","valN3","nota4","valN4","lab","valLab","extra","valExt","estatus_academico","ad_usuario","handleOpenCal","handleCloseCal","openModalCal","handleSetCal","total","val","rowsPond","PERMITE_EXTRAORDINARIO","valMenor","valTmp","ID_PONDERACION","onEnteringCal","loadingCali","obtener_calificaciones","loadingPond","obtener_ponderaciones","tieneExt","PONDERACION","colorN1","colorN2","colorN3","colorN4","colorExt","VALOR","VMAX","pe_ext","handleRowClick","idRow","PERIODO","ANIO","NOTA","selectedEstatusAcademicoAbrev_","ESTATUS_ACADEMICO_ABREV","obtener_estados","lista","ABREVIATURA","DESCRIPCION","ESTATUS_ACADEMICO","selectedEstado_","handleClickCali","isLoadingMain","itemsSelectEstado","handleCloseSeccion","obtener_aulas","optionsAulas","obtener_catedraticos","optionscate","obtener_jornadas","optionsJornadas","onChangeAutocompleteAula","onChangeAutocompleteCate","onChangeAutocompleteJornada","sort","a","validaciones_seccion","crearSeccion","cuenta_catedratico","id_aula","ID_AULA","id_jornada","ID_JORNADA","id_control_matricula","str_dias","openBackDropInvisible","openMenu","optionCurso","selectedEstatusAcademico_","itemsSelectEstado_","botones_agregar","toolt","botones_eliminar","botones_cal","botones_estado","handleSetEstado","handleCloseEstCurso","botones_seccion","optionsSeccionesNew","CANT_ACTUAL","CATEDRATICO","CUPO_MAXIMO","document","getElementById","focus","square","transitionDelay","unmountOnExit","Tooltip","IconButton","RefreshIcon","PaperComponent","Select","Label","Datos","Selected","Style","Outlined","Divider","orientation","flexItem","MoreVertIcon","Menu","keepMounted","onClose","ListItemIcon","AddIcon","EditIcon","RemoveIcon","rowClick","tableSelectionCellComponent","StubCell","disableRipple","CropPortraitIcon","FilteringColumnExtensions","CloseIcon","gutterBottom","DialogActions","includes","required","shrink","type","inputProps","min","max","InputAdornment","TransitionProps","onEntering","InfoIcon","CODIGO","Switch","checkedControlHora","toggleChecked","Grid","xs","Chip","avatar","invisible","transitionDuration","TableSelectionCellComponent","columnsPlanes","DatosPersonales","direction","maxLength","inputMode","onKeyDown","onlyNumbers","apellido1","apellido2","nombres","optionsPais","valuePaisNac","NOMBRE_PAIS","InputLabelProps","onChangePaisNac","getOptionDisabled","ESTADO_PAIS","optionsDepNac","valueDepNac","NOMBRE_DEPARTAMENTO","onChangeDepNac","ESTADO_DEPARTAMENTO","optionsMunNac","valueMunNac","NOMBRE_MUNICIPIO","onChangeMunNac","ESTADO_MUNICIPIO","KeyboardDatePicker","inputVariant","fechaNac","handleDateChange","format","invalidDateMessage","maxDateMessage","minDateMessage","KeyboardButtonProps","placeholder","date1Ref","datosSelectSexo","selectedSexo","Ref","select1Ref","datosSelectTipo","selectedTipo","identidad","datosSelectEC","selectedEC","valuePais","onChangePais","optionsDep","valueDep","onChangeDep","optionsMun","valueMun","onChangeMun","optionsCol","valueCol","DESCRIPCION_COLONIA","onChangeCol","ESTADO_COLONIA","direccion","tel1","input8Ref","tel2","email1","input9Ref","email2","AsignacionPlanes","rowsPlanes","disableBoxShadow","disableHeader","disabledAlternateRowColor","changeSelection","Registrar","nombre_completo","overflowY","SchoolIcon","registar","QontoStepIcon","makeStyles","root","active","circle","completed","icon","clsx","CheckIcon","SaveIcon","_ref","color_disabled","flexDirecction","ESTADO_ALUMNO","select2Ref","handleOpen","showWarning","activeStep","showRecientes","recientes","concat","obtener_ubicaciones","ubicaciones","ID_PAIS","obtener_estados_civiles","ID_ESTADO","obtener_tipos_identificadores","ID_TIPO_IDENTIFICACION","TIPO_IDENTIFICACION","obtener_estados_plan","datosSelectEP","ID_ESTATUS_ALUMNO","ID_DEPARTAMENTO","ID_MUNICIPIO","ID_COLONIA","establecer_generos","handleSave","getDateSelect","idMunicipioNac","genero","tipoIdentidad","estadoCivil","idColonia","idMunicipio","strIdPlanes","strIdEstadoPlanes","ID_ESTADO_PLAN","date","handleBack","handleNext","toUpperCase","getIdRowChecking","tmp_id_plan","selectedEP","openModalEstadoPlan","handleCloseEP","estado_alumno","checkedConfirm","WarningIcon","ScheduleIcon","PersonAddIcon","MuiPickersUtilsProvider","utils","DateFnsUtils","locale","esLocale","Stepper","Step","StepLabel","StepIconComponent","ShowItemNone","LabelItemNone","ValueItemNone"],"mappings":"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","file":"static/js/main~6b4d52eb.c08008eb.chunk.js","sourcesContent":["import React from 'react';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport {colores, globales,funciones} from '../../../global';\r\nimport BarraBotones from '../../../components/Barra_menu';\r\nimport AuthService from '../../../AuthService';\r\nimport Request from 'superagent';\r\nimport CustomTable from '../../../components/CustomTable';\r\nimport {Table} from '@devexpress/dx-react-grid-material-ui';\r\nimport TableRowsIndexer from '../../../components/tableRowsIndexer'\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport DialogContent from '@material-ui/core/DialogContent';\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\nimport CircularProgress from '@material-ui/core/CircularProgress';\r\nimport Backdrop from '@material-ui/core/Backdrop';\r\nimport {virtual} from '../../../components/VirtualListBox';\r\nimport Autocomplete from '@material-ui/lab/Autocomplete';\r\nimport TextField from '@material-ui/core/TextField';\r\nimport Button from '@material-ui/core/Button';\r\nimport LabelImportant from '@material-ui/icons/LabelImportant';\r\nimport {Typography} from '@material-ui/core';\r\n\r\nlet Auth = new AuthService();\r\nvar ip=globales.ip\r\nvar border_dialog=globales.border_dialog\r\nvar movil=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);\r\nvar movil_pequeño=/Android|webOS|iPhone|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);\r\n\r\nlet isVisibleRowSelected = false;\r\n\r\nconst ListboxComponent = virtual.ListboxComponent;\r\nconst ListboxComponent_planes = virtual.ListboxComponent;\r\n\r\n\r\n\r\nconst getRowId = row => row.ID_SECCION_CLIENTE;\r\nconst getRowId_etiquetas = row => row.ID_DETALLE_PLAN;\r\n\r\nlet currentdescripcion=null;\r\n\r\n/* CLASES DE ESTILO */\r\n\r\nvar styles = theme =>({\r\n Dialog:{\r\n borderRadius: border_dialog,\r\n margin:0,\r\n padding:0,\r\n maxHeight: '95%',\r\n height: '95%'\r\n },\r\n backdrop: {\r\n zIndex: 500000,\r\n color: '#fff', \r\n flexDirection: 'column'\r\n },\r\n select: { //CONFIGURA EL SELECT \r\n margin: theme.spacing(movil_pequeño?2:1, 1,0,0),\r\n padding: 0,\r\n minWidth: movil_pequeño?'100%':'50%',\r\n },\r\n textField: {\r\n margin: theme.spacing(movil_pequeño?2:1, 1,0,0),\r\n padding: 0,\r\n minWidth: movil_pequeño?'100%':'20%',\r\n width: '20%' \r\n },\r\n })\r\n\r\n const columns= [\r\n {name:'ID_SECCION_CLIENTE' ,title: 'ID_SECCION_CLIENTE'},\r\n {name:'CODIGO_CURSO' ,title: 'Código'},\r\n {name:'DESCRIPCION_CURSO' ,title: 'Descripción'},\r\n {name:'ESTADO' ,title: 'Estado'},\r\n {name:'NOTA' ,title: 'Nota'},\r\n {name:'AÑO' ,title: 'Año'},\r\n {name:'ETIQUETADO' ,title: 'Etiqueta'},\r\n {name:'BOTON' ,title: ' '},\r\n ];\r\n\r\n const columns_movil= [\r\n {name:'BOTON' ,title: ' '},\r\n {name:'ID_SECCION_CLIENTE' ,title: 'ID_SECCION_CLIENTE'},\r\n {name:'DESCRIPCION_CURSO' ,title: 'Descripción'},\r\n {name:'ETIQUETADO' ,title: 'Etiqueta'},\r\n {name:'ESTADO' ,title: 'Estado'},\r\n {name:'AÑO' ,title: 'Año'},\r\n ];\r\n\r\n const columns_etiquetas= [\r\n {name:'ID_DETALLE_PLAN' ,title: 'ID_DETALLE_PLAN'},\r\n {name:'ETIQUETA' ,title: 'Etiqueta'},\r\n {name:'ID_PLAN' ,title: 'ID_PLAN'},\r\n ];\r\n\r\n\r\n const defaultHiddenColumnNames= ['ID_SECCION_CLIENTE'];\r\n const defaultHiddenColumnNames_etiquetas= ['ID_DETALLE_PLAN','ID_PLAN'];\r\n\r\n const tableColumnExtensions= [\r\n { columnName: 'CODIGO_CURSO', wordWrapEnabled: false, align: 'left',width: 100},\r\n { columnName: 'DESCRIPCION_CURSO', wordWrapEnabled: false, align: 'left',width: 300},\r\n { columnName: 'ESTADO', wordWrapEnabled: false, align: 'center',width: 150},\r\n { columnName: 'NOTA', wordWrapEnabled: false, align: 'center',width: 100},\r\n { columnName: 'AÑO', wordWrapEnabled: false, align: 'center',width: 100},\r\n { columnName: 'ETIQUETADO', wordWrapEnabled: false, align: 'left',width: 400},\r\n { columnName: 'BOTON', wordWrapEnabled: false, align: 'center',width: 110},\r\n ];\r\n\r\n const tableColumnExtensions_etiquetas= [\r\n { columnName: 'ETIQUETA', wordWrapEnabled: false, align: 'left'},\r\n ];\r\n\r\n/* EXPORT */\r\nexport default withStyles(styles)(\r\n class Linkeo extends React.Component {\r\n tablaRef = React.createRef();\r\n\r\n constructor(props) {\r\n super(props);\r\n this.l= props.l\r\n this.e= props.e\r\n this.i= props.i\r\n this.isVisibleRowSelected=isVisibleRowSelected\r\n this.actualizarbarra=props.actualizarbarra\r\n this.actualizarcircular=props.actualizarcircular\r\n\r\n this.state = {\r\n openBackDrop: false, \r\n isLoggin: undefined,\r\n heightTableMain: 0,\r\n rows: [],\r\n rows_etiquetas: [],\r\n selection: [],\r\n grouping: [],\r\n expandedGroups: [],\r\n filteringColumnExtensions: [],\r\n filters: [],\r\n expandedRowIds: [],\r\n enabledFilterRows: true,\r\n optionAutocompleteAdd: [],\r\n optionAutocompleteAdd_planes: [],\r\n openAutoCompleteAdd: false,\r\n openAutoCompleteAdd_planes: false,\r\n isLoadingClientes: true,\r\n valueAutoCompleteAdd: null,\r\n valueAutoCompleteAdd_planes: null,\r\n isSaving: true,\r\n isSaving_planes: true,\r\n open_etiquetar: false,\r\n etiquetas: [],\r\n }\r\n\r\n const VirtualTable_cellComponent = (props) => {\r\n const { column } = props;\r\n const {row} = props;\r\n \r\n const ClickBoton=(ID_SECCION_CLIENTE,DESCRIPCION_CURSO,ETIQUETADO,ID_PLAN,ID_DETALLE_PLAN,ID_DETALLE_PLAN_OPTATIVA) => event =>{\r\n currentdescripcion=DESCRIPCION_CURSO\r\n var row=[];\r\n var found\r\n\r\n this.state.etiquetas.forEach((element,index)=>{\r\n if((element.ID_PLAN===ID_PLAN && element.ID_DETALLE_PLAN_OPTATIVA === ID_DETALLE_PLAN_OPTATIVA) \r\n || element.ID_DETALLE_PLAN_OPTATIVA===0 )\r\n {\r\n found = row.find(grupo => grupo.ID_DETALLE_PLAN === element.ID_DETALLE_PLAN);\r\n if (found == null){\r\n row.push(element);\r\n }else {\r\n found = null;\r\n }\r\n }\r\n })\r\n\r\n this.setState({selection: [{ID_SECCION_CLIENTE:ID_SECCION_CLIENTE,DESCRIPCION_CURSO,ETIQUETADO,ID_PLAN,ID_DETALLE_PLAN}] ,open_etiquetar: true,rows_etiquetas: row,selection_etiqueta: [ID_DETALLE_PLAN]})\r\n }\r\n \r\n if(column.name === 'BOTON')\r\n {\r\n return(\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 const botones_etiquetar=[\r\n {icono: 'Save', nombre: 'Guardar',escritura:true ,onclick: this.guardar\r\n , display:'auto'},\r\n {icono: 'Close', nombre: 'Cerrar' ,onclick: this.cerrarmodal(), display:'auto', color: 'red'},\r\n ]\r\n\r\n this.VirtualTable_cellComponent=VirtualTable_cellComponent\r\n this.botones_etiquetar=botones_etiquetar\r\n \r\n }; //FIN CONSTRUCTORS\r\n\r\n cerrarmodal=()=>event=>{\r\n this.setState({open_etiquetar: false})\r\n }\r\n\r\ncomponentDidMount()\r\n{\r\n let _this = this;\r\n _this.actualizarbarra(false);\r\n\r\n Auth.loggedIn().then( function(b){\r\n _this.setState({ isLoggin: b});\r\n\r\n if(b)\r\n {\r\n _this.filtersClientes('-');\r\n _this.setState({rows: [], heightTableMain: funciones.getHeightTableMain(movil_pequeño,_this).heightTable})\r\n }\r\n\r\n _this.actualizarbarra(true)\r\n })\r\n}\r\n\r\n\r\nfiltersClientes = (value)=>{\r\n new Request\r\n .get(`${globales.ip}/linkeo/Filtrar_estudiantes/${value}`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .retry(0)\r\n .timeout({ response: 20000, deadline: 30000, })\r\n .end((err, res) => {\r\n \r\n if(err) \r\n {\r\n if (err.toString().substr(0,16) === 'Error: Forbidden')\r\n {\r\n window.location.reload();\r\n return;\r\n }\r\n \r\n this.setState({ optionAutocompleteAdd: [], openAutoComplete: false, isLoadingClientes: false,isSaving: false }, ()=>{\r\n funciones.showToast('e', 'No hay conexión');\r\n });\r\n\r\n return;\r\n }\r\n \r\n const rows = JSON.parse(res.text);\r\n \r\n if (rows.length > 0)\r\n { \r\n this.setState({optionAutocompleteAdd: rows, isLoadingClientes: false,isSaving: false });\r\n }\r\n else\r\n {\r\n this.setState({optionAutocompleteAdd: [], openAutoComplete: false, isLoadingClientes: false,isSaving: false })\r\n } \r\n });\r\n }\r\n\r\n \r\nonBlurAutoCompleteAdd = ()=>{\r\n if (this.state.openAutoCompleteAdd)\r\n {\r\n this.setState({ openAutoCompleteAdd: false }); \r\n }\r\n}\r\n\r\nonChangeInput = (e, value)=>{ \r\n if (e === null || e.target.value === undefined)\r\n {\r\n if (this.state.openAutoCompleteAdd){ \r\n this.setState({ openAutoCompleteAdd: false });\r\n }\r\n return;\r\n }\r\n if ((e.target.value.toString().trim().length < 3 || (this.state.valueAutoCompleteAdd !== null && value === this.state.valueAutoCompleteAdd.CUENTA_ALUMNO + ' | ' + this.state.valueAutoCompleteAdd.NOMBRE_COMPLETO)) && this.state.openAutoCompleteAdd)\r\n {\r\n this.setState({ openAutoCompleteAdd: false });\r\n }\r\n else if (e.target.value.toString().trim().length >= 3 && !this.state.openAutoCompleteAdd)\r\n {\r\n this.setState({ openAutoCompleteAdd: true });\r\n }\r\n}\r\n\r\nonChangeAutocompleteAdd = (event, value) => {\r\n this.setState({ valueAutoCompleteAdd: value, openAutoCompleteAdd: false }, ()=>{\r\n this.consulta_planes();\r\n this.consulta_etiquetas();\r\n });\r\n}\r\n\r\nonChangeAutocompleteAdd_planes = (event, value) => {\r\n this.setState({ valueAutoCompleteAdd_planes: value, openAutoCompleteAdd_planes: false }, ()=>{\r\n this.consulta_clases();\r\n });\r\n}\r\n\r\nconsulta_etiquetas=()=>{\r\n let cuenta_alumno = this.state.valueAutoCompleteAdd!==null? this.state.valueAutoCompleteAdd.CUENTA_ALUMNO:'0'\r\n try{\r\n new Request\r\n .get(`${ip}/linkeo/obtener_etiquetas_linkeo/${cuenta_alumno}/${Auth.getProfile().user}`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .set('Content-Type', 'application/json')\r\n .retry(0)\r\n .timeout({ response: 15000, deadline: 60000, }) \r\n .end((err, res) => {\r\n if (err) { \r\n if (err.toString().substr(0,16) === 'Error: Forbidden')\r\n { \r\n window.location.reload();\r\n return; \r\n } \r\n this.setState({ openBackDrop: false }, ()=> { \r\n this.setState({etiquetas: []})\r\n funciones.showToast('e', 'Error de conexión'); \r\n });\r\n }\r\n\r\n const tmp = JSON.parse(res.text);\r\n if (tmp.length > 0) \r\n { \r\n this.setState({etiquetas: tmp})\r\n }\r\n else{\r\n this.setState({etiquetas: []})\r\n }\r\n })\r\n }\r\n catch(ex){\r\n this.setState({etiquetas: []})\r\n }\r\n}\r\n\r\nconsulta_planes=()=>{\r\n let cuenta_alumno = this.state.valueAutoCompleteAdd!==null? this.state.valueAutoCompleteAdd.CUENTA_ALUMNO:'0'\r\n try{\r\n new Request\r\n .get(`${ip}/linkeo/obtener_planes_linkeo/${cuenta_alumno}/${Auth.getProfile().user}`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .set('Content-Type', 'application/json')\r\n .retry(0)\r\n .timeout({ response: 15000, deadline: 60000, }) \r\n .end((err, res) => {\r\n if (err) { \r\n if (err.toString().substr(0,16) === 'Error: Forbidden')\r\n { \r\n window.location.reload();\r\n return; \r\n } \r\n this.setState({ openBackDrop: false }, ()=> { \r\n this.setState({optionAutocompleteAdd_planes: [], openAutoComplete_planes: false,isLoading_planes: false,isSaving_planes: false})\r\n funciones.showToast('e', 'Error de conexión'); \r\n });\r\n }\r\n\r\n const tmp = JSON.parse(res.text);\r\n if (tmp.length > 0) \r\n { \r\n this.setState({optionAutocompleteAdd_planes: tmp,valueAutoCompleteAdd_planes: null,rows:[], openAutoComplete_planes: false, isLoading_planes: false, isSaving_planes: false})\r\n }\r\n else{\r\n this.setState({optionAutocompleteAdd_planes: [],valueAutoCompleteAdd_planes: null,rows:[], openAutoComplete_planes: false, isLoading_planes: false, isSaving_planes: false})\r\n }\r\n })\r\n }\r\n catch(ex){\r\n this.setState({optionAutocompleteAdd_planes: [],valueAutoCompleteAdd_planes: null,rows:[], openAutoComplete_planes: false,isLoading_planes: false,isSaving_planes: false})\r\n }\r\n}\r\n\r\nconsulta_clases=()=>{\r\n let cuenta_alumno = this.state.valueAutoCompleteAdd!==null? this.state.valueAutoCompleteAdd.CUENTA_ALUMNO:'0'\r\n let plan = this.state.valueAutoCompleteAdd_planes!==null? this.state.valueAutoCompleteAdd_planes.ID_PLAN:'0'\r\n\r\n try{\r\n new Request\r\n .post(`${ip}/linkeo/obtener_clases_por_plan_linkeo`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .set('Content-Type', 'application/json')\r\n .send({PLAN: plan,cuenta_alumno: cuenta_alumno,USUARIO: Auth.getProfile().user })\r\n .retry(0)\r\n .timeout({ response: 15000, deadline: 60000, }) \r\n .end((err, res) => {\r\n if (err) { \r\n if (err.toString().substr(0,16) === 'Error: Forbidden')\r\n { \r\n window.location.reload();\r\n return; \r\n } \r\n this.setState({ openBackDrop: false }, ()=> { \r\n funciones.showToast('e', 'Error de conexión'); \r\n });\r\n }\r\n\r\n const rows = JSON.parse(res.text);\r\n if (rows.length > 0) \r\n { \r\n this.setState({rows: rows})\r\n }\r\n else\r\n {\r\n this.setState({rows: []})\r\n }\r\n })\r\n}\r\ncatch(ex){\r\n this.setState({rows: []})\r\n}\r\n}\r\n\r\nchangeSelection_etiqueta = selection_etiqueta =>{\r\n this.setState({ selection_etiqueta: [selection_etiqueta[selection_etiqueta.length-1]] });\r\n}\r\n\r\nguardar=()=>{\r\n\r\n\r\n this.setState({ openBackDrop: true }, ()=>{\r\n try{\r\n new Request\r\n .post(`${ip}/linkeo/U_linkeo/`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .set('Content-Type', 'application/json')\r\n .send({\r\n ID_SECCION_CLIENTE: this.state.selection[0].ID_SECCION_CLIENTE\r\n ,ID_DETALLE_PLAN: this.state.selection_etiqueta[0]\r\n ,USUARIO: Auth.getProfile().user\r\n \t })\r\n .retry(0)\r\n .timeout({ response: 15000, deadline: 60000, }) \r\n .end((err, res) => {\r\n if (err) { \r\n if (err.toString().substr(0,16) === 'Error: Forbidden')\r\n { \r\n window.location.reload();\r\n return; \r\n } \r\n this.setState({ openBackDrop: false }, ()=> { \r\n funciones.showToast('e', 'Error de conexións'); \r\n });\r\n }\r\n\r\n const rows = JSON.parse(res.text);\r\n if (rows.length > 0) \r\n { \r\n if (rows[0].RESP === undefined)\r\n { \r\n\r\n this.setState({openBackDrop: false}, ()=>{\r\n funciones.showToast('s', 'Proceso realizado correctamente.'); \r\n this.setState({rows:rows, selection: [], open_etiquetar: false,rows_etiquetas:[]});\r\n })\r\n }\r\n else{\r\n this.setState({ openBackDrop: false}, ()=>{\r\n funciones.showToast('w', rows[0].RESP);\r\n });\r\n }\r\n }\r\n else\r\n {\r\n this.setState({ openBackDrop: false}, ()=>{\r\n this.setState({open_etiquetar: false,rows:[]});\r\n });\r\n } \r\n }); \r\n }\r\n catch(ex){\r\n this.setState({ openBackDrop: false}, ()=>{\r\n funciones.showToast('e', 'Error de conexión');\r\n });\r\n }\r\n })\r\n}\r\n\r\n/* RENDER */\r\nrender() {\r\n const { classes } = this.props;\r\n\r\n if (this.state.isLoggin === true )\r\n {\r\n return ( \r\n \r\n \r\n \r\n {'Cargando...'}\r\n \r\n\r\n {/*--------------------------------------------------------------------DIALOG PARA ETIQUETAR ELECTIVAS---------------------------------------------------------------------*/}\r\n \r\n \r\n \r\n {'Etiquetar'}\r\n \r\n \r\n \r\n \r\n }\r\n ChangeSelection = {this.changeSelection_etiqueta}\r\n Selection={this.state.selection_etiqueta}\r\n //VirtualTable_cellComponent={this.VirtualTable_cellComponent}\r\n //RowComponent={this.trow}\r\n showSelectionColumn={true}\r\n />\r\n \r\n \r\n \r\n\r\n
\r\n option.CUENTA_ALUMNO + ' | ' + option.NOMBRE_COMPLETO}\r\n style={{ width: !movil ? '400px' : '95%'}} \r\n renderInput={(params) => \r\n {this.state.isLoadingClientes ? : null}\r\n {params.InputProps.endAdornment}\r\n \r\n ),\r\n readOnly: this.state.isSaving\r\n }}\r\n />}\r\n renderOption={(option) => (\r\n \r\n {option.CUENTA_ALUMNO}\r\n {option.NOMBRE_COMPLETO} \r\n \r\n )}\r\n noOptionsText={'No hay resultados'}\r\n loadingText={'Cargando...'} \r\n onChange={this.onChangeAutocompleteAdd}\r\n open={this.state.openAutoCompleteAdd}\r\n loading = {this.state.isLoadingClientes}\r\n ListboxComponent={ListboxComponent}\r\n disableListWrap\r\n value={this.state.valueAutoCompleteAdd} \r\n autoHighlight\r\n disableClearable={this.state.isSaving}\r\n clearText = 'Borrar'\r\n openText = ''\r\n closeText = ''\r\n classes= {{ popper: classes.popper }}\r\n onInputChange={this.onChangeInput} \r\n /> \r\n option.DESCRIPCION_PLAN}\r\n style={{ width: !movil ? '400px' : '95%', marginLeft: 10 }} \r\n renderInput={(params) => \r\n {this.state.isLoading_planes ? : null}\r\n {params.InputProps.endAdornment}\r\n \r\n ),\r\n readOnly: this.state.isSaving_planes\r\n }}\r\n />}\r\n renderOption={(option) => (\r\n \r\n {option.DESCRIPCION_PLAN} \r\n \r\n )}\r\n noOptionsText={'No hay resultados'}\r\n loadingText={'Cargando...'} \r\n onChange={this.onChangeAutocompleteAdd_planes}\r\n //open={this.state.openAutoCompleteAdd_periodos}\r\n loading = {this.state.isLoading_planes}\r\n ListboxComponent={ListboxComponent_planes}\r\n disableListWrap\r\n value={this.state.valueAutoCompleteAdd_planes} \r\n autoHighlight\r\n disableClearable={this.state.isSaving_planes}\r\n clearText = 'Borrar'\r\n openText = ''\r\n closeText = ''\r\n classes= {{ popper: classes.popper }}\r\n //sonInputChange={this.onChangeInput_periodos} \r\n /> \r\n
\r\n\r\n
\r\n }\r\n VirtualTable_cellComponent={this.VirtualTable_cellComponent}\r\n RowComponent={this.trow}\r\n showSelectionColumn={false}\r\n />\r\n
\r\n
\r\n ); /// finaliza return\r\n }\r\n else if (this.state.isLoggin === false)\r\n {\r\n Auth.logout()\r\n window.location.reload();\r\n return; \r\n }\r\n\r\n return null;\r\n} /// finaliza render\r\n} /// finaliza class\r\n)/// finaliza withStyles\r\n\r\n \r\n\r\n ","import React from 'react';\r\nimport CustomTable from '../../../components/CustomTable';\r\nimport {globales, colores,funciones } from '../../../global';\r\nimport AuthService from '../../../AuthService';\r\nimport Request from 'superagent';\r\nimport Paper from '@material-ui/core/Paper';\r\nimport BarraBotones from '../../../components/Barra_menu';\r\nimport {withStyles} from '@material-ui/core/styles';\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport DialogActions from '@material-ui/core/DialogActions';\r\nimport Backdrop from '@material-ui/core/Backdrop';\r\nimport CircularProgress from '@material-ui/core/CircularProgress';\r\nimport TextField from '@material-ui/core/TextField';\r\nimport DialogContent from '@material-ui/core/DialogContent';\r\nimport IconButton from '@material-ui/core/IconButton';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Autocomplete, { createFilterOptions } from '@material-ui/lab/Autocomplete';\r\nimport {virtual} from '../../../components/VirtualListBox';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport RefreshIcon from '@material-ui/icons/Refresh';\r\nimport Avatar from '@material-ui/core/Avatar';\r\nimport PersonIcon from '@material-ui/icons/Person';\r\nimport ListItemAvatar from '@material-ui/core/ListItemAvatar';\r\nimport Select from '../../../components/Select';\r\nimport MenuItem from '@material-ui/core/MenuItem';\r\nimport ListSubheader from '@material-ui/core/ListSubheader';\r\nimport Divider from '@material-ui/core/Divider';\r\nimport Button from '@material-ui/core/Button';\r\nimport AddIcon from '@material-ui/icons/Add';\r\nimport {Table} from '@devexpress/dx-react-grid-material-ui';\r\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\r\nimport Checkbox from '@material-ui/core/Checkbox';\r\nimport InputAdornment from '@material-ui/core/InputAdornment';\r\nimport EditIcon from '@material-ui/icons/Edit';\r\nimport InfoIcon from '@material-ui/icons/Info';\r\nimport CropPortraitIcon from '@material-ui/icons/CropPortrait';\r\nimport {IntegratedFiltering} from '@devexpress/dx-react-grid';\r\nimport Popper from '@material-ui/core/Popper';\r\nimport Fade from '@material-ui/core/Fade';\r\nimport ClickAwayListener from '@material-ui/core/ClickAwayListener';\r\nimport Chip from '@material-ui/core/Chip';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport SelectTime from '../../../components/SelectTime';\r\nimport Switch from '@material-ui/core/Switch';\r\n\r\nimport Menu from '@material-ui/core/Menu';\r\nimport MoreVertIcon from '@material-ui/icons/MoreVert';\r\nimport ListItemIcon from '@material-ui/core/ListItemIcon';\r\nimport BuildIcon from '@material-ui/icons/Build';\r\nimport RemoveIcon from '@material-ui/icons/Remove';\r\nimport { ThreeSixty } from '@material-ui/icons';\r\nimport { Children } from 'react/cjs/react.production.min';\r\n\r\n\r\nlet Auth = new AuthService();\r\nlet tokenInfo = [];\r\n\r\nvar movil=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);\r\n\r\nconst styles = theme => ({\r\n \r\npaper: { \r\n borderRadius: globales.border_dialog,\r\n minWidth: !movil ? '430px' : \"98%\", \r\n maxWidth: !movil ? '430px' : \"98%\",\r\n height: !movil ? '500px' : undefined, \r\n maxHeight: !movil ? '98%' : undefined\r\n}, \r\npaperCal: { \r\n borderRadius: globales.border_dialog,\r\n minWidth: !movil ? '330px' : \"85%\", \r\n maxWidth: !movil ? '330px' : \"85%\",\r\n height: !movil ? '405px' : undefined, \r\n maxHeight: !movil ? '92%' : undefined\r\n},\r\npaperSeccion: { \r\n borderRadius: globales.border_dialog,\r\n minWidth: !movil ? '350px' : \"90%\", \r\n maxWidth: !movil ? '350px' : \"90%\",\r\n height: '600px', \r\n maxHeight: '95%'\r\n},\r\npaperConfirm: { \r\n borderRadius: globales.border_dialog,\r\n minWidth: '320px', \r\n maxWidth: '320px', \r\n},\t\r\ncloseButton: {\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\nbackdrop: {\r\n zIndex: 500000,\r\n color: '#fff', \r\n flexDirection: 'column'\r\n},\r\ncontainer: {\r\n display: 'flex',\r\n justifyContent: !movil ? 'center' : undefined, \r\n alignItems: !movil ? \"center\" : \"flex-start\",\r\n flexDirection: !movil ? \"row\" : \"column\",\r\n paddingTop: \"2px\",\r\n paddingBottom: \"5px\", \r\n paddingLeft: !movil ? theme.spacing(4) : theme.spacing(1),\r\n paddingRight: !movil ? theme.spacing(4) : theme.spacing(1), \r\n},\r\ntextField: {\r\n marginRight: !movil ? theme.spacing(1) : undefined, \r\n},\r\nformControlSelect: {\r\n width: movil ? '100%' : '430px', \r\n marginLeft: !movil ? theme.spacing(1) : undefined, \r\n textAlign: 'left',\r\n},\r\nformControlSelectFrm: {\r\n width: '100%', \r\n textAlign: 'left',\r\n marginTop: theme.spacing(2),\r\n},\r\npopper: {\r\n zIndex: 1,\r\n '&[x-placement*=\"bottom\"] $arrow': {\r\n top: 0,\r\n left: 0,\r\n marginTop: '-0.9em',\r\n width: '3em',\r\n height: '1em',\r\n '&::before': {\r\n borderWidth: '0 1em 1em 1em',\r\n borderColor: `transparent transparent ${theme.palette.background.paper} transparent`,\r\n },\r\n },\r\n '&[x-placement*=\"top\"] $arrow': {\r\n bottom: 0,\r\n left: 0,\r\n marginBottom: '-0.9em',\r\n width: '3em',\r\n height: '1em',\r\n '&::before': {\r\n borderWidth: '1em 1em 0 1em',\r\n borderColor: `${theme.palette.background.paper} transparent transparent transparent`,\r\n },\r\n },\r\n '&[x-placement*=\"right\"] $arrow': {\r\n left: 0,\r\n marginLeft: '-0.9em',\r\n height: '3em',\r\n width: '1em',\r\n '&::before': {\r\n borderWidth: '1em 1em 1em 0',\r\n borderColor: `transparent ${theme.palette.background.paper} transparent transparent`,\r\n },\r\n },\r\n '&[x-placement*=\"left\"] $arrow': {\r\n right: 0,\r\n marginRight: '-0.9em',\r\n height: '3em',\r\n width: '1em',\r\n '&::before': {\r\n borderWidth: '1em 0 1em 1em',\r\n borderColor: `transparent transparent transparent ${theme.palette.background.paper}`,\r\n },\r\n },\r\n},\r\narrow: {\r\n position: 'absolute',\r\n fontSize: 7,\r\n width: '3em',\r\n height: '3em',\r\n '&::before': {\r\n content: '\"\"',\r\n margin: 'auto',\r\n display: 'block',\r\n width: 0,\r\n height: 0,\r\n borderStyle: 'solid',\r\n },\r\n}\r\n});\r\nconst widthTable = !movil ? window.screen.width - (globales.tabla.marginleft + globales.tabla.marginright) : 1336;\r\nconst columns = [ \r\n { name: 'ID_SECCION_CLIENTE', title: 'ID_SECCION_CLIENTE'},\r\n { name: 'CODIGO_CURSO', title: 'Código'},\r\n { name: 'DESCRIPCION_CURSO', title: 'Descripción'},\r\n { name: 'ESTATUS_ACADEMICO', title: 'Estado'},\r\n { name: 'NOTA', title: 'Nota'},\r\n { name: 'PERIODO', title: 'Período'},\r\n { name: 'ANIO', title: 'Año'},\r\n { name: 'FECHA_MATRICULA', title: 'Fecha matricula'},\r\n];\r\nconst columnExtensions= [\r\n { columnName: 'CUENTA_ALUMNO', width: widthTable * 0.08 },\r\n { columnName: 'CODIGO_CURSO', width: widthTable * 0.11 },\r\n { columnName: 'DESCRIPCION_CURSO', width: widthTable * 0.25},\r\n { columnName: 'ESTATUS_ACADEMICO', width: widthTable * 0.14, align: 'center'},\r\n { columnName: 'NOTA', width: widthTable * 0.08, align: 'center'},\r\n { columnName: 'PERIODO', width: widthTable * 0.08, align: 'center'},\r\n { columnName: 'ANIO', width: widthTable * 0.08, align: 'center'},\r\n { columnName: 'FECHA_MATRICULA', width: widthTable * 0.14, align: 'center'}, \r\n];\r\n\r\nconst settingFilter = [\r\n { columnName: 'FECHA_MATRICULA',\r\n predicate: (value, filter, row) => {\r\n value = funciones.getTime(value, 2); \r\n return IntegratedFiltering.defaultPredicate(value, filter, row);\r\n },\r\n\r\n }\r\n];\r\nconst dias = [ \r\n {value: 1, nombre: \"Lunes\", abrev: \"L\"},\r\n {value: 2, nombre: \"Martes\", abrev: \"K\"},\r\n {value: 3, nombre: \"Miércoles\", abrev: \"M\"},\r\n {value: 4, nombre: \"Jueves\", abrev: \"J\"},\r\n {value: 5, nombre: \"Viernes\", abrev: \"V\"},\r\n {value: 6, nombre: \"Sábado\", abrev: \"S\"},\r\n {value: 7, nombre: \"Domingo\", abrev: \"D\"},\r\n]\r\n\r\nconst filterOptions = createFilterOptions({\r\n stringify: (option) => option.CODIGO_CURSO + option.DESCRIPCION_CURSO_HIJO,\r\n});\r\n\r\nconst RowId = row => row.ID_SECCION_CLIENTE;\r\n\r\nconst VirtualTable_cellComponent = (props) => { \r\n \r\n if (props.column.name === 'FECHA_MATRICULA')\r\n {\r\n return (\r\n {funciones.getTime(props.row.FECHA_MATRICULA, 2)}\r\n );\r\n }\r\n \r\n return ();\r\n \r\n}\r\nconst TableSelectionCellComponent = (idRowSelected, handleClickCali) => (props) =>{\r\n \r\n if (props.row.ID_SECCION_CLIENTE === idRowSelected)\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 return ();\r\n \r\n}\r\nconst RenderOption = (option) => (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
{option.CUENTA_ALUMNO}\r\n
{option.NOMBRE_COMPLETO}
\r\n \r\n);\r\nconst RenderOptionCurso = (option) => (\r\n
\r\n
{option.CODIGO_CURSO}
\r\n {option.DESCRIPCION_CURSO_HIJO} \r\n
\r\n);\r\nconst RenderOptionSeccion = (option) => (\r\n
\r\n
\r\n {option.DESCRIPCION_CURSO}\r\n
\r\n {option.ID_SECCION === -1 ? \r\n
\r\n {option.SECCION}\r\n : \r\n option.SECCION} \r\n
\r\n);\r\nconst RenderOptionCate = (option) => ( \r\n \r\n {option.CUENTA_CATEDRATICO}\r\n {option.NOMBRE_COMPLETO} \r\n \r\n );\r\nconst ControlCheck = (props)=>{\r\n\r\nconst {index, \r\n dia, \r\n checked, \r\n classes, \r\n handleChangeCheck, \r\n setHorario,\r\n horario,\r\n horasInicioRef,\r\n minutosInicioRef,\r\n merInicioRef,\r\n horasFinRef,\r\n minutosFinRef,\r\n merFinRef} = props;\r\nconst [anchorEl, setAnchorEl] = React.useState(null);\r\nconst [arrowRef, setArrowRef] = React.useState(null);\r\nconst styleButton = {textTransform: \"none\"}\r\nconst i = horario.length - 1;\r\n\r\nconst handleClick = (event) => { \r\n if (!checked){ \r\n setAnchorEl(event.currentTarget);\r\n return;\r\n }\r\n \r\n handleChangeCheck({ target: { name: \"checked_\"+String(dia.value), checked: false } });\r\n setHorario(dia, false);\r\n \r\n}\r\n\r\n\r\n\r\nconst handleOk = ()=>{\r\n \r\n const inicio = funciones.getTimeSelect(horasInicioRef.current.value, minutosInicioRef.current.value, merInicioRef.current.value, '2020-01-01'); \r\n const fin = funciones.getTimeSelect(horasFinRef.current.value, minutosFinRef.current.value, merFinRef.current.value, '2020-01-01'); \r\n \r\n if (new Date(inicio) >= new Date(fin)){\r\n funciones.showToast(\"W\", \"La hora final debe superar a la hora de inicio\");\r\n return;\r\n }\r\n \r\n handleChangeCheck({ target: { name: \"checked_\"+String(dia.value), checked: true } });\r\n setHorario({ ...dia, inicio, fin }, true);\r\n handleMenuClose();\r\n}\r\n\r\nconst handleMenuClose = (e)=>{\r\n setAnchorEl(null);\r\n}\r\n\r\nconst control = (\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{dia.nombre} \r\n
\r\n =0 ? horario[i].inicio : null, \"H\", \"08\")}\r\n defaultMinutos={funciones.getTimeParcial(i >=0 ? horario[i].inicio : null,\"M\", \"00\")}\r\n defaultMeridiano={funciones.getTimeParcial(i >=0 ? horario[i].inicio : null,\"T\", 0)}\r\n id='Inicio'\r\n formStyle={{ width: '140px', marginBottom: 10 }} \r\n /> \r\n =0 ? horario[i].fin : null,\"H\", \"09\")} \r\n defaultMinutos={funciones.getTimeParcial(i >=0 ? horario[i].fin : null,\"M\", \"00\")} \r\n defaultMeridiano={funciones.getTimeParcial(i >=0 ? horario[i].fin : null,\"T\", 0)} \r\n id='Hasta'\r\n formStyle={{ width: '140px', marginBottom: 10 }} \r\n /> \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n ) \r\n\r\nreturn ();\r\n\r\n}\r\n\r\nexport default withStyles(styles) ( \r\nclass App extends React.Component {\r\n\r\ntablaRef = React.createRef();\r\ninput1Ref = React.createRef();\r\ninput2Ref = React.createRef();\r\ninput3Ref = React.createRef();\r\ninput4Ref = React.createRef();\r\ninput5Ref = React.createRef();\r\ninput6Ref = React.createRef();\r\ninput7Ref = React.createRef();\r\nhorasInicioRef = React.createRef();\r\nminutosInicioRef = React.createRef();\r\nmerInicioRef = React.createRef();\r\nhorasFinRef = React.createRef();\r\nminutosFinRef = React.createRef();\r\nmerFinRef = React.createRef();\r\n\r\n constructor (props) {\r\n super(props);\r\n this.l=props.l\r\n this.e=props.e\r\n this.i=props.i\r\n this.state = {\r\n isLoggin : undefined,\r\n heightTableMain: 0,\r\n loadingMain: false,\r\n rows: [],\r\n openBackDrop: false,\r\n openBackDropInvisible: false,\r\n optionAutocomplete: [],\r\n loadingClientes: true,\r\n valueAutoComplete: null,\r\n openAutoComplete: false,\r\n itemsSelectPlan: null,\r\n selectedPlan: \"\",\r\n openModal: false,\r\n openModalConfirm: false,\r\n openModalSinCalificaciones: false,\r\n optionsCursos: [],\r\n valueCurso: null,\r\n optionsPeriodos: [],\r\n valuePeriodo: null,\r\n loadingSecciones: false,\r\n optionsSecciones: [],\r\n valueSeccion: null,\r\n checked: false,\r\n checkedCal: false,\r\n openModalCal: false,\r\n valN1: null,\r\n valN2: null,\r\n valN3: null,\r\n valN4: null,\r\n valLab: null,\r\n valExt: null,\r\n idRowSelected: null,\r\n openMenu: false,\r\n readOnlyCali: false,\r\n loadingCali: false,\r\n itemsSelectEstado: null,\r\n selectedEstado: \"\",\r\n openModalSeccion: false,\r\n optionsAulas: [],\r\n valueAula: null,\r\n optionscate: [],\r\n valueCate: null,\r\n horario: [],\r\n checkedSeccion: false,\r\n valueJornada: null,\r\n optionsJornadas: [],\r\n optionCurso: false,\r\n\r\n tipo_gestion:null,\r\n valueCurso_:null,\r\n valuePeriodo_:null,\r\n id_seccion_:null,\r\n valueSeccion_:null,\r\n selectedEstado_:null,\r\n selectedEstatusAcademico_:null,\r\n selectedEstatusAcademicoAbrev_:null,\r\n itemsSelectEstado_:null,\r\n tieneCal_:null,\r\n tieneCalificaciones_:null,\r\n valueNota_:null,\r\n\r\n textModal: \"\",\r\n };\r\n this.botones_agregar =[\r\n {icono: 'Check', toolt: '', nombre: 'Aceptar', onclick: this.handleOK, display:'auto'},\r\n {icono: 'Close', toolt: '', nombre: 'Cerrar', onclick: this.handleClose, display:'auto', color: 'red'},\r\n ];\r\n this.botones_eliminar =[\r\n {icono: 'Check', toolt: '', nombre: 'Aceptar', onclick: this.handleOK /**/, display:'auto'},\r\n {icono: 'Close', toolt: '', nombre: 'Cerrar', onclick: this.handleCloseConfirm, display:'auto', color: 'red'},\r\n ]; \r\n this.botones_cal =[\r\n {icono: 'Check', toolt: '', nombre: 'Aceptar', onclick: this.handleSetCal, display:'auto'},\r\n {icono: 'Close', toolt: '', nombre: 'Cerrar', onclick: this.handleCloseCal, display:'auto', color: 'red'},\r\n ];\r\n this.botones_estado =[\r\n {icono: 'Check', toolt: '', nombre: 'Aceptar', onclick: this.handleSetEstado, display:'auto'},\r\n {icono: 'Close', toolt: '', nombre: 'Cerrar', onclick: this.handleCloseEstCurso, display:'auto', color: 'red'},\r\n ];\r\n this.botones_seccion=[\r\n {icono: 'Check', toolt: '', nombre: 'Aceptar', onclick: this.crearSeccion, display:'auto'},\r\n {icono: 'Close', toolt: '', nombre: 'Cerrar', onclick: this.handleCloseSeccion, display:'auto', color: 'red'},\r\n ];\r\n this.ponderaciones=[];\r\n this.optionsSeccionesNew = [{ CANT_ACTUAL: null,\r\n CATEDRATICO: null,\r\n CUPO_MAXIMO: null, \r\n DESCRIPCION_CURSO: \"No hay secciones del curso en el periodo seleccionado\",\r\n FECHA_MATRICULA: null, \r\n ID_SECCION: -1,\r\n SECCION: \"+ Click para agregar una sección\"}];\r\n}\r\n\r\nonBlurAutoComplete = ()=>{\r\n\r\n if (this.state.openAutoComplete)\r\n this.setState({ openAutoComplete: false }); \r\n \r\n}\r\n \r\nonChangeInput = (e, value)=>{ \r\n \r\n if (e === null || e.target.value === undefined)\r\n {\r\n if (this.state.openAutoComplete) \r\n this.setState({ openAutoComplete: false });\r\n \r\n return;\r\n }\r\n \r\n if ((e.target.value.toString().trim().length < 3 || (this.state.valueAutoComplete !== null && value === this.state.valueAutoComplete.CUENTA_ALUMNO + ' | ' + this.state.valueAutoComplete.NOMBRE_COMPLETO)) && this.state.openAutoComplete)\r\n this.setState({ openAutoComplete: false });\r\n else if (e.target.value.toString().trim().length >= 3 && !this.state.openAutoComplete)\r\n this.setState({ openAutoComplete: true });\r\n \r\n}\r\n \r\nonChangeAutocomplete = (event, value) =>{\r\n \r\nthis.setState({ valueAutoComplete: value, \r\n openAutoComplete: false, \r\n itemsSelectPlan: null,\r\n selectedPlan: \"\",\r\n rows: [] }, ()=>{\r\n \r\n if (value === null)\r\n {\r\n return;\r\n }\r\n \r\n this.setState({ loadingPlanes: true }, ()=>{\r\n this.obtener_planes(value.CUENTA_ALUMNO); \r\n });\r\n \r\n});\r\n \r\n}\r\n \r\nfiltersClientes = (value)=>{ \r\n \r\n new Request\r\n .get(`${globales.ip}/insertacursos/estudiantes/${value}`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .retry(0)\r\n .timeout({ response: 20000, deadline: 30000, }) \r\n .end((err, res) => {\r\n \r\n if (err) { \r\n \r\n if (err.toString().substr(0,16) === 'Error: Forbidden')\r\n {\r\n window.location.reload();\r\n return; \r\n }\r\n \r\n this.setState({ optionAutocomplete: [], openAutoComplete: false, loadingClientes: false }, ()=>{\r\n funciones.showToast('e', 'No hay conexión');\r\n });\r\n \r\n return;\r\n }\r\n \r\n const rows = JSON.parse(res.text);\r\n this.setState({ optionAutocomplete: rows, loadingClientes: false }); \r\n \r\n \r\n});\r\n \r\n}\r\n\r\nonRefresh = ()=>{\r\n \r\n this.setState({ loadingClientes: true }, ()=>{ \r\n this.filtersClientes('-');\r\n });\r\n \r\n}\r\n\r\nobtener_planes = (cuenta)=>{\r\n\r\nnew Request\r\n .get(`${globales.ip}/insertacursos/planes/${cuenta}/${tokenInfo.plataforma}`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .retry(1)\r\n .timeout({ response: 15000, deadline: 30000, }) \r\n .end((err, res) => {\r\n \r\n if (err) { \r\n \r\n if (err.toString().substr(0,16) === 'Error: Forbidden')\r\n {\r\n window.location.reload();\r\n return; \r\n }\r\n \r\n this.setState({ loadingPlanes: false }, ()=>{ \r\n funciones.showToast('e', 'No hay conexión'); \r\n }); \r\n \r\n return;\r\n }\r\n \r\n const planes = JSON.parse(res.text);\r\n let niveles = [];\r\n let datosSelect = [];\r\n \r\n planes.map((item, i) =>{\r\n\r\n if (!niveles.find(x => x === item.ID_NIVEL))\r\n {\r\n niveles.push(item.ID_NIVEL);\r\n\r\n if (!datosSelect.find(x => x.label === item.DESCRIPCION_NIVEL.trim()))\r\n datosSelect.push({value: item.ID_NIVEL * -1, label: item.DESCRIPCION_NIVEL.trim() })\r\n \r\n planes.map((itemx, j) =>{ \r\n if (itemx.ID_NIVEL === item.ID_NIVEL)\r\n datosSelect.push({value: itemx.ID_PLAN, label: itemx.DESCRIPCION_PLAN })\r\n \r\n return item;\r\n }); \r\n \r\n }\r\n \r\n return item;\r\n\r\n });\r\n\r\n const itemsSelectPlan = datosSelect.map((item, i) =>{\r\n if (item.value < 0)\r\n return ({item.label}); \r\n else\r\n return ({item.label});\r\n });\r\n\r\n this.setState({ itemsSelectPlan, loadingPlanes: false }); \r\n \r\n});\r\n\r\n\r\n}\r\n\r\n\r\n\r\n\r\nhandleClickMenu = (event)=>{\r\n this.setState({ anchorEl: event.currentTarget ,tieneCal_ :this.state.tieneCalificaciones_});\r\n} \r\n\r\nhandleCloseConfirm =()=>{\r\n this.setState({ openModalConfirm: false , tipo_gestion:null,valueNota_:null , anchorEl: null});\r\n}\r\n\r\nhandleCloseSinCalificaciones =()=>{\r\n this.setState({ openModalSinCalificaciones: false, readOnlyCali:false});\r\n}\r\n\r\n\r\nhandleChangeSelect = async (event)=>{\r\n const {value, name} = event.target;\r\n\r\n if (isNaN(parseInt(value)) && name === \"Plan\") return;\r\n\r\n await Promise.resolve(this.setState({ [\"selected\"+name]: value }));\r\n\r\n if (name === \"Plan\")\r\n this.setState({ loadingMain: true }, ()=>{\r\n const cuenta = this.state.valueAutoComplete.CUENTA_ALUMNO; \r\n const id_plan = parseInt(value); \r\n this.obtener_cursos_pendientes(cuenta, id_plan); \r\n this.obtener_historial(cuenta, id_plan);\r\n }); \r\n\r\nif (name === \"Estado\" && value === \"S\" && this.state.checkedCal)\r\n this.handleChangeCheck({ target:{ name:\"checkedCal\", checked: false }});\r\n \r\n}\r\n\r\nobtener_historial = (cuenta, id_plan)=>{\r\n\r\nnew Request\r\n .get(`${globales.ip}/insertacursos/historial/${cuenta}/${id_plan}`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .retry(1)\r\n .timeout({ response: 15000, deadline: 30000, }) \r\n .end((err, res) => {\r\n \r\n if (err) { \r\n \r\n if (err.toString().substr(0,16) === 'Error: Forbidden')\r\n { \r\n window.location.reload();\r\n return;\r\n \r\n }\r\n \r\n this.setState({ loadingMain: false }, ()=>{ \r\n funciones.showToast('e', 'No hay conexión'); \r\n }); \r\n \r\n return;\r\n }\r\n \r\n const rows = JSON.parse(res.text); \r\n this.setState({ rows, loadingMain: false }); \r\n \r\n});\r\n\r\n}\r\n\r\nobtener_cursos_pendientes = (cuenta, id_plan)=>{\r\n\r\n new Request\r\n .get(`${globales.ip}/insertacursos/pendientes/${cuenta}/${id_plan}`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .retry(1)\r\n .timeout({ response: 15000, deadline: 30000, }) \r\n .end((err, res) => {\r\n \r\n if (err) { \r\n \r\n if (err.toString().substr(0,16) === 'Error: Forbidden')\r\n {\r\n \r\n window.location.reload();\r\n return;\r\n \r\n }\r\n \r\n funciones.showToast('e', 'No hay conexión'); \r\n \r\n return;\r\n }\r\n \r\n const optionsCursos = JSON.parse(res.text);\r\n this.setState({ optionsCursos }); \r\n \r\n}); \r\n}\r\n\r\nobtener_periodos = ()=>{\r\n\r\nnew Request\r\n .get(`${globales.ip}/insertacursos/periodos`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .retry(1)\r\n .timeout({ response: 15000, deadline: 30000, }) \r\n .end((err, res) => {\r\n \r\n if (err) { \r\n \r\n if (err.toString().substr(0,16) === 'Error: Forbidden')\r\n { \r\n window.location.reload();\r\n return; \r\n }\r\n \r\n \r\n funciones.showToast('e', 'No hay conexión'); \r\n return;\r\n }\r\n \r\n const optionsPeriodos = JSON.parse(res.text); \r\n this.setState({ optionsPeriodos }); \r\n\r\n});\r\n\r\n}\r\n\r\nobtener_secciones = (id_cm, id_curso_padre, alias)=>{ \r\n\r\n new Request\r\n .get(`${globales.ip}/insertacursos/secciones/${id_cm}/${id_curso_padre}/${alias}`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .retry(1)\r\n .timeout({ response: 15000, deadline: 30000, }) \r\n .end((err, res) => {\r\n \r\n if (err) { \r\n \r\n if (err.toString().substr(0,16) === 'Error: Forbidden')\r\n {\r\n window.location.reload();\r\n return; \r\n }\r\n \r\n this.setState({ loadingSecciones: false }, ()=>{ \r\n funciones.showToast('e', 'No hay conexión'); \r\n }); \r\n \r\n return;\r\n }\r\n \r\n const optionsSecciones = JSON.parse(res.text);\r\n this.setState({ optionsSecciones, loadingSecciones: false }); \r\n \r\n}); \r\n}\r\n\r\nonClickAdd = ()=>{\r\n\r\nthis.ponderaciones=[];\r\nthis.state.tipo_gestion=1\r\nthis.setState({ valueCurso: null,\r\n valuePeriodo: null,\r\n valueSeccion: null,\r\n optionsSecciones: [],\r\n checkedCal: false,\r\n checked: false,\r\n selectedEstado: \"\",\r\n maxN1: 25,\r\n maxN2: 25,\r\n maxN3: 25,\r\n maxN4: 25,\r\n maxLab: 25,\r\n maxExt: 25,\r\n readOnlyCali: false,\r\n titleModal:\"Agregar Curso\",\r\n openModal: true ,\r\n anchorEl: null,\r\n valueNota_:null\r\n });\r\n}\r\n\r\neditEvent = ()=>{\r\n\r\n if (funciones.isEmpty(this.state.idRowSelected))\r\n return;\r\n \r\n const rowSelected = this.state.rows.find(x => x.ID_SECCION_CLIENTE === this.state.idRowSelected);\r\n this.state.tipo_gestion = 2;\r\n this.state.id_seccion_=rowSelected.ID_SECCION\r\n this.state.tieneCalificaciones_= rowSelected.TIENE_CALIFICACIONES\r\n \r\n \r\n this.setState({ anchorEl: null,\r\n titleModal: \"Modificar Curso\",\r\n valueCurso:this.state.valueCurso_,\r\n valuePeriodo: this.state.valuePeriodo_,\r\n valueSeccion: this.state.valueSeccion_,\r\n openModal: true });\r\n}\r\n\r\ndeleteEvent = ()=>{\r\n if (funciones.isEmpty(this.state.idRowSelected))\r\n return;\r\n \r\n const rowSelected = this.state.rows.find(x => x.ID_SECCION_CLIENTE === this.state.idRowSelected);\r\n const nombreCurso = rowSelected.DESCRIPCION_CURSO\r\n const seccion = rowSelected.ID_SECCION\r\n this.state.tipo_gestion=3 \r\n this.state.id_seccion_=seccion\r\n \r\n this.setState({ anchorEl: null,\r\n titleModal: \"Confirmación\",\r\n textModal: \"¿Desea eliminar el curso: \"+ nombreCurso +\" ?\", \r\n openModalConfirm: true });\r\n}\r\n\r\nhandleClose = ()=>{\r\n this.setState({ openModal: false ,tipo_gestion:null,valueNota_:null });\r\n}\r\n\r\nhandleCloseMenu = () => {\r\n this.setState({ anchorEl: null});\r\n}\r\n\r\nonChangeAutocompleteCursos = (event, value)=>{\r\n \r\n this.setState({ valueCurso: value, \r\n valueSeccion: null,\r\n checked: false,\r\n checkedCal: false, \r\n optionsSecciones: [] }, ()=>{\r\n\r\n this.ponderaciones=[];\r\n if (value === null || this.state.valuePeriodo === null)\r\n return;\r\n \r\n this.setState({ loadingSecciones: true }, ()=>{\r\n const id_curso_padre = value.ID_CURSO_PADRE;\r\n const alias = value.ALIAS;\r\n const id_cm = this.state.valuePeriodo.ID_CONTROL_MATRICULA;\r\n this.obtener_secciones(id_cm, id_curso_padre, alias); \r\n });\r\n \r\n });\r\n \r\n}\r\n\r\nonChangeAutocompletePeriodo = (event, value) =>{ \r\n this.setState({ valuePeriodo: value, \r\n valueSeccion: null, \r\n checked: false,\r\n checkedCal: false, \r\n optionsSecciones: [] }, ()=>{\r\n\r\n this.ponderaciones=[]; \r\n if (value === null || this.state.valueCurso === null)\r\n return;\r\n \r\n this.setState({ loadingSecciones: true }, ()=>{\r\n const id_curso_padre = this.state.valueCurso.ID_CURSO_PADRE;\r\n const alias = this.state.valueCurso.ALIAS;\r\n this.obtener_secciones(value.ID_CONTROL_MATRICULA, id_curso_padre, alias); \r\n });\r\n \r\n });\r\n}\r\n\r\nonChangeAutocompleteSeccion = (event, value)=>{ \r\n\r\nif (value !== null && value.ID_SECCION === -1){\r\n value= null;\r\n this.setState({ valueAula: null,\r\n valueCate: null,\r\n valueJornada: null,\r\n checked_1: false,\r\n checked_2: false,\r\n checked_3: false,\r\n checked_4: false,\r\n checked_5: false,\r\n checked_6: false,\r\n checked_7: false,\r\n horario: [],\r\n checkedSeccion: false,\r\n openModalSeccion: true }); \r\n}\r\n\r\nthis.setState({ valueSeccion: value,\r\n checked: false,\r\n checkedCal: false }, ()=> this.ponderaciones=[]);\r\n}\r\n\r\nvalidaciones = ()=>{\r\n\r\n const r = false;\r\n\r\n if (this.state.tipo_gestion!=3){\r\n\r\n \r\n\r\n if (funciones.isEmpty(this.state.valueCurso)){\r\n funciones.showToast(\"w\", \"Seleccione el curso\"); \r\n return r;\r\n } \r\n\r\n if (funciones.isEmpty(this.state.valuePeriodo)){\r\n funciones.showToast(\"w\", \"Seleccione el período\"); \r\n return r;\r\n } \r\n\r\n if (funciones.isEmpty(this.input1Ref.current.value)){\r\n funciones.showToast(\"w\", \"La nota es necesaria\"); \r\n return r;\r\n } \r\n\r\n if (funciones.isEmpty(this.state.valueSeccion)){\r\n funciones.showToast(\"w\", \"Seleccione una sección\"); \r\n return r;\r\n } \r\n\r\n if (funciones.isEmpty(this.state.selectedEstado)){\r\n funciones.showToast(\"w\", \"Seleccione el estado del curso\"); \r\n return r;\r\n }\r\n\r\n if (!this.state.checked){\r\n funciones.showToast(\"w\", \"Confirme que la información es correcta\"); \r\n return r;\r\n }\r\n}\r\n return true;\r\n}\r\n\r\nhandleOK = ()=>{\r\n\r\nif (!this.validaciones() /*|| this.state.readOnlyCali*/)\r\n return;\r\n\r\nthis.setState({ openBackDrop: true }, ()=>{\r\n\r\n const tipo_gestion = this.state.tipo_gestion;\r\n const id_seccion =(tipo_gestion === 1) ? this.state.valueSeccion.ID_SECCION : this.state.id_seccion_ ;\r\n const cuenta_alumno = this.state.valueAutoComplete.CUENTA_ALUMNO;\r\n const nota = this.state.tipo_gestion!=3? this.input1Ref.current.value : 0 ;\r\n const id_plan = this.state.selectedPlan;\r\n const id_curso_hijo = (tipo_gestion === 1) ? this.state.valueCurso.ID_CURSO_HIJO : 0;\r\n const nota1 = this.state.checkedCal ? this.state.valN1 : null ;\r\n const nota2 = this.state.valN2;\r\n const nota3 = this.state.valN3;\r\n const nota4 = this.state.valN4;\r\n const lab = this.state.valLab;\r\n const extra = this.state.valExt;\r\n const estatus_academico = this.state.selectedEstado;\r\n\r\n new Request\r\n .post(`${globales.ip}/insertacursos/curso`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .set('Content-Type', 'application/json')\r\n .send({ id_seccion, \r\n cuenta_alumno, \r\n nota, \r\n id_plan, \r\n id_curso_hijo,\r\n nota1,\r\n nota2, \r\n nota3,\r\n nota4,\r\n lab,\r\n extra,\r\n estatus_academico,\r\n ad_usuario: tokenInfo.user ,\r\n tipo_gestion\r\n })\r\n .retry(0)\r\n .timeout({ response: 15000, deadline: 30000, }) \r\n .end((err, res) => {\r\n \r\n if (err) { \r\n \r\n if (err.toString().substr(0,16) === 'Error: Forbidden')\r\n { \r\n window.location.reload();\r\n return;\r\n }\r\n \r\n this.setState({ openBackDrop: false }, ()=> { \r\n funciones.showToast('e', 'No hay conexión'); \r\n });\r\n \r\n return;\r\n }\r\n \r\n const rows = JSON.parse(res.text);\r\n\r\n this.setState({ openBackDrop: false }, ()=>{ \r\n if (rows.RESP === undefined){\r\n let {optionsCursos} = this.state;\r\n optionsCursos = optionsCursos.filter(x => x.ID_CURSO_HIJO !== id_curso_hijo);\r\n // this.input1Ref.current.value = 1;\r\n \r\n this.ponderaciones=[];\r\n this.setState({ rows, \r\n valueCurso: null, \r\n optionsCursos,\r\n valuePeriodo: null,\r\n valueSeccion: null,\r\n optionsSecciones: [],\r\n selectedEstado: \"\",\r\n checkedCal: false,\r\n checked: false, \r\n tipo_gestion:null,\r\n openModalConfirm:false,\r\n input1Ref:\"\",\r\n valueNota_:null,\r\n idRowSelected:null\r\n }, ()=>{\r\n \r\n });\r\n\r\n if(this.state.tipo_gestion===1){\r\n funciones.showToast(\"s\", \"El curso se agregó con éxito\");\r\n this.setState({ tipo_gestion:null }, ()=>{});\r\n }\r\n if(this.state.tipo_gestion===2){\r\n funciones.showToast(\"s\", \"El curso se modificó exitosamente.\");\r\n this.setState({ tipo_gestion:null, openModal: false }, ()=>{});\r\n }\r\n if(this.state.tipo_gestion===3){\r\n funciones.showToast(\"s\", \"El curso se ha Eliminado exitosamente.\");\r\n this.setState({ tipo_gestion:null, openModalConfirm:false }, ()=>{}); \r\n this.obtener_cursos_pendientes(cuenta_alumno, id_plan); \r\n }\r\n\r\n }\r\n else \r\n funciones.showToast(\"w\", rows[0].RESP);\r\n //this.setState({ openModalConfirm:false }, ()=>{});\r\n \r\n }); \r\n this.setState({ openModalConfirm:false }, ()=>{});\r\n });\r\n\r\n});\r\n\r\n}\r\n\r\nhandleChangeCheck = (event) => {\r\nconst {name, checked} = event.target;\r\n\r\nif (name === \"checkedCal\" && checked){\r\n \r\n if (funciones.isEmpty(this.state.valueSeccion))\r\n return;\r\n\r\n this.setState({ valN1: 1,\r\n valN2: null,\r\n valN3: null,\r\n valN4: null,\r\n valLab: null,\r\n valExt: null }, ()=> this.handleOpenCal());\r\n\r\nreturn;\r\n\r\n} \r\n\r\nthis.setState({ [name]: checked });\r\n\r\n}\r\n\r\nhandleCloseCal = ()=>{\r\n this.setState({ openModalCal: false });\r\n}\r\n\r\nhandleSetCal = ()=>{\r\n\r\nif (this.ponderaciones.length === 0){\r\n funciones.showToast(\"w\", \"No se obtuvieron las ponderaciones\");\r\n return;\r\n}\r\n\r\nlet total = 0;\r\nfor(let i=2; i<=5; i++){\r\n let val = this[\"input\"+i+\"Ref\"].current.value;\r\n total += funciones.isEmpty(val) ? 0 : parseInt(val); \r\n}\r\nconst valLab = this.input6Ref.current.value;\r\nconst valExt = this.input7Ref.current.value;\r\ntotal = total + (funciones.isEmpty(valLab) ? 0 : parseInt(valLab));\r\nconst rowsPond = this.ponderaciones.filter(x => Boolean(x.PERMITE_EXTRAORDINARIO));\r\n\r\nif (rowsPond.length > 0 && !funciones.isEmpty(valExt)){\r\n let valMenor = 0;\r\n let valTmp = 0;\r\n \r\n rowsPond.map((item, index)=>{\r\n \r\n valTmp = this[\"input\"+(item.ID_PONDERACION + 1)+\"Ref\"].current.value;\r\n\r\n if (index === 0)\r\n valMenor = parseInt(valTmp);\r\n \r\n if (parseInt(valTmp) < parseInt(valMenor))\r\n valMenor = parseInt(valTmp);\r\n\r\n return item;\r\n });\r\n\r\n if (!funciones.isEmpty(valExt) && parseInt(valExt) > valMenor)\r\n total = total + parseInt(valExt) - valMenor;\r\n \r\n}\r\n\r\nthis.input1Ref.current.value = total;\r\nif (total >100){\r\n funciones.showToast(\"w\", \"Las calificaciones no deben sobrepasar el 100%\");\r\n \r\n return;\r\n}\r\n\r\n this.setState({ valN1: funciones.isEmpty(this.input2Ref.current.value) ? null : parseInt(this.input2Ref.current.value),\r\n valN2: funciones.isEmpty(this.input3Ref.current.value) ? null : parseInt(this.input3Ref.current.value),\r\n valN3: funciones.isEmpty(this.input4Ref.current.value) ? null : parseInt(this.input4Ref.current.value),\r\n valN4: funciones.isEmpty(this.input5Ref.current.value) ? null : parseInt(this.input5Ref.current.value),\r\n valLab: funciones.isEmpty(this.input6Ref.current.value) ? null : parseInt(this.input6Ref.current.value),\r\n valExt: funciones.isEmpty(this.input7Ref.current.value) ? null : parseInt(this.input7Ref.current.value),\r\n checkedCal: !funciones.isEmpty(this.input2Ref.current.value) ? true : false }, ()=> this.handleCloseCal());\r\n\r\n\r\n}\r\n\r\nhandleOpenCal = ()=>{\r\n this.setState({ openModalCal: this.state.tieneCalificaciones_===1? true : false \r\n ,openModalSinCalificaciones : this.state.tieneCalificaciones_===0? true : false \r\n ,titleModal:\"Calificaciones\"\r\n ,textModal:\" No hay registro de calificaciones.\"\r\n });\r\n \r\n}\r\n\r\nonEnteringCal = ()=>{\r\n\r\nif (this.state.readOnlyCali)\r\nthis.setState({ loadingCali: true }, ()=>{ \r\n const id_seccion = this.state.rows.find(x => x.ID_SECCION_CLIENTE === this.state.idRowSelected).ID_SECCION;\r\n const cuenta = this.state.valueAutoComplete.CUENTA_ALUMNO;\r\n this.obtener_calificaciones(cuenta, id_seccion);\r\n});\r\n\r\nelse{ \r\n\r\nif (this.ponderaciones.length > 0)\r\n return;\r\n\r\nthis.setState({ loadingPond: true }, ()=>{\r\n const id_seccion = this.state.valueSeccion.ID_SECCION;\r\n this.obtener_ponderaciones(id_seccion);\r\n});\r\n\r\n}\r\n\r\n}\r\n\r\nobtener_ponderaciones = (id_seccion)=>{\r\n\r\nnew Request\r\n .get(`${globales.ip}/insertacursos/seccion/ponderaciones/${id_seccion}`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .retry(1)\r\n .timeout({ response: 15000, deadline: 30000, }) \r\n .end((err, res) => {\r\n \r\n if (err) { \r\n \r\n if (err.toString().substr(0,16) === 'Error: Forbidden')\r\n { \r\n window.location.reload();\r\n return; \r\n }\r\n \r\n this.setState({ loadingPond: false }, ()=>{ \r\n funciones.showToast('e', 'No hay conexión'); \r\n }); \r\n \r\n return;\r\n }\r\n \r\n this.ponderaciones = JSON.parse(res.text); \r\n const maxN1 = this.ponderaciones.find(x => x.ID_PONDERACION ===1);\r\n const maxN2 = this.ponderaciones.find(x => x.ID_PONDERACION ===2);\r\n const maxN3 = this.ponderaciones.find(x => x.ID_PONDERACION ===3);\r\n const maxN4 = this.ponderaciones.find(x => x.ID_PONDERACION ===4);\r\n const maxExt = this.ponderaciones.find(x => x.ID_PONDERACION ===5);\r\n const maxLab = this.ponderaciones.find(x => x.ID_PONDERACION ===6);\r\n const tieneExt = Boolean(this.ponderaciones.find(x => Boolean(x.PERMITE_EXTRAORDINARIO)));\r\n \r\n this.setState({ maxN1: maxN1 === undefined ? 25 : maxN1.PONDERACION,\r\n maxN2: maxN2 === undefined ? 25 : maxN2.PONDERACION,\r\n maxN3: maxN3 === undefined ? 25 : maxN3.PONDERACION,\r\n maxN4: maxN4 === undefined ? 25 : maxN4.PONDERACION,\r\n maxExt: maxExt === undefined ? null : maxExt.PONDERACION,\r\n maxLab: maxLab === undefined ? null : maxLab.PONDERACION,\r\n tieneExt,\r\n loadingPond: false }); \r\n \r\n });\r\n\r\n}\r\n\r\nobtener_calificaciones = (cuenta, id_seccion)=>{\r\n\r\n new Request\r\n .get(`${globales.ip}/insertacursos/curso/calificaciones/${cuenta}/${id_seccion}`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .retry(1)\r\n .timeout({ response: 15000, deadline: 30000, }) \r\n .end((err, res) => {\r\n \r\n if (err) { \r\n \r\n if (err.toString().substr(0,16) === 'Error: Forbidden')\r\n {\r\n \r\n window.location.reload();\r\n return;\r\n \r\n }\r\n \r\n this.setState({ loadingCali: false }, ()=>{ \r\n funciones.showToast('e', 'No hay conexión'); \r\n }); \r\n \r\n return;\r\n }\r\n \r\n const rows = JSON.parse(res.text); \r\n let valN1, valN2, valN3, valN4, valLab, valExt;\r\n let colorN1, colorN2, colorN3, colorN4;\r\n let maxN1, maxN2, maxN3, maxN4, maxExt, maxLab;\r\n const colorExt = \"green\";\r\n rows.map((item)=>{\r\n if (item.ID_PONDERACION === 1){\r\n valN1 = item.VALOR;\r\n colorN1 = Boolean(item.PERMITE_EXTRAORDINARIO) ? colorExt : undefined;\r\n maxN1 = item.VMAX;\r\n }\r\n if (item.ID_PONDERACION === 2){ \r\n valN2 = item.VALOR; \r\n colorN2 = Boolean(item.PERMITE_EXTRAORDINARIO) ? colorExt : undefined;\r\n maxN2 = item.VMAX;\r\n }\r\n if (item.ID_PONDERACION === 3){\r\n valN3 = item.VALOR;\r\n colorN3 = Boolean(item.PERMITE_EXTRAORDINARIO) ? colorExt : undefined;\r\n maxN3 = item.VMAX;\r\n }\r\n if (item.ID_PONDERACION === 4){ \r\n valN4 = item.VALOR;\r\n colorN4 = Boolean(item.PERMITE_EXTRAORDINARIO) ? colorExt : undefined;\r\n maxN4 = item.VMAX;\r\n }\r\n if (item.ID_PONDERACION === 5){\r\n valExt = item.VALOR;\r\n maxExt = item.VMAX;\r\n }\r\n if (item.ID_PONDERACION === 6){\r\n valLab = item.VALOR;\r\n maxLab = item.VMAX;\r\n }\r\n\r\n return item;\r\n });\r\n this.setState({ valN1, \r\n valN2,\r\n valN3,\r\n valN4,\r\n valExt,\r\n valLab,\r\n colorN1,\r\n colorN2,\r\n colorN3,\r\n colorN4,\r\n maxN1, \r\n maxN2, \r\n maxN3, \r\n maxN4, \r\n maxExt, \r\n maxLab,\r\n loadingCali: false }); \r\n \r\n });\r\n\r\n\r\n}\r\n\r\nonChange = (event)=>{\r\n\r\n if (this.state.readOnlyCali)\r\n return;\r\n\r\n const {name} = event.target;\r\n const pe_ext = this.ponderaciones.find(x => \"N\"+x.ID_PONDERACION === name);\r\n this.setState({ [\"color\"+name]: pe_ext !== undefined && Boolean(pe_ext.PERMITE_EXTRAORDINARIO) ? \"green\" : undefined });\r\n}\r\n\r\nhandleRowClick = (idRow) => (event) => {\r\n \r\n const rowSelected = this.state.rows.find(x => x.ID_SECCION_CLIENTE === idRow);\r\n this.state.valueCurso_ = rowSelected.DESCRIPCION_CURSO\r\n this.state.valuePeriodo_ = \"Período \" + rowSelected.PERIODO + \" Año \" + rowSelected.ANIO\r\n this.state.valueNota_ = rowSelected.NOTA\r\n this.state.valueSeccion_ = rowSelected.SECCION\r\n this.state.tieneCalificaciones_ = rowSelected.TIENE_CALIFICACIONES\r\n this.state.selectedEstatusAcademicoAbrev_ = rowSelected.ESTATUS_ACADEMICO_ABREV\r\n this.obtener_estados()\r\n\r\nconst lista = [{ABREVIATURA:rowSelected.ESTATUS_ACADEMICO_ABREV ,DESCRIPCION:rowSelected.ESTATUS_ACADEMICO}];\r\nthis.state.selectedEstado_=lista\r\n\r\n this.setState({ idRowSelected: idRow \r\n ,valueCurso:this.state.valueCurso_\r\n });\r\n \r\n\r\n}\r\n\r\nhandleClickCali = ()=>{\r\n this.setState({ valN1: null,\r\n valN2: null,\r\n valN3: null,\r\n valN4: null,\r\n valExt: null,\r\n valLab: null,\r\n readOnlyCali: true }, ()=>{\r\n this.handleOpenCal();\r\n });\r\n \r\n}\r\n\r\nobtener_estados = ()=>{\r\n\r\nnew Request\r\n .get(`${globales.ip}/insertacursos/curso/estados`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .retry(1)\r\n .timeout({ response: 15000, deadline: 30000, }) \r\n .end((err, res) => {\r\n \r\n if (err) { \r\n \r\n if (err.toString().substr(0,16) === 'Error: Forbidden')\r\n { \r\n window.location.reload();\r\n return;\r\n }\r\n \r\n this.setState({ isLoadingMain: false }, ()=>{ \r\n funciones.showToast('e', 'No hay conexión'); \r\n }); \r\n \r\n return;\r\n }\r\n \r\n const rows = JSON.parse(res.text); \r\n const itemsSelectEstado = rows.map((item, i) =>{\r\n return ({item.DESCRIPCION});\r\n }); \r\n this.setState({ itemsSelectEstado , selectedEstado: this.state.selectedEstatusAcademicoAbrev_ });\r\n\r\n });\r\n\r\n}\r\n\r\nhandleCloseSeccion = ()=>{\r\nthis.setState({ openModalSeccion: false });\r\n}\r\n\r\nobtener_aulas=()=>{\r\n\r\nnew Request\r\n .get(`${globales.ip}/insertacursos/secciones/aulas`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .retry(1)\r\n .timeout({ response: 15000, deadline: 30000, }) \r\n .end((err, res) => {\r\n \r\n if (err) { \r\n \r\n if (err.toString().substr(0,16) === 'Error: Forbidden')\r\n { \r\n window.location.reload();\r\n return; \r\n }\r\n \r\n funciones.showToast('e', 'No hay conexión'); \r\n\r\n return;\r\n }\r\n \r\n const optionsAulas = JSON.parse(res.text); \r\n this.setState({ optionsAulas }); \r\n \r\n });\r\n\r\n}\r\n\r\nobtener_catedraticos = ()=>{\r\n new Request\r\n .get(`${globales.ip}/insertacursos/secciones/catedraticos`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .retry(1)\r\n .timeout({ response: 15000, deadline: 30000, }) \r\n .end((err, res) => {\r\n \r\n if (err) { \r\n \r\n if (err.toString().substr(0,16) === 'Error: Forbidden')\r\n { \r\n window.location.reload();\r\n return; \r\n }\r\n \r\n funciones.showToast('e', 'No hay conexión'); \r\n \r\n return;\r\n }\r\n \r\n const optionscate = JSON.parse(res.text); \r\n this.setState({ optionscate }); \r\n\r\n });\r\n}\r\n\r\nobtener_jornadas = ()=>{\r\n new Request\r\n .get(`${globales.ip}/insertacursos/secciones/jornadas`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .retry(1)\r\n .timeout({ response: 15000, deadline: 30000, }) \r\n .end((err, res) => {\r\n \r\n if (err) { \r\n \r\n if (err.toString().substr(0,16) === 'Error: Forbidden')\r\n { \r\n window.location.reload();\r\n return; \r\n }\r\n \r\n funciones.showToast('e', 'No hay conexión'); \r\n \r\n return;\r\n }\r\n \r\n const optionsJornadas = JSON.parse(res.text); \r\n this.setState({ optionsJornadas }); \r\n\r\n });\r\n}\r\n\r\nonChangeAutocompleteAula = (event, value)=>{\r\n this.setState({ valueAula: value });\r\n}\r\n\r\nonChangeAutocompleteCate = (event, value) =>{\r\n this.setState({ valueCate: value });\r\n}\r\n\r\nonChangeAutocompleteJornada = (event, value)=>{\r\n this.setState({ valueJornada: value });\r\n}\r\n\r\nsetHorario = (dia, checked)=>{\r\n \r\nlet {horario} = this.state; \r\n\r\nif (checked)\r\n horario.push(dia);\r\nelse\r\n horario = horario.filter(x => x.value !== dia.value);\r\n\r\nhorario.sort(function(a, b){return a.value-b.value});\r\nthis.setState({ horario });\r\n\r\n}\r\n\r\nvalidaciones_seccion = ()=>{\r\n\r\nconst r = false;\r\n\r\nif (funciones.isEmpty(this.state.valueAula)){\r\n funciones.showToast(\"w\", \"Debe seleccionar el aula\");\r\n return r;\r\n}\r\n\r\nif (funciones.isEmpty(this.state.valueCate)){\r\n funciones.showToast(\"w\", \"Debe seleccionar el catedrático\");\r\n return r;\r\n}\r\n\r\nif (funciones.isEmpty(this.state.valueJornada)){\r\n funciones.showToast(\"w\", \"Debe seleccionar la jornada\");\r\n return r;\r\n}\r\n\r\nif (this.state.horario.length === 0){\r\n funciones.showToast(\"w\", \"La sección debe tener horario\");\r\n return r;\r\n}\r\n\r\nif (!Boolean(this.state.checkedSeccion)){\r\n funciones.showToast(\"w\", \"Confirme que la información brindada es correcta\");\r\n return r;\r\n}\r\n\r\nreturn true;\r\n\r\n}\r\n\r\ncrearSeccion = ()=>{\r\n \r\n if (!this.validaciones_seccion())\r\n return; \r\n\r\nthis.setState({ openBackDrop: true }, ()=>{\r\n\r\n const id_curso_padre = this.state.valueCurso.ID_CURSO_PADRE;\r\n const cuenta_catedratico = this.state.valueCate.CUENTA_CATEDRATICO;\r\n const id_aula = this.state.valueAula.ID_AULA;\r\n const id_jornada = this.state.valueJornada.ID_JORNADA;\r\n const {horario} = this.state;\r\n const inicio = horario[horario.length-1].inicio; \r\n const fin = horario[horario.length-1].fin; \r\n const id_control_matricula = this.state.valuePeriodo.ID_CONTROL_MATRICULA;\r\n const dias = this.dias(horario); \r\n \r\n new Request\r\n .post(`${globales.ip}/insertacursos/seccion`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .set('Content-Type', 'application/json')\r\n .send({ cuenta_catedratico,\r\n id_curso_padre, \r\n id_aula, \r\n inicio,\r\n fin,\r\n id_jornada,\r\n dias: dias.dias,\r\n str_dias: dias.str_dias,\r\n id_control_matricula, \r\n ad_usuario: tokenInfo.user })\r\n .retry(0)\r\n .timeout({ response: 15000, deadline: 30000, }) \r\n .end((err, res) => {\r\n \r\n if (err) { \r\n \r\n if (err.toString().substr(0,16) === 'Error: Forbidden')\r\n {\r\n window.location.reload();\r\n return; \r\n }\r\n \r\n this.setState({ openBackDrop: false }, ()=> { \r\n funciones.showToast('e', 'No hay conexión'); \r\n });\r\n \r\n return;\r\n }\r\n \r\n const rows = JSON.parse(res.text); \r\n this.setState({ openBackDrop: false }, ()=>{\r\n if (rows[0].RESP === undefined)\r\n this.setState({ optionsSecciones: rows }, ()=>{\r\n funciones.showToast(\"s\", \"Se ha creado la sección\");\r\n this.handleCloseSeccion();\r\n });\r\n else\r\n funciones.showToast(\"w\", rows[0].RESP);\r\n });\r\n\r\n });\r\n\r\n});\r\n\r\n}\r\n\r\ndias = (horario)=>{\r\n\r\n let dias = \"\";\r\n let str_dias = \"\";\r\n horario.map((item, index)=>{\r\n dias += item.abrev + ((index+1 < horario.length) ? \"-\" : \"\");\r\n str_dias += item.value+\"(\"+item.inicio+\",\"+item.fin+\")\"+ ((index+1 < horario.length) ? \"&\" : \"\");\r\n return item;\r\n });\r\n\r\n return {dias, str_dias}\r\n}\r\n\r\ncomponentDidMount() { \r\n\r\n tokenInfo = Auth.getProfile(); //Token decodificado\r\n\r\n this.setState({ isLoggin: tokenInfo.plataforma !== undefined ? true : false }, ()=>{\r\n\r\n if (tokenInfo.plataforma === 1) // Usuario Admin\r\n { \r\n this.filtersClientes('-');\r\n this.obtener_periodos(); \r\n this.obtener_estados();\r\n this.obtener_aulas();\r\n this.obtener_catedraticos();\r\n this.obtener_jornadas();\r\n }\r\n \r\n this.setState({ heightTableMain: funciones.getHeightTableMain(movil, this).heightTable }, ()=>{\r\n if (!movil)\r\n document.getElementById('Est_IC').focus(); \r\n }); \r\n\r\n }); \r\n \r\n}\r\n\r\nrender() {\r\nconst { classes } = this.props;\r\n\r\n if (this.state.isLoggin === true)\r\n {\r\n return (\r\n \r\n \r\n \r\n {\r\n (() => {\r\n \r\n if (tokenInfo.plataforma === 1) //Si es Usuario Admin\r\n {\r\n \r\n return (\r\n \r\n
\r\n option.CUENTA_ALUMNO + ' - ' + option.NOMBRE_COMPLETO}\r\n style={{ width: movil ? '100%' : '430px' }}\r\n renderInput={(params) => \r\n {this.state.loadingClientes ? \r\n \r\n \r\n \r\n :\r\n this.state.valueAutoComplete === null ?\r\n \r\n \r\n \r\n \r\n \r\n : null\r\n }\r\n {params.InputProps.endAdornment}\r\n \r\n ),\r\n }}\r\n fullWidth\r\n />}\r\n renderOption={RenderOption} \r\n onChange={this.onChangeAutocomplete}\r\n open={this.state.openAutoComplete}\r\n loading={this.state.loadingClientes}\r\n ListboxComponent={virtual.ListboxComponent} \r\n value={this.state.valueAutoComplete} \r\n className={classes.textField} \r\n disableClearable={this.state.loadingMain} \r\n onInputChange={this.onChangeInput}\r\n popupIcon={null}\r\n PaperComponent={(props)=>()} \r\n />\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n : null\r\n }}\r\n />\r\n }\r\n label=\"Calificaciones\"\r\n className=\"disableTouchOptions\"\r\n style={{ marginLeft: 10 }}\r\n disabled={funciones.isEmpty(this.state.valueSeccion) || funciones.isEmpty(this.state.selectedEstado) || this.state.selectedEstado === \"S\" || this.state.tipo_gestion===2}\r\n />\r\n \r\n \r\n }\r\n label=\"Confirmo que estoy seguro(a) que la información anterior es correcta.\"\r\n className=\"disableTouchOptions\"\r\n style={{ marginTop: 10, marginLeft: 10 }}\r\n />\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n Calificaciones\r\n \r\n \r\n \r\n \r\n \r\n {this.state.loadingCali ? \r\n
Obteniendo calificaciones... \r\n :\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
Los parciales con este color de fuente permiten extraordinario
\r\n
\r\n \r\n }\r\n \r\n \r\n {this.state.readOnlyCali ? \r\n
\r\n : this.state.loadingPond ? \r\n
Obteniendo ponderaciones... : \r\n } \r\n \r\n
\r\n\r\n \r\n Crear sección\r\n \r\n \r\n \r\n \r\n \r\n option.CODIGO}\r\n renderInput={(params) => } \r\n onChange={this.onChangeAutocompleteAula}\r\n value={this.state.valueAula}\r\n disabled={!funciones.isEmpty(this.state.horario) && !funciones.isEmpty(this.state.valueAula)}\r\n PaperComponent={(props)=>()} \r\n /> \r\n option.CUENTA_CATEDRATICO + \" - \" + option.NOMBRE_COMPLETO.trim()}\r\n renderInput={(params) => } \r\n onChange={this.onChangeAutocompleteCate}\r\n renderOption={RenderOptionCate} \r\n value={this.state.valueCate}\r\n disabled={!funciones.isEmpty(this.state.horario) && !funciones.isEmpty(this.state.valueCate)}\r\n PaperComponent={(props)=>()} \r\n /> \r\n option.DESCRIPCION}\r\n renderInput={(params) => } \r\n onChange={this.onChangeAutocompleteJornada}\r\n value={this.state.valueJornada}\r\n PaperComponent={(props)=>()} \r\n />\r\n } label=\"Usar último horario fijado\" style={{ marginLeft: movil ? 3 : undefined }}/>\r\n \r\n \r\n \r\n {dias.map((item, index)=>{ \r\n return ()\r\n })}\r\n \r\n \r\n {this.state.horario.map((item, index)=>{\r\n return ({item.abrev}} \r\n style={{ marginBottom: 5 }}\r\n label={item.nombre+\" (\"+funciones.getTime(item.inicio, 1)+\" - \"+funciones.getTime(item.fin, 1)+\")\"} />)\r\n })}\r\n \r\n \r\n \r\n }\r\n label=\"Confirmo que estoy seguro(a) que la información anterior es correcta.\"\r\n className=\"disableTouchOptions\"\r\n style={{ marginTop: 10, marginLeft: 5 }}\r\n /> \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n Procesando...\r\n \r\n \r\n\r\n
\r\n \r\n );\r\n\r\n } \r\n \r\n })()\r\n\r\n }\r\n\r\n \r\n \r\n \r\n );\r\n }\r\nelse if (this.state.isLoggin === false)\r\n{\r\n //Auth.logout();\r\n window.location.reload();\r\n return; //(())\r\n}\r\nreturn null;\r\n\r\n}//FIN RENDER\r\n}\r\n\r\n)","import React from 'react';\r\nimport CustomTable from '../../../components/CustomTable';\r\nimport {globales, colores, funciones } from '../../../global';\r\nimport AuthService from '../../../AuthService';\r\nimport Request from 'superagent';\r\nimport Paper from '@material-ui/core/Paper';\r\nimport BarraBotones from '../../../components/Barra_menu';\r\nimport {makeStyles, withStyles} from '@material-ui/core/styles';\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport DialogActions from '@material-ui/core/DialogActions';\r\nimport Backdrop from '@material-ui/core/Backdrop';\r\nimport CircularProgress from '@material-ui/core/CircularProgress';\r\nimport TextField from '@material-ui/core/TextField';\r\nimport DialogContent from '@material-ui/core/DialogContent';\r\nimport IconButton from '@material-ui/core/IconButton';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\r\nimport Checkbox from '@material-ui/core/Checkbox';\r\nimport WarningIcon from '@material-ui/icons/Warning';\r\nimport Button from '@material-ui/core/Button';\r\nimport PersonAddIcon from '@material-ui/icons/PersonAdd';\r\nimport Chip from '@material-ui/core/Chip';\r\nimport Avatar from '@material-ui/core/Avatar';\r\nimport PersonIcon from '@material-ui/icons/Person';\r\nimport ScheduleIcon from '@material-ui/icons/Schedule';\r\nimport Autocomplete from '@material-ui/lab/Autocomplete';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport Select from '../../../components/Select';\r\nimport {KeyboardDatePicker, MuiPickersUtilsProvider} from \"@material-ui/pickers\";\r\nimport DateFnsUtils from \"@date-io/date-fns\";\r\nimport esLocale from \"date-fns/locale/es\";\r\nimport 'date-fns';\r\nimport MenuItem from '@material-ui/core/MenuItem';\r\nimport Stepper from '@material-ui/core/Stepper';\r\nimport Step from '@material-ui/core/Step';\r\nimport StepLabel from '@material-ui/core/StepLabel';\r\nimport clsx from 'clsx';\r\nimport CheckIcon from '@material-ui/icons/Check';\r\nimport SchoolIcon from '@material-ui/icons/School';\r\nimport SaveIcon from '@material-ui/icons/Save';\r\nimport {Table} from '@devexpress/dx-react-grid-material-ui';\r\n\r\nlet Auth = new AuthService();\r\nlet tokenInfo = [];\r\n\r\nvar movil=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);\r\n\r\nconst styles = theme => ({\r\n\r\npaper: { \r\n borderRadius: globales.border_dialog,\r\n minWidth: !movil ? '75%' : undefined, \r\n height: !movil ? '600px' : undefined,\r\n maxHeight: !movil ? '98%' : undefined\r\n }, \r\npaperConfirm: { \r\n borderRadius: globales.border_dialog,\r\n minWidth: '320px', \r\n maxWidth: '320px', \r\n},\t\r\ncloseButton: {\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\nbackdrop: {\r\n zIndex: 500000,\r\n color: '#fff', \r\n flexDirection: 'column'\r\n},\r\nformControlSelect: {\r\n width: '100%', \r\n textAlign: 'left',\r\n},\r\n\r\n});\r\nconst columnsPlanes = [ \r\n {name: 'ID_PLAN', title: 'ID_PLAN'},\r\n {name: 'DESCRIPCION_PLAN', title: 'DESCRIPCION_PLAN'},\r\n {name: 'DESCRIPCION_NIVEL', title: 'DESCRIPCION_NIVEL'},\r\n];\r\n\r\nconst DatosPersonales = (props) =>{\r\n\r\n const {classes, _this} = props;\r\n \r\n return
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n option.NOMBRE_PAIS}\r\n renderInput={(params) => }\r\n fullWidth\r\n onChange={_this.onChangePaisNac}\r\n getOptionDisabled={(option) => !Boolean(option.ESTADO_PAIS)}\r\n PaperComponent={(props)=>()}\r\n />\r\n \r\n \r\n option.NOMBRE_DEPARTAMENTO}\r\n renderInput={(params) => }\r\n fullWidth\r\n onChange={_this.onChangeDepNac}\r\n getOptionDisabled={(option) => !Boolean(option.ESTADO_DEPARTAMENTO)}\r\n PaperComponent={(props)=>()}\r\n />\r\n \r\n \r\n option.NOMBRE_MUNICIPIO}\r\n renderInput={(params) => }\r\n fullWidth\r\n onChange={_this.onChangeMunNac}\r\n getOptionDisabled={(option) => !Boolean(option.ESTADO_MUNICIPIO)}\r\n PaperComponent={(props)=>()}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n



\r\n \r\n \r\n\r\n \r\n \r\n Procesando...\r\n \r\n\r\n \r\n );\r\n\r\n } \r\n \r\n })()\r\n\r\n }\r\n \r\n );\r\n }\r\nelse if (this.state.isLoggin === false)\r\n{\r\n //Auth.logout();\r\n window.location.reload();\r\n return; //(())\r\n}\r\nreturn null;\r\n\r\n}//FIN RENDER\r\n}\r\n\r\n)\r\n"],"sourceRoot":""}