Update input data induk utk pokir, asmas dan renja

This commit is contained in:
2026-05-03 14:47:09 +07:00
parent 3d1b44628f
commit 76cde287dd
9 changed files with 347 additions and 211 deletions
+40 -28
View File
@@ -5,9 +5,9 @@
Desc. : JS - Kegiatan Aspirasi Masyarakat
Created By : Siau Pheng ([email protected]).
Created Date : October 28th, 2011.
Last Modified : November 24th, 2025.
Last Modified : May 3rd, 2026.
(c) 2011 - 2025, 3FONIA Software; WWW.3FONIA.COM.
(c) 2011 - 2026, 3FONIA Software; WWW.3FONIA.COM.
*******************************************************************/
@@ -16,19 +16,19 @@ var IndukAsmasJS = {
KODE: '',
loading: function(){
$('#butKEC').click(function(){
$('#butKEC').click(() => {
if ($('#KecID').val()>0) this.show_hide(1);
}.bind(this));
$('#butKEL').click(function(){
});
$('#butKEL').click(() => {
if ($('#KelID').val()>0) this.show_hide(2);
}.bind(this));
});
this.show_hide(1);
},
show_hide: function(no){
$('#divKEC').css('display', 'none'); $('#butKEC').removeClass('btn-secondary').addClass('btn-info');
$('#divKEL').css('display', 'none'); $('#butKEL').removeClass('btn-secondary').addClass('btn-info');
$('#divKEG').css('display', 'none');
$('#divKEC').addClass('d-none'); $('#butKEC').removeClass('btn-secondary').addClass('btn-info');
$('#divKEL').addClass('d-none'); $('#butKEL').removeClass('btn-secondary').addClass('btn-info');
$('#divKEG').addClass('d-none');
if (no == 1) {
$('#KecID').val(0);
$('#Nama_KEC').val('');
@@ -41,9 +41,9 @@ var IndukAsmasJS = {
if (no <= 2) {
$('#butKEL').removeClass('btn-info').addClass('btn-secondary');
}
if (no == 1) { $('#divKEC').css('display', ''); this.data_query('tabel-kec'); }
if (no == 2) { $('#divKEL').css('display', ''); this.data_query('tabel-kel'); }
if (no == 3) { $('#divKEG').css('display', ''); this.data_query('tabel-keg'); }
if (no == 1) { $('#divKEC').removeClass('d-none'); this.data_query('tabel-kec'); }
if (no == 2) { $('#divKEL').removeClass('d-none'); this.data_query('tabel-kel'); }
if (no == 3) { $('#divKEG').removeClass('d-none'); this.data_query('tabel-keg'); }
},
kec_select: function(acell){
@@ -59,13 +59,13 @@ var IndukAsmasJS = {
},
keg_detail: function(mode, ID){
new Request({
new Request.JSON({
url: this.PHP,
sendParam: ['data=detail-keg','mode_detail='+mode,'KecID','KelID','SapiID='+ID],
onSuccess: function(txt){
this.winDKeg = FoniaJS.showWindow('DKeg', 'Detail Kegiatan Aspirasi Masyarakat', txt, 'xl', [{},{i:'butTutup'},{i:'butWSimpan',v:'Simpan',c:'success'}], function(){
$('#winDKeg').find('#butWSimpan').click(function(){this.keg_simpan();}.bind(this));
$('#formUsulAsmas').validate({
onSuccess: (ajson) => {
this.winDKeg = FoniaJS.showWindow('DKeg', 'Detail Kegiatan Aspirasi Masyarakat', ajson.html, 'xl', [{},{i:'butTutup'},{i:'butWSimpan',v:'Simpan',c:'success'}], () => {
$('#winDKeg').find('#butWSimpan').click(() => this.keg_simpan());
$('#formAsmas').validate({
rules: {
required: true,
OPDID: {required:true, min:1},
@@ -74,31 +74,36 @@ var IndukAsmasJS = {
SubID: {required:true, min:1},
Lokasi: {required:true},
Masalah: {required:true},
Volume: {required:true, double_id:true},
Satuan: {required:true},
Rupiah: {required:true, double_id:true}
Rupiah: {required:true, double_id:true},
Hidden: {required:true},
}
});
this.oc_OPD();
}.bind(this));
}.bind(this)
});
}
}).send();
},
keg_tambah: function(){
this.keg_detail('insert', 0);
},
keg_ubah: function(acell){
this.keg_detail('update', acell[0]);
},
keg_simpan: function(){
$('#formUsulAsmas').submit();
if (true !== $('#formUsulAsmas').validate().checkForm()) return false;
$('#formAsmas').submit();
if (true !== $('#formAsmas').validate().checkForm()) return false;
const _param = ['data=tabel-keg','mode_detail','SapiID','OPDID','ProgID','KegID','SubID','KecID','KelID','Lokasi','Masalah','Hidden','Rupiah'];
$(':input[id^="Rupiah_"]').each((i,e) => { _param.push(e.id); });
$(':input[id^="Pending_"]').each((i,e) => { _param.push(e.id); });
new Request.JSONF({
url: this.PHP,
sendParam: ['data=tabel-keg','mode_detail','KecID','KelID','SapiID','OPDID','ProgID','KegID','SubID','Lokasi','Masalah','Volume','Satuan','Rupiah'],
onSuccess: function(adata){
sendParam: _param,
onSuccess: () => {
FoniaJS.closeWindow(this.winDKeg);
FoniaJS.showInfo('Sukses menyimpan Kegiatan Aspirasi Masyarakat.');
}.bind(this)
}
}).send();
},
@@ -143,6 +148,13 @@ var IndukAsmasJS = {
url: this.PHP,
sendParam: ['data=option-sub','OPDID','ProgID','KegID','SubID']
}).send();
},
copy_Pagu: function(){
FoniaJS.showConfirm('Konfirmasi', 'Yakin akan salin Pagu Awal / Default<br>ke Semua Pagu Bulanan ?', () => {
const _pagu = $('#Rupiah').val();
$(':input[id^="Rupiah_"]').each((i,e) => $(e).val(_pagu));
}, 'warning');
}
};
+41 -30
View File
@@ -2,12 +2,12 @@
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
Module : /apps/js/induk/pokir.js
Desc. : JS - Kegiatan Pokir Dewan
Desc. : JS - Kegiatan Pokir
Created By : Siau Pheng ([email protected]).
Created Date : October 28th, 2011.
Last Modified : November 24th, 2025.
Last Modified : May 3rd, 2026.
(c) 2011 - 2025, 3FONIA Software; WWW.3FONIA.COM.
(c) 2011 - 2026, 3FONIA Software; WWW.3FONIA.COM.
*******************************************************************/
@@ -16,43 +16,43 @@ var IndukPokirJS = {
KODE: '',
loading: function(){
$('#butDPRD').click(function(){
$('#butDPRD').click(() => {
if ($('#DPRDID').val()>0) this.show_hide(1);
}.bind(this));
$('#Nama_DPRD').keydown(function(e){
});
$('#Nama_DPRD').keydown((e) => {
if (13==e.which && false==$(e.target).prop('readonly')) this.data_query('tabel-dprd');
}.bind(this));
});
this.show_hide(1);
},
show_hide: function(no){
$('#divDPRD').css('display', 'none'); $('#butDPRD').removeClass('btn-secondary').addClass('btn-info');
$('#divKEG').css('display', 'none');
$('#divDPRD').addClass('d-none'); $('#butDPRD').removeClass('btn-secondary').addClass('btn-info');
$('#divKEG').addClass('d-none');
if (no == 1) {
$('#DPRDID').val(0);
$('#Nama_DPRD').val('').prop('readonly', false);
$('#DapilID').val(0);
$('#Nama_DPRD').val('').prop('readonly', false);
$('#butDPRD').removeClass('btn-info').addClass('btn-secondary');
}
if (no == 1) { $('#divDPRD').css('display', ''); this.data_query('tabel-dprd'); }
if (no == 2) { $('#divKEG').css('display', ''); this.data_query('tabel-keg'); }
if (no == 1) { $('#divDPRD').removeClass('d-none'); this.data_query('tabel-dprd'); }
if (no == 2) { $('#divKEG').removeClass('d-none'); this.data_query('tabel-keg'); }
},
dprd_select: function(acell){
$('#DPRDID').val(acell[0]);
$('#Nama_DPRD').val(acell[2]).prop('readonly', true);
$('#DapilID').val(acell[1]);
$('#Nama_DPRD').val(acell[2]).prop('readonly', true);
this.show_hide(2);
},
keg_detail: function(mode, ID){
new Request({
new Request.JSON({
url: this.PHP,
sendParam: ['data=detail-keg','mode_detail='+mode,'DPRDID','DapilID','SapiID='+ID],
onSuccess: function(txt){
this.winDKeg = FoniaJS.showWindow('DKeg', 'Detail Kegiatan Pokir', txt, 'xl', [{},{i:'butTutup'},{i:'butWSimpan',v:'Simpan',c:'success'}], function(){
$('#winDKeg').find('#butWSimpan').click(function(){this.keg_simpan();}.bind(this));
$('#formUsulDewan').validate({
onSuccess: (ajson) => {
this.winDKeg = FoniaJS.showWindow('DKeg', 'Detail Kegiatan Pokir', ajson.html, 'xl', [{},{i:'butTutup'},{i:'butWSimpan',v:'Simpan',c:'success'}], () => {
$('#winDKeg').find('#butWSimpan').click(() => this.keg_simpan());
$('#formPokir').validate({
rules: {
required: true,
OPDID: {required:true, min:1},
@@ -63,32 +63,36 @@ var IndukPokirJS = {
KelID: {required:false},
Lokasi: {required:true},
Masalah: {required:true},
Volume: {required:true, double_id:true},
Satuan: {required:true},
Rupiah: {required:true, double_id:true}
Rupiah: {required:true, double_id:true},
Hidden: {required:true},
}
});
this.oc_OPD();
this.oc_Kec();
}.bind(this));
}.bind(this)
});
}
}).send();
},
keg_tambah: function(){
this.keg_detail('insert', 0);
},
keg_ubah: function(acell){
this.keg_detail('update', acell[0]);
},
keg_simpan: function(){
$('#formUsulDewan').submit();
if (true !== $('#formUsulDewan').validate().checkForm()) return false;
$('#formPokir').submit();
if (true !== $('#formPokir').validate().checkForm()) return false;
const _param = ['data=tabel-keg','mode_detail','DPRDID','SapiID','OPDID','ProgID','KegID','SubID','KecID','KelID','Lokasi','Masalah','Hidden','Rupiah'];
$(':input[id^="Rupiah_"]').each((i,e) => { _param.push(e.id); });
$(':input[id^="Pending_"]').each((i,e) => { _param.push(e.id); });
new Request.JSONF({
url: this.PHP,
sendParam: ['data=tabel-keg','mode_detail','DPRDID','SapiID','OPDID','ProgID','KegID','SubID','KecID','KelID','Lokasi','Masalah','Volume','Satuan','Rupiah'],
onSuccess: function(adata){
sendParam: _param,
onSuccess: () => {
FoniaJS.closeWindow(this.winDKeg);
FoniaJS.showInfo('Sukses menyimpan Kegiatan Pokir.');
}.bind(this)
}
}).send();
},
@@ -136,6 +140,13 @@ var IndukPokirJS = {
url: this.PHP,
sendParam: ['data=option-kel','KecID','KelID']
}).send();
},
copy_Pagu: function(){
FoniaJS.showConfirm('Konfirmasi', 'Yakin akan salin Pagu Awal / Default<br>ke Semua Pagu Bulanan ?', () => {
const _pagu = $('#Rupiah').val();
$(':input[id^="Rupiah_"]').each((i,e) => $(e).val(_pagu));
}, 'warning');
}
};
+2 -2
View File
@@ -50,7 +50,7 @@ var IndukRenjaJS = {
url: this.PHP,
sendParam: ['data=detail-keg','mode_detail='+mode,'OPDID','AK_Bidu','SapiID='+ID],
onSuccess: (ajson) => {
this.winDKeg = FoniaJS.showWindow('DKeg', 'Detail Kegiatan Pokir', ajson.html, 'xl', [{},{i:'butTutup'},{i:'butWSimpan',v:'Simpan',c:'success'}], () => {
this.winDKeg = FoniaJS.showWindow('DKeg', 'Detail Kegiatan Renja', ajson.html, 'xl', [{},{i:'butTutup'},{i:'butWSimpan',v:'Simpan',c:'success'}], () => {
$('#winDKeg').find('#butWSimpan').click(() => this.keg_simpan());
$('#formRenja').validate({
rules: {
@@ -88,7 +88,7 @@ var IndukRenjaJS = {
new Request.JSONF({
url: this.PHP,
sendParam: _param,
onSuccess: (adata) => {
onSuccess: () => {
FoniaJS.closeWindow(this.winDKeg);
FoniaJS.showInfo('Sukses menyimpan Kegiatan Renja.');
}
+4
View File
@@ -17,6 +17,10 @@ require_once(__DIR__."/../../../../../vendor/autoload.php");
use siaupheng\fonia3\DB\MySQL;
define("SAPI_JENIS_POKIR", 1);
define("SAPI_JENIS_ASMAS", 2);
define("SAPI_JENIS_RENJA", 3);
$fdb = new MySQL();
function tahun_ang($prefix = "") {
+120 -49
View File
@@ -7,9 +7,9 @@
Desc. : PHP - Kegiatan Aspirasi Masyarakat
Created By : Siau Pheng ([email protected]).
Created Date : October 28th, 2011.
Last Modified : November 24th, 2025.
Last Modified : May 3rd, 2026.
(c) 2011 - 2025, 3FONIA Software; WWW.3FONIA.COM.
(c) 2011 - 2026, 3FONIA Software; WWW.3FONIA.COM.
*******************************************************************/
@@ -39,8 +39,8 @@ $id_sub = Param::Get("SubID", 0);
$aapp = $_SESSION['__WEB_APP'];
if ( in_array($data, ["tabel-kec","tabel-kel","tabel-keg"]) ) {
$qsql = "Tahun='".$thn_renja."' AND Jenis=2";
$msql = "M.Aktif=1 AND IFNULL(K.ITEM_KEG,0)>0";
$qsql = "Tahun='".$thn_renja."' AND Jenis=".SAPI_JENIS_ASMAS." AND Tahapan=1";
$msql = "M.Aktif=1";
if ( $data == "tabel-kec" ) {
$qsql2 = $qsql;
@@ -69,7 +69,7 @@ if ( $data == "tabel-kec" ) {
$obj->add_field("ITEM_ERR2", "Status", "c", "Kolom_Status1");
$obj->set_field_order("N_Lokasi", "A");
$obj->set_row_color("ITEM_VER", 1, "ryellow");
$obj->add_row_btn("select", "Kel / Desa", "IndukAsmasJS.kec_select");
$obj->add_row_btn("save", "Kel / Desa", "IndukAsmasJS.kec_select");
$obj->set_func_navi("IndukAsmasJS.data_query('tabel-kec')");
$obj->set_textbtn(true);
$ajson[] = $obj->json_table("divKEC");
@@ -85,13 +85,13 @@ if ( $data == "tabel-kec" ) {
$obj->add_field("ITEM_ERR2", "Status", "c", "Kolom_Status1");
$obj->set_field_order("N_Lokasi", "A");
$obj->set_row_color("ITEM_VER", 1, "ryellow");
$obj->add_row_btn("select", "Asmas", "IndukAsmasJS.kel_select");
$obj->add_row_btn("save", "Asmas", "IndukAsmasJS.kel_select");
$obj->set_func_navi("IndukAsmasJS.data_query('tabel-kel')");
$obj->set_textbtn(true);
$ajson[] = $obj->json_table("divKEL");
} else if ( $data == "tabel-keg" ) {
if (in_array($mode_detail, ["update"])) {
if (in_array($mode_detail, ["insert","update","delete"])) {
$sql = new SQL($db);
$sql->set_table("sapi_keg");
$sql->add_param("OPDID");
@@ -100,95 +100,166 @@ if ( $data == "tabel-kec" ) {
$sql->add_param("SubID");
$sql->add_param("Lokasi");
$sql->add_param("Masalah");
$sql->add_param("Volume");
$sql->add_param("Satuan");
$sql->add_param("Rupiah");
$sql->add_param("Hidden");
$sql->add_param_stamp();
$sql->add_param_userid();
$sql->add_where("Tahun", $thn_renja);
$sql->add_where("SapiID");
$sql->UpdateDB();
$sql2 = new SQL($db);
$sql2->set_table("sapi_keg_tag");
$sql2->add_param("Rupiah_01");
$sql2->add_param("Rupiah_02");
$sql2->add_param("Rupiah_03");
$sql2->add_param("Rupiah_04");
$sql2->add_param("Rupiah_05");
$sql2->add_param("Rupiah_06");
$sql2->add_param("Rupiah_07");
$sql2->add_param("Rupiah_08");
$sql2->add_param("Rupiah_09");
$sql2->add_param("Rupiah_10");
$sql2->add_param("Rupiah_11");
$sql2->add_param("Rupiah_12");
$sql2->add_param("Pending_01");
$sql2->add_param("Pending_02");
$sql2->add_param("Pending_03");
$sql2->add_param("Pending_04");
$sql2->add_param("Pending_05");
$sql2->add_param("Pending_06");
$sql2->add_param("Pending_07");
$sql2->add_param("Pending_08");
$sql2->add_param("Pending_09");
$sql2->add_param("Pending_10");
$sql2->add_param("Pending_11");
$sql2->add_param("Pending_12");
$sql2->add_where("Tahun", $thn_renja);
$sql2->add_where("SapiID");
switch ($mode_detail) {
case "insert":
$sql->add_param("Tahun", $thn_renja);
$sql->add_param("Jenis", SAPI_JENIS_ASMAS);
$sql->add_param("Tahapan", 1);
$sql->add_param("KecID");
$sql->add_param("KelID");
$sql->add_param("Kode", Kegiatan_Baru($thn_renja, "M"));
$sql->InsertDB();
$_id = $sql->LastInsertID();
$sql2->add_param("SapiID", $_id);
$sql2->add_param("Tahun", $thn_renja);
$sql2->InsertDB();
break;
case "update":
$sql->UpdateDB();
$sql2->UpdateDB();
break;
case "delete":
//$sql->DeleteDB();
//$sql2->DeleteDB();
break;
}
}
$obj = new Table($db);
$obj->set_query("SELECT R.*,X.N_Sub,CONCAT(R.Volume,' ',R.Satuan) N_Satuan FROM (SELECT *,IF(OPDID=0 OR KecID=0,1,0) ITEM_ERR FROM sapi_keg WHERE ".$qsql.") R LEFT JOIN (SELECT SubID,K_Sub,N_Sub,Nama_Sub FROM vi_para90_submap WHERE Tahun='".$aapp['SUBMAP_TAHUN']."') X ON (X.SubID=R.SubID)");
$obj->set_query("SELECT R.*,X.Nama_Sub FROM (SELECT *,IF(OPDID=0 OR KecID=0,1,0) ITEM_ERR FROM sapi_keg WHERE ".$qsql.") R LEFT JOIN (SELECT SubID,K_Sub,N_Sub,Nama_Sub FROM vi_para90_submap WHERE Tahun='".$aapp['SUBMAP_TAHUN']."') X ON (X.SubID=R.SubID)");
$obj->add_field("SapiID", "ID", "hid");
$obj->add_field("SIPD_UsulanID", "Kode", "c");
$obj->add_field("N_Sub", "Kegiatan Asmas", "awr");
$obj->add_field("Lokasi", "Lokasi", "awr");
$obj->add_field("N_Satuan", "Volume", "l");
$obj->add_field("Kode", "Kode", "c");
$obj->add_field("Nama_Sub", "Kegiatan Asmas", "l");
$obj->add_field("Lokasi", "Lokasi", "l");
$obj->add_field("Rupiah", "Pagu", "r", "rupiah");
$obj->add_field("ITEM_ERR", "Status", "c", "Kolom_Status2");
$obj->set_field_order("SIPD_UsulanID", "A");
$obj->set_row_color("ITEM_ERR", 1, "ryellow");
$obj->add_row_btn("document", "Detail", "IndukAsmasJS.keg_ubah");
$obj->add_row_btn("clipboard", "Detail Kegiatan", "IndukAsmasJS.keg_ubah");
$obj->set_func_btn("IndukAsmasJS.keg_tambah", '<i class="bi-plus-lg me-1"></i>Kegiatan');
$obj->set_func_navi("IndukAsmasJS.data_query('tabel-keg')");
$obj->set_textbtn(true);
$ajson[] = $obj->json_table("divKEG");
} else if ( $data == "detail-keg" ) {
$enable = true;
$adetail = ['SapiID'=>0];
$adetail = ['SapiID'=>0, 'AK_Bidu'=>"'X.XX'"];
if ($id_sapi > 0) {
$db->Query("SELECT * FROM sapi_keg WHERE Tahun='".$thn_renja."' AND Jenis=2 AND SapiID='".$id_sapi."' LIMIT 1");
$db->Query("SELECT * FROM sapi_keg WHERE Tahun='".$thn_renja."' AND SapiID='".$id_sapi."' LIMIT 1");
if ($db->Next()) $adetail = array_merge($adetail, $db->AllRow());
$db->Query("SELECT * FROM sapi_keg_tag WHERE Tahun='".$thn_renja."' AND SapiID='".$adetail['SapiID']."' LIMIT 1");
if ($db->Next()) $adetail = array_merge($adetail, $db->AllRow());
if ($adetail['OPDID'] > 0) {
$db->Query("SELECT AK_Bidu FROM vi_para90_opd WHERE OPDID='".$adetail['OPDID']."' LIMIT 1");
if ($db->Next()) $adetail = array_merge($adetail, $db->AllRow());
}
}
$form = new Form($db);
$topd = $form->option_db("_", "OPDID", $adetail['OPDID'], $enable, true, "para90_opd", ["OPDID","N_OPD"], "Aktif=1 ORDER BY K_OPD", [0,"&nbsp;"], null, "IndukAsmasJS.oc_OPD()");
$tprog = $form->option("_", "ProgID", $adetail['ProgID'], $enable, true, [$adetail['ProgID']=>["&nbsp;",0]], null, "IndukAsmasJS.oc_Prog()");
$tkeg = $form->option("_", "KegID", $adetail['KegID'], $enable, true, [$adetail['KegID']=>["&nbsp;",0]], null, "IndukAsmasJS.oc_Keg()");
$tsub = $form->option("_", "SubID", $adetail['SubID'], $enable, true, [$adetail['SubID']=>["&nbsp;",0]]);
$tprog = $form->option_que("_", "ProgID", $adetail['ProgID'], $enable, false, "SELECT ProgID,Nama_Prog FROM vi_para90_submap WHERE Tahun='".$thn_submap."' AND K_Bidu IN (".$adetail['AK_Bidu'].") GROUP BY ProgID ORDER BY K_Prog", ["ProgID","Nama_Prog"], [0,"&nbsp;"], null, "IndukAsmasJS.oc_Prog()");
$tkeg = $form->option_que("_", "KegID", $adetail['KegID'], $enable, false, "SELECT KegID,Nama_Keg FROM vi_para90_submap WHERE Tahun='".$thn_submap."' AND ProgID='".$adetail['ProgID']."' GROUP BY KegID ORDER BY K_Keg", ["KegID","Nama_Keg"], [0,"&nbsp;"], null, "IndukAsmasJS.oc_Keg()");
$tsub = $form->option_que("_", "SubID", $adetail['SubID'], $enable, false, "SELECT SubID,Nama_Sub FROM vi_para90_submap WHERE Tahun='".$thn_submap."' AND KegID='".$adetail['KegID']."' ORDER BY K_Sub", ["SubID","Nama_Sub"], [0,"&nbsp;"]);
$tlokasi = $form->textbox("_", "Lokasi", $adetail['Lokasi'], $enable, true, "text");
$tmasa = $form->textarea("_", "Masalah", $adetail['Masalah'], $enable, true, 2);
$tvol = $form->textbox("_", "Volume", $adetail['Volume'], $enable, true, "double");
$tsatu = $form->textbox("_", "Satuan", $adetail['Satuan'], $enable, true, "text");
$trupiah = $form->textbox("_", "Rupiah", $adetail['Rupiah'], $enable, true, "double");
echo '<form id="formUsulAsmas" novalidate="novalidate">
$thidden = $form->radio("_", "Hidden", $adetail['Hidden'], $enable, true, [1=>"Ya",0=>"Tidak"]);
$ajson['html'] = '<form id="formAsmas" novalidate="novalidate">
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label" for="OPDID">Nama Perangkat Daerah</label>
<div class="col-sm-8 col-lg-9">'.$topd.'</div>
<label class="col-sm-4 col-lg-2 col-form-label" for="OPDID">Nama OPD</label>
<div class="col-sm-8 col-lg-10">'.$topd.'</div>
</div>
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label" for="ProgID">Nama Program</label>
<div class="col-sm-8 col-lg-9">'.$tprog.'</div>
<label class="col-sm-4 col-lg-2 col-form-label" for="ProgID">Nama Program</label>
<div class="col-sm-8 col-lg-10">'.$tprog.'</div>
</div>
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label" for="KegID">Nama Kegiatan</label>
<div class="col-sm-8 col-lg-9">'.$tkeg.'</div>
<label class="col-sm-4 col-lg-2 col-form-label" for="KegID">Nama Kegiatan</label>
<div class="col-sm-8 col-lg-10">'.$tkeg.'</div>
</div>
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label" for="SubID">Nama Sub Kegiatan</label>
<div class="col-sm-8 col-lg-9">'.$tsub.'</div>
<label class="col-sm-4 col-lg-2 col-form-label" for="SubID">Nama Sub Kegiatan</label>
<div class="col-sm-8 col-lg-10">'.$tsub.'</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-3 col-form-label" for="Lokasi">Lokasi Kegiatan</label>
<div class="col-sm-8 col-lg-9">'.$tlokasi.'</div>
<label class="col-sm-4 col-lg-2 col-form-label" for="Lokasi">Lokasi Kegiatan</label>
<div class="col-sm-8 col-lg-10">'.$tlokasi.'</div>
</div>
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label" for="Masalah">Permasalahan</label>
<div class="col-sm-8 col-lg-9">'.$tmasa.'</div>
<label class="col-sm-4 col-lg-2 col-form-label" for="Masalah">Permasalahan</label>
<div class="col-sm-8 col-lg-10">'.$tmasa.'</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-3 col-form-label" for="Volume">Volume Kegiatan</label>
<div class="col-sm-4 col-lg-4">'.$tvol.'</div>
<div class="col-sm-4 col-lg-5">'.$tsatu.'</div>
</div>
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label" for="Rupiah">Nilai Pagu Kegiatan</label>
<label class="col-sm-4 col-lg-2 col-form-label" for="Rupiah">Pagu Awal / Default</label>
<div class="col-sm-4 col-lg-4">'.$trupiah.'</div>
</div></form>
<div class="col"><button class="btn btn-outline-info shadow-none text-primary" title="Salin ke Pagu semua Bulan." onclick="IndukAsmasJS.copy_Pagu();"><i class="bi-copy"></i></button></div>
</div>';
$abulan = bulan_array();
for ($bln = 1; $bln <= 12; $bln++) {
$bln_fix = isi_nol($bln, 2);
$trup_x = $form->textbox("_", "Rupiah_".$bln_fix, $adetail['Rupiah_'.$bln_fix], $enable, false, "double");
$ajson['html'] .= '
<div class="row mb-1">
<label class="col-sm-4 col-lg-2 col-form-label" for="Rupiah_'.$bln_fix.'">Pagu '.$abulan[$bln].'</label>
<div class="col-sm-4 col-lg-4">'.$trup_x.'</div>
<div class="col-sm-4 col-lg-3"><div class="form-control">
<input type="checkbox" id="Pending_'.$bln_fix.'" value="'.$adetail['Pending_'.$bln_fix].'" onchange="this.value=(this.checked)?\'1\':\'0\';" class="form-check-input me-2" '.($adetail['Pending_'.$bln_fix]==1?'checked':'').'>
<label class="form-check-label" for="Pending_'.$bln_fix.'">Pending '.$abulan[$bln].'</label>
</div></div>
</div>';
}
$ajson['html'] .= '
<div class="row mb-1">
<label class="col-sm-4 col-lg-2 col-form-label" for="Hidden">Paket Hidden</label>
<div class="col-sm-8 col-lg-10">'.$thidden.'</div>
</div>
</form>
<input type="hidden" id="SapiID" value="'.$adetail['SapiID'].'" />
<input type="hidden" id="mode_detail" value="'.$mode_detail.'" />';
} else if ( $data == "option-prog" ) {
$ak_bidu = '0.00';
$ak_bidu = "'X.XX'";
$db->Query("SELECT * FROM vi_para90_opd WHERE OPDID='".$id_opd."' LIMIT 1");
if ($db->Next()) {
$ak_bidu = $db->Row("AK_Bidu");
}
if ($db->Next()) $ak_bidu = $db->Row("AK_Bidu");
$aoption = ['type' => "option", 'id' => "ProgID", 'value' => $id_prog, 'avalue' => []];
$db->Query("SELECT * FROM vi_para90_submap WHERE Tahun='".$thn_submap."' AND K_Bidu IN (".$ak_bidu.") GROUP BY ProgID ORDER BY K_Prog");
if ($db->RecordCount()<>1) $aoption['avalue'][] = array('value'=>0, 'html'=>"");
@@ -221,7 +292,7 @@ if ( $data == "tabel-kec" ) {
} else if ( $data == "default") {
echo '
<div class="fade-in">
<div class="card"><div class="card-header custom-style">Kelola Data Induk Aspirasi Masyarakat</div><div class="card-body">
<div class="card"><div class="card-header custom-style">Kelola Data Induk - Aspirasi Masyarakat</div><div class="card-body">
<div class="row mb-1">
<div class="col">
<div class="input-group">
+125 -56
View File
@@ -4,12 +4,12 @@
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
Module : /apps/php/induk/pokir.php
Desc. : PHP - Kegiatan Pokir Dewan
Desc. : PHP - Kegiatan Pokir
Created By : Siau Pheng ([email protected]).
Created Date : October 28th, 2011.
Last Modified : November 24th, 2025.
Last Modified : May 3rd, 2026.
(c) 2011 - 2025, 3FONIA Software; WWW.3FONIA.COM.
(c) 2011 - 2026, 3FONIA Software; WWW.3FONIA.COM.
*******************************************************************/
@@ -41,9 +41,8 @@ $id_sub = Param::Get("SubID", 0);
$aapp = $_SESSION['__WEB_APP'];
if ( in_array($data, ["tabel-dprd","tabel-keg"]) ) {
$qsql = "Tahun='".$thn_renja."' AND Jenis=1";
$qsql = "Tahun='".$thn_renja."' AND Jenis=".SAPI_JENIS_POKIR." AND Tahapan=1";
$msql = "M.Aktif=1";
//$msql = "M.Aktif=1 AND IFNULL(K.ITEM_KEG,0)>0";
if ( $data == "tabel-dprd" ) {
$tcari = Param::Get("Nama_DPRD", "");
@@ -69,13 +68,13 @@ if ( $data == "tabel-dprd" ) {
$obj->add_field("ITEM_ERR2", "Status", "c", "Kolom_Status1");
$obj->set_field_order("K_DPRD", "A");
$obj->set_row_color("ITEM_VER", 1, "ryellow");
$obj->add_row_btn("select", "Pokir", "IndukPokirJS.dprd_select");
$obj->add_row_btn("save", "Pokir", "IndukPokirJS.dprd_select");
$obj->set_func_navi("IndukPokirJS.data_query('tabel-dprd')");
$obj->set_textbtn(true);
$ajson[] = $obj->json_table("divDPRD");
} else if ( $data == "tabel-keg" ) {
if (in_array($mode_detail, ["update"])) {
if (in_array($mode_detail, ["insert","update","delete"])) {
$sql = new SQL($db);
$sql->set_table("sapi_keg");
$sql->add_param("OPDID");
@@ -86,35 +85,84 @@ if ( $data == "tabel-dprd" ) {
$sql->add_param("KelID");
$sql->add_param("Lokasi");
$sql->add_param("Masalah");
$sql->add_param("Volume");
$sql->add_param("Satuan");
$sql->add_param("Rupiah");
$sql->add_param("Hidden");
$sql->add_param_stamp();
$sql->add_param_userid();
$sql->add_where("Tahun", $thn_renja);
$sql->add_where("SapiID");
$sql->UpdateDB();
$sql2 = new SQL($db);
$sql2->set_table("sapi_keg_tag");
$sql2->add_param("Rupiah_01");
$sql2->add_param("Rupiah_02");
$sql2->add_param("Rupiah_03");
$sql2->add_param("Rupiah_04");
$sql2->add_param("Rupiah_05");
$sql2->add_param("Rupiah_06");
$sql2->add_param("Rupiah_07");
$sql2->add_param("Rupiah_08");
$sql2->add_param("Rupiah_09");
$sql2->add_param("Rupiah_10");
$sql2->add_param("Rupiah_11");
$sql2->add_param("Rupiah_12");
$sql2->add_param("Pending_01");
$sql2->add_param("Pending_02");
$sql2->add_param("Pending_03");
$sql2->add_param("Pending_04");
$sql2->add_param("Pending_05");
$sql2->add_param("Pending_06");
$sql2->add_param("Pending_07");
$sql2->add_param("Pending_08");
$sql2->add_param("Pending_09");
$sql2->add_param("Pending_10");
$sql2->add_param("Pending_11");
$sql2->add_param("Pending_12");
$sql2->add_where("Tahun", $thn_renja);
$sql2->add_where("SapiID");
switch ($mode_detail) {
case "insert":
$sql->add_param("Tahun", $thn_renja);
$sql->add_param("Jenis", SAPI_JENIS_POKIR);
$sql->add_param("Tahapan", 1);
$sql->add_param("DPRDID");
$sql->add_param("Kode", Kegiatan_Baru($thn_renja, "P"));
$sql->InsertDB();
$_id = $sql->LastInsertID();
$sql2->add_param("SapiID", $_id);
$sql2->add_param("Tahun", $thn_renja);
$sql2->InsertDB();
break;
case "update":
$sql->UpdateDB();
$sql2->UpdateDB();
break;
case "delete":
//$sql->DeleteDB();
//$sql2->DeleteDB();
break;
}
}
$obj = new Table($db);
$obj->set_query("SELECT R.*,X.N_Sub,CONCAT(R.Volume,' ',R.Satuan) N_Satuan FROM (SELECT *,IF(OPDID=0 OR KecID=0,1,0) ITEM_ERR FROM sapi_keg WHERE ".$qsql.") R LEFT JOIN (SELECT SubID,K_Sub,N_Sub,Nama_Sub FROM vi_para90_submap WHERE Tahun='".$aapp['SUBMAP_TAHUN']."') X ON (X.SubID=R.SubID)");
$obj->set_query("SELECT R.*,X.Nama_Sub FROM (SELECT *,IF(OPDID=0 OR KecID=0,1,0) ITEM_ERR FROM sapi_keg WHERE ".$qsql.") R LEFT JOIN (SELECT SubID,K_Sub,N_Sub,Nama_Sub FROM vi_para90_submap WHERE Tahun='".$aapp['SUBMAP_TAHUN']."') X ON (X.SubID=R.SubID)");
$obj->add_field("SapiID", "ID", "hid");
$obj->add_field("SIPD_UsulanID", "Kode", "c");
$obj->add_field("N_Sub", "Kegiatan Pokir", "awr");
$obj->add_field("Lokasi", "Lokasi", "awr");
$obj->add_field("N_Satuan", "Volume", "l");
$obj->add_field("Kode", "Kode", "c");
$obj->add_field("Nama_Sub", "Kegiatan Pokir", "l");
$obj->add_field("Lokasi", "Lokasi", "l");
$obj->add_field("Rupiah", "Pagu", "r", "rupiah");
$obj->add_field("ITEM_ERR", "Status", "c", "Kolom_Status2");
$obj->set_field_order("SIPD_UsulanID", "A");
$obj->set_field_order("Kode", "A");
$obj->set_row_color("ITEM_ERR", 1, "ryellow");
$obj->add_row_btn("document", "Detail", "IndukPokirJS.keg_ubah");
$obj->add_row_btn("clipboard", "Detail Kegiatan", "IndukPokirJS.keg_ubah");
$obj->set_func_btn("IndukPokirJS.keg_tambah", '<i class="bi-plus-lg me-1"></i>Kegiatan');
$obj->set_func_navi("IndukPokirJS.data_query('tabel-keg')");
$obj->set_textbtn(true);
$ajson[] = $obj->json_table("divKEG");
} else if ( $data == "detail-keg" ) {
$enable = true;
$adetail = ['SapiID'=>0, 'Bebas_Dapil'=>0];
$adetail = ['SapiID'=>0, 'Bebas_Dapil'=>0, 'AK_Bidu'=>"'X.XX'"];
if ($id_dprd > 0) {
//todo: berikutnya ambil data dari tabel master dprd !
$db->Query("SELECT * FROM app_operator WHERE Aktif=1 AND AK_DPRD IN (".$id_dprd.") ORDER BY Last_Date DESC LIMIT 1");
@@ -123,75 +171,96 @@ if ( $data == "tabel-dprd" ) {
}
}
if ($id_sapi > 0) {
$db->Query("SELECT * FROM sapi_keg WHERE Tahun='".$thn_renja."' AND Jenis=1 AND SapiID='".$id_sapi."' LIMIT 1");
$db->Query("SELECT * FROM sapi_keg WHERE Tahun='".$thn_renja."' AND SapiID='".$id_sapi."' LIMIT 1");
if ($db->Next()) $adetail = array_merge($adetail, $db->AllRow());
$db->Query("SELECT * FROM sapi_keg_tag WHERE Tahun='".$thn_renja."' AND SapiID='".$adetail['SapiID']."' LIMIT 1");
if ($db->Next()) $adetail = array_merge($adetail, $db->AllRow());
if ($adetail['OPDID'] > 0) {
$db->Query("SELECT AK_Bidu FROM vi_para90_opd WHERE OPDID='".$adetail['OPDID']."' LIMIT 1");
if ($db->Next()) $adetail = array_merge($adetail, $db->AllRow());
}
}
$form = new Form($db);
$topd = $form->option_db("_", "OPDID", $adetail['OPDID'], $enable, true, "para90_opd", ["OPDID","N_OPD"], "Aktif=1 ORDER BY K_OPD", [0,"&nbsp;"], null, "IndukPokirJS.oc_OPD()");
$tprog = $form->option("_", "ProgID", $adetail['ProgID'], $enable, true, [$adetail['ProgID']=>["&nbsp;",0]], null, "IndukPokirJS.oc_Prog()");
$tkeg = $form->option("_", "KegID", $adetail['KegID'], $enable, true, [$adetail['KegID']=>["&nbsp;",0]], null, "IndukPokirJS.oc_Keg()");
$tsub = $form->option("_", "SubID", $adetail['SubID'], $enable, true, [$adetail['SubID']=>["&nbsp;",0]]);
$topd = $form->option_db("_", "OPDID", $adetail['OPDID'], $enable, true, "vi_para90_opd", ["OPDID","Nama_OPD"], "Aktif=1 ORDER BY K_OPD", [0,"&nbsp;"], null, "IndukPokirJS.oc_OPD()");
$tprog = $form->option_que("_", "ProgID", $adetail['ProgID'], $enable, false, "SELECT ProgID,Nama_Prog FROM vi_para90_submap WHERE Tahun='".$thn_submap."' AND K_Bidu IN (".$adetail['AK_Bidu'].") GROUP BY ProgID ORDER BY K_Prog", ["ProgID","Nama_Prog"], [0,"&nbsp;"], null, "IndukPokirJS.oc_Prog()");
$tkeg = $form->option_que("_", "KegID", $adetail['KegID'], $enable, false, "SELECT KegID,Nama_Keg FROM vi_para90_submap WHERE Tahun='".$thn_submap."' AND ProgID='".$adetail['ProgID']."' GROUP BY KegID ORDER BY K_Keg", ["KegID","Nama_Keg"], [0,"&nbsp;"], null, "IndukPokirJS.oc_Keg()");
$tsub = $form->option_que("_", "SubID", $adetail['SubID'], $enable, false, "SELECT SubID,Nama_Sub FROM vi_para90_submap WHERE Tahun='".$thn_submap."' AND KegID='".$adetail['KegID']."' ORDER BY K_Sub", ["SubID","Nama_Sub"], [0,"&nbsp;"]);
$tkec = $form->option_db("_", "KecID", $adetail['KecID'], $enable, true, "para_lokasi", ["LokasiID","N_Lokasi"], "Level=1 AND Aktif=1 ".($adetail['Bebas_Dapil']==1?"":"AND DapilID='".$id_dapil."'")." ORDER BY N_Lokasi", [0,"&nbsp;"], null, "IndukPokirJS.oc_Kec()");
$tkel = $form->option("_", "KelID", $adetail['KelID'], $enable, false, [$adetail['KelID']=>["&nbsp;",0]]);
$tkel = $form->option_que("_", "KelID", $adetail['KelID'], $enable, false, "SELECT LokasiID,N_Lokasi FROM para_lokasi WHERE Level=2 AND Aktif=1 AND IndukID='".$adetail['KecID']."' ORDER BY K_Lokasi", ["LokasiID","N_Lokasi"], [0,"&nbsp;"]);
$tlokasi = $form->textbox("_", "Lokasi", $adetail['Lokasi'], $enable, true, "text");
$tmasa = $form->textarea("_", "Masalah", $adetail['Masalah'], $enable, true, 2);
$tvol = $form->textbox("_", "Volume", $adetail['Volume'], $enable, true, "double");
$tsatu = $form->textbox("_", "Satuan", $adetail['Satuan'], $enable, true, "text");
$trupiah = $form->textbox("_", "Rupiah", $adetail['Rupiah'], $enable, true, "double");
echo '<form id="formUsulDewan" novalidate="novalidate">
$thidden = $form->radio("_", "Hidden", $adetail['Hidden'], $enable, true, [1=>"Ya",0=>"Tidak"]);
$ajson['html'] = '<form id="formPokir" novalidate="novalidate">
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label" for="OPDID">Nama Perangkat Daerah</label>
<div class="col-sm-8 col-lg-9">'.$topd.'</div>
<label class="col-sm-4 col-lg-2 col-form-label" for="OPDID">Nama OPD</label>
<div class="col-sm-8 col-lg-10">'.$topd.'</div>
</div>
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label" for="ProgID">Nama Program</label>
<div class="col-sm-8 col-lg-9">'.$tprog.'</div>
<label class="col-sm-4 col-lg-2 col-form-label" for="ProgID">Nama Program</label>
<div class="col-sm-8 col-lg-10">'.$tprog.'</div>
</div>
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label" for="KegID">Nama Kegiatan</label>
<div class="col-sm-8 col-lg-9">'.$tkeg.'</div>
<label class="col-sm-4 col-lg-2 col-form-label" for="KegID">Nama Kegiatan</label>
<div class="col-sm-8 col-lg-10">'.$tkeg.'</div>
</div>
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label" for="SubID">Nama Sub Kegiatan</label>
<div class="col-sm-8 col-lg-9">'.$tsub.'</div>
<label class="col-sm-4 col-lg-2 col-form-label" for="SubID">Nama Sub Kegiatan</label>
<div class="col-sm-8 col-lg-10">'.$tsub.'</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-3 col-form-label" for="KecID">Kecamatan</label>
<div class="col-sm-8 col-lg-9">'.$tkec.'</div>
<label class="col-sm-4 col-lg-2 col-form-label" for="KecID">Kecamatan</label>
<div class="col-sm-8 col-lg-10">'.$tkec.'</div>
</div>
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label" for="KelID">Kelurahan / Desa</label>
<div class="col-sm-8 col-lg-9">'.$tkel.'</div>
<label class="col-sm-4 col-lg-2 col-form-label" for="KelID">Kelurahan / Desa</label>
<div class="col-sm-8 col-lg-10">'.$tkel.'</div>
</div>
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label" for="Lokasi">Lokasi Kegiatan</label>
<div class="col-sm-8 col-lg-9">'.$tlokasi.'</div>
<label class="col-sm-4 col-lg-2 col-form-label" for="Lokasi">Lokasi Kegiatan</label>
<div class="col-sm-8 col-lg-10">'.$tlokasi.'</div>
</div>
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label" for="Masalah">Permasalahan</label>
<div class="col-sm-8 col-lg-9">'.$tmasa.'</div>
<label class="col-sm-4 col-lg-2 col-form-label" for="Masalah">Permasalahan</label>
<div class="col-sm-8 col-lg-10">'.$tmasa.'</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-3 col-form-label" for="Volume">Volume Kegiatan</label>
<div class="col-sm-4 col-lg-4">'.$tvol.'</div>
<div class="col-sm-4 col-lg-5">'.$tsatu.'</div>
</div>
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label" for="Rupiah">Nilai Pagu Kegiatan</label>
<label class="col-sm-4 col-lg-2 col-form-label" for="Rupiah">Pagu Awal / Default</label>
<div class="col-sm-4 col-lg-4">'.$trupiah.'</div>
</div></form>
<div class="col"><button class="btn btn-outline-info shadow-none text-primary" title="Salin ke Pagu semua Bulan." onclick="IndukPokirJS.copy_Pagu();"><i class="bi-copy"></i></button></div>
</div>';
$abulan = bulan_array();
for ($bln = 1; $bln <= 12; $bln++) {
$bln_fix = isi_nol($bln, 2);
$trup_x = $form->textbox("_", "Rupiah_".$bln_fix, $adetail['Rupiah_'.$bln_fix], $enable, false, "double");
$ajson['html'] .= '
<div class="row mb-1">
<label class="col-sm-4 col-lg-2 col-form-label" for="Rupiah_'.$bln_fix.'">Pagu '.$abulan[$bln].'</label>
<div class="col-sm-4 col-lg-4">'.$trup_x.'</div>
<div class="col-sm-4 col-lg-3"><div class="form-control">
<input type="checkbox" id="Pending_'.$bln_fix.'" value="'.$adetail['Pending_'.$bln_fix].'" onchange="this.value=(this.checked)?\'1\':\'0\';" class="form-check-input me-2" '.($adetail['Pending_'.$bln_fix]==1?'checked':'').'>
<label class="form-check-label" for="Pending_'.$bln_fix.'">Pending '.$abulan[$bln].'</label>
</div></div>
</div>';
}
$ajson['html'] .= '
<div class="row mb-1">
<label class="col-sm-4 col-lg-2 col-form-label" for="Hidden">Paket Hidden</label>
<div class="col-sm-8 col-lg-10">'.$thidden.'</div>
</div>
</form>
<input type="hidden" id="SapiID" value="'.$adetail['SapiID'].'" />
<input type="hidden" id="mode_detail" value="'.$mode_detail.'" />';
} else if ( $data == "option-prog" ) {
$ak_bidu = '0.00';
$ak_bidu = "'X.XX'";
$db->Query("SELECT * FROM vi_para90_opd WHERE OPDID='".$id_opd."' LIMIT 1");
if ($db->Next()) {
$ak_bidu = $db->Row("AK_Bidu");
}
if ($db->Next()) $ak_bidu = $db->Row("AK_Bidu");
$aoption = ['type' => "option", 'id' => "ProgID", 'value' => $id_prog, 'avalue' => []];
$db->Query("SELECT * FROM vi_para90_submap WHERE Tahun='".$thn_submap."' AND K_Bidu IN (".$ak_bidu.") GROUP BY ProgID ORDER BY K_Prog");
if ($db->RecordCount()<>1) $aoption['avalue'][] = array('value'=>0, 'html'=>"");
@@ -234,7 +303,7 @@ if ( $data == "tabel-dprd" ) {
} else if ( $data == "default") {
echo '
<div class="fade-in">
<div class="card"><div class="card-header custom-style">Kelola Data Induk Pokok Pikiran Dewan</div><div class="card-body">
<div class="card"><div class="card-header custom-style">Kelola Data Induk - Pokok Pikiran Dewan</div><div class="card-body">
<div class="row mb-1">
<div class="col">
<div class="input-group">
+8 -8
View File
@@ -39,7 +39,7 @@ $id_sub = Param::Get("SubID", 0);
$aapp = $_SESSION['__WEB_APP'];
if ( in_array($data, ["tabel-opd","tabel-keg"]) ) {
$qsql = "Tahun='".$thn_renja."' AND Jenis=3 AND Tahapan=1";
$qsql = "Tahun='".$thn_renja."' AND Jenis=".SAPI_JENIS_RENJA." AND Tahapan=1";
$msql = "M.Aktif=1";
if ( $data == "tabel-opd" ) {
@@ -65,7 +65,7 @@ if ( $data == "tabel-opd" ) {
$obj->add_field("ITEM_ERR2", "Status", "c", "Kolom_Status1");
$obj->set_field_order("K_OPD", "A");
$obj->set_row_color("ITEM_VER", 1, "ryellow");
$obj->add_row_btn("select", "Renja", "IndukRenjaJS.opd_select");
$obj->add_row_btn("save", "Renja", "IndukRenjaJS.opd_select");
$obj->set_func_navi("IndukRenjaJS.data_query('tabel-opd')");
$obj->set_textbtn(true);
$ajson[] = $obj->json_table("divOPD");
@@ -120,7 +120,7 @@ if ( $data == "tabel-opd" ) {
switch ($mode_detail) {
case "insert":
$sql->add_param("Tahun", $thn_renja);
$sql->add_param("Jenis", 3);
$sql->add_param("Jenis", SAPI_JENIS_RENJA);
$sql->add_param("Tahapan", 1);
$sql->add_param("OPDID");
$sql->add_param("Kode", Kegiatan_Baru($thn_renja, "R"));
@@ -146,10 +146,10 @@ if ( $data == "tabel-opd" ) {
$obj->add_field("SapiID", "ID", "hid");
$obj->add_field("Kode", "Kode", "c");
$obj->add_field("Nama_Sub", "Kegiatan Renja", "l");
$obj->add_field("Lokasi", "Lokasi", "awr");
$obj->add_field("Lokasi", "Lokasi", "l");
$obj->add_field("Rupiah", "Pagu", "r", "rupiah");
$obj->add_field("ITEM_ERR", "Status", "c", "Kolom_Status2");
$obj->set_field_order("SIPD_Unix", "A");
$obj->set_field_order("Kode", "A");
$obj->set_row_color("ITEM_ERR", 1, "ryellow");
$obj->add_row_btn("clipboard", "Detail Kegiatan", "IndukRenjaJS.keg_ubah");
$obj->set_func_btn("IndukRenjaJS.keg_tambah", '<i class="bi-plus-lg me-1"></i>Kegiatan');
@@ -160,14 +160,14 @@ if ( $data == "tabel-opd" ) {
$enable = true;
$adetail = ['SapiID'=>0];
if ($id_sapi > 0) {
$db->Query("SELECT * FROM sapi_keg WHERE Tahun='".$thn_renja."' AND Jenis=3 AND SapiID='".$id_sapi."' LIMIT 1");
$db->Query("SELECT * FROM sapi_keg WHERE Tahun='".$thn_renja."' AND SapiID='".$id_sapi."' LIMIT 1");
if ($db->Next()) $adetail = array_merge($adetail, $db->AllRow());
$db->Query("SELECT * FROM sapi_keg_tag WHERE Tahun='".$thn_renja."' AND SapiID='".$adetail['SapiID']."' LIMIT 1");
if ($db->Next()) $adetail = array_merge($adetail, $db->AllRow());
}
$form = new Form($db);
$tprog = $form->option_que("_", "ProgID", $adetail['ProgID'], $enable, false, "SELECT ProgID,Nama_Prog FROM vi_para90_submap WHERE Tahun='".$thn_submap."' AND K_Bidu IN (".stripslashes(Param::Get("AK_Bidu","X.XX")).") GROUP BY ProgID ORDER BY K_Prog", ["ProgID","Nama_Prog"], [0,"&nbsp;"], null, "IndukRenjaJS.oc_Prog()");
$tprog = $form->option_que("_", "ProgID", $adetail['ProgID'], $enable, false, "SELECT ProgID,Nama_Prog FROM vi_para90_submap WHERE Tahun='".$thn_submap."' AND K_Bidu IN (".stripslashes(Param::Get("AK_Bidu","'X.XX'")).") GROUP BY ProgID ORDER BY K_Prog", ["ProgID","Nama_Prog"], [0,"&nbsp;"], null, "IndukRenjaJS.oc_Prog()");
$tkeg = $form->option_que("_", "KegID", $adetail['KegID'], $enable, false, "SELECT KegID,Nama_Keg FROM vi_para90_submap WHERE Tahun='".$thn_submap."' AND ProgID='".$adetail['ProgID']."' GROUP BY KegID ORDER BY K_Keg", ["KegID","Nama_Keg"], [0,"&nbsp;"], null, "IndukRenjaJS.oc_Keg()");
$tsub = $form->option_que("_", "SubID", $adetail['SubID'], $enable, false, "SELECT SubID,Nama_Sub FROM vi_para90_submap WHERE Tahun='".$thn_submap."' AND KegID='".$adetail['KegID']."' ORDER BY K_Sub", ["SubID","Nama_Sub"], [0,"&nbsp;"]);
$tkec = $form->option_db("_", "KecID", $adetail['KecID'], $enable, true, "para_lokasi", ["LokasiID","N_Lokasi"], "Level=1 AND Aktif=1 ORDER BY N_Lokasi", [0,"&nbsp;"], null, "IndukRenjaJS.oc_Kec()");
@@ -270,7 +270,7 @@ if ( $data == "tabel-opd" ) {
} else if ( $data == "default") {
echo '
<div class="fade-in">
<div class="card"><div class="card-header custom-style">Kelola Data Induk Rencana Kerja</div><div class="card-body">
<div class="card"><div class="card-header custom-style">Kelola Data Induk - Rencana Kerja</div><div class="card-body">
<div class="row mb-1">
<div class="col">
<div class="input-group">
-28
View File
@@ -1,28 +0,0 @@
<?php
/*******************************************************************
Module : /apps/php/login.php
Desc. : PHP - Halaman Proses Login
Created By : Siau Pheng (siaupheng@3fonia.com).
Created Date : January 5th, 2008.
Last Modified : June 28th, 2020.
(c) 2008 - 2020, 3FONIA Software; WWW.3FONIA.COM.
*******************************************************************/
require_once(__DIR__."/../../../../vendor/autoload.php");
require_once(__DIR__."/func/esapipd.php");
use siaupheng\fonia3\DB\MySQL;
$db = $db ?? new MySQL();
$d2 = $d2 ?? new MySQL();
$db->Query("SELECT *,IF(Jenis=1,'P',IF(Jenis=2,'M','R')) Kode_Jenis FROM sapi_keg ORDER BY SapiID");
while ($db->Next()) {
$d2->Query("UPDATE sapi_keg SET Kode='".Kegiatan_Baru($db->Row("Tahun"), $db->Row("Kode_Jenis"))."' WHERE SapiID='".$db->Row("SapiID")."' LIMIT 1");
}
?>
+7 -10
View File
@@ -48,27 +48,24 @@ if ( $data == "tabel-keg" ) {
if ($id_kel > 0) $qsql .= " AND KelID='".$id_kel."'";
if ($id_opd > 0) $qsql .= " AND OPDID='".$id_opd."'";
if ($id_prog > 0) $qsql .= " AND ProgID='".$id_prog."'";
if ($kunci_cari <> "") $qsql .= " AND CONCAT(CONVERT(SIPD_UsulanID USING UTF8),Lokasi) LIKE '%".$kunci_cari."%'";
if ($kunci_cari <> "") $qsql .= " AND CONCAT(Kode,Lokasi) LIKE '%".$kunci_cari."%'";
$obj = new Table($db);
$obj->set_table("(SELECT *,CONCAT(IF(Jenis=1,'P','A'),'-',CONVERT(SIPD_UsulanID USING UTF8)) Kode_Usul,IF(OPDID=0 OR KecID=0,1,0) ITEM_ERR FROM sapi_keg WHERE ".$qsql.") R LEFT JOIN (SELECT SubID,K_Sub,N_Sub,Nama_Sub FROM vi_para90_submap WHERE Tahun='".$aapp['SUBMAP_TAHUN']."') X ON (X.SubID=R.SubID)", "R.*,X.N_Sub,CONCAT(R.Volume,' ',R.Satuan) N_Satuan", "");
$obj->set_table("(SELECT *,IF(OPDID=0 OR KecID=0,1,0) ITEM_ERR FROM sapi_keg WHERE ".$qsql.") R LEFT JOIN (SELECT SubID,K_Sub,N_Sub,Nama_Sub FROM vi_para90_submap WHERE Tahun='".$aapp['SUBMAP_TAHUN']."') X ON (X.SubID=R.SubID)", "R.*,X.Nama_Sub", "");
$obj->add_field("SapiID", "ID", "hid");
$obj->add_field("Kode_Usul", "Kode", "c");
$obj->add_field("N_Sub", "Nama Sub Kegiatan", "awr");
$obj->add_field("Lokasi", "Lokasi", "awr");
$obj->add_field("N_Satuan", "Volume", "l");
$obj->add_field("Kode", "Kode", "c");
$obj->add_field("Nama_Sub", "Nama Sub Kegiatan", "l");
$obj->add_field("Lokasi", "Lokasi", "l");
$obj->add_field("Rupiah", "Pagu", "r", "rupiah");
$obj->add_field("ITEM_ERR", "Status", "c", "Kolom_Status2");
$obj->set_field_order("Kode_Usul", "A");
$obj->set_field_order("Kode", "A");
$obj->set_row_color("ITEM_ERR", 1, "ryellow");
//$obj->add_row_btn("select", "Pokir", "UsulPokirJS.dprd_select");
$obj->set_func_navi("UsulBrowseJS.data_query('tabel-keg')");
$obj->set_textbtn(true);
$ajson[] = $obj->db_table("divKEG");
} else if ( $data == "detail_filter") {
$form = new Form($db);
$tjenis = $form->radio("_", "Fi_Jenis", $id_jenis, true, false, [0=>"Semua",1=>"Pokir",2=>"Asmas"]);
$tjenis = $form->radio("_", "Fi_Jenis", $id_jenis, true, false, [0=>"Semua",1=>"Pokir",2=>"Asmas",3=>"Renja"]);
$tdprd = $form->option_db("_", "Fi_DPRDID", $id_dprd, true, false, "para_dprd", ["DPRDID","N_DPRD"], "Aktif=1 ORDER BY K_DPRD", [0,"SEMUA ANGGOTA DEWAN"]);
$topd = $form->option_db("_", "Fi_OPDID", $id_opd, true, false, "para90_opd", ["OPDID","N_OPD"], "Aktif=1 ORDER BY K_OPD", [0,"SEMUA PERANGKAT DAERAH"], null, "UsulBrowseJS.oc_OPD()");
$tprog = $form->option("_", "Fi_ProgID", $id_prog, true, false, [$id_prog=>["SEMUA PROGRAM",0]], null, "UsulBrowseJS.oc_Prog()");