add webproof system
Signed-off-by: Rodrigo B. de Sousa Martins <rodrigo.sousa.577@gmail.com>
This commit is contained in:
1 parent
a63aaeb655
commit
8e75018a35
6 files changed
+666
-1
No files matched your search
@@ -0,0 +1,106 @@
|
||||
// Adicionar ao schema.prisma existente (não substitui)
|
||||
model SessaoNavegacao {
|
||||
id String @id @default(dbgenerated("gen_random_uuid()")) @db.Uuid
|
||||
titulo String
|
||||
descricao String?
|
||||
status StatusSessao @default(INICIADA)
|
||||
usuarioId String @db.Uuid
|
||||
usuario Usuario @relation(fields: [usuarioId], references: [id])
|
||||
|
||||
// Dados da sessão
|
||||
sessionKey String @unique
|
||||
browserFingerprint Json
|
||||
inicioSessao DateTime @default(now())
|
||||
fimSessao DateTime?
|
||||
duracaoSegundos Int?
|
||||
|
||||
// Arquivos gerados
|
||||
videoPath String?
|
||||
screenshotsPaths String[]
|
||||
metadataPath String?
|
||||
relatorioPdfPath String?
|
||||
|
||||
// Hashes e validação
|
||||
checksumVideo String?
|
||||
checksumMetadata String?
|
||||
timestampProof String?
|
||||
|
||||
// Navegação registrada
|
||||
acoes AcaoNavegacao[]
|
||||
capturas CapturaNavegacao[]
|
||||
|
||||
criadoEm DateTime @default(now())
|
||||
atualizadoEm DateTime @updatedAt
|
||||
|
||||
@@map("sessoes_navegacao")
|
||||
}
|
||||
|
||||
model AcaoNavegacao {
|
||||
id String @id @default(dbgenerated("gen_random_uuid()")) @db.Uuid
|
||||
sessaoId String @db.Uuid
|
||||
sessao SessaoNavegacao @relation(fields: [sessaoId], references: [id], onDelete: Cascade)
|
||||
|
||||
timestamp DateTime
|
||||
tipo TipoAcao
|
||||
url String?
|
||||
elemento String?
|
||||
coordenadas Json?
|
||||
valor String?
|
||||
screenshot String?
|
||||
|
||||
metadados Json
|
||||
|
||||
criadoEm DateTime @default(now())
|
||||
|
||||
@@map("acoes_navegacao")
|
||||
}
|
||||
|
||||
model CapturaNavegacao {
|
||||
id String @id @default(dbgenerated("gen_random_uuid()")) @db.Uuid
|
||||
sessaoId String @db.Uuid
|
||||
sessao SessaoNavegacao @relation(fields: [sessaoId], references: [id], onDelete: Cascade)
|
||||
|
||||
timestamp DateTime
|
||||
url String
|
||||
titulo String?
|
||||
screenshotPath String
|
||||
htmlContent String?
|
||||
checksumHtml String?
|
||||
checksumScreenshot String
|
||||
|
||||
// Metadados da página
|
||||
networkRequests Json[]
|
||||
cookies Json[]
|
||||
localStorage Json?
|
||||
sessionStorage Json?
|
||||
|
||||
criadoEm DateTime @default(now())
|
||||
|
||||
@@map("capturas_navegacao")
|
||||
}
|
||||
|
||||
enum StatusSessao {
|
||||
INICIADA
|
||||
EM_ANDAMENTO
|
||||
FINALIZANDO
|
||||
CONCLUIDA
|
||||
ERRO
|
||||
CANCELADA
|
||||
}
|
||||
|
||||
enum TipoAcao {
|
||||
NAVEGACAO
|
||||
CLIQUE
|
||||
DIGITACAO
|
||||
SCROLL
|
||||
HOVER
|
||||
DOWNLOAD
|
||||
FORMULARIO
|
||||
POPUP
|
||||
REDIRECT
|
||||
}
|
||||
|
||||
// Adicionar relação ao modelo Usuario existente
|
||||
// Usuario {
|
||||
// sessoesNavegacao SessaoNavegacao[]
|
||||
// }
|
||||
Reference in new issue
Block a user