Skip to content

Latest commit

 

History

18 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


🛠️ Como rodar o projeto

Clone o repositório: git clone https://github.com/Yaguera/EcommercePrototypeAPI.git

Entre no diretório do projeto: cd EcommercePrototypeAPI

  1. Run npm i command

  2. Run docker-compose up -d command

  3. Run npm run dev command

    OBS: NECESSÁRIO DOCKER E NODEJS INSTALADO !

Sobre o Projeto

Este projeto é uma API para gestão de pedidos e controle de estoque de produtos, o foco do projeto está na integração de sistemas por meio do RabbitMQ, uma ferramenta que ajuda a verificar a quantidade de produtos no estoque de maneira eficiente, antes de confirmar um pedido. A ideia principal foi garantir que, através da integração por mensageria, seja verificado a quantidade de produtos e garantir que sempre haja estoque disponível para os pedidos, sem sobrecarregar o sistema pois caso vários pedidos sejam feitos ao mesmo tempo, a fila de mensagens dará conta de processá-los assincronamente.

Tecnologias Utilizadas

  • Node.js (Framework Express)
  • TypeScript
  • TypeORM
  • PostgreSQL
  • RabbitMQ (Mensageria)
  • JWT (Autenticação)
  • Docker e Docker-Compose

🚀 Rotas da API

1. Rotas de Autenticação de Usuário

Método Rota Descrição
POST /user/signup Cadastrar um novo usuário
POST /user/login Login do usuário
GET /user/profile Retorna dados do usuário
GET /user/users Retornar todos os usuários
PUT /user/update/:id Atualizar dados do usuário
DELETE /user/delete/:id Deletar usuário

2. Rotas de Pedidos

Método Rota Descrição
POST /pedidos/create Criar um pedido
GET /pedidos/all Mostrar todos os pedidos
PUT /pedidos/update/:id Atualizar um pedido
DELETE /pedidos/delete/:id Deletar um pedido

3. Rotas de Produtos

Método Rota Descrição
POST /produto/create Criar um produto
GET /produto/all Mostrar todos os produtos
PUT /produto/update/:id Atualizar um produto
DELETE /produto/delete/:id Deletar um produto

4. Rotas de Categorias

Método Rota Descrição
POST /categoria/create Criar uma categoria
GET /categoria/all Mostrar todas as categorias
PUT /categoria/update/:id Atualizar uma categoria
DELETE /categoria/delete/:id Deletar uma categoria

About

Trabalho da disciplina Tecnicas de Integração de Sistemas, consiste em integrar, por meio de mensageria, uma api de estoque e outra api de pedidos, além de contar com autenticação de usuários com o JWT e encriptografia de senhas com bcrypt.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages