Skip to content

karenrodriguesx/api-bistrobooking

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🍽️ API BistroBooking - Reserva de Restaurantes Karen-JavaKaren-spring

📖 Sobre o Projeto

  • O BistroBooking é uma API que permite o cadastro de clientes e restaurantes, além da realização de reservas informando dia e horário, quantidade de pessoas e o restaurante escolhido.

🌐 Como acessar?

  • O deploy da API foi realizado na nuvem Railway.
  • A documentação e testes podem ser acessados via Swagger, através deste link

🚀 Tecnologias utilizadas

  • Java: Linguagem principal utilizada no desenvolvimento.
  • Spring Framework: Utilizado com Spring Boot, Spring Web e Spring Data.
  • PostgreSQL: Banco de dados relacional utilizado nos ambientes de desenvolvimento e produção.
  • Docker: Para o banco de dados do ambiente de desenvolvimento, foi configurado um container do Docker, que roda localmente.
  • Railway: Plataforma na nuvem utilizada para o deploy da API.

🔧 Funcionalidades

  • Cadastro de Clientes e Restaurantes: Permite o registro de novos clientes e restaurantes.
  • Reserva de Restaurantes: Possibilita realizar reservas especificando data, horário, quantidade de pessoas e o restaurante escolhido.
  • Operações CRUD: Suporte completo às operações de criação, leitura, atualização e exclusão (CRUD) para todas as entidades.
    • Get: Recupera informações.
    • Post (Salvar): Adiciona novos dados.
    • Put (Atualizar): Atualiza dados existentes.
    • Delete: Remove dados.

🗺️ Diagrama de Classes

classDiagram
    class Reserva {
        <<Entity>>
        +Long id
        +Long fk_restaurante
        +Long fk_cliente
        +LocalDateTime dth_reserva
        +int numero_pessoas
        +String status
    }
    
    class Cliente {
        <<Entity>>
        +Long id
        +String nome
        +String email
        +String telefone
    }
    
    class Restaurante {
        <<Entity>>
        +Long id
        +String nome
        +String telefone
        +String descricao
        +String tipo_culinaria
        +Long fk_endereco
    }
    
    class Endereco {
        +Long id
        +String cep
        +String logradouro
        +String complemento
        +String bairro
        +String localidade
        +String uf
    }
    
    Reserva --> Restaurante : fk_restaurante
    Reserva --> Cliente : fk_cliente
    Restaurante --> Endereco : fk_endereco

Loading