-- seed.sql
-- Beispiel-Daten für Materialien, Drucker und Zuordnungen

INSERT INTO materials
(code, name, short_desc, properties, tg_celsius, nozzle_req, plate_req, extra_req, application, kid_safety, emission)
VALUES
('PLA', 'PLA', 'Biopolymer, leicht druckbar', 'starr; wenig hitze- & UV-beständig', 60, 'Messing', 'PEI / Glas + Klebstift', 'keine', 'Modelle, Deko, Spielzeug', 'safe', 'low'),
('PLA+', 'PLA+', 'zäheres PLA', 'starr; zäher als PLA', 65, 'Messing', 'PEI / Glas', 'keine', 'Haushaltsteile, Deko', 'safe', 'low'),
('PETG', 'PETG', 'zäh, leicht flexibel', 'zäh; chemikalienresistent; mäßig UV-fest', 80, 'Messing', 'PEI / Glas, 60°C+', 'Lüfter 50%', 'Funktionsteile, Halterungen', 'limited', 'low'),
('ABS', 'ABS', 'Technik-Kunststoff', 'hitzefest; neigt zu Warping', 105, 'Messing', 'PEI / ABS-Slurry', 'Gehäuse empfohlen', 'Gehäuseteile, Werkstatt', 'no', 'high'),
('ASA', 'ASA', 'UV-beständig', 'wie ABS aber wetterfest', 105, 'Messing', 'PEI / Klebstift', 'Gehäuse empfohlen', 'Outdoor-Teile', 'no', 'high'),
('TPU95A', 'TPU 95A', 'flexibel, gummiartig', NULL, NULL, 'Messing', 'PEI / Blue Tape', 'langsam drucken', 'Schutzhüllen, Dichtungen', 'limited', 'low'),
('PA', 'PA (Nylon)', 'zäh, abriebfest', 70, 'gehärtet', 'Haftspray / Trockenbox', 'trocken lagern', 'Mechanische Bauteile', 'no', 'high'),
('PA6-CF', 'PA6-CF', 'Nylon mit CF, sehr steif', 70, 'gehärtet / Ruby', 'Haftspray / Trockenbox', 'trocken lagern', 'Robotik, Halterungen', 'no', 'high'),
('PPA-CF', 'PPA-CF', 'Technik-Nylon mit CF', 110, 'gehärtet', 'PEI / Trockenbox', 'Gehäuse + Trockenbox', 'Hochfeste Funktionsteile', 'no', 'high'),
('PC', 'PC (Polycarbonat)', 'sehr fest, hohe Temp.', 145, 'gehärtet', 'PEI / Gehäuse', 'hohe Düsen-/Bett-Temp', 'Transparente/technische Teile', 'no', 'high'),
('Wood-PLA', 'Wood-PLA', 'Holzgefülltes PLA', 60, 'gehärtet', 'PEI / Klebstift', 'keine', 'Deko, Figuren', 'safe', 'low'),
('Metal-PLA', 'Metal-PLA', 'Metallgefülltes PLA', 60, 'gehärtet', 'PEI / Glas', 'keine', 'Deko, Design', 'limited', 'low');

INSERT INTO printers
(name, brand, model_code, max_nozzle_temp, max_bed_temp, chamber, build_volume, notes)
VALUES
('Bambu Lab P2S Combo', 'Bambu Lab', 'P2S', 320, 120, 1, '256x256x256', 'Multi-Material; TPU nur eingeschränkt'),
('Creality K2 Pro Combo', 'Creality', 'K2-Pro-Combo', 300, 120, 1, '350x350x350', 'CFS: TPU/BVOH nicht empfohlen');

-- Zuweisungen für Bambu Lab P2S Combo
INSERT INTO printer_material_support (printer_id, material_id, support_level)
SELECT p.id, m.id, 'full'
FROM printers p
JOIN materials m ON m.code IN ('PLA','PLA+','PETG','ABS','ASA','PLA-CF','Wood-PLA','Metal-PLA','PA6-CF','PPA-CF')
WHERE p.name = 'Bambu Lab P2S Combo';

-- TPU am Bambu nur teilweise
INSERT INTO printer_material_support (printer_id, material_id, support_level, partial_reason)
SELECT p.id, m.id, 'partial', 'nicht über AMS; langsam drucken'
FROM printers p
JOIN materials m ON m.code = 'TPU95A'
WHERE p.name = 'Bambu Lab P2S Combo';

-- Zuweisungen für Creality K2 Pro Combo
INSERT INTO printer_material_support (printer_id, material_id, support_level)
SELECT p.id, m.id, 'full'
FROM printers p
JOIN materials m ON m.code IN ('PLA','PLA+','PETG','ABS','ASA','PLA-CF','PA6-CF','PPA-CF')
WHERE p.name = 'Creality K2 Pro Combo';

-- TPU am Creality: nicht empfohlen
INSERT INTO printer_material_support (printer_id, material_id, support_level, partial_reason)
SELECT p.id, m.id, 'no', 'CFS nicht TPU-fähig'
FROM printers p
JOIN materials m ON m.code = 'TPU95A'
WHERE p.name = 'Creality K2 Pro Combo';
