-- ============================================================
-- HeardCheck — Food Items Library
-- A shared library of common kitchen items + custom per-restaurant items
-- Run: mysql -u heardcheck -p heardcheck_db < food_library.sql
-- ============================================================

USE heardcheck_db;

CREATE TABLE food_library (
  id              INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
  restaurant_id   INT UNSIGNED DEFAULT NULL,        -- NULL = global/shared item, non-NULL = custom per restaurant
  name            VARCHAR(255) NOT NULL,
  name_es         VARCHAR(255) DEFAULT NULL,         -- Spanish translation
  category        VARCHAR(100) NOT NULL,
  category_es     VARCHAR(100) DEFAULT NULL,
  default_unit    VARCHAR(50) DEFAULT NULL,
  is_active       TINYINT(1) NOT NULL DEFAULT 1,
  created_at      DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,

  INDEX idx_food_library_restaurant (restaurant_id),
  INDEX idx_food_library_category (category),
  INDEX idx_food_library_name (name),

  FOREIGN KEY (restaurant_id) REFERENCES restaurants(id) ON DELETE CASCADE
) ENGINE=InnoDB;

-- ============================================================
-- SEED DATA — Common kitchen items by category
-- ============================================================

-- ── PROTEINS ────────────────────────────────────────────────
INSERT INTO food_library (name, name_es, category, category_es, default_unit) VALUES
('Chicken Breast', 'Pechuga de Pollo', 'Proteins', 'Proteínas', 'lbs'),
('Chicken Thigh', 'Muslo de Pollo', 'Proteins', 'Proteínas', 'lbs'),
('Chicken Wings', 'Alitas de Pollo', 'Proteins', 'Proteínas', 'lbs'),
('Chicken Tenders', 'Tiras de Pollo', 'Proteins', 'Proteínas', 'lbs'),
('Ground Beef', 'Carne Molida', 'Proteins', 'Proteínas', 'lbs'),
('Ribeye Steak', 'Ribeye', 'Proteins', 'Proteínas', 'each'),
('NY Strip', 'NY Strip', 'Proteins', 'Proteínas', 'each'),
('Filet Mignon', 'Filete Mignon', 'Proteins', 'Proteínas', 'each'),
('Sirloin', 'Sirloin', 'Proteins', 'Proteínas', 'lbs'),
('Prime Rib', 'Costilla Prime', 'Proteins', 'Proteínas', 'lbs'),
('Pulled Pork', 'Cerdo Deshebrado', 'Proteins', 'Proteínas', 'lbs'),
('Pork Chops', 'Chuletas de Cerdo', 'Proteins', 'Proteínas', 'each'),
('Baby Back Ribs', 'Costillas Baby Back', 'Proteins', 'Proteínas', 'racks'),
('Bacon', 'Tocino', 'Proteins', 'Proteínas', 'lbs'),
('Sausage Links', 'Salchichas', 'Proteins', 'Proteínas', 'each'),
('Ground Turkey', 'Pavo Molido', 'Proteins', 'Proteínas', 'lbs'),
('Salmon Fillet', 'Filete de Salmón', 'Proteins', 'Proteínas', 'each'),
('Shrimp', 'Camarones', 'Proteins', 'Proteínas', 'lbs'),
('Tilapia', 'Tilapia', 'Proteins', 'Proteínas', 'each'),
('Catfish', 'Bagre', 'Proteins', 'Proteínas', 'each'),
('Crab Cakes', 'Tortas de Cangrejo', 'Proteins', 'Proteínas', 'each'),
('Lobster Tail', 'Cola de Langosta', 'Proteins', 'Proteínas', 'each'),

-- ── PRODUCE ─────────────────────────────────────────────────
('Lettuce (Iceberg)', 'Lechuga Iceberg', 'Produce', 'Verduras', 'heads'),
('Lettuce (Romaine)', 'Lechuga Romana', 'Produce', 'Verduras', 'heads'),
('Mixed Greens', 'Mezcla de Verdes', 'Produce', 'Verduras', 'lbs'),
('Spinach', 'Espinaca', 'Produce', 'Verduras', 'lbs'),
('Tomatoes', 'Tomates', 'Produce', 'Verduras', 'each'),
('Cherry Tomatoes', 'Tomates Cherry', 'Produce', 'Verduras', 'pints'),
('Onions (Yellow)', 'Cebollas Amarillas', 'Produce', 'Verduras', 'each'),
('Onions (Red)', 'Cebollas Rojas', 'Produce', 'Verduras', 'each'),
('Green Onions', 'Cebollín', 'Produce', 'Verduras', 'bunches'),
('Bell Peppers (Green)', 'Pimientos Verdes', 'Produce', 'Verduras', 'each'),
('Bell Peppers (Red)', 'Pimientos Rojos', 'Produce', 'Verduras', 'each'),
('Jalapeños', 'Jalapeños', 'Produce', 'Verduras', 'each'),
('Mushrooms', 'Champiñones', 'Produce', 'Verduras', 'lbs'),
('Broccoli', 'Brócoli', 'Produce', 'Verduras', 'lbs'),
('Carrots', 'Zanahorias', 'Produce', 'Verduras', 'lbs'),
('Celery', 'Apio', 'Produce', 'Verduras', 'bunches'),
('Cucumbers', 'Pepinos', 'Produce', 'Verduras', 'each'),
('Corn on the Cob', 'Elote', 'Produce', 'Verduras', 'each'),
('Green Beans', 'Ejotes', 'Produce', 'Verduras', 'lbs'),
('Avocados', 'Aguacates', 'Produce', 'Verduras', 'each'),
('Garlic', 'Ajo', 'Produce', 'Verduras', 'heads'),
('Ginger', 'Jengibre', 'Produce', 'Verduras', 'each'),
('Lemons', 'Limones Amarillos', 'Produce', 'Verduras', 'each'),
('Limes', 'Limones', 'Produce', 'Verduras', 'each'),
('Cilantro', 'Cilantro', 'Produce', 'Verduras', 'bunches'),
('Parsley', 'Perejil', 'Produce', 'Verduras', 'bunches'),
('Potatoes (Russet)', 'Papas Russet', 'Produce', 'Verduras', 'lbs'),
('Potatoes (Sweet)', 'Camotes', 'Produce', 'Verduras', 'lbs'),
('Coleslaw Mix', 'Mezcla para Ensalada', 'Produce', 'Verduras', 'lbs'),

-- ── DAIRY & CHEESE ──────────────────────────────────────────
('Butter', 'Mantequilla', 'Dairy', 'Lácteos', 'lbs'),
('Heavy Cream', 'Crema Espesa', 'Dairy', 'Lácteos', 'qt'),
('Sour Cream', 'Crema Agria', 'Dairy', 'Lácteos', 'oz'),
('Milk (Whole)', 'Leche Entera', 'Dairy', 'Lácteos', 'gal'),
('Eggs', 'Huevos', 'Dairy', 'Lácteos', 'dozen'),
('Cheddar Cheese (Shredded)', 'Queso Cheddar Rallado', 'Dairy', 'Lácteos', 'lbs'),
('Mozzarella Cheese', 'Queso Mozzarella', 'Dairy', 'Lácteos', 'lbs'),
('Pepper Jack Cheese', 'Queso Pepper Jack', 'Dairy', 'Lácteos', 'lbs'),
('American Cheese', 'Queso Americano', 'Dairy', 'Lácteos', 'slices'),
('Parmesan Cheese', 'Queso Parmesano', 'Dairy', 'Lácteos', 'oz'),
('Blue Cheese Crumbles', 'Queso Azul Desmenuzado', 'Dairy', 'Lácteos', 'oz'),
('Cream Cheese', 'Queso Crema', 'Dairy', 'Lácteos', 'oz'),

-- ── DRY GOODS & STARCHES ────────────────────────────────────
('All-Purpose Flour', 'Harina de Uso General', 'Dry Goods', 'Productos Secos', 'lbs'),
('Breadcrumbs (Panko)', 'Pan Molido Panko', 'Dry Goods', 'Productos Secos', 'lbs'),
('Rice (White)', 'Arroz Blanco', 'Dry Goods', 'Productos Secos', 'lbs'),
('Rice (Brown)', 'Arroz Integral', 'Dry Goods', 'Productos Secos', 'lbs'),
('Pasta (Penne)', 'Pasta Penne', 'Dry Goods', 'Productos Secos', 'lbs'),
('Pasta (Spaghetti)', 'Espagueti', 'Dry Goods', 'Productos Secos', 'lbs'),
('Baked Potato', 'Papa al Horno', 'Dry Goods', 'Productos Secos', 'each'),
('French Fries', 'Papas Fritas', 'Dry Goods', 'Productos Secos', 'lbs'),
('Onion Rings', 'Aros de Cebolla', 'Dry Goods', 'Productos Secos', 'lbs'),
('Tortillas (Flour)', 'Tortillas de Harina', 'Dry Goods', 'Productos Secos', 'each'),
('Tortillas (Corn)', 'Tortillas de Maíz', 'Dry Goods', 'Productos Secos', 'each'),
('Burger Buns', 'Pan para Hamburguesa', 'Dry Goods', 'Productos Secos', 'each'),
('Dinner Rolls', 'Panecillos', 'Dry Goods', 'Productos Secos', 'each'),
('Croutons', 'Crutones', 'Dry Goods', 'Productos Secos', 'oz'),
('Tortilla Chips', 'Totopos', 'Dry Goods', 'Productos Secos', 'lbs'),

-- ── SAUCES & CONDIMENTS ─────────────────────────────────────
('Ranch Dressing', 'Aderezo Ranch', 'Sauces', 'Salsas', 'oz'),
('Blue Cheese Dressing', 'Aderezo Blue Cheese', 'Sauces', 'Salsas', 'oz'),
('Honey Mustard', 'Miel Mostaza', 'Sauces', 'Salsas', 'oz'),
('BBQ Sauce', 'Salsa BBQ', 'Sauces', 'Salsas', 'oz'),
('Hot Sauce', 'Salsa Picante', 'Sauces', 'Salsas', 'oz'),
('Buffalo Sauce', 'Salsa Buffalo', 'Sauces', 'Salsas', 'oz'),
('Ketchup', 'Ketchup', 'Sauces', 'Salsas', 'oz'),
('Mustard (Yellow)', 'Mostaza Amarilla', 'Sauces', 'Salsas', 'oz'),
('Mayo', 'Mayonesa', 'Sauces', 'Salsas', 'oz'),
('Salsa', 'Salsa', 'Sauces', 'Salsas', 'oz'),
('Queso Dip', 'Queso para Dip', 'Sauces', 'Salsas', 'oz'),
('Gravy', 'Gravy', 'Sauces', 'Salsas', 'oz'),
('Marinara Sauce', 'Salsa Marinara', 'Sauces', 'Salsas', 'oz'),
('Alfredo Sauce', 'Salsa Alfredo', 'Sauces', 'Salsas', 'oz'),
('Teriyaki Sauce', 'Salsa Teriyaki', 'Sauces', 'Salsas', 'oz'),
('Soy Sauce', 'Salsa de Soya', 'Sauces', 'Salsas', 'oz'),
('Worcestershire', 'Salsa Inglesa', 'Sauces', 'Salsas', 'oz'),
('Caesar Dressing', 'Aderezo César', 'Sauces', 'Salsas', 'oz'),
('Italian Dressing', 'Aderezo Italiano', 'Sauces', 'Salsas', 'oz'),
('Balsamic Vinaigrette', 'Vinagreta Balsámica', 'Sauces', 'Salsas', 'oz'),

-- ── SEASONINGS & SPICES ─────────────────────────────────────
('Salt', 'Sal', 'Seasonings', 'Condimentos', 'oz'),
('Black Pepper', 'Pimienta Negra', 'Seasonings', 'Condimentos', 'oz'),
('Garlic Powder', 'Ajo en Polvo', 'Seasonings', 'Condimentos', 'oz'),
('Onion Powder', 'Cebolla en Polvo', 'Seasonings', 'Condimentos', 'oz'),
('Paprika', 'Paprika', 'Seasonings', 'Condimentos', 'oz'),
('Cayenne Pepper', 'Pimienta de Cayena', 'Seasonings', 'Condimentos', 'oz'),
('Cumin', 'Comino', 'Seasonings', 'Condimentos', 'oz'),
('Chili Powder', 'Chile en Polvo', 'Seasonings', 'Condimentos', 'oz'),
('Oregano', 'Orégano', 'Seasonings', 'Condimentos', 'oz'),
('Italian Seasoning', 'Sazonador Italiano', 'Seasonings', 'Condimentos', 'oz'),
('Steak Seasoning', 'Sazonador para Carne', 'Seasonings', 'Condimentos', 'oz'),
('Old Bay', 'Old Bay', 'Seasonings', 'Condimentos', 'oz'),
('Cajun Seasoning', 'Sazonador Cajún', 'Seasonings', 'Condimentos', 'oz'),
('Cinnamon', 'Canela', 'Seasonings', 'Condimentos', 'oz'),
('Sugar', 'Azúcar', 'Seasonings', 'Condimentos', 'lbs'),
('Brown Sugar', 'Azúcar Morena', 'Seasonings', 'Condimentos', 'lbs'),

-- ── OILS & COOKING FATS ─────────────────────────────────────
('Vegetable Oil', 'Aceite Vegetal', 'Oils', 'Aceites', 'gal'),
('Olive Oil', 'Aceite de Oliva', 'Oils', 'Aceites', 'oz'),
('Canola Oil', 'Aceite de Canola', 'Oils', 'Aceites', 'gal'),
('Fryer Oil', 'Aceite para Freidora', 'Oils', 'Aceites', 'gal'),
('Pan Spray', 'Spray para Cocinar', 'Oils', 'Aceites', 'cans'),
('Sesame Oil', 'Aceite de Ajonjolí', 'Oils', 'Aceites', 'oz'),

-- ── BEVERAGES & BAR ─────────────────────────────────────────
('Sweet Tea', 'Té Dulce', 'Beverages', 'Bebidas', 'gal'),
('Unsweet Tea', 'Té sin Azúcar', 'Beverages', 'Bebidas', 'gal'),
('Coffee', 'Café', 'Beverages', 'Bebidas', 'lbs'),
('Lemonade', 'Limonada', 'Beverages', 'Bebidas', 'gal'),
('Coca-Cola Syrup', 'Jarabe Coca-Cola', 'Beverages', 'Bebidas', 'BIB'),
('Orange Juice', 'Jugo de Naranja', 'Beverages', 'Bebidas', 'gal'),
('Cranberry Juice', 'Jugo de Arándano', 'Beverages', 'Bebidas', 'gal'),

-- ── DESSERTS & BAKERY ───────────────────────────────────────
('Chocolate Cake', 'Pastel de Chocolate', 'Desserts', 'Postres', 'slices'),
('Cheesecake', 'Cheesecake', 'Desserts', 'Postres', 'slices'),
('Apple Pie', 'Pay de Manzana', 'Desserts', 'Postres', 'slices'),
('Brownie', 'Brownie', 'Desserts', 'Postres', 'each'),
('Ice Cream (Vanilla)', 'Helado de Vainilla', 'Desserts', 'Postres', 'scoops'),
('Whipped Cream', 'Crema Batida', 'Desserts', 'Postres', 'oz'),
('Chocolate Syrup', 'Jarabe de Chocolate', 'Desserts', 'Postres', 'oz'),
('Caramel Sauce', 'Salsa de Caramelo', 'Desserts', 'Postres', 'oz');

-- ============================================================
-- Verify
-- ============================================================
SELECT category, COUNT(*) as items FROM food_library GROUP BY category ORDER BY category;
