Migration changes
Rust Build / Rustfmt (pull_request) Successful in 51s
Rust Build / Test Suite (pull_request) Successful in 54s
Rust Build / Check (pull_request) Successful in 2m5s
Rust Build / Clippy (pull_request) Successful in 1m28s
Rust Build / build (pull_request) Successful in 2m6s

This commit is contained in:
2026-06-13 17:17:33 -04:00
parent 80a79f2b96
commit 876293ece2
2 changed files with 61 additions and 49 deletions
+12
View File
@@ -0,0 +1,12 @@
-- Add migration script here
CREATE EXTENSION IF NOT EXISTS pgcrypto;
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
CREATE TABLE IF NOT EXISTS "contacts" (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
phone_number TEXT NOT NULL,
user_id UUID NOT NULL,
first_name TEXT NULL,
last_name TEXT NULL,
nickname TEXT NULL
);
+49 -49
View File
@@ -1,49 +1,49 @@
CREATE EXTENSION IF NOT EXISTS "uuid-ossp"; -- CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
--
DROP TABLE IF EXISTS contacts CASCADE; -- DROP TABLE IF EXISTS contacts CASCADE;
DROP TABLE IF EXISTS messages CASCADE; -- DROP TABLE IF EXISTS messages CASCADE;
DROP TABLE IF EXISTS scheduled_messages CASCADE; -- DROP TABLE IF EXISTS scheduled_messages CASCADE;
DROP TABLE IF EXISTS scheduled_message_events CASCADE; -- DROP TABLE IF EXISTS scheduled_message_events CASCADE;
DROP TABLE IF EXISTS message_event_responses CASCADE; -- DROP TABLE IF EXISTS message_event_responses CASCADE;
--
CREATE TABLE IF NOT EXISTS contacts ( -- CREATE TABLE IF NOT EXISTS contacts (
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), -- id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
phone_number TEXT NOT NULL, -- phone_number TEXT NOT NULL,
user_id UUID NOT NULL, -- user_id UUID NOT NULL,
first_name TEXT NULL, -- first_name TEXT NULL,
last_name TEXT NULL, -- last_name TEXT NULL,
nickname TEXT NULL -- nickname TEXT NULL
); -- );
--
CREATE TABLE IF NOT EXISTS messages ( -- CREATE TABLE IF NOT EXISTS messages (
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), -- id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
content TEXT NOT NULL, -- content TEXT NOT NULL,
user_id UUID NOT NULL -- user_id UUID NOT NULL
); -- );
--
CREATE TABLE IF NOT EXISTS scheduled_messages ( -- CREATE TABLE IF NOT EXISTS scheduled_messages (
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), -- id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
scheduled timestamptz NOT NULL, -- scheduled timestamptz NOT NULL,
created timestamptz DEFAULT now(), -- created timestamptz DEFAULT now(),
status TEXT CHECK (status IN ('PENDING', 'READY', 'PROCESSING', 'DONE')), -- status TEXT CHECK (status IN ('PENDING', 'READY', 'PROCESSING', 'DONE')),
user_id UUID NOT NULL -- user_id UUID NOT NULL
); -- );
--
CREATE TABLE IF NOT EXISTS scheduled_message_events ( -- CREATE TABLE IF NOT EXISTS scheduled_message_events (
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), -- id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
contact_id UUID NOT NULL, -- contact_id UUID NOT NULL,
message_id UUID NOT NULL, -- message_id UUID NOT NULL,
scheduled_message_id UUID NOT NULL, -- scheduled_message_id UUID NOT NULL,
created timestamptz DEFAULT now() -- created timestamptz DEFAULT now()
); -- );
--
CREATE TABLE IF NOT EXISTS message_event_responses ( -- CREATE TABLE IF NOT EXISTS message_event_responses (
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), -- id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
scheduled_message_event_id UUID NULL, -- scheduled_message_event_id UUID NULL,
response JSONB NOT NULL, -- response JSONB NOT NULL,
user_id UUID NOT NULL, -- user_id UUID NOT NULL,
sent timestamptz NOT NULL, -- sent timestamptz NOT NULL,
contact_id UUID NULL, -- contact_id UUID NULL,
message_id UUID NULL, -- message_id UUID NULL,
status TEXT CHECK (status IN ('INSTANT', 'SCHEDULED')) -- status TEXT CHECK (status IN ('INSTANT', 'SCHEDULED'))
); -- );