O projeto CineJava é um sistema desenvolvido para a disciplina de Programação Orientada a Objetos (POO), para gerenciar as operações de um cinema, permitindo que clientes comprem ingressos e acessem informações sobre suas compras, enquanto gerentes podem emitir relatórios de vendas. O sistema foi projetado com foco na experiência do usuário, garantindo uma interface amigável e um tratamento de erros.
O sistema deve atender aos seguintes critérios:
-
Consistência:
- Implementar um tratamento de exceções robusto para garantir que o sistema lide com erros de forma eficiente.
-
Estética:
- Focar na experiência do usuário, proporcionando uma interface intuitiva e agradável.
-
Estruturas de Programação:
- Utilizar todas as estruturas discutidas em aula, incluindo:
- Composição
- Modificadores de acesso para encapsulamento
- Herança
- Interfaces
- Polimorfismo
- Enumeradores
- Atributos e métodos estáticos
- Bibliotecas necessárias.
- Utilizar todas as estruturas discutidas em aula, incluindo:
-
Cliente:
- Comprar entradas de filmes, escolhendo assentos a partir de um mapa interativo.
- Selecionar ingressos de meia ou inteira.
- Consultar seu histórico de compras e verificar as entradas ativas.
- Comprar produtos na bomboniere, como pipoca e refrigerantes.
-
Gerente:
- Emitir relatórios de vendas, incluindo:
- Faturamento total do mês.
- Filme mais vendido.
- Emitir relatórios de vendas, incluindo:
-
Usuario
- Atributos:
nome
,cpf
,login
,email
,senha
,telefone
- Métodos: Construtores, getters, setters,
exibirInformacoes
- Atributos:
-
Cliente (extends
Usuario
)- Métodos: Construtores, getters, setters,
comprarIngresso
,consultarHistorico
,comprarBomboniere
- Métodos: Construtores, getters, setters,
-
Gerente (extends
Usuario
)- Métodos: Construtores, getters, setters,
emitirRelatorio
- Métodos: Construtores, getters, setters,
-
Filme
- Atributos:
titulo
,duracao
,classificacao
,assentos
,vendas
- Métodos: Construtores, getters, setters,
venderIngresso
,consultarAssentos
- Atributos:
-
Sessao
- Atributos:
tipo
,preco
,filme
,assento
- Métodos: Construtores, getters, setters,
toString
- Atributos:
-
Bomboniere
- Atributos:
produtos
,vendas
- Métodos: Construtores, getters, setters,
venderProduto
- Atributos:
- Tela Principal:
- Apresenta um layout intuitivo.
- Área do Cliente:
- Visualização clara das opções de compra de ingressos e produtos da bomboniere.
- Seção dedicada ao histórico de compras.
- Breadcrumbs para facilitar a navegação entre diferentes seções do sistema.
- Área do Gerente:
- Acesso a relatórios de vendas em formato de tabela.
- Visualização de faturamento mensal e filmes mais vendidos.
- Breadcrumbs para facilitar a navegação entre diferentes seções do sistema.
Eduardo Felipe |
Larissa Anunciação |
Luis Felipe |
Felipe Gonçalves |
Thais Cardoso |
Para o desenvolvimento dos projetos, foram utilizadas as seguintes ferramentas:
🟣 VSCode Documentação
🟣 Spring Boot Extension Pack
🟣 Extension Pack for Java