diff --git a/migrations/0005_site_settings_tariff_labels.sql b/migrations/0005_site_settings_tariff_labels.sql new file mode 100644 index 0000000..4f38c20 --- /dev/null +++ b/migrations/0005_site_settings_tariff_labels.sql @@ -0,0 +1,21 @@ +-- Migration 0005: site_settings_tariff_category_labels sub-table +-- Added when tariffCategoryLabels array field was added to SiteSettings global + +CREATE TABLE IF NOT EXISTS "site_settings_tariff_category_labels" ( + "_order" integer NOT NULL, + "_parent_id" integer NOT NULL, + "id" varchar PRIMARY KEY NOT NULL, + "key" varchar NOT NULL, + "label" varchar NOT NULL +); + +DO $$ BEGIN + ALTER TABLE "site_settings_tariff_category_labels" ADD CONSTRAINT "site_settings_tariff_category_labels_parent_id_fk" + FOREIGN KEY ("_parent_id") REFERENCES "public"."site_settings"("id") ON DELETE cascade ON UPDATE no action; +EXCEPTION WHEN duplicate_object THEN null; END $$; + +CREATE INDEX IF NOT EXISTS "site_settings_tariff_category_labels_order_idx" + ON "site_settings_tariff_category_labels" USING btree ("_order"); + +CREATE INDEX IF NOT EXISTS "site_settings_tariff_category_labels_parent_id_idx" + ON "site_settings_tariff_category_labels" USING btree ("_parent_id");