import '../models/customer.dart'; import '../models/installed_part.dart'; import '../models/order.dart'; import '../models/schedule_item.dart'; class MockData { static final List customers = [ Customer( id: 'cust-1', customerNumber: 'K-10025', name: 'Max Mustermann', street: 'Musterweg 12', zipCode: '12345', city: 'Musterstadt', latitude: 50.1135, longitude: 8.6790, distanceKm: 2.4, phone: '0171 1234567', email: 'max.mustermann@email.de', notes: 'Schlüsselbox an der Garage', firstContactDate: DateTime(2022, 3, 10), openOrdersCount: 1, lastOrderDate: DateTime(2024, 5, 15), installedParts: const [ InstalledPart( id: 'part-1', customerId: 'cust-1', name: 'Buderus Logamax plus GB172-24', category: 'Gas-Brennwertgerät', serialNumber: '8374747383', quantity: 1, ), InstalledPart( id: 'part-2', customerId: 'cust-1', name: 'Bosch EasyControl CT200', category: 'Raumthermostat', serialNumber: '1234567890', quantity: 1, ), InstalledPart( id: 'part-3', customerId: 'cust-1', name: 'Honeywell Hauswasserfilter FF06', category: 'Wasserfilter', serialNumber: '9876543210', quantity: 1, ), ], orders: [ WorkOrder( id: 'ord-1', customerId: 'cust-1', title: 'Wartung Heizungsanlage', date: DateTime(2024, 5, 15), status: OrderStatus.abgeschlossen, ), WorkOrder( id: 'ord-2', customerId: 'cust-1', title: 'Thermostat Einstellung & Kalibrierung', date: DateTime(2026, 8, 2), status: OrderStatus.offen, ), ], ), Customer( id: 'cust-2', customerNumber: 'K-10026', name: 'Sabine Schulze', street: 'Nordring 45', zipCode: '12347', city: 'Musterstadt', latitude: 50.1265, longitude: 8.6890, distanceKm: 4.1, phone: '0160 9876543', email: 'sabine.schulze@example.com', notes: 'Hund im Garten, bitte vorher anrufen.', firstContactDate: DateTime(2021, 11, 4), openOrdersCount: 0, lastOrderDate: DateTime(2024, 4, 10), installedParts: const [ InstalledPart( id: 'part-4', customerId: 'cust-2', name: 'Viessmann Vitodens 200-W', category: 'Gas-Brennwertgerät', serialNumber: '7632918401', quantity: 1, ), ], orders: [ WorkOrder( id: 'ord-3', customerId: 'cust-2', title: 'Jahresinspektion', date: DateTime(2024, 4, 10), status: OrderStatus.abgeschlossen, ), ], ), Customer( id: 'cust-3', customerNumber: 'K-10027', name: 'Bäckerei Hoffmann GmbH', street: 'Hauptstraße 88', zipCode: '12345', city: 'Musterstadt', latitude: 50.1080, longitude: 8.6650, distanceKm: 1.8, phone: '069 5551234', email: 'info@baeckerei-hoffmann.de', notes: 'Zufahrt über den Lieferanteneingang Rückseite.', firstContactDate: DateTime(2020, 1, 15), openOrdersCount: 2, lastOrderDate: DateTime(2024, 6, 01), installedParts: const [ InstalledPart( id: 'part-5', customerId: 'cust-3', name: 'Grundfos Magna3 32-120 F', category: 'Heizungsumwälzpumpe', serialNumber: '983301920', quantity: 2, ), ], orders: [ WorkOrder( id: 'ord-4', customerId: 'cust-3', title: 'Austausch Umwälzpumpe', date: DateTime(2024, 6, 1), status: OrderStatus.abgeschlossen, ), ], ), Customer( id: 'cust-4', customerNumber: 'K-10028', name: 'Dr. Michael Weber', street: 'Goetheallee 3', zipCode: '12349', city: 'Musterstadt', latitude: 50.0980, longitude: 8.6720, distanceKm: 3.5, phone: '0172 4443322', email: 'm.weber@praxis-weber.de', notes: 'Termine nur mittwochs nachmittags möglich.', firstContactDate: DateTime(2023, 7, 20), openOrdersCount: 1, lastOrderDate: DateTime(2023, 12, 12), installedParts: const [], orders: [ WorkOrder( id: 'ord-5', customerId: 'cust-4', title: 'Installationsprüfbericht', date: DateTime(2023, 12, 12), status: OrderStatus.abgeschlossen, ), ], ), Customer( id: 'cust-5', customerNumber: 'K-10029', name: 'Elena Schmidt', street: 'Ostendstraße 102', zipCode: '12345', city: 'Musterstadt', latitude: 50.1110, longitude: 8.7020, distanceKm: 3.1, phone: '0151 7766554', email: 'elena.schmidt@gmx.de', notes: 'Klingel beschriftet mit "Schmidt / OG 2".', firstContactDate: DateTime(2024, 2, 1), openOrdersCount: 0, lastOrderDate: DateTime(2024, 3, 22), installedParts: const [], orders: [], ), ]; // Daily Schedule Items matching Auftragsuebersicht.png Day View static final List dayScheduleItems = [ ScheduleItem( id: 'sch-1', title: 'Team-Besprechung / Material-Laden', startTime: '07:00', endTime: '09:00', type: ScheduleItemType.routine, ), ScheduleItem( id: 'sch-2', title: 'Max Mustermann - Heizungswartung', customerName: 'Max Mustermann', address: 'Musterweg 12, 12345 Musterstadt', taskDescription: 'Wartung Gas-Brennwertgerät', startTime: '10:30', endTime: '13:00', type: ScheduleItemType.job, isInProgress: true, ), ScheduleItem( id: 'sch-3', title: 'Mittagspause', startTime: '13:00', endTime: '13:30', type: ScheduleItemType.lunchBreak, ), ScheduleItem( id: 'sch-4', title: 'Anja Klein - Thermostat-Tausch', customerName: 'Anja Klein', address: 'Musterweg 12, 12345 Musterstadt', taskDescription: 'Wartung Gas-Brennwertgerät', startTime: '13:30', endTime: '15:00', type: ScheduleItemType.job, ), ScheduleItem( id: 'sch-5', title: 'Bauprojekt Neubau - Sanitär-Rohinstallation', customerName: 'Bauprojekt Neubau', address: 'Musterweg 12, 12345 Musterstadt', startTime: '15:30', endTime: '17:00', type: ScheduleItemType.job, ), ScheduleItem( id: 'sch-6', title: 'Feierabend', startTime: '18:00', endTime: '18:00', type: ScheduleItemType.feierabend, ), ]; // Weekly Matrix Summaries matching Auftragsuebersicht.png Week View static final List weekSummaries = [ DaySummary( dayName: 'Mo', fullDayName: 'Montag', dateString: '13.05', ordersCount: 3, hoursTotal: 8.5, items: [ ScheduleItem( id: 'w-mo-1', title: 'Max Mustermann', customerName: 'Max Mustermann', address: 'Musterweg 12, 12345 Musterstadt', startTime: '08:00', endTime: '10:30', isCompleted: true, ), ScheduleItem( id: 'w-mo-2', title: 'Sabine Schulze', customerName: 'Sabine Schulze', address: 'Nordring 45, 12347 Musterstadt', startTime: '11:00', endTime: '14:00', isCompleted: true, ), ], ), DaySummary( dayName: 'Di', fullDayName: 'Dienstag', dateString: '14.05', ordersCount: 4, hoursTotal: 9.0, items: [ ScheduleItem( id: 'w-di-1', title: 'Max Mustermann', customerName: 'Max Mustermann', address: 'Musterweg 12, 12345 Musterstadt', startTime: '08:00', endTime: '10:00', isCompleted: false, ), ScheduleItem( id: 'w-di-2', title: 'Anja Klein', customerName: 'Anja Klein', address: 'Musterweg 12, 12345 Musterstadt', startTime: '10:30', endTime: '12:30', isCompleted: false, ), ScheduleItem( id: 'w-di-3', title: 'Max Mustermann', customerName: 'Max Mustermann', address: 'Musterweg 12, 12345 Musterstadt', taskDescription: 'Wartertiter', startTime: '13:30', endTime: '15:30', isCompleted: false, ), ScheduleItem( id: 'w-di-4', title: 'Bauprojekt Neubau - Sanitär-Rohinstallation', customerName: 'Bauprojekt Neubau', address: 'Musterweg 12, 12345 Musterstadt', taskDescription: 'Bauprüfer', startTime: '16:00', endTime: '18:00', isCompleted: true, ), ], ), DaySummary( dayName: 'Mi', fullDayName: 'Mittwoch', dateString: '15.05', ordersCount: 2, hoursTotal: 7.5, items: [ ScheduleItem( id: 'w-mi-1', title: 'Bäckerei Hoffmann GmbH', customerName: 'Bäckerei Hoffmann GmbH', address: 'Hauptstraße 88, 12345 Musterstadt', startTime: '08:00', endTime: '12:00', isCompleted: true, ), ], ), DaySummary( dayName: 'Do', fullDayName: 'Donnerstag', dateString: '16.05', ordersCount: 2, hoursTotal: 7.5, items: [ ScheduleItem( id: 'w-do-1', title: 'Max Mustermann', customerName: 'Max Mustermann', address: 'Musterweg 12, 12345 Musterstadt', startTime: '09:00', endTime: '12:00', isCompleted: false, ), ScheduleItem( id: 'w-do-2', title: 'Anja Klein', customerName: 'Anja Klein', address: 'Musterweg 12, 12345 Musterstadt', startTime: '13:30', endTime: '16:00', isCompleted: false, ), ], ), DaySummary( dayName: 'Fr', fullDayName: 'Freitag', dateString: '17.05', ordersCount: 5, hoursTotal: 9.5, items: [ ScheduleItem( id: 'w-fr-1', title: 'Max Mustermann', customerName: 'Max Mustermann', address: 'Musterweg 12, 12345 Musterstadt', startTime: '08:00', endTime: '10:00', isCompleted: true, ), ScheduleItem( id: 'w-fr-2', title: 'Max Mustermann', customerName: 'Max Mustermann', address: 'Musterweg 12, 12345 Musterstadt', startTime: '10:15', endTime: '12:00', isCompleted: false, ), ScheduleItem( id: 'w-fr-3', title: 'Max Mustermann', customerName: 'Max Mustermann', address: 'Musterweg 12, 12345 Musterstadt', startTime: '13:00', endTime: '15:00', isCompleted: false, ), ScheduleItem( id: 'w-fr-4', title: 'Max Mustermann', customerName: 'Max Mustermann', address: 'Musterweg 12, 12345 Musterstadt', startTime: '15:30', endTime: '17:30', isCompleted: true, ), ], ), DaySummary( dayName: 'Sa', fullDayName: 'Samstag', dateString: '18.05', ordersCount: 3, hoursTotal: 8.0, items: [], ), DaySummary( dayName: 'So', fullDayName: 'Sonntag', dateString: '19.05', ordersCount: 3, hoursTotal: 8.0, items: [], ), ]; }