eduardofx / zend-expressive-mongodb-api

API utilizando Zend Expressive 3 e MongoDB

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Zend Expressive com MongoDB

API utilizando Zend Expressive 3 com MongoDB.

Instalação

1 - Faça o clone do repositório

2 - Dê permissão de escrita na pasta api/data

chmod 777 -R api/data

3 - Rode o comando abaixo para subir os containers do sistema

docker-compose up -d

4 - Após subir o container, é necessário instalar as dependências do composer

docker exec -it -u 0 NOMEDOCONTAINER composer install
  • NOMEDOCONTAINER = Nome do container PHP criado

Requisições

GET /v1/populate

{
    "product": "5d7d3a3b48873b609d6523c2",
    "customer": "5d7d3a3b48873b609d6523c3",
    "order": "5d7d3a3b48873b609d6523c4"
}

POST /v1/products

{
   "sku": 8552515751438641,
   "name": "Produto",
   "price": 109
}

GET /v1/products

[
    {
        "_id": "5d7d1f61e9b32648906edaa2",
        "sku": 8552515751438641,
        "name": "Produto",
        "price": 109,
        "created_at": "2019-09-14 17:12:01",
        "updated_at": null
    }
]

POST /v1/customers

{
   "name": "Maria Aparecida de Souza",
   "cpf": "81258705044",
   "email": "mariasouza@gmail.com"
}

POST /v1/orders

{
  "status": "CONCLUDED",
  "total": 189.80,
  "buyer": {
    "_id": "5d7d1f7ce9b32648906edaa3"
  },
  "items": [
    {
      "amount": 1,
      "price_unit": 109.90,
      "total": 109.90,
      "product": {
        "_id": "5d7d1f61e9b32648906edaa2"
      }
    }
  ]
}

GET /v1/orders

[
    {
        "_id": "5d7d1fa4beb5e247d05c7032",
        "created_at": "2019-09-14 17:13:08",
        "cancelDate": "2019-09-14 17:48:53",
        "status": "CANCELLED",
        "total": 189.8,
        "buyer": {
            "_id": "5d7d1f7ce9b32648906edaa3",
            "name": "Maria Aparecida de Souza",
            "cpf": "81258705044",
            "email": "mariasouza@gmail.com",
            "created_at": "2019-09-14 17:12:28",
            "updated_at": null
        },
        "items": [
            {
                "amount": 1,
                "price_unit": 109.9,
                "total": 109.9,
                "product": {
                    "_id": "5d7d1f61e9b32648906edaa2",
                    "sku": 8552515751438643,
                    "name": "Produto",
                    "price": 109,
                    "created_at": "2019-09-14 17:12:01",
                    "updated_at": null
                }
            }
        ]
    }
]

PUT /v1/orders/{idorder}

{
	"status": "CANCELLED"
}

About

API utilizando Zend Expressive 3 e MongoDB


Languages

Language:PHP 98.8%Language:Dockerfile 1.2%