-- =====================================================
-- ROLE
-- =====================================================
INSERT INTO role (role_name, description) VALUES
('admin',    'Администратор со целосни права'),
('manager',  'Менаџер на смена'),
('waiter',   'Келнер');

-- =====================================================
-- APP_USER
-- =====================================================
INSERT INTO app_user (role_id, username, password_hash, first_name, last_name, email, active) VALUES
(1, 'marko_admin',  '$2b$12$hash1', 'Марко',  'Стојанов',  'marko@pos.mk',  TRUE),
(2, 'ana_manager',  '$2b$12$hash2', 'Ана',    'Николова',  'ana@pos.mk',    TRUE),
(3, 'petar_waiter', '$2b$12$hash3', 'Петар',  'Јованов',   'petar@pos.mk',  TRUE),
(3, 'elena_waiter', '$2b$12$hash4', 'Елена',  'Трајкова',  'elena@pos.mk',  TRUE),
(3, 'stefan_waiter','$2b$12$hash5', 'Стефан', 'Костов',    'stefan@pos.mk', FALSE);

-- =====================================================
-- SESSION
-- =====================================================
INSERT INTO session (user_id) VALUES (1), (2), (3);

-- =====================================================
-- AUDIT_LOG
-- =====================================================
INSERT INTO audit_log (user_id, action, entity_name) VALUES
(1, 'LOGIN',         'app_user'),
(1, 'CREATE_ORDER',  'orders'),
(2, 'LOGIN',         'app_user'),
(3, 'CREATE_ORDER',  'orders'),
(3, 'PAY_ORDER',     'payment'),
(2, 'CLOSE_SHIFT',   'shift_close');

-- =====================================================
-- CATEGORY
-- =====================================================
INSERT INTO category (name, description, active) VALUES
('Топли пијалоци',  'Кафиња и чаеви', TRUE),
('Ладни пијалоци',  'Сокови, вода, пиво', TRUE),
('Главни јадења',   'Главни оброци', TRUE),
('Десерти',         'Слатки и колачи', TRUE);

-- =====================================================
-- PRODUCT
-- =====================================================
INSERT INTO product (category_id, name, description, price, active, min_stock) VALUES
(1, 'Еспресо',         'Класично еспресо',           80.00,  TRUE, 20),
(1, 'Капучино',        'Капучино со млеко',         120.00,  TRUE, 15),
(1, 'Макијато',        'Еспресо со млечна пена',    110.00,  TRUE, 10),
(2, 'Кока Кола',       'Кока Кола 0.33',            100.00,  TRUE, 30),
(2, 'Пиво',            'Локално пиво 0.5',          150.00,  TRUE, 40),
(2, 'Вода',            'Минерална вода 0.5',         60.00,  TRUE, 50),
(3, 'Пица Маргарита',  'Пица со домат и моцарела',  320.00,  TRUE, 5),
(3, 'Плескавица',      'Плескавица со помфрит',     380.00,  TRUE, 5),
(3, 'Паста Карбонара', 'Паста со сланина и јајце',  350.00,  TRUE, 5),
(4, 'Тирамису',        'Италијански десерт',        220.00,  TRUE, 3);

-- =====================================================
-- INGREDIENT
-- =====================================================
INSERT INTO ingredient (name, unit, min_stock, active) VALUES
('Кафе во зрно',    'g',   500, TRUE),
('Млеко',           'ml', 2000, TRUE),
('Брашно',          'g',  3000, TRUE),
('Моцарела',        'g',   800, TRUE),
('Домат',           'g',  1500, TRUE),
('Месо мешано',     'g',  1000, TRUE),
('Сланина',         'g',   500, TRUE),
('Јајца',           'pcs',  30, TRUE),
('Шеќер',           'g',  2000, TRUE),
('Маскарпоне',      'g',   500, TRUE);

-- =====================================================
-- RECIPE
-- =====================================================
INSERT INTO recipe (product_id) VALUES
(1), (2), (3), (7), (8), (9), (10);

-- =====================================================
-- RECIPE_ITEM
-- =====================================================
INSERT INTO recipe_item (recipe_id, ingredient_id, quantity_needed) VALUES
(1, 1, 8),    -- Еспресо: 8g кафе
(2, 1, 8),    -- Капучино: 8g кафе
(2, 2, 150),  -- Капучино: 150ml млеко
(3, 1, 8),    -- Макијато: 8g кафе
(3, 2, 80),   -- Макијато: 80ml млеко
(4, 3, 250),  -- Пица: 250g брашно
(4, 4, 150),  -- Пица: 150g моцарела
(4, 5, 100),  -- Пица: 100g домат
(5, 6, 200),  -- Плескавица: 200g месо
(6, 3, 200),  -- Паста: 200g брашно
(6, 7, 80),   -- Паста: 80g сланина
(6, 8, 2),    -- Паста: 2 јајца
(7, 10, 120), -- Тирамису: 120g маскарпоне
(7, 9, 100);  -- Тирамису: 100g шеќер

-- =====================================================
-- RESTAURANT_TABLE
-- =====================================================
INSERT INTO restaurant_table (table_number, capacity, status) VALUES
('1',  2, 'слободна'),
('2',  2, 'слободна'),
('3',  4, 'зафатена'),
('4',  4, 'слободна'),
('5',  6, 'резервирана'),
('6',  6, 'слободна'),
('7',  8, 'слободна'),
('8', 10, 'неактивна');

-- =====================================================
-- ORDERS
-- =====================================================
INSERT INTO orders (user_id, table_id, status) VALUES
(3, 1, 'платена'),
(3, 3, 'платена'),
(4, 4, 'платена'),
(4, 5, 'платена'),
(3, 2, 'платена'),
(5, 4, 'готова'),
(4, 6, 'во_подготовка'),
(3, 1, 'отворена'),
(5, 7, 'платена'),
(4, 3, 'платена');

-- =====================================================
-- ORDER_ITEM
-- =====================================================
INSERT INTO order_item (order_id, item_number, product_id, quantity, unit_price, status) VALUES
(1, 1,  1, 2,  80.00, 'ПОРАЧАНО'),
(1, 2,  7, 1, 320.00, 'ПОРАЧАНО'),
(2, 1,  2, 3, 120.00, 'ПОРАЧАНО'),
(2, 2,  8, 2, 380.00, 'ПОРАЧАНО'),
(3, 1,  6, 2,  60.00, 'ПОРАЧАНО'),
(3, 2,  9, 1, 350.00, 'ПОРАЧАНО'),
(4, 1,  5, 4, 150.00, 'ПОРАЧАНО'),
(4, 2, 10, 2, 220.00, 'ПОРАЧАНО'),
(5, 1,  4, 2, 100.00, 'ПОРАЧАНО'),
(5, 2, 10, 1, 220.00, 'ПОРАЧАНО'),
(6, 1,  7, 1, 320.00, 'ПОРАЧАНО'),
(7, 1,  6, 2,  60.00, 'ПОРАЧАНО'),
(7, 2,  4, 3, 100.00, 'ПОРАЧАНО'),
(8, 1,  1, 1,  80.00, 'ПОРАЧАНО'),
(9, 1,  5, 4, 150.00, 'ПОРАЧАНО'),
(9, 2,  8, 2, 380.00, 'ПОРАЧАНО'),
(10, 1, 2, 2, 120.00, 'ПОРАЧАНО'),
(10, 2, 10, 1, 220.00, 'ПОРАЧАНО');

-- =====================================================
-- PAYMENT
-- =====================================================
INSERT INTO payment (order_id, amount, method) VALUES
(1,  480.00, 'кеш'),
(2, 1120.00, 'картичка'),
(3,  470.00, 'кеш'),
(4, 1040.00, 'картичка'),
(5,  420.00, 'кеш'),
(9, 1060.00, 'картичка'),
(10, 460.00, 'кеш');

-- =====================================================
-- INVOICE
-- =====================================================
INSERT INTO invoice (payment_id, invoice_number) VALUES
(1, 'INV-2026-0001'),
(2, 'INV-2026-0002'),
(3, 'INV-2026-0003'),
(4, 'INV-2026-0004'),
(5, 'INV-2026-0005'),
(6, 'INV-2026-0006'),
(7, 'INV-2026-0007');

-- =====================================================
-- SHIFT
-- =====================================================
INSERT INTO shift (user_id, start_time, end_time) VALUES
(3, '2026-01-10 08:00:00', '2026-01-10 16:00:00'),
(4, '2026-01-10 16:00:00', '2026-01-11 00:00:00'),
(3, '2026-01-11 08:00:00', '2026-01-11 16:00:00'),
(5, '2026-01-11 16:00:00', NULL);

-- =====================================================
-- SHIFT_CLOSE
-- =====================================================
INSERT INTO shift_close (closed_by, total, order_count) VALUES
(2, 2520.00, 5),
(2, 1150.00, 2);

-- =====================================================
-- INVENTORY (product inventory)
-- =====================================================
INSERT INTO inventory (product_id, quantity_change, operation_type) VALUES
(1, 100, 'влез'),
(2,  80, 'влез'),
(4, 150, 'влез'),
(5, 120, 'влез'),
(6, 200, 'влез'),
(1, -20, 'излез'),
(2, -15, 'излез'),
(5, -30, 'излез'),
(7,  50, 'влез'),
(8,  40, 'влез');

-- =====================================================
-- INGREDIENT_INVENTORY
-- =====================================================
INSERT INTO ingredient_inventory (ingredient_id, quantity_change, operation_type) VALUES
(1, 5000, 'влез'),
(2, 10000, 'влез'),
(3, 15000, 'влез'),
(4, 3000, 'влез'),
(5, 8000, 'влез'),
(6, 5000, 'влез'),
(1, -500, 'излез'),
(2, -1200, 'излез'),
(4, -600, 'излез'),
(8, -12, 'излез');

-- =====================================================
-- APP_SETTINGS
-- =====================================================
INSERT INTO app_settings (id, restaurant_name, vat_rate, currency, printer_config) VALUES
(1, 'EMPORIO CAFFE', 18.00, 'ден', 'default');

-- =====================================================
-- SETTINGS
-- =====================================================
INSERT INTO settings (id, restaurant_name, vat_percent, currency, printer_ip, printer_port) VALUES
(1, 'EMPORIO CAFFE', 18, 'ден', '192.168.1.100', 9100);