Mission Control SUS | Privado
Dois modos de operação em interface única. SUS: leitos, SIVEP, RAAS, regra de cobertura mínima por nível. Privado: VH mensal, reserva de bloco cirúrgico, cobertura UTI neonatal.
Sistema operacional de força de trabalho para saúde, operações hospitalares e
prefeituras. Gerencia demandas clínicas, escala de plantão, substituições em tempo
real, férias, sobreaviso e justiça distributiva — tudo sob o controle de um
Motor de Regras Declarativas VERSIONADO e um Otimizador
Multi-objetivo (planejamento + operação em tempo real) com 8+ dimensões.
Auditoria de decisão: responde em linguagem natural "por que o Dr. X
foi escalado" e "por que a Enf. Y foi negada". Multi-tenant por header
X-Tenant-Id. Integra n8n + Kafka para automações e troca de turno.
Visão executiva
ViaRGR Escala é construído pra substituir o ciclo: planilha de escala → grupo WhatsApp → troca de turno boca a boca → chefe de serviço reclamando → auditoria trabalhista chega e ninguém lembra por quê. Todo passo no sistema: demanda, regra, otimização, publicação, troca, substituição e justificativa. Nada "na cabeça".
Dois modos de operação em interface única. SUS: leitos, SIVEP, RAAS, regra de cobertura mínima por nível. Privado: VH mensal, reserva de bloco cirúrgico, cobertura UTI neonatal.
Cada profissional (médico, enfermagem, técnico, fisioterapeuta) tem competências: setor, CRM/COREN, especialidade, treinamentos válidos, NR's. O otimizador NÃO escala quem não tem skill mínima.
Regras declarativas em DSL JSON/YAML. Cada versão é gravada com data/autor. Diff visível entre versões. Rollback 1 clique. Nunca mais "a regra mudou e ninguém sabe por quê".
Planejamento semanal + operação tempo real. 8 eixos: demanda clínica, skill, fadiga 12h, compliance NR, economia, fluxo paciente, justiça distributiva, fiscal CLT/PJ/estatutário.
Toda atribuição gera log estruturado com score por dimensão e justificativa em PT-BR. Responde: "Por que escalou / por que negou". Exporta relatório pro RH e jurídico sem reunião.
Fluxo de pedido → candidato disponível por skill → aprovação gestor. Substituição automática em 5 minutos pra ausência de última hora. Nada de ligar 20 pessoas no WhatsApp.
Arquitetura técnica
API em Python/FastAPI (performance + tipagem forte com Pydantic v2). PWA HTML/JS puro — funciona no celular do enfermeiro 3G offline, sincroniza depois. Eventos de escala pelo Kafka KRaft, automações por n8n. Multi-tenant por cabeçalho X-Tenant-Id validado em cada request.
Stack tecnológica
Escolhas conservadoras, time interno de TI consegue assumir. FastAPI, Postgres, Kafka, n8n, PWA vanilla com Service Worker. Nada de runtime exotic.
Módulos
Cada módulo é independente, mas conversa por Kafka. Ative só o que usar: se sua instituição não tem PJ, o módulo fiscal PJ não atrapalha.
CRUD drag-and-drop + bulk create (52 turnos de 1 vez). Publicação 1 clique com notificação em lote por WhatsApp/e-mail.
Competências por profissional: CRM, COREN, CREFITO, especialidade, NR, setores autorizados, data de validade. Sem habilidade = não escala.
DSL: "Plantão duplo proibido em 48h", "UTI precisa de pelo menos 2 críticos", "máximo 2 extra por mês". Versão, diff, rollback.
Planejamento: maximiza skill + justiça + compliance; minimiza fadiga + custo extra. Operação em tempo real: substituição em 5 min por ausência.
Solicita, lista disponíveis por skill, aprova gestor. Regra de "não troca sem skill igual ou acima". Tudo logado.
Log estruturado por atribuição. Cada candidato tem score (0–100) por dimensão. Texto em PT-BR: "Escalado por: skill (95) + fadiga OK (88) + justiça +7". Ou: "Negado por: fadiga < 12h repouso".
Calcula VH, jornada 6×1 / 12×36, adicional noturno, extra, sobreaviso. Integrado com ponto e RH. Sinaliza risco trabalhista.
% cobertura mínima por setor, custo plantão, distribuição extra por profissional, taxa de troca, ausência. Export CSV.
App instalável no celular do plantonista. Mostra meu turno, aceita/recusa, pede troca, abre mapa do hospital. 3G fraco ou sem internet — sincroniza depois.
Conformidade e governança
Nossa regra: cada escala publicada tem que se defender sozinha. Se auditoria ou sindicato perguntar, a resposta tá lá, ponta a ponta, sem depender de ninguém lembrar.
Diferenciais
Comparativo honesto com o que a maioria dos hospitais usa hoje.
| Requisito de Escala | Planilha + WhatsApp | Sistema de escala commodity | ViaRGR Escala |
|---|---|---|---|
| Skill Matrix real por profissional | Separada em outra planilha | Campo texto, sem regra | Competências · Validade · Bloqueio automático |
| Regras (fadiga, repouso, NR) | Na cabeça do gestor | Hardcoded, não muda | Declarativo · Versão · Diff · Rollback |
| Otimizador multi-objetivo | Manual | Primeiro disponível (1 dimensão) | 8+ dimensões · λ ajustável |
| Auditoria "por que escalou/negou" | Ninguém lembra | Não tem | Log score por dimensão · PT-BR |
| Substituição em tempo real | Liga 20 pessoas | Avisa, não sugere | Sugere top 5 por skill + custo |
| Multi-tenant real | — | SaaS, arquivo separado só no plano enterprise | X-Tenant-Id · middleware · Prisma extend |
| PWA Offline profissional | — | Só app React quebrado offline | Service Worker · IndexedDB · Instala no celular |
| Fiscal CLT / PJ / Estatutário | RH calcula separado | Só CLT | 3 regimes · Sinais risco · Integra eSocial |
| Eventos + Automações | — | E-mail só | Kafka topics · n8n workflows · Webhooks |
| On-prem / VPC privada | — | SaaS só | Docker Compose · Sem dependência externa |
Rollout faseado: primeiro Skill Matrix, depois regras, depois otimizador em SHADOW MODE (sugere, gestor aprova). Nenhum "big bang". Retorno esperado em 6 semanas.
FAQ
O otimizador roda OR-Tools CP-SAT, padrão de mercado para scheduling. Antes de ligar "auto publica", rodamos ele no mínimo 4 semanas em SHADOW MODE: ele SUGERE a escala, mas o gestor aprova 1 por 1. Ao longo desse período, seu time ajusta os pesos λ de cada dimensão (justiça pode valer mais que economia, ou vice). Quando todo mundo confia, sobe pra publicação automática. E em qualquer horário, o gestor pode editar manualmente — o sistema loga "edição manual" na auditoria com justificativa.
Para cada turno candidato que o otimizador avalia, ele gera um score 0–100 por cada dimensão (skill, fadiga, compliance, economia, justiça etc). Esses scores são salvos numa tabela assignment_log. Depois, o sistema gera um texto em PT-BR: "Escalado por: skill 98 (CTI), repouso 14h > 12h (88), justiça +3 turnos equiparado (85). Penalidade 2% por preferência de domingo, mas dentro do aceitável.". Para quem foi negado: "Negado por: fadiga — último turno terminou há 6h (mínimo 12h). Skill suficiente (90), mas bloqueado por HARDSTOP NR fadiga.". Tudo exportável.
Jamais. Regra de arquitetura: todo request passa por middleware que (1) lê header X-Tenant-Id, (2) confere se existe no claim do JWT, (3) injeta filtro tenant_id = X em TODO select/insert/update do Prisma via $extends. Não tem jeito de "esquecer" o filtro. Se você chamar a API direto sem header, retorna 401. Consulta manual no banco via role do app SEM RLS habilitado (ou role superusuário) retorna vazio — a conexão do app não é superusuário.
Sim. 3 caminhos: (a) API REST + webhooks, (b) n8n workflows previamente montados pra SAP, Totvs, Senior, etc, (c) SFTP/CSV noturno. Evento "escala publicada" pode criar S-2200 eSocial, evento "troca efetivada" atualiza ponto do profissional. Nada de digitar duas vezes.
Sim. Docker Compose com FastAPI + Postgres + Redis + Kafka KRaft + n8n self-hosted. PWA instala no celular via HTTPS local. Nenhuma chamada pra API externa obrigatória. WhatsApp pode ser substituído por e-mail interno + SMS gateway privado se precisar.
Módulo Fiscal do Escala tem os 3 regimes. Cada profissional tem vínculo e perfil. O otimizador entende: (a) CLT não passa de 2 extras/mês, (b) PJ tem limite máximo de horas por mês no contrato, (c) estatutário SUS obedece portaria 1.419/2024. No diff da auditoria, o score de "fiscal" penaliza candidatos que quebram esses limites — a não ser que regra específica da unidade autorize e justifique.
Na ViaRGR Sistemas, seu atendimento é feito diretamente pela nossa equipe técnica e estratégica, sem SDR terceirizado ou camadas desnecessárias de intermediação.
Primeiro, entendemos sua operação, seus desafios e objetivos. A partir disso, avaliamos a viabilidade, desenhamos a melhor estratégia de implantação e apresentamos uma solução alinhada à sua realidade.
Se houver aderência, avançamos. Se não houver, informamos desde o início. Transparência, agilidade e conhecimento técnico para não desperdiçar o seu tempo.