Skip to content

jpcastro087/inscripciones

Repository files navigation

inscripciones

  1. Esquema de base de datos

alt text

A. Cuáles serían los tipos de datos de cada campo de cada tabla?

Dejo los tipos de datos definidos en el DER

B. Realizarías algún cambio en el modelo? (justificar cualquiera sea la respuesta)

Normalicé las tablas docentes y asignaturas, en la tabla cursos generé una clave compuesta con los ids id_docente y id_asignatura para así no poder ingresar un docente con las misma asignatura en el mismo curso, luego llevo esa llave compuesta a la tabla inscripciones dejando como clave primaria los campos id_docente, id_asignatura, id_alumno y fechaInscripcion

C. Sugerirías realizar algo en la BD para mejorar la performance de las consultas sobre las tablas?

Sugeriría agregar índices a los campos con claves foraneas y primary keys




2. Proveer consultas para determinar:

A. Cursos a los que está inscripto y cursando un alumno dado en el ciclo lectivo actual.

select concat(a.nombre, ' ', a.apellido) as Alumno, asig.descripcion as Asignatura, d.nombre as Docente, 'Inscripto' as Estado from inscripciones i inner join asignaturas asig on i.id_asignatura = asig.id inner join alumnos a on i.id_alumno = a.id inner join docentes d on i.id_docente = d.id where i.estado = 1 and a.id = 1

B. Alumnos inscriptos a una asignatura dada.

select concat(a.nombre, ' ', a.apellido) as Alumno, asig.descripcion as Asignatura, d.nombre as Docente, 'Inscripto' as Estado from inscripciones i inner join asignaturas asig on i.id_asignatura = asig.id inner join alumnos a on i.id_alumno = a.id inner join docentes d on i.id_docente = d.id where i.estado = 1 and asig.id = 1

C. Cursos a los que el alumno puede inscribirse en el ciclo lectivo actual.

Ir al archivo PCR_CURSOS_PERMITIDOS_CURSAR_ALUMNO.sql en el codigo fuente

D. Alumnos que recursen una materia

Ir al archivo PCR_ALUMNOS_RECURSANTES.sql en el codigo fuente




3. Desarrollar una aplicación que:

A. Registre y edite alumnos

El código fuente se encuentra en este repositorio y la aplicacion se puede probar desde el siguiente enlace:
http://jpcastro087.ddns.net:8080/Inscripciones-0.0.1-SNAPSHOT/altaAlumno



Screenshot:

alt text

B. Provea los siguientes reportes:
i. Estado académico de un alumno dado (estado de materias cursadas, materias no regularizadas y materias por cursar)
ii. Para una asignatura dada, los alumnos inscriptos y el docente correspondiente.

No se pudo implementar por falta de tiempo

C. Permita a un alumno inscribirse a una materia.
Están implementadas las llamadas rest
http://localhost:8080/Inscripciones/user/{username}/{password}
y
http://localhost:8080/Inscripciones/curso/permitidoscursaralumno/{id}

la idea era ensamblar las llamadas para que el alumno pueda inscribirse via mobile ios/android nativo en una aplicación de prueba desarrollada con react-native en la página https://snack.expo.io, la implementacion de las llamadas se pueden ver en el paquete controllers.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published