feat(rx): multi-tenant por clinica_id + página /clients de clientes ativos

- clinica_id (tenant do scoreodonto, clinicas.id) como eixo de isolamento em
  clinics_devices e images (+índices); clinic_name vira rótulo legível.
- Cadastro de device, socket (machine_token) e uploads (direct + legado) gravam clinica_id.
- Listagens (/images, /patients, /by-patient, /unique-clinics) filtram por clinica_id.
- /clients: lista clientes Windows ativos (inclui autenticados sem client-identify),
  tempo real + polling, exibe a clínica.
- send-image marcado como legado (client real usa Direct Upload).

Inclui trabalho de dev acumulado no working tree (não havia commits desde origin/main).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
VPS 4 Deploy Agent
2026-06-12 16:17:09 +02:00
parent d9182cff09
commit 31022c6a6f
55 changed files with 6773 additions and 1350 deletions
+28
View File
@@ -0,0 +1,28 @@
version: '3.8'
services:
dev-api:
image: node:20
container_name: rx_dev_api
network_mode: "host"
working_dir: /app
volumes:
- ./dental-server:/app
- /app/node_modules
command: >
sh -c "npm install && npm run dev"
env_file:
- ./dental-server/.env
restart: unless-stopped
dev-client:
image: node:20
container_name: rx_dev_client
network_mode: "host"
working_dir: /app
volumes:
- ./dental-server/dental-client:/app
- /app/node_modules
command: >
sh -c "npm install && npx vite --host 0.0.0.0 --port 5173"
restart: unless-stopped