• Tidak ada hasil yang ditemukan

Sistem Aplikasi Penggajian Pegawai pada Kantor Unit Pelayanan Teknik Dinas Pendidikan Kecamatan Kuala Berbasis Web

N/A
N/A
Protected

Academic year: 2017

Membagikan "Sistem Aplikasi Penggajian Pegawai pada Kantor Unit Pelayanan Teknik Dinas Pendidikan Kecamatan Kuala Berbasis Web"

Copied!
68
0
0

Teks penuh

(1)

LAMPIRAN LISTING PROGRAM WEBSITE

1.

Halaman Login (login_tpl.php)

<!DOCTYPE html>

<html lang="en">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<meta http-equiv="X-UA-Compatible" content="IE=edge">

<meta name="viewport" content="width=device-width, initial-scale=1">

<meta http-equiv="copyright" content="Purbadian Solution" />

<meta name="author" content="Yenda Purbadian" />

<title>Login System</title>

<link rel="stylesheet" type="text/css" href="<?php echo base_url('/assets/plugins/bootstrap/css/bootstrap.css'); ?>" />

<link rel="stylesheet" type="text/css" href="<?php echo base_url('/assets/css/style_login.css'); ?>" />

<link rel="stylesheet" type="text/css" href="<?php echo base_url('/assets/css/style_form.css'); ?>" />

<script type="text/javascript" src="<?php echo base_url('/assets/plugins/jQuery_v1.11.2/jquery.min.js'); ?>"></script>

<script type="text/javascript" src="<?php echo

base_url('/assets/plugins/bootstrap/js/bootstrap.min.js'); ?>"></script>

</head>

<body>

<div class="row layout-center">

(2)

<div id="wrapper">

<?php if ($this->session->flashdata('status') == 'failed'): ?>

<div class="alert alert-danger alert-dismissible" role="alert">

<button type="button"

class="close" data-dismiss="alert" label="Close"><span aria-hidden="true">&times;</span></button>

<span>Username atau password salah!!</span>

</div>

<?php endif; ?>

<div id="wrappertop"></div>

<div id="wrappermiddle"><!-- id wrappermiddle -->

<span><h2>Login System</h2></span>

<form class="form-signin"

action="<?php echo base_url('/site/login'); ?>" method="post">

<div id="username_input">

<input name="username" type="text" class="form-control animate0 bounceIn" id="url" placeholder="Username" required autofocus />

</div>

<div id="password_input">

<input name="password" type="password" class="form-control animate1 bounceIn" id="url" placeholder="Password" required />

</div>

<div id="submit">

<button class="btn btn-primary button_blue animate2 bounceIn" id="url_btn"

type="submit">Log In</button>

</div>

</form>

</div><!-- end id wrappermiddle -->

<div id="wrapperbottom"></div>

</div>

(3)

</div>

</body>

</html>

2.

Halaman Dashboard/home (site_tpl.php)

<!DOCTYPE html>

<html lang="en">

<head>

<title>Aplikasi Penggajian</title>

</head>

<body>

<?php echo $this->load->view($header); ?>

<div class="container-fluid">

<div class="row">

<?php echo $this->load->view($left_content); ?>

<div class="col-sm-9 col-sm-offset-3 col-md-10 col-md-offset-2 main">

<?php echo $this->load->view($content); ?>

</div>

</div>

</div>

</body>

</html>

3. Perkiraan.php

<?php

defined('BASEPATH') OR exit('No direct script access allowed');

(4)

public function __construct(){

parent::__construct();

$this->page->use_directory();

$this->load->model('model_perkiraan');

}

function index() {

$this->page->view('perkiraan_index', array (

'add' => $this->page->base_url('/add'),

'grid' => $this->model_perkiraan->get_perkiraan(),

));

}

private function form($action = 'insert', $id = ''){

$this->page->view('perkiraan_form', array (

'back' => $this->agent->referrer(),

'action' => $this->page->base_url("/{$action}/{$id}"),

'perkiraan' => $this->model_perkiraan->by_id_perkiraan($id),

));

}

public function add(){

$this->form();

}

public function edit($id){

$this->form('update', $id);

}

(5)

$data = array(

'kode' => $this->input->post('kode'),

'nama' => $this->input->post('nama'),

'aktif' => $this->input->post('aktif'),

'status' => $this->input->post('status'),

);

$this->db->insert('perkiraan', $data);

redirect($this->page->base_url());

}

public function update($id){

$data = array(

'kode' => $this->input->post('kode'),

'nama' => $this->input->post('nama'),

'aktif' => $this->input->post('aktif'),

'status' => $this->input->post('status'),

);

$this->db->where('id', $id);

$this->db->update('perkiraan', $data);

redirect($this->page->base_url());

}

}

/* End of file Perkiraan.php */

/* Location:

(6)

4.

Model_perkiraan.php

<?php

defined('BASEPATH') OR exit('No direct script access allowed');

class Model_perkiraan extends CI_Model {

public $kode = '';

public $nama = '';

public $aktif = '';

public $status = '';

public function get_perkiraan(){

$query = "

SELECT *

FROM perkiraan

ORDER BY id DESC

";

return $this->db->query($query)->result();

}

public function by_id_perkiraan($id){

$datasrc = $this->db->get_where('perkiraan', array('id' => $id));

return $datasrc->num_rows() > 0 ? $datasrc->row() : $this;

}

}

/* End of file Model_perkiraan.php */

/* Location:

(7)

5.

Perkiraan_form.php

<h3 class="page-header">Form Perkiraan</h3>

<div class="actions">

<a href="<?php echo $back; ?>"><span class="glyphicon glyphicon-arrow-left"

aria-hidden="true"></span>&nbsp;&nbsp;Back</a>

</div>

<?php echo form_open($action, array('class' => 'form-horizontal row-form')); ?>

<div class="form-group">

<label class="col-sm-2 control-label input-sm">Kode Perkiraan</label>

<div class="col-sm-3">

<input class="form-control input-sm" type="text" name="kode" placeholder="Kode Perkiraan" value="<?php echo $perkiraan->kode; ?>" required />

</div>

</div>

<div class="form-group">

<label class="col-sm-2 control-label input-sm">Nama Perkiraan</label>

<div class="col-sm-3">

<input class="form-control input-sm" type="text" name="nama" placeholder="Nama Perkiraan" value="<?php echo $perkiraan->nama; ?>" required />

</div>

</div>

<div class="form-group">

<label class="col-sm-2 control-label input-sm">Tipe</label>

<div class="col-sm-4">

<?php if ($perkiraan->status == '1' || $perkiraan->status == '') { ?>

<label>

(8)

</label>

<label>

<input type="radio" name="status" value="0"> Potongan

</label>

<?php } else { ?>

<label>

<input type="radio" name="status" value="1"> Pendapatan

</label>

<label>

<input type="radio" name="status" value="0" checked> Potongan

</label>

<?php } ?>

</div>

</div>

<div class="form-group">

<label class="col-sm-2 control-label input-sm">Aktif</label>

<div class="col-sm-4">

<?php if ($perkiraan->aktif == 'Y' || $perkiraan->aktif == '') { ?>

<label>

<input type="radio" name="aktif" value="Y" checked> Y

</label>

<label>

<input type="radio" name="aktif" value="N"> N

</label>

<?php } else { ?>

<label>

<input type="radio" name="aktif" value="Y"> Y

(9)

<label>

<input type="radio" name="aktif" value="N" checked> N

</label>

<?php } ?>

</div>

</div>

<div class="form-group">

<div class="col-sm-offset-2 col-sm-6">

<button type="submit" class="btn btn btn-primary btn-sm button-blue" > Simpan </button>

<button type="reset" class="btn btn btn-primary btn-sm button-red" > Reset </button>

</div>

</div>

<?php echo form_close(); ?>

6.

Perkiraan_index.php

<h3 class="page-header">Data Perkiraan</h3>

<div class="actions">

<a href="<?php echo $add; ?>"><span class="glyphicon glyphicon-plus"></span>&nbsp;&nbsp;Add Data</a>

</div>

<div class="block-table table-sorting clearfix"><!-- block-fluid table-sorting clearfix -->

<table cellpadding="0" cellspacing="0" class="tabel" id="datatables">

<thead>

<tr>

<th width="10%">no</th>

<th width="10%">kode</th>

<th width="50%">perkiraan</th>

<th width="20%">aktif</th>

(10)

</tr>

</thead>

<tbody>

<?php

$no = 1;

foreach($grid as $record) :

?>

<tr>

<td align="center"><?php echo $no; ?></td>

<td><?php echo $record->kode; ?></td>

<td><?php echo $record->nama; ?></td>

<td align="center"><?php echo $record->aktif; ?></td>

<td align="center">

<a href="<?php echo site_url('/master_data/perkiraan/edit/'.$record->id); ?>"

title="Edit Data"><span class="glyphicon glyphicon-pencil" aria-hidden="true"></span></a>

</td>

</tr>

<?php

$no++;

endforeach;

?>

</tbody>

</table>

</div>

7.

Jabatan.php

<?php

(11)

class Jabatan extends MX_Controller {

public function __construct(){

parent::__construct();

$this->page->use_directory();

$this->load->model('model_jabatan');

}

public function index() {

$this->page->view('jabatan_index', array(

'add' => $this->page->base_url('/add'),

'grid' => $this->model_jabatan->get_jabatan(),

));

}

private function form($action = 'insert', $id = ''){

$this->page->view('jabatan_form', array (

'back' => $this->agent->referrer(),

'action' => $this->page->base_url("/{$action}/{$id}"),

'jabatan' => $this->model_jabatan->by_id_jabatan($id),

));

}

public function add(){

$this->form();

}

(12)

$this->form('update', $id);

}

public function insert(){

$data = array(

'nama' => $this->input->post('nama'),

'aktif' => $this->input->post('aktif'),

);

$this->db->insert('jabatan', $data);

redirect($this->page->base_url());

}

public function update($id){

$data = array(

'nama' => $this->input->post('nama'),

'aktif' => $this->input->post('aktif'),

);

$this->db->where('id', $id);

$this->db->update('jabatan', $data);

redirect($this->page->base_url());

}

public function options_jabatan($id){

$jabatan = $this->db->order_by('nama')->get('jabatan');

return options($jabatan, 'id', $id, 'nama');

}

}

(13)

/* Location:

./application/modules/master_data/controllers/Jabatan.php */

8.

Model_jabatan.php

<?php

defined('BASEPATH') OR exit('No direct script access allowed');

class Model_jabatan extends CI_Model {

public $nama = '';

public $aktif = '';

public function get_jabatan(){

$query = "

SELECT *

FROM jabatan

ORDER BY id DESC

";

return $this->db->query($query)->result();

}

public function by_id_jabatan($id){

$datasrc = $this->db->get_where('jabatan', array('id' => $id));

return $datasrc->num_rows() > 0 ? $datasrc->row() : $this;

}

}

/* End of file Model_jabatan.php */

/* Location:

(14)

9.

Jabatan_form.php

<h3 class="page-header">Form Jabatan</h3>

<div class="actions">

<a href="<?php echo $back; ?>"><span class="glyphicon glyphicon-arrow-left" aria-hidden="true"></span> Back</a>

</div>

<?php echo form_open($action, array('class' => 'form-horizontal row-form')); ?>

<div class="form-group">

<label class="col-sm-2 control-label input-sm">Nama Jabatan</label>

<div class="col-sm-3">

<input class="form-control input-sm" type="text" name="nama" placeholder="Nama Jabatan" value="<?php echo $jabatan->nama; ?>" required />

</div>

</div>

<div class="form-group">

<label class="col-sm-2 control-label input-sm">Aktif</label>

<div class="col-sm-4">

<?php if (>aktif == 'Y' || $jabatan->aktif == '') { ?>

<label>

<input type="radio" name="aktif" value="Y" checked> Y

(15)

<label>

<input type="radio" name="aktif" value="N"> N

</label>

<?php } else { ?>

<label>

<input type="radio" name="aktif" value="Y"> Y

</label>

<label>

<input type="radio" name="aktif" value="N" checked> N

</label>

<?php } ?>

</div>

</div>

<div class="form-group">

<div class="col-sm-offset-2 col-sm-6">

<button type="submit" class="btn btn btn-primary btn-sm button-blue" > Simpan </button>

<button type="reset" class="btn btn btn-primary btn-sm button-red" > Reset </button>

</div>

</div>

<?php echo form_close(); ?>

10.

Jabatan_index.php

<h3 class="page-header">Data Jabatan</h3>

<div class="actions">

<a href="<?php echo $add; ?>"><span class="glyphicon glyphicon-plus"></span>&nbsp;&nbsp;Add Data</a>

(16)

<div class="block-table table-sorting clearfix"><!-- block-fluid table-sorting clearfix -->

<table cellpadding="0" cellspacing="0" class="tabel" id="datatables">

<thead>

<tr>

<th width="10%">no</th>

<th width="60%">jabatan</th>

<th width="20%">aktif</th>

<th width="10%">aksi</th>

</tr>

</thead>

<tbody>

<?php

$no = 1;

foreach($grid as $record) :

?>

<tr>

<td align="center"><?php echo $no; ?></td>

<td><?php echo $record->nama; ?></td>

<td align="center"><?php echo $record->aktif; ?></td>

<td align="center">

<a href="<?php echo site_url('/master_data/jabatan/edit/'.$record->id); ?>"

title="Edit Data"><span class="glyphicon glyphicon-pencil" aria-hidden="true"></span></a>

</td>

</tr>

<?php

$no++;

endforeach;

?>

(17)

</table>

</div>

11.

Pegawai.php

<?php

defined('BASEPATH') OR exit('No direct script access allowed');

class Pegawai extends MX_Controller {

public function __construct() {

parent::__construct();

$this->page->use_directory();

$this->load->model('model_pegawai');

}

public function index() {

$this->page->view('pegawai_index', array (

'add' => $this->page->base_url('/add'),

'grid' => $this->model_pegawai->get_pegawai(),

));

}

private function form($action = 'insert', $id = ''){

$this->page->view('pegawai_form', array (

'back' => $this->agent->referrer(),

'action' => $this->page->base_url("/{$action}/{$id}"),

(18)

));

}

public function add(){

$this->form();

}

public function edit($id){

$this->form('update', $id);

}

public function insert(){

$data = array(

'nip' => $this->input->post('nip'),

'nama' => $this->input->post('nama'),

'alamat' => $this->input->post('alamat'),

'nama_sekolah' => $this->input->post('nama_sekolah'),

'id_jabatan' => $this->input->post('id_jabatan'),

'no_telp' => $this->input->post('no_telp'),

'jk' => $this->input->post('jk'),

'agama' => $this->input->post('agama'),

'status' => $this->input->post('status'),

'anak' => $this->input->post('anak'),

'tempat_lahir' => $this->input->post('tempat_lahir'),

'tgl_lahir' => $this->input->post('tgl_lahir'),

'email' => $this->input->post('email'),

'pendidikan' => $this->input->post('pendidikan'),

'golongan' => $this->input->post('golongan'),

);

(19)

redirect($this->page->base_url());

}

public function update($id){

$data = array(

'nip' => $this->input->post('nip'),

'nama' => $this->input->post('nama'),

'alamat' => $this->input->post('alamat'),

'nama_sekolah' => $this->input->post('nama_sekolah'),

'id_jabatan' => $this->input->post('id_jabatan'),

'no_telp' => $this->input->post('no_telp'),

'jk' => $this->input->post('jk'),

'agama' => $this->input->post('agama'),

'status' => $this->input->post('status'),

'anak' => $this->input->post('anak'),

'tempat_lahir' => $this->input->post('tempat_lahir'),

'tgl_lahir' => $this->input->post('tgl_lahir'),

'email' => $this->input->post('email'),

'pendidikan' => $this->input->post('pendidikan'),

'golongan' => $this->input->post('golongan'),

);

$this->db->where('id', $id);

$this->db->update('pegawai', $data);

redirect($this->page->base_url());

}

public function delete($id){

$this->db->delete('pegawai', array('id' => $id));

(20)

}

public function options_pegawai(){

$pegawai = $this->db->order_by('nama')->get('pegawai');

return options($pegawai, 'id', NULL, 'nama');

}

public function ajax_pegawai_options(){

$id_pegawai = $this->input->post('id_pegawai');

$pegawai = $this->model_pegawai->show_pegawai_options($id_pegawai);

echo $pegawai->id.'#'.$pegawai->nip.'#'.$pegawai-

>nama.'#'.$pegawai->alamat.'#'.$pegawai- >nama_sekolah.'#'.$pegawai->nama_jabatan.'#'.$pegawai->golongan.'#'.$pegawai->status.'#'.$pegawai->anak;

}

}

/* End of file Pegawai.php */

/* Location:

./application/modules/master_data/controllers/Pegawai.php */

12.

Model_Pegawai.php

<?php

defined('BASEPATH') OR exit('No direct script access allowed');

class Model_pegawai extends CI_Model {

(21)

public $nama = '';

public $golongan = '';

public $alamat = '';

public $nama_sekolah = '';

public $no_telp = '';

public $jk = '';

public $agama = '';

public $status = '';

public $anak = '';

public $tempat_lahir = '';

public $tgl_lahir = '';

public $email = '';

public $pendidikan = '';

public function get_pegawai(){

$query = "

SELECT k.*,

j.nama AS nama_jabatan

FROM pegawai AS k

LEFT JOIN jabatan AS j

ON k.id_jabatan = j.id

ORDER BY k.id DESC

";

return $this->db->query($query)->result();

}

public function by_id_pegawai($id){

$datasrc = $this->db->get_where('pegawai', array('id' => $id));

return $datasrc->num_rows() > 0 ? $datasrc->row() : $this;

}

(22)

$query = "

SELECT k.id,

k.nip,

k.status,

k.anak,

k.nama,

k.alamat,

k.golongan,

k.nama_sekolah,

j.nama AS nama_jabatan

FROM pegawai AS k

LEFT JOIN jabatan AS j

ON k.id_jabatan = j.id

WHERE k.id = '{$id}'

";

$query = $this->db->query($query)->row();

return $query;

}

}

/* End of file Model_pegawai.php */

/* Location:

./application/modules/master_data/models/Model_pegawai.php */

13.

Pegawai_form.php

<?php echo jquery_select2(); ?>

<?php echo bootstrap_datepicker3(); ?>

<script type="text/javascript">

(23)

$(".input-group.date").datepicker({

autoclose: true,

todayHighlight: true

});

$('[name=id_jabatan]').select2({width: '100%'});

});

</script>

<h3 class="page-header">Form Pegawai</h3>

<div class="actions">

<a href="<?php echo $back; ?>"><span class="glyphicon glyphicon-arrow-left"

aria-hidden="true"></span>&nbsp;&nbsp;Back</a>

</div>

<?php echo form_open($action, array('class' => 'form-horizontal row-form')); ?>

<div class="form-group">

<label class="col-sm-2 control-label input-sm" style="margin: -5px;">Nip</label>

<div class="col-sm-4">

<input class="form-control input-sm" type="text" name="nip" placeholder="Nip" value="<?php echo $pegawai->nip; ?>" required />

</div>

</div>

<div class="form-group">

<label class="col-sm-2 control-label input-sm" style="margin: -5px;">Nama</label>

<div class="col-sm-4">

<input class="form-control input-sm" type="text" name="nama" placeholder="Nama" value="<?php echo $pegawai->nama; ?>" required />

</div>

(24)

<div class="form-group">

<label class="col-sm-2 control-label input-sm" style="margin: -5px;">Alamat</label>

<div class="col-sm-4">

<textarea name="alamat" class="form-control" rows="3" placeholder="Alamat" required><?php echo $pegawai->alamat; ?></textarea>

</div>

<div class="form-group">

<label class="col-sm-2 control-label input-sm">Nama Sekolah</label>

<div class="col-sm-4">

<textarea name="nama_sekolah" class="form-control" rows="3" placeholder="Nama sekolah" required><?php echo $pegawai->nama_sekolah; ?></textarea>

</div>

</div>

<div class="form-group">

<label class="col-sm-2 control-label input-sm">Jabatan</label>

<div class="col-sm-3">

<select name="id_jabatan" required>

<option value=""> Pilih Jabatan ---</option>

<?php echo

modules::run('master_data/jabatan/options_jabatan', $pegawai->id_jabatan); ?>

</select>

</div>

</div>

<div class="form-group">

<label class="col-sm-2 control-label input-sm">Golongan</label>

<div class="col-sm-2">

<select name="golongan" class="form-control" required>

(25)

<option value=""> Pilih Golongan --</option>

<?php } else { ?>

<option value="<?php echo $pegawai->golongan; ?>"><?php echo $pegawai-$pegawai->golongan; ?></option>

<?php } ?>

<option value="2-D">2-D</option>

<option value="2-C">2-C</option>

<option value="2-B">2-B</option>

<option value="2-A">2-A</option>

<option value="3-D">3-D</option>

<option value="3-C">3-C</option>

<option value="3-B">3-B</option>

<option value="3-A">3-A</option>

<option value="4-B">4-B</option>

<option value="4-A">4-A</option>

</select>

</div>

</div>

<div class="form-group">

<label class="col-sm-2 control-label input-sm">Status</label>

<div class="col-sm-2">

<select name="status" class="form-control" required>

<?php if($pegawai->status == ''){ ?>

<option value=""> Pilih Status --</option>

<?php } else { ?>

<option value="<?php echo $pegawai->status; ?>"><?php echo $pegawai-$pegawai->status; ?></option>

<?php } ?>

<option value="Janda">Janda</option>

<option value="Menikah">Menikah</option>

(26)

</select>

</div>

</div>

<div class="form-group">

<label class="col-sm-2 control-label input-sm">Jumlah Anak</label>

<div class="col-sm-2">

<input class="form-control input-sm" type="text" name="anak" placeholder="Jumlah Anak" value="<?php echo $pegawai->anak; ?>" required />

</div>

</div>

<div class="form-group">

<label class="col-sm-2 control-label input-sm">Agama</label>

<div class="col-sm-2">

<select name="agama" class="form-control" required>

<?php if($pegawai->agama == ''){ ?>

<option value=""> Pilih Agama --</option>

<?php } else { ?>

<option value="<?php echo $pegawai->agama; ?>"><?php echo $pegawai-$pegawai->agama; ?></option>

<?php } ?>

<option value="Islam">Islam</option>

<option value="Kristen">Kristen</option>

<option value="Katholik">Katholik</option>

</select>

</div>

</div>

<div class="form-group">

<label class="col-sm-2 control-label input-sm">No. Telepon</label>

(27)

<input class="form-control input-sm" type="text" name="no_telp" placeholder="No. Telepon" value="<?php echo $pegawai->no_telp; ?>" required />

</div>

</div>

<div class="form-group">

<label class="col-sm-2 control-label input-sm">Jenis Kelamin</label>

<div class="col-sm-4">

<?php if ($pegawai->jk == 'L' || $pegawai->jk == '') { ?>

<label>

<input type="radio" name="jk" value="L" checked> Laki-Laki

</label>

<label>

<input type="radio" name="jk" value="P"> Perempuan

</label>

<?php } else { ?>

<label>

<input type="radio" name="jk" value="L"> Laki-Laki

</label>

<label>

<input type="radio" name="jk" value="P" checked> Perempuan

</label>

<?php } ?>

</div>

</div>

<div class="form-group">

<label class="col-sm-2 control-label input-sm">Tempat Lahir</label>

(28)

<input class="form-control input-sm" type="text" name="tempat_lahir" placeholder="Tempat Lahir" value="<?php echo $pegawai->tempat_lahir; ?>" required />

</div>

</div>

<div class="form-group">

<label class="col-sm-2 control-label input-sm">Tanggal Lahir</label>

<div class="col-sm-3">

<div class="input-group date" data-date="" data-date-format="yyyy-mm-dd">

<input class="form-control input-sm" type="text" name="tgl_lahir" placeholder="Tanggal Lahir"

value="<?php echo $pegawai->tgl_lahir; ?>" required readonly />

<span class="input-group-addon"><i class="glyphicon glyphicon-calendar"></i></span>

</div>

</div>

</div>

<div class="form-group">

<label class="col-sm-2 control-label input-sm">Email</label>

<div class="col-sm-3">

<input class="form-control input-sm" type="text" name="email" placeholder="Email" value="<?php echo $pegawai->email; ?>" required />

</div>

</div>

<div class="form-group">

<label class="col-sm-2 control-label input-sm">Pendidikan</label>

<div class="col-sm-2">

<select name="pendidikan" class="form-control" required>

<?php if($pegawai->pendidikan == ''){ ?>

<option value="">-- Pilih Pendidikan --</option>

(29)

<option value="<?php echo $pegawai->pendidikan; ?>"><?php echo $pegawai-$pegawai->pendidikan; ?></option>

<?php } ?>

<option value="SD">SD</option>

<option value="SMP">SMP</option>

<option value="SMA/SMK">SMA/SMK</option>

<option value="D1">D1</option>

<option value="D2">D2</option>

<option value="D3">D3</option>

<option value="S1">S1</option>

<option value="S2">S2</option>

<option value="S3">S3</option>

</select>

</div>

</div>

<div class="form-group">

<div class="col-sm-offset-2 col-sm-6">

<button type="submit" class="btn btn btn-primary btn-sm button-blue" > Simpan </button>

<button type="reset" class="btn btn btn-primary btn-sm button-red" > Reset </button>

</div>

</div>

<?php echo form_close(); ?>

14.

Pegawai_index.php

<h3 class="page-header">Data Pegawai</h3>

<div class="actions">

<a href="<?php echo $add; ?>"><span class="glyphicon glyphicon-plus"></span>&nbsp;&nbsp;Add Data</a>

</div>

(30)

<table cellpadding="0" cellspacing="0" class="tabel" id="datatables">

<thead>

<tr>

<th width="5%">no</th>

<th width="10%">nip</th>

<th width="25%">nama</th>

<th width="5%">JK</th>

<th width="5%">Agama</th>

<th width="5%">Status</th>

<th width="15%">jabatan</th>

<th width="5%">gol</th>

<th width="5%">Pendi dikan</th>

<th width="25%">alamat</th>

<th width="15%">nama sekolah</th>

<th width="10%">no. telp</th>

<th width="10%">aksi</th>

</tr>

</thead>

<tbody>

<?php

$no = 1;

foreach($grid as $record) :

?>

<tr>

<td align="center"><?php echo $no; ?></td>

<td><?php echo $record->nip; ?></td>

<td><?php echo $record->nama; ?></td>

<td><?php echo $record->jk; ?></td>

(31)

<td><?php echo $record->status; ?></td>

<td><?php echo $record->nama_jabatan; ?></td>

<td><?php echo $record->golongan; ?></td>

<td><?php echo $record->pendidikan; ?></td>

<td><?php echo $record->alamat; ?></td>

<td><?php echo $record->nama_sekolah; ?></td>

<td><?php echo $record->no_telp; ?></td>

<td align="center">

<a href="<?php echo site_url('/master_data/pegawai/edit/'.$record->id); ?>"

title="Edit Data"><span class="glyphicon glyphicon-pencil" aria-hidden="true"></span></a>

<a href="<?php echo site_url('/master_data/pegawai/delete/'.$record->id); ?>" onclick="return confirm('Apakah Anda yakin akan menghapus data <?php echo $record->nama; ?>?')" title="Delete Data"><span

class="glyphicon glyphicon-trash" aria-hidden="true"></span></a>

</td>

</tr>

<?php

$no++;

endforeach;

?>

</tbody>

</table>

</div>

15.

Penggajian.php

<?php

(32)

class Penggajian extends MX_Controller {

function __construct() {

parent::__construct();

$this->page->use_directory();

//$this->load->model('model_penggajian');

}

public function index(){

$this->page->view('penggajian_form', array(

'action' => $this->page->base_url("/insert_transaksi_gaji"),

'perkiraan' =>

$this->db->get_where('perkiraan', array('aktif' => 'Y'))->result(),

));

}

public function insert_transaksi_gaji(){

$no_slip = $this->input->post('no_slip');

$id_pegawai = $this->input->post('id_pegawai');

$tgl_gaji = $this->input->post('tgl_gaji');

if ($no_slip == '' || $id_pegawai == '' || $tgl_gaji == ''){

$this->session->set_flashdata('cek_field', 'failed');

redirect($this->page->base_url());

}

else{

(33)

$pendapatan = strip_comma($this->input->post('pendapatan'));

$potongan = strip_comma($this->input->post('potongan'));

$gaji_bersih = strip_comma($this->input->post('gaji_bersih'));

$data = array (

'id' => $no_slip,

'id_pegawai' => $id_pegawai,

'tgl_gaji' => $tgl_gaji,

'pendapatan' => $pendapatan,

'potongan' => $potongan,

'gaji_bersih' => $gaji_bersih,

'id_pengguna_input' => $this->session->userdata('pengguna')->id,

);

$this->db->insert('transaksi_gaji', $data);

$id_transaksi_gaji = $this->db->insert_id();

$perkiraan_arr = strip_comma($this->input->post('id_perkiraan'));

$pendapatan_arr = strip_comma($this->input->post('pendapatan_arr'));

$potongan_arr = strip_comma($this->input->post('potongan_arr'));

$detail = array();

foreach ($perkiraan_arr as $id_perkiraan => $val) {

if ($val != 0) {

$jml_arr = $pendapatan_arr[$id_perkiraan] != 0 ?

$pendapatan_arr[$id_perkiraan] : $potongan_arr[$id_perkiraan];

(34)

'id_transaksi_gaji' => $no_slip,

'id_perkiraan' => $val,

'jumlah' => $jml_arr,

);

}

}

if(count($detail) != 0){

$this->db->insert_batch('rincian_transaksi_gaji', $detail);

}

redirect($this->page->base_url());

}

}

}

/* End of file Penggajian.php */

/* Location:

./application/modules/transaksi/controllers/Penggajian.php */

16.

Model_penggajian.php

<?php

defined('BASEPATH') OR exit('No direct script access allowed');

class Model_penggajian extends CI_Model {

public function get_data_penggajian($params){

$bln_awal = $params['bln_awal'].'-01';

(35)

$query = "SELECT tg.id AS id,

tg.tgl_gaji,

tg.pendapatan,

tg.potongan,

tg.gaji_bersih,

k.nama AS nama_pegawai,

j.nama AS nama_jabatan

FROM(SELECT *

FROM transaksi_gaji

WHERE tgl_gaji >= '{$bln_awal}' AND tgl_gaji <= '{$bln_akhir}'

) AS tg

LEFT JOIN pegawai AS k

ON tg.id_pegawai = k.id

LEFT JOIN jabatan AS j

ON k.id_jabatan = j.id

ORDER BY {$params['item']} {$params['order']}";

return $this->db->query($query);

}

}

/* End of file Model_penggajian.php */

/* Location:

./application/modules/transaksi/models/Model_penggajian.php */

17.

Penggajian_form.php

<?php echo jquery_slimscrool(); ?>

<?php echo jquery_select2(); ?>

(36)

var perkiraan_arr = new Array();

var perkiraan_index = 0;

var num_unit = 0;

var jumlah_total = 0;

function add_penggajian_detail(e){

var id_perkiraan = $(this).attr('href');

var kode = $(this).attr('data-kode');

var nama = $(this).attr('data-nama');

var status = $(this).attr('data-status');

var elemen = '';

var selektor = '';

if (perkiraan_arr.indexOf(id_perkiraan) > -1) {

alert('Nama perkiraan gaji sudah terdaftar di tabel transaksi gaji!');

return false;

}

if(status == '1'){

var elemen = 'pendapatan_arr';

var selektor = 'pendapatan_arr';

}

else if(status == '0'){

var elemen = 'potongan_arr';

var selektor = 'potongan_arr';

}

num_unit++;

var perkiraan =

'<tr id="indent-perkiraan-' + id_perkiraan + '">' +

'<td>' + num_unit + '</td>' +

(37)

'<td><input type="hidden" name="id_perkiraan[' + id_perkiraan + ']" value="' + id_perkiraan + '" /> <input

type="text" name="' + elemen + '[' + id_perkiraan + ']" class="' + selektor + ' nominal-perkiraan" data-status="' + status + '"

value="" autocomplete="off" /></td>' +

'<td align="center"><a href="#' + id_perkiraan + '" data-status="' + status + '" class="del"><span class="glyphicon glyphicon-trash" aria-hidden="true"></span></a>' +

'</tr>';

$('#perkiraan-unit-table').append(perkiraan);

$('#indent-perkiraan-' + id_perkiraan + ' .del').on('click', delete_perkiraan_details);

e.preventDefault();

perkiraan_arr[perkiraan_index] = id_perkiraan;

perkiraan_index++;

$('.pendapatan_arr').on('keydown', number_key);

$('.pendapatan_arr').on('keyup', change_jumlah);

$('.potongan_arr').on('keydown', number_key);

$('.potongan_arr').on('keyup', change_jumlah);

$('.pendapatan_arr, .potongan_arr').keyup(function(){

$(this).val(numtocurrency($(this).val()));

});

}

function delete_perkiraan_details(){

var href = $(this).attr('href');

var href_arr = href.split('#');

var id_perkiraan = href_arr[1];

var status = $(this).attr('data-status');

var total_pendapatan = 0;

var total_potongan = 0;

(38)

var selector = '#indent-perkiraan-' + id_perkiraan;

$(selector).remove();

$.each($('.pendapatan_arr'), function(key, obj) {

total_pendapatan += currencytonum($(obj).val());

});

$('[name=pendapatan]').val(numtocurrency(total_pendapatan));

$.each($('.potongan_arr'), function(key, obj) {

total_potongan += currencytonum($(obj).val());

});

$('[name=potongan]').val(numtocurrency(total_potongan));

gaji_bersih = total_pendapatan - total_potongan;

$('[name=gaji_bersih]').val(numtocurrency(gaji_bersih));

perkiraan_arr[perkiraan_arr.indexOf(id_perkiraan)] = 0;

return false;

}

function number_key(e){

var keyCode = e.keyCode || e.which;

if (

keyCode == 8

|| keyCode == 9

|| keyCode == 190

|| (keyCode >= 48 && keyCode <= 57)

|| (keyCode >= 96 && keyCode <= 105)

) {

// do nothing

(39)

else {

e.preventDefault();

}

}

function numtocurrency(num){

num = num.toString().replace(/\$|\,/g, '');

if (isNaN(num)) num = "0";

sign = (num == (num = Math.abs(num)));

num = Math.floor(num * 100 + 0.50000000001);

cents = num % 100;

num = Math.floor(num / 100).toString();

if (cents == 0) cents = '';

else if (cents < 10) cents = ".0" + cents;

else cents = '.' + cents;

for (var i = 0; i < Math.floor((num.length - (1 + i)) / 3); i++)

num = num.substring(0, num.length - (4 * i + 3)) + ',' + num.substring(num.length - (4 * i + 3));

return (((sign) ? '' : '-') + num + cents );

}

function currencytonum(str){

if (str == "") return 0;

// replace all dot to blank

str = str.replace(/\,/g, "");

(40)

return parseFloat(str);

}

function change_jumlah(){

var status = $(this).attr('data-status');

var pendapatan = $('[name=pendapatan]').val();

var potongan = $('[name=potongan]').val();

var pendapatan_jml = parseInt(pendapatan.replace('.',''));

var potongan_jml = parseInt(potongan.replace('.',''));

var total_pendapatan = 0;

var total_potongan = 0;

var gaji_bersih = 0;

$.each($('.pendapatan_arr'), function(key, obj) {

total_pendapatan += currencytonum($(obj).val());

});

$('[name=pendapatan]').val(numtocurrency(total_pendapatan));

$.each($('.potongan_arr'), function(key, obj) {

total_potongan += currencytonum($(obj).val());

});

$('[name=potongan]').val(numtocurrency(total_potongan));

gaji_bersih = total_pendapatan - total_potongan;

$('[name=gaji_bersih]').val(numtocurrency(gaji_bersih));

}

$().ready(function(){

$('[name=id_pegawai]').select2({width: '100%'});

$('.list-perkiraan').slimscroll({ height: '190px', alwaysVisible: true });

(41)

var id_pegawai = $(this).val();

if (id_pegawai != '') {

$.post (

'<?php echo

site_url('/master_data/pegawai/ajax_pegawai_options'); ?>'

, {

id_pegawai : id_pegawai

}

, function(data) {

var pegawai = data.split('#');

$('[name=nip]').val(pegawai[1]);

$('[name=nama]').val(pegawai[2]);

$('[name=alamat]').val(pegawai[3]);

$('[name=nama_sekolah]').val(pegawai[4]);

$('[name=jabatan]').val(pegawai[5]);

$('[name=golongan]').val(pegawai[6]);

$('[name=status]').val(pegawai[7]);

$('[name=anak]').val(pegawai[8]);

}

);

}

});

$('a.add').click(add_penggajian_detail);

});

</script>

<h3 class="page-header">Transaksi Penggajian</h3>

<?php echo form_open($action, array('class' => 'form-horizontal row-form')); ?>

(42)

<div class="form-group">

<label class="col-sm-3 control-label input-sm lbl-left">No. Slip</label>

<div class="col-sm-8">

<input class="form-control input-sm" type="text" name="no_slip" placeholder="No. Slip" value="<?php echo no_slip(); ?>" readonly />

</div>

</div>

<div class="form-group">

<label class="col-sm-3 control-label input-sm lbl-left">Tanggal</label>

<div class="col-sm-8">

<input class="form-control input-sm" type="text" name="tgl_gaji" placeholder="Tanggal" value="<?php echo date("Y-m-d"); ?>" readonly />

</div>

</div>

<div class="form-group">

<label class="col-sm-3 control-label input-sm lbl-left">Petugas</label>

<div class="col-sm-8">

<input class="form-control input-sm" type="text" name="petugas" placeholder="Petugas" value="<?php echo $this->session->userdata('pengguna')->nama; ?>" readonly />

</div>

</div>

</div>

<div class="col-sm-6">

<div class="form-group">

<label class="col-sm-3 control-label input-sm lbl-left">Nama</label>

<div class="col-sm-8">

<select name="id_pegawai">

<option value=""> Pilih Pegawai ---</option>

<?php echo

(43)

</select>

</div>

</div>

<div class="form-group">

<label class="col-sm-3 control-label input-sm lbl-left">Nip</label>

<div class="col-sm-8">

<input class="form-control input-sm" type="text" name="nip" placeholder="Nip" value="" readonly />

</div>

</div>

<div class="form-group">

<label class="col-sm-3 control-label input-sm lbl-left">Status</label>

<div class="col-sm-8">

<input class="form-control input-sm" type="text" name="status" placeholder="Status" value="" readonly />

</div>

</div>

<div class="form-group">

<label class="col-sm-3 control-label input-sm lbl-left">Jumlah Anak</label>

<div class="col-sm-8">

<input class="form-control input-sm" type="text" name="anak" placeholder="Jumlah Anak" value="" readonly />

</div>

</div>

<div class="form-group">

<label class="col-sm-3 control-label input-sm lbl-left">Jabatan</label>

<div class="col-sm-8">

<input class="form-control input-sm" type="text" name="jabatan" placeholder="Jabatan" value="" readonly />

</div>

</div>

(44)

<label class="col-sm-3 control-label input-sm lbl-left">Golongan</label>

<div class="col-sm-8">

<input class="form-control input-sm" type="text" name="golongan" placeholder="Golongan" value="" readonly />

</div>

</div>

<div class="form-group">

<label class="col-sm-3 control-label input-sm lbl-left">Alamat</label>

<div class="col-sm-8">

<textarea name="alamat" class="form-control" rows="3" placeholder="Alamat"></textarea>

</div>

</div>

<div class="form-group">

<label class="col-sm-3 control-label input-sm lbl-left">Nama Sekolah</label>

<div class="col-sm-8">

<input class="form-control input-sm" type="text" name="nama_sekolah" placeholder="Nama Sekolah" value="" readonly />

</div>

</div>

</div>

<div class="clearfix"></div>

<div class="border-tr"></div>

<?php if ($this->session->flashdata('cek_field') == 'failed') { ?>

<div class="alert alert-danger alert-dismissible" role="alert">

<button type="button" class="close" data-dismiss="alert" label="Close"><span

aria-hidden="true">&times;</span></button>

(45)

</div>

<?php } elseif ($this->session->flashdata('cek_field') == 'sukses') { ?>

<div class="alert alert-success alert-dismissible" role="alert">

<button type="button" class="close" data-dismiss="alert" label="Close"><span

aria-hidden="true">&times;</span></button>

<span>Data berhasil disimpan kedalam database!!</span>

</div>

<?php } ?>

<div class="col-sm-8">

<div class="table-responsive table-transaksi">

<table class="tabel table" id="perkiraan-unit-table">

<thead>

<tr>

<th width="5%">No</th>

<th width="60%">Nama Perkiraan</th>

<th width="20%">Jumlah</th>

<th width="15%">Action</th>

</tr>

</thead>

<tbody>

</tbody>

</table>

</div>

</div>

<div class="col-sm-4">

<div class="list-perkiraan">

<ul>

<?php foreach($perkiraan as $p) : ?>

(46)

<?php endforeach; ?>

</ul>

</div>

</div>

<div class="clearfix"></div>

<div class="non-border-tr"></div>

<div class="col-sm-6">

<div class="form-group">

<label class="col-sm-3 control-label input-sm lbl-left">Pendapatan</label>

<div class="col-sm-5">

<input class="form-control input-sm" type="text" name="pendapatan" placeholder="Pendapatan" value="" readonly />

</div>

</div>

<div class="form-group">

<label class="col-sm-3 control-label input-sm lbl-left">Potongan</label>

<div class="col-sm-5">

<input class="form-control input-sm" type="text" name="potongan" placeholder="Potongan" value="" readonly />

</div>

</div>

<div class="form-group">

<label class="col-sm-3 control-label input-sm lbl-left">Gaji Bersih</label>

<div class="col-sm-5">

<input class="form-control input-sm" type="text" name="gaji_bersih" placeholder="Gaji Bersih" value="" readonly />

</div>

</div>

<div class="form-group">

(47)

<button type="submit" class="btn btn btn-primary btn-sm button-blue" > Simpan </button>

<button type="reset" class="btn btn btn-primary btn-sm button-red" > Reset </button>

</div>

</div>

</div>

<?php echo form_close(); ?>

18.

Rekap_gaji_pegawai.php

<?php

defined('BASEPATH') OR exit('No direct script access allowed');

class Rekap_gaji_pegawai extends MX_Controller {

public function __construct(){

parent::__construct();

$this->page->use_directory();

$this->load->model('model_laporan_penggajian');

}

public function index($bln_awal='', $bln_akhir=''){

$p['bln_awal'] = $bln_awal;

$p['bln_akhir'] = $bln_akhir;

$this->page->view('rekap_gaji_pegawai_index', array(

'search' => $this->page->base_url('/search/'),

'bln_awal' => $bln_awal,

'bln_akhir' => $bln_akhir,

'grid' => $this->model_laporan_penggajian->get_data_penggajian_xls($p),

'xls' => $this->page->base_url("/gaji_xls/{$bln_awal}/{$bln_akhir}"),

(48)

}

public function search(){

$bln_awal = $this->input->post('bln_awal');

$bln_akhir = $this->input->post('bln_akhir');

redirect($this->page->base_url("/index/{$bln_awal}/{$bln_akhir}"));

}

public function gaji_xls($bln_awal='', $bln_akhir=''){

$p['bln_awal'] = $bln_awal;

$p['bln_akhir'] = $bln_akhir;

$content = $this->load->view('rekap_gaji_pegawai_xls', array (

'bln_awal' => $bln_awal,

'bln_akhir' => $bln_akhir,

'src' => $this->model_laporan_penggajian->get_data_penggajian_xls($p),

), TRUE);

excel_header('rekap_gaji_pegawai_'.date('ymdHis').'.xls');

echo $content;

}

}

/* End of file Rekap_gaji_pegawai.php */

/* Location:

(49)

19.

Model_laporan_penggajian.php

<?php

defined('BASEPATH') OR exit('No direct script access allowed');

class Model_laporan_penggajian extends CI_Model {

public function get_data_penggajian_xls($params){

$bln_awal = $params['bln_awal'].'-01';

$bln_akhir = $params['bln_akhir'].'-31';

$query = "

SELECT tg.id AS id,

tg.tgl_gaji,

tg.pendapatan,

tg.potongan,

tg.gaji_bersih,

k.nama_sekolah,

k.nip,

k.nama AS nama_pegawai,

j.nama AS nama_jabatan,

k.golongan

FROM(SELECT *

FROM transaksi_gaji

WHERE tgl_gaji >= '{$bln_awal}' AND tgl_gaji <= '{$bln_akhir}'

) AS tg

LEFT JOIN pegawai AS k

ON tg.id_pegawai = k.id

LEFT JOIN jabatan AS j

ON k.id_jabatan = j.id

";

return $this->db->query($query);

(50)

public function show_noslip_options($id){

$query = "

SELECT k.id AS id_pegawai,

k.nama,

k.alamat,

k.nama_sekolah,

k.nip,

j.nama AS jabatan,

k.golongan,

tg.id,

tg.tgl_gaji,

tg.pendapatan,

tg.potongan,

tg.gaji_bersih

FROM transaksi_gaji AS tg

LEFT JOIN pegawai AS k

ON tg.id_pegawai = k.id

LEFT JOIN jabatan AS j

ON k.id_jabatan = j.id

WHERE tg.id = '{$id}'

";

return $this->db->query($query)->row();

}

public function show_list_gaji($id){

$query = "

SELECT rtg.id,

rtg.jumlah,

p.nama

FROM rincian_transaksi_gaji AS rtg

LEFT JOIN perkiraan AS p

(51)

LEFT JOIN transaksi_gaji AS tg

ON rtg.id_transaksi_gaji = tg.id

WHERE rtg.id_transaksi_gaji = '{$id}'

ORDER BY rtg.id ASC

";

return $this->db->query($query)->result();

}

}

/* End of file Model_laporan_penggajian.php */

/* Location:

./application/modules/laporan/models/Model_laporan_penggajian.php */

20.

Rekap_gaji_pegawai_index.php

<?php echo bootstrap_datepicker3(); ?>

<script type="text/javascript">

$().ready(function() {

//options method for call datepicker

$(".input-group.date").datepicker({

autoclose: true,

todayHighlight: true,

viewMode: 'years',

format: 'yyyy-mm',

changeDate: false

});

});

</script>

(52)

<?php echo form_open($search, array('class' => 'form-horizontal row-form')); ?>

<div class="form-group">

<label class="col-sm-2 control-label lbl-left">Masukan Tanggal </label>

<div class="col-sm-3">

<div class="input-group date" data-date="" data-date-format="yyyy-mm">

<input class="form-control input-sm" type="text" name="bln_awal" placeholder="Tanggal Awal"

value="<?php echo $bln_awal; ?>" readonly />

<span class="input-group-addon"><i class="glyphicon glyphicon-calendar"></i></span>

</div>

</div>

<div class="col-sm-3">

<div class="input-group date" data-date="" data-date-format="yyyy-mm">

<input class="form-control input-sm" type="text" name="bln_akhir" placeholder="Tanggal Akhir" value="<?php echo $bln_akhir; ?>" readonly />

<span class="input-group-addon"><i class="glyphicon glyphicon-calendar"></i></span>

</div>

</div>

</div>

<div class="form-group">

<div class="col-sm-6 col-md-offset-2">

<button type="submit" class="btn btn btn-primary btn-sm button-blue" > Tampilkan </button>

<a href="<?php echo $xls; ?>" class="btn btn btn-primary btn-sm button-gray"> Cetak ke EXCEL </a>

</div>

</div>

<?php echo form_close(); ?>

<div class="clearfix"></div>

(53)

<div class="block-table table-sorting table-responsive clearfix"><!-- block-fluid table-sorting clearfix -->

<table cellpadding="0" cellspacing="0" class="tabel" id="datatables">

<thead>

<tr>

<th width="5%">no</th>

<th width="10%">no. slip</th>

<th width="15%">tanggal</th>

<th width="10%">nip</th>

<th width="35%">nama</th>

<th width="10%">jabatan</th>

<th width="5%">golongan</th>

<th width="10%">sekolah</th>

<th width="10%">pendapatan</th>

<th width="10%">potongan</th>

<th width="10%">gaji bersih</th>

</tr>

</thead>

<tbody>

<?php

$no = 1;

foreach($grid->result() as $record) :

?>

<tr>

<td align="center"><?php echo $no; ?></td>

<td><?php echo $record->id; ?></td>

<td><?php echo $record->tgl_gaji; ?></td>

<td><?php echo $record->nip; ?></td>

(54)

<td><?php echo $record->nama_jabatan; ?></td>

<td><?php echo $record->golongan; ?></td>

<td><?php echo $record->nama_sekolah; ?></td>

<td><?php echo $record->pendapatan; ?></td>

<td><?php echo $record->potongan; ?></td>

<td><?php echo $record->gaji_bersih; ?></td>

</tr>

<?php

$no++;

endforeach;

?>

</tbody>

</table>

</div>

21.

Rincian_gaji_pegawai.php

<?php

defined('BASEPATH') OR exit('No direct script access allowed');

class Rincian_gaji_pegawai extends MX_Controller {

public function __construct(){

parent::__construct();

$this->page->use_directory();

$this->load->model('model_laporan_penggajian');

}

(55)

$this->page->view('rincian_gaji_pegawai_form', array(

'pdf' => $this->page->base_url('/download/'),

));

}

public function options_slipgaji(){

$slipgaji = $this->db->order_by('id')->get('transaksi_gaji');

return options($slipgaji, 'id', NULL, 'id');

}

public function ajax_rinciangaji_options(){

$no_slip = $this->input->post('no_slip');

$pegawai = $this->model_laporan_penggajian->show_noslip_options($no_slip);

echo

$pegawai->id_pegawai.'#'.$pegawai- >nip.'#'.$pegawai->nama.'#'.$pegawai->alamat.'#'.$pegawai-

>nama_sekolah.'#'.$pegawai->jabatan.'#'.$pegawai- >golongan.'#'.$pegawai->pendapatan.'#'.$pegawai->potongan.'#'.$pegawai->gaji_bersih;

}

public function ajax_list_perkiraan_gaji(){

$no_slip = $this->input->post('no_slip');

$list_gaji = $this->model_laporan_penggajian->show_list_gaji($no_slip);

echo json_encode($list_gaji);

}

public function pdf($no_slip) {

$this->load->library('pdf');

$content =

$this->load->view('rincian_gaji_pegawai_pdf', array (

'pegawai' =>

(56)

'list_gaji' =>

$this->model_laporan_penggajian->show_list_gaji($no_slip)

), TRUE);

$this->pdf->create($content, 'rincian_gaji');

}

public function download() {

$no_slip = $this->input->post('no_slip');

$this->load->helper('download');

$data =

file_get_contents(site_url('/laporan/rincian_gaji_pegawai/pdf/'.$n o_slip));

force_download('rincian_gaji_'.$no_slip.'.pdf', $data);

}

}

/* End of file Rincian_gaji_pegawai.php */

/* Location:

./application/modules/laporan/controllers/Rincian_gaji_pegawai.php */

22.

Rincian_gaji_pegawai_form.php

<?php echo jquery_select2(); ?>

<script type="text/javascript">

function numtocurrency(num){

num = num.toString().replace(/\$|\,/g, '');

if (isNaN(num)) num = "0";

(57)

num = Math.floor(num * 100 + 0.50000000001);

cents = num % 100;

num = Math.floor(num / 100).toString();

if (cents == 0) cents = '';

else if (cents < 10) cents = ".0" + cents;

else cents = '.' + cents;

for (var i = 0; i < Math.floor((num.length - (1 + i)) / 3); i++)

num = num.substring(0, num.length - (4 * i + 3)) + ',' + num.substring(num.length - (4 * i + 3));

return (((sign) ? '' : '-') + num + cents );

}

$().ready(function(){

$('[name=no_slip]').select2({width: '100%'});

$('[name=no_slip]').change(function(){

var no_slip = $(this).val();

if(no_slip != ''){

$.post (

'<?php echo

site_url('/laporan/rincian_gaji_pegawai/ajax_rinciangaji_options') ; ?>'

, {

no_slip : no_slip

}

, function(data) {

var gaji = data.split('#');

$('[name=nip]').val(gaji[1]);

$('[name=nama]').val(gaji[2]);

(58)

$('[name=nama_sekolah').val(gaji[4])

$('[name=jabatan]').val(gaji[5]);

$('[name=golongan]').val(gaji[6]);

$('[name=pendapatan]').val(numtocurrency(gaji[7]));

$('[name=potongan]').val(numtocurrency(gaji[8]));

$('[name=gaji_bersih]').val(numtocurrency(gaji[9]));

}

);

$('#list-perkiraan-gaji').find('tr:gt(0)').remove();

var loading = '<tr><td colspan="3">Memuat list perkiraan penggajian...</td></tr>';

$('#list-perkiraan-gaji').append(loading);

$.post(

'<?php echo

site_url('/laporan/rincian_gaji_pegawai/ajax_list_perkiraan_gaji') ; ?>'

, {

no_slip : no_slip

}

, function(data) {

var list_gaji = JSON.parse(data);

var num = 1;

$('#list-perkiraan-gaji').find('tr:eq(1)').remove();

if (list_gaji.length == 0) {

$('#list-perkiraan-gaji').append('<tr><td align="center" colspan="3">Tidak ada list perkiraan gaji</td></tr>');

}

(59)

var row = '';

row +=

'<tr id="perkiraan-' + value.id + '">' +

'<td>' + num + '</td>' +

'<td>' + value.nama + '</td>' +

'<td align="right">' + numtocurrency(value.jumlah) + '</td>' +

'</tr>';

$('#list-perkiraan-gaji').append(row);

num++;

});

}

);

}

});

});

</script>

<h3 class="page-header">Rincian Gaji Pegawai</h3>

<?php echo form_open($pdf, array('class' => 'form-horizontal row-form')); ?>

<div class="col-sm-12">

<div class="form-group">

<label class="col-sm-2 control-label input-sm lbl-left">No. Slip Gaji</label>

<div class="col-sm-3">

<select name="no_slip">

<option value=""> Pilih No Slip ---</option>

<?php echo

Referensi

Dokumen terkait