Quick actions

cmd+k|ctrl+k

Navigation

Languages

Kalkulasi pesangon 0.1 bulan - 8 tahun(max)

Snippet info

Language

JavaScript

Visibility

public

Author

riki.whyudi

Created

2022-09-12T23:14:47.243831Z

Updated

2022-09-20T22:55:02.510073Z

// bulan 0.1 - 0.12
// masih ada bug untuk bulan
// tahun 1 - 8

function upahPesangon(input) {
const masaKerja = Number(input);
const idr = new Intl.NumberFormat('id-ID', {
style: 'currency', currency: 'IDR'
});
const nama = 'Riki Wahyudi';
const golongan = ['A', 'B', 'C', 'D'];
const totalPesangon = Math.floor(masaKerja) +1;
const tunjangan = 300000;
const pokokGaji = [2250000, 1750000, 1500000, 1100000];
console.log(`
Penghitung pesangon ini di buat
sesuai standart UU No.13 pasal 156
pada ayat (2) untuk karyawan
yang terkena PHK.\n
Version: Experimental (Beta)
`)


if (masaKerja < 1){
    const perbulan =  pokokGaji[3] + tunjangan;
    const pesangon = perbulan * totalPesangon;
  
    console.log(`
    ======== DATA KARYAWAN ======== \n
    Nama Karyawan: ${nama} 
    Masa Kerja: ${Number(masaKerja.toString().substr(2, 2))} bulan
    Golongan: ${golongan[3]}

    ======== UPAH BULANAN ======== \n
    Gaji Pokok: ${idr.format(pokokGaji[3])} 
    Tunjangan: ${idr.format(tunjangan)} 
    Upah Perbulan: ${idr.format(perbulan)} 
    ========== PESANGON =========== 
    Total Pesangon: ${idr.format(pesangon)} 
    ===============================
`)

   } else if (masaKerja >= 1 && masaKerja <= 3){
    const perbulan = pokokGaji[2] + tunjangan;
    const pesangon = perbulan * totalPesangon;
    
    console.log(`
    ======== DATA KARYAWAN ======== \n
    Nama Karyawan: ${nama} 
    Masa Kerja: ${masaKerja} tahun 
    Golongan: ${golongan[2]} 

    ======== UPAH BULANAN ======== \n
    Gaji Pokok: ${idr.format(pokokGaji[2])} 
    Tunjangan: ${idr.format(tunjangan)} 
    Upah Perbulan: ${idr.format(perbulan)} 

    ========== PESANGON =========== 
    Total Pesangon: ${idr.format(pesangon)} 
    ===============================
`)
   } else if (masaKerja >= 4 && masaKerja <= 6){
    const perbulan = pokokGaji[1] + tunjangan;
    const pesangon = perbulan * totalPesangon;
    
    console.log(`
    ======== DATA KARYAWAN ======== \n
    Nama Karyawan: ${nama} 
    Masa Kerja: ${masaKerja} tahun 
    Golongan: ${golongan[1]}

    ======== UPAH BULANAN ======== \n
    Gaji Pokok: ${idr.format(pokokGaji[1])} 
    Tunjangan: ${idr.format(tunjangan)} 
    Upah Perbulan: ${idr.format(perbulan)}

    ========== PESANGON =========== 
    Total Pesangon: ${idr.format(pesangon)}
    ===============================
`)
   } else if(masaKerja >= 7 && masaKerja <= 8){
    const perbulan = pokokGaji[0] + tunjangan;
    const pesangon = perbulan * totalPesangon;
    
    console.log(`
    ======== DATA KARYAWAN ======= \n
    Nama Karyawan: ${nama} 
    Masa kerja: ${masaKerja} tahun
    Golongan: ${golongan[0]} 
    ======== UPAH BULANAN ======== \n
    Gaji Pokok: ${idr.format(pokokGaji[0])} 
    Tunjangan: ${idr.format(tunjangan)}
    Upah Perbulan: ${idr.format(perbulan)} 

    ========== PESANGON ===========
    Total Pesangon: ${idr.format(pesangon)} 
    ===============================
`)
   } else {
     console.log(`Ho'oh tenan.! :D`)
   }
}

process.stdin.resume();
 process.stdin.setEncoding("ascii");
 _input = "";
 process.stdin.on("data", function (input) {
     _input += input;
 });
 
 process.stdin.on("end", function () {
    upahPesangon(_input);
 });
 
INFO