3.2 KiB
3.2 KiB
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 monitoradosPOST /api/processos- Cadastra novo processoGET /api/processos/[id]- Detalhes de um processoPUT /api/processos/[id]- Atualiza processoDELETE /api/processos/[id]- Remove processo
Publicações
GET /api/publicacoes- Lista publicações (com filtros)PATCH /api/publicacoes/[id]/visualizar- Marca como lidaPOST /api/publicacoes/buscar- Busca novas publicações
Configuração de Busca Automática (Cron Job)
Opção 1: Cron do Sistema
# 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:
- Editar
src/lib/publicacoes-service.ts - Implementar
buscarPublicacoesTribunal(tribunal, numeroProcesso) - APIs sugeridas:
- Datajud (CNJ) - https://datajud-wiki.cnj.jus.br/
- e-SAJ (TJSP) - via scraping
- PJe - via API onde disponível
Schema do Banco
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