26 lines
1.0 KiB
MySQL
26 lines
1.0 KiB
MySQL
|
|
-- Additive supplier resources. Existing contacts, mails and cases are preserved.
|
||
|
|
CREATE TABLE IF NOT EXISTS vendor_files (
|
||
|
|
id SERIAL PRIMARY KEY,
|
||
|
|
vendor_id INTEGER NOT NULL REFERENCES vendors(id),
|
||
|
|
filename TEXT NOT NULL,
|
||
|
|
content_type TEXT NOT NULL,
|
||
|
|
size_bytes INTEGER NOT NULL,
|
||
|
|
content_data BYTEA NOT NULL,
|
||
|
|
uploaded_by_user_id INTEGER REFERENCES users(user_id),
|
||
|
|
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
|
||
|
|
);
|
||
|
|
CREATE INDEX IF NOT EXISTS idx_vendor_files_vendor ON vendor_files(vendor_id, created_at DESC);
|
||
|
|
CREATE TABLE IF NOT EXISTS vendor_contacts (
|
||
|
|
vendor_id INTEGER NOT NULL REFERENCES vendors(id),
|
||
|
|
contact_id INTEGER NOT NULL REFERENCES contacts(id),
|
||
|
|
role VARCHAR(100),
|
||
|
|
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||
|
|
PRIMARY KEY (vendor_id, contact_id)
|
||
|
|
);
|
||
|
|
CREATE TABLE IF NOT EXISTS vendor_case_links (
|
||
|
|
vendor_id INTEGER NOT NULL REFERENCES vendors(id),
|
||
|
|
sag_id INTEGER NOT NULL REFERENCES sag_sager(id),
|
||
|
|
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||
|
|
PRIMARY KEY (vendor_id, sag_id)
|
||
|
|
);
|