Skip to content

daigoncalves14/AcheiBreja

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

90 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AcheiBreja

logoAcheiBreja

Visão geral

O projeto consiste em dar assistência ao usuário a comprar sua cerveja favorita no próprio aplicativo de acordo com a localização desejada.

Documentação 📄

Problema social a ser trabalhado

Experiência social do consumidor: O Brasil é um dos maiores consumidores de cerveja do mundo, o que por sua vez faz com que a cerveja seja uma parte importante da cultura e da tradição dos brasileiros.

Impacto e consequência do problema social na sociedade

Economia: Primeiramente, pode haver um impacto na economia local, uma vez que o consumidor pode optar por comprar a cerveja de outra marca ou mesmo deixar de consumi-la, o que pode afetar a demanda e, consequentemente, a produção e distribuição da cerveja em questão. Isso pode prejudicar os negócios locais que comercializam essa cerveja, incluindo bares, restaurantes e lojas de bebidas.

A solução

Visando as deficiências encontradas, nossa proposta é a de trazer para o consumidor a facilidade de encontrar a partir de sua preferência ou de acordo com a preferência de seus amigos, um estabelecimento que sirva a cerveja que mais lhe agrada, podendo inclusive já verificar o preço e optar pela melhor escolha, visando seu custo e benefício.

Software

Esse aplicativo foi projetado para permitir que os consumidores pesquisem por cervejas específicas e encontrem locais de venda próximos que oferecem essas cervejas, permitindo que os usuários pesquisem por nome de marca, estilo de cerveja e região de origem. O aplicativo utiliza informações de geolocalização para mostrar aos usuários os locais de venda mais próximos que oferecem a cerveja procurada. Para incentivar o uso do aplicativo, os fabricantes de cerveja e os locais de venda poderiam oferecer promoções exclusivas para os usuários ou reversão do valor dessa promoção para entidades sem fins lucrativos.

Tecnologias utilizadas

  • IDE Utilizada: Spring Tool Suite/ Spring Security / Eclipse;
  • Versionamento de códigos: Git, GitHub, Sourcetree;
  • Banco de dados utilizado: Oracle;
  • Interface do banco de dados: SQL Developer;
  • Arquitetura MVC.

Tabelas do banco de dados

Para as tabelas desenvolvidas neste projeto foi preciso usar um identificador único, que no banco de dados é chamado de chaves primárias (PK). É importante ressaltar que as chaves primárias não podem receber valores repeditos e tão pouco nulos.

Pode-se observar ainda que nas tabelas de produtos, requisiões e produto/estabelecimento utiliza-se as chaves primárias de outras tabelas e elas são denominadas chaves estrengeiras (FK) e tem como objetivo identificar a relação entre elas.

Tabela de usuários

idUsuario (PK) nomeCompleto e-mail senha
1 Aisla Alcântara [email protected] abc123
2 Carolaine Marquezini [email protected] abc123
3 Daiane Goncalves [email protected] abc123
4 Marília Fileto [email protected] abc123
5 Viviane Neres [email protected] abc123

Tabela de categorias

idCategoria (PK) tipoCategoria
1 pilsen
2 lager
3 ipa

Tabela de produtos

idProduto (PK) idCategoria (FK) nomeProduto precoProduto volume
1 1 Patagonia Bohemian 5,79 350 ml
2 2 Quilmes 7,90 473 ml
3 2 Budweiser zero 3,99 269 ml
4 3 Colorado Indica 4,72 350 ml

Tabela de estabelecimentos

idEstabelecimento (PK) Logradouro Bairro nomeBar
1 Rua Américo Brasiliense Cambui Tatu Bola
2 Rua Dr. Heitor Penteado Joaquim Egídio Bar do Caixote
3 Av. Barão de Itapura Taquaral Dom Brejas
4 Rua Horácio Leonardi Barão Geraldo Estação Barão

Tabela de requisições

IdRequisicao (PK) idUsuario (FK) IdProduto (FK) idEstabelecimento (FK) quantidadeRequisicao dataRequisicao
1 1 1 1 1 01/01/2023
2 2 2 2 1 01/01/2023
3 3 3 3 1 01/01/2023
4 4 2 4 1 01/01/2023

Tabela produto estabelecimento

IdProduto PK FK idEstabelecimento PK FK
1 1
2 1
4 1
2 2
4 2
1 3
3 3
1 4
2 4
3 4

Documentação do Swagger

A documentação do swagger mostra todos os CRUDs das entidades existentes neste projeto.

Rotas

Nesta API Rest FULL foi utilizado os métodos HTTP para realizar as rotas da aplicação por meio do CRUD (Create, Read, Update, Delete).

Rotas de usuários:

Método HTTP Endpoint Descrição
GET /usuarios/all Retorna todos os usuários
GET /usuarios/{ID} Retorna usuário por id
PUT /atualizar/{id} Atualiza usuário por id
POST /usuarios/cadastrar Cria um usuário
POST /usuarios/logar Logar usuário
DELETE /delete/{id} Deleta usuário por id

Rotas de categorias:

Método HTTP Endpoint Descrição
GET /categoria Retorna todas as categorias
GET /categoria/{idCategoria} Retorna categorias por id
GET /categoria/tipoCategoria/{tipoCategoria} Retorna por tipo de categoria
POST /categoria Cria categoria
PUT /categoria/atualizar/{id} Atualiza categoria por id
DELETE /categoria/{id}. Deleta categoria por id

Rotas de produtos:

Método HTTP Endpoint Descrição
GET /produto Retorna todos os produto
GET /produto/{id} Retorna produto por id
GET /produto/nome/{nome} Retorna por nome de produto
POST /produto Cria produto
PUT /produto/atualizar/{id} Atualiza produto por id
DELETE /produto/{id} Deleta produto por id

Rotas de estabelecimentos:

Método HTTP Endpoint Descrição
GET /estabelecimentos/buscar/all Retorna todos os estabelecimentos
GET /estabelecimentos/buscar/{id} Retorna estabelecimento por id
GET /estabelecimento/buscar/produto/{idProduto} Retorna estabelecimentos por id do produto
POST /estabelecimentos/criar Cria estabelecimentos
PUT /estabelecimentos/atualizar/{id} Atualiza estabelecimento por id
DELETE /estabelecimentos/deletar/{id} Deleta estabelecimento por id

Rotas de requisição:

Método HTTP Endpoint Descrição
GET /requisicao/requisicao Retorna todas as requisições
GET /requisicao/requisicao/{id} Retorna requisições por id
POST /requisicao/criarRequisicao Cria requisição
POST /requisicao/salvarRequisicao Atualiza requisição
DELETE /requisicao/{id} Deleta requisição por id

Autoras

Referência

https://github.com/rafaelq80/cookbook_spring_v3/blob/main/03_spring/README.md

About

Projeto final do curso Afro Tech - Bees

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 95.2%
  • Dockerfile 4.8%