Automações

Documentação técnica de automações que implementam os processos da Neofarma. Enquanto a pasta processos/ descreve o que acontece e quem faz, esta pasta descreve como o sistema executa — código, infraestrutura, decisões de arquitetura, e guias de implementação.

As automações dialogam com os processos: cada automação referencia o processo de negócio que implementa, e os processos referenciam as automações quando relevante para entender o comportamento do sistema.

Conteúdo

Arquitetura: dois serviços no Windows Server via CF Tunnel

A VPS na nuvem se comunica com o Windows Server local via Cloudflare Tunnel. O Node.js no server1 expõe endpoints que a VPS consome em dois momentos distintos do ciclo do pedido:

1. Verificação de estoque (Pago)

Disparado quando o pedido é pago. A VPS precisa saber se há matéria-prima disponível antes de avançar.

Pedido pago → VPS aciona POST api-impressao.../verificar-estoque
                         │
                    CF Tunnel (HTTPS)
                         │
                         ▼
              Node.js (Windows Server)
                         │
                    node-firebird → lê banco Firebird local
                         │
                         ▼
              Resposta (True/False) → VPS pelo túnel

⚠️ A documentar: regras de verificação de estoque, quais tabelas do Firebird são consultadas, o que acontece quando retorna False (bloqueia avanço? alerta? segue com flag?). Esse fluxo impacta geracao-req-producao — se estoque insuficiente, a REQ não deveria ser gerada sem tratamento.

2. Impressão e armazenamento (Ag. Impressão)

Disparado quando o pedido transita para Ag. Impressão. A VPS envia os dados/links dos PDFs para o server1, que salva no Google Drive e imprime.

Pedido impresso → Webhook bate na VPS
                         │
              VPS aciona POST api-impressao.../imprimir
              (envia links dos PDFs ou dados do pedido)
                         │
                    CF Tunnel (HTTPS)
                         │
                         ▼
              Node.js (Windows Server)
                         │
              ├─ Baixa PDF e salva em G:\Meu Drive\Pedidos\Pedido_{id}.pdf
              ├─ Aciona impressão (pdf-to-printer ou Ghostscript) apontando para G:\
              └─ Google Drive sobe para nuvem via streaming (automático)

O detalhamento completo da impressão (3 jobs: fita, fichas, rótulos) está em contexto-print-service-neofarma e guia-print-service-implementacao.

Conteúdo documentado

Relação com processos