İnsan Kaynakları · Web Paneli + Mobil Uygulama

ShiftTracker

Personeliniz ofise girdiği anda Bluetooth beacon’ı tanır ve girişi otomatik kaydeder. İzinden mesaiye, yemek menüsünden bildirimlere kadar tüm operasyonel İK akışı tek platformda.

Proje Özeti

ShiftTracker, klasik PDKS çözümlerinin yerini alan üç katmanlı bir İK platformudur: ASP.NET Core 8 üzerinde geliştirilmiş yönetici web paneli, RESTful JSON API ve Flutter ile yazılmış iOS/Android personel uygulaması. Personel ofise vardığında telefonu cebindeyken bile BLE beacon sayesinde otomatik check-in/check-out yapılır; manuel kart okutma, parmak izi cihazı veya turnike donanımına gerek kalmaz.

Sistem yalnızca giriş-çıkış toplamaz; aynı veritabanı üzerinde izin yönetimi, kıdeme bağlı ek izin hesaplama, mesai analizi, geç giriş / erken çıkış raporları, yemek menüleri ve hedefli push bildirim altyapısı çalışır. 25+ alan modeli, 27 EF Core migrasyonu ve 17 yönetim ekranı ile orta ve büyük ölçekli işletmelerin tüm operasyonel İK ihtiyacını karşılar.

Sektör

İK · Vardiya & Devamlılık

Platform

Web (.NET 8) + Flutter

Donanım

BLE Beacon (iBeacon)

Modüller

📡

Beacon Tabanlı Otomatik Devam

UUID + Major/Minor + RSSI eşik değerleriyle ofise giriş anında otomatik check-in. Kat ve kapı bilgisi her kayıtta saklanır.

🗓️

İzin Yönetimi

İzin türü tanımlama, kota kontrolü, ekli belge yükleme, çok seviyeli onay akışı, iptal ve yönetici notu desteği.

⏱️

Mesai & Çalışma Süresi

Günlük net çalışma süresi, 9.5 saat üzeri mesai tespiti, kişi bazlı toplam mesai saati ve haftalık izin denetimi.

Geç Giriş / Erken Çıkış

09:00–18:00 / 11:00–20:00 / Pazar 10:00–19:00 vardiyaları, 15 dk tolerans ve dakika bazlı ortalama gecikme istatistiği.

🏆

Kıdem Bazlı Ek İzin

İşe başlangıç tarihinden hesaplanan kıdem yılı ve aralıklara göre ek izin günü tahsisi (örn. 5–10 yıl: +2 gün).

🍽️

Yemek Menüsü

Tarih, kategori ve grup bazlı menü; çorba/ana yemek/tatlı/içecek hiyerarşisi ve opsiyonel kalori bilgisi.

🔔

Hedefli Push Bildirim

Tüm kullanıcı / grup / rol / belirli kullanıcı hedefleme; vardiya, izin, duyuru ve uyarı kategorileri ile gönderim raporu.

👥

Rol & Grup Yönetimi

Departman/şube grupları, rol bazlı yetki, çoklu grup üyeliği ve acil durum kişileri kaydı.

🛡️

Bot & Brute-Force Koruması

Cloudflare Turnstile entegrasyonu ile login akışında bot, DDoS ve şifre deneme saldırılarına karşı GDPR uyumlu doğrulama.

Mobil Uygulama Akışı

  • Otomatik tarama: Uygulama açılır açılmaz Bluetooth ve konum servisi durumu kontrol edilir, eksikse kullanıcı doğrudan ayarlara yönlendirilir.
  • Beacon yakalama: Hedef UUID + Major/Minor + RSSI eşik değeri (-90) sağlandığında ofise giriş tespit edilir; çıkışta sinyal kaybedildiğinde otomatik check-out tetiklenir.
  • Minimum bekleme süresi: Yapılandırılabilir minimum kalış süresi (varsayılan 5 dk) ile kapı önünden geçen personelin yanlış kayıt oluşturması engellenir.
  • İzin talebi: Personel uygulamadan izin türü seçer, tarih aralığı belirler, gerekirse belge ekler ve durumu (Beklemede / Onaylandı / Reddedildi / İptal) gerçek zamanlı takip eder.
  • İzin hakkı görünümü: Kalan yıllık izin günü, kıdem bonusu ve toplam kullanılan gün sekmeli arayüzde gösterilir.
  • Yemek menüsü: Günlük menü grup atamasıyla otomatik filtrelenir; kategori bazlı görüntüleme.
  • Bildirim merkezi: Push bildirimleri uygulama içi geçmişte saklanır, okundu sayacı ana ekranda görüntülenir.
  • Profil yönetimi: Fotoğraf yükleme, telefon/e-posta güncelleme ve acil durum kişisi tanımlama.

Teknik Detaylar

  • Çift Mimari: Razor MVC web yöneticisi + api/v1/{Attendance,Leave,MealMenu,Notifications,Configuration} RESTful endpoint seti. Aynı ApplicationDbContext üzerinden tek veritabanı.
  • 25+ Entity Sınıfı: User, Role, Group, UserGroup, AttendanceRecord, LeaveRequest, LeaveType, LeaveRequestAttachment, SeniorityLeaveBonus, MealMenu, MealMenuItem, Notification, NotificationRecipient, EmergencyContact, Configuration ve daha fazlası.
  • 27 EF Core Migrasyonu: InitialCreate’ten LeaveManagement’a, AddSeniorityLeaveBonus’tan AddUserPassword’e kadar tüm şema değişiklikleri versiyonlanmış olarak gelir.
  • Konfigüre Edilebilir Davranış: Configuration tablosu üzerinden minimum kalış süresi, RSSI eşiği, mesai saati gibi parametreler kod değişikliği olmadan yönetilir.
  • Cookie Tabanlı Yetkilendirme: 8 saat oturum süresi, [Authorize] filtreleri, ayrı login/logout yolları, HSTS + HTTPS zorunluluğu.
  • Cloudflare Turnstile: Login formuna entegre, sunucu tarafı token doğrulama; bot, brute-force ve DDoS koruması GDPR uyumlu.
  • Firebase Admin SDK 3.4: Token bazlı tek/grup hedefli push; Android için yüksek öncelik kanalı, iOS için APNS sound desteği. Background message handler tanımlı.
  • BLE Beacon Entegrasyonu: Mobil tarafta dchs_flutter_beacon ile iBeacon protokolü; Android (BLUETOOTH_SCAN/CONNECT, LOCATION) ve iOS (always/whenInUse) izinlerinin otomatik akışı.
  • Manuel Müdahale: Yöneticiler için web panelinden manuel check-in/check-out, kayıt silme ve kullanıcı bazlı detay raporu.
  • GUID Tabanlı Dosya Yönetimi: Kullanıcı fotoğrafları ve izin belgeleri ayrı klasörlerde, çakışmasız adlandırma.
  • Şifre Güvenliği: SHA512 hashing; opsiyonel şifre alanı (legacy entegrasyonlar için) ve API login için ayrı endpoint.
  • Lokasyon Bilgisi: Her devam kaydına kat (Major) ve kapı (Minor) numarası eklenir; çok katlı binalar için filtreleme.

Teknoloji Yığını

Web Backend

ASP.NET Core 8 · C# 12 · Entity Framework Core 9 · MS SQL Server · Razor Views · Cookie Authentication · Firebase Admin SDK 3.4 · Cloudflare Turnstile · HttpClient Factory · HSTS

Mobil Uygulama

Flutter 3.9+ · Dart · dchs_flutter_beacon · Firebase Core / Auth / Messaging · flutter_local_notifications · permission_handler · audioplayers · image_picker · file_picker · shared_preferences · http · intl

Çıktılar

25+

Domain entity sınıfı

27

EF Core migrasyonu

3

Arayüz · Web + REST + Mobil

0

Ek donanım gereksinimi*

*Yalnızca tek bir BLE beacon verici (USB veya pil ile) yeterlidir; turnike, kart okuyucu veya parmak izi cihazına ihtiyaç yoktur.