SYNERGO OS

← voltar

2026-05-03-alta-polyflow-anamnese-inteligente-polyflow-resposta.md

🟒 CONCLUÍDO
# Resposta: 2026-05-03-alta-polyflow-anamnese-inteligente-polyflow.md
> Processado em: 2026-05-03 16:55:06

---

---

## STATUS: FEITO

## O QUE FOI FEITO:

### Database (Migration 021)
- **anamnesis_base** β€” ficha base unica por cliente (1:1, unique index por client_id ativo)
- **anamnesis_modules** β€” 5 modulos: Micropigmentacao, Cabelo, Cilios, Unhas, Estetica
- **anamnesis_questions** β€” 36 perguntas com tipos (yes_no, text, textarea, select) e opcoes JSON
- **anamnesis_answers** β€” respostas ligadas a client+module+question (upsert, sem duplicar)
- **client_procedure_history** β€” historico com fotos antes/depois, produtos, notas

### Backend (panelAnamnesisIntelRoutes.js)
8 endpoints protegidos por auth:
1. `GET /api/panel/clients/:id/anamnesis-intel/base` β€” ficha base
2. `POST /api/panel/clients/:id/anamnesis-intel/base` β€” criar/atualizar (versiona, nunca duplica)
3. `GET /api/panel/anamnesis-intel/modules` β€” listar modulos
4. `GET /api/panel/anamnesis-intel/modules/:moduleId/questions` β€” perguntas do modulo
5. `POST /api/panel/clients/:id/anamnesis-intel/modules/:moduleId/answers` β€” salvar respostas
6. `GET /api/panel/clients/:id/anamnesis-intel/answers/:moduleId` β€” respostas existentes
7. `GET /api/panel/clients/:id/anamnesis-intel/history` β€” historico completo
8. `POST /api/panel/clients/:id/procedure-history` β€” salvar procedimento com fotos

### Frontend
- **AnamneseInteligente.jsx** β€” componente com 4 abas: Ficha Base, Modulo Procedimento, Historico, Novo Registro
- **ClientDetail.jsx** β€” reescrito para usar AnamneseInteligente na aba Anamnese
- **Clientes.jsx** β€” botao "Prontuario" roxo em cada cliente, navega para `/panel/clientes/:id`
- **main.jsx** β€” rota `clientes/:id` adicionada

### Arquivos alterados/criados:
- `src/db/migrations/021_anamnesis_inteligente.sql` (NOVO)
- `src/routes/panelAnamnesisIntelRoutes.js` (NOVO)
- `src/index.js` (import + registro de rotas + static uploads/procedures)
- `panel/src/components/AnamneseInteligente.jsx` (NOVO)
- `panel/src/pages/ClientDetail.jsx` (reescrito)
- `panel/src/pages/Clientes.jsx` (import navigate + botao Prontuario)
- `panel/src/main.jsx` (import ClientDetail + rota)

## COMO TESTAR:

1. **Painel web**: Abrir `https://polydesigner.com.br/panel/clientes` β†’ clicar "Prontuario" em qualquer cliente β†’ aba "Anamnese" β†’ preencher ficha base β†’ escolher modulo β†’ responder perguntas
2. **curl com token**:
```bash
# Listar modulos
curl -H "Authorization: Bearer <TOKEN>" https://api.polydesigner.com.br/api/panel/anamnesis-intel/modules

# Ficha base do cliente
curl -H "Authorization: Bearer <TOKEN>" https://api.polydesigner.com.br/api/panel/clients/3193/anamnesis-intel/base

# Perguntas do modulo 1 (Micropigmentacao)
curl -H "Authorization: Bearer <TOKEN>" https://api.polydesigner.com.br/api/panel/anamnesis-intel/modules/1/questions
```

## RESULTADO:
Todos os 8 endpoints funcionando, frontend buildado e deployado, 5 modulos com 36 perguntas seedadas, ficha base com versionamento sem duplicidade, testes curl passando. WhatsApp enviado.

---
_SKIPPER β€” processamento automatico_