TODO: Generator ewidencji przebiegu pojazdu (HTML/PDF)
1. Utwórz osobny katalog na moduł generatora (np. app/generators/vehicle_mileage_report)
2. Przygotuj główny plik PHP generatora (np. generate_vehicle_mileage_report.php)
3. Stwórz szablon HTML na podstawie pliku KopiaEwidencjaPrzebieguPojazduBMWX511.2024.html
- Zamień dane stałe na zmienne (np. numer rejestracyjny, dane podatnika, lista przejazdów)
4. Przygotuj prostą funkcję do pobierania danych z bazy:
- Dane pojazdu (numer rejestracyjny, pojemność, właściciel)
- Dane użytkownika pojazdu
- Listę przejazdów z wybranego okresu (miesiąc/rok)
5. Wstaw pobrane dane do szablonu HTML
6. Dodaj możliwość wygenerowania pliku PDF na podstawie HTML (np. przez mPDF)
7. Przygotuj prosty formularz (np. osobny plik lub endpoint), gdzie użytkownik wybierze pojazd i okres
8. Po kliknięciu "Generuj" wyświetl lub pobierz gotowy plik PDF
9. Przetestuj działanie generatora na przykładowych danych
---
Dodatkowe funkcje (do ustalenia, jeśli będą potrzebne):
- [ ] Możliwość wyboru formatu (HTML/PDF)
- [ ] Obsługa kilku pojazdów naraz
- [ ] Dodanie podsumowań lub dodatkowych pól
TODO - Ewidencja przebiegu pojazdów
ZREALIZOWANE:
✅ Podstawowy generator PDF kart przebiegu
✅ Integracja z systemem dokumentów
✅ Automatyczne generowanie dni roboczych
✅ Obsługa świąt polskich (stałe i ruchome)
✅ Formularz edycji szczegółowej z możliwością:
- Edycji tras, celów podróży i kilometrów
- Kopiowania danych do następnych wierszy
- Usuwania pojedynczych dni
- Automatycznego przeliczania sum
✅ Elastyczny system przeniesienia z poprzedniego miesiąca:
- Automatyczne wykrywanie pierwszej karty dla każdego pojazdu
- Pole initial_mileage_carryover w tabeli vehicles
- Obsługa różnych scenariuszy (brak danych, luki, itp.)
- Działa dla każdego pojazdu niezależnie od daty pierwszego wpisu
✅ Korekta danych historycznych w bazie:
- Zaktualizowano skumulowane przebiegi (mileage) dla wszystkich pojazdów
- Zachowano oryginalne różnice miesięczne (mileage_difference)
- Utworzono kopię zapasową bazy przed zmianami (backup_kobas_20250526_120926.sql)
SYSTEM PRZENIESIENIA - JAK DZIAŁA:
1. Dla pierwszej karty pojazdu (najwcześniejszy miesiąc):
- Używa wartości z pola initial_mileage_carryover z tabeli vehicles
- To jest przebieg z ostatniej papierowej karty przed wdrożeniem systemu
2. Dla kolejnych kart:
- Automatycznie pobiera przebieg z końca poprzedniego miesiąca
- Jeśli brak danych z poprzedniego miesiąca, szuka ostatniego dostępnego wpisu
- W ostateczności używa initial_mileage_carryover
3. Obsługuje scenariusze:
- Brak jakichkolwiek danych dla pojazdu
- Generowanie karty dla miesiąca przed pierwszym wpisem w bazie
- Luki w danych (brakujące miesiące)
- Różne daty pierwszych wpisów dla różnych pojazdów
KONFIGURACJA WARTOŚCI POCZĄTKOWYCH (ZAKTUALIZOWANE W BAZIE):
- BMW X5 (D0 KOBAS): 9410 km ✅ - ostatni wpis z papierowej karty
- Mercedes A220 (DW 8J214): 5000 km ✅
- Mercedes Marco Polo (DW 3YA73): 8000 km ✅
- Toyota Proace (DW2ME47): 30000 km ✅
- Ford Tourneo (DW 1LC76): 90000 km ✅
- VW Caddy (SK 4A628): 1000 km ✅
- VW Caddy (DW 1TT46): 300000 km ✅
- VW Caddy (DW 7RS98): 155000 km ✅
- BMW M340i (DW 8LN69): 65000 km ✅
- Opel Combo (DW1JS41): 0 km ✅ (brak danych w bazie)
KOREKTA DANYCH HISTORYCZNYCH:
Data wykonania: 26.05.2025 12:09
Kopia zapasowa: backup_kobas_20250526_120926.sql
Zakres zmian:
- Zaktualizowano pole 'mileage' we wszystkich wpisach vehicle_monthly_mileages
- Dodano odpowiednie wartości initial_mileage_carryover do każdego wpisu
- Zachowano oryginalne wartości 'mileage_difference' (rzeczywiste przebiegi miesięczne)
- Wszystkie pojazdy mają teraz poprawne wartości przeniesienia
DO ZROBIENIA:
- Dodanie możliwości eksportu do Excel
- Integracja z systemem kosztów (automatyczne wyliczanie wartości)
- Powiadomienia o brakujących kartach przebiegu
- Raporty podsumowujące dla całej floty
- Walidacja danych (sprawdzanie logiczności przebiegów)
UWAGI TECHNICZNE:
- Generator automatycznie wykrywa pierwszą kartę dla każdego pojazdu
- Nie wymaga ręcznej konfiguracji dat rozpoczęcia
- Obsługuje retrospektywne generowanie kart
- Wartości initial_mileage_carryover można edytować w formularzu pojazdu
- Dane historyczne zostały poprawnie zaktualizowane z zachowaniem oryginalnych przebiegów miesięcznych
UWAGI TECHNICZNE:
- Generator automatycznie wykrywa pierwszą kartę dla każdego pojazdu
- Nie wymaga ręcznej konfiguracji dat rozpoczęcia
- Obsługuje retrospektywne generowanie kart
- Wartości initial_mileage_carryover można edytować w formularzu pojazdu