Sistema de controle de pedidos de uma livraria.
- Phythos 3
- Docker
- Rodar o mariadb
docker run -p 127.0.0.1:3306:3306 --name mariadb --restart unless-stopped -e MARIADB_ROOT_PASSWORD=SENH4 -d mariadb:latest
-
Criar o banco de dados (livrariaVirtual.sql)
-
Instalar as dependências
pip3 install mariadb SQLAlchemy Flask requests
- Rodar o serviço do backend (apenas para Windows, para outro sistema operaciona clique aqui)
server\run.bat
- Rodar o serviço do frontend (apenas para Windows, para outro sistema operaciona clique aqui)
frontend\run.bat
- <UrlApi>/cliente
Rota POST que espera um requet json no seguinte formato:
{
"cpf": "12345678901",
"nome": "nome do cliente"
}
- <UrlApi>/cliente/<cpf>
Rota GET com response json no seguinte formato:
{
"cpf": "12345678901",
"id": 1,
"nome": "nome do cliente"
}
- <UrlApi>/livro
Rota POST que espera um requet json no seguinte formato:
{
"anoPublicacao": 2021,
"autor": "autor autor",
"estoque": 1,
"isbn": "12345",
"preco": 1.11,
"titulo": "titulo do livro"
}
Com response json no seguinte formato:
{
"anoPublicacao": 2021,
"autor": "autor autor",
"estoque": 1,
"id": 1,
"isbn": "12345",
"preco": 1.11,
"titulo": "titulo do livro"
}
- <UrlApi>/livro
Rota GET com response json no seguinte formato:
[
{
"anoPublicacao": 2021,
"autor": "nome do autor",
"id": 1,
"isbn": "1234567890123",
"preco": 1.11,
"titulo": "titulo do livro 1"
},
{
"anoPublicacao": 2021,
"autor": "nome do autor",
"id": 2,
"isbn": "1234567890123",
"preco": 1.11,
"titulo": "titulo do livro 2"
}
]
- <UrlApi>/livro/maisVendidos
Rota GET com response json no seguinte formato:
[
{
"autor": "nome do autor",
"quantidade": 10,
"titulo": "titulo do livro mais vendido"
},
{
"autor": "nome do autor",
"quantidade": 8,
"titulo": "titulo do segundo livro mais vendido"
}
]
- <UrlApi>/livro/<idLivro>
Rota GET com response json no seguinte formato:
{
"autor": "nome do autor",
"estoque": 1,
"id": 1,
"preco": 1.11,
"titulo": "titulo do livro"
}
- <UrlApi>/pedido
Rota POST com response json no seguinte formato:
{
"dataPedido": "Wed, 23 Jun 2021 00:42:34 GMT",
"id": 1
}
- <UrlApi>/pedido/<idPedido>/add/<idLivro>
Rota POST
- <UrlApi>/pedido/<idPedido>/rem/<idLivro>
Rota POST
- <UrlApi>/pedido/<idPedido>/cli/<cpf>
Rota POST
- <UrlApi>/pedido/<idPedido>/finalizar
Rota POST
- <UrlApi>/pedido
Rota GET com response json no seguinte formato:
[
{
"dataPedido": "Wed, 16 Jun 2021 22:18:05 GMT",
"id": 1
},
{
"dataPedido": "Wed, 16 Jun 2021 22:18:06 GMT",
"id": 2
},
{
"dataPedido": "Wed, 16 Jun 2021 22:18:18 GMT",
"id": 3
}
]
- <UrlApi>/pedido/finalizados
Rota GET com response json no seguinte formato:
[
{
"dataPedido": "Wed, 16 Jun 2021 22:18:05 GMT",
"id": 1
},
{
"dataPedido": "Wed, 16 Jun 2021 22:18:06 GMT",
"id": 2
},
{
"dataPedido": "Wed, 16 Jun 2021 22:18:18 GMT",
"id": 3
}
]
- <UrlApi>/pedido/<idPedido>
Rota GET com response json no seguinte formato:
{
"cliente": {
"nome": "nome do cliente"
},
"dataPedido": "Wed, 16 Jun 2021 22:18:05 GMT",
"finalizado": true,
"id": 1,
"livros": [
{
"id": 1,
"preco": 1.11,
"quantidade": 1,
"titulo": "titulo do livro"
}
]
}