lutfijc35

Perhitungan Jasa

Oct 28th, 2019
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.   perhitunganJasa: function(tenor,pinjaman,jasa,tglPencairan,dACode,siklus,grace,isSliding ){
  2.     console.log("Tenor || "+tenor+" nilai || "+pinjaman+" jasa || "+jasa+" tanggal || "+tglPencairan+" dacode || "+dACode+" siklus || "+siklus+
  3.                 " Grace || "+grace+" isSliding || "+isSliding);
  4.     var jumlahAngsuran = tenor / siklus
  5.     var angsuranPokok =  this.round2dec(  pinjaman / ( jumlahAngsuran - grace))
  6.     console.log(angsuranPokok);
  7.  
  8.     var angsuranPokokBerjalan, angsuranBungaBerjalan , angsuranTotalBerjalan,data = [];
  9.     var sumAngsuranPokok = 0, sumAngsuranBunga = 0 , sumAngsuranTotal = 0;
  10.     var bulanBerjalan = 0;
  11.     var sisaPokok = pinjaman;
  12.  
  13.     console.log("angsuran || sisa pokok || pokok || bunga || angsuran ")
  14.     for(var i=1; i <= jumlahAngsuran; i++){
  15.  
  16.         var getDateNow = moment(String(tglPencairan)).add((i * siklus), 'M').format('YYYY-MM-DD')
  17.  
  18.         // perhitungan pokok
  19.         if(i <= grace){  // skip if there is grace period
  20.             angsuranPokokBerjalan = 0;
  21.         } else if(i == jumlahAngsuran) { // pembulatan untuk angsuran terakhir
  22.             angsuranPokokBerjalan =  this.round2dec (pinjaman - sumAngsuranPokok)
  23.         } else {
  24.             angsuranPokokBerjalan = angsuranPokok
  25.         }
  26.  
  27.         // perhitungan bunga
  28.         if(bulanBerjalan % 12== 0){
  29.  
  30.             if(isSliding == "Sliding Rate") angsuranBungaBerjalan = Math.round (jasa* sisaPokok * siklus / 12 ) / 100
  31.             else angsuranBungaBerjalan = Math.round (jasa * pinjaman * siklus / 12) / 100
  32.         }
  33.  
  34.  
  35.         angsuranTotalBerjalan = angsuranPokokBerjalan + angsuranBungaBerjalan;
  36.  
  37.  
  38.         sumAngsuranPokok += angsuranPokokBerjalan
  39.         sumAngsuranBunga += angsuranBungaBerjalan
  40.         sumAngsuranTotal += angsuranTotalBerjalan
  41.  
  42.         bulanBerjalan += siklus
  43.         sisaPokok = sisaPokok - angsuranPokokBerjalan
  44.  
  45.         console.log(i + "      || " + this.round2dec(sisaPokok) + " || " + angsuranPokokBerjalan +
  46.             " ||  " + angsuranBungaBerjalan + " || " + this.round2dec(angsuranTotalBerjalan)  + " || " + this.round2dec( sumAngsuranPokok))
  47.         data.push({
  48.               Sequence: i,
  49.               Periode: getDateNow,
  50.               DueDate: getDateNow,
  51.               sisaPokok: this.round2dec(sisaPokok),
  52.               SettValue: angsuranPokokBerjalan,
  53.               sumAngsuranPokok: sumAngsuranPokok,
  54.               InterestVal: angsuranBungaBerjalan,
  55.               sumAngsuranBunga: sumAngsuranBunga,
  56.               TotalBill: this.round2dec(angsuranTotalBerjalan),
  57.               sumAngsuranTotal: this.round2dec(sumAngsuranTotal),
  58.               DACode: dACode
  59.             })
  60.  
  61.     }
  62.  
  63.  
  64.     console.log(this.round2dec(sumAngsuranPokok) + "  || " + this.round2dec(sumAngsuranBunga) + " || " + this.round2dec( sumAngsuranTotal))
  65.     return data
  66.   },
  67.  
  68.   round2dec: function(num){
  69.     return Math.round(num * 100) / 100;
  70.   }
Advertisement
Add Comment
Please, Sign In to add comment