import '../models/models.dart'; /// Static mock data — swap this layer with GraphQL service when backend is ready. class MockData { static List get orders => [ Order( id: 1001, orderNumber: '#10234', amount: 1850.50, slotTime: DateTime.now().add(const Duration(minutes: 25)), status: OrderStatus.newOrder, customer: const Customer( name: 'Костянтин', phone: '+380671234567', comment: 'Будь-ласка, найбільш свіже мясо, щоб могла їсти дитина!', ), segments: [ OrderSegment( id: 1, name: 'М\'ясо та риба', zone: 'A1', items: [ OrderItem( id: 101, sku: 'SKU-001', name: 'Курятина філе охолоджена', category: 'М\'ясо', price: 189.90, planQty: 1, type: ItemType.cold, substitutes: [ const OrderItemSubstitute(sku: 'SKU-002', name: 'Курятина стегно охол.', priority: 1), ], ), OrderItem( id: 102, sku: 'SKU-003', name: 'Яловичина вирізка охол.', category: 'М\'ясо', price: 320.00, planQty: 0.5, type: ItemType.cold, ), ], ), OrderSegment( id: 2, name: 'Молочні продукти', zone: 'B2', items: [ OrderItem( id: 103, sku: 'SKU-010', name: 'Молоко Яготинське 2.5% 1л', category: 'Молоко', price: 45.50, planQty: 2, type: ItemType.cold, ), OrderItem( id: 104, sku: 'SKU-011', name: 'Сир кисломолочний 9% 200г', category: 'Сир', price: 38.90, planQty: 3, type: ItemType.cold, ), ], ), OrderSegment( id: 3, name: 'Заморожені', zone: 'C1', items: [ OrderItem( id: 105, sku: 'SKU-020', name: 'Вареники з картоплею 800г', category: 'Заморожені', price: 89.90, planQty: 2, type: ItemType.frozen, ), ], ), OrderSegment( id: 4, name: 'Алкоголь', zone: 'D3', items: [ OrderItem( id: 106, sku: 'SKU-030', name: 'Вино Коблево Шардоне 0.75л', category: 'Вино', price: 225.00, planQty: 1, type: ItemType.alcohol, ), ], ), ], ), Order( id: 1002, orderNumber: '#10235', amount: 640.00, slotTime: DateTime.now().add(const Duration(minutes: 45)), status: OrderStatus.inProgress, customer: const Customer( name: 'Оксана', phone: '+380507654321', ), segments: [ OrderSegment( id: 5, name: 'Бакалія', zone: 'E1', items: [ OrderItem( id: 201, sku: 'SKU-040', name: 'Гречка ТМ Жменька 800г', category: 'Крупи', price: 55.90, planQty: 2, status: ItemStatus.picked, actualQty: 2, ), OrderItem( id: 202, sku: 'SKU-041', name: 'Олія соняшникова Чумак 1л', category: 'Олія', price: 89.90, planQty: 1, status: ItemStatus.picked, actualQty: 1, ), OrderItem( id: 203, sku: 'SKU-042', name: 'Цукор білий 1кг', category: 'Бакалія', price: 48.90, planQty: 3, ), ], ), OrderSegment( id: 6, name: 'Овочі та фрукти', zone: 'F2', items: [ OrderItem( id: 204, sku: 'SKU-050', name: 'Банани імпортні', category: 'Фрукти', price: 49.90, planQty: 1.5, type: ItemType.clarify, substitutes: [ const OrderItemSubstitute(sku: 'SKU-051', name: 'Яблуко Голден', priority: 1), ], ), ], ), ], ), Order( id: 1003, orderNumber: '#10236', amount: 2340.00, slotTime: DateTime.now().add(const Duration(minutes: 10)), status: OrderStatus.newOrder, customer: const Customer( name: 'Андрій', phone: '+380931112233', comment: 'Без замін, будь ласка', ), segments: [ OrderSegment( id: 7, name: 'Хліб та випічка', zone: 'G1', items: [ OrderItem( id: 301, sku: 'SKU-060', name: 'Хліб Бородинський 400г', category: 'Хліб', price: 42.50, planQty: 2, ), OrderItem( id: 302, sku: 'SKU-061', name: 'Батон нарізний 500г', category: 'Хліб', price: 38.90, planQty: 1, ), ], ), ], ), ]; static List get availableSlots => [ const StorageSlot(id: 1, type: StorageSlotType.cell, name: 'Ячейка 1', maxOrders: 3), const StorageSlot(id: 2, type: StorageSlotType.cell, name: 'Ячейка 2', maxOrders: 3), const StorageSlot(id: 3, type: StorageSlotType.cell, name: 'Ячейка 3', maxOrders: 3), const StorageSlot(id: 4, type: StorageSlotType.cell, name: 'Ячейка 4', maxOrders: 3), const StorageSlot(id: 5, type: StorageSlotType.cell, name: 'Ячейка 5', maxOrders: 3), const StorageSlot(id: 6, type: StorageSlotType.freezer, name: 'Морозилка A', maxOrders: 5), const StorageSlot(id: 7, type: StorageSlotType.freezer, name: 'Морозилка B', maxOrders: 5), const StorageSlot(id: 8, type: StorageSlotType.fridge, name: 'Холодильник 1', maxOrders: 4), const StorageSlot(id: 9, type: StorageSlotType.fridge, name: 'Холодильник 2', maxOrders: 4), ]; }