diff --git a/server.js b/server.js index 810a34a..380eda1 100644 --- a/server.js +++ b/server.js @@ -274,10 +274,18 @@ async function autoUpdateDB() { ); `); - // PARCHE DE ACTUALIZACIÓN - await client.query(` +-- TABLA PARA ASIGNACIÓN AUTOMÁTICA + CREATE TABLE IF NOT EXISTS assignment_pings ( + id SERIAL PRIMARY KEY, + scraped_id INT NOT NULL, + user_id INT REFERENCES users(id) ON DELETE CASCADE, + token TEXT UNIQUE NOT NULL, + status TEXT DEFAULT 'pending', + expires_at TIMESTAMP NOT NULL, + created_at TIMESTAMP DEFAULT NOW() + ); - -- 💬 CHAT Y NOTAS INTERNAS + -- 💬 CHAT Y NOTAS INTERNAS CREATE TABLE IF NOT EXISTS service_communications ( id SERIAL PRIMARY KEY, scraped_id INT REFERENCES scraped_services(id) ON DELETE CASCADE, @@ -286,14 +294,17 @@ async function autoUpdateDB() { sender_name TEXT NOT NULL, sender_role TEXT, message TEXT NOT NULL, - is_internal BOOLEAN DEFAULT FALSE, -- Si es TRUE, el operario NO lo ve + is_internal BOOLEAN DEFAULT FALSE, created_at TIMESTAMP DEFAULT NOW() ); + `); // PARCHE DE ACTUALIZACIÓN - await client.query(` + await client.query(` DO $$ BEGIN + -- AÑADIDO: Token mágico para el Portal del Cliente + -- AÑADIDO: Token mágico para el Portal del Cliente IF NOT EXISTS (SELECT 1 FROM information_schema.columns WHERE table_name='clients' AND column_name='portal_token') THEN ALTER TABLE clients ADD COLUMN portal_token TEXT UNIQUE;