Jak zbudować aplikację do zarządzania urlopami: wnioski, zatwierdzanie i salda
Aplikacja do zarządzania urlopami zastępuje arkusz i łańcuch e-maili za pytaniem „czy mogę wziąć piątek wolny?”. Pracownicy składają wnioski o urlop i widzą pozostałe saldo; przełożeni zatwierdzają albo odrzucają wnioski, mając przed oczami kalendarz zespołu; dział HR ustawia rodzaje urlopów, limity i dni wolne od pracy i dostaje przejrzysty zapis do list płac. Aby zbudować takie narzędzie, potrzebujesz modelu danych, w którym salda są wyliczane z historii wniosków i korekt, jasnego łańcucha zatwierdzania oraz zasad dotyczących połowy dnia, weekendów i świąt. Narzędzie do budowy aplikacji AI może szybko przygotować działającą wersję. Najwięcej uwagi wymagają obliczenia sald, uprawnienia wokół wrażliwych rodzajów urlopów i zgodność z Twoją faktyczną polityką.
Czego potrzebuje aplikacja
Dane
| Tabela | Najważniejsze pola |
|---|---|
| Pracownicy | Imię, e-mail, przełożony, zespół, lokalizacja, data rozpoczęcia pracy, system pracy (dni w tygodniu, godziny dziennie), aktywny tak/nie |
| Rodzaje urlopów | Nazwa (wypoczynkowy, chorobowy, rodzicielski, bezpłatny, inny), płatny tak/nie, wymaga zatwierdzenia tak/nie, wlicza się do limitu tak/nie, wrażliwy tak/nie |
| Limity | Pracownik, rodzaj urlopu, rok, dni przysługujące, dni przeniesione |
| Wnioski | Pracownik, rodzaj urlopu, data początkowa, data końcowa, pół dnia na początku lub na końcu, liczba dni zaliczonych, powód, status (oczekujący, zatwierdzony, odrzucony, anulowany), zatwierdzający, data decyzji |
| Korekty | Pracownik, rodzaj urlopu, dni (+ lub −), powód, kto wprowadził, data |
| Dni wolne od pracy | Lokalizacja, data, nazwa |
Kluczowa zasada: nigdy nie zapisuj salda, które edytujesz ręcznie. Saldo to limit + przeniesienie + korekty − zatwierdzone dni. Każda zmiana ma rekord z powodem, więc gdy ktoś zapyta „dlaczego mam 3,5 dnia?”, możesz mu to pokazać.
Ekrany
- Pracownik: moje saldo według rodzaju urlopu, formularz wniosku, moje wnioski ze statusami, kalendarz mojego zespołu.
- Przełożony: oczekujące wnioski obok kalendarza zespołu, zatwierdzenie lub odrzucenie z komentarzem, salda zespołu.
- HR/administrator: pracownicy, rodzaje urlopów, limity, dni wolne od pracy, korekty, raporty i eksporty.
Uprawnienia
To dane osobowe, a część z nich jest wrażliwa. Pracownicy widzą swoje wnioski, a w kalendarzu zespołu tylko to, że kolega jest „nieobecny” — nie dlaczego. Przełożeni widzą swoich podwładnych. HR widzi wszystkich. Urlop chorobowy i inne wrażliwe rodzaje powinny być widoczne jako „nieobecny” dla każdego poza samym pracownikiem, jego przełożonym i HR. Egzekwuj to po stronie serwera; zobacz kontrolę dostępu opartą na rolach. Zasady ochrony danych pracowników różnią się w zależności od kraju, więc sprawdź swoje.
Decyzje i kompromisy
Dni czy godziny
Liczenie w dniach (z połówkami) jest najprostsze i pasuje do większości zespołów biurowych. Liczenie w godzinach sprawdza się u osób na część etatu i na zmianach, ale każde obliczenie staje się bardziej skomplikowane. W pierwszej wersji wybierz jedną metodę, zależnie od tego, jak Twoje umowy opisują limity.
Limit z góry czy narastający
Przyznanie pełnego rocznego limitu pierwszego dnia roku urlopowego jest najprostsze. Narastanie — zdobywanie części dni co miesiąc — jest powszechne w niektórych krajach i dla nowych pracowników, i wymaga miesięcznego obliczenia. W obu przypadkach potrzebne jest proporcjonalne naliczanie dla osób, które zaczynają lub kończą pracę w środku roku.
Które dni się liczą
Wniosek od czwartku do wtorku powinien liczyć tylko dni robocze, z wyłączeniem weekendów i świąt obowiązujących w lokalizacji danego pracownika, z uwzględnieniem systemu pracy na część etatu. To obliczenie najczęściej jest błędne, więc przetestuj je na prawdziwych przykładach.
Łańcuch zatwierdzania
Jeden zatwierdzający (bezpośredni przełożony) wystarcza w większości małych firm. Dodaj zastępcę na czas nieobecności przełożonego i opcjonalnie drugi etap dla długich nieobecności. Ustal, co się dzieje z oczekującymi wnioskami, gdy przełożony odchodzi z firmy.
Przeniesienie i koniec roku
Ustal rok urlopowy, ile niewykorzystanych dni można przenieść i czy przeniesione dni wygasają. Poproś AI, żeby pokazało przeniesienie jako osobną pozycję, aby saldo dało się wyjaśnić.
Pierwszy prompt, który działa
Zbuduj wewnętrzną aplikację do zarządzania urlopami dla firmy zatrudniającej 45 osób, z biurami w Manchesterze (Wielka Brytania) i Dublinie (Irlandia). Rodzaje urlopów: wypoczynkowy (25 dni, cały rok z góry, do 5 dni przeniesienia, wygasające 31 marca), chorobowy (bez limitu, bez zatwierdzenia, widoczny dla innych tylko jako „nieobecny”), bezpłatny i inny. Rok urlopowy trwa od stycznia do grudnia. Pracownicy składają wnioski z datą początkową, końcową i opcjonalnymi połówkami dni, i widzą, ile dni roboczych wykorzystają — bez weekendów, dni wolnych w systemie niepełnego etatu i świąt obowiązujących w ich biurze. Salda są wyliczane z limitów, przeniesień, korekt i zatwierdzonych wniosków, nigdy nie są edytowane bezpośrednio. Przełożeni zatwierdzają lub odrzucają wnioski swoich podwładnych z komentarzem, widząc jednocześnie kalendarz zespołu. HR zarządza pracownikami, rodzajami urlopów, limitami, dniami wolnymi od pracy i korektami z podaniem powodu, a zatwierdzone urlopy z danego miesiąca eksportuje jako CSV do płac. Role: pracownik, przełożony, HR. Wszystko zapisuj w bazie danych. Prosty i szybki interfejs.
Kroki budowy
- Zacznij od spisanej polityki. Jeśli nie jest spisana, najpierw ją spisz — aplikacja może stosować tylko reguły, które da się sformułować.
- Zaimportuj pracowników wraz z przełożonym, lokalizacją i systemem pracy, zwykle z arkusza. Zobacz jak zamienić arkusz kalkulacyjny w aplikację.
- Rodzaje urlopów, limity i dni wolne od pracy.
- Formularz wniosku z obliczeniem dni roboczych, przetestowany na co najmniej dziesięciu prawdziwych przypadkach: przez weekend, przez święto, u osoby na część etatu, połowa dnia, przejście na nowy rok.
- Przepływ zatwierdzania i kalendarz zespołu.
- Logowanie i role, z ukrytymi wobec kolegów wrażliwymi rodzajami urlopów.
- Powiadomienia: e-mail do przełożonego o nowym wniosku i do pracownika o decyzji, przez Twojego dostawcę poczty. Zobacz wysyłanie e-maili z aplikacji.
- Raporty i eksporty do płac.
- Równoległa praca z arkuszem przez miesiąc, porównanie sald, a następnie przejście na nową aplikację.
Typowe błędy
- Przechowywanie liczby salda i jej edytowanie. Tracisz historię, a każdy spór staje się zgadywaniem.
- Liczenie dni kalendarzowych zamiast roboczych albo ignorowanie lokalizacji pracownika przy świętach.
- Pokazywanie wszystkim, dlaczego kolega jest nieobecny. Na wspólnym kalendarzu wystarczy „nieobecny”.
- Brak zastępcy zatwierdzającego. Wnioski czekają dwa tygodnie, bo przełożony jest na urlopie.
- Pozwolenie na anulowanie zatwierdzonego urlopu bez wiedzy przełożonego. Anulowanie powinno powiadamiać zatwierdzającego.
- Zakodowane na stałe przepisy na ten rok. Trzymaj limity i święta jako dane, które HR może edytować w przyszłym roku.
Kiedy lepszy jest gotowy produkt
Jeśli chcesz, by urlopy były powiązane z płacami, umowami, ocenami okresowymi i raportowaniem zgodności — albo zatrudniasz ludzi w wielu krajach — warto kupić oprogramowanie HR z modułem zarządzania czasem wolnym. Takie produkty utrzymują kalendarze świąt i przepisy ustawowe dla każdego kraju, co jest stałą pracą, którą inaczej musiałbyś wykonywać sam.
Własna aplikacja ma sens w małych i średnich firmach z prostą polityką, które chcą zostawić arkusz za sobą, w nietypowych układach (zespoły zmianowe, rotacyjne grafiki, urlopy powiązane z dyżurami) albo jako część szerszego narzędzia wewnętrznego obok portalu wdrożeniowego dla nowych pracowników i innych wniosków. Szerszy zarys podejścia znajdziesz w jak zbudować narzędzie wewnętrzne.
Budowa z Mythex
W Mythex opisujesz politykę i przepływ pracy w czacie, a agent buduje aplikację w podglądzie na żywo, z dodaniem bazy Postgres, gdy wnioski mają być zapisywane. Możesz zaprosić współpracowników do swojego obszaru roboczego Mythex, żeby pomogli budować i sprawdzać aplikację, a przed publikacją pokazać podgląd dwóm lub trzem prawdziwym użytkownikom — przypadek użycia narzędzia wewnętrznego w dokumentacji sugeruje właśnie takie podejście. Logowanie pracowników i e-maile z powiadomieniami korzystają z Twoich własnych dostawców; Mythex nie ma wbudowanego logowania użytkowników końcowych ani wysyłki e-maili. Używaj trybu planowania, żeby uzgodnić obliczenie sald, zanim powstanie jakikolwiek kod, oraz /test, aby przeklikać wniosek i zatwierdzanie.
Jako punkt wyjścia do promptu wypróbuj szablony tracker zatwierdzeń lub katalog zespołu.
Pytania
Jakie funkcje powinna mieć aplikacja do zarządzania urlopami?
Rodzaje urlopów z rocznymi limitami, formularz wniosku, zatwierdzenie przez przełożonego, pozostały saldo każdego pracownika, kalendarz zespołu pokazujący, kto jest na urlopie, oraz dni wolne od pracy dla każdej lokalizacji. Raporty i eksport do płac przychodzą później.
Jak należy obliczać salda urlopowe?
Zapisuj każdy wniosek i każdą korektę jako osobny rekord, a saldo wyliczaj z nich, zamiast trzymać jedną liczbę, którą edytujesz. Dzięki temu zawsze możesz wyjaśnić saldo i poprawić błędy bez utraty historii.
Czy aplikacja urlopowa musi być zgodna z prawem pracy?
Uprawnienia urlopowe, przenoszenie dni, zasady zwolnień chorobowych i wymogi dotyczące dokumentacji wynikają z lokalnego prawa i umów o pracę, i bardzo różnią się w zależności od kraju. Aplikacja powinna stosować Twoją politykę, a tę politykę powinien sprawdzić specjalista HR lub prawnik.
Kiedy firma powinna przejść z arkusza kalkulacyjnego na aplikację urlopową?
Zwykle wtedy, gdy więcej niż jeden przełożony zatwierdza urlopy, gdy ludzie zaczynają pytać HR o swoje saldo albo gdy dwie kluczowe osoby są jednocześnie nieobecne, bo nikt nie widział kalendarza.