-- Migration 001: Remove deprecated fields from payments table
-- Date: 2025-12-14
-- Description: Remove deprecated packs and subscription columns from payments

-- Проверка перед удалением: убедиться что все используют products
DO $$
DECLARE
  count_with_packs INTEGER;
  count_with_subscription INTEGER;
BEGIN
  -- Проверить сколько записей используют старые поля
  SELECT COUNT(*) INTO count_with_packs 
  FROM payments 
  WHERE packs IS NOT NULL AND packs != '[]';
  
  SELECT COUNT(*) INTO count_with_subscription 
  FROM payments 
  WHERE subscription = true;
  
  -- Показать предупреждение если есть данные
  IF count_with_packs > 0 THEN
    RAISE WARNING 'Found % payments with non-empty packs field. Please migrate data first!', count_with_packs;
  END IF;
  
  IF count_with_subscription > 0 THEN
    RAISE WARNING 'Found % payments with subscription=true. Please migrate data first!', count_with_subscription;
  END IF;
END $$;

-- Если warnings есть, остановитесь и мигрируйте данные!
-- Если нет - продолжайте:

-- Backup: создать копию перед удалением (опционально)
-- CREATE TABLE payments_backup_20251214 AS SELECT * FROM payments;

-- Удаление deprecated колонок
ALTER TABLE payments DROP COLUMN IF EXISTS packs;
ALTER TABLE payments DROP COLUMN IF EXISTS subscription;

-- Проверка результата
\d payments

-- Vacuum для освобождения места
VACUUM FULL ANALYZE payments;









