Skip to content

luksquitos/customers-registration

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Registro de Clientes

Introdução

Api de cadastro de clientes com validador de CPF. Foi construída utilizando o framework Django, Django Rest Framework, o banco de dados Postgres e conteirizada com Docker.

Premissas

  • Ter o Docker e Docker Compose instalados na máquina.
  • Na raiz do projeto utilizar o comando: docker-compose up --build

Configurações iniciais

Todos os comandos a seguir precisam ser executados no terminal do container.

Comando para acessar terminal do container:

docker exec -it api bash
  • Rodar as migrates iniciais: Execute python manage.py migrate para que as bibliotecas padrões, arquivos estáticos sejam migrados para a base de dados.

  • Rodar as migrations das aplicações 'customers'. Utilize o comando python manage.py makemigrations, seguido do python manage.py migrate. Assim, os serviços presentes na API serão adicionados a base de dados.

Para sair do terminal do container basta escrever exit

Endpoints

  • http://localhost:8000/ : Possui as rotas que serão usadas pela aplicação web.

  • localhost:8000/customers/ :

    • GET: Listagem de todos os clientes cadastrados na base de dados.
    • POST: Criação de um novo cliente na base de dados
      {
          "name": "Walter Branco",
          "birth": "1980-03-10",
          "cpf": "785.023.120-14"
      }

      Obs: Caso CPF seja inválido, cliente não será cadastrado.

  • localhost:8000/customers/{pk}/ :

    • GET: Detalhes do cliente {pk}
    • PATCH: Updates parciais no cliente.
      {
          "cpf": "847.610.520-74"
      }
    • PUT: Updates totais do cliente
      {
          "name": "Kratos Bom de Guerra",
          "birth": "1904-03-10",
          "cpf": "256.702.260-03"
      }
  • localhost:8000/customers/?search={cpf}: Pesquisa de algum CPF em específico OBS: Pesquisa deve ser feita sem aspas

  • localhost:8000/customers/?page={integer}: Sistema de páginas no endpoint

Testes

Os testes presente em tests.py é para verificação de integridade da função is_cpf_valid.

Para executar os testes escritos, basta entrar no terminal do container e rodar o comando python manage.py test.

Bibliotecas utilizadas

Contatos

About

Uma api para registro de clientes com validação de CPF

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published