Skip to content

O projeto da Rocketseat - Journey - Tem como objetivo ajudar o usuário a organizar viagens à trabalho ou lazer. O usuário pode criar uma viagem com nome, data inicial e final. Dentro da viagem o usuário pode planejar sua viagem adicionando atividades para realizar em cada dia.

Notifications You must be signed in to change notification settings

vgerace/planner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

image

Projeto NLW 16: Journey - Trilha Java ☕


Status

A NLW, idealizada pela Rocketseat, pode-se traduzir como: "Next Level Week"! Uma semana de código para colocar em prática e elevar o nível da sua programação!

A aplicação Backend Planner tem como principal funcionalidade o cadastro de uma viagem com suas informações principais para que possa auxiliar no planejamento e gerenciamento.

Meu objetivo em participar do evento foi a revisão de conceitos e recursos do mundo Java e Spring, o que colaborou para estudar e ampliar meus conhecimentos! 😄

🗒️ Índice

📌 Requisitos Funcionais

  1. Cadastro de Viagem:

    O usuário informa o destino, data de início, data de término, e-mails dos convidados, nome completo e e-mail.

  2. Confirmação de Viagem:

    O criador da viagem recebe um e-mail com um link para confirmar a nova viagem.

    Ao clicar no link, a viagem é confirmada, os convidados recebem e-mails de confirmação e o criador é redirecionado para a página da viagem.

  3. Confirmação de Convidado:

    Ao clicar no link de confirmação, o convidado é redirecionado para o aplicativo.

    O convidado deve informar seu nome (além do e-mail que já estará preenchido).

    O convidado é confirmado na viagem após informar seu nome.

  4. Links Importantes da Viagem:

    Na página do evento, os participantes da viagem podem adicionar links importantes da viagem, como reserva de AirBnB, lugares para visitar, etc.

  5. Adição de Atividades:

    Na página do evento, o idealizador e convidados podem adicionar atividades que ocorrerão durante a viagem com título, data e horário.

  6. Convite de Novos Participantes:

    Novos participantes podem ser convidados dentro da página do evento por e-mail.

    Os novos participantes devem passar pelo fluxo de confirmação como qualquer outro convidado.

🎯 Como executar

Na linha de comando execute:

# Clone o repositório
$ git clone https://github.com/vgerace/planner

# Entre no diretório
$ cd planner/target

# Execute o comando abaixo para startar o app
$ java -jar planner-0.0.1-SNAPSHOT.jar

[Java]

# Entre no diretório
$ cd planner/src/main/java

$ Execute a classe PlannerApplication

Aula 1 - Estruturação do Projeto e Funcionalidades Iniciais

  • Criação do projeto com Spring, Flyway, Dev Tools, Lombok, JPA e H2 Database
  • Configuração do banco de dados na aplicação
  • Criação das entidades que representam uma Trip
  • Criação da migration para criação da tabela Trips
  • Criação do repository da entidade Viagem
  • Criação do Endpoint do cadastro e consulta de viagem

Aula 2 - Implementação da funcionalidade das viagens, cadastro e confirmação de participantes

  • Criação do Endpoint de atualização de viagem
  • Criação da tabela de Participant e Entidade
  • Criação do Repository da Entidade Participante
  • Criação od Endpoint de Confirmação de Participante
  • Criação od Endpoint para Connvidar Participante
  • Criação do Endpoint para Consultar Participantes

Aula 3 - Implementação de todas as funcionalidades sobre as atividades da viagem e os links

  • Criação da tabela de Activites e Entidade
  • Criação do Repository da Entidade Atividade
  • Criação do Endpoint para criação da Atividadde
  • Criação od Endpoint para consultar atividades de uma viagem
  • Criação da tabela de Links e Entidade
  • Criação do Repository da Entidade Links
  • Criação do Endpoint para criação de link
  • Criação do Endpoint para consultar links de uma viagem

Desafios Aula 3

  • Implementação de validação nos campos de data. (A data de começo da viagem é inferior a data de término) e (A data de uma atividade está entre as datas da viagem)
  • Extração do Core das Trips para dentro da classe Service
  • Mapeamento das Exceções da Aplicação com tratativas de erro personalizadas

⚙️ Tecnologias

👏🏾 Agradecimento

Quero registrar meu agradecimento a todos envolvidos da equipe Rocketseat e sua comunidade, que impulsionaram e colaboraram para a realização desse projeto.

About

O projeto da Rocketseat - Journey - Tem como objetivo ajudar o usuário a organizar viagens à trabalho ou lazer. O usuário pode criar uma viagem com nome, data inicial e final. Dentro da viagem o usuário pode planejar sua viagem adicionando atividades para realizar em cada dia.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages