İçeriğe geç

İzin — İşlemler

Çift görünümün “nasıl yapılır” tarafı. Kavram/referans için → modul-izin.md. Dil: TR. Kanıt: Ekrandaki etiket/buton — kod adı yok.


Nerede: İzin Yönetimi → İzin Talep Et (veya İzinler listesinde sağ üst).

Yeni izin talebi formu

Adımlar:

  1. İzin Türü seç → seçilen türün bakiyesi ve kuralları (blok izin, minimum bildirim, maksimum gün, belge gereksinimi) otomatik görünür.
  2. Başlangıç Tarihi + Bitiş Tarihi seç → sistem çalışma günü sayısını otomatik hesaplar (hafta sonu/tatil hariç).
    • Tek günse: Yarım Gün (Sabah/Öğleden Sonra) veya Saatlik İzin (başlangıç–bitiş saati) seçebilirsin.
  3. (Gerekiyorsa) Sebep yaz ve Destekleyici Belge yükle (uzun/raporlu izinlerde zorunlu olabilir).
  4. Gözden Geçir kartında özeti + “bu talepten sonra kalan bakiye”yi gör → Talebi Gönder.

🔗 Sonuç: Talep oluşturulur (ör. talep numarası verilir) ve onay zincirine girer (“Onay Bekliyor”). Bakiyede “Bekleyen”e yazılır.

Dikkat (ekranda çıkan kurallar):

  • Yetersiz bakiye → “Eksi Bakiye” uyarısı.
  • Blok izin / minimum bildirim / maksimum gün ihlali → talep engellenir (kuralın gereği).
  • Mutabakat tarihinden önceki güne talep → engellenir (modul-ayarlar-izin.md).
  • Çalışma günü yok (tümü tatil/hafta sonu) → talep edilemez.

Nerede: İzinler → Çalışan İçin İzin Gir (HR/Owner). Talep formunda üstte “Başka Bir Çalışan İçin Giriş” kartı açılır.

Adımlar: Çalışan ara → seç (bakiyesi otomatik yüklenir) → kalan adımlar normal talep akışı gibi. “Seçimi temizle (kendim için)” ile kendi adına döner.


Nerede: İzinler → Bekleyen Onaylar sekmesi (veya talep detayında).

İzin talebi detayı + onay

Adımlar: Talebi aç → Onayla → (isteğe bağlı) Yorum ekle → Onayla.

🔗 Sonuç: Onay zincirindeki adımın tamamlanır. Tüm adımlar bitince izin Onaylandı olur ve bakiyeden düşülür.

Sistemde ayrı “Yönetici” rolü yoktur; onayı, çalışanın bağlı olduğu yönetici (ekip bağlamı) veya İK verir.


Nerede: Talep detayı → Reddet.

Adımlar: ReddetGerekçe gir (zorunlu — boşken buton pasif) → Reddet.

🔗 Sonuç: Talep Reddedildi olur; rezerve edilen bakiye geri döner. Gerekçe talep sahibine görünür.


Nerede: İzinler → İzinlerim → bekleyen/devam eden talepte İptal (veya detayda).

Adımlar: İptal → (isteğe bağlı) İptal Sebebiİzni İptal Et.

🔗 Sonuç: Talep İptal Edildi; bakiyedeki “Bekleyen” geri döner.

Dikkat: Mutabakat tarihinden önceki döneme ait izin iptal edilemez (kilidin gereği, hata değil). Ayrıca yalnız bekleyen/devam eden talepler iptal edilebilir; onaylanmış izinde durum farklıdır.


Nerede: İzin Yönetimi → İzin Takvimi.

Adımlar: Ay/Hafta görünümü seç → Departman ve İzin Tipi ile filtrele → bir güne tıklayıp o günün izinli çalışanlar + tatiller detayını gör. Renk açıklaması (legend) her izin türünün rengini gösterir.

🔗 Etki: Ekip planlaması — aynı gün çok kişi izinliyse önceden görülür.


İşlem Sonuç
Talep gönderdin Onay zincirine girer (Onay Bekliyor), bakiyede “Bekleyen”
Onaylandı (tüm adımlar) Bakiyeden düşülür, takvimde görünür
Reddedildi Bekleyen bakiye geri döner (gerekçeli)
İptal ettin Bekleyen bakiye geri döner
HR başka adına girdi Talep o çalışan için oluşur

Harness: scripts/scenarios/izin-screenshots.spec.mjsscreenshots/izin/{talep,detay,liste,takvim}/. Rol: HR/Owner (rekor demo tenant). Salt-okuma (form/dialog aç-kapa, talep göndermeden). Onay/ret dialogları için yetkili görünüm.