Berita

Studi Kasus Menghitung Gaji Sederhana dengan Yii

12 tahun yang lalu

(oleh : Badiyanto)

Pada bagian ini akan mengajak Anda untuk membuat informasi/laporan dalam bentuk tabel serta isi dari kolom akan menampilkan hasil perhitungan. Perhitungan akan dilakukan oleh fungsi yang ditempatkan dalam model.

1. Buat tabelnya

CREATE TABLE `gaji` (
  `nip` CHAR(5) NOT NULL,
  `nama` CHAR(20) DEFAULT NULL,
  `gaji_pokok` DECIMAL(10,2) DEFAULT NULL,
  `tunjangan` DECIMAL(10,2) DEFAULT NULL,
  PRIMARY KEY (`nip`)
) ENGINE=INNODB ;

INSERT  INTO `gaji`(nip,nama,gaji_pokok,tunjangan)
VALUES ('1111','Edi','2000000.00','1200000.00'),
('1112','Udin','2050000.00','200000.00'),
('1113','ana','3000000.00','300000.00');

2. Buatlah model dan CRUD lewat gii genearator

3. Tambahkan Beberapa Funngsui berikut ke Dalam model Gaji.php

public function totalGaji()
    {
      $total=$this->gaji_pokok + $this->tunjangan;
      return $total;
    }

menghitung total gaji dengan menjumlahkan isi field tunjangan + gaji_pokok   
   

public function pajak()
    {
       $total=$this->gaji_pokok + $this->tunjangan;
       $pajak=$total * 5/100;
       return $pajak;
    }

atau Anda bisa dengan cara $pajak=totalGaji()*5/100;
menghiytung potongan pajak  misal 5%

  
 public function gajiBersih()
    {
       return $this->totalGaji() - $this->pajak();
    }
menghitung gaji bersih dengan mengurangi fungsi    $this->totalGaji() - $this->pajak()

4. Tambahkan/ubah begian view admin.php

<h1>Tabel Gaji</h1>
</div><!-- search-form -->
<?php $this->widget('zii.widgets.grid.CGridView', array(
    'id'=>'gaji-grid',
    'dataProvider'=>$model->search(),
    'filter'=>$model,
    'columns'=>array(
        'nip',
        'nama',
        array(
        'name'=>'nip',
        'type'=>'raw',
        'header'=>'Gaji Pokok',
        'value'=>'CHtml::encode(number_format($data->gaji_pokok,2))',
        'htmlOptions'=>array('width'=>'','style'=>'text-align:right'),
        ),
        array(
            'name'=>'nip',
            'type'=>'raw',
            'header'=>'Tunjangan',
            'value'=>'CHtml::encode(number_format($data->tunjangan,2))',
            'htmlOptions'=>array('width'=>'','style'=>'text-align:right'),
        ),
        array(
            'name'=>'nip',
            'type'=>'raw',
            'header'=>'Jumlah Gaji',
            'value'=>'CHtml::encode(number_format($data->totalGaji(),2))',
            'htmlOptions'=>array('width'=>'','style'=>'text-align:right'),
        ),
        array(
            'name'=>'nip',
            'type'=>'raw',
            'header'=>'Pajak',
            'value'=>'CHtml::encode(number_format($data->pajak(),2))',
            'htmlOptions'=>array('width'=>'','style'=>'text-align:right'),
        ),
       
        array(
            'name'=>'nip',
            'type'=>'raw',
            'header'=>'gaji Bersih',
            'value'=>'CHtml::encode(number_format($data->gajiBersih(),2))',
            'htmlOptions'=>array('width'=>'','style'=>'text-align:right'),
        ),
        array(
            'class'=>'CButtonColumn',
        ),
    ),
)); ?>

penjelasan perintah'value'=>'CHtml::encode(number_format($data->gajiBersih(),2))', memanggilfungsi gajiBersih()

Lihat hasilnya

 


Berita Lainnya

Sharing Session
Sharing Session "Technology with a Soul" Hadirkan Integrasi Ilmu Berteraskan Tauhid di Era Digital

5 hari yang lalu

Sharing Session "Technology with a Soul" Hadirkan Integrasi Ilmu Berteraskan Tauhid di Era DigitalYogyakarta, 8 Oktober 2026 – Universitas Teknologi Digital Indonesia (UTDI) ...

Selengkapnya
SINTAKU: Inovasi UTDI untuk Mendukung Pengentasan Kemiskinan melalui Optimalisasi UMKM di Bantul
SINTAKU: Inovasi UTDI untuk Mendukung Pengentasan Kemiskinan melalui Optimalisasi UMKM di Bantul

10 hari yang lalu

Pada tanggal 21 Agustus 2025 UTDI dan Bappeda Kabupaten Bantul mengadakan kegiatan FGD penelitian hasil penelitian dosen Sri Redjeki dengan judul Pengentasan ...

Selengkapnya
 UTDI Gelar PESONA UTDI 2026:  Berakar pada Budaya, Bergerak dengan Teknologi, Melangkah Mendunia
UTDI Gelar PESONA UTDI 2026: Berakar pada Budaya, Bergerak dengan Teknologi, Melangkah Mendunia

18 hari yang lalu

 UTDI Gelar PESONA UTDI 2026: Berakar pada Budaya, Bergerak dengan Teknologi, Melangkah MenduniaYogyakarta, 21 September 2026 – Universitas Teknologi Digital Indonesia (UTDI) sukses ...

Selengkapnya