{"version":3,"sources":["../webpack/bootstrap","api/config.js","recursos/images/logo-upn.png","recursos/images/flecha.png","recursos/images/logo-contacto-upn.png","recursos/images/whatsapp.png","recursos/images/buen-dato.png","recursos/images/bocadillo-de-dialogo-con-signo-de-exclamacion.png","recursos/images/arturo-bot.png","api/endpoints.js","recursos/js/util.js","api/service.js","pages/misconsultas.js","App.js","pages/banner.js","pages/consulta.js","reportWebVitals.js","index.js"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","0","exports","module","l","e","promises","installedChunkData","promise","Promise","resolve","reject","onScriptComplete","script","document","createElement","charset","timeout","nc","setAttribute","src","p","jsonpScriptSrc","error","Error","event","onerror","onload","clearTimeout","chunk","errorType","type","realSrc","target","message","name","request","undefined","setTimeout","head","appendChild","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","err","console","jsonpArray","this","oldJsonpFunction","slice","BASE_URL_UPN","process","BASE_URL_CRM","BASE_URL_BUCKET_S3","BASE_URL_IDENTIDAD","BASE_URL_REDIRECT","ERROR_CODE_DEFAULT","BANNER_CODE","BANNER_PAGE","CONSULTA_CODE","CONSULTA_PAGE","MISCONSULTAS_CODE","MISCONSULTAS_PAGE","Endpoint","Programa","Tema","Subtema","Cursos","InfoEstudiante","RegistrarConsulta","TraerConsultasUPN","TraerConsultasCRM","InteracionesPorConsultasCRM","InteracionesPorConsultasUPN","UploadFileBucket","RemoveFileBucket","DownloadFileBucket","util","retrieveQueryParams","queryParams","window","location","search","query","keyValuePairs","split","params","match","decodeURIComponent","queryParameters","decodeB64ToString","b64","escape","atob","authorizationHeader","token","loader","loading","React","id","className","returLogin","pagecode","pagename","href","getIconFile","ext","extPos","lastIndexOf","substring","icon","replace","navegatePage","codigoAlumno","parseDate","fechaRegistro","datePart","timePart","day","month","year","Date","URL_UPN","URL_CRM","api","getTema","idArea","axios","Endpoints","then","response","catch","getStudent","codeStudent","post","headers","getProgramas","getSubTemas","idTema","getCursosMatriculados","uploadFileBucket","removeFileBucket","s3","downloadFileBucket","nameS3","responseType","registrarConsulta","traerConsultasUPN","traerConsultasPendientesCRM","traerConsultasAtendidasCRM","interaccionesPorCasoCRM","idConsult","interaccionesPorCasoUPN","parametros","_codigoAlumno","u","_token","tk","_pageCode","_pageName","MisConsultas","student","setStudent","useState","foto","nombres","apellidos","carrera","campus","modalidad","alertModal","setAlertModal","show","setLoading","tabP","setTabP","tabContentP","settabContentP","tabA","setTabA","tabContentA","settabContentA","consults","setConsults","loadingConsults","setloadingConsults","fotoStudent","setFotoStudent","cerrarAlertaModal","returnIdentidad","tabPanelConsults","tab","currentTarget","getAttribute","viewDetail","async","tracking","log","status","IndicadorExito","Detail","NumeroCaso","style","lineHeight","fontSize","marginTop","FechaRegistroCaso","dangerouslySetInnerHTML","__html","Descripcion","UrlAdjuntos","map","x","UrlAdjunto","data-namefile","NombreAdjunto","title","estado","RazonEstado","toLowerCase","estado_orden","RespuestaCaso","Fragment","sla","SLAEnHoras","slaText","sla_part","toString","slaEntero","slaDecimal","indexOf","rowspan","bloqueInteracion","detail","arr","numeroCaso","item_foro","statusConsult","item","persona","fecha","comentario","printFileAttachment","attachment","origen","class","index","onClick","downloadFile","extensionFile","nameFileOriginal","convertFileIcon","filename","URL","createObjectURL","link","body","click","removeChild","revokeObjectURL","alert","templateConsult","CodigoAlumno","tema","subtema","descripcion","border","colSpan","data-student","data-id","data-origin","useEffect","apellidoPaterno","apellidoMaterno","objCarrera","nombre","objSede","objPrograma","_consults","responseP","responseA","sort","a","b","dateA","FechaRegistro","Origen","consultaId","consultaCodigoAlumno","consultaFechaRegistro","consultaEstado","consultaTema","Motivo","consultaSubTema","SubMotivo","consultaDescripcion","consultaFuente","consultaTab","consultaHtml","tipo","subtipo","consulta","estadoCodigo","getConsults","logo","float","logoContacto","maxHeight","paddingTop","rowSpan","verticalAlign","textAlign","padding","imgFlechaVertical","width","data-tab","filter","y","borderTop","toPageBanner","clase","role","aria-labelledby","aria-hidden","dafta-dismiss","alertModalDOM","App","Misconsultas","irMisConsultas","irConsulta","whatsapp","buenDatoImg","_attachment","_attachment_aux","Consulta","alertModalConfirmacionRegistro","setAlertModalConfirmacionRegistro","isReadyToSubmit","setIsReadyToSubmit","setTema","programas","setProgramas","temas","setTemas","subtemas","setSubTemas","cursos","setCursos","displayCursos","setDisplayCursos","record","setRecord","ddCarreraEspecialidad","ddlTemas","ddlSubTemas","ddlCurso","txtConsulta","handleShowModalConfirmacionRegistro","accept","formik","handleSubmit","removeFileAttachment","keyS3","forEach","currentValue","clearFileds","getElementsByTagName","initialValues","codigoPrograma","nombreCarrera","CodigoSubMotivo","TieneCurso","NombreSubMotivo","CodigoMotivo","NombreMotivo","useFormik","enableReinitialize","validateOnChange","validationSchema","onSubmit","formData","registroConsulta","CodigoDocente","UnidadNegocio","Sede","Carrera","Tipo","Area","NombreApoderado","Curso","Adjuntos","DescripcionError","onChange","handleChange","required","values","_tema","_subTema","flag","cursoCodigo","cursoDescripcion","data-names3","addFilesAttachment","getElementById","files","FormData","append","multiple","maxLength","placeholder","color","height","alertModalDOMConfirmacionRegistro","imgSignoExclamacion","data-dismiss","reportWebVitals","onPerfEntry","Function","_ref","getCLS","getFID","getFCP","getLCP","getTTFB","ReactDOM","createRoot","render","Router","Routes","Route","path","exact","element","Banner","MisConsulta"],"mappings":"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","file":"static/js/main.702b1416.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t0: 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"static/js/\" + ({}[chunkId]||chunkId) + \".\" + {\"2\":\"93eb8889\"}[chunkId] + \".chunk.js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = this[\"webpackJsonpwebcontactoupn\"] = this[\"webpackJsonpwebcontactoupn\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([31,1]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","const BASE_URL_UPN = process.env.REACT_APP_BASE_URL_UPN\nconst BASE_URL_CRM = process.env.REACT_APP_BASE_URL_CRM\nconst BASE_URL_BUCKET_S3 = process.env.REACT_APP_BASE_URL_BUCKET_S3\nconst BASE_URL_IDENTIDAD = process.env.REACT_APP_IDENTIDAD\nconst BASE_URL_REDIRECT = process.env.REACT_APP_REDIRECT_URL\nconst ERROR_CODE_DEFAULT = 'Ocurrio un inconveniente al realizar la petición'\nconst BANNER_CODE = process.env.REACT_APP_BANNER_CODE\nconst BANNER_PAGE = process.env.REACT_APP_BANNER_PAGE\nconst CONSULTA_CODE = process.env.REACT_APP_CONSULTA_CODE\nconst CONSULTA_PAGE = process.env.REACT_APP_CONSULTA_PAGE\nconst MISCONSULTAS_CODE = process.env.REACT_APP_MISCONSULTAS_CODE\nconst MISCONSULTAS_PAGE = process.env.REACT_APP_MISCONSULTAS_PAGE\n\n\nmodule.exports = {\n BASE_URL_UPN, \n BASE_URL_CRM,\n BASE_URL_BUCKET_S3,\n BASE_URL_IDENTIDAD,\n BASE_URL_REDIRECT,\n ERROR_CODE_DEFAULT,\n BANNER_CODE,\n BANNER_PAGE,\n CONSULTA_CODE,\n CONSULTA_PAGE,\n MISCONSULTAS_CODE,\n MISCONSULTAS_PAGE\n}","module.exports = __webpack_public_path__ + \"static/media/logo-upn.4eccee28.png\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAACCBAMAAACXw6S1AAAAHlBMVEUAAAAAAAAAAABHcEwAAAAAAAAAAAAAAAAAAAAAAABILQO0AAAACnRSTlMKx8MA9yPdb56dNDJ/tQAAACRJREFUKM9jMFBiZoh0aWVIcXFjSBcsYwhQZGUwUGQexSMLAwCzOyzOV8IVOwAAAABJRU5ErkJggg==\"","module.exports = \"data:image/png;base64,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\"","module.exports = __webpack_public_path__ + \"static/media/whatsapp.686ac559.png\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMQAAADdCAMAAADToS0KAAAAM1BMVEVHcEzz8/O6urrExMT////+/v7////9/f38/Pz+/v739/f////29vbh4eH6+vr///////+dXE0eAAAAEHRSTlMAlgMd4qDs1BImOsBQh3f3Ok3BngAAA2xJREFUeNrt3Nt2qjAABNAkhmvSpP//tUet0lyhLXjMsGYehVC2gxCKSyH2RI2FqHid8fXZZRCTGbKYS2zohlen24noP7PoKUYMn6+O2Xc0nQHBJtgEm2ATbIJNsAk2wSbYBJtgE2yCTbAJNsEm2ASbYBP5Kt778u7UXq8veFMTvXHWWmey3dLd7fVOZ4DagPc1YeztcYJSo40XeDkpoW5vTBfv7XAdcHs9HfC+Jrx5LlVqDpf0Ti0LXKhYBlz/mmmjiSFcOAdHjgueLylZGTANLTThbbTMfe/HWB7jXfjnlPUNNBHvq5iWKpwo64YxfkQ4NNBEsq+qK48R83O76eM42UATVpTf8SF5ALoMcpUBb2zC1xCmgvBpdbaBJlzl6EibuOh2m/iUyfjnib+f49fn51moS57sdw00Mfzw7CQrG5taODvFx3hwUYuuaQEu6c41ccXW4XFjg9HdGH6TIpiOhOcCq9uYxQ7z9+U32iW5KC7Rga/t8rGozQD//yxWu0ndP7uyL05vR5tM83r5NWCSfUN3drqTTpr8yPBGOtcN+fRIXxfITrd3j+1/c//peY/N/3awCTbBJtgEm2ATbIJNsAk2wSbYBJtgE2yCTbAJNsEm0BGyyyLj5+eqsMrBcWJnVB6hNlc5OIJhGIZhGIZhmKOjlP3YihgvRyee3qs/jIk3MG/dG/ZCHv0bP3/5VSEzrVWxpejLX9Lck7/cY/tZ7FA0guhnsUMBgdj6XKAgVhUgiPUucBArChjEWhdIiKoCCFHvAgpRU2AhKgowRFmBhigq4BAlBR5CiEyBiMi6QERkXWAiki4wEUkXqIioC1RE1AUuIugCFxF0gYxYukBGLF1gIx5dYCMeXaAj7gp4xE2Bj7gqToAQszkBQk0nQAh1BoQggggiiCCCCCKIIIIIIogggggiiCCCCCKIIIIIIogggggiiCCCCCLS+J0IKw/OR/KrQu4ng6Z9iMN/k0e9ePsMwzAMwzAMc45sTvfd2D5Cb92oWQGPgDBsIDAM6wgQwyoCxbCGgDGsIHAMdQSQoYpAMtQQUIYKAstQRoAZigg0QwkBZygg8Aw5AtCQIRANKQLSkCAwDTEC1BAhUA0hAtYQIHAN3whgw4JANjwR0IYHAtvwhQA33BHohhsC3nBF4BuEPoFBmBMY/gEym4QRtMi7BwAAAABJRU5ErkJggg==\"","module.exports = \"data:image/png;base64,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\"","module.exports = __webpack_public_path__ + \"static/media/arturo-bot.35215357.png\";","function Endpoint() {\n let data = {\n Programa: \"api/cse/getCarreras/\",\n Tema: \"catalogo/motivo?areaCode=\",\n Subtema: \"catalogo/submotivo?motivoCode=\",\n Cursos: \"api/cse/GetCseCursos/\",\n InfoEstudiante: \"api/Alumno/GetByCodigo\",\n RegistrarConsulta: \"Incidencia/Caso\",\n TraerConsultasUPN: \"api/cse/GetConsultsByCodigo/\",\n TraerConsultasCRM: \"Incidencia/Persona?StudentCode=\",\n InteracionesPorConsultasCRM: \"Incidencia/Caso/\",\n InteracionesPorConsultasUPN: \"api/cse/GetConsultsHistoryByCodigo/\",\n UploadFileBucket: \"api/cse/UploadFileAwsS3/\",\n RemoveFileBucket: \"api/cse/RemoveFileAwsS3/\",\n DownloadFileBucket: \"api/cse/DownloadFileAwsS3/\"\n }\n return data;\n}\n\nexport default Endpoint;","import React from 'react';\nimport { BASE_URL_IDENTIDAD, BASE_URL_REDIRECT } from \"../../api/config\";\n\n\nconst queryParameters = (query) => {\n var keyValuePairs = query.split(/[&?]/g);\n var params = {};\n for (var i = 0, n = keyValuePairs.length; i < n; ++i) {\n var m = keyValuePairs[i].match(/^([^=]+)(?:=([\\s\\S]*))?/);\n if (m) {\n var key = decodeURIComponent(m[1]);\n (params[key] || (params[key] = [])).push(decodeURIComponent(m[2]));\n }\n }\n return params;\n};\n\nconst retrieveQueryParams = () => {\n const queryParams = window.location.search.slice(1);\n if (queryParams != \"\") {\n let objetoQueryParameters = queryParameters(queryParams);\n return objetoQueryParameters;\n } else {\n return \"\";\n }\n};\n\nconst decodeB64ToString = (b64) => {\n return decodeURIComponent(escape(window.atob(b64)));\n};\n\nconst authorizationHeader = (token) => {\n if (token === '') {\n return {\n \"Access-Control-Allow-Origin\": \"*\"\n };\n } else {\n return {\n 'Authorization': 'Bearer ' + token,\n \"Access-Control-Allow-Origin\": \"*\"\n };\n }\n};\n\nconst loader = (loading) => {\n return (\n
\n
\n
\n
\n
\n );\n}\n\nconst returLogin = (pagecode, pagename) => {\n window.location.href = BASE_URL_IDENTIDAD + pagecode + \"&redirect=\" + BASE_URL_REDIRECT + pagename;\n}\n\nconst getIconFile = (ext) => {\n const extPos = ext.lastIndexOf('.');\n if (extPos >= 0) {\n ext = ext.substring(extPos + 1);\n }\n var icon = 'fa-file-archive-o'\n if (ext != null && ext != 'null') {\n ext = ext.replace('.', '');\n if (ext == 'doc' || ext == 'docx') {\n icon = 'fa-file-word-o';\n } else if (ext == 'xls' || ext == 'xlsx') {\n icon = 'fa-file-excel-o';\n } else if (ext == 'pdf') {\n icon = 'fa-file-pdf-o';\n } else if (ext == 'ppt' || ext == 'pptx') {\n icon = 'fa-file-powerpoint-o';\n } else if (ext == 'mp3') {\n icon = 'fa-file-audio-o';\n } else if (ext == 'png' || ext == 'jpg' || ext == 'jpeg') {\n icon = 'fa-file-image-o';\n } else if (ext == 'mp4' || ext == 'mpeg' || ext == 'avi') {\n icon = 'fa-file-video-o';\n } else if (ext == 'zip' || ext == 'war') {\n icon = 'fa-file-zip-o';\n } else if (ext == 'txt' || ext == 'csv') {\n icon = 'fa-file-text-o';\n }\n }\n return icon;\n}\n\nconst navegatePage = (pagecode, pagename, codigoAlumno, token) => {\n window.location.href = '/' + pagename + '?tk=' + token + '&u=' + codigoAlumno + '&app=' + pagecode;\n}\n\nconst parseDate = (fechaRegistro) => {\n const [datePart, timePart] = fechaRegistro.split(' '); // Split date and time\n const [day, month, year] = datePart.split('/'); // Split date into day, month, year\n return new Date(`${year}-${month}-${day}T${timePart}`); // Reformat to \"YYYY-MM-DDTHH:MM:SS\" and convert to Date object\n}\n\nconst util = {\n retrieveQueryParams,\n decodeB64ToString,\n authorizationHeader,\n loader,\n returLogin,\n getIconFile,\n navegatePage,\n parseDate\n};\n\nexport default util\n","import axios from \"axios\";\nimport {\n BASE_URL_UPN, BASE_URL_CRM, BASE_URL_BUCKET_S3, BASE_URL_IDENTIDAD, BASE_URL_REDIRECT,\n ERROR_CODE_DEFAULT, BANNER_CODE, BANNER_PAGE, CONSULTA_CODE, CONSULTA_PAGE, MISCONSULTAS_CODE,\n MISCONSULTAS_PAGE\n} from \"./config\";\nimport Endpoints from \"./endpoints\";\nimport util from \"../recursos/js/util\";\n\nconst URL_UPN = `${BASE_URL_UPN}`;\nconst URL_CRM = `${BASE_URL_CRM}`;\nconst URL_BUCKET_S3 = `${BASE_URL_BUCKET_S3}`;\nconst URL_IDENTIDAD = `${BASE_URL_IDENTIDAD}`;\nconst URL_REDIRECT = `${BASE_URL_REDIRECT}`;\n// const ERROR_CODE_DEFAULT = `${ERROR_CODE_DEFAULT}`;\n\n\nconst getStudent = (codeStudent, token) =>\n axios\n .post(`${URL_UPN}${Endpoints().InfoEstudiante}`,\n { 'CodigoAlumno': util.decodeB64ToString(codeStudent) },\n {\n \"Content-Type\": \"application/json\",\n headers: util.authorizationHeader(token)\n })\n .then((response) => {\n return response;\n })\n .catch((error) => {\n return error.response;\n });\n\nconst getProgramas = (codeStudent, token) =>\n axios\n .get(`${URL_UPN}${Endpoints().Programa}${ util.decodeB64ToString(codeStudent)}`, \n {\n \"Content-Type\": \"application/json\",\n headers: util.authorizationHeader(token)\n })\n .then((response) => {\n return response;\n })\n .catch((error) => {\n return error.response;\n });\n\nconst getTema = (idArea) =>\n axios.get(`${URL_CRM}${Endpoints().Tema}${idArea}`, {\n //headers: \n })\n .then((response) => {\n return response;\n })\n .catch((error) => {\n return error.response;\n });\n\nconst getSubTemas = (idTema) =>\n axios.get(`${URL_CRM}${Endpoints().Subtema}${idTema}`, {\n })\n .then((response) => {\n return response;\n })\n .catch((error) => {\n return error.response;\n });\n\nconst getCursosMatriculados = (codeStudent, token) =>\n axios\n .get(`${URL_UPN}${Endpoints().Cursos}` + util.decodeB64ToString(codeStudent) + \"/\" + 0,\n {\n \"Content-Type\": \"application/json\",\n headers: util.authorizationHeader(token)\n })\n .then((response) => {\n return response;\n })\n .catch((error) => {\n return error.response;\n });\n\nconst uploadFileBucket = (data, codeStudent, token) =>\n axios\n .post(`${URL_UPN}${Endpoints().UploadFileBucket}` + util.decodeB64ToString(codeStudent),\n data,\n {\n \"Content-Type\": \"application/json\",\n headers: util.authorizationHeader(token)\n })\n .then((response) => {\n return response;\n })\n .catch((error) => {\n return error.response;\n });\n\nconst removeFileBucket = (s3, codeStudent, token) =>\n axios\n .post(`${URL_UPN}${Endpoints().RemoveFileBucket}` + util.decodeB64ToString(codeStudent) + \"/\" + s3,\n {},\n {\n \"Content-Type\": \"application/json\",\n headers: util.authorizationHeader(token)\n })\n .then((response) => {\n return response;\n })\n .catch((error) => {\n return error.response;\n });\n\nconst downloadFileBucket = (codeStudent, token, nameS3) =>\n axios\n .get(`${URL_UPN}${Endpoints().DownloadFileBucket}` + util.decodeB64ToString(codeStudent) + '/' + nameS3,\n {\n responseType: \"blob\",\n \"Content-Type\": \"application/json\",\n headers: util.authorizationHeader(token)\n })\n .then((response) => {\n return response;\n })\n .catch((error) => {\n return error.response;\n });\n\nconst registrarConsulta = (data) =>\n axios\n .post(`${URL_CRM}${Endpoints().RegistrarConsulta}`, data, { \"Content-Type\": \"application/json\" }\n )\n .then((response) => {\n return response;\n })\n .catch((error) => {\n return error.response;\n });\n\nconst traerConsultasUPN = (codeStudent, token) =>\n axios\n .get(`${URL_UPN}${Endpoints().TraerConsultasUPN}` + util.decodeB64ToString(codeStudent),\n {\n \"Content-Type\": \"application/json\",\n headers: util.authorizationHeader(token)\n })\n .then((response) => {\n return response;\n })\n .catch((error) => {\n return error.response;\n });\n\nconst traerConsultasPendientesCRM = (codeStudent) =>\n axios\n .get(`${URL_CRM}${Endpoints().TraerConsultasCRM}` + util.decodeB64ToString(codeStudent) + \"&Resuelto=false&Reciente=true\",\n {\n \"Content-Type\": \"application/json\",\n headers: util.authorizationHeader('')\n })\n .then((response) => {\n return response;\n })\n .catch((error) => {\n return error.response;\n });\n\nconst traerConsultasAtendidasCRM = (codeStudent) =>\n axios\n .get(`${URL_CRM}${Endpoints().TraerConsultasCRM}` + util.decodeB64ToString(codeStudent) + \"&Resuelto=true&Reciente=true\",\n {\n \"Content-Type\": \"application/json\",\n headers: util.authorizationHeader('')\n })\n .then((response) => {\n return response;\n })\n .catch((error) => {\n return error.response;\n });\n\nconst interaccionesPorCasoCRM = (idConsult) =>\n axios\n .get(`${URL_CRM}${Endpoints().InteracionesPorConsultasCRM}` + idConsult,\n {\n \"Content-Type\": \"application/json\"\n })\n .then((response) => {\n return response;\n })\n .catch((error) => {\n return error.response;\n });\n\nconst interaccionesPorCasoUPN = (codeStudent, idConsult, token) =>\n axios\n .get(`${URL_UPN}${Endpoints().InteracionesPorConsultasUPN}` + util.decodeB64ToString(codeStudent) + \"/\" + idConsult,\n {\n \"Content-Type\": \"application/json\",\n headers: util.authorizationHeader(token)\n })\n .then((response) => {\n return response;\n })\n .catch((error) => {\n return error.response;\n });\n\n\nconst api = {\n getTema,\n getStudent,\n getProgramas,\n getSubTemas,\n getCursosMatriculados,\n uploadFileBucket,\n removeFileBucket,\n downloadFileBucket,\n registrarConsulta,\n traerConsultasUPN,\n traerConsultasPendientesCRM,\n traerConsultasAtendidasCRM,\n interaccionesPorCasoCRM,\n interaccionesPorCasoUPN\n}\n\nexport default api;","import React, { useState, useEffect, useNavigate } from \"react\";\nimport logo from \"../recursos/images/logo-upn.png\";\nimport logoContacto from \"../recursos/images/logo-contacto-upn.png\";\nimport imgFlechaVertical from \"../recursos/images/flecha.png\"\nimport api from '../api/service';\nimport util from '../recursos/js/util';\nimport { useFormik } from 'formik';\nimport { useHistory } from 'react-router-dom';\nimport { BANNER_CODE, BANNER_PAGE, MISCONSULTAS_CODE, MISCONSULTAS_PAGE } from \"../api/config\";\n\n\nconst parametros = util.retrieveQueryParams();\nconst _codigoAlumno = parametros.u[0];\nconst _token = parametros.tk[0];\n\nconst _pageCode = `${MISCONSULTAS_CODE}`;\nconst _pageName = `${MISCONSULTAS_PAGE}`;\n\nconst MisConsultas = () => {\n\n const [student, setStudent] = useState({\n foto: \"\",\n nombres: \"\",\n apellidos: \"\",\n carrera: \"\",\n campus: \"\",\n modalidad: \"\"\n });\n const [alertModal, setAlertModal] = useState({\n show: false,\n message: ''\n });\n const [loading, setLoading] = useState(false);\n const [tabP, setTabP] = useState('active');\n const [tabContentP, settabContentP] = useState('');\n const [tabA, setTabA] = useState('');\n const [tabContentA, settabContentA] = useState('d-none');\n const [consults, setConsults] = useState([]);\n const [loadingConsults, setloadingConsults] = useState('');\n const [fotoStudent, setFotoStudent] = useState('');\n\n const alertModalDOM = (arr) => {\n const clase = (arr.show) ? 'modal fade bd-example-modal-sm bg-black-transparent interacciones show d-block' : 'modal fade bd-example-modal-sm bg-black-transparent interacciones';\n return (\n
\n
\n
\n
\n
\n
\n {arr.message}\n
\n
\n
\n
\n \n
\n
\n
\n
\n );\n };\n\n const cerrarAlertaModal = () => {\n setAlertModal({ show: false, message: '' });\n }\n\n const toPageBanner = () => {\n util.navegatePage(`${BANNER_CODE}`, `${BANNER_PAGE}`, _codigoAlumno, _token);\n };\n\n const returnIdentidad = () => {\n util.returLogin(_pageCode, _pageName);\n };\n\n const tabPanelConsults = (e) => {\n const tab = e.currentTarget.getAttribute(\"data-tab\");\n if (tab === \"P\") {\n setTabP('active');\n settabContentP('');\n setTabA('');\n settabContentA('d-none');\n } else if (tab === \"A\") {\n setTabP('');\n settabContentP('d-none');\n setTabA('active');\n settabContentA('');\n }\n };\n\n const getStudent = async (codeStudent, token) => {\n //setLoading(true);\n let response = await api.getStudent(codeStudent, token);\n if (response.status === 200) {\n if (response.data.status != \"NOK\") {\n setStudent({\n foto: response.data.detail.foto,\n nombres: response.data.detail.nombres,\n apellidos: response.data.detail.apellidoPaterno + ' ' + response.data.detail.apellidoMaterno,\n carrera: response.data.detail.objCarrera.nombre,\n campus: response.data.detail.objSede.nombre,\n modalidad: response.data.detail.objPrograma.nombre\n });\n setFotoStudent(response.data.detail.foto);\n } else {\n setStudent([]);\n }\n } else if (response.status === 401) {\n returnIdentidad();\n } else {\n setStudent([]);\n console.log(response);\n }\n //setLoading(false);\n };\n\n const getConsults = async (codeStudent, token) => {\n setLoading(true);\n setloadingConsults('');\n const _consults = [];\n let response = await api.traerConsultasUPN(codeStudent, token);\n let responseP = await api.traerConsultasPendientesCRM(codeStudent);\n let responseA = await api.traerConsultasAtendidasCRM(codeStudent);\n\n\n if (responseP.status === 200) {\n if (responseP.data.IndicadorExito == 'OK') {\n\n responseP.data.Detail.sort((a, b) => {\n const dateA = new Date(util.parseDate(a.FechaRegistro));\n const dateB = new Date(util.parseDate(b.FechaRegistro));\n return dateB - dateA;\n });\n\n for (let item of responseP.data.Detail) {\n if (item.Origen == 'MiMundoUPN') {\n _consults.push({\n consultaId: item.NumeroCaso,\n consultaCodigoAlumno: item.CodigoAlumno,\n consultaFechaRegistro: item.FechaRegistro.substring(0, 16),\n consultaEstado: item.RazonEstado,\n consultaTema: item.Motivo,\n consultaSubTema: item.SubMotivo,\n consultaDescripcion: item.Descripcion,\n consultaFuente: 'CRM',\n consultaTab: 'P',\n consultaHtml: templateConsult(item.CodigoAlumno, item.NumeroCaso, item.FechaRegistro.substring(0, 16),\n item.RazonEstado, item.Motivo, item.SubMotivo, item.Descripcion, 'CRM')\n });\n }\n }\n }\n }\n\n if (responseA.status === 200) {\n if (responseA.data.IndicadorExito == 'OK') {\n\n responseA.data.Detail.sort((a, b) => {\n const dateA = new Date(util.parseDate(a.FechaRegistro));\n const dateB = new Date(util.parseDate(b.FechaRegistro));\n return dateB - dateA;\n });\n\n for (let item of responseA.data.Detail) {\n if (item.Origen == 'MiMundoUPN') {\n _consults.push({\n consultaId: item.NumeroCaso,\n consultaCodigoAlumno: item.CodigoAlumno,\n consultaFechaRegistro: item.FechaRegistro.substring(0, 16),\n consultaEstado: item.RazonEstado,\n consultaTema: item.Motivo,\n consultaSubTema: item.SubMotivo,\n consultaDescripcion: item.Descripcion,\n consultaFuente: 'CRM',\n consultaTab: 'A',\n consultaHtml: templateConsult(item.CodigoAlumno, item.NumeroCaso, item.FechaRegistro.substring(0, 16),\n item.RazonEstado, item.Motivo, item.SubMotivo, item.Descripcion, 'CRM')\n });\n }\n }\n }\n }\n \n if (response.status === 200) {\n if (response.data.status === \"OK\") {\n for (let item of response.data.detail) {\n _consults.push({\n consultaId: item.id,\n consultaCodigoAlumno: codeStudent,\n consultaFechaRegistro: item.fechaRegistro.substring(0, 16),\n consultaEstado: item.estado,\n consultaTema: item.tipo,\n consultaSubTema: item.subtipo,\n consultaDescripcion: item.consulta,\n consultaFuente: 'UPN',\n consultaTab: item.estadoCodigo,\n consultaHtml: templateConsult(codeStudent, item.id, item.fechaRegistro.substring(0, 16),\n item.estado, item.tipo, item.subtipo, item.consulta, 'UPN')\n });\n }\n }\n } else if (response.status === 401) {\n returnIdentidad();\n }\n\n setloadingConsults('d-none');\n setConsults(_consults);\n setLoading(false);\n };\n\n const viewDetail = async (e) => {\n setLoading(true);\n const idConsult = e.currentTarget.getAttribute(\"data-id\");\n const origen = e.currentTarget.getAttribute(\"data-origin\");\n var tracking = '';\n var message = '';\n if (origen == 'CRM') {\n const response = await api.interaccionesPorCasoCRM(idConsult);\n console.log(response);\n if (response.status === 200) {\n if (response.data.IndicadorExito === 'OK') {\n\n message =\n

{response.data.Detail.NumeroCaso}

\n
\n
\n \n

\n {response.data.Detail.FechaRegistroCaso}\n

\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n
\n
\n\n var estado = response.data.Detail.RazonEstado.toLowerCase().replace(/\\s/g, '');\n var estado_orden = 1;\n if (estado == 'encurso') {\n estado_orden = 1;\n } else if (estado == 'enrevisión') {\n estado_orden = 2;\n } else if (estado == 'sehaderivadotuconsulta') {\n estado_orden = 3;\n } else if (estado == 'casoresuelto') {\n estado_orden = 4;\n }\n\n tracking =\n
\n
\n
\n
    \n
  • = 1) ? 'active' : '') + ' step0'}>

    Consulta recibida

  • \n
  • = 2) ? 'active' : '') + ' step0'}>

    En revisión

  • \n
  • = 3) ? 'active' : '') + ' step0'}>

    Se ha derivado tu consulta

  • \n
  • = 4) ? 'active' : '') + ' step0'}>

    Respuesta enviada

  • \n
\n
\n
\n
\n\n if (response.data.Detail.RespuestaCaso != '' && response.data.Detail.RespuestaCaso != 'null' && response.data.Detail.RespuestaCaso != null) {\n message =\n <>\n {message}\n
\n
\n \n
\n
\n
\n
Respuesta al Caso
\n \n
\n
\n
\n {tracking}\n \n } else {\n var sla = response.data.Detail.SLAEnHoras;\n var slaText = '24 HORAS';\n if (sla <= 72) {\n slaText = sla + ' HORAS';\n } else {\n sla = sla / 24;\n var sla_part = sla.toString();\n var slaEntero = '';\n var slaDecimal = '';\n if (sla_part.indexOf(\".\") > -1) {\n slaEntero = sla_part.split('.')[0];\n slaDecimal = sla_part.split('.')[1];\n if (slaDecimal.length > 1) {\n slaDecimal = slaDecimal.substring(1, 2);\n }\n slaText = slaEntero + '.' + slaDecimal + ' DÍAS';\n } else {\n slaText = sla + ' DÍAS';\n }\n\n }\n message = <>\n {message}\n
\n
\n \n \n \n \n \n \n \n \n

RECUERDA QUE TU TICKET SERÁ ATENDIDO
DENTRO DE {slaText} HÁBILES
\n
\n
\n {tracking}\n \n }\n }\n }\n } else {\n const response = await api.interaccionesPorCasoUPN(_codigoAlumno, idConsult, _token);\n if (response.status === 200) {\n if (response.data.status === 'OK') {\n message = bloqueInteracion(response.data.detail, idConsult);\n }\n }\n }\n setAlertModal({ show: true, message: message });\n setLoading(false);\n };\n\n \n\n const bloqueInteracion = (arr, numeroCaso) => {\n var item_foro = [];\n var tracking = '';\n var statusConsult = '';\n for (var item of arr) {\n statusConsult = item.estado;\n item_foro.push(\n
\n
\n \n

{item.fecha}

\n
\n
\n
\n
\") }} />\n
\n
\n { printFileAttachment(item.attachment) } \n
\n
\n
\n
\n
\n )\n }\n \n var estado_orden = 1;\n if (statusConsult == 'encurso' || statusConsult == 'P') {\n estado_orden = 1;\n } else if (statusConsult == 'enrevisión' || statusConsult == 'P') {\n estado_orden = 2;\n } else if (statusConsult == 'sehaderivadotuconsulta' || statusConsult == 'E' || statusConsult == 'C') {\n estado_orden = 3;\n } else if (statusConsult == 'casoresuelto' || statusConsult == '' || statusConsult == 'A') {\n estado_orden = 4;\n }\n tracking =\n
\n
\n
\n
    \n
  • = 1) ? 'active' : '') + ' step0'}>

    Consulta recibida

  • \n
  • = 2) ? 'active' : '') + ' step0'}>

    En revisión

  • \n
  • = 3) ? 'active' : '') + ' step0'}>

    Se ha derivado tu consulta

  • \n
  • = 4) ? 'active' : '') + ' step0'}>

    Respuesta enviada

  • \n
\n
\n
\n
\n\n return <>\n

{numeroCaso}

\n { item_foro }\n { tracking }\n \n };\n\n const printFileAttachment = (arr, origen) => {\n return \n };\n\n\n const convertFileIcon = (ext) => {\n var icon = 'fa-file-archive-o'\n if (ext != null && ext != 'null') {\n ext = ext.replace('.','');\n if(ext == 'doc' || ext == 'docx') {\n icon = 'fa-file-word-o';\n } else if(ext == 'xls' || ext == 'xlsx') {\n icon = 'fa-file-excel-o';\n } else if(ext == 'pdf') {\n icon = 'fa-file-pdf-o';\n } else if(ext == 'ppt' || ext == 'pptx') {\n icon = 'fa-file-powerpoint-o';\n } else if(ext == 'mp3') {\n icon = 'fa-file-audio-o';\n } else if(ext == 'png' || ext == 'jpg' || ext == 'jpeg') {\n icon = 'fa-file-image-o';\n } else if(ext == 'mp4' || ext == 'mpeg' || ext == 'avi') {\n icon = 'fa-file-video-o';\n } else if(ext == 'zip' || ext == 'war') {\n icon = 'fa-file-zip-o';\n }else if(ext == 'txt' || ext == 'csv') {\n icon = 'fa-file-text-o';\n }\n }\n return icon;\n };\n\n const downloadFile = async (nameS3, filename) => {\n try {\n const response = await api.downloadFileBucket(_codigoAlumno, _token, nameS3);\n if (response.status === 200) {\n const href = URL.createObjectURL(response.data);\n const link = document.createElement('a');\n link.href = href;\n link.setAttribute('download', filename); \n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n URL.revokeObjectURL(href);\n } else {\n alert(\"Ocurrio un problema.\\nIntente más tarde.\");\n }\n }\n catch (error) {\n alert(\"Ocurrio un problema.\\nIntente más tarde. \" + error);\n }\n };\n\n const templateConsult = (CodigoAlumno, id, fechaRegistro, estado, tema, subtema, descripcion, origen) => {\n return (\n
\n \n \n \n \n \n \n \n \n \n \n
{id}\n

Fecha de registro: {fechaRegistro}

\n

Estado: {estado}

\n
\n

Tema: {tema}

\n

Subtema: {subtema}

\n

Consulta:

\n
') }} />\n \n SEGUIMIENTO\n \n
\n
\n );\n }\n\n useEffect(() => {\n getStudent(_codigoAlumno, _token);\n getConsults(_codigoAlumno, _token);\n }, []);\n\n return (\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n \n Nombres:{student.nombres}
Apellidos:{student.apellidos}
Carrera:{student.carrera}
Campus:{student.campus}
Modalidad:{student.modalidad}
\n
\n \n
\n
\n

Cargando Consultas por Atender  

\n
\n {\n consults.filter(y => {\n if (y.consultaTab == \"P\") return y;\n }).map((x) => (\n
{x.consultaHtml}
\n ))\n }\n
\n
\n
\n

Cargando Consultas Atendidas  

\n
\n {consults.filter(y => {\n if (y.consultaTab == \"A\") return y;\n }).map((x) => (\n
{x.consultaHtml}
\n ))}\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n {util.loader(loading)}\n {alertModalDOM(alertModal)}\n
\n )\n};\n\n\nexport default MisConsultas;\n\n","import React from \"react\";\nimport Misconsultas from \"./pages/misconsultas\";\n\nfunction App() {\n return (\n \n )\n}\n\nexport default App;\n","import React from \"react\";\nimport util from \"../recursos/js/util\";\nimport logo from \"../recursos/images/logo-upn.png\";\nimport arturoBot from \"../recursos/images/arturo-bot.png\";\nimport whatsapp from \"../recursos/images/whatsapp.png\"\nimport buenDatoImg from \"../recursos/images/buen-dato.png\";\nimport { Link } from \"react-router-dom\";\nimport { CONSULTA_CODE, CONSULTA_PAGE, MISCONSULTAS_CODE, MISCONSULTAS_PAGE } from \"../api/config\";\n\nconst parametros = util.retrieveQueryParams();\nconst _codigoAlumno = parametros.u[0];\nconst _token = parametros.tk;\n\nconst irMisConsultas = () => {\n util.navegatePage(`${MISCONSULTAS_CODE}`,`${MISCONSULTAS_PAGE}`,_codigoAlumno,_token);\n};\nconst irConsulta = () => {\n util.navegatePage(`${CONSULTA_CODE}`,`${CONSULTA_PAGE}`,_codigoAlumno,_token);\n};\n\n\nfunction App() {\n return (\n
\n
\n
\n \n
\n
\n
\n
\n

\n Revisa tu calendario académico AQUÍ\n

\n
\n
\n
\n
\n \n \n \n \n \n \n \n
\n \n \n

Whatsapp del estudiante:

\n

Si tienes dudas y necesitas

\n

charlar con un asesor.

\n INGRESA AQUÍ\n
\n
\n
\n \n \n \n \n \n \n \n
\n \n \n

EL BUEN DATO:

\n

Grupo de Facebook de

\n

estudiantes para estudiantes

\n INGRESA AQUÍ\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n

ESTIMADO ESTUDIANTE:

\n
\n
\n
\n
\n
\n
\n

Para poder brindarte una mejor atención, te agradeceremos escoger apropiadamente el área de servicio o tema de consulta y luego el subtema de tu interés.

\n
\n

*Recuerda que tu consulta será respondida dentro de las 24 horas hábiles y te notificaremos durante todo el proceso de atención.

\n
\n     \n \n
\n
\n
\n
\n
\n
\n
\n )\n}\n\nexport default App;","import React, { useState, useEffect, useNavigate } from \"react\";\nimport logo from \"../recursos/images/logo-upn.png\";\nimport imgFlechaVertical from \"../recursos/images/flecha.png\"\nimport imgSignoExclamacion from \"../recursos/images/bocadillo-de-dialogo-con-signo-de-exclamacion.png\"\nimport api from '../api/service';\nimport util from '../recursos/js/util';\nimport { useFormik } from 'formik';\nimport { useHistory } from 'react-router-dom';\nimport { BANNER_CODE, BANNER_PAGE, CONSULTA_CODE, CONSULTA_PAGE } from \"../api/config\";\n\n\nconst parametros = util.retrieveQueryParams();\nconst _codigoAlumno = parametros.u[0];\nconst _token = parametros.tk;\nconst _pageCode = `${CONSULTA_CODE}`;\nconst _pageName = `${CONSULTA_PAGE}`;\nconst _idArea = \"01-A\";\nconst _attachment = [];\nconst _attachment_aux = [];\n\nconst Consulta = () => {\n const [loading, setLoading] = useState(false);\n const [alertModal, setAlertModal] = useState({\n show: false,\n type: '',\n message: ''\n });\n const [alertModalConfirmacionRegistro, setAlertModalConfirmacionRegistro] = useState({\n show: false,\n type: '',\n message: ''\n });\n const [isReadyToSubmit, setIsReadyToSubmit] = useState(false);\n const [student, setStudent] = useState({\n foto: \"\",\n nombres: \"\",\n apellidos: \"\",\n carrera: \"\",\n campus: \"\",\n modalidad: \"\"\n });\n const [tema, setTema] = useState(\"\");\n const [programas, setProgramas] = useState([]);\n const [temas, setTemas] = useState([]);\n const [subtemas, setSubTemas] = useState([]);\n const [cursos, setCursos] = useState([]);\n const [displayCursos, setDisplayCursos] = useState(\"d-none\");\n const [record, setRecord] = useState({\n ddCarreraEspecialidad: \"\",\n ddlTemas: \"\",\n ddlSubTemas: \"\",\n ddlCurso: \"\",\n txtConsulta: \"\"\n });\n\n const returnIdentidad = () => {\n util.returLogin(_pageCode, _pageName);\n }\n\n const alertModalDOMConfirmacionRegistro = () => {\n\n const clase = (alertModalConfirmacionRegistro.show) ? 'modal fade bd-example-modal-sm bg-black-transparent show d-block' : 'modal fade bd-example-modal-sm bg-black-transparent';\n\n return (\n
\n
\n
\n
\n
\n

¡Importante!

\n

No olvides que para evaluar tu pedido o identificar alguna incidencia,\n debes adjuntarnos las evidencias de tu caso; de lo contrario te pediremos enviarnos la información en un próximo ticket.\n

\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n )\n }\n\n const handleShowModalConfirmacionRegistro = (show, accept) => {\n\n setAlertModalConfirmacionRegistro({ show: show, type: \"\", message: \"\" })\n\n if (accept) {\n setIsReadyToSubmit(true);\n formik.handleSubmit();\n }\n\n };\n\n const alertModalDOM = (arr) => {\n const clase = (arr.show) ? 'modal fade bd-example-modal-sm bg-black-transparent show d-block' : 'modal fade bd-example-modal-sm bg-black-transparent';\n if (arr.type == 'success') {\n return (\n
\n
\n
\n
\n

\n

¡Tu consulta se registro correctamente!

\n

Nuestro equipo especializado se contactará lo más pronto posible

\n

Número de Consulta: {arr.message}

\n
\n
\n \n
\n
\n
\n
\n );\n } else {\n return (\n
\n
\n
\n
\n

{arr.message}

\n
\n
\n \n
\n
\n
\n
\n );\n }\n }\n const cerrarAlertaModal = () => {\n setAlertModal({ show: false, type: '', message: '' });\n }\n\n const getStudent = async (codeStudent, token) => {\n setLoading(true);\n let response = await api.getStudent(codeStudent, token);\n if (response.status === 200) {\n if (response.data.status != \"NOK\") {\n setStudent({\n foto: response.data.detail.foto,\n nombres: response.data.detail.nombres,\n apellidos: response.data.detail.apellidoPaterno + ' ' + response.data.detail.apellidoMaterno,\n carrera: response.data.detail.objCarrera.nombre,\n campus: response.data.detail.objSede.nombre,\n modalidad: response.data.detail.objPrograma.nombre\n });\n } else {\n setStudent([]);\n console.log(response.data);\n }\n } else if (response.status === 401) {\n returnIdentidad();\n } else {\n setStudent([]);\n console.log(response);\n }\n setLoading(false);\n };\n\n const getProgramas = async (codeStudent, token) => {\n setLoading(true);\n setProgramas([{ codigoPrograma: \"\", nombreCarrera: \"Seleccione un Programa\" }]);\n let response = await api.getProgramas(codeStudent, token);\n let data = [{ codigoPrograma: \"\", nombreCarrera: \"Seleccione\" }];\n response.data.detail.forEach((x) => data.push(x));\n if (response.status === 200) {\n setProgramas(data);\n } else {\n setProgramas([]);\n }\n setLoading(false);\n }\n\n const getTema = async () => {\n setLoading(true);\n setSubTemas([{ CodigoSubMotivo: \"\", TieneCurso: \"\", NombreSubMotivo: \"Seleccione un Tema\" }]);\n let response = await api.getTema(_idArea);\n let data = [{ CodigoMotivo: \"\", NombreMotivo: \"Seleccione\" }];\n response.data.Detail.forEach((x) => data.push(x));\n if (response.status === 200) {\n setTemas(data);\n } else {\n setTemas([]);\n }\n setLoading(false);\n }\n\n const getSubTemas = async (e) => {\n formik.values.ddlTemas = e.target.value;\n setLoading(true);\n const _tema = e.target.value;\n setTema(_tema);\n if (_tema !== \"\") {\n let response = await api.getSubTemas(_tema);\n let data = [{ CodigoSubMotivo: \"\", TieneCurso: \"\", NombreSubMotivo: \"Seleccione\" }];\n response.data.Detail.forEach((x) => data.push(x));\n if (response.status === 200) {\n setSubTemas(data);\n } else {\n setSubTemas([]);\n }\n } else {\n setSubTemas([]);\n }\n setLoading(false);\n }\n\n const getCursos = async (e) => {\n setLoading(true);\n const _subTema = e.target.value;\n formik.values.ddlSubTemas = _subTema;\n if (_subTema.split('@')[1] == 'SI') {\n let response = await api.getCursosMatriculados(_codigoAlumno, _token);\n if (response.status === 200) {\n if (response.data.detail[0].flag == 'S') {\n let data = [{ cursoCodigo: \"\", cursoDescripcion: \"Seleccione\" }];\n response.data.detail.forEach((x) => data.push(x));\n setCursos(data);\n } else {\n setCursos([{ cursoCodigo: \"\", cursoDescripcion: \"No cuenta con cursos matriculados\" }]);\n }\n } else {\n setCursos([{ cursoCodigo: \"\", cursoDescripcion: \"No cuenta con cursos matriculados\" }]);\n }\n setDisplayCursos('');\n } else {\n setCursos([{ cursoCodigo: \"\", cursoDescripcion: \"Seleccione\" }]);\n setDisplayCursos('d-none');\n };\n setLoading(false);\n }\n\n const addFilesAttachment = () => {\n document.getElementById('fileAttachment').click();\n }\n\n const addFile = async (e) => {\n const files = e.target.files;\n var data = new FormData();\n for (var i = 0; i < files.length; i++) {\n data.append(files[i].name, files[i]);\n }\n setLoading(true);\n const response = await api.uploadFileBucket(data, _codigoAlumno, _token);\n if (response.status === 200) {\n if (response.data.status == \"OK\") {\n for (let item of response.data.detail) {\n _attachment.push({ NombreAdjunto: item.nameFileOriginal, UrlAdjunto: item.message });\n response.data.detail.forEach((x) => _attachment_aux.push(x));\n }\n }\n } else if (response.status == 401) {\n returnIdentidad();\n }\n document.getElementById('fileAttachment').value = '';\n setLoading(false);\n }\n\n const removeFileAttachment = async (e) => {\n const keyS3 = e.currentTarget.getAttribute(\"data-names3\");\n setLoading(true);\n const response = await api.removeFileBucket(keyS3, _codigoAlumno, _token);\n if (response.status == 200) {\n if (response.data.status == \"OK\") {\n _attachment_aux.forEach(function (currentValue, i, arr) {\n if (_attachment_aux[i].nameS3 == keyS3) {\n _attachment.splice(i, 1);\n _attachment_aux.splice(i, 1);\n }\n });\n }\n } else if (response.status == 401) {\n returnIdentidad();\n }\n setLoading(false);\n console.log(_attachment);\n console.log(_attachment_aux);\n }\n\n const toPageBanner = () => {\n util.navegatePage(`${BANNER_CODE}`, `${BANNER_PAGE}`, _codigoAlumno, _token);\n }\n\n const clearFileds = () => {\n setRecord({\n ddCarreraEspecialidad: \"\",\n ddlTemas: \"\",\n ddlSubTemas: \"\",\n ddlCurso: \"\",\n txtConsulta: \"\"\n })\n _attachment.length = 0;\n _attachment_aux.length = 0;\n document.getElementsByTagName('txtConsulta').value = '';\n formik.initialValues.txtConsulta = \"\";\n }\n\n\n useEffect(() => {\n clearFileds();\n getStudent(_codigoAlumno, _token)\n getProgramas(_codigoAlumno, _token);\n getTema();\n }, []);\n\n const formik = useFormik({\n enableReinitialize: true,\n validateOnChange: false,\n initialValues: record,\n validationSchema: false,\n onSubmit: async (formData) => {\n\n if (!isReadyToSubmit) {\n handleShowModalConfirmacionRegistro(true, false);\n return;\n }\n\n console.log(formData);\n\n let registroConsulta = {\n CodigoAlumno: util.decodeB64ToString(_codigoAlumno),\n CodigoDocente: '',\n UnidadNegocio: formData.ddCarreraEspecialidad.split('@')[0],\n Sede: formData.ddCarreraEspecialidad.split('@')[1],\n Carrera: formData.ddCarreraEspecialidad.split('@')[2],\n Origen: '3',\n Tipo: '1',\n Area: _idArea,\n Motivo: formData.ddlTemas,\n SubMotivo: formData.ddlSubTemas.split('@')[0],\n Descripcion: formData.txtConsulta,\n NombreApoderado: '',\n Curso: formData.ddlCurso,\n Adjuntos: _attachment\n }\n console.log(\"registroConsulta\");\n console.log(registroConsulta);\n setLoading(true);\n const response = await api.registrarConsulta(registroConsulta);\n console.log(\"response\");\n console.log(response);\n if (response.data.IndicadorExito == 'OK') {\n setAlertModal({ show: true, type: 'success', message: response.data.Detail.NumeroCaso });\n clearFileds();\n } else {\n setAlertModal({ show: true, type: 'danger', message: response.data.DescripcionError });\n }\n setLoading(false);\n }\n })\n\n\n return (\n
\n
\n
\n
\n \n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n \n Nombres:{student.nombres}
Apellidos:{student.apellidos}
Carrera:{student.carrera}
Campus:{student.campus}
Modalidad:{student.modalidad}
\n
\n
\n
\n
\n \n \n {programas.map((x) => (\n \n ))}\n \n
\n
\n \n \n {temas.map((x) => (\n \n ))}\n \n
\n
\n \n \n {subtemas.map((x) => (\n \n {x.NombreSubMotivo}\n \n ))}\n \n
\n
\n
\n \n \n {cursos.filter(y => {\n if (y.cursoDescripcion != \"\") return y;\n }).map((x) => (\n \n ))}\n \n
\n
\n
\n
\n
\n
\n Describe tu consulta\n
\n
\n
\n
\n
\n
    \n {_attachment_aux.map((x) => (\n
  • \n

    \n \n {\" \" + x.nameFileOriginal}\n \n \n \n

    \n
  • \n ))}\n
\n
\n Adjuntar archivos (max. 5MB por adjunto)\n \n
\n
\n
\n \n
\n
\n \n REGRESAR\n \n      \n ENVÍA TU CONSULTA\n
\n
\n
\n
\n {util.loader(loading)}\n {alertModalDOM(alertModal)}\n {alertModalDOMConfirmacionRegistro()}\n
\n )\n\n}\n\n\nexport default Consulta;","const reportWebVitals = onPerfEntry => {\n if (onPerfEntry && onPerfEntry instanceof Function) {\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\n getCLS(onPerfEntry);\n getFID(onPerfEntry);\n getFCP(onPerfEntry);\n getLCP(onPerfEntry);\n getTTFB(onPerfEntry);\n });\n }\n};\n\nexport default reportWebVitals;\n","import React from 'react';\nimport ReactDOM from 'react-dom/client';\nimport './index.css';\nimport './recursos/css/main.css';\nimport './recursos/css/loader.css';\nimport App from './App';\nimport Banner from './pages/banner';\nimport Consulta from './pages/consulta';\nimport MisConsulta from './pages/misconsultas';\nimport { BrowserRouter as Router, Route, Redirect, Link, Routes } from 'react-router-dom';\nimport reportWebVitals from './reportWebVitals';\n\nconst root = ReactDOM.createRoot(document.getElementById('root'));\nroot.render(\n \n {/* App\n

\n Banner\n

\n Consulta */}\n \n }/>\n }/>\n }/>\n }/>\n \n
\n);\n\n// ReactDOM.render(\n// \n// App\n//

\n// Banner\n//

\n// Consulta\n// \n// \n// \n// \n// \n//
,\n// document.getElementById('root')\n// )\n\n// const root = ReactDOM.createRoot(document.getElementById('root'));\n// root.render(\n// \n// \n// \n// );\n\n// If you want to start measuring performance in your app, pass a function\n// to log results (for example: reportWebVitals(console.log))\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\nreportWebVitals();\n"],"sourceRoot":""}