API para la gestión de médicos, pacientes y consultas
- Login: user: diego.rojas pass: 123456
- Obtener el token
- Permitir la siguientes peticiones con el token de autenticación
- Crear médicos
- Crear pacientes
- Actualización de médicos
- Información permitida para actualización: Nombre, Documento, Dirección
- Reglas de negocio:
- No permitir actualizar: Especialidad, Correo y teléfono
- Actualización de pacientes
- Información permitida para actualización: Nombre, Teléfono, Dirección
- Reglas de negocio:
- No permitir actualizar: Correo y Documento de identidad
- Eliminar de médicos/pacientes
- El registro no debe ser borrado de la base de datos
- El listado solo debe retornar Médicos activos
- El horario de atención de la clínica es de lunes a sábado, de 7:00 a 19:00
- Solo se pueden crear consultas en este horario
- Las consultas deben programarse con al menos 30 minutos de anticipación
- No permitir crear consultas con pacientes/médicos inactivos/eliminados
- No permitir reservar más de una consulta en el mismo día para el mismo paciente
- No permitir reservar una consulta con un médico que ya tiene otra consulta reservada en la misma fecha/hora
- La elección de un médico es opcional. En caso de que no exista el id, el sistema debe elegir aleatoriamente un médico que esté disponible en la fecha/hora ingresada
- Crea la documentación usando Spring Doc con swagger
- Ejecuta el proyecto e ingresa a http://localhost:8080/swagger-ui/index.html
- Pruebas automáticas para la creación de Médicos/Consultas
- Test error 400
- Test código 200
- Pruebas al repositorio de Médico
- Debería devolver null cuando el médico buscado existe, pero no está disponible en esa fecha
- Debería devolver un médico cuando está disponible en esa fecha
Important
- Crea la base de datos con el nombre 'vollmedapi' en MySQL
- Reemplaza las credenciales de acceso a la bd en el archivo application.properties
- Ejecuta el proyecto