RESTWeb Service REST
Produto: | TOTVS Prestadores de Serviços Transporte de Passageiros |
Versões: | 12.1.2310+ |
Este documento tem o objetivo de fornecer informações para utilização do Web Service REST de integração com oTOTVS Prestadores de Serviços Transporte de Passageiros
Para mais detalhes sobre o conceito de um serviços REST clique aqui.
Para mais detalhes sobre serviços REST na arquitetura Protheus clique aqui.
Nome: WSCOLETOR
Objetivo: Permitir a Integração com o módulo SIGAGTP utilizando um WebService do Tipo REST.
Descrição: Integra os dados do coletor para gerar a prestação de contas.
Métodos: POST
A Configuração do serviço REST está documentada no link Configuração REST SERVER - Protheus.
Estas parametrizações estão localizadas fisicamente no arquivo appserver.ini da pasta de instalação "[...]\BIN\APP"
Na seção HTTPURI, a chave PrepareIn deve ser comentada. Segue exemplo de configuração do WS REST para utilização no modulo GTP:
|
Descrição do Método: O método POST segue o conceito do próprio método em qualquer outro tipo de serviço REST, devendo seu conteúdo ser enviado no corpo da mensagem (body) no formato json.
O objetivo do método é enviar informações que devem ser gravadas nas tabelas do GTP, permitindo que os dados sejam submetidos aos processos de integração da filipetas
Atributo | Pai | Nivel | Ocorrência | Formato | Cadastros Protheus |
|---|---|---|---|---|---|
layoutColetor | - | 1 | 1 | - | |
softwareColetor | layoutColetor | 1 | 1:1 | String(36) | |
versaoColetor | layoutColetor | 1 | 1:1 | String(36) | |
cabecalho | - | 1 | 1 | - | |
empresa | cabecalho | 1 | 1:1 | String() | De/Para de empresas no configurador |
matMotorista | cabecalho | 1 | 0:1 | String(03) | |
cartaoMotorista | cabecalho | 1 | 0:1 | String(10) | |
matCobrador | cabecalho | 1 | 0:1 | String(100) | |
cartaoCobrador | cabecalho | 1 | 0:1 | Memo - Base64 | |
dataMovimento | cabecalho | 1 | 1:1 | String - AAAAMMDD | |
filipeta | cabecalho | 1 | 1:1 | String(100) | |
| servicos | - | 2 | 0:1 | Array | |
| codServico | servicos | 2 | 0:1 | String(01) | |
| codVeiculo | servicos | 2 | 0:1 | String(40) | |
prefixoLinha | servicos | 2 | 0:1 | String(100) | |
| codigoLinha | servicos | 2 | 0:1 | String(40) | |
| turno | servicos | 2 | 0:1 | String(100) | |
| dataInicioViagem | servicos | 2 | 1:1 | String - AAAAMMDD | |
| dataTerminoViagem | servicos | 2 | 1:1 | String - AAAAMMDD | |
| hrInicio | servicos | 2 | 1:1 | String(01) | |
| hrFim | servicos | 2 | 1:1 | String(01) | |
| dadosValidador | servicos | 2 | 1 | - | |
| roletaInicioValidador | dadosValidador | 2 | 0:1 | String(01) | |
| roletaFim | dadosValidador | 2 | 0:1 | String(01) | |
| pagamentos | - | 3 | 1 | Array | |
| tipoPagamento | pagamentos | 3 | 1:1 | String(01) | |
| quantidadePassageiros | pagamentos | 3 | 1:1 | Numerico | |
| valorUnitario | pagamentos | 3 | 1:1 | Numerico | |
| totalArrecadado | servicos | 2 | 0:1 | Numerico | |
| totalGratuidades | servicos | 2 | 0:1 | Numerico | |
| totalDinheiro | servicos | 2 | 0:1 | Numerico | |
| diferenca | servicos | 2 | 0:1 | Numerico |
Os atributos não obrigatórios têm que fazer parte da estrutura, somente o seu preenchimento é opcional. |
{
"layoutColetor":{
"softwareColetor": "Software coletor",
"versaoColetor": "20"
},
"cabecalho":{
"empresa": "02",
"matMotorista": "000063",
"cartaoMotorista":"7475975",
"matCobrador": "919191",
"cartaoCobrador":"7475976",
"dataMovimento": "20240101",
"filipeta":"000002582789610"
},
"servicos":[
{
"codServico": "02",
"codVeiculo": "PREFIX",
"prefixoLinha": "73859",
"codigoLinha": "20",
"turno": "1",
"dataInicioViagem": "20240101",
"dataTerminoViagem": "20240101",
"hrInicio": "0200",
"hrFim": "0300",
"dadosValidador":{
"roletaInicioValidador": "0000001",
"roletaFim": "0000002",
"pagamentos":[{
"tipoPagamento": "000004",
"quantidadePassageiros": 20,
"valorUnitario": 20.02
}]
},
"totalArrecadado": 200.00,
"totalGratuidades": 12.30,
"totalDinheiro": 32.50,
"diferenca": 10.10
}
]
} |
Atributo | Pai | Nivel | Ocorrência | Formato |
|---|---|---|---|---|
status | - | 1 | 0:1 | String(7) |
prestacaoContas | - | 1 | 0:1 | String(6) |
| message | - | 1 | 0:1 | String(36) |
{
"status": "sucess",
"prestacaoContas": "000002",
"status": "Prestação de contas incluída com sucesso",
} |
Legenda:
# - valor variável.
{
"errorCode": 400,
"errorMessage": "Cadastro de linha não encontrada"
} |
RESTFAULT*
{
"code": 500,
"detailedMessage": "",
"message": "Internal Server Error"
} |