112 lines
3.2 KiB
Markdown
112 lines
3.2 KiB
Markdown
# Módulo de Monitoramento de Publicações
|
|
|
|
## Visão Geral
|
|
|
|
Este módulo permite que advogados monitorem publicações nos Diários Oficiais (DJe, DOU, DOESP) relacionadas aos seus processos. O sistema calcula automaticamente prazos com base no tipo de publicação.
|
|
|
|
## Funcionalidades
|
|
|
|
- **Cadastro de processos** para monitoramento
|
|
- **Busca de publicações** (mock para MVP)
|
|
- **Cálculo automático de prazos** com base no tipo de publicação
|
|
- **Dashboard** com estatísticas e alertas
|
|
- **Filtros** por tipo, processo, período, status de leitura
|
|
- **Marcação de publicações** como lidas
|
|
|
|
## Tipos de Publicação e Prazos
|
|
|
|
| Tipo | Prazo Padrão |
|
|
|------|--------------|
|
|
| Intimação | 15 dias úteis |
|
|
| Citação | 15 dias úteis |
|
|
| Sentença | 15 dias úteis (recurso) |
|
|
| Despacho | 5 dias úteis |
|
|
| Acórdão | 15 dias úteis (embargos/recurso) |
|
|
| Outros | 5 dias úteis |
|
|
|
|
## API Endpoints
|
|
|
|
### Processos
|
|
|
|
- `GET /api/processos` - Lista processos monitorados
|
|
- `POST /api/processos` - Cadastra novo processo
|
|
- `GET /api/processos/[id]` - Detalhes de um processo
|
|
- `PUT /api/processos/[id]` - Atualiza processo
|
|
- `DELETE /api/processos/[id]` - Remove processo
|
|
|
|
### Publicações
|
|
|
|
- `GET /api/publicacoes` - Lista publicações (com filtros)
|
|
- `PATCH /api/publicacoes/[id]/visualizar` - Marca como lida
|
|
- `POST /api/publicacoes/buscar` - Busca novas publicações
|
|
|
|
## Configuração de Busca Automática (Cron Job)
|
|
|
|
### Opção 1: Cron do Sistema
|
|
|
|
```bash
|
|
# Editar crontab
|
|
crontab -e
|
|
|
|
# Adicionar linha para buscar diariamente às 8h
|
|
0 8 * * * curl -X POST http://localhost:3000/api/publicacoes/buscar -H "Cookie: session=..." >> /var/log/lexmind-publicacoes.log 2>&1
|
|
```
|
|
|
|
### Opção 2: Scheduler Externo
|
|
|
|
Use serviços como:
|
|
- **cron-job.org** (gratuito)
|
|
- **EasyCron**
|
|
- **GitHub Actions** (scheduled workflow)
|
|
|
|
Configurar para fazer POST em `/api/publicacoes/buscar` diariamente.
|
|
|
|
## Integração com APIs Reais (Futuro)
|
|
|
|
Para substituir o mock por APIs reais dos tribunais:
|
|
|
|
1. Editar `src/lib/publicacoes-service.ts`
|
|
2. Implementar `buscarPublicacoesTribunal(tribunal, numeroProcesso)`
|
|
3. APIs sugeridas:
|
|
- **Datajud** (CNJ) - https://datajud-wiki.cnj.jus.br/
|
|
- **e-SAJ** (TJSP) - via scraping
|
|
- **PJe** - via API onde disponível
|
|
|
|
## Schema do Banco
|
|
|
|
```prisma
|
|
model ProcessoMonitorado {
|
|
id String @id @default(cuid())
|
|
userId String
|
|
numeroProcesso String // Formato CNJ: 0000000-00.0000.0.00.0000
|
|
tribunal String // Ex: TJSP, TRF3, STJ
|
|
vara String?
|
|
comarca String?
|
|
parteAutora String?
|
|
parteRe String?
|
|
status ProcessoStatus @default(ATIVO)
|
|
publicacoes Publicacao[]
|
|
}
|
|
|
|
model Publicacao {
|
|
id String @id @default(cuid())
|
|
processoId String
|
|
dataPublicacao DateTime
|
|
diario String // Ex: DJe, DOU, DOESP
|
|
conteudo String @db.Text
|
|
tipo TipoPublicacao
|
|
prazoCalculado DateTime?
|
|
prazoTipo String?
|
|
visualizado Boolean @default(false)
|
|
}
|
|
```
|
|
|
|
## Changelog
|
|
|
|
### v1.0.0 (MVP)
|
|
- Cadastro e gerenciamento de processos
|
|
- Dashboard de publicações
|
|
- Busca mock para testes
|
|
- Cálculo automático de prazos
|
|
- Filtros e marcação de leitura
|