-- Migration 058 — Fortinet FortiSwitch, Dell PowerSwitch, Huawei CloudEngine/NetEngine
--
-- Fortinet: cdn.blueally.com/avfirewalls/images/fortiswitch (BlueAlly/AVFirewalls CDN).
--   Consistent naming pattern: fortiswitch-{model-lowercase-hyphenated}.png.
--   1024E uses a subdirectory variant. 3032E is .jpg (not .png).
--   All 11 URLs verified HTTP 200 image/png or image/jpeg (2026-04-21).
--
-- Dell: i.dell.com/is/image/DellContent (official Dell CDN, Dynamic Media).
--   Z9332F-ON + S5248F-ON: official .psd?fmt=jpg URLs (served as JPEG).
--   Z9664F-ON: only findable via expresscomputersystems.com Shopify CDN.
--
-- Huawei: Mixed sources.
--   CE16800-X32: model "X32" not confirmed in Huawei lineup (max X16); used general
--     CE16800 series og:image from e.huawei.com. Update if correct model found.
--   CE8850-32CQ: telecomate.com reseller photo.
--   NetEngine 8000 F8: ontolt.com reseller photo.
--   S5731-H48T4XC: official e.huawei.com og:image (S5731-H series).

-- ── Fortinet FortiSwitch ───────────────────────────────────────────────────────

UPDATE switches
SET image_url        = 'https://cdn.blueally.com/avfirewalls/images/fortiswitch/fortiswitch-108f.png',
    product_page_url = COALESCE(product_page_url, 'https://www.fortinet.com/products/switches/fortiswitch-100-series'),
    assets_scraped_at = NOW()
WHERE model = 'FortiSwitch 108F'
  AND vendor_id = (SELECT id FROM vendors WHERE slug = 'fortinet');

UPDATE switches
SET image_url        = 'https://cdn.blueally.com/avfirewalls/images/fortiswitch/fortiswitch-124f.png',
    product_page_url = COALESCE(product_page_url, 'https://www.fortinet.com/products/switches/fortiswitch-100-series'),
    assets_scraped_at = NOW()
WHERE model = 'FortiSwitch 124F'
  AND vendor_id = (SELECT id FROM vendors WHERE slug = 'fortinet');

UPDATE switches
SET image_url        = 'https://cdn.blueally.com/avfirewalls/images/fortiswitch/fortiswitch-124f-poe.png',
    product_page_url = COALESCE(product_page_url, 'https://www.fortinet.com/products/switches/fortiswitch-100-series'),
    assets_scraped_at = NOW()
WHERE model = 'FortiSwitch 124F-POE'
  AND vendor_id = (SELECT id FROM vendors WHERE slug = 'fortinet');

UPDATE switches
SET image_url        = 'https://cdn.blueally.com/avfirewalls/images/fortiswitch/fortiswitch-148f-poe.png',
    product_page_url = COALESCE(product_page_url, 'https://www.fortinet.com/products/switches/fortiswitch-100-series'),
    assets_scraped_at = NOW()
WHERE model = 'FortiSwitch 148F-POE'
  AND vendor_id = (SELECT id FROM vendors WHERE slug = 'fortinet');

UPDATE switches
SET image_url        = 'https://cdn.blueally.com/avfirewalls/images/fortiswitch/fortiswitch-424e.png',
    product_page_url = COALESCE(product_page_url, 'https://www.fortinet.com/products/switches/fortiswitch-400-series'),
    assets_scraped_at = NOW()
WHERE model = 'FortiSwitch 424E'
  AND vendor_id = (SELECT id FROM vendors WHERE slug = 'fortinet');

UPDATE switches
SET image_url        = 'https://cdn.blueally.com/avfirewalls/images/fortiswitch/fortiswitch-448e-fpoe.png',
    product_page_url = COALESCE(product_page_url, 'https://www.fortinet.com/products/switches/fortiswitch-400-series'),
    assets_scraped_at = NOW()
WHERE model = 'FortiSwitch 448E-FPOE'
  AND vendor_id = (SELECT id FROM vendors WHERE slug = 'fortinet');

UPDATE switches
SET image_url        = 'https://cdn.blueally.com/avfirewalls/images/fortiswitch/fortiswitch-524d.png',
    product_page_url = COALESCE(product_page_url, 'https://www.fortinet.com/products/switches/fortiswitch-500-series'),
    assets_scraped_at = NOW()
WHERE model = 'FortiSwitch 524D'
  AND vendor_id = (SELECT id FROM vendors WHERE slug = 'fortinet');

UPDATE switches
SET image_url        = 'https://cdn.blueally.com/avfirewalls/images/fortiswitch/fortiswitch-548d-fpoe.png',
    product_page_url = COALESCE(product_page_url, 'https://www.fortinet.com/products/switches/fortiswitch-500-series'),
    assets_scraped_at = NOW()
WHERE model = 'FortiSwitch 548D-FPOE'
  AND vendor_id = (SELECT id FROM vendors WHERE slug = 'fortinet');

-- 1024E uses subdirectory path variant
UPDATE switches
SET image_url        = 'https://cdn.blueally.com/avfirewalls/images/fortiswitch/1024e/1024efront.png',
    product_page_url = COALESCE(product_page_url, 'https://www.fortinet.com/products/switches/fortiswitch-1000-series'),
    assets_scraped_at = NOW()
WHERE model = 'FortiSwitch 1024E'
  AND vendor_id = (SELECT id FROM vendors WHERE slug = 'fortinet');

UPDATE switches
SET image_url        = 'https://cdn.blueally.com/avfirewalls/images/fortiswitch/fortiswitch-1048e.png',
    product_page_url = COALESCE(product_page_url, 'https://www.fortinet.com/products/switches/fortiswitch-1000-series'),
    assets_scraped_at = NOW()
WHERE model = 'FortiSwitch 1048E'
  AND vendor_id = (SELECT id FROM vendors WHERE slug = 'fortinet');

-- 3032E is JPEG (not PNG like other FortiSwitch models)
UPDATE switches
SET image_url        = 'https://cdn.blueally.com/avfirewalls/images/fortiswitch/fs3032e.jpg',
    product_page_url = COALESCE(product_page_url, 'https://www.fortinet.com/products/switches/fortiswitch-3000-series'),
    assets_scraped_at = NOW()
WHERE model = 'FortiSwitch 3032E'
  AND vendor_id = (SELECT id FROM vendors WHERE slug = 'fortinet');

-- ── Dell Technologies PowerSwitch ─────────────────────────────────────────────

-- Z9664F-ON — 64×400G QSFP-DD data center spine
UPDATE switches
SET image_url        = 'https://expresscomputersystems.com/cdn/shop/files/z9664f-on-main_400x.jpg?v=1725038963',
    product_page_url = COALESCE(product_page_url, 'https://www.dell.com/en-us/shop/networking/ar/4027'),
    assets_scraped_at = NOW()
WHERE model = 'PowerSwitch Z9664F-ON'
  AND vendor_id = (SELECT id FROM vendors WHERE slug = 'dell');

-- Z9332F-ON — 32×400G QSFP-DD spine (official Dell CDN)
UPDATE switches
SET image_url        = 'https://i.dell.com/is/image/DellContent//content/dam/ss2/product-images/dell-enterprise-products/networking-products/dell/z-series/z9332f/enterprise-networking-z-series-z9332f-on-ff-relativesize-500-ng.psd?fmt=jpg',
    product_page_url = COALESCE(product_page_url, 'https://www.dell.com/en-us/shop/networking/ar/4027'),
    assets_scraped_at = NOW()
WHERE model = 'PowerSwitch Z9332F-ON'
  AND vendor_id = (SELECT id FROM vendors WHERE slug = 'dell');

-- S5248F-ON — 48×25G + 2×100G top-of-rack (official Dell CDN)
UPDATE switches
SET image_url        = 'https://i.dell.com/is/image/DellContent/content/dam/ss2/product-images/dell-enterprise-products/networking-products/s5248f-on/mg/powerswitch-s5248f-on-black-gallery-1.psd?fmt=jpg',
    product_page_url = COALESCE(product_page_url, 'https://www.dell.com/en-us/shop/networking/ar/4027'),
    assets_scraped_at = NOW()
WHERE model = 'PowerSwitch S5248F-ON'
  AND vendor_id = (SELECT id FROM vendors WHERE slug = 'dell');

-- ── Huawei ─────────────────────────────────────────────────────────────────────

-- CloudEngine 16800-X32 — modular core DC switch (general CE16800 series og:image;
--   "X32" variant unconfirmed in current Huawei lineup, max known is X16)
UPDATE switches
SET image_url        = 'https://e.huawei.com/marketingcloud/pep/asset/2000000101/images/products/switches/data-center-switches/ce16800/ce16800-overview-pc.png',
    product_page_url = COALESCE(product_page_url, 'https://e.huawei.com/en/products/switches/data-center-switches/ce16800'),
    assets_scraped_at = NOW()
WHERE model = 'CloudEngine 16800-X32'
  AND vendor_id = (SELECT id FROM vendors WHERE slug = 'huawei');

-- CloudEngine 8850-32CQ — 32×100G QSFP28 data center ToR
UPDATE switches
SET image_url        = 'https://www.telecomate.com/wp-content/uploads/2022/06/CE8850-32CQ-EI-1.jpg?v=1719220240',
    product_page_url = COALESCE(product_page_url, 'https://e.huawei.com/en/products/switches/data-center-switches/ce8850'),
    assets_scraped_at = NOW()
WHERE model = 'CloudEngine 8850-32CQ'
  AND vendor_id = (SELECT id FROM vendors WHERE slug = 'huawei');

-- NetEngine 8000 F8 — high-end SP core router
UPDATE switches
SET image_url        = 'https://ontolt.com/wp-content/uploads/2025/07/how-to-custom-NE8000-F8-Huawei-china-supplier-1-700x700.jpg',
    product_page_url = COALESCE(product_page_url, 'https://e.huawei.com/en/products/routers/ne8000'),
    assets_scraped_at = NOW()
WHERE model = 'NetEngine 8000 F8'
  AND vendor_id = (SELECT id FROM vendors WHERE slug = 'huawei');

-- S5731-H48T4XC — 48×1G + 4×10G campus switch (official e.huawei.com og:image)
UPDATE switches
SET image_url        = 'https://e.huawei.com/marketingcloud/pep/asset/20000001/s5731h/CloudEngine-S5731-H-v2.png',
    product_page_url = COALESCE(product_page_url, 'https://e.huawei.com/en/products/switches/campus-switches/s5731-h'),
    assets_scraped_at = NOW()
WHERE model = 'S5731-H48T4XC'
  AND vendor_id = (SELECT id FROM vendors WHERE slug = 'huawei');
