Skip to content

jellitBarack/Editora-Abril

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Editora Abril Teste

Spring Boot API

Build Status

Requirements

Para construir e executar o aplicativo, você precisa:

Ferramentas

Executando o aplicativo localmente

Existem várias maneiras de executar esta API Spring Boot em sua máquina local. Uma maneira é executar o método main na classe com.abril.editora.TestApplication de seu IDE.

Alternativamente, você pode usar o Spring Boot Maven plugin igual a:

Sobre o projeto

Acessando a Documentação

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

Swagger Image

Exercicio 01

User Controller

[ POST ] - /user/save

Salva uma lista de usuários com nome e senha criptografando a senha do usuário

[
  {
    "nome": "Ana",
    "pass": "112233"
  }
]

Response body

[
  {
    "id": 1,
    "nome": "João",
    "pass": "E0BC60C82713F64EF8A57C0C40D02CE24FD0141D5CC3086259C19B1E62A62BEA"
  }
]

[ GET ] - /user

Retorna uma lista de usuários pré inserido na base de dados

[
    { "id": 1, "nome": "Ana" },
    { "id": 2, "nome": "Bruno" },
    { "id": 3, "nome": "Leo" },
    { "id": 4, "nome": "Juca" },
    { "id": 5, "nome": "Carlos" },
    { "id": 6, "nome": "Mara" }
]

[ GET ] - /user/{nome}/{pass}

Encontra um usuário pelo nome e senha Test Image 1

Response body

{
  "id": 1,
  "nome": "Ana",
  "pass": "E0BC60C82713F64EF8A57C0C40D02CE24FD0141D5CC3086259C19B1E62A62BEA"
}

Exercicio 02

  • Resposta 01 - Função foi criada na Assinatura Endereco Controller descrita logo abaixo

  • Resposta 02 - Criação de Indice para CEP, TIPO ENDEREÇO e ID PRODUTO

  • Resposta 03 - Imagem da HQL criada no projeto:

HQL Image

@Query("select ae from AssinaturaEndereco ae " +
            "inner join Assinatura a on ae.assinaturaId = a.id " +
            "where ae.cep = :cep " +
            "and a.produtoId = :productId " +
            "and ae.tipoEndereco = :tipoEndereco ")

Pessoa Controller

[ POST ] - /person/save

Salva uma pessoa

{
  "nome": "Julius"
}

Response body

{ "id": 7, "nome": "Julius" }

[ GET ] - /person

Retorna uma lista de pessoas

Response body

[
  { "id": 1, "nome": "Ana" },
  { "id": 2, "nome": "Bruno" },
  { "id": 3, "nome": "Leo" },
  { "id": 4, "nome": "Juca" },
  { "id": 5, "nome": "Carlos" },
  { "id": 6, "nome": "Mara" },
  { "id": 7, "nome": "Julius" }
]

[ GET ] - /person/{id}

Encontra assinatura pelo Id

Response body

{ "id": 7, "nome": "Julius" }

[ DELETE ] - /person/{id}

Deleta uma pessoa pelo Id

Response body

"FORBIDDEN"

Assinatura Controller

[ POST ] - /signature/save

Salva uma assinatura

{
  "nome": "Julius"
}

Response body

{ "id": 7, "nome": "Julius" }

[ GET ] - /signature

Retorna uma lista de assinaturas

Response body

[
  {
    "id": 1,
    "pessoaId": 1,
    "produtoId": 55
  },
  {
    "id": 2,
    "pessoaId": 2,
    "produtoId": 49
  },
  {
    "id": 3,
    "pessoaId": 3,
    "produtoId": 55
  },
  {
    "id": 4,
    "pessoaId": 4,
    "produtoId": 38
  },
  {
    "id": 5,
    "pessoaId": 5,
    "produtoId": 55
  },
  {
    "id": 6,
    "pessoaId": 6,
    "produtoId": 22
  }
]

[ GET ] - /signature/{id}

Encontra assinatura pelo Id

Response body

{
  "id": 5,
  "pessoaId": 5,
  "produtoId": 55
}

[ DELETE ] - /signature/{id}

Deleta uma assinatura pelo Id

Response body

"FORBIDDEN"

Assinatura Endereco Controller

[ POST ] - /signature/address/save

Salva um Endereco de Assinatura

{
  "assinaturaId": 1,
  "cep": "81920010",
  "tipoEndereco": "COBRANCA"
}

Response body

{
  "id": 7,
  "assinaturaId": 1,
  "tipoEndereco": "COBRANCA",
  "cep": "81920010"
}

[ GET ] - /signature/address

Retorna uma lista de assinaturas previamente inseridos no projeto

Response body

[
  {
    "id": 1,
    "assinaturaId": 1,
    "tipoEndereco": "ENTREGA",
    "cep": "6190001"
  },
  {
    "id": 2,
    "assinaturaId": 2,
    "tipoEndereco": "ENTREGA",
    "cep": "6190001"
  },
  {
    "id": 3,
    "assinaturaId": 3,
    "tipoEndereco": "ENTREGA",
    "cep": "6190001"
  },
  {
    "id": 4,
    "assinaturaId": 4,
    "tipoEndereco": "ENTREGA",
    "cep": "6190001"
  },
  {
    "id": 5,
    "assinaturaId": 5,
    "tipoEndereco": "ENTREGA",
    "cep": "6190001"
  },
  {
    "id": 6,
    "assinaturaId": 6,
    "tipoEndereco": "ENTREGA",
    "cep": "6190001"
  }
]

[ GET ] - /signature/address/{id}

Encontra Endereco de Assinatura pelo Id

Response body

{
  "id": 1,
  "assinaturaId": 1,
  "tipoEndereco": "ENTREGA",
  "cep": "6190001"
}

[ GET ] - /signature/address/{cep}/{productId}

Encontra todas as pessoas com assinatura com endereço do tipo ENTREGA pelo cep e produto informado Resposta 2 Image

Response body

[
  {
    "id": 1,
    "assinaturaId": 1,
    "tipoEndereco": "ENTREGA",
    "cep": "6190001"
  },
  {
    "id": 3,
    "assinaturaId": 3,
    "tipoEndereco": "ENTREGA",
    "cep": "6190001"
  },
  {
    "id": 5,
    "assinaturaId": 5,
    "tipoEndereco": "ENTREGA",
    "cep": "6190001"
  }
]

[ DELETE ] - /signature/address/{id}

Deleta um Endereco de Assinatura pelo Id

Response body

"FORBIDDEN"

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages