-
Alexander Davila
-
Slayder Reyes
-
Joan Esteban Mendez Martinez
-
Nhorverly Astrid Jacome
-
Gina Ardila Zuñiga
API-REST facilita la gestión y persistencia de citas médicas en un entorno hospitalario. Se basa en un modelo cliente-servidor, donde los clientes pueden interactuar con el servidor a través de formularios y peticiones HTTP para realizar operaciones CRUD sobre los datos de pacientes y doctores.
También se especifica el método de rutas correspondiente
-
Create = post
-
Read = get
-
Update = put
-
Delete = delete
Para usar el proyecto en su repositorio local, siga cuidadosamente las indicaciones, teniendo en cuenta que debe clonar el repositorio inicialmente, luego siga las instrucciones indicadas:
- Inicializar el proyecto
npm init
- Instalar dependencias del proyecto
npm i express nodemon body-parser mysql2 dotenv cors
- (Opcional) Instalar Swagger para documentar la API
npm i swagger-jsdoc swagger-ui-express
- Instalar ORM sequelize con Typescript
npm i sequelize sequelize-typescript
- Instalar nodemon para Typescript
npm install --save-dev ts-node nodemon
- Instalar los tipos para trabajar con Typescript
npm i @types/node @types/express @types/body-parser @types/mysql @types/dotenv
- Crear el proyecto Typescript
npx tsc --init
- Crear el fichero .env (Variables de entorno para la base de datos )
.env
Tecnologías usadas en el proyecto:
Para consumir la API correctamente se debe tener en cuenta la siguiente estructura...
GET /api/doctores
GET /api/doctores/{id}
POST /api/doctores/{body}
PUT /api/doctores/{id}
DELETE /api/doctores/{id}
{
"id_profesional":"666",
"nombre":"Juanito",
"apellido":"Alimaña",
"correo":"[email protected]",
"telefono":"31415926535"
}
GET /api/pacientes
GET /api/pacientes/{id}
POST /api/pacientes/{body}
PUT /api/pacientes/{id}
DELETE /api/pacientes/{id}
{
"id_numeroCedula":"777",
"nombre":"Angel",
"apellido":"Casallas",
"fechaNacimiento":"2000-08-28",
"id_telefono":"315678"
}
#### *Consultorio*
```http
GET /api/consultorio
GET /api/consultorio/{id}
POST /api/consultorio/{body}
PUT /api/consultorio/{id}
DELETE /api/consultorio/{id}
{
"id_consultorio":"101",
"direccionConsultorio":"Transversal 78H bis#41c-48 - Compensar"
}
GET /api/especialidad
GET /api/especialidad/{id}
POST /api/especialidad/{body}
PUT /api/especialidad/{id}
DELETE /api/especialidad/{id}
{
"especialidad":"Neurologia",
"descripcion":"Medicina especializada"
}
GET /api/cita
GET /api/cita/{data}
POST /api/cita/{id}
PUT /api/cita/{id}
DELETE /api/cita/{id}
{
"fecha_hora":"2023-12-07T12:00:00",
"id_profesional":"56254652",
"id_numeroCedula":"98723421",
"id_especializacion":"1",
"id_consultorio":"101"
}
GET /api/consultorio/${id}
Parámetro | Tipo | Descripción |
---|---|---|
id |
int |
Required. Id del recurso |
api/citas ${data}
api/doctores ${data}
api/pacientes ${data}
api/consultorio:id
api/especializacion:id