vissini / invilla_test

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

XML Process

Sistema Web para importar XML People e ShipOrdes e gravar seus dados no banco.

API para retornar esses dados do banco. Foi criado até o momento apenas controle para os dados do People e da Order

Instalação

Clonar o repositório:

git clone https://github.com/vissini/invilla_test.git
cd invilla_Test

Instalar dependências do composer:

composer install

Instalar dependências do npm:

npm install ou yarn install

Compilar assets:

npm run dev ou yarn dev

Configuração do env:

cp .env.example .env

Gerar chave da aplicação:

php artisan key:generate

Crie um banco de dados MySql e alterar a configuração de acordo no .env. Você também pode usar outro banco de dados (Sqlite, Postgres), basta atualizar sua configuração de acordo.

Rodar migrations:

php artisan migrate

Iniciar aplicação:

php artisan serve

Gerar documentação automática da API:

php artisan apidoc:generate

Rotas API

People:

  • GET /api/people
  • GET /api/people/{id}
  • GET /api/people/phones/{id}
  • GET /api/people/orders/{id}
  • POST /api/people
  • PUT/PATCH /api/people/{id}
  • DELETE /api/people/{id}

Orders:

  • GET /api/orders
  • GET /api/orders/{id}
  • GET /api/orders/orderItems/{id}
  • GET /api/orders/ships/{id}
  • POST /api/orders
  • PUT/PATCH /api/orders/{id}
  • DELETE /api/orders/{id}

Rotas WEB Bonus

People:

  • GET /people
  • GET /people/{id}
  • POST /people
  • PUT/PATCH /people/{id}
  • DELETE /people/{id}

Implementações Futuras

  • Implementar Tests Unitários com PHPUnit
  • Implementar Authenticação da API por JWT ou/e OAuth2
  • Implementar Gerênciamento completo das informações salvas no banco, via API
  • Desenvolver área administrativa para Gerenciar dados salvos no banco via WEB.

About


Languages

Language:PHP 68.7%Language:HTML 21.3%Language:CSS 10.0%