Árvore de páginas


01. DADOS GERAIS

Produto:

TOTVS Saúde Planos

Linha de Produto:

Linha Protheus

Segmento:

Saúde

Módulo:INTEGRAÇÕES
Função:SOLICITAÇÃO DE INTERNAÇÃO
País:Brasil
Ticket:
Requisito/Story/Issue (informe o requisito relacionado) :DSAUBE-16470


02. SITUAÇÃO/REQUISITO

Necessidade de Alteração, Inclusão e Exclusão de atributos no JSON de envio de Aviso de Internação para a HealthMap.

03. SOLUÇÃO

Implementado Ponto de Entrada, ao final da montagem do JSON no padrão do sistema.

04. DEMAIS INFORMAÇÕES

Nome do Ponto de Entrada: PLMPJSIN

Parâmetros:
PARAMIXB[1] : cChaveInternacao (Código da Operadora + Ano + Mês + Numero)
PARAMIXB[2] : cJson (JSON padrão para comunicar)

Retorno: String com o JSON final para comunicação.


Exemplo de Uso
#Include "PROTHEUS.CH"

User Function PLMPJSIN()
    
    Local cJson := ""
    Local cOpeInt := Substr(PARAMIXB[1], 1, 4)
    Local cAnoInt := Substr(PARAMIXB[1], 5, 4)
    Local cMesInt := Substr(PARAMIXB[1], 9, 2)
    Local cNumInt := Substr(PARAMIXB[1], 11, 8)
    Local cJsonPE := PARAMIXB[2]
    Local oResponse := JsonObject():New()
    
    oResponse:FromJson(cJsonPE)

    // Tratamento para montagem do JSON

    cJson := FWJsonSerialize(aListaInternacao, .F., .F.)

Return cJson


Observação: Nessa Integração, o JSON enviado é no formato de Array com uma lista de Objetos. Exemplo:

JSON de Envio
[
  {
    "carteirinhaBeneficiario": "00011008000019017",
    "dataSaida": "05/11/2021 11:23:00",
    "dataInternacao": "26/10/2021 11:23:12",
    "especialidadeMedica": {
      "descricao": "CLINICA MEDICA",
      "codigo": "001"
    },
    "codigoExtInternacao": "000120211000000057",
    "codigoExtBeneficiario": "00011008000019017"
  }
]

05. ASSUNTOS RELACIONADOS