Yıllık izin hak edişinden gece primine, fazla mesai 270 saat limitinden mobil GPS check-in'e kadar — kıdem, yaş, hafta tatili ve bayram koda gömülüdür. Sistem hukuka aykırı izni, mesaiyi ya da bakiyeyi en baştan engeller.
İş Kanununun saydığı 13 izin türü gün sayısı, ücret durumu ve belge şartıyla hazır gelir; tenant kendi özel türlerini sınırsız ekler. Her türün yasal referansı koda gömülüdür.
Hazır türlerin yanında, şirketinize özel izin türlerini (örn. CUSTOM_TRAINING) ekleyebilirsiniz: ad, kategori (yasal/ücretli/ücretsiz), varsayılan gün, ücretli mi, belge/sebep şartı ve yasal referans. Preset key'ler rezervedir — özel tür çakışamaz; silme soft-delete'tir, denetim izi kalır.
Yıllık izin hakkı kıdem ve yaşa göre tek saf fonksiyonla hesaplanır; gün sayımı hafta sonu ve resmi tatili hariç tutar. Hak ediş 1 yılı doldurmadan başlamaz.
Kullanılmayan yıllık izin sonraki yıla devreder; şirket politikasıyla devir tavanı konabilir. Yönetici panosu tüm çalışanların bakiyesini risk uyarılarıyla tek tabloda gösterir.
Geçen yıldan kalan izin yeni yılın hak edişine eklenir; eksik bakiye satırları toplu açılır.
Yöneticiye yıl sonuna kalan günle birlikte riskli bakiyeleri gösterir.
Yıl başında bakiye senkronu çalışır; denetim ve planlama için dışa aktarım hazırdır.
Tek bir doğrulama hattı: çakışma, bakiye, rezervasyon ve yetki kontrolleri leave.routes ile portal için ortak util'den geçer — iki yol da aynı kuralı uygular.
Ücretsiz izin (UNPAID) bakiye düşürmez — hak eksilmez. Bakiye kontrolü yalnız hak düşüren türlerde çalışır; bakiye satırı tanımsızsa kontrol en kötü ihtimalle atlanır, talep sessizce engellenmez.
Tatil takvimi hem platform genelinde hem tenant'a özel tutulur; gün hesaplarında ve puantaj kırılımında otomatik dikkate alınır.
Tüm tatil kayıtları tarih, ad ve tip ile tanımlanır; yarım gün işaretlenebilir.
Global tatiller tüm tenant'lara uygulanır; yalnız platform yöneticisi düzenler.
Gündüz, gece, dönüşümlü ve esnek vardiyalar başlangıç/bitiş/mola ve gece primi oranıyla tanımlanır; atama, toplu atama ve rotasyonla planlanır.
Giriş-çıkış saatinden normal / fazla / gece / tatil dakikaları otomatik kırılır. Saf, deterministik bir motor — yasal sabitler ve zam oranları koda gömülüdür; gece devri doğru hesaplanır.
Saat ve tarih girildiğinde tüm kırılım DB'ye yazmadan canlı önizlenir; aynı vardiya/tarih tek çağrıda 500 çalışana toplu girilebilir; bir çalışanın vardiya atamasından çalışılan dakika ve fazla mesai otomatik hesaplanır. Gece devreden vardiya (örn. 22:00→06:00) saat aşımı eklenerek doğru ölçülür.
GPS geo-fence ile mobil check-in, biyometrik cihaz CSV aktarımı ve offline dayanıklı kuyruk — mesafe hesabı sunucuda yapılır, KVKK sınırları koda gömülüdür.

İşyeri merkezi + yarıçapına göre konum sunucuda Haversine ile doğrulanır.
Sahada bağlantı kopsa bile kayıtlar kaybolmaz; sunucu kişisel veriyi minimum tutar.
Donanım PDKS cihazlarından otomatik veri çekme (pull) henüz iskelet aşamasındadır. Bugün satılabilir ve gerçek çalışan yollar: mobil GPS/QR/yüz check-in ve biyometrik cihaz CSV aktarımı. "Yüz tanıma" cihazın kendisinde yapılır; sunucu yalnız hangi yöntemin kullanıldığını kaydeder — biyometrik veri (yüz/parmak izi) cihazda kalır.
Demoda kendi vardiya düzeninizle bir haftalık puantaj çalıştıralım — fazla mesai, gece primi ve tatil zammı kendi gözünüzle.