[ Mini Kiebo ]
Server: Windows NT AKFAR_SERVER 10.0 build 26200 (Windows 10) AMD64
Path:
D:
/
xampp
/
htdocs
/
simaku
/
application
/
controllers
/
[
Home
]
File: Adm_pagu.php
<?php if (!defined('BASEPATH')) exit('No direct script access allowed'); class Adm_pagu extends CI_Controller { function __construct() { parent::__construct(); if ($this->session->userdata('login') == FALSE){ redirect('login'); } $this->load->model('Munit', '', TRUE); $this->load->model('Mmak', '', TRUE); $this->load->model('Mrek', '', TRUE); $this->load->model('Mpagu', '', TRUE); $this->load->model('Mkeg', '', TRUE); $this->load->model('Mrinci', '', TRUE); $this->load->model('Minfo', '', TRUE); $this->load->model('Msaldo', '', TRUE); } public function index() { if ($this->session->userdata('login') == TRUE) { $this->aturpagu(); } else { redirect('login'); } } function aturpagu() { if ($this->session->userdata('login') == TRUE) { $data['title'] = 'Atur Pagu'; // $data['main_view'] = 'admin/pagu/aturpagu'; $data['main_view'] = 'admin/pagu/aturpagu2'; $page = $this->uri->segment(3); $data['hal'] = $page; //$limit_unit=20; if (!$page) : $offset_unit = 0; else : $offset_unit = $page; endif; $data['query'] = $this->Mpagu->pagu_all(); if ($data['query']->num_rows() < 3) { if ($data['query']->num_rows() > 0) { $data['link'] = array(anchor('adm_pagu/addpagu/', '<i class="icon-plus-sign" ></i> Tambah Data Pagu', array('class' => 'btn btn-success')), anchor('adm_pagu/aturpaguunit', '<i class="icon-edit"></i> Atur Pagu Unit', array('class' => 'btn btn-success'))); } else { $data['link'] = array(anchor('adm_pagu/addpagu/', '<i class="icon-plus-sign" ></i> Tambah Data Pagu', array('class' => 'btn btn-success'))); } } else { $data['link'] = array(anchor('adm_pagu/aturpaguunit', '<i class="icon-edit"></i> Atur Pagu Unit', array('class' => 'btn btn-success'))); } $this->load->view('layouta_b3', $data); } else { redirect('login'); } } function pilih($id_pagu) { if ($this->session->userdata('login') == TRUE) { $data['title'] = 'Atur Pagu'; $data['main_view'] = 'admin/pagu/pilih_sumberpagu'; $data['query'] = $query = $this->Mpagu->pagu_all(); $data['id'] = $this->Mpagu->get_pagu_by_id($id_pagu); $data['form_action'] = site_url('adm_pagu/pilih_proses'); $data['link'] = array('link_back' => anchor('adm_pagu/aturpagu', 'Kembali', array('class' => 'back'))); //$unit = $this->Munit->unit_all_nolimit(); //unit dan subunit $unit = $this->Munit->daftar_sub_unit_kerja(); //hanya sub unit kerjanya saja $mak = $this->Mmak->get_mak(1000, 0); $rek = $this->Mrinci->get_koderek1_4(); $data['pagu'] = $this->Mpagu->sumber_pagu($id_pagu); if ($unit->num_rows() > 0) { foreach ($unit->result() as $row) { $data['options_unit'][$row->id_unit] = $row->kode . ' | ' . $row->nama; } } if ($mak->num_rows() > 0) { foreach ($mak->result() as $row) { $data['options_mak'][$row->idmak4] = $row->kodemak1 . $row->kodemak2 . $row->kodemak3 . $row->kodemak4 . ' | ' . $row->namamak4; $data['mak1'] = $row->idmak1; } } if ($rek->num_rows() > 0) { foreach ($rek->result() as $row) { $data['options_rek'][$row->idrek6] = $row->koderek1 . $row->koderek2 . $row->koderek3 . $row->koderek4 . $row->koderek5 . $row->koderek6 . ' | ' . $row->namarek6; } } $this->session->set_userdata('id_pagu', $id_pagu); $this->load->view('layouta_b3', $data); } else { redirect('login'); } } function pilih_proses() { if ($this->session->userdata('login') == TRUE) { $data['title'] = 'Atur Pagu'; $data['main_view'] = 'admin/pagu/pilih_sumberpagu'; $data['query'] = $query = $this->Mpagu->pagu_all(); $data['id'] = $this->Mpagu->get_pagu_by_id($this->session->userdata('id_pagu')); $data['form_action'] = site_url('adm_pagu/pilih/' . $this->session->userdata('id_pagu')); $data['link'] = array('link_back' => anchor('adm_pagu/aturpagu', 'Kembali', array('class' => 'back'))); $unit = $this->Munit->unit_all_nolimit(); $mak = $this->Mmak->get_mak(1000, 0); $rek = $this->Mrinci->get_koderek1_4(); $data['pagu'] = $this->Mpagu->sumber_pagu($this->session->userdata('id_pagu')); if ($unit->num_rows() > 0) { foreach ($unit->result() as $row) { $data['options_unit'][$row->id_unit] = $row->kode . ' | ' . $row->nama; } } if ($mak->num_rows() > 0) { foreach ($mak->result() as $row) { $data['options_mak'][$row->idmak4] = $row->kodemak1 . $row->kodemak2 . $row->kodemak3 . $row->kodemak4 . ' | ' . $row->namamak4; } } $mak1 = $this->Mmak->get_idmak1_by_idmak4($this->input->post('idmak4')); if ($rek->num_rows() > 0) { foreach ($rek->result() as $row) { $data['options_rek'][$row->idrek6] = $row->koderek1 . $row->koderek2 . $row->koderek3 . $row->koderek4 . $row->koderek5 . $row->koderek6 . ' | ' . $row->namarek6; } } $masuk = array( 'idunit' => $this->input->post('id_unit'), 'idmak1' => $mak1, 'idsumberdana' => $this->session->userdata('id_pagu'), 'uraiankeg' => 'sumber pagu', 'idmak4' => $this->input->post('idmak4') ); $this->Mkeg->addkegiatan($masuk); $keg = $this->Mkeg->get_all_keg(); $keg_num = $keg->num_rows(); $masuk1 = array( 'idkeg' => $keg->row($keg_num - 1)->idkeg, 'idrek6' => $this->input->post('idrek6'), 'satuan1' => $this->input->post('satuan1'), 'qty1' => $this->input->post('qty1'), 'satuan2' => $this->input->post('satuan2'), 'qty2' => $this->input->post('qty2'), 'satuan3' => $this->input->post('satuan3'), 'qty3' => $this->input->post('qty3'), 'satuan4' => $this->input->post('satuan4'), 'qty4' => $this->input->post('qty4'), 'uraianrinci' => 'sumber pendapatan', 'hargasat' => $this->input->post('hargasat') ); $this->Mrinci->addrinci($masuk1); $this->session->set_flashdata('message', '1 sumber sudah ditambahkan!'); redirect('adm_pagu/pilih/' . $this->session->userdata('id_pagu')); $this->load->view('layouta', $data); } else { redirect('login'); } } function addpagu() { // tambah pagu if ($this->session->userdata('login') == TRUE) { $data['title'] = 'Tambah Data Pagu'; $data['h2_title'] = 'Pagu > Tambah Data Pagu'; // $data['main_view'] = 'admin/pagu/pagu_form'; $data['main_view'] = 'admin/pagu/pagu_form2'; $data['form_action'] = site_url('adm_pagu/add_processpagu'); $data['link'] = array('link_back' => anchor('adm_pagu/aturpagu', 'kembali', array('class' => 'back'))); $this->load->view('layouta', $data); } else { redirect('login'); } } function add_processpagu() { if ($this->session->userdata('login') == TRUE) { $data['title'] = 'Tambah Data Pagu'; $data['h2_title'] = 'Pagu > Tambah Data Pagu'; // $data['main_view'] = 'admin/pagu/pagu_form'; $data['main_view'] = 'admin/pagu/pagu_form2'; $data['form_action'] = site_url('adm_pagu/aturpagu'); $data['link'] = array('link_back' => anchor('adm_pagu/aturpagu', 'kembali', array('class' => 'back'))); // Set validation rules // $this->form_validation->set_rules('id_pagu', 'Kode Pagu', 'required|max_length[3]'); $this->form_validation->set_rules('id_pagu', 'Kode Pagu', 'required|max_length[6]'); //revisi 8 des 2021 $this->form_validation->set_rules('sumber', 'Sumber Pagu', 'required|max_length[50]'); $this->form_validation->set_rules('jumlah', 'Besar Pagu', 'required'); // Jika validasi sukses if ($this->form_validation->run() == TRUE) { $jumlah = preg_replace('/[Rp. ]/', '', htmlentities(strip_tags($this->input->post('jumlah')))); // Persiapan data $pagu = array( 'id_pagu' => $this->input->post('id_pagu'), 'sumber' => $this->input->post('sumber'), // 'jumlah' => $this->input->post('jumlah') 'jumlah' => $jumlah, 'is_surplus' => $this->input->post('surplus'), ); // Proses penyimpanan data di table kelas $this->Mpagu->addpagu($pagu); $this->session->set_flashdata('message', 'Satu data pagu berhasil disimpan!'); redirect('adm_pagu/aturpagu'); } else { $this->session->set_flashdata('message', 'Data pagu gagal disimpan!'); redirect('adm_pagu/addpagu'); $this->load->view('layouta', $data); } } else { redirect('login'); } } function updatepagu($id_pagu) { if ($this->session->userdata('login') == TRUE) { $data['title'] = 'Ubah Pagu'; $data['h2_title'] = 'Pagu > Ubah Pagu'; // $data['main_view'] = 'admin/pagu/pagu_form'; $data['main_view'] = 'admin/pagu/pagu_form2'; $data['form_action'] = site_url('adm_pagu/update_processpagu'); $data['link'] = array(anchor('adm_pagu/aturpagu', '<i class="icon-chevron-left" ></i> Kembali', array('class' => 'btn btn-success'))); // cari data dari database $pagu = $this->Mpagu->get_pagu_by_id($id_pagu); // buat session untuk menyimpan data primary key (kode) $this->session->set_userdata('id_pagu', $pagu->id_pagu); // Data untuk mengisi field2 form $data['default']['id_pagu'] = $pagu->id_pagu; $data['default']['sumber'] = $pagu->sumber; $data['default']['jumlah'] = $pagu->jumlah; $data['default']['surplus'] = $pagu->is_surplus; $this->load->view('layouta', $data); } else { redirect('login'); } } function update_processpagu() { if ($this->session->userdata('login') == TRUE) { $data['title'] = 'Ubah Pagu'; $data['h2_title'] = 'Pagu > Ubah Pagu'; // $data['main_view'] = 'admin/pagu/pagu_form'; $data['main_view'] = 'admin/pagu/pagu_form2'; $data['form_action'] = site_url('adm_pagu/aturpagu'); $data['link'] = array('link_back' => anchor('adm_pagu/aturpagu', 'kembali', array('class' => 'back'))); // Set validation rules // $this->form_validation->set_rules('id_pagu', 'Kode Pagu', 'required|max_length[3]'); // $this->form_validation->set_rules('id_pagu', 'Kode Pagu', 'required|max_length[6]'); //revisi 9 des 2021 // $this->form_validation->set_rules('sumber', 'Sumber Pagu', 'required|max_length[10]'); // if ($this->form_validation->run() == TRUE) { // save data $jumlah = preg_replace('/[Rp. ]/', '', htmlentities(strip_tags($this->input->post('jumlah')))); $pagu = array( 'id_pagu' => $this->input->post('id_pagu'), 'sumber' => $this->input->post('sumber'), // 'jumlah' => $this->input->post('jumlah') 'jumlah' => $jumlah, 'is_surplus' => $this->input->post('surplus') ); $this->Mpagu->updatepagu($this->session->userdata('id_pagu'), $pagu); $this->session->set_flashdata('message', 'Satu data pagu berhasil diupdate!'); redirect('adm_pagu/aturpagu'); // } else { // cari data dari database // $pagu = $this->Mpagu->get_pagu_by_id($id_pagu); // buat session untuk menyimpan data primary key (kode) // $this->session->set_userdata('id_pagu', $pagu->id_pagu); // Data untuk mengisi field2 form // $data['default']['id_pagu'] = $pagu->id_pagu; // $data['default']['sumber'] = $pagu->sumber; // $data['default']['jumlah'] = $pagu->jumlah; // $data['default']['surplus'] = $pagu->is_surplus; // $this->load->view('layouta', $data); // } } else { redirect('login'); } } function deletepagu($id_pagu) { $this->Mpagu->deletepagu($id_pagu); $this->session->set_flashdata('message', '1 data pagu berhasil dihapus'); redirect('adm_pagu/aturpagu'); } function hapus_pagu_keg($idkeg) { $this->Mpagu->hapus_sumber_pagu($idkeg); $this->session->set_flashdata('message', '1 data pagu berhasil dihapus'); redirect('adm_pagu/pilih/' . $this->session->userdata('id_pagu')); } function aturpaguunit() { if ($this->session->userdata('login') == TRUE) { $data['title'] = 'Atur Pagu Unit'; $data['main_view'] = 'admin/pagu/aturpagu_unit'; $page = $this->uri->segment(3); $data['hal'] = $page; $limit_unit = 20; if (!$page) : $offset_unit = 0; else : $offset_unit = $page; endif; $data['query'] = $this->Mpagu->get_all_pagu($limit_unit, $offset_unit); $query1 = $data['query1'] = $this->Mpagu->get_pagu(); if ($query1->num_rows() > 0) { foreach ($query1->result() as $row) { $data['jumlah'][] = $row->jumlah; } } $config['base_url'] = site_url('adm_pagu/aturpaguunit'); $config['total_rows'] = $this->Mpagu->jumlahunit_terpagu(); $config['per_page'] = 20; $config['uri_segment'] = 3; $choice = $config['total_rows'] / $config['per_page'] = 20; $config['num_links'] = round($choice); $config['num_tag_open'] = '<li>'; $config['num_tag_close'] = '</li>'; $config['first_link'] = '«'; $config['first_tag_open'] = '<li>'; $config['first_tag_close'] = '</li>'; $config['last_link'] = '»'; $config['last_tag_open'] = '<li>'; $config['last_tag_close'] = '</li>'; $config['prev_tag_open'] = '<li>'; $config['prev_tag_close'] = '</li>'; $config['next_tag_open'] = '<li>'; $config['next_tag_close'] = '</li>'; $config['cur_tag_open'] = '<li class="active"><a>'; $config['cur_tag_close'] = '</a></li>'; $config['full_tag_open'] = '<ul>'; $config['full_tag_close'] = '</ul>'; $this->pagination->initialize($config); $page = ($this->uri->segment(3)) ? $this->uri->segment(3) : 0; $data['results'] = $this->Mpagu->get_all_pagu($config['per_page'], $page); $data['pagination'] = $this->pagination->create_links(); $this->load->view('layouta', $data); } else { redirect('login'); } } function updatepaguunit($id_unit) { if ($this->session->userdata('login') == TRUE) { $data['title'] = 'Ubah Pagu Unit'; $data['h2_title'] = 'Unit > Ubah Pagu Unit'; $data['main_view'] = 'admin/pagu/unit_pagu_form'; $data['form_action'] = site_url('adm_pagu/update_processpaguunit'); $data['link'] = array('link_back' => anchor('adm_pagu/aturpaguunit', 'kembali', array('class' => 'back'))); $unit = $this->Munit->get_unit_by_id($id_unit); $this->session->set_userdata('id_unit', $unit->id_unit); $data['default']['kode'] = $unit->kode; $data['default']['nama'] = $unit->nama; $data['default']['pagu1'] = $unit->pagu1; $data['default']['pagu2'] = $unit->pagu2; $data['default']['pagu3'] = $unit->pagu3; $data['noinput'] = 'disabled'; $this->load->view('layouta', $data); } else { redirect('login'); } } function update_processpaguunit() { if ($this->session->userdata('login') == TRUE) { $data['title'] = 'Ubah Pagu Unit'; $data['h2_title'] = 'Unit > Ubah Pagu Unit'; $data['main_view'] = 'admin/pagu/unit_pagu_form'; $data['form_action'] = site_url('adm_pagu/aturpaguunit'); $data['link'] = array('link_back' => anchor('adm_pagu/aturpaguunit', 'kembali', array('class' => 'back'))); $data['noinput'] = 'disabled'; // Set validation rules //$this->form_validation->set_rules('kode', 'Kode Unit', 'required|numeric|max_length[5]'); //$this->form_validation->set_rules('nama', 'Unit Kerja', 'required|max_length[100]'); // $this->form_validation->set_rules('pagu1', 'Sumber Pagu 1', 'required|greater_than_equal_to[0]|callback_aturan_batas_pagu1'); $this->form_validation->set_rules('pagu1', 'Sumber Pagu 1', 'required|greater_than_equal_to[0]'); if (!empty($this->Minfo->ada_pagu2())) { $this->form_validation->set_rules('pagu2', 'Sumber Pagu 2', 'required|greater_than_equal_to[0]|callback_aturan_batas_pagu2'); $pagu2 = $this->input->post('pagu2'); } else { $pagu2 = 0; } if (!empty($this->Minfo->ada_pagu3())) { $this->form_validation->set_rules('pagu3', 'Sumber Pagu 3', 'required|greater_than_equal_to[0]|callback_aturan_batas_pagu3'); $pagu3 = $this->input->post('pagu3'); } else { $pagu3 = 0; } if ($this->form_validation->run() == TRUE) { // save data $unit = array( //'kode' => $this->input->post('kode'), //'nama' => $this->input->post('nama'), 'pagu1' => $this->input->post('pagu1'), // 'pagu2' => $this->input->post('pagu2'), 'pagu2' => $pagu2, // 'pagu3' => $this->input->post('pagu3') 'pagu3' => $pagu3 ); $this->Munit->update($this->session->userdata('id_unit'), $unit); $this->session->set_flashdata('message', 'Satu data unit berhasil diupdate!'); redirect('adm_pagu/aturpaguunit'); } else { // $this->load->view('layouta', $data); $data['default']['pagu1'] = $this->input->post('pagu1'); $data['default']['pagu2'] = $this->input->post('pagu2'); $data['default']['pagu3'] = $this->input->post('pagu3'); $this->session->set_flashdata('message', 'Data pagu unit gagal diupdate!'); redirect('adm_pagu/updatepaguunit/' . $this->session->userdata('id_unit')); } } else { redirect('login'); } } function aturan_batas_pagu1() { $jmlpagu1unit = $this->Mpagu->total_pagu1_unit(); $paguunit = $this->Munit->get_unit_by_id($this->session->userdata('id_unit'))->pagu1; // $jumlah = $jmlpagu1unit + $this->input->post('pagu1'); $jumlah = $jmlpagu1unit - $paguunit + $this->input->post('pagu1'); $sumberpagu1 = $this->Mpagu->pagu_sumber1(); if ($this->input->post('pagu1') < 0 or $jumlah > $sumberpagu1) { $this->form_validation->set_message('aturan_batas_pagu1', 'Maaf, besar pagu tidak sesuai atau melebihi TOTAL PAGU. Batas yang diijinkan maksimal Rp ' . number_format($sumberpagu1 - $jmlpagu1unit, 0, ',', '.') . '. Klik tombol kembali, untuk mengulang pengisian pagu'); return FALSE; } else { return TRUE; } } function aturan_batas_pagu2() { $jmlpagu2unit = $this->Mpagu->total_pagu2_unit(); $paguunit = $this->Munit->get_unit_by_id($this->session->userdata('id_unit'))->pagu2; // $jumlah = $jmlpagu2unit + $this->input->post('pagu1'); $jumlah = $jmlpagu2unit - $paguunit + $this->input->post('pagu2'); $sumberpagu2 = $this->Mpagu->pagu_sumber2(); if ($this->input->post('pagu2') < 0 or $jumlah > $sumberpagu2) { $this->form_validation->set_message('aturan_batas_pagu2', 'Maaf, besar pagu tidak sesuai atau melebihi TOTAL PAGU. Batas yang diijinkan maksimal Rp ' . number_format($sumberpagu2 - $jmlpagu2unit, 0, ',', '.') . '. Klik tombol kembali, untuk mengulang pengisian pagu'); return FALSE; } else { return TRUE; } } function aturan_batas_pagu3() { $jmlpagu3unit = $this->Mpagu->total_pagu3_unit(); $paguunit = $this->Munit->get_unit_by_id($this->session->userdata('id_unit'))->pagu3; // $jumlah = $jmlpagu3unit + $this->input->post('pagu3'); $jumlah = $jmlpagu3unit - $paguunit + $this->input->post('pagu3'); $sumberpagu3 = $this->Mpagu->pagu_sumber3(); if ($this->input->post('pagu3') < 0 or $jumlah > $sumberpagu3) { $this->form_validation->set_message('aturan_batas_pagu3', 'Maaf, besar pagu tidak sesuai atau melebihi TOTAL PAGU. Batas yang diijinkan maksimal Rp ' . number_format($sumberpagu3 - $jmlpagu3unit, 0, ',', '.') . '. Klik tombol kembali, untuk mengulang pengisian pagu'); return FALSE; } else { return TRUE; } } public function tambah_saldosurplus() { $tahunanggaran = $this->Minfo->info()->row()->th_angg; $a = array( 'coa' => '', 'nominal' => $this->input->post('saldo'), 'tahun' => $tahunanggaran - 1, 'createdBy' => $this->session->userdata('idlog') ); $this->Msaldo->input_surplus($a); redirect('adm_pagu'); } function akuntansikan_pagu_surplus($id_pagu) { $tahunanggaran = $this->Minfo->info()->row()->th_angg; $pagu = $this->Mpagu->get_pagu_by_id($id_pagu); $a = array( 'id_pagu' => $id_pagu, 'nominal' => $pagu->jumlah, 'tahun' => $tahunanggaran - 1, 'createdBy' => $this->session->userdata('idlog') ); $this->Msaldo->input_surplus($a); $this->session->set_flashdata('message','Pagu surplus siap diakuntansikan.'); redirect('adm_pagu/aturpagu'); } }