zssn
1.0.0
Desarrollo ZSSN en Laravel 6.5 con la base de datos PostgreSQL 10.
En primer lugar, debe configurar el compositor y el PHP (7.2 o más) en su entorno.
Ahora necesita clonar este proyecto para su PC.
Después de clon este proyecto ejecuta el compositor para instalar todas las dependencias.
composer install
Ok, configuremos ahora la base de datos, primero necesita copiar .env.example a .env en la raíz del proyecto, env.example es un ejemplo de cómo configurar su entorno.
Con la base de datos configurada, vamos a crear nuestra migración y llenarla.
php artisan migrate
php artisan db:seed
Luego, ejecute php artisan serve , y estará disponible en http: // localhost: 8000/API
GET /survivors
Content-Type: "application/json"
200 Created
Content-Type: "application/json"
"data": [
{
"id": 2,
"name": "Gilberto Doyle",
"age": 47,
"gender": "Male",
"latitude": "18158.1727552",
"longitude": "261575.5293",
"infected": false,
"created_at": "2019-11-29 17:10:49",
"updated_at": "2019-11-29 17:10:49",
"reportsCount": 0
},
{
"id": 3,
"name": "Prof. Nico Yundt",
"age": 54,
"gender": "Female",
"latitude": "5.11093238",
"longitude": "48425886",
"infected": false,
"created_at": "2019-11-29 17:10:49",
"updated_at": "2019-11-29 17:10:49",
"reportsCount": 0
}
]
GET /:survivors/{id}
Content-Type: "application/json"
| Atributo | Descripción |
|---|---|
| identificación | ID de sobreviviente |
200 Ok
Content-Type: "application/json"
{
"id": 1,
"name": "Miss Rhoda Abbott PhD",
"age": 55,
"gender": "Male",
"latitude": "116.4865271",
"longitude": "6211846.638",
"infected": false,
"created_at": "2019-11-29 17:10:49",
"updated_at": "2019-11-29 17:10:49",
"resources": [
{
"description": "Water",
"points": 4
},
{
"description": "Ammunition",
"points": 1
}
],
"reportsCount": 0
}
POST /survivors
Content-Type: "application/json"
{
"name": "Willardy Tyrone",
"age": 19,
"gender": "Male",
"latitude": "1522255.09052",
"longitude": "1336523.1439",
"infected": false
}
201 Created
Content-Type: "application/json"
{
"msg": "Survivor created at success"
}
| Atributo | Descripción |
|---|---|
| identificación | ID de sobreviviente |
PUT /:survivors/{id}
Content-Type: "application/json"
201 Ok
Content-Type: "application/json"
{
"msg": "Survivor updated at success"
}
POST /:survivors/{survivorReport}/report_infection/{survivorReported}
Content-Type: "application/json"
| Atributo | Descripción |
|---|---|
| SurvivorReport | ID de sobreviviente |
| SurvivorRemported | ID de sobreviviente |
200 Ok
Content-Type: "application/json"
{
"msg": "Unconfirmed infection!"
}
200 Ok
Content-Type: "application/json"
{
"msg": "Survivor infected!"
}
400 Ok
Content-Type: "application/json"
{
"msg": "Report already created"
}
200 Ok
Content-Type: "application/json"
GET /reports/percentInfected
Content-Type: "application/json"
200 Ok
Content-Type: "application/json"
{
"msg": "37% of survivors are infected"
}
200 Ok
Content-Type: "application/json"
GET /reports/percentNonInfected
Content-Type: "application/json"
{
"msg": "37% of survivors are not infected"
}
200 Ok
Content-Type: "application/json"
GET /reports/averageAmount
Content-Type: "application/json"
"data": {
"Water": 0.2857142857142857,
"Food": 0.2857142857142857,
"Medication": 0.14285714285714285,
"Ammunition": 1.5714285714285714
}
200 Ok
Content-Type: "application/json"
GET /reports/pointsLost/{id}
Content-Type: "application/json"
200 Ok
Content-Type: "application/json"
{
"message": "Survivor not infected, not yet"
}
200 Ok
Content-Type: "application/json"
{
"pointsLost": 4
}
200 Ok
Content-Type: "application/json"
PUT /traders/{survivorOften}/tradeItems/{survivorAceppt}
Content-Type: "application/json"
200 Ok
Content-Type: "application/json"
{
"erro": "Survivor are equals"
}
200 Ok
Content-Type: "application/json"
{
"msg": "Trade is done."
}
404 Ok
Content-Type: "application/json"
{
"erro": "Survivor not found"
}