caro-marks / hero_C

simple people info manager created for test purposes

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Company Hero Test

Servidor que gerencia cadastro de funcionários, empresas, e contratos entre estes.

🚀 Disponível no link https://ch-test-deploy.herokuapp.com/

🛠 Tecnologias

As ferramentas usadas na construção do projeto foi:

Instruções para testar a aplicação localmente

Clone este repositório

git clone https://github.com/caro-marks/hero_C.git ./

Configure as variáveis de ambiente

cp .env.sample .env
cp ./hctest/.env.sample ./hctest/.env

Subir Containers, Realizar os testes, e Rodar a aplicação com MAKEFILE

make migrate
make test
make build

Opcional: Popular o banco de dados local com Faker e validate-docbr.

make populate

Documentação básica

Funcionários

Objeto = { "primeiro_nome": nome, "ultimo_nome": sobrenome, "cpf": cpf válido (somente numeros) }

Método Descrição Url
GET Listar todos os funcionários /funcionarios/
GET Listar um funcionário por seu id /funcionarios/{id}
POST Cadastrar um funcionário /funcionarios/
PUT Alterar um funcionário por seu id /funcionarios/{id}
DELETE Deletar um funcionário por seu id /funcionarios/{id}

Empresas

Objeto = { "nome_social": nome da empresa, "cnpj": cnpj válido (somente numeros) }

Método Descrição Url
GET Listar todas as empresas /empresas/
GET Listar uma empresa por seu id /empresas/{id}
POST Cadastrar uma empresa /empresas/
PUT Alterar uma empresa por seu id /empresas/{id}
DELETE Deletar uma empresa por seu id /empresas/{id}

Contratos

Objeto = { "funcionario": id de funcionário, "empresa": id de empresa, "ativo": *Booleano" }

Não é possível alterar um contrato. O método HTTP DELETE é SOFT: o contrato não é excluido do banco de dados, somente desativado.

Método Descrição Url
GET Listar todos os contratos /contratos/
GET Listar um contrato por seu id /contratos/{id}
POST Cadastrar um contrato /contratos/
DELETE Deletar um contrato por seu id /contratos/{id}

Listas

Método Descrição Url
GET Listar todos os funcionários de uma empresa por seu id /empresa/{id}/contratos/
GET Listar todos os contratos de um funcionários por seu CPF /funcionario/{CPF}/contratos/

Feito por

Marcos Nolasco 👋🏽

About

simple people info manager created for test purposes

License:The Unlicense


Languages

Language:Python 98.0%Language:Makefile 1.5%Language:Dockerfile 0.6%