ubah subkeg output, tambah eviden di kinerja prog dan kinerja subkeg

This commit is contained in:
2026-08-19 08:09:46 +07:00
parent 1892713ca6
commit 8f0060a027
9 changed files with 330 additions and 258 deletions
+126 -70
View File
@@ -27,9 +27,9 @@ $ajson = [];
$data = Param::Get("data");
$mode = Param::Get("mode");
$mode_detail = Param::Get("mode_detail");
$emon_en = Param::Get("Hak_DPA", 0);
$ren_en = Param::Get("Hak_Renja", 0);
$id_rpjmd = $_SESSION['__WEB_APP']['REAL_RPJMDID'];
$thn_renja = $_SESSION['__WEB_APP']['REAL_THN'];
$thn_data = $_SESSION['__WEB_APP']['REAL_THN'];
$id_org = Param::Get("ORGID", 0);
$id_opd = Param::Get("OPDID", 0);
$id_prog = Param::Get("ProgID", 0);
@@ -38,7 +38,7 @@ $id_sub = Param::Get("SubID", 0);
$id_akun = Param::Get("AkunID", 0);
if ( in_array($data, ["tabel-opd","tabel-prog","tabel-keg","tabel-sub","tabel-prog-indi","tabel-sub-output","tabel-akun"]) ) {
$qsql = "Tahun='".$thn_renja."'";
$qsql = "Tahun='".$thn_data."'";
$msql = "M.Aktif=1";
if ( $data == "tabel-opd" ) {
@@ -60,16 +60,16 @@ if ( in_array($data, ["tabel-opd","tabel-prog","tabel-keg","tabel-sub","tabel-pr
if ( $data == "tabel-opd" ) {
$f_usul = (in_array($_SESSION['__WEB_USER']['Level'],[0,1])) ? "1" : "0";
if (in_array($_SESSION['__WEB_USER']['Level'],[3,4])) {
$f_usul = "IFNULL(H.Hak_DPA,1)";
$f_usul = "IFNULL(H.Hak_Renja,1)";
}
$obj = new Table($db);
$obj->set_query("SELECT M.OPDID OPDID2,M.ORGID,M.K_OPD,M.N_OPD,M.Nama_OPD,M.AK_Bidu,M.K_Bidu1,".$f_usul." Hak_DPA,KP.ITEM_PROG,KK.ITEM_KEG,KS.ITEM_SUB,KS.TOT_SEMUA FROM vi_para90_opd M LEFT JOIN (SELECT OPDID,COUNT(*) ITEM_PROG FROM dpa_prog WHERE ".$qsql." GROUP BY OPDID) KP ON (KP.OPDID=M.OPDID) LEFT JOIN (SELECT OPDID,COUNT(*) ITEM_KEG FROM dpa_keg WHERE ".$qsql." GROUP BY OPDID) KK ON (KK.OPDID=M.OPDID) LEFT JOIN (SELECT OPDID,COUNT(*) ITEM_SUB,SUM(Pagu_Ini) TOT_SEMUA FROM dpa_sub WHERE ".$qsql." GROUP BY OPDID) KS ON (KS.OPDID=M.OPDID) LEFT JOIN (SELECT OPDID,Hak_DPA FROM sippd_akses_sip WHERE Tahun='".$thn_renja."') H ON (H.OPDID=M.OPDID) WHERE ".$msql);
$obj->set_query("SELECT M.OPDID OPDID2,M.ORGID,M.K_OPD,M.N_OPD,M.Nama_OPD,M.AK_Bidu,M.K_Bidu1,".$f_usul." Hak_Renja,KP.ITEM_PROG,KK.ITEM_KEG,KS.ITEM_SUB,KS.TOT_SEMUA FROM vi_para90_opd M LEFT JOIN (SELECT OPDID,COUNT(*) ITEM_PROG FROM dpa_prog WHERE ".$qsql." GROUP BY OPDID) KP ON (KP.OPDID=M.OPDID) LEFT JOIN (SELECT OPDID,COUNT(*) ITEM_KEG FROM dpa_keg WHERE ".$qsql." GROUP BY OPDID) KK ON (KK.OPDID=M.OPDID) LEFT JOIN (SELECT OPDID,COUNT(*) ITEM_SUB,SUM(Pagu_Ini) TOT_SEMUA FROM dpa_sub WHERE ".$qsql." GROUP BY OPDID) KS ON (KS.OPDID=M.OPDID) LEFT JOIN (SELECT OPDID,Hak_Renja FROM sippd_akses_mon WHERE Tahun='".$thn_data."') H ON (H.OPDID=M.OPDID) WHERE ".$msql);
$obj->add_field("OPDID2", "OPD", "hid");
$obj->add_field("ORGID", "ORG", "hid");
$obj->add_field("Nama_OPD", "Nama OPD", "hid");
$obj->add_field("AK_Bidu", "AK_Bidu", "hid");
$obj->add_field("K_Bidu1", "K_Bidu1", "hid");
$obj->add_field("Hak_DPA", "DPA", "hid");
$obj->add_field("Hak_Renja", "Renja", "hid");
$obj->add_field("K_OPD", "Kode", "c");
$obj->add_field("N_OPD", "Nama Perangkat Daerah", "awr");
$obj->add_field("TOT_SEMUA", "Jumlah Pagu", "r", "rupiah");
@@ -90,7 +90,7 @@ if ( $data == "tabel-opd" ) {
if ($k_bidu == "X.XX") {
$k_bidu = Param::Get("K_Bidu1");
}
$db->Query("INSERT IGNORE INTO dpa_prog (RPJMDID,Tahun,ORGID,OPDID,ProgID,K_Bidu,K_Prog,Input_UserID) VALUES('".$id_rpjmd."','".$thn_renja."','".$id_org."','".$id_opd."','".$id_prog."','".$k_bidu."','".$k_prog."','".user_id()."')");
$db->Query("INSERT IGNORE INTO dpa_prog (RPJMDID,Tahun,ORGID,OPDID,ProgID,K_Bidu,K_Prog,Input_UserID) VALUES('".$id_rpjmd."','".$thn_data."','".$id_org."','".$id_opd."','".$id_prog."','".$k_bidu."','".$k_prog."','".user_id()."')");
} else if ($mode_detail=="update") {
} else if ($mode_detail=="delete") {
}
@@ -110,7 +110,7 @@ if ( $data == "tabel-opd" ) {
$obj->add_row_btn("clipboard", "Indikator", "RenjaJS.prog_edit", "", "", "CSS_INDI", [1=>"warning",2=>"danger"]);
$obj->add_row_btn("folder", "Kegiatan", "RenjaJS.prog_select");
$obj->set_func_navi("RenjaJS.data_query('tabel-prog')");
if ($emon_en) $obj->set_func_btn("RenjaJS.prog_brow", "+ Program");
if ($ren_en) $obj->set_func_btn("RenjaJS.prog_brow", "+ Program");
$obj->set_textbtn(true);
$ajson[] = $obj->json_table("divPROG");
@@ -123,12 +123,12 @@ if ( $data == "tabel-opd" ) {
$sql->add_param("Target_Indi");
$sql->add_param("Satuan_Indi");
$sql->add_param("Poin_Target", tipedata_poin(Param::Get("Target_Indi","")));
$sql->add_where("Tahun", $thn_renja);
$sql->add_where("Tahun", $thn_data);
$sql->add_where("DPAProgIndiID");
if ($mode_detail=="insert") {
$sql->add_param("RPJMDID", $id_rpjmd);
$sql->add_param("Tahun", $thn_renja);
$sql->add_param("Tahun", $thn_data);
$sql->add_param("ORGID", $id_org);
$sql->add_param("OPDID", $id_opd);
$sql->add_param("ProgID", $id_prog);
@@ -153,8 +153,8 @@ if ( $data == "tabel-opd" ) {
$obj->add_field("TipeDataID", "Tipe Data", "l", "tipedata_tipe");
$obj->add_field("Target_Indi2", "Target", "c");
$obj->set_field_order("Text_Indi", "A");
$obj->add_row_form("Detail", "RenjaJS.prog_indi_form");
if ($emon_en) {
$obj->add_row_form('pencil', 'Detail', 'RenjaJS.prog_indi_form');
if ($ren_en) {
$obj->add_row_btn("trash", "Hapus", "RenjaJS.prog_indi_del");
$obj->set_func_btn("RenjaJS.prog_indi_add", "+ Indikator");
}
@@ -163,9 +163,9 @@ if ( $data == "tabel-opd" ) {
} else if ( $data == "tabel-keg" ) {
if (in_array($mode_detail, ["insert","update","delete"])) {
if ($mode_detail=="insert") {
$db->Query("INSERT IGNORE INTO dpa_keg (RPJMDID,Tahun,ORGID,OPDID,ProgID,KegID,K_Keg,Input_UserID) VALUES('".$id_rpjmd."','".$thn_renja."','".$id_org."','".$id_opd."','".$id_prog."','".$id_keg."','".Param::Get("K_Keg")."','".user_id()."')");
$db->Query("INSERT IGNORE INTO dpa_keg (RPJMDID,Tahun,ORGID,OPDID,ProgID,KegID,K_Keg,Input_UserID) VALUES('".$id_rpjmd."','".$thn_data."','".$id_org."','".$id_opd."','".$id_prog."','".$id_keg."','".Param::Get("K_Keg")."','".user_id()."')");
} else if ($mode_detail=="update") {
//$db->Query("UPDATE dpa_keg SET Sasaran='".Param::Get("Sasaran","")."' WHERE Tahun='".$thn_renja."' AND DPAKegID='".Param::Get("DPAKegID",0)."'");
//$db->Query("UPDATE dpa_keg SET Sasaran='".Param::Get("Sasaran","")."' WHERE Tahun='".$thn_data."' AND DPAKegID='".Param::Get("DPAKegID",0)."'");
} else if ($mode_detail=="delete") {
}
}
@@ -183,7 +183,7 @@ if ( $data == "tabel-opd" ) {
//$obj->add_row_btn("clipboard", "Detail", "RenjaJS.keg_edit");
$obj->add_row_btn("folder", "Sub Kegiatan", "RenjaJS.keg_select");
$obj->set_func_navi("RenjaJS.data_query('tabel-keg')");
if ($emon_en) $obj->set_func_btn("RenjaJS.keg_brow", "+ Kegiatan");
if ($ren_en) $obj->set_func_btn("RenjaJS.keg_brow", "+ Kegiatan");
$obj->set_textbtn(true);
$ajson[] = $obj->json_table("divKEG");
@@ -191,12 +191,12 @@ if ( $data == "tabel-opd" ) {
if (in_array($mode_detail, ["insert","update","delete"])) {
$sql = new SQL($db);
$sql->set_table("dpa_sub");
$sql->add_where("Tahun", $thn_renja);
$sql->add_where("Tahun", $thn_data);
$sql->add_where("DPASubID");
if ($mode_detail=="insert") {
$sql->add_param("RPJMDID", $id_rpjmd);
$sql->add_param("Tahun", $thn_renja);
$sql->add_param("Tahun", $thn_data);
$sql->add_param("ORGID", $id_org);
$sql->add_param("OPDID", $id_opd);
$sql->add_param("ProgID", $id_prog);
@@ -208,7 +208,6 @@ if ( $data == "tabel-opd" ) {
} else if ($mode_detail=="update") {
$sql->add_param("Waktu1");
$sql->add_param("Waktu2");
//$sql->add_param("Pagu_Ini");
$sql->add_param("Pagu_Dpn");
$sql->add_param("Lokasi");
$sql->add_param_stamp("Update_Stamp");
@@ -216,7 +215,36 @@ if ( $data == "tabel-opd" ) {
$sql->UpdateDB();
} else if ($mode_detail=="delete") {
$sql->DeleteDB();
$db->Query("DELETE IGNORE FROM dpa_sub_output WHERE Tahun='".$thn_renja."' AND OPDID='".$id_opd."' AND KegID='".$id_keg."' AND SubID='".$id_sub."'");
//$db->Query("DELETE IGNORE FROM dpa_sub_output WHERE Tahun='".$thn_data."' AND OPDID='".$id_opd."' AND KegID='".$id_keg."' AND SubID='".$id_sub."'");
}
// subkeg output
$sql = new SQL($db);
$sql->set_table("dpa_sub_output");
$sql->add_param("Status_Output");
$sql->add_param("Text_Output");
$sql->add_param("Sasaran_Output");
$sql->add_param("Target_Output");
$sql->add_param("Satuan_Output");
$sql->add_where("Tahun", $thn_data);
$sql->add_where("DPASubOutputID");
if ($mode_detail=="insert") {
$sql->add_param("RPJMDID", $id_rpjmd);
$sql->add_param("Tahun", $thn_data);
$sql->add_param("ORGID", $id_org);
$sql->add_param("OPDID", $id_opd);
$sql->add_param("ProgID", $id_prog);
$sql->add_param("KegID", $id_keg);
$sql->add_param("SubID", $id_sub);
$sql->add_param_userid("Input_UserID");
$sql->InsertDB();
} else if ($mode_detail=="update") {
$sql->add_param_stamp("Update_Stamp");
$sql->add_param_userid("Update_UserID");
$sql->UpdateDB();
} else if ($mode_detail=="delete") {
$sql->DeleteDB();
}
}
@@ -231,7 +259,7 @@ if ( $data == "tabel-opd" ) {
$obj->add_field("Lokasi", "Lokasi", "awr");
$obj->set_field_order("K_Sub", "A");
$obj->add_row_btn("clipboard", "Detail", "RenjaJS.sub_edit", "", "", "CSS_INDI", [1=>"warning",2=>"danger"]);
if ($emon_en) {
if ($ren_en) {
$obj->add_row_btn("trash", "Hapus", "RenjaJS.sub_hapus", "DEL_SUB", 1);
$obj->set_func_btn("RenjaJS.sub_brow", "+ Sub Kegiatan");
}
@@ -240,7 +268,7 @@ if ( $data == "tabel-opd" ) {
$obj->set_textbtn(true);
$ajson[] = $obj->json_table("divSUB");
} else if ( $data == "tabel-sub-output" ) {
/*} else if ( $data == "tabel-sub-output" ) {
if (in_array($mode_detail, ["insert","update","delete"])) {
$sql = new SQL($db);
$sql->set_table("dpa_sub_output");
@@ -248,12 +276,12 @@ if ( $data == "tabel-opd" ) {
$sql->add_param("Text_Output");
$sql->add_param("Target_Output");
$sql->add_param("Satuan_Output");
$sql->add_where("Tahun", $thn_renja);
$sql->add_where("Tahun", $thn_data);
$sql->add_where("DPASubOutputID");
if ($mode_detail=="insert") {
$sql->add_param("RPJMDID", $id_rpjmd);
$sql->add_param("Tahun", $thn_renja);
$sql->add_param("Tahun", $thn_data);
$sql->add_param("ORGID", $id_org);
$sql->add_param("OPDID", $id_opd);
$sql->add_param("ProgID", $id_prog);
@@ -276,13 +304,13 @@ if ( $data == "tabel-opd" ) {
$obj->add_field("Text_Output", "Tolok Ukur Output", "awr", "", "", "val-emptylast");
$obj->add_field("Target_Satuan", "Target", "r");
$obj->set_field_order("Text_Output", "A");
$obj->add_row_form("Detail", "RenjaJS.sub_output_form");
if ($emon_en) {
$obj->add_row_form('pencil', 'Detail', 'RenjaJS.sub_output_form');
if ($ren_en) {
$obj->add_row_btn("trash", "Hapus", "RenjaJS.sub_output_del");
$obj->set_func_btn("RenjaJS.sub_output_add", "+ Output");
}
$ajson[] = $obj->json_table("divSubOutput");
*/
} else if ( $data == "tabel-akun" ) {
if (in_array($mode_detail, ["insert","update","delete"])) {
$sql = new SQL($db);
@@ -293,7 +321,7 @@ if ( $data == "tabel-opd" ) {
$sql->add_param("Pagu_Ini", "Volume*Harga_Satuan", true);
$sql->add_param("Renc_Keu");
$sql->add_param("Renc_Fisik");
$sql->add_where("Tahun", $thn_renja);
$sql->add_where("Tahun", $thn_data);
$sql->add_where("DPAAkunID");
if ($mode_detail=="insert") {
@@ -301,7 +329,7 @@ if ( $data == "tabel-opd" ) {
$db->Query("SELECT * FROM para90_akun WHERE Tahun='".$_SESSION['__WEB_APP']['AKUN_TAHUN']."' AND AkunID='".$id_akun."' LIMIT 1");
if ($db->Next()) $k_akun = $db->Row("K_Akun");
$sql->add_param("RPJMDID", $id_rpjmd);
$sql->add_param("Tahun", $thn_renja);
$sql->add_param("Tahun", $thn_data);
$sql->add_param("ORGID", $id_org);
$sql->add_param("OPDID", $id_opd);
$sql->add_param("ProgID", $id_prog);
@@ -319,11 +347,11 @@ if ( $data == "tabel-opd" ) {
$sql->DeleteDB();
}
// update sub
$db->Query("UPDATE dpa_sub A, (SELECT SubID,SUM(Pagu_Ini) P1,SUM(Renc_Keu) P2 FROM dpa_akun WHERE Tahun='".$thn_renja."' AND OPDID='".$id_opd."' AND ProgID='".$id_prog."' AND KegID='".$id_keg."' GROUP BY SubID) B SET A.Pagu_Ini=B.P1,A.Renc_Keu=B.P2 WHERE A.SubID=B.SubID AND A.Tahun='".$thn_renja."' AND A.OPDID='".$id_opd."' AND A.ProgID='".$id_prog."' AND A.KegID='".$id_keg."'");
$db->Query("UPDATE dpa_sub A, (SELECT SubID,SUM(Pagu_Ini) P1,SUM(Renc_Keu) P2 FROM dpa_akun WHERE Tahun='".$thn_data."' AND OPDID='".$id_opd."' AND ProgID='".$id_prog."' AND KegID='".$id_keg."' GROUP BY SubID) B SET A.Pagu_Ini=B.P1,A.Renc_Keu=B.P2 WHERE A.SubID=B.SubID AND A.Tahun='".$thn_data."' AND A.OPDID='".$id_opd."' AND A.ProgID='".$id_prog."' AND A.KegID='".$id_keg."'");
// update keg
$db->Query("UPDATE dpa_keg A, (SELECT KegID,SUM(Pagu_Ini) P1,SUM(Renc_Keu) P2 FROM dpa_sub WHERE Tahun='".$thn_renja."' AND OPDID='".$id_opd."' AND ProgID='".$id_prog."' GROUP BY KegID) B SET A.Pagu_Ini=B.P1,A.Renc_Keu=B.P2 WHERE A.KegID=B.KegID AND A.Tahun='".$thn_renja."' AND A.OPDID='".$id_opd."' AND A.ProgID='".$id_prog."'");
$db->Query("UPDATE dpa_keg A, (SELECT KegID,SUM(Pagu_Ini) P1,SUM(Renc_Keu) P2 FROM dpa_sub WHERE Tahun='".$thn_data."' AND OPDID='".$id_opd."' AND ProgID='".$id_prog."' GROUP BY KegID) B SET A.Pagu_Ini=B.P1,A.Renc_Keu=B.P2 WHERE A.KegID=B.KegID AND A.Tahun='".$thn_data."' AND A.OPDID='".$id_opd."' AND A.ProgID='".$id_prog."'");
// update prog
$db->Query("UPDATE dpa_prog A, (SELECT ProgID,SUM(Pagu_Ini) P1,SUM(Renc_Keu) P2 FROM dpa_keg WHERE Tahun='".$thn_renja."' AND OPDID='".$id_opd."' GROUP BY ProgID) B SET A.Pagu_Ini=B.P1,A.Renc_Keu=B.P2 WHERE A.ProgID=B.ProgID AND A.Tahun='".$thn_renja."' AND A.OPDID='".$id_opd."'");
$db->Query("UPDATE dpa_prog A, (SELECT ProgID,SUM(Pagu_Ini) P1,SUM(Renc_Keu) P2 FROM dpa_keg WHERE Tahun='".$thn_data."' AND OPDID='".$id_opd."' GROUP BY ProgID) B SET A.Pagu_Ini=B.P1,A.Renc_Keu=B.P2 WHERE A.ProgID=B.ProgID AND A.Tahun='".$thn_data."' AND A.OPDID='".$id_opd."'");
}
$obj = new Table($db);
@@ -336,7 +364,7 @@ if ( $data == "tabel-opd" ) {
$obj->add_field("Renc_Fisik", "Fisik (%)", "r", "rupiah");
$obj->set_field_order("K_Akun", "A");
$obj->add_row_btn("clipboard", "Detail", "RenjaJS.akun_ubah");
if ($emon_en) {
if ($ren_en) {
$obj->add_row_btn("trash", "Hapus", "RenjaJS.akun_hapus", "DEL_AKUN", 1);
$obj->set_func_btn("RenjaJS.akun_tambah", "+ Akun");
}
@@ -348,7 +376,7 @@ if ( $data == "tabel-opd" ) {
$tcari = trim(Param::Get("Cari_Prog"));
$tsql = ($tcari=="") ? "" : " AND CONCAT(K_Prog,N_Prog) LIKE '%".$tcari."%'";
$obj = new Table($db);
$obj->set_query("SELECT * FROM para90_submap WHERE Tahun='".$_SESSION['__WEB_APP']['SUBMAP_TAHUN']."' AND K_Bidu IN (".stripslashes(Param::Get("AK_Bidu")).") AND ProgID NOT IN (SELECT ProgID FROM dpa_prog WHERE Tahun='".$thn_renja."' AND OPDID='".$id_opd."')".$tsql." GROUP BY ProgID");
$obj->set_query("SELECT * FROM para90_submap WHERE Tahun='".$_SESSION['__WEB_APP']['SUBMAP_TAHUN']."' AND K_Bidu IN (".stripslashes(Param::Get("AK_Bidu")).") AND ProgID NOT IN (SELECT ProgID FROM dpa_prog WHERE Tahun='".$thn_data."' AND OPDID='".$id_opd."')".$tsql." GROUP BY ProgID");
$obj->add_field("ProgID", "ID", "hid");
$obj->add_field("K_Bidu", "K_Bidu", "hid");
$obj->add_field("K_Prog", "Kode", "c");
@@ -362,7 +390,7 @@ if ( $data == "tabel-opd" ) {
$tcari = trim(Param::Get("Cari_Keg"));
$tsql = ($tcari=="") ? "" : " AND CONCAT(K_Keg,N_Keg) LIKE '%".$tcari."%'";
$obj = new Table($db);
$obj->set_query("SELECT * FROM para90_submap WHERE Tahun='".$_SESSION['__WEB_APP']['SUBMAP_TAHUN']."' AND ProgID='".$id_prog."' AND KegID NOT IN (SELECT KegID FROM dpa_keg WHERE Tahun='".$thn_renja."' AND OPDID='".$id_opd."' AND ProgID='".$id_prog."')".$tsql." GROUP BY KegID");
$obj->set_query("SELECT * FROM para90_submap WHERE Tahun='".$_SESSION['__WEB_APP']['SUBMAP_TAHUN']."' AND ProgID='".$id_prog."' AND KegID NOT IN (SELECT KegID FROM dpa_keg WHERE Tahun='".$thn_data."' AND OPDID='".$id_opd."' AND ProgID='".$id_prog."')".$tsql." GROUP BY KegID");
$obj->add_field("KegID", "ID", "hid");
$obj->add_field("K_Keg", "Kode", "c");
$obj->add_field("N_Keg", "Nama Kegiatan", "awr");
@@ -375,7 +403,7 @@ if ( $data == "tabel-opd" ) {
$tcari = trim(Param::Get("Cari_Sub"));
$tsql = ($tcari=="") ? "" : " AND CONCAT(K_Sub,N_Sub) LIKE '%".$tcari."%'";
$obj = new Table($db);
$obj->set_query("SELECT * FROM para90_submap WHERE Tahun='".$_SESSION['__WEB_APP']['SUBMAP_TAHUN']."' AND ProgID='".$id_prog."' AND KegID='".$id_keg."' AND SubID NOT IN (SELECT SubID FROM dpa_sub WHERE Tahun='".$thn_renja."' AND OPDID='".$id_opd."' AND ProgID='".$id_prog."' AND KegID='".$id_keg."')".$tsql."");
$obj->set_query("SELECT * FROM para90_submap WHERE Tahun='".$_SESSION['__WEB_APP']['SUBMAP_TAHUN']."' AND ProgID='".$id_prog."' AND KegID='".$id_keg."' AND SubID NOT IN (SELECT SubID FROM dpa_sub WHERE Tahun='".$thn_data."' AND OPDID='".$id_opd."' AND ProgID='".$id_prog."' AND KegID='".$id_keg."')".$tsql."");
$obj->add_field("SubID", "ID", "hid");
$obj->add_field("K_Sub", "Kode", "c");
$obj->add_field("N_Sub", "Nama Sub Kegiatan", "awr");
@@ -414,11 +442,11 @@ if ( $data == "tabel-opd" ) {
}
$form = new Form($db);
$tindi = $form->textarea("_", "Text_Indi", $arec['Text_Indi'], $emon_en, true, 2);
$ttipe = $form->option_que("_", "TipeDataID", $arec['TipeDataID'], $emon_en, false, tipedata_query(), ["TipeDataID","Nama_Tipe"], [0,"Numeric"], null, "RenjaJS.oc_ProgTipe()");
$ttarget = tipedata_select("Target_Indi", $arec['TipeDataID'], $arec['Target_Indi'], $emon_en, $_p_input);
$tstatus = tipedata_status("Status_Indi", $arec['TipeDataID'], $arec['Status_Indi'], $emon_en);
$tsatuan = $form->textbox("_", "Satuan_Indi", $arec['Satuan_Indi'], $emon_en, true, "text", "satuan");
$tindi = $form->textarea("_", "Text_Indi", $arec['Text_Indi'], $ren_en, true, 2);
$ttipe = $form->option_que("_", "TipeDataID", $arec['TipeDataID'], $ren_en, false, tipedata_query(), ["TipeDataID","Nama_Tipe"], [0,"Numeric"], null, "RenjaJS.oc_ProgTipe()");
$ttarget = tipedata_select("Target_Indi", $arec['TipeDataID'], $arec['Target_Indi'], $ren_en, $_p_input);
$tstatus = tipedata_status("Status_Indi", $arec['TipeDataID'], $arec['Status_Indi'], $ren_en);
$tsatuan = $form->textbox("_", "Satuan_Indi", $arec['Satuan_Indi'], $ren_en, true, "text", "satuan");
$ajson['html'] = '
<div class="card"><div class="card-body">
<div class="row mb-1">
@@ -437,32 +465,40 @@ if ( $data == "tabel-opd" ) {
<div class="row">
<label class="col-sm-4 col-lg-2 col-form-label" for="Target_Indi">Target Indikator</label>
<div class="col-sm-6 col-lg-4" id="inputTarget">'.$ttarget.'</div>
<div class="col text-end">'.($emon_en?'<button type="button" class="btn btn-warning me-2" id="butBatalIndi">Batal</button><button type="button" class="btn btn-success" id="butSimpanIndi">Simpan</button>':'').'</div>
<div class="col text-end">'.($ren_en?'<button type="button" class="btn btn-warning me-2" id="butBatalIndi">Batal</button><button type="button" class="btn btn-success" id="butSimpanIndi">Simpan</button>':'').'</div>
</div>
<input type="hidden" id="DPAProgIndiID" value="'.$arec['DPAProgIndiID'].'">
<input type="hidden" id="mode_detail" value="'.$mode_detail.'">
</div></div>';
} else if ( $data == "detail-sub" ) {
$arec = [];
$arec = ['DPASubOutputID'=>0, 'Text_Output'=>"", 'Sasaran_Output'=>"", 'Target_Output'=>"", 'Satuan_Output'=>"", 'Status_Output'=>"komulatif"];
$id_dpa_sub = Param::Get("DPASubID", 0);
if ($id_dpa_sub > 0) {
$db->Query("SELECT D.*,M.N_Sub FROM (SELECT * FROM dpa_sub WHERE DPASubID='".$id_dpa_sub."' LIMIT 1) D LEFT JOIN (SELECT * FROM para90_submap WHERE Tahun='".$_SESSION['__WEB_APP']['SUBMAP_TAHUN']."' AND KegID='".$id_keg."') M ON (M.SubID=D.SubID)");
if ($db->Next()) $arec = $db->AllRow();
if ($db->Next()) $arec = array_merge($arec, $db->AllRow());
$db->Query("SELECT Username Input_User FROM app_operator WHERE UserID='".$arec['Input_UserID']."' LIMIT 1");
if ($db->Next()) $arec = array_merge($arec, $db->AllRow());
$db->Query("SELECT Username Update_User FROM app_operator WHERE UserID='".$arec['Update_UserID']."' LIMIT 1");
if ($db->Next()) $arec = array_merge($arec, $db->AllRow());
// subkeg output
$db->Query("SELECT DPASubOutputID,Text_Output,Sasaran_Output,Target_Output,Satuan_Output FROM dpa_sub_output WHERE OPDID='".$id_opd."' AND ProgID='".$id_prog."' AND KegID='".$id_keg."' AND SubID='".$id_sub."' LIMIT 1");
if ($db->Next()) $arec = array_merge($arec, $db->AllRow());
}
$form = new Form($db);
$tsub = $form->textarea("_", "N_Sub", $arec['N_Sub'], false, false, 2);
$twaktu1 = $form->option("_", "Waktu1", $arec['Waktu1'], $emon_en, true, bulan_array());
$twaktu2 = $form->option("_", "Waktu2", $arec['Waktu2'], $emon_en, true, bulan_array());
$tlokasi = $form->textbox("_", "Lokasi", $arec['Lokasi'], $emon_en, true, "text");
$tpagu_ini = $form->textbox("_", "Pagu_Ini", $arec['Pagu_Ini'], false, false, "double");
$tpagu_dpn = $form->textbox("_", "Pagu_Dpn", $arec['Pagu_Dpn'], $emon_en, true, "double");
$twaktu1 = $form->option("_", "Waktu1", $arec['Waktu1'], $ren_en, true, bulan_array());
$twaktu2 = $form->option("_", "Waktu2", $arec['Waktu2'], $ren_en, true, bulan_array());
$tlokasi = $form->textbox("_", "Lokasi", $arec['Lokasi'], $ren_en, true, "text");
$tpagu_dpn = $form->textbox("_", "Pagu_Dpn", $arec['Pagu_Dpn'], $ren_en, true, "double");
$tinfo = $form->plaintext("_", "Info", "Diinput : ".($arec['Input_User']??"...")." (".tgl_sql2str($arec['Input_Stamp'], true)."), Diperbaharui : ".($arec['Update_User']??"...")." (".tgl_sql2str($arec['Update_Stamp'], true).")");
// subkeg output
$tindi = $form->textarea("_", "Text_Output", $arec['Text_Output'], false, false, 1);
$tsasar = $form->textbox("_", "Sasaran_Output", $arec['Sasaran_Output'], $ren_en, true, "text", "Kelompok/pihak yang menjadi sasaran atau penerima manfaat sub kegiatan");
$ttarget = $form->textbox("_", "Target_Output", round($arec['Target_Output']), $ren_en, true, "integer");
$tsatuan = $form->textbox("_", "Satuan_Output", $arec['Satuan_Output'], false, false, "text", "satuan");
$tstatus = tipedata_status("Status_Output", 0, $arec['Status_Output'], $ren_en);
echo '<form id="formSub" novalidate="novalidate">
<div class="row mb-1">
@@ -482,14 +518,34 @@ if ( $data == "tabel-opd" ) {
<label class="col-sm-4 col-lg-2 col-form-label" for="Pagu_Dpn">Pagu Tahun N+1</label>
<div class="col-sm-4 col-lg-4">'.$tpagu_dpn.'</div>
</div>
<div class="row mb-1"><div class="col"><hr class="my-1"></div></div>
<div class="row mb-1">
<label class="col-sm-4 col-lg-2 col-form-label" for="Text_Output">Tolok Ukur Output</label>
<div class="col">'.$tindi.'</div>
</div>
<div class="row mb-1">
<label class="col-sm-4 col-lg-2 col-form-label" for="Sasaran_Output">Kelompok Sasaran</label>
<div class="col">'.$tsasar.'</div>
</div>
<div class="row mb-1">
<label class="col-sm-4 col-lg-2 col-form-label" for="Status_Output">Status Output</label>
<div class="col-sm-6 col-lg-4">'.$tstatus.'</div>
<div class="col"><div class="input-group"><span class="input-group-text">Satuan Output</span>'.$tsatuan.'</div></div>
</div>
<div class="row mb-1">
<label class="col-sm-4 col-lg-2 col-form-label" for="Target_Output">Target Output</label>
<div class="col-sm-6 col-lg-4">'.$ttarget.'</div>
</div>
</form>
<div class="row mb-1"><div class="col"><hr /><div id="divSubOutput"></div></div></div>
<div class="row mt-2"><div class="col">'.$tinfo.'</div></div>
<div class="row mb-1"><div class="col"><hr class="my-1"></div></div>
<div class="row"><div class="col">'.$tinfo.'</div></div>
<input type="hidden" id="DPASubID" value="'.$arec['DPASubID'].'">
<input type="hidden" id="DPASubOutputID" value="'.$arec['DPASubOutputID'].'">
<input type="hidden" id="mode_detail" value="'.$mode_detail.'">';
} else if ( $data == "detail-sub-output" ) {
$arec = []; $mode_detail = "insert";
/*} else if ( $data == "detail-sub-output" ) {
$arec = ['DPASubOutputID'=>0, 'Text_Output'=>"", 'Target_Output'=>"", 'Satuan_Output'=>"", 'Status_Output'=>"komulatif"];
$mode_detail = "insert";
$id_dpa_sub_output = Param::Get("DPASubOutputID", 0);
if ($id_dpa_sub_output > 0) {
$db->Query("SELECT * FROM dpa_sub_output WHERE DPASubOutputID='".$id_dpa_sub_output."' LIMIT 1");
@@ -498,10 +554,10 @@ if ( $data == "tabel-opd" ) {
}
$form = new Form($db);
$tindi = $form->textarea("_", "Text_Output", $arec['Text_Output'], $emon_en, true, 2);
$ttarget = $form->textbox("_", "Target_Output", $arec['Target_Output'], $emon_en, true, "double");
$tsatuan = $form->textbox("_", "Satuan_Output", $arec['Satuan_Output'], $emon_en, true, "text", "satuan");
$tstatus = tipedata_status("Status_Output", 0, $arec['Status_Output'], $emon_en);
$tindi = $form->textarea("_", "Text_Output", $arec['Text_Output'], $ren_en, true, 2);
$ttarget = $form->textbox("_", "Target_Output", $arec['Target_Output'], $ren_en, true, "double");
$tsatuan = $form->textbox("_", "Satuan_Output", $arec['Satuan_Output'], $ren_en, true, "text", "satuan");
$tstatus = tipedata_status("Status_Output", 0, $arec['Status_Output'], $ren_en);
$ajson['html'] = '
<div class="card"><div class="card-body">
<div class="row mb-2">
@@ -516,20 +572,20 @@ if ( $data == "tabel-opd" ) {
<div class="row">
<label class="col-sm-4 col-lg-2 col-form-label" for="Target_Output">Target Output</label>
<div class="col-sm-6 col-lg-4">'.$ttarget.'</div>
<div class="col text-end">'.($emon_en?'<button type="button" class="btn btn-warning me-2" id="butBatalOutput">Batal</button><button type="button" class="btn btn-success" id="butSimpanOutput">Simpan</button>':'').'</div>
<div class="col text-end">'.($ren_en?'<button type="button" class="btn btn-warning me-2" id="butBatalOutput">Batal</button><button type="button" class="btn btn-success" id="butSimpanOutput">Simpan</button>':'').'</div>
</div>
<input type="hidden" id="DPASubOutputID" value="'.$arec['DPASubOutputID'].'">
<input type="hidden" id="mode_detail" value="'.$mode_detail.'">
</div></div>';
</div></div>';*/
} else if ( $data == "detail-akun" ) {
$adetail = array('Renc_Fisik' => 100); $mode_detail = "insert";
$emode = $emon_en; $mode_detail = "insert";
$qakun = " AND AkunID NOT IN (SELECT AkunID FROM dpa_akun WHERE Tahun='".$thn_renja."' AND OPDID='".$id_opd."' AND ProgID='".$id_prog."' AND KegID='".$id_keg."' AND SubID='".$id_sub."')";
$emode = $ren_en; $mode_detail = "insert";
$qakun = " AND AkunID NOT IN (SELECT AkunID FROM dpa_akun WHERE Tahun='".$thn_data."' AND OPDID='".$id_opd."' AND ProgID='".$id_prog."' AND KegID='".$id_keg."' AND SubID='".$id_sub."')";
$id_dpa_akun = Param::Get("DPAAkunID", 0);
if ($id_dpa_akun > 0) {
$emode = false;
$db->Query("SELECT D.*,A.N_Akun FROM (SELECT * FROM dpa_akun WHERE Tahun='".$thn_renja."' AND DPAAkunID='".$id_dpa_akun."' LIMIT 1) D LEFT JOIN para90_akun A ON (D.AkunID=A.AkunID AND A.Tahun='".$_SESSION['__WEB_APP']['AKUN_TAHUN']."')");
$db->Query("SELECT D.*,A.N_Akun FROM (SELECT * FROM dpa_akun WHERE Tahun='".$thn_data."' AND DPAAkunID='".$id_dpa_akun."' LIMIT 1) D LEFT JOIN para90_akun A ON (D.AkunID=A.AkunID AND A.Tahun='".$_SESSION['__WEB_APP']['AKUN_TAHUN']."')");
if ($db->Next()) $adetail = $db->AllRow();
$qakun = " AND AkunID='".$adetail['AkunID']."'";
$mode_detail = "update";
@@ -538,12 +594,12 @@ if ( $data == "tabel-opd" ) {
$form = new Form($db);
$f_kakun = $form->textbox("_", "K_Akun", $adetail['K_Akun'], false, false, "text");
$f_nakun = $form->option_que("_", "AkunID", $adetail['AkunID'], $emode, $emode, "SELECT AkunID,CONCAT(K_Akun,' - ',N_Akun) Nama_Akun FROM para90_akun WHERE Tahun='".$_SESSION['__WEB_APP']['AKUN_TAHUN']."' AND Set_Input=1".$qakun, array("AkunID","Nama_Akun"), array(0,"&nbsp;"));
$f_vol = $form->textbox("_", "Volume", $adetail['Volume'], $emon_en, $emon_en, "double", "masukkan volume", null, null, "RenjaJS.Hitung_Akun()");
$f_satuan = $form->option_db("_", "SatuanID", $adetail['SatuanID'], $emon_en, $emon_en, "para_satuan", array("SatuanID","N_Satuan"), "Aktif=1 ORDER BY N_Satuan", array(0,"&nbsp;"));
$f_harga = $form->textbox("_", "Harga_Satuan", $adetail['Harga_Satuan'], $emon_en, $emon_en, "double", "masukkan harga satuan", null, null, "RenjaJS.Hitung_Akun()");
$f_vol = $form->textbox("_", "Volume", $adetail['Volume'], $ren_en, $ren_en, "double", "masukkan volume", null, null, "RenjaJS.Hitung_Akun()");
$f_satuan = $form->option_db("_", "SatuanID", $adetail['SatuanID'], $ren_en, $ren_en, "para_satuan", array("SatuanID","N_Satuan"), "Aktif=1 ORDER BY N_Satuan", array(0,"&nbsp;"));
$f_harga = $form->textbox("_", "Harga_Satuan", $adetail['Harga_Satuan'], $ren_en, $ren_en, "double", "masukkan harga satuan", null, null, "RenjaJS.Hitung_Akun()");
$f_pagu = $form->textbox("_", "Pagu_Ini", $adetail['Pagu_Ini'], false, false, "double");
$f_renck = $form->textbox("_", "Renc_Keu", $adetail['Renc_Keu'], $emon_en, $emon_en, "double", "masukkan rencana keuangan");
$f_rencf = $form->textbox("_", "Renc_Fisik", $adetail['Renc_Fisik'], $emon_en, $emon_en, "double", "masukkan rencana fisik / non-fisik (default 100)");
$f_renck = $form->textbox("_", "Renc_Keu", $adetail['Renc_Keu'], $ren_en, $ren_en, "double", "masukkan rencana keuangan");
$f_rencf = $form->textbox("_", "Renc_Fisik", $adetail['Renc_Fisik'], $ren_en, $ren_en, "double", "masukkan rencana fisik / non-fisik (default 100)");
echo '
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label">Kode Akun</label>
@@ -588,13 +644,13 @@ if ( $data == "tabel-opd" ) {
$db->Query("SELECT * FROM para_tipedata WHERE TipeDataID='".$id_tipe."' LIMIT 1");
if ($db->Next()) $_p_input = json_decode($db->Row("P_Input", "{}"), true);
}
$ajson['target'] = tipedata_select("Target_Indi", $id_tipe, $indi_target, $emon_en, $_p_input);
$ajson['status'] = tipedata_status("Status_Indi", $id_tipe, $indi_status, $emon_en);
$ajson['target'] = tipedata_select("Target_Indi", $id_tipe, $indi_target, $ren_en, $_p_input);
$ajson['status'] = tipedata_status("Status_Indi", $id_tipe, $indi_status, $ren_en);
} else if ( $data == "default" ) {
echo '
<div class="fade-in">
<div class="card"><div class="card-header custom-style">Kelola Data Rencana Kerja OPD // Tahun Anggaran '.$thn_renja.'</div><div class="card-body">
<div class="card"><div class="card-header custom-style">Kelola Data Rencana Kerja OPD // Tahun Anggaran '.$thn_data.'</div><div class="card-body">
<div class="row mb-1">
<div class="col">
<div class="input-group">
@@ -603,7 +659,7 @@ if ( $data == "tabel-opd" ) {
<input id="OPDID" type="hidden" value="0">
<input id="AK_Bidu" type="hidden" value="">
<input id="K_Bidu1" type="hidden" value="">
<input id="Hak_DPA" type="hidden" value="1">
<input id="Hak_Renja" type="hidden" value="1">
<button class="btn btn-info btn-ganti" type="button" id="butOPD"><span><i class="bi-arrow-left-right"></span></i>OPD</button>
</div>
</div>