01. DADOS GERAIS
Linha de Produto: | TOTVS RENTAL |
---|---|
Segmento: | Serviços |
Módulo: | SIGALOC |
Função: | APPQueryresult |
Ticket: | Não há. |
Story: | DSERLOCA-4098 |
02. SITUAÇÃO/REQUISITO
Criar API do Tipo Post (Regra tipo API Sync) para receber o Body com a informações do Resultado da Query
03. SOLUÇÃO
Foi criada a API no seguinte end point: /APPQueryresult
Parâmetros de entrada:
Parâmetros de entrada para Retornar (01) Quantidade de Multas, (02) Motoristas por Cliente, (03) Qtde de Notificação de Multas, (05) Qtde de Bens em Manutenção, (05) Qtde de Motoristas
- cnpj_empresa- Empresa logada no aplicativo - SIGAMAT
- cod_query- Código da Query que será executada para a exbição dos dados de retorno no APP, as queries são executadas juntamente com a rotina banco de queries do APP, rotina LOCA098
- cod_cli - Código do cliente a ser filtrado na query
- loj_cli - Loja do cliente a ser filtrado na query
Obrigatórios:
- cnpj_empresa
- cod_query
- cod_cli
- loj_cli
Parâmetros de entrada para retornar os Serviços de Manutenção do Tipo Corretiva (06)
- cnpj_empresa- Empresa logada no aplicativo - SIGAMAT
- cod_query- Código da Query que será executada para a exbição dos dados de retorno no APP, as queries são executadas juntamente com a rotina banco de queries do APP, rotina LOCA098
Obrigatórios:
- cnpj_empresa
- cod_query
Parâmetros de entrada para retornar os Serviços de Manutenção do Tipo Corretiva (07)
- cnpj_empresa- Empresa logada no aplicativo - SIGAMAT
- cod_query- Código da Query que será executada para a exbição dos dados de retorno no APP, as queries são executadas juntamente com a rotina banco de queries do APP, rotina LOCA098
- cod_bem - código do Bem a ser filtrado
- placa - placa informada no bem a ser filtrado
Obrigatórios:
- cnpj_empresa
- cod_query
- cod_bem
- placa
Request:
Para execução da Query 01 { Para execução da Query 02 { Para execução da Query 03 { Para execução da Query 04 { Para execução da Query 05 { Para execução da Query 06 { Para execução da Query 07 { | |
Retorno esperado:
Response:
cod_query = 01 { cod_query = 02 { cod_query = 03 { cod_query = 04 { cod_query = 05 { cod_query = 06 { } cod_query = 07 { |
04. DEMAIS INFORMAÇÕES
Para saber as queries que são executadas no app, seguem abaixo com seus respectivos códigos:
cod 01
SELECT TRX_NOME, COUNT(*) MULTAS
FROM xEmp('TRX') TRX
INNER JOIN xEmp('FP0') FP0
ON FP0_FILIAL = xFilial('FP0')
AND FP0.D_E_L_E_T_ = ' '
AND FP0_CLI = '${CLIENT_ID}'
AND FP0_LOJA = '${CLIENT_LOJA}'
INNER JOIN xEmp('FPA') FPA
ON FPA_FILIAL = xFilial('FPA')
AND FPA_PROJET = FP0_PROJET
AND FPA.D_E_L_E_T_ = ' '
AND FPA_AS <> ''
WHERE TRX_FILIAL = xFilial('TRX')
AND TRX_AS = FPA_AS
AND TRX_TPMULT = 'TRANSITO'
AND TRX.D_E_L_E_T_ = ' '
GROUP BY TRX_NOME
ORDER BY TRX_NOME
cod 02
SELECT DA4_COD,DA4_NOME,DA4_CGC,DA4_NUMCNH
FROM "+RETSQLNAME("DA4")+" DA4 "
WHERE DA4_FILIAL = '" + xFilial('DA4') + "' "
AND DA4_CODCLI = '"+cCli+"' "
AND DA4_LOJCLI = '"+cLoja+"' "
AND DA4.D_E_L_E_T_ = ' ' "
cod03
SELECT COUNT(*) AS QTDE_NOTIFICACOES_MULTAS
FROM xEmp('TRX') TRX
INNER JOIN xEmp('FP0') FP0
ON FP0_FILIAL = xFilial('FP0')
AND FP0.D_E_L_E_T_ = ' '
AND FP0_CLI = '${CLIENT_ID}'
AND FP0_LOJA = '${CLIENT_LOJA}'
INNER JOIN xEmp('FPA') FPA
ON FPA_FILIAL = xFilial('FPA')
AND FPA_PROJET = FP0_PROJET
AND FPA.D_E_L_E_T_ = ' '
AND FPA_AS <> ''
AND TRX_TPMULT = 'NOTIFICACAO'
WHERE TRX_FILIAL = xFilial('TRX')
AND TRX_AS = FPA_AS
AND TRX.D_E_L_E_T_ = ' '
cod04
SELECT COUNT(*) AS QTDE_BENS_MANUTENCAO
FROM xEmp('FQF') FQF
INNER JOIN xEmp('FP0') FP0
ON FP0_FILIAL = xFilial('FP0')
AND FQF_PROJET = FP0_PROJET
AND FP0.D_E_L_E_T_ = ' '
AND FP0_CLI = '${CLIENT_ID}'
AND FP0_LOJA = '${CLIENT_LOJA}'
INNER JOIN xEmp('FQE') FQE
ON FQE_FILIAL = xFilial('FQE')
AND FQE_CODIGO = FQF_SUBST
AND FQE.D_E_L_E_T_ = ' '
WHERE FQF_FILIAL = ' '
AND FQF_OS <> ''
AND FQF_DPRFIM = ''
AND FQF.D_E_L_E_T_ = ' '
cod05
SELECT COUNT(*) AS QTDE_MOTORISTAS
FROM xEmp('DA4') DA4
WHERE DA4_FILIAL = xFilial('DA4')
AND DA4_CODCLI = '${CLIENT_ID}'
AND DA4_LOJCLI = '${CLIENT_LOJA}'
AND DA4.D_E_L_E_T_ = ' '
cod06
SELECT T4_SERVICO, T4_NOME,TE_CARACTE "
FROM "+RETSQLNAME("ST4")+" ST4 "
INNER JOIN "+RetSqlName("STE")+" STE ON TE_TIPOMAN = T4_TIPOMAN AND STE.D_E_L_E_T_ = ' ' AND TE_CARACTE = 'C' "
WHERE T4_FILIAL = '" + xFilial('ST4') + "' "
AND ST4.D_E_L_E_T_ = ' ' "
cod06
cQuery := "SELECT T9_FILIAL, T9_CODBEM, T9_NOME, T9_PLACA, T9_CODFAMI, T6_NOME "
cQuery += "FROM "+RETSQLNAME("ST9")+" ST9 "
cQuery += "INNER JOIN "+RetSqlName("ST6")+" ST6 ON T6_CODFAMI = T9_CODFAMI AND ST6.D_E_L_E_T_ = '' "
cQuery += "WHERE T9_FILIAL = '" + xFilial('ST9') + "' "
If !Empty(cPlaca)
cQuery += "AND LTRIM(RTRIM(REPLACE(T9_PLACA,'-',''))) = '" + cPlaca + "' "
EndIf
If !Empty(cBem)
cQuery += "AND T9_CODBEM = '" + cBem + "' "
EndIf
cQuery += "AND ST9.D_E_L_E_T_ = ' ' "
EndIf