Web service Portolog: Consulta de Quantidades Atendidas da Programação Preliminar
Serviço web que retorna a informação das quantidades de transportes atendidas das programações preliminares encaminhadas ao portolog, e que foram calculadas pelo sistema. A partir do resultado desse cálculo os terminais terão a confirmação da quantidade de transportes que poderão acessar ao porto naquela janela de tempo e assim criar e sequenciar os DL-es necessários.
Atenção:
1. O cálculo das quantidades atendidas das programações preliminares é efetuado todos os dias às 00:00.
2. As programações preliminares a serem processadas no cálculo estarão compreendidas entre a data/hora de acionamento do cálculo(Todos os dias às 00:00) até às 23:59 da data de acionamento somada ao valor do campo "Prazo Máximo de Antecedência para Recebimento da Programação Preliminar(em dias)" do cadastro do porto. Ex: Se a data de acionamento do cálculo for o dia 01/03/2020 e o campo "Prazo Máximo de Antecedência para Recebimento da Programação Preliminar(em dias)" estiver preenchido com o valor "6", o sistema efetuará o cálculo de todas as programações preliminares que estiverem cadastradas entre os dias 01/03/2020 a 06/03/2020, ou seja, as programações de um período de 6 dias.
Atores que podem utilizar o Serviço:
- Operador Portuário
- Terminal Portuário
- Ponto de Controle
Endpoint do Serviço:
POST url_base/psp-portolog-rest/api/programacao-preliminar/quantidade-atendida/v1.00
Content-Type:
application/xml
ou application/json
Parâmetros da Requisição de Consulta:
Nome | Descrição | Tipo | Tamanho | Local | Observações |
---|---|---|---|---|---|
versao | versão do arquivo de consulta de quantidades atendidas das programações preliminares | String(Obrigatório) | 4 | body | Versão Atual: 1.00 |
cnpjTerminal | CNPJ do Terminal associado a programação preliminar | String(Opcional) | 14 | body | |
porto | Bitrigrama do Porto associado a programação preliminar | String(Obrigatório) | 5 | body | |
dataInicial | Data de Início da Pesquisa | Data(Obrigatório) | 10 | body | Formato: AAAA-MM-DD. |
dataFinal | Data de Fim da Pesquisa | Data(Opcional) | 10 | body | Formato: AAAA-MM-DD. (*) Caso não seja preenchido o sistema considerará o mesmo valor da data de início. |
Atenção:
Não será permitido a informação de datas passadas.
Resposta da Requisição:
Nome | Descrição | Tipo | Observação |
---|---|---|---|
versao | versão do arquivo de retorno da consulta de quantidades atendidas das programações preliminares | String(Obrigatório) | Versão Atual: 1.03 |
porto | Bitrigrama do Porto associado a programação preliminar | String(Obrigatório) | 5 |
dataProcessamento | Data/Hora de Processamento da requisição | Data/Hora(Obrigatório) | 19 |
Lista de Programações Preliminares:
Nome | Descrição | Tipo | Tamanho | Local | Observações |
---|---|---|---|---|---|
terminal | CNPJ do Terminal associado a programação preliminar | String(Obrigatório) | 14 | body | |
dataInicio | Data/Hora de início da janela de tempo da programação preliminar | Data/Hora(Obrigatório) | 10 | body | Formato: DD/MM/AAAA HH:mm |
dataTermino | Data/Hora de término da janela de tempo da programação preliminar | Data/Hora(Obrigatório) | 10 | body | Formato: DD/MM/AAAA HH:mm |
janelaTempo | Código da Janela de Tempo da Programação Preliminar | Numeric(Obrigatório) | - | body | Domínio: Vide campo "observação" logo abaixo. |
Lista das Quantidades Solicitadas/Atendidas Para Cada Janela de Tempo:
Nome | Descrição | Tipo | Tamanho | Local | Observações |
---|---|---|---|---|---|
tipoCarga | Tipo de carga transportado | String(Obrigatório) | 15 | body | Domínio: CONTEINER, VEICULO, GRANEL, CARGA_SOLTA ou CONTEINER_VAZIO |
detalheTipoCarga | Código do detalhe do tipo de carga transportado | String(Obrigatório) | 5 | body | Domínio: Vide campo "observação" logo abaixo. |
descricaoDetalheTipoCarga | Descrição do detalhe do tipo de carga transportado | String(Obrigatório) | 5 | body | |
quantidadeSolicitada | Quantidade Solicitada de Transportes que acessarão ao porto naquela janela de tempo da Programação Preliminar | Numeric(Obrigatório) | - | body | |
quantidadeAtendida | Quantidade Efetivamente Atendida de Transportes que acessarão ao porto naquela janela de tempo da Programação Preliminar | Numeric(Obrigatório) | - | body | Campo preenchido de acordo com o cálculo efetuado pelo sistema. |
Observação:
Para acesso às informações dos códigos de janela de tempo e de detalhe de tipo de carga de cada porto favor consultar através do acesso à tela do Portolog, no menu "Serviços" e item de menu "Informações para Integração".
Exemplos de Arquivos XML/JSON:
Exemplo de JSON da requisição de consulta:
{
"versao": "1.00",
"porto": "BRSSZ",
"cnpjTerminal": "82951351000142",
"dataInicial": "2020-03-01",
"dataFinal": "2020-03-02"
}
Exemplo de JSON com a resposta da requisição:
[
{
"versao": "1.03",
"porto": "BRSSZ",
"dataProcessamento" : "2020-02-27T13:31:09.406-03:00",
"programacaoPreliminar":
[
{
"dataInicio":"01/03/2020 18:00",
"dataTermino":"01/03/2020 23:59",
"janelaTempo":"4",
"terminal": "82951351000142",
"quantidadesAtendidas":
[
{
"tipoCarga":"CONTEINER",
"detalheTipoCarga":"CONT1",
"descricaoDetalheTipoCarga": "Contêiner Refrigerado",
"quantidadeSolicitada":"85",
"quantidadeAtendida":"60"
},
{
"tipoCarga":"GRANEL",
"detalheTipoCarga":"SOJA",
"descricaoDetalheTipoCarga": "Granel Solido de origem Vegetal",
"quantidadeSolicitada":"55",
"quantidadeAtendida":"55"
}
]
},
{
"dataInicio":"02/03/2020 12:00",
"dataTermino":"02/03/2020 17:59",
"janelaTempo":"3",
"terminal": "82951351000142",
"quantidadesAtendidas":
[
{
"tipoCarga":"CONTEINER",
"detalheTipoCarga":"CONT1",
"descricaoDetalheTipoCarga": "Contêiner Refrigerado",
"quantidadeSolicitada":"125",
"quantidadeAtendida":"110"
},
{
"tipoCarga":"GRANEL",
"detalheTipoCarga":"SOJA",
"descricaoDetalheTipoCarga": "Granel Solido de origem Vegetal",
"quantidadeSolicitada":"80",
"quantidadeAtendida":"75"
}
]
}
]
}
]
Exemplo de JSON com resposta de erro:
{
"versao": "1.03",
"dataProcessamento" : "2019-12-05T18:10:52.417-03:00",
"mensagem" : [ "[IN0010] Não existem registros para os parâmetros informados." ]
}
Exemplo de XML da requisição de consulta:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<progPrelQtdAtendida xmlns="http://www.portosempapel.gov.br/programacaoPreliminar" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" versao="1.00">
<dataProcessamento>2020-03-02T00:05:05.868-03:00</dataProcessamento>
<porto>BRSSZ</porto>
<cnpjTerminal>82951351000142</cnpjTerminal>
<dataInicial>2020-03-06</dataInicial>
<dataFinal>2020-03-06</dataFinal>
</progPrelQtdAtendida>
Exemplo de XML com a resposta da requisição:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<qtdTransporteAtendida xmlns="http://www.portosempapel.gov.br" versao="1.03">
<dataProcessamento>2020-03-02T00:05:05.868-03:00</dataProcessamento>
<porto>BRSSZ</porto>
<programacaoPreliminar>
<dataInicio>06/03/2020 00:00</dataInicio>
<dataTermino>06/03/2020 05:59</dataTermino>
<janelaTempo>1</janelaTempo>
<terminal>82951351000142</terminal>
<quantidadesAtendidas>
<tipoCarga>GRANEL</tipoCarga>
<detalheTipoCarga>GSOVE</detalheTipoCarga>
<descricaoDetalheTipoCarga>Granel Solido de origem Vegetal Export</descricaoDetalheTipoCarga>
<quantidadeSolicitada>250</quantidadeSolicitada>
<quantidadeAtendida>250</quantidadeAtendida>
</quantidadesAtendidas>
</programacaoPreliminar>
<programacaoPreliminar>
<dataInicio>06/03/2020 06:00</dataInicio>
<dataTermino>06/03/2020 11:59</dataTermino>
<janelaTempo>2</janelaTempo>
<terminal>82951351000142</terminal>
<quantidadesAtendidas>
<tipoCarga>GRANEL</tipoCarga>
<detalheTipoCarga>GSOVE</detalheTipoCarga>
<descricaoDetalheTipoCarga>Granel Solido de origem Vegetal Export</descricaoDetalheTipoCarga>
<quantidadeSolicitada>250</quantidadeSolicitada>
<quantidadeAtendida>250</quantidadeAtendida>
</quantidadesAtendidas>
</programacaoPreliminar>
<programacaoPreliminar>
<dataInicio>06/03/2020 12:00</dataInicio>
<dataTermino>06/03/2020 17:59</dataTermino>
<janelaTempo>3</janelaTempo>
<terminal>82951351000142</terminal>
<quantidadesAtendidas>
<tipoCarga>GRANEL</tipoCarga>
<detalheTipoCarga>GSOVE</detalheTipoCarga>
<descricaoDetalheTipoCarga>Granel Solido de origem Vegetal Export</descricaoDetalheTipoCarga>
<quantidadeSolicitada>250</quantidadeSolicitada>
<quantidadeAtendida>250</quantidadeAtendida>
</quantidadesAtendidas>
</programacaoPreliminar>
<programacaoPreliminar>
<dataInicio>06/03/2020 18:00</dataInicio>
<dataTermino>06/03/2020 23:59</dataTermino>
<janelaTempo>4</janelaTempo>
<terminal>82951351000142</terminal>
<quantidadesAtendidas>
<tipoCarga>GRANEL</tipoCarga>
<detalheTipoCarga>GSOVE</detalheTipoCarga>
<descricaoDetalheTipoCarga>Granel Solido de origem Vegetal Export</descricaoDetalheTipoCarga>
<quantidadeSolicitada>250</quantidadeSolicitada>
<quantidadeAtendida>250</quantidadeAtendida>
</quantidadesAtendidas>
</programacaoPreliminar>
</qtdTransporteAtendida>
Exemplo de XML com resposta de erro:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<qtdTransporteAtendida xmlns="http://www.portosempapel.gov.br" versao="1.03">
<dataProcessamento>2020-03-02T00:05:05.868-03:00</dataProcessamento>
<mensagem>[ER0198] O emissor informado no arquivo não possui acesso ao terminal portuário informado.</mensagem>
</qtdTransporteAtendida>