26 lines
1.2 KiB
SQL
26 lines
1.2 KiB
SQL
-- EnakPoint can no longer pay for orders: it can only be redeemed for vouchers
|
|||
|
|
-- (docs/enakgame-prd.md §3.2). Undoes 000094 and the point type 000098 kept.
|
||
|
|
|
||
|
|
DROP TRIGGER IF EXISTS trigger_create_point_payment_method ON organizations;
|
||
|
|
DROP FUNCTION IF EXISTS create_point_payment_method();
|
||
|
|
|
||
|
|
-- payments.payment_method_id is ON DELETE RESTRICT, so this fails if any payment was
|
||
|
|
-- made with EnakPoint instead of silently losing it. None was (2026-10-07).
|
||
|
|
DELETE FROM payment_methods WHERE type = 'point';
|
||
|
|
DROP INDEX IF EXISTS uq_payment_methods_point_per_organization;
|
||
|
|
|
||
|
|
ALTER TABLE payment_methods DROP CONSTRAINT IF EXISTS payment_methods_type_check;
|
||
|
|
ALTER TABLE payment_methods ADD CONSTRAINT payment_methods_type_check
|
||
|
|
CHECK (type IN ('cash', 'card', 'digital_wallet', 'qr', 'edc', 'delivery'));
|
||
|
|
|
||
|
|
ALTER TABLE payments
|
||
|
|
DROP CONSTRAINT IF EXISTS chk_payments_point_pair,
|
||
|
|
DROP COLUMN IF EXISTS points_used,
|
||
|
|
DROP COLUMN IF EXISTS point_value;
|
||
|
|
|
||
|
|
-- The outlet settings that switched it on. Their history in loyalty_setting_changes stays.
|
||
|
|
DELETE FROM outlet_settings WHERE key IN (
|
||
|
|
'loyalty.point.accept_payment',
|
||
|
|
'loyalty.point.min_payment_points',
|
||
|
|
'loyalty.point.max_payment_percent');
|