Tema
Moldes
API-045 — Listar moldes
GET /api/moldes
Finalidade: Listar moldes.
Fonte: src/main/java/com/wester/storage/controller/MoldeController.java:39 — MoldeController.listar.
Autenticação, autorização e perfis: hasAuthority('SCREEN_PRODUCTS') or hasAuthority('SCREEN_MOLDS') Consulte a correspondência entre autoridades e perfis em Autenticação.
Headers: Authorization: Bearer <TOKEN>. Accept: application/json recomendado.
Parâmetros:
| Nome | Local | Tipo | Obrigatório | Padrão |
|---|---|---|---|---|
page | query | Integer | Não | — |
size | query | Integer | Não | — |
search | query | String | Não | — |
status | query | String | Não | — |
sort | query | String | Não | — |
direction | query | String | Não | — |
Corpo: não declarado; não enviar corpo.
Resposta de sucesso: MoldeListaVariavel. Campos em Modelos.
Exemplo estrutural sintético, sem afirmar valores de produção:
json
{}Códigos HTTP: 200, 401, 403. Códigos de segurança dependem da cadeia de filtros; falhas não capturadas podem chegar ao tratamento global descrito em Erros.
Regras de negócio e dependências: MoldeService.shouldUsePaginatedListing, MoldeService.listarMoldesPaginados, MoldeService.buscarAtivos, MoldeService.buscar, MoldeService.listarTodos. Consulte documento interno de regras de negócio para efeitos persistentes e validações compartilhadas.
cURL (Bash):
bash
curl -X GET "${BASE_URL}/api/moldes" -H "Authorization: Bearer ${TOKEN}"API-046 — Buscar molde por ID
GET /api/moldes/{id}
Finalidade: Buscar molde por ID.
Fonte: src/main/java/com/wester/storage/controller/MoldeController.java:61 — MoldeController.buscarPorId.
Autenticação, autorização e perfis: hasAuthority('SCREEN_PRODUCTS') or hasAuthority('SCREEN_MOLDS') Consulte a correspondência entre autoridades e perfis em Autenticação.
Headers: Authorization: Bearer <TOKEN>. Accept: application/json recomendado.
Parâmetros:
| Nome | Local | Tipo | Obrigatório | Padrão |
|---|---|---|---|---|
id | path | Long | Sim | — |
Corpo: não declarado; não enviar corpo.
Resposta de sucesso: Molde. Campos em Modelos.
Exemplo estrutural sintético, sem afirmar valores de produção:
json
{
"id": 1,
"codigo": "Exemplo",
"descricao": "Exemplo",
"categoria": "Exemplo",
"observacoes": "Exemplo",
"ativo": false
}Códigos HTTP: 200, 401, 403, 404. Códigos de segurança dependem da cadeia de filtros; falhas não capturadas podem chegar ao tratamento global descrito em Erros.
Regras de negócio e dependências: MoldeService.buscarPorId. Consulte documento interno de regras de negócio para efeitos persistentes e validações compartilhadas.
cURL (Bash):
bash
curl -X GET "${BASE_URL}/api/moldes/1" -H "Authorization: Bearer ${TOKEN}"API-047 — Criar molde
POST /api/moldes
Finalidade: Criar molde.
Fonte: src/main/java/com/wester/storage/controller/MoldeController.java:71 — MoldeController.criar.
Autenticação, autorização e perfis: (hasAuthority('SCREEN_PRODUCTS') or hasAuthority('SCREEN_MOLDS')) and hasRole('FULL_ACCESS') Consulte a correspondência entre autoridades e perfis em Autenticação.
Headers: Authorization: Bearer <TOKEN>. Accept: application/json recomendado. Content-Type: application/json para o corpo.
Parâmetros:
Sem query parameters, path variables ou headers de negócio declarados.
Corpo da requisição: MoldeRequestDTO; obrigatório. Validação Jakarta ativada por @Valid. Consulte os campos e restrições em Modelos.
Exemplo sintético (IDs devem existir e versões devem vir de consulta):
json
{
"codigo": "Exemplo",
"descricao": "Exemplo",
"categoria": "Exemplo",
"observacoes": "Exemplo"
}Resposta de sucesso: Molde. Campos em Modelos.
Exemplo estrutural sintético, sem afirmar valores de produção:
json
{
"id": 1,
"codigo": "Exemplo",
"descricao": "Exemplo",
"categoria": "Exemplo",
"observacoes": "Exemplo",
"ativo": false
}Códigos HTTP: 201, 400, 401, 403. Códigos de segurança dependem da cadeia de filtros; falhas não capturadas podem chegar ao tratamento global descrito em Erros.
Validações e erros identificados na cadeia local do serviço:
- Já existe um molde com o código: [mensagem pode receber complemento dinâmico]
Regras de negócio e dependências: MoldeService.criar. Consulte documento interno de regras de negócio para efeitos persistentes e validações compartilhadas.
cURL (Bash):
bash
curl -X POST "${BASE_URL}/api/moldes" -H "Authorization: Bearer ${TOKEN}" -H 'Content-Type: application/json' --data '{"codigo":"Exemplo","descricao":"Exemplo","categoria":"Exemplo","observacoes":"Exemplo"}'API-048 — Atualizar molde
PUT /api/moldes/{id}
Finalidade: Atualizar molde.
Fonte: src/main/java/com/wester/storage/controller/MoldeController.java:83 — MoldeController.atualizar.
Autenticação, autorização e perfis: (hasAuthority('SCREEN_PRODUCTS') or hasAuthority('SCREEN_MOLDS')) and hasRole('FULL_ACCESS') Consulte a correspondência entre autoridades e perfis em Autenticação.
Headers: Authorization: Bearer <TOKEN>. Accept: application/json recomendado. Content-Type: application/json para o corpo.
Parâmetros:
| Nome | Local | Tipo | Obrigatório | Padrão |
|---|---|---|---|---|
id | path | Long | Sim | — |
Corpo da requisição: MoldeRequestDTO; obrigatório. Validação Jakarta ativada por @Valid. Consulte os campos e restrições em Modelos.
Exemplo sintético (IDs devem existir e versões devem vir de consulta):
json
{
"codigo": "Exemplo",
"descricao": "Exemplo",
"categoria": "Exemplo",
"observacoes": "Exemplo"
}Resposta de sucesso: Molde. Campos em Modelos.
Exemplo estrutural sintético, sem afirmar valores de produção:
json
{
"id": 1,
"codigo": "Exemplo",
"descricao": "Exemplo",
"categoria": "Exemplo",
"observacoes": "Exemplo",
"ativo": false
}Códigos HTTP: 200, 400, 401, 403, 404. Códigos de segurança dependem da cadeia de filtros; falhas não capturadas podem chegar ao tratamento global descrito em Erros.
Validações e erros identificados na cadeia local do serviço:
- Já existe um molde com o código: [mensagem pode receber complemento dinâmico]
Regras de negócio e dependências: MoldeService.atualizar. Consulte documento interno de regras de negócio para efeitos persistentes e validações compartilhadas.
cURL (Bash):
bash
curl -X PUT "${BASE_URL}/api/moldes/1" -H "Authorization: Bearer ${TOKEN}" -H 'Content-Type: application/json' --data '{"codigo":"Exemplo","descricao":"Exemplo","categoria":"Exemplo","observacoes":"Exemplo"}'API-049 — Ativar molde
PATCH /api/moldes/{id}/ativar; POST /api/moldes/{id}/ativar
PATCH /api/moldes/{id}/activate; POST /api/moldes/{id}/activate
Finalidade: Ativar molde.
Fonte: src/main/java/com/wester/storage/controller/MoldeController.java:96 — MoldeController.ativar.
Autenticação, autorização e perfis: (hasAuthority('SCREEN_PRODUCTS') or hasAuthority('SCREEN_MOLDS')) and hasRole('FULL_ACCESS') Consulte a correspondência entre autoridades e perfis em Autenticação.
Headers: Authorization: Bearer <TOKEN>. Accept: application/json recomendado.
Parâmetros:
| Nome | Local | Tipo | Obrigatório | Padrão |
|---|---|---|---|---|
id | path | Long | Sim | — |
Corpo: não declarado; não enviar corpo.
Resposta de sucesso: Molde. Campos em Modelos.
Exemplo estrutural sintético, sem afirmar valores de produção:
json
{
"id": 1,
"codigo": "Exemplo",
"descricao": "Exemplo",
"categoria": "Exemplo",
"observacoes": "Exemplo",
"ativo": false
}Códigos HTTP: 200, 401, 403, 404. Códigos de segurança dependem da cadeia de filtros; falhas não capturadas podem chegar ao tratamento global descrito em Erros.
Regras de negócio e dependências: MoldeService.ativar. Consulte documento interno de regras de negócio para efeitos persistentes e validações compartilhadas.
cURL (Bash):
bash
curl -X PATCH "${BASE_URL}/api/moldes/1/ativar" -H "Authorization: Bearer ${TOKEN}"API-050 — Inativar molde
PATCH /api/moldes/{id}/inativar; POST /api/moldes/{id}/inativar
PATCH /api/moldes/{id}/inactivate; POST /api/moldes/{id}/inactivate
Finalidade: Inativar molde.
Fonte: src/main/java/com/wester/storage/controller/MoldeController.java:107 — MoldeController.inativar.
Autenticação, autorização e perfis: (hasAuthority('SCREEN_PRODUCTS') or hasAuthority('SCREEN_MOLDS')) and hasRole('FULL_ACCESS') Consulte a correspondência entre autoridades e perfis em Autenticação.
Headers: Authorization: Bearer <TOKEN>. Accept: application/json recomendado.
Parâmetros:
| Nome | Local | Tipo | Obrigatório | Padrão |
|---|---|---|---|---|
id | path | Long | Sim | — |
Corpo: não declarado; não enviar corpo.
Resposta de sucesso: Molde. Campos em Modelos.
Exemplo estrutural sintético, sem afirmar valores de produção:
json
{
"id": 1,
"codigo": "Exemplo",
"descricao": "Exemplo",
"categoria": "Exemplo",
"observacoes": "Exemplo",
"ativo": false
}Códigos HTTP: 200, 401, 403, 404. Códigos de segurança dependem da cadeia de filtros; falhas não capturadas podem chegar ao tratamento global descrito em Erros.
Validações e erros identificados na cadeia local do serviço:
- Molde está alocado em uma ou mais posições. Remova-o antes de inativar.
Regras de negócio e dependências: MoldeService.inativar. Consulte documento interno de regras de negócio para efeitos persistentes e validações compartilhadas.
cURL (Bash):
bash
curl -X PATCH "${BASE_URL}/api/moldes/1/inativar" -H "Authorization: Bearer ${TOKEN}"API-051 — Excluir molde
DELETE /api/moldes/{id}
Finalidade: Excluir molde.
Fonte: src/main/java/com/wester/storage/controller/MoldeController.java:118 — MoldeController.deletar.
Autenticação, autorização e perfis: (hasAuthority('SCREEN_PRODUCTS') or hasAuthority('SCREEN_MOLDS')) and hasRole('FULL_ACCESS') Consulte a correspondência entre autoridades e perfis em Autenticação.
Headers: Authorization: Bearer <TOKEN>. Accept: application/json recomendado.
Parâmetros:
| Nome | Local | Tipo | Obrigatório | Padrão |
|---|---|---|---|---|
id | path | Long | Sim | — |
Corpo: não declarado; não enviar corpo.
Resposta de sucesso: sem corpo quando 204.
Códigos HTTP: 204, 401, 403, 404, 409. Códigos de segurança dependem da cadeia de filtros; falhas não capturadas podem chegar ao tratamento global descrito em Erros.
Validações e erros identificados na cadeia local do serviço:
- Molde está alocado em uma ou mais posições. Remova-o antes de excluir.
Regras de negócio e dependências: MoldeService.deletar. Consulte documento interno de regras de negócio para efeitos persistentes e validações compartilhadas.
cURL (Bash):
bash
curl -X DELETE "${BASE_URL}/api/moldes/1" -H "Authorization: Bearer ${TOKEN}"