Censo - Alumnos

Obtener configuración de Censo

Configuración de Censo por colegio y ciclo escolar

Método: GET

Ejemplo:

https://homol.uno-internacional.com/pegasus-api/dashboard/empresas/8/config?cicloEscolarId=785&colegioId=13244

Instrucciones.

En la respuesta, están las configuraciones de todos los módulos que se utilizan en la aplicación: ACUERDO, CENSO, STAFF, ARTICULOS, etc.

Para obtener la configuración de CENSO, se debe recorrer el array que se encuentra en la respuesta en campo ´data´ y buscar el item donde el campo ´module´ sea CENSO.

image-20240823-145453.png

Una vez encontrado este item dentro del array de ´data´, en el campo ´settings´ se encuentran todas las configuraciones de CENSO que deben ser aplicadas para el colegio en el ciclo escolar elegido.

Configuración de Censo para editar alumnos

Contiene la configuración a usar en el módulo de editar un alumno, desde las secciones a mostrar hasta las validaciones a realizar, además de los permisos en este módulo

Método: GET

Ejemplo:

https://homol.uno-internacional.com/pegasus-api/dashboard/empresas/8/ciclos/785/moduleConfig/CENSO.ALUMNO.EDITAR?colegioId=17388

Lista de alumnos


Descargar lista

Todo el colegio

Método: GET

Ejemplo:

https://homol.uno-internacional.com/pegasus-api/censo/empresas/76/ciclos/1188/colegios/17919/reporteAlumnos?descargar=1

Por Nivel / Segmento

Método: GET

Ejemplo:

https://homol.uno-internacional.com/pegasus-api/censo/empresas/76/ciclos/1188/colegios/17919/reporteAlumnos?descargar=1&nivelId=32

Activar/Inactivar Alumno

Método: POST

Ejemplo:

https://homol.uno-internacional.com/pegasus-api/censo/empresas/76/ciclos/1188/colegios/17919/niveles/32/grados/85/grupos/2280/alumnos/26041025/activarInactivar

Payload

{ "activo": 0, "razonInactivoId": 0, "observaciones": "" }
  • Activo:

    • 0 - para inactivar

    • 1 - para activar

  • razonInactivoId: siempre en cero

  • observaciones: siempre string vacío

Validaciones:

Solo se permite activarInactivar alumnos si se cumplen las siguientes condiciones

  • El usuario firmado es administrador [SA, CTU, AN] sin importar el status del alumno y si tiene o no documentos aplicados con pago o cancelados

  • El usuario es gestor colegio [GC] y el alumno esta activo

    • data[].activo = true

  • El usuario es gestor colegio [GC] y el alumno está inactivo y no tiene documentos aplicados ya sea con pago o cancelados

    • data[].activo = false

    • data[].countDocumento2aplicados = 0

    • data[].countDocumento2cancelados = 0

Eliminar Alumno

Método: DELETE

Ejemplo:

https://homol.uno-internacional.com/pegasus-api/censo/empresas/76/ciclos/1188/colegios/17919/niveles/33/grados/90/grupos/2280/alumnos/26039193/borrar

Validaciones:

Un alumno puede ser seleccionado para ser eliminado, solo si se cumplen las siguientes condiciones.

  • La configuración del candado no está prendida

    • Dentro de la configuración de CENSO, existe el objeto ´candado´. Se considera que el candado está activo solo si se cumplen las siguientes condiciones:

      • candado.activo = true

      • candado.fechaInicio <= fecha_actual

      • candado.fechaFinal > fecha_actual

    • Si el usuario tiene rol Administrador [SA], entonces NO se aplica el candado sin importar que esté activo.

  • El alumno NO tiene documentos

    • data[].documentos = false

  • El alumno NO tiene historial

    • data[].promovido = false

  • El alumno NO tiene Ipad Sincronizada

    • data[].ipadSincronizada = false

  • El porcentaje de pago es cero

    • data[].porcentajePago = 0

  • El alumno NO tiene observaciones

    • data[].observaciones = false

Mover Alumno

Método: POST

Ejemplo:

https://homol.uno-internacional.com/pegasus-api/censo/empresas/76/ciclos/1188/colegios/17919/niveles/33/grados/90/grupos/2280/alumnos/26041017/mover

Payload

{ "nuevoNivelId": 32, "nuevoGradoId": 85, "nuevoGrupoId": 2280, "observaciones": "teste" }

Editar Alumno

Al elegir la opción de editar alumno, se debe redireccionar al usuario a la vista del Perfil del Alumno

Validaciones:

Siempre se puede consultar el perfil de un alumno, pero solo se debe permitir editar un alumno si se cumplen las siguientes condiciones

  • El usuario firmado tiene rol Administrador [SA, CTU, AN]

  • El usuario firmado tiene rol Gestor Colegio [GC] y el alumno no tiene pago asociado y el porcentaje de pago es cero

    • data[].conPago = false

    • data[].porcentajePago = 0

Reiniciar Contraseña

Método: PUT

Ejemplo:

https://homol.uno-internacional.com/pegasus-api/censo/empresas/8/ciclos/785/colegios/13244/niveles/33/grados/90/grupos/2280/alumnos/26041220/updatePasswordInicial

Payload

Se envía un body vacío

Perfil de Alumno


Obtener Alumno por ID

Método: GET

Ejemplo:

https://homol.uno-internacional.com/pegasus-api/prometeo/censo/empresas/76/ciclos/1188/colegios/17919/niveles/33/grados/90/grupos/2281/alumnos/26041387

Datos del Alumno

En base a la respuesta del servicio para obtener el alumno por ID, se obtiene la siguiente información.

  • Nombre: data.persona.nombreCompleto

  • Nivel/Segmento: data.nivel.nivel

  • Grado/Ano: data.grado.grado

  • Grupo/Turma: data.grupo.grupo

  • Sexo/Género: data.persona.sexoMoral

    • M: Masculino

    • F: Femenino

  • Activo: data.activo

  • Fecha de nacimiento: data.persona.fechaNacimiento

  • Fecha de registro: data.fechaDesde

  • ID Responsable: data.idResponsable

    • Debe mostrarse con el formato de CPF

  • Login: data.login

Información de los sellos/empresas

En base a la respuesta del servicio para obtener el alumno por ID, se obtiene la siguiente información.

  • sellos: data.empresas[].empresa

    • ´empresas´ es un array donde cada item es un sello, se toma el campo ´empresa´ para indicar el nombre del sello.

    • se puede utilizar el campo ´parametro´ para identificar qué imagen mostrar en cada sello

    • se debe utilizar el campo ´empresaId´ para los siguientes llamados a la API que corresponden a las acciones en cada sello.

Obtener alumnos vinculados a cada sello/empresa

Método: GET

Ejemplo:

https://homol.uno-internacional.com/pegasus-api/censo/empresas/76/ciclos/1188/colegios/17919/niveles/33/grados/88/grupos/2280/alumnos/26041434/alumnoUnificados

Instrucciones:

En la respuesta de este servicio, en el campo ´data´ se encuentra un array donde cada elemento del array contiene los datos del alumno correspondientes a cada sello, a partir de este momento, estos son los datos que se deben utilizar para las distintas acciones en la sección de Perfil de alumno - Gestión de Sellos:

  • empresaId: data[].empresa.empresaId

  • colegioId: data[].colegio.colegioId

  • cicloEscolar: data[].cicloEscolar.cicloEscolarId

  • personaId: data[].persona.personaId

  • alumnoId: data[].alumnoId

  • nivel: data[].nivel.nivelId

  • grado: data[].grado.gradoId

  • grupo: data[].grupo.grupoId

Información del alumno por sello/empresa

De cada elemento del array en la respuesta del servicio que obtiene los alumnos vinculados, se obtiene la siguiente información.

Actualizar login del alumno por sello / empresa

Método: PUT

Ejemplo:

https://homol.uno-internacional.com/pegasus-api/censo/empresas/8/ciclos/785/colegios/17388/niveles/33/grados/89/grupos/580/alumnos/26041477/updateLogin

Payload

{ "login": "alfredo.testllamados.9.test" }

Validaciones

Antes de actualizar el login, se debe validar el login informado en el formulario con el siguiente servicio

Método: POST

Ejemplo:

https://homol.uno-internacional.com/pegasus-api/dashboard/empresas/8/validarLogin

Payload

  • login: el login que se quiere usar

  • personaId: siempre con valor cero

  • gradoId: siempre con valor cero

Actualizar descuento del alumno por sello / empresa

Método: PUT

Ejemplo:

https://homol.uno-internacional.com/pegasus-api/censo/empresas/8/ciclos/785/colegios/17388/niveles/33/grados/89/grupos/580/alumnos/26041477/descuento

Payload

  • razonDescuentoId: Id de la razón de descuento seleccionada en el dropdown

  • porcentajeDescuento: Valor del porcentaje de pago asignado

  • padreId:

    • 0: Si la configuración para mostrar la lista de profesores está inactiva

    • padreId: Si la configuración para mostrar la lista de profesores está inactiva, se envía el personaId del padre seleccionado en el dropdown correspondiente

Validaciones

Para validar si se debe mostrar o no el dropdown con la lista de profesores que tienen rol de padre de familia:

Se debe obtener la configuración del módulo Censo - Alumnos | Configuración de Censo para editar alumnos

En la respuesta de ese servicio, en el elemento componentes está el array secciones, se debe buscar la sección que corresponde a descuento

image-20240823-180253.png

Dentro de la sección descuento está el elemento formulario y dentro del objeto formulario hay una bandera que se llama useFn:

  • true: significa que si se debe mostrar la lista de padres de familia

  • false: significa que no es necesario mostrar la lista de padres de familia

Actualizar material del alumno por sello / empresa

Método: POST

Ejemplo:

https://homol.uno-internacional.com/pegasus-api/censo/empresas/8/ciclos/785/colegios/13240/niveles/33/grados/88/grupos/553/alumnos/26035731/asignarMaterial

Payload

  • tipo: dependiendo el tipo de material que se quiere asignar puede ser

    • programa

    • servicio

    • digital

  • articulos: es un array que contiene el id del material seleccionado

Validaciones

Si el servicio Censo - Alumnos | Materiales contratados devuelve solo un material, no se debe permitir la edición del material

Liberar aplicaciones del alumno por sello / empresa

Método: POST

Ejemplo:

https://homol.uno-internacional.com/pegasus-api/censo/empresas/8/ciclos/785/colegios/17388/niveles/33/grados/89/grupos/580/alumnos/26041477/releasedAlumno

Payload

  • se envía un body vacío en el request

Lógica de guardar/actualizar por paquetes en procesos masivos

Se debe obtener Censo - Alumnos | Configuración de Censo por colegio y ciclo escolar, en el elemento settings se encuentra el elemento procesosMasivos

Este objeto procesosMasivos tiene los siguientes elementos:

  • intervaloMilisegundos: Valor en milisegundos que se usara como intervalo de espera (delay) entre el envío de los paquetes.

  • mostrarTrack: Boolean que indica si se debe mostrar un mensaje de progreso en lo que dura el proceso masivo

  • registrosPorPaquete: Es la cantidad de llamados que se deben enviar de forma simultanea en los procesos masivos

Instrucciones

Se debe evaluar el total de registros a guardar con el valor de registrosPorPaquete.

Escenario:

  • totalRegistros: 40

  • registrosPorPaquete: 25

  • totalPaquetes = Math.ceil(totalRegistros / registrosPorPaquete)

    • siempre se redondea hacia arriba para contemplar los registros faltantes cuando totalRegistros no es múltiplo de registrosPorPaquete

En este caso, se debe armar un paquete con 25 registros y un paquete con 15 registros.

Se debe llevar un control de las respuestas de cada petición para poder mostrar al final un resumen de registros guardados de forma exitosa y cuántos tuvieron error, así como el resumen de los errores.

Catálogos

Razones de descuento

Para obtener las razones de descuento a mostrar en el dropdown, primero se debe obtener la lista de todas las razones de descuento disponibles en una empresa

Categorías de descuento disponibles en la configuración

Se debe obtener la Censo - Alumnos | Configuración de Censo por colegio y ciclo escolar en el elemento settings se encuentra el elemento categoriasDescuentos

Lista de razones de descuento

Método: GET

Ejemplo:

https://homol.uno-internacional.com/pegasus-api/dashboard/empresas/8/razones?parametroTrans=DCTO&parametro%5B%5D=FFS&parametro%5B%5D=AMB2&parametro%5B%5D=DEC&parametro%5B%5D=AVCA&parametro%5B%5D=ALIN&parametro%5B%5D=ALRE&parametro%5B%5D=DMU&parametro%5B%5D=DALN&parametro%5B%5D=DSA&parametro%5B%5D=DAMA&parametro%5B%5D=DECO&parametro%5B%5D=HP&parametro%5B%5D=DEDC

Parametros en la URL

Razones de descuento filtradas por configuración

Ya que tienen todas las categorías de descuento Censo - Alumnos | Lista de razones de descuento, en el dropdown solo se deben mostrar las razones de descuento indicadas en la configuración de censo Censo - Alumnos | Configuración de Censo por colegio y ciclo escolar.

Dentro de la configuración del elemento settings está el objeto descuentos, en este objeto se encuentra el array descuentosDisponibles que contiene los id’s de las razones de descuento que se deben mostrar en el dropdown de la asignación de descuentos.

Materiales contratados

Método: GET

Ejemplo:

https://homol.uno-internacional.com/pegasus-api/censo/empresas/8/ciclos/785/colegios/17388/niveles/33/grados/89/grupos/580/materialContratado

El servicio devuelve los tipos de material y los materiales por cada tipo, los tipos de material pueden ser:

  • servicio

  • programa

  • digital

Lista de aplicaciones por alumno y sello / empresa

Método: GET

Ejemplo:

https://homol.uno-internacional.com/pegasus-api/censo/empresas/8/ciclos/785/colegios/13244/niveles/33/personas/13470350/listaArticulosPersona?rolClave=AL

Información de pago por alumno y sello / empresa

Método: GET

Ejemplo:

https://homol.uno-internacional.com/pegasus-api/censo/empresas/8/ciclos/785/colegios/17388/niveles/33/grados/90/grupos/553/alumnos/26041410/getAlumnoDocumento

 

Related pages