API CARS RENTAL

Laravel Logo

Build Status Total Downloads Latest Stable Version License

Install

composer create-project --prefer-dist laravel/laravel="8.6" app-cars-rental

php artisan storage:link

Install JWT

https://jwt-auth.readthedocs.io/en/develop/laravel-installation/

composer require tymon/jwt-auth "1.0.2"

If composer above doesn't work run this:

composer require -w tymon/jwt-auth --ignore-platform-reqs

php artisan vendor:publish --provider="Tymon\JWTAuth\Providers\LaravelServiceProvider"

php artisan jwt:secret

APP CAR RENTALS

Api Rest - Backend

Table Marcas

id - nome - imagem - created_at - updated_at

Table Modelos

id - marca_id - nome - imagem - numero_portas - lugares - air_bags - abs - created_at - updated_at

Table Clientes

id - nome - created_at - updated_at

Table Carros

id - modelo_id - placa - disponivel - km - created_at - updated_at

Table Locações

id - cliente_id - carro_id - data_inicio_periodo - data_final_previsto_periodo - data_final_realizado_periodo - valor_diaria - km_inicial - km_final - created_at - updated_at

ATRIBUTOS E FILTRO

'https://nozixapi.000webhostapp.com/api/modelo?' ---> Inicie chamando o modelo.

'atributos=nome,numero_portas,marca_id' ---> Concatene os atributos que deseja mostrando no resultado conforme as colunas das tabelas.

'&atributos_marca=nome' ---> Concatene os atributos da marca do modelo escolhido.

'&filtro=nome:like:bmw%' ---> Concatene com filtro e query separada por ':'(dois pontos).

';abs:=:1' ---> Adicione mais filtros separando ';'(ponto e vírgula).

Exemplo

'https://nozixapi.000webhostapp.com/api/modelo?atributos=nome,numero_portas,marca_id&atributos_marca=nome&filtro=nome:like:BMW%;abs:=:1'

Esta query retornará o seguinte Array de Objetos:

[ { "nome": "BMW Série 5", "numero_portas": 4, "marca_id": 9, "marca": { "id": 9, "nome": "BMW" } }, { "nome": "BMW x6", "numero_portas": 4, "marca_id": 9, "marca": { "id": 9, "nome": "BMW" } } ]

Laravel v9.19.0 (PHP v8.0.30)