Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- perhitunganJasa: function(tenor,pinjaman,jasa,tglPencairan,dACode,siklus,grace,isSliding ){
- console.log("Tenor || "+tenor+" nilai || "+pinjaman+" jasa || "+jasa+" tanggal || "+tglPencairan+" dacode || "+dACode+" siklus || "+siklus+
- " Grace || "+grace+" isSliding || "+isSliding);
- var jumlahAngsuran = tenor / siklus
- var angsuranPokok = this.round2dec( pinjaman / ( jumlahAngsuran - grace))
- console.log(angsuranPokok);
- var angsuranPokokBerjalan, angsuranBungaBerjalan , angsuranTotalBerjalan,data = [];
- var sumAngsuranPokok = 0, sumAngsuranBunga = 0 , sumAngsuranTotal = 0;
- var bulanBerjalan = 0;
- var sisaPokok = pinjaman;
- console.log("angsuran || sisa pokok || pokok || bunga || angsuran ")
- for(var i=1; i <= jumlahAngsuran; i++){
- var getDateNow = moment(String(tglPencairan)).add((i * siklus), 'M').format('YYYY-MM-DD')
- // perhitungan pokok
- if(i <= grace){ // skip if there is grace period
- angsuranPokokBerjalan = 0;
- } else if(i == jumlahAngsuran) { // pembulatan untuk angsuran terakhir
- angsuranPokokBerjalan = this.round2dec (pinjaman - sumAngsuranPokok)
- } else {
- angsuranPokokBerjalan = angsuranPokok
- }
- // perhitungan bunga
- if(bulanBerjalan % 12== 0){
- if(isSliding == "Sliding Rate") angsuranBungaBerjalan = Math.round (jasa* sisaPokok * siklus / 12 ) / 100
- else angsuranBungaBerjalan = Math.round (jasa * pinjaman * siklus / 12) / 100
- }
- angsuranTotalBerjalan = angsuranPokokBerjalan + angsuranBungaBerjalan;
- sumAngsuranPokok += angsuranPokokBerjalan
- sumAngsuranBunga += angsuranBungaBerjalan
- sumAngsuranTotal += angsuranTotalBerjalan
- bulanBerjalan += siklus
- sisaPokok = sisaPokok - angsuranPokokBerjalan
- console.log(i + " || " + this.round2dec(sisaPokok) + " || " + angsuranPokokBerjalan +
- " || " + angsuranBungaBerjalan + " || " + this.round2dec(angsuranTotalBerjalan) + " || " + this.round2dec( sumAngsuranPokok))
- data.push({
- Sequence: i,
- Periode: getDateNow,
- DueDate: getDateNow,
- sisaPokok: this.round2dec(sisaPokok),
- SettValue: angsuranPokokBerjalan,
- sumAngsuranPokok: sumAngsuranPokok,
- InterestVal: angsuranBungaBerjalan,
- sumAngsuranBunga: sumAngsuranBunga,
- TotalBill: this.round2dec(angsuranTotalBerjalan),
- sumAngsuranTotal: this.round2dec(sumAngsuranTotal),
- DACode: dACode
- })
- }
- console.log(this.round2dec(sumAngsuranPokok) + " || " + this.round2dec(sumAngsuranBunga) + " || " + this.round2dec( sumAngsuranTotal))
- return data
- },
- round2dec: function(num){
- return Math.round(num * 100) / 100;
- }
Advertisement
Add Comment
Please, Sign In to add comment