Concluir Lote¶
📌 O que o endpoint faz¶
Este endpoint é responsável por executar a operação de Concluir Lote. Ele trafega dados diretamente na base do SISBOV, permitindo a gestão correta das informações via integração de sistemas. Os dados são processados e validados mediante as rigorosas regras exigidas pelo MAPA para as certificadoras.
🧠 Lógica de Negócio (PORTUGOL)¶
A rotina interna do microserviço e sua cadeia de responsabilidades é definida simplificadamente pelos seguintes passos estruturados:
FUNÇÃO `ConcluirLote`(id, payload):
1. BUSCAR registro existente pelo ID informado no path.
2. SE não existir, RETORNAR Erro 404 (Não Encontrado).
3. Verificar vínculo do registro com a Certificadora solicitante.
4. Aplicar regras de transição de status (verificar se a mudança de estado é permitida).
5. Mapear os dados do payload DTO para a entidade persistida.
6. ATUALIZAR registro no banco de dados.
7. RETORNAR código 200/204.
FIM_FUNÇÃO
📋 Dados da Requisição (Payload)¶
Essa tabela lista de forma robusta os campos do corpo JSON exato deste endpoint, baseado nos payloads presentes no Postman oficial.
🔗 Objeto Base Esperado (REQUEST BODY): LoteSync
| Campo do Payload | Tipo Variável | Comportamento no Envio |
|---|---|---|
alias |
String |
⚙️ Opcional (Apenas se desejar alterar este campo nesta atualização parcial) |
status |
String |
⚙️ Opcional (Apenas se desejar alterar este campo nesta atualização parcial) |
observacaoSumario |
String |
⚙️ Opcional (Apenas se desejar alterar este campo nesta atualização parcial) |
observacaoValidacao |
String |
⚙️ Opcional (Apenas se desejar alterar este campo nesta atualização parcial) |
dataAbate |
LocalDate |
⚙️ Opcional (Apenas se desejar alterar este campo nesta atualização parcial) |
idMovimentacao |
String |
⚙️ Opcional (Apenas se desejar alterar este campo nesta atualização parcial) |
quantidadeAnimais |
Long |
⚙️ Opcional (Apenas se desejar alterar este campo nesta atualização parcial) |
tipos |
List<TipoFormacaoLote> |
⚙️ Opcional (Apenas se desejar alterar este campo nesta atualização parcial) |
Fonte de Informação: A lista de obrigatoriedade acima foi compilada processando os exemplos reais contidos na Collection do Postman.
📦 Modelos de Dados (Data Models)¶
Configuração da Requisição¶
- URL Base:
https://api-cert.sisbov.agro.br(Produção) /https://api-cert-hom.sisbov.agro.br(Homologação) - Path Parameter / Query Parameter: Parâmetros definidos na própria URL (
/integracao/lote/{id}/concluir). Em caso de paginação, utilizar os query parameters padrões formados por?pageSize=20¤tPage=0. - Header Parameters:
Authorization: Bearer <seu_token_jwt>(Obrigatório em todas as chamadas)Content-Type: application/json
Payload de Envio (Request)¶
Em endpoints que requerem o envio de corpo de dados (ex: POST, PUT), deve-se enviar um objeto JSON compatível com o DTO adequado. Variáveis obrigatórias não podem ser enviadas como nulas. Em PUTs de atualização as entidades geralmente reagem de forma atômica — você deve preencher o DTO integralmente contendo suas modificações.
Resposta (Response)¶
- Sucesso (200/201/204): O payload retornado apresenta o status de confirmação, porções da entidade, ou no caso de cadastros, o
{ "id": "<uuid>" }. - Erro de Negócio (400/417):
- Erro de Acesso (401/403): Token expirado ou dados fora da permissão da certificadora.
🚀 Exemplo de Uso (Postman Collection)¶
Recorte real gerado a partir do arquivo SISBOV 2.0.postman_collection.json.
Sem exemplo de Postman disponível na coleção.
📑 Simulação Swagger (OpenAPI)¶
Exemplo da especificação gerada que molda a página do Swagger Interativo:
Nenhuma definição OpenAPI pública encontrada para este endpoint na especificação base.