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

Bupati Bantul Sambut Baik Training Legislatif Dewan Perwakilan Mahasiswa UTDI  Sebagai Proses Pembelajaran Kepemimpinan di Organisasi Kemahasiswaan
Bupati Bantul Sambut Baik Training Legislatif Dewan Perwakilan Mahasiswa UTDI Sebagai Proses Pembelajaran Kepemimpinan di Organisasi Kemahasiswaan

8 bulan yang lalu

YOGYAKARTA (23/3/24). Dalam upaya meningkatkan pembelajaran kepemimpinan dan pemahaman mahasiswa tentang sistem pemerintahan, Dewan Perwakilan Mahasiswa Universitas Teknologi Digital Indonesia (DPM ...

Selengkapnya
Kerja Sama Antara UTDI dan PT STARLABS GLOBAL TEKNOLOGI
Kerja Sama Antara UTDI dan PT STARLABS GLOBAL TEKNOLOGI

8 bulan yang lalu

YOGYAKARTA (23/3/2024) – Universitas Teknologi Digital Indonesia (UTDI) telah menambah kerjasama dengan mitra dari sektor industri keamanan jaringan melalui penandatanganan Memorandum of ...

Selengkapnya
Sukses Besar, Radio Smart 102.1 FM Yogyakarta Gelar 'Smart Healthy' di UTDI
Sukses Besar, Radio Smart 102.1 FM Yogyakarta Gelar 'Smart Healthy' di UTDI

9 bulan yang lalu

YOGYAKARTA – Radio Smart 102.1 FM Yogyakarta telah sukses menyelenggarakan acara bertajuk "Smart Healthy" yang mengusung tema “Sadar Menjaga Reproduksi Sehat”. Acara ...

Selengkapnya