Skip to content

abimaelrsergio/plano-saude

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Olá, eu sou a Abimael Sergio! 👋

🚀 Sobre mim

Com mais de 20 anos de experiência em engenharia de software, sou um desenvolvedor Java proativo e responsável com foco em sistemas web. Tenho forte conhecimento técnico e um histórico de entrega de sistemas sólidos que aumentam a receita. Estou fazendo Doutorado em Informática e Gestão do Conhecimento pela Uninove, onde pesquiso dinâmica evolutiva para jogos populacionais baseados em autômatos celulares e algoritmos genéticos.

Trabalho como Java Engineer, utilizo Java (Spring Boot) para criar soluções inovadoras e escaláveis para diversos projetos. Estou constantemente me atualizando com as mais novas tecnologias e conceitos do mercado para oferecer a melhor solução possível para os clientes. Sou apaixonado por aprender novas habilidades e resolver problemas desafiadores.

🛠 Habilidades

Hard Skills:
• Backend: Java, Spring Boot, Spring Data JPA.
• Frontend: HTML, CSS, Bootstrap, JavaScript, Angular.
• Aprendendo: AWS, Docker e Kubernetes.
• Banco de dados: PostgreSQL, MongoDB, MySQL, Oracle, Microsoft SQL Server, DB2.
• Controle de versão: Git.
• Sistemas operacionais: Linux, Windows.
• Mestrado em Informática.

Soft Skills:
• Curiosidade.
• trabalho em equipe.
• proativo.
• autodidata.

Outras seções comuns em perfis do GitHub

👩‍💻 Trabalho atualmente na Turing.com

🧠 Estou aprendendo AWS

👯‍♀️ Procuro colaborar no projeto Spring Security

📫 Entre em contato [email protected]

🔗 Links

linkedin

Feedback

Se você tiver algum feedback, por favor nos deixe saber por meio de [email protected]

Autores

Licença

MIT

GitHub Stats

GitHub Stats Top Langs

Plano de Saúde

Aplicação criada com Java e Spring Boot para fornecer uma API REST que mantém o cadastro de beneficiários do um plano de saúde.

🛠 Tecnologias

As seguintes ferramentas foram usadas na construção do projeto:

🚀 Como rodar a aplicação

Clone este repositório

$ git clone https://github.com/abimaelrsergio/plano-saude.git

Acesse a pasta do projeto no terminal/cmd

$ cd plano-saude
Instale as dependências
$ mvn install

Execute a aplicação

$ mvnw spring-boot:run

Execute a aplicação com Docker

$ mvnw spring-boot:build-image -DskipTests
$ docker run -p 8080:8080 abimael/cadastro:0.0.1-SNAPSHOT

Checar se está rodando e parar o Docker

$ docker container ps
$ docker container stop <CONTAINER ID>

(Inicio)

📖 Documentation

A documentação dos endpoints pode ser vista no Swagger

http://localhost:8080/swagger-ui/index.html

ou

http://localhost:8080/v3/api-docs

(Inicio)

Testando EndPoints

Obtenha um token:

curl --location 'localhost:8080/authenticate' \
--header 'Content-Type: application/json' \
--header 'Cookie: JSESSIONID=26C0617F6B46001891C598D3AF93E20A' \
--data '{
    "username": "admin",
    "password": "admin"
}'

(Inicio)

Cadastrar um beneficiário junto com seus documentos;

curl --location 'localhost:8080/plano-saude/beneficiarios' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer eyJraWQiOiJmOTc5YTZjOS0xZjlmLTRjNjItYmE4OC1lZTc4ZDc3MjMxZWUiLCJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJzZWxmIiwic3ViIjoiYWRtaW4iLCJleHAiOjE3MDYxMDkxMjQsImlhdCI6MTcwNjEwMzcyNCwic2NvcGUiOiJST0xFX0FETUlOIFJPTEVfVVNFUiJ9.lamftPbZJUOiNl6kPzkhgOwJwFPYmFFCzI3M0jt5E1ahBA-Bplhm5qKh_UqWHlwJ1m6ICrmagg0Qy9WetYTn8xev0zdg46eq47ZSjaKwTz2f9sy_Q5DP4mFOKAStK5KS_edOcolOcQNQ1GRohpbvM-TvNFn45k7bweHgYYf3IFSYH_iDKcP7s4ENVmUrrIxvoZKZGl1havgv683gnPqpG9QJcyVyCaedKkhcmsAb-ThgYYJWs8x6vbs3XRbP09qVsLdXylyLV7ZQvwsb5FBvfYwWhYbz5qbYeeSJkV4XvZ5xv4r0EGUq49_KuB-KLBv7uhPXSg_CwHZqGesMyXUqxQ' \
--header 'Cookie: JSESSIONID=26C0617F6B46001891C598D3AF93E20A' \
--data '{
    "nome": "Gigi Sergio",
    "telefone": "11996217979",
    "dataNascimento": "2024-01-22",
    "dataInclusao": "2024-01-22",
    "dataAtualizacao": "2024-01-22",
    "documentos": [
        {
            "tipoDocumento": "RG",
            "descricao": "Registro geral",
            "dataInclusao": "2024-01-22",
            "dataAtualizacao": "2024-01-22"
        },
        {
            "tipoDocumento": "CPF",
            "descricao": "Certificado de pessoa física",
            "dataInclusao": "2024-01-22",
            "dataAtualizacao": "2024-01-22"
        },
        {
            "tipoDocumento": "CNH",
            "descricao": "Carteira nacional de habilitação",
            "dataInclusao": "2024-01-22",
            "dataAtualizacao": "2024-01-22"
        }                
    ]
}'

(Inicio)

Listar todos os beneficiários cadastrados;

curl --location 'localhost:8080/plano-saude/beneficiarios' \
--header 'Authorization: Bearer eyJraWQiOiJmOTc5YTZjOS0xZjlmLTRjNjItYmE4OC1lZTc4ZDc3MjMxZWUiLCJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJzZWxmIiwic3ViIjoiYWRtaW4iLCJleHAiOjE3MDYxMDkxMjQsImlhdCI6MTcwNjEwMzcyNCwic2NvcGUiOiJST0xFX0FETUlOIFJPTEVfVVNFUiJ9.lamftPbZJUOiNl6kPzkhgOwJwFPYmFFCzI3M0jt5E1ahBA-Bplhm5qKh_UqWHlwJ1m6ICrmagg0Qy9WetYTn8xev0zdg46eq47ZSjaKwTz2f9sy_Q5DP4mFOKAStK5KS_edOcolOcQNQ1GRohpbvM-TvNFn45k7bweHgYYf3IFSYH_iDKcP7s4ENVmUrrIxvoZKZGl1havgv683gnPqpG9QJcyVyCaedKkhcmsAb-ThgYYJWs8x6vbs3XRbP09qVsLdXylyLV7ZQvwsb5FBvfYwWhYbz5qbYeeSJkV4XvZ5xv4r0EGUq49_KuB-KLBv7uhPXSg_CwHZqGesMyXUqxQ' \
--header 'Cookie: JSESSIONID=26C0617F6B46001891C598D3AF93E20A'

(Inicio)

Listar todos os documentos de um beneficiário a partir de seu id;

curl --location 'localhost:8080/plano-saude/beneficiarios/1/documentos' \
--header 'Authorization: Bearer eyJraWQiOiJmOTc5YTZjOS0xZjlmLTRjNjItYmE4OC1lZTc4ZDc3MjMxZWUiLCJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJzZWxmIiwic3ViIjoiYWRtaW4iLCJleHAiOjE3MDYxMDkxMjQsImlhdCI6MTcwNjEwMzcyNCwic2NvcGUiOiJST0xFX0FETUlOIFJPTEVfVVNFUiJ9.lamftPbZJUOiNl6kPzkhgOwJwFPYmFFCzI3M0jt5E1ahBA-Bplhm5qKh_UqWHlwJ1m6ICrmagg0Qy9WetYTn8xev0zdg46eq47ZSjaKwTz2f9sy_Q5DP4mFOKAStK5KS_edOcolOcQNQ1GRohpbvM-TvNFn45k7bweHgYYf3IFSYH_iDKcP7s4ENVmUrrIxvoZKZGl1havgv683gnPqpG9QJcyVyCaedKkhcmsAb-ThgYYJWs8x6vbs3XRbP09qVsLdXylyLV7ZQvwsb5FBvfYwWhYbz5qbYeeSJkV4XvZ5xv4r0EGUq49_KuB-KLBv7uhPXSg_CwHZqGesMyXUqxQ' \
--header 'Cookie: JSESSIONID=26C0617F6B46001891C598D3AF93E20A'

(Inicio)

Atualizar os dados cadastrais de um beneficiário;

curl --location --request PUT 'localhost:8080/plano-saude/beneficiarios/1' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer eyJraWQiOiJmOTc5YTZjOS0xZjlmLTRjNjItYmE4OC1lZTc4ZDc3MjMxZWUiLCJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJzZWxmIiwic3ViIjoiYWRtaW4iLCJleHAiOjE3MDYxMDkxMjQsImlhdCI6MTcwNjEwMzcyNCwic2NvcGUiOiJST0xFX0FETUlOIFJPTEVfVVNFUiJ9.lamftPbZJUOiNl6kPzkhgOwJwFPYmFFCzI3M0jt5E1ahBA-Bplhm5qKh_UqWHlwJ1m6ICrmagg0Qy9WetYTn8xev0zdg46eq47ZSjaKwTz2f9sy_Q5DP4mFOKAStK5KS_edOcolOcQNQ1GRohpbvM-TvNFn45k7bweHgYYf3IFSYH_iDKcP7s4ENVmUrrIxvoZKZGl1havgv683gnPqpG9QJcyVyCaedKkhcmsAb-ThgYYJWs8x6vbs3XRbP09qVsLdXylyLV7ZQvwsb5FBvfYwWhYbz5qbYeeSJkV4XvZ5xv4r0EGUq49_KuB-KLBv7uhPXSg_CwHZqGesMyXUqxQ' \
--header 'Cookie: JSESSIONID=26C0617F6B46001891C598D3AF93E20A' \
--data ' {
        "id": 1,
        "nome": "Gigi Sergio",
        "telefone": "11996217979",
        "dataNascimento": "2024-01-22",
        "dataInclusao": "2024-01-22",
        "dataAtualizacao": "2024-01-22",
        "documentos": [
            {
                "id": 3,
                "tipoDocumento": "CNH",
                "descricao": "2 Carteira nacional de habilitação",
                "dataInclusao": "2024-01-22",
                "dataAtualizacao": "2024-01-22"
            },
            {
                "id": 1,
                "tipoDocumento": "CPF",
                "descricao": "2 Certificado de pessoa física",
                "dataInclusao": "2024-01-22",
                "dataAtualizacao": "2024-01-22"
            },
            {
                "id": 2,
                "tipoDocumento": "RG",
                "descricao": "3 Registro geral",
                "dataInclusao": "2024-01-22",
                "dataAtualizacao": "2024-01-22"
            }
        ]
    }'

(Inicio)

Remover um beneficiário.

curl --location --request DELETE 'localhost:8080/plano-saude/beneficiarios/99999' \
--header 'Authorization: Bearer eyJraWQiOiJmOTc5YTZjOS0xZjlmLTRjNjItYmE4OC1lZTc4ZDc3MjMxZWUiLCJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJzZWxmIiwic3ViIjoiYWRtaW4iLCJleHAiOjE3MDYxMDkxMjQsImlhdCI6MTcwNjEwMzcyNCwic2NvcGUiOiJST0xFX0FETUlOIFJPTEVfVVNFUiJ9.lamftPbZJUOiNl6kPzkhgOwJwFPYmFFCzI3M0jt5E1ahBA-Bplhm5qKh_UqWHlwJ1m6ICrmagg0Qy9WetYTn8xev0zdg46eq47ZSjaKwTz2f9sy_Q5DP4mFOKAStK5KS_edOcolOcQNQ1GRohpbvM-TvNFn45k7bweHgYYf3IFSYH_iDKcP7s4ENVmUrrIxvoZKZGl1havgv683gnPqpG9QJcyVyCaedKkhcmsAb-ThgYYJWs8x6vbs3XRbP09qVsLdXylyLV7ZQvwsb5FBvfYwWhYbz5qbYeeSJkV4XvZ5xv4r0EGUq49_KuB-KLBv7uhPXSg_CwHZqGesMyXUqxQ' \
--header 'Cookie: JSESSIONID=26C0617F6B46001891C598D3AF93E20A'

(Inicio)

Contato

Abimael Sergio - @linkedin - [email protected]

(Inicio)

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages