Saltar para o conteúdo
Edson Francisco
  • Saúde digital

H-Link

API para referenciar pacientes entre unidades sanitárias, com filtro por camas, testes e ventiladores disponíveis.

Período
2021–2022
Estado
Arquivado
Papel
Programador principal do backend e do painel de administração
Cliente
EQUIP Moçambique

Problema

Durante a COVID-19, profissionais de saúde e agentes comunitários precisavam de encontrar depressa uma unidade com cama, teste ou ventilador disponível, e de referir o paciente de forma rastreável. Hospitais, clínicas e farmácias quase não comunicam entre si, por isso quem não é atendido num sítio é mandado de porta em porta. A ideia nasceu em 2020, quando a equipa técnica participou num hackathon global lançado pelo MIT sobre sistemas de saúde africanos na pandemia.

Solução

API v1 em Laravel 8 consumida por uma app Ionic da equipa: registo e login com Sanctum, lista de unidades por país e por distância, criação da referência com os dados do paciente, e confirmação pela unidade receptora, que então vê a localização de origem e destino. Um painel permite aprovar utilizadores novos e gerir as unidades sanitárias.

Decisões técnicas

  1. 01

    Só a unidade receptora confirma a referência

    A regra está no controlador, não só na interface: um utilizador de outra unidade não consegue aceitar a referência.

  2. 02

    Contas pendentes até aprovação

    Quem se regista pela app só entra depois de um administrador aprovar, com email de aprovação ou rejeição — os dados são de pacientes.

  3. 03

    Filtro por recursos e distância

    As unidades são filtradas por disponibilidade de cama, teste e ventilador e ordenadas pela distância ao utilizador.

  4. 04

    Cache de modelos e queries com campos explícitos

    Cache de modelos e `select()` explícitos para manter as listas rápidas sobre o conjunto de unidades.

  5. 05

    API versionada e multi-país

    Prefixo `v1` e filtro por código de país, para poder crescer além de Moçambique sem mudar o contrato.

Imagens

Tecnologias

  • Laravel
  • PHP
  • MySQL
  • Ionic

Resultados verificáveis

unidades sanitárias no conjunto de dados
1 589

O que aprendi

Autorização por regra de negócio, optimização de queries com cache, e integração com um cliente Ionic em Android.

ODS

  • ODS 3 · Saúde e Bem-Estarprincipal

    Referência de pacientes entre unidades sanitárias com informação de camas, testes e ventiladores disponíveis, criada durante a COVID-19 para acabar com o 'porta a porta' em busca de atendimento.