Documentos Pacientes, Template Documentos Pacientes Saas, Documentos prontuários, Documentos Externos, Visualização Externa, Permissão de Visualização, Render Otimização
This commit is contained in:
96
database-novo/README-GENERATE-DASHBOARD.md
Normal file
96
database-novo/README-GENERATE-DASHBOARD.md
Normal file
@@ -0,0 +1,96 @@
|
||||
# README — generate-dashboard.js
|
||||
|
||||
Script Node.js que lê o `schema.sql` do backup mais recente e gera um `dashboard.html` interativo com a visão completa do banco de dados do projeto.
|
||||
|
||||
---
|
||||
|
||||
## Como usar
|
||||
|
||||
Coloque o `generate-dashboard.js` na **raiz do projeto** (mesma pasta do `db.cjs`) e rode:
|
||||
|
||||
```bash
|
||||
# Usa o backup mais recente automaticamente
|
||||
node generate-dashboard.js
|
||||
|
||||
# Ou especifica uma data
|
||||
node generate-dashboard.js 2026-03-27
|
||||
```
|
||||
|
||||
O arquivo `dashboard.html` será gerado na raiz do projeto. Basta abrir no browser.
|
||||
|
||||
---
|
||||
|
||||
## Fluxo recomendado
|
||||
|
||||
Sempre que fizer alterações no banco, rode os dois comandos em sequência:
|
||||
|
||||
```bash
|
||||
node db.cjs backup # gera o backup em database-novo/backups/YYYY-MM-DD/
|
||||
node generate-dashboard.js # lê o backup mais recente e gera o dashboard.html
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## O que o dashboard mostra
|
||||
|
||||
- **Visão geral** — cards com os 9 domínios do projeto, quantidade de tabelas e FKs por domínio
|
||||
- **Tabelas** — todas as 86 tabelas com colunas, tipos, badges PK/FK
|
||||
- **Foreign Keys** — cada FK aparece como link clicável que pula direto para a tabela destino
|
||||
- **Views** — lista das 24 views do schema público
|
||||
- **Busca** — busca em tempo real por nome de tabela ou nome de coluna
|
||||
- **Sidebar** — navegação por domínio
|
||||
|
||||
---
|
||||
|
||||
## Estrutura de pastas esperada
|
||||
|
||||
O script espera essa estrutura para funcionar:
|
||||
|
||||
```
|
||||
raiz-do-projeto/
|
||||
├── db.cjs
|
||||
├── db.config.json
|
||||
├── generate-dashboard.js ← script
|
||||
├── dashboard.html ← gerado aqui
|
||||
└── database-novo/
|
||||
└── backups/
|
||||
└── 2026-03-27/
|
||||
├── schema.sql ← lido pelo script
|
||||
├── data.sql
|
||||
└── full_dump.sql
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Tabelas novas não aparecem no domínio certo?
|
||||
|
||||
Quando você criar uma migration nova com uma tabela nova, ela aparecerá no dashboard na seção **"Outros"** e o script vai avisar no terminal:
|
||||
|
||||
```
|
||||
⚠ Tabelas novas sem domínio definido (aparecerão em "Outros"):
|
||||
- minha_tabela_nova
|
||||
→ Edite DOMAIN_TABLES no script para mapeá-las.
|
||||
```
|
||||
|
||||
Para corrigir, abra o `generate-dashboard.js` e adicione a tabela no domínio correto dentro do objeto `DOMAIN_TABLES` no topo do arquivo:
|
||||
|
||||
```js
|
||||
const DOMAIN_TABLES = {
|
||||
'Agenda': [
|
||||
'agenda_eventos',
|
||||
'agenda_configuracoes',
|
||||
// ...
|
||||
'minha_tabela_nova', // ← adiciona aqui
|
||||
],
|
||||
// ...
|
||||
};
|
||||
```
|
||||
|
||||
Depois rode `node generate-dashboard.js` novamente.
|
||||
|
||||
---
|
||||
|
||||
## Requisitos
|
||||
|
||||
- Node.js instalado (qualquer versão >= 14)
|
||||
- Sem dependências externas — usa apenas módulos nativos (`fs`, `path`)
|
||||
Reference in New Issue
Block a user