19 lines
899 B
SQL
19 lines
899 B
SQL
-- Migration 020: Opportunity contract files
|
|
-- Stores documents that belong to the offer/contract card and can be downloaded independently of comments
|
|
|
|
CREATE TABLE IF NOT EXISTS pipeline_opportunity_contract_files (
|
|
id SERIAL PRIMARY KEY,
|
|
opportunity_id INTEGER NOT NULL REFERENCES pipeline_opportunities(id) ON DELETE CASCADE,
|
|
filename VARCHAR(255) NOT NULL,
|
|
content_type VARCHAR(100),
|
|
size_bytes INTEGER,
|
|
stored_name TEXT NOT NULL,
|
|
uploaded_by_user_id INTEGER,
|
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
FOREIGN KEY (uploaded_by_user_id) REFERENCES users(user_id) ON DELETE SET NULL
|
|
);
|
|
|
|
CREATE INDEX IF NOT EXISTS idx_pipeline_opportunity_contract_files_opportunity_id ON pipeline_opportunity_contract_files(opportunity_id);
|
|
|
|
COMMENT ON TABLE pipeline_opportunity_contract_files IS 'Files uploaded directly to the opportunity (Tilbud & Kontrakt) card.';
|