Maaş hesaplama için Angular 17 ile yapılmış kütüphane.
-
Clone the repo
git clone https://github.com/nuryagdym/maas-hesaplama.git
-
Install dependencies
cd maas-hesaplama npm install
-
Start serving
ng serve
-
Build the library
ng build
-
Run tests
ng test
- Maaş hesaplama
- Maaliyet karşılaştırma - Çalışan türüne göre maaliyetleri karşılaştırabilme.
- Brütten Nete
- Netten Brüte (AGİ dahil ve AGİ hariç)
- Toplam Maliyete göre
-
Standart Çalışan maaş hesaplaması
-
6111 Sayılı Kanun maaş hesaplaması
-
17103 Sayılı Kanun maaş hesaplaması
-
27103 Sayılı Kanun maaş hesaplaması
-
Teknokent ve Ar-Ge personeli (4691 ve 5746) maaş hesaplaması
-
İşveren/Şirket ortağı maaş hesaplaması
-
İşveren Teknokent ve İşveren Ar-Ge personeli (4691 ve 5746) maaş hesaplaması
-
Ev Hizmetlerinde Çalışan maaş hesaplaması (10 günden fazla)
-
Emekli çalışan maaş hesaplama
-
Part time çalışan
-
İşveren Bağ-Kur 5 puanlık prim indirimi
-
Ar-Ge personeli eğitim durumu indirimi
-
Sakatlık durumu
-
AGİ
-
AGİ hesaplamasını açıp kapatma
-
Vergi ve SGK istisnalar
-
Toplam yıllık ve dönemlik maliyetler
-
TÜBİTAK dönem ortalama maliyet
-
Aylık ortalama maliyetler
-
İşveren Maaliyeti
-
Excel dosya indirebilme
-
Anlık hesaplama, User Input'ların her hangi biri değiştiği zaman hesaplama gerçekleşir
-
Ayın TL tutarı girildiğinde bir sonraki ay tutarları otomatik doldurulur
-
Asgari ücretin altında hesaplama yapmamaktadır, asgari ücretten daha düşük değer girilirse asgari ücrete göre hesaplama yapar.
-
hesaplamada Javascript ile alakalı hafif hatalar olabilir. Örneğin JS 29.43 * 3 == 88.28999999999999 olarak hesaplıyor, bu yüzden Toplam Yıllık maaliyetlerde 0-10 kuruş fark gösterebilir.
-
Netten brüte hesaplayan bir formül bulamadığım için, netten brüte ve toplam maliyete göre hesaplamaları binary search yöntemiyle hesaplanmaktadır.
- yeni yıla ait parametreler (SGK taven, asgari ücret, vergi dilimler, engelli vergi indirimleri) kolay bir şekilde eklenebilinmesi için build kodlarından ayrı tuttum. Yıl parametreleri: year-parameters.json. Sıralama önemli değildir, kütüphane kendisi yılları büyükten küçüğe sıralıyor, vergi dilimlerin de sıralaması önemli değildir.
- Input parametreler fixtures.json dosya içindedir, kolayca güncellenebilmesi için bunu da build kodların dışında bıkratım.
- Sıralama JSON dosyada nasılsa o şekilde kullanıcıya gösterilir.