Supabase: Schema, RLS-Policies und Seed-Daten
This commit is contained in:
@@ -0,0 +1,114 @@
|
||||
-- =============================================================
|
||||
-- Seed-Daten: Allergene, Zusatzstoffe, Testgerichte, Beispielwochen
|
||||
-- =============================================================
|
||||
|
||||
-- ---------- Allergene (EU-Kennzeichnung, Buchstaben) ----------
|
||||
insert into public.allergens (code, name, sort) values
|
||||
('A', 'Glutenhaltiges Getreide', 1),
|
||||
('B', 'Krebstiere', 2),
|
||||
('C', 'Eier', 3),
|
||||
('D', 'Fisch', 4),
|
||||
('E', 'Erdnüsse', 5),
|
||||
('F', 'Sojabohnen', 6),
|
||||
('G', 'Milch (einschließlich Laktose)', 7),
|
||||
('H', 'Schalenfrüchte (Nüsse)', 8),
|
||||
('I', 'Sellerie', 9),
|
||||
('J', 'Senf', 10),
|
||||
('K', 'Sesamsamen', 11),
|
||||
('L', 'Schwefeldioxid und Sulfite', 12),
|
||||
('M', 'Lupinen', 13),
|
||||
('N', 'Weichtiere', 14);
|
||||
|
||||
-- ---------- Zusatzstoffe (Ziffern) ----------
|
||||
insert into public.additives (code, name, sort) values
|
||||
('1', 'mit Farbstoff', 1),
|
||||
('2', 'mit Konservierungsstoff', 2),
|
||||
('3', 'mit Antioxidationsmittel', 3),
|
||||
('4', 'mit Geschmacksverstärker', 4),
|
||||
('5', 'geschwefelt', 5),
|
||||
('6', 'geschwärzt', 6),
|
||||
('7', 'gewachst', 7),
|
||||
('8', 'mit Phosphat', 8),
|
||||
('9', 'mit Süßungsmittel(n)', 9),
|
||||
('10', 'enthält eine Phenylalaninquelle', 10),
|
||||
('11', 'koffeinhaltig', 11);
|
||||
|
||||
-- ---------- Testgerichte ----------
|
||||
insert into public.dishes (name, price) values
|
||||
-- Brotzeit
|
||||
('1 Stk. Rindskäsewurst mit Brötchen', 2.30),
|
||||
('Hackfleischbaguette', 3.20),
|
||||
('Knusperhähnchen Wrap', 3.70),
|
||||
('Leberkäse im Brötchen', 2.30),
|
||||
('Chili con Carne mit Brötchen', 3.90),
|
||||
-- Mittagessen
|
||||
('Schnitzel Baguette', 3.50),
|
||||
('Penne mit Grünen Spargel und Garnelenspieße', 5.90),
|
||||
('Bratkartoffel Gemüse Pfanne mit Hähnchenbrust und Dip', 5.90),
|
||||
('Schweinefilet im Speckmantel dazu Rahmsoße und Butterspätzle', 5.90),
|
||||
-- Mittagessen vegetarisch
|
||||
('Penne mit Grünen Spargel, get. Tomaten und Cherrytomaten', 5.30),
|
||||
('Spaghetti mit fruchtiger Tomatensauce und Parmesan', 5.30),
|
||||
('Gebackener Feta mit griechischen Bauernsalat und Baguette', 5.30),
|
||||
('Gemüse-Curry mit Basmatireis', 4.90),
|
||||
-- Suppen
|
||||
('Kartoffelcremesuppe', 1.50),
|
||||
('Gulaschsuppe', 2.50),
|
||||
('Tomatensuppe mit Croutons', 1.80),
|
||||
('Kürbiscremesuppe', 1.80),
|
||||
('Linseneintopf mit Würstchen', 2.20);
|
||||
|
||||
-- ---------- Beispielwoche 13.–17. Juli 2026 (wie Screenshot) ----------
|
||||
with d as (select id, name from public.dishes)
|
||||
insert into public.menu_entries (menu_date, section_key, dish_id)
|
||||
select x.menu_date::date, x.section_key, d.id
|
||||
from (values
|
||||
-- Brotzeit
|
||||
('2026-07-13', 'brotzeit', '1 Stk. Rindskäsewurst mit Brötchen'),
|
||||
('2026-07-14', 'brotzeit', 'Hackfleischbaguette'),
|
||||
('2026-07-15', 'brotzeit', 'Knusperhähnchen Wrap'),
|
||||
('2026-07-16', 'brotzeit', 'Leberkäse im Brötchen'),
|
||||
('2026-07-17', 'brotzeit', 'Chili con Carne mit Brötchen'),
|
||||
-- Mittagessen
|
||||
('2026-07-13', 'mittagessen', 'Schnitzel Baguette'),
|
||||
('2026-07-14', 'mittagessen', 'Penne mit Grünen Spargel und Garnelenspieße'),
|
||||
('2026-07-15', 'mittagessen', 'Bratkartoffel Gemüse Pfanne mit Hähnchenbrust und Dip'),
|
||||
('2026-07-16', 'mittagessen', 'Schweinefilet im Speckmantel dazu Rahmsoße und Butterspätzle'),
|
||||
-- Mittagessen vegetarisch
|
||||
('2026-07-14', 'mittagessen_veg', 'Penne mit Grünen Spargel, get. Tomaten und Cherrytomaten'),
|
||||
('2026-07-15', 'mittagessen_veg', 'Spaghetti mit fruchtiger Tomatensauce und Parmesan'),
|
||||
('2026-07-16', 'mittagessen_veg', 'Gebackener Feta mit griechischen Bauernsalat und Baguette'),
|
||||
-- Suppe
|
||||
('2026-07-13', 'suppe', 'Kartoffelcremesuppe'),
|
||||
('2026-07-14', 'suppe', 'Gulaschsuppe'),
|
||||
('2026-07-15', 'suppe', 'Tomatensuppe mit Croutons'),
|
||||
('2026-07-16', 'suppe', 'Kürbiscremesuppe'),
|
||||
('2026-07-17', 'suppe', 'Linseneintopf mit Würstchen')
|
||||
) as x (menu_date, section_key, name)
|
||||
join d on d.name = x.name;
|
||||
|
||||
-- ---------- Beispielwoche 20.–24. Juli 2026 ("Nächste Woche") ----------
|
||||
with d as (select id, name from public.dishes)
|
||||
insert into public.menu_entries (menu_date, section_key, dish_id)
|
||||
select x.menu_date::date, x.section_key, d.id
|
||||
from (values
|
||||
('2026-07-20', 'brotzeit', 'Leberkäse im Brötchen'),
|
||||
('2026-07-21', 'brotzeit', 'Knusperhähnchen Wrap'),
|
||||
('2026-07-22', 'brotzeit', '1 Stk. Rindskäsewurst mit Brötchen'),
|
||||
('2026-07-23', 'brotzeit', 'Hackfleischbaguette'),
|
||||
('2026-07-24', 'brotzeit', 'Chili con Carne mit Brötchen'),
|
||||
('2026-07-20', 'mittagessen', 'Bratkartoffel Gemüse Pfanne mit Hähnchenbrust und Dip'),
|
||||
('2026-07-21', 'mittagessen', 'Schweinefilet im Speckmantel dazu Rahmsoße und Butterspätzle'),
|
||||
('2026-07-22', 'mittagessen', 'Schnitzel Baguette'),
|
||||
('2026-07-23', 'mittagessen', 'Penne mit Grünen Spargel und Garnelenspieße'),
|
||||
('2026-07-20', 'mittagessen_veg', 'Gemüse-Curry mit Basmatireis'),
|
||||
('2026-07-21', 'mittagessen_veg', 'Spaghetti mit fruchtiger Tomatensauce und Parmesan'),
|
||||
('2026-07-22', 'mittagessen_veg', 'Gebackener Feta mit griechischen Bauernsalat und Baguette'),
|
||||
('2026-07-23', 'mittagessen_veg', 'Penne mit Grünen Spargel, get. Tomaten und Cherrytomaten'),
|
||||
('2026-07-20', 'suppe', 'Gulaschsuppe'),
|
||||
('2026-07-21', 'suppe', 'Kartoffelcremesuppe'),
|
||||
('2026-07-22', 'suppe', 'Linseneintopf mit Würstchen'),
|
||||
('2026-07-23', 'suppe', 'Tomatensuppe mit Croutons'),
|
||||
('2026-07-24', 'suppe', 'Kürbiscremesuppe')
|
||||
) as x (menu_date, section_key, name)
|
||||
join d on d.name = x.name;
|
||||
Reference in New Issue
Block a user