Berita

Studi Kasus Menghitung Gaji Sederhana dengan Yii

11 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

Universitas Teknologi Digital Indonesia dan Royal Ambarrukmo Yogyakarta Jalin Kerjasama Strategis: Penandatanganan MoU untuk Pengembangan SDM dan Pariwisata Digital
Universitas Teknologi Digital Indonesia dan Royal Ambarrukmo Yogyakarta Jalin Kerjasama Strategis: Penandatanganan MoU untuk Pengembangan SDM dan Pariwisata Digital

2 bulan yang lalu

[Yogyakarta, 3 Oktober 2024] Universitas Teknologi Digital Indonesia (UTDI) menandatangani MoU dengan Royal Ambarrukmo Yogyakarta, sebuah hotel dan pusat konferensi terkemuka di ...

Selengkapnya
Kerjasama Strategis antara Universitas Teknologi Digital Indonesia dan Institut Teknologi Yogyakarta: Penandatanganan MoU untuk Peningkatan Kualitas Pendidikan
Kerjasama Strategis antara Universitas Teknologi Digital Indonesia dan Institut Teknologi Yogyakarta: Penandatanganan MoU untuk Peningkatan Kualitas Pendidikan

2 bulan yang lalu

[Yogyakarta, 21 Agustus 2024] Universitas Teknologi Digital Indonesia (UTDI) dan Institut Teknologi Yogyakarta (ITY) secara resmi menandatangani MoU sebagai langkah awal kolaborasi ...

Selengkapnya
WISUDA 2024 : Universitas Teknologi Digital Indonesia (UTDI) Sukses Mencetak Ahli-Ahli Digital
WISUDA 2024 : Universitas Teknologi Digital Indonesia (UTDI) Sukses Mencetak Ahli-Ahli Digital

2 bulan yang lalu

Yogyakarta, 5 Oktober 2024 - Universitas Teknologi Digital Indonesia (UTDI) telah melaksanakan perhelatan agenda Rapat Senat Terbuka-Wisuda Diploma Tiga, Sarjana, dan Magister ...

Selengkapnya