URL de API: https://inspiring-horse-d14449.netlify.app/.netlify/functions/api
Api de un crud de Explorers y Mission Comanders
Requerimientos
- Servidor Postgresql, usuario y contraseña
- Aplicacion Vue para consumir esta API: https://github.com/JosafatJimenezB/Hackaton-HacktheOcean-Frontend
Instalar proyecto
npm install
en el archivo .env cambiar usuario y contraseña de la base de datos
DATABASE_URL="postgresql://USUARIO:PASSWORD@localhost:5432/avistamientos?schema=public"
Inicializar BD
npx prisma migrate dev --name init
Insertar Datos
node prisma/seed.js
npm run serve
abrir en navegador http://localhost:3000
endpoints for Biologos
| method | url | descripcion | 
|---|---|---|
| get | /biologo | Obtener lista de Borar biologos | 
| get | /biologo/:id | Obtener info de un Borar biologo por id | 
| post | /biologo | Agregar Nuevo | 
| put | put /biologo/:id | Actualizar | 
| delete | /biologo/:id | Borar | 
endpoints for especies
| method | url | descripcion | 
|---|---|---|
| get | /especies | Obtener lista de especies | 
| get | /especies/:id | Obtener info de un especie por id | 
| post | /especies | Agregar Nuevo especie | 
| put | /especies/:id | Actualizar especie | 
| delete | /especies/:id | Borar especie | 
endpoints for ubicaciones
| method | url | descripcion | 
|---|---|---|
| get | /ubicaciones | Obtener lista de ubicaciones | 
| get | /ubicaciones/:id | Obtener info de un ubicaciones por id | 
| post | /ubicaciones | Agregar Nuevo ubicaciones | 
| put | /ubicaciones/:id | Actualizar ubiciaciones | 
| delete | /ubicaciones/:id | Borar ubicaciones | 
Respuesta estandar de la API
{
   success: Boolean, // indica si hubo algun error al tratar de resolver la peticion
   code: string,     // codigo de error
   msg: string,      // mensaje de error o confirmacion
   payload: array,   // informacion entregada en la respuesta al cliente
}
- CRUD.
- Base de datos.
- API's.
- Pruebas de unidad.
- Dependencias.
- Tecnologias(NodeJS).
Proceso
- Base de datos: PostgresSql
 classDiagram
      class Especie{
          + id (Int)
          + especie(varchar(128))
          + nombreCientifico(varchar(128))
          + familia(varchar(128))
          + biologo_id(fk)
          + dateCreated (DateTime now())
          + lastUpdated (DateTime)
      }
      class Biologo{
          + id
          + nombre(varchar(128))
          + organizacion(varchar(128))
          + especialidad(charfield)
          + pais(varchar(128))
          + dateCreated (DateTime now())
          + lastUpdated (DateTime)
      }
      class Ubicaciones{
          + id
          + coordenadas (varchar(255))
          + ph(Float)
          + especie_id(fk)
          + biologo_id(fk)
          + dateCreated (DateTime now())
          + lastUpdated (DateTime)
      }
      class Usuarios{
          + id
          + ususario (varchar(255))
          + password(varchar(255))
          + BiologoId(fk)
          + biologo_id(fk)
          + dateCreated (DateTime now())
          + lastUpdated (DateTime)
      }
      
    - Idioma ingles
- Otras Especies no marinas

