{"version":3,"sources":["pages/matricula/retiros.js","pages/matricula/migracionClases.js"],"names":["Auth","AuthService","tokenInfo","movil","test","navigator","userAgent","checkId","color_periodo_anterior","widthTable","window","screen","width","globales","tabla","marginleft","marginright","columns","name","title","columnExtensions","columnName","align","grouping","grouping_nivel","columnsRetiro","columnExtensionsRetiro","wordWrapEnabled","settingFilter","predicate","value","filter","row","funciones","formatCurrency","IntegratedFiltering","defaultPredicate","getTime","RowId","ID_SECCION_CLIENTE","GroupCellContent","_ref","column","color","anterior","compoundKey","search","_jsx","style","children","VirtualTable_cellComponent","props","Table","Cell","ES_ANTERIOR","INICIO","FIN","VALOR","CHECKED","PORCENTAJE","Table_cellComponentRetiro","_ref2","styleCell","border","paddingBottom","fontWeight","KEY","undefined","TableSelectionCellComponent","estado","_ref3","paddingLeft","paddingTop","CircularProgress","size","TableSelection","ColumnFixed_cellComponent","_ref4","showRightDivider","showLeftDivider","tableRow","key","TableFixedColumns","background","height","backgroundColor","RenderOption","option","_jsxs","display","flexDirection","alignItems","ListItemAvatar","minWidth","Avatar","PersonIcon","CUENTA_ALUMNO","NOMBRE_COMPLETO","withStyles","theme","paper","borderRadius","border_dialog","maxWidth","closeButton","position","right","spacing","top","palette","grey","backdrop","zIndex","container","justifyContent","paddingRight","textField","marginRight","paperTitle","textAlign","verticalAlign","lineHeight","margin","divSecondary","marginBottom","React","Component","constructor","super","razonRef","createRef","tablaRef","onBlurAutoComplete","this","state","openAutoComplete","setState","onChangeInput","e","target","toString","trim","length","valueAutoComplete","onChangeAutocomplete","event","rows","handleChangeCuenta","filtersClientes","Request","get","ip","set","getToken","retry","timeout","response","deadline","end","err","res","substr","location","reload","optionAutocomplete","loadingClientes","showToast","JSON","parse","text","onRefresh","loadingMain","cuenta","plataforma","user","foundGroup","allGroups","periodo","map","item","find","x","DESCRIPCION_NIVEL","PERIODO","push","expandedGroups","periodo_anterior","changeExpandedGroups","changeSelection","selection","rowChecked","rowsRetiro","LABEL","VALUE","DESCRIPCION_CURSO","DIAS","openModal","es_anterior","handleClose","handleRetiroOk","isEmpty","current","focus","loadingCheck","post","send","id_seccion_cliente","monto_reconocido","parseFloat","porcentaje","razon","cuenta_alumno","ad_usuario","RESP","l","i","isLoggin","heightTableMain","openModalConfirmation","botones_retiro","icono","toolt","nombre","onclick","componentDidMount","getProfile","getHeightTableMain","heightTable","document","getElementById","render","classes","Fragment","Paper","className","square","Autocomplete","id","options","getOptionLabel","renderInput","params","TextField","label","variant","onBlur","InputProps","endAdornment","Fade","in","transitionDelay","unmountOnExit","Tooltip","placement","IconButton","onClick","RefreshIcon","fullWidth","renderOption","onChange","open","loading","ListboxComponent","virtual","disableClearable","onInputChange","popupIcon","PaperComponent","elevation","Typography","component","ref","marginLeft","marginleft_movil","marginright_movil","CustomTable","Columns","Rows","Grouping","TableColumnExtensions","columnWidths","DefaultHiddenColumnNames","ExpandedGroups","ChangeExpandedGroups","getRowId","enabledFilterRows","showSelectionColumn","groupContentComponent","ChangeSelection","tableSelectionCellComponent","leftColumnsFixed","COLUMN_TYPE","columnFixedCellComponent","FilteringColumnExtensions","Dialog","DialogTitle","CloseIcon","fontSize","DialogContent","Grid","cellComponent","required","inputProps","maxLength","marginTop","toLowerCase","DialogActions","BarraBotones","botones","Backdrop","invisible","transitionDuration","datosSelectMigracion","datosSelectMod","selectedMigrarTmp","colorOk","colorWarning","columnsDetail","columnExtensionsDetail","totalSummaryItems","type","replace","VirtualTable_cellComponentMain","ESTATUS_FINANCIERO","colores","color_disabled","ColumnHeader_cellComponent","TableHeaderRow","TableSelectionCellComponentMain","StubCell","Checkbox","disabled","CheckIcon","WarningIcon","stubCellComponentTable","rowsProcess","rowsAsignCount","optionSelected","colSpan","tableColumn","totalOk","labelOk","labelError","rowId","NUMERO_SECCION","NOM_MODALIDAD","paperConfirm","maxHeight","formControlSelect","tooltip","paperRef","tablaDetailRef","dialogActionsRef","migrarSelectRef","modSelectRef","onChangeAutocompleteA","newValue","optionAutocompleteB","valueAutoCompleteB","valueAutoCompleteA","obtener_clientes","onChangeAutocompleteB","seccion_origen","ID_SECCION","seccionesDestino","optionAutocompleteA","ID_CURSO","ID_ESTADO_MODALIDAD","includeItems","onClickExport","id_estado_mod_origen","id_estado_mod_destino","same","modSel","respVerify","verifyMod","selectedMigrar","selectedMod","ID_MODALIDAD_CURSO_DEPENDIENTE","ID_MODALIDAD_CURSO_AUTONOMA","disabledSelectMod","openModalConfirm","blur","h0","h1","HIBRIDA","handleCloseExport","exportOk","openBackDrop","strClientes","index","hibrida","id_seccion_origen","id_seccion_destino","str_clientes","migracion","findRow","filterRows","filterSelection","ERROR","NEW_ID_SECCION_CLIENTE","MODALIDAD","selectionCount","rowsDetail","infoDetail","infoRow","loadingRow","ID_PLAN","currentRows","onEntering","heightTableDetail","getHeightTableDialog","handleChangeMigrar","handleChangeMod","obtener_secciones","loadingSecciones","MenuItem","botones_exportar","Divider","orientation","flexItem","Button","textTransform","startIcon","showSelectAll","Selection","TransitionProps","fullScreen","Link","cursor","rowHeaderCellComponent","totalItems","Select","Label","Datos","Selected","Style","Outlined","Ref","shrink"],"mappings":"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","file":"static/js/main~ebd73782.b6bfb779.chunk.js","sourcesContent":["import React from 'react';\r\nimport CustomTable from '../../components/CustomTable';\r\nimport {globales, 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 {Table, Grid, TableSelection, TableFixedColumns} from '@devexpress/dx-react-grid-material-ui';\r\nimport {IntegratedFiltering} from '@devexpress/dx-react-grid';\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 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 Fade from '@material-ui/core/Fade';\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\nlet checkId = undefined;\r\n\r\nvar color_periodo_anterior='red';\r\n\r\nconst styles = theme => ({\r\n \r\npaper: { \r\n borderRadius: globales.border_dialog,\r\n minWidth: !movil ? '500px' : \"98%\", \r\n maxWidth: !movil ? '500px' : \"98%\", \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: \"center\",\r\n flexDirection: !movil ? \"row\" : \"column\",\r\n paddingTop: \"2px\",\r\n paddingBottom: \"5px\", \r\n paddingLeft: theme.spacing(1),\r\n paddingRight: theme.spacing(1)\r\n},\r\ntextField: {\r\n marginRight: !movil ? theme.spacing(1) : undefined, \r\n},\r\npaperTitle: { \r\n height: '40px', \r\n textAlign: 'center',\r\n verticalAlign: 'middle',\r\n lineHeight: '40px',\r\n margin: \"1px \" + globales.tabla.marginright + \"px 0px \" + globales.tabla.marginleft + \"px\", \r\n},\r\ndivSecondary: {\r\n marginBottom: '10px'\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: 'PERIODO', title: 'PERIODO'}, \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: 'CREDITOS', title: 'Uv'},\r\n { name: 'SECCION_DIAS', title: 'Dias'},\r\n { name: 'INICIO', title: 'Desde'},\r\n { name: 'FIN', title: 'Hasta'},\r\n { name: 'AULA', title: 'Aula'}, \r\n { name: 'VALOR', title: 'Valor'},\r\n { name: 'PORCENTAJE', title: '% Retiro'},\r\n { name: 'DESCRIPCION_NIVEL', title: 'DESCRIPCION_NIVEL'},\r\n];\r\nconst columnExtensions = [\r\n { columnName: 'PERIODO', width: 0},\r\n { columnName: 'CODIGO_CURSO', width: widthTable * 0.07 },\r\n { columnName: 'DESCRIPCION_CURSO', width: !movil ? widthTable * 0.24 : 280},\r\n { columnName: 'CREDITOS', width: widthTable * 0.06, align: 'center'},\r\n { columnName: 'SECCION_DIAS', width: widthTable * 0.07, align: 'center'}, \r\n { columnName: 'INICIO', width: widthTable * 0.07, align: 'center'},\r\n { columnName: 'FIN', width: widthTable * 0.07, align: 'center'}, \r\n { columnName: 'AULA', width: widthTable * 0.07, align: 'center'}, \r\n { columnName: 'VALOR', width: widthTable * 0.08, align: 'center'},\r\n { columnName: 'PORCENTAJE', width: widthTable * 0.08, align: 'center'},\r\n { columnName: 'ID_SECCION_CLIENTE', width: 0},\r\n { columnName: 'DESCRIPCION_NIVEL', width: 0},\r\n];\r\n\r\nconst grouping = [{ columnName: 'PERIODO' },{ columnName: 'DESCRIPCION_NIVEL' }];\r\n\r\nconst grouping_nivel = [{ columnName: 'DESCRIPCION_NIVEL' }];\r\n\r\nconst columnsRetiro = [\r\n { name: 'LABEL', title: 'Label' },\r\n { name: 'VALUE', title: 'Value' },\r\n];\r\nconst columnExtensionsRetiro = [\r\n { columnName: 'LABEL', width: \"45%\", wordWrapEnabled: true }, \r\n { columnName: 'VALUE', wordWrapEnabled: true },\r\n];\r\n\r\nconst settingFilter = [\r\n\r\n { columnName: 'VALOR',\r\n predicate: (value, filter, row) => {\r\n value = funciones.formatCurrency(value); \r\n return IntegratedFiltering.defaultPredicate(value, filter, row);\r\n },\r\n\r\n },\r\n { columnName: 'INICIO',\r\n predicate: (value, filter, row) => {\r\n value = value !== null ? funciones.getTime(value, 1) : value;\r\n return IntegratedFiltering.defaultPredicate(value, filter, row);\r\n },\r\n\r\n },\r\n { columnName: 'FIN',\r\n predicate: (value, filter, row) => {\r\n value = value !== null ? funciones.getTime(value, 1) : value;\r\n return IntegratedFiltering.defaultPredicate(value, filter, row);\r\n },\r\n\r\n },\r\n { columnName: 'PORCENTAJE',\r\n predicate: (value, filter, row) => {\r\n value = value + \"%\";\r\n return IntegratedFiltering.defaultPredicate(value, filter, row);\r\n },\r\n\r\n },\r\n \r\n];\r\n\r\nconst RowId = row => row.ID_SECCION_CLIENTE;\r\n\r\nconst GroupCellContent = ({ column, row }) => {\r\n var color=''\r\n var anterior=false;\r\n\r\n if(row.compoundKey.search('Período Anterior')===0)\r\n {\r\n anterior=true;\r\n color=color_periodo_anterior;\r\n }\r\n else\r\n color='black';\r\n\r\n return(\r\n \r\n {anterior?row.value:{row.value}} \r\n \r\n );\r\n}\r\n\r\nconst VirtualTable_cellComponent = (props) => { \r\n \r\n if (props.column.name === 'INICIO')\r\n {\r\n return ( \r\n {props.row.INICIO !== null ? funciones.getTime(props.row.INICIO, 1) : null}\r\n );\r\n }\r\n \r\n if (props.column.name === 'FIN')\r\n {\r\n return ( \r\n {props.row.FIN !== null ? funciones.getTime(props.row.FIN, 1) : null}\r\n );\r\n }\r\n \r\n if (props.column.name === 'VALOR')\r\n {\r\n return (\r\n {props.row.VALOR !== null ? funciones.formatCurrency(props.row.VALOR) : props.row.VALOR} \r\n \r\n );\r\n }\r\n\r\n if (props.column.name === 'PORCENTAJE')\r\n {\r\n return (\r\n {props.row.CHECKED ? null : props.row.PORCENTAJE + \"%\"} \r\n \r\n );\r\n }\r\n \r\n return ();\r\n \r\n}\r\nconst Table_cellComponentRetiro = ({style, ...props}) => {\r\n\r\n const styleCell = { border: \"none\", paddingBottom: 12 }\r\n \r\n if (props.column.name === \"LABEL\"){\r\n return ();\r\n }\r\n \r\n return ();\r\n \r\n}\r\nconst TableSelectionCellComponent = (estado, checkId) => ({style, ...props}) =>{\r\n \r\n if (estado && props.row.ID_SECCION_CLIENTE === checkId)\r\n {\r\n return ( \r\n \r\n \r\n );\r\n } \r\n \r\n return ( );\r\n}\r\nconst ColumnFixed_cellComponent = ({ showRightDivider, showLeftDivider, ...props}) => { \r\n \r\n if (props.tableRow.key === \"Symbol(filter)\"){\r\n return (\r\n
\r\n );\r\n }\r\n\r\n return ();\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\n\r\nexport default withStyles(styles) ( \r\nclass App extends React.Component {\r\n\r\nrazonRef = React.createRef();\r\ntablaRef = 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 optionAutocomplete: [],\r\n loadingClientes: true,\r\n valueAutoComplete: null,\r\n openAutoComplete: false,\r\n openModal: false,\r\n openModalConfirmation: false,\r\n expandedGroups: [],\r\n rowsRetiro: [],\r\n loadingCheck: false,\r\n es_anterior: false,\r\n };\r\n this.cuenta= null;\r\n this.botones_retiro =[\r\n {icono: 'Check', toolt: '', nombre: 'Retirar', onclick: this.handleRetiroOk, display:'auto'},\r\n {icono: 'Close', toolt: '', nombre: 'Cerrar' ,onclick: this.handleClose, display:'auto', color: 'red'},\r\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\n this.setState({ valueAutoComplete: value, openAutoComplete: false, rows: [] }, ()=>{\r\n \r\n if (value === null)\r\n {\r\n return;\r\n }\r\n \r\n this.handleChangeCuenta(null); \r\n \r\n });\r\n \r\n}\r\n \r\nfiltersClientes = (value)=>{ \r\n \r\n new Request\r\n .get(`${globales.ip}/retiros/estudiantes/${value}`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .retry(0)\r\n .timeout({ response: 30000, deadline: 40000, }) \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({ 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\nhandleChangeCuenta = (event) => {\r\n \r\nif (this.state.loadingMain)\r\n{ \r\n return;\r\n}\r\n \r\nthis.cuenta = (event === null && tokenInfo.plataforma === 2) ? tokenInfo.user : tokenInfo.plataforma === 1 ? this.state.valueAutoComplete.CUENTA_ALUMNO : null;\r\nthis.setState({ loadingMain: true }, ()=>{ \r\n \r\n new Request\r\n .get(`${globales.ip}/retiros/oferta/${this.cuenta}/${tokenInfo.user}`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .retry(1)\r\n .timeout({ response: 30000, deadline: 40000, }) \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({ 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 \r\n let allGroups = [];\r\n let foundGroup;\r\n let periodo=null;\r\n \r\n rows.map((item)=>{\r\n foundGroup = allGroups.find(x => x === item.DESCRIPCION_NIVEL);\r\n if(item.PERIODO!==null)\r\n {\r\n if(item.PERIODO.search('Período Anterior')===-1)\r\n if (foundGroup === undefined)\r\n {\r\n allGroups.push(item.PERIODO);\r\n allGroups.push(item.PERIODO+'|'+item.DESCRIPCION_NIVEL);\r\n }\r\n else {\r\n foundGroup = undefined;\r\n }\r\n }\r\n else\r\n {\r\n if (foundGroup === undefined)\r\n {\r\n allGroups.push(item.DESCRIPCION_NIVEL);\r\n }\r\n else {\r\n foundGroup = undefined;\r\n }\r\n }\r\n periodo=item.PERIODO;\r\n \r\n return item;\r\n }); \r\n \r\n this.setState({ rows,expandedGroups: allGroups, loadingMain: false, periodo_anterior: periodo }); \r\n \r\n });\r\n \r\n});\r\n \r\n}\r\n\r\nchangeExpandedGroups = expandedGroups =>\r\n{ \r\n this.setState({ expandedGroups }); \r\n}\r\n\r\nchangeSelection = selection => { \r\n\r\n checkId = selection[0];\r\n const rowChecked = this.state.rows.find(x => x.ID_SECCION_CLIENTE === selection[0]); \r\n\r\n if (!rowChecked.CHECKED){\r\n\r\n const rowsRetiro = [{ KEY: 0, LABEL: \"Curso\", VALUE: rowChecked.DESCRIPCION_CURSO },\r\n { KEY: 1, LABEL: \"Dias transcurridos (matrícula)\", VALUE: rowChecked.DIAS },\r\n { KEY: 2, LABEL: \"Valor porcentual a reconocer\", VALUE: rowChecked.PORCENTAJE + \"%\" },\r\n { KEY: 3, LABEL: \"Valor total del curso\", VALUE: funciones.formatCurrency(rowChecked.VALOR) },\r\n { KEY: 4, LABEL: \"Valor total a reconocer\", VALUE: funciones.formatCurrency((rowChecked.VALOR * rowChecked.PORCENTAJE)/100) },];\r\n \r\n this.setState({ rowsRetiro,openModal: true,es_anterior:rowChecked.ES_ANTERIOR,periodo_anterior:rowChecked.PERIODO });\r\n }\r\n}\r\n\r\nhandleClose = ()=>{\r\n\r\nthis.setState({ openModal: false,es_anterior: false });\r\n\r\n}\r\n\r\nhandleRetiroOk = ()=>{\r\n\r\nif (funciones.isEmpty(this.razonRef.current.value)){\r\n funciones.showToast(\"w\", \"Debe ingresar la razón de retiro\");\r\n this.razonRef.current.focus();\r\n return;\r\n}\r\n\r\nthis.setState({ openModal: false, loadingCheck: true }, ()=>{ \r\n\r\n const rowChecked = this.state.rows.find(x => x.ID_SECCION_CLIENTE === checkId); \r\n\r\n new Request\r\n .post(`${globales.ip}/retiros`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .set('Content-Type', 'application/json')\r\n .send({ id_seccion_cliente: rowChecked.ID_SECCION_CLIENTE, \r\n monto_reconocido: parseFloat(rowChecked.VALOR * rowChecked.PORCENTAJE/100), \r\n porcentaje: rowChecked.PORCENTAJE,\r\n razon: this.razonRef.current.value.trim(),\r\n cuenta_alumno: this.cuenta,\r\n ad_usuario: tokenInfo.user })\r\n .retry(0)\r\n .timeout({ response: 20000, deadline: 40000, }) \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({ loadingCheck: 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 || rows[0].RESP === undefined)\r\n { \r\n\r\n this.setState({ rows,loadingCheck: false,es_anterior: false }, ()=> { \r\n funciones.showToast(\"s\", \"Se ha retirado del curso \" + rowChecked.DESCRIPCION_CURSO); \r\n }); \r\n\r\n }\r\n else\r\n {\r\n this.setState({ loadingCheck: false,es_anterior: false }, ()=>{\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\n});\r\n\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.cuenta= null;\r\n this.filtersClientes('-');\r\n \r\n }\r\n else if (tokenInfo.plataforma === 2) //Usuario estudiante\r\n { \r\n this.setState({ loadingClientes: false });\r\n this.handleChangeCuenta(null); \r\n }\r\n \r\n this.setState({ heightTableMain: funciones.getHeightTableMain(movil, this).heightTable }, ()=>{\r\n if (!movil && tokenInfo.plataforma === 1)\r\n document.getElementById('Est_Retiros').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 if (tokenInfo.plataforma === 2){\r\n\r\n return(\r\n \r\n \r\n \r\n Cursos disponibles para retirar\r\n \r\n \r\n
\r\n );\r\n \r\n } \r\n\r\n })()\r\n\r\n }\r\n\r\n
\r\n \r\n
\r\n \r\n Retiro de curso\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {this.state.es_anterior?Nota: El curso es del {this.state.periodo_anterior.toLowerCase()}: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\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 { withStyles } from '@material-ui/core/styles';\r\nimport Autocomplete from '@material-ui/lab/Autocomplete';\r\nimport TextField from '@material-ui/core/TextField';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport CircularProgress from '@material-ui/core/CircularProgress';\r\nimport {Table, TableFixedColumns, TableHeaderRow, TableSelection} from '@devexpress/dx-react-grid-material-ui';\r\nimport IconButton from '@material-ui/core/IconButton';\r\nimport { IntegratedFiltering } from '@devexpress/dx-react-grid'\r\nimport Typography from '@material-ui/core/Typography';\r\nimport DialogActions from '@material-ui/core/DialogActions';\r\nimport Backdrop from '@material-ui/core/Backdrop';\r\nimport BarraBotones from '../../components/Barra_menu';\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 Paper from '@material-ui/core/Paper';\r\nimport DialogContent from '@material-ui/core/DialogContent';\r\nimport Link from '@material-ui/core/Link';\r\nimport Select from '../../components/Select';\r\nimport MenuItem from '@material-ui/core/MenuItem';\r\nimport CheckIcon from '@material-ui/icons/Check';\r\nimport WarningIcon from '@material-ui/icons/Warning';\r\nimport Checkbox from '@material-ui/core/Checkbox';\r\nimport Divider from '@material-ui/core/Divider';\r\nimport Button from '@material-ui/core/Button';\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\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\npaperConfirm: { \r\n borderRadius: globales.border_dialog,\r\n minWidth: movil ? 'calc(100% - 12px)' : '360px', \r\n maxWidth: movil ? 'calc(100% - 12px)' : '360px', \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: theme.spacing(1),\r\n paddingRight: theme.spacing(1), \r\n},\r\ntextField: {\r\n marginLeft: !movil ? theme.spacing(2) : undefined,\r\n},\r\npaper: { \r\n borderRadius: globales.border_dialog,\r\n minWidth: !movil ? '930px' : undefined, \r\n maxWidth: !movil ? '930px' : undefined,\r\n height: !movil ? '620px' : undefined, \r\n maxHeight: !movil ? '95%' : undefined\r\n},\r\nformControlSelect: {\r\n width: '100%', \r\n marginTop: theme.spacing(2), \r\n textAlign: 'left',\r\n},\r\ntooltip: {\r\n maxWidth: 'none',\r\n},\r\n});\r\nconst widthTable = !movil ? window.screen.width - (globales.tabla.marginleft + globales.tabla.marginright) : 1336;\r\n\r\nconst datosSelectMigracion = [ { value: 0, label: 'Solo verificación (Con cupo actual para todos)' },\r\n { value: 1, label: 'Exportar estudiantes seleccionados' },\r\n ];\r\nconst datosSelectMod = [ { value: 1, label: 'Presencial' },\r\n { value: 2, label: 'Por Videoconferencia' },\r\n ];\r\n\r\nlet selectedMigrarTmp = null;\r\nlet colorOk= 'green'; \r\nlet colorWarning = 'red';\r\n\r\nconst columns = [ \r\n { name: 'CUENTA_ALUMNO', title: 'Cuenta'},\r\n { name: 'NOMBRE_COMPLETO', title: 'Nombre' },\r\n { name: 'DESCRIPCION_NIVEL', title: 'Nivel' },\r\n { name: 'MODALIDAD', title: 'Grupo' },\r\n { name: 'ESTATUS_FINANCIERO_DESC', title: 'Estado' }, \r\n ];\r\n const columnsDetail = [ \r\n { name: 'CUENTA_ALUMNO', title: 'Cuenta' },\r\n { name: 'NOMBRE_COMPLETO', title: 'Nombre' },\r\n { name: 'RESP', title: 'Estado' }, \r\n];\r\nconst columnExtensions = [\r\n { columnName: 'CUENTA_ALUMNO', width: widthTable * 0.09, align: 'center'},\r\n { columnName: 'NOMBRE_COMPLETO', width: widthTable * 0.29 }, \r\n { columnName: 'DESCRIPCION_NIVEL', width: widthTable * 0.31 },\r\n { columnName: 'MODALIDAD', width: widthTable * 0.10, align: 'center' },\r\n { columnName: 'ESTATUS_FINANCIERO_DESC', width: widthTable * 0.12, align: 'center'}, \r\n ];\r\nconst columnExtensionsDetail = [\r\n { columnName: 'CUENTA_ALUMNO', width: 110 },\r\n { columnName: 'NOMBRE_COMPLETO', width: 350 }, \r\n { columnName: 'RESP', width: 350 }, \r\n];\r\nconst totalSummaryItems = [\r\n { columnName: \"CUENTA_ALUMNO\", type: \"count\" }, \r\n];\r\n\r\nconst settingFilter = [\r\n \r\n { columnName: 'RESP',\r\n predicate: (value, filter, row) => {\r\n value = value.replace('ERROR', 'Incompleto')\r\n .replace('OK', (selectedMigrarTmp === 1 ? 'Completo' : 'Viable'))\r\n .replace('LISTA_ESPERA', 'No hay cupo (Permite lista de espera en matrícula)'); \r\n \r\n return IntegratedFiltering.defaultPredicate(value, filter, row);\r\n },\r\n },\r\n \r\n];\r\n\r\nconst RowId = row => row.ID_SECCION_CLIENTE;\r\nconst VirtualTable_cellComponent = (infoDetail, loadingRow, optionSelected) => (props) => { \r\n \r\n if (props.column.name === 'RESP')\r\n {\r\n if (loadingRow === props.row.CUENTA_ALUMNO) \r\n {\r\n return ( \r\n \r\n \r\n );\r\n }\r\n else if (props.row.RESP === 'OK')\r\n { \r\n return(\r\n \r\n {optionSelected === 1 ? 'Completo' : 'Viable'}\r\n \r\n );\r\n }\r\n else if (props.row.RESP === 'LISTA_ESPERA')\r\n {\r\n return(\r\n \r\n {'No hay cupo (Permite lista de espera en matrícula)'} \r\n \r\n );\r\n }\r\n else if (props.row.RESP === 'ERROR')\r\n { \r\n if (optionSelected === 1) \r\n {\r\n return (\r\n \r\n {'Incompleto ('}\r\n { infoDetail(props.row.CUENTA_ALUMNO) }}>{'Obtener detalle'}\r\n {')'}\r\n \r\n );\r\n }\r\n else\r\n {\r\n return (\r\n \r\n {'No viable'} \r\n \r\n );\r\n }\r\n }\r\n }\r\n\r\n return ();\r\n \r\n}\r\nconst VirtualTable_cellComponentMain = (props) => { \r\n \r\n return ();\r\n \r\n}\r\nconst ColumnHeader_cellComponent = (props) => {\r\n \r\n return ();\r\n \r\n}\r\nconst TableSelectionCellComponentMain = (props) =>{\r\n \r\n if (props.row.ESTATUS_FINANCIERO !== \"T\")\r\n {\r\n return (\r\n \r\n \r\n );\r\n }\r\n \r\n return ();\r\n \r\n}\r\nconst TableSelectionCellComponent = (props) =>{\r\n \r\nif (props.row.RESP === \"OK\")\r\n{\r\n return (\r\n \r\n \r\n );\r\n}\r\n\r\nreturn (\r\n \r\n \r\n);\r\n\r\n}\r\nconst stubCellComponentTable = (rowsProcess, rowsAsignCount, optionSelected) => ({colSpan, ...props})=>{\r\n\r\nif (props.tableColumn.key === \"Symbol(select)\" && props.tableRow.key === \"Symbol(totalSummary)\")\r\n{ \r\n let totalOk = rowsProcess.filter(x => x.RESP === 'OK').length;\r\n let labelOk = optionSelected === 1 ? ' completo(s), ' : ' viable(s), ';\r\n let labelError = optionSelected === 1 ? ' incompleto(s)' : ' no viable(s)';\r\n\r\n return (\r\n \r\n \r\n {rowsProcess.length.toString() + ' de ' + rowsAsignCount.toString() + ' procesado(s). ' + totalOk.toString() + labelOk + (rowsProcess.length - totalOk).toString() + labelError}\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nreturn ();\r\n\r\n}\r\nconst ColumnFixed_cellComponent = ({showRightDivider, ...props}) => { \r\n \r\n const style = { color: props.tableRow.rowId !== undefined && props.tableRow.row.ESTATUS_FINANCIERO !== \"T\" ? colores.color_disabled : undefined }\r\n\r\n if (props.tableRow.key === \"Symbol(filter)\"){\r\n return (\r\n
\r\n );\r\n }\r\n\r\n return ();\r\n}\r\nconst RenderOption = (option) => (\r\n
\r\n
{\"Sección \" + option.NUMERO_SECCION+\" - \"+option.NOM_MODALIDAD}
\r\n {option.DESCRIPCION_CURSO} \r\n
\r\n);\r\n\r\nexport default withStyles(styles) ( \r\nclass App extends React.Component {\r\n\r\ntablaRef = React.createRef();\r\npaperRef = React.createRef();\r\ntablaDetailRef = React.createRef();\r\ndialogActionsRef = React.createRef();\r\nmigrarSelectRef = React.createRef();\r\nmodSelectRef = React.createRef();\r\n\r\n constructor (props) {\r\n super(props);\r\n this.state = {\r\n isLoggin : undefined,\r\n heightTableMain: 0,\r\n rows: [],\r\n loadingSecciones: true,\r\n loadingMain: false,\r\n optionAutocompleteA: [],\r\n optionAutocompleteB: [],\r\n valueAutoCompleteA: null,\r\n valueAutoCompleteB: null,\r\n selection: [],\r\n openModalConfirm: false,\r\n openBackDrop: false,\r\n openModal: false,\r\n rowsDetail: [],\r\n heightTableDetail: 0,\r\n loadingRow: null,\r\n selectionCount: 0, \r\n selectedMigrar: '',\r\n datosSelectMigracion: datosSelectMigracion.map((item, i) => { return {item.label} }),\r\n datosSelectMod: datosSelectMod.map((item, i) => { return {item.label} }),\r\n selectedMod: '',\r\n disabledSelectMod: true,\r\n };\r\n this.botones_exportar =[\r\n {icono: 'Check', toolt: '', nombre: 'Aceptar', onclick: this.exportOk, display:'auto'},\r\n {icono: 'Close', toolt: '', nombre: 'Cerrar' ,onclick: this.handleCloseExport, display:'auto', color: 'red'},\r\n ];\r\n}\r\n\r\nonChangeAutocompleteA = (event, newValue) =>{\r\n \r\n this.setState({ optionAutocompleteB: [], \r\n valueAutoCompleteB: null, \r\n rows: [], \r\n selection: [],\r\n valueAutoCompleteA: newValue }, ()=>{\r\n\r\n if (newValue === null)\r\n {\r\n return;\r\n }\r\n \r\n this.setState({ loadingMain: true }, ()=>{ \r\n this.obtener_clientes(newValue);\r\n });\r\n\r\n });\r\n\r\n}\r\n\r\nonChangeAutocompleteB = (event, newValue) =>{ \r\n\r\n this.setState({ valueAutoCompleteB: newValue });\r\n\r\n}\r\n\r\nobtener_clientes = (seccion_origen)=>{\r\n \r\n //const hibrida = (seccion_origen.ID_ESTADO_MODALIDAD !== 2 || seccion_origen.ID_MODALIDAD_CURSO_AUTONOMA === this.state.selectedMod) ? 0 : 1;\r\n //console.log(hibrida);\r\n \r\nnew Request\r\n .get(`${globales.ip}/migracion/secciones/estudiantes/${seccion_origen.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({ 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 \r\n if (rows.length > 0)\r\n { \r\n let seccionesDestino = [];\r\n seccionesDestino = this.state.optionAutocompleteA.filter(x => x.ID_CURSO === seccion_origen.ID_CURSO && (x.ID_SECCION !== seccion_origen.ID_SECCION || x.ID_ESTADO_MODALIDAD === 2));\r\n\r\n this.setState({ optionAutocompleteB: seccionesDestino,\r\n valueAutoCompleteB: null,\r\n rows: rows, \r\n selection: [],\r\n loadingMain: false });\r\n }\r\n else \r\n {\r\n this.setState({ optionAutocompleteB: [],\r\n valueAutoCompleteB: null,\r\n rows: [], \r\n selection: [],\r\n loadingMain: false });\r\n } \r\n \r\n});\r\n\r\n}\r\n\r\nchangeSelection = (selection) =>\r\n{ \r\n \r\n let includeItems = [];\r\n selection.map((item)=>{ \r\n if (this.state.rows.find(x => x.ID_SECCION_CLIENTE === item).ESTATUS_FINANCIERO === 'T')\r\n { \r\n includeItems.push(item); \r\n }\r\n return item;\r\n });\r\n selection = includeItems;\r\n \r\n this.setState({ selection });\r\n \r\n}\r\n\r\nonClickExport = ()=>{\r\n\r\nif (this.state.selection.length === 0 || funciones.isEmpty(this.state.valueAutoCompleteB))\r\n return;\r\n\r\nconst id_estado_mod_origen = this.state.valueAutoCompleteA.ID_ESTADO_MODALIDAD;\r\nconst id_estado_mod_destino = this.state.valueAutoCompleteB.ID_ESTADO_MODALIDAD;\r\nconst same = this.state.valueAutoCompleteA.ID_SECCION === this.state.valueAutoCompleteB.ID_SECCION ? true : false;\r\nlet modSel;\r\n\r\nif (id_estado_mod_origen === 2 && same)\r\n{ \r\n const respVerify = this.verifyMod(); \r\n \r\n if (respVerify === null)\r\n {\r\n funciones.showToast('w', \"Solo se deben especificar estudiantes de un grupo cuando el cambio es interno\");\r\n return;\r\n }\r\n \r\n modSel = respVerify;\r\n\r\n}\r\n\r\nthis.setState({ selectedMigrar: 1, \r\n selectedMod: modSel === undefined ? '' : modSel === 0 ? this.state.valueAutoCompleteB.ID_MODALIDAD_CURSO_DEPENDIENTE : this.state.valueAutoCompleteB.ID_MODALIDAD_CURSO_AUTONOMA, \r\n disabledSelectMod: (id_estado_mod_destino !== 2 || same) ? true : false, \r\n openModalConfirm: true }, ()=>{\r\n selectedMigrarTmp = 1;\r\n if (movil)\r\n document.getElementById(\"combo-box-secciones-destino\").blur();\r\n});\r\n\r\n}\r\n\r\nverifyMod = ()=>{\r\n\r\nvar h0 = 0;\r\nvar h1 = 0;\r\n\r\nthis.state.selection.map((item)=>{\r\n \r\n if (this.state.rows.find(x => x.ID_SECCION_CLIENTE === item).HIBRIDA === true){\r\n h1++;\r\n }\r\n else {\r\n h0++;\r\n }\r\n \r\n return item;\r\n});\r\n\r\nif (h1 > 0 && h0 > 0)\r\nreturn null;\r\n\r\nif (h1 > 0)\r\nreturn 1;\r\n\r\nif (h0 > 0)\r\nreturn 0;\r\n\r\n}\r\n\r\nhandleCloseExport = ()=>{\r\n\r\nthis.setState({ openModalConfirm: false });\r\n \r\n}\r\n\r\nhandleClose = ()=>{\r\nthis.setState({ openModal: false });\r\n}\r\n\r\nexportOk = ()=>{\r\n\r\nif (this.state.valueAutoCompleteB.ID_ESTADO_MODALIDAD === 2 && this.state.selectedMod === '')\r\n{\r\n funciones.showToast('w', \"Debe seleccionar el grupo de destino\");\r\n this.modSelectRef.current.focus();\r\n return;\r\n}\r\n\r\nthis.setState({ openBackDrop: true, openModalConfirm: false }, ()=>{\r\n\r\n let strClientes = '';\r\n\r\n this.state.selection.map((item, index)=>{\r\n\r\n if (index + 1 < this.state.selection.length)\r\n {\r\n strClientes = strClientes + item + 'z';\r\n }\r\n else if (index + 1 === this.state.selection.length)\r\n {\r\n strClientes = strClientes + item;\r\n \r\n const hibrida = this.state.valueAutoCompleteB.ID_ESTADO_MODALIDAD !== 2 ? 0 :\r\n this.state.valueAutoCompleteB.ID_MODALIDAD_CURSO_AUTONOMA !== this.state.selectedMod ? 1 : 0;\r\n\r\n new Request\r\n .post(`${globales.ip}/migracion`)\r\n .set({'authorization': 'Bearer ' + Auth.getToken() })\r\n .set('Content-Type', 'application/json')\r\n .send({ id_seccion_origen: this.state.valueAutoCompleteA.ID_SECCION,\r\n id_seccion_destino: this.state.valueAutoCompleteB.ID_SECCION, \r\n str_clientes: strClientes,\r\n migracion: this.state.selectedMigrar,\r\n ad_usuario: tokenInfo.user,\r\n hibrida: hibrida })\r\n .retry(0)\r\n .timeout({ response: 200000, 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({ 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 let filterRows = [];\r\n let findRow;\r\n let filterSelection = [];\r\n\r\n if (rows[0].ERROR !== undefined)\r\n {\r\n this.setState({ openBackDrop: false }, ()=>{ \r\n funciones.showToast('w', rows[0].ERROR);\r\n }); \r\n return; \r\n }\r\n\r\n if (selectedMigrarTmp === 1)\r\n {\r\n const same = this.state.valueAutoCompleteA.ID_SECCION === this.state.valueAutoCompleteB.ID_SECCION ? true : false;\r\n\r\n this.state.rows.map((item)=>{\r\n findRow = rows.find(x => x.CUENTA_ALUMNO === item.CUENTA_ALUMNO); \r\n if (findRow === undefined || findRow.RESP !== 'OK' || same)\r\n { \r\n if (findRow !== undefined && findRow.NEW_ID_SECCION_CLIENTE !== null){ \r\n item.ID_SECCION_CLIENTE = findRow.NEW_ID_SECCION_CLIENTE; \r\n if (same && findRow.RESP === 'OK'){ \r\n item.HIBRIDA = hibrida === 1 ? true : false;\r\n item.MODALIDAD = findRow.MODALIDAD;\r\n }\r\n }\r\n filterRows.push(item);\r\n if (findRow !== undefined)\r\n {\r\n filterSelection.push(this.state.rows.find(x => x.CUENTA_ALUMNO === item.CUENTA_ALUMNO).ID_SECCION_CLIENTE);\r\n } \r\n }\r\n return item;\r\n });\r\n }\r\n \r\n if (rows.find(x => x.RESP === 'ERROR') !== undefined || selectedMigrarTmp === 0)\r\n { \r\n \r\n this.setState({ rows: selectedMigrarTmp === 0 ? this.state.rows : filterRows, selectionCount: this.state.selection.length, selection: selectedMigrarTmp === 0 ? this.state.selection : filterSelection, rowsDetail: rows, openBackDrop: false, openModal: true });\r\n \r\n }\r\n else {\r\n \r\n this.setState({ rows: filterRows, selectionCount: this.state.selection.length, selection: filterSelection, openBackDrop: false }, ()=>{\r\n funciones.showToast('s', 'Se realizarón todos los movimientos solicitados'); \r\n });\r\n\r\n }\r\n \r\n \r\n });\r\n\r\n \r\n }\r\n\r\n return item;\r\n\r\n });\r\n\r\n});\r\n\r\n}\r\n\r\ninfoDetail = (cuenta_alumno)=>{ \r\n\r\nlet infoRow = this.state.rows.find(x => x.CUENTA_ALUMNO === cuenta_alumno);\r\nconst hibrida = this.state.valueAutoCompleteB.ID_ESTADO_MODALIDAD !== 2 ? 0 : \r\n this.state.valueAutoCompleteB.ID_MODALIDAD_CURSO_AUTONOMA !== this.state.selectedMod ? 1 : 0;\r\n\r\nthis.setState({ loadingRow: cuenta_alumno }, ()=>{ \r\n \r\n new Request\r\n .get(`${globales.ip}/migracion/validaciones/${infoRow.CUENTA_ALUMNO}/${infoRow.ID_PLAN}/${this.state.valueAutoCompleteA.ID_SECCION}/${this.state.valueAutoCompleteB.ID_SECCION}/${tokenInfo.user}/${hibrida}`)\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({ loadingRow: null }, ()=>{\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 let currentRows = this.state.rowsDetail;\r\n currentRows.map((item)=>{\r\n if (item.CUENTA_ALUMNO === this.state.loadingRow)\r\n {\r\n item.RESP = rows[0].RESP;\r\n }\r\n return item;\r\n });\r\n \r\n this.setState({ rowsDetail: currentRows, loadingRow: null });\r\n } \r\n \r\n });\r\n\r\n});\r\n\r\n}\r\n\r\nonEntering = ()=>{\r\n\r\nthis.setState({ heightTableDetail: funciones.getHeightTableDialog(movil, this.tablaDetailRef, this.dialogActionsRef, !movil ? 7 : 5) });\r\n \r\n}\r\n\r\nhandleChangeMigrar = event => {\r\n \r\n this.setState({ selectedMigrar: event.target.value }, ()=>{\r\n selectedMigrarTmp = event.target.value;\r\n }); \r\n \r\n}\r\n\r\nhandleChangeMod = (event)=>{\r\n this.setState({ selectedMod: event.target.value }); \r\n}\r\n\r\nobtener_secciones = ()=>{\r\n\r\n new Request\r\n .get(`${globales.ip}/migracion/secciones/${tokenInfo.user}`)\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({ 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 rows = JSON.parse(res.text);\r\n \r\n if (rows.length > 0) \r\n { \r\n this.setState({ optionAutocompleteA: rows, loadingSecciones: false });\r\n }\r\n else\r\n {\r\n this.setState({ optionAutocompleteA: [], loadingSecciones: false });\r\n } \r\n \r\n});\r\n\r\n}\r\n\r\ncomponentDidMount() { \r\n \r\ntokenInfo = Auth.getProfile(); //Token decodificado\r\n \r\nthis.setState({ isLoggin: tokenInfo.plataforma !== undefined ? true : false }, ()=>{ \r\n\r\n if (tokenInfo.plataforma === 1) // Usuario Admin\r\n {\r\n this.obtener_secciones(); \r\n }\r\n else if (tokenInfo.plataforma === 2) //Usuario estudiante\r\n {\r\n \r\n }\r\n \r\n this.setState({ heightTableMain: funciones.getHeightTableMain(movil, this).heightTable }); \r\n\r\n}); \r\n \r\n}\r\n\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 {\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.DESCRIPCION_CURSO + ' (' + option.NUMERO_SECCION + ') - '+option.NOM_MODALIDAD}\r\n style={{ width: !movil ? '430px' : '100%' }}\r\n renderInput={(params) => \r\n {this.state.loadingSecciones ? : null}\r\n {params.InputProps.endAdornment}\r\n \r\n ),\r\n }}\r\n fullWidth\r\n />}\r\n renderOption={RenderOption} \r\n onChange={this.onChangeAutocompleteA} \r\n loading={this.state.loadingSecciones}\r\n value={this.state.valueAutoCompleteA}\r\n PaperComponent={(props)=>()} \r\n />\r\n option.DESCRIPCION_CURSO + ' (' + option.NUMERO_SECCION + ') - '+option.NOM_MODALIDAD}\r\n style={{ width: !movil ? '430px' : '100%'}}\r\n renderInput={(params) => }\r\n renderOption={RenderOption} \r\n onChange={this.onChangeAutocompleteB}\r\n value={this.state.valueAutoCompleteB}\r\n className={classes.textField} \r\n PaperComponent={(props)=>()} \r\n />\r\n \r\n 0 && !funciones.isEmpty(this.state.valueAutoCompleteB) ? 'Exportar estudiantes seleccionados (' + this.state.selection.length.toString() + ' de ' + this.state.rows.length.toString() + ')' : ''} classes={{ tooltip: classes.tooltip}} placement=\"top\">\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n Resultados del proceso\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n Exportar\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {this.state.selectedMigrar === 1 ? 'Exportando estudiantes por favor espere...' : 'Verificando disponibilidad por favor espere...'}\r\n \r\n \r\n\r\n
\r\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":""}