Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

279 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🏢 Humanize — Grupo 07

Status Maven Java Static Badge License


📌 Sobre o Projeto

Este é o Trabalho Prático da disciplina de Técnicas de Programação 1 da UnB.
O objetivo do sistema é automatizar os principais processos relacionados aos colaboradores em uma organização de recursos humanos, oferecendo uma interface interativa e relatórios completos.


📂 Estrutura do Projeto

O projeto utiliza Maven e segue uma arquitetura MVC com camadas organizadas:

projeto-tp1/
├── documentação/ # Armazena relatórios do projeto
├── empacotados/ # Armazena executáveis do projeto. Se deseja executar sem precisar compilar o projeto, utilize os executáveis aqui encontrados
├── src/main/java/
│ └── app/humanize/
│ ├── controller/ # Controladores JavaFX (lógica da UI)
│ ├── exceptions/ # Exceções customizadas (ex: CpfInvalidoException)
│ ├── model/ # Classes de Domínio (Usuario, Funcionario, Vaga, etc.)
│ ├── repository/ # Camada de Persistência (Leitura/Escrita de CSV)
│ ├── service/ # Camada de Aplicação (Lógica de Negócio)
│ │ ├── formatters/ # Padrão Strategy: Formatadores (PdfFormatter, CsvFormatter)
│ │ ├── relatorios/ # Padrão Strategy: Geradores de dados (RelatorioListaUsuarios)
│ │ └── validacoes/ # Serviços de validação (ValidaCpf, ValidaEmail)
│ ├── util/ # Classes utilitárias (UserSession, ScreenController)
│ ├── Launcher.java # Ponto de entrada do app
│ └── Main.java # Classe principal da aplicação JavaFX

├── src/main/resources/
│ ├── bundles/ # Arquivos de tradução
│ ├── css/ # StyleSheets do css
│ ├── fotos_perfil/ # Fotos de perfil dos usuários
│ ├── uploads/ # (Reservado para uploads de documentos/currículos)
│ └── view/ # Telas da aplicação (arquivos FXML)

├── pom.xml # Dependências e build do Maven
└── README.md # Esta documentação


🚀 Funcionalidades Principais

  • 🔐 Autenticação com diferentes níveis de acesso: Administrador, Gestor, Recrutador e Funcionário.
  • 👨‍💼 Gestão de candidatos — cadastro, atualização, exclusão e listagem.
  • 📝 Gerenciamento de vagas e entrevistas.
  • 💰 Controle financeiro — folha de pagamento e relatórios.
  • 🧾 Gestão de prestadores e contratos.
  • 📊 Geração de relatórios em PDF e CSV.
  • 🎨 Interface intuitiva com JavaFX.
  • E muito mais...

🛠️ Tecnologias Utilizadas

  • Java 22 → Linguagem principal
  • JavaFX → Interface gráfica
  • Maven → Gerenciamento de dependências
  • Git Flow → Gerenciamento de branches

⚡ Configuração do Ambiente

Pré-requisitos

Instalação

# Clonar o repositório
git clone https://github.com/davilb64/projeto-tp1.git

# Entrar na pasta do projeto
cd projeto-tp1

# Compilar o projeto
mvn clean install

# Executar "src/main/java/app/humanize/Launcher.java"

🗂️ Roadmap do Desenvolvimento

Etapa Descrição Prazo Responsáveis
Etapa 1 Estrutura inicial 23/09/2025 Todos
Etapa 2 Design e Modelagem 07/10/2025 Todos
Etapa 3 Implementaçao da Logica 28/10/2025 Cada membro por módulo
Etapa 4 Integração e Navegabilidade 11/11/2025 Todos
Etapa 5 Entrega final e apresentação 25/11/2025 Todos

🧑‍💻 Contribuidores

Aluno Módulo GitHub
Aluno 1 Administração e Gestão Davi Lopes
Aluno 2 Candidatura Valquíria Machado
Aluno 3 Recrutamento Ricado Rian
Aluno 4 Financeiro Samara Gomes

📜 Licença

Este projeto é distribuído sob a licença MIT.
Sinta-se livre para modificar e utilizar, desde que mantenha os créditos.


🌟 Observações

  • Utilize Git Flow para criar features, releases e hotfixes.

Feito com ❤️ pelo Grupo 07 — UnB, 2025.

About

Humanize - Sistema de Gestão de Recursos Humanos — Grupo 07

Resources

Stars

Watchers

Forks

Used by

Contributors

Languages