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:

Obrigatórios:


Request:

1
2
3
4
5
6
7
8
9
10

Para execução da Query 01

{
   "cnpj_empresa":"53485215000106",
   "cod_query":"01",
   "cod_cli":"000094",
   "loj_cli":"01"
 }


Para execução da Query 02

{
   "cnpj_empresa":"53485215000106",
   "cod_query":"01",
   "cod_cli":"000094",
   "loj_cli":"01"
 }


Para execução da Query 03

{
   "cnpj_empresa":"53485215000106",
   "cod_query":"01",
   "cod_cli":"000094",
   "loj_cli":"01"
 }


Para execução da Query 04

{
   "cnpj_empresa":"53485215000106",
   "cod_query":"01",
   "cod_cli":"000094",
   "loj_cli":"01"
 }


Para execução da Query 05

{
   "cnpj_empresa":"53485215000106",
   "cod_query":"01",
   "cod_cli":"000094",
   "loj_cli":"01"
 }




Retorno esperado:
Response:

cod_query = 01

{
   "Retorno": "OK",
   "Dados": [   {
      "TRX_NOME": "MOTORISTA SIGALOC",
      "MULTAS": 1
   }]
}

cod_query = 02

{
   "Retorno": "OK",
   "Dados": [{"QTDE_FROTAS": 69}]
}


cod_query = 03

{
   "Retorno": "OK",
   "Dados": [   {
      "TRX_NOME": "MOTORISTA SIGALOC",
      "QTDE_NOTIFICACOES_MULTAS": 1
   }]
}


cod_query = 04

{
   "Retorno": "OK",
   "Dados": [{"QTDE_BENS_MANUTENCAO": 1}]
}


cod_query = 05

{
   "Retorno": "OK",
   "Dados": [{"QTDE_MOTORISTAS": 4}]
}

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 COUNT(*) AS QTDE_FROTAS
      FROM xEmp('FQ4') FQ4
      INNER JOIN xEmp('FQD') FQD
        ON FQD_FILIAL = ' '
        AND FQD_STAREN = '20'
        AND FQ4_STATUS = FQD_STATQY
        AND FQD.D_E_L_E_T_ = ' '
      INNER JOIN xEmp('FP0') FP0
        ON FP0_FILIAL = xFilial('FP0')
        AND FQ4_PROJET = FP0_PROJET
        AND FP0.D_E_L_E_T_ = ' '
        AND FP0_CLI = '${CLIENT_ID}'
        AND FP0_LOJA = '${CLIENT_LOJA}'
      INNER JOIN xEmp('ST9') ST9
        ON T9_CODBEM = FQ4_CODBEM
        AND ST9.D_E_L_E_T_ = ' '
      WHERE FQ4.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_ = ' '

05. ASSUNTOS RELACIONADOS

Apps RENTAL