60 lines
2.2 KiB
JavaScript
60 lines
2.2 KiB
JavaScript
|
|
const { query } = require('./config/database');
|
||
|
|
|
||
|
|
async function createTables() {
|
||
|
|
try {
|
||
|
|
console.log('🔧 Criando tabela browsing_history...');
|
||
|
|
await query(`
|
||
|
|
CREATE TABLE IF NOT EXISTS browsing_history (
|
||
|
|
id SERIAL PRIMARY KEY,
|
||
|
|
device_id VARCHAR(255) NOT NULL,
|
||
|
|
url TEXT NOT NULL,
|
||
|
|
title VARCHAR(500),
|
||
|
|
browser VARCHAR(100),
|
||
|
|
visited_at TIMESTAMP NOT NULL DEFAULT NOW(),
|
||
|
|
created_at TIMESTAMP NOT NULL DEFAULT NOW()
|
||
|
|
)
|
||
|
|
`);
|
||
|
|
console.log('✅ Tabela browsing_history criada');
|
||
|
|
|
||
|
|
console.log('🔧 Criando índices para browsing_history...');
|
||
|
|
await query(`
|
||
|
|
CREATE INDEX IF NOT EXISTS idx_browsing_history_device_id ON browsing_history(device_id)
|
||
|
|
`);
|
||
|
|
await query(`
|
||
|
|
CREATE INDEX IF NOT EXISTS idx_browsing_history_visited_at ON browsing_history(visited_at DESC)
|
||
|
|
`);
|
||
|
|
console.log('✅ Índices criados');
|
||
|
|
|
||
|
|
console.log('🔧 Criando tabela session_events...');
|
||
|
|
await query(`
|
||
|
|
CREATE TABLE IF NOT EXISTS session_events (
|
||
|
|
id SERIAL PRIMARY KEY,
|
||
|
|
device_id VARCHAR(255) NOT NULL,
|
||
|
|
event_type VARCHAR(20) NOT NULL CHECK (event_type IN ('logon', 'logoff')),
|
||
|
|
username VARCHAR(255),
|
||
|
|
event_time TIMESTAMP NOT NULL DEFAULT NOW(),
|
||
|
|
created_at TIMESTAMP NOT NULL DEFAULT NOW()
|
||
|
|
)
|
||
|
|
`);
|
||
|
|
console.log('✅ Tabela session_events criada');
|
||
|
|
|
||
|
|
console.log('🔧 Criando índices para session_events...');
|
||
|
|
await query(`
|
||
|
|
CREATE INDEX IF NOT EXISTS idx_session_events_device_id ON session_events(device_id)
|
||
|
|
`);
|
||
|
|
await query(`
|
||
|
|
CREATE INDEX IF NOT EXISTS idx_session_events_event_time ON session_events(event_time DESC)
|
||
|
|
`);
|
||
|
|
console.log('✅ Índices criados');
|
||
|
|
|
||
|
|
console.log('\n✅ Todas as tabelas foram criadas com sucesso!');
|
||
|
|
process.exit(0);
|
||
|
|
} catch (error) {
|
||
|
|
console.error('❌ Erro ao criar tabelas:', error);
|
||
|
|
process.exit(1);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
createTables();
|
||
|
|
|