mirror of
https://github.com/Dvorinka/Bookra.git
synced 2026-06-03 20:13:00 +00:00
133 lines
3.7 KiB
SQL
133 lines
3.7 KiB
SQL
-- +goose Up
|
|
ALTER TABLE tenants
|
|
ADD COLUMN IF NOT EXISTS billing_provider text NOT NULL DEFAULT 'paddle';
|
|
|
|
ALTER TABLE billing_snapshots
|
|
ADD COLUMN IF NOT EXISTS billing_provider text NOT NULL DEFAULT 'paddle';
|
|
|
|
ALTER TABLE subscription_events
|
|
ADD COLUMN IF NOT EXISTS billing_provider text NOT NULL DEFAULT 'paddle';
|
|
|
|
DO $$
|
|
BEGIN
|
|
IF EXISTS (
|
|
SELECT 1
|
|
FROM information_schema.columns
|
|
WHERE table_name = 'tenants' AND column_name = 'stripe_customer_id'
|
|
) THEN
|
|
ALTER TABLE tenants RENAME COLUMN stripe_customer_id TO billing_customer_id;
|
|
END IF;
|
|
END $$;
|
|
|
|
DO $$
|
|
BEGIN
|
|
IF EXISTS (
|
|
SELECT 1
|
|
FROM information_schema.columns
|
|
WHERE table_name = 'tenants' AND column_name = 'stripe_subscription_id'
|
|
) THEN
|
|
ALTER TABLE tenants RENAME COLUMN stripe_subscription_id TO billing_subscription_id;
|
|
END IF;
|
|
END $$;
|
|
|
|
DO $$
|
|
BEGIN
|
|
IF EXISTS (
|
|
SELECT 1
|
|
FROM information_schema.columns
|
|
WHERE table_name = 'billing_snapshots' AND column_name = 'stripe_customer_id'
|
|
) THEN
|
|
ALTER TABLE billing_snapshots RENAME COLUMN stripe_customer_id TO billing_customer_id;
|
|
END IF;
|
|
END $$;
|
|
|
|
DO $$
|
|
BEGIN
|
|
IF EXISTS (
|
|
SELECT 1
|
|
FROM information_schema.columns
|
|
WHERE table_name = 'billing_snapshots' AND column_name = 'stripe_subscription_id'
|
|
) THEN
|
|
ALTER TABLE billing_snapshots RENAME COLUMN stripe_subscription_id TO billing_subscription_id;
|
|
END IF;
|
|
END $$;
|
|
|
|
DO $$
|
|
BEGIN
|
|
IF EXISTS (
|
|
SELECT 1
|
|
FROM information_schema.columns
|
|
WHERE table_name = 'subscription_events' AND column_name = 'stripe_event_id'
|
|
) THEN
|
|
ALTER TABLE subscription_events RENAME COLUMN stripe_event_id TO billing_provider_event_id;
|
|
END IF;
|
|
END $$;
|
|
|
|
ALTER TABLE subscription_events DROP CONSTRAINT IF EXISTS subscription_events_stripe_event_id_key;
|
|
ALTER TABLE subscription_events
|
|
ADD CONSTRAINT subscription_events_provider_event_key UNIQUE (billing_provider, billing_provider_event_id);
|
|
|
|
-- +goose Down
|
|
ALTER TABLE subscription_events DROP CONSTRAINT IF EXISTS subscription_events_provider_event_key;
|
|
|
|
DO $$
|
|
BEGIN
|
|
IF EXISTS (
|
|
SELECT 1
|
|
FROM information_schema.columns
|
|
WHERE table_name = 'subscription_events' AND column_name = 'billing_provider_event_id'
|
|
) THEN
|
|
ALTER TABLE subscription_events RENAME COLUMN billing_provider_event_id TO stripe_event_id;
|
|
END IF;
|
|
END $$;
|
|
|
|
DO $$
|
|
BEGIN
|
|
IF EXISTS (
|
|
SELECT 1
|
|
FROM information_schema.columns
|
|
WHERE table_name = 'billing_snapshots' AND column_name = 'billing_subscription_id'
|
|
) THEN
|
|
ALTER TABLE billing_snapshots RENAME COLUMN billing_subscription_id TO stripe_subscription_id;
|
|
END IF;
|
|
END $$;
|
|
|
|
DO $$
|
|
BEGIN
|
|
IF EXISTS (
|
|
SELECT 1
|
|
FROM information_schema.columns
|
|
WHERE table_name = 'billing_snapshots' AND column_name = 'billing_customer_id'
|
|
) THEN
|
|
ALTER TABLE billing_snapshots RENAME COLUMN billing_customer_id TO stripe_customer_id;
|
|
END IF;
|
|
END $$;
|
|
|
|
DO $$
|
|
BEGIN
|
|
IF EXISTS (
|
|
SELECT 1
|
|
FROM information_schema.columns
|
|
WHERE table_name = 'tenants' AND column_name = 'billing_subscription_id'
|
|
) THEN
|
|
ALTER TABLE tenants RENAME COLUMN billing_subscription_id TO stripe_subscription_id;
|
|
END IF;
|
|
END $$;
|
|
|
|
DO $$
|
|
BEGIN
|
|
IF EXISTS (
|
|
SELECT 1
|
|
FROM information_schema.columns
|
|
WHERE table_name = 'tenants' AND column_name = 'billing_customer_id'
|
|
) THEN
|
|
ALTER TABLE tenants RENAME COLUMN billing_customer_id TO stripe_customer_id;
|
|
END IF;
|
|
END $$;
|
|
|
|
ALTER TABLE subscription_events DROP COLUMN IF EXISTS billing_provider;
|
|
ALTER TABLE billing_snapshots DROP COLUMN IF EXISTS billing_provider;
|
|
ALTER TABLE tenants DROP COLUMN IF EXISTS billing_provider;
|
|
ALTER TABLE subscription_events
|
|
ADD CONSTRAINT subscription_events_stripe_event_id_key UNIQUE (stripe_event_id);
|