samluiz / order-management-api

API de gerenciamento de pedidos de um restaurante

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Order Management API

API que gerencia os pedidos de um restaurante.

Referência

Funcionalidades

  • Criação, atualização, visualização e remoção (soft delete) de produtos
  • Criação e visualização de pedidos
  • Autenticação JWT
  • RBAC (Role Based Access Control)
  • Testes unitários
  • Migrations

Rodando localmente

Clone o projeto

  git clone https://github.com/samluiz/desafio-java/tree/main

Entre no diretório do projeto

  cd desafio-java

Instale as dependências

  mvn install

Inicie o servidor (é necessário possuir o Docker e docker-compose instalados em sua máquina)

  ./run.sh

O swagger da API estará disponível em http://localhost:8080/api/docs

Para acessar os endpoints protegidos é necessário gerar um token JWT. Para isso, faça uma requisição POST para http://localhost:8080/api/auth/login com o seguinte payload:

{
  "username": "admin",
  "password": "admin"
}

Rodando os testes

Para rodar os testes, rode o seguinte comando

  mvn test

Stack utilizada

Java 17, Spring Boot, PostgreSQL, Flyway, Docker, JUnit 5, Mockito

About

API de gerenciamento de pedidos de um restaurante


Languages

Language:Java 99.6%Language:Dockerfile 0.3%Language:Shell 0.0%