diff --git a/assets/schema.sql b/assets/schema.sql index b3de6a4b..9db6f6ae 100644 --- a/assets/schema.sql +++ b/assets/schema.sql @@ -72,11 +72,22 @@ CREATE TABLE IF NOT EXISTS coupons id SERIAL PRIMARY KEY, code TEXT UNIQUE NOT NULL, amount INTEGER NOT NULL, + days INTEGER CHECK (days > 0 OR days IS NULL), usage_limit INTEGER NOT NULL DEFAULT 1, usage_count INTEGER NOT NULL DEFAULT 0, is_used BOOLEAN NOT NULL DEFAULT FALSE ); +DO $$ +BEGIN + IF NOT EXISTS ( + SELECT 1 FROM information_schema.columns + WHERE table_name = 'coupons' AND column_name = 'days' + ) THEN + ALTER TABLE coupons ADD COLUMN days INTEGER CHECK (days > 0 OR days IS NULL); + END IF; +END$$; + CREATE TABLE IF NOT EXISTS coupon_usages ( coupon_id INTEGER NOT NULL REFERENCES coupons (id) ON DELETE CASCADE,