O [patrimônio] disponibiliza uma API REST que disponibliza os recursos para realizar o controle de inventário de uma empresa ou afins.
Recursos disponíveis para acesso via API:
- Java 11
- Lombok
- Executar comando: mvn clean compile para gerar o Metamodel
- A API utiliza banco de dados em memória, não sendo necessário a instalação do mesmo.
- Ao iniciar a aplicação a API irá popular a base de dados com algumas entradas para teste. O arquivo está no diretório
src/main/resources/data.sql
- Usuario padrão pré cadastrado: username
diego@email.com
senha:123456
- Para acessar o Banco de dados utilize o link: http://localhost:8080/h2-console/login.jsp
- Dados para acesso
JDBC URL: jdbc:h2:mem:navita-patrimonio
User Name: sa
Requisições para a API devem seguir os padrões:
Método | Descrição |
---|---|
GET |
Retorna informações de um ou mais registros. |
POST |
Utilizado para criar um novo registro. |
PUT |
Atualiza dados de um registro ou altera sua situação. |
DELETE |
Remove um registro do sistema. |
-
Request (application/json)
-
Headers
Authorization: Bearer [access_token]
-
Nossa API utiliza [JSON Web Token] como forma de autenticação/autorização.
Para utilizar a API, você precisará utilizar uma das seguintes opções:
-
Utilizar um dos usuários pré-cadastrado na base de dados:
-
Cadastrar um
email
,senha
e definir umnome
de usuário, utilizados na solicitação de acesso;
-
Request (application/json) (
POST
)-
Body
{ "email": "diego@email.com", "senha": "123456" }
-
-
Response 200 (application/json)
-
Body
{ "token": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MMTM5MzI1NzIsImV4cCI6MTYxMzk0MjU3Mn0.R2TOATe_6GrZhLFoHes6xI2YX_jj8jJKt7EzRqPfwhU", "tipo": "Bearer" }
-
Para realizar o login
deve-se informa o e-mail
e a senha
.
Cadastra um novo usuário no sistema
http://localhost:8080/api/usuario/cadastrar
-
Attributes (object)
- nome: nome do usuário (string, required)
- email: email do usuario que será utilizado para realizar o login (string, required)
- senha: senha do usuário (string, required)
-
Request (application/json)
- Body
{ "nome": "user_1", "email": "user_1@email.com", "senha": "123456" }
-
Response 201 (application/json)
As marcas que podem ser consultadas e adicionadas referentes ao itens do inventário.
http://localhost:8080/api/marca/cadastrar
-
Request (application/json)
-
Headers
Authorization: Bearer [access_token]
-
Body
{ "nome": "Dell" }
-
-
Response 201 (application/json)
- Body
{ "idMarca": 1, "nome": "Dell" }
-
Response 204 (application/json)
http://localhost:8080/api/marca
-
Request (application/json)
-
Headers
Authorization: Bearer [access_token]
-
-
Response 200 (application/json)
- Body
[ { "idMarca": 1, "nome": "Dell" }, { "idMarca": 2, "nome": "CCE" } ]
http://localhost:8080/api/marca/1
-
Parameters
- id (required, id,
1
) ... ID da Marca
- id (required, id,
-
Request (application/json)
-
Headers
Authorization: Bearer [access_token]
-
-
Response 200 (application/json)
- Body
{ "idMarca": 1, "nome": "Dell" }
http://localhost:8080/api/marca/atualizar/1
-
Parameters
- id (required, number,
1
) ... ID da Marca
- id (required, number,
-
Request (application/json)
-
Headers
Authorization: Bearer [access_token]
-
Body
{ "nome": "Lenovo" }
-
-
Response 200 (application/json)
- Body
{ "idMarca": 1, "nome": "Lenovo" }
Cria e consulta as informações do patrimônio
http://localhost:8080/api/patrimonio/cadastrar
-
Request (application/json)
-
Headers
Authorization: Bearer [access_token]
-
Body
{ "nome": "Monitor", "descricao": "sala de TI3", "marca": { "idMarca": 1 } }
-
-
Response 201 (application/json)
- Body
{ "idPatrimonio": 3, "nome": "Monitor", "descricao": "sala de TI3", "numeroTombo": 3, "marca": { "idMarca": 1, "nome": null } }
http://localhost:8080/api/patrimonio/buscar
-
Request (application/json)
-
Headers
Authorization: Bearer [access_token]
-
-
Response 200 (application/json)
- Body
[ { "idMarca": 1, "nome": "Monitor", "descricao": "sala de TI3", "numeroTombo": 1, "marca": { "idMarca": 1, "nome": "Dell" } }, { "idMarca": 2, "nome": "Teclado", "descricao": "sala de Conferência", "numeroTombo": 2, "marca": { "idMarca": 1, "nome": "Dell" } } ]
http://localhost:8080/api/patrimonio/buscar/1
-
Parameters
- id (required, number,
1
) ... ID do Patrimônio
- id (required, number,
-
Request (application/json)
-
Headers
Authorization: Bearer [access_token]
-
-
Response 200 (application/json)
- Body
{ "idPatrimonio": 1, "nome": "Monitor", "descricao": "sala de TI3", "numeroTombo": 1, "marca": { "idMarca": 1, "nome": "Lenovo" } }
http://localhost:8080/api/patrimonio/buscar/numero-tombo/1
-
Parameters
- id (required, number,
1
) ... Numero do inventário
- id (required, number,
-
Request (application/json)
-
Headers
Authorization: Bearer [access_token]
-
-
Response 200 (application/json)
- Body
{ "idPatrimonio": 1, "nome": "Monitor", "descricao": "sala de TI3", "numeroTombo": 1, "marca": { "idMarca": 1, "nome": "Lenovo" } }