Pular para conteúdo

9 · Linhas do tempo (Hub Saúde e Meu PEP)

Sistemas: Hub Saúde (visão técnica) e Meu PEP (visão do cidadão) · Somente leitura

Os dois sistemas provam o ponto central da demonstração: nenhum deles gravou nada, e mesmo assim reconstroem a jornada inteira apenas lendo o barramento. A diferença é a porta de entrada — o Hub lista os pacientes do servidor; o Meu PEP parte do CPF digitado pelo cidadão.

Leitura — porta de entrada

# Hub Saúde: pacientes recentes do barramento
curl 'http://localhost:8080/fhir/Patient?_sort=-_lastUpdated&_count=50'

# Meu PEP: o cidadão pelo próprio CPF
curl 'http://localhost:8080/fhir/Patient?identifier=https://demo-cbis.example/fhir/cpf|00000000000'

Leitura — os eventos do paciente

Seis buscas por referência ao paciente, uma por tipo de recurso (as cinco primeiras usam o parâmetro subject; Task usa patient):

curl 'http://localhost:8080/fhir/Encounter?subject=Patient/42'
curl 'http://localhost:8080/fhir/ServiceRequest?subject=Patient/42'
curl 'http://localhost:8080/fhir/DiagnosticReport?subject=Patient/42'
curl 'http://localhost:8080/fhir/Condition?subject=Patient/42'
curl 'http://localhost:8080/fhir/DocumentReference?subject=Patient/42'
curl 'http://localhost:8080/fhir/Task?patient=Patient/42'

Os recursos retornados são ordenados pela data clínica de cada um (period.start, authoredOn, issued, recordedDate, date, authoredOn) e viram os eventos da linha do tempo:

Evento exibido Recurso de origem
Consulta realizada Encounter (class AMB)
Exame de sangue solicitado ServiceRequest (categoria laboratorio)
Resultado do exame disponível DiagnosticReport
Diagnóstico / Notificação de saúde pública Condition + DocumentReference
Encaminhamento para internação ServiceRequest (categoria regulacao)
Vaga de internação confirmada Task
Internação hospitalar / Alta hospitalar Encounter (class IMP)

De onde vem a "Origem" de cada evento

Do meta.tag gravado pelo sistema criador (ver Convenções) — é ela que permite ao Hub pintar cada cartão com a cor do sistema de origem e ao Meu PEP exibir "via Lab+", "via SiGO" etc., sem nenhum acoplamento entre os sistemas:

"meta": {
  "tag": [
    {
      "system": "https://demo-cbis.example/fhir/source-system",
      "code": "labmais",
      "display": "Lab+"
    }
  ]
}

O Hub ainda oferece "Ver recurso FHIR": o JSON bruto de cada evento — útil para conferir, por exemplo, que o result do laudo gravado via transaction aponta para as Observation com ids definitivos reescritos pelo servidor.