Arkadaşlar merhaba
Bulunduğum kurumda kendi ihtiyaçlarımız için personel izin takip programı yapmaya çalışıyorum
Takıldığım bir konu var. Yardımcı olabilirseniz sevinirim.
Bir personelin 2016 yılından 8 2017 yılından 16 2018 yılından 20 gün izni olduğunu varsayalım.
Bu personel diyelim ki 10 günlük izin alacak. Öncelikle 2016 yılından 8 günü sonrasında kalan 2 günü ise 2017 yılından kullanması gerekiyor. Nasıl bir kodlama yapmalıyım.
Bu arada veritabanında izin sürelerini varchar olarak tuttum. Bir sıkıntı olur mu?
Personel İzin Programı İzin Kullanımı
6
●178
- 09-05-2023, 11:36:47İzin sayılarını char olarak tutmanız hesaplama yaparken dönüştürme yapmanızı gerektirecektir.Örneğin 10 gün izinden 5 günü düşerek göstermek istediğinizde bunları convert etmeniz gerekir.
Bu nedenle yarım izin düşme gibi bir durumunuz yoksa int tutmanızda fayda var. - 09-05-2023, 11:45:37Cevabınız için teşekkür ederim. Pekiexayazilim adlı üyeden alıntı: mesajı görüntüle
bu konuda nasıl bir yol izleyebilirim fikriniz var mı?Alıntı - 09-05-2023, 12:16:53yönetici panelinden izin düşümü yapılırken hangi yıldan düşüleceği seçilecek mi yoksa otomatik mi olarak kendisi geri yıllardan gelerek mi düşecek.
- 09-05-2023, 14:40:40Kendi yıllardan geri düşerek gelecek ise. Özetle anlatayım ben olsam iki tane tablo oluştururdum.
- İzin Hakkı Tablosu: (Id, Personel_Id, Yil, IzinSuresi ve varsa diğer istediğiniz başka bilgiler.)
- İzin Kullanım Tablosu: (Id, Personel_Id, KullandigiIzinSuresi ve kullandığı tarihler arasına ilişkin diğer detaylar)
Yukarıdaki tablolar ilişkiseldir.
Ardından personel görüntülendiğinde ilk yıldan düşmeye başlarsınız. Bittikçe diğer yıla geçersiniz.
Örneğin:
Kullandığı izin sayısının toplamını izin kullanım tablosundan toplarsınız. 50 gün diyelim. Bunu bir int değişken içerisinde tutarsınız. Değişken adı: KullanilanIzinToplami
foreach ile ilk iznin tanımlı olduğu yıldan dönmeye başlarsınız.
2016 yılından başladığınızı varsayalım. 2016 yılının izin miktarına bakılır 30 gün. 50 günden 30 gün düşülür. kalan 20 gün yukarıdaki tanımlanan KullanilanIzinToplami adlı değişkenin içine yeniden atılır.
Ardından 2017 yılına geçilir. 2017 hakkına bakılır. 45 gün diyelim. 45'den kalan 20 gün düşür ve böylece döngü devam ederek yazılır. Düşecek birşey kalmadığından zaten izin hakkı tam olarak yazılacaktır.
Metinle anlatmak biraz zor oluyor umarım açıklayıcı olmuştur. İyi çalışmalar. - 09-05-2023, 16:10:21çok teşekkür ederim Kafamda birşeyler oluştu. En azından nasıl bir tablo yaparım olayını çözecek gibiyim. Eyvallahexayazilim adlı üyeden alıntı: mesajı görüntüle