315 lines
17 KiB
PHP
315 lines
17 KiB
PHP
<?php
|
|
|
|
/*******************************************************************
|
|
|
|
App. Name : SISTEM INFORMASI MONITORING DAN EVALUASI
|
|
Module : /apps/php/mon/tran_dpa.php
|
|
Desc. : PHP - Transaksi Input DPA
|
|
Created By : Siau Pheng ([email protected]).
|
|
Created Date : October 30th, 2011.
|
|
Last Modified : April 12th, 2017.
|
|
|
|
(c) 2011 - 2017, 3FONIA Software; WWW.3FONIA.COM.
|
|
|
|
*******************************************************************/
|
|
|
|
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
|
require_once(__DIR__."/../func.emonev.php");
|
|
|
|
use siaupheng\fonia3\DB\MySQL;
|
|
use siaupheng\fonia3\DB\SQL;
|
|
use siaupheng\fonia3\Web\Param;
|
|
use siaupheng\fonia3\Web\Table;
|
|
use siaupheng\fonia3\Web\Form;
|
|
|
|
$db = $db ?? new MySQL();
|
|
$ajson = [];
|
|
$data = Param::Get("data");
|
|
$mode = Param::Get("mode");
|
|
$mode_detail = Param::Get("mode_detail");
|
|
$emon_enable = Param::Get("Hak_Real", 0);
|
|
$id_rpjmd = $_SESSION['__WEB_APP']['RENC_RPJMDID'];
|
|
$thn_renja = $_SESSION['__WEB_APP']['RENC_THN'];
|
|
$id_opd = Param::Get("OPDID", 0);
|
|
$id_prog = Param::Get("ProgID", 0);
|
|
$id_rkeg = Param::Get("RKegID", 0);
|
|
$k_rka = Param::Get("K_RKA", "");
|
|
|
|
if ( in_array($data, ["tabel-opd","tabel-upt","tabel-prog","tabel-keg"]) ) {
|
|
$qsql = "Tahun='".$thn_renja."'";
|
|
$msql = "M.Aktif=1";
|
|
|
|
if ( $data == "tabel-opd" ) {
|
|
} else if ( $data == "tabel-upt" ) {
|
|
$qsql .= ($id_opd==0) ? "" : " AND K.OPDID='".$id_opd."'";
|
|
$msql .= ($id_opd==0) ? "" : " AND M.OPDID='".$id_opd."'";
|
|
} else if ( $data == "tabel-prog" ) {
|
|
$qsql .= ($id_opd==0) ? "" : " AND K.OPDID='".$id_opd."'";
|
|
$qsql .= ($id_upt==0) ? "" : " AND K.UPTID='".$id_upt."'";
|
|
$msql .= " AND PR.ProgID IS NOT NULL";
|
|
} else if ( $data == "tabel-keg" ) {
|
|
$qsql .= ($id_opd==0) ? "" : " AND K.OPDID='".$id_opd."'";
|
|
$qsql .= ($id_upt==0) ? "" : " AND K.UPTID='".$id_upt."'";
|
|
$qsql .= ($id_prog>0) ? " AND K.ProgID='".$id_prog."'" : "";
|
|
}
|
|
|
|
//todo: perbolehkan sesuai opd dan upt, jika dari hak user di perbolehkan.
|
|
$qsql .= (in_array($_SESSION['__WEB_USER']['Level'],array(3,4))) ? " AND K.OPDID IN (".$_SESSION['__WEB_USER']['AK_OPD'].")": "";
|
|
$qsql .= ($_SESSION['__WEB_USER']['Level']==4) ? " AND K.UPTID IN (".$_SESSION['__WEB_USER']['AK_UPT'].")" : "";
|
|
if ( $data == "tabel-opd" || $data == "tabel-upt" ) {
|
|
$msql .= (in_array($_SESSION['__WEB_USER']['Level'],array(3,4))) ? " AND M.OPDID IN (".$_SESSION['__WEB_USER']['AK_OPD'].")": "";
|
|
}
|
|
if ( $data == "tabel-upt" ) {
|
|
$msql .= ($_SESSION['__WEB_USER']['Level']==4) ? " AND M.UPTID IN (".$_SESSION['__WEB_USER']['AK_UPT'].")" : "";
|
|
}
|
|
}
|
|
|
|
if ( $data == "tabel-opd" ) {
|
|
$f_usul = "0";//todo: debug zero
|
|
if (in_array($_SESSION['__WEB_USER']['Level'],array(3,4))) {
|
|
$f_usul = "IFNULL(H.Hak_Laksa,1)";
|
|
}
|
|
$obj = new Table($db);
|
|
$obj->set_query("SELECT K.*,M.K_OPD,M.N_OPD,M.Nama_OPD,1 Hak_Laksa FROM (SELECT * FROM dpa90_akun WHERE ".$qsql.") K LEFT JOIN (SELECT OPDID,SUM(Renc_Keu) OPD_PAGU FROM dpa90_akun WHERE ".$qsql." GROUP BY OPDID) TT ON (TT.OPDID=K.OPDID) LEFT JOIN (SELECT OPDID,Hak_DPA FROM sippd_akses_sip WHERE Tahun='".$thn_renja."') H ON (H.OPDID=TT.OPDID) LEFT JOIN vi_para90_opd M ON (M.OPDID=TT.OPDID) WHERE M.Aktif=1 GROUP BY K.OPDID");
|
|
//$obj->set_query("SELECT K.*,M.OPDID OPDID2,M.K_OPD,M.N_OPD,M.Nama_OPD FROM vi_para90_opd M LEFT JOIN (SELECT K.OPDID,COUNT(DISTINCT K.ProgID) ITEM_PROG,COUNT(*) ITEM_KEG,SUM(K.B_Total) TOT_DPA,SUM(A.Pagu_Ini) TOT_REN FROM dpa90_sub K LEFT JOIN renja90_awal_sub A ON (K.Tahun=A.Tahun AND K.SubID=A.SubID) WHERE ".$qsql." GROUP BY K.OPDID) K ON (K.OPDID=M.OPDID) WHERE ".$msql);
|
|
$obj->add_field("OPDID", "OPD", "hid");
|
|
$obj->add_field("Nama_OPD", "Nama OPD", "hid");
|
|
$obj->add_field("K_OPD", "Kode", "c");
|
|
$obj->add_field("N_OPD", "Nama Perangkat Daerah", "awr");
|
|
$obj->add_field("TOT_REN", "Jumlah Renja", "r", "uang");
|
|
$obj->add_field("TOT_DPA", "Jumlah DPA", "r", "uang");
|
|
$obj->add_field("ITEM_PROG", "PROG", "r", "rupiah");
|
|
$obj->add_field("ITEM_KEG", "KEG", "r", "rupiah");
|
|
$obj->set_field_order("K_OPD", "A");
|
|
$obj->add_row_btn("folder", "Program", "ILaksaJS.opd_select");
|
|
$obj->set_func_navi("ILaksaJS.data_query('tabel-opd')");
|
|
$obj->set_textbtn(true);
|
|
$ajson[] = $obj->json_table("divOPD");
|
|
|
|
} else if ( $data == "tabel-prog" ) {
|
|
$obj = new cGRIDTABLE();
|
|
$obj->set_query("SELECT TRUE");
|
|
//$obj->set_query("SELECT K.*,PR.K_Prog,M.ProgID ProgID2,M.N_Prog,CONCAT('(',PR.K_Prog,') ',M.N_Prog) Nama_Prog FROM para_program M LEFT JOIN (SELECT K.ProgID,K.K_Prog FROM dpa_prog K WHERE ".$qsql." GROUP BY K.ProgID) PR ON (M.ProgID=PR.ProgID) LEFT JOIN (SELECT K.ProgID,COUNT(*) ITEM_KEG,SUM(B_Total) TOT_DPA,SUM(A.Ini_Pagu) TOT_REN FROM dpa_detail K LEFT JOIN renja_detail A ON (K.Tahun=A.Tahun AND K.RKegID=A.RKegID) WHERE ".$qsql." GROUP BY K.ProgID) K ON (M.ProgID=K.ProgID) WHERE ".$msql."");
|
|
$obj->add_field("ProgID2", "ID", "hidden");
|
|
$obj->add_field("Nama_Prog", "Nama PROG", "hidden");
|
|
$obj->add_field("RUTIN", "RUTIN", "hidden");
|
|
$obj->add_field("K_Prog", "Kode", "center");
|
|
$obj->add_field("N_Prog", "Nama Program", "left autowrap");
|
|
$obj->add_field("TOT_REN", "Jumlah Renja", "right", "uang");
|
|
$obj->add_field("TOT_DPA", "Jumlah DPA", "right", "uang");
|
|
$obj->add_field("ITEM_KEG", "KEG", "right", "rupiah");
|
|
$obj->set_field_order("K_Prog", "A");
|
|
$obj->add_row_btn("folder", "Kegiatan", "ILaksaJS.prog_select");
|
|
$obj->set_func_navi("ILaksaJS.data_query('tabel-prog')");
|
|
$obj->set_textbtn(true);
|
|
$ajson[] = $obj->json_table("divPROG");
|
|
|
|
} else if ( $data == "tabel-keg" ) {
|
|
if ($mode_detail=="update") {
|
|
$sql = new cSQL();
|
|
$sql->set_table("dpa_detail");
|
|
$sql->add_param("Eval_Sesuai");
|
|
$sql->add_param("Eval_Evaluasi");
|
|
$sql->add_param("Eval_Tindak");
|
|
$sql->add_param("Eval_Lanjut");
|
|
$sql->add_param_stamp();
|
|
$sql->add_param_userid();
|
|
$sql->add_where("Tahun", $thn_renja);
|
|
$sql->add_where("K_RKA");
|
|
$sql->UpdateDB();
|
|
}
|
|
|
|
$qsql = " AND R.Tahun='".$thn_renja."' AND R.OPDID='".$id_opd."' AND R.UPTID='".$id_upt."'";
|
|
$obj = new cGRIDTABLE();
|
|
$obj->set_query("SELECT R.*,P.K_Prog,CONCAT(P.K_Prog,'.',R.K_Keg) Kode_Keg,A.Ini_Pagu FROM dpa_detail R LEFT JOIN dpa_prog P ON (R.Tahun=P.Tahun AND R.OPDID=P.OPDID AND R.UPTID=P.UPTID AND R.ProgID=P.ProgID) LEFT JOIN renja_detail A ON (R.Tahun=A.Tahun AND R.RKegID=A.RKegID) WHERE R.ProgID='".$id_prog."'".$qsql);
|
|
$obj->set_query_footer("SELECT SUM(R.B_Total) B_DPA FROM dpa_detail R WHERE R.ProgID='".$id_prog."'".$qsql);
|
|
$obj->add_field("K_RKA", "RKA", "hidden");
|
|
$obj->add_field("RKegID", "ID", "hidden");
|
|
$obj->add_field("Kode_Keg", "KODE", "center");
|
|
$obj->add_field("N_Keg", "KEGIATAN", "left autowrap");
|
|
$obj->add_field("Ini_Pagu", "Jumlah Renja", "right", "uang", "uang");
|
|
$obj->add_field("B_Total", "Jumlah DPA", "right", "uang", "uang");
|
|
$obj->add_field("Lokasi", "Lokasi", "left autowrap");
|
|
$obj->set_field_order("Kode_Keg", "A");
|
|
$obj->add_row_btn("clipboard", "Evaluasi", "ILaksaJS.keg_ubah");
|
|
$obj->set_func_navi("ILaksaJS.data_query('tabel-keg')");
|
|
$obj->set_textbtn(true);
|
|
$ajson[] = $obj->json_table("divKEG");
|
|
|
|
} else if ( $data == "detail-keg" ) {
|
|
$akeg = array();
|
|
$db->Query("SELECT R.*,CONCAT(P.K_Prog,'.',R.K_Keg) Kode_Keg,A.Ini_Pagu B_Total2,A.Indi_Hasil UCapai2,A.Ini_Target TCapai2,A.Lokasi Lokasi2 FROM (SELECT * FROM dpa_detail WHERE Tahun='".$thn_renja."' AND RKegID='".$id_rkeg."' AND K_RKA='".$k_rka."' LIMIT 1) R LEFT JOIN dpa_prog P ON (R.Tahun=P.Tahun AND R.OPDID=P.OPDID AND R.UPTID=P.UPTID AND R.ProgID=P.ProgID) LEFT JOIN renja_detail A ON (R.Tahun=A.Tahun AND R.RKegID=A.RKegID)");
|
|
if ($db->Next()) $akeg = $db->AllRow();
|
|
|
|
$e_sesuai = 1;
|
|
$t_ucapai = '<i class="fa fa-lg fa-check w-hijau"></i>';
|
|
$t_tcapai = '<i class="fa fa-lg fa-check w-hijau"></i>';
|
|
$t_lokasi = '<i class="fa fa-lg fa-check w-hijau"></i>';
|
|
$t_total = '<i class="fa fa-lg fa-check w-hijau"></i>';
|
|
$t_sesuai = '<i class="fa fa-lg fa-check w-hijau"></i> Sesuai';
|
|
if (trim($akeg['T_Hasil'])<>trim($akeg['UCapai2'])) {
|
|
$t_ucapai = '<i class="fa fa-lg fa-delete w-merah"></i>';
|
|
$e_sesuai = 2;
|
|
}
|
|
if (trim($akeg['T_Keluar'])<>trim($akeg['TCapai2'])) {
|
|
$t_tcapai = '<i class="fa fa-lg fa-delete w-merah"></i>';
|
|
$e_sesuai = 2;
|
|
}
|
|
if ($akeg['B_Total']<>$akeg['B_Total2']) {
|
|
$t_total = '<i class="fa fa-lg fa-delete w-merah"></i>';
|
|
$e_sesuai = 2;
|
|
}
|
|
if (trim($akeg['Lokasi'])<>trim($akeg['Lokasi2'])) {
|
|
$t_lokasi = '<i class="fa fa-lg fa-delete w-merah"></i>';
|
|
$e_sesuai = 2;
|
|
}
|
|
if ($e_sesuai==2) $t_sesuai = '<i class="fa fa-lg fa-delete w-merah"></i> Tidak Sesuai';
|
|
|
|
$form = new cFORM();
|
|
$txkeg = $form->textbox("_", "X_Keg", $akeg['Kode_Keg'], false, false);
|
|
$tnkeg = $form->textarea("_", "N_Keg", $akeg['N_Keg'], false, false, 2);
|
|
$tucapa1 = $form->textarea("_", "UCapai1", $akeg['UCapai2'], false, false, 1);
|
|
$ttcapa1 = $form->textarea("_", "TCapai1", $akeg['TCapai2'], false, false, 1);
|
|
$tucapa2 = $form->textarea("_", "UCapai2", $akeg['T_Hasil'], false, false, 1);
|
|
$ttcapa2 = $form->textarea("_", "TCapai2", $akeg['T_Keluar'], false, false, 1);
|
|
$tlokasi1 = $form->textbox("_", "Lokasi1", $akeg['Lokasi2'], false, false, "text");
|
|
$tlokasi2 = $form->textbox("_", "Lokasi", $akeg['Lokasi'], false, false, "text");
|
|
$tjumlah1 = $form->textbox("_", "Jumlah1", $akeg['B_Total2'], false, false, "double");
|
|
$tjumlah2 = $form->textbox("_", "Jumlah2", $akeg['B_Total'], false, false, "double");
|
|
$teval = $form->textarea("_", "Eval_Evaluasi", $akeg['Eval_Evaluasi'], true, true, 1);
|
|
$ttindak = $form->textarea("_", "Eval_Tindak", $akeg['Eval_Tindak'], true, true, 1);
|
|
$tlanjut = $form->textarea("_", "Eval_Lanjut", $akeg['Eval_Lanjut'], true, true, 1);
|
|
|
|
echo '
|
|
<div class="row mb-1">
|
|
<label class="col-sm-4 col-lg-2 col-form-label" for="X_Keg">Kode Kegiatan</label>
|
|
<div class="col-sm-6 col-lg-3">'.$txkeg.'</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-4 col-lg-2 col-form-label" for="N_Keg">Nama Kegiatan</label>
|
|
<div class="col">'.$tnkeg.'</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-4 col-lg-2 col-form-label" for="Lokasi">Lokasi Kegiatan</label>
|
|
<div class="col">'.$tlokasi.'</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-4 col-lg-2 col-form-label" for="Catatan">Catatan</label>
|
|
<div class="col">'.$tcatat.'</div>
|
|
</div>
|
|
<div class="row mb-1"><div class="col"><hr class="my-1"></div></div>
|
|
<div class="row mb-1 text-center"><div class="col"><h5>INDIKATOR & TARGET</h5></div></div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-4 col-lg-2 col-form-label" for="U_Capai">Capaian Program</label>
|
|
<div class="col-sm-6 col-lg-7">'.$tucapai.'</div>
|
|
<div class="col-sm-2 col-lg-3"><div class="form-group"><div class="input-group"><div class="input-group-prepend"><span class="input-group-text">Target</span></div>'.$ttcapai.'</div></div></div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-4 col-lg-2 col-form-label" for="U_Masuk">Masukan</label>
|
|
<div class="col-sm-6 col-lg-7">'.$tumasuk.'</div>
|
|
<div class="col-sm-2 col-lg-3"><div class="form-group"><div class="input-group"><div class="input-group-prepend"><span class="input-group-text">Target</span></div>'.$ttmasuk.'</div></div></div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-4 col-lg-2 col-form-label" for="U_Keluar">Keluaran</label>
|
|
<div class="col-sm-6 col-lg-7">'.$tukeluar.'</div>
|
|
<div class="col-sm-2 col-lg-3"><div class="form-group"><div class="input-group"><div class="input-group-prepend"><span class="input-group-text">Target</span></div>'.$ttkeluar.'</div></div></div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-4 col-lg-2 col-form-label" for="U_Keluar">Hasil</label>
|
|
<div class="col-sm-6 col-lg-7">'.$tuhasil.'</div>
|
|
<div class="col-sm-2 col-lg-3"><div class="form-group"><div class="input-group"><div class="input-group-prepend"><span class="input-group-text">Target</span></div>'.$tthasil.'</div></div></div>
|
|
</div>
|
|
<div class="row mb-1"><div class="col"><hr class="my-1"></div></div>
|
|
<div class="row">
|
|
<div class="col-12 col-lg-6">
|
|
<div class="row mb-1 text-center"><div class="col"><h5>RINCIAN NILAI PAGU (Rp.)</h5></div></div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-8 col-lg-4 col-form-label" for="B_Pegawai">Belanja Pegawai</label>
|
|
<div class="col">'.$tb_peg.'</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-8 col-lg-4 col-form-label" for="B_Barang">Belanja Barang & Jasa</label>
|
|
<div class="col">'.$tb_bar.'</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-8 col-lg-4 col-form-label" for="B_Modal">Belanja Modal</label>
|
|
<div class="col">'.$tb_mod.'</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-8 col-lg-4 col-form-label" for="Jumlah_Bel">JUMLAH BELANJA</label>
|
|
<div class="col">'.$tj_bel.'</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<div class="col text-right">
|
|
<button type="button" class="btn btn-info ml-2" id="butXCopyMasuk">Salin ke Target Masukan</button>
|
|
<button type="button" class="btn btn-info ml-2" id="butXCopyTriw">Bagi Rata ke Triwulan</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-12 col-lg-6">
|
|
<div class="row mb-1 text-center"><div class="col"><h5>RENCANA KEUANGAN (Rp.) & FISIK (%)</h5></div></div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-3 col-lg-3 col-form-label" for="RencK_TW1">Triwulan I</label>
|
|
<div class="col-sm-5 col-lg-5">'.$tkeu1.'</div>
|
|
<div class="col-sm-4 col-lg-4"><div class="form-group"><div class="input-group"><div class="input-group-prepend"><span class="input-group-text">Fisik</span></div>'.$tfis1.'</div></div></div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-3 col-lg-3 col-form-label" for="RencK_TW2">Triwulan II</label>
|
|
<div class="col-sm-5 col-lg-5">'.$tkeu2.'</div>
|
|
<div class="col-sm-4 col-lg-4"><div class="form-group"><div class="input-group"><div class="input-group-prepend"><span class="input-group-text">Fisik</span></div>'.$tfis2.'</div></div></div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-3 col-lg-3 col-form-label" for="RencK_TW3">Triwulan III</label>
|
|
<div class="col-sm-5 col-lg-5">'.$tkeu3.'</div>
|
|
<div class="col-sm-4 col-lg-4"><div class="form-group"><div class="input-group"><div class="input-group-prepend"><span class="input-group-text">Fisik</span></div>'.$tfis3.'</div></div></div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-3 col-lg-3 col-form-label" for="RencK_TW4">Triwulan IV</label>
|
|
<div class="col-sm-5 col-lg-5">'.$tkeu4.'</div>
|
|
<div class="col-sm-4 col-lg-4"><div class="form-group"><div class="input-group"><div class="input-group-prepend"><span class="input-group-text">Fisik</span></div>'.$tfis4.'</div></div></div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-3 col-lg-3 col-form-label">JUMLAH RENCANA</label>
|
|
<div class="col-sm-5 col-lg-5">'.$tj_keu.'</div>
|
|
<div class="col-sm-4 col-lg-4"><div class="form-group"><div class="input-group"><div class="input-group-prepend"><span class="input-group-text">Fisik</span></div>'.$tj_fis.'</div></div></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<input type="hidden" id="K_RKA" value="'.$adetail['K_RKA'].'">
|
|
<input type="hidden" id="MKegID" value="'.$adetail['MKegID'].'">
|
|
<input type="hidden" id="Status_Save" value="0">
|
|
<input type="hidden" id="mode_detail" value="'.$mode_detail.'">
|
|
';
|
|
|
|
} else if ( $data == "default") {
|
|
echo '
|
|
<div class="fade-in">
|
|
<div class="card"><div class="card-header custom-style">Input Evaluasi Pelaksanaan // Tahun '.$thn_renja.'</div><div class="card-body">
|
|
<div class="row mb-1">
|
|
<div class="col">
|
|
<div class="input-group">
|
|
<input class="form-control" id="Nama_OPD" placeholder="Nama Perangkat Daerah" type="text" readonly>
|
|
<input id="OPDID" type="hidden" value="0">
|
|
<button class="btn btn-info btn-ganti" type="button" id="butOPD"><span><i class="bi-arrow-left-right"></span></i>OPD</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<div class="col">
|
|
<div class="input-group">
|
|
<input class="form-control" id="Nama_PROG" placeholder="Nama Program" type="text" readonly>
|
|
<input id="ProgID" type="hidden" value="0">
|
|
<button class="btn btn-info btn-ganti" type="button" id="butPROG"><span><i class="bi-arrow-left-right"></span></i>Program</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div id="divOPD"> </div>
|
|
<div id="divPROG"> </div>
|
|
<div id="divKEG"> </div>
|
|
</div></div>
|
|
</div>';
|
|
}
|
|
|
|
send_json($ajson);
|
|
?>
|