Skip to content

IsaacSales15/rh-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 

Repository files navigation

📂 RH API – Gerenciamento de Funcionários

API REST desenvolvida com Spring Boot para cadastro e gerenciamento de funcionários, incluindo nome, e-mail, salário, data de admissão e status (ativo/inativo).


🔧 Tecnologias

  • Java 17+
  • Spring Boot
  • Spring Data JPA
  • Hibernate
  • H2 Database (ou outro configurado)
  • Jakarta Validation

🏁 Como executar

git clone https://github.com/IsaacSales15/rh-api.git
cd seu-repositorio
./mvnw spring-boot:run

📦 Estrutura do Projeto

  • controller: camadas de controle da API (FuncionarioController)
  • service: regras de negócio (FuncionarioService)
  • dto: objetos de entrada/saída da API
  • model: entidade Funcionario e enum StatusFuncionario
  • mapper: conversão entre DTO e entidade
  • repository: interface JPA para acesso ao banco de dados

🚀 Endpoints

🔹 GET /funcionarios

Retorna a lista de todos os funcionários cadastrados.

[
  {
    "id": 1,
    "nome": "João Silva",
    "email": "joao@email.com",
    "salario": 3000.00,
    "dataAdmissao": "2024-01-10",
    "status": "ATIVO"
  }
]

🔹 GET /funcionarios/{id}

Busca um funcionário pelo ID.

Resposta (200 OK):
{
  "id": 1,
  "nome": "João Silva",
  "email": "joao@email.com",
  "salario": 3000.00,
  "dataAdmissao": "2024-01-10",
  "status": "ATIVO"
}

Resposta (404 Not Found):

Sem corpo de resposta.

🔹 POST /funcionarios

Cadastra um novo funcionário.

Corpo da Requisição:
{
  "nome": "Maria Oliveira",
  "email": "maria@email.com",
  "salario": 4500.00,
  "dataAdmissao": "2024-02-01",
  "status": "ATIVO"
}

Resposta (201 Created):

{
  "id": 2,
  "nome": "Maria Oliveira",
  "email": "maria@email.com",
  "salario": 4500.00,
  "dataAdmissao": "2024-02-01",
  "status": "ATIVO"
}

🔹 PUT /funcionarios/{id}

Atualiza um funcionário existente.

Corpo da Requisição:
{
  "nome": "Maria Oliveira",
  "email": "maria.oliveira@email.com",
  "salario": 5000.00,
  "dataAdmissao": "2024-02-01",
  "status": "ATIVO"
}

Resposta (200 OK): Funcionário atualizado com sucesso.
Resposta (404 Not Found): Funcionário não encontrado.

📌 Validações

  • nome: obrigatório
  • email: obrigatório e formato válido
  • salario: mínimo de R$ 1.000,00
  • dataAdmissao: obrigatória
  • status: obrigatório (ATIVO ou INATIVO)

A API estará disponível em: http://localhost:8080/funcionarios

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages