23 lines
1.1 KiB
SQL
23 lines
1.1 KiB
SQL
CREATE TABLE expenses (
|
|
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
organization_id UUID NOT NULL REFERENCES organizations(id) ON DELETE CASCADE,
|
|
outlet_id UUID NOT NULL REFERENCES outlets(id) ON DELETE CASCADE,
|
|
receiver VARCHAR(255) NOT NULL,
|
|
transaction_date DATE NOT NULL,
|
|
code_number VARCHAR(50) NOT NULL,
|
|
chart_of_account_id UUID NOT NULL REFERENCES chart_of_accounts(id) ON DELETE RESTRICT,
|
|
description TEXT,
|
|
tax DECIMAL(15,2) NOT NULL DEFAULT 0,
|
|
total DECIMAL(15,2) NOT NULL DEFAULT 0,
|
|
reserved1 TEXT,
|
|
created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
|
|
updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW()
|
|
);
|
|
|
|
CREATE INDEX idx_expenses_organization_id ON expenses(organization_id);
|
|
CREATE INDEX idx_expenses_outlet_id ON expenses(outlet_id);
|
|
CREATE INDEX idx_expenses_chart_of_account_id ON expenses(chart_of_account_id);
|
|
CREATE INDEX idx_expenses_transaction_date ON expenses(transaction_date);
|
|
CREATE INDEX idx_expenses_code_number ON expenses(code_number);
|
|
CREATE INDEX idx_expenses_created_at ON expenses(created_at);
|