Este es el backend del sistema SPUM (Sistema de Préstamo de la Universidad del Magdalena), desarrollado con Spring Boot. Proporciona una API RESTful para gestionar usuarios, estudiantes, artículos, reservas y penalizaciones en una institución educativa.
- Java 17+
- Spring Boot
- Spring Security con JWT
- JPA (Hibernate)
- PostgreSQL
- Maven
-
Clonar el repositorio
git clone https://github.com/tu-usuario/spum_backend.git cd spum_backend -
Configurar base de datos en application.properties
spring.datasource.url=jdbc:postgresql://localhost:5432/spum spring.datasource.username=postgres spring.datasource.password=1234
-
Compilar y ejecutar
./mvnw spring-boot:run
El sistema utiliza JWT. Se requiere autenticarse para consumir recursos protegidos.
-
Registro de usuario:
POST /auth/register-user -
Registro de estudiante:
POST /auth/register-student -
Login:
POST /auth/login
Devuelve un token JWT que debe ser usado en el header Authorization: Bearer {token}.
GET /students– Listar todosDELETE /students/{email}– Eliminar estudiante
GET /users– Listar usuariosPUT /users/{id}– Editar rol de usuarioDELETE /users/{id}– Eliminar usuario
POST /categories– Crear tipo de artículoGET /categories– Listar tiposDELETE /categories/{id}– Eliminar tipoPOST /items– Crear artículoGET /items– Listar artículos
POST /bookings– Crear reservaGET /bookings/status/IN_PROCESS– Ver reservas activas
Puedes importar el archivo de colección SPUM.postman_collection.json en Postman y probar todos los endpoints con ejemplos ya listos.
El proyecto incluye tareas programadas para revisar y asignar penalidades automáticamente según el estado de las reservas.
- Juan Andrés Avendaño Luján
- Rafael Eduardo Ortiz Reales
- David de Jesus Giraldo Luna
- Arturo Andrés Velásquez Ortiz