Skip to content

Teste de contratação de equipe da W16 Software House

Notifications You must be signed in to change notification settings

leonardo-spy/w16-warker-app-api

 
 

Repository files navigation

W16 Warker App - API

WARKER

Aplicação API REST em Laravel 8 para indicar os postos das cidades.

Proposta

Link da Proposta: Proposta.md

O que o projeto contém

  • Laravel 8
  • CRUD Web
  • Autenticação
  • Seeder e uso de fakers

Instalação

Para rodar o projeto faça essas configurações:

  • Clone o projeto (utilizando comando git ou baixando em zip)
  • Instale o composer
php composer install
php composer update
  • Renomeie o .env.example para .env
  • Configure o banco de dados como no exemplo abaixo
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=warker
DB_USERNAME=root
DB_PASSWORD=
  • Rode a migrations para criar as tabelas do banco de dados
php artisan migrate
  • Para popular com dados Fake utilize o comando abaixo
php artisan db:seed

Endpoints

Para conseguir utilizar o POST, GET, POST, PUT e DELETE você pode está utilizando o Postman (programa gratuito). O Endpoints é formado de rotas publicas e rotas protegidas, as rotas públicas você consegue acessar sem o Bearer Token, as rotas protegidas você precisa deste token que é obtido através do login.

  • Rotas públicas:

Para se cadastrar
POST /api/register

{
    "name": "Usuario teste",
    "email": "[email protected]",
    "password": "senha",
    "password_confirmation": "senha"
}

Para se logar
POST /api/login

{
    "email": "[email protected]",
    "password": "senha",
}
Será gerado um Token (Bearer Token) que será usado no HEADER para acessar as rotas protegidas.
  • Rotas protegida (Todas é necessário informar o Token no HEADER):

Para se deslogar
POST /api/login

Para visualizar todas as cidades cadastradas
GET /api/cidade

Para visualizar uma cidade específica
GET /api/cidade/{id}

Para armazenar uma cidade
POST /api/cidade/

{
    "nome_da_cidade": "Sao Paulo",
    "latitude": 100.02,
    "longitude": -200.05,
}

Para atualizar uma cidade específica
PUT /api/cidade/{id}

{
    "nome_da_cidade": "São Paulo",
    "latitude": 300.18,
    "longitude": -200.05,
}

Para remover uma cidade específica
DELETE /api/cidade/{id}

Para visualizar todos os postos cadastrados
GET /api/posto

Para visualizar um posto específico
GET /api/posto/{id}

Para armazenar um posto
POST /api/posto/

{
    "cidade_id": 1,
    "reservatorio": 95,
    "latitude": 102.45,
    "longitude": -240.74",
}

Para atualizar um posto específico
PUT /api/posto/{id}

{
    "cidade_id": 1,
    "reservatorio": 90,
    "latitude": 300.71,
    "longitude": -200.45,
}

Para remover um posto específico
DELETE /api/posto/{id}

Notas do Dev

Eu Leonardo queria agradecer a esta oportunidade que a W16 está proporcionando para todos os amantes da programação de todo o Brasil.

About

Teste de contratação de equipe da W16 Software House

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 83.7%
  • Blade 15.6%
  • Shell 0.7%