mirror of
https://gitlab.com/mbugroup/lti-api.git
synced 2026-05-20 21:41:55 +00:00
44 lines
1.5 KiB
SQL
44 lines
1.5 KiB
SQL
CREATE TABLE marketings (
|
|
id BIGSERIAL PRIMARY KEY,
|
|
so_number VARCHAR(255) UNIQUE NOT NULL,
|
|
customer_id BIGINT NOT NULL,
|
|
so_docs VARCHAR(20),
|
|
so_date DATE NOT NULL,
|
|
sales_person_id BIGINT NOT NULL,
|
|
notes TEXT,
|
|
created_by BIGINT NOT NULL,
|
|
created_at TIMESTAMPTZ DEFAULT NOW(),
|
|
updated_at TIMESTAMPTZ DEFAULT NOW(),
|
|
deleted_at TIMESTAMPTZ
|
|
);
|
|
|
|
DO $$
|
|
BEGIN
|
|
IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'customers') THEN
|
|
ALTER TABLE marketings
|
|
ADD CONSTRAINT fk_marketings_customer_id
|
|
FOREIGN KEY (customer_id) REFERENCES customers(id) ON DELETE RESTRICT;
|
|
END IF;
|
|
|
|
IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'users') THEN
|
|
ALTER TABLE marketings
|
|
ADD CONSTRAINT fk_marketings_sales_person_id
|
|
FOREIGN KEY (sales_person_id) REFERENCES users(id) ON DELETE RESTRICT;
|
|
END IF;
|
|
|
|
IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'users') THEN
|
|
ALTER TABLE marketings
|
|
ADD CONSTRAINT fk_marketings_created_by
|
|
FOREIGN KEY (created_by) REFERENCES users(id) ON DELETE RESTRICT;
|
|
END IF;
|
|
END $$;
|
|
|
|
CREATE INDEX idx_marketings_customer_id ON marketings (customer_id);
|
|
|
|
CREATE INDEX idx_marketings_sales_person_id ON marketings (sales_person_id);
|
|
|
|
CREATE INDEX idx_marketings_created_by ON marketings (created_by);
|
|
|
|
CREATE INDEX idx_marketings_so_date ON marketings (so_date);
|
|
|
|
CREATE INDEX idx_marketings_deleted_at ON marketings (deleted_at); |