Skip to content

API REST para manejo de pacientes, doctores y sus respectivas citas

Notifications You must be signed in to change notification settings

SparkleCow/API-CowSalud

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CowSalud EPS (API REST) 😷

DESARROLLO WEB BACK END
Unidad 6
Docente: Norbey Danilo Muñoz

Autor: Jonathan David Ramos Gallego

Hola a todos, bienvenidos a CowSalud EPS. (API REST para manejo de pacientes, doctores y sus respectivas citas)

¿Qué tecnologías se emplearon en el proyecto? 🤖

  • JavaScript
  • TypeScript
  • NodeJS
  • Express
  • MySQL
  • Visual Studio Code
  • Postman

Instalación:

Para ejecutar el API, debes asegurarte previamente de tener NodeJS Y npm en tu sistema.

  1. Descarga el proyecto: Clona el repositorio con git clone https://github.com/SparkleCow/API-CowSalud.git o descarga el repositorio en formato .rar para poder manipularlo.
  2. Configurar variables de entorno: Crea un archivo .env en la raíz del proyecto y configura las variables necesarias.
  3. Instalar las dependencias del proyecto: Instala todas las dependencias que se encuentran en el archivo package.json por medio de la siguiente linea de codigo en la terminal - npm install. Esto instalara todas las dependencias que se encuentren mencionadas en el archivo package.json.
  4. Crea la base de datos: Crea la base de datos y sigue el formato de tablas encontrado en el archivo database.sql en la carpeta repository.
  5. Iniciar el proyecto: Ejecuta en la terminal el modo de desarrollo o producción por medio de los comandos npm run dev o npm run prod.

Modelos de datos

  1. Paciente:

    image

  2. PacienteDTO ( Información del paciente que permite ser modificada )

    image

    image

  3. Doctor:

    image

  4. DoctorDTO ( Información del doctor que permite ser modificada )

    image

    image

  5. Cita:

    image

  6. CitaDTO( Envia información más detallada sobre la cita )

    image

    image

    image

  7. Modelo de base de datos:

    image

¿Cómo funciona? ❔❔

Doctores:

Se tiene un servicio CRUD que permite crear, buscar, eliminar y modificar doctores por medio de su id. Además este servicio permite listar los doctores que se encuentren actualmente trabajando con CowSaludEPS y tambien todos los doctores tanto los activos como los que no lo estan. Este servicio tambien permite filtrar los doctores activos por medio de una query, de esta forma podemos obtener los doctores filtrados por su especialidad.

Pacientes:

Se tiene de igual manera un servicio CRUD que permite crear, buscar, eliminar y modificar a los pacientes por medio de su id (Cedula). Tambien permite obtener aquellos pacientes afiliados actualmente con CowSaludEPS y de igual forma, obtener todos los pacientes que alguna vez estuvieron afiliados y aquellos que actualmente lo estan.

Citas:

El servicio de citas tiene unas dinamicas particulares. Para crear una cita es necesario emplear el modelo simple de cita (id_paciente, id_doctor, fecha), sin embargo al enviar la información al cliente, este lo hace por medio de un modelo citaDTO el cual busca información del paciente y del doctor con el fin de proporcionar más infomación al cliente sobre la cita.

Este servicio permite obtener las citas por medio del id del paciente y por medio de la especialidad del doctor. De igual manera permite la creación de citas y brinda la posibilidad de encontrar todas las citas sin ningun tipo de filtros (Encontrar todas las citas en base de datos)

Este servicio realiza algunas validaciones con el fin de asegurar la integridad de los datos, de validad que no se generen citas duplicadas, que los doctores tengan disponibilidad, etc.

Pruebas del API (Postman)

Pacientes 🙂

  • Obtener todos los pacientes

    image

  • Obtener todos los pacientes afiliados actualmente

    image

  • Obtener un paciente por medio de su ID

    image

  • Crear un paciente

    image

  • Eliminar un paciente

    image

  • Modificar un paciente

    image

Doctores 😷

  • Obtener todos los doctores

    image

  • Obtener todos los doctores vinculados a la EPS en este momento

    image

  • Obtener doctores vinculados actualmente a la EPS filtrando por su especialidad

    image

  • Crear un doctor

    image

  • Eliminar un doctor

    image

  • Modificar un doctor

    image

Citas ⌛

  • Obtener todas las citas

    image

  • Obtener todas las citas filtrando por especialidad del doctor

    image

  • Obtener citas filtrando por cedula del paciente

    image

  • Obtener citas filtrando por el id del doctor

    image

  • Crear cita

    image

Manejo de excepciones ❗❗❗

  • Paciente ocupado

    image

  • Doctor ocupado

    image

  • Doble cita el mismo dia

    image

Releases

No releases published

Packages

No packages published