-- ============================================================
-- DANE DEMO dla adsPRO
-- Klient: pomysloweprezenty.pl (client_id = 2)
-- Data generacji: 2026-02-15
-- ============================================================
-- UWAGA: Uruchom ten skrypt TYLKO na bazie testowej/deweloperskiej!
-- Zakłada że klient o id=2 istnieje z google_ads_customer_id = '941-605-1782'
-- ============================================================

-- ============================================================
-- 1. KAMPANIE
-- ============================================================

-- Idempotencja: usuń poprzedni zestaw danych demo kampanii przed ponownym wstawieniem
DELETE ch
FROM campaigns_history ch
JOIN campaigns c ON c.id = ch.campaign_id
WHERE c.client_id = 2
  AND c.campaign_id IN (
    20845671001, 20845671002, 20845671003, 20845671004,
    20845671005, 20845671006, 20845671007, 20845671008
  );

DELETE FROM campaigns
WHERE client_id = 2
  AND campaign_id IN (
    20845671001, 20845671002, 20845671003, 20845671004,
    20845671005, 20845671006, 20845671007, 20845671008
  );

INSERT INTO `campaigns` (`client_id`, `campaign_id`, `campaign_name`) VALUES
(2, 20845671001, 'PMAX | Prezenty personalizowane'),
(2, 20845671002, 'PMAX | Bestsellery'),
(2, 20845671003, 'PMAX | Walentynki 2026'),
(2, 20845671004, 'Shopping | Wszystkie produkty'),
(2, 20845671005, 'Shopping | Prezenty do 50 zł'),
(2, 20845671006, 'Shopping | Prezenty premium'),
(2, 20845671007, 'PMAX | Nowości'),
(2, 20845671008, 'Shopping | Bestsellery high ROAS');

-- Zapamiętaj ID kampanii (zakładam auto_increment od 1)
SET @camp1 = (SELECT id FROM campaigns WHERE campaign_id = 20845671001 AND client_id = 2);
SET @camp2 = (SELECT id FROM campaigns WHERE campaign_id = 20845671002 AND client_id = 2);
SET @camp3 = (SELECT id FROM campaigns WHERE campaign_id = 20845671003 AND client_id = 2);
SET @camp4 = (SELECT id FROM campaigns WHERE campaign_id = 20845671004 AND client_id = 2);
SET @camp5 = (SELECT id FROM campaigns WHERE campaign_id = 20845671005 AND client_id = 2);
SET @camp6 = (SELECT id FROM campaigns WHERE campaign_id = 20845671006 AND client_id = 2);
SET @camp7 = (SELECT id FROM campaigns WHERE campaign_id = 20845671007 AND client_id = 2);
SET @camp8 = (SELECT id FROM campaigns WHERE campaign_id = 20845671008 AND client_id = 2);

-- ============================================================
-- 2. HISTORIA KAMPANII (30 dni: 2026-01-16 do 2026-02-14)
-- ============================================================

-- Generujemy dane dzienne za pomocą procedury
DELIMITER //
DROP PROCEDURE IF EXISTS generate_campaign_history//
CREATE PROCEDURE generate_campaign_history()
BEGIN
  DECLARE i INT DEFAULT 0;
  DECLARE cur_date DATE;
  DECLARE day_factor FLOAT;

  WHILE i < 30 DO
    SET cur_date = DATE_SUB('2026-02-14', INTERVAL i DAY);
    -- Weekendy mają wyższe wydatki (factor 1.2-1.4), dni powszednie normalne
    SET day_factor = CASE DAYOFWEEK(cur_date)
      WHEN 1 THEN 1.3  -- niedziela
      WHEN 7 THEN 1.4  -- sobota
      WHEN 6 THEN 1.1  -- piątek
      ELSE 1.0
    END;

    -- Walentynki boost (7-14 lutego)
    IF cur_date BETWEEN '2026-02-07' AND '2026-02-14' THEN
      SET day_factor = day_factor * 1.5;
    END IF;

    -- PMAX | Prezenty personalizowane (wysoki ROAS, duży budżet)
    INSERT INTO campaigns_history (campaign_id, date_add, roas_30_days, roas_all_time, budget, money_spent, conversion_value, bidding_strategy) VALUES
    (@camp1, cur_date,
      ROUND(450 + RAND() * 150, 2),
      ROUND(520 + RAND() * 80, 2),
      150.00,
      ROUND((130 + RAND() * 40) * day_factor, 2),
      ROUND((600 + RAND() * 300) * day_factor, 2),
      'Docelowy ROAS | docelowy ROAS: 400%');

    -- PMAX | Bestsellery (bardzo wysoki ROAS)
    INSERT INTO campaigns_history (campaign_id, date_add, roas_30_days, roas_all_time, budget, money_spent, conversion_value, bidding_strategy) VALUES
    (@camp2, cur_date,
      ROUND(650 + RAND() * 200, 2),
      ROUND(700 + RAND() * 100, 2),
      200.00,
      ROUND((170 + RAND() * 60) * day_factor, 2),
      ROUND((1200 + RAND() * 500) * day_factor, 2),
      'Docelowy ROAS | docelowy ROAS: 600%');

    -- PMAX | Walentynki 2026 (sezonowa, wysoki wydatek w lutym)
    INSERT INTO campaigns_history (campaign_id, date_add, roas_30_days, roas_all_time, budget, money_spent, conversion_value, bidding_strategy) VALUES
    (@camp3, cur_date,
      ROUND(350 + RAND() * 200 + IF(cur_date >= '2026-02-01', 100, 0), 2),
      ROUND(380 + RAND() * 120, 2),
      ROUND(IF(cur_date >= '2026-02-01', 250, 80), 2),
      ROUND((IF(cur_date >= '2026-02-01', 200, 60) + RAND() * 50) * day_factor, 2),
      ROUND((IF(cur_date >= '2026-02-01', 800, 200) + RAND() * 400) * day_factor, 2),
      'Maksymalizacja wartosci konwersji');

    -- Shopping | Wszystkie produkty (umiarkowany ROAS, duży budżet)
    INSERT INTO campaigns_history (campaign_id, date_add, roas_30_days, roas_all_time, budget, money_spent, conversion_value, bidding_strategy) VALUES
    (@camp4, cur_date,
      ROUND(300 + RAND() * 100, 2),
      ROUND(350 + RAND() * 60, 2),
      100.00,
      ROUND((85 + RAND() * 30) * day_factor, 2),
      ROUND((280 + RAND() * 120) * day_factor, 2),
      'Docelowy ROAS | docelowy ROAS: 300%');

    -- Shopping | Prezenty do 50 zł (niski CPC, dobry ROAS)
    INSERT INTO campaigns_history (campaign_id, date_add, roas_30_days, roas_all_time, budget, money_spent, conversion_value, bidding_strategy) VALUES
    (@camp5, cur_date,
      ROUND(380 + RAND() * 120, 2),
      ROUND(400 + RAND() * 80, 2),
      50.00,
      ROUND((40 + RAND() * 15) * day_factor, 2),
      ROUND((170 + RAND() * 80) * day_factor, 2),
      'Docelowy ROAS | docelowy ROAS: 350%');

    -- Shopping | Prezenty premium (niski ROAS, wysoki AOV)
    INSERT INTO campaigns_history (campaign_id, date_add, roas_30_days, roas_all_time, budget, money_spent, conversion_value, bidding_strategy) VALUES
    (@camp6, cur_date,
      ROUND(200 + RAND() * 100, 2),
      ROUND(250 + RAND() * 80, 2),
      80.00,
      ROUND((65 + RAND() * 25) * day_factor, 2),
      ROUND((150 + RAND() * 100) * day_factor, 2),
      'Maksymalizacja wartosci konwersji');

    -- PMAX | Nowości (nowa kampania, niski ROAS na start)
    INSERT INTO campaigns_history (campaign_id, date_add, roas_30_days, roas_all_time, budget, money_spent, conversion_value, bidding_strategy) VALUES
    (@camp7, cur_date,
      ROUND(180 + RAND() * 100 + i * 3, 2),
      ROUND(200 + RAND() * 80, 2),
      60.00,
      ROUND((50 + RAND() * 20) * day_factor, 2),
      ROUND((100 + RAND() * 80 + i * 5) * day_factor, 2),
      'Maksymalizacja liczby konwersji');

    -- Shopping | Bestsellery high ROAS (najlepsza kampania)
    INSERT INTO campaigns_history (campaign_id, date_add, roas_30_days, roas_all_time, budget, money_spent, conversion_value, bidding_strategy) VALUES
    (@camp8, cur_date,
      ROUND(800 + RAND() * 300, 2),
      ROUND(850 + RAND() * 150, 2),
      120.00,
      ROUND((100 + RAND() * 35) * day_factor, 2),
      ROUND((900 + RAND() * 400) * day_factor, 2),
      'Docelowy ROAS | docelowy ROAS: 700%');

    SET i = i + 1;
  END WHILE;
END//
DELIMITER ;

CALL generate_campaign_history();
DROP PROCEDURE IF EXISTS generate_campaign_history;


-- ============================================================
-- 3. PRODUKTY (25 produktów - realistyczne nazwy sklepu z prezentami)
-- ============================================================

-- Idempotencja: usuń poprzedni zestaw danych demo produktów przed ponownym wstawieniem
DELETE pt
FROM products_temp pt
JOIN products p ON p.id = pt.product_id
WHERE p.client_id = 2
  AND p.offer_id IN (
    'shopify_PL_8901001','shopify_PL_8901002','shopify_PL_8901003','shopify_PL_8901004','shopify_PL_8901005',
    'shopify_PL_8901006','shopify_PL_8901007','shopify_PL_8901008','shopify_PL_8901009','shopify_PL_8901010',
    'shopify_PL_8901011','shopify_PL_8901012','shopify_PL_8901013','shopify_PL_8901014','shopify_PL_8901015',
    'shopify_PL_8901016','shopify_PL_8901017','shopify_PL_8901018','shopify_PL_8901019','shopify_PL_8901020',
    'shopify_PL_8901021','shopify_PL_8901022','shopify_PL_8901023','shopify_PL_8901024','shopify_PL_8901025'
  );

DELETE pd
FROM products_data pd
JOIN products p ON p.id = pd.product_id
WHERE p.client_id = 2
  AND p.offer_id IN (
    'shopify_PL_8901001','shopify_PL_8901002','shopify_PL_8901003','shopify_PL_8901004','shopify_PL_8901005',
    'shopify_PL_8901006','shopify_PL_8901007','shopify_PL_8901008','shopify_PL_8901009','shopify_PL_8901010',
    'shopify_PL_8901011','shopify_PL_8901012','shopify_PL_8901013','shopify_PL_8901014','shopify_PL_8901015',
    'shopify_PL_8901016','shopify_PL_8901017','shopify_PL_8901018','shopify_PL_8901019','shopify_PL_8901020',
    'shopify_PL_8901021','shopify_PL_8901022','shopify_PL_8901023','shopify_PL_8901024','shopify_PL_8901025'
  );

DELETE ph
FROM products_history ph
JOIN products p ON p.id = ph.product_id
WHERE p.client_id = 2
  AND p.offer_id IN (
    'shopify_PL_8901001','shopify_PL_8901002','shopify_PL_8901003','shopify_PL_8901004','shopify_PL_8901005',
    'shopify_PL_8901006','shopify_PL_8901007','shopify_PL_8901008','shopify_PL_8901009','shopify_PL_8901010',
    'shopify_PL_8901011','shopify_PL_8901012','shopify_PL_8901013','shopify_PL_8901014','shopify_PL_8901015',
    'shopify_PL_8901016','shopify_PL_8901017','shopify_PL_8901018','shopify_PL_8901019','shopify_PL_8901020',
    'shopify_PL_8901021','shopify_PL_8901022','shopify_PL_8901023','shopify_PL_8901024','shopify_PL_8901025'
  );

DELETE FROM products
WHERE client_id = 2
  AND offer_id IN (
    'shopify_PL_8901001','shopify_PL_8901002','shopify_PL_8901003','shopify_PL_8901004','shopify_PL_8901005',
    'shopify_PL_8901006','shopify_PL_8901007','shopify_PL_8901008','shopify_PL_8901009','shopify_PL_8901010',
    'shopify_PL_8901011','shopify_PL_8901012','shopify_PL_8901013','shopify_PL_8901014','shopify_PL_8901015',
    'shopify_PL_8901016','shopify_PL_8901017','shopify_PL_8901018','shopify_PL_8901019','shopify_PL_8901020',
    'shopify_PL_8901021','shopify_PL_8901022','shopify_PL_8901023','shopify_PL_8901024','shopify_PL_8901025'
  );

INSERT INTO `products` (`client_id`, `offer_id`, `name`) VALUES
(2, 'shopify_PL_8901001', 'Kubek personalizowany ze zdjęciem - Biały 330ml'),
(2, 'shopify_PL_8901002', 'Poduszka z własnym nadrukiem 40x40cm'),
(2, 'shopify_PL_8901003', 'Brelok LED z grawerem - Serce'),
(2, 'shopify_PL_8901004', 'Ramka na zdjęcie z dedykacją - Drewniana A4'),
(2, 'shopify_PL_8901005', 'Puzzle ze zdjęciem 500 elementów'),
(2, 'shopify_PL_8901006', 'Koszulka z nadrukiem - Dla Najlepszego Taty'),
(2, 'shopify_PL_8901007', 'Skarpetki personalizowane - Zestaw 3 par'),
(2, 'shopify_PL_8901008', 'Kubek magiczny zmieniający kolor ze zdjęciem'),
(2, 'shopify_PL_8901009', 'Plakat personalizowany - Mapa Gwiazd A3'),
(2, 'shopify_PL_8901010', 'Biżuteria - Naszyjnik z grawerem Serce'),
(2, 'shopify_PL_8901011', 'Etui na telefon z własnym zdjęciem'),
(2, 'shopify_PL_8901012', 'Torba bawełniana z nadrukiem'),
(2, 'shopify_PL_8901013', 'Kalendarz ze zdjęciami 2026 - Ścienny A3'),
(2, 'shopify_PL_8901014', 'Podkładka pod mysz z własnym zdjęciem'),
(2, 'shopify_PL_8901015', 'Zestaw upominkowy - Kubek + Podkładka + Brelok'),
(2, 'shopify_PL_8901016', 'Obraz na płótnie Canvas 60x40cm ze zdjęciem'),
(2, 'shopify_PL_8901017', 'Otwieracz do butelek z grawerem'),
(2, 'shopify_PL_8901018', 'Fotokolaż na płótnie 50x70cm'),
(2, 'shopify_PL_8901019', 'Koc z nadrukiem polarowy 150x200cm'),
(2, 'shopify_PL_8901020', 'Piersiówka z grawerem 200ml'),
(2, 'shopify_PL_8901021', 'Zegar ścienny ze zdjęciem - Okrągły 30cm'),
(2, 'shopify_PL_8901022', 'Ręcznik z haftem imienia 70x140cm'),
(2, 'shopify_PL_8901023', 'Walentynkowy zestaw - Kubek + Czekolada + Kartka'),
(2, 'shopify_PL_8901024', 'Magnes na lodówkę z własnym zdjęciem'),
(2, 'shopify_PL_8901025', 'Szkatułka drewniana z grawerem');

-- ============================================================
-- 4. HISTORIA PRODUKTÓW (30 dni dziennych danych)
-- ============================================================

DELIMITER //
DROP PROCEDURE IF EXISTS generate_product_history//
CREATE PROCEDURE generate_product_history()
BEGIN
  DECLARE i INT DEFAULT 0;
  DECLARE j INT DEFAULT 1;
  DECLARE cur_date DATE;
  DECLARE prod_id INT;
  DECLARE base_imp INT;
  DECLARE base_clicks INT;
  DECLARE base_cost DECIMAL(10,2);
  DECLARE base_conv INT;
  DECLARE base_conv_val DECIMAL(10,2);
  DECLARE day_imp INT;
  DECLARE day_clicks INT;
  DECLARE day_cost DECIMAL(10,2);
  DECLARE day_conv INT;
  DECLARE day_conv_val DECIMAL(10,2);
  DECLARE day_ctr DECIMAL(6,4);
  DECLARE day_factor FLOAT;
  DECLARE product_count INT;

  SET product_count = 25;

  -- Dla każdego produktu
  SET j = 1;
  WHILE j <= product_count DO
    -- Pobierz ID produktu
    SET prod_id = (SELECT id FROM products WHERE client_id = 2 AND offer_id = CONCAT('shopify_PL_890100', j) LIMIT 1);
    IF prod_id IS NULL AND j >= 10 THEN
      SET prod_id = (SELECT id FROM products WHERE client_id = 2 AND offer_id = CONCAT('shopify_PL_89010', j) LIMIT 1);
    END IF;

    -- Bazowe metryki różne per produkt (symulacja różnej popularności)
    CASE j
      WHEN 1 THEN SET base_imp = 850, base_clicks = 45, base_cost = 12.50, base_conv = 3, base_conv_val = 89.70;    -- Kubek - bestseller
      WHEN 2 THEN SET base_imp = 620, base_clicks = 32, base_cost = 9.80, base_conv = 2, base_conv_val = 79.80;     -- Poduszka
      WHEN 3 THEN SET base_imp = 1200, base_clicks = 68, base_cost = 15.20, base_conv = 5, base_conv_val = 74.75;   -- Brelok LED - top impressions
      WHEN 4 THEN SET base_imp = 380, base_clicks = 18, base_cost = 7.20, base_conv = 1, base_conv_val = 59.90;     -- Ramka
      WHEN 5 THEN SET base_imp = 520, base_clicks = 28, base_cost = 11.00, base_conv = 2, base_conv_val = 99.80;    -- Puzzle
      WHEN 6 THEN SET base_imp = 780, base_clicks = 42, base_cost = 13.50, base_conv = 3, base_conv_val = 89.70;    -- Koszulka
      WHEN 7 THEN SET base_imp = 450, base_clicks = 22, base_cost = 6.80, base_conv = 2, base_conv_val = 49.90;     -- Skarpetki
      WHEN 8 THEN SET base_imp = 680, base_clicks = 38, base_cost = 10.50, base_conv = 2, base_conv_val = 69.90;    -- Kubek magiczny
      WHEN 9 THEN SET base_imp = 920, base_clicks = 55, base_cost = 18.00, base_conv = 4, base_conv_val = 159.60;   -- Plakat mapa gwiazd - wysoki AOV
      WHEN 10 THEN SET base_imp = 1100, base_clicks = 72, base_cost = 22.00, base_conv = 5, base_conv_val = 349.50; -- Naszyjnik - top conversion value
      WHEN 11 THEN SET base_imp = 550, base_clicks = 30, base_cost = 8.50, base_conv = 1, base_conv_val = 39.90;    -- Etui
      WHEN 12 THEN SET base_imp = 320, base_clicks = 14, base_cost = 4.20, base_conv = 1, base_conv_val = 29.90;    -- Torba
      WHEN 13 THEN SET base_imp = 280, base_clicks = 12, base_cost = 5.00, base_conv = 0, base_conv_val = 0.00;     -- Kalendarz - słaby (po sezonie)
      WHEN 14 THEN SET base_imp = 180, base_clicks = 8, base_cost = 2.50, base_conv = 0, base_conv_val = 0.00;      -- Podkładka - zombie
      WHEN 15 THEN SET base_imp = 740, base_clicks = 40, base_cost = 14.00, base_conv = 3, base_conv_val = 179.70;  -- Zestaw upominkowy
      WHEN 16 THEN SET base_imp = 480, base_clicks = 25, base_cost = 16.00, base_conv = 1, base_conv_val = 149.00;  -- Canvas
      WHEN 17 THEN SET base_imp = 350, base_clicks = 18, base_cost = 5.50, base_conv = 1, base_conv_val = 34.90;    -- Otwieracz
      WHEN 18 THEN SET base_imp = 410, base_clicks = 22, base_cost = 14.00, base_conv = 1, base_conv_val = 189.00;  -- Fotokolaż
      WHEN 19 THEN SET base_imp = 290, base_clicks = 15, base_cost = 9.00, base_conv = 1, base_conv_val = 119.00;   -- Koc
      WHEN 20 THEN SET base_imp = 420, base_clicks = 24, base_cost = 7.00, base_conv = 1, base_conv_val = 69.90;    -- Piersiówka
      WHEN 21 THEN SET base_imp = 260, base_clicks = 11, base_cost = 4.50, base_conv = 0, base_conv_val = 0.00;     -- Zegar - słaby
      WHEN 22 THEN SET base_imp = 340, base_clicks = 16, base_cost = 6.00, base_conv = 1, base_conv_val = 59.90;    -- Ręcznik
      WHEN 23 THEN SET base_imp = 1500, base_clicks = 95, base_cost = 28.00, base_conv = 8, base_conv_val = 319.20; -- Walentynkowy zestaw - HIT
      WHEN 24 THEN SET base_imp = 150, base_clicks = 6, base_cost = 1.80, base_conv = 0, base_conv_val = 0.00;      -- Magnes - zombie
      WHEN 25 THEN SET base_imp = 380, base_clicks = 20, base_cost = 8.00, base_conv = 1, base_conv_val = 89.90;    -- Szkatułka
      ELSE SET base_imp = 300, base_clicks = 15, base_cost = 5.00, base_conv = 1, base_conv_val = 50.00;
    END CASE;

    -- 30 dni historii
    SET i = 0;
    WHILE i < 30 DO
      SET cur_date = DATE_SUB('2026-02-14', INTERVAL i DAY);

      SET day_factor = CASE DAYOFWEEK(cur_date)
        WHEN 1 THEN 1.25
        WHEN 7 THEN 1.35
        WHEN 6 THEN 1.1
        ELSE 1.0
      END;

      -- Walentynki boost (szczególnie produkty walentynkowe: j=23, j=10, j=9)
      IF cur_date BETWEEN '2026-02-07' AND '2026-02-14' THEN
        IF j IN (23, 10, 9, 3, 1) THEN
          SET day_factor = day_factor * 2.0;
        ELSE
          SET day_factor = day_factor * 1.3;
        END IF;
      END IF;

      SET day_imp = ROUND(base_imp * day_factor * (0.8 + RAND() * 0.4));
      SET day_clicks = ROUND(base_clicks * day_factor * (0.7 + RAND() * 0.6));
      SET day_cost = ROUND(base_cost * day_factor * (0.8 + RAND() * 0.4), 2);
      -- Konwersje: losowe z prawdopodobieństwem bazowym
      SET day_conv = FLOOR(base_conv * day_factor * (0.3 + RAND() * 1.4));
      SET day_conv_val = ROUND(IF(day_conv > 0, day_conv * (base_conv_val / GREATEST(base_conv, 1)) * (0.9 + RAND() * 0.2), 0), 2);
      SET day_ctr = IF(day_imp > 0, ROUND(day_clicks / day_imp, 4) * 100, 0);

      IF prod_id IS NOT NULL THEN
        INSERT INTO products_history (product_id, date_add, impressions, clicks, ctr, cost, conversions, conversions_value, updated) VALUES
        (prod_id, cur_date, day_imp, day_clicks, day_ctr, day_cost, day_conv, day_conv_val, 0);
      END IF;

      SET i = i + 1;
    END WHILE;

    SET j = j + 1;
  END WHILE;
END//
DELIMITER ;

CALL generate_product_history();
DROP PROCEDURE IF EXISTS generate_product_history;


-- ============================================================
-- 5. PRODUCTS_TEMP (zagregowane dane - jak po cron_products)
-- ============================================================

-- Idempotencja: wyczyść bieżące agregaty klienta przed ponownym przeliczeniem
DELETE pt
FROM products_temp pt
JOIN products p ON p.id = pt.product_id
WHERE p.client_id = 2;

INSERT INTO products_temp (product_id, name, impressions, impressions_30, clicks, clicks_30, ctr, cost, conversions, conversions_value, cpc, roas)
SELECT
  p.id,
  p.name,
  COALESCE(SUM(ph.impressions), 0),
  COALESCE(SUM(ph.impressions), 0),
  COALESCE(SUM(ph.clicks), 0),
  COALESCE(SUM(ph.clicks), 0),
  CASE WHEN SUM(ph.impressions) > 0 THEN ROUND(SUM(ph.clicks) / SUM(ph.impressions) * 100, 2) ELSE 0 END,
  COALESCE(SUM(ph.cost), 0),
  COALESCE(SUM(ph.conversions), 0),
  COALESCE(SUM(ph.conversions_value), 0),
  CASE WHEN SUM(ph.clicks) > 0 THEN ROUND(SUM(ph.cost) / SUM(ph.clicks), 6) ELSE 0 END,
  CASE WHEN SUM(ph.conversions) > 0 AND SUM(ph.cost) > 0 THEN ROUND(SUM(ph.conversions_value) / SUM(ph.cost) * 100, 2) ELSE 0 END
FROM products p
LEFT JOIN products_history ph ON p.id = ph.product_id
WHERE p.client_id = 2
GROUP BY p.id, p.name;


-- ============================================================
-- 6. PRODUCTS_DATA (custom labels)
-- ============================================================

-- Bestsellery (wysoki ROAS + dużo konwersji)
INSERT INTO products_data (product_id, custom_label_4) VALUES
((SELECT id FROM products WHERE offer_id = 'shopify_PL_8901001' AND client_id = 2), 'bestseller'),
((SELECT id FROM products WHERE offer_id = 'shopify_PL_8901003' AND client_id = 2), 'bestseller'),
((SELECT id FROM products WHERE offer_id = 'shopify_PL_8901010' AND client_id = 2), 'bestseller'),
((SELECT id FROM products WHERE offer_id = 'shopify_PL_8901023' AND client_id = 2), 'bestseller');

-- Produkty PLA (w kampaniach Shopping)
INSERT INTO products_data (product_id, custom_label_4) VALUES
((SELECT id FROM products WHERE offer_id = 'shopify_PL_8901005' AND client_id = 2), 'pla'),
((SELECT id FROM products WHERE offer_id = 'shopify_PL_8901006' AND client_id = 2), 'pla'),
((SELECT id FROM products WHERE offer_id = 'shopify_PL_8901015' AND client_id = 2), 'pla');

-- Zombie (bardzo niskie wyświetlenia)
INSERT INTO products_data (product_id, custom_label_4) VALUES
((SELECT id FROM products WHERE offer_id = 'shopify_PL_8901014' AND client_id = 2), 'zombie'),
((SELECT id FROM products WHERE offer_id = 'shopify_PL_8901024' AND client_id = 2), 'zombie');


-- ============================================================
-- 7. MIN ROAS per klient (bestseller threshold)
-- ============================================================

-- Ustaw min ROAS dla wybranych produktów
UPDATE products SET min_roas = 500 WHERE offer_id = 'shopify_PL_8901001' AND client_id = 2;
UPDATE products SET min_roas = 400 WHERE offer_id = 'shopify_PL_8901003' AND client_id = 2;
UPDATE products SET min_roas = 600 WHERE offer_id = 'shopify_PL_8901010' AND client_id = 2;
UPDATE products SET min_roas = 350 WHERE offer_id = 'shopify_PL_8901023' AND client_id = 2;


-- ============================================================
-- GOTOWE!
-- Po wykonaniu tego skryptu:
-- 1. Wejdź na /campaigns → wybierz klienta pomysloweprezenty.pl
--    → zobaczysz 8 kampanii z 30-dniową historią
-- 2. Wejdź na /products → wybierz klienta
--    → zobaczysz 25 produktów z metrykami
-- 3. Kliknij dowolny produkt → zobaczysz historię i wykres
-- ============================================================
