====== WiZiT – plánovač tras a kniha jízd ====== //Vytvořeno: **2.7.2026** | Aktualizováno: **~~LASTMOD~~**// [[https://wizit.web.app/|WiZiT]] je webová aplikace pro plánování návštěv, optimalizaci tras a dopočet ujetých vzdáleností. Projekt je dostupný jako open-source na [[https://github.com/capsky-jakub/WiZiT|GitHubu]] a může být užitečný jako praktická pracovní kniha jízd pro obchodní zástupce, servisní techniky nebo jiné lidi v terénu. ===== K čemu se hodí ===== WiZiT řeší hlavně situaci, kdy je potřeba projet více adres za den a nechce se ručně skládat pořadí zastávek ani přepisovat vzdálenosti do Excelu. Podle [[https://www.youtube.com/watch?v=hCqFLVk_wqU|videa AI Mastermind: Destilát #23]] aplikace vznikla pro reálné použití a autorovi uživatelé díky ní šetří přibližně 20 minut administrativní práce denně. Typické scénáře použití: * obchodní zástupce s pravidelnými návštěvami klientů, * servisní technik s denním seznamem zakázek, * rozvoz nebo jiná práce s více zastávkami, * rychlý dopočet kilometrů a tachometru pro plánovanou trasu. ===== Co aplikace umí ===== Hlavní funkce podle repozitáře, aplikace a videa: * evidence klientů a návštěv, * ruční přidávání zastávek, * import návštěv z Excelu, * databáze klientů s adresou, kontakty, poznámkami a výchozí délkou návštěvy, * plánování opakovaných návštěv: * každý týden ve vybrané dny, * konkrétní datum, * interval každých X dní, * automatické sestavení denního plánu z databáze klientů, * ukládání a načítání oblíbených tras, * ruční řazení zastávek přes drag & drop, * dočasné přeskočení vybrané zastávky bez jejího smazání, * ověření adres přes Google Maps, * výpočet vzdáleností a dojezdových časů, * výpočet příjezdových časů včetně délky návštěvy, * výpočet stavu tachometru po jednotlivých úsecích, * výpočet návratu zpět na startovní adresu, * vizualizaci trasy v mapě, * zálohu a obnovu pracovního prostředí přes JSON export/import, * lokální ukládání v prohlížeči a volitelnou cloudovou synchronizaci. ===== Použití jako kniha jízd ===== WiZiT se dá použít jako pomocník pro knihu jízd, ale spíš ve smyslu plánované nebo rekonstruované trasy než jako automatický GPS logger. Typický postup: - Nastavit startovní adresu. - Nastavit aktuální stav tachometru. - Přidat nebo naimportovat návštěvy. - Nechat aplikaci spočítat trasu. - Zkontrolovat úseky, příjezdy, návrat a výsledný stav tachometru. - Data případně zazálohovat přes JSON export. Aplikace při výpočtu ukládá k návštěvám mimo jiné: * vzdálenost úseku, * přesnou vzdálenost v km, * dobu jízdy, * čas příjezdu, * průběžný stav tachometru. Důležité omezení: nenašel jsem potvrzení, že by WiZiT automaticky detekoval reálnou jízdu přes GPS v mobilu. Jde hlavně o plánovač tras a kalkulačku nad Google Maps. Pro oficiální daňovou knihu jízd v ČR je potřeba zvlášť ověřit, jestli výstupy obsahují všechny požadované náležitosti. ===== Import a export ===== Import návštěv z Excelu očekává sloupce: * jméno, * příjmení, * adresa, * pořadí, * délka návštěvy v minutách. V kódu je vidět, že import přeskakuje první řádek jako hlavičku. Česká nápověda v aplikaci ale uvádí „bez záhlaví“, takže to je drobný rozpor k ověření při reálném testu. Export není klasický export knihy jízd do XLSX. Aplikace umí exportovat celé pracovní prostředí do JSON souboru, včetně návštěv, klientů, nastavení, uložených tras a cache vzdáleností. ===== Optimalizace tras ===== WiZiT používá vlastní optimalizaci pořadí zastávek pro problém obchodního cestujícího. V repozitáři je implementovaný postup: * nejdřív nearest neighbor pro rychlé nalezení počáteční trasy, * potom 2-OPT pro zlepšení pořadí zastávek. Před optimalizací si aplikace připraví matici vzdáleností mezi adresami. Výsledné pořadí se následně znovu přepočítá, aby byly vidět vzdálenosti, časy a stav tachometru. ===== Technické fungování ===== Technologicky jde o frontendovou webovou aplikaci: * React, * TypeScript, * Vite, * Firebase Authentication, * Firestore Lite, * Google Maps Platform. Pro mapy a výpočty jsou potřeba Google služby: * Directions API, * Distance Matrix API, * Places API. Aplikace podporuje BYOK režim — uživatel může zadat vlastní Google Maps API klíč. Podle README umí po přihlášení použít i systémově spravovaný sdílený klíč. Vlastní klíč je ale vhodné brát jako citlivý údaj; v typech aplikace je vedený jako uživatelský klíč uložený bez šifrování. Data se primárně ukládají lokálně do prohlížeče přes ''localStorage''. Po přihlášení je možné synchronizovat klienty, trasy, nastavení, aktuální návštěvy a cache přes Firebase/Firestore. ===== Cache vzdáleností ===== WiZiT používá cache nazvanou LMOD. Ta ukládá vypočtené vzdálenosti a doby mezi adresami do prohlížeče, aby nebylo nutné opakovaně volat Google Maps API pro stejné úseky. Praktický dopad: * rychlejší opakované výpočty, * nižší spotřeba API volání, * levnější provoz při pravidelných trasách, * citlivost na vymazání dat prohlížeče — při smazání ''localStorage'' cache zmizí. ===== Co je potřeba ověřit ===== Před reálným nasazením bych ověřil hlavně: * jestli výstup stačí pro účetní nebo daňovou knihu jízd, * jak přesně funguje export výsledků pro další zpracování, * jestli je potřeba vlastní Google Maps API klíč nebo stačí přihlášení, * jaké budou reálné náklady na Google Maps API při větším počtu tras, * jestli JSON záloha stačí jako dlouhodobý archiv, * rozpor mezi nápovědou a kódem u hlavičky Excel importu. ===== Shrnutí ===== WiZiT je zajímavý malý nástroj pro plánování návštěv a dopočet tras. Největší hodnota je v kombinaci databáze klientů, opakovaných návštěv, optimalizace pořadí zastávek a výpočtu tachometru. Jako oficiální knihu jízd bych ho nepoužil bez ověření legislativních náležitostí, ale jako interní pracovní pomůcka pro denní plánování tras vypadá užitečně. ===== Zdroje ===== * [[https://github.com/capsky-jakub/WiZiT|WiZiT – GitHub repozitář]] * [[https://wizit.web.app/|WiZiT – živá aplikace]] * [[https://www.youtube.com/watch?v=hCqFLVk_wqU|AI Mastermind: Destilát #23 – video se zmínkou o WiZiT]]