-- Données de test pour La Cave des Amis
USE `cave_management`;

-- Utilisateurs supplémentaires
INSERT INTO `users` (`name`, `email`, `password`, `roles`) VALUES
('Marie Dubois', 'marie@lacavedesamis.cm', '$2y$10$YyHSGXMLU8XD6f0rqEiQhOJhLyJHsXQGNzVHjpwXgMQHVFtxEUWQe', '["stock"]'),
('Sophie Martin', 'sophie@lacavedesamis.cm', '$2y$10$YyHSGXMLU8XD6f0rqEiQhOJhLyJHsXQGNzVHjpwXgMQHVFtxEUWQe', '["vente"]'),
('Alice Nguyen', 'alice@lacavedesamis.cm', '$2y$10$YyHSGXMLU8XD6f0rqEiQhOJhLyJHsXQGNzVHjpwXgMQHVFtxEUWQe', '["caisse"]'),
('Jean Kouame', 'jean@lacavedesamis.cm', '$2y$10$YyHSGXMLU8XD6f0rqEiQhOJhLyJHsXQGNzVHjpwXgMQHVFtxEUWQe', '["vente", "caisse"]');

-- Tables du restaurant
INSERT INTO `tables` (`number`, `name`, `capacity`) VALUES
('1', 'Table 1', 2),
('2', 'Table 2', 4),
('3', 'Table 3', 4),
('4', 'Table 4', 6),
('5', 'Table 5', 4),
('6', 'Table 6', 2),
('7', 'Table 7', 8),
('8', 'Table 8', 4),
('9', 'Table 9', 4),
('10', 'Table 10', 6),
('T1', 'Terrasse 1', 4),
('T2', 'Terrasse 2', 4),
('B1', 'Bar 1', 1),
('B2', 'Bar 2', 1),
('B3', 'Bar 3', 1);

-- Catégories de produits
INSERT INTO `categories` (`name`, `description`, `sort_order`) VALUES
('Vins Rouges', 'Sélection de vins rouges', 1),
('Vins Blancs', 'Sélection de vins blancs', 2),
('Vins Rosés', 'Sélection de vins rosés', 3),
('Champagnes', 'Champagnes et mousseux', 4),
('Bières', 'Bières locales et importées', 5),
('Whiskies', 'Whiskies et spiritueux', 6),
('Liqueurs', 'Liqueurs et digestifs', 7),
('Softs', 'Boissons non alcoolisées', 8),
('Eaux', 'Eaux minérales et gazeuses', 9),
('Snacks', 'Amuse-bouches et snacks', 10);

-- Produits
INSERT INTO `products` (`name`, `category_id`, `description`, `price`, `cost_price`, `stock_quantity`, `min_stock_alert`) VALUES
-- Vins Rouges
('Château Margaux 2010', 1, 'Grand cru classé de Bordeaux', 150000, 100000, 12, 2),
('Côtes du Rhône Villages', 1, 'Vin rouge fruité', 15000, 8000, 24, 5),
('Beaujolais Nouveau', 1, 'Vin rouge léger et fruité', 12000, 7000, 36, 10),
('Merlot Pays d\'Oc', 1, 'Vin rouge souple', 10000, 6000, 48, 15),

-- Vins Blancs
('Chablis Premier Cru', 2, 'Vin blanc sec de Bourgogne', 25000, 15000, 18, 5),
('Sancerre', 2, 'Sauvignon blanc de Loire', 20000, 12000, 24, 8),
('Riesling d\'Alsace', 2, 'Vin blanc aromatique', 18000, 10000, 30, 10),
('Muscadet', 2, 'Vin blanc sec et léger', 12000, 7000, 36, 12),

-- Vins Rosés
('Côtes de Provence Rosé', 3, 'Rosé sec et fruité', 15000, 8500, 48, 15),
('Tavel Rosé', 3, 'Rosé de caractère', 18000, 10000, 24, 8),

-- Champagnes
('Moët & Chandon Brut', 4, 'Champagne de prestige', 45000, 30000, 24, 5),
('Veuve Clicquot', 4, 'Champagne Brut', 50000, 35000, 18, 3),
('Laurent-Perrier', 4, 'Champagne rosé', 55000, 38000, 12, 2),

-- Bières
('33 Export', 5, 'Bière locale 65cl', 1500, 800, 120, 50),
('Castel Beer', 5, 'Bière locale 65cl', 1500, 800, 120, 50),
('Beaufort', 5, 'Bière locale 65cl', 1500, 800, 100, 40),
('Guinness', 5, 'Bière brune irlandaise 33cl', 2500, 1500, 60, 20),
('Heineken', 5, 'Bière blonde hollandaise 33cl', 2000, 1200, 80, 30),
('Corona', 5, 'Bière mexicaine 33cl', 2500, 1600, 48, 20),

-- Whiskies
('Johnnie Walker Black', 6, 'Whisky écossais 12 ans', 35000, 22000, 24, 5),
('Jack Daniel\'s', 6, 'Whiskey américain', 30000, 18000, 30, 8),
('Chivas Regal 12', 6, 'Whisky écossais blend', 32000, 20000, 24, 6),
('Jameson', 6, 'Whiskey irlandais', 28000, 16000, 36, 10),
('Glenfiddich 12', 6, 'Single malt écossais', 40000, 25000, 18, 4),

-- Liqueurs
('Baileys', 7, 'Liqueur de crème irlandaise', 18000, 10000, 24, 8),
('Cointreau', 7, 'Triple sec', 20000, 12000, 18, 6),
('Amaretto Disaronno', 7, 'Liqueur d\'amande', 22000, 13000, 18, 5),
('Rhum Havana Club', 7, 'Rhum cubain 3 ans', 15000, 8500, 36, 12),

-- Softs
('Coca-Cola', 8, 'Soda 33cl', 1000, 500, 120, 50),
('Fanta Orange', 8, 'Soda 33cl', 1000, 500, 100, 40),
('Sprite', 8, 'Soda 33cl', 1000, 500, 100, 40),
('Schweppes Tonic', 8, 'Tonic 33cl', 1200, 600, 80, 30),
('Jus d\'Orange', 8, 'Jus naturel 25cl', 1500, 800, 60, 20),
('Jus de Mangue', 8, 'Jus naturel 25cl', 1500, 800, 60, 20),

-- Eaux
('Vitale', 9, 'Eau minérale 1.5L', 500, 250, 200, 80),
('Tangui', 9, 'Eau minérale 1.5L', 500, 250, 200, 80),
('Perrier', 9, 'Eau gazeuse 33cl', 1500, 800, 60, 20),
('San Pellegrino', 9, 'Eau gazeuse 75cl', 2500, 1400, 48, 15),

-- Snacks
('Cacahuètes grillées', 10, 'Sachet 100g', 500, 200, 100, 40),
('Chips plantain', 10, 'Sachet 150g', 800, 300, 80, 30),
('Olives vertes', 10, 'Pot 200g', 2000, 1000, 40, 15),
('Fromage portion', 10, 'Plateau fromages', 3500, 2000, 20, 8);

-- Commandes et ventes des 7 derniers jours pour tests
-- Commande 1 (il y a 7 jours)
INSERT INTO `orders` (`table_id`, `server_id`, `status`, `subtotal`, `tax_amount`, `total_amount`, `created_at`, `closed_at`) VALUES
(1, 3, 'fermée', 8400, 1617, 10017, DATE_SUB(NOW(), INTERVAL 7 DAY), DATE_SUB(NOW(), INTERVAL 7 DAY));

INSERT INTO `order_items` (`order_id`, `product_id`, `quantity`, `unit_price`, `subtotal`) VALUES
(1, 14, 2, 1500, 3000),  -- 33 Export x2
(1, 20, 1, 2500, 2500),  -- Guinness
(1, 35, 2, 1000, 2000),  -- Coca-Cola
(1, 43, 2, 500, 1000);   -- Cacahuètes

INSERT INTO `sales` (`order_id`, `cashier_id`, `invoice_number`, `subtotal`, `tax_amount`, `total_amount`, `payment_method`, `created_at`) VALUES
(1, 4, 'FAC1001', 8400, 1617, 10017, 'especes', DATE_SUB(NOW(), INTERVAL 7 DAY));

-- Commande 2 (il y a 6 jours)
INSERT INTO `orders` (`table_id`, `server_id`, `status`, `subtotal`, `tax_amount`, `total_amount`, `created_at`, `closed_at`) VALUES
(3, 3, 'fermée', 45000, 8663, 53663, DATE_SUB(NOW(), INTERVAL 6 DAY), DATE_SUB(NOW(), INTERVAL 6 DAY));

INSERT INTO `order_items` (`order_id`, `product_id`, `quantity`, `unit_price`, `subtotal`) VALUES
(2, 11, 1, 45000, 45000);  -- Moët & Chandon

INSERT INTO `sales` (`order_id`, `cashier_id`, `invoice_number`, `subtotal`, `tax_amount`, `total_amount`, `payment_method`, `payment_reference`, `created_at`) VALUES
(2, 4, 'FAC1002', 45000, 8663, 53663, 'carte', 'CB-2024-001', DATE_SUB(NOW(), INTERVAL 6 DAY));

-- Commande 3 (il y a 5 jours)
INSERT INTO `orders` (`table_id`, `server_id`, `status`, `subtotal`, `tax_amount`, `total_amount`, `created_at`, `closed_at`) VALUES
(5, 5, 'fermée', 28500, 5486, 33986, DATE_SUB(NOW(), INTERVAL 5 DAY), DATE_SUB(NOW(), INTERVAL 5 DAY));

INSERT INTO `order_items` (`order_id`, `product_id`, `quantity`, `unit_price`, `subtotal`) VALUES
(3, 2, 1, 15000, 15000),   -- Côtes du Rhône
(3, 14, 4, 1500, 6000),    -- 33 Export x4
(3, 35, 3, 1000, 3000),    -- Coca-Cola x3
(3, 39, 3, 1500, 4500);    -- Jus d'Orange x3

INSERT INTO `sales` (`order_id`, `cashier_id`, `invoice_number`, `subtotal`, `tax_amount`, `total_amount`, `payment_method`, `created_at`) VALUES
(3, 4, 'FAC1003', 28500, 5486, 33986, 'mobile_money', DATE_SUB(NOW(), INTERVAL 5 DAY));

-- Mouvements de stock pour les ventes
INSERT INTO `stock_movements` (`product_id`, `user_id`, `type`, `quantity`, `reference`, `created_at`) VALUES
(14, 4, 'vente', -2, 'FAC1001', DATE_SUB(NOW(), INTERVAL 7 DAY)),
(20, 4, 'vente', -1, 'FAC1001', DATE_SUB(NOW(), INTERVAL 7 DAY)),
(35, 4, 'vente', -2, 'FAC1001', DATE_SUB(NOW(), INTERVAL 7 DAY)),
(43, 4, 'vente', -2, 'FAC1001', DATE_SUB(NOW(), INTERVAL 7 DAY)),
(11, 4, 'vente', -1, 'FAC1002', DATE_SUB(NOW(), INTERVAL 6 DAY)),
(2, 4, 'vente', -1, 'FAC1003', DATE_SUB(NOW(), INTERVAL 5 DAY)),
(14, 4, 'vente', -4, 'FAC1003', DATE_SUB(NOW(), INTERVAL 5 DAY)),
(35, 4, 'vente', -3, 'FAC1003', DATE_SUB(NOW(), INTERVAL 5 DAY)),
(39, 4, 'vente', -3, 'FAC1003', DATE_SUB(NOW(), INTERVAL 5 DAY));

-- Entrées de stock récentes
INSERT INTO `stock_movements` (`product_id`, `user_id`, `type`, `quantity`, `unit_cost`, `reference`, `notes`, `created_at`) VALUES
(14, 2, 'entrée', 100, 800, 'BL-2024-001', 'Livraison Brasseries du Cameroun', DATE_SUB(NOW(), INTERVAL 3 DAY)),
(15, 2, 'entrée', 100, 800, 'BL-2024-001', 'Livraison Brasseries du Cameroun', DATE_SUB(NOW(), INTERVAL 3 DAY)),
(16, 2, 'entrée', 80, 800, 'BL-2024-001', 'Livraison Brasseries du Cameroun', DATE_SUB(NOW(), INTERVAL 3 DAY));

-- Mise à jour de quelques tables comme occupées
UPDATE `tables` SET `status` = 'occupée' WHERE `id` IN (2, 4, 7);

-- Commandes en cours
INSERT INTO `orders` (`table_id`, `server_id`, `status`, `subtotal`, `tax_amount`, `total_amount`) VALUES
(2, 3, 'en_cours', 4500, 866, 5366),
(4, 5, 'en_cours', 15000, 2888, 17888),
(7, 3, 'en_cours', 7000, 1348, 8348);

-- Articles des commandes en cours
INSERT INTO `order_items` (`order_id`, `product_id`, `quantity`, `unit_price`, `subtotal`) VALUES
(4, 14, 3, 1500, 4500),
(5, 5, 1, 15000, 15000),
(6, 17, 2, 1500, 3000),
(6, 36, 2, 1000, 2000),
(6, 37, 2, 1000, 2000);