Escolar Documentos
Profissional Documentos
Cultura Documentos
Área:
TI – Frotas
Análise de Sistema Projeto:
Integração TCW
SUMÁRIO
1. Introdução ...................................................................................................................................................... 3
2. Arquitetura de Integração..............................................................................................................................3
3. Detalhamento da API..................................................................................................................................... 3
Nome: Relatório de Créditos Emitidos ............................................................................................................. 3
POST /ticketlog-servicos/ebs/relatorioCreditosEmitidos/search ....................................................................... 3
3.1 Tarefa 613 - [Requisito 21] - Relatórios Créditos Emitidos - (OSB) - (JAVA) ..................................... 3
3.1.1 Método:search ............................................................................................................................. 3
3.1.2 ER ................................................................................................................................................ 8
3.1.3 Dependências .............................................................................................................................. 9
4 Banco de Dados ....................................................................................................................................... 10
5 Tabela de Erros ........................................................................................................................................ 11
6 Pendência ................................................................................................................................................. 12
7 Imagens do relatório ................................................................................................................................. 13
8 Consulta transações ................................................................................................................................. 14
1. Introdução
Este documento tem por objetivo a definição das especificações necessárias para a utilização dos
serviços de consulta de veículos, motoristas e o cadastro de crédito em cartões do cliente.
2. Arquitetura de integração
Os Serviços disponibilizam as operações que serão utilizadas pelos aplicativos do cliente.
As URIs (Paths) dos Serviços são disponibilizadas pela Expers através de HTTPS.
O processo de utilização dos Serviços ocorre através de chamadas REST sobre HTTPS,
utilizando a notação JSON para representar os objetos e os verbos HTTP padrão POST (para
inclusão) e GET (para pesquisa).
A ocorrência de qualquer erro na validação dos dados recebidos resulta em uma response
JSON contendo os atributos sucesso (com o valor false), codigoErro (código do erro ocorrido) e
mensagem (descrição do erro).
3. Detalhamento da API
Nome: Relatório de Créditos Emitidos
POST /ticketlog-servicos/ebs/relatorioCreditosEmitidos/search
URL Produção:
https://srv1.ticketlog.com.br/ticketlog-servicos/ebs/RelatorioCreditosEmitidos/search
URL Homologação:
https://serviceshml.ticketlog.com.br/ticketlog-servicos/ebs/RelatorioCreditosEmitidos/search
3.1 Tarefa 613 - [Requisito 21] - Relatórios Créditos Emitidos - (OSB) - (JAVA)
Desenvolver serviços que permitam listar os registros de extrato simplificado via integração.
3.1.1 Método:search
Arquitetura/Protocolo REST
Webservice RelatorioCreditosEmitidos
Operação search
Método POST
Mídia JSON
URL A DEFINIR
5 – FUEL
0-1 Ordem:
C - Cartão
I08. ordem Texto 1
D – Data do cadastro
0-1 Status:
TO –Todos;
Di – Disponível;
BL – Bloqueado;
I014. status Texto 2
EX – Expirado;
TR – Transferido;
CA – Cancelado.
Arquitetura/Protocolo REST
Webservice RelatorioCreditosEmitidos
Operação search
Mídia JSON
Processamento:
clienteTipoCartao.cliente.oid codigoCliente
clienteTipoCartao.tipoCartao.oid codigoProduto
numeroCartao numeroCartao
nomeCompleto nomeCompleto
placaVeiculo placaVeiculo
codigoTitulo codigoTitulo
codigoGrupoCredito codigoGrupoCredito
ordem ordem
dataInicialPeriodo dataInicialPeriodo
dataFinalPeriodo dataFinalPeriodo
dataInicialExpiracao dataInicialExpiracao
dataFinalExpiracao dataFinalExpiracao
identificador identificador
status status
codigoEntidade RelatorioCreditosEmitidosRetornoIntegracao.codigoEntidade
codigoErro RelatorioCreditosEmitidosRetornoIntegracao.codigoErro
sucesso RelatorioCreditosEmitidosRetornoIntegracao.sucesso
mensagem RelatorioCreditosEmitidosRetornoIntegracao.mensagem
itens[] RelatorioCreditosEmitidosRetornoIntegracao.itens[]
totais RelatorioCreditosEmitidosRetornoIntegracao.totais
3.1.2 ER
3.1.3 Dependências
4 Banco de Dados
5 Tabela de Erros
Código Mensagem
E000000 Erro interno.
6 Pendência
7 Imagens do relatório
8 Consulta transações
select CUC.nr_cartao,
(CASE UC.nome_completo WHEN 'N/D' THEN UC.ds_identificador_cartao else
UC.nome_completo END) nome_completo,
C.cd_credito,
convert(varchar(10),C.dt_cadastro,103) as data,
C.dt_cadastro,
C.cd_usuario_cartao,
TC.ds_tipo_credito,
C.dt_liberacao_credito,
C.dt_cancelamento,
C.dt_validade,
isnull(case
when C.dt_transferencia is not null then (select isnull(LTC.vl_credito, isnull(C.vl_credito,0))
from LOG_TRANSFERENCIA_CREDITO LTC
where LTC.cd_credito_origem = C.cd_credito)
else
isnull(C.vl_credito,0)
end ,0) as vl_credito,
CUC.nr_via_cartao,
case when C.dt_transferencia is not null then 0.0
else
(select isnull(C.vl_credito,0) - isnull(C.vl_total_compras,0) -
isNull(sum(RC.vl_desconto_credito),0)
from REDUCAO_CREDITO RC
where RC.cd_credito = C.cd_credito)
end as saldo,
C.cd_titulo,
C.cd_grupo_credito,
(case when UC.dt_cancelamento is not null then 'USUÁRIO CANCELADO'
when (CUC.dt_desativacao is not null and UC.dt_cancelamento is null ) then 'CARTÃO CANCELADO'
when (CUC.dt_desativacao is null and
exists(select 1
from BLOQUEIO_CARTAO_USUARIO_CARTAO BCUC
where BCUC.nr_cartao = CUC.nr_cartao
and BCUC.nr_via_cartao = ( select max(CUC1.nr_via_cartao)
from CARTAO_USUARIO_CARTAO CUC1
where CUC.nr_cartao = CUC1.nr_cartao )
and BCUC.dt_bloqueio is not null
and BCUC.dt_desbloqueio is null ) ) then 'CARTÃO BLOQUEADO'
when ( CUC.dt_desativacao is null and
UC.dt_cancelamento is null and
not exists ( select nr_cartao
from BLOQUEIO_CARTAO_USUARIO_CARTAO BCUC
where BCUC.nr_cartao = CUC.nr_cartao
and BCUC.nr_via_cartao = CUC.nr_via_cartao
and BCUC.dt_bloqueio is not null
and BCUC.dt_desbloqueio is null ) ) then 'CARTÃO ATIVO'
end ) situacao,
(case when C.dt_transferencia <> null Then 'TRANSFERIDO'
when (C.dt_validade is not null
and convert(varchar,C.dt_validade,112) < convert(varchar,getDate(),112))
and C.dt_transferencia is null Then 'EXPIRADO'
when C.dt_cancelamento is not null Then 'CANCELADO'
Criado por: Pág. 14 de 21
Aprovado por: Última Alteração: 16/4/2019 11:29
Área:
TI – Frotas
Análise de Sistema Projeto:
Integração TCW
FIM SE
from CARTAO_USUARIO_CARTAO CUC,
USUARIO_CARTAO UC,
CREDITO C,
TIPO_CREDITO TC
SE (clienteTipoCartao.cartaoIdentificaMotorista OU clienteTipoCartao.tipoCartao.oid = 5) E
clienteTipoCartao.tipoCartao.oid != 5
,MOTORISTA M
FIM SE
SE (clienteTipoCartao.cartaoIdentificaVeiculo)
,VEICULO_CLIENTE VC
FIM SE
where CUC.cd_usuario_cartao = UC.cd_usuario_cartao
and C.cd_usuario_cartao = CUC.cd_usuario_cartao
and TC.cd_tipo_credito = C.cd_tipo_credito
and UC.cd_cliente = vo.codigoCliente
and UC.cd_tipo_cartao = vo.codigoProduto
SE (dataInicialPeriodo INFORMADA)
and C.dt_cadastro >= dataInicialPeriodo, no formato yyyymmdd 00:00:00
and C.dt_cadastro <= dataFinalPeriodo, no formato yyyymmdd 23:59:59
FIM SE
SE (numeroCartao INFORMADO)
and CUC.nr_cartao = vo.numeroCartao
SENÃO
and CUC.dt_desativacao is null
FIM SE
SE (clienteTipoCartao.cartaoIdentificaMotorista OU clienteTipoCartao.tipoCartao.oid = 5) E
vo.codigoProduto != 5
and UC.cd_motorista = M.cd_motorista
FIM SE
SE (clienteTipoCartao.cartaoIdentificaMotorista OU clienteTipoCartao.tipoCartao.oid = 5) E
vo.nomeCompleto INFORMADO)
SE (clienteTipoCartao.tipoCartao.oid = 5)
and upper(UC.nome_completo) like (vo.nomeCompleto%)
SENÃO
and upper(M.ds_nome_motorista) like (vo.nomeCompleto%)
FIM SE
FIM SE
SE (clienteTipoCartao.cartaoIdentificaVeiculo)
and UC.cd_veiculo_cliente = VC.cd_veiculo_cliente
FIM SE
SE (clienteTipoCartao.cartaoIdentificaVeiculo)
and str_replace(upper(VC.ds_placa) , ' ', NULL) like upper(vo.placa)%
FIM SE
SE (vo.codigoTitulo INFORMADO)
and C.cd_titulo = vo.codigoTitulo
FIM SE
SE(vo.codigoGrupoCredito INFORMADO)
and C.cd_grupo_credito = vo.codigoGrupoCredito
FIM SE
SE (vo.dataInicialExpiracao INFORMADA)
and C.dt_validade IS NOT null
and convert(varchar,C.dt_validade,112) >= convert(varchar,{vo.dataInicialExpiracao,
no formato 'yyyymmdd'} , 112)
and convert(varchar,C.dt_validade,112) <= convert(varchar,{vo.dataFinalExpiracao,
no formato 'yyyymmdd'} , 112)
FIM SE
SE (vo.identificador INFORMADO)
C.cd_grupo_credito,
(case when UC.dt_cancelamento is not null then 'USUÁRIO CANCELADO'
when (CUC.dt_desativacao is not null and UC.dt_cancelamento is null ) then 'CARTÃO CANCELADO'
when (CUC.dt_desativacao is null
and exists(select 1
from BLOQUEIO_CARTAO_USUARIO_CARTAO BCUC
where BCUC.nr_cartao = CUC.nr_cartao
and BCUC.nr_via_cartao = ( select max(CUC1.nr_via_cartao)
from CARTAO_USUARIO_CARTAO CUC1
where CUC.nr_cartao = CUC1.nr_cartao )
and BCUC.dt_bloqueio is not null
and BCUC.dt_desbloqueio is null ) ) then 'CARTÃO BLOQUEADO'
when ( CUC.dt_desativacao is null and
UC.dt_cancelamento is null and
not exists ( select nr_cartao
from BLOQUEIO_CARTAO_USUARIO_CARTAO BCUC
where BCUC.nr_cartao = CUC.nr_cartao
and BCUC.nr_via_cartao = CUC.nr_via_cartao
and BCUC.dt_bloqueio is not null
and BCUC.dt_desbloqueio is null ) ) then 'CARTÃO ATIVO'
end ) situacao,
(case when C.dt_transferencia is not null Then 'TRANSFERIDO'
when (C.dt_validade is not null
and convert(varchar,C.dt_validade,112) < convert(varchar,getDate(),112))
and C.dt_transferencia is null
Then 'EXPIRADO'
when C.dt_cancelamento is not null Then 'CANCELADO'
when convert(varchar,C.dt_liberacao_credito,112) <=
convert(varchar,getDate(),112)
and C.dt_cancelamento is null
and C.dt_transferencia is null
and (C.dt_validade is null
or convert(varchar,C.dt_validade,112) >=
convert(varchar,getDate(),112)
) Then 'DISPONIVEL'
when (C.dt_liberacao_credito is null or convert(varchar,C.dt_liberacao_credito,112) >
convert(varchar,getDate(),112))
and (convert(varchar,C.dt_validade,112) >=
convert(varchar,getDate(),112) or C.dt_validade is null)
and C.dt_transferencia is null
and C.dt_cancelamento is null Then 'BLOQUEADO'
end) status,
ds_justificativa,
C.ds_identificador,
(case when exists (select C2.cd_credito
from CREDITO C2
inner join USUARIO_CARTAO U2
on
C2.cd_usuario_cartao = U2.cd_usuario_cartao
inner join
CLIENTE_TC_REGRA_CREDITO CTCRC2
on CTCRC2.cd_cliente
= U2.cd_cliente
and
CTCRC2.cd_tipo_cartao = U2.cd_tipo_cartao
and
CTCRC2.cd_grupo_credito = C2.cd_grupo_credito
and
CTCRC2.fl_credito_possui_validade = 'S'
and
CTCRC2.dt_desativacao = null
inner join CLIENTE_TIPO_CARTAO CTC2
on CTCRC2.cd_cliente = CTC2.cd_cliente
and
CTCRC2.cd_tipo_cartao = CTC2.cd_tipo_cartao
and
CTC2.fl_cartao_identifica_veiculo = 'S'
inner join CARTAO_USUARIO_CARTAO
CUC on C.cd_usuario_cartao = CUC.cd_usuario_cartao
where C2.cd_credito =
C.cd_credito
and
C2.dt_cancelamento = null
and C2.dt_transferencia
= null
and(C2.dt_validade >
getdate() or C2.dt_validade = null)
and(C2.vl_credito -
C2.vl_total_compras - isnull((select sum(RC2.vl_desconto_credito)
from
REDUCAO_CREDITO RC2
where RC2.cd_credito =
C2.cd_credito),0) > 0)
and CTCRC2.cd_cliente
= CTC2.cd_cliente
and
CTCRC2.cd_tipo_cartao = CTC2.cd_tipo_cartao
and
CTC2.fl_cartao_identifica_veiculo = 'S'
) then 'S' else 'N' end) as 'CreditoAtivo',
UC.ds_identificador_cartao
SE (clienteTipoCartao.identificaMotorista OU clienteTipoCartao.tipoCartao=5) E
clienteTipoCartao.tipoCartao.oid != 5)
,M.ds_nome_motorista
FIM SE
SE (clienteTipoCartao.cartaoIdentificaVeiculo)
,VC.ds_placa
FIM SE
from CARTAO_USUARIO_CARTAO CUC,
USUARIO_CARTAO UC,
CREDITO C,
TIPO_CREDITO TC
SE (clienteTipoCartao.cartaoIdentificaMotorista OU clienteTipoCartao.tipoCartao.oid = 5) E
clienteTipoCartao.tipoCartao.oid != 5
,MOTORISTA M
FIM SE
SE (clienteTipoCartao.cartaoIdentificaVeiculo)
,VEICULO_CLIENTE VC
FIM SE
where CUC.cd_usuario_cartao = UC.cd_usuario_cartao
and C.cd_usuario_cartao = CUC.cd_usuario_cartao
and TC.cd_tipo_credito = C.cd_tipo_credito
and UC.cd_cliente = vo.codigoCliente
and UC.cd_tipo_cartao = vo.codigoProduto
SE (dataInicialPeriodo INFORMADA)
and C.dt_cadastro >= dataInicialPeriodo, no formato yyyymmdd 00:00:00
and C.dt_cadastro <= dataFinalPeriodo, no formato yyyymmdd 23:59:59
FIM SE
SE (vo.codigoTitulo INFORMADO)
and C.cd_titulo = vo.codigoTitulo
FIM SE
SE(vo.codigoGrupoCredito INFORMADO)
and C.cd_grupo_credito = vo.codigoGrupoCredito
FIM SE
SE (vo.dataInicialExpiracao INFORMADA)
and C.dt_validade IS NOT null
and convert(varchar,C.dt_validade,112) >= convert(varchar,{vo.dataInicialExpiracao, no formato
'yyyymmdd'} , 112)
and convert(varchar,C.dt_validade,112) <= convert(varchar,{vo.dataFinalExpiracao, no formato
'yyyymmdd'} , 112)
FIM SE
SE (vo.identificador INFORMADO)
and upper(C.ds_identificador) like upper(%vo.identificador%)
FIM SE
SE (vo.status INFORMADO) E (vo.status != 'TO')
SE (vo.status = "TR")
and C.dt_transferencia IS NOT NULL
SENÃO SE (vo.status = 'EX')
and C.dt_validade is not null
and convert(varchar,C.dt_validade,112) < convert(varchar,getDate(),112)
and C.dt_transferencia = NULL
SENÃO SE(vo.status = 'CA')