https://github.com/robsonmt/minimarket-api
https://github.com/robsonmt/minimarket-api
migrations postgresql postgresql-database python-3-6
Last synced: 5 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/robsonmt/minimarket-api
- Owner: RobsonMT
- License: mit
- Created: 2022-04-18T13:31:53.000Z (about 4 years ago)
- Default Branch: develop
- Last Pushed: 2023-05-01T23:42:22.000Z (about 3 years ago)
- Last Synced: 2025-04-05T01:45:11.367Z (about 1 year ago)
- Topics: migrations, postgresql, postgresql-database, python-3-6
- Language: Python
- Homepage: https://mini-market-api.herokuapp.com/api/users
- Size: 207 KB
- Stars: 1
- Watchers: 2
- Forks: 1
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# MiniMarket-API
MiniMarket API
Uma API voltada para a gestão de pequenos comércios, focada em agilizar a organização dos pagamentos e a gestão dos clientes.
Explore a aplicação no vercel.
Reportar um bug
·
Sugerir uma funcionalidade
## Visão geral
## Tecnologias
Tecnologias utilizadas na construção dessa aplicação:
- [Python](https://www.python.org/)
- [Flask](https://flask.palletsprojects.com/en/2.1.x/)
- [Flask SQLALchemy](https://flask-sqlalchemy.palletsprojects.com/en/2.x/)
## Instruções
Este é um guia de como configurar e rodar a aplicação localmente, siga os seguintes passos:
### Instalação
Clone o repositório em sua máquina:
Via SSH:
`$ git clone git@github.com:RobsonMT/MiniMarket-API.git`
Via HTTPS:
`$ git clone https://github.com/RobsonMT/MiniMarket-API.git`
Crie um ambiente virtual (venv) para seus pacotes pelo comando:
`$ python -m venv venv`
Ative o venv pelo comando:
`$ source venv/bin/activate`
Instale os pacotes contidos no `requirements.txt` através do comando:
`$ pip install -r requirements.txt`
## Rotas
Abaixo descritas as respectivas rotas presentes nessa aplicação.
## AUTH
Rotas de autenticação.
## POST signup
Cria um novo usuário.
`/api/signup`
Body (JSON):
```sh
{
"name": "marcelo",
"email": "marcelo@email.com",
"password": "123456",
"avatar": "https://upload.wikimedia.org/wikipedia/commons/thumb/7/7c/User_font_awesome.svg/2048px-User_font_awesome.svg.png",
"contact": "19 93588-3611"
}
```
## POST signin
Loga o usuário.
`/api/signin`
Body (JSON):
```sh
{"email": "marcelo@email.com",
"password": "123456"}
```
## USERS
Rotas de usuário.
## GET users
Retorna todos os usuários.
`/api/users`
## GET all users
Retorna todos os usuários.
`/api/users/all`
## GET user by id
Retorna todos os usuários.
`/api/users/`
## PATCH user by id
Retorna todos os usuários.
`/api/users/`
```sh
{
"name": "Marcelo Menddes"
}
```
## PATCH change user state
Altera o estado ativo/inativo
`/api/users/changestate/`
## CLIENTS
Rotas de clientes.
## GET all clients
Retorna todos os clientes do estabelecimento.
`api/establishment//client`
## GET client id by establishment id
Retorna UM cliente (id) do estabelecimento.
`/establishment//client/`
## POST client
Cria um novo cliente.
`/api/users/api/client
```sh
{
"name": "Joséw Silva",
"avatar": "https://media.istockphoto.com/illustrations/client-prime-white-round-button-illustration-id873164974",
"contact": "(19)88d888-1111",
"pay_day": 20,
"establishment_id": 3
}
```
## PATCH client
Atualiza o cliente do estabelecimento.
`/establishment//client/`
BODY:
```sh
{
"name": "Hamero"
}
```
## ESTABLISHMENT
Rotas de estabelecimento.
## POST establishment
Cria um novo estabelecimento.
`/api/establishments/user/`
## GET all establishments
Retorna todos os estabelecimentos do usuário.
`/api/establishments`
## GET one establishment
Retorna o estabelecimento do usuário pelo id do estabelecimento.
`/api/establishments/`
## GET establishment by name
Retorna o estabelecimento do usuário pelo id do estabelecimento.
`/api/establishments/name/`
## PATCH establishment
Atualiza o estabelecimento
`/api/establishments/`
```sh
{
"name": "Mercearia",
"url_logo": ""
}
```
## PRODUCTS
Rota de produtos.
## POST
Cria um novo produto no estabelecimento.
`/api/establishments/products`
```sh
{
"name": "Batata",
"description": "batata frita",
"sale_price": 12,
"cost_price":8,
"unit_type":"kg",
"url_img": "feerergerg",
"establieshment_id":3,
"categories": []
}
```
## GET products
Retorna os produtos do estabelecimento (id).
`/api/establishments//products`
## GET product by id
Retorna o produto (id) do estabelecimento
`/api/establishments//products/`
## GET product query
Retorna o produto pesquisado.
`/api/establishments//products/query`
## PATCH product
Atualiza o produto do estabelecimento.
`/api/establishments//products/`
## SALES
Rota de vendas.
## GET sale
Retorna a venda por id.
`/api/sales/`
## GET sale by client
Retorna a venda por cliente
`/api/sales/client/`
## POST sale
Cria nova venda.
`/api/sales`
```sh
{
"paid_date": "25/06/2022",
"client_id":1,
"payment_id":1,
"sale_total":2000,
"remain_to_pay": 2000
}
```
## PATCH sale
Atualiza a venda (id).
`/api/sales/`
## Sobre
Este projeto foi desenvolvido por:
Bruno de Lacerda Tetzner - [@brunotetzner](https://github.com/brunotetzner)
Julio Pereira- [@ElBulidur](https://github.com/ElBulidur)
Robson Martins - [@RobsonMT](https://github.com/RobsonMT)
Gabriel Amaral - [@Gabriel-dsAmaral](https://github.com/Gabriel-dsAmaral)
Rhamon de Souza - [@rhamo1](https://github.com/rhamo1)
Rafael Monteiro de Oliveira - [@raf2019](https://github.com/raf2019)