gohorsejobs/backend/migrations/013_create_backoffice_tables.sql
2025-12-22 16:37:05 -03:00

27 lines
1,005 B
SQL

-- Migration: Create backoffice support tables
-- Description: Tags for job categorization and login audit logs
CREATE TABLE IF NOT EXISTS job_tags (
id SERIAL PRIMARY KEY,
name VARCHAR(100) NOT NULL,
category VARCHAR(30) NOT NULL CHECK (category IN ('area', 'level', 'stack')),
active BOOLEAN DEFAULT true,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
CREATE INDEX IF NOT EXISTS idx_job_tags_category ON job_tags(category);
CREATE INDEX IF NOT EXISTS idx_job_tags_active ON job_tags(active);
CREATE TABLE IF NOT EXISTS login_audit (
id SERIAL PRIMARY KEY,
user_id VARCHAR(36) NOT NULL,
identifier VARCHAR(255) NOT NULL,
roles TEXT NOT NULL,
ip_address VARCHAR(45),
user_agent TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
CREATE INDEX IF NOT EXISTS idx_login_audit_user_id ON login_audit(user_id);
CREATE INDEX IF NOT EXISTS idx_login_audit_created_at ON login_audit(created_at DESC);