first commit

This commit is contained in:
2026-06-07 14:39:54 +07:00
commit 74f29bf756
104 changed files with 26026 additions and 0 deletions
+128
View File
@@ -0,0 +1,128 @@
<?php
/*******************************************************************
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
Module : /apps/php/pull/renstra_tujuan.php
Desc. : PHP - Pull Tujuan RENSTRA
Created By : Siau Pheng ([email protected]).
Created Date : December 15th, 2025.
(c) 2025, 3FONIA Software; WWW.3FONIA.COM.
*******************************************************************/
require_once(__DIR__."/../../../../../vendor/autoload.php");
require_once(__DIR__."/../func.sippd.php");
use siaupheng\fonia3\DB\MySQL;
use siaupheng\fonia3\DB\SQL;
use siaupheng\fonia3\Web\Param;
use siaupheng\fonia3\Web\Form;
$db = $db ?? new MySQL();
$ajson = [];
$data = Param::Get("data");
$mode = Param::Get("mode");
$id_rpjmd = $_SESSION['__WEB_APP']['RENC_RPJMDID'];
if ( $data == "simpan-tujuan") {
$ajson['result'] = 0;
$json_param = Param::Get("JSON", "{}");
$adata = json_decode(stripslashes($json_param), true);
foreach ($adata['data'] as $_key => $arec) {
$apull = [ 'OPDID' => 0,
//'RD_SASARID' => 0,
'A_RDSASAR' => "0",
//'A_RDSASARINDI' => "0",
'RPJMDID' => $id_rpjmd,
'A_BU' => "'X.XX'",
'No_Tujuan' => $arec['no'],
'Txt_Tujuan' => $arec['uraitujuan'],
'SIPD_UNIK' => $arec['idtujuan']
];
// bidang urusan
$_tbu = "";
foreach ($arec['daftar_bidang'] as $_key_bu => $arec_bu) {
$_tbu .= ",\\'".$arec_bu['kodebidang']."\\'";
}
$apull['A_BU'] = substr($_tbu, 1);
// sasaran rpjmd
if (count($arec['sasaran_rpjmd']) > 0) {
$_tsa = "";
foreach ($arec['sasaran_rpjmd'] as $_key_sa => $arec_sa) {
$db->Query("SELECT RD_SASARID FROM rpjmd_sasaran WHERE SIPD_SASAR='".$arec_sa['idsasaran']."' LIMIT 1");
if ($db->Next()) $_tsa .= ",".$db->Row("RD_SASARID", 0)."";
}
$apull['A_RDSASAR'] = substr($_tsa, 1);
}
// opd
$db->Query("SELECT OPDID FROM para90_opd WHERE K_OPD='".$arec['kodeskpd']."' LIMIT 1");
if ($db->Next()) {
$apull['OPDID'] = $db->Row("OPDID", 0);
}
fastInsert("renstra_tujuan", $apull);
}
$ajson['result'] = 1;
} else if ( $data == "simpan-indikator") {
$ajson['result'] = 0;
$json_param = Param::Get("JSON", "{}");
$adata = json_decode(stripslashes($json_param), true);
foreach ($adata['data'] as $_key => $arec) {
$apull = [ 'OPDID' => 0,
'RA_TUJID' => 0,
'RPJMDID' => $id_rpjmd,
'No_Indi' => $arec['no'],
'Txt_Indi' => $arec['uraitujuan_indikator'],
'Indi_Satuan' => $arec['satuan'],
'Indi_Status' => $arec['status'],
'Indi_Awal' => $arec['target0'],
'Indi_T1' => $arec['target1'],
'Indi_T2' => $arec['target2'],
'Indi_T3' => $arec['target3'],
'Indi_T4' => $arec['target4'],
'Indi_T5' => $arec['target5'],
'Indi_Akhir' => $arec['target5'],
'Tipe_Data' => $arec['tipe_data'],
'SIPD_UNIK' => $arec['idtujuan_indikator']
];
// tujuan renstra
$db->Query("SELECT RA_TUJID FROM renstra_tujuan WHERE SIPD_UNIK='".$arec['idtujuan']."' LIMIT 1");
if ($db->Next()) {
$apull['RA_TUJID'] = $db->Row("RA_TUJID", 0);
}
// opd
$db->Query("SELECT OPDID FROM para90_opd WHERE K_OPD='".$arec['kodeskpd']."' LIMIT 1");
if ($db->Next()) {
$apull['OPDID'] = $db->Row("OPDID", 0);
}
fastInsert("renstra_tujuan_indi", $apull);
}
$ajson['result'] = 1;
} else if ( $data == "default") {
echo '
<div class="fade-in">
<div class="card"><div class="card-header custom-style">Tujuan RENSTRA</div><div class="card-body">
<textarea class="form-control" id="JSON_Tujuan" rows="5" required="true"></textarea>
<div class="input-group mt-2"><button class="btn btn-success shadow-none" type="button" id="butTujuan">Simpan Tujuan</button>
<input class="form-control" type="text" id="Tujuan_Log" disabled></div>
</div></div>
<div class="card"><div class="card-header custom-style">Indikator Tujuan RENSTRA</div><div class="card-body">
<textarea class="form-control" id="JSON_Indikator" rows="5" required="true"></textarea>
<div class="input-group mt-2"><button class="btn btn-info shadow-none" type="button" id="butIndikator">Simpan Indikator</button>
<input class="form-control" type="text" id="Indikator_Log" disabled></div>
<button class="btn btn-warning shadow-none mt-2" type="button" id="butClear">Bersihkan Form</button>
</div></div>
</div>';
}
send_json($ajson);
?>
+117
View File
@@ -0,0 +1,117 @@
<?php
/*******************************************************************
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
Module : /apps/php/pull/rpjmd_sasaran.php
Desc. : PHP - Pull Sasaran RPJMD
Created By : Siau Pheng ([email protected]).
Created Date : December 15th, 2025.
(c) 2025, 3FONIA Software; WWW.3FONIA.COM.
*******************************************************************/
require_once(__DIR__."/../../../../../vendor/autoload.php");
require_once(__DIR__."/../func.sippd.php");
use siaupheng\fonia3\DB\MySQL;
use siaupheng\fonia3\DB\SQL;
use siaupheng\fonia3\Web\Param;
use siaupheng\fonia3\Web\Form;
$db = $db ?? new MySQL();
$ajson = [];
$data = Param::Get("data");
$mode = Param::Get("mode");
$id_rpjmd = $_SESSION['__WEB_APP']['RENC_RPJMDID'];
$thn_submap = map_tahun_submap($id_rpjmd);
if ( $data == "simpan-program") {
$ajson['result'] = 0;
$json_param = Param::Get("JSON", "{}");
$adata = json_decode(stripslashes($json_param), true);
foreach ($adata['data'] as $_key => $arec) {
$apull = [ 'RPJMDID' => $id_rpjmd,
'BUID' => 0,
'ProgID' => 0,
'K_Bidu' => $arec['kodebidang'],
'K_Prog' => $arec['kodeprogram'],
'Pagu_T1' => $arec['pagu_validasi1'],
'Pagu_T2' => $arec['pagu_validasi2'],
'Pagu_T3' => $arec['pagu_validasi3'],
'Pagu_T4' => $arec['pagu_validasi4'],
'Pagu_T5' => $arec['pagu_validasi5']
];
// program rpjmd
$db->Query("SELECT BUID,ProgID FROM para90_submap WHERE Tahun='".$thn_submap."' AND K_Prog='".$arec['kodeprogram']."' LIMIT 1");
if ($db->Next()) {
$apull = array_merge($apull, $db->AllRow());
}
fastInsert("rpjmd_prog", $apull);
}
// update yg buid = 0 dan progid = 0
$db->Query("UPDATE rpjmd_prog SET ProgID=(SELECT ProgID FROM para90_submap WHERE Tahun='".$thn_submap."' AND UrusanID=20 GROUP BY ProgID) WHERE ProgID=0 AND RPJMDID='".$id_rpjmd."'");
$db->Query("UPDATE rpjmd_prog A, (SELECT K_Bidu,BUID FROM para90_submap WHERE Tahun='".$thn_submap."' GROUP BY K_Bidu) B SET A.BUID=B.BUID WHERE A.K_Bidu=B.K_Bidu AND A.RPJMDID='".$id_rpjmd."'");
$ajson['result'] = 1;
} else if ( $data == "simpan-outcome") {
$ajson['result'] = 0;
$json_param = Param::Get("JSON", "{}");
$adata = json_decode(stripslashes($json_param), true);
foreach ($adata['data'] as $_key => $arec) {
$apull = [ 'RD_PROGID' => 0,
'RPJMDID' => $id_rpjmd,
'No_Outcome' => $arec['no'],
'Txt_Outcome' => $arec['urai'],
'A_RDSASAR' => "0",
'Limit_T1' => $arec['pagu_validasi1'],
'Limit_T2' => $arec['pagu_validasi2'],
'Limit_T3' => $arec['pagu_validasi3'],
'Limit_T4' => $arec['pagu_validasi4'],
'Limit_T5' => $arec['pagu_validasi5'],
'SIPD_UNIK' => $arec['id']
];
// sasaran rpjmd
if (count($arec['rpjmd_sasaran']) > 0) {
$_tsa = "";
foreach ($arec['rpjmd_sasaran'] as $_key_sa => $arec_sa) {
$db->Query("SELECT RD_SASARID FROM rpjmd_sasaran WHERE SIPD_SASAR='".$arec_sa."' LIMIT 1");
if ($db->Next()) $_tsa .= ",".$db->Row("RD_SASARID", 0)."";
}
$apull['A_RDSASAR'] = substr($_tsa, 1);
}
// tujuan renstra
$db->Query("SELECT RD_PROGID FROM rpjmd_prog WHERE RPJMDID='".$id_rpjmd."' AND K_Bidu='".$arec['kodebidang']."' AND K_Prog='".$arec['kodeprogram']."' LIMIT 1");
if ($db->Next()) {
$apull['RD_PROGID'] = $db->Row("RD_PROGID", 0);
}
fastInsert("rpjmd_outcome", $apull);
}
$ajson['result'] = 1;
} else if ( $data == "default") {
echo '
<div class="fade-in">
<div class="card"><div class="card-header custom-style">Program RPJMD</div><div class="card-body">
<textarea class="form-control" id="JSON_Program" rows="5" required="true"></textarea>
<div class="input-group mt-2"><button class="btn btn-success shadow-none" type="button" id="butProgram">Simpan Program</button>
<input class="form-control" type="text" id="Program_Log" disabled></div>
</div></div>
<div class="card"><div class="card-header custom-style">Outcome Sasaran RPJMD</div><div class="card-body">
<textarea class="form-control" id="JSON_Outcome" rows="5" required="true"></textarea>
<div class="input-group mt-2"><button class="btn btn-info shadow-none" type="button" id="butOutcome">Simpan Outcome</button>
<input class="form-control" type="text" id="Outcome_Log" disabled></div>
<button class="btn btn-warning shadow-none mt-2" type="button" id="butClear">Bersihkan Form</button>
</div></div>
</div>';
}
send_json($ajson);
?>
+100
View File
@@ -0,0 +1,100 @@
<?php
/*******************************************************************
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
Module : /apps/php/pull/rpjmd_sasaran.php
Desc. : PHP - Pull Sasaran RPJMD
Created By : Siau Pheng ([email protected]).
Created Date : December 15th, 2025.
(c) 2025, 3FONIA Software; WWW.3FONIA.COM.
*******************************************************************/
require_once(__DIR__."/../../../../../vendor/autoload.php");
require_once(__DIR__."/../func.sippd.php");
use siaupheng\fonia3\DB\MySQL;
use siaupheng\fonia3\DB\SQL;
use siaupheng\fonia3\Web\Param;
use siaupheng\fonia3\Web\Form;
$db = $db ?? new MySQL();
$ajson = [];
$data = Param::Get("data");
$mode = Param::Get("mode");
$id_rpjmd = $_SESSION['__WEB_APP']['RENC_RPJMDID'];
if ( $data == "simpan-sasaran") {
$ajson['result'] = 0;
$json_param = Param::Get("JSON", "{}");
$adata = json_decode(stripslashes($json_param), true);
/*$db->Query("DELETE FROM sipd_renstra_tuj");
foreach ($adata['data'] as $arec) {
$tuj_text = explode("||", $arec['tujuan_teks']);
$db->Query("INSERT INTO sipd_renstra_tuj (BUID,ID_UNIT,UNIK_TUJUAN,Txt_Tujuan) VALUES ('".$arec['id_bidang_urusan']."','".$arec['id_unit']."','".$arec['id_unik']."','".$tuj_text[0]."')");
}
$db->Query("UPDATE sipd_renstra_tuj A,para90_opd B SET A.OPDID=B.OPDID WHERE A.ID_UNIT=B.SIPD_UNIT AND A.ID_UNIT>0");
$db->Query("UPDATE renstra_tujuan A,sipd_renstra_tuj B SET A.SIPD_UNIK=B.UNIK_TUJUAN WHERE A.RPJMDID='".$id_rpjmd."' AND A.BUID=B.BUID AND A.OPDID=B.OPDID AND TRIM(REPLACE(REPLACE(A.Txt_Tujuan,'\r',''),'\n',''))=TRIM(B.Txt_Tujuan)");*/
$ajson['result'] = 1;
} else if ( $data == "simpan-indikator") {
$ajson['result'] = 0;
$json_param = Param::Get("JSON", "{}");
$adata = json_decode(stripslashes($json_param), true);
//$db->Query("DELETE FROM rpjmd_sasaran_indi WHERE RPJMDID='".$id_rpjmd."'");
//$db->Query("ALTER TABLE rpjmd_sasaran_indi AUTO_INCREMENT=0");
foreach ($adata['data'] as $_key => $arec) {
$apull = [ 'RD_SASARID' => 0,
'RPJMDID' => $id_rpjmd,
'No_Indi' => $arec['no'],
'Txt_Indi' => $arec['uraisasaran_indikator'],
'Indi_Satuan' => $arec['satuan'],
'Indi_Status' => $arec['status'],
'Indi_Awal' => $arec['target0'],
'Indi_T1' => $arec['target1'],
'Indi_T2' => $arec['target2'],
'Indi_T3' => $arec['target3'],
'Indi_T4' => $arec['target4'],
'Indi_T5' => $arec['target5'],
'Indi_Akhir' => $arec['target5'],
'Tipe_Data' => $arec['tipe_data'],
'SIPD_UNIK' => $arec['idsasaran_indikator']
];
// sasaran rpjmd
$db->Query("SELECT RD_SASARID FROM rpjmd_sasaran WHERE SIPD_SASAR='".$arec['idsasaran']."' LIMIT 1");
if ($db->Next()) {
$apull['RD_SASARID'] = $db->Row("RD_SASARID", 0);
}
fastInsert("rpjmd_sasaran_indi", $apull);
}
$ajson['result'] = 1;
} else if ( $data == "default") {
echo '
<div class="fade-in">
<div class="card"><div class="card-header custom-style">Sasaran RPJMD</div><div class="card-body">
<textarea class="form-control" id="JSON_Sasaran" rows="5" required="true"></textarea>
<div class="input-group mt-2"><button class="btn btn-success shadow-none" type="button" id="butSasaran">Simpan Sasaran</button>
<input class="form-control" type="text" id="Sasaran_Log" disabled></div>
</div></div>
<div class="card"><div class="card-header custom-style">Indikator Sasaran RPJMD</div><div class="card-body">
<textarea class="form-control" id="JSON_Indikator" rows="5" required="true"></textarea>
<div class="input-group mt-2"><button class="btn btn-info shadow-none" type="button" id="butIndikator">Simpan Indikator</button>
<input class="form-control" type="text" id="Indikator_Log" disabled></div>
<button class="btn btn-warning shadow-none mt-2" type="button" id="butClear">Bersihkan Form</button>
</div></div>
</div>';
}
send_json($ajson);
?>