Files
lti-api/internal/database/migrations/20260419134846_create_farm_depreciation_snapshots.up.sql
T
2026-04-19 21:13:48 +07:00

23 lines
937 B
SQL

CREATE TABLE IF NOT EXISTS farm_depreciation_snapshots (
id BIGSERIAL PRIMARY KEY,
project_flock_id BIGINT NOT NULL
REFERENCES project_flocks(id)
ON UPDATE CASCADE
ON DELETE CASCADE,
period_date DATE NOT NULL,
depreciation_percent_effective NUMERIC(15, 6) NOT NULL DEFAULT 0,
depreciation_value NUMERIC(18, 3) NOT NULL DEFAULT 0,
pullet_cost_day_n_total NUMERIC(18, 3) NOT NULL DEFAULT 0,
components JSONB NOT NULL DEFAULT '{}'::jsonb,
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
CONSTRAINT farm_depreciation_snapshots_unique UNIQUE (project_flock_id, period_date)
);
CREATE INDEX IF NOT EXISTS idx_farm_depreciation_snapshots_period_date
ON farm_depreciation_snapshots (period_date);
CREATE INDEX IF NOT EXISTS idx_farm_depreciation_snapshots_project_flock_id
ON farm_depreciation_snapshots (project_flock_id);