Code Monkey home page Code Monkey logo

sistema-de-gerenciamento-de-mercearia's Introduction

Sistema de Gerenciamento de Mercearia

Sistema de gerenciamento de mercearia que usa o banco de dados SQLite e exibe os dados por meio de API, para a interface ser construída a partir de qualquer linguagem.

Instalação das Bibliotecas

Para utilizar a API, instale todas as bibliotecas necessárias passando o comando pip install -r requirements.txt no terminal na raiz do projeto.

Criação do Servidor

Para criar o servidor, após a instalação das biblitecas, digite o comando uvicorn API:app no terminal também na raiz do projeto.

Uma interface como essa irá aparecer no terminal, indicando que tudo deu certo:

image

Agora, o servidor vai estar aberto. Para consumir a API, basta fazer requisições para o host http://127.0.0.1:8000 com as rotas.

Rotas

Esta API possui diversas rotas feitas para as mais diversas coisas, como fazer a leitura do banco de dados sobre os produtos cadastrados, clientes, ou até mesmo para fazer o cadastro de um funcionário.

Aqui vai a listagem das rotas disponíveis:

Rotas de Informação:

Essas rotas servem para mostrar todas as rotas disponíveis

Leitura: /read Método: GET Vai retornar todas as rotas disponíveis para leitura

image

Filtro: /find Método: GET Vai retornar todas as rotas e parâmetros disponíveis para filtro

image

Cadastro: /register Método: GET Vai retornar todas as rotas e parâmetros disponíveis para cadastro

image

Alteração: /change Método: GET Vai retornar todas as rotas e parâmetros disponíveis para alterações

image

Remoção: /remove Método: GET Vai retornar todas as rotas e parâmetros disponíveis para remoções

image

Vender: /sell Método GET Vai retornar a rota e os parâmetros disponíveis para operação de venda

image

Relatórios: /report Método GET Vai retornar todas as rotas disponíveis para visualização de relatórios

image

Rotas de Ação:

Essas rotas servem para realizar ações, como consultar o banco de dados ou fazer cadastro de produtos, por exemplo.

Categoria:

Leitura: /read/category Método: GET Vai retornar uma lista com as categorias cadastradas

Filtro: /find/category Método: POST; Parâmetro: id: int Vai retornar uma categoria com base no filtro que o usuário passar. A categoria vai ser filtrada pelo respectivo id

Cadastro: /register/category Método: POST, Parâmetro: name: str Vai realizar o cadastro de uma nova categoria com o nome passado

Alteração: /change/category Método: POST; Parâmetros: id: int, name: str Vai alterar o nome da categoria com o respectivo id passado para o nome digitado

Remoção: /remove/category Método: POST; Parâmetro: id: int Vai remover a categoria com o respectivo id passado

Produto:

Leitura: /read/product Método: GET Vai retornar uma lista com os produtos cadastrados

Filtro: /find/product Método POST; Parâmetro: _id: int Vai retornar um produto de acordo com o id que for passado

Cadastro: /register/product Método POST; Parâmetros: name: str, category_id: int Vai realizar o cadastro do produto com as informações passadas

Alteração do Nome: /change/productname Método POST; Parâmetros: _id: int, new_name: str Vai alterar o nome do produto pelo outro nome passado

Alteração da Categoria: /change/productcategory Método POST; Parâmetros: _id: int, new_category_id: int Vai alterar a categoria do produto pela outra categoria passada

Remoção: /remove/product Método POST; Parâmetro: _id: int Vai remover o produto de acordo com o id passado

Fornecedor:

Leitura: /read/provider Método: GET Vai retornar uma lista com os fornecedores cadastrados

Filtro: /find/provider Método POST; Parâmetro: _id: int Vai retornar um fornecedor de acordo com o id que for passado

Cadastro: /register/provider Método POST; Parâmetros: name: str, category_id: int Vai realizar o cadastro do fornecedor com as informações passadas

Alteração: /change/provider Método POST; Parâmetros: _id: int, name: str Vai alterar o nome do fornecedor pelo outro nome passado

Remoção: /remove/provider Método POST; Parâmetro: _id: int Vai remover o fornecedor de acordo com o id passado

Cliente:

Leitura: /read/customer Método: GET Vai retornar uma lista com os clientes cadastrados

Filtro: /find/customer Método POST; Parâmetro: nick: str Vai retornar um cliente de acordo com o nick passado

Cadastro: /register/customer Método POST; Parâmetros: nick: str, name: str, cpf: str Vai cadastrar um cliente de acordo com as informações passadas

Alteração: /change/customer Método POST; Parâmetros: nick: str, new_nick: str Vai alterar o nick de um cliente cadastrado pelo outro nick passado

Remoção: /remove/customer Método POST; Parâmetro: nick: str Vai remover o cliente de acordo com o nick passado

Funcionário:

Leitura: /read/employee Método: GET Vai retornar uma lista com os funcionários cadastrados

Filtro: /find/employee Método POST; Parâmetro: nick: str Vai retornar um funcionário de acordo com o nick passado

Cadastro: /find/employee Método POST; Parâmetros: nick: str, name: str, cpf: str Vai cadastrar um funcionário de acordo com as informações passadas

Alteração: /change/employee Método POST; Parâmetro: nick: str, new_nick: str Vai alterar o nick de um usuário pelo outro nick passado

Remoção: /remove/employee Método POST; Parâmetro: nick: str Vai remover o funcionário de acordo com o nick passado

Operação de Venda de Produto

Esta API pode realizar operações de vendas e deixar registrado no banco de dados com a respectiva data em que foi realizada.

Rota:

Vender: /sell Método POST; Parâmetros: product_id: int, customer_nick: str, amount: int Vai realizar a operação de venda e registrar com a data do dia em que foi realizada.

Relatórios

Esta API também pode exibir os relatórios de vendas. Ela era relatórios de vendas por data, relatório de vendas geral de produtos ou de compras de clientes, além de, também, poder fazer um top 3 produtos que mais venderam ou clientes que mais compraram, ordenando do maior para o menor.

Relatório Geral:

Relatório de Vendas de Produtos: /report/sales Método GET Retorna uma lista com o relatório geral de vendas de produtos.

Relatório de Compras de Clientes: /report/purchases Método GET Retorna uma lista com o relatório geral de compras de clientes cadastrados.

Ranking:

Top 3 Produtos: /report/sales/ranking Método GET Retorna uma lista com o top 3 produtos que mais venderam.

Top 3 Clientes: /report/purchases/ranking Método GET Retorna uma lista com o top 3 clientes cadastrados que mais compraram.

sistema-de-gerenciamento-de-mercearia's People

Contributors

weblerson avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.