first commit
@@ -0,0 +1,12 @@
|
||||
# ignore visual studio code
|
||||
/.vs/
|
||||
|
||||
# ignore cache content
|
||||
**/cache/*
|
||||
!**/cache/v3
|
||||
|
||||
# ignore mysql.php
|
||||
**/mysql.php
|
||||
|
||||
# ignore others
|
||||
/import/
|
||||
@@ -0,0 +1,22 @@
|
||||
# EDATA
|
||||
|
||||
Sistem Aplikasi eData / API
|
||||
|
||||
## Description
|
||||
|
||||
Sistem Aplikasi eData / API untuk link database sicanda dengan sipd.
|
||||
|
||||
## Authors
|
||||
|
||||
Developer dan programmer
|
||||
|
||||
[@siaupheng](mailto:[email protected])
|
||||
|
||||
## Version History
|
||||
|
||||
* 1.0
|
||||
* Initial Release
|
||||
|
||||
## License
|
||||
|
||||
This project is licensed.
|
||||
@@ -0,0 +1,71 @@
|
||||
<?php
|
||||
|
||||
require_once(__DIR__."/../../vendor/autoload.php");
|
||||
require_once(__DIR__."/apps/cfg/mysql.php");
|
||||
require_once(__DIR__."/apps/cfg/app.php");
|
||||
|
||||
require_once(__DIR__."/apps/php/api/master.php");
|
||||
require_once(__DIR__."/apps/php/api/rpjmd.php");
|
||||
require_once(__DIR__."/apps/php/api/renstra.php");
|
||||
require_once(__DIR__."/apps/php/api/renja.php");
|
||||
require_once(__DIR__."/apps/php/api/pokir.php");
|
||||
require_once(__DIR__."/apps/php/api/asmas.php");
|
||||
require_once(__DIR__."/apps/php/api/dalev.php");
|
||||
|
||||
use siaupheng\fonia3\DB\MySQL;
|
||||
use siaupheng\fonia3\Web\Param;
|
||||
|
||||
$db = $db ?? new MySQL();
|
||||
$ajson = ['status' => "success", 'message' => ""];
|
||||
$type = Param::Get("type", "");
|
||||
$action = Param::Get("action", "");
|
||||
|
||||
if ($type == "bangda") {
|
||||
if ($action == "simpan_rpjmd_prog") {
|
||||
$aprog = json_decode($_POST['program'], true);
|
||||
$ajson = simpan_rpjmd_prog($db, $aprog);
|
||||
|
||||
} else if ($action == "simpan_renstra_tujuan") {
|
||||
$atujuan = json_decode($_POST['tujuan'], true);
|
||||
$ajson = simpan_renstra_tujuan($db, $atujuan);
|
||||
} else if ($action == "simpan_renstra_sasaran") {
|
||||
$asasar = json_decode($_POST['sasaran'], true);
|
||||
$ajson = simpan_renstra_sasaran($db, $asasar);
|
||||
} else if ($action == "simpan_renstra_program") {
|
||||
$aoutcome = json_decode($_POST['outcome'], true);
|
||||
$ajson = simpan_renstra_program($db, $aoutcome);
|
||||
|
||||
} else if ($action == "get_dalev_subkeg") {
|
||||
$ajson = ambil_dalev_subkeg($db);
|
||||
} else if ($action == "singkron_dalev_subkeg") {
|
||||
$ajson = sinkron_dalev_subkeg($db);
|
||||
} else if ($action == "get_dalev_prog") {
|
||||
$ajson = ambil_dalev_prog($db);
|
||||
} else if ($action == "singkron_dalev_prog") {
|
||||
$ajson = sinkron_dalev_prog($db);
|
||||
}
|
||||
|
||||
} else if ($type == "ri") {
|
||||
if ($action == "singkron_data_giat") {
|
||||
$ajson = simpan_master_subkeg($db);
|
||||
} else if ($action == "singkron_akun_belanja") {
|
||||
$ajson = simpan_master_akun($db);
|
||||
|
||||
} else if ($action == "get_renja") {
|
||||
$ajson = ambil_renja($db);
|
||||
|
||||
} else if ($action == "get_pokir") {
|
||||
$ajson = ambil_pokir($db);
|
||||
} else if ($action == "singkron_pokir") {
|
||||
$ajson = singkron_pokir($db);
|
||||
|
||||
} else if ($action == "get_asmas") {
|
||||
$ajson = ambil_asmas($db);
|
||||
} else if ($action == "singkron_asmas") {
|
||||
$ajson = singkron_asmas($db);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
send_json($ajson);
|
||||
?>
|
||||
@@ -0,0 +1,78 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/cfg/app.php
|
||||
Desc. : Konfigurasi Global Aplikasi
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : November 7th, 2009.
|
||||
Last Modified : June 28th, 2020.
|
||||
|
||||
(c) 2009 - 2020, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../vendor/autoload.php");
|
||||
require_once(__DIR__."/mysql.php");
|
||||
|
||||
use siaupheng\fonia3\DB\MySQL;
|
||||
|
||||
$db = $db ?? new MySQL();
|
||||
|
||||
if (($_SESSION['__WEB_APP']['APP_CODE'] ?? "")<>"2007809612") {
|
||||
foreach ($_SESSION as $_key => $_val) {
|
||||
if (substr($_key,0,5)=="__WEB") unset($_SESSION[$_key]);
|
||||
if (substr($_key,0,5)=="__APP") unset($_SESSION[$_key]);
|
||||
}
|
||||
}
|
||||
|
||||
if (!isset($_SESSION['__WEB_APP'])) {
|
||||
$real_path = str_replace("\\", "/", dirname(__FILE__));
|
||||
$real_path = str_replace("apps/cfg", "", $real_path);
|
||||
$web_path = str_replace($_SERVER['DOCUMENT_ROOT'], "/", $real_path);
|
||||
$web_path = str_replace("//", "/", $web_path);
|
||||
$real_path = str_replace("//", "/", $real_path);
|
||||
|
||||
$apps = array();
|
||||
$apps['APP_CODE'] = "2007809612";
|
||||
$apps['APP_NAME'] = "eData";
|
||||
$apps['APP_NAMES'] = "Sistem Informasi Perencanaan Pembangunan Daerah";
|
||||
$apps['APP_VER'] = "1.0";
|
||||
$apps['APP_UPDATED'] = "June 28th, 2020.";
|
||||
$apps['APP_SID'] = md5(time());
|
||||
$apps['APP_LOCALE'] = array("id"=>"Indonesia", "en"=>"English");
|
||||
$apps['DEF_LOCALE'] = "id";
|
||||
$apps['AUTH_OVER'] = false;
|
||||
$apps['AUTH_LEVEL'] = 1;
|
||||
$apps['USER_LEVEL'] = array(0 => "ADMINISTRATOR", 1 => "KABUPATEN / BIDANG", 2 => "KECAMATAN", 7=>"KELURAHAN / DESA", 3 => "OPD", 5 => "DPRD", 6=>"FRAKSI DPRD", 9 => "VIEWER");
|
||||
$apps['USER_LOG'] = true;
|
||||
$apps['USE_QZTRAY'] = false;
|
||||
$apps['CREATOR_YEAR'] = "2020";
|
||||
$apps['CREATOR_NAME'] = "3FONIA Software";
|
||||
$apps['CREATOR_WEBSITE'] = "http://www.3fonia.com";
|
||||
$apps['WEB_PATH'] = $web_path;
|
||||
$apps['REAL_PATH'] = $real_path;
|
||||
$apps['MODULE_PATH'] = "../";
|
||||
$apps['PARENT_SUB'] = false;
|
||||
$apps['PARENT_CODE'] = "2007809605";
|
||||
$apps['PARENT_SITE'] = "https://sicanda.mempawahkab.go.id";
|
||||
|
||||
$db->Query("SELECT * FROM app_config WHERE REG_ID='".$apps['APP_CODE']."' LIMIT 1");
|
||||
if ($db->Next()) $apps = array_merge($apps, $db->AllRow());
|
||||
if ($apps['APP_BUILD']<>"") $apps['APP_VER'] = $apps['APP_BUILD'];
|
||||
$apps['DEF_PASSWD'] = "mempawahkab";
|
||||
|
||||
$db->Query("SELECT * FROM sippd_config WHERE REG_ID='".$apps['PARENT_CODE']."' LIMIT 1");
|
||||
if ($db->Next()) $apps = array_merge($apps, $db->AllRow());
|
||||
$db->Query("SELECT Tahun1,Tahun2,Tahun3,Tahun4,Tahun5,Tahun_Min,Tahun_Max,Ket N_RPJMD FROM vi_para_rpjmd WHERE RPJMDID='".$apps['RENC_RPJMDID']."'");
|
||||
if ($db->Next()) $apps = array_merge($apps, $db->AllRow());
|
||||
if ($apps['Tahun1']==$apps['RENC_THN']) $apps['RENC_FIELD'] = "_T1";
|
||||
if ($apps['Tahun2']==$apps['RENC_THN']) $apps['RENC_FIELD'] = "_T2";
|
||||
if ($apps['Tahun3']==$apps['RENC_THN']) $apps['RENC_FIELD'] = "_T3";
|
||||
if ($apps['Tahun4']==$apps['RENC_THN']) $apps['RENC_FIELD'] = "_T4";
|
||||
if ($apps['Tahun5']==$apps['RENC_THN']) $apps['RENC_FIELD'] = "_T5";
|
||||
$_SESSION['__WEB_APP'] = $apps;
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,75 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/cfg/assets.php
|
||||
Desc. : Konfigurasi Assets Aplikasi [css / js]
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : November 23rd, 2019.
|
||||
Last Modified : August 16th, 2019.
|
||||
|
||||
(c) 2019 - 2020, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
$A_CSS = ["bootstrap/bootstrap.icon.css", "bootstrap/bootstrap.css"];
|
||||
$A_JS = array("jquery/jquery.js", "jquery/jquery.base64.js", "coreui/coreui.js", "fonia4.js");
|
||||
|
||||
if (!user_logged()) {
|
||||
$A_JS[] = "jquery/jquery.backstretch.js";
|
||||
|
||||
} else {
|
||||
//$A_CSS[] = "coreui/coreui.select2.css";
|
||||
$A_CSS[] = "coreui/coreui.chartjs.css";
|
||||
$A_CSS[] = "datatables/dataTables.bootstrap5.css";
|
||||
$A_CSS[] = "datatables/responsive.bootstrap5.css";
|
||||
$A_CSS[] = "datatables/scroller.bootstrap5.css";
|
||||
$A_CSS[] = "select2/select2.css";
|
||||
$A_CSS[] = "select2/select2-bootstrap-5-theme.css";
|
||||
//$A_CSS[] = "bootstrap/bootstrap.datepicker3.css";
|
||||
$A_CSS[] = "simplebar.css";
|
||||
$A_CSS[] = "lightbox.css";
|
||||
//$A_CSS[] = "codemirror.css";
|
||||
//$A_CSS[] = "summernote-bs4.css";
|
||||
$A_CSS[] = "default.css";
|
||||
$A_CSS[] = "print.css";
|
||||
|
||||
$A_JS = array(
|
||||
"jquery/jquery.js",
|
||||
"jquery/jquery.base64.js",
|
||||
"jquery/jquery.autosize.js",
|
||||
"jquery/jquery.maskedinput.js",
|
||||
"jquery/jquery.validate.js",
|
||||
"datatables/jquery.dataTables.js",
|
||||
"datatables/dataTables.bootstrap5.js",
|
||||
"datatables/dataTables.responsive.js",
|
||||
"datatables/responsive.bootstrap5.js",
|
||||
"datatables/dataTables.scroller.js",
|
||||
//"bootstrap/bootstrap.datepicker.js",
|
||||
//"bootstrap/bootstrap.autocomplete.js",
|
||||
);
|
||||
//array_push($A_JS, "codemirror/codemirror.js","codemirror/xml.js");
|
||||
array_push($A_JS,
|
||||
"moment.js",
|
||||
"select2/select2.js",
|
||||
"coreui/coreui.js",
|
||||
"coreui/coreui.chartjs.js",
|
||||
"simplebar.js",
|
||||
"fonia4.js");
|
||||
|
||||
// add qz support
|
||||
if (!isset($_SESSION['__WEB_APP']['USE_QZTRAY'])) $_SESSION['__WEB_APP']['USE_QZTRAY'] = false;
|
||||
if ($_SESSION['__WEB_APP']['USE_QZTRAY']) {
|
||||
$A_JS[] = "qz/qz-tray.js";
|
||||
}
|
||||
|
||||
$A_JS[] = "lightbox.js";
|
||||
$A_JS[] = "print.js";
|
||||
$A_JS[] = "pdf.js";
|
||||
//$A_JS[] = "summernote-bs4.js";
|
||||
//$A_JS[] = "export.js";
|
||||
$A_JS[] = "simulator.js";
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,25 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/cfg/mysql.php
|
||||
Desc. : Konfigurasi Server MySQL
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : November 7th, 2009.
|
||||
Last Modified : June 28th, 2020.
|
||||
|
||||
(c) 2009 - 2020, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
$APP_DATA = [
|
||||
'host' => "127.0.0.1",
|
||||
'port' => "3306",
|
||||
'user' => "sippd_mpw",
|
||||
'pwd' => "r4h4s14",
|
||||
'db' => "sippd_mpw",
|
||||
'sock' => ""
|
||||
];
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,82 @@
|
||||
/*******************************************************************
|
||||
|
||||
Module : /apps/js/index.js
|
||||
Desc. : JS - Halaman Utama Desktop
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : May 24th, 2010.
|
||||
Last Modified : August 15th, 2019.
|
||||
|
||||
(c) 2010 - 2020, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
$(document).ready(function(){
|
||||
jQuery("#preloader").remove();
|
||||
IndexJS.loading();
|
||||
|
||||
new Request.JSON({
|
||||
url: FoniaJS.WEB_PATH+'apps/php/index.php',
|
||||
sendParam: ['data=check-contact'],
|
||||
onSuccess: function(adata){
|
||||
if (adata.contact==0) {
|
||||
FoniaJS.showInfo('Tolong tambahkan / perbaharui informasi Pengguna, terima kasih.');
|
||||
}
|
||||
}
|
||||
}).send();
|
||||
});
|
||||
|
||||
var IndexJS = {
|
||||
|
||||
loading: function(){
|
||||
new Request.JSON({
|
||||
url: FoniaJS.WEB_PATH+'apps/php/index.php',
|
||||
sendParam: ['data=default'],
|
||||
onSuccess: function(ares){
|
||||
$('#pageTitle').html(ares.title);
|
||||
$('#pageBread').html(ares.bread);
|
||||
$('#pageContent').html(ares.content);
|
||||
$('#pageToolbarTop').html('');
|
||||
$('#pageToolbarBot').html('');
|
||||
//this.loadPagu();
|
||||
//this.loadChart();
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
loadPagu: function(){
|
||||
new Request.JSON({
|
||||
url: FoniaJS.WEB_PATH+'apps/php/index.php',
|
||||
sendParam: ['data=pagu-info'],
|
||||
onSuccess: function(ares){
|
||||
$('#divHome1').html(ares.html);
|
||||
}
|
||||
}).send();
|
||||
},
|
||||
|
||||
loadChart: function(){
|
||||
new Request.JSON({
|
||||
url: FoniaJS.WEB_PATH+'apps/php/index.php',
|
||||
sendParam: ['data=pagu-chart'],
|
||||
onSuccess: function(data){
|
||||
var ctx = $('#pieChart');
|
||||
var pieOptions = {
|
||||
legend: { display: true, position: 'bottom', labels:{pointStyle:'circle', usePointStyle:true} },
|
||||
aspectRatio: 1.3,
|
||||
cutoutPercentage: 35,
|
||||
responsiveAnimationDuration: 10,
|
||||
responsive: true,
|
||||
maintainAspectRatio: true,
|
||||
onResize: function(mcha, size) {
|
||||
var leg = (size.width <= 330) ? false : true;
|
||||
mcha.options.legend.display = leg;
|
||||
}
|
||||
};
|
||||
var myChart = new Chart(ctx, {
|
||||
type: 'doughnut',
|
||||
data: data,
|
||||
options: pieOptions
|
||||
});
|
||||
}
|
||||
}).send();
|
||||
}
|
||||
};
|
||||
@@ -0,0 +1,87 @@
|
||||
/*******************************************************************
|
||||
|
||||
Module : /apps/js/login.js
|
||||
Desc. : JS - Halaman Proses Login
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : January 15th, 2008.
|
||||
Last Modified : June 28th, 2020.
|
||||
|
||||
(c) 2008 - 2020, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
$(document).ready(function(){
|
||||
$('#butLogin').click(LoginJS.Proses_Login);
|
||||
$('#Username').keydown(function(e){
|
||||
if (e.which==13) $('#Password').focus();
|
||||
});
|
||||
$('#Password').keydown(function(e){
|
||||
if (e.which==13) $('#butLogin').trigger('click');
|
||||
});
|
||||
LoginJS.Tampil_Login();
|
||||
document.oncontextmenu = new Function ('return false');
|
||||
|
||||
jQuery.backstretch([
|
||||
[
|
||||
{ width: 1280, url: FoniaJS.WEB_PATH+"assets/images/bs/kanda_1280.webp" },
|
||||
{ width: 960, url: FoniaJS.WEB_PATH+"assets/images/bs/kanda_960.webp" },
|
||||
{ width: 480, url: FoniaJS.WEB_PATH+"assets/images/bs/kanda_480.webp" }
|
||||
],
|
||||
[
|
||||
{ width: 1280, url: FoniaJS.WEB_PATH+"assets/images/bs/istana_1280.webp" },
|
||||
{ width: 960, url: FoniaJS.WEB_PATH+"assets/images/bs/istana_960.webp" },
|
||||
{ width: 480, url: FoniaJS.WEB_PATH+"assets/images/bs/istana_480.webp" }
|
||||
],
|
||||
[
|
||||
{ width: 1280, url: FoniaJS.WEB_PATH+"assets/images/bs/mangrove_1280.webp" },
|
||||
{ width: 960, url: FoniaJS.WEB_PATH+"assets/images/bs/mangrove_960.webp" },
|
||||
{ width: 480, url: FoniaJS.WEB_PATH+"assets/images/bs/mangrove_480.webp" }
|
||||
]
|
||||
], {
|
||||
duration: 6000,
|
||||
transition: 'push_left|push_right|cover_up|cover_down|fade',
|
||||
transitionDuration: 600
|
||||
});
|
||||
});
|
||||
|
||||
var LoginJS = {
|
||||
|
||||
Tampil_Login: function(){
|
||||
var Username = FoniaJS.getCookie('Username');
|
||||
if (Username != '') {
|
||||
$('#Username').val(Username);
|
||||
FoniaJS.setFocus('#Password');
|
||||
} else {
|
||||
FoniaJS.setFocus('#Username');
|
||||
}
|
||||
},
|
||||
|
||||
Proses_Login: function(){
|
||||
if (!$('#Username').val()){
|
||||
$('#Username').focus();
|
||||
FoniaJS.showError('Silahkan masukkan ID Pengguna !');
|
||||
return false;
|
||||
}
|
||||
if (!$('#Password').val()){
|
||||
$('#Password').focus();
|
||||
FoniaJS.showError('Silahkan masukkan Kata Sandi !');
|
||||
return false;
|
||||
}
|
||||
new Request.JSON({
|
||||
url: FoniaJS.WEB_PATH+'apps/php/login.php',
|
||||
sendParam: ['mode=login','Username','Password'],
|
||||
onSuccess: function(respon){
|
||||
if (respon.hasil == 'SUKSES'){
|
||||
FoniaJS.setCookie('Username', $('#Username').val(), 365);
|
||||
$('#divLoginMsg').html(respon.pesan).removeClass('d-none');
|
||||
$('.input-group').addClass('d-none');
|
||||
setTimeout(function(){self.location = FoniaJS.WEB_PATH;}, 1600);
|
||||
}else{
|
||||
FoniaJS.showInfo(respon.pesan, 3000);
|
||||
if (respon.redir) setTimeout(function(){self.location = respon.redir;}, 600);
|
||||
}
|
||||
}
|
||||
}).send();
|
||||
}
|
||||
|
||||
};
|
||||
@@ -0,0 +1,64 @@
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/js/pull/renstra_tujuan.js
|
||||
Desc. : JS - Pull Tujuan RENSTRA
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : December 15th, 2025.
|
||||
|
||||
(c) 2025, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
var PRENSTRATujuanJS = {
|
||||
PHP: '',
|
||||
KODE: '',
|
||||
|
||||
loading: function(){
|
||||
$('#butTujuan').click(function(){
|
||||
this.simpan_tujuan();
|
||||
}.bind(this));
|
||||
$('#butIndikator').click(function(){
|
||||
this.simpan_indikator();
|
||||
}.bind(this));
|
||||
$('#butClear').click(function(){
|
||||
$('#JSON_Tujuan').val('');
|
||||
$('#JSON_Indikator').val('');
|
||||
$('#Tujuan_Log').val('');
|
||||
$('#Indikator_Log').val('');
|
||||
});
|
||||
},
|
||||
|
||||
simpan_tujuan: function(){
|
||||
$('#Tujuan_Log').val('');
|
||||
var _json = JSON.parse($('#JSON_Tujuan').val());
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-tujuan','JSON='+JSON.stringify(_json)],
|
||||
onSuccess: function(ares){
|
||||
if (ares.result != 0){
|
||||
$('#Tujuan_Log').val('Sukses simpan Tujuan !');
|
||||
} else {
|
||||
$('#Tujuan_Log').val(ares.message);
|
||||
}
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
simpan_indikator: function(){
|
||||
$('#Indikator_Log').val('');
|
||||
var _json = JSON.parse($('#JSON_Indikator').val());
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-indikator','JSON='+JSON.stringify(_json)],
|
||||
onSuccess: function(ares){
|
||||
if (ares.result != 0){
|
||||
$('#Indikator_Log').val('Sukses simpan Indikator !');
|
||||
} else {
|
||||
$('#Indikator_Log').val(ares.message);
|
||||
}
|
||||
}.bind(this)
|
||||
}).send();
|
||||
}
|
||||
|
||||
};
|
||||
@@ -0,0 +1,64 @@
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/js/pull/rpjmd_sasaran.js
|
||||
Desc. : JS - Pull Sasaran RPJMD
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : December 15th, 2025.
|
||||
|
||||
(c) 2025, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
var PRPJMDProgramJS = {
|
||||
PHP: '',
|
||||
KODE: '',
|
||||
|
||||
loading: function(){
|
||||
$('#butProgram').click(function(){
|
||||
this.simpan_sasaran();
|
||||
}.bind(this));
|
||||
$('#butOutcome').click(function(){
|
||||
this.simpan_Outcome();
|
||||
}.bind(this));
|
||||
$('#butClear').click(function(){
|
||||
$('#JSON_Program').val(' ');
|
||||
$('#JSON_Outcome').val(' ');
|
||||
$('#Program_Log').val('');
|
||||
$('#Outcome_Log').val('');
|
||||
});
|
||||
},
|
||||
|
||||
simpan_sasaran: function(){
|
||||
$('#Program_Log').val('');
|
||||
var _json = JSON.parse($('#JSON_Program').val());
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-program','JSON='+JSON.stringify(_json)],
|
||||
onSuccess: function(ares){
|
||||
if (ares.result != 0){
|
||||
$('#Program_Log').val('Sukses simpan Program !');
|
||||
} else {
|
||||
$('#Program_Log').val(ares.message);
|
||||
}
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
simpan_Outcome: function(){
|
||||
$('#Outcome_Log').val('');
|
||||
var _json = JSON.parse($('#JSON_Outcome').val());
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-outcome','JSON='+JSON.stringify(_json)],
|
||||
onSuccess: function(ares){
|
||||
if (ares.result != 0){
|
||||
$('#Outcome_Log').val('Sukses simpan Outcome !');
|
||||
} else {
|
||||
$('#Outcome_Log').val(ares.message);
|
||||
}
|
||||
}.bind(this)
|
||||
}).send();
|
||||
}
|
||||
|
||||
};
|
||||
@@ -0,0 +1,64 @@
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/js/pull/rpjmd_sasaran.js
|
||||
Desc. : JS - Pull Sasaran RPJMD
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : December 15th, 2025.
|
||||
|
||||
(c) 2025, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
var PRPJMDSasaranJS = {
|
||||
PHP: '',
|
||||
KODE: '',
|
||||
|
||||
loading: function(){
|
||||
$('#butSasaran').click(function(){
|
||||
this.simpan_sasaran();
|
||||
}.bind(this));
|
||||
$('#butIndikator').click(function(){
|
||||
this.simpan_indikator();
|
||||
}.bind(this));
|
||||
$('#butClear').click(function(){
|
||||
$('#JSON_Sasaran').val(' ');
|
||||
$('#JSON_Indikator').val(' ');
|
||||
$('#Sasaran_Log').val('');
|
||||
$('#Indikator_Log').val('');
|
||||
});
|
||||
},
|
||||
|
||||
simpan_sasaran: function(){
|
||||
$('#Sasaran_Log').val('');
|
||||
var _json = JSON.parse($('#JSON_Sasaran').val());
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-sasaran','JSON='+JSON.stringify(_json)],
|
||||
onSuccess: function(ares){
|
||||
if (ares.result != 0){
|
||||
$('#Sasaran_Log').val('Sukses simpan Sasaran !');
|
||||
} else {
|
||||
$('#Sasaran_Log').val(ares.message);
|
||||
}
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
simpan_indikator: function(){
|
||||
$('#Indikator_Log').val('');
|
||||
var _json = JSON.parse($('#JSON_Indikator').val());
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-indikator','JSON='+JSON.stringify(_json)],
|
||||
onSuccess: function(ares){
|
||||
if (ares.result != 0){
|
||||
$('#Indikator_Log').val('Sukses simpan Indikator !');
|
||||
} else {
|
||||
$('#Indikator_Log').val(ares.message);
|
||||
}
|
||||
}.bind(this)
|
||||
}).send();
|
||||
}
|
||||
|
||||
};
|
||||
@@ -0,0 +1,106 @@
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/js/push/rkpd_akhir.js
|
||||
Desc. : JS - Push API RKPD Akhir ke SIPD Kemendagri
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : August 20th, 2020.
|
||||
|
||||
(c) 2011 - 2020, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
var PRKPDAkhirJS = {
|
||||
PHP: '',
|
||||
KODE: '',
|
||||
|
||||
loading: function(){
|
||||
$('#butSend').click(function(){this.proses_kirim();}.bind(this));
|
||||
$('#butOPD').click(function(){
|
||||
if ($('#OPDID').val()>0) this.show_hide(1);
|
||||
}.bind(this));
|
||||
this.show_hide(1);
|
||||
},
|
||||
|
||||
proses_kirim: function(){
|
||||
var prog = 0;
|
||||
$('#divPROG :input').each(function(e){
|
||||
if (this.type=='checkbox' && this.id.indexOf('ProgID_cbox')!==-1) {
|
||||
if ($(this).prop('checked')) prog++;
|
||||
}
|
||||
});
|
||||
if (prog==0) {
|
||||
FoniaJS.showError('Silakan Pilih Nama Program.');
|
||||
return false;
|
||||
}
|
||||
|
||||
FoniaJS.showConfirm('Konfirmasi', 'Kirim Data RKPD Akhir ke SIPD Kemendagri ?', function(){
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=kirim','OPDID'],
|
||||
onSuccess: function(adata){
|
||||
var txt = '<table width="100%"><tr><td class="c"><p>'+adata['msg']+'</p></td></tr><tr><td height="250" valign="top">'+adata['pre']+'</td></tr></table>';
|
||||
this.winInfo = FoniaJS.showWindow('Info', 'Informasi Pengiriman Data', txt, 900, '_,WK');
|
||||
}.bind(this)
|
||||
}).send();
|
||||
}.bind(this), 'danger');
|
||||
},
|
||||
|
||||
show_hide: function(no){
|
||||
$('#divOPD').css('display', 'none'); $('#butOPD').removeClass('btn-secondary').addClass('btn-info');
|
||||
$('#divPROG').css('display', 'none');
|
||||
if (no == 1) { $('#divOPD').css('display', ''); this.data_query('detail-opd'); }
|
||||
if (no == 2) { $('#divPROG').css('display', ''); this.data_query('detail-prog'); }
|
||||
if (no == 1) {
|
||||
$('#OPDID').val(0);
|
||||
$('#Nama_OPD').val('');
|
||||
}
|
||||
if (no <= 1) {
|
||||
$('#butOPD').removeClass('btn-info').addClass('btn-secondary');
|
||||
}
|
||||
$('#butPrint').prop('disabled', true);
|
||||
$('#butSend').prop('disabled', true);
|
||||
if (no == 2) {
|
||||
$('#butPrint').prop('disabled', false);
|
||||
$('#butSend').prop('disabled', false);
|
||||
}
|
||||
},
|
||||
|
||||
opd_select: function(acell){
|
||||
$('#OPDID').val(acell[0]);
|
||||
$('#Nama_OPD').val(acell[8]);
|
||||
this.show_hide(2);
|
||||
},
|
||||
|
||||
opd_kirim: function(acell){
|
||||
$('#OPDID').val(acell[0]);
|
||||
|
||||
FoniaJS.showConfirm('Konfirmasi', 'Kirim Data '+acell[8]+' ke SIPD Kemendagri ?', function(){
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=kirim','OPDID'],
|
||||
onSuccess: function(adata){
|
||||
var txt = '<table width="100%"><tr><td class="c"><p>'+adata['msg']+'</p></td></tr><tr><td height="250" valign="top">'+adata['pre']+'</td></tr></table>';
|
||||
this.winInfo = FoniaJS.showWindow('Info', 'Informasi Pengiriman Data', txt, 900, '_,WK');
|
||||
this.data_query('detail-opd');
|
||||
}.bind(this)
|
||||
}).send();
|
||||
}.bind(this), 'danger');
|
||||
},
|
||||
|
||||
data_query: function(tipe, mode){
|
||||
if (tipe=="detail-opd"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-opd']
|
||||
}).send();
|
||||
} else if (tipe=="detail-prog"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-prog','OPDID']
|
||||
}).send();
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
@@ -0,0 +1,106 @@
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/js/push/rkpd_awal.js
|
||||
Desc. : JS - Push API RKPD Awal ke SIPD Kemendagri
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : August 20th, 2020.
|
||||
|
||||
(c) 2011 - 2020, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
var PRKPDAwalJS = {
|
||||
PHP: '',
|
||||
KODE: '',
|
||||
|
||||
loading: function(){
|
||||
$('#butSend').click(function(){this.proses_kirim();}.bind(this));
|
||||
$('#butOPD').click(function(){
|
||||
if ($('#OPDID').val()>0) this.show_hide(1);
|
||||
}.bind(this));
|
||||
this.show_hide(1);
|
||||
},
|
||||
|
||||
proses_kirim: function(){
|
||||
var prog = 0;
|
||||
$('#divPROG :input').each(function(e){
|
||||
if (this.type=='checkbox' && this.id.indexOf('ProgID_cbox')!==-1) {
|
||||
if ($(this).prop('checked')) prog++;
|
||||
}
|
||||
});
|
||||
if (prog==0) {
|
||||
FoniaJS.showError('Silakan Pilih Nama Program.');
|
||||
return false;
|
||||
}
|
||||
|
||||
FoniaJS.showConfirm('Konfirmasi', 'Kirim Data RKPD Awal ke SIPD Kemendagri ?', function(){
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=kirim','OPDID'],
|
||||
onSuccess: function(adata){
|
||||
var txt = '<table width="100%"><tr><td class="c"><p>'+adata['msg']+'</p></td></tr><tr><td height="250" valign="top">'+adata['pre']+'</td></tr></table>';
|
||||
this.winInfo = FoniaJS.showWindow('Info', 'Informasi Pengiriman Data', txt, 900, '_,WK');
|
||||
}.bind(this)
|
||||
}).send();
|
||||
}.bind(this), 'danger');
|
||||
},
|
||||
|
||||
show_hide: function(no){
|
||||
$('#divOPD').css('display', 'none'); $('#butOPD').removeClass('btn-secondary').addClass('btn-info');
|
||||
$('#divPROG').css('display', 'none');
|
||||
if (no == 1) { $('#divOPD').css('display', ''); this.data_query('detail-opd'); }
|
||||
if (no == 2) { $('#divPROG').css('display', ''); this.data_query('detail-prog'); }
|
||||
if (no == 1) {
|
||||
$('#OPDID').val(0);
|
||||
$('#Nama_OPD').val('');
|
||||
}
|
||||
if (no <= 1) {
|
||||
$('#butOPD').removeClass('btn-info').addClass('btn-secondary');
|
||||
}
|
||||
$('#butPrint').prop('disabled', true);
|
||||
$('#butSend').prop('disabled', true);
|
||||
if (no == 2) {
|
||||
$('#butPrint').prop('disabled', false);
|
||||
$('#butSend').prop('disabled', false);
|
||||
}
|
||||
},
|
||||
|
||||
opd_select: function(acell){
|
||||
$('#OPDID').val(acell[0]);
|
||||
$('#Nama_OPD').val(acell[8]);
|
||||
this.show_hide(2);
|
||||
},
|
||||
|
||||
opd_kirim: function(acell){
|
||||
$('#OPDID').val(acell[0]);
|
||||
|
||||
FoniaJS.showConfirm('Konfirmasi', 'Kirim Data '+acell[8]+' ke SIPD Kemendagri ?', function(){
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=kirim','OPDID'],
|
||||
onSuccess: function(adata){
|
||||
var txt = '<table width="100%"><tr><td class="c"><p>'+adata['msg']+'</p></td></tr><tr><td height="250" valign="top">'+adata['pre']+'</td></tr></table>';
|
||||
this.winInfo = FoniaJS.showWindow('Info', 'Informasi Pengiriman Data', txt, 900, '_,WK');
|
||||
this.data_query('detail-opd');
|
||||
}.bind(this)
|
||||
}).send();
|
||||
}.bind(this), 'danger');
|
||||
},
|
||||
|
||||
data_query: function(tipe, mode){
|
||||
if (tipe=="detail-opd"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-opd']
|
||||
}).send();
|
||||
} else if (tipe=="detail-prog"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-prog','OPDID']
|
||||
}).send();
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
@@ -0,0 +1,106 @@
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/js/push/rkpd_ranc.js
|
||||
Desc. : JS - Push API Rancangan RKPD ke SIPD Kemendagri
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : August 20th, 2020.
|
||||
|
||||
(c) 2011 - 2020, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
var PRKPDRancJS = {
|
||||
PHP: '',
|
||||
KODE: '',
|
||||
|
||||
loading: function(){
|
||||
$('#butSend').click(function(){this.proses_kirim();}.bind(this));
|
||||
$('#butOPD').click(function(){
|
||||
if ($('#OPDID').val()>0) this.show_hide(1);
|
||||
}.bind(this));
|
||||
this.show_hide(1);
|
||||
},
|
||||
|
||||
proses_kirim: function(){
|
||||
var prog = 0;
|
||||
$('#divPROG :input').each(function(e){
|
||||
if (this.type=='checkbox' && this.id.indexOf('ProgID_cbox')!==-1) {
|
||||
if ($(this).prop('checked')) prog++;
|
||||
}
|
||||
});
|
||||
if (prog==0) {
|
||||
FoniaJS.showError('Silakan Pilih Nama Program.');
|
||||
return false;
|
||||
}
|
||||
|
||||
FoniaJS.showConfirm('Konfirmasi', 'Kirim Data Rancangan RKPD ke SIPD Kemendagri ?', function(){
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=kirim','OPDID'],
|
||||
onSuccess: function(adata){
|
||||
var txt = '<table width="100%"><tr><td class="c"><p>'+adata['msg']+'</p></td></tr><tr><td height="250" valign="top">'+adata['pre']+'</td></tr></table>';
|
||||
this.winInfo = FoniaJS.showWindow('Info', 'Informasi Pengiriman Data', txt, 900, '_,WK');
|
||||
}.bind(this)
|
||||
}).send();
|
||||
}.bind(this), 'danger');
|
||||
},
|
||||
|
||||
show_hide: function(no){
|
||||
$('#divOPD').css('display', 'none'); $('#butOPD').removeClass('btn-secondary').addClass('btn-info');
|
||||
$('#divPROG').css('display', 'none');
|
||||
if (no == 1) { $('#divOPD').css('display', ''); this.data_query('detail-opd'); }
|
||||
if (no == 2) { $('#divPROG').css('display', ''); this.data_query('detail-prog'); }
|
||||
if (no == 1) {
|
||||
$('#OPDID').val(0);
|
||||
$('#Nama_OPD').val('');
|
||||
}
|
||||
if (no <= 1) {
|
||||
$('#butOPD').removeClass('btn-info').addClass('btn-secondary');
|
||||
}
|
||||
$('#butPrint').prop('disabled', true);
|
||||
$('#butSend').prop('disabled', true);
|
||||
if (no == 2) {
|
||||
$('#butPrint').prop('disabled', false);
|
||||
$('#butSend').prop('disabled', false);
|
||||
}
|
||||
},
|
||||
|
||||
opd_select: function(acell){
|
||||
$('#OPDID').val(acell[0]);
|
||||
$('#Nama_OPD').val(acell[8]);
|
||||
this.show_hide(2);
|
||||
},
|
||||
|
||||
opd_kirim: function(acell){
|
||||
$('#OPDID').val(acell[0]);
|
||||
|
||||
FoniaJS.showConfirm('Konfirmasi', 'Kirim Data '+acell[8]+' ke SIPD Kemendagri ?', function(){
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=kirim','OPDID'],
|
||||
onSuccess: function(adata){
|
||||
var txt = '<table width="100%"><tr><td class="c"><p>'+adata['msg']+'</p></td></tr><tr><td height="250" valign="top">'+adata['pre']+'</td></tr></table>';
|
||||
this.winInfo = FoniaJS.showWindow('Info', 'Informasi Pengiriman Data', txt, 900, '_,WK');
|
||||
this.data_query('detail-opd');
|
||||
}.bind(this)
|
||||
}).send();
|
||||
}.bind(this), 'danger');
|
||||
},
|
||||
|
||||
data_query: function(tipe, mode){
|
||||
if (tipe=="detail-opd"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-opd']
|
||||
}).send();
|
||||
} else if (tipe=="detail-prog"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-prog','OPDID']
|
||||
}).send();
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
@@ -0,0 +1,76 @@
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/js/sim/bangda_mus.js
|
||||
Desc. : JS - Simulasi Push Musrenbang ke Bangda Kemendagri
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : April 6th, 2022.
|
||||
|
||||
(c) 2011 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
var BangdaMusJS = {
|
||||
PHP: '',
|
||||
KODE: '',
|
||||
|
||||
loading: function(){
|
||||
$('#butKEC').click(function(){
|
||||
if ($('#KecID').val()>0) this.show_hide(1);
|
||||
}.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');
|
||||
if (no == 1) {
|
||||
$('#KecID').val(0);
|
||||
$('#Nama_KEC').val('');
|
||||
}
|
||||
if (no <= 1) {
|
||||
$('#butKEC').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'); }
|
||||
},
|
||||
|
||||
kec_select: function(acell){
|
||||
$('#KecID').val(acell[0]);
|
||||
$('#Nama_KEC').val(acell[1]);
|
||||
this.show_hide(2);
|
||||
},
|
||||
|
||||
kode_preview: function(cmd){
|
||||
var dprint = new cSIMULATOR(this.PHP);
|
||||
dprint.add_param("data", cmd);
|
||||
dprint.add_param("KecID");
|
||||
dprint.add_param("KelID");
|
||||
dprint.doPreview();
|
||||
},
|
||||
|
||||
kode_tambah_mus: function(acell){
|
||||
$('#KelID').val(acell[0]);
|
||||
this.kode_preview('kode-tambah-mus');
|
||||
},
|
||||
kode_ubah_mus: function(acell){
|
||||
$('#KelID').val(acell[0]);
|
||||
this.kode_preview('kode-ubah-mus');
|
||||
},
|
||||
|
||||
data_query: function(tipe, mode){
|
||||
if (tipe=="tabel-kec"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=tabel-kec']
|
||||
}).send();
|
||||
} else if (tipe=="tabel-kel"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=tabel-kel','KecID']
|
||||
}).send();
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
@@ -0,0 +1,47 @@
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/js/sim/bangda_pok.js
|
||||
Desc. : JS - Simulasi Push Pokir ke Bangda Kemendagri
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : April 6th, 2022.
|
||||
|
||||
(c) 2011 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
var BangdaPokJS = {
|
||||
PHP: '',
|
||||
KODE: '',
|
||||
|
||||
loading: function(){
|
||||
this.data_query('tabel-dprd');
|
||||
},
|
||||
|
||||
kode_preview: function(cmd){
|
||||
var dprint = new cSIMULATOR(this.PHP);
|
||||
dprint.add_param("data", cmd);
|
||||
dprint.add_param("DPRDID");
|
||||
dprint.doPreview();
|
||||
},
|
||||
|
||||
kode_tambah_pok: function(acell){
|
||||
$('#DPRDID').val(acell[0]);
|
||||
this.kode_preview('kode-tambah-pok');
|
||||
},
|
||||
kode_ubah_pok: function(acell){
|
||||
$('#DPRDID').val(acell[0]);
|
||||
this.kode_preview('kode-ubah-pok');
|
||||
},
|
||||
|
||||
data_query: function(tipe, mode){
|
||||
if (tipe=="tabel-dprd"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=tabel-dprd']
|
||||
}).send();
|
||||
}
|
||||
},
|
||||
|
||||
};
|
||||
@@ -0,0 +1,167 @@
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/js/sim/bangda_renstra.js
|
||||
Desc. : JS - Simulasi Program Renstra ke Bangda Kemendagri
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : March 30th, 2022.
|
||||
|
||||
(c) 2011 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
var BangdaRenstraJS = {
|
||||
PHP: '',
|
||||
KODE: '',
|
||||
|
||||
loading: function(){
|
||||
$('#butOPD').click(function(){
|
||||
if ($('#OPDID').val()>0) this.show_hide(1);
|
||||
}.bind(this));
|
||||
$('#butPROG').click(function(){
|
||||
if ($('#ProgID').val()>0) this.show_hide(2);
|
||||
}.bind(this));
|
||||
$('#butKEG').click(function(){
|
||||
if ($('#KegID').val()>0) this.show_hide(3);
|
||||
}.bind(this));
|
||||
$('#opsiProg').click(function(){
|
||||
if (this.cek_opsi()) this.kode_preview('kode-tambah-prog');
|
||||
}.bind(this));
|
||||
$('#opsiProgIndi').click(function(){
|
||||
if (this.cek_opsi()) this.kode_preview('kode-tambah-prog-indi');
|
||||
}.bind(this));
|
||||
$('#opsiKeg').click(function(){
|
||||
if (this.cek_opsi()) this.kode_preview('kode-tambah-keg');
|
||||
}.bind(this));
|
||||
$('#opsiKegIndi').click(function(){
|
||||
if (this.cek_opsi()) this.kode_preview('kode-tambah-keg-indi');
|
||||
}.bind(this));
|
||||
$('#opsiSub').click(function(){
|
||||
if (this.cek_opsi()) this.kode_preview('kode-tambah-sub');
|
||||
}.bind(this));
|
||||
this.show_hide(1);
|
||||
},
|
||||
|
||||
cek_opsi: function(){
|
||||
if ($('#OPDID').val()==0) {
|
||||
FoniaJS.showError('Harus Pilih Perangkat Daerah !');
|
||||
return false;
|
||||
}
|
||||
$('#ProgID').val(0);
|
||||
$('#KegID').val(0);
|
||||
return true;
|
||||
},
|
||||
|
||||
show_hide: function(no){
|
||||
$('#divOPD').css('display', 'none'); $('#butOPD').removeClass('btn-secondary').addClass('btn-info');
|
||||
$('#divPROG').css('display', 'none'); $('#butPROG').removeClass('btn-secondary').addClass('btn-info');
|
||||
$('#divKEG').css('display', 'none'); $('#butKEG').removeClass('btn-secondary').addClass('btn-info');
|
||||
$('#divSUB').css('display', 'none');
|
||||
if (no == 1) {
|
||||
$('#OPDID').val(0);
|
||||
$('#Nama_OPD').val('');
|
||||
}
|
||||
if (no <= 1) {
|
||||
$('#ProgID').val(0);
|
||||
$('#Nama_PROG').val('');
|
||||
$('#butOPD').removeClass('btn-info').addClass('btn-secondary');
|
||||
}
|
||||
if (no <= 2) {
|
||||
$('#butPROG').removeClass('btn-info').addClass('btn-secondary');
|
||||
}
|
||||
if (no == 1) { $('#divOPD').css('display', ''); this.data_query('tabel-opd'); }
|
||||
if (no == 2) { $('#divPROG').css('display', ''); this.data_query('tabel-prog'); }
|
||||
if (no == 3) { $('#divKEG').css('display', ''); this.data_query('tabel-keg'); }
|
||||
},
|
||||
|
||||
opd_select: function(acell){
|
||||
$('#OPDID').val(acell[0]);
|
||||
$('#Nama_OPD').val(acell[2]);
|
||||
this.show_hide(2);
|
||||
},
|
||||
|
||||
prog_select: function(acell){
|
||||
$('#ProgID').val(acell[0]);
|
||||
$('#Nama_PROG').val(acell[1]);
|
||||
this.show_hide(3);
|
||||
},
|
||||
|
||||
kode_preview: function(cmd){
|
||||
var dprint = new cSIMULATOR(this.PHP);
|
||||
dprint.add_param("data", cmd);
|
||||
dprint.add_param("OPDID");
|
||||
dprint.add_param("ProgID");
|
||||
dprint.add_param("KegID");
|
||||
dprint.doPreview();
|
||||
},
|
||||
|
||||
kode_tambah_prog: function(acell){
|
||||
$('#OPDID').val(acell[0]);
|
||||
this.kode_preview('kode-tambah-prog');
|
||||
},
|
||||
kode_tambah_prog_indi: function(acell){
|
||||
$('#OPDID').val(acell[0]);
|
||||
this.kode_preview('kode-tambah-prog-indi');
|
||||
},
|
||||
kode_tambah_keg: function(acell){
|
||||
$('#ProgID').val(acell[0]);
|
||||
this.kode_preview('kode-tambah-keg');
|
||||
},
|
||||
kode_tambah_keg_indi: function(acell){
|
||||
$('#ProgID').val(acell[0]);
|
||||
this.kode_preview('kode-tambah-keg-indi');
|
||||
},
|
||||
kode_tambah_sub: function(acell){
|
||||
$('#KegID').val(acell[0]);
|
||||
this.kode_preview('kode-tambah-sub');
|
||||
},
|
||||
kode_tambah_sub_indi: function(acell){
|
||||
$('#KegID').val(acell[0]);
|
||||
this.kode_preview('kode-tambah-sub-indi');
|
||||
},
|
||||
|
||||
html_show: function(acell){
|
||||
$('#KegID').val(acell[0]);
|
||||
var txt = '<div class="card mt-2 mb-1"><div class="card-body"><div class="row mb-1"><div class="col"><textarea class="form-control" id="Kode_HTML" name="Kode_HTML" rows="10" required="true"></textarea></div></div></div></div>';
|
||||
this.winHTML = FoniaJS.showWindow('HTML', 'Upload data HTML', txt, 600, '_,WK,WS', function(){
|
||||
$('#winHTML').find('#butWSave').click(function(){this.html_simpan();}.bind(this));
|
||||
$('#Kode_HTML').focus();
|
||||
}.bind(this));
|
||||
},
|
||||
|
||||
html_simpan: function(){
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-html','OPDID','KegID','Kode_HTML'],
|
||||
onSuccess: function(ares){
|
||||
if (ares.result != 0){
|
||||
FoniaJS.showInfo('Sukses upload HTML!');
|
||||
} else {
|
||||
FoniaJS.showError(ares.message);
|
||||
}
|
||||
FoniaJS.closeWindow(this.winHTML);
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
data_query: function(tipe, mode){
|
||||
if (tipe=="tabel-opd"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=tabel-opd']
|
||||
}).send();
|
||||
} else if (tipe=="tabel-prog"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=tabel-prog','OPDID']
|
||||
}).send();
|
||||
} else if (tipe=="tabel-keg"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=tabel-keg','OPDID','ProgID']
|
||||
}).send();
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
@@ -0,0 +1,138 @@
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/js/sim/musrenbang.js
|
||||
Desc. : JS - Simulasi Push Musrenbang ke SIPD Kemendagri
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : April 6th, 2022.
|
||||
|
||||
(c) 2011 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
var MUSJS = {
|
||||
PHP: '',
|
||||
KODE: '',
|
||||
|
||||
loading: function(){
|
||||
$('#butKEC').click(function(){
|
||||
if ($('#KecID').val()>0) this.show_hide(1);
|
||||
}.bind(this));
|
||||
$('#butSIPD').click(function(){
|
||||
this.sipd_detail();
|
||||
}.bind(this));
|
||||
$('#opsiUpload').click(function(){
|
||||
this.json_show();
|
||||
}.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');
|
||||
if (no == 1) {
|
||||
$('#KecID').val(0);
|
||||
$('#Nama_KEC').val('');
|
||||
}
|
||||
if (no <= 1) {
|
||||
$('#butKEC').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'); }
|
||||
},
|
||||
|
||||
kec_select: function(acell){
|
||||
$('#KecID').val(acell[0]);
|
||||
$('#Nama_KEC').val(acell[1]);
|
||||
this.show_hide(2);
|
||||
},
|
||||
|
||||
kode_preview: function(cmd){
|
||||
var dprint = new cSIMULATOR(this.PHP);
|
||||
dprint.add_param("data", cmd);
|
||||
dprint.add_param("KecID");
|
||||
dprint.add_param("KelID");
|
||||
dprint.doPreview();
|
||||
},
|
||||
|
||||
kode_tambah_mus_k: function(acell){
|
||||
$('#KecID').val(acell[0]);
|
||||
$('#KelID').val(0);
|
||||
this.kode_preview('kode-tambah-mus');
|
||||
},
|
||||
kode_ubah_mus_k: function(acell){
|
||||
$('#KecID').val(acell[0]);
|
||||
$('#KelID').val(0);
|
||||
this.kode_preview('kode-ubah-mus');
|
||||
},
|
||||
kode_tambah_mus: function(acell){
|
||||
$('#KelID').val(acell[0]);
|
||||
this.kode_preview('kode-tambah-mus');
|
||||
},
|
||||
kode_ubah_mus: function(acell){
|
||||
$('#KelID').val(acell[0]);
|
||||
this.kode_preview('kode-ubah-mus');
|
||||
},
|
||||
|
||||
json_show: function(){
|
||||
var txt = '<div class="card mt-2 mb-1"><div class="card-body"><div class="row mb-1"><div class="col"><textarea class="form-control" id="Kode_JSON" name="Kode_JSON" rows="10" required="true"></textarea></div></div></div></div>';
|
||||
this.winJSON = FoniaJS.showWindow('JSON', 'Upload data JSON', txt, 600, '_,WK,WS', function(){
|
||||
$('#winJSON').find('#butWSave').click(function(){this.json_simpan();}.bind(this));
|
||||
$('#Kode_JSON').focus();
|
||||
}.bind(this));
|
||||
},
|
||||
json_simpan: function(){
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-json','Kode_JSON'],
|
||||
onSuccess: function(ares){
|
||||
if (ares.result != 0){
|
||||
this.show_hide(2);
|
||||
this.show_hide(1);
|
||||
FoniaJS.showInfo('Sukses upload JSON!');
|
||||
} else {
|
||||
FoniaJS.showError(ares.message);
|
||||
}
|
||||
FoniaJS.closeWindow(this.winJSON);
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
sipd_detail: function(){
|
||||
new Request({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-sipd'],
|
||||
onSuccess: function(txt){
|
||||
this.winSIPD = FoniaJS.showWindow('SIPD', 'Konfigurasi SIPD', txt, 400, '_,WK,WS', function(){
|
||||
$('#winSIPD').find('#butWSave').click(function(){this.sipd_simpan();}.bind(this));
|
||||
}.bind(this));
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
sipd_simpan: function(){
|
||||
new Request({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-sipd','Kode_Token','Kode_Acak'],
|
||||
onSuccess: function(){
|
||||
FoniaJS.showInfo('Proses simpan data sukses!');
|
||||
FoniaJS.closeWindow(this.winSIPD);
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
data_query: function(tipe, mode){
|
||||
if (tipe=="tabel-kec"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=tabel-kec']
|
||||
}).send();
|
||||
} else if (tipe=="tabel-kel"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=tabel-kel','KecID']
|
||||
}).send();
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
@@ -0,0 +1,99 @@
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/js/sim/pokir.js
|
||||
Desc. : JS - Simulasi Push Pokir ke SIPD Kemendagri
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : April 6th, 2022.
|
||||
|
||||
(c) 2011 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
var POKJS = {
|
||||
PHP: '',
|
||||
KODE: '',
|
||||
|
||||
loading: function(){
|
||||
this.data_query('tabel-dprd');
|
||||
$('#butSIPD').click(function(){
|
||||
this.sipd_detail();
|
||||
}.bind(this));
|
||||
$('#opsiUpload').click(function(){
|
||||
this.json_show();
|
||||
}.bind(this));
|
||||
},
|
||||
|
||||
kode_preview: function(cmd){
|
||||
var dprint = new cSIMULATOR(this.PHP);
|
||||
dprint.add_param("data", cmd);
|
||||
dprint.add_param("DPRDID");
|
||||
dprint.doPreview();
|
||||
},
|
||||
|
||||
kode_tambah_pok: function(acell){
|
||||
$('#DPRDID').val(acell[0]);
|
||||
this.kode_preview('kode-tambah-pok');
|
||||
},
|
||||
kode_ubah_pok: function(acell){
|
||||
$('#DPRDID').val(acell[0]);
|
||||
this.kode_preview('kode-ubah-pok');
|
||||
},
|
||||
|
||||
json_show: function(){
|
||||
var txt = '<div class="card mt-2 mb-1"><div class="card-body"><div class="row mb-1"><div class="col"><textarea class="form-control" id="Kode_JSON" name="Kode_JSON" rows="10" required="true"></textarea></div></div></div></div>';
|
||||
this.winJSON = FoniaJS.showWindow('JSON', 'Upload data JSON', txt, 600, '_,WK,WS', function(){
|
||||
$('#winJSON').find('#butWSave').click(function(){this.json_simpan();}.bind(this));
|
||||
$('#Kode_JSON').focus();
|
||||
}.bind(this));
|
||||
},
|
||||
json_simpan: function(){
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-json','Kode_JSON'],
|
||||
onSuccess: function(ares){
|
||||
if (ares.result != 0){
|
||||
this.show_hide(2);
|
||||
this.show_hide(1);
|
||||
FoniaJS.showInfo('Sukses upload JSON!');
|
||||
} else {
|
||||
FoniaJS.showError(ares.message);
|
||||
}
|
||||
FoniaJS.closeWindow(this.winJSON);
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
sipd_detail: function(){
|
||||
new Request({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-sipd'],
|
||||
onSuccess: function(txt){
|
||||
this.winSIPD = FoniaJS.showWindow('SIPD', 'Konfigurasi SIPD', txt, 400, '_,WK,WS', function(){
|
||||
$('#winSIPD').find('#butWSave').click(function(){this.sipd_simpan();}.bind(this));
|
||||
}.bind(this));
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
sipd_simpan: function(){
|
||||
new Request({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-sipd','Kode_Token','Kode_Acak'],
|
||||
onSuccess: function(){
|
||||
FoniaJS.showInfo('Proses simpan data sukses!');
|
||||
FoniaJS.closeWindow(this.winSIPD);
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
data_query: function(tipe, mode){
|
||||
if (tipe=="tabel-dprd"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=tabel-dprd']
|
||||
}).send();
|
||||
}
|
||||
},
|
||||
|
||||
};
|
||||
@@ -0,0 +1,155 @@
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/js/sim/renstra_kegiatan.js
|
||||
Desc. : JS - Simulasi Kegiatan Renstra ke SIPD Kemendagri
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : March 30th, 2022.
|
||||
|
||||
(c) 2011 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
var RenstraKegiatanJS = {
|
||||
PHP: '',
|
||||
KODE: '',
|
||||
|
||||
loading: function(){
|
||||
$('#Cari_OPD').keydown(function(e){
|
||||
var key = e.keyCode || e.which || 0;
|
||||
if (key==13 && e.target.value!='') this.data_query('detail-opd');
|
||||
}.bind(this));
|
||||
$('#butSearch').click(function(e){
|
||||
this.data_query('detail-opd');
|
||||
}.bind(this));
|
||||
$('#butAll').click(function(){
|
||||
$('#Cari_OPD').val('');
|
||||
this.data_query('detail-opd');
|
||||
}.bind(this));
|
||||
$('#butSIPD').click(function(){
|
||||
this.sipd_detail();
|
||||
}.bind(this));
|
||||
$('#opsiUpload').click(function(){
|
||||
this.json_show();
|
||||
}.bind(this));
|
||||
$('#opsiTambahKeg').click(function(){
|
||||
this.kode_tambah_keg();
|
||||
}.bind(this));
|
||||
$('#opsiUbahKeg').click(function(){
|
||||
this.kode_ubah_keg();
|
||||
}.bind(this));
|
||||
$('#opsiTambahIndi').click(function(){
|
||||
this.kode_tambah_indi();
|
||||
}.bind(this));
|
||||
$('#opsiUbahIndi').click(function(){
|
||||
this.kode_ubah_indi();
|
||||
}.bind(this));
|
||||
this.data_query('detail-opd');
|
||||
FoniaJS.setFocus('#Cari_OPD');
|
||||
},
|
||||
|
||||
kode_preview: function(acell, cmd){
|
||||
if (acell) $('#OPDID').val(acell[0]);
|
||||
var dprint = new cSIMULATOR(this.PHP);
|
||||
dprint.add_param("data", cmd);
|
||||
dprint.add_param("OPDID");
|
||||
dprint.doPreview();
|
||||
},
|
||||
|
||||
kode_tambah_keg: function(acell){
|
||||
this.kode_preview(acell, 'kode-tambah-keg');
|
||||
},
|
||||
kode_ubah_keg: function(acell){
|
||||
this.kode_preview(acell, 'kode-ubah-keg');
|
||||
},
|
||||
kode_tambah_indi: function(acell){
|
||||
this.kode_preview(acell, 'kode-tambah-indi');
|
||||
},
|
||||
kode_ubah_indi: function(acell){
|
||||
this.kode_preview(acell, 'kode-ubah-indi');
|
||||
},
|
||||
|
||||
/*show_upload: function(){
|
||||
var txt = '<div class="card mt-2 mb-1"><div class="card-body"><div class="col-12 px-0"><div class="input-group"><label class="input-group-btn "><span class="btn btn-primary shadow-none">Browse…<input type="file" name="FileDoku" id="FileDoku" accept="application/json" style="display:none;"></span></label><input type="text" id="FileLabel" class="form-control" readonly></div></div></div></div>';
|
||||
this.winDoku = FoniaJS.showWindow('Doku', 'Upload data JSON', txt, 600, '_,WK', function(){
|
||||
$('#FileDoku').change(function(){
|
||||
var label = $('#FileDoku').val().replace(/\\/g, '/').replace(/.*\//, ''),
|
||||
fd = new FormData(),
|
||||
files = $('#FileDoku')[0].files[0];
|
||||
$('#FileLabel').val(label);
|
||||
fd.append('file', files);
|
||||
$.ajax({
|
||||
url: this.PHP+'?data=upload-json',
|
||||
type: 'post',
|
||||
data: fd,
|
||||
contentType: false,
|
||||
processData: false,
|
||||
success: function(ares){
|
||||
if (ares.result != 0){
|
||||
this.data_query('detail-opd');
|
||||
FoniaJS.showInfo('Sukses upload JSON!');
|
||||
$('#FileLabel').val('');
|
||||
} else {
|
||||
FoniaJS.showError(ares.message);
|
||||
}
|
||||
}.bind(this)
|
||||
});
|
||||
}.bind(this));
|
||||
}.bind(this));
|
||||
},*/
|
||||
json_show: function(){
|
||||
var txt = '<div class="card mt-2 mb-1"><div class="card-body"><div class="row mb-1"><div class="col"><textarea class="form-control" id="Kode_JSON" name="Kode_JSON" rows="10" required="true"></textarea></div></div></div></div>';
|
||||
this.winJSON = FoniaJS.showWindow('JSON', 'Upload data JSON', txt, 600, '_,WK,WS', function(){
|
||||
$('#winJSON').find('#butWSave').click(function(){this.json_simpan();}.bind(this));
|
||||
$('#Kode_JSON').focus();
|
||||
}.bind(this));
|
||||
},
|
||||
json_simpan: function(){
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-json','Kode_JSON'],
|
||||
onSuccess: function(ares){
|
||||
if (ares.result != 0){
|
||||
this.data_query('detail-opd');
|
||||
FoniaJS.showInfo('Sukses upload JSON!');
|
||||
} else {
|
||||
FoniaJS.showError(ares.message);
|
||||
}
|
||||
FoniaJS.closeWindow(this.winJSON);
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
sipd_detail: function(){
|
||||
new Request({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-sipd'],
|
||||
onSuccess: function(txt){
|
||||
this.winSIPD = FoniaJS.showWindow('SIPD', 'Konfigurasi SIPD', txt, 400, '_,WK,WS', function(){
|
||||
$('#winSIPD').find('#butWSave').click(function(){this.sipd_simpan();}.bind(this));
|
||||
}.bind(this));
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
sipd_simpan: function(){
|
||||
new Request({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-sipd','Kode_Token','Kode_Acak'],
|
||||
onSuccess: function(){
|
||||
FoniaJS.showInfo('Proses simpan data sukses!');
|
||||
FoniaJS.closeWindow(this.winSIPD);
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
data_query: function(tipe, mode){
|
||||
if (tipe=="detail-opd"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-opd','Cari_OPD']
|
||||
}).send();
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
@@ -0,0 +1,155 @@
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/js/sim/renstra_program.js
|
||||
Desc. : JS - Simulasi Program Renstra ke SIPD Kemendagri
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : March 30th, 2022.
|
||||
|
||||
(c) 2011 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
var RenstraProgramJS = {
|
||||
PHP: '',
|
||||
KODE: '',
|
||||
|
||||
loading: function(){
|
||||
$('#Cari_OPD').keydown(function(e){
|
||||
var key = e.keyCode || e.which || 0;
|
||||
if (key==13 && e.target.value!='') this.data_query('detail-opd');
|
||||
}.bind(this));
|
||||
$('#butSearch').click(function(e){
|
||||
this.data_query('detail-opd');
|
||||
}.bind(this));
|
||||
$('#butAll').click(function(){
|
||||
$('#Cari_OPD').val('');
|
||||
this.data_query('detail-opd');
|
||||
}.bind(this));
|
||||
$('#butSIPD').click(function(){
|
||||
this.sipd_detail();
|
||||
}.bind(this));
|
||||
$('#opsiUpload').click(function(){
|
||||
this.json_show();
|
||||
}.bind(this));
|
||||
$('#opsiTambahProg').click(function(){
|
||||
this.kode_tambah_prog();
|
||||
}.bind(this));
|
||||
$('#opsiUbahProg').click(function(){
|
||||
this.kode_ubah_prog();
|
||||
}.bind(this));
|
||||
$('#opsiTambahIndi').click(function(){
|
||||
this.kode_tambah_indi();
|
||||
}.bind(this));
|
||||
$('#opsiUbahIndi').click(function(){
|
||||
this.kode_ubah_indi();
|
||||
}.bind(this));
|
||||
this.data_query('detail-opd');
|
||||
FoniaJS.setFocus('#Cari_OPD');
|
||||
},
|
||||
|
||||
kode_preview: function(acell, cmd){
|
||||
if (acell) $('#OPDID').val(acell[0]);
|
||||
var dprint = new cSIMULATOR(this.PHP);
|
||||
dprint.add_param("data", cmd);
|
||||
dprint.add_param("OPDID");
|
||||
dprint.doPreview();
|
||||
},
|
||||
|
||||
kode_tambah_prog: function(acell){
|
||||
this.kode_preview(acell, 'kode-tambah-prog');
|
||||
},
|
||||
kode_ubah_prog: function(acell){
|
||||
this.kode_preview(acell, 'kode-ubah-prog');
|
||||
},
|
||||
kode_tambah_indi: function(acell){
|
||||
this.kode_preview(acell, 'kode-tambah-indi');
|
||||
},
|
||||
kode_ubah_indi: function(acell){
|
||||
this.kode_preview(acell, 'kode-ubah-indi');
|
||||
},
|
||||
|
||||
/*show_upload: function(){
|
||||
var txt = '<div class="card mt-2 mb-1"><div class="card-body"><div class="col-12 px-0"><div class="input-group"><label class="input-group-btn"><span class="btn btn-primary shadow-none">Browse…<input type="file" name="FileDoku" id="FileDoku" accept="application/json" style="display:none;"></span></label><input type="text" id="FileLabel" class="form-control" readonly></div></div></div></div>';
|
||||
this.winDoku = FoniaJS.showWindow('Doku', 'Upload data JSON', txt, 600, '_,WK', function(){
|
||||
$('#FileDoku').change(function(){
|
||||
var label = $('#FileDoku').val().replace(/\\/g, '/').replace(/.*\//, ''),
|
||||
fd = new FormData(),
|
||||
files = $('#FileDoku')[0].files[0];
|
||||
$('#FileLabel').val(label);
|
||||
fd.append('file', files);
|
||||
$.ajax({
|
||||
url: this.PHP+'?data=upload-json',
|
||||
type: 'post',
|
||||
data: fd,
|
||||
contentType: false,
|
||||
processData: false,
|
||||
success: function(ares){
|
||||
if (ares.result != 0){
|
||||
this.data_query('detail-opd');
|
||||
FoniaJS.showInfo('Sukses upload JSON!');
|
||||
$('#FileLabel').val('');
|
||||
} else {
|
||||
FoniaJS.showError(ares.message);
|
||||
}
|
||||
}.bind(this)
|
||||
});
|
||||
}.bind(this));
|
||||
}.bind(this));
|
||||
},*/
|
||||
json_show: function(){
|
||||
var txt = '<div class="card mt-2 mb-1"><div class="card-body"><div class="row mb-1"><div class="col"><textarea class="form-control" id="Kode_JSON" name="Kode_JSON" rows="10" required="true"></textarea></div></div></div></div>';
|
||||
this.winJSON = FoniaJS.showWindow('JSON', 'Upload data JSON', txt, 600, '_,WK,WS', function(){
|
||||
$('#winJSON').find('#butWSave').click(function(){this.json_simpan();}.bind(this));
|
||||
$('#Kode_JSON').focus();
|
||||
}.bind(this));
|
||||
},
|
||||
json_simpan: function(){
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-json','Kode_JSON'],
|
||||
onSuccess: function(ares){
|
||||
if (ares.result != 0){
|
||||
this.data_query('detail-opd');
|
||||
FoniaJS.showInfo('Sukses upload JSON!');
|
||||
} else {
|
||||
FoniaJS.showError(ares.message);
|
||||
}
|
||||
FoniaJS.closeWindow(this.winJSON);
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
sipd_detail: function(){
|
||||
new Request({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-sipd'],
|
||||
onSuccess: function(txt){
|
||||
this.winSIPD = FoniaJS.showWindow('SIPD', 'Konfigurasi SIPD', txt, 400, '_,WK,WS', function(){
|
||||
$('#winSIPD').find('#butWSave').click(function(){this.sipd_simpan();}.bind(this));
|
||||
}.bind(this));
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
sipd_simpan: function(){
|
||||
new Request({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-sipd','Kode_Token','Kode_Acak'],
|
||||
onSuccess: function(){
|
||||
FoniaJS.showInfo('Proses simpan data sukses!');
|
||||
FoniaJS.closeWindow(this.winSIPD);
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
data_query: function(tipe, mode){
|
||||
if (tipe=="detail-opd"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-opd','Cari_OPD']
|
||||
}).send();
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
@@ -0,0 +1,155 @@
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/js/sim/renstra_sasaran.js
|
||||
Desc. : JS - Simulasi Sasaran Renstra ke SIPD Kemendagri
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : March 30th, 2022.
|
||||
|
||||
(c) 2011 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
var RenstraSasaranJS = {
|
||||
PHP: '',
|
||||
KODE: '',
|
||||
|
||||
loading: function(){
|
||||
$('#Cari_OPD').keydown(function(e){
|
||||
var key = e.keyCode || e.which || 0;
|
||||
if (key==13 && e.target.value!='') this.data_query('detail-opd');
|
||||
}.bind(this));
|
||||
$('#butSearch').click(function(e){
|
||||
this.data_query('detail-opd');
|
||||
}.bind(this));
|
||||
$('#butAll').click(function(){
|
||||
$('#Cari_OPD').val('');
|
||||
this.data_query('detail-opd');
|
||||
}.bind(this));
|
||||
$('#butSIPD').click(function(){
|
||||
this.sipd_detail();
|
||||
}.bind(this));
|
||||
$('#opsiUpload').click(function(){
|
||||
this.json_show();
|
||||
}.bind(this));
|
||||
$('#opsiTambahSasar').click(function(){
|
||||
this.kode_tambah_sasar();
|
||||
}.bind(this));
|
||||
$('#opsiUbahSasar').click(function(){
|
||||
this.kode_ubah_sasar();
|
||||
}.bind(this));
|
||||
$('#opsiTambahIndi').click(function(){
|
||||
this.kode_tambah_indi();
|
||||
}.bind(this));
|
||||
$('#opsiUbahIndi').click(function(){
|
||||
this.kode_ubah_indi();
|
||||
}.bind(this));
|
||||
this.data_query('detail-opd');
|
||||
FoniaJS.setFocus('#Cari_OPD');
|
||||
},
|
||||
|
||||
kode_preview: function(acell, cmd){
|
||||
if (acell) $('#OPDID').val(acell[0]);
|
||||
var dprint = new cSIMULATOR(this.PHP);
|
||||
dprint.add_param("data", cmd);
|
||||
dprint.add_param("OPDID");
|
||||
dprint.doPreview();
|
||||
},
|
||||
|
||||
kode_tambah_sasar: function(acell){
|
||||
this.kode_preview(acell, 'kode-tambah-sasar');
|
||||
},
|
||||
kode_ubah_sasar: function(acell){
|
||||
this.kode_preview(acell, 'kode-ubah-sasar');
|
||||
},
|
||||
kode_tambah_indi: function(acell){
|
||||
this.kode_preview(acell, 'kode-tambah-indi');
|
||||
},
|
||||
kode_ubah_indi: function(acell){
|
||||
this.kode_preview(acell, 'kode-ubah-indi');
|
||||
},
|
||||
|
||||
/*show_upload: function(){
|
||||
var txt = '<div class="card mt-2 mb-1"><div class="card-body"><div class="col-12 px-0"><div class="input-group"><label class="input-group-btn"><span class="btn btn-primary shadow-none">Browse…<input type="file" name="FileDoku" id="FileDoku" accept="application/json" style="display:none;"></span></label><input type="text" id="FileLabel" class="form-control" readonly></div></div></div></div>';
|
||||
this.winDoku = FoniaJS.showWindow('Doku', 'Upload data JSON', txt, 600, '_,WK', function(){
|
||||
$('#FileDoku').change(function(){
|
||||
var label = $('#FileDoku').val().replace(/\\/g, '/').replace(/.*\//, ''),
|
||||
fd = new FormData(),
|
||||
files = $('#FileDoku')[0].files[0];
|
||||
$('#FileLabel').val(label);
|
||||
fd.append('file', files);
|
||||
$.ajax({
|
||||
url: this.PHP+'?data=upload-json',
|
||||
type: 'post',
|
||||
data: fd,
|
||||
contentType: false,
|
||||
processData: false,
|
||||
success: function(ares){
|
||||
if (ares.result != 0){
|
||||
this.data_query('detail-opd');
|
||||
FoniaJS.showInfo('Sukses upload JSON!');
|
||||
$('#FileLabel').val('');
|
||||
} else {
|
||||
FoniaJS.showError(ares.message);
|
||||
}
|
||||
}.bind(this)
|
||||
});
|
||||
}.bind(this));
|
||||
}.bind(this));
|
||||
},*/
|
||||
json_show: function(){
|
||||
var txt = '<div class="card mt-2 mb-1"><div class="card-body"><div class="row mb-1"><div class="col"><textarea class="form-control" id="Kode_JSON" name="Kode_JSON" rows="10" required="true"></textarea></div></div></div></div>';
|
||||
this.winJSON = FoniaJS.showWindow('JSON', 'Upload data JSON', txt, 600, '_,WK,WS', function(){
|
||||
$('#winJSON').find('#butWSave').click(function(){this.json_simpan();}.bind(this));
|
||||
$('#Kode_JSON').focus();
|
||||
}.bind(this));
|
||||
},
|
||||
json_simpan: function(){
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-json','Kode_JSON'],
|
||||
onSuccess: function(ares){
|
||||
if (ares.result != 0){
|
||||
this.data_query('detail-opd');
|
||||
FoniaJS.showInfo('Sukses upload JSON!');
|
||||
} else {
|
||||
FoniaJS.showError(ares.message);
|
||||
}
|
||||
FoniaJS.closeWindow(this.winJSON);
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
sipd_detail: function(){
|
||||
new Request({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-sipd'],
|
||||
onSuccess: function(txt){
|
||||
this.winSIPD = FoniaJS.showWindow('SIPD', 'Konfigurasi SIPD', txt, 400, '_,WK,WS', function(){
|
||||
$('#winSIPD').find('#butWSave').click(function(){this.sipd_simpan();}.bind(this));
|
||||
}.bind(this));
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
sipd_simpan: function(){
|
||||
new Request({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-sipd','Kode_Token','Kode_Acak'],
|
||||
onSuccess: function(){
|
||||
FoniaJS.showInfo('Proses simpan data sukses!');
|
||||
FoniaJS.closeWindow(this.winSIPD);
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
data_query: function(tipe, mode){
|
||||
if (tipe=="detail-opd"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-opd','Cari_OPD']
|
||||
}).send();
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
@@ -0,0 +1,155 @@
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/js/sim/renstra_tujuan.js
|
||||
Desc. : JS - Simulasi Tujuan Renstra ke SIPD Kemendagri
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : March 30th, 2022.
|
||||
|
||||
(c) 2011 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
var RenstraTujuanJS = {
|
||||
PHP: '',
|
||||
KODE: '',
|
||||
|
||||
loading: function(){
|
||||
$('#Cari_OPD').keydown(function(e){
|
||||
var key = e.keyCode || e.which || 0;
|
||||
if (key==13 && e.target.value!='') this.data_query('detail-opd');
|
||||
}.bind(this));
|
||||
$('#butSearch').click(function(e){
|
||||
this.data_query('detail-opd');
|
||||
}.bind(this));
|
||||
$('#butAll').click(function(){
|
||||
$('#Cari_OPD').val('');
|
||||
this.data_query('detail-opd');
|
||||
}.bind(this));
|
||||
$('#butSIPD').click(function(){
|
||||
this.sipd_detail();
|
||||
}.bind(this));
|
||||
$('#opsiUpload').click(function(){
|
||||
this.json_show();
|
||||
}.bind(this));
|
||||
$('#opsiTambahTuj').click(function(){
|
||||
this.kode_tambah_tuj();
|
||||
}.bind(this));
|
||||
$('#opsiUbahTuj').click(function(){
|
||||
this.kode_ubah_tuj();
|
||||
}.bind(this));
|
||||
$('#opsiTambahIndi').click(function(){
|
||||
this.kode_tambah_indi();
|
||||
}.bind(this));
|
||||
$('#opsiUbahIndi').click(function(){
|
||||
this.kode_ubah_indi();
|
||||
}.bind(this));
|
||||
this.data_query('detail-opd');
|
||||
FoniaJS.setFocus('#Cari_OPD');
|
||||
},
|
||||
|
||||
kode_preview: function(acell, cmd){
|
||||
if (acell) $('#OPDID').val(acell[0]);
|
||||
var dprint = new cSIMULATOR(this.PHP);
|
||||
dprint.add_param("data", cmd);
|
||||
dprint.add_param("OPDID");
|
||||
dprint.doPreview();
|
||||
},
|
||||
|
||||
kode_tambah_tuj: function(acell){
|
||||
this.kode_preview(acell, 'kode-tambah-tuj');
|
||||
},
|
||||
kode_ubah_tuj: function(acell){
|
||||
this.kode_preview(acell, 'kode-ubah-tuj');
|
||||
},
|
||||
kode_tambah_indi: function(acell){
|
||||
this.kode_preview(acell, 'kode-tambah-indi');
|
||||
},
|
||||
kode_ubah_indi: function(acell){
|
||||
this.kode_preview(acell, 'kode-ubah-indi');
|
||||
},
|
||||
|
||||
/*show_upload: function(){
|
||||
var txt = '<div class="card mt-2 mb-1"><div class="card-body"><div class="col-12 px-0"><div class="input-group"><label class="input-group-btn"><span class="btn btn-primary shadow-none">Browse…<input type="file" name="FileDoku" id="FileDoku" accept="application/json" style="display:none;"></span></label><input type="text" id="FileLabel" class="form-control" readonly></div></div></div></div>';
|
||||
this.winDoku = FoniaJS.showWindow('Doku', 'Upload data JSON', txt, 600, '_,WK', function(){
|
||||
$('#FileDoku').change(function(){
|
||||
var label = $('#FileDoku').val().replace(/\\/g, '/').replace(/.*\//, ''),
|
||||
fd = new FormData(),
|
||||
files = $('#FileDoku')[0].files[0];
|
||||
$('#FileLabel').val(label);
|
||||
fd.append('file', files);
|
||||
$.ajax({
|
||||
url: this.PHP+'?data=upload-json',
|
||||
type: 'post',
|
||||
data: fd,
|
||||
contentType: false,
|
||||
processData: false,
|
||||
success: function(ares){
|
||||
if (ares.result != 0){
|
||||
this.data_query('detail-opd');
|
||||
FoniaJS.showInfo('Sukses upload JSON!');
|
||||
$('#FileLabel').val('');
|
||||
} else {
|
||||
FoniaJS.showError(ares.message);
|
||||
}
|
||||
}.bind(this)
|
||||
});
|
||||
}.bind(this));
|
||||
}.bind(this));
|
||||
},*/
|
||||
json_show: function(){
|
||||
var txt = '<div class="card mt-2 mb-1"><div class="card-body"><div class="row mb-1"><div class="col"><textarea class="form-control" id="Kode_JSON" name="Kode_JSON" rows="10" required="true"></textarea></div></div></div></div>';
|
||||
this.winJSON = FoniaJS.showWindow('JSON', 'Upload data JSON', txt, 600, '_,WK,WS', function(){
|
||||
$('#winJSON').find('#butWSave').click(function(){this.json_simpan();}.bind(this));
|
||||
$('#Kode_JSON').focus();
|
||||
}.bind(this));
|
||||
},
|
||||
json_simpan: function(){
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-json','Kode_JSON'],
|
||||
onSuccess: function(ares){
|
||||
if (ares.result != 0){
|
||||
this.data_query('detail-opd');
|
||||
FoniaJS.showInfo('Sukses upload JSON!');
|
||||
} else {
|
||||
FoniaJS.showError(ares.message);
|
||||
}
|
||||
FoniaJS.closeWindow(this.winJSON);
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
sipd_detail: function(){
|
||||
new Request({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-sipd'],
|
||||
onSuccess: function(txt){
|
||||
this.winSIPD = FoniaJS.showWindow('SIPD', 'Konfigurasi SIPD', txt, 400, '_,WK,WS', function(){
|
||||
$('#winSIPD').find('#butWSave').click(function(){this.sipd_simpan();}.bind(this));
|
||||
}.bind(this));
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
sipd_simpan: function(){
|
||||
new Request({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-sipd','Kode_Token','Kode_Acak'],
|
||||
onSuccess: function(){
|
||||
FoniaJS.showInfo('Proses simpan data sukses!');
|
||||
FoniaJS.closeWindow(this.winSIPD);
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
data_query: function(tipe, mode){
|
||||
if (tipe=="detail-opd"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-opd','Cari_OPD']
|
||||
}).send();
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
@@ -0,0 +1,148 @@
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/js/sim/rkpd_awal.js
|
||||
Desc. : JS - Simulasi Push RKPD Awal ke SIPD Kemendagri
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : April 1st, 2022.
|
||||
|
||||
(c) 2011 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
var RKPDAwalJS = {
|
||||
PHP: '',
|
||||
KODE: '',
|
||||
|
||||
loading: function(){
|
||||
$('#butOPD').click(function(){
|
||||
if ($('#OPDID').val()>0) this.show_hide(1);
|
||||
}.bind(this));
|
||||
$('#butSIPD').click(function(){
|
||||
this.sipd_detail();
|
||||
}.bind(this));
|
||||
$('#opsiUpload').click(function(){
|
||||
this.json_show();
|
||||
}.bind(this));
|
||||
this.show_hide(1);
|
||||
},
|
||||
|
||||
show_hide: function(no){
|
||||
$('#divOPD').css('display', 'none'); $('#butOPD').removeClass('btn-secondary').addClass('btn-info');
|
||||
$('#divPROG').css('display', 'none');
|
||||
if (no == 1) {
|
||||
$('#OPDID').val(0);
|
||||
$('#ProgID').val(0);
|
||||
$('#Nama_OPD').val('');
|
||||
}
|
||||
if (no <= 1) {
|
||||
$('#butOPD').removeClass('btn-info').addClass('btn-secondary');
|
||||
}
|
||||
if (no == 1) { $('#divOPD').css('display', ''); this.data_query('tabel-opd'); }
|
||||
if (no == 2) { $('#divPROG').css('display', ''); this.data_query('tabel-prog'); }
|
||||
},
|
||||
|
||||
opd_select: function(acell){
|
||||
$('#OPDID').val(acell[0]);
|
||||
$('#Nama_OPD').val(acell[1]);
|
||||
this.show_hide(2);
|
||||
},
|
||||
|
||||
kode_preview: function(cmd){
|
||||
var dprint = new cSIMULATOR(this.PHP);
|
||||
dprint.add_param("data", cmd);
|
||||
dprint.add_param("OPDID");
|
||||
dprint.add_param("ProgID");
|
||||
dprint.doPreview();
|
||||
},
|
||||
|
||||
kode_tambah_sub_o: function(acell){
|
||||
$('#OPDID').val(acell[0]);
|
||||
$('#ProgID').val(0);
|
||||
this.kode_preview('kode-tambah-sub');
|
||||
},
|
||||
kode_ubah_sub_o: function(acell){
|
||||
$('#OPDID').val(acell[0]);
|
||||
$('#ProgID').val(0);
|
||||
this.kode_preview('kode-ubah-sub');
|
||||
},
|
||||
kode_ubah_keg_o: function(acell){
|
||||
$('#OPDID').val(acell[0]);
|
||||
$('#ProgID').val(0);
|
||||
this.kode_preview('kode-ubah-keg');
|
||||
},
|
||||
kode_tambah_sub: function(acell){
|
||||
$('#ProgID').val(acell[0]);
|
||||
this.kode_preview('kode-tambah-sub');
|
||||
},
|
||||
kode_ubah_sub: function(acell){
|
||||
$('#ProgID').val(acell[0]);
|
||||
this.kode_preview('kode-ubah-sub');
|
||||
},
|
||||
kode_ubah_keg: function(acell){
|
||||
$('#ProgID').val(acell[0]);
|
||||
this.kode_preview('kode-ubah-keg');
|
||||
},
|
||||
|
||||
json_show: function(){
|
||||
var txt = '<div class="card mt-2 mb-1"><div class="card-body"><div class="row mb-1"><div class="col"><textarea class="form-control" id="Kode_JSON" name="Kode_JSON" rows="10" required="true"></textarea></div></div></div></div>';
|
||||
this.winJSON = FoniaJS.showWindow('JSON', 'Upload data JSON', txt, 600, '_,WK,WS', function(){
|
||||
$('#winJSON').find('#butWSave').click(function(){this.json_simpan();}.bind(this));
|
||||
$('#Kode_JSON').focus();
|
||||
}.bind(this));
|
||||
},
|
||||
json_simpan: function(){
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-json','Kode_JSON'],
|
||||
onSuccess: function(ares){
|
||||
if (ares.result != 0){
|
||||
this.show_hide(2);
|
||||
this.show_hide(1);
|
||||
FoniaJS.showInfo('Sukses upload JSON!');
|
||||
} else {
|
||||
FoniaJS.showError(ares.message);
|
||||
}
|
||||
FoniaJS.closeWindow(this.winJSON);
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
sipd_detail: function(){
|
||||
new Request({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-sipd'],
|
||||
onSuccess: function(txt){
|
||||
this.winSIPD = FoniaJS.showWindow('SIPD', 'Konfigurasi SIPD', txt, 400, '_,WK,WS', function(){
|
||||
$('#winSIPD').find('#butWSave').click(function(){this.sipd_simpan();}.bind(this));
|
||||
}.bind(this));
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
sipd_simpan: function(){
|
||||
new Request({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-sipd','Kode_Token','Kode_Acak'],
|
||||
onSuccess: function(){
|
||||
FoniaJS.showInfo('Proses simpan data sukses!');
|
||||
FoniaJS.closeWindow(this.winSIPD);
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
data_query: function(tipe, mode){
|
||||
if (tipe=="tabel-opd"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=tabel-opd']
|
||||
}).send();
|
||||
} else if (tipe=="tabel-prog"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=tabel-prog','OPDID']
|
||||
}).send();
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
@@ -0,0 +1,127 @@
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/js/sim/rpjmd_program.js
|
||||
Desc. : JS - Simulasi Program RPJMD ke SIPD Kemendagri
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : March 30th, 2022.
|
||||
|
||||
(c) 2011 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
var RPJMDProgramJS = {
|
||||
PHP: '',
|
||||
KODE: '',
|
||||
|
||||
loading: function(){
|
||||
$('#Cari_OPD').keydown(function(e){
|
||||
var key = e.keyCode || e.which || 0;
|
||||
if (key==13 && e.target.value!='') this.data_query('detail-opd');
|
||||
}.bind(this));
|
||||
$('#butSearch').click(function(e){
|
||||
this.data_query('detail-opd');
|
||||
}.bind(this));
|
||||
$('#butAll').click(function(){
|
||||
$('#Cari_OPD').val('');
|
||||
this.data_query('detail-opd');
|
||||
}.bind(this));
|
||||
$('#butSIPD').click(function(){
|
||||
this.sipd_detail();
|
||||
}.bind(this));
|
||||
$('#opsiUpload').click(function(){
|
||||
this.json_show();
|
||||
}.bind(this));
|
||||
$('#opsiTambahProg').click(function(){
|
||||
this.kode_tambah_prog();
|
||||
}.bind(this));
|
||||
$('#opsiUbahProg').click(function(){
|
||||
this.kode_ubah_prog();
|
||||
}.bind(this));
|
||||
$('#opsiTambahIndi').click(function(){
|
||||
this.kode_tambah_indi();
|
||||
}.bind(this));
|
||||
$('#opsiUbahIndi').click(function(){
|
||||
this.kode_ubah_indi();
|
||||
}.bind(this));
|
||||
this.data_query('detail-opd');
|
||||
FoniaJS.setFocus('#Cari_OPD');
|
||||
},
|
||||
|
||||
kode_preview: function(acell, cmd){
|
||||
if (acell) $('#OPDID').val(acell[0]);
|
||||
var dprint = new cSIMULATOR(this.PHP);
|
||||
dprint.add_param("data", cmd);
|
||||
dprint.add_param("OPDID");
|
||||
dprint.doPreview();
|
||||
},
|
||||
|
||||
kode_tambah_prog: function(acell){
|
||||
this.kode_preview(acell, 'kode-tambah-prog');
|
||||
},
|
||||
kode_ubah_prog: function(acell){
|
||||
this.kode_preview(acell, 'kode-ubah-prog');
|
||||
},
|
||||
kode_tambah_indi: function(acell){
|
||||
this.kode_preview(acell, 'kode-tambah-indi');
|
||||
},
|
||||
kode_ubah_indi: function(acell){
|
||||
this.kode_preview(acell, 'kode-ubah-indi');
|
||||
},
|
||||
|
||||
json_show: function(){
|
||||
var txt = '<div class="card mt-2 mb-1"><div class="card-body"><div class="row mb-1"><div class="col"><textarea class="form-control" id="Kode_JSON" name="Kode_JSON" rows="10" required="true"></textarea></div></div></div></div>';
|
||||
this.winJSON = FoniaJS.showWindow('JSON', 'Upload data JSON', txt, 600, '_,WK,WS', function(){
|
||||
$('#winJSON').find('#butWSave').click(function(){this.json_simpan();}.bind(this));
|
||||
$('#Kode_JSON').focus();
|
||||
}.bind(this));
|
||||
},
|
||||
json_simpan: function(){
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-json','Kode_JSON'],
|
||||
onSuccess: function(ares){
|
||||
if (ares.result != 0){
|
||||
this.data_query('detail-opd');
|
||||
FoniaJS.showInfo('Sukses upload JSON!');
|
||||
} else {
|
||||
FoniaJS.showError(ares.message);
|
||||
}
|
||||
FoniaJS.closeWindow(this.winJSON);
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
sipd_detail: function(){
|
||||
new Request({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-sipd'],
|
||||
onSuccess: function(txt){
|
||||
this.winSIPD = FoniaJS.showWindow('SIPD', 'Konfigurasi SIPD', txt, 400, '_,WK,WS', function(){
|
||||
$('#winSIPD').find('#butWSave').click(function(){this.sipd_simpan();}.bind(this));
|
||||
}.bind(this));
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
sipd_simpan: function(){
|
||||
new Request({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-sipd','Kode_Token','Kode_Acak'],
|
||||
onSuccess: function(){
|
||||
FoniaJS.showInfo('Proses simpan data sukses!');
|
||||
FoniaJS.closeWindow(this.winSIPD);
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
data_query: function(tipe, mode){
|
||||
if (tipe=="detail-opd"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-opd','Cari_OPD']
|
||||
}).send();
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
@@ -0,0 +1,127 @@
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/js/sim/rpjmd_sasaran.js
|
||||
Desc. : JS - Simulasi Sasaran RPJMD ke SIPD Kemendagri
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : April 8th, 2022.
|
||||
|
||||
(c) 2011 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
var RPJMDSasaranJS = {
|
||||
PHP: '',
|
||||
KODE: '',
|
||||
|
||||
loading: function(){
|
||||
$('#Cari_Sasar').keydown(function(e){
|
||||
var key = e.keyCode || e.which || 0;
|
||||
if (key==13 && e.target.value!='') this.data_query('detail-sasar');
|
||||
}.bind(this));
|
||||
$('#butSearch').click(function(e){
|
||||
this.data_query('detail-sasar');
|
||||
}.bind(this));
|
||||
$('#butAll').click(function(){
|
||||
$('#Cari_Sasar').val('');
|
||||
this.data_query('detail-sasar');
|
||||
}.bind(this));
|
||||
$('#butSIPD').click(function(){
|
||||
this.sipd_detail();
|
||||
}.bind(this));
|
||||
$('#opsiUpload').click(function(){
|
||||
this.json_show();
|
||||
}.bind(this));
|
||||
$('#opsiTambahSasar').click(function(){
|
||||
this.kode_tambah_sasar();
|
||||
}.bind(this));
|
||||
$('#opsiUbahSasar').click(function(){
|
||||
this.kode_ubah_sasar();
|
||||
}.bind(this));
|
||||
$('#opsiTambahIndi').click(function(){
|
||||
this.kode_tambah_indi();
|
||||
}.bind(this));
|
||||
$('#opsiUbahIndi').click(function(){
|
||||
this.kode_ubah_indi();
|
||||
}.bind(this));
|
||||
this.data_query('detail-sasar');
|
||||
FoniaJS.setFocus('#Cari_Sasar');
|
||||
},
|
||||
|
||||
kode_preview: function(acell, cmd){
|
||||
if (acell) $('#RD_SASARID').val(acell[0]);
|
||||
var dprint = new cSIMULATOR(this.PHP);
|
||||
dprint.add_param("data", cmd);
|
||||
dprint.add_param("RD_SASARID");
|
||||
dprint.doPreview();
|
||||
},
|
||||
|
||||
kode_tambah_sasar: function(acell){
|
||||
this.kode_preview(acell, 'kode-tambah-sasar');
|
||||
},
|
||||
kode_ubah_sasar: function(acell){
|
||||
this.kode_preview(acell, 'kode-ubah-sasar');
|
||||
},
|
||||
kode_tambah_indi: function(acell){
|
||||
this.kode_preview(acell, 'kode-tambah-indi');
|
||||
},
|
||||
kode_ubah_indi: function(acell){
|
||||
this.kode_preview(acell, 'kode-ubah-indi');
|
||||
},
|
||||
|
||||
json_show: function(){
|
||||
var txt = '<div class="card mt-2 mb-1"><div class="card-body"><div class="row mb-1"><div class="col"><textarea class="form-control" id="Kode_JSON" name="Kode_JSON" rows="10" required="true"></textarea></div></div></div></div>';
|
||||
this.winJSON = FoniaJS.showWindow('JSON', 'Upload data JSON', txt, 600, '_,WK,WS', function(){
|
||||
$('#winJSON').find('#butWSave').click(function(){this.json_simpan();}.bind(this));
|
||||
$('#Kode_JSON').focus();
|
||||
}.bind(this));
|
||||
},
|
||||
json_simpan: function(){
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-json','Kode_JSON'],
|
||||
onSuccess: function(ares){
|
||||
if (ares.result != 0){
|
||||
this.data_query('detail-opd');
|
||||
FoniaJS.showInfo('Sukses upload JSON!');
|
||||
} else {
|
||||
FoniaJS.showError(ares.message);
|
||||
}
|
||||
FoniaJS.closeWindow(this.winJSON);
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
sipd_detail: function(){
|
||||
new Request({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-sipd'],
|
||||
onSuccess: function(txt){
|
||||
this.winSIPD = FoniaJS.showWindow('SIPD', 'Konfigurasi SIPD', txt, 400, '_,WK,WS', function(){
|
||||
$('#winSIPD').find('#butWSave').click(function(){this.sipd_simpan();}.bind(this));
|
||||
}.bind(this));
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
sipd_simpan: function(){
|
||||
new Request({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-sipd','Kode_Token','Kode_Acak'],
|
||||
onSuccess: function(){
|
||||
FoniaJS.showInfo('Proses simpan data sukses!');
|
||||
FoniaJS.closeWindow(this.winSIPD);
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
data_query: function(tipe, mode){
|
||||
if (tipe=="detail-sasar"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-sasar','Cari_Sasar']
|
||||
}).send();
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
@@ -0,0 +1,127 @@
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/js/sim/rpjmd_tujuan.js
|
||||
Desc. : JS - Simulasi Tujuan RPJMD ke SIPD Kemendagri
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : April 8th, 2022.
|
||||
|
||||
(c) 2011 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
var RPJMDTujuanJS = {
|
||||
PHP: '',
|
||||
KODE: '',
|
||||
|
||||
loading: function(){
|
||||
$('#Cari_Tujuan').keydown(function(e){
|
||||
var key = e.keyCode || e.which || 0;
|
||||
if (key==13 && e.target.value!='') this.data_query('detail-tujuan');
|
||||
}.bind(this));
|
||||
$('#butSearch').click(function(e){
|
||||
this.data_query('detail-tujuan');
|
||||
}.bind(this));
|
||||
$('#butAll').click(function(){
|
||||
$('#Cari_Tujuan').val('');
|
||||
this.data_query('detail-tujuan');
|
||||
}.bind(this));
|
||||
$('#butSIPD').click(function(){
|
||||
this.sipd_detail();
|
||||
}.bind(this));
|
||||
$('#opsiUpload').click(function(){
|
||||
this.json_show();
|
||||
}.bind(this));
|
||||
$('#opsiTambahTujuan').click(function(){
|
||||
this.kode_tambah_tujuan();
|
||||
}.bind(this));
|
||||
$('#opsiUbahTujuan').click(function(){
|
||||
this.kode_ubah_tujuan();
|
||||
}.bind(this));
|
||||
$('#opsiTambahIndi').click(function(){
|
||||
this.kode_tambah_indi();
|
||||
}.bind(this));
|
||||
$('#opsiUbahIndi').click(function(){
|
||||
this.kode_ubah_indi();
|
||||
}.bind(this));
|
||||
this.data_query('detail-tujuan');
|
||||
FoniaJS.setFocus('#Cari_Tujuan');
|
||||
},
|
||||
|
||||
kode_preview: function(acell, cmd){
|
||||
if (acell) $('#RD_TUJID').val(acell[0]);
|
||||
var dprint = new cSIMULATOR(this.PHP);
|
||||
dprint.add_param("data", cmd);
|
||||
dprint.add_param("RD_TUJID");
|
||||
dprint.doPreview();
|
||||
},
|
||||
|
||||
kode_tambah_tujuan: function(acell){
|
||||
this.kode_preview(acell, 'kode-tambah-tujuan');
|
||||
},
|
||||
kode_ubah_tujuan: function(acell){
|
||||
this.kode_preview(acell, 'kode-ubah-tujuan');
|
||||
},
|
||||
kode_tambah_indi: function(acell){
|
||||
this.kode_preview(acell, 'kode-tambah-indi');
|
||||
},
|
||||
kode_ubah_indi: function(acell){
|
||||
this.kode_preview(acell, 'kode-ubah-indi');
|
||||
},
|
||||
|
||||
json_show: function(){
|
||||
var txt = '<div class="card mt-2 mb-1"><div class="card-body"><div class="row mb-1"><div class="col"><textarea class="form-control" id="Kode_JSON" name="Kode_JSON" rows="10" required="true"></textarea></div></div></div></div>';
|
||||
this.winJSON = FoniaJS.showWindow('JSON', 'Upload data JSON', txt, 600, '_,WK,WS', function(){
|
||||
$('#winJSON').find('#butWSave').click(function(){this.json_simpan();}.bind(this));
|
||||
$('#Kode_JSON').focus();
|
||||
}.bind(this));
|
||||
},
|
||||
json_simpan: function(){
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-json','Kode_JSON'],
|
||||
onSuccess: function(ares){
|
||||
if (ares.result != 0){
|
||||
this.data_query('detail-opd');
|
||||
FoniaJS.showInfo('Sukses upload JSON!');
|
||||
} else {
|
||||
FoniaJS.showError(ares.message);
|
||||
}
|
||||
FoniaJS.closeWindow(this.winJSON);
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
sipd_detail: function(){
|
||||
new Request({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-sipd'],
|
||||
onSuccess: function(txt){
|
||||
this.winSIPD = FoniaJS.showWindow('SIPD', 'Konfigurasi SIPD', txt, 400, '_,WK,WS', function(){
|
||||
$('#winSIPD').find('#butWSave').click(function(){this.sipd_simpan();}.bind(this));
|
||||
}.bind(this));
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
sipd_simpan: function(){
|
||||
new Request({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=simpan-sipd','Kode_Token','Kode_Acak'],
|
||||
onSuccess: function(){
|
||||
FoniaJS.showInfo('Proses simpan data sukses!');
|
||||
FoniaJS.closeWindow(this.winSIPD);
|
||||
}.bind(this)
|
||||
}).send();
|
||||
},
|
||||
|
||||
data_query: function(tipe, mode){
|
||||
if (tipe=="detail-tujuan"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=detail-tujuan','Cari_Tujuan']
|
||||
}).send();
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
@@ -0,0 +1,55 @@
|
||||
/*******************************************************************
|
||||
|
||||
Module : /apps/js/sys/chpasswd.js
|
||||
Desc. : JS - Perubahan Password Operator
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : December 7th, 2008.
|
||||
Last Modified : April 25th, 2020.
|
||||
|
||||
(c) 2008 - 2020, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
var SYSChpasswdJS = {
|
||||
PHP: '',
|
||||
KODE: '',
|
||||
|
||||
loading: function(){
|
||||
$('#butSave').click(function(){this.proses_save();}.bind(this));
|
||||
FoniaJS.setFocus('#LPass');
|
||||
},
|
||||
|
||||
proses_save: function(){
|
||||
if ($("#LPass").val()=="") {
|
||||
FoniaJS.showInfo("Silakan masukkan password lama Anda!");
|
||||
FoniaJS.setFocus("#LPass");
|
||||
return false;
|
||||
} else if ($("#BPass1").val()=="") {
|
||||
FoniaJS.showInfo("Silakan masukkan password baru 1 Anda!");
|
||||
FoniaJS.setFocus("#BPass1");
|
||||
return false;
|
||||
} else if ($("#BPass2").val()=="") {
|
||||
FoniaJS.showInfo("Silakan masukkan password baru 2 Anda!");
|
||||
FoniaJS.setFocus("#BPass2");
|
||||
return false;
|
||||
} else if ($("#BPass1").val()!=$("#BPass2").val()) {
|
||||
FoniaJS.showInfo("Password baru 1 dan 2 Anda tidak sama!");
|
||||
FoniaJS.setFocus("#BPass1");
|
||||
return false;
|
||||
}
|
||||
|
||||
new Request.JSON({
|
||||
url: this.PHP,
|
||||
sendParam: ['data=chpasswd','LPass','BPass1','BPass2'],
|
||||
onSuccess: function(ajson){
|
||||
if (ajson.status == true) {
|
||||
FoniaJS.showInfo(ajson.msg);
|
||||
FoniaJS.closeWindow('#win'+this.KODE);
|
||||
} else {
|
||||
FoniaJS.showError(ajson.msg);
|
||||
}
|
||||
}.bind(this)
|
||||
}).send();
|
||||
}
|
||||
|
||||
};
|
||||
@@ -0,0 +1,90 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
Module : /apps/php/api/asmas
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : January 31st, 2026.
|
||||
|
||||
(c) 2026, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
require_once(__DIR__."/../func.sippd.php");
|
||||
|
||||
use siaupheng\fonia3\Web\Param;
|
||||
|
||||
function singkron_asmas($db = null) {
|
||||
$aret = ['status' => "success", 'message' => 'Berhasil singkron data!'];
|
||||
$aasmas = [];
|
||||
|
||||
$tahun = Param::Get("tahun_anggaran", 0);
|
||||
$id_asmas = Param::Get("id_asmas", 0);
|
||||
$adata = json_decode(stripslashes(html_entity_decode($_POST['asmas'])), true);
|
||||
if ($id_asmas > 0) {
|
||||
$db->Query("SELECT * FROM para_asmas WHERE SIPD_UserID='".$id_asmas."' LIMIT 1");
|
||||
if ($db->Next()) $aasmas = $db->AllRow();
|
||||
}
|
||||
|
||||
//ambil dari db : alamat, koefisien, masalah, kamusid
|
||||
$aasmas_db = [];
|
||||
$db->Query("SELECT U.UsulanLID,MD5(CONCAT(IFNULL(J.N_Jalan,U.Lokasi),' RT. ',U.RT,', ',U.Dusun,U.Masalah,IFNULL(K.KamusID,0))) Kode_MD5 FROM (SELECT * FROM mus_usulan WHERE Tahun='".$tahun."' AND KecID='".$aasmas['KecID']."' AND KelID='".$aasmas['KelID']."') U LEFT JOIN para_jalan J ON (J.JalanID=U.JalanID) LEFT JOIN (SELECT * FROM i_submap WHERE Tahun='".$tahun."') M ON (M.Lama_SubID=U.SubID) LEFT JOIN (SELECT * FROM mus_kamus WHERE Tahun='".$tahun."') K ON (K.OPDID=U.OPDID AND K.ProgID=M.ProgID) ORDER BY U.Kode");
|
||||
while ($db->Next()) {
|
||||
$aasmas_db[$db->Row("UsulanLID")] = $db->Row("Kode_MD5");
|
||||
}
|
||||
|
||||
// tanpa : koefisien
|
||||
foreach ($adata as $_key1 => $ausul) {
|
||||
$tmp_md5 = md5($ausul['alamat_teks'].$ausul['masalah'].$ausul['id_kamus']);
|
||||
foreach ($aasmas_db as $id_usul => $k_md5) {
|
||||
if ($tmp_md5 === $k_md5) {
|
||||
fastUpdate("mus_usulan", ['SIPD_UsulanID'=>$ausul['id_usulan']], ['UsulanLID'=>$id_usul]);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return $aret;
|
||||
}
|
||||
|
||||
function ambil_asmas($db = null) {
|
||||
$aret = ['status' => "success", 'message' => 'Berhasil mendapatkan data!', 'action' => $_POST['action'], 'run' => $_POST['run'], 'data' => []];
|
||||
$aasmas = [];
|
||||
|
||||
$tahun = Param::Get("tahun_anggaran", 0);
|
||||
$id_asmas = Param::Get("id_asmas", 0);
|
||||
if ($id_asmas > 0) {
|
||||
$db->Query("SELECT * FROM para_asmas WHERE SIPD_UserID='".$id_asmas."' LIMIT 1");
|
||||
if ($db->Next()) $aasmas = $db->AllRow();
|
||||
}
|
||||
|
||||
$data_asmas = [];
|
||||
$tsql = (count($aasmas)==0) ? "" : " AND KecID='".$aasmas['KecID']."' AND KelID='".$aasmas['KelID']."'";
|
||||
$db->Query("SELECT U.Kode,U.Masalah,M.ProgID,M.Lama_ProgID,O.SIPD_Unit,O.N_OPD,K.KamusID,K.Uraian N_Kamus,K.Bidu N_Bidu,D.SIPD_DESA,D.SIPD_KEC,CONCAT(IFNULL(J.N_Jalan,U.Lokasi),' RT. ',U.RT,', ',U.Dusun) Alamat,U.Volume,S.N_Satuan,K.IsuID,U.SIPD_UsulanID FROM (SELECT OPDID,SubID,KelID,JalanID,Lokasi,RT,Dusun,Masalah,Volume,SatuanID,Kode,SIPD_UsulanID FROM mus_usulan WHERE Tahun='".$tahun."'".$tsql.") U LEFT JOIN para_jalan J ON (J.JalanID=U.JalanID) LEFT JOIN (SELECT * FROM i_submap WHERE Tahun='".$tahun."') M ON (M.Lama_SubID=U.SubID) LEFT JOIN (SELECT * FROM mus_kamus WHERE Tahun='".$tahun."') K ON (K.OPDID=U.OPDID AND K.ProgID=M.ProgID) LEFT JOIN vi_para_desa D ON (D.DesaID=U.KelID) LEFT JOIN para90_opd O ON (O.OPDID=U.OPDID) LEFT JOIN para_satuan S ON (U.SatuanID=S.SatuanID) ORDER BY U.Kode");
|
||||
while ($db->Next()) {
|
||||
$data_asmas[] = [
|
||||
'kode' => $db->Row("Kode"),
|
||||
'id_usulan' => $db->Row("SIPD_UsulanID"),
|
||||
'id_kamus' => $db->Row("KamusID"),
|
||||
'nama_kamus' => $db->Row("N_Kamus"),
|
||||
'nama_bidang_urusan' => $db->Row("N_Bidu"),
|
||||
'id_program' => $db->Row("IsuID"),//update program_id
|
||||
'id_skpd' => $db->Row("SIPD_Unit"),
|
||||
'nama_skpd' => $db->Row("N_OPD"),
|
||||
'alamat_teks' => substr(str_replace("'","\'",$db->Row("Alamat")), 0, 255),
|
||||
'volume' => $db->Row("Volume"),
|
||||
'satuan' => $db->Row("N_Satuan"),
|
||||
'id_kecamatan' => $db->Row("SIPD_KEC"),
|
||||
'id_kelurahan' => $db->Row("SIPD_DESA"),
|
||||
'masalah' => substr($db->Row("Masalah"), 0, 255)
|
||||
];
|
||||
}
|
||||
|
||||
if (!empty($data_asmas)) {
|
||||
$aret['data'] = $data_asmas;
|
||||
}
|
||||
|
||||
return $aret;
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,250 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
Module : /apps/php/api/dalev.php
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : January 31st, 2026.
|
||||
|
||||
(c) 2026, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
require_once(__DIR__."/../func.sippd.php");
|
||||
|
||||
use siaupheng\fonia3\Web\Param;
|
||||
|
||||
/* DALEV SUB KEGIATAN */
|
||||
|
||||
function sinkron_dalev_subkeg($db = null) {//oke
|
||||
$aret = ['status' => "success", 'message' => 'Berhasil singkron data!'];
|
||||
|
||||
$adata = json_decode(stripslashes(html_entity_decode($_POST['subkeg'])), true);
|
||||
|
||||
foreach ($adata as $_key1 => $subkeg) {
|
||||
fastInsert("dpa_dalev_sub", $subkeg);
|
||||
}
|
||||
$db->Query("UPDATE dpa_dalev_sub A,para90_opd B SET A.OPDID=B.OPDID WHERE A.K_OPD=B.K_OPD");
|
||||
return $aret;
|
||||
}
|
||||
|
||||
function ambil_dalev_subkeg($db = null) {//oke
|
||||
$aret = ['status' => "success", 'message' => 'Berhasil mendapatkan data!', 'action' => $_POST['action'], 'run' => $_POST['run'], 'data' => []];
|
||||
$aopd = [];
|
||||
|
||||
$twulan = 1;//todo: auto from config !
|
||||
$tahun = Param::Get("tahun", 0);
|
||||
$kode_skpd = Param::Get("kode_skpd", "");
|
||||
if ($kode_skpd <> "") {
|
||||
$db->Query("SELECT * FROM para90_opd WHERE K_OPD='".$kode_skpd."' LIMIT 1");
|
||||
if ($db->Next()) $aopd = $db->AllRow();
|
||||
}
|
||||
|
||||
$data_subkeg = [];
|
||||
$tsql = (count($aopd)==0) ? "" : " AND OPDID='".$aopd['OPDID']."'";
|
||||
$db->Query("SELECT * FROM (SELECT OPDID,SubID,K_Sub,RealK_TW1,RealK_TW2,RealK_TW3,RealK_TW4 FROM dpa_sub WHERE Tahun='".$tahun."'".$tsql.") S LEFT JOIN (SELECT OPDID,SubID,Satuan_Output Satuan,Real_TW1 RealF_TW1,Real_TW2 RealF_TW2,Real_TW3 RealF_TW3,Real_TW4 RealF_TW4 FROM dpa_sub_output WHERE Tahun='".$tahun."'".$tsql.") O ON (O.OPDID=S.OPDID AND O.SubID=S.SubID) LEFT JOIN (SELECT * FROM dpa_dalev_sub WHERE Tahun='".$tahun."'".$tsql.") D ON (D.OPDID=S.OPDID AND D.K_Sub=S.K_Sub) WHERE D.SIPD_OUTCOME IS NOT NULL ORDER BY S.K_Sub");
|
||||
while ($db->Next()) {
|
||||
$_tri_kin = []; $_tri_keu = []; $_thn_kin = 0; $_thn_keu = 0;
|
||||
for ($_tri = 1; $_tri <= 4; $_tri++) {
|
||||
$_tri_kin['triwulan_kinerja_'.$_tri] = ($_tri <= $twulan) ? $db->Row("RealF_TW".$_tri) : "";
|
||||
$_tri_keu['triwulan_keuangan_'.$_tri] = ($_tri <= $twulan) ? (float)$db->Row("RealK_TW".$_tri) : 0;
|
||||
$_thn_kin += ($_tri <= $twulan) ? (float)$db->Row("RealF_TW".$_tri) : 0;
|
||||
$_thn_keu += ($_tri <= $twulan) ? (float)$db->Row("RealK_TW".$_tri) : 0;
|
||||
}
|
||||
//komulatif / positif / negatif / rata-rata
|
||||
switch ($db->Row("Status", "komulatif")) {
|
||||
case "komulatif":
|
||||
break;
|
||||
case "rata-rata":
|
||||
$_thn_kin = $_thn_kin / $twulan;
|
||||
break;
|
||||
default:
|
||||
$_thn_kin = (float)$db->Row("RealK_TW".$twulan);
|
||||
}
|
||||
$data_subkeg[] = [
|
||||
'tahun' => $tahun,
|
||||
'kodeskpd' => $db->Row("K_OPD"),
|
||||
'kodebidang' => $db->Row("K_Bidu"),
|
||||
'kodeprogram' => $db->Row("K_Prog"),
|
||||
'kodekegiatan' => $db->Row("K_Keg"),
|
||||
'kodesubkegiatan' => $db->Row("K_Sub"),
|
||||
'satuan' => $db->Row("Satuan"),
|
||||
'formula' => $db->Row("Status"), //#info-status-kinerja
|
||||
'status' => $db->Row("Status"), //#info-status-kinerja
|
||||
'status_rkpd' => $db->Row("Status"), //#info-status-kinerja
|
||||
//'status_renstra' => "komulatif", //#info-status-renstra
|
||||
//'target_realisasi_kinerja' => $targetRealisasiKinerjaData,
|
||||
//'target_realisasi_keuangan' => $targetRealisasiKeuanganData,
|
||||
'triwulan_kinerja' => $_tri_kin,
|
||||
'triwulan_keuangan' => $_tri_keu,
|
||||
'realisasi_kinerja_tahunan' => $_thn_kin,
|
||||
'realisasi_keuangan_tahunan' => $_thn_keu,
|
||||
'idoutcome' => $db->Row("SIPD_OUTCOME"),
|
||||
'idoutput' => $db->Row("SIPD_OUTPUT"),
|
||||
'kodesubkegiatan_indikator' => $db->Row("SIPD_SUBKEG_INDI"),
|
||||
'uraisubkegiatan_indikator' => "",
|
||||
];
|
||||
}
|
||||
|
||||
if (!empty($data_subkeg)) {
|
||||
$aret['data'] = $data_subkeg;
|
||||
}
|
||||
|
||||
return $aret;
|
||||
}
|
||||
|
||||
/* DALEV PROGRAM */
|
||||
|
||||
function sinkron_dalev_prog($db = null) {
|
||||
$aret = ['status' => "success", 'message' => 'Berhasil singkron data!'];
|
||||
|
||||
$adata = json_decode(stripslashes(html_entity_decode($_POST['prog'])), true);
|
||||
|
||||
foreach ($adata as $_key1 => $prog) {
|
||||
fastInsert("dpa_dalev_prog", $prog);
|
||||
}
|
||||
$db->Query("UPDATE dpa_dalev_prog A,para90_opd B SET A.OPDID=B.OPDID WHERE A.K_OPD=B.K_OPD");
|
||||
return $aret;
|
||||
}
|
||||
|
||||
function ambil_dalev_prog($db = null) {
|
||||
$aret = ['status' => "success", 'message' => 'Berhasil mendapatkan data!', 'action' => $_POST['action'], 'run' => $_POST['run'], 'data' => []];
|
||||
$aopd = [];
|
||||
|
||||
while ($db->Next()) {
|
||||
/*$_tri_kin = []; $_tri_keu = []; $_thn_kin = 0; $_thn_keu = 0;
|
||||
for ($_tri = 1; $_tri <= 4; $_tri++) {
|
||||
$_tri_kin['triwulan_kinerja_'.$_tri] = ($_tri <= $twulan) ? $db->Row("RealF_TW".$_tri) : "";
|
||||
$_tri_keu['triwulan_keuangan_'.$_tri] = ($_tri <= $twulan) ? (float)$db->Row("RealK_TW".$_tri) : 0;
|
||||
$_thn_kin += ($_tri <= $twulan) ? (float)$db->Row("RealF_TW".$_tri) : 0;
|
||||
$_thn_keu += ($_tri <= $twulan) ? (float)$db->Row("RealK_TW".$_tri) : 0;
|
||||
}
|
||||
//komulatif / positif / negatif / rata-rata
|
||||
switch ($db->Row("Status", "komulatif")) {
|
||||
case "komulatif":
|
||||
break;
|
||||
case "rata-rata":
|
||||
$_thn_kin = $_thn_kin / $twulan;
|
||||
break;
|
||||
default:
|
||||
$_thn_kin = (float)$db->Row("RealK_TW".$twulan);
|
||||
}*/
|
||||
/* coding js
|
||||
|
||||
const tahun = $('#modal-realisasi').data('current-tahun') || tahun_sekarang;
|
||||
const info = rowData;
|
||||
const tipeData = info.tipe_data || 'numeric';
|
||||
const isNumeric = isNumericTipeData(tipeData);
|
||||
|
||||
const triwulan = {};
|
||||
for (let i = 1; i <= 4; i++) {
|
||||
if (tipeData === 'rasio') {
|
||||
// Rasio: dua input dengan separator ":"
|
||||
const valBawah = $(`#triwulan_${i}_bawah`).val();
|
||||
const valAtas = $(`#triwulan_${i}_atas`).val();
|
||||
// Hanya kirim jika user benar-benar mengisi (minimal salah satu ada nilai)
|
||||
// Jika salah satu kosong, gunakan '0' sebagai fallback
|
||||
// Jika keduanya kosong, tidak akan masuk ke sini (hasil: tidak kirim)
|
||||
if (valBawah || valAtas) {
|
||||
triwulan[`triwulan_${i}`] = `${valBawah || '0'}:${valAtas || '0'}`;
|
||||
}
|
||||
} else if (isNumeric) {
|
||||
// Numeric dan range: 1 input dengan format angka
|
||||
const rawVal = $(`#triwulan_${i}`).val();
|
||||
// Hanya kirim jika user benar-benar mengisi
|
||||
if (rawVal !== null && rawVal !== '') {
|
||||
const val = unformatRupiahRealisasi(rawVal);
|
||||
triwulan[`triwulan_${i}`] = val;
|
||||
}
|
||||
} else {
|
||||
// enum_v2 dan lainnya
|
||||
const raw = $(`#triwulan_${i}`).val();
|
||||
// Hanya kirim jika ada nilai
|
||||
if (raw !== null && raw !== undefined && raw !== '') {
|
||||
triwulan[`triwulan_${i}`] = raw.toString();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
let realisasiTahunan = '';
|
||||
const selectedFormula = $('#info-status-kinerja').val() || (isNumeric ? 'komulatif' : 'positif');
|
||||
if (isNumeric) {
|
||||
realisasiTahunan = calculateNumericRealisasiByFormula(selectedFormula, triwulan);
|
||||
} else {
|
||||
// non-numeric: set from last non-empty triwulan as string
|
||||
realisasiTahunan = getLastNonEmptyTriwulanString();
|
||||
}
|
||||
const targetRealisasi = {};
|
||||
years.forEach((year, idx) => {
|
||||
targetRealisasi[`target_${year}`] = $(`#target_${year}`).val();
|
||||
const rVal = $(`#realisasi_${year}`).val();
|
||||
if (tipeData === 'rasio') {
|
||||
// Untuk rasio: kirim sebagai string dengan format "pembilang:pembanding"
|
||||
// Jika kosong, kirim empty string (bukan '0:0')
|
||||
targetRealisasi[`realisasi_${year}`] = (rVal != null && rVal !== '') ? rVal.toString() : '';
|
||||
} else if (isNumeric) {
|
||||
// Untuk numeric: jika kosong, kirim empty string (bukan 0)
|
||||
// Jika user benar-benar input 0, tetap kirim 0 (nilai valid)
|
||||
if (rVal == null || rVal === '') {
|
||||
targetRealisasi[`realisasi_${year}`] = '';
|
||||
} else {
|
||||
const numVal = unformatRupiahRealisasi(rVal);
|
||||
targetRealisasi[`realisasi_${year}`] = numVal;
|
||||
}
|
||||
} else {
|
||||
targetRealisasi[`realisasi_${year}`] = rVal != null ? rVal.toString() : '';
|
||||
}
|
||||
targetRealisasi[`target_${idx}`] = $(`#target_${year}`).val();
|
||||
});
|
||||
const statusRenstraSubmit = $('#info-status-renstra').val(),
|
||||
statusRkpdSubmit = statusRenstraSubmit === 'negatif' ? 'negatif' : $('#info-status-kinerja').val();
|
||||
const payload = {
|
||||
tahun: tahun,
|
||||
kodeskpd: info.kodeskpd,
|
||||
kodebidang: info.kodebidang || '',
|
||||
kodeprogram: info.kodeprogram,
|
||||
idoutcome: info.idoutcome || info.id || '',
|
||||
kodeprogram_indikator: info.kodeindikator_program || '',
|
||||
uraiprogram_indikator: info.uraiindikator_program || '',
|
||||
formula: statusRkpdSubmit,
|
||||
status: statusRkpdSubmit,
|
||||
status_rkpd: statusRkpdSubmit,
|
||||
status_renstra: statusRenstraSubmit,
|
||||
baseline: $('#info-baseline').val(),
|
||||
satuan: $('#info-satuan').val(),
|
||||
tipe_data: info.tipe_data || 'numeric',
|
||||
target_realisasi: targetRealisasi,
|
||||
triwulan: triwulan,
|
||||
realisasi_tahunan: realisasiTahunan
|
||||
};
|
||||
*/
|
||||
$data_prog[] = [
|
||||
'tahun' => $tahun,
|
||||
'kodeskpd' => $db->Row("K_OPD"),
|
||||
'kodebidang' => $db->Row("K_Bidu"),
|
||||
'kodeprogram' => $db->Row("K_Prog"),
|
||||
'idoutcome' => $db->Row("SIPD_OUTCOME"),
|
||||
'formula' => $db->Row("Status"), //#info-status-kinerja
|
||||
'status' => $db->Row("Status"), //#info-status-kinerja
|
||||
'status_rkpd' => $db->Row("Status"), //#info-status-kinerja
|
||||
//'status_renstra' => "komulatif", //#info-status-renstra
|
||||
'baseline' => $_tri_kin, //#info-baseline ?
|
||||
'satuan' => $_tri_keu, //#info-satuan ?
|
||||
'tipe_data' => $_thn_kin, // ? || 'numeric',
|
||||
'target_realisasi' => 0, // ?
|
||||
'triwulan' => 0, // ?
|
||||
'realisasi_tahunan' => 0, // ?
|
||||
'kodeprogram_indikator' => $db->Row("SIPD_PROG_INDI"),
|
||||
'uraiprogram_indikator' => "",
|
||||
];
|
||||
}
|
||||
|
||||
if (!empty($data_prog)) {
|
||||
$aret['data'] = $data_prog;
|
||||
}
|
||||
|
||||
return $aret;
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,14 @@
|
||||
<?php
|
||||
|
||||
require_once(dirname(__FILE__)."/../../../../../modules3/db.mysqli.php");
|
||||
|
||||
$db = DB();
|
||||
$tahun = 2022;
|
||||
$adata = json_decode(file_get_contents("kamus.json"), true);
|
||||
|
||||
foreach ($adata['data'] as $arec) {
|
||||
$db->Query("UPDATE para90_kamus SET No_Kamus='".$arec['no']."',Satuan='".$arec['satuan']."',SIPD_ID='".$arec['id']."' WHERE Satuan='".$arec['kodeskpd']."' AND Uraian='".$arec['urai']."'");
|
||||
}
|
||||
|
||||
echo "import kamus done.";
|
||||
?>
|
||||
@@ -0,0 +1,15 @@
|
||||
<?php
|
||||
|
||||
require_once(dirname(__FILE__)."/../../../../../modules3/db.mysqli.php");
|
||||
|
||||
$db = DB();
|
||||
$tahun = 2022;
|
||||
$adata = json_decode(file_get_contents("rekening.json"), true);
|
||||
|
||||
$db->Query("DELETE FROM i_rekening WHERE Tahun='".$tahun."'");
|
||||
foreach ($adata['data'] as $arec) {
|
||||
$db->Query("INSERT INTO i_rekening SET tahun='".$arec['tahun']."',id_akun='".$arec['id_akun']."',kode_akun='".$arec['kode_akun']."',nama_akun='".$arec['nama_akun']."',id_unik='".$arec['id_unik']."',is_pendapatan='".$arec['is_pendapatan']."',is_bl='".$arec['is_bl']."',is_biaya='".$arec['is_biaya']."',is_gaji_asn='".$arec['is_gaji_asn']."',is_barjas='".$arec['is_barjas']."',is_bunga='".$arec['is_bunga']."',is_subsidi='".$arec['is_subsidi']."',is_bagi_hasil='".$arec['is_bagi_hasil']."',set_input='".$arec['set_input']."'");
|
||||
}
|
||||
|
||||
echo "import rekening done.";
|
||||
?>
|
||||
@@ -0,0 +1,99 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
Module : /apps/php/api/master.php
|
||||
Desc. : PHP - Fungsi MASTER
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : December 18th, 2025.
|
||||
|
||||
(c) 2025, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
require_once(__DIR__."/../func.sippd.php");
|
||||
|
||||
use siaupheng\fonia3\Web\Param;
|
||||
|
||||
function simpan_master_subkeg($db = null) {
|
||||
$aret = ['status' => "success", 'message' => 'Berhasil simpan data Master Sub Kegiatan !'];
|
||||
if (empty($_POST['subgiat'])) return $aret;
|
||||
|
||||
$tahun = Param::Get("tahun_anggaran", 0);
|
||||
$adata = json_decode(stripslashes(html_entity_decode($_POST['subgiat'])), true);
|
||||
|
||||
if ($tahun == 0) {
|
||||
$aret['message'] = "Tahun Anggaran Tidak Ada !";
|
||||
return $aret;
|
||||
}
|
||||
|
||||
// hapus sesuai tahun
|
||||
if (empty($_POST['page']) || (!empty($_POST['page']) && $_POST['page'] == 1)) {
|
||||
$db->Query("DELETE FROM i_submap WHERE Tahun='".$tahun."'");
|
||||
}
|
||||
|
||||
foreach ($adata as $_key1 => $asub) {
|
||||
if ($asub['set_kab_kota'] == 0) continue;
|
||||
if (!(in_array($asub['id_daerah'], [0,553]) || in_array($asub['id_daerah_khusus'], [0,553]))) continue;
|
||||
|
||||
$apull = [ 'Tahun' => $tahun,
|
||||
'UrusanID' => $asub['id_urusan'],
|
||||
'BUID' => $asub['id_bidang_urusan'],
|
||||
'ProgID' => $asub['id_program'],
|
||||
'KegID' => $asub['id_giat'],
|
||||
'SubID' => $asub['id_sub_giat'],
|
||||
'K_Urusan' => $asub['kode_urusan'],
|
||||
'N_Urusan' => $asub['nama_urusan'],
|
||||
'K_Bidu' => $asub['kode_bidang_urusan'],
|
||||
'N_Bidu' => $asub['nama_bidang_urusan'],
|
||||
'K_Prog' => $asub['kode_program'],
|
||||
'N_Prog' => $asub['nama_program'],
|
||||
'K_Keg' => $asub['kode_giat'],
|
||||
'N_Keg' => $asub['nama_giat'],
|
||||
'K_Sub' => $asub['kode_sub_giat'],
|
||||
'N_Sub' => $asub['nama_sub_giat'],
|
||||
'Indikator' => $asub['indikator'],
|
||||
'Satuan' => $asub['satuan']
|
||||
];
|
||||
fastInsert("i_submap", $apull);
|
||||
|
||||
}
|
||||
return $aret;
|
||||
}
|
||||
|
||||
function simpan_master_akun($db = null) {
|
||||
$aret = ['status' => 'success', 'message' => 'Berhasil export Akun Rekening Belanja!'];
|
||||
if (empty($_POST['akun'])) return $aret;
|
||||
|
||||
$tahun = Param::Get("tahun_anggaran", 0);
|
||||
$akun = json_decode(stripslashes(html_entity_decode($_POST['akun'])), true);
|
||||
|
||||
// hapus sesuai tahun
|
||||
if (empty($_POST['page']) || (!empty($_POST['page']) && $_POST['page'] == 1)) {
|
||||
$db->Query("DELETE FROM i_akun WHERE Tahun='".$tahun."'");
|
||||
}
|
||||
|
||||
foreach ($akun as $k => $v) {
|
||||
if ($v['set_kab_kota'] == 0) continue;
|
||||
$apull = [
|
||||
'Tahun' => $tahun,
|
||||
'AkunID' => $v['id_akun'],
|
||||
'K_Akun' => $v['kode_akun'],
|
||||
'N_Akun' => $v['nama_akun'],
|
||||
'Is_Pend' => $v['is_pendapatan'],
|
||||
'Is_BL' => $v['is_bl'],
|
||||
'Is_Biaya' => $v['is_pembiayaan'],
|
||||
'Is_Gaji' => $v['is_gaji_asn'],
|
||||
'Is_Barjas' => $v['is_barjas'],
|
||||
'Is_Bunga' => $v['is_bunga'],
|
||||
'Is_Subsidi' => $v['is_subsidi'],
|
||||
'Is_Bagi_Hasil' => $v['is_bagi_hasil'],
|
||||
'Set_Input' => $v['set_input']
|
||||
];
|
||||
fastInsert("i_akun", $apull);
|
||||
}
|
||||
return $aret;
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,101 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
Module : /apps/php/api/pokir
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : January 31st, 2026.
|
||||
|
||||
(c) 2026, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
require_once(__DIR__."/../func.sippd.php");
|
||||
|
||||
use siaupheng\fonia3\Web\Param;
|
||||
|
||||
function singkron_pokir($db = null) {
|
||||
$aret = ['status' => "success", 'message' => 'Berhasil singkron data!'];
|
||||
$adewan = [];
|
||||
|
||||
$tahun = Param::Get("tahun_anggaran", 0);
|
||||
$id_dewan = Param::Get("id_dewan", 0);
|
||||
$adata = json_decode(stripslashes(html_entity_decode($_POST['pokir'])), true);
|
||||
if ($id_dewan > 0) {
|
||||
$db->Query("SELECT * FROM para_dprd WHERE SIPD_UserID='".$id_dewan."' LIMIT 1");
|
||||
if ($db->Next()) $adewan = $db->AllRow();
|
||||
}
|
||||
|
||||
//ambil master kamus
|
||||
$akamus = [];
|
||||
$db->Query("SELECT * FROM pok_kamus WHERE Tahun='".$tahun."'");;
|
||||
while ($db->Next()) {
|
||||
$akamus[$db->Row("KamusID")] = $db->Row("Uraian");
|
||||
}
|
||||
|
||||
//ambil dari db : alamat, koefisien, masalah, kamusid
|
||||
$apokir_db = [];
|
||||
//$db->Query("SELECT U.UsulanDID,MD5(CONCAT(IFNULL(J.N_Jalan,U.Lokasi),' RT. ',U.RT,', ',U.Dusun,U.Volume,' ',IFNULL(S.N_Satuan,''),U.Masalah,IFNULL(K.KamusID,0))) Kode_MD5 FROM (SELECT * FROM pok_usulan WHERE Tahun='".$tahun."' AND DPRDID='".$adewan['DPRDID']."') U LEFT JOIN para_jalan J ON (J.JalanID=U.JalanID) LEFT JOIN (SELECT * FROM i_submap WHERE Tahun='".$tahun."') M ON (M.Lama_SubID=U.SubID) LEFT JOIN (SELECT * FROM pok_kamus WHERE Tahun='".$tahun."') K ON (K.OPDID=U.OPDID AND K.ProgID=M.ProgID) LEFT JOIN para_satuan S ON (U.SatuanID=S.SatuanID) ORDER BY U.Kode");
|
||||
$db->Query("SELECT U.UsulanDID,MD5(CONCAT(IFNULL(J.N_Jalan,U.Lokasi),' RT. ',U.RT,', ',U.Dusun,U.Masalah,IFNULL(K.KamusID,0))) Kode_MD5 FROM (SELECT * FROM pok_usulan WHERE Tahun='".$tahun."' AND DPRDID='".$adewan['DPRDID']."') U LEFT JOIN para_jalan J ON (J.JalanID=U.JalanID) LEFT JOIN (SELECT * FROM i_submap WHERE Tahun='".$tahun."') M ON (M.Lama_SubID=U.SubID) LEFT JOIN (SELECT * FROM pok_kamus WHERE Tahun='".$tahun."') K ON (K.OPDID=U.OPDID AND K.ProgID=M.ProgID) LEFT JOIN para_satuan S ON (U.SatuanID=S.SatuanID) ORDER BY U.Kode");
|
||||
while ($db->Next()) {
|
||||
$apokir_db[$db->Row("UsulanDID")] = $db->Row("Kode_MD5");
|
||||
}
|
||||
|
||||
foreach ($adata as $_key1 => $ausul) {
|
||||
//untuk data dari monitor
|
||||
$ausul['id_kamus'] = array_search($ausul['nama_kamus'], $akamus);
|
||||
|
||||
//$tmp_md5 = md5($ausul['alamat_teks'].$ausul['koefisien'].$ausul['masalah'].$ausul['id_kamus']);
|
||||
$tmp_md5 = md5($ausul['alamat_teks'].$ausul['masalah'].$ausul['id_kamus']);
|
||||
foreach ($apokir_db as $id_usul => $k_md5) {
|
||||
if ($tmp_md5 === $k_md5) {
|
||||
fastUpdate("pok_usulan", ['SIPD_UsulanID'=>$ausul['id_usulan'],'SIPD_Unix'=>$ausul['id_unik']], ['UsulanDID'=>$id_usul]);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return $aret;
|
||||
}
|
||||
|
||||
function ambil_pokir($db = null) {
|
||||
$aret = ['status' => "success", 'message' => 'Berhasil mendapatkan data!', 'action' => $_POST['action'], 'run' => $_POST['run'], 'data' => []];
|
||||
$adewan = [];
|
||||
|
||||
$tahun = Param::Get("tahun_anggaran", 0);
|
||||
$id_dewan = Param::Get("id_dewan", 0);
|
||||
if ($id_dewan > 0) {
|
||||
$db->Query("SELECT * FROM para_dprd WHERE SIPD_UserID='".$id_dewan."' LIMIT 1");
|
||||
if ($db->Next()) $adewan = $db->AllRow();
|
||||
}
|
||||
|
||||
$data_pokir = [];
|
||||
$tsql = (count($adewan)==0) ? "" : " AND DPRDID='".$adewan['DPRDID']."'";
|
||||
$db->Query("SELECT U.Kode,U.Masalah,M.ProgID,O.SIPD_Unit,O.N_OPD,K.KamusID,K.Uraian N_Kamus,K.Bidu N_Bidu,D.SIPD_DESA,D.SIPD_KEC,CONCAT(IFNULL(J.N_Jalan,U.Lokasi),' RT. ',U.RT,', ',U.Dusun) Alamat,U.Volume,S.N_Satuan,K.IsuID,U.SIPD_UsulanID FROM (SELECT OPDID,SubID,KelID,JalanID,Lokasi,RT,Dusun,Masalah,Volume,SatuanID,Kode,SIPD_UsulanID FROM pok_usulan WHERE Tahun='".$tahun."'".$tsql.") U LEFT JOIN para_jalan J ON (J.JalanID=U.JalanID) LEFT JOIN (SELECT * FROM i_submap WHERE Tahun='".$tahun."') M ON (M.Lama_SubID=U.SubID) LEFT JOIN (SELECT * FROM pok_kamus WHERE Tahun='".$tahun."') K ON (K.OPDID=U.OPDID AND K.ProgID=M.ProgID) LEFT JOIN vi_para_desa D ON (D.DesaID=U.KelID) LEFT JOIN para90_opd O ON (O.OPDID=U.OPDID) LEFT JOIN para_satuan S ON (U.SatuanID=S.SatuanID) ORDER BY U.Kode");
|
||||
while ($db->Next()) {
|
||||
$data_pokir[] = [
|
||||
'kode' => $db->Row("Kode"),
|
||||
'id_usulan' => $db->Row("SIPD_UsulanID"),
|
||||
'id_kamus' => $db->Row("KamusID"),
|
||||
'nama_kamus' => $db->Row("N_Kamus"),
|
||||
'nama_bidang_urusan' => $db->Row("N_Bidu"),
|
||||
'id_program' => $db->Row("IsuID"),//update program_id
|
||||
'id_skpd' => $db->Row("SIPD_Unit"),
|
||||
'nama_skpd' => $db->Row("N_OPD"),
|
||||
'alamat_teks' => substr(str_replace("'","\'",$db->Row("Alamat")), 0, 255),
|
||||
'volume' => $db->Row("Volume"),
|
||||
'satuan' => $db->Row("N_Satuan"),
|
||||
'id_kecamatan' => $db->Row("SIPD_KEC"),
|
||||
'id_kelurahan' => $db->Row("SIPD_DESA"),
|
||||
'masalah' => substr($db->Row("Masalah"), 0, 255)
|
||||
];
|
||||
}
|
||||
|
||||
if (!empty($data_pokir)) {
|
||||
$aret['data'] = $data_pokir;
|
||||
}
|
||||
|
||||
return $aret;
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,118 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
Module : /apps/php/api/renja.php
|
||||
Desc. : PHP - Fungsi RENJA
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : January 31st, 2026.
|
||||
|
||||
(c) 2026, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
require_once(__DIR__."/../func.sippd.php");
|
||||
|
||||
use siaupheng\fonia3\Web\Param;
|
||||
|
||||
function ambil_renja($db = null) {
|
||||
$aret = ['status' => "success", 'message' => 'Berhasil mendapatkan data!', 'action' => $_POST['action'], 'run' => $_POST['run'], 'data' => []];
|
||||
|
||||
$tahun = Param::Get("tahun_anggaran", 0);
|
||||
$id_skpd = Param::Get("id_skpd", 0);
|
||||
$id_sub_skpd = fastQueryArray("SELECT OPDID FROM para90_opd WHERE SIPD_OPD='".$id_skpd."'", 0);
|
||||
|
||||
//$where = ' AND set_kab_kota=1';
|
||||
|
||||
//para90_submap -> i_submap : sementara
|
||||
$master_bidang_urusan = [];
|
||||
$db->Query("SELECT DISTINCT K_Bidu,N_Bidu FROM i_submap WHERE Tahun='".$tahun."'");
|
||||
while ($db->Next()) {
|
||||
$master_bidang_urusan[$db->Row("K_Bidu")] = $db->AllRow();
|
||||
}
|
||||
|
||||
$data_sub_giat = [];
|
||||
// kode_skpd, nama_skpd, pagu_keg, kode_bl
|
||||
$db->Query("SELECT *,CONCAT(B.id_skpd,'.',B.id_sub_skpd,'.',C.id_program,'.',C.id_giat,'.',C.id_sub_giat) kode_sbl FROM (SELECT RK_PROGID,RK_KEGID,OPDID,ProgID,SubID,553 id_lokasi,Waktu1 waktu_awal,Waktu2 waktu_akhir,Pagu_Ini pagu,Pagu_Dpn pagu_n_depan,Txt_Indi,Satuan_Indi,Target_Indi FROM renja_sub WHERE Tahun='".$tahun."' AND OPDID IN (".implode(",",$id_sub_skpd).")) A LEFT JOIN (SELECT OPDID,K_Bidu1,K_OPD kode_skpd_asli,N_OPD nama_sub_skpd,SIPD_OPD id_skpd,SIPD_Unit id_sub_skpd FROM para90_opd WHERE OPDID IN(".implode(",",$id_sub_skpd).")) B ON (A.OPDID=B.OPDID) LEFT JOIN (SELECT ProgID,SubID,Lama_ProgID,Lama_SubID,UrusanID id_urusan,BUID id_bidang_urusan,ProgID id_program,KegID id_giat,SubID id_sub_giat,K_Urusan kode_urusan,K_Bidu kode_bidang_urusan,K_Prog kode_program,K_Keg kode_giat,K_Sub kode_sub_giat,N_Urusan nama_urusan,N_Bidu nama_bidang_urusan,N_Prog nama_program,CONCAT(K_Keg,' ',N_Keg) nama_giat,CONCAT(K_Sub,' ',N_Sub) nama_sub_giat FROM i_submap WHERE Tahun='".$tahun."') C ON (A.ProgID=C.Lama_ProgID AND A.SubID=C.Lama_SubID) WHERE C.ProgID IS NOT NULL ORDER BY C.kode_sub_giat");
|
||||
while ($db->Next()) {
|
||||
$data_sub_giat[] = $db->AllRow();
|
||||
}
|
||||
|
||||
foreach ($data_sub_giat as $k => $sub) {
|
||||
$sub['kode_sub_skpd'] = $sub['kode_skpd_asli'];
|
||||
$data_sub_giat[$k]['kode_sub_skpd'] = $sub['kode_skpd_asli'];
|
||||
if ($sub['kode_bidang_urusan'] == 'X.XX') {
|
||||
$urusan_utama = $sub['K_Bidu1'];
|
||||
if (!empty($master_bidang_urusan[$urusan_utama])) {
|
||||
$data_sub_giat[$k]['kode_bidang_urusan'] = $master_bidang_urusan[$urusan_utama]['K_Bidu'];
|
||||
$data_sub_giat[$k]['nama_bidang_urusan'] = $master_bidang_urusan[$urusan_utama]['N_Bidu'];
|
||||
}
|
||||
}
|
||||
/*if (!empty($sub['kode_sbl_lama'])) {
|
||||
$data_sub_giat[$k]['sub_keg_lama'] = array();
|
||||
$kode_sbl_lama = explode('|', $sub['kode_sbl_lama']);
|
||||
foreach ($kode_sbl_lama as $kd_lama) {
|
||||
$data_lama = $wpdb->get_row($wpdb->prepare("
|
||||
SELECT
|
||||
sk.*
|
||||
FROM data_sub_keg_bl_lokal sk
|
||||
WHERE kode_sbl=%s
|
||||
AND sk.tahun_anggaran=%d
|
||||
", $kd_lama, $tahun_anggaran), ARRAY_A);
|
||||
if ($data_lama['kode_bidang_urusan'] == 'X.XX') {
|
||||
$urusan_utama_lama = explode('.', $data_lama['kode_sub_skpd']);
|
||||
$urusan_utama_lama = $urusan_utama_lama[0] . '.' . $urusan_utama_lama[1];
|
||||
if (!empty($master_bidang_urusan[$urusan_utama_lama])) {
|
||||
$data_lama['kode_bidang_urusan'] = $master_bidang_urusan[$urusan_utama_lama]['kode_bidang_urusan'];
|
||||
$data_lama['nama_bidang_urusan'] = $master_bidang_urusan[$urusan_utama_lama]['nama_bidang_urusan'];
|
||||
}
|
||||
}
|
||||
$data_sub_giat[$k]['sub_keg_lama'][] = $data_lama;
|
||||
}
|
||||
}*/
|
||||
$data_sub_giat[$k]['sumber_dana'] = [];
|
||||
$data_sub_giat[$k]['lokasi'] = [];
|
||||
$data_sub_giat[$k]['indikator'] = [];
|
||||
$data_sub_giat[$k]['indikator_kegiatan'] = [];
|
||||
$data_sub_giat[$k]['indikator_program'] = [];
|
||||
$data_sub_giat[$k]['indikator_hasil'] = [];
|
||||
|
||||
$db->Query("SELECT * FROM (SELECT * FROM renja_keg WHERE Tahun='".$tahun."' AND RK_KEGID='".$sub['RK_KEGID']."') A LEFT JOIN renstra_output B ON (B.RA_OUTPUTID=A.RA_OUTPUTID)");
|
||||
if ($db->Next()) {
|
||||
//data_keg_indikator_hasil_lokal
|
||||
$data_sub_giat[$k]['indikator_hasil'][] = ['hasilteks' => $db->Row("Txt_Output"), 'satuanhasil' => $db->Row("Hasil_Satuan","%"), 'targethasil' => $db->Row("Hasil_Target",100), 'targethasilteks' => $db->Row("Hasil_Target",100)." ".$db->Row("Hasil_Satuan","%")];
|
||||
//data_output_giat_sub_keg_lokal
|
||||
$data_sub_giat[$k]['indikator_kegiatan'][] = ['outputteks' => $db->Row("Keluar_Txt"), 'satuanoutput' => $db->Row("Keluar_Satuan"), 'targetoutput' => $db->Row("Keluar_Target"), 'targetoutputteks' => $db->Row("Keluar_Target")." ".$db->Row("Keluar_Satuan")];
|
||||
$data_sub_giat[$k]['sasaran'] = $db->Row("Sasaran");
|
||||
}
|
||||
|
||||
//data_capaian_prog_sub_keg_lokal
|
||||
//todo: pastikan T --> sesuai periode rpjmd
|
||||
$indikator_program = [];
|
||||
$db->Query("SELECT Txt_Indi capaianteks,Indi_Satuan satuancapaian,Indi_T2 targetcapaian,CONCAT(Indi_T2,' ',Indi_Satuan) targetcapaianteks FROM renstra_prog_indi WHERE RD_OUTCOMEID IN (SELECT RD_OUTCOMEID FROM renja_prog WHERE RK_PROGID='".$sub['RK_PROGID']."')");
|
||||
while ($db->Next()) {
|
||||
$data_sub_giat[$k]['indikator_program'][] = $db->AllRow();
|
||||
}
|
||||
|
||||
//data_dana_sub_keg_lokal
|
||||
$data_sumber_dana = ['kodedana' => "1.1", 'iddana' => 2, 'pagudana' => $sub['pagu']];
|
||||
$data_sub_giat[$k]['sumber_dana'][] = $data_sumber_dana;
|
||||
|
||||
//data_lokasi_sub_keg_lokal
|
||||
$data_lokasi = ['idcamat' => 0, 'idkabkota' => 553];
|
||||
$data_sub_giat[$k]['lokasi'][] = $data_lokasi;
|
||||
|
||||
//data_sub_keg_indikator_lokal
|
||||
$data_sub_keg_indikator = ['outputteks' => $sub['Txt_Indi'], 'targetoutput' => $sub['Target_Indi'], 'satuanoutput' => $sub['Satuan_Indi']];
|
||||
$data_sub_giat[$k]['indikator'][] = $data_sub_keg_indikator;
|
||||
unset ($data_sub_giat[$k]['Txt_Indi'], $data_sub_giat[$k]['Satuan_Indi'], $data_sub_giat[$k]['Target_Indi']);
|
||||
}
|
||||
if (!empty($data_sub_giat)) {
|
||||
$aret['data'] = $data_sub_giat;
|
||||
}
|
||||
|
||||
return $aret;
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,283 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
Module : /apps/php/api/rpjmd.php
|
||||
Desc. : PHP - Fungsi RPJMD
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : December 18th, 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;
|
||||
|
||||
$id_rpjmd = $_SESSION['__WEB_APP']['RENC_RPJMDID'];
|
||||
$thn_submap = map_tahun_submap($id_rpjmd);
|
||||
|
||||
function simpan_renstra_tujuan($db = null, $adata = []) {//oke
|
||||
global $id_rpjmd, $thn_submap;
|
||||
$aret = ['status' => "success", 'message' => 'Berhasil simpan data Tujuan RENSTRA !'];
|
||||
|
||||
foreach ($adata as $_key1 => $atujuan) {
|
||||
$apull = [ 'RPJMDID' => $id_rpjmd,
|
||||
'OPDID' => 0,
|
||||
'A_RDSASAR' => "0",
|
||||
'A_BU' => "'X.XX'",
|
||||
'No_Tujuan' => $atujuan['No_Tujuan'],
|
||||
'Txt_Tujuan' => $atujuan['Txt_Tujuan'],
|
||||
'SIPD_UNIK' => $atujuan['SIPD_UNIK']
|
||||
];
|
||||
// bidang urusan
|
||||
$_tbu = [];
|
||||
foreach ($atujuan['A_BU'] as $_key_bu => $arec_bu) {
|
||||
$_tbu[] = $arec_bu;
|
||||
}
|
||||
$apull['A_BU'] = "'". implode("','", $_tbu) ."'";
|
||||
// sasaran rpjmd
|
||||
if (count($atujuan['A_RDSASAR']) > 0) {
|
||||
$_tsa = [];
|
||||
foreach ($atujuan['A_RDSASAR'] 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'] = implode(",", $_tsa);
|
||||
}
|
||||
// opd
|
||||
$db->Query("SELECT OPDID FROM para90_opd WHERE K_OPD='".$atujuan['K_OPD']."' LIMIT 1");
|
||||
if ($db->Next()) $apull['OPDID'] = $db->Row("OPDID", 0);
|
||||
|
||||
$id_opd = $apull['OPDID'];
|
||||
$ra_tujid = fastInsert("renstra_tujuan", $apull);
|
||||
|
||||
// indikator
|
||||
foreach ($atujuan['indikator'] as $_key2 => $arec) {
|
||||
$apull = [ 'OPDID' => $id_opd,
|
||||
'RA_TUJID' => $ra_tujid,
|
||||
'RPJMDID' => $id_rpjmd,
|
||||
'No_Indi' => $arec['No_Indi'],
|
||||
'Txt_Indi' => $arec['Txt_Indi'],
|
||||
'Indi_Satuan' => $arec['Indi_Satuan'],
|
||||
'Indi_Status' => $arec['Indi_Status'],
|
||||
'Indi_Awal' => $arec['Indi_Awal'],
|
||||
'Indi_T1' => $arec['Indi_T1'],
|
||||
'Indi_T2' => $arec['Indi_T2'],
|
||||
'Indi_T3' => $arec['Indi_T3'],
|
||||
'Indi_T4' => $arec['Indi_T4'],
|
||||
'Indi_T5' => $arec['Indi_T5'],
|
||||
'Indi_Akhir' => $arec['Indi_Akhir'],
|
||||
'Tipe_Data' => $arec['Tipe_Data'],
|
||||
'SIPD_UNIK' => $arec['SIPD_UNIK']
|
||||
];
|
||||
fastInsert("renstra_tujuan_indi", $apull);
|
||||
}
|
||||
}
|
||||
return $aret;
|
||||
}
|
||||
|
||||
function simpan_renstra_sasaran($db = null, $adata = []) {//oke
|
||||
global $id_rpjmd, $thn_submap;
|
||||
$aret = ['status' => "success", 'message' => 'Berhasil simpan data Sasaran RENSTRA !'];
|
||||
|
||||
foreach ($adata as $_key1 => $asasar) {
|
||||
$apull = [ 'RPJMDID' => $id_rpjmd,
|
||||
'RA_TUJID' => 0,
|
||||
'OPDID' => 0,
|
||||
'No_Sasaran' => $asasar['No_Sasaran'],
|
||||
'Txt_Sasaran' => $asasar['Txt_Sasaran'],
|
||||
'SIPD_UNIK' => $asasar['SIPD_UNIK']
|
||||
];
|
||||
// tujuan renstra
|
||||
$db->Query("SELECT RA_TUJID FROM renstra_tujuan WHERE SIPD_UNIK='".$asasar['SIPD_TUJ']."' LIMIT 1");
|
||||
if ($db->Next()) $apull['RA_TUJID'] = $db->Row("RA_TUJID", 0);
|
||||
// opd
|
||||
$db->Query("SELECT OPDID FROM para90_opd WHERE K_OPD='".$asasar['K_OPD']."' LIMIT 1");
|
||||
if ($db->Next()) $apull['OPDID'] = $db->Row("OPDID", 0);
|
||||
|
||||
$id_opd = $apull['OPDID'];
|
||||
$ra_sasarid = fastInsert("renstra_sasaran", $apull);
|
||||
|
||||
// indikator
|
||||
foreach ($asasar['indikator'] as $_key2 => $arec) {
|
||||
$apull = [ 'OPDID' => $id_opd,
|
||||
'RA_SASARID' => $ra_sasarid,
|
||||
'RPJMDID' => $id_rpjmd,
|
||||
'No_Indi' => $arec['No_Indi'],
|
||||
'Txt_Indi' => $arec['Txt_Indi'],
|
||||
'Indi_Satuan' => $arec['Indi_Satuan'],
|
||||
'Indi_Status' => $arec['Indi_Status'],
|
||||
'Indi_Awal' => $arec['Indi_Awal'],
|
||||
'Indi_T1' => $arec['Indi_T1'],
|
||||
'Indi_T2' => $arec['Indi_T2'],
|
||||
'Indi_T3' => $arec['Indi_T3'],
|
||||
'Indi_T4' => $arec['Indi_T4'],
|
||||
'Indi_T5' => $arec['Indi_T5'],
|
||||
'Indi_Akhir' => $arec['Indi_Akhir'],
|
||||
'Tipe_Data' => $arec['Tipe_Data'],
|
||||
'SIPD_UNIK' => $arec['SIPD_UNIK']
|
||||
];
|
||||
fastInsert("renstra_sasaran_indi", $apull);
|
||||
}
|
||||
}
|
||||
return $aret;
|
||||
}
|
||||
|
||||
function simpan_renstra_program($db = null, $adata = []) {
|
||||
global $id_rpjmd, $thn_submap;
|
||||
$aret = ['status' => "success", 'message' => 'Berhasil simpan data Program / Kegiatan / Sub Kegiatan RENSTRA !'];
|
||||
|
||||
foreach ($adata as $_key1 => $aoutcome) {
|
||||
$acome = [ 'RD_OUTCOMEID' => 0,
|
||||
'RD_PROGID' => 0,
|
||||
'OPDID' => 0,
|
||||
'ProgID' => 0,
|
||||
'A_RASASAR' => 0
|
||||
];
|
||||
// outcome rpjmd
|
||||
$db->Query("SELECT RD_OUTCOMEID,RD_PROGID,A_RASASAR FROM rpjmd_outcome WHERE RPJMDID='".$id_rpjmd."' AND SIPD_UNIK='".$aoutcome['SIPD_UNIK']."' LIMIT 1");
|
||||
if ($db->Next()) $acome = array_merge($acome, $db->AllRow());
|
||||
// program rpjmd
|
||||
$db->Query("SELECT BUID,ProgID,K_Bidu,K_Prog FROM rpjmd_prog WHERE RPJMDID='".$id_rpjmd."' AND RD_PROGID='".$acome['RD_PROGID']."' LIMIT 1");
|
||||
if ($db->Next()) $acome = array_merge($acome, $db->AllRow());
|
||||
// opd
|
||||
$db->Query("SELECT OPDID FROM para90_opd WHERE K_OPD='".$aoutcome['K_OPD']."' LIMIT 1");
|
||||
if ($db->Next()) $acome = array_merge($acome, $db->AllRow());
|
||||
|
||||
// sasaran renstra
|
||||
if (count($aoutcome['A_RASASAR']) > 0) {
|
||||
$_tsa = explode(",", $acome['A_RASASAR']);
|
||||
foreach ($aoutcome['A_RASASAR'] as $_key_sa => $arec_sa) {
|
||||
$db->Query("SELECT RA_SASARID FROM renstra_sasaran WHERE SIPD_UNIK='".$arec_sa."' LIMIT 1");
|
||||
if ($db->Next()) {
|
||||
if (!in_array($db->Row("RA_SASARID", 0), $_tsa)) $_tsa[] = $db->Row("RA_SASARID", 0);
|
||||
}
|
||||
}
|
||||
$_tsa = array_diff($_tsa, [0]);
|
||||
$acome['A_RASASAR'] = (count($_tsa)==0) ? "0" : implode(",", $_tsa);
|
||||
}
|
||||
fastUpdate("rpjmd_outcome", ['A_RASASAR'=>$acome['A_RASASAR']], ['RD_OUTCOMEID'=>$acome['RD_OUTCOMEID']]);
|
||||
$apull = [ 'RPJMDID' => $id_rpjmd,
|
||||
'OPDID' => $acome['OPDID'],
|
||||
'RD_PROGID' => $acome['RD_PROGID'],
|
||||
'RD_OUTCOMEID' => $acome['RD_OUTCOMEID'],
|
||||
'A_RASASAR' => $acome['A_RASASAR'],
|
||||
'ProgID' => $acome['ProgID'],
|
||||
'K_Prog' => $acome['K_Prog']
|
||||
];
|
||||
$ra_progid = fastInsert("renstra_prog", $apull);
|
||||
|
||||
// indikator outcome (ke tabel renstra_prog_indi)
|
||||
foreach ($aoutcome['indikator'] as $_key2 => $aindi) {
|
||||
$apull = [ 'OPDID' => $acome['OPDID'],
|
||||
'RA_PROGID' => $ra_progid,
|
||||
'RD_OUTCOMEID' => $acome['RD_OUTCOMEID'],
|
||||
'RPJMDID' => $id_rpjmd,
|
||||
'ProgID' => $acome['ProgID'],
|
||||
'No_Indi' => $aindi['No_Indi'],
|
||||
'Txt_Indi' => $aindi['Txt_Indi'],
|
||||
'Indi_Satuan' => $aindi['Indi_Satuan'],
|
||||
'Indi_Status' => $aindi['Indi_Status'],
|
||||
'Indi_Awal' => $aindi['Indi_Awal'],
|
||||
'Indi_T1' => $aindi['Indi_T1'],
|
||||
'Indi_T2' => $aindi['Indi_T2'],
|
||||
'Indi_T3' => $aindi['Indi_T3'],
|
||||
'Indi_T4' => $aindi['Indi_T4'],
|
||||
'Indi_T5' => $aindi['Indi_T5'],
|
||||
'Indi_Akhir' => $aindi['Indi_Akhir'],
|
||||
'Tipe_Data' => $aindi['Tipe_Data'],
|
||||
'SIPD_UNIK' => $aindi['SIPD_UNIK']
|
||||
];
|
||||
fastInsert("renstra_prog_indi", $apull);
|
||||
}
|
||||
|
||||
// kegiatan
|
||||
foreach ($aoutcome['kegiatan'] as $_key3 => $akeg) {
|
||||
// master kegiatan
|
||||
$id_keg = 0;
|
||||
$db->Query("SELECT KegID FROM para90_submap WHERE Tahun='".$thn_submap."' AND ProgID='".$acome['ProgID']."' AND K_Keg LIKE '%".substr($akeg['K_Keg'],4)."' GROUP BY KegID LIMIT 1");
|
||||
if ($db->Next()) $id_keg = $db->Row("KegID", 0);
|
||||
|
||||
$apull = [ 'OPDID' => $acome['OPDID'],
|
||||
'RA_PROGID' => $ra_progid,
|
||||
'RD_OUTCOMEID' => $acome['RD_OUTCOMEID'],
|
||||
'RPJMDID' => $id_rpjmd,
|
||||
'ProgID' => $acome['ProgID'],
|
||||
'KegID' => $id_keg,
|
||||
'K_Keg' => $akeg['K_Keg']
|
||||
];
|
||||
$ra_kegid = fastInsert("renstra_keg", $apull);
|
||||
|
||||
// output kegiatan
|
||||
foreach ($akeg['output'] as $_key4 => $aoutput) {
|
||||
$apull = [ 'OPDID' => $acome['OPDID'],
|
||||
'RA_KEGID' => $ra_kegid,
|
||||
'RPJMDID' => $id_rpjmd,
|
||||
'ProgID' => $acome['ProgID'],
|
||||
'KegID' => $id_keg,
|
||||
'No_Output' => $aoutput['No_Output'],
|
||||
'Txt_Output' => $aoutput['Txt_Output'],
|
||||
'SIPD_UNIK' => $aoutput['SIPD_UNIK']
|
||||
];
|
||||
$ra_outid = fastInsert("renstra_output", $apull);
|
||||
|
||||
if (count($aoutput['subkeg']) == 0) $aret['message'] .= $akeg['K_Keg']." - ";
|
||||
// sub kegiatan
|
||||
foreach ($aoutput['subkeg'] as $_key5 => $asub) {
|
||||
// master sub kegiatan
|
||||
$id_sub = 0;
|
||||
$db->Query("SELECT SubID FROM para90_submap WHERE Tahun='".$thn_submap."' AND KegID='".$id_keg."' AND K_Sub LIKE '%".substr($asub['K_Sub'],4)."' LIMIT 1");
|
||||
if ($db->Next()) $id_sub = $db->Row("SubID", 0);
|
||||
|
||||
$apull = [ 'OPDID' => $acome['OPDID'],
|
||||
'RA_OUTPUTID' => $ra_outid,
|
||||
'RA_KEGID' => $ra_kegid,
|
||||
'RPJMDID' => $id_rpjmd,
|
||||
'ProgID' => $acome['ProgID'],
|
||||
'KegID' => $id_keg,
|
||||
'SubID' => $id_sub,
|
||||
'K_Sub' => $asub['K_Sub'],
|
||||
'Pagu_T1' => $asub['Pagu_T1'],
|
||||
'Pagu_T2' => $asub['Pagu_T2'],
|
||||
'Pagu_T3' => $asub['Pagu_T3'],
|
||||
'Pagu_T4' => $asub['Pagu_T4'],
|
||||
'Pagu_T5' => $asub['Pagu_T5'],
|
||||
'No_Indi' => $asub['No_Indi'],
|
||||
'Txt_Indi' => $asub['Txt_Indi'],
|
||||
'Indi_Satuan' => $asub['Indi_Satuan'],
|
||||
'Indi_Status' => $asub['Indi_Status'],
|
||||
'Indi_Awal' => $asub['Indi_Awal'],
|
||||
'Indi_T1' => $asub['Indi_T1'],
|
||||
'Indi_T2' => $asub['Indi_T2'],
|
||||
'Indi_T3' => $asub['Indi_T3'],
|
||||
'Indi_T4' => $asub['Indi_T4'],
|
||||
'Indi_T5' => $asub['Indi_T5'],
|
||||
'Indi_Akhir' => $asub['Indi_Akhir'],
|
||||
'Kinerja' => $asub['Kinerja'],
|
||||
'MIndiID' => $asub['ID_Indi'],
|
||||
//'Tipe_Data' => $asub['Tipe_Data'],
|
||||
//'SIPD_UNIK' => $asub['SIPD_UNIK']
|
||||
];
|
||||
fastInsert("renstra_sub", $apull);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// update sub -> output
|
||||
$db->Query("UPDATE renstra_output A, (SELECT OPDID,RA_OUTPUTID,SUM(Pagu_T1) T1,SUM(Pagu_T2) T2,SUM(Pagu_T3) T3,SUM(Pagu_T4) T4,SUM(Pagu_T5) T5 FROM renstra_sub WHERE RPJMDID='".$id_rpjmd."' GROUP BY OPDID,RA_OUTPUTID) B SET A.Pagu_T1=B.T1,A.Pagu_T2=B.T2,A.Pagu_T3=B.T3,A.Pagu_T4=B.T4,A.Pagu_T5=B.T5 WHERE A.RA_OUTPUTID=B.RA_OUTPUTID AND A.OPDID=B.OPDID AND A.RPJMDID='".$id_rpjmd."'");
|
||||
// update sub -> keg
|
||||
$db->Query("UPDATE renstra_keg A, (SELECT OPDID,RA_KEGID,SUM(Pagu_T1) T1,SUM(Pagu_T2) T2,SUM(Pagu_T3) T3,SUM(Pagu_T4) T4,SUM(Pagu_T5) T5 FROM renstra_sub WHERE RPJMDID='".$id_rpjmd."' GROUP BY OPDID,RA_KEGID) B SET A.Pagu_T1=B.T1,A.Pagu_T2=B.T2,A.Pagu_T3=B.T3,A.Pagu_T4=B.T4,A.Pagu_T5=B.T5 WHERE A.RA_KEGID=B.RA_KEGID AND A.OPDID=B.OPDID AND A.RPJMDID='".$id_rpjmd."'");
|
||||
// update keg -> prog
|
||||
$db->Query("UPDATE renstra_prog A, (SELECT OPDID,RA_PROGID,SUM(Pagu_T1) T1,SUM(Pagu_T2) T2,SUM(Pagu_T3) T3,SUM(Pagu_T4) T4,SUM(Pagu_T5) T5 FROM renstra_keg WHERE RPJMDID='".$id_rpjmd."' GROUP BY OPDID,RA_PROGID) B SET A.Pagu_T1=B.T1,A.Pagu_T2=B.T2,A.Pagu_T3=B.T3,A.Pagu_T4=B.T4,A.Pagu_T5=B.T5 WHERE A.RA_PROGID=B.RA_PROGID AND A.OPDID=B.OPDID AND A.RPJMDID='".$id_rpjmd."'");
|
||||
// update prog -> outcome rpjmd
|
||||
$db->Query("UPDATE rpjmd_outcome A, (SELECT RD_OUTCOMEID,SUM(Pagu_T1) T1,SUM(Pagu_T2) T2,SUM(Pagu_T3) T3,SUM(Pagu_T4) T4,SUM(Pagu_T5) T5 FROM renstra_prog WHERE RPJMDID='".$id_rpjmd."' GROUP BY RD_OUTCOMEID) B SET A.Pagu_T1=B.T1,A.Pagu_T2=B.T2,A.Pagu_T3=B.T3,A.Pagu_T4=B.T4,A.Pagu_T5=B.T5 WHERE A.RD_OUTCOMEID=B.RD_OUTCOMEID AND A.RPJMDID='".$id_rpjmd."'");
|
||||
|
||||
return $aret;
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,811 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
Module : /apps/php/api/renja.php
|
||||
Desc. : PHP - Fungsi RENJA
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : January 31st, 2026.
|
||||
|
||||
(c) 2026, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
require_once(__DIR__."/../func.sippd.php");
|
||||
|
||||
/*function ambil_renja($db = null, $tahun = 0, $id_skpd = 0) {
|
||||
$aret = ['status' => "success", 'message' => 'Berhasil mendapatkan data!', 'action' => $_POST['action'], 'run' => $_POST['run'], 'data' => []];
|
||||
*/
|
||||
|
||||
function singkron_rka() {
|
||||
global $wpdb;
|
||||
$ret = array(
|
||||
'action' => $_POST['action'],
|
||||
'kode_sbl' => $_POST['kode_sbl'],
|
||||
'status' => 'success',
|
||||
'message' => 'Berhasil export RKA!'
|
||||
);
|
||||
if (!empty($_POST)) {
|
||||
if (!empty($_POST['api_key']) && $_POST['api_key'] == get_option('_crb_api_key_extension')) {
|
||||
$kodeunit = '';
|
||||
if (!empty($_POST['data_unit'])) {
|
||||
if (!empty($_POST['type']) && $_POST['type'] == 'ri') {
|
||||
$data_unit = json_decode(stripslashes(html_entity_decode($_POST['data_unit'])), true);
|
||||
$data_unit = $data_unit[0];
|
||||
$kodeunit = $data_unit['kode_unit'];
|
||||
$_POST['nama_skpd'] = $data_unit['nama_skpd'];
|
||||
$_POST['kode_sub_skpd'] = $data_unit['kode_skpd'];
|
||||
} else {
|
||||
$data_unit = $_POST['data_unit'];
|
||||
$kodeunit = $data_unit['kodeunit'];
|
||||
$_POST['nama_skpd'] = $data_unit['namaunit'];
|
||||
$_POST['kode_sub_skpd'] = $data_unit['kodeunit'];
|
||||
}
|
||||
//$data_unit = $_POST['data_unit'];
|
||||
} else if ($ret['status'] != 'error') {
|
||||
$ret['status'] = 'error';
|
||||
$ret['message'] = 'Format data Unit Salah!';
|
||||
}
|
||||
if (!isset($_POST['idsubbl'])) {
|
||||
$_POST['idsubbl'] = '';
|
||||
}
|
||||
if (!isset($_POST['idbl'])) {
|
||||
$_POST['idbl'] = '';
|
||||
}
|
||||
|
||||
$_POST['idsubbl'] = (int) $_POST['idsubbl'];
|
||||
$_POST['idbl'] = (int) $_POST['idbl'];
|
||||
|
||||
if (!empty($_POST['dataBl']) && $ret['status'] != 'error') {
|
||||
if (!empty($_POST['type']) && $_POST['type'] == 'ri') {
|
||||
$dataBl = json_decode(stripslashes(html_entity_decode($_POST['dataBl'])), true);
|
||||
} else {
|
||||
$dataBl = $_POST['dataBl'];
|
||||
}
|
||||
foreach ($dataBl as $k => $v) {
|
||||
/*$cek = $wpdb->get_var($wpdb->prepare("
|
||||
SELECT
|
||||
kode_sbl
|
||||
from data_sub_keg_bl
|
||||
where tahun_anggaran=%d
|
||||
AND kode_sbl=%s
|
||||
", $_POST['tahun_anggaran'], $_POST['kode_sbl']));*/
|
||||
|
||||
$kode_program = $v['kode_bidang_urusan'] . substr($v['kode_program'], 4, strlen($v['kode_program']));
|
||||
$kode_giat = $v['kode_bidang_urusan'] . substr($v['kode_giat'], 4, strlen($v['kode_giat']));
|
||||
$kode_sub_giat = $v['kode_bidang_urusan'] . substr($v['kode_sub_giat'], 4, strlen($v['kode_sub_giat']));
|
||||
// die($kode_giat);
|
||||
if (!isset($v['id_sub_bl'])) {
|
||||
$v['id_sub_bl'] = '';
|
||||
}
|
||||
if (!isset($v['id_bl'])) {
|
||||
$v['id_bl'] = '';
|
||||
}
|
||||
if (!isset($v['idsubbl'])) {
|
||||
$v['idsubbl'] = '';
|
||||
}
|
||||
if (!isset($v['idbl'])) {
|
||||
$v['idbl'] = '';
|
||||
}
|
||||
if (!isset($v['id_lokasi'])) {
|
||||
$v['id_lokasi'] = '';
|
||||
}
|
||||
if (!isset($v['nama_dana'])) {
|
||||
$v['nama_dana'] = '';
|
||||
}
|
||||
if (!isset($v['nama_lokasi'])) {
|
||||
$v['nama_lokasi'] = '';
|
||||
}
|
||||
if (!isset($v['id_dana'])) {
|
||||
$v['id_dana'] = '';
|
||||
}
|
||||
if (!isset($v['id_label_kokab'])) {
|
||||
$v['id_label_kokab'] = 0;
|
||||
}
|
||||
if (!isset($v['no_program'])) {
|
||||
$v['no_program'] = '';
|
||||
}
|
||||
if (!isset($v['target_1'])) {
|
||||
$v['target_1'] = '';
|
||||
}
|
||||
if (!isset($v['target_2'])) {
|
||||
$v['target_2'] = '';
|
||||
}
|
||||
if (!isset($v['target_3'])) {
|
||||
$v['target_3'] = '';
|
||||
}
|
||||
if (!isset($v['target_4'])) {
|
||||
$v['target_4'] = '';
|
||||
}
|
||||
if (!isset($v['target_5'])) {
|
||||
$v['target_5'] = '';
|
||||
}
|
||||
if (!isset($v['nama_bidang_urusan'])) {
|
||||
$v['nama_bidang_urusan'] = '';
|
||||
}
|
||||
if (!isset($v['no_giat'])) {
|
||||
$v['no_giat'] = '';
|
||||
}
|
||||
if (!isset($v['id_label_prov'])) {
|
||||
$v['id_label_prov'] = 0;
|
||||
}
|
||||
if (!isset($v['label_prov'])) {
|
||||
$v['label_prov'] = '';
|
||||
}
|
||||
if (!isset($v['output_sub_giat'])) {
|
||||
$v['output_sub_giat'] = '';
|
||||
}
|
||||
if (!isset($v['sasaran'])) {
|
||||
$v['sasaran'] = '';
|
||||
}
|
||||
if (!isset($v['indikator'])) {
|
||||
$v['indikator'] = '';
|
||||
}
|
||||
if (!isset($v['pagu_n_depan'])) {
|
||||
$v['pagu_n_depan'] = 0;
|
||||
}
|
||||
if (!isset($v['satuan'])) {
|
||||
$v['satuan'] = '';
|
||||
}
|
||||
if (!isset($v['id_rpjmd'])) {
|
||||
$v['id_rpjmd'] = 0;
|
||||
}
|
||||
if (!isset($v['id_giat'])) {
|
||||
$v['id_giat'] = 0;
|
||||
}
|
||||
if (!isset($v['id_label_pusat'])) {
|
||||
$v['id_label_pusat'] = '';
|
||||
}
|
||||
if (!isset($_POST['nama_skpd'])) {
|
||||
$_POST['nama_skpd'] = '';
|
||||
}
|
||||
if (!isset($v['kode_skpd'])) {
|
||||
$v['kode_skpd'] = '';
|
||||
}
|
||||
if (!isset($v['label_pusat'])) {
|
||||
$v['label_pusat'] = '';
|
||||
}
|
||||
if (!isset($v['label_kokab'])) {
|
||||
$v['label_kokab'] = '';
|
||||
}
|
||||
|
||||
$opsi = array(
|
||||
'id_sub_skpd' => $v['id_sub_skpd'],
|
||||
'id_lokasi' => $v['id_lokasi'],
|
||||
'id_label_kokab' => $v['id_label_kokab'],
|
||||
'nama_dana' => $v['nama_dana'],
|
||||
'no_sub_giat' => $v['no_sub_giat'],
|
||||
'kode_giat' => $kode_giat,
|
||||
'id_program' => $v['id_program'],
|
||||
'nama_lokasi' => $v['nama_lokasi'],
|
||||
'waktu_akhir' => $v['waktu_akhir'],
|
||||
'pagu_n_lalu' => $v['pagu_n_lalu'],
|
||||
'id_urusan' => $v['id_urusan'],
|
||||
'id_unik_sub_bl' => $v['id_unik_sub_bl'],
|
||||
'id_sub_giat' => $v['id_sub_giat'],
|
||||
'label_prov' => $v['label_prov'],
|
||||
'kode_program' => $kode_program,
|
||||
'kode_sub_giat' => $kode_sub_giat,
|
||||
'no_program' => $v['no_program'],
|
||||
'kode_urusan' => $v['kode_urusan'],
|
||||
'kode_bidang_urusan' => $v['kode_bidang_urusan'],
|
||||
'nama_program' => $v['nama_program'],
|
||||
'target_4' => $v['target_4'],
|
||||
'target_5' => $v['target_5'],
|
||||
'id_bidang_urusan' => $v['id_bidang_urusan'],
|
||||
'nama_bidang_urusan' => $v['nama_bidang_urusan'],
|
||||
'target_3' => $v['target_3'],
|
||||
'no_giat' => $v['no_giat'],
|
||||
'id_label_prov' => $v['id_label_prov'],
|
||||
'waktu_awal' => $v['waktu_awal'],
|
||||
'pagu' => $v['pagu'],
|
||||
'pagumurni' => $v['pagumurni'],
|
||||
'output_sub_giat' => $v['output_sub_giat'],
|
||||
'sasaran' => $v['sasaran'],
|
||||
'indikator' => $v['indikator'],
|
||||
'id_dana' => $v['id_dana'],
|
||||
'nama_sub_giat' => $v['nama_sub_giat'],
|
||||
'pagu_n_depan' => $v['pagu_n_depan'],
|
||||
'satuan' => $v['satuan'],
|
||||
'id_rpjmd' => $v['id_rpjmd'],
|
||||
'id_giat' => $v['id_giat'],
|
||||
'id_label_pusat' => $v['id_label_pusat'],
|
||||
'nama_giat' => $v['nama_giat'],
|
||||
'kode_skpd' => $_POST['kode_skpd'],
|
||||
'nama_skpd' => $_POST['nama_skpd'],
|
||||
'kode_sub_skpd' => $_POST['kode_sub_skpd'],
|
||||
'id_skpd' => $v['id_skpd'],
|
||||
'id_sub_bl' => $v['id_sub_bl'],
|
||||
'nama_sub_skpd' => $v['nama_sub_skpd'],
|
||||
'target_1' => $v['target_1'],
|
||||
'nama_urusan' => $v['nama_urusan'],
|
||||
'target_2' => $v['target_2'],
|
||||
'label_kokab' => $v['label_kokab'],
|
||||
'label_pusat' => $v['label_pusat'],
|
||||
'pagu_keg' => $_POST['pagu'],
|
||||
'id_bl' => $v['id_bl'],
|
||||
'kode_bl' => $_POST['kode_bl'],
|
||||
'kode_sbl' => $_POST['kode_sbl'],
|
||||
'active' => 1,
|
||||
'update_at' => current_time('mysql'),
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran']
|
||||
);
|
||||
// print_r($opsi); die($wpdb->last_query);
|
||||
|
||||
/*if (!empty($cek)) {
|
||||
$wpdb->update('data_sub_keg_bl', $opsi, array(
|
||||
'kode_sbl' => $_POST['kode_sbl'],
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran']
|
||||
));
|
||||
} else {*/
|
||||
$wpdb->insert('data_sub_keg_bl', $opsi);
|
||||
//}
|
||||
|
||||
//$nama_page = $_POST['tahun_anggaran'] . ' | ' . $kodeunit . ' | ' . $kode_giat . ' | ' . $v['nama_giat'];
|
||||
//$url_kegiatan = $this->generatePage($nama_page, $_POST['tahun_anggaran'], '[tampilrka kode_bl="' . $_POST['kode_bl'] . '" tahun_anggaran="' . $_POST['tahun_anggaran'] . '"]');
|
||||
$ret['message'] .= ' URL OK';// . $url_kegiatan;
|
||||
}
|
||||
} else if ($ret['status'] != 'error') {
|
||||
$ret['status'] = 'error';
|
||||
$ret['message'] = 'Format data BL Salah!';
|
||||
}
|
||||
|
||||
if ($_POST['total_page'] == $_POST['no_page']) {
|
||||
if (!empty($_POST['dataOutput']) && $ret['status'] != 'error') {
|
||||
if (!empty($_POST['type']) && $_POST['type'] == 'ri') {
|
||||
$dataOutput = json_decode(stripslashes(html_entity_decode($_POST['dataOutput'])), true);
|
||||
} else {
|
||||
$dataOutput = $_POST['dataOutput'];
|
||||
}
|
||||
/*$wpdb->update('data_sub_keg_indikator', array('active' => 0), array(
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran'],
|
||||
'kode_sbl' => $_POST['kode_sbl']
|
||||
));*/
|
||||
foreach ($dataOutput as $k => $v) {
|
||||
/*$cek = $wpdb->get_var($wpdb->prepare("
|
||||
SELECT
|
||||
kode_sbl
|
||||
from data_sub_keg_indikator
|
||||
where tahun_anggaran=%d
|
||||
AND kode_sbl=%s
|
||||
AND idoutputbl=%s
|
||||
", $_POST['tahun_anggaran'], $_POST['kode_sbl'], $v['idoutputbl']));*/
|
||||
$opsi = array(
|
||||
'outputteks' => $v['outputteks'],
|
||||
'targetoutput' => $v['targetoutput'],
|
||||
'satuanoutput' => $v['satuanoutput'],
|
||||
'idoutputbl' => $v['idoutputbl'],
|
||||
'targetoutputteks' => $v['targetoutputteks'],
|
||||
'kode_sbl' => $_POST['kode_sbl'],
|
||||
'idsubbl' => $_POST['idsubbl'],
|
||||
'active' => 1,
|
||||
'update_at' => current_time('mysql'),
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran']
|
||||
);
|
||||
/*if (!empty($cek)) {
|
||||
$wpdb->update('data_sub_keg_indikator', $opsi, array(
|
||||
'kode_sbl' => $_POST['kode_sbl'],
|
||||
'idoutputbl' => $v['idoutputbl'],
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran']
|
||||
));
|
||||
} else {*/
|
||||
$wpdb->insert('data_sub_keg_indikator', $opsi);
|
||||
//}
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($_POST['dataHasil']) && $ret['status'] != 'error') {
|
||||
if (!empty($_POST['type']) && $_POST['type'] == 'ri') {
|
||||
$dataHasil = json_decode(stripslashes(html_entity_decode($_POST['dataHasil'])), true);
|
||||
} else {
|
||||
$dataHasil = $_POST['dataHasil'];
|
||||
}
|
||||
/*$wpdb->update('data_keg_indikator_hasil', array('active' => 0), array(
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran'],
|
||||
'kode_sbl' => $_POST['kode_sbl']
|
||||
));*/
|
||||
foreach ($dataHasil as $k => $v) {
|
||||
/*$cek = $wpdb->get_var($wpdb->prepare("
|
||||
SELECT
|
||||
kode_sbl
|
||||
from data_keg_indikator_hasil
|
||||
where tahun_anggaran=%d
|
||||
AND kode_sbl=%s
|
||||
AND hasilteks=%s
|
||||
", $_POST['tahun_anggaran'], $_POST['kode_sbl'], $v['hasilteks']));*/
|
||||
$opsi = array(
|
||||
'hasilteks' => $v['hasilteks'],
|
||||
'satuanhasil' => $v['satuanhasil'],
|
||||
'targethasil' => $v['targethasil'],
|
||||
'targethasilteks' => $v['targethasilteks'],
|
||||
'kode_sbl' => $_POST['kode_sbl'],
|
||||
'idsubbl' => $_POST['idsubbl'],
|
||||
'active' => 1,
|
||||
'update_at' => current_time('mysql'),
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran']
|
||||
);
|
||||
/*if (!empty($cek)) {
|
||||
$wpdb->update('data_keg_indikator_hasil', $opsi, array(
|
||||
'kode_sbl' => $_POST['kode_sbl'],
|
||||
'hasilteks' => $v['hasilteks'],
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran']
|
||||
));
|
||||
} else {*/
|
||||
$wpdb->insert('data_keg_indikator_hasil', $opsi);
|
||||
//}
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($_POST['dataTag']) && $ret['status'] != 'error') {
|
||||
if (!empty($_POST['type']) && $_POST['type'] == 'ri') {
|
||||
$dataTag = json_decode(stripslashes(html_entity_decode($_POST['dataTag'])), true);
|
||||
} else {
|
||||
$dataTag = $_POST['dataTag'];
|
||||
}
|
||||
/*$wpdb->update('data_tag_sub_keg', array('active' => 0), array(
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran'],
|
||||
'kode_sbl' => $_POST['kode_sbl']
|
||||
));*/
|
||||
foreach ($dataTag as $k => $v) {
|
||||
/*$cek = $wpdb->get_var($wpdb->prepare("
|
||||
SELECT
|
||||
kode_sbl
|
||||
from data_tag_sub_keg
|
||||
where tahun_anggaran=%d
|
||||
AND kode_sbl=%s
|
||||
AND idtagbl=%s
|
||||
", $_POST['tahun_anggaran'], $_POST['kode_sbl'], $v['idtagbl']));*/
|
||||
$opsi = array(
|
||||
'idlabelgiat' => $v['idlabelgiat'],
|
||||
'namalabel' => $v['namalabel'],
|
||||
'idtagbl' => $v['idtagbl'],
|
||||
'kode_sbl' => $_POST['kode_sbl'],
|
||||
'idsubbl' => $_POST['idsubbl'],
|
||||
'active' => 1,
|
||||
'update_at' => current_time('mysql'),
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran']
|
||||
);
|
||||
/*if (!empty($cek)) {
|
||||
$wpdb->update('data_tag_sub_keg', $opsi, array(
|
||||
'kode_sbl' => $_POST['kode_sbl'],
|
||||
'idtagbl' => $v['idtagbl'],
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran']
|
||||
));
|
||||
} else {*/
|
||||
$wpdb->insert('data_tag_sub_keg', $opsi);
|
||||
//}
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($_POST['dataCapaian']) && $ret['status'] != 'error') {
|
||||
if (!empty($_POST['type']) && $_POST['type'] == 'ri') {
|
||||
$dataCapaian = json_decode(stripslashes(html_entity_decode($_POST['dataCapaian'])), true);
|
||||
} else {
|
||||
$dataCapaian = $_POST['dataCapaian'];
|
||||
}
|
||||
/*$wpdb->update('data_capaian_prog_sub_keg', array('active' => 0), array(
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran'],
|
||||
'kode_sbl' => $_POST['kode_sbl']
|
||||
));*/
|
||||
foreach ($dataCapaian as $k => $v) {
|
||||
/*$cek = $wpdb->get_var($wpdb->prepare("
|
||||
SELECT
|
||||
kode_sbl
|
||||
from data_capaian_prog_sub_keg
|
||||
where tahun_anggaran=%d
|
||||
AND kode_sbl=%s
|
||||
AND capaianteks=%s
|
||||
", $_POST['tahun_anggaran'], $_POST['kode_sbl'], $v['capaianteks']));*/
|
||||
$opsi = array(
|
||||
'satuancapaian' => $v['satuancapaian'],
|
||||
'targetcapaianteks' => $v['targetcapaianteks'],
|
||||
'capaianteks' => $v['capaianteks'],
|
||||
'targetcapaian' => $v['targetcapaian'],
|
||||
'kode_sbl' => $_POST['kode_sbl'],
|
||||
'idsubbl' => $_POST['idsubbl'],
|
||||
'active' => 1,
|
||||
'update_at' => current_time('mysql'),
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran']
|
||||
);
|
||||
/*if (!empty($cek)) {
|
||||
$wpdb->update('data_capaian_prog_sub_keg', $opsi, array(
|
||||
'kode_sbl' => $_POST['kode_sbl'],
|
||||
'capaianteks' => $v['capaianteks'],
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran']
|
||||
));
|
||||
} else {*/
|
||||
$wpdb->insert('data_capaian_prog_sub_keg', $opsi);
|
||||
//}
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($_POST['dataOutputGiat']) && $ret['status'] != 'error') {
|
||||
if (!empty($_POST['type']) && $_POST['type'] == 'ri') {
|
||||
$dataOutputGiat = json_decode(stripslashes(html_entity_decode($_POST['dataOutputGiat'])), true);
|
||||
} else {
|
||||
$dataOutputGiat = $_POST['dataOutputGiat'];
|
||||
}
|
||||
/*$wpdb->update('data_output_giat_sub_keg', array('active' => 0), array(
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran'],
|
||||
'kode_sbl' => $_POST['kode_sbl']
|
||||
));*/
|
||||
foreach ($dataOutputGiat as $k => $v) {
|
||||
/*$cek = $wpdb->get_var($wpdb->prepare("
|
||||
SELECT
|
||||
kode_sbl
|
||||
from data_output_giat_sub_keg
|
||||
where tahun_anggaran=%d
|
||||
AND kode_sbl=%s
|
||||
AND outputteks=%s
|
||||
", $_POST['tahun_anggaran'], $_POST['kode_sbl'], $v['outputteks']));*/
|
||||
$opsi = array(
|
||||
'outputteks' => $v['outputteks'],
|
||||
'satuanoutput' => $v['satuanoutput'],
|
||||
'targetoutput' => $v['targetoutput'],
|
||||
'targetoutputteks' => $v['targetoutputteks'],
|
||||
'kode_sbl' => $_POST['kode_sbl'],
|
||||
'idsubbl' => $_POST['idsubbl'],
|
||||
'active' => 1,
|
||||
'update_at' => current_time('mysql'),
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran']
|
||||
);
|
||||
/*if (!empty($cek)) {
|
||||
$wpdb->update('data_output_giat_sub_keg', $opsi, array(
|
||||
'kode_sbl' => $_POST['kode_sbl'],
|
||||
'outputteks' => $v['outputteks'],
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran']
|
||||
));
|
||||
} else {*/
|
||||
$wpdb->insert('data_output_giat_sub_keg', $opsi);
|
||||
//}
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($_POST['dataDana']) && $ret['status'] != 'error') {
|
||||
if (!empty($_POST['type']) && $_POST['type'] == 'ri') {
|
||||
$dataDana = json_decode(stripslashes(html_entity_decode($_POST['dataDana'])), true);
|
||||
} else {
|
||||
$dataDana = $_POST['dataDana'];
|
||||
}
|
||||
/*$wpdb->update('data_dana_sub_keg', array('active' => 0), array(
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran'],
|
||||
'kode_sbl' => $_POST['kode_sbl']
|
||||
));*/
|
||||
foreach ($dataDana as $k => $v) {
|
||||
/*$cek = $wpdb->get_var($wpdb->prepare("
|
||||
SELECT
|
||||
kode_sbl
|
||||
from data_dana_sub_keg
|
||||
where tahun_anggaran=%d
|
||||
AND kode_sbl=%s
|
||||
AND iddanasubbl=%s
|
||||
", $_POST['tahun_anggaran'], $_POST['kode_sbl'], $v['iddanasubbl']));*/
|
||||
$opsi = array(
|
||||
'namadana' => $v['namadana'],
|
||||
'kodedana' => $v['kodedana'],
|
||||
'iddana' => $v['iddana'],
|
||||
'iddanasubbl' => $v['iddanasubbl'],
|
||||
'pagudana' => $v['pagudana'],
|
||||
'is_locked' => $v['is_locked'],
|
||||
'kode_sbl' => $_POST['kode_sbl'],
|
||||
'idsubbl' => $_POST['idsubbl'],
|
||||
'active' => 1,
|
||||
'update_at' => current_time('mysql'),
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran']
|
||||
);
|
||||
/*if (!empty($cek)) {
|
||||
$wpdb->update('data_dana_sub_keg', $opsi, array(
|
||||
'kode_sbl' => $_POST['kode_sbl'],
|
||||
'iddanasubbl' => $v['iddanasubbl'],
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran']
|
||||
));
|
||||
} else {*/
|
||||
$wpdb->insert('data_dana_sub_keg', $opsi);
|
||||
//}
|
||||
}
|
||||
}
|
||||
if (!empty($_POST['dataLokout']) && $ret['status'] != 'error') {
|
||||
if (!empty($_POST['type']) && $_POST['type'] == 'ri') {
|
||||
$dataLokout = json_decode(stripslashes(html_entity_decode($_POST['dataLokout'])), true);
|
||||
} else {
|
||||
$dataLokout = $_POST['dataLokout'];
|
||||
}
|
||||
/*$wpdb->update('data_lokasi_sub_keg', array('active' => 0), array(
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran'],
|
||||
'kode_sbl' => $_POST['kode_sbl']
|
||||
));*/
|
||||
foreach ($dataLokout as $k => $v) {
|
||||
/*$cek = $wpdb->get_var($wpdb->prepare("
|
||||
SELECT
|
||||
kode_sbl
|
||||
from data_lokasi_sub_keg
|
||||
where tahun_anggaran=%d
|
||||
AND kode_sbl=%s
|
||||
AND iddetillokasi=%s
|
||||
", $_POST['tahun_anggaran'], $_POST['kode_sbl'], $v['iddetillokasi']));*/
|
||||
$opsi = array(
|
||||
'camatteks' => $v['camatteks'],
|
||||
'daerahteks' => $v['daerahteks'],
|
||||
'idcamat' => $v['idcamat'],
|
||||
'iddetillokasi' => $v['iddetillokasi'],
|
||||
'idkabkota' => $v['idkabkota'],
|
||||
'idlurah' => $v['idlurah'],
|
||||
'lurahteks' => $v['lurahteks'],
|
||||
'kode_sbl' => $_POST['kode_sbl'],
|
||||
'idsubbl' => $_POST['idsubbl'],
|
||||
'active' => 1,
|
||||
'update_at' => current_time('mysql'),
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran']
|
||||
);
|
||||
/*if (!empty($cek)) {
|
||||
$wpdb->update('data_lokasi_sub_keg', $opsi, array(
|
||||
'kode_sbl' => $_POST['kode_sbl'],
|
||||
'iddetillokasi' => $v['iddetillokasi'],
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran']
|
||||
));
|
||||
} else {*/
|
||||
$wpdb->insert('data_lokasi_sub_keg', $opsi);
|
||||
//}
|
||||
}
|
||||
}
|
||||
if (!empty($_POST['realisasi']) && $ret['status'] != 'error') {
|
||||
$realisasi = $_POST['realisasi'];
|
||||
/*$wpdb->update('data_realisasi_akun_sipd', array('active' => 0), array(
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran'],
|
||||
'kode_sbl' => $_POST['kode_sbl']
|
||||
));*/
|
||||
foreach ($realisasi as $k => $v) {
|
||||
/*$cek_id = $wpdb->get_var($wpdb->prepare("
|
||||
SELECT
|
||||
kode_sbl
|
||||
from data_realisasi_akun_sipd
|
||||
where tahun_anggaran=%d
|
||||
AND kode_sbl=%s
|
||||
AND kode_akun=%s
|
||||
", $_POST['tahun_anggaran'], $_POST['kode_sbl'], $v['kode_akun']));*/
|
||||
$opsi = array(
|
||||
'id_unit' => $v['id_unit'],
|
||||
'id_skpd' => $v['id_skpd'],
|
||||
'id_sub_skpd' => $v['id_sub_skpd'],
|
||||
'id_program' => $v['id_program'],
|
||||
'id_giat' => $v['id_giat'],
|
||||
'id_sub_giat' => $v['id_sub_giat'],
|
||||
'id_daerah' => $v['id_daerah'],
|
||||
'lokus_akun_teks' => $v['lokus_akun_teks'],
|
||||
'id_akun' => $v['id_akun'],
|
||||
'kode_akun' => $v['kode_akun'],
|
||||
'nama_akun' => $v['nama_akun'],
|
||||
'is_locked' => $v['is_locked'],
|
||||
'nilai' => $v['nilai'],
|
||||
'action' => $v['action'],
|
||||
'realisasi' => $v['realisasi'],
|
||||
'kode_sbl' => $_POST['kode_sbl'],
|
||||
'active' => 1,
|
||||
'update_at' => current_time('mysql'),
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran']
|
||||
);
|
||||
/*if (!empty($cek_id)) {
|
||||
$wpdb->update('data_realisasi_akun_sipd', $opsi, array(
|
||||
'id' => $cek_id
|
||||
));
|
||||
} else {*/
|
||||
$wpdb->insert('data_realisasi_akun_sipd', $opsi);
|
||||
//}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$iddana = false;
|
||||
if (!empty($_POST['dataDana'])) {
|
||||
if (!empty($_POST['type']) && $_POST['type'] == 'ri') {
|
||||
$dataDana = json_decode(stripslashes(html_entity_decode($_POST['dataDana'])), true);
|
||||
} else {
|
||||
$dataDana = $_POST['dataDana'];
|
||||
}
|
||||
foreach ($dataDana as $k => $v) {
|
||||
if (
|
||||
empty($iddana)
|
||||
&& !empty($v['iddana'])
|
||||
) {
|
||||
$iddana = $v['iddana'];
|
||||
}
|
||||
}
|
||||
}
|
||||
if (empty($iddana)) {
|
||||
$iddana = get_option('_crb_default_sumber_dana');
|
||||
}
|
||||
|
||||
if (!empty($_POST['rka']) && $ret['status'] != 'error') {
|
||||
if (!empty($_POST['type']) && $_POST['type'] == 'ri') {
|
||||
$rka = json_decode(stripslashes($_POST['rka']), true);
|
||||
} else {
|
||||
$rka = $_POST['rka'];
|
||||
if ($rka == 0) {
|
||||
$rka = array();
|
||||
}
|
||||
}
|
||||
if (
|
||||
(
|
||||
empty($rka)
|
||||
&& $_POST['no_page'] == 0
|
||||
)
|
||||
|| (
|
||||
!empty($_POST['no_page'])
|
||||
&& $_POST['no_page'] == 1
|
||||
)
|
||||
) {
|
||||
$wpdb->update('data_rka', array('active' => 0), array(
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran'],
|
||||
'kode_sbl' => $_POST['kode_sbl']
|
||||
), array('%d', '%s'));
|
||||
}
|
||||
foreach ($rka as $k => $v) {
|
||||
/*$cek = $wpdb->get_var($wpdb->prepare("
|
||||
SELECT
|
||||
id_rinci_sub_bl
|
||||
from data_rka
|
||||
where tahun_anggaran=%d
|
||||
AND id_rinci_sub_bl=%s
|
||||
AND kode_sbl=%s
|
||||
", $_POST['tahun_anggaran'], $v['id_rinci_sub_bl'], $_POST['kode_sbl']));*/
|
||||
$opsi = array(
|
||||
'created_user' => $v['created_user'],
|
||||
'createddate' => $v['createddate'],
|
||||
'createdtime' => $v['createdtime'],
|
||||
'harga_satuan' => $v['harga_satuan'],
|
||||
'harga_satuan_murni' => $v['harga_satuan_murni'],
|
||||
'id_daerah' => $v['id_daerah'],
|
||||
'id_rinci_sub_bl' => $v['id_rinci_sub_bl'],
|
||||
'id_standar_nfs' => $v['id_standar_nfs'],
|
||||
'is_locked' => $v['is_locked'],
|
||||
'jenis_bl' => $v['jenis_bl'],
|
||||
'ket_bl_teks' => $v['ket_bl_teks'],
|
||||
'kode_akun' => $v['kode_akun'],
|
||||
'koefisien' => $v['koefisien'],
|
||||
'koefisien_murni' => $v['koefisien_murni'],
|
||||
'lokus_akun_teks' => $v['lokus_akun_teks'],
|
||||
'nama_akun' => $v['nama_akun'],
|
||||
'nama_komponen' => $v['nama_komponen'],
|
||||
'spek_komponen' => $v['spek_komponen'],
|
||||
'satuan' => $v['satuan'],
|
||||
'sat1' => $v['sat1'],
|
||||
'sat2' => $v['sat2'],
|
||||
'sat3' => $v['sat3'],
|
||||
'sat4' => $v['sat4'],
|
||||
'volum1' => $v['volum1'],
|
||||
'volum2' => $v['volum2'],
|
||||
'volum3' => $v['volum3'],
|
||||
'volum4' => $v['volum4'],
|
||||
'volume' => $v['volume'],
|
||||
'volume_murni' => $v['volume_murni'],
|
||||
'spek' => $v['spek'],
|
||||
'subs_bl_teks' => $v['subs_bl_teks']['subs_asli'],
|
||||
'substeks' => $v['subs_bl_teks']['substeks'],
|
||||
'id_dana' => $v['subs_bl_teks']['sumber_dana']['id_dana'],
|
||||
'nama_dana' => $v['subs_bl_teks']['sumber_dana']['nama_dana'],
|
||||
'is_paket' => $v['subs_bl_teks']['sumber_dana']['is_paket'],
|
||||
'kode_dana' => $v['subs_bl_teks']['sumber_dana']['kode_dana'],
|
||||
'subtitle_teks' => $v['subs_bl_teks']['sumber_dana']['subtitle_teks'],
|
||||
'total_harga' => $v['total_harga'],
|
||||
'rincian' => $v['rincian'],
|
||||
'rincian_murni' => $v['rincian_murni'],
|
||||
'totalpajak' => $v['totalpajak'],
|
||||
'pajak' => $v['pajak'],
|
||||
'pajak_murni' => $v['pajak_murni'],
|
||||
'updated_user' => $v['updated_user'],
|
||||
'updateddate' => $v['updateddate'],
|
||||
'updatedtime' => $v['updatedtime'],
|
||||
'user1' => $this->replace_char($v['user1']),
|
||||
'user2' => $this->replace_char($v['user2']),
|
||||
'idbl' => $_POST['idbl'],
|
||||
'idsubbl' => $_POST['idsubbl'],
|
||||
'kode_bl' => $_POST['kode_bl'],
|
||||
'kode_sbl' => $_POST['kode_sbl'],
|
||||
'idkomponen' => $v['idkomponen'],
|
||||
'idketerangan' => $v['idketerangan'],
|
||||
'idsubtitle' => $v['subs_bl_teks']['sumber_dana']['id_subtitle'],
|
||||
'ssh_locked' => $v['ssh_locked'],
|
||||
'akun_locked' => $v['akun_locked'],
|
||||
'active' => 1,
|
||||
'update_at' => current_time('mysql'),
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran']
|
||||
);
|
||||
|
||||
if (
|
||||
!empty($v['id_penerima'])
|
||||
|| !empty($v['id_prop_penerima'])
|
||||
|| !empty($v['id_camat_penerima'])
|
||||
|| !empty($v['id_kokab_penerima'])
|
||||
|| !empty($v['id_lurah_penerima'])
|
||||
) {
|
||||
$opsi['id_prop_penerima'] = $v['id_prop_penerima'];
|
||||
$opsi['id_camat_penerima'] = $v['id_camat_penerima'];
|
||||
$opsi['id_kokab_penerima'] = $v['id_kokab_penerima'];
|
||||
$opsi['id_lurah_penerima'] = $v['id_lurah_penerima'];
|
||||
$opsi['id_penerima'] = $v['id_penerima'];
|
||||
}
|
||||
|
||||
/*if (!empty($cek)) {
|
||||
$wpdb->update('data_rka', $opsi, array(
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran'],
|
||||
'id_rinci_sub_bl' => $v['id_rinci_sub_bl'],
|
||||
'kode_sbl' => $_POST['kode_sbl']
|
||||
));
|
||||
} else {*/
|
||||
$wpdb->insert('data_rka', $opsi);
|
||||
//}
|
||||
// print_r($opsi); print_r($wpdb->last_query);
|
||||
|
||||
if (!empty($v['id_rinci_sub_bl'])) {
|
||||
$cek_id = $wpdb->get_var($wpdb->prepare(
|
||||
'
|
||||
select
|
||||
id
|
||||
from data_mapping_sumberdana
|
||||
where tahun_anggaran=%d
|
||||
and id_rinci_sub_bl=%d
|
||||
and active=1',
|
||||
$_POST['tahun_anggaran'],
|
||||
$v['id_rinci_sub_bl']
|
||||
));
|
||||
$opsi = array(
|
||||
'id_rinci_sub_bl' => $v['id_rinci_sub_bl'],
|
||||
'id_sumber_dana' => $iddana,
|
||||
'user' => 'Singkron SIPD Merah',
|
||||
'active' => 1,
|
||||
'update_at' => current_time('mysql'),
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran']
|
||||
);
|
||||
$update = false;
|
||||
if (!empty($v['subs_bl_teks']['sumber_dana']['id_dana'])) {
|
||||
$update = true;
|
||||
$opsi['id_sumber_dana'] = $v['subs_bl_teks']['sumber_dana']['id_dana'];
|
||||
}
|
||||
if (empty($cek_id)) {
|
||||
$wpdb->insert('data_mapping_sumberdana', $opsi);
|
||||
} else if ($update) {
|
||||
$wpdb->update('data_mapping_sumberdana', $opsi, array(
|
||||
'id' => $cek_id
|
||||
));
|
||||
}
|
||||
}
|
||||
}
|
||||
} else if ($ret['status'] != 'error') {
|
||||
// untuk menghapus rka subkeg yang dihapus di perubahan
|
||||
if ($_POST['rka'] == 0) {
|
||||
$wpdb->update('data_rka', array('active' => 0), array(
|
||||
'tahun_anggaran' => $_POST['tahun_anggaran'],
|
||||
'kode_sbl' => $_POST['kode_sbl']
|
||||
), array('%d', '%s'));
|
||||
} else {
|
||||
$ret['status'] = 'error';
|
||||
$ret['message'] = 'Format RKA Salah!';
|
||||
}
|
||||
}
|
||||
|
||||
if (
|
||||
get_option('_crb_singkron_simda') == 1
|
||||
&& get_option('_crb_tahun_anggaran_sipd') == $_POST['tahun_anggaran']
|
||||
&& $_POST['total_page'] == $_POST['no_page']
|
||||
) {
|
||||
$debug = false;
|
||||
if (get_option('_crb_singkron_simda_debug') == 1) {
|
||||
$debug = true;
|
||||
}
|
||||
$this->simda->singkronSimda(array(
|
||||
'return' => $debug
|
||||
));
|
||||
}
|
||||
} else {
|
||||
$ret['status'] = 'error';
|
||||
$ret['message'] = 'APIKEY tidak sesuai!';
|
||||
}
|
||||
} else {
|
||||
$ret['status'] = 'error';
|
||||
$ret['message'] = 'Format Salah!';
|
||||
}
|
||||
return $aret;
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,89 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
Module : /apps/php/api/rpjmd.php
|
||||
Desc. : PHP - Fungsi RPJMD
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : December 18th, 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;
|
||||
|
||||
$id_rpjmd = $_SESSION['__WEB_APP']['RENC_RPJMDID'];
|
||||
$thn_submap = map_tahun_submap($id_rpjmd);
|
||||
|
||||
function simpan_rpjmd_prog($db = null, $adata = []) {
|
||||
global $id_rpjmd, $thn_submap;
|
||||
$aret = ['status' => "success", 'message' => 'Berhasil simpan data Program RPJMD !'];
|
||||
|
||||
foreach ($adata as $_key1 => $aprog) {
|
||||
$apull = [ 'RPJMDID' => $id_rpjmd,
|
||||
'BUID' => 0,
|
||||
'ProgID' => 0,
|
||||
'K_Bidu' => $aprog['K_Bidu'],
|
||||
'K_Prog' => $aprog['K_Prog'],
|
||||
'Pagu_T1' => $aprog['Pagu_T1'],
|
||||
'Pagu_T2' => $aprog['Pagu_T2'],
|
||||
'Pagu_T3' => $aprog['Pagu_T3'],
|
||||
'Pagu_T4' => $aprog['Pagu_T4'],
|
||||
'Pagu_T5' => $aprog['Pagu_T5']
|
||||
];
|
||||
// program rpjmd
|
||||
$db->Query("SELECT BUID,ProgID FROM para90_submap WHERE Tahun='".$thn_submap."' AND K_Prog='".$aprog['K_Prog']."' LIMIT 1");
|
||||
if ($db->Next()) $apull = array_merge($apull, $db->AllRow());
|
||||
$rd_progid = fastInsert("rpjmd_prog", $apull);
|
||||
|
||||
// outcome
|
||||
foreach ($aprog['outcome'] as $_key2 => $arec) {
|
||||
$apull = [ 'RD_PROGID' => $rd_progid,
|
||||
'RPJMDID' => $id_rpjmd,
|
||||
'No_Outcome' => $arec['No_Outcome'],
|
||||
'Txt_Outcome' => $arec['Txt_Outcome'],
|
||||
'A_OPD' => "0",
|
||||
'A_RDSASAR' => "0",
|
||||
'Limit_T1' => $arec['Limit_T1'],
|
||||
'Limit_T2' => $arec['Limit_T2'],
|
||||
'Limit_T3' => $arec['Limit_T3'],
|
||||
'Limit_T4' => $arec['Limit_T4'],
|
||||
'Limit_T5' => $arec['Limit_T5'],
|
||||
'SIPD_UNIK' => $arec['SIPD_UNIK']
|
||||
];
|
||||
// sasaran rpjmd
|
||||
if (count($arec['A_RDSASAR']) > 0) {
|
||||
$_tsa = "";
|
||||
foreach ($arec['A_RDSASAR'] 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);
|
||||
}
|
||||
// opd
|
||||
if (count($arec['A_OPD']) > 0) {
|
||||
$_topd = "";
|
||||
foreach ($arec['A_OPD'] as $_key_opd => $arec_opd) {
|
||||
$db->Query("SELECT OPDID FROM para90_opd WHERE K_OPD='".$arec_opd."' LIMIT 1");
|
||||
if ($db->Next()) $_topd .= ",".$db->Row("OPDID", 0)."";
|
||||
}
|
||||
$apull['A_OPD'] = substr($_topd, 1);
|
||||
}
|
||||
fastInsert("rpjmd_outcome", $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."'");
|
||||
|
||||
return $aret;
|
||||
}
|
||||
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,57 @@
|
||||
<?php
|
||||
|
||||
require_once(dirname(__FILE__)."/../../../../../modules3/db.mysqli.php");
|
||||
|
||||
$db = DB();
|
||||
$tahun = 0;
|
||||
|
||||
function API_SalingBantu() {
|
||||
$curl_array = array(
|
||||
CURLOPT_URL => "https://salingbantu.mempawahkab.go.id/api/api_bansos?api_key=6a8f0d2e3f47b53c5e687d9b45f10a98b2e33c9a7d4e6f5a3c2d1e0b8765f4c3",
|
||||
CURLOPT_RETURNTRANSFER => true,
|
||||
CURLOPT_ENCODING => "",
|
||||
CURLOPT_MAXREDIRS => 10,
|
||||
CURLOPT_TIMEOUT => 0,
|
||||
CURLOPT_FOLLOWLOCATION => true,
|
||||
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
|
||||
CURLOPT_HTTPHEADER => array(
|
||||
"Accept: application/json",
|
||||
"Content-Type: application/json",
|
||||
),
|
||||
CURLOPT_SSL_VERIFYHOST => false,
|
||||
CURLOPT_SSL_VERIFYPEER => false
|
||||
);
|
||||
|
||||
$curl = curl_init();
|
||||
curl_setopt_array($curl, $curl_array);
|
||||
$response = curl_exec($curl);
|
||||
$err = curl_error($curl);
|
||||
curl_close($curl);
|
||||
if ($err) {
|
||||
$aresult[] = $err;
|
||||
} else {
|
||||
$aresult = json_decode($response, true);
|
||||
}
|
||||
return $aresult;
|
||||
}
|
||||
|
||||
$adata = API_SalingBantu();
|
||||
|
||||
echo count($adata)." record<br>";
|
||||
$db->Query("TRUNCATE i_salingbantu");
|
||||
foreach ($adata as $arec) {
|
||||
$arec['nama_pengaju'] = $db->SafeSQL($arec['nama_pengaju']);
|
||||
$arec['judul'] = $db->SafeSQL($arec['judul']);
|
||||
$arec['latar_belakang'] = $db->SafeSQL($arec['latar_belakang']);
|
||||
$arec['maksud_tujuan'] = $db->SafeSQL($arec['maksud_tujuan']);
|
||||
$arec['alamat'] = $db->SafeSQL($arec['alamat']);
|
||||
|
||||
$db->Query("INSERT INTO i_salingbantu (Tahun,Kode,Organisasi,Judul,Latar,Maksud,Alamat,Rupiah,Tipe,Level_Tahap,Tahapan,N_OPD,DateStamp) VALUES ('".$arec['tahun']."','".$arec['id']."','".$arec['nama_pengaju']."','".$arec['judul']."','".$arec['latar_belakang']."','".$arec['maksud_tujuan']."','".$arec['alamat']."','".$arec['nilai']."','".$arec['type']."','".$arec['level_tahap']."','".$arec['tahapan']."','".$arec['opd']."',NOW())");
|
||||
$tahun = $arec['tahun'];
|
||||
}
|
||||
//$db->Query("update i_salingbantu a,para90_opd b set a.opdid=b.opdid where a.n_opd=b.n_opd");
|
||||
|
||||
$db->Query("INSERT INTO pok_salingbantu (Tahun,Kode,Organisasi,Judul,Latar,Maksud,Alamat,Rupiah,Tipe,Level_Tahap,Tahapan,DateStamp) SELECT Tahun,Kode,Organisasi,Judul,Latar,Maksud,Alamat,Rupiah,Tipe,Level_Tahap,Tahapan,DateStamp FROM i_salingbantu WHERE Tahun='".$tahun."' AND Kode NOT IN (SELECT Kode FROM pok_salingbantu WHERE Tahun='".$tahun."')");
|
||||
|
||||
echo "import done.";
|
||||
?>
|
||||
@@ -0,0 +1,15 @@
|
||||
<?php
|
||||
|
||||
require_once(dirname(__FILE__)."/../../../../../modules3/db.mysqli.php");
|
||||
|
||||
$db = DB();
|
||||
$adata = json_decode(file_get_contents("test.json"), true);
|
||||
|
||||
foreach ($adata as $arec) {
|
||||
// indikator program
|
||||
$db->Query("INSERT INTO renstra_prog_indi_copy (rpjmdid,opdid,progid,txt_indi,indi_satuan,indi_awal,indi_t1,indi_t2,indi_akhir,sipd_rpjmd,sipd_prog,sipd_sasar) VALUES (3,'".$arec['id_unit']."','".$arec['id_program']."','".$arec['indikator']."','".$arec['satuan']."','".$arec['target_awal']."','".$arec['target_1']."','".$arec['target_2']."','".$arec['target_akhir']."','".$arec['id_unik_indikator']."','".$arec['id_unik']."','".$arec['kode_sasaran']."')");
|
||||
//$db->Query("INSERT INTO para90_opd_copy (k_opd,n_opd,p_nip,p_nama,p_jabatan,p_pangkat,sipd_opd,sipd_unit,sipd_unik) VALUES ('".$arec['kode_skpd']."','".$arec['nama_skpd']."','".$arec['nip_kepala']."','".$arec['nama_kepala']."','".$arec['status_kepala']."','".$arec['pangkat_kepala']."','".$arec['id_skpd']."','".$arec['id_unit']."','".$arec['id_unik']."')");
|
||||
}
|
||||
|
||||
echo "import done.";
|
||||
?>
|
||||
@@ -0,0 +1,263 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/php/func.sippd.php
|
||||
Desc. : PHP - Fungsi SIPPD
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : May 15th, 2012.
|
||||
Last Modified : May 3rd, 2020.
|
||||
|
||||
(c) 2012 - 2020, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../vendor/autoload.php");
|
||||
|
||||
use siaupheng\fonia3\DB\MySQL;
|
||||
|
||||
$fdb = $db ?? new MySQL();
|
||||
|
||||
function map_tahun_submap($id_rpjmd = 0) {//oke
|
||||
$amap = [2 => 2021, 3 => 2025, 4 => 2026];
|
||||
return $amap[$id_rpjmd];
|
||||
}
|
||||
|
||||
function tahun_ang($t_extra = "") {//oke
|
||||
global $fdb;
|
||||
$atahun = array();
|
||||
$fdb->Query("SELECT Tahun FROM para_periode ORDER BY Tahun");
|
||||
while ($fdb->Next()){
|
||||
$atahun[$fdb->Row("Tahun")] = $t_extra . $fdb->Row("Tahun");
|
||||
}
|
||||
return $atahun;
|
||||
}
|
||||
|
||||
/*************** RENSTRA ***************/
|
||||
|
||||
function RENSTRA_Kode_Keg($id_rpjmd = "", $id_opd=0, $id_prog=0, $id_mkeg=0, $is_rutin=0) {
|
||||
global $fdb;
|
||||
if ($is_rutin==1) {
|
||||
$fdb->Query("SELECT K_Keg FROM para_kegiatan WHERE KegID='".$id_mkeg."' LIMIT 1");
|
||||
if ($fdb->Next()) $kode = $fdb->Row("K_Keg", "00");
|
||||
} else {
|
||||
$ino = 0;
|
||||
$fdb->Query("SELECT MAX(CONVERT(K_Keg,SIGNED)) Nomor FROM renstra_detail WHERE RPJMDID='".$id_rpjmd."' AND OPDID='".$id_opd."' AND ProgID='".$id_prog."'");
|
||||
if ($fdb->Next()) $ino = $fdb->Row("Nomor", 0);
|
||||
$kode = isi_nol($ino+1, (($ino+1)>=100?3:2));
|
||||
}
|
||||
return $kode;
|
||||
}
|
||||
|
||||
function RKA_Baru($k_tahun = "", $k_upt="", $tabel = "renja_keg") {
|
||||
global $fdb;
|
||||
$tno = $k_tahun . "-" . $k_upt . "-";
|
||||
$ino = 0;
|
||||
$fdb->Query("SELECT MAX(RIGHT(K_RKA,6)) Nomor FROM ".$tabel." WHERE LEFT(K_RKA,".strlen($tno).")='".$tno."'");
|
||||
if ($fdb->Next()) $ino = $fdb->Row("Nomor", 0);
|
||||
$tno .= isi_nol($ino+1, 6);
|
||||
return $tno;
|
||||
}
|
||||
|
||||
function Kode_Keg_Baru($k_tahun = "", $id_opd=0, $id_prog=0) {
|
||||
global $fdb;
|
||||
$ino = 0;
|
||||
$fdb->Query("SELECT MAX(K_Keg) Nomor FROM renja_subkeg WHERE Tahun='".$k_tahun."' AND OPDID='".$id_opd."' AND ProgID='".$id_prog."'");
|
||||
if ($fdb->Next()) $ino = $fdb->Row("Nomor", 0);
|
||||
return isi_nol($ino+1, 2);
|
||||
}
|
||||
|
||||
/*************** RENJA ***************/
|
||||
|
||||
function KegID_Baru($id_rpjmd = 0) {
|
||||
global $fdb;
|
||||
$ino = 0;
|
||||
$fdb->Query("SELECT MAX(RKegID) Nomor FROM renja_keg WHERE RPJMDID='".$id_rpjmd."'");
|
||||
if ($fdb->Next()) $ino = $fdb->Row("Nomor", 0);
|
||||
return ($ino+1);
|
||||
}
|
||||
|
||||
function Keg_Baru($id_prog = 0) {
|
||||
global $fdb;
|
||||
$ino = 0;
|
||||
$fdb->Query("SELECT MAX(K_Keg) Nomor FROM para_kegiatan WHERE ProgID='".$id_prog."'");
|
||||
if ($fdb->Next()) $ino = $fdb->Row("Nomor", 0);
|
||||
//$tno = isi_nol($ino+1, 2); todo: p90
|
||||
$tno = isi_nol($ino+1, 3);
|
||||
return $tno;
|
||||
}
|
||||
|
||||
function DPRD_Kode_Baru() {//oke
|
||||
global $fdb;
|
||||
$ino = 0;
|
||||
$fdb->Query("SELECT MAX(K_DPRD) Nomor FROM para_dprd");
|
||||
if ($fdb->Next()) $ino = $fdb->Row("Nomor", 0);
|
||||
$tno = isi_nol($ino+1, 2);
|
||||
return $tno;
|
||||
}
|
||||
|
||||
/*************** POKIR ***************/
|
||||
|
||||
function ID_Usulan_Dewan($id_rpjmd = 0, $tahun = 0) {
|
||||
global $fdb;
|
||||
$ino = 1;
|
||||
$fdb->Query("SELECT MAX(UsulanDID)+1 Nomor FROM pok_usulan_dewan WHERE RPJMDID='".$id_rpjmd."' AND Tahun='".$tahun."'");
|
||||
if ($fdb->Next()) $ino = $fdb->Row("Nomor", 1);
|
||||
return $ino;
|
||||
}
|
||||
|
||||
function Kode_Usulan_Dewan($id_dprd = 0) {
|
||||
global $fdb;
|
||||
$k_dewan = "00";
|
||||
if ($id_dprd > 0) {
|
||||
$fdb->Query("SELECT K_DPRD FROM para_dprd WHERE DPRDID='".$id_dprd."' LIMIT 1");
|
||||
if ($fdb->Next()) $k_dewan = $fdb->Row("K_DPRD");
|
||||
}
|
||||
$tno = $k_dewan . "-";
|
||||
$ino = 0;
|
||||
$fdb->Query("SELECT MAX(RIGHT(Kode,3)) Nomor FROM pok_usulan_dewan WHERE LEFT(Kode,".strlen($tno).")='".$tno."'");
|
||||
if ($fdb->Next()) $ino = $fdb->Row("Nomor", 0);
|
||||
$tno .= isi_nol($ino+1, 3);
|
||||
return $tno;
|
||||
}
|
||||
|
||||
function PokAksi_Array($is_form = false) {
|
||||
$aaksi = array(0=>"Belum Verifikasi", 1=>"Diterima", 2=>"Ditolak", 3=>"Mohon Klarifikasi");
|
||||
if ($is_form == true) unset($aaksi[0]);
|
||||
return $aaksi;
|
||||
}
|
||||
|
||||
function PokStatusAksi($aksi = 0) {
|
||||
$aaksi = PokAksi_Array();
|
||||
return $aaksi[$aksi];
|
||||
}
|
||||
|
||||
/*************** MUSRENBANG ***************/
|
||||
|
||||
function ID_Usulan_Desa($id_rpjmd = 0, $tahun = 0) {
|
||||
global $fdb;
|
||||
$ino = 1;
|
||||
$fdb->Query("SELECT MAX(UsulanLID)+1 Nomor FROM mus_usulan_desa WHERE RPJMDID='".$id_rpjmd."' AND Tahun='".$tahun."'");
|
||||
if ($fdb->Next()) $ino = $fdb->Row("Nomor", 1);
|
||||
return $ino;
|
||||
}
|
||||
|
||||
function Kode_Usulan_Kec($tahun = 0, $id_kec = 0) {
|
||||
global $fdb;
|
||||
$k_kec = "00";
|
||||
if ($id_kec > 0) {
|
||||
$fdb->Query("SELECT RIGHT(K_Lokasi,2) Kode FROM para_lokasi WHERE LokasiID='".$id_kec."' LIMIT 1");
|
||||
if ($fdb->Next()) $k_kec = $fdb->Row("Kode");
|
||||
}
|
||||
$tno = $k_kec . "-";
|
||||
$ino = 0;
|
||||
$fdb->Query("SELECT MAX(RIGHT(Kode,3)) Nomor FROM mus_usulan_desa WHERE Tahun='".$tahun."' AND KecID='".$id_kec."' AND JU=3");
|
||||
if ($fdb->Next()) $ino = $fdb->Row("Nomor", 0);
|
||||
$tno .= isi_nol($ino+1, 3);
|
||||
return $tno;
|
||||
}
|
||||
|
||||
function Kode_Usulan_Desa($id_desa = 0) {//todo: harus tambah tahun
|
||||
global $fdb;
|
||||
$k_desa = "000";
|
||||
if ($id_desa > 0) {
|
||||
$fdb->Query("SELECT K_Lokasi FROM para_lokasi WHERE LokasiID='".$id_desa."' LIMIT 1");
|
||||
if ($fdb->Next()) $k_desa = $fdb->Row("K_Lokasi");
|
||||
}
|
||||
$tno = $k_desa . "-";
|
||||
$ino = 0;
|
||||
$fdb->Query("SELECT MAX(RIGHT(Kode,3)) Nomor FROM mus_usulan_desa WHERE LEFT(Kode,".strlen($tno).")='".$tno."'");
|
||||
if ($fdb->Next()) $ino = $fdb->Row("Nomor", 0);
|
||||
$tno .= isi_nol($ino+1, 3);
|
||||
return $tno;
|
||||
}
|
||||
|
||||
function MUSPrio($iprio=0) {
|
||||
if ($iprio==9) $iprio = 0;
|
||||
$hasil = '<select class="text enabled req valid" onchange="MUsulPrioJS.oc_Prio(this);">';
|
||||
for ($o=0; $o<=5; $o++) {
|
||||
$hasil .= '<option value="'.$o.'"'.($o==$iprio?' selected="selected"':'').'>'.$o.'</option>';
|
||||
}
|
||||
$hasil .= '</select>';
|
||||
return $hasil;
|
||||
}
|
||||
|
||||
function MusPrio_Array() {
|
||||
return array(0=>"0", 1=>"1", 2=>"2", 3=>"3", 4=>"4", 5=>"5");
|
||||
}
|
||||
|
||||
/************************* DATA MANIPULATION FUNCTION *************************/
|
||||
|
||||
function fastQuery($qry = "", $defval = "") {
|
||||
global $fdb;
|
||||
if ($qry=="") return false;
|
||||
$fdb->Query($qry);
|
||||
if (!$fdb->Next()) {
|
||||
if ($defval!=="") return $defval;
|
||||
return true;
|
||||
}
|
||||
$tmp_value = array_values($fdb->AllRow());
|
||||
$tmp_value = $tmp_value[0] ? $tmp_value[0] : "";
|
||||
if (trim($tmp_value)=="" && $defval!=="") return $defval;
|
||||
return $tmp_value;
|
||||
}
|
||||
|
||||
function fastQueryArray($qry = "", $defval = "") {
|
||||
global $fdb;
|
||||
$ahasil = array();
|
||||
if ($qry=="") return $ahasil;
|
||||
$fdb->Query($qry);
|
||||
if ($fdb->RecordCount()==0) {
|
||||
if ($defval!=="") $ahasil[] = $defval;
|
||||
return $ahasil;
|
||||
}
|
||||
while ($fdb->Next()) {
|
||||
$tmp_value = array_values($fdb->AllRow());
|
||||
$ahasil[] = (trim($tmp_value[0])=="" && $defval!=="") ? $defval : $tmp_value[0];
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function fastInsert($nama_tabel = "", $adata = []) {//up:2014-09-29
|
||||
global $fdb;
|
||||
if ($nama_tabel=="") return false;
|
||||
$txt = "";
|
||||
foreach ($adata as $_key => $_val) {
|
||||
$txt .= ",`" . $_key . "`='" . $_val . "'";
|
||||
}
|
||||
$fdb->Query("INSERT IGNORE INTO ".$nama_tabel." SET ".substr($txt,1));
|
||||
return $fdb->LastInsertID();
|
||||
}
|
||||
|
||||
function fastUpdate($nama_tabel = "", $adata = [], $awhere = []) {//up:2014-09-29
|
||||
global $fdb;
|
||||
if ($nama_tabel=="") return false;
|
||||
$txt = ""; $whr = "";
|
||||
foreach ($adata as $_key => $_val) {
|
||||
$txt .= ",`" . $_key . "`='" . $_val . "'";
|
||||
}
|
||||
foreach ($awhere as $_key => $_val) {
|
||||
$whr .= "AND `" . $_key . "`='" . $_val . "'";
|
||||
}
|
||||
$fdb->Query("UPDATE ".$nama_tabel." SET ".substr($txt,1)." WHERE ".substr($whr,4));
|
||||
return true;
|
||||
}
|
||||
|
||||
/*************** REPORT ***************/
|
||||
|
||||
function Report_Empty($ltabel = "") {
|
||||
global $fdb;
|
||||
if ($ltabel == "") return false;
|
||||
$fdb->Query("DELETE FROM rep_".$ltabel." WHERE (Unix='".user_unix()."' OR Unix<'".(user_unix()-604800)."') AND UserID='".user_id()."'");
|
||||
}
|
||||
|
||||
function Report_Header($tlapor="", $tperiod="") {
|
||||
$thasil = '<div style="text-align:center;font-size:12pt;"><b>'.strtoupper($_SESSION['__WEB_APP']['REG_NAME']);
|
||||
$thasil .= (($tlapor=="") ? "" : '<br>'.$tlapor) . '</b>';
|
||||
$thasil .= ($tperiod=="") ? "" : '<br><span style="font-size:11pt;">'.$tperiod.'</span>';
|
||||
$thasil .= '</div><br>';
|
||||
echo $thasil;
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,105 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
Module : /apps/php/index.php
|
||||
Desc. : PHP - Halaman Utama Desktop
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : May 24th, 2010.
|
||||
Last Modified : August 30th, 2020.
|
||||
|
||||
(c) 2010 - 2020, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../vendor/autoload.php");
|
||||
|
||||
use siaupheng\fonia4\DB\MySQL;
|
||||
use siaupheng\fonia4\Web\Param;
|
||||
use siaupheng\fonia4\Web\Register;
|
||||
|
||||
/************************** RESPON HERE ***************************/
|
||||
|
||||
$db = $db ?? new MySQL();
|
||||
$ajson = array();
|
||||
$data = Param::Get("data");
|
||||
|
||||
if ( $data == "desktop-info" ) {
|
||||
//RENJA
|
||||
//$ajson[] = array('type'=>"other", 'id'=>"S301", 'menu'=>"RENJA OPD ".$_SESSION['__WEB_USER']['TAHUN_RENJA'], 'title'=>"Input Data RENJA OPD ".$_SESSION['__WEB_USER']['TAHUN_RENJA']);
|
||||
//$ajson[] = array('type'=>"other", 'id'=>"S302", 'menu'=>"RENJA OPD PERUBAHAN ".$_SESSION['__WEB_USER']['TAHUN_DPA'], 'title'=>"Input Data RENJA OPD Perubahan ".$_SESSION['__WEB_USER']['TAHUN_DPA']);
|
||||
//$ajson[] = array('type'=>"other", 'id'=>"S303", 'menu'=>"ASISTENSI RENJA OPD ".$_SESSION['__WEB_USER']['TAHUN_RENJA'], 'title'=>"ASISTENSI RENJA OPD ".$_SESSION['__WEB_USER']['TAHUN_RENJA']);
|
||||
|
||||
} else if ( $data == "pagu-info" ) {
|
||||
$tot_pagu = 0;
|
||||
$db->Query("SELECT SUM(Pagu_Ini) Pagu FROM renja90_keg WHERE Tahun='".$_SESSION['__WEB_APP']['RENC_THN']."'");
|
||||
if ($db->Next()) $tot_pagu = $db->Row("Pagu");
|
||||
$db->Query("SELECT K.K_Urusan,U.N_Urusan,SUM(K.Pagu) Pagu FROM (SELECT LEFT(K_Keg,1) K_Urusan,SUM(Pagu_Ini) Pagu FROM renja90_keg WHERE Tahun='".$_SESSION['__WEB_APP']['RENC_THN']."' GROUP BY LEFT(K_Keg,1)) K LEFT JOIN para90_urusan U ON (K.K_Urusan=U.K_Urusan) GROUP BY K.K_Urusan ORDER BY K.K_Urusan");
|
||||
$pagu_info = '<h4 class="text-right">Total Pagu '.$_SESSION['__WEB_APP']['RENC_THN'].'</h4><h2 class="text-right text-success">Rp. '.rupiah2($tot_pagu).'</h2>';
|
||||
$pagu_info .= '<table class="table table-striped">';
|
||||
$pagu_info .= '<thead><tr role="row"><th>Urusan</th><th>Pagu Indikatif</th></tr></thead><tbody>';
|
||||
while ($db->Next()){
|
||||
$pagu_info .= sprintf('<tr role="row"><td class="left">%s</td><td class="right">%s</td></tr>', $db->Row("N_Urusan"), rupiah2($db->Row("Pagu")));
|
||||
}
|
||||
$pagu_info .= '</tbody></table>';
|
||||
$ajson['html'] = $pagu_info;
|
||||
|
||||
} else if ( $data == "pagu-chart" ) {
|
||||
$tot_pagu = 0;
|
||||
$db->Query("SELECT SUM(Pagu_Ini) Pagu FROM renja90_keg WHERE Tahun='".$_SESSION['__WEB_APP']['RENC_THN']."'");
|
||||
if ($db->Next()) $tot_pagu = $db->Row("Pagu");
|
||||
$ajson['datasets'] = array();
|
||||
$ajson['labels'] = array();
|
||||
$atmp = array(); $acol = array();
|
||||
$db->Query("SELECT K.K_Urusan,U.N_Urusan,SUM(K.Pagu) Pagu FROM (SELECT LEFT(K_Keg,1) K_Urusan,SUM(Pagu_Ini) Pagu FROM renja90_keg WHERE Tahun='".$_SESSION['__WEB_APP']['RENC_THN']."' GROUP BY LEFT(K_Keg,1)) K LEFT JOIN para90_urusan U ON (K.K_Urusan=U.K_Urusan) GROUP BY K.K_Urusan ORDER BY K.K_Urusan");
|
||||
while ($db->Next()){
|
||||
$atmp[] = round($db->Row("Pagu") / $tot_pagu * 100, 2);
|
||||
$col_r = mt_rand( 0, 255 );
|
||||
$col_g = mt_rand( 0, 255 );
|
||||
$col_b = mt_rand( 0, 255 );
|
||||
$acol[] = "rgb(".$col_r.",".$col_g.",".$col_b.")";
|
||||
$ajson['labels'][] = $db->Row("N_Urusan");
|
||||
}
|
||||
$ajson['datasets'][] = array('data'=>$atmp, 'backgroundColor'=>$acol);
|
||||
|
||||
} else if ( $data == "check-contact" ) {
|
||||
$daftar = 0;
|
||||
$db->Query("SELECT * FROM para_contact WHERE UserID='".user_id()."'");
|
||||
if ($db->Next()) $daftar = 1;
|
||||
$ajson['contact'] = $daftar;
|
||||
|
||||
} else if ( $data == "default" ) {
|
||||
$aapp = $_SESSION['__WEB_APP'];
|
||||
$ajson['title'] = $_SESSION['__WEB_APP']['APP_NAMES'];
|
||||
$ajson['bread'] = '<ol class="breadcrumb border-0 m-0"><li class="breadcrumb-item active">Beranda</li></ol>';
|
||||
$ajson['content'] = '
|
||||
<div class="fade-in">
|
||||
<div class="row">
|
||||
<div class="col-sm-12 col-md-6">
|
||||
<div class="card">
|
||||
<div class="card-body pb-0 text-center" id="divHome1">
|
||||
<img src="'.$aapp['WEB_PATH'].'assets/images/logo150.webp" title="'.$aapp['REG_NAME'].'">
|
||||
<p class="mt-2">'.$aapp['REG_ADDRESS'].'<br>
|
||||
'.$aapp['REG_CITY'].' '.$aapp['REG_POSTCODE'].'</p>
|
||||
<p class="mt-3 mb-3"><i>Register ID : '.Register::reg_id().'</i></p>
|
||||
<p>'.$aapp['APP_NAMES'].'<br>'.$aapp['APP_NAME'].' Ver. '.$aapp['APP_VER'].'<br>
|
||||
Updated : '.$aapp['APP_UPDATED'].'</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-12 col-md-6">
|
||||
<div class="card">
|
||||
<div class="card-body pb-0" id="divHome2">
|
||||
<div class="c-chart-wrapper pb-2">
|
||||
<canvas id="pieChart"></canvas>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
';
|
||||
}
|
||||
|
||||
send_json($ajson);
|
||||
?>
|
||||
@@ -0,0 +1,61 @@
|
||||
<?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");
|
||||
|
||||
use siaupheng\fonia4\DB\MySQL;
|
||||
use siaupheng\fonia4\Web\Auth;
|
||||
use siaupheng\fonia4\Web\Param;
|
||||
|
||||
/************************** RESPON HERE ***************************/
|
||||
|
||||
$db = $db ?? new MySQL();
|
||||
$auth = new Auth($db);
|
||||
$ajson = array();
|
||||
$mode = Param::Get("mode");
|
||||
$aapp = $_SESSION['__WEB_APP'];
|
||||
|
||||
if ($mode == "login") {
|
||||
$ajson = $auser = array();
|
||||
$auth->set_id_reg(2007809605);
|
||||
if ($auth->user_check(Param::Get("Username"), Param::Get("Password"))) {
|
||||
$auser = $auth->user_data(Param::Get("Username"));
|
||||
|
||||
$_appurl = $_GET['redir'];
|
||||
if (!empty($_appurl)) {
|
||||
$_redir = $auth->redirect($_appurl);
|
||||
//jika kosong, tampilkan pesan redirect tidak diijinkan
|
||||
//jika berisi, js harus redirect ...
|
||||
}
|
||||
|
||||
$ajson['hasil'] = "SUKSES";
|
||||
$ajson['pesan'] = '<div class="border border-success p-2 pt-3"><h5>Login berhasil,</h5><p><b>'.$auser["Username"].'</b> / '.$auser["Nama"].'<br>'.$auser["Posisi"].'<br><i>login terakhir :</i><br>'.tgl_sql2str($auser["Last_Date"],true).'<br>'.$auser["Last_IP"].'</p></div>';
|
||||
} else {
|
||||
$ajson['hasil'] = "ERROR";
|
||||
$ajson['pesan'] = "Periksa kembali ID Pengguna atau Password Anda ...";
|
||||
}
|
||||
|
||||
} else if ($mode == "logout") {
|
||||
$auth->logout();
|
||||
foreach ($_SESSION as $_key => $_val) {
|
||||
if (substr($_key,0,5)=="__WEB") unset($_SESSION[$_key]);
|
||||
if (substr($_key,0,5)=="__APP") unset($_SESSION[$_key]);
|
||||
}
|
||||
require(dirname(__FILE__)."/../cfg/app.php");
|
||||
$nhost = ($_SERVER['SERVER_ADDR'] == "127.0.0.1") ? $_SESSION['__WEB_APP']['WEB_PATH']."../" : $_SESSION['__WEB_APP']['PARENT_SITE'];
|
||||
$ajson['nexthost'] = $nhost;
|
||||
}
|
||||
|
||||
send_json($ajson);
|
||||
?>
|
||||
@@ -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 (siaupheng@3fonia.com).
|
||||
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);
|
||||
?>
|
||||
@@ -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 (siaupheng@3fonia.com).
|
||||
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);
|
||||
?>
|
||||
@@ -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 (siaupheng@3fonia.com).
|
||||
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);
|
||||
?>
|
||||
@@ -0,0 +1,320 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/php/push/rkpd_akhir.php
|
||||
Desc. : PHP - Push API RKPD Akhir ke SIPD Kemendagri
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : August 20th, 2020.
|
||||
|
||||
(c) 2011 - 2020, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(dirname(__FILE__)."/../../../../../modules3/web.auth.php");
|
||||
require_once(dirname(__FILE__)."/../../../../../modules3/web.table.php");
|
||||
require_once(dirname(__FILE__)."/../../../../../modules3/web.form.php");
|
||||
require_once(dirname(__FILE__)."/../../../../../modules3/data.json.php");
|
||||
require_once(dirname(__FILE__)."/../func.sippd.php");
|
||||
|
||||
function Bangda_Request($apost = array(), $tahun=0) {
|
||||
$api_key = "9885846625b49e88baa18d46e2df6ff6";
|
||||
$str_json = json_encode($apost);
|
||||
$curl_array = array(
|
||||
CURLOPT_URL => "https://sipd.go.id/run/serv/push?kodepemda=6102&tahun=".$tahun,
|
||||
CURLOPT_RETURNTRANSFER => true,
|
||||
CURLOPT_ENCODING => "",
|
||||
CURLOPT_MAXREDIRS => 10,
|
||||
CURLOPT_TIMEOUT => 0,
|
||||
CURLOPT_FOLLOWLOCATION => true,
|
||||
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
|
||||
CURLOPT_POST => true,
|
||||
CURLOPT_POSTFIELDS => $str_json,
|
||||
CURLOPT_HTTPHEADER => array(
|
||||
"Accept: application/json",
|
||||
"Authorization: Bearer ".$api_key,
|
||||
"Content-Type: application/json",
|
||||
"Content-Length: " . strlen($str_json)
|
||||
),
|
||||
CURLOPT_SSL_VERIFYHOST => false,
|
||||
CURLOPT_SSL_VERIFYPEER => false
|
||||
);
|
||||
|
||||
$aresult = array('code' => 0, 'msg' => "");
|
||||
|
||||
$curl = curl_init();
|
||||
curl_setopt_array($curl, $curl_array);
|
||||
$response = curl_exec($curl);
|
||||
$err = curl_error($curl);
|
||||
curl_close($curl);
|
||||
|
||||
$aresult = json_decode($response, true);
|
||||
return $aresult;
|
||||
}
|
||||
|
||||
function Bangda_Data($id_rpjmd=0, $tahun=0, $id_opd=0, $aprog=array()) {
|
||||
global $db, $db2, $db3, $db4;
|
||||
$apost = array();
|
||||
$askpd = array();
|
||||
|
||||
$tsql = (count($aprog)>0) ? " AND ProgID IN (". join(",", $aprog) .")" : "";
|
||||
|
||||
$askpd['kodepemda'] = "6102";
|
||||
$askpd['tahun'] = "".$tahun;
|
||||
$askpd['pilihanbidang'] = array();
|
||||
|
||||
// data opd
|
||||
$abidu = array();
|
||||
$db->Query("SELECT O.*,B.N_Bidu,U.N_Urusan FROM para90_opd O LEFT JOIN para90_bidu B ON (B.K_Bidu=O.K_Bidu1) LEFT JOIN para90_urusan U ON (B.K_Urusan=U.K_Urusan) WHERE O.OPDID='".$id_opd."'");
|
||||
if ($db->Next()) {
|
||||
$askpd['kodebidang'] = $db->Row("K_Bidu1");
|
||||
$askpd['uraibidang'] = $db->Row("N_Bidu");
|
||||
$askpd['kodeskpd'] = $db->Row("K_OPD");
|
||||
$askpd['uraiskpd'] = $db->Row("N_OPD");
|
||||
$askpd['uraiurusan'] = $db->Row("N_Urusan");
|
||||
$askpd['pejabat'] = array(
|
||||
'kepalanip'=>$db->Row("P_NIP"),
|
||||
'kepalanama'=>$db->Row("P_Nama"),
|
||||
'kepalajabatan'=>$db->Row("P_Jabatan"),
|
||||
'kepalapangkat'=>$db->Row("P_Pangkat")
|
||||
);
|
||||
$abidu[] = $db->Row("K_Bidu1");
|
||||
if ($db->Row("K_Bidu2")<>"0.00") $abidu[] = $db->Row("K_Bidu2");
|
||||
if ($db->Row("K_Bidu3")<>"0.00") $abidu[] = $db->Row("K_Bidu3");
|
||||
}
|
||||
$db->Query("SELECT * FROM para90_bidu WHERE K_Bidu IN ('".implode("','", $abidu)."')");
|
||||
while ($db->Next()) {
|
||||
$askpd['pilihanbidang'][] = $db->Row("K_Bidu");
|
||||
}
|
||||
|
||||
// data program
|
||||
$askpd['program'] = array();
|
||||
$db->Query("SELECT P.*,PO.N_Prog,B.K_Bidu,B.N_Bidu,IFNULL(S.N_Satuan,'') N_Satuan FROM (SELECT * FROM renja90_prog WHERE Tahun='".$tahun."' AND OPDID='".$id_opd."'".$tsql.") P LEFT JOIN para90_prog PO ON (P.ProgID=PO.ProgID) LEFT JOIN para90_bidu B ON (PO.K_Bidu=B.K_Bidu) LEFT JOIN para_satuan S ON (P.Target_SatuanID=S.SatuanID) ORDER BY P.K_Prog");
|
||||
while ($db->Next()) {
|
||||
$aprog = array();
|
||||
$aprog['kodebidang'] = ($db->Row("K_Bidu")=="X.XX") ? $askpd['kodebidang'] : $db->Row("K_Bidu");
|
||||
$aprog['uraibidang'] = ($db->Row("K_Bidu")=="X.XX") ? $askpd['uraibidang'] : $db->Row("N_Bidu");
|
||||
$aprog['kodeprogram'] = $db->Row("K_Prog");
|
||||
$aprog['uraiprogram'] = $db->Row("N_Prog");
|
||||
$aprog['prioritas'] = array();
|
||||
|
||||
// data indikator program
|
||||
$aprog['capaian'] = array();
|
||||
//$db2->Query("SELECT * FROM rpjmd_prog_indi WHERE RPJMDID='".$id_rpjmd."' AND RD_PROGINDIID IN (SELECT RD_PROGINDIID FROM renstra_detail_indi WHERE RPJMDID='".$id_rpjmd."' AND RA_PROGRAMID='".$db->Row("RA_PROGRAMID")."')");
|
||||
//while ($db2->Next()) {
|
||||
$aindi = array();
|
||||
$aindi['kodeindikator'] = "1";
|
||||
$aindi['tolokukur'] = $db->Row("Indi_Txt");
|
||||
$aindi['satuan'] = $db->Row("N_Satuan");
|
||||
$aindi['real_p3'] = "0";
|
||||
$aindi['pagu_p3'] = "0";
|
||||
$aindi['real_p2'] = "0";
|
||||
$aindi['pagu_p2'] = "0";
|
||||
$aindi['real_p1'] = "0";
|
||||
$aindi['pagu_p1'] = "0";
|
||||
$aindi['target'] = "0";//$db2->Row("Indi_T3");
|
||||
$aindi['pagu'] = "0";//
|
||||
$aindi['pagu_p'] = "0";
|
||||
$aindi['target_n1'] = "0";//$db2->Row("Indi_T4");//todo: set auto sesuai tahun
|
||||
$aindi['pagu_n1'] = "0";// ?
|
||||
$aprog['capaian'][] = $aindi;
|
||||
//}
|
||||
|
||||
// data kegiatan
|
||||
$aprog['kegiatan'] = array();
|
||||
$db2->Query("SELECT D.*,K.N_Keg,IFNULL(S.N_Satuan,'') N_Satuan FROM (SELECT * FROM renja90_keg WHERE Tahun='".$tahun."' AND OPDID='".$id_opd."' AND ProgID='".$db->Row("ProgID")."') D LEFT JOIN para90_keg K ON (D.KegID=K.KegID) LEFT JOIN para_satuan S ON (D.Target_SatuanID=S.SatuanID) ORDER BY D.K_Keg");
|
||||
while ($db2->Next()) {
|
||||
$akeg = array();
|
||||
$akeg['kodekegiatan'] = $db2->Row("K_Keg");
|
||||
$akeg['uraikegiatan'] = $db2->Row("N_Keg");
|
||||
$akeg['pagu'] = $db2->RowFloat("Pagu_Ini");
|
||||
$akeg['pagu_p'] = 0;
|
||||
$akeg['sumberdana'] = array();
|
||||
$db3->Query("SELECT R.*,D.K_Dana FROM (SELECT DanaID,SUM(Pagu_Ini) Pagu_Ini FROM renja90_rinci WHERE Tahun='".$tahun."' AND OPDID='".$id_opd."' AND K_RKA IN (SELECT K_RKA FROM renja90_sub WHERE Tahun='".$tahun."' AND OPDID='".$id_opd."' AND ProgID='".$db->Row("ProgID")."' AND KegID='".$db2->Row("KegID")."') GROUP BY DanaID) R LEFT JOIN para_dana D ON (R.DanaID=D.DanaID)");
|
||||
while ($db3->Next()) {
|
||||
$akeg['sumberdana'][] = array('pagu'=>$db3->RowFloat("Pagu_Ini"),'sumberdana'=>$db3->Row("K_Dana"),'kodesumberdana'=>$db3->Row("DanaID"));
|
||||
}
|
||||
$akeg['prioritas'] = array();
|
||||
/*$db3->Query("SELECT Txt_Misi FROM rpjmd_misi WHERE RPJMDID='".$id_rpjmd."' AND RD_MISIID IN (SELECT P.RD_MISIID FROM rpjmd_prog P LEFT JOIN rpjmd_prog_indi I ON (I.RPJMDID=P.RPJMDID AND I.RD_PROGID=P.RD_PROGID) WHERE I.RD_PROGINDIID IN (SELECT RD_PROGINDIID FROM renstra_detail_indi WHERE RPJMDID='".$id_rpjmd."' AND RA_PROGRAMID='".$db->Row("RA_PROGRAMID")."'))");
|
||||
while ($db3->Next()) {
|
||||
if ($db3->Row("Txt_Misi","")<>"") $akeg['prioritas'][] = array('prioritasdaerah'=>$db3->Row("Txt_Misi"));
|
||||
}*/
|
||||
$akeg['lokasi'] = array();//array(array('lokasi'=>$db2->Row("Lokasi"),'kodelokasi'=>"",'detaillokasi'=>""));
|
||||
$akeg['indikator'] = array();
|
||||
$akeg['indikator'][] = array( 'kodeindikator' => "1",
|
||||
'jenis' => "KELUARAN",
|
||||
'tolokukur' => $db2->Row("Indi_Txt"),
|
||||
'satuan' => $db2->Row("N_Satuan"),
|
||||
'real_p3' => "0",
|
||||
'pagu_p3' => "0",
|
||||
'real_p2' => "0",
|
||||
'pagu_p2' => "0",
|
||||
'real_p1' => "0",
|
||||
'pagu_p1' => $db2->RowFloat("Pagu_Lalu"),
|
||||
'target' => $db2->Row("Target_Ini"),
|
||||
'pagu' => $db2->RowFloat("Pagu_Ini"),
|
||||
'pagu_p' => "0",
|
||||
'target_n1' => 0,//$db2->Row("Target_Dpn")
|
||||
'pagu_n1' => $db2->RowFloat("Pagu_Dpn")
|
||||
);
|
||||
|
||||
// data sub kegiatan
|
||||
$akeg['subkegiatan'] = array();
|
||||
$db3->Query("SELECT D.*,K.N_Sub,IFNULL(S.N_Satuan,'') N_Satuan FROM (SELECT * FROM renja90_sub WHERE Tahun='".$tahun."' AND OPDID='".$id_opd."' AND ProgID='".$db->Row("ProgID")."' AND KegID='".$db2->Row("KegID")."') D LEFT JOIN para90_sub K ON (D.SubID=K.SubID) LEFT JOIN para_satuan S ON (D.Target_SatuanID=S.SatuanID) ORDER BY D.K_Sub");
|
||||
while ($db3->Next()) {
|
||||
$asubkeg = array();
|
||||
$asubkeg['kodesubkegiatan'] = $db3->Row("K_Sub");
|
||||
$asubkeg['uraisubkegiatan'] = $db3->Row("N_Sub");
|
||||
$asubkeg['pagu'] = $db3->RowFloat("Pagu_Ini");
|
||||
$asubkeg['pagu_p'] = "0";
|
||||
$asubkeg['sumberdana'] = array();
|
||||
$db4->Query("SELECT R.*,D.K_Dana FROM (SELECT DanaID,SUM(Pagu_Ini) Pagu_Ini FROM renja90_rinci WHERE Tahun='".$tahun."' AND OPDID='".$id_opd."' AND K_RKA='".$db3->Row("K_RKA")."' GROUP BY DanaID) R LEFT JOIN para_dana D ON (R.DanaID=D.DanaID)");
|
||||
while ($db4->Next()) {
|
||||
$asubkeg['sumberdana'][] = array('pagu'=>$db4->RowFloat("Pagu_Ini"),'sumberdana'=>$db4->Row("K_Dana"),'kodesumberdana'=>$db4->Row("DanaID"));
|
||||
}
|
||||
$asubkeg['prioritas'] = array();
|
||||
$asubkeg['lokasi'] = array();
|
||||
if ($db3->Row("Lokasi")<>"") $asubkeg['lokasi'][] = array('lokasi'=>$db3->Row("Lokasi"),'kodelokasi'=>"",'detaillokasi'=>"");//todo: kodelokasi
|
||||
$asubkeg['indikator'] = array();
|
||||
$asubkeg['indikator'][] = array( 'kodeindikator' => "1",
|
||||
'jenis' => "KELUARAN",
|
||||
'tolokukur' => $db3->Row("Indi_Txt"),
|
||||
'satuan' => $db3->Row("N_Satuan"),
|
||||
'real_p3' => "0",
|
||||
'pagu_p3' => "0",
|
||||
'real_p2' => "0",
|
||||
'pagu_p2' => "0",
|
||||
'real_p1' => "0",
|
||||
'pagu_p1' => "0",
|
||||
'target' => $db3->Row("Target_Ini"),
|
||||
'pagu' => $db3->RowFloat("Pagu_Ini"),
|
||||
'pagu_p' => "0",
|
||||
'target_n1' => "0",
|
||||
'pagu_n1' => $db3->RowFloat("Pagu_Dpn")
|
||||
);
|
||||
$akeg['subkegiatan'][] = $asubkeg;
|
||||
}
|
||||
|
||||
$aprog['kegiatan'][] = $akeg;
|
||||
}
|
||||
|
||||
$askpd['program'][] = $aprog;
|
||||
}
|
||||
$apost[] = $askpd;
|
||||
return $apost;
|
||||
}
|
||||
|
||||
/************************** RESPON HERE ***************************/
|
||||
|
||||
$db = DB();
|
||||
$db2 = DB();
|
||||
$db3 = DB();
|
||||
$db4 = DB();
|
||||
$ajson = array();
|
||||
$data = Param::Get("data");
|
||||
|
||||
$id_rpjmd = $_SESSION['__WEB_APP']['RENC_RPJMDID'];
|
||||
$tahun = $_SESSION['__WEB_APP']['RENC_THN'];
|
||||
$id_opd = Param::Get("OPDID", 0);
|
||||
$aprog = array();
|
||||
|
||||
if ( $data == "kirim" || $data == "" ) {
|
||||
$alist = Param::GetArrayCBOX();
|
||||
foreach ($alist as $_key => $_val) {
|
||||
if ($_val=="Y") $aprog[] = $_key;
|
||||
}
|
||||
}
|
||||
|
||||
if ( $data == "detail-opd" || $data == "detail-prog" || $data == "kirim" ) {
|
||||
$qsql = "RPJMDID='".$id_rpjmd."' AND Tahun='".$tahun."'";
|
||||
$msql = "M.Aktif=1";
|
||||
|
||||
if ( $data == "detail-prog" ) {
|
||||
$qsql .= " AND OPDID='".$id_opd."'";
|
||||
}
|
||||
$qbd = $qsql;
|
||||
}
|
||||
|
||||
if ( $data == "detail-opd" ) {
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT K.*,M.OPDID OPDID2,M.K_OPD,M.N_OPD,M.Nama_OPD,CONCAT(IFNULL(B.UDAH_PROG,0),' / ',K.ITEM_PROG) Status FROM vi_para90_opd M LEFT JOIN (SELECT OPDID,COUNT(DISTINCT ProgID) ITEM_PROG,COUNT(DISTINCT KegID) ITEM_KEG,COUNT(*) ITEM_SUB,SUM(Pagu_Ini) TOT_PAGU FROM renja90_sub WHERE ".$qsql." GROUP BY OPDID) K ON (K.OPDID=M.OPDID) LEFT JOIN (SELECT OPDID,COUNT(DISTINCT ProgID) UDAH_PROG FROM bangda_rkpd_akhir WHERE ".$qsql." GROUP BY OPDID) B ON (B.OPDID=M.OPDID) WHERE ".$msql);
|
||||
$obj->add_field("OPDID2", "OPD", "hid");
|
||||
$obj->add_field("K_OPD", "KODE", "c");
|
||||
$obj->add_field("N_OPD", "NAMA OPD", "awr");
|
||||
$obj->add_field("TOT_PAGU", "PAGU", "r", "rupiah2");
|
||||
$obj->add_field("ITEM_PROG", "PROG", "r", "rupiah");
|
||||
$obj->add_field("ITEM_KEG", "KEG", "r", "rupiah");
|
||||
$obj->add_field("ITEM_SUB", "SUB", "r", "rupiah");
|
||||
$obj->add_field("Status", "Status", "c");
|
||||
$obj->add_field("Nama_OPD", "Nama OPD", "hid");
|
||||
$obj->set_field_order("K_OPD", "A");
|
||||
$obj->add_row_btn("select", "Program", "PRKPDAkhirJS.opd_select");
|
||||
$obj->add_row_btn("send", "Kirim / OPD", "PRKPDAkhirJS.opd_kirim");
|
||||
$obj->set_func_navi("PRKPDAkhirJS.data_query('detail-opd')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divOPD", 60);
|
||||
|
||||
} else if ( $data == "detail-prog" ) {
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT K.*,IFNULL(PR.ProgID,0) ProgID,PR.K_Prog,M.N_Prog,IF(IFNULL(PO.ProgID,0)=0,'Belum','Sudah') Status,'N' Pilih FROM (SELECT ProgID,K_Prog FROM renja90_prog WHERE ".$qsql.") PR LEFT JOIN para90_prog M ON (PR.ProgID=M.ProgID) LEFT JOIN (SELECT ProgID,COUNT(DISTINCT KegID) ITEM_KEG,COUNT(*) ITEM_SUB,SUM(Pagu_Ini) TOT_PAGU FROM renja90_sub WHERE ".$qsql." GROUP BY ProgID) K ON (PR.ProgID=K.ProgID) LEFT JOIN (SELECT * FROM bangda_rkpd_akhir WHERE ".$qsql.") PO ON (PR.ProgID=PO.ProgID) WHERE ".$msql);
|
||||
$obj->add_field("ProgID", "ID", "hid");
|
||||
$obj->add_field("K_Prog", "KODE", "c");
|
||||
$obj->add_field("N_Prog", "NAMA PROGRAM", "awr");
|
||||
$obj->add_field("TOT_PAGU", "PAGU", "r", "rupiah2");
|
||||
$obj->add_field("ITEM_KEG", "KEG", "r", "rupiah");
|
||||
$obj->add_field("ITEM_SUB", "SUB", "r", "rupiah");
|
||||
$obj->add_field("Status", "Status", "l");
|
||||
$obj->set_field_order("K_Prog", "A");
|
||||
$obj->set_row_color("Status", "Sudah", "rblue");
|
||||
$obj->add_row_checkbox("ProgID", "Pilih", array("Y","N"));
|
||||
$obj->set_func_navi("PRKPDAkhirJS.data_query('detail-prog')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divPROG", 60);
|
||||
|
||||
} else if ( $data == "kirim" ) {
|
||||
$apost = Bangda_Data($id_rpjmd, $tahun, $id_opd, $aprog);
|
||||
$api = Bangda_Request($apost, $tahun);
|
||||
$tmsg = "Ada masalah dalam proses !";
|
||||
if (isset($api['code'])) {
|
||||
$tmsg = $api['msg'];
|
||||
if ($api['code']==200) {
|
||||
if (count($aprog)>0) {
|
||||
foreach ($aprog as $_val) {
|
||||
$db->Query("INSERT IGNORE INTO bangda_rkpd_akhir SET RPJMDID='".$id_rpjmd."',Tahun='".$tahun."',OPDID='".$id_opd."',ProgID='".$_val."',DateStamp=NOW(),UserID='".user_id()."'");
|
||||
}
|
||||
} else {
|
||||
$db->Query("INSERT IGNORE INTO bangda_rkpd_akhir SELECT '".$id_rpjmd."','".$tahun."',OPDID,ProgID,NOW(),'".user_id()."' FROM renja90_prog WHERE ".$qsql." AND OPDID='".$id_opd."'");
|
||||
}
|
||||
}
|
||||
}
|
||||
$ajson['msg'] = $tmsg;
|
||||
$ajson['pre'] = ($api['pre']=="") ? implode("<br>", $api['log']) : $api['pre'];
|
||||
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Push RKPD Akhir ke SIPD Kemendagri</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 OPD" type="text" readonly>
|
||||
<input id="OPDID" type="hidden" value="0">
|
||||
<span class="input-group-append">
|
||||
<button class="btn btn-info btn-ganti" type="button" id="butOPD"><span><i class="c-icon cui-swap-horizontal"></span></i>OPD</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="divOPD"> </div>
|
||||
<div id="divPROG"> </div>
|
||||
</div></div>
|
||||
</div>';
|
||||
|
||||
} else if ( $data == "" ){
|
||||
$ajson = Bangda_Data($id_rpjmd, $tahun, $id_opd, $aprog);
|
||||
}
|
||||
|
||||
send_json($ajson);
|
||||
?>
|
||||
@@ -0,0 +1,320 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/php/push/rkpd_awal.php
|
||||
Desc. : PHP - Push API RKPD Awal ke SIPD Kemendagri
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : August 20th, 2020.
|
||||
|
||||
(c) 2011 - 2020, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(dirname(__FILE__)."/../../../../../modules3/web.auth.php");
|
||||
require_once(dirname(__FILE__)."/../../../../../modules3/web.table.php");
|
||||
require_once(dirname(__FILE__)."/../../../../../modules3/web.form.php");
|
||||
require_once(dirname(__FILE__)."/../../../../../modules3/data.json.php");
|
||||
require_once(dirname(__FILE__)."/../func.sippd.php");
|
||||
|
||||
function Bangda_Request($apost = array(), $tahun=0) {
|
||||
$api_key = "9885846625b49e88baa18d46e2df6ff6";
|
||||
$str_json = json_encode($apost);
|
||||
$curl_array = array(
|
||||
CURLOPT_URL => "https://sipd.go.id/run/serv/push_ranwal?kodepemda=6102&tahun=".$tahun,
|
||||
CURLOPT_RETURNTRANSFER => true,
|
||||
CURLOPT_ENCODING => "",
|
||||
CURLOPT_MAXREDIRS => 10,
|
||||
CURLOPT_TIMEOUT => 0,
|
||||
CURLOPT_FOLLOWLOCATION => true,
|
||||
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
|
||||
CURLOPT_POST => true,
|
||||
CURLOPT_POSTFIELDS => $str_json,
|
||||
CURLOPT_HTTPHEADER => array(
|
||||
"Accept: application/json",
|
||||
"Authorization: Bearer ".$api_key,
|
||||
"Content-Type: application/json",
|
||||
"Content-Length: " . strlen($str_json)
|
||||
),
|
||||
CURLOPT_SSL_VERIFYHOST => false,
|
||||
CURLOPT_SSL_VERIFYPEER => false
|
||||
);
|
||||
|
||||
$aresult = array('code' => 0, 'msg' => "");
|
||||
|
||||
$curl = curl_init();
|
||||
curl_setopt_array($curl, $curl_array);
|
||||
$response = curl_exec($curl);
|
||||
$err = curl_error($curl);
|
||||
curl_close($curl);
|
||||
|
||||
$aresult = json_decode($response, true);
|
||||
return $aresult;
|
||||
}
|
||||
|
||||
function Bangda_Data($id_rpjmd=0, $tahun=0, $id_opd=0, $aprog=array()) {
|
||||
global $db, $db2, $db3, $db4;
|
||||
$apost = array();
|
||||
$askpd = array();
|
||||
|
||||
$tsql = (count($aprog)>0) ? " AND ProgID IN (". join(",", $aprog) .")" : "";
|
||||
|
||||
$askpd['kodepemda'] = "6102";
|
||||
$askpd['tahun'] = "".$tahun;
|
||||
$askpd['pilihanbidang'] = array();
|
||||
|
||||
// data opd
|
||||
$abidu = array();
|
||||
$db->Query("SELECT O.*,B.N_Bidu,U.N_Urusan FROM para90_opd O LEFT JOIN para90_bidu B ON (B.K_Bidu=O.K_Bidu1) LEFT JOIN para90_urusan U ON (B.K_Urusan=U.K_Urusan) WHERE O.OPDID='".$id_opd."'");
|
||||
if ($db->Next()) {
|
||||
$askpd['kodebidang'] = $db->Row("K_Bidu1");
|
||||
$askpd['uraibidang'] = $db->Row("N_Bidu");
|
||||
$askpd['kodeskpd'] = $db->Row("K_OPD");
|
||||
$askpd['uraiskpd'] = $db->Row("N_OPD");
|
||||
$askpd['uraiurusan'] = $db->Row("N_Urusan");
|
||||
$askpd['pejabat'] = array(
|
||||
'kepalanip'=>$db->Row("P_NIP"),
|
||||
'kepalanama'=>$db->Row("P_Nama"),
|
||||
'kepalajabatan'=>$db->Row("P_Jabatan"),
|
||||
'kepalapangkat'=>$db->Row("P_Pangkat")
|
||||
);
|
||||
$abidu[] = $db->Row("K_Bidu1");
|
||||
if ($db->Row("K_Bidu2")<>"0.00") $abidu[] = $db->Row("K_Bidu2");
|
||||
if ($db->Row("K_Bidu3")<>"0.00") $abidu[] = $db->Row("K_Bidu3");
|
||||
}
|
||||
$db->Query("SELECT * FROM para90_bidu WHERE K_Bidu IN ('".implode("','", $abidu)."')");
|
||||
while ($db->Next()) {
|
||||
$askpd['pilihanbidang'][] = $db->Row("K_Bidu");
|
||||
}
|
||||
|
||||
// data program
|
||||
$askpd['program'] = array();
|
||||
$db->Query("SELECT P.*,PO.N_Prog,B.K_Bidu,B.N_Bidu,IFNULL(S.N_Satuan,'') N_Satuan FROM (SELECT * FROM renja90_prog WHERE Tahun='".$tahun."' AND OPDID='".$id_opd."'".$tsql.") P LEFT JOIN para90_prog PO ON (P.ProgID=PO.ProgID) LEFT JOIN para90_bidu B ON (PO.K_Bidu=B.K_Bidu) LEFT JOIN para_satuan S ON (P.Target_SatuanID=S.SatuanID) ORDER BY P.K_Prog");
|
||||
while ($db->Next()) {
|
||||
$aprog = array();
|
||||
$aprog['kodebidang'] = ($db->Row("K_Bidu")=="X.XX") ? $askpd['kodebidang'] : $db->Row("K_Bidu");
|
||||
$aprog['uraibidang'] = ($db->Row("K_Bidu")=="X.XX") ? $askpd['uraibidang'] : $db->Row("N_Bidu");
|
||||
$aprog['kodeprogram'] = $db->Row("K_Prog");
|
||||
$aprog['uraiprogram'] = $db->Row("N_Prog");
|
||||
$aprog['prioritas'] = array();
|
||||
|
||||
// data indikator program
|
||||
$aprog['capaian'] = array();
|
||||
//$db2->Query("SELECT * FROM rpjmd_prog_indi WHERE RPJMDID='".$id_rpjmd."' AND RD_PROGINDIID IN (SELECT RD_PROGINDIID FROM renstra_detail_indi WHERE RPJMDID='".$id_rpjmd."' AND RA_PROGRAMID='".$db->Row("RA_PROGRAMID")."')");
|
||||
//while ($db2->Next()) {
|
||||
$aindi = array();
|
||||
$aindi['kodeindikator'] = "1";
|
||||
$aindi['tolokukur'] = $db->Row("Indi_Txt");
|
||||
$aindi['satuan'] = $db->Row("N_Satuan");
|
||||
$aindi['real_p3'] = "0";
|
||||
$aindi['pagu_p3'] = "0";
|
||||
$aindi['real_p2'] = "0";
|
||||
$aindi['pagu_p2'] = "0";
|
||||
$aindi['real_p1'] = "0";
|
||||
$aindi['pagu_p1'] = "0";
|
||||
$aindi['target'] = "0";//$db2->Row("Indi_T3");
|
||||
$aindi['pagu'] = "0";//
|
||||
$aindi['pagu_p'] = "0";
|
||||
$aindi['target_n1'] = "0";//$db2->Row("Indi_T4");//todo: set auto sesuai tahun
|
||||
$aindi['pagu_n1'] = "0";// ?
|
||||
$aprog['capaian'][] = $aindi;
|
||||
//}
|
||||
|
||||
// data kegiatan
|
||||
$aprog['kegiatan'] = array();
|
||||
$db2->Query("SELECT D.*,K.N_Keg,IFNULL(S.N_Satuan,'') N_Satuan FROM (SELECT * FROM renja90_keg WHERE Tahun='".$tahun."' AND OPDID='".$id_opd."' AND ProgID='".$db->Row("ProgID")."') D LEFT JOIN para90_keg K ON (D.KegID=K.KegID) LEFT JOIN para_satuan S ON (D.Target_SatuanID=S.SatuanID) ORDER BY D.K_Keg");
|
||||
while ($db2->Next()) {
|
||||
$akeg = array();
|
||||
$akeg['kodekegiatan'] = $db2->Row("K_Keg");
|
||||
$akeg['uraikegiatan'] = $db2->Row("N_Keg");
|
||||
$akeg['pagu'] = $db2->RowFloat("Pagu_Ini");
|
||||
$akeg['pagu_p'] = 0;
|
||||
$akeg['sumberdana'] = array();
|
||||
$db3->Query("SELECT R.*,D.K_Dana FROM (SELECT DanaID,SUM(Pagu_Ini) Pagu_Ini FROM renja90_rinci WHERE Tahun='".$tahun."' AND OPDID='".$id_opd."' AND K_RKA IN (SELECT K_RKA FROM renja90_sub WHERE Tahun='".$tahun."' AND OPDID='".$id_opd."' AND ProgID='".$db->Row("ProgID")."' AND KegID='".$db2->Row("KegID")."') GROUP BY DanaID) R LEFT JOIN para_dana D ON (R.DanaID=D.DanaID)");
|
||||
while ($db3->Next()) {
|
||||
$akeg['sumberdana'][] = array('pagu'=>$db3->RowFloat("Pagu_Ini"),'sumberdana'=>$db3->Row("K_Dana"),'kodesumberdana'=>$db3->Row("DanaID"));
|
||||
}
|
||||
$akeg['prioritas'] = array();
|
||||
/*$db3->Query("SELECT Txt_Misi FROM rpjmd_misi WHERE RPJMDID='".$id_rpjmd."' AND RD_MISIID IN (SELECT P.RD_MISIID FROM rpjmd_prog P LEFT JOIN rpjmd_prog_indi I ON (I.RPJMDID=P.RPJMDID AND I.RD_PROGID=P.RD_PROGID) WHERE I.RD_PROGINDIID IN (SELECT RD_PROGINDIID FROM renstra_detail_indi WHERE RPJMDID='".$id_rpjmd."' AND RA_PROGRAMID='".$db->Row("RA_PROGRAMID")."'))");
|
||||
while ($db3->Next()) {
|
||||
if ($db3->Row("Txt_Misi","")<>"") $akeg['prioritas'][] = array('prioritasdaerah'=>$db3->Row("Txt_Misi"));
|
||||
}*/
|
||||
$akeg['lokasi'] = array();//array(array('lokasi'=>$db2->Row("Lokasi"),'kodelokasi'=>"",'detaillokasi'=>""));
|
||||
$akeg['indikator'] = array();
|
||||
$akeg['indikator'][] = array( 'kodeindikator' => "1",
|
||||
'jenis' => "KELUARAN",
|
||||
'tolokukur' => $db2->Row("Indi_Txt"),
|
||||
'satuan' => $db2->Row("N_Satuan"),
|
||||
'real_p3' => "0",
|
||||
'pagu_p3' => "0",
|
||||
'real_p2' => "0",
|
||||
'pagu_p2' => "0",
|
||||
'real_p1' => "0",
|
||||
'pagu_p1' => $db2->RowFloat("Pagu_Lalu"),
|
||||
'target' => $db2->Row("Target_Ini"),
|
||||
'pagu' => $db2->RowFloat("Pagu_Ini"),
|
||||
'pagu_p' => "0",
|
||||
'target_n1' => 0,//$db2->Row("Target_Dpn")
|
||||
'pagu_n1' => $db2->RowFloat("Pagu_Dpn")
|
||||
);
|
||||
|
||||
// data sub kegiatan
|
||||
$akeg['subkegiatan'] = array();
|
||||
$db3->Query("SELECT D.*,K.N_Sub,IFNULL(S.N_Satuan,'') N_Satuan FROM (SELECT * FROM renja90_sub WHERE Tahun='".$tahun."' AND OPDID='".$id_opd."' AND ProgID='".$db->Row("ProgID")."' AND KegID='".$db2->Row("KegID")."') D LEFT JOIN para90_sub K ON (D.SubID=K.SubID) LEFT JOIN para_satuan S ON (D.Target_SatuanID=S.SatuanID) ORDER BY D.K_Sub");
|
||||
while ($db3->Next()) {
|
||||
$asubkeg = array();
|
||||
$asubkeg['kodesubkegiatan'] = $db3->Row("K_Sub");
|
||||
$asubkeg['uraisubkegiatan'] = $db3->Row("N_Sub");
|
||||
$asubkeg['pagu'] = $db3->RowFloat("Pagu_Ini");
|
||||
$asubkeg['pagu_p'] = "0";
|
||||
$asubkeg['sumberdana'] = array();
|
||||
$db4->Query("SELECT R.*,D.K_Dana FROM (SELECT DanaID,SUM(Pagu_Ini) Pagu_Ini FROM renja90_rinci WHERE Tahun='".$tahun."' AND OPDID='".$id_opd."' AND K_RKA='".$db3->Row("K_RKA")."' GROUP BY DanaID) R LEFT JOIN para_dana D ON (R.DanaID=D.DanaID)");
|
||||
while ($db4->Next()) {
|
||||
$asubkeg['sumberdana'][] = array('pagu'=>$db4->RowFloat("Pagu_Ini"),'sumberdana'=>$db4->Row("K_Dana"),'kodesumberdana'=>$db4->Row("DanaID"));
|
||||
}
|
||||
$asubkeg['prioritas'] = array();
|
||||
$asubkeg['lokasi'] = array();
|
||||
if ($db3->Row("Lokasi")<>"") $asubkeg['lokasi'][] = array('lokasi'=>$db3->Row("Lokasi"),'kodelokasi'=>"",'detaillokasi'=>"");//todo: kodelokasi
|
||||
$asubkeg['indikator'] = array();
|
||||
$asubkeg['indikator'][] = array( 'kodeindikator' => "1",
|
||||
'jenis' => "KELUARAN",
|
||||
'tolokukur' => $db3->Row("Indi_Txt"),
|
||||
'satuan' => $db3->Row("N_Satuan"),
|
||||
'real_p3' => "0",
|
||||
'pagu_p3' => "0",
|
||||
'real_p2' => "0",
|
||||
'pagu_p2' => "0",
|
||||
'real_p1' => "0",
|
||||
'pagu_p1' => "0",
|
||||
'target' => $db3->Row("Target_Ini"),
|
||||
'pagu' => $db3->RowFloat("Pagu_Ini"),
|
||||
'pagu_p' => "0",
|
||||
'target_n1' => "0",
|
||||
'pagu_n1' => $db3->RowFloat("Pagu_Dpn")
|
||||
);
|
||||
$akeg['subkegiatan'][] = $asubkeg;
|
||||
}
|
||||
|
||||
$aprog['kegiatan'][] = $akeg;
|
||||
}
|
||||
|
||||
$askpd['program'][] = $aprog;
|
||||
}
|
||||
$apost[] = $askpd;
|
||||
return $apost;
|
||||
}
|
||||
|
||||
/************************** RESPON HERE ***************************/
|
||||
|
||||
$db = DB();
|
||||
$db2 = DB();
|
||||
$db3 = DB();
|
||||
$db4 = DB();
|
||||
$ajson = array();
|
||||
$data = Param::Get("data");
|
||||
|
||||
$id_rpjmd = $_SESSION['__WEB_APP']['RENC_RPJMDID'];
|
||||
$tahun = $_SESSION['__WEB_APP']['RENC_THN'];
|
||||
$id_opd = Param::Get("OPDID", 0);
|
||||
$aprog = array();
|
||||
|
||||
if ( $data == "kirim" || $data == "" ) {
|
||||
$alist = Param::GetArrayCBOX();
|
||||
foreach ($alist as $_key => $_val) {
|
||||
if ($_val=="Y") $aprog[] = $_key;
|
||||
}
|
||||
}
|
||||
|
||||
if ( $data == "detail-opd" || $data == "detail-prog" || $data == "kirim" ) {
|
||||
$qsql = "RPJMDID='".$id_rpjmd."' AND Tahun='".$tahun."'";
|
||||
$msql = "M.Aktif=1";
|
||||
|
||||
if ( $data == "detail-prog" ) {
|
||||
$qsql .= " AND OPDID='".$id_opd."'";
|
||||
}
|
||||
$qbd = $qsql;
|
||||
}
|
||||
|
||||
if ( $data == "detail-opd" ) {
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT K.*,M.OPDID OPDID2,M.K_OPD,M.N_OPD,M.Nama_OPD,CONCAT(IFNULL(B.UDAH_PROG,0),' / ',K.ITEM_PROG) Status FROM vi_para90_opd M LEFT JOIN (SELECT OPDID,COUNT(DISTINCT ProgID) ITEM_PROG,COUNT(DISTINCT KegID) ITEM_KEG,COUNT(*) ITEM_SUB,SUM(Pagu_Ini) TOT_PAGU FROM renja90_sub WHERE ".$qsql." GROUP BY OPDID) K ON (K.OPDID=M.OPDID) LEFT JOIN (SELECT OPDID,COUNT(DISTINCT ProgID) UDAH_PROG FROM bangda_rkpd_awal WHERE ".$qsql." GROUP BY OPDID) B ON (B.OPDID=M.OPDID) WHERE ".$msql);
|
||||
$obj->add_field("OPDID2", "OPD", "hid");
|
||||
$obj->add_field("K_OPD", "KODE", "c");
|
||||
$obj->add_field("N_OPD", "NAMA OPD", "awr");
|
||||
$obj->add_field("TOT_PAGU", "PAGU", "r", "rupiah2");
|
||||
$obj->add_field("ITEM_PROG", "PROG", "r", "rupiah");
|
||||
$obj->add_field("ITEM_KEG", "KEG", "r", "rupiah");
|
||||
$obj->add_field("ITEM_SUB", "SUB", "r", "rupiah");
|
||||
$obj->add_field("Status", "Status", "c");
|
||||
$obj->add_field("Nama_OPD", "Nama OPD", "hid");
|
||||
$obj->set_field_order("K_OPD", "A");
|
||||
$obj->add_row_btn("select", "Program", "PRKPDAwalJS.opd_select");
|
||||
$obj->add_row_btn("send", "Kirim / OPD", "PRKPDAwalJS.opd_kirim");
|
||||
$obj->set_func_navi("PRKPDAwalJS.data_query('detail-opd')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divOPD", 60);
|
||||
|
||||
} else if ( $data == "detail-prog" ) {
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT K.*,IFNULL(PR.ProgID,0) ProgID,PR.K_Prog,M.N_Prog,IF(IFNULL(PO.ProgID,0)=0,'Belum','Sudah') Status,'N' Pilih FROM (SELECT ProgID,K_Prog FROM renja90_prog WHERE ".$qsql.") PR LEFT JOIN para90_prog M ON (PR.ProgID=M.ProgID) LEFT JOIN (SELECT ProgID,COUNT(DISTINCT KegID) ITEM_KEG,COUNT(*) ITEM_SUB,SUM(Pagu_Ini) TOT_PAGU FROM renja90_sub WHERE ".$qsql." GROUP BY ProgID) K ON (PR.ProgID=K.ProgID) LEFT JOIN (SELECT * FROM bangda_rkpd_awal WHERE ".$qsql.") PO ON (PR.ProgID=PO.ProgID) WHERE ".$msql);
|
||||
$obj->add_field("ProgID", "ID", "hid");
|
||||
$obj->add_field("K_Prog", "KODE", "c");
|
||||
$obj->add_field("N_Prog", "NAMA PROGRAM", "awr");
|
||||
$obj->add_field("TOT_PAGU", "PAGU", "r", "rupiah2");
|
||||
$obj->add_field("ITEM_KEG", "KEG", "r", "rupiah");
|
||||
$obj->add_field("ITEM_SUB", "SUB", "r", "rupiah");
|
||||
$obj->add_field("Status", "Status", "l");
|
||||
$obj->set_field_order("K_Prog", "A");
|
||||
$obj->set_row_color("Status", "Sudah", "rblue");
|
||||
$obj->add_row_checkbox("ProgID", "Pilih", array("Y","N"));
|
||||
$obj->set_func_navi("PRKPDAwalJS.data_query('detail-prog')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divPROG", 60);
|
||||
|
||||
} else if ( $data == "kirim" ) {
|
||||
$apost = Bangda_Data($id_rpjmd, $tahun, $id_opd, $aprog);
|
||||
$api = Bangda_Request($apost, $tahun);
|
||||
$tmsg = "Ada masalah dalam proses !";
|
||||
if (isset($api['code'])) {
|
||||
$tmsg = $api['msg'];
|
||||
if ($api['code']==200) {
|
||||
if (count($aprog)>0) {
|
||||
foreach ($aprog as $_val) {
|
||||
$db->Query("INSERT IGNORE INTO bangda_rkpd_awal SET RPJMDID='".$id_rpjmd."',Tahun='".$tahun."',OPDID='".$id_opd."',ProgID='".$_val."',DateStamp=NOW(),UserID='".user_id()."'");
|
||||
}
|
||||
} else {
|
||||
$db->Query("INSERT IGNORE INTO bangda_rkpd_awal SELECT '".$id_rpjmd."','".$tahun."',OPDID,ProgID,NOW(),'".user_id()."' FROM renja90_prog WHERE ".$qsql." AND OPDID='".$id_opd."'");
|
||||
}
|
||||
}
|
||||
}
|
||||
$ajson['msg'] = $tmsg;
|
||||
$ajson['pre'] = ($api['pre']=="") ? implode("<br>", $api['log']) : $api['pre'];
|
||||
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Push RKPD Awal ke SIPD Kemendagri</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 OPD" type="text" readonly>
|
||||
<input id="OPDID" type="hidden" value="0">
|
||||
<span class="input-group-append">
|
||||
<button class="btn btn-info btn-ganti" type="button" id="butOPD"><span><i class="c-icon cui-swap-horizontal"></span></i>OPD</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="divOPD"> </div>
|
||||
<div id="divPROG"> </div>
|
||||
</div></div>
|
||||
</div>';
|
||||
|
||||
} else if ( $data == "" ){
|
||||
$ajson = Bangda_Data($id_rpjmd, $tahun, $id_opd, $aprog);
|
||||
}
|
||||
|
||||
send_json($ajson);
|
||||
?>
|
||||
@@ -0,0 +1,320 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/php/push/rkpd_ranc.php
|
||||
Desc. : PHP - Push API Rancangan RKPD ke SIPD Kemendagri
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : August 20th, 2020.
|
||||
|
||||
(c) 2011 - 2020, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(dirname(__FILE__)."/../../../../../modules3/web.auth.php");
|
||||
require_once(dirname(__FILE__)."/../../../../../modules3/web.table.php");
|
||||
require_once(dirname(__FILE__)."/../../../../../modules3/web.form.php");
|
||||
require_once(dirname(__FILE__)."/../../../../../modules3/data.json.php");
|
||||
require_once(dirname(__FILE__)."/../func.sippd.php");
|
||||
|
||||
function Bangda_Request($apost = array(), $tahun=0) {
|
||||
$api_key = "9885846625b49e88baa18d46e2df6ff6";
|
||||
$str_json = json_encode($apost);
|
||||
$curl_array = array(
|
||||
CURLOPT_URL => "https://sipd.go.id/run/serv/push_rancangan?kodepemda=6102&tahun=".$tahun,
|
||||
CURLOPT_RETURNTRANSFER => true,
|
||||
CURLOPT_ENCODING => "",
|
||||
CURLOPT_MAXREDIRS => 10,
|
||||
CURLOPT_TIMEOUT => 0,
|
||||
CURLOPT_FOLLOWLOCATION => true,
|
||||
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
|
||||
CURLOPT_POST => true,
|
||||
CURLOPT_POSTFIELDS => $str_json,
|
||||
CURLOPT_HTTPHEADER => array(
|
||||
"Accept: application/json",
|
||||
"Authorization: Bearer ".$api_key,
|
||||
"Content-Type: application/json",
|
||||
"Content-Length: " . strlen($str_json)
|
||||
),
|
||||
CURLOPT_SSL_VERIFYHOST => false,
|
||||
CURLOPT_SSL_VERIFYPEER => false
|
||||
);
|
||||
|
||||
$aresult = array('code' => 0, 'msg' => "");
|
||||
|
||||
$curl = curl_init();
|
||||
curl_setopt_array($curl, $curl_array);
|
||||
$response = curl_exec($curl);
|
||||
$err = curl_error($curl);
|
||||
curl_close($curl);
|
||||
|
||||
$aresult = json_decode($response, true);
|
||||
return $aresult;
|
||||
}
|
||||
|
||||
function Bangda_Data($id_rpjmd=0, $tahun=0, $id_opd=0, $aprog=array()) {
|
||||
global $db, $db2, $db3, $db4;
|
||||
$apost = array();
|
||||
$askpd = array();
|
||||
|
||||
$tsql = (count($aprog)>0) ? " AND ProgID IN (". join(",", $aprog) .")" : "";
|
||||
|
||||
$askpd['kodepemda'] = "6102";
|
||||
$askpd['tahun'] = "".$tahun;
|
||||
$askpd['pilihanbidang'] = array();
|
||||
|
||||
// data opd
|
||||
$abidu = array();
|
||||
$db->Query("SELECT O.*,B.N_Bidu,U.N_Urusan FROM para90_opd O LEFT JOIN para90_bidu B ON (B.K_Bidu=O.K_Bidu1) LEFT JOIN para90_urusan U ON (B.K_Urusan=U.K_Urusan) WHERE O.OPDID='".$id_opd."'");
|
||||
if ($db->Next()) {
|
||||
$askpd['kodebidang'] = $db->Row("K_Bidu1");
|
||||
$askpd['uraibidang'] = $db->Row("N_Bidu");
|
||||
$askpd['kodeskpd'] = $db->Row("K_OPD");
|
||||
$askpd['uraiskpd'] = $db->Row("N_OPD");
|
||||
$askpd['uraiurusan'] = $db->Row("N_Urusan");
|
||||
$askpd['pejabat'] = array(
|
||||
'kepalanip'=>$db->Row("P_NIP"),
|
||||
'kepalanama'=>$db->Row("P_Nama"),
|
||||
'kepalajabatan'=>$db->Row("P_Jabatan"),
|
||||
'kepalapangkat'=>$db->Row("P_Pangkat")
|
||||
);
|
||||
$abidu[] = $db->Row("K_Bidu1");
|
||||
if ($db->Row("K_Bidu2")<>"0.00") $abidu[] = $db->Row("K_Bidu2");
|
||||
if ($db->Row("K_Bidu3")<>"0.00") $abidu[] = $db->Row("K_Bidu3");
|
||||
}
|
||||
$db->Query("SELECT * FROM para90_bidu WHERE K_Bidu IN ('".implode("','", $abidu)."')");
|
||||
while ($db->Next()) {
|
||||
$askpd['pilihanbidang'][] = $db->Row("K_Bidu");
|
||||
}
|
||||
|
||||
// data program
|
||||
$askpd['program'] = array();
|
||||
$db->Query("SELECT P.*,PO.N_Prog,B.K_Bidu,B.N_Bidu,IFNULL(S.N_Satuan,'') N_Satuan FROM (SELECT * FROM renja90_prog WHERE Tahun='".$tahun."' AND OPDID='".$id_opd."'".$tsql.") P LEFT JOIN para90_prog PO ON (P.ProgID=PO.ProgID) LEFT JOIN para90_bidu B ON (PO.K_Bidu=B.K_Bidu) LEFT JOIN para_satuan S ON (P.Target_SatuanID=S.SatuanID) ORDER BY P.K_Prog");
|
||||
while ($db->Next()) {
|
||||
$aprog = array();
|
||||
$aprog['kodebidang'] = ($db->Row("K_Bidu")=="X.XX") ? $askpd['kodebidang'] : $db->Row("K_Bidu");
|
||||
$aprog['uraibidang'] = ($db->Row("K_Bidu")=="X.XX") ? $askpd['uraibidang'] : $db->Row("N_Bidu");
|
||||
$aprog['kodeprogram'] = $db->Row("K_Prog");
|
||||
$aprog['uraiprogram'] = $db->Row("N_Prog");
|
||||
$aprog['prioritas'] = array();
|
||||
|
||||
// data indikator program
|
||||
$aprog['capaian'] = array();
|
||||
//$db2->Query("SELECT * FROM rpjmd_prog_indi WHERE RPJMDID='".$id_rpjmd."' AND RD_PROGINDIID IN (SELECT RD_PROGINDIID FROM renstra_detail_indi WHERE RPJMDID='".$id_rpjmd."' AND RA_PROGRAMID='".$db->Row("RA_PROGRAMID")."')");
|
||||
//while ($db2->Next()) {
|
||||
$aindi = array();
|
||||
$aindi['kodeindikator'] = "1";
|
||||
$aindi['tolokukur'] = $db->Row("Indi_Txt");
|
||||
$aindi['satuan'] = $db->Row("N_Satuan");
|
||||
$aindi['real_p3'] = "0";
|
||||
$aindi['pagu_p3'] = "0";
|
||||
$aindi['real_p2'] = "0";
|
||||
$aindi['pagu_p2'] = "0";
|
||||
$aindi['real_p1'] = "0";
|
||||
$aindi['pagu_p1'] = "0";
|
||||
$aindi['target'] = "0";//$db2->Row("Indi_T3");
|
||||
$aindi['pagu'] = "0";//
|
||||
$aindi['pagu_p'] = "0";
|
||||
$aindi['target_n1'] = "0";//$db2->Row("Indi_T4");//todo: set auto sesuai tahun
|
||||
$aindi['pagu_n1'] = "0";// ?
|
||||
$aprog['capaian'][] = $aindi;
|
||||
//}
|
||||
|
||||
// data kegiatan
|
||||
$aprog['kegiatan'] = array();
|
||||
$db2->Query("SELECT D.*,K.N_Keg,IFNULL(S.N_Satuan,'') N_Satuan FROM (SELECT * FROM renja90_keg WHERE Tahun='".$tahun."' AND OPDID='".$id_opd."' AND ProgID='".$db->Row("ProgID")."') D LEFT JOIN para90_keg K ON (D.KegID=K.KegID) LEFT JOIN para_satuan S ON (D.Target_SatuanID=S.SatuanID) ORDER BY D.K_Keg");
|
||||
while ($db2->Next()) {
|
||||
$akeg = array();
|
||||
$akeg['kodekegiatan'] = $db2->Row("K_Keg");
|
||||
$akeg['uraikegiatan'] = $db2->Row("N_Keg");
|
||||
$akeg['pagu'] = $db2->RowFloat("Pagu_Ini");
|
||||
$akeg['pagu_p'] = 0;
|
||||
$akeg['sumberdana'] = array();
|
||||
$db3->Query("SELECT R.*,D.K_Dana FROM (SELECT DanaID,SUM(Pagu_Ini) Pagu_Ini FROM renja90_rinci WHERE Tahun='".$tahun."' AND OPDID='".$id_opd."' AND K_RKA IN (SELECT K_RKA FROM renja90_sub WHERE Tahun='".$tahun."' AND OPDID='".$id_opd."' AND ProgID='".$db->Row("ProgID")."' AND KegID='".$db2->Row("KegID")."') GROUP BY DanaID) R LEFT JOIN para_dana D ON (R.DanaID=D.DanaID)");
|
||||
while ($db3->Next()) {
|
||||
$akeg['sumberdana'][] = array('pagu'=>$db3->RowFloat("Pagu_Ini"),'sumberdana'=>$db3->Row("K_Dana"),'kodesumberdana'=>$db3->Row("DanaID"));
|
||||
}
|
||||
$akeg['prioritas'] = array();
|
||||
/*$db3->Query("SELECT Txt_Misi FROM rpjmd_misi WHERE RPJMDID='".$id_rpjmd."' AND RD_MISIID IN (SELECT P.RD_MISIID FROM rpjmd_prog P LEFT JOIN rpjmd_prog_indi I ON (I.RPJMDID=P.RPJMDID AND I.RD_PROGID=P.RD_PROGID) WHERE I.RD_PROGINDIID IN (SELECT RD_PROGINDIID FROM renstra_detail_indi WHERE RPJMDID='".$id_rpjmd."' AND RA_PROGRAMID='".$db->Row("RA_PROGRAMID")."'))");
|
||||
while ($db3->Next()) {
|
||||
if ($db3->Row("Txt_Misi","")<>"") $akeg['prioritas'][] = array('prioritasdaerah'=>$db3->Row("Txt_Misi"));
|
||||
}*/
|
||||
$akeg['lokasi'] = array();//array(array('lokasi'=>$db2->Row("Lokasi"),'kodelokasi'=>"",'detaillokasi'=>""));
|
||||
$akeg['indikator'] = array();
|
||||
$akeg['indikator'][] = array( 'kodeindikator' => "1",
|
||||
'jenis' => "KELUARAN",
|
||||
'tolokukur' => $db2->Row("Indi_Txt"),
|
||||
'satuan' => $db2->Row("N_Satuan"),
|
||||
'real_p3' => "0",
|
||||
'pagu_p3' => "0",
|
||||
'real_p2' => "0",
|
||||
'pagu_p2' => "0",
|
||||
'real_p1' => "0",
|
||||
'pagu_p1' => $db2->RowFloat("Pagu_Lalu"),
|
||||
'target' => $db2->Row("Target_Ini"),
|
||||
'pagu' => $db2->RowFloat("Pagu_Ini"),
|
||||
'pagu_p' => "0",
|
||||
'target_n1' => 0,//$db2->Row("Target_Dpn")
|
||||
'pagu_n1' => $db2->RowFloat("Pagu_Dpn")
|
||||
);
|
||||
|
||||
// data sub kegiatan
|
||||
$akeg['subkegiatan'] = array();
|
||||
$db3->Query("SELECT D.*,K.N_Sub,IFNULL(S.N_Satuan,'') N_Satuan FROM (SELECT * FROM renja90_sub WHERE Tahun='".$tahun."' AND OPDID='".$id_opd."' AND ProgID='".$db->Row("ProgID")."' AND KegID='".$db2->Row("KegID")."') D LEFT JOIN para90_sub K ON (D.SubID=K.SubID) LEFT JOIN para_satuan S ON (D.Target_SatuanID=S.SatuanID) ORDER BY D.K_Sub");
|
||||
while ($db3->Next()) {
|
||||
$asubkeg = array();
|
||||
$asubkeg['kodesubkegiatan'] = $db3->Row("K_Sub");
|
||||
$asubkeg['uraisubkegiatan'] = $db3->Row("N_Sub");
|
||||
$asubkeg['pagu'] = $db3->RowFloat("Pagu_Ini");
|
||||
$asubkeg['pagu_p'] = "0";
|
||||
$asubkeg['sumberdana'] = array();
|
||||
$db4->Query("SELECT R.*,D.K_Dana FROM (SELECT DanaID,SUM(Pagu_Ini) Pagu_Ini FROM renja90_rinci WHERE Tahun='".$tahun."' AND OPDID='".$id_opd."' AND K_RKA='".$db3->Row("K_RKA")."' GROUP BY DanaID) R LEFT JOIN para_dana D ON (R.DanaID=D.DanaID)");
|
||||
while ($db4->Next()) {
|
||||
$asubkeg['sumberdana'][] = array('pagu'=>$db4->RowFloat("Pagu_Ini"),'sumberdana'=>$db4->Row("K_Dana"),'kodesumberdana'=>$db4->Row("DanaID"));
|
||||
}
|
||||
$asubkeg['prioritas'] = array();
|
||||
$asubkeg['lokasi'] = array();
|
||||
if ($db3->Row("Lokasi")<>"") $asubkeg['lokasi'][] = array('lokasi'=>$db3->Row("Lokasi"),'kodelokasi'=>"",'detaillokasi'=>"");//todo: kodelokasi
|
||||
$asubkeg['indikator'] = array();
|
||||
$asubkeg['indikator'][] = array( 'kodeindikator' => "1",
|
||||
'jenis' => "KELUARAN",
|
||||
'tolokukur' => $db3->Row("Indi_Txt"),
|
||||
'satuan' => $db3->Row("N_Satuan"),
|
||||
'real_p3' => "0",
|
||||
'pagu_p3' => "0",
|
||||
'real_p2' => "0",
|
||||
'pagu_p2' => "0",
|
||||
'real_p1' => "0",
|
||||
'pagu_p1' => "0",
|
||||
'target' => $db3->Row("Target_Ini"),
|
||||
'pagu' => $db3->RowFloat("Pagu_Ini"),
|
||||
'pagu_p' => "0",
|
||||
'target_n1' => "0",
|
||||
'pagu_n1' => $db3->RowFloat("Pagu_Dpn")
|
||||
);
|
||||
$akeg['subkegiatan'][] = $asubkeg;
|
||||
}
|
||||
|
||||
$aprog['kegiatan'][] = $akeg;
|
||||
}
|
||||
|
||||
$askpd['program'][] = $aprog;
|
||||
}
|
||||
$apost[] = $askpd;
|
||||
return $apost;
|
||||
}
|
||||
|
||||
/************************** RESPON HERE ***************************/
|
||||
|
||||
$db = DB();
|
||||
$db2 = DB();
|
||||
$db3 = DB();
|
||||
$db4 = DB();
|
||||
$ajson = array();
|
||||
$data = Param::Get("data");
|
||||
|
||||
$id_rpjmd = $_SESSION['__WEB_APP']['RENC_RPJMDID'];
|
||||
$tahun = $_SESSION['__WEB_APP']['RENC_THN'];
|
||||
$id_opd = Param::Get("OPDID", 0);
|
||||
$aprog = array();
|
||||
|
||||
if ( $data == "kirim" || $data == "" ) {
|
||||
$alist = Param::GetArrayCBOX();
|
||||
foreach ($alist as $_key => $_val) {
|
||||
if ($_val=="Y") $aprog[] = $_key;
|
||||
}
|
||||
}
|
||||
|
||||
if ( $data == "detail-opd" || $data == "detail-prog" || $data == "kirim" ) {
|
||||
$qsql = "RPJMDID='".$id_rpjmd."' AND Tahun='".$tahun."'";
|
||||
$msql = "M.Aktif=1";
|
||||
|
||||
if ( $data == "detail-prog" ) {
|
||||
$qsql .= " AND OPDID='".$id_opd."'";
|
||||
}
|
||||
$qbd = $qsql;
|
||||
}
|
||||
|
||||
if ( $data == "detail-opd" ) {
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT K.*,M.OPDID OPDID2,M.K_OPD,M.N_OPD,M.Nama_OPD,CONCAT(IFNULL(B.UDAH_PROG,0),' / ',K.ITEM_PROG) Status FROM vi_para90_opd M LEFT JOIN (SELECT OPDID,COUNT(DISTINCT ProgID) ITEM_PROG,COUNT(DISTINCT KegID) ITEM_KEG,COUNT(*) ITEM_SUB,SUM(Pagu_Ini) TOT_PAGU FROM renja90_sub WHERE ".$qsql." GROUP BY OPDID) K ON (K.OPDID=M.OPDID) LEFT JOIN (SELECT OPDID,COUNT(DISTINCT ProgID) UDAH_PROG FROM bangda_rkpd_ranc WHERE ".$qsql." GROUP BY OPDID) B ON (B.OPDID=M.OPDID) WHERE ".$msql);
|
||||
$obj->add_field("OPDID2", "OPD", "hid");
|
||||
$obj->add_field("K_OPD", "KODE", "c");
|
||||
$obj->add_field("N_OPD", "NAMA OPD", "awr");
|
||||
$obj->add_field("TOT_PAGU", "PAGU", "r", "rupiah2");
|
||||
$obj->add_field("ITEM_PROG", "PROG", "r", "rupiah");
|
||||
$obj->add_field("ITEM_KEG", "KEG", "r", "rupiah");
|
||||
$obj->add_field("ITEM_SUB", "SUB", "r", "rupiah");
|
||||
$obj->add_field("Status", "Status", "c");
|
||||
$obj->add_field("Nama_OPD", "Nama OPD", "hid");
|
||||
$obj->set_field_order("K_OPD", "A");
|
||||
$obj->add_row_btn("select", "Program", "PRKPDRancJS.opd_select");
|
||||
$obj->add_row_btn("send", "Kirim / OPD", "PRKPDRancJS.opd_kirim");
|
||||
$obj->set_func_navi("PRKPDRancJS.data_query('detail-opd')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divOPD", 60);
|
||||
|
||||
} else if ( $data == "detail-prog" ) {
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT K.*,IFNULL(PR.ProgID,0) ProgID,PR.K_Prog,M.N_Prog,IF(IFNULL(PO.ProgID,0)=0,'Belum','Sudah') Status,'N' Pilih FROM (SELECT ProgID,K_Prog FROM renja90_prog WHERE ".$qsql.") PR LEFT JOIN para90_prog M ON (PR.ProgID=M.ProgID) LEFT JOIN (SELECT ProgID,COUNT(DISTINCT KegID) ITEM_KEG,COUNT(*) ITEM_SUB,SUM(Pagu_Ini) TOT_PAGU FROM renja90_sub WHERE ".$qsql." GROUP BY ProgID) K ON (PR.ProgID=K.ProgID) LEFT JOIN (SELECT * FROM bangda_rkpd_ranc WHERE ".$qsql.") PO ON (PR.ProgID=PO.ProgID) WHERE ".$msql);
|
||||
$obj->add_field("ProgID", "ID", "hid");
|
||||
$obj->add_field("K_Prog", "KODE", "c");
|
||||
$obj->add_field("N_Prog", "NAMA PROGRAM", "awr");
|
||||
$obj->add_field("TOT_PAGU", "PAGU", "r", "rupiah2");
|
||||
$obj->add_field("ITEM_KEG", "KEG", "r", "rupiah");
|
||||
$obj->add_field("ITEM_SUB", "SUB", "r", "rupiah");
|
||||
$obj->add_field("Status", "Status", "l");
|
||||
$obj->set_field_order("K_Prog", "A");
|
||||
$obj->set_row_color("Status", "Sudah", "rblue");
|
||||
$obj->add_row_checkbox("ProgID", "Pilih", array("Y","N"));
|
||||
$obj->set_func_navi("PRKPDRancJS.data_query('detail-prog')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divPROG", 60);
|
||||
|
||||
} else if ( $data == "kirim" ) {
|
||||
$apost = Bangda_Data($id_rpjmd, $tahun, $id_opd, $aprog);
|
||||
$api = Bangda_Request($apost, $tahun);
|
||||
$tmsg = "Ada masalah dalam proses !";
|
||||
if (isset($api['code'])) {
|
||||
$tmsg = $api['msg'];
|
||||
if ($api['code']==200) {
|
||||
if (count($aprog)>0) {
|
||||
foreach ($aprog as $_val) {
|
||||
$db->Query("INSERT IGNORE INTO bangda_rkpd_ranc SET RPJMDID='".$id_rpjmd."',Tahun='".$tahun."',OPDID='".$id_opd."',ProgID='".$_val."',DateStamp=NOW(),UserID='".user_id()."'");
|
||||
}
|
||||
} else {
|
||||
$db->Query("INSERT IGNORE INTO bangda_rkpd_ranc SELECT '".$id_rpjmd."','".$tahun."',OPDID,ProgID,NOW(),'".user_id()."' FROM renja90_prog WHERE ".$qsql." AND OPDID='".$id_opd."'");
|
||||
}
|
||||
}
|
||||
}
|
||||
$ajson['msg'] = $tmsg;
|
||||
$ajson['pre'] = ($api['pre']=="") ? implode("<br>", $api['log']) : $api['pre'];
|
||||
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Push Rancangan RKPD ke SIPD Kemendagri</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 OPD" type="text" readonly>
|
||||
<input id="OPDID" type="hidden" value="0">
|
||||
<span class="input-group-append">
|
||||
<button class="btn btn-info btn-ganti" type="button" id="butOPD"><span><i class="c-icon cui-swap-horizontal"></span></i>OPD</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="divOPD"> </div>
|
||||
<div id="divPROG"> </div>
|
||||
</div></div>
|
||||
</div>';
|
||||
|
||||
} else if ( $data == "" ){
|
||||
$ajson = Bangda_Data($id_rpjmd, $tahun, $id_opd, $aprog);
|
||||
}
|
||||
|
||||
send_json($ajson);
|
||||
?>
|
||||
@@ -0,0 +1,116 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/php/sim/bangda_mus.php
|
||||
Desc. : PHP - Simulasi Push Musrenbang ke Bangda Kemendagri
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : March 19th, 2021.
|
||||
Last Modified : April 6th, 2022.
|
||||
|
||||
(c) 2021 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
require_once(__DIR__."/../func.sippd.php");
|
||||
|
||||
use siaupheng\fonia4\DB\MySQL;
|
||||
use siaupheng\fonia4\DB\SQL;
|
||||
use siaupheng\fonia4\Web\Param;
|
||||
use siaupheng\fonia4\Web\Table;
|
||||
use siaupheng\fonia4\Web\Form;
|
||||
|
||||
function MUS_Tambah_Data($tahun=0, $id_kec=0, $id_kel=0) {
|
||||
global $db;
|
||||
$ahasil = [];
|
||||
|
||||
$ainfo = [];
|
||||
$db->Query("SELECT A.K_PoDes K_Kel,B.K_PoDes K_Kec FROM (SELECT * FROM para_lokasi WHERE LokasiID='".$id_kel."') A LEFT JOIN para_lokasi B ON (B.LokasiID=A.IndukID)");
|
||||
if ($db->Next()) $ainfo = $db->AllRow();
|
||||
|
||||
$tsql = " AND KecID='".$id_kec."'";
|
||||
$tsql .= ($id_kel==0) ? "" : " AND KelID='".$id_kel."'";
|
||||
$db->Query("SELECT U.*,CONCAT(IFNULL(J.N_Jalan,U.Lokasi),' RT. ',U.RT,', ',U.Dusun) Alamat,O.K_OPD,S.N_Satuan,M.K_Bidu,M.K_Prog,M.K_Keg,M.K_Sub,M.N_Sub FROM (SELECT OPDID,SubID,JalanID,SatuanID,Lokasi,RT,Dusun,Volume,Rupiah,Kode FROM mus_usulan WHERE Tahun='".$tahun."' AND (Prio IN (1,2) OR OAksi=1)".$tsql.") U LEFT JOIN para_jalan J ON (J.JalanID=U.JalanID) LEFT JOIN vi_para90_submap M ON (M.SubID=U.SubID) LEFT JOIN para90_opd O ON (O.OPDID=U.OPDID) LEFT JOIN para_satuan S ON (S.SatuanID=U.SatuanID) ORDER BY U.Kode");
|
||||
while ($db->Next()) {
|
||||
$ahasil[] = "\$.ajax({url:BASE_URL+'/?m=daerah_musrenbang_desa&f=save_usulan',type:'post',data:'kodelokasiv=".$ainfo['K_Kel']."&no_usulan=&judul_usulan=Usulan%20".$db->Row("N_Sub")."&satuan=".$db->Row("N_Satuan")."&volume=".$db->Row("Volume")."&pagu=".rupiah($db->Row("Rupiah"))."&pagu_penjumlahan=&kodelokasi_kec=".$ainfo['K_Kec']."&kodelokasi=".$ainfo['K_Kel']."&detail_lokasi=".str_replace("'","\'",$db->Row("Alamat"))."&skpd=".$db->Row("K_OPD")."&bidang=".$db->Row("K_Bidu")."&program=".$db->Row("K_Prog")."&kegiatan=".$db->Row("K_Keg")."&subkegiatan=".$db->Row("K_Sub")."&id='});<br>";
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
/************************** RESPON HERE ***************************/
|
||||
|
||||
$db = $db ?? new MySQL();
|
||||
$ajson = array();
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_rpjmd = $_SESSION['__WEB_APP']['RENC_RPJMDID'];
|
||||
$thn_renja = $_SESSION['__WEB_APP']['RENC_THN'];
|
||||
$id_kec = Param::Get("KecID", 0);
|
||||
$id_kel = Param::Get("KelID", 0);
|
||||
|
||||
if ( $data == "tabel-kec" || $data == "tabel-kel" ) {
|
||||
$qsql = "Tahun='".$thn_renja."'";
|
||||
if ( $data == "tabel-kel" ) {
|
||||
$qsql .= " AND KecID='".$id_kec."' AND (Prio IN (1,2) OR OAksi=1)";
|
||||
}
|
||||
}
|
||||
|
||||
if ( $data == "tabel-kec" ) {
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT * FROM para_lokasi WHERE Level=1");
|
||||
$obj->add_field("LokasiID", "KEC", "hid");
|
||||
$obj->add_field("N_Lokasi", "N_KEC", "hid");
|
||||
$obj->add_field("K_PoDes", "Kode", "c");
|
||||
$obj->add_field("N_Lokasi", "Nama Kecamatan", "awr");
|
||||
$obj->set_field_order("K_Lokasi", "A");
|
||||
$obj->add_row_btn("select", "Desa", "BangdaMusJS.kec_select");
|
||||
$obj->set_func_navi("BangdaMusJS.data_query('detail-kec')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divKEC");
|
||||
|
||||
} else if ( $data == "tabel-kel" ) {
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT D.*,CONCAT(K.ITEM_USUL) Status FROM (SELECT * FROM para_lokasi WHERE Level=2 AND IndukID='".$id_kec."') D LEFT JOIN (SELECT KelID,COUNT(*) ITEM_USUL FROM mus_usulan WHERE ".$qsql." GROUP BY KelID) K ON (D.LokasiID=K.KelID)");
|
||||
$obj->add_field("LokasiID", "KEL", "hid");
|
||||
$obj->add_field("N_Lokasi", "N_KEL", "hid");
|
||||
$obj->add_field("K_PoDes", "Kode", "c");
|
||||
$obj->add_field("N_Lokasi", "Nama Kelurahan / Desa", "awr");
|
||||
$obj->add_field("Status", "Status", "c");
|
||||
$obj->set_field_order("K_Lokasi", "A");
|
||||
$obj->add_row_btn("send", "+ Usulan", "BangdaMusJS.kode_tambah_mus");
|
||||
$obj->add_row_btn("send0", "= Usulan", "BangdaMusJS.kode_ubah_mus");
|
||||
$obj->set_func_navi("BangdaMusJS.data_query('tabel-kel')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divKEL");
|
||||
|
||||
} else if ( $data == "kode-tambah-mus" ) {
|
||||
$ajson = MUS_Tambah_Data($thn_renja, $id_kec, $id_kel);
|
||||
|
||||
} else if ( $data == "kode-ubah-mus" ) {
|
||||
//$ajson = MUS_Ubah_Data($thn_renja, $id_kec, $id_kel);
|
||||
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Push Hasil Musrenbang ke SIPD Kemendagri</div><div class="card-body">
|
||||
<div class="row mb-1">
|
||||
<div class="col">
|
||||
<div class="input-group">
|
||||
<input class="form-control" id="Nama_KEC" placeholder="Nama Kecamatan" type="text" readonly>
|
||||
<input id="KecID" type="hidden" value="0">
|
||||
<input id="KelID" type="hidden" value="0">
|
||||
<button class="btn btn-info btn-ganti" type="button" id="butKEC"><span><i class="icon cui-swap-horizontal"></span></i>Kecamatan</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="divKEC"> </div>
|
||||
<div id="divKEL"> </div>
|
||||
</div></div>
|
||||
</div>';
|
||||
exit;
|
||||
}
|
||||
|
||||
send_json($ajson, true);
|
||||
?>
|
||||
@@ -0,0 +1,86 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/php/sim/bangda_pok.php
|
||||
Desc. : PHP - Simulasi Push Pokir ke Bangda Kemendagri
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : March 19th, 2021.
|
||||
Last Modified : April 6th, 2022.
|
||||
|
||||
(c) 2021 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
require_once(__DIR__."/../func.sippd.php");
|
||||
|
||||
use siaupheng\fonia4\DB\MySQL;
|
||||
use siaupheng\fonia4\DB\SQL;
|
||||
use siaupheng\fonia4\Web\Param;
|
||||
use siaupheng\fonia4\Web\Table;
|
||||
use siaupheng\fonia4\Web\Form;
|
||||
|
||||
function POK_Tambah_Data($tahun=0, $id_dprd=0) {
|
||||
global $db;
|
||||
$ahasil = [];
|
||||
|
||||
$db->Query("SELECT U.*,K.KamusID,CONCAT(IFNULL(J.N_Jalan,U.Lokasi),' RT. ',U.RT,', ',U.Dusun) Alamat,K.SIPD_ID,L.K_PoDes FROM (SELECT OPDID,KecID,SubID,JalanID,Lokasi,RT,Dusun,Masalah,Sasaran,Kode FROM pok_usulan WHERE Tahun='".$tahun."' AND OAksi=1 AND DPRDID='".$id_dprd."') U LEFT JOIN para_jalan J ON (J.JalanID=U.JalanID) LEFT JOIN para90_kamus K ON (K.Tahun='".$tahun."' AND K.OPDID=U.OPDID AND K.SubID=U.SubID) LEFT JOIN para_lokasi L ON (L.LokasiID=U.KecID) ORDER BY U.Kode");
|
||||
while ($db->Next()) {
|
||||
$ahasil[] = "\$.ajax({url:BASE_URL+'/?m=daerah_pokir&f=savepokir',type:'post',data:'kamususulan=".$db->Row("SIPD_ID")."&rumusanmasalah=".$db->Row("Masalah")."&akarmasalah=".$db->Row("Sasaran")."&bukti=-&asumsi=-&lokasi=".$db->Row("K_PoDes")."&detail_lokasi=".str_replace("'","\'",$db->Row("Alamat"))."&dokumen=&id='});<br>";
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
/************************** RESPON HERE ***************************/
|
||||
|
||||
$db = $db ?? new MySQL();
|
||||
$ajson = array();
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_rpjmd = $_SESSION['__WEB_APP']['RENC_RPJMDID'];
|
||||
$thn_renja = $_SESSION['__WEB_APP']['RENC_THN'];
|
||||
$id_dprd = Param::Get("DPRDID", 0);
|
||||
|
||||
if ( $data == "tabel-dprd" ) {
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT D.*,CONCAT(K.ITEM_USUL) Status FROM (SELECT * FROM para_dprd) D LEFT JOIN (SELECT DPRDID,COUNT(*) ITEM_USUL FROM pok_usulan WHERE Tahun='".$thn_renja."' AND OAksi=1 GROUP BY DPRDID) K ON (D.DPRDID=K.DPRDID)");
|
||||
$obj->add_field("DPRDID", "KEL", "hid");
|
||||
$obj->add_field("K_DPRD", "Kode", "c");
|
||||
$obj->add_field("N_DPRD", "Nama Anggota Dewan", "awr");
|
||||
$obj->add_field("Status", "Status", "c");
|
||||
$obj->set_field_order("K_DPRD", "A");
|
||||
$obj->add_row_btn("send", "+ Usulan", "BangdaPokJS.kode_tambah_pok");
|
||||
$obj->add_row_btn("send0", "= Usulan", "BangdaPokJS.kode_ubah_pok");
|
||||
$obj->set_func_navi("BangdaPokJS.data_query('tabel-dprd')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divDPRD");
|
||||
|
||||
} else if ( $data == "kode-tambah-pok" ) {
|
||||
$ajson = POK_Tambah_Data($thn_renja, $id_dprd);
|
||||
|
||||
} else if ( $data == "kode-ubah-pok" ) {
|
||||
//$ajson = POK_Ubah_Data($thn_renja, $id_dprd);
|
||||
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Push Hasil Pokir ke SIPD Kemendagri</div><div class="card-body">
|
||||
<div class="row mb-1">
|
||||
<div class="col">
|
||||
<div class="input-group">
|
||||
<input class="form-control" id="Nama_DPRD" placeholder="Nama Anggota Dewan" type="text" readonly>
|
||||
<input id="DPRDID" type="hidden" value="0">
|
||||
<button class="btn btn-info btn-ganti" type="button" id="butDPRD"><span><i class="icon cui-swap-horizontal"></span></i>DPRD</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="divDPRD"> </div>
|
||||
</div></div>
|
||||
</div>';
|
||||
exit;
|
||||
}
|
||||
|
||||
send_json($ajson, true);
|
||||
?>
|
||||
@@ -0,0 +1,286 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/php/sim/bangda_renstra.php
|
||||
Desc. : PHP - Simulasi Program Renstra ke Bangda Kemendagri
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : March 30th, 2022.
|
||||
|
||||
(c) 2011 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
require_once(__DIR__."/../func.sippd.php");
|
||||
|
||||
use siaupheng\fonia4\DB\MySQL;
|
||||
use siaupheng\fonia4\DB\SQL;
|
||||
use siaupheng\fonia4\Web\Param;
|
||||
use siaupheng\fonia4\Web\Table;
|
||||
use siaupheng\fonia4\Web\Form;
|
||||
|
||||
function Ren_Tambah_Program($id_rpjmd=0, $id_opd=0) {//oke
|
||||
global $db;
|
||||
$ahasil = [];
|
||||
|
||||
$ainfo = [];
|
||||
$db->Query("SELECT O.K_OPD FROM (SELECT * FROM para90_opd WHERE OPDID='".$id_opd."' LIMIT 1) O");
|
||||
if ($db->Next()) $ainfo = $db->AllRow();
|
||||
|
||||
$db->Query("SELECT P.K_Program FROM (SELECT OPDID,CONCAT('&program[]=',GROUP_CONCAT(CONCAT(LEFT(K_Prog,4),'___',K_Prog) ORDER BY K_Prog SEPARATOR '&program[]=')) K_Program FROM renstra_prog WHERE RPJMDID='".$id_rpjmd."' AND OPDID='".$id_opd."') P");
|
||||
while ($db->Next()) {
|
||||
$ahasil[] = "\$.ajax({url:BASE_URL+'/?m='+nama_paket+'&f=save_program',type:'post',data:'kodeskpddikirim=".$ainfo['K_OPD'].$db->Row("K_Program")."'});<br>";
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function Ren_Tambah_Program_Indi($id_rpjmd=0, $id_opd=0) {//oke
|
||||
global $db;
|
||||
$ahasil = [];
|
||||
|
||||
$ainfo = [];
|
||||
$db->Query("SELECT O.K_OPD FROM (SELECT * FROM para90_opd WHERE OPDID='".$id_opd."' LIMIT 1) O");
|
||||
if ($db->Next()) $ainfo = $db->AllRow();
|
||||
|
||||
$db->Query("SELECT I.*,T.K_Prog,T.K_Bidu,S.K_Satuan FROM (SELECT * FROM renstra_prog_indi WHERE RPJMDID='".$id_rpjmd."' AND OPDID='".$id_opd."') I LEFT JOIN (SELECT ProgID,K_Prog,LEFT(K_Prog,4) K_Bidu FROM renstra_prog WHERE RPJMDID='".$id_rpjmd."' AND OPDID='".$id_opd."') T ON (T.ProgID=I.ProgID) LEFT JOIN para_satuan S ON (S.SatuanID=I.SatuanID) ORDER BY T.K_Prog");
|
||||
while ($db->Next()) {
|
||||
$ahasil[] = "\$.ajax({url:BASE_URL+'/?m='+nama_paket+'&f=tambah_program_indikator',type:'post',data:'kodeprogramindikator=".$db->Row("No_Indi")."&uraiprogram_indikator=".$db->Row("Txt_Indi")."&tbl-master-indikator_length=10&satuan=".$db->Row("K_Satuan")."&status=".strtolower($db->Row("Indi_Status"))."&volume_awal=".$db->Row("Indi_T1")."&volume[2021]=".$db->Row("Indi_T2")."&volume[2022]=".$db->Row("Indi_T3")."&volume[2023]=".$db->Row("Indi_T4")."&volume[2024]=".$db->Row("Indi_T5")."&kodeprogram=".$db->Row("K_Prog")."&kodeskpd=".$ainfo['K_OPD']."&kodebidang=".$db->Row("K_Bidu")."&kodeindikator_master=&kodeindikator_transaksi=&kodeprogramindikator_target='});<br>";
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function Ren_Tambah_Kegiatan($id_rpjmd=0, $id_opd=0, $id_prog=0) {//oke
|
||||
global $db;
|
||||
$ahasil = [];
|
||||
|
||||
$ainfo = [];
|
||||
$db->Query("SELECT O.K_OPD FROM (SELECT * FROM para90_opd WHERE OPDID='".$id_opd."' LIMIT 1) O");
|
||||
if ($db->Next()) $ainfo = $db->AllRow();
|
||||
|
||||
$tsql = ($id_prog == 0) ? "" : " AND ProgID='".$id_prog."'";
|
||||
$db->Query("SELECT K.K_Kegiatan,P.* FROM (SELECT ProgID,CONCAT('&Kegiatan[]=',GROUP_CONCAT(K_Keg ORDER BY K_Keg SEPARATOR '&Kegiatan[]=')) K_Kegiatan FROM renstra_keg WHERE RPJMDID='".$id_rpjmd."' AND OPDID='".$id_opd."'".$tsql." GROUP BY ProgID) K LEFT JOIN (SELECT ProgID,K_Prog,LEFT(K_Prog,4) K_Bidu FROM renstra_prog WHERE RPJMDID='".$id_rpjmd."' AND OPDID='".$id_opd."'".$tsql.") P ON (P.ProgID=K.ProgID) ORDER BY P.K_Prog");
|
||||
while ($db->Next()) {
|
||||
$ahasil[] = "\$.ajax({url:BASE_URL+'/?m='+nama_paket+'&f=save_kegiatan',type:'post',data:'kodeskpddikirim=".$ainfo['K_OPD']."&kodeprogramdikirim=".$db->Row("K_Prog")."&bid=".$db->Row("K_Bidu").$db->Row("K_Kegiatan")."'});<br>";
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function Ren_Tambah_Kegiatan_Indi($id_rpjmd=0, $id_opd=0, $id_prog=0) {//oke
|
||||
global $db;
|
||||
$ahasil = [];
|
||||
|
||||
$ainfo = [];
|
||||
$db->Query("SELECT O.K_OPD FROM (SELECT * FROM para90_opd WHERE OPDID='".$id_opd."' LIMIT 1) O");
|
||||
if ($db->Next()) $ainfo = $db->AllRow();
|
||||
|
||||
$tsql = ($id_prog == 0) ? "" : " AND ProgID='".$id_prog."'";
|
||||
$db->Query("SELECT I.*,T.K_Keg,P.K_Prog,P.K_Bidu,S.K_Satuan FROM (SELECT * FROM renstra_keg_indi WHERE RPJMDID='".$id_rpjmd."' AND OPDID='".$id_opd."'".$tsql.") I LEFT JOIN (SELECT ProgID,KegID,K_Keg FROM renstra_keg WHERE RPJMDID='".$id_rpjmd."' AND OPDID='".$id_opd."'".$tsql.") T ON (T.ProgID=I.ProgID AND T.KegID=I.KegID) LEFT JOIN (SELECT ProgID,K_Prog,LEFT(K_Prog,4) K_Bidu FROM renstra_prog WHERE RPJMDID='".$id_rpjmd."' AND OPDID='".$id_opd."'".$tsql.") P ON (P.ProgID=T.ProgID) LEFT JOIN para_satuan S ON (S.SatuanID=I.SatuanID) ORDER BY T.K_Keg");
|
||||
while ($db->Next()) {
|
||||
$ahasil[] = "\$.ajax({url:BASE_URL+'/?m='+nama_paket+'&f=simpan_indikator',type:'post',data:'kodeskpd=".$ainfo['K_OPD']."&kodeprogram=".$db->Row("K_Prog")."&kodekegiatan=".$db->Row("K_Keg")."&kodebidang=".$db->Row("K_Bidu")."&urai_indikator[0]=".$db->Row("Txt_Indi")."&urai_satuan[0]=".$db->Row("K_Satuan")."&status_indikator[0]=".strtolower($db->Row("Indi_Status"))."&volume_awal=".$db->Row("Indi_T1")."&volume[0][]=".$db->Row("Indi_T2")."&volume[0][]=".$db->Row("Indi_T3")."&volume[0][]=".$db->Row("Indi_T4")."&volume[0][]=".$db->Row("Indi_T5")."&uang_awal=0&uang[0][]=0&uang[0][]=0&uang[0][]=0&uang[0][]=0&tbl-master-indikator_length=10&kodesubkegiatan=&kodeunit=&kodeindikator_master=&kodeindikator_transaksi='});<br>";
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function Ren_Tambah_SubKeg($id_rpjmd=0, $id_opd=0, $id_prog=0, $id_keg=0) {//oke
|
||||
global $db;
|
||||
$ahasil = [];
|
||||
|
||||
$ainfo = [];
|
||||
$db->Query("SELECT O.K_OPD FROM (SELECT * FROM para90_opd WHERE OPDID='".$id_opd."' LIMIT 1) O");
|
||||
if ($db->Next()) $ainfo = $db->AllRow();
|
||||
|
||||
$tsql1 = ($id_prog == 0) ? "" : " AND ProgID='".$id_prog."'";
|
||||
$tsql2 = $tsql1;
|
||||
$tsql2 .= ($id_keg == 0) ? "" : " AND KegID='".$id_keg."'";
|
||||
$db->Query("SELECT P.K_Prog,P.K_Bidu,A.K_Keg,K.K_SubKeg FROM (SELECT ProgID,KegID,CONCAT('&subkegiatan[]=',GROUP_CONCAT(K_Sub ORDER BY K_Sub SEPARATOR '&subkegiatan[]=')) K_SubKeg FROM renstra_sub WHERE RPJMDID='".$id_rpjmd."' AND OPDID='".$id_opd."'".$tsql2." GROUP BY ProgID,KegID) K LEFT JOIN (SELECT ProgID,K_Prog,LEFT(K_Prog,4) K_Bidu FROM renstra_prog WHERE RPJMDID='".$id_rpjmd."' AND OPDID='".$id_opd."'".$tsql1.") P ON (P.ProgID=K.ProgID) LEFT JOIN (SELECT ProgID,KegID,K_Keg FROM renstra_keg WHERE OPDID='".$id_opd."'".$tsql2.") A ON (A.ProgID=K.ProgID AND A.KegID=K.KegID) ORDER BY A.K_Keg");
|
||||
while ($db->Next()) {
|
||||
$ahasil[] = "\$.ajax({url:BASE_URL+'/?m='+nama_paket+'&f=save_subkegiatan',type:'post',data:'kodeskpd=".$ainfo['K_OPD']."&kodeprogram=".$db->Row("K_Prog")."&kodebidang=".$db->Row("K_Bidu")."&kodekegiatan=".$db->Row("K_Keg").$db->Row("K_SubKeg")."'});<br>";
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function Ren_Tambah_SubKeg_Indi($id_rpjmd=0, $id_opd=0, $id_prog=0, $id_keg=0) {//oke
|
||||
global $db;
|
||||
$ahasil = [];
|
||||
|
||||
$ainfo = [];
|
||||
$db->Query("SELECT O.K_OPD,P.K_Prog,P.K_Bidu,K.K_Keg FROM (SELECT * FROM para90_opd WHERE OPDID='".$id_opd."' LIMIT 1) O LEFT JOIN (SELECT OPDID,K_Prog,LEFT(K_Prog,4) K_Bidu FROM renstra_prog WHERE RPJMDID='".$id_rpjmd."' AND OPDID='".$id_opd."' AND ProgID='".$id_prog."' LIMIT 1) P ON (P.OPDID=O.OPDID) LEFT JOIN (SELECT OPDID,K_Keg FROM renstra_keg WHERE OPDID='".$id_opd."' AND ProgID='".$id_prog."' AND KegID='".$id_keg."' LIMIT 1) K ON (K.OPDID=O.OPDID)");
|
||||
if ($db->Next()) $ainfo = $db->AllRow();
|
||||
|
||||
$db->Query("SELECT I.*,T.K_Sub,S.K_Satuan FROM (SELECT * FROM renstra_sub_indi WHERE OPDID='".$id_opd."' AND ProgID='".$id_prog."' AND KegID='".$id_keg."' AND SIPD_RENSTRA>0) I LEFT JOIN (SELECT * FROM renstra_sub WHERE OPDID='".$id_opd."' AND ProgID='".$id_prog."' AND KegID='".$id_keg."') T ON (T.SubID=I.SubID) LEFT JOIN para_satuan S ON (S.SatuanID=I.SatuanID)");
|
||||
while ($db->Next()) {
|
||||
$ahasil[] = "\$.ajax({url:BASE_URL+'/?m='+nama_paket+'&f=ubah_subkegiatan_indikator',type:'post',data:'kodeskpd=".$ainfo['K_OPD']."&kodeprogram=".$ainfo['K_Prog']."&kodekegiatan=".$ainfo['K_Keg']."&kodesubkegiatan=".$db->Row("K_Sub")."&kodebidang=".$ainfo['K_Bidu']."&subkeg=".$db->Row("K_Sub")."&urai_indikator=".$db->Row("Txt_Indi")."&lokasi=61.02&urai_satuan[0]=".$db->Row("K_Satuan")."&status_indikator=".strtolower($db->Row("Indi_Status"))."&volume_awal=".$db->Row("Indi_T1")."&uang_awal=".rupiah2($db->Row("Pagu_T1"))."&volume[]=".$db->Row("Indi_T2")."&uang[]=".rupiah2($db->Row("Pagu_T2"))."&volume[]=".$db->Row("Indi_T3")."&uang[]=".rupiah2($db->Row("Pagu_T3"))."&volume[]=".$db->Row("Indi_T4")."&uang[]=".rupiah2($db->Row("Pagu_T4"))."&volume[]=".$db->Row("Indi_T5")."&uang[]=".rupiah2($db->Row("Pagu_T5"))."&kodesubkegiatan_indikator=".$db->Row("SIPD_RENSTRA")."&kodesubkegiatan_indikator_target=&kodeindikator_master=&kodeunit='});<br>";
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
/************************** RESPON HERE ***************************/
|
||||
|
||||
$db = $db ?? new MySQL();
|
||||
$ajson = [];
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_rpjmd = $_SESSION['__WEB_APP']['RENC_RPJMDID'];
|
||||
$id_opd = Param::Get("OPDID", 0);
|
||||
$id_prog = Param::Get("ProgID", 0);
|
||||
$id_keg = Param::Get("KegID", 0);
|
||||
|
||||
if ( in_array($data, ["tabel-opd","tabel-prog","tabel-keg","tabel-sub"]) ) {//oke
|
||||
$qsql = "RPJMDID='".$id_rpjmd."'";
|
||||
$msql = "Aktif=1";
|
||||
|
||||
if ( $data == "tabel-prog" ) {
|
||||
$qsql .= " AND OPDID='".$id_opd."'";
|
||||
} else if ( $data == "tabel-keg" ) {
|
||||
$qsql .= " AND OPDID='".$id_opd."' AND ProgID='".$id_prog."'";
|
||||
} else if ( $data == "tabel-sub" ) {
|
||||
$qsql .= " AND OPDID='".$id_opd."' AND KegID='".$id_keg."'";
|
||||
}
|
||||
}
|
||||
|
||||
if ( $data == "tabel-opd" ) {//oke
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT M.OPDID OPDID2,M.K_OPD,M.N_OPD,IFNULL(B.ITEM_PROG,0) ITEM_PROG FROM vi_para90_opd M LEFT JOIN (SELECT OPDID,COUNT(*) ITEM_PROG FROM renstra_prog WHERE ".$qsql." GROUP BY OPDID) B ON (B.OPDID=M.OPDID) WHERE ".$msql);
|
||||
$obj->add_field("OPDID2", "OPD", "hid");
|
||||
$obj->add_field("K_OPD", "Kode", "c");
|
||||
$obj->add_field("N_OPD", "Nama Perangkat Daerah", "awr");
|
||||
$obj->add_field("ITEM_PROG", "Prog", "c");
|
||||
$obj->set_field_order("K_OPD", "A");
|
||||
$obj->add_row_btn("send", "+ Prog", "BangdaRenstraJS.kode_tambah_prog");
|
||||
$obj->add_row_btn("document", "+ Indi Prog", "BangdaRenstraJS.kode_tambah_prog_indi");
|
||||
$obj->add_row_btn("select", "Program", "BangdaRenstraJS.opd_select");
|
||||
$obj->set_func_navi("BangdaRenstraJS.data_query('tabel-opd')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divOPD");
|
||||
|
||||
} else if ( $data == "tabel-prog" ) {//oke
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT P.*,A.N_Prog,A.Nama_Prog,IFNULL(B.ITEM_KEG,0) ITEM_KEG FROM (SELECT * FROM renstra_prog WHERE ".$qsql.") P LEFT JOIN vi_para90_prog A ON (P.ProgID=A.ProgID) LEFT JOIN (SELECT ProgID,COUNT(*) ITEM_KEG FROM renstra_keg WHERE ".$qsql." GROUP BY ProgID) B ON (B.ProgID=P.ProgID)");
|
||||
$obj->add_field("ProgID", "ID", "hid");
|
||||
$obj->add_field("Nama_Prog", "Nama_Program", "hid");
|
||||
$obj->add_field("K_Prog", "Kode", "c");
|
||||
$obj->add_field("N_Prog", "Nama Program", "awr");
|
||||
$obj->add_field("ITEM_KEG", "Keg", "c");
|
||||
$obj->set_field_order("K_Prog", "A");
|
||||
$obj->add_row_btn("send", "+ Keg", "BangdaRenstraJS.kode_tambah_keg");
|
||||
$obj->add_row_btn("document", "+ Indi Keg", "BangdaRenstraJS.kode_tambah_keg_indi");
|
||||
$obj->add_row_btn("select", "Kegiatan", "BangdaRenstraJS.prog_select");
|
||||
$obj->set_func_navi("BangdaRenstraJS.data_query('tabel-prog')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divPROG");
|
||||
|
||||
} else if ( $data == "tabel-keg" ) {//oke
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT P.*,A.N_Keg,A.Nama_Keg,IFNULL(K.ITEM_SUB,0) ITEM_SUB FROM (SELECT * FROM renstra_keg WHERE ".$qsql.") P LEFT JOIN vi_para90_keg A ON (P.KegID=A.KegID) LEFT JOIN (SELECT KegID,COUNT(*) ITEM_SUB FROM renstra_sub WHERE ".$qsql." GROUP BY KegID) K ON (K.KegID=P.KegID)");
|
||||
$obj->add_field("KegID", "ID", "hid");
|
||||
$obj->add_field("Nama_Keg", "Nama_Keg", "hid");
|
||||
$obj->add_field("K_Keg", "Kode", "c");
|
||||
$obj->add_field("N_Keg", "Nama Kegiatan", "awr");
|
||||
$obj->add_field("ITEM_SUB", "Sub", "c");
|
||||
$obj->set_field_order("K_Keg", "A");
|
||||
$obj->add_row_btn("send", "+ Sub", "BangdaRenstraJS.kode_tambah_sub");
|
||||
$obj->add_row_btn("point", "= Indi Map", "BangdaRenstraJS.html_show");
|
||||
$obj->add_row_btn("select", "= Indi Sub", "BangdaRenstraJS.kode_tambah_sub_indi");
|
||||
$obj->set_func_navi("BangdaRenstraJS.data_query('tabel-keg')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divKEG");
|
||||
|
||||
} else if ( $data == "kode-tambah-prog" ) {//oke
|
||||
$ajson = Ren_Tambah_Program($id_rpjmd, $id_opd);
|
||||
|
||||
} else if ( $data == "kode-tambah-prog-indi" ) {//oke
|
||||
$ajson = Ren_Tambah_Program_Indi($id_rpjmd, $id_opd);
|
||||
|
||||
} else if ( $data == "kode-tambah-keg" ) {//oke
|
||||
$ajson = Ren_Tambah_Kegiatan($id_rpjmd, $id_opd, $id_prog);
|
||||
|
||||
} else if ( $data == "kode-tambah-keg-indi" ) {//oke
|
||||
$ajson = Ren_Tambah_Kegiatan_Indi($id_rpjmd, $id_opd, $id_prog);
|
||||
|
||||
} else if ( $data == "kode-tambah-sub" ) {//oke
|
||||
$ajson = Ren_Tambah_SubKeg($id_rpjmd, $id_opd, $id_prog, $id_keg);
|
||||
|
||||
} else if ( $data == "kode-tambah-sub-indi" ) {//oke
|
||||
$ajson = Ren_Tambah_SubKeg_Indi($id_rpjmd, $id_opd, $id_prog, $id_keg);
|
||||
|
||||
} else if ( $data == "simpan-html" ) {
|
||||
$ajson['result'] = 0;
|
||||
|
||||
$thtml = stripslashes(Param::Get("Kode_HTML", ""));
|
||||
$dom = new DOMDocument();
|
||||
@$dom->loadHTML($thtml);
|
||||
$db->Query("UPDATE renstra_sub_indi SET SIPD_RENSTRA=0 WHERE RPJMDID='".$id_rpjmd."' AND OPDID='".$id_opd."' AND KegID='".$id_keg."'");
|
||||
|
||||
$atr = $dom->getElementsByTagName("tr");
|
||||
foreach ($atr as $tr) {
|
||||
if ($tr->hasAttributes()) {
|
||||
if (false === strpos($tr->attributes['id']->value, "record_")) continue;
|
||||
$_id = 0; $_ksub = "";
|
||||
foreach ($tr->attributes as $a) {
|
||||
if ($a->nodeName == "data-tt-id") $_id = intval($a->nodeValue);
|
||||
if ($a->nodeName == "data-tt-parent-id") $_ksub = $a->nodeValue;
|
||||
}
|
||||
if ($_id > 0 && $_ksub <> "") {
|
||||
$_oke = false; $asub = [];
|
||||
$db->Query("SELECT * FROM renstra_sub WHERE RPJMDID='".$id_rpjmd."' AND OPDID='".$id_opd."' AND KegID='".$id_keg."' AND K_Sub='".$_ksub."'");
|
||||
if ($db->Next()) {
|
||||
$asub = $db->AllRow(); $_oke = true;
|
||||
}
|
||||
if ($_oke) {
|
||||
$db->Query("UPDATE renstra_sub_indi SET SIPD_RENSTRA='".$_id."' WHERE RPJMDID='".$id_rpjmd."' AND OPDID='".$id_opd."' AND ProgID='".$asub['ProgID']."' AND KegID='".$asub['KegID']."' AND SubID='".$asub['SubID']."'");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
$ajson['result'] = 1;
|
||||
|
||||
} else if ( $data == "default") {//oke
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style container-fluid"><div class="row"><div class="col-md-10">Push Program Renstra ke SIPD Bangda Kemendagri</div><div class="col-md-2">
|
||||
<div class="dropdown">
|
||||
<button class="btn btn-secondary shadow-none dropdown-toggle" type="button" id="dropdownMenuButton" data-coreui-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Opsi / OPD</button>
|
||||
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
|
||||
<a class="dropdown-item" href="#" id="opsiProg">+ Program</a>
|
||||
<a class="dropdown-item" href="#" id="opsiProgIndi">+ Indi Program</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" id="opsiKeg">+ Kegiatan</a>
|
||||
<a class="dropdown-item" href="#" id="opsiKegIndi">+ Indi Kegiatan</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" id="opsiSub">+ Sub Kegiatan</a>
|
||||
</div>
|
||||
</div>
|
||||
</div></div></div>
|
||||
<div class="card-body">
|
||||
<div class="form-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="c-icon cui-swap-horizontal"></span></i>OPD</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row mb-1">
|
||||
<div class="col">
|
||||
<div class="input-group">
|
||||
<input class="form-control" id="Nama_PROG" placeholder="Nama Program Renstra" type="text" readonly>
|
||||
<input id="ProgID" type="hidden" value="0">
|
||||
<input id="KegID" type="hidden" value="0">
|
||||
<button class="btn btn-info btn-ganti" type="button" id="butPROG"><span><i class="c-icon cui-swap-horizontal"></span></i>Program</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="divOPD"> </div>
|
||||
<div id="divPROG"> </div>
|
||||
<div id="divKEG"> </div>
|
||||
</div></div>
|
||||
</div>';
|
||||
exit;
|
||||
}
|
||||
|
||||
send_json($ajson, true);
|
||||
?>
|
||||
@@ -0,0 +1,174 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/php/sim/musrenbang.php
|
||||
Desc. : PHP - Simulasi Push Musrenbang ke SIPD Kemendagri
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : March 19th, 2021.
|
||||
Last Modified : April 6th, 2022.
|
||||
|
||||
(c) 2021 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
require_once(__DIR__."/../func.sippd.php");
|
||||
|
||||
use siaupheng\fonia4\DB\MySQL;
|
||||
use siaupheng\fonia4\DB\SQL;
|
||||
use siaupheng\fonia4\Web\Param;
|
||||
use siaupheng\fonia4\Web\Table;
|
||||
use siaupheng\fonia4\Web\Form;
|
||||
|
||||
function MUS_Tambah_Data($tahun=0, $id_kec=0, $id_kel=0) {
|
||||
global $db;
|
||||
$ahasil = [];
|
||||
|
||||
$tsql = ($id_kec==0) ? "" : " AND KecID='".$id_kec."'";
|
||||
$tsql .= ($id_kel==0) ? "" : " AND KelID='".$id_kel."'";
|
||||
//$db->Query("SELECT U.*,K.KamusID,D.SIPD_DESA,D.SIPD_KEC,CONCAT(IFNULL(J.N_Jalan,U.Lokasi),' RT. ',U.RT,', ',U.Dusun) Alamat FROM (SELECT OPDID,SubID,KelID,JalanID,Lokasi,RT,Dusun,Masalah,Kode FROM mus_usulan WHERE Tahun='".$tahun."' AND (Prio NOT IN (0) OR OAksi=1)".$tsql.") U LEFT JOIN para_jalan J ON (J.JalanID=U.JalanID) LEFT JOIN vi_para90_submap M ON (M.SubID=U.SubID) LEFT JOIN (SELECT * FROM mus_kamus WHERE Tahun='".$tahun."') K ON (K.OPDID=U.OPDID AND K.ProgID=M.ProgID) LEFT JOIN vi_para_desa D ON (D.DesaID=U.KelID) ORDER BY U.Kode");
|
||||
$db->Query("SELECT U.Kode,U.Masalah,M.ProgID,M.Lama_ProgID,O.SIPD_Unit,O.N_OPD,K.KamusID,K.Uraian N_Kamus,K.Bidu N_Bidu,D.SIPD_DESA,D.SIPD_KEC,CONCAT(IFNULL(J.N_Jalan,U.Lokasi),' RT. ',U.RT,', ',U.Dusun) Alamat FROM (SELECT OPDID,SubID,KelID,JalanID,Lokasi,RT,Dusun,Masalah,Kode FROM mus_usulan WHERE Tahun='".$tahun."'".$tsql.") U LEFT JOIN para_jalan J ON (J.JalanID=U.JalanID) LEFT JOIN (SELECT * FROM para90_submap WHERE Tahun='".$tahun."') M ON (M.SubID=U.SubID) LEFT JOIN (SELECT * FROM mus_kamus WHERE Tahun='".$tahun."') K ON (K.OPDID=U.OPDID AND K.ProgID=M.ProgID) LEFT JOIN vi_para_desa D ON (D.DesaID=U.KelID) LEFT JOIN para90_opd O ON (O.OPDID=U.OPDID) ORDER BY U.Kode");
|
||||
while ($db->Next()) {
|
||||
$ahasil[] = [
|
||||
'kode' => $db->Row("Kode"),
|
||||
'id_kamus' => $db->Row("KamusID"),
|
||||
'nama_kamus' => $db->Row("N_Kamus"),
|
||||
'id_program' => $db->Row("Lama_ProgID"),
|
||||
'nama_bidang_urusan' => $db->Row("N_Bidu"),
|
||||
'id_skpd' => $db->Row("SIPD_Unit"),
|
||||
'nama_skpd' => $db->Row("N_OPD"),
|
||||
'alamat_teks' => substr(str_replace("'","\'",$db->Row("Alamat")), 0, 255),
|
||||
'id_kecamatan' => $db->Row("SIPD_KEC"),
|
||||
'id_kelurahan' => $db->Row("SIPD_DESA"),
|
||||
'masalah' => substr($db->Row("Masalah"), 0, 255)
|
||||
];
|
||||
}
|
||||
return [json_encode($ahasil)];
|
||||
}
|
||||
|
||||
$db = $db ?? new MySQL();
|
||||
$ajson = array();
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_rpjmd = $_SESSION['__WEB_APP']['RENC_RPJMDID'];
|
||||
$thn_renja = $_SESSION['__WEB_APP']['RENC_THN'];
|
||||
$id_kec = Param::Get("KecID", 0);
|
||||
$id_kel = Param::Get("KelID", 0);
|
||||
|
||||
if ( $data == "tabel-kec" || $data == "tabel-kel" ) {
|
||||
$qsql = "Tahun='".$thn_renja."'";
|
||||
if ( $data == "tabel-kel" ) {
|
||||
//$qsql .= " AND KecID='".$id_kec."' AND (Prio NOT IN (0) OR OAksi=1)";
|
||||
$qsql .= " AND KecID='".$id_kec."'";
|
||||
}
|
||||
}
|
||||
|
||||
if ( $data == "tabel-kec" ) {
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT * FROM para_lokasi WHERE Level=1");
|
||||
$obj->add_field("LokasiID", "KEC", "hid");
|
||||
$obj->add_field("N_Lokasi", "N_KEC", "hid");
|
||||
$obj->add_field("K_Lokasi", "Kode", "c");
|
||||
$obj->add_field("N_Lokasi", "Nama Kecamatan", "awr");
|
||||
$obj->set_field_order("K_Lokasi", "A");
|
||||
$obj->add_row_btn("send", "+ Usulan", "MUSJS.kode_tambah_mus_k");
|
||||
$obj->add_row_btn("send0", "= Usulan", "MUSJS.kode_ubah_mus_k");
|
||||
$obj->add_row_btn("select", "Desa", "MUSJS.kec_select");
|
||||
$obj->set_func_navi("MUSJS.data_query('detail-kec')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divKEC");
|
||||
|
||||
} else if ( $data == "tabel-kel" ) {
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT *,CONCAT(K.ITEM_USUL) Status FROM (SELECT * FROM para_lokasi WHERE Level=2 AND IndukID='".$id_kec."') D LEFT JOIN (SELECT KelID,COUNT(*) ITEM_USUL FROM mus_usulan WHERE ".$qsql." GROUP BY KelID) K ON (D.LokasiID=K.KelID)");
|
||||
$obj->add_field("LokasiID", "KEL", "hid");
|
||||
$obj->add_field("N_Lokasi", "N_KEL", "hid");
|
||||
$obj->add_field("K_Lokasi", "Kode", "c");
|
||||
$obj->add_field("N_Lokasi", "Nama Kelurahan / Desa", "awr");
|
||||
$obj->add_field("Status", "Status", "c");
|
||||
$obj->set_field_order("K_Lokasi", "A");
|
||||
$obj->add_row_btn("send", "+ Usulan", "MUSJS.kode_tambah_mus");
|
||||
$obj->add_row_btn("send0", "= Usulan", "MUSJS.kode_ubah_mus");
|
||||
$obj->set_func_navi("MUSJS.data_query('tabel-kel')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divKEL");
|
||||
|
||||
} else if ( $data == "kode-tambah-mus" ) {
|
||||
$ajson = MUS_Tambah_Data($thn_renja, $id_kec, $id_kel);
|
||||
|
||||
} else if ( $data == "kode-ubah-mus" ) {
|
||||
//$ajson = MUS_Ubah_Data($thn_renja, $id_kec, $id_kel);
|
||||
|
||||
} else if ( $data == "upload-json" || $data == "simpan-json" ) {
|
||||
$ajson['result'] = 0;
|
||||
|
||||
if ($data == "upload-json") {
|
||||
$adata = json_decode(file_get_contents($_FILES['file']['tmp_name']), true);
|
||||
} else {
|
||||
$adata = json_decode(stripslashes(Param::Get("Kode_JSON", "{}")), true);
|
||||
}
|
||||
/*$db->Query("TRUNCATE sipd_rkpd_sub");
|
||||
foreach ($adata['data'] as $arec) {
|
||||
$db->Query("INSERT INTO sipd_rkpd_sub (ID_SUB,ID_UNIT,SIPD_BL,SIPD_SBL) VALUES ('".$arec['id_sub_giat']."','".$arec['id_unit']."','".$arec['kode_bl']."','".$arec['kode_sbl']."')");
|
||||
}
|
||||
|
||||
$db->Query("UPDATE sipd_rkpd_sub A,para90_sub B SET A.SubID=B.SubID,A.KegID=B.KegID,A.ProgID=B.ProgID WHERE A.ID_SUB=B.SubID");
|
||||
$db->Query("UPDATE sipd_rkpd_sub A,para90_sipd B SET A.SubID=B.Lama_SubID,A.KegID=B.Lama_KegID,A.ProgID=B.Lama_ProgID WHERE A.ID_SUB=B.SubID AND A.SubID=0");
|
||||
$db->Query("UPDATE sipd_rkpd_sub A,para90_opd B SET A.OPDID=B.OPDID WHERE A.ID_UNIT=B.SIPD_UNIT AND A.ID_UNIT>0");
|
||||
|
||||
//$db->Query("UPDATE renja90_awal_sub SET SIPD_BL='',SIPD_SBL='' WHERE Tahun='".$thn_renja."'");
|
||||
$db->Query("UPDATE renja90_awal_sub A,sipd_rkpd_sub B SET A.SIPD_BL=B.SIPD_BL,A.SIPD_SBL=B.SIPD_SBL WHERE A.Tahun='".$thn_renja."' AND A.SubID=B.SubID AND A.KegID=B.KegID AND A.ProgID=B.ProgID AND A.OPDID=B.OPDID");*/
|
||||
|
||||
$ajson['result'] = 1;
|
||||
|
||||
} else if ( $data == "detail-sipd" ) {
|
||||
$form = new Form($db);
|
||||
$kode_token = $form->textbox("_", "Kode_Token", $_SESSION['__WEB_USER']['SIPD_TOKEN'], true, true, "text");
|
||||
$kode_acak = $form->textbox("_", "Kode_Acak", $_SESSION['__WEB_USER']['SIPD_ACAK'], true, true, "text");
|
||||
echo '
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-3 col-form-label" for="Kode_Token">Kode Token</label>
|
||||
<div class="col">'.$kode_token.'</div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-3 col-form-label" for="Kode_Acak">Nama Acak</label>
|
||||
<div class="col">'.$kode_acak.'</div>
|
||||
</div>';
|
||||
exit;
|
||||
} else if ( $data == "simpan-sipd" ) {
|
||||
$_SESSION['__WEB_USER']['SIPD_TOKEN'] = Param::Get("Kode_Token", "KODE_TOKEN");
|
||||
$_SESSION['__WEB_USER']['SIPD_ACAK'] = Param::Get("Kode_Acak", "KODE_ACAK");
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Push Hasil Musrenbang ke SIPD Kemendagri</div><div class="card-body">
|
||||
<div class="row mb-1">
|
||||
<div class="col-md-9 col-sm-12">
|
||||
<div class="input-group">
|
||||
<input class="form-control" id="Nama_KEC" placeholder="Nama Kecamatan" type="text" readonly>
|
||||
<input id="KecID" type="hidden" value="0">
|
||||
<input id="KelID" type="hidden" value="0">
|
||||
<button class="btn btn-info btn-ganti" type="button" id="butKEC"><span><i class="icon cui-swap-horizontal"></span></i>Kecamatan</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-3 col-sm-12 mt-2 mt-sm-0 d-flex justify-content-between">
|
||||
<div class="dropdown">
|
||||
<button class="btn btn-secondary shadow-none dropdown-toggle" type="button" id="dropdownMenuButton" data-coreui-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Opsi Semua Data</button>
|
||||
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
|
||||
<a class="dropdown-item" href="#" id="opsiUpload">Upload JSON</a>
|
||||
</div>
|
||||
</div>
|
||||
<button class="btn btn-secondary shadow-none" type="button" id="butSIPD">Setup SIPD</button>
|
||||
</div>
|
||||
</div>
|
||||
<div id="divKEC"> </div>
|
||||
<div id="divKEL"> </div>
|
||||
</div></div>
|
||||
</div>';
|
||||
exit;
|
||||
}
|
||||
|
||||
send_json($ajson, true);
|
||||
?>
|
||||
@@ -0,0 +1,152 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/php/sim/pokir.php
|
||||
Desc. : PHP - Simulasi Push Pokir ke SIPD Kemendagri
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : March 19th, 2021.
|
||||
Last Modified : April 6th, 2022.
|
||||
|
||||
(c) 2021 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
require_once(__DIR__."/../func.sippd.php");
|
||||
|
||||
use siaupheng\fonia4\DB\MySQL;
|
||||
use siaupheng\fonia4\DB\SQL;
|
||||
use siaupheng\fonia4\Web\Param;
|
||||
use siaupheng\fonia4\Web\Table;
|
||||
use siaupheng\fonia4\Web\Form;
|
||||
|
||||
function POK_Tambah_Data($tahun=0, $id_dprd=0) {
|
||||
global $db;
|
||||
$ahasil = [];
|
||||
|
||||
//$tsql = " AND Prio>0";
|
||||
$tsql .= ($id_dprd==0) ? "" : " AND DPRDID='".$id_dprd."'";
|
||||
//$db->Query("SELECT U.*,K.KamusID,D.SIPD_DESA,D.SIPD_KEC,CONCAT(IFNULL(J.N_Jalan,U.Lokasi),' RT. ',U.RT,', ',U.Dusun) Alamat,S.N_Satuan FROM (SELECT OPDID,SubID,KelID,JalanID,Lokasi,RT,Dusun,Masalah,Volume,SatuanID,Kode FROM pok_usulan WHERE Tahun='".$tahun."' AND Prio>0".$tsql.") U LEFT JOIN para_jalan J ON (J.JalanID=U.JalanID) LEFT JOIN vi_para90_submap M ON (M.SubID=U.SubID) LEFT JOIN pok_kamus K ON (K.OPDID=U.OPDID AND K.ProgID=M.ProgID) LEFT JOIN vi_para_desa D ON (D.DesaID=U.KelID) LEFT JOIN para_satuan S ON (U.SatuanID=S.SatuanID) ORDER BY U.Kode");
|
||||
$db->Query("SELECT U.Kode,U.Masalah,M.ProgID,O.SIPD_Unit,O.N_OPD,K.KamusID,K.Uraian N_Kamus,K.Bidu N_Bidu,D.SIPD_DESA,D.SIPD_KEC,CONCAT(IFNULL(J.N_Jalan,U.Lokasi),' RT. ',U.RT,', ',U.Dusun) Alamat,U.Volume,S.N_Satuan,K.IsuID FROM (SELECT OPDID,SubID,KelID,JalanID,Lokasi,RT,Dusun,Masalah,Volume,SatuanID,Kode FROM pok_usulan WHERE Tahun='".$tahun."'".$tsql.") U LEFT JOIN para_jalan J ON (J.JalanID=U.JalanID) LEFT JOIN (SELECT * FROM para90_submap WHERE Tahun='".$tahun."') M ON (M.SubID=U.SubID) LEFT JOIN (SELECT * FROM pok_kamus WHERE Tahun='".$tahun."') K ON (K.OPDID=U.OPDID AND K.ProgID=M.ProgID) LEFT JOIN vi_para_desa D ON (D.DesaID=U.KelID) LEFT JOIN para90_opd O ON (O.OPDID=U.OPDID) LEFT JOIN para_satuan S ON (U.SatuanID=S.SatuanID) ORDER BY U.Kode");
|
||||
while ($db->Next()) {
|
||||
//$ahasil[] = "\$.ajax({url:lru3,type:'post',headers:{'X-CSRF-Token':'".$_SESSION['__WEB_USER']['SIPD_ACAK']."'},data:{'idkamus':'".$db->Row("KamusID")."','masalahteks':'".$db->Row("Masalah")."','volume':'".$db->Row("Volume")."','satuan':'".$db->Row("N_Satuan")."','alamat_teks':'".str_replace("'","\'",$db->Row("Alamat"))."','kab_kota':'553','kecamatan':'".$db->Row("SIPD_KEC")."','kelurahan':'".$db->Row("SIPD_DESA")."'},success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
$ahasil[] = [
|
||||
'kode' => $db->Row("Kode"),
|
||||
'id_kamus' => $db->Row("KamusID"),
|
||||
'nama_kamus' => $db->Row("N_Kamus"),
|
||||
'nama_bidang_urusan' => $db->Row("N_Bidu"),
|
||||
'id_program' => $db->Row("IsuID"),//update program_id
|
||||
'id_skpd' => $db->Row("SIPD_Unit"),
|
||||
'nama_skpd' => $db->Row("N_OPD"),
|
||||
'alamat_teks' => substr(str_replace("'","\'",$db->Row("Alamat")), 0, 255),
|
||||
'volume' => $db->Row("Volume"),
|
||||
'satuan' => $db->Row("N_Satuan"),
|
||||
'id_kecamatan' => $db->Row("SIPD_KEC"),
|
||||
'id_kelurahan' => $db->Row("SIPD_DESA"),
|
||||
'masalah' => substr($db->Row("Masalah"), 0, 255)
|
||||
];
|
||||
}
|
||||
return [json_encode($ahasil)];
|
||||
}
|
||||
|
||||
/************************** RESPON HERE ***************************/
|
||||
|
||||
$db = $db ?? new MySQL();
|
||||
$ajson = array();
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_rpjmd = $_SESSION['__WEB_APP']['RENC_RPJMDID'];
|
||||
$thn_renja = $_SESSION['__WEB_APP']['RENC_THN'];
|
||||
$id_dprd = Param::Get("DPRDID", 0);
|
||||
|
||||
if ( $data == "tabel-dprd" ) {
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT D.*,CONCAT(K.ITEM_USUL) Status FROM (SELECT * FROM para_dprd) D LEFT JOIN (SELECT DPRDID,COUNT(*) ITEM_USUL FROM pok_usulan WHERE Tahun='".$thn_renja."' GROUP BY DPRDID) K ON (D.DPRDID=K.DPRDID) WHERE K.ITEM_USUL>0");// AND Prio>0
|
||||
$obj->add_field("DPRDID", "KEL", "hid");
|
||||
$obj->add_field("K_DPRD", "Kode", "c");
|
||||
$obj->add_field("N_DPRD", "Nama Anggota Dewan", "awr");
|
||||
$obj->add_field("Status", "Status", "c");
|
||||
$obj->set_field_order("K_DPRD", "A");
|
||||
$obj->add_row_btn("send", "+ Usulan", "POKJS.kode_tambah_pok");
|
||||
$obj->add_row_btn("send0", "= Usulan", "POKJS.kode_ubah_pok");
|
||||
$obj->set_func_navi("POKJS.data_query('tabel-dprd')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divDPRD");
|
||||
|
||||
} else if ( $data == "kode-tambah-pok" ) {
|
||||
$ajson = POK_Tambah_Data($thn_renja, $id_dprd);
|
||||
|
||||
} else if ( $data == "kode-ubah-pok" ) {
|
||||
//$ajson = POK_Ubah_Data($thn_renja, $id_dprd);
|
||||
|
||||
} else if ( $data == "upload-json" || $data == "simpan-json" ) {
|
||||
$ajson['result'] = 0;
|
||||
|
||||
if ($data == "upload-json") {
|
||||
$adata = json_decode(file_get_contents($_FILES['file']['tmp_name']), true);
|
||||
} else {
|
||||
$adata = json_decode(stripslashes(Param::Get("Kode_JSON", "{}")), true);
|
||||
}
|
||||
/*$db->Query("TRUNCATE sipd_rkpd_sub");
|
||||
foreach ($adata['data'] as $arec) {
|
||||
$db->Query("INSERT INTO sipd_rkpd_sub (ID_SUB,ID_UNIT,SIPD_BL,SIPD_SBL) VALUES ('".$arec['id_sub_giat']."','".$arec['id_unit']."','".$arec['kode_bl']."','".$arec['kode_sbl']."')");
|
||||
}
|
||||
|
||||
$db->Query("UPDATE sipd_rkpd_sub A,para90_sub B SET A.SubID=B.SubID,A.KegID=B.KegID,A.ProgID=B.ProgID WHERE A.ID_SUB=B.SubID");
|
||||
$db->Query("UPDATE sipd_rkpd_sub A,para90_sipd B SET A.SubID=B.Lama_SubID,A.KegID=B.Lama_KegID,A.ProgID=B.Lama_ProgID WHERE A.ID_SUB=B.SubID AND A.SubID=0");
|
||||
$db->Query("UPDATE sipd_rkpd_sub A,para90_opd B SET A.OPDID=B.OPDID WHERE A.ID_UNIT=B.SIPD_UNIT AND A.ID_UNIT>0");
|
||||
|
||||
//$db->Query("UPDATE renja90_awal_sub SET SIPD_BL='',SIPD_SBL='' WHERE Tahun='".$thn_renja."'");
|
||||
$db->Query("UPDATE renja90_awal_sub A,sipd_rkpd_sub B SET A.SIPD_BL=B.SIPD_BL,A.SIPD_SBL=B.SIPD_SBL WHERE A.Tahun='".$thn_renja."' AND A.SubID=B.SubID AND A.KegID=B.KegID AND A.ProgID=B.ProgID AND A.OPDID=B.OPDID");*/
|
||||
|
||||
$ajson['result'] = 1;
|
||||
|
||||
} else if ( $data == "detail-sipd" ) {
|
||||
$form = new Form($db);
|
||||
$kode_token = $form->textbox("_", "Kode_Token", $_SESSION['__WEB_USER']['SIPD_TOKEN'], true, true, "text");
|
||||
$kode_acak = $form->textbox("_", "Kode_Acak", $_SESSION['__WEB_USER']['SIPD_ACAK'], true, true, "text");
|
||||
echo '
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-3 col-form-label" for="Kode_Token">Kode Token</label>
|
||||
<div class="col">'.$kode_token.'</div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-3 col-form-label" for="Kode_Acak">Nama Acak</label>
|
||||
<div class="col">'.$kode_acak.'</div>
|
||||
</div>';
|
||||
exit;
|
||||
} else if ( $data == "simpan-sipd" ) {
|
||||
$_SESSION['__WEB_USER']['SIPD_TOKEN'] = Param::Get("Kode_Token", "KODE_TOKEN");
|
||||
$_SESSION['__WEB_USER']['SIPD_ACAK'] = Param::Get("Kode_Acak", "KODE_ACAK");
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Push Hasil Pokir ke SIPD Kemendagri</div><div class="card-body">
|
||||
<div class="row mb-1">
|
||||
<div class="col-md-9 col-sm-12">
|
||||
<div class="input-group">
|
||||
<input class="form-control" id="Nama_DPRD" placeholder="Nama Anggota Dewan" type="text" readonly>
|
||||
<input id="DPRDID" type="hidden" value="0">
|
||||
<button class="btn btn-info btn-ganti" type="button" id="butDPRD"><span><i class="icon cui-swap-horizontal"></span></i>DPRD</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-3 col-sm-12 mt-2 mt-sm-0 d-flex justify-content-between">
|
||||
<div class="dropdown">
|
||||
<button class="btn btn-secondary shadow-none dropdown-toggle" type="button" id="dropdownMenuButton" data-coreui-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Opsi Semua Data</button>
|
||||
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
|
||||
<a class="dropdown-item" href="#" id="opsiUpload">Upload JSON</a>
|
||||
</div>
|
||||
</div>
|
||||
<button class="btn btn-secondary shadow-none" type="button" id="butSIPD">Setup SIPD</button>
|
||||
</div>
|
||||
</div>
|
||||
<div id="divDPRD"> </div>
|
||||
</div></div>
|
||||
</div>';
|
||||
exit;
|
||||
}
|
||||
|
||||
send_json($ajson, true);
|
||||
?>
|
||||
@@ -0,0 +1,188 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/php/sim/renstra_kegiatan.php
|
||||
Desc. : PHP - Simulasi Kegiatan Renstra ke SIPD Kemendagri
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : March 31st, 2022.
|
||||
|
||||
(c) 2011 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
require_once(__DIR__."/../func.sippd.php");
|
||||
|
||||
use siaupheng\fonia4\DB\MySQL;
|
||||
use siaupheng\fonia4\DB\SQL;
|
||||
use siaupheng\fonia4\Web\Param;
|
||||
use siaupheng\fonia4\Web\Table;
|
||||
use siaupheng\fonia4\Web\Form;
|
||||
|
||||
function Ren_Tambah_Kegiatan($id_rpjmd=0, $id_opd=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
$tsql = ($id_opd == 0) ? "" : " AND OPDID='".$id_opd."'";
|
||||
$db->Query("SELECT AK.*,RS1.SIPD_UNIK SIPD_RPJMD_SASARAN,AP.SIPD_RENSTRA SIPD_RENSTRA_PROG,RS.SIPD_UNIK SIPD_RENSTRA_SASARAN,RT.SIPD_UNIK SIPD_RENSTRA_TUJUAN,O.SIPD_Unit,S.ProgID ID_PROGRAM,S.KegID ID_KEG,S.BUID FROM (SELECT * FROM renstra_keg WHERE RPJMDID='".$id_rpjmd."'".$tsql." AND SIPD_RENSTRA='') AK LEFT JOIN renstra_prog AP ON (AP.RA_PROGID=AK.RA_PROGID) LEFT JOIN rpjmd_sasaran RS1 ON (RS1.RD_SASARID=AP.RD_SASARID) LEFT JOIN renstra_sasaran RS ON (RS.RA_SASARID=AP.RA_SASARID) LEFT JOIN renstra_tujuan RT ON (RT.RA_TUJID=AP.RA_TUJID) LEFT JOIN para90_opd O ON (O.OPDID=AP.OPDID) LEFT JOIN (SELECT ProgID,KegID,BUID,Lama_KegID FROM para90_sipd GROUP BY Lama_KegID) S ON (S.Lama_KegID=AK.KegID)");
|
||||
while ($db->Next()) {
|
||||
$test = "kamus=giat&aksi=tambah_kamus&id_opd_renstra=".$db->Row("SIPD_Unit")."&id_bidur_renstra=".$db->Row("BUID")."&kode_sasaran_rpjm=".$db->Row("SIPD_RPJMD_SASARAN")."&kode_tujuan=".$db->Row("SIPD_RENSTRA_TUJUAN")."&tujuan_teks=&tujuan_no=&kode_sasaran=".$db->Row("SIPD_RENSTRA_SASARAN")."&sasaran_teks=&sasaran_no=&kode_unik_program=".$db->Row("SIPD_RENSTRA_PROG")."&id_program_renstra=".$db->Row("ID_PROGRAM")."&kode_unik_giat=&id_giat_renstra=&giat_renstra=".$db->Row("ID_KEG");
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
$ahasil[] = "\$('#tab-bar-giat').trigger('click');";
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function Ren_Ubah_Kegiatan($id_rpjmd=0, $id_opd=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function Ren_Tambah_Indi($id_rpjmd=0, $id_opd=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
$tsql = ($id_opd == 0) ? "" : " AND OPDID='".$id_opd."'";
|
||||
$db->Query("SELECT I.*,RS1.SIPD_UNIK SIPD_RPJMD_SASARAN,AK.SIPD_RENSTRA SIPD_RENSTRA_KEG,AP.SIPD_RENSTRA SIPD_RENSTRA_PROG,RS.SIPD_UNIK SIPD_RENSTRA_SASARAN,RT.SIPD_UNIK SIPD_RENSTRA_TUJUAN,O.SIPD_Unit,S.ProgID ID_PROGRAM,S.KegID ID_KEG,S.BUID,T.K_Satuan FROM (SELECT * FROM renstra_keg_indi WHERE RPJMDID='".$id_rpjmd."'".$tsql." AND SIPD_RENSTRA='') I LEFT JOIN renstra_keg AK ON (AK.RA_KEGID=I.RA_KEGID) LEFT JOIN renstra_prog AP ON (AP.RA_PROGID=AK.RA_PROGID) LEFT JOIN rpjmd_sasaran RS1 ON (RS1.RD_SASARID=AP.RD_SASARID) LEFT JOIN renstra_sasaran RS ON (RS.RA_SASARID=AP.RA_SASARID) LEFT JOIN renstra_tujuan RT ON (RT.RA_TUJID=AP.RA_TUJID) LEFT JOIN para90_opd O ON (O.OPDID=AP.OPDID) LEFT JOIN para_satuan T ON (T.SatuanID=I.SatuanID) LEFT JOIN (SELECT ProgID,KegID,BUID,Lama_KegID FROM para90_sipd GROUP BY Lama_KegID) S ON (S.Lama_KegID=AK.KegID)");
|
||||
while ($db->Next()) {
|
||||
$k_satuan = $db->Row("K_Satuan");
|
||||
$test = "kamus=indikator_giat&aksi=tambah_kamus&id_opd_renstra=".$db->Row("SIPD_Unit")."&id_bidur_renstra=".$db->Row("BUID")."&kode_sasaran_rpjm=".$db->Row("SIPD_RPJMD_SASARAN")."&kode_tujuan=".$db->Row("SIPD_RENSTRA_TUJUAN")."&tujuan_teks=&tujuan_no=&kode_sasaran=".$db->Row("SIPD_RENSTRA_SASARAN")."&sasaran_teks=&sasaran_no=&kode_unik_program=".$db->Row("SIPD_RENSTRA_PROG")."&id_program_renstra=".$db->Row("ID_PROGRAM")."&kode_unik_giat=".$db->Row("SIPD_RENSTRA_KEG")."&id_giat_renstra=&id_indikator_output=&output_teks=".str_replace(" ","+",$db->Row("Txt_Indi"))."&target_awal_output=".$db->Row("Indi_Awal")."&satuan_awal_output=".$k_satuan."&target_output%5B%5D=".$db->Row("Indi_T1")."&satuan_output%5B%5D=".$k_satuan."&anggaran_output%5B%5D=".$db->Row("Pagu_T1")."&target_output%5B%5D=".$db->Row("Indi_T2")."&satuan_output%5B%5D=".$k_satuan."&anggaran_output%5B%5D=".$db->Row("Pagu_T2")."&target_output%5B%5D=".$db->Row("Indi_T3")."&satuan_output%5B%5D=".$k_satuan."&anggaran_output%5B%5D=".$db->Row("Pagu_T3")."&target_output%5B%5D=".$db->Row("Indi_T4")."&satuan_output%5B%5D=".$k_satuan."&anggaran_output%5B%5D=".$db->Row("Pagu_T4")."&target_output%5B%5D=".$db->Row("Indi_T5")."&satuan_output%5B%5D=".$k_satuan."&anggaran_output%5B%5D=".$db->Row("Pagu_T5")."&target_akhir_output=".$db->Row("Indi_Akhir")."&satuan_akhir_output=".$k_satuan;
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
$ahasil[] = "\$('#tab-bar-giat').trigger('click');";
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function Ren_Ubah_Indi($id_rpjmd=0, $id_opd=0) {//
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
//kamus=indikator_giat&aksi=ubah_kamus&id_opd_renstra=584&id_bidur_renstra=104&kode_sasaran_rpjm=60.316.685.1371.48&kode_tujuan=60.316.685.92&tujuan_teks=&tujuan_no=&kode_sasaran=60.316.685.1371.48&sasaran_teks=&sasaran_no=&id_unik_indikator=&indikator_teks=Nilai+IKM+pelayanan+Perpustakaan+&target_awal_indikator=85&satuan_awal_indikator=IKM&target_indikator%5B%5D=n%2Fa&satuan_indikator%5B%5D=IKM&target_indikator%5B%5D=85&satuan_indikator%5B%5D=IKM&target_indikator%5B%5D=85&satuan_indikator%5B%5D=IKM&target_indikator%5B%5D=85&satuan_indikator%5B%5D=IKM&target_indikator%5B%5D=85&satuan_indikator%5B%5D=IKM&target_akhir_indikator=85&satuan_akhir_indikator=IKM&kode_unik_program=6243ea5210e4b-1189308514-1648618066&id_program_renstra=825&id_indikator_outcome=&outcome_teks=Persentase+jumlah+capaian+pelayanan+administrasi+perkantoran&target_awal_outcome=100&satuan_awal_outcome=%25&target_outcome%5B%5D=n%2Fa&satuan_outcome%5B%5D=%25&anggaran_outcome%5B%5D=0&target_outcome%5B%5D=100&satuan_outcome%5B%5D=%25&anggaran_outcome%5B%5D=3662980827&target_outcome%5B%5D=100&satuan_outcome%5B%5D=%25&anggaran_outcome%5B%5D=4683695647&target_outcome%5B%5D=100&satuan_outcome%5B%5D=%25&anggaran_outcome%5B%5D=4193436361&target_outcome%5B%5D=100&satuan_outcome%5B%5D=%25&anggaran_outcome%5B%5D=4410358179&target_akhir_outcome=100&satuan_akhir_outcome=%25&kode_unik_giat=6243eb96b7792-701892506-1648618390&id_giat_renstra=&id_indikator_output=6243ecb92c6fa-120392419-1648618681&output_teks=Persentase+tingkat+ketetapan+waktu+penyelesaian+dokumen+perencanaan&target_awal_output=100&satuan_awal_output=%25&target_output%5B%5D=n%2Fa&satuan_output%5B%5D=%25&anggaran_output%5B%5D=0&target_output%5B%5D=100&satuan_output%5B%5D=%25&anggaran_output%5B%5D=30000000&target_output%5B%5D=100&satuan_output%5B%5D=%25&anggaran_output%5B%5D=55000000&target_output%5B%5D=100&satuan_output%5B%5D=%25&anggaran_output%5B%5D=80000000&target_output%5B%5D=100&satuan_output%5B%5D=%25&anggaran_output%5B%5D=85000000&target_akhir_output=100&satuan_akhir_output=%25
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
/************************** RESPON HERE ***************************/
|
||||
|
||||
$db = $db ?? new MySQL();
|
||||
$ajson = array();
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_rpjmd = $_SESSION['__WEB_APP']['RENC_RPJMDID'];
|
||||
$id_opd = Param::Get("OPDID", 0);
|
||||
|
||||
if ( $data == "detail-opd" ) {
|
||||
$tcari = trim(Param::Get("Cari_OPD"));
|
||||
$qsql = "RPJMDID='".$id_rpjmd."'";
|
||||
$msql = "M.Aktif=1";
|
||||
$msql .= ($tcari=="") ? "" : " AND CONCAT(M.K_OPD,M.N_OPD) LIKE '%".$tcari."%'";
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT K.*,M.OPDID OPDID2,M.K_OPD,M.N_OPD,CONCAT(IFNULL(K.ITEM_UDAH,0),' / ',IFNULL(K.ITEM_SEMUA,0)) Stat_Master,CONCAT(IFNULL(I.INDI_UDAH,0),' / ',IFNULL(I.INDI_SEMUA,0)) Stat_Indi,IF(IFNULL(K.ITEM_UDAH,0)=IFNULL(K.ITEM_SEMUA,0) AND IFNULL(I.INDI_UDAH,0)=IFNULL(I.INDI_SEMUA,0),1,0) IDO FROM vi_para90_opd M LEFT JOIN (SELECT OPDID,COUNT(*) ITEM_SEMUA,SUM(IF(SIPD_RENSTRA='',0,1)) ITEM_UDAH FROM renstra_keg WHERE ".$qsql." GROUP BY OPDID) K ON (K.OPDID=M.OPDID) LEFT JOIN (SELECT OPDID,COUNT(*) INDI_SEMUA,SUM(IF(SIPD_RENSTRA='',0,1)) INDI_UDAH FROM renstra_keg_indi WHERE ".$qsql." GROUP BY OPDID) I ON (I.OPDID=M.OPDID) WHERE ".$msql);
|
||||
$obj->add_field("OPDID2", "OPD", "hid");
|
||||
$obj->add_field("K_OPD", "Kode", "c");
|
||||
$obj->add_field("N_OPD", "Nama Perangkat Daerah", "awr");
|
||||
$obj->add_field("Stat_Master", "Kegiatan", "c");
|
||||
$obj->add_field("Stat_Indi", "Indikator", "c");
|
||||
$obj->set_row_color("IDO", "1", "rsuccess");
|
||||
$obj->set_field_order("K_OPD", "A");
|
||||
$obj->add_row_btn("send", "+ Kegiatan", "RenstraKegiatanJS.kode_tambah_keg");
|
||||
$obj->add_row_btn("send0", "= Kegiatan", "RenstraKegiatanJS.kode_ubah_keg");
|
||||
$obj->add_row_btn("document", "+ Indikator", "RenstraKegiatanJS.kode_tambah_indi");
|
||||
$obj->add_row_btn("document0", "= Indikator", "RenstraKegiatanJS.kode_ubah_indi");
|
||||
$obj->set_func_navi("RenstraKegiatanJS.data_query('detail-opd')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divOPD");
|
||||
|
||||
} else if ( $data == "kode-tambah-keg" ) {
|
||||
$ajson = Ren_Tambah_Kegiatan($id_rpjmd, $id_opd);
|
||||
|
||||
} else if ( $data == "kode-ubah-keg" ) {
|
||||
$ajson = Ren_Ubah_Kegiatan($id_rpjmd, $id_opd);
|
||||
|
||||
} else if ( $data == "kode-tambah-indi" ) {
|
||||
$ajson = Ren_Tambah_Indi($id_rpjmd, $id_opd);
|
||||
|
||||
} else if ( $data == "kode-ubah-indi" ) {
|
||||
$ajson = Ren_Ubah_Indi($id_rpjmd, $id_opd);
|
||||
|
||||
} else if ( $data == "upload-json" || $data == "simpan-json" ) {
|
||||
$ajson['result'] = 0;
|
||||
|
||||
if ($data == "upload-json") {
|
||||
$adata = json_decode(file_get_contents($_FILES['file']['tmp_name']), true);
|
||||
} else {
|
||||
$adata = json_decode(stripslashes(Param::Get("Kode_JSON", "{}")), true);
|
||||
}
|
||||
$db->Query("TRUNCATE sipd_renstra_keg");
|
||||
foreach ($adata['data'] as $arec) {
|
||||
$db->Query("INSERT INTO sipd_renstra_keg (ID_KEG,ID_UNIT,UNIK_KEG,UNIK_INDI,Txt_Indi) VALUES ('".$arec['id_giat']."','".$arec['id_unit']."','".$arec['id_unik']."','".$arec['id_unik_indikator']."','".$arec['indikator']."')");
|
||||
}
|
||||
|
||||
$db->Query("UPDATE sipd_renstra_keg A,para90_keg B SET A.KegID=B.KegID WHERE A.ID_KEG=B.KegID");
|
||||
$db->Query("UPDATE sipd_renstra_keg A,para90_sipd B SET A.KegID=B.Lama_KegID WHERE A.ID_KEG=B.KegID AND A.KegID=0");
|
||||
$db->Query("UPDATE sipd_renstra_keg 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_keg SET SIPD_RENSTRA='' WHERE RPJMDID='".$id_rpjmd."'");
|
||||
//$db->Query("UPDATE renstra_keg_indi SET SIPD_RENSTRA='' WHERE RPJMDID='".$id_rpjmd."'");
|
||||
$db->Query("UPDATE renstra_keg A,sipd_renstra_keg B SET A.SIPD_RENSTRA=B.UNIK_KEG WHERE A.RPJMDID='".$id_rpjmd."' AND A.KegID=B.KegID AND A.OPDID=B.OPDID");
|
||||
$db->Query("UPDATE renstra_keg_indi A,sipd_renstra_keg B SET A.SIPD_RENSTRA=B.UNIK_INDI WHERE A.RPJMDID='".$id_rpjmd."' AND A.KegID=B.KegID AND A.OPDID=B.OPDID AND TRIM(REPLACE(REPLACE(A.Txt_Indi,'\r',''),'\n',''))=TRIM(B.Txt_Indi)");
|
||||
|
||||
$ajson['result'] = 1;
|
||||
|
||||
} else if ( $data == "detail-sipd" ) {
|
||||
$form = new Form($db);
|
||||
$kode_token = $form->textbox("_", "Kode_Token", $_SESSION['__WEB_USER']['SIPD_TOKEN'], true, true, "text");
|
||||
$kode_acak = $form->textbox("_", "Kode_Acak", $_SESSION['__WEB_USER']['SIPD_ACAK'], true, true, "text");
|
||||
echo '
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-3 col-form-label" for="Kode_Token">Token</label>
|
||||
<div class="col">'.$kode_token.'</div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-3 col-form-label" for="Kode_Acak">Acak</label>
|
||||
<div class="col">'.$kode_acak.'</div>
|
||||
</div>';
|
||||
exit;
|
||||
} else if ( $data == "simpan-sipd" ) {
|
||||
$_SESSION['__WEB_USER']['SIPD_TOKEN'] = Param::Get("Kode_Token", "KODE_TOKEN");
|
||||
$_SESSION['__WEB_USER']['SIPD_ACAK'] = Param::Get("Kode_Acak", "KODE_ACAK");
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Push Kegiatan Renstra ke SIPD Kemendagri</div><div class="card-body">
|
||||
<div class="row mb-1">
|
||||
<div class="col-md-9 col-sm-12"><div class="input-group"><input class="form-control" id="Cari_OPD" placeholder="Kunci Pencarian" type="text"><button class="btn btn-info shadow-none" type="button" id="butSearch">Cari</button><button class="btn btn-secondary shadow-none" type="button" id="butAll">Semua</button></div></div>
|
||||
<div class="col-md-3 col-sm-12 mt-2 mt-sm-0 d-flex justify-content-between">
|
||||
<div class="dropdown">
|
||||
<button class="btn btn-secondary shadow-none dropdown-toggle" type="button" id="dropdownMenuButton" data-coreui-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Opsi Semua Data</button>
|
||||
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
|
||||
<a class="dropdown-item" href="#" id="opsiUpload">Upload JSON</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" id="opsiTambahKeg">Tambah Kegiatan</a>
|
||||
<a class="dropdown-item" href="#" id="opsiUbahKeg">Ubah Kegiatan</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" id="opsiTambahIndi">Tambah Indikator</a>
|
||||
<a class="dropdown-item" href="#" id="opsiUbahIndi">Ubah Indikator</a>
|
||||
</div>
|
||||
</div>
|
||||
<button class="btn btn-secondary shadow-none" type="button" id="butSIPD">Setup SIPD</button>
|
||||
</div>
|
||||
</div>
|
||||
<input id="OPDID" type="hidden">
|
||||
<div id="divOPD"> </div>
|
||||
</div></div>
|
||||
</div>';
|
||||
exit;
|
||||
}
|
||||
|
||||
send_json($ajson, true);
|
||||
?>
|
||||
@@ -0,0 +1,197 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/php/sim/renstra_program.php
|
||||
Desc. : PHP - Simulasi Program Renstra ke SIPD Kemendagri
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : March 30th, 2022.
|
||||
|
||||
(c) 2011 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
require_once(__DIR__."/../func.sippd.php");
|
||||
|
||||
use siaupheng\fonia4\DB\MySQL;
|
||||
use siaupheng\fonia4\DB\SQL;
|
||||
use siaupheng\fonia4\Web\Param;
|
||||
use siaupheng\fonia4\Web\Table;
|
||||
use siaupheng\fonia4\Web\Form;
|
||||
|
||||
function Ren_Tambah_Program($id_rpjmd=0, $id_opd=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
$tsql = ($id_opd == 0) ? "" : " AND OPDID='".$id_opd."'";
|
||||
$db->Query("SELECT AP.*,RS1.SIPD_UNIK SIPD_RPJMD_SASARAN,RS.SIPD_UNIK SIPD_RENSTRA_SASARAN,RT.SIPD_UNIK SIPD_RENSTRA_TUJUAN,O.SIPD_Unit,S.ProgID ID_PROGRAM,S.BUID FROM (SELECT * FROM renstra_prog WHERE RPJMDID='".$id_rpjmd."'".$tsql." AND SIPD_RENSTRA='') AP LEFT JOIN rpjmd_sasaran RS1 ON (RS1.RD_SASARID=AP.RD_SASARID) LEFT JOIN renstra_sasaran RS ON (RS.RA_SASARID=AP.RA_SASARID) LEFT JOIN renstra_tujuan RT ON (RT.RA_TUJID=AP.RA_TUJID) LEFT JOIN para90_opd O ON (O.OPDID=AP.OPDID) LEFT JOIN (SELECT ProgID,BUID,Lama_ProgID FROM para90_sipd GROUP BY Lama_ProgID) S ON (S.Lama_ProgID=AP.ProgID)");
|
||||
while ($db->Next()) {
|
||||
$test = "kamus=program&aksi=tambah_kamus&id_opd_renstra=".$db->Row("SIPD_Unit")."&id_bidur_renstra=".$db->Row("BUID")."&kode_sasaran_rpjm=".$db->Row("SIPD_RPJMD_SASARAN")."&kode_tujuan=".$db->Row("SIPD_RENSTRA_TUJUAN")."&tujuan_teks=&tujuan_no=&kode_sasaran=".$db->Row("SIPD_RENSTRA_SASARAN")."&kode_unik_program=&id_program_renstra=&program_renstra=".$db->Row("ID_PROGRAM")."";
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
$ahasil[] = "\$('#tab-bar-program').trigger('click');";
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function Ren_Ubah_Program($id_rpjmd=0, $id_opd=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function Ren_Tambah_Indi($id_rpjmd=0, $id_opd=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
$tsql = ($id_opd == 0) ? "" : " AND OPDID='".$id_opd."'";
|
||||
$db->Query("SELECT I.*,AP.SIPD_RENSTRA SIPD_RENSTRA_PROG,RS1.SIPD_UNIK SIPD_RPJMD_SASARAN,RS.SIPD_UNIK SIPD_RENSTRA_SASARAN,RT.SIPD_UNIK SIPD_RENSTRA_TUJUAN,O.SIPD_Unit,S.ProgID ID_PROGRAM,S.BUID,T.K_Satuan FROM (SELECT * FROM renstra_prog_indi WHERE RPJMDID='".$id_rpjmd."'".$tsql." AND SIPD_RENSTRA='') I LEFT JOIN renstra_prog AP ON (AP.RA_PROGID=I.RA_PROGID) LEFT JOIN rpjmd_sasaran RS1 ON (RS1.RD_SASARID=AP.RD_SASARID) LEFT JOIN renstra_sasaran RS ON (RS.RA_SASARID=AP.RA_SASARID) LEFT JOIN renstra_tujuan RT ON (RT.RA_TUJID=AP.RA_TUJID) LEFT JOIN para90_opd O ON (O.OPDID=AP.OPDID) LEFT JOIN para_satuan T ON (T.SatuanID=I.SatuanID) LEFT JOIN (SELECT ProgID,BUID,Lama_ProgID FROM para90_sipd GROUP BY Lama_ProgID) S ON (S.Lama_ProgID=AP.ProgID) WHERE AP.SIPD_RENSTRA<>''");
|
||||
while ($db->Next()) {
|
||||
$k_satuan = $db->Row("K_Satuan");
|
||||
$test = "kamus=indikator_program&aksi=tambah_kamus&id_opd_renstra=".$db->Row("SIPD_Unit")."&id_bidur_renstra=".$db->Row("BUID")."&kode_sasaran_rpjm=".$db->Row("SIPD_RPJMD_SASARAN")."&kode_tujuan=".$db->Row("SIPD_RENSTRA_TUJUAN")."&tujuan_teks=&tujuan_no=&kode_sasaran=".$db->Row("SIPD_RENSTRA_SASARAN")."&kode_unik_program=".$db->Row("SIPD_RENSTRA_PROG")."&id_program_renstra=&id_indikator_outcome=&outcome_teks=".str_replace(" ","+",$db->Row("Txt_Indi"))."&target_awal_outcome=".$db->Row("Indi_Awal")."&satuan_awal_outcome=".$k_satuan."&target_outcome%5B%5D=".$db->Row("Indi_T1")."&satuan_outcome%5B%5D=".$k_satuan."&anggaran_outcome%5B%5D=".$db->Row("Pagu_T1")."&target_outcome%5B%5D=".$db->Row("Indi_T2")."&satuan_outcome%5B%5D=".$k_satuan."&anggaran_outcome%5B%5D=".$db->Row("Pagu_T2")."&target_outcome%5B%5D=".$db->Row("Indi_T3")."&satuan_outcome%5B%5D=".$k_satuan."&anggaran_outcome%5B%5D=".$db->Row("Pagu_T3")."&target_outcome%5B%5D=".$db->Row("Indi_T4")."&satuan_outcome%5B%5D=".$k_satuan."&anggaran_outcome%5B%5D=".$db->Row("Pagu_T4")."&target_outcome%5B%5D=".$db->Row("Indi_T5")."&satuan_outcome%5B%5D=".$k_satuan."&anggaran_outcome%5B%5D=".$db->Row("Pagu_T5")."&target_akhir_outcome=".$db->Row("Indi_Akhir")."&satuan_akhir_outcome=".$k_satuan."";
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
$ahasil[] = "\$('#tab-bar-program').trigger('click');";
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function Ren_Ubah_Indi($id_rpjmd=0, $id_opd=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
$tsql = ($id_opd == 0) ? "" : " AND OPDID='".$id_opd."'";
|
||||
$db->Query("SELECT I.*,AP.SIPD_RENSTRA SIPD_RENSTRA_PROG,RS1.SIPD_UNIK SIPD_RPJMD_SASARAN,RS.SIPD_UNIK SIPD_RENSTRA_SASARAN,RT.SIPD_UNIK SIPD_RENSTRA_TUJUAN,O.SIPD_Unit,S.ProgID ID_PROGRAM,S.BUID,T.K_Satuan FROM (SELECT * FROM renstra_prog_indi WHERE RPJMDID='".$id_rpjmd."'".$tsql." AND SIPD_RENSTRA<>'') I LEFT JOIN renstra_prog AP ON (AP.RA_PROGID=I.RA_PROGID) LEFT JOIN rpjmd_sasaran RS1 ON (RS1.RD_SASARID=AP.RD_SASARID) LEFT JOIN renstra_sasaran RS ON (RS.RA_SASARID=AP.RA_SASARID) LEFT JOIN renstra_tujuan RT ON (RT.RA_TUJID=AP.RA_TUJID) LEFT JOIN para90_opd O ON (O.OPDID=AP.OPDID) LEFT JOIN para_satuan T ON (T.SatuanID=I.SatuanID) LEFT JOIN (SELECT ProgID,BUID,Lama_ProgID FROM para90_sipd GROUP BY Lama_ProgID) S ON (S.Lama_ProgID=AP.ProgID) WHERE AP.SIPD_RENSTRA<>''");
|
||||
while ($db->Next()) {
|
||||
$k_satuan = $db->Row("K_Satuan");
|
||||
$test = "kamus=indikator_program&aksi=ubah_kamus&id_opd_renstra=".$db->Row("SIPD_Unit")."&id_bidur_renstra=".$db->Row("BUID")."&kode_sasaran_rpjm=".$db->Row("SIPD_RPJMD_SASARAN")."&kode_tujuan=".$db->Row("SIPD_RENSTRA_TUJUAN")."&tujuan_teks=&tujuan_no=&kode_sasaran=".$db->Row("SIPD_RENSTRA_SASARAN")."&sasaran_renstra=".$db->Row("SIPD_RENSTRA_SASARAN")."&kode_unik_program=".$db->Row("SIPD_RENSTRA_PROG")."&id_program_renstra=&program_renstra=".$db->Row("ID_PROGRAM")."&id_indikator_outcome=".$db->Row("SIPD_RENSTRA")."&outcome_teks=".str_replace(" ","+",$db->Row("Txt_Indi"))."&target_awal_outcome=".$db->Row("Indi_Awal")."&satuan_awal_outcome=".$k_satuan."&target_outcome%5B%5D=".$db->Row("Indi_T1")."&satuan_outcome%5B%5D=".$k_satuan."&anggaran_outcome%5B%5D=".$db->Row("Pagu_T1")."&target_outcome%5B%5D=".$db->Row("Indi_T2")."&satuan_outcome%5B%5D=".$k_satuan."&anggaran_outcome%5B%5D=".$db->Row("Pagu_T2")."&target_outcome%5B%5D=".$db->Row("Indi_T3")."&satuan_outcome%5B%5D=".$k_satuan."&anggaran_outcome%5B%5D=".$db->Row("Pagu_T3")."&target_outcome%5B%5D=".$db->Row("Indi_T4")."&satuan_outcome%5B%5D=".$k_satuan."&anggaran_outcome%5B%5D=".$db->Row("Pagu_T4")."&target_outcome%5B%5D=".$db->Row("Indi_T5")."&satuan_outcome%5B%5D=".$k_satuan."&anggaran_outcome%5B%5D=".$db->Row("Pagu_T5")."&target_akhir_outcome=".$db->Row("Indi_Akhir")."&satuan_akhir_outcome=".$k_satuan."";
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
$ahasil[] = "\$('#tab-bar-program').trigger('click');";
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
/************************** RESPON HERE ***************************/
|
||||
|
||||
$db = $db ?? new MySQL();
|
||||
$ajson = array();
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_rpjmd = $_SESSION['__WEB_APP']['RENC_RPJMDID'];
|
||||
$id_opd = Param::Get("OPDID", 0);
|
||||
|
||||
if ( $data == "detail-opd" ) {
|
||||
$tcari = trim(Param::Get("Cari_OPD"));
|
||||
$qsql = "RPJMDID='".$id_rpjmd."'";
|
||||
$msql = "M.Aktif=1";
|
||||
$msql .= ($tcari=="") ? "" : " AND CONCAT(M.K_OPD,M.N_OPD) LIKE '%".$tcari."%'";
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT K.*,M.OPDID OPDID2,M.K_OPD,M.N_OPD,CONCAT(IFNULL(K.ITEM_UDAH,0),' / ',IFNULL(K.ITEM_SEMUA,0)) Stat_Master,CONCAT(IFNULL(I.INDI_UDAH,0),' / ',IFNULL(I.INDI_SEMUA,0)) Stat_Indi,IF(IFNULL(K.ITEM_UDAH,0)=IFNULL(K.ITEM_SEMUA,0) AND IFNULL(I.INDI_UDAH,0)=IFNULL(I.INDI_SEMUA,0),1,0) IDO FROM vi_para90_opd M LEFT JOIN (SELECT OPDID,COUNT(*) ITEM_SEMUA,SUM(IF(SIPD_RENSTRA='',0,1)) ITEM_UDAH FROM renstra_prog WHERE ".$qsql." GROUP BY OPDID) K ON (K.OPDID=M.OPDID) LEFT JOIN (SELECT OPDID,COUNT(*) INDI_SEMUA,SUM(IF(SIPD_RENSTRA='',0,1)) INDI_UDAH FROM renstra_prog_indi WHERE ".$qsql." GROUP BY OPDID) I ON (I.OPDID=M.OPDID) WHERE ".$msql);
|
||||
$obj->add_field("OPDID2", "OPD", "hid");
|
||||
$obj->add_field("K_OPD", "Kode", "c");
|
||||
$obj->add_field("N_OPD", "Nama Perangkat Daerah", "awr");
|
||||
$obj->add_field("Stat_Master", "Program", "c");
|
||||
$obj->add_field("Stat_Indi", "Indikator", "c");
|
||||
$obj->set_row_color("IDO", "1", "rsuccess");
|
||||
$obj->set_field_order("K_OPD", "A");
|
||||
$obj->add_row_btn("send", "+ Program", "RenstraProgramJS.kode_tambah_prog");
|
||||
$obj->add_row_btn("send0", "= Program", "RenstraProgramJS.kode_ubah_prog");
|
||||
$obj->add_row_btn("document", "+ Indikator", "RenstraProgramJS.kode_tambah_indi");
|
||||
$obj->add_row_btn("document0", "= Indikator", "RenstraProgramJS.kode_ubah_indi");
|
||||
$obj->set_func_navi("RenstraProgramJS.data_query('detail-opd')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divOPD");
|
||||
|
||||
} else if ( $data == "kode-tambah-prog" ) {
|
||||
$ajson = Ren_Tambah_Program($id_rpjmd, $id_opd);
|
||||
|
||||
} else if ( $data == "kode-ubah-prog" ) {
|
||||
$ajson = Ren_Ubah_Program($id_rpjmd, $id_opd);
|
||||
|
||||
} else if ( $data == "kode-tambah-indi" ) {
|
||||
$ajson = Ren_Tambah_Indi($id_rpjmd, $id_opd);
|
||||
|
||||
} else if ( $data == "kode-ubah-indi" ) {
|
||||
$ajson = Ren_Ubah_Indi($id_rpjmd, $id_opd);
|
||||
|
||||
} else if ( $data == "upload-json" || $data == "simpan-json" ) {
|
||||
$ajson['result'] = 0;
|
||||
|
||||
if ($data == "upload-json") {
|
||||
$adata = json_decode(file_get_contents($_FILES['file']['tmp_name']), true);
|
||||
} else {
|
||||
$adata = json_decode(stripslashes(Param::Get("Kode_JSON", "{}")), true);
|
||||
}
|
||||
$db->Query("DELETE FROM sipd_renstra_prog");
|
||||
foreach ($adata['data'] as $arec) {
|
||||
$db->Query("INSERT INTO sipd_renstra_prog (ID_PROG,ID_UNIT,UNIK_PROG,UNIK_INDI,Txt_Indi) VALUES ('".$arec['id_program']."','".$arec['id_unit']."','".$arec['id_unik']."','".$arec['id_unik_indikator']."','".$arec['indikator']."')");
|
||||
}
|
||||
|
||||
$db->Query("UPDATE sipd_renstra_prog A,para90_prog B SET A.ProgID=B.ProgID WHERE A.ID_PROG=B.ProgID");
|
||||
$db->Query("UPDATE sipd_renstra_prog A,para90_sipd B SET A.ProgID=B.Lama_ProgID WHERE A.ID_PROG=B.ProgID AND A.ProgID=0");
|
||||
$db->Query("UPDATE sipd_renstra_prog 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_prog SET SIPD_RENSTRA='' WHERE RPJMDID='".$id_rpjmd."'");
|
||||
//$db->Query("UPDATE renstra_prog_indi SET SIPD_RENSTRA='' WHERE RPJMDID='".$id_rpjmd."'");
|
||||
$db->Query("UPDATE renstra_prog A,sipd_renstra_prog B SET A.SIPD_RENSTRA=B.UNIK_PROG WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND A.OPDID=B.OPDID");
|
||||
$db->Query("UPDATE renstra_prog_indi A,sipd_renstra_prog B SET A.SIPD_RENSTRA=B.UNIK_INDI WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND A.OPDID=B.OPDID AND TRIM(REPLACE(REPLACE(A.Txt_Indi,'\r',''),'\n',''))=TRIM(B.Txt_Indi)");
|
||||
|
||||
$ajson['result'] = 1;
|
||||
|
||||
} else if ( $data == "detail-sipd" ) {
|
||||
$form = new Form($db);
|
||||
$kode_token = $form->textbox("_", "Kode_Token", $_SESSION['__WEB_USER']['SIPD_TOKEN'], true, true, "text");
|
||||
$kode_acak = $form->textbox("_", "Kode_Acak", $_SESSION['__WEB_USER']['SIPD_ACAK'], true, true, "text");
|
||||
echo '
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-3 col-form-label" for="Kode_Token">Token</label>
|
||||
<div class="col">'.$kode_token.'</div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-3 col-form-label" for="Kode_Acak">Acak</label>
|
||||
<div class="col">'.$kode_acak.'</div>
|
||||
</div>';
|
||||
exit;
|
||||
} else if ( $data == "simpan-sipd" ) {
|
||||
$_SESSION['__WEB_USER']['SIPD_TOKEN'] = Param::Get("Kode_Token", "KODE_TOKEN");
|
||||
$_SESSION['__WEB_USER']['SIPD_ACAK'] = Param::Get("Kode_Acak", "KODE_ACAK");
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Push Program Renstra ke SIPD Kemendagri</div><div class="card-body">
|
||||
<div class="row mb-1">
|
||||
<div class="col-md-9 col-sm-12"><div class="input-group"><input class="form-control" id="Cari_OPD" placeholder="Kunci Pencarian" type="text"><button class="btn btn-info shadow-none" type="button" id="butSearch">Cari</button><button class="btn btn-secondary shadow-none" type="button" id="butAll">Semua</button></div></div>
|
||||
<div class="col-md-3 col-sm-12 mt-2 mt-sm-0 d-flex justify-content-between">
|
||||
<div class="dropdown">
|
||||
<button class="btn btn-secondary shadow-none dropdown-toggle" type="button" id="dropdownMenuButton" data-coreui-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Opsi Semua Data</button>
|
||||
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
|
||||
<a class="dropdown-item" href="#" id="opsiUpload">Upload JSON</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" id="opsiTambahProg">Tambah Program</a>
|
||||
<a class="dropdown-item" href="#" id="opsiUbahProg">Ubah Program</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" id="opsiTambahIndi">Tambah Indikator</a>
|
||||
<a class="dropdown-item" href="#" id="opsiUbahIndi">Ubah Indikator</a>
|
||||
</div>
|
||||
</div>
|
||||
<button class="btn btn-secondary shadow-none" type="button" id="butSIPD">Setup SIPD</button>
|
||||
</div>
|
||||
</div>
|
||||
<input id="OPDID" type="hidden">
|
||||
<div id="divOPD"> </div>
|
||||
</div></div>
|
||||
</div>';
|
||||
exit;
|
||||
}
|
||||
|
||||
send_json($ajson, true);
|
||||
?>
|
||||
@@ -0,0 +1,195 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/php/sim/renstra_sasaran.php
|
||||
Desc. : PHP - Simulasi Sasaran Renstra ke SIPD Kemendagri
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : March 30th, 2022.
|
||||
|
||||
(c) 2011 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
require_once(__DIR__."/../func.sippd.php");
|
||||
|
||||
use siaupheng\fonia4\DB\MySQL;
|
||||
use siaupheng\fonia4\DB\SQL;
|
||||
use siaupheng\fonia4\Web\Param;
|
||||
use siaupheng\fonia4\Web\Table;
|
||||
use siaupheng\fonia4\Web\Form;
|
||||
|
||||
function Ren_Tambah_Sasaran($id_rpjmd=0, $id_opd=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
$tsql = ($id_opd == 0) ? "" : " AND OPDID='".$id_opd."'";
|
||||
$db->Query("SELECT A.*,RT.BUID,RTT.SIPD_UNIK SIPD_RPJMD_TUJUAN,RS.SIPD_UNIK SIPD_RPJMD_SASARAN,RT.SIPD_UNIK SIPD_RENSTRA_TUJUAN,O.SIPD_OPD FROM (SELECT * FROM renstra_sasaran WHERE RPJMDID='".$id_rpjmd."'".$tsql." AND SIPD_UNIK='') A LEFT JOIN renstra_tujuan RT ON (RT.RA_TUJID=A.RA_TUJID) LEFT JOIN rpjmd_sasaran RS ON (RS.RD_SASARID=RT.RD_SASARID) LEFT JOIN rpjmd_tujuan RTT ON (RTT.RD_TUJID=RS.RD_TUJID) LEFT JOIN para90_opd O ON (O.OPDID=A.OPDID)");
|
||||
while ($db->Next()) {
|
||||
$test = "kamus=sasaran&aksi=tambah_kamus&id_opd_renstra=".$db->Row("SIPD_OPD")."&id_bidur_renstra=".$db->Row("BUID")."&kode_sasaran_rpjm=".$db->Row("SIPD_RPJMD_SASARAN")."&kode_tujuan=".$db->Row("SIPD_RENSTRA_TUJUAN")."&tujuan_teks=&tujuan_no=&kode_sasaran=&sasaran_teks=".str_replace(" ","+",$db->Row("Txt_Sasaran"))."&sasaran_no=".$db->Row("No_Sasaran");
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
$ahasil[] = "\$('#tab-bar-sasaran').trigger('click');";
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function Ren_Ubah_Sasaran($id_rpjmd=0, $id_opd=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
$tsql = ($id_opd == 0) ? "" : " AND OPDID='".$id_opd."'";
|
||||
$db->Query("SELECT A.*,RT.BUID,RTT.SIPD_UNIK SIPD_RPJMD_TUJUAN,RS.SIPD_UNIK SIPD_RPJMD_SASARAN,RT.SIPD_UNIK SIPD_RENSTRA_TUJUAN,O.SIPD_OPD FROM (SELECT * FROM renstra_sasaran WHERE RPJMDID='".$id_rpjmd."'".$tsql." AND SIPD_UNIK<>'') A LEFT JOIN renstra_tujuan RT ON (RT.RA_TUJID=A.RA_TUJID) LEFT JOIN rpjmd_sasaran RS ON (RS.RD_SASARID=RT.RD_SASARID) LEFT JOIN rpjmd_tujuan RTT ON (RTT.RD_TUJID=RS.RD_TUJID) LEFT JOIN para90_opd O ON (O.OPDID=A.OPDID)");
|
||||
while ($db->Next()) {
|
||||
$test = "kamus=sasaran&aksi=ubah_kamus&id_opd_renstra=".$db->Row("SIPD_OPD")."&id_bidur_renstra=".$db->Row("BUID")."&kode_sasaran_rpjm=".$db->Row("SIPD_RPJMD_SASARAN")."&kode_tujuan=".$db->Row("SIPD_RENSTRA_TUJUAN")."&tujuan_teks=&tujuan_renstra=".$db->Row("SIPD_RENSTRA_TUJUAN")."&tujuan_no=&kode_sasaran=".$db->Row("SIPD_UNIK")."&sasaran_teks=".str_replace(" ","+",$db->Row("Txt_Sasaran"))."&sasaran_renstra=".$db->Row("SIPD_UNIK")."&sasaran_no=".$db->Row("No_Sasaran");
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
$ahasil[] = "\$('#tab-bar-sasaran').trigger('click');";
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function Ren_Tambah_Indi($id_rpjmd=0, $id_opd=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
$tsql = ($id_opd == 0) ? "" : " AND OPDID='".$id_opd."'";
|
||||
$db->Query("SELECT I.*,AP.SIPD_UNIK SIPD_SASARAN,RT.BUID,RTT.SIPD_UNIK SIPD_RPJMD_TUJUAN,RS.SIPD_UNIK SIPD_RPJMD_SASARAN,RT.SIPD_UNIK SIPD_RENSTRA_TUJUAN,O.SIPD_OPD,T.K_Satuan FROM (SELECT * FROM renstra_sasaran_indi WHERE RPJMDID='".$id_rpjmd."'".$tsql." AND SIPD_UNIK='') I LEFT JOIN renstra_sasaran AP ON (AP.RA_SASARID=I.RA_SASARID) LEFT JOIN renstra_tujuan RT ON (RT.RA_TUJID=AP.RA_TUJID) LEFT JOIN rpjmd_sasaran RS ON (RS.RD_SASARID=RT.RD_SASARID) LEFT JOIN rpjmd_tujuan RTT ON (RTT.RD_TUJID=RS.RD_TUJID) LEFT JOIN para90_opd O ON (O.OPDID=AP.OPDID) LEFT JOIN para_satuan T ON (T.SatuanID=I.SatuanID) WHERE AP.SIPD_UNIK<>''");
|
||||
while ($db->Next()) {
|
||||
$k_satuan = $db->Row("K_Satuan");
|
||||
$test = "kamus=indikator_sasaran&aksi=tambah_kamus&id_opd_renstra=".$db->Row("SIPD_OPD")."&id_bidur_renstra=".$db->Row("BUID")."&kode_sasaran_rpjm=".$db->Row("SIPD_RPJMD_SASARAN")."&kode_tujuan=".$db->Row("SIPD_RENSTRA_TUJUAN")."&tujuan_teks=&tujuan_no=&kode_sasaran=".$db->Row("SIPD_SASARAN")."&sasaran_teks=&sasaran_no=&id_unik_indikator=&indikator_teks=".str_replace(" ","+",$db->Row("Txt_Indi"))."&target_awal_indikator=".$db->Row("Indi_Awal")."&satuan_awal_indikator=".$k_satuan."&target_indikator%5B%5D=".$db->Row("Indi_T1")."&satuan_indikator%5B%5D=".$k_satuan."&target_indikator%5B%5D=".$db->Row("Indi_T2")."&satuan_indikator%5B%5D=".$k_satuan."&target_indikator%5B%5D=".$db->Row("Indi_T3")."&satuan_indikator%5B%5D=".$k_satuan."&target_indikator%5B%5D=".$db->Row("Indi_T4")."&satuan_indikator%5B%5D=".$k_satuan."&target_indikator%5B%5D=".$db->Row("Indi_T5")."&satuan_indikator%5B%5D=".$k_satuan."&target_akhir_indikator=".$db->Row("Indi_Akhir")."&satuan_akhir_indikator=".$k_satuan;
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
$ahasil[] = "\$('#tab-bar-sasaran').trigger('click');";
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function Ren_Ubah_Indi($id_rpjmd=0, $id_opd=0) {//
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
/************************** RESPON HERE ***************************/
|
||||
|
||||
$db = $db ?? new MySQL();
|
||||
$ajson = array();
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_rpjmd = $_SESSION['__WEB_APP']['RENC_RPJMDID'];
|
||||
$id_opd = Param::Get("OPDID", 0);
|
||||
|
||||
if ( $data == "detail-opd" ) {
|
||||
$tcari = trim(Param::Get("Cari_OPD"));
|
||||
$qsql = "RPJMDID='".$id_rpjmd."'";
|
||||
$msql = "M.Aktif=1";
|
||||
$msql .= ($tcari=="") ? "" : " AND CONCAT(M.K_OPD,M.N_OPD) LIKE '%".$tcari."%'";
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT K.*,M.OPDID OPDID2,M.K_OPD,M.N_OPD,CONCAT(IFNULL(K.ITEM_UDAH,0),' / ',IFNULL(K.ITEM_SEMUA,0)) Stat_Master,CONCAT(IFNULL(I.INDI_UDAH,0),' / ',IFNULL(I.INDI_SEMUA,0)) Stat_Indi,IF(IFNULL(K.ITEM_UDAH,0)=IFNULL(K.ITEM_SEMUA,0) AND IFNULL(I.INDI_UDAH,0)=IFNULL(I.INDI_SEMUA,0),1,0) IDO FROM vi_para90_opd M LEFT JOIN (SELECT OPDID,COUNT(*) ITEM_SEMUA,SUM(IF(SIPD_UNIK='',0,1)) ITEM_UDAH FROM renstra_sasaran WHERE ".$qsql." GROUP BY OPDID) K ON (K.OPDID=M.OPDID) LEFT JOIN (SELECT OPDID,COUNT(*) INDI_SEMUA,SUM(IF(SIPD_UNIK='',0,1)) INDI_UDAH FROM renstra_sasaran_indi WHERE ".$qsql." GROUP BY OPDID) I ON (I.OPDID=M.OPDID) WHERE ".$msql);
|
||||
$obj->add_field("OPDID2", "OPD", "hid");
|
||||
$obj->add_field("K_OPD", "Kode", "c");
|
||||
$obj->add_field("N_OPD", "Nama Perangkat Daerah", "awr");
|
||||
$obj->add_field("Stat_Master", "Sasaran", "c");
|
||||
$obj->add_field("Stat_Indi", "Indikator", "c");
|
||||
$obj->set_field_order("K_OPD", "A");
|
||||
$obj->set_row_color("IDO", "1", "rsuccess");
|
||||
$obj->add_row_btn("send", "+ Sasaran", "RenstraSasaranJS.kode_tambah_sasar");
|
||||
$obj->add_row_btn("send0", "= Sasaran", "RenstraSasaranJS.kode_ubah_sasar");
|
||||
$obj->add_row_btn("document", "+ Indikator", "RenstraSasaranJS.kode_tambah_indi");
|
||||
$obj->add_row_btn("document0", "= Indikator", "RenstraSasaranJS.kode_ubah_indi");
|
||||
$obj->set_func_navi("RenstraSasaranJS.data_query('detail-opd')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divOPD");
|
||||
|
||||
} else if ( $data == "kode-tambah-sasar" ) {
|
||||
$ajson = Ren_Tambah_Sasaran($id_rpjmd, $id_opd);
|
||||
|
||||
} else if ( $data == "kode-ubah-sasar" ) {
|
||||
$ajson = Ren_Ubah_Sasaran($id_rpjmd, $id_opd);
|
||||
|
||||
} else if ( $data == "kode-tambah-indi" ) {
|
||||
$ajson = Ren_Tambah_Indi($id_rpjmd, $id_opd);
|
||||
|
||||
} else if ( $data == "kode-ubah-indi" ) {
|
||||
$ajson = Ren_Ubah_Indi($id_rpjmd, $id_opd);
|
||||
|
||||
} else if ( $data == "upload-json" || $data == "simpan-json" ) {
|
||||
$ajson['result'] = 0;
|
||||
|
||||
if ($data == "upload-json") {
|
||||
$adata = json_decode(file_get_contents($_FILES['file']['tmp_name']), true);
|
||||
} else {
|
||||
$adata = json_decode(stripslashes(Param::Get("Kode_JSON", "{}")), true);
|
||||
}
|
||||
$db->Query("TRUNCATE sipd_renstra_sasar");
|
||||
foreach ($adata['data'] as $arec) {
|
||||
$txt_sasar = explode("||", $arec['sasaran_teks']);
|
||||
$db->Query("INSERT INTO sipd_renstra_sasar (BUID,ID_UNIT,UNIK_SASAR,UNIK_INDI,Txt_Sasaran,Txt_Indi) VALUES ('".$arec['id_bidang_urusan']."','".$arec['id_unit']."','".$arec['id_unik']."','".$arec['id_unik_indikator']."','".$txt_sasar[0]."','".$arec['indikator_teks']."')");
|
||||
}
|
||||
|
||||
$db->Query("UPDATE sipd_renstra_sasar 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_sasaran SET SIPD_UNIK='' WHERE RPJMDID='".$id_rpjmd."'");
|
||||
//$db->Query("UPDATE renstra_sasaran_indi SET SIPD_UNIK='' WHERE RPJMDID='".$id_rpjmd."'");
|
||||
$db->Query("UPDATE renstra_sasaran A,sipd_renstra_sasar B,renstra_tujuan C SET A.SIPD_UNIK=B.UNIK_SASAR WHERE A.RPJMDID='".$id_rpjmd."' AND A.RA_TUJID=C.RA_TUJID AND C.BUID=B.BUID AND A.OPDID=B.OPDID AND TRIM(REPLACE(REPLACE(A.Txt_Sasaran,'\r',''),'\n',''))=TRIM(B.Txt_Sasaran)");
|
||||
$db->Query("UPDATE renstra_sasaran_indi A,sipd_renstra_sasar B SET A.SIPD_UNIK=B.UNIK_INDI WHERE A.RPJMDID='".$id_rpjmd."' AND A.OPDID=B.OPDID AND TRIM(REPLACE(REPLACE(A.Txt_Indi,'\r',''),'\n',''))=TRIM(B.Txt_Indi)");
|
||||
|
||||
$ajson['result'] = 1;
|
||||
|
||||
} else if ( $data == "detail-sipd" ) {
|
||||
$form = new Form($db);
|
||||
$kode_token = $form->textbox("_", "Kode_Token", $_SESSION['__WEB_USER']['SIPD_TOKEN'], true, true, "text");
|
||||
$kode_acak = $form->textbox("_", "Kode_Acak", $_SESSION['__WEB_USER']['SIPD_ACAK'], true, true, "text");
|
||||
echo '
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-3 col-form-label" for="Kode_Token">Token</label>
|
||||
<div class="col">'.$kode_token.'</div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-3 col-form-label" for="Kode_Acak">Acak</label>
|
||||
<div class="col">'.$kode_acak.'</div>
|
||||
</div>';
|
||||
exit;
|
||||
} else if ( $data == "simpan-sipd" ) {
|
||||
$_SESSION['__WEB_USER']['SIPD_TOKEN'] = Param::Get("Kode_Token", "KODE_TOKEN");
|
||||
$_SESSION['__WEB_USER']['SIPD_ACAK'] = Param::Get("Kode_Acak", "KODE_ACAK");
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Push Sasaran Renstra ke SIPD Kemendagri</div><div class="card-body">
|
||||
<div class="row mb-1">
|
||||
<div class="col-md-9 col-sm-12"><div class="input-group"><input class="form-control" id="Cari_OPD" placeholder="Kunci Pencarian" type="text"><button class="btn btn-info shadow-none" type="button" id="butSearch">Cari</button><button class="btn btn-secondary shadow-none" type="button" id="butAll">Semua</button></div></div>
|
||||
<div class="col-md-3 col-sm-12 mt-2 mt-sm-0 d-flex justify-content-between">
|
||||
<div class="dropdown">
|
||||
<button class="btn btn-secondary shadow-none dropdown-toggle" type="button" id="dropdownMenuButton" data-coreui-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Opsi Semua Data</button>
|
||||
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
|
||||
<a class="dropdown-item" href="#" id="opsiUpload">Upload JSON</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" id="opsiTambahSasar">Tambah Sasaran</a>
|
||||
<a class="dropdown-item" href="#" id="opsiUbahSasar">Ubah Sasaran</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" id="opsiTambahIndi">Tambah Indikator</a>
|
||||
<a class="dropdown-item" href="#" id="opsiUbahIndi">Ubah Indikator</a>
|
||||
</div>
|
||||
</div>
|
||||
<button class="btn btn-secondary shadow-none" type="button" id="butSIPD">Setup SIPD</button>
|
||||
</div>
|
||||
</div>
|
||||
<input id="OPDID" type="hidden">
|
||||
<div id="divOPD"> </div>
|
||||
</div></div>
|
||||
</div>';
|
||||
exit;
|
||||
}
|
||||
|
||||
send_json($ajson, true);
|
||||
?>
|
||||
@@ -0,0 +1,183 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/php/sim/renstra_tujuan.php
|
||||
Desc. : PHP - Simulasi Tujuan Renstra ke SIPD Kemendagri
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : March 30th, 2022.
|
||||
|
||||
(c) 2011 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
require_once(__DIR__."/../func.sippd.php");
|
||||
|
||||
use siaupheng\fonia4\DB\MySQL;
|
||||
use siaupheng\fonia4\DB\SQL;
|
||||
use siaupheng\fonia4\Web\Param;
|
||||
use siaupheng\fonia4\Web\Table;
|
||||
use siaupheng\fonia4\Web\Form;
|
||||
|
||||
function Ren_Tambah_Tujuan($id_rpjmd=0, $id_opd=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
$tsql = ($id_opd == 0) ? "" : " AND OPDID='".$id_opd."'";
|
||||
$db->Query("SELECT A.*,RS.SIPD_UNIK SIPD_RPJMD_SASARAN,O.SIPD_OPD FROM (SELECT * FROM renstra_tujuan WHERE RPJMDID='".$id_rpjmd."'".$tsql." AND SIPD_UNIK='') A LEFT JOIN rpjmd_sasaran RS ON (RS.RD_SASARID=A.RD_SASARID) LEFT JOIN para90_opd O ON (O.OPDID=A.OPDID)");
|
||||
while ($db->Next()) {
|
||||
$test = "kamus=tujuan&aksi=tambah_kamus&id_opd_renstra=".$db->Row("SIPD_OPD")."&opd_renstra=".$db->Row("SIPD_OPD")."&id_bidur_renstra=&urusan_renstra=".$db->Row("BUID")."&kode_sasaran_rpjm=&sasaran_rpjm=".$db->Row("SIPD_RPJMD_SASARAN")."&kode_tujuan=&tujuan_teks=".str_replace(" ","+",$db->Row("Txt_Tujuan"))."&tujuan_renstra=&tujuan_no=".$db->Row("No_Tujuan");
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
$ahasil[] = "\$('#tab-bar-tujuan').trigger('click');";
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function Ren_Ubah_Tujuan($id_rpjmd=0, $id_opd=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
$tsql = ($id_opd == 0) ? "" : " AND OPDID='".$id_opd."'";
|
||||
$db->Query("SELECT A.*,RS.SIPD_UNIK SIPD_RPJMD_SASARAN,O.SIPD_OPD FROM (SELECT * FROM renstra_tujuan WHERE RPJMDID='".$id_rpjmd."'".$tsql." AND SIPD_UNIK<>'') A LEFT JOIN rpjmd_sasaran RS ON (RS.RD_SASARID=A.RD_SASARID) LEFT JOIN para90_opd O ON (O.OPDID=A.OPDID)");
|
||||
while ($db->Next()) {
|
||||
$test = "kamus=tujuan&aksi=ubah_kamus&id_opd_renstra=".$db->Row("SIPD_OPD")."&id_bidur_renstra=".$db->Row("BUID")."&urusan_renstra=".$db->Row("BUID")."&kode_sasaran_rpjm=".$db->Row("SIPD_RPJMD_SASARAN")."&sasaran_rpjm=".$db->Row("SIPD_RPJMD_SASARAN")."&kode_tujuan=".$db->Row("SIPD_UNIK")."&tujuan_teks=".str_replace(" ","+",$db->Row("Txt_Tujuan"))."&tujuan_renstra=&tujuan_no=".$db->Row("No_Tujuan");
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
$ahasil[] = "\$('#tab-bar-tujuan').trigger('click');";
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function Ren_Tambah_Indi($id_rpjmd=0, $id_opd=0) {//
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function Ren_Ubah_Indi($id_rpjmd=0, $id_opd=0) {//
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
/************************** RESPON HERE ***************************/
|
||||
|
||||
$db = $db ?? new MySQL();
|
||||
$ajson = array();
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_rpjmd = $_SESSION['__WEB_APP']['RENC_RPJMDID'];
|
||||
$id_opd = Param::Get("OPDID", 0);
|
||||
|
||||
if ( $data == "detail-opd" ) {
|
||||
$tcari = trim(Param::Get("Cari_OPD"));
|
||||
$qsql = "RPJMDID='".$id_rpjmd."'";
|
||||
$msql = "M.Aktif=1";
|
||||
$msql .= ($tcari=="") ? "" : " AND CONCAT(M.K_OPD,M.N_OPD) LIKE '%".$tcari."%'";
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT K.*,M.OPDID OPDID2,M.K_OPD,M.N_OPD,CONCAT(IFNULL(K.ITEM_UDAH,0),' / ',IFNULL(K.ITEM_SEMUA,0)) Stat_Master,IF(IFNULL(K.ITEM_UDAH,0)=IFNULL(K.ITEM_SEMUA,0),1,0) IDO FROM vi_para90_opd M LEFT JOIN (SELECT OPDID,COUNT(*) ITEM_SEMUA,SUM(IF(SIPD_UNIK='',0,1)) ITEM_UDAH FROM renstra_tujuan WHERE ".$qsql." GROUP BY OPDID) K ON (K.OPDID=M.OPDID) WHERE ".$msql);
|
||||
$obj->add_field("OPDID2", "OPD", "hid");
|
||||
$obj->add_field("K_OPD", "Kode", "c");
|
||||
$obj->add_field("N_OPD", "Nama Perangkat Daerah", "awr");
|
||||
$obj->add_field("Stat_Master", "Tujuan", "c");
|
||||
$obj->add_field("Stat_Indi", "Indikator", "c");
|
||||
$obj->set_field_order("K_OPD", "A");
|
||||
$obj->set_row_color("IDO", "1", "rsuccess");
|
||||
$obj->add_row_btn("send", "+ Tujuan", "RenstraTujuanJS.kode_tambah_tuj");
|
||||
$obj->add_row_btn("send0", "= Tujuan", "RenstraTujuanJS.kode_ubah_tuj");
|
||||
$obj->add_row_btn("document", "+ Indikator", "RenstraTujuanJS.kode_tambah_indi");
|
||||
$obj->add_row_btn("document0", "= Indikator", "RenstraTujuanJS.kode_ubah_indi");
|
||||
$obj->set_func_navi("RenstraTujuanJS.data_query('detail-opd')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divOPD");
|
||||
|
||||
} else if ( $data == "kode-tambah-tuj" ) {
|
||||
$ajson = Ren_Tambah_Tujuan($id_rpjmd, $id_opd);
|
||||
|
||||
} else if ( $data == "kode-ubah-tuj" ) {
|
||||
$ajson = Ren_Ubah_Tujuan($id_rpjmd, $id_opd);
|
||||
|
||||
} else if ( $data == "kode-tambah-indi" ) {
|
||||
$ajson = Ren_Tambah_Indi($id_rpjmd, $id_opd);
|
||||
|
||||
} else if ( $data == "kode-ubah-indi" ) {
|
||||
$ajson = Ren_Ubah_Indi($id_rpjmd, $id_opd);
|
||||
|
||||
} else if ( $data == "upload-json" || $data == "simpan-json" ) {
|
||||
$ajson['result'] = 0;
|
||||
|
||||
if ($data == "upload-json") {
|
||||
$adata = json_decode(file_get_contents($_FILES['file']['tmp_name']), true);
|
||||
} else {
|
||||
$adata = json_decode(stripslashes(Param::Get("Kode_JSON", "{}")), 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 SET SIPD_UNIK='' WHERE RPJMDID='".$id_rpjmd."'");
|
||||
$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 == "detail-sipd" ) {
|
||||
$form = new Form($db);
|
||||
$kode_token = $form->textbox("_", "Kode_Token", $_SESSION['__WEB_USER']['SIPD_TOKEN'], true, true, "text");
|
||||
$kode_acak = $form->textbox("_", "Kode_Acak", $_SESSION['__WEB_USER']['SIPD_ACAK'], true, true, "text");
|
||||
echo '
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-3 col-form-label" for="Kode_Token">Token</label>
|
||||
<div class="col">'.$kode_token.'</div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-3 col-form-label" for="Kode_Acak">Acak</label>
|
||||
<div class="col">'.$kode_acak.'</div>
|
||||
</div>';
|
||||
exit;
|
||||
} else if ( $data == "simpan-sipd" ) {
|
||||
$_SESSION['__WEB_USER']['SIPD_TOKEN'] = Param::Get("Kode_Token", "KODE_TOKEN");
|
||||
$_SESSION['__WEB_USER']['SIPD_ACAK'] = Param::Get("Kode_Acak", "KODE_ACAK");
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Push Tujuan Renstra ke SIPD Kemendagri</div><div class="card-body">
|
||||
<div class="row mb-1">
|
||||
<div class="col-md-9 col-sm-12"><div class="input-group"><input class="form-control" id="Cari_OPD" placeholder="Kunci Pencarian" type="text"><button class="btn btn-info shadow-none" type="button" id="butSearch">Cari</button><button class="btn btn-secondary shadow-none" type="button" id="butAll">Semua</button></div></div>
|
||||
<div class="col-md-3 col-sm-12 mt-2 mt-sm-0 d-flex justify-content-between">
|
||||
<div class="dropdown">
|
||||
<button class="btn btn-secondary shadow-none dropdown-toggle" type="button" id="dropdownMenuButton" data-coreui-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Opsi Semua Data</button>
|
||||
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
|
||||
<a class="dropdown-item" href="#" id="opsiUpload">Upload JSON</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" id="opsiTambahTuj">Tambah Tujuan</a>
|
||||
<a class="dropdown-item" href="#" id="opsiUbahTuj">Ubah Tujuan</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" id="opsiTambahIndi">Tambah Indikator</a>
|
||||
<a class="dropdown-item" href="#" id="opsiUbahIndi">Ubah Indikator</a>
|
||||
</div>
|
||||
</div>
|
||||
<button class="btn btn-secondary shadow-none" type="button" id="butSIPD">Setup SIPD</button>
|
||||
</div>
|
||||
</div>
|
||||
<input id="OPDID" type="hidden">
|
||||
<div id="divOPD"> </div>
|
||||
</div></div>
|
||||
</div>';
|
||||
exit;
|
||||
}
|
||||
|
||||
send_json($ajson, true);
|
||||
?>
|
||||
@@ -0,0 +1,226 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/php/sim/rkpd_awal.php
|
||||
Desc. : PHP - Simulasi Push RKPD Awal ke SIPD Kemendagri
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : March 19th, 2021.
|
||||
Last Modified : April 1st, 2022.
|
||||
|
||||
(c) 2021 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
require_once(__DIR__."/../func.sippd.php");
|
||||
|
||||
use siaupheng\fonia4\DB\MySQL;
|
||||
use siaupheng\fonia4\DB\SQL;
|
||||
use siaupheng\fonia4\Web\Param;
|
||||
use siaupheng\fonia4\Web\Table;
|
||||
use siaupheng\fonia4\Web\Form;
|
||||
|
||||
function Ranwal_Tambah_Sub($tahun=0, $id_opd=0, $id_prog=0) {
|
||||
global $db;
|
||||
$ahasil = array(); $aopd = array();
|
||||
$db->Query("SELECT O.SIPD_OPD,O.SIPD_Unit,B.BUID FROM (SELECT * FROM para90_opd WHERE OPDID='".$id_opd."' LIMIT 1) O LEFT JOIN para90_bidu B ON (B.K_Bidu=O.K_Bidu1)");
|
||||
if ($db->Next()) $aopd = $db->AllRow();
|
||||
|
||||
$tsql = ($id_opd == 0) ? "" : " AND OPDID='".$id_opd."'";
|
||||
$tsql .= ($id_prog == 0) ? "" : " AND ProgID='".$id_prog."'";
|
||||
$db->Query("SELECT R.SIPD_BL,R.SIPD_SBL,S.*,R.Pagu_Ini,R.Pagu_Dpn,I.* FROM (SELECT * FROM renja90_awal_sub WHERE Tahun='".$tahun."' AND OPDID='".$id_opd."'".$tsql." AND SIPD_SBL='') R LEFT JOIN (SELECT A1.RA_SUBID,CONCAT('&suboutput[]=',GROUP_CONCAT(A1.Txt_Indi ORDER BY A1.K_Indi SEPARATOR '&suboutput[]=')) Indi_Sub,CONCAT('&targetsuboutput[]=',GROUP_CONCAT(REPLACE(A1.Indi_Ini,',','') ORDER BY A1.K_Indi SEPARATOR '&targetsuboutput[]=')) Indi_Target,CONCAT('&satuansuboutput[]=',GROUP_CONCAT(A2.K_Satuan ORDER BY A1.K_Indi SEPARATOR '&satuansuboutput[]=')) Indi_Satuan,SUM(IF(DanaID<>2,Pagu_Ini,0)) Dana_DAU,SUM(IF(DanaID=2,Pagu_Ini,0)) Dana_DAK FROM (SELECT * FROM renja90_awal_sub_indi WHERE Tahun='".$tahun."' AND OPDID='".$id_opd."'".$tsql.") A1 LEFT JOIN para_satuan A2 ON (A2.SatuanID=A1.SatuanID) GROUP BY RA_SUBID) I ON (I.RA_SUBID=R.RA_SUBID) LEFT JOIN (SELECT ProgID,KegID,SubID,BUID,Lama_SubID FROM para90_sipd GROUP BY Lama_SubID) S ON (S.Lama_SubID=R.SubID) ORDER BY R.K_Sub");
|
||||
while ($db->Next()) {
|
||||
$test = "kode_bl=&kode_sbl=&id_skpd=&id_sub_skpd=&id_unik=&is_add_sub=1&sub_skpd=".$aopd['SIPD_Unit']."&label_prov=&label_kokab=&sub_giat=".$db->Row("SubID")."&bidang_urusan_rutin=".($db->Row("BUID")==104?$aopd['BUID']:"")."&tagging[]=0&id_tag_sub[]=&lokasi=553&waktumulai=1&waktuselesai=12&pagu_sub_giat=".$db->Row("Pagu_Ini")."&pagu_next_sub_giat=".$db->Row("Pagu_Dpn")."&output_sub_giat=".$db->Row("Indi_Sub").$db->Row("Indi_Target").$db->Row("Indi_Satuan");
|
||||
if ($db->RowFloat("Dana_DAK", 0) > 0) $test .= "&dana[]=420&id_dana_sub[]=&pagu_dana[]=".$db->Row("Dana_DAK");
|
||||
if ($db->RowFloat("Dana_DAK", 0) == 0) $test .= "&dana[]=334&id_dana_sub[]=&pagu_dana[]=".$db->Row("Dana_DAU");
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru17,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function Ranwal_Ubah_Sub($tahun=0, $id_opd=0, $id_prog=0) {
|
||||
global $db;
|
||||
$ahasil = array(); $aopd = array();
|
||||
$db->Query("SELECT O.SIPD_OPD,O.SIPD_Unit,B.BUID FROM (SELECT * FROM para90_opd WHERE OPDID='".$id_opd."' LIMIT 1) O LEFT JOIN para90_bidu B ON (B.K_Bidu=O.K_Bidu1)");
|
||||
if ($db->Next()) $aopd = $db->AllRow();
|
||||
|
||||
$tsql = ($id_opd == 0) ? "" : " AND OPDID='".$id_opd."'";
|
||||
$tsql .= ($id_prog == 0) ? "" : " AND ProgID='".$id_prog."'";
|
||||
$db->Query("SELECT R.SIPD_BL,R.SIPD_SBL,S.*,R.Pagu_Ini,R.Pagu_Dpn,I.* FROM (SELECT * FROM renja90_awal_sub WHERE Tahun='".$tahun."' AND OPDID='".$id_opd."'".$tsql." AND SIPD_SBL<>'') R LEFT JOIN (SELECT A1.RA_SUBID,CONCAT('&suboutput[]=',GROUP_CONCAT(A1.Txt_Indi ORDER BY A1.K_Indi SEPARATOR '&suboutput[]=')) Indi_Sub,CONCAT('&targetsuboutput[]=',GROUP_CONCAT(REPLACE(A1.Indi_Ini,',','') ORDER BY A1.K_Indi SEPARATOR '&targetsuboutput[]=')) Indi_Target,CONCAT('&satuansuboutput[]=',GROUP_CONCAT(A2.K_Satuan ORDER BY A1.K_Indi SEPARATOR '&satuansuboutput[]=')) Indi_Satuan,SUM(IF(DanaID<>2,Pagu_Ini,0)) Dana_DAU,SUM(IF(DanaID=2,Pagu_Ini,0)) Dana_DAK FROM (SELECT * FROM renja90_awal_sub_indi WHERE Tahun='".$tahun."' AND OPDID='".$id_opd."'".$tsql.") A1 LEFT JOIN para_satuan A2 ON (A2.SatuanID=A1.SatuanID) GROUP BY RA_SUBID) I ON (I.RA_SUBID=R.RA_SUBID) LEFT JOIN (SELECT ProgID,KegID,SubID,BUID,Lama_SubID FROM para90_sipd GROUP BY Lama_SubID) S ON (S.Lama_SubID=R.SubID) ORDER BY R.K_Sub");
|
||||
while ($db->Next()) {
|
||||
$test = "kode_bl=".$db->Row("SIPD_BL")."&kode_sbl=".$db->Row("SIPD_SBL")."&id_skpd=&id_sub_skpd=&id_unik=&is_add_sub=1&sub_skpd=".$aopd['SIPD_Unit']."&label_prov=&label_kokab=&sub_giat=".$db->Row("SubID")."&bidang_urusan_rutin=".($db->Row("BUID")==104?$aopd['BUID']:"")."&tagging[]=0&id_tag_sub[]=&lokasi=553&waktumulai=1&waktuselesai=12&pagu_sub_giat=".$db->Row("Pagu_Ini")."&pagu_next_sub_giat=".$db->Row("Pagu_Dpn")."&output_sub_giat=".$db->Row("Indi_Sub").$db->Row("Indi_Target").$db->Row("Indi_Satuan");
|
||||
if ($db->RowFloat("Dana_DAK", 0) > 0) $test .= "&dana[]=420&id_dana_sub[]=&pagu_dana[]=".$db->Row("Dana_DAK");
|
||||
if ($db->RowFloat("Dana_DAK", 0) == 0) $test .= "&dana[]=334&id_dana_sub[]=&pagu_dana[]=".$db->Row("Dana_DAU");
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru17,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function Ranwal_Ubah_Keg($tahun=0, $id_opd=0, $id_prog=0) {
|
||||
global $db; $db2 = new MySQL();
|
||||
$ahasil = array(); $aopd = array();
|
||||
$db->Query("SELECT O.SIPD_OPD,O.SIPD_Unit,B.BUID FROM (SELECT * FROM para90_opd WHERE OPDID='".$id_opd."' LIMIT 1) O LEFT JOIN para90_bidu B ON (B.K_Bidu=O.K_Bidu1)");
|
||||
if ($db->Next()) $aopd = $db->AllRow();
|
||||
|
||||
$tsql = ($id_opd == 0) ? "" : " AND OPDID='".$id_opd."'";
|
||||
$tsql .= ($id_prog == 0) ? "" : " AND ProgID='".$id_prog."'";
|
||||
$db->Query("SELECT R.*,SH.N_Satuan Satuan_Hasil,SK.N_Satuan Satuan_Keluar FROM (SELECT * FROM renja90_awal_keg WHERE Tahun='".$tahun."'".$tsql." AND SIPD_BL<>'') R LEFT JOIN para_satuan SK ON (SK.SatuanID=R.Keluar_SatuanID) LEFT JOIN para_satuan SH ON (SH.SatuanID=R.Hasil_SatuanID) ORDER BY R.K_Keg");
|
||||
while ($db->Next()) {
|
||||
$adata = $db->AllRow();
|
||||
$db2->Query("SELECT CONCAT('&outcometeks[]=',GROUP_CONCAT(A1.Txt_Indi ORDER BY A1.RA_PROGINDIID SEPARATOR '&outcometeks[]=')) Indi_Prog,CONCAT('&targetoutcome[]=',GROUP_CONCAT(REPLACE(A1.Indi_T4,',','') ORDER BY A1.RA_PROGINDIID SEPARATOR '&targetoutcome[]=')) Indi_Target,CONCAT('&satuanoutcome[]=',GROUP_CONCAT(A2.K_Satuan ORDER BY A1.RA_PROGINDIID SEPARATOR '&satuanoutcome[]=')) Indi_Satuan FROM (SELECT * FROM renstra_prog_indi WHERE RA_PROGINDIID IN (".($adata['A_PROGINDI']??"0").")) A1 LEFT JOIN para_satuan A2 ON (A2.SatuanID=A1.SatuanID)");
|
||||
if ($db2->Next()) $adata = array_merge($adata, $db2->AllRow());
|
||||
|
||||
$test = "kode_bl=".$adata['SIPD_BL']."&kode_sbl=0&id_skpd=".$aopd['SIPD_OPD']."&id_sub_skpd=".$aopd['SIPD_Unit']."&id_unik=0&is_add_sub=0".$adata['Indi_Prog'].$adata['Indi_Target'].$adata['Indi_Satuan']."&id_capaian[]=&indikator_outcome_teks=&target_outcome_teks=&satuan_target_outcome=&sasaran=".$adata['Sasaran']."&label_prov=&label_kokab=&label_iku=&label_giat=&output[]=".($adata['Keluar_Txt']??$adata['Hasil_Txt'])."&targetoutput[]=".($adata['Keluar_Target']??$adata['Hasil_Target'])."&satuanoutput[]=".($adata['Satuan_Keluar']??$adata['Satuan_Hasil'])."&hasil[]=".$adata['Hasil_Txt']."&targethasil[]=".$adata['Hasil_Target']."&satuanhasil[]=".$adata['Satuan_Hasil']."&sub_giat=&bidang_urusan_rutin=&lokasi=&waktumulai=&waktuselesai=&pagu_next_sub_giat=&output_sub_giat=";
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru17,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
/************************** RESPON HERE ***************************/
|
||||
|
||||
$db = $db ?? new MySQL();
|
||||
$ajson = array();
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$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);
|
||||
|
||||
if ( $data == "tabel-opd" || $data == "tabel-prog" ) {
|
||||
$qsql = "Tahun='".$thn_renja."'";
|
||||
$msql = "M.Aktif=1";
|
||||
if ( $data == "tabel-prog" ) {
|
||||
$qsql .= " AND OPDID='".$id_opd."'";
|
||||
}
|
||||
}
|
||||
|
||||
if ( $data == "tabel-opd" ) {
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT M.OPDID OPDID2,M.K_OPD,M.N_OPD,M.Nama_OPD,CONCAT(K.ITEM_UDAH,' / ',K.ITEM_SEMUA) Status_Sub,CONCAT(KK.ITEMK_UDAH,' / ',KK.ITEMK_SEMUA) Status_Keg,IF(IFNULL(K.ITEM_UDAH,0)=IFNULL(K.ITEM_SEMUA,0),1,0) IDO FROM vi_para90_opd M LEFT JOIN (SELECT OPDID,COUNT(*) ITEM_SEMUA,SUM(IF(SIPD_SBL='',0,1)) ITEM_UDAH FROM renja90_awal_sub WHERE ".$qsql." GROUP BY OPDID) K ON (K.OPDID=M.OPDID) LEFT JOIN (SELECT OPDID,COUNT(*) ITEMK_SEMUA,SUM(IF(SIPD_BL='',0,1)) ITEMK_UDAH FROM renja90_awal_keg WHERE ".$qsql." GROUP BY OPDID) KK ON (KK.OPDID=M.OPDID) WHERE ".$msql);
|
||||
$obj->add_field("OPDID2", "OPD", "hid");
|
||||
$obj->add_field("Nama_OPD", "N_OPD", "hid");
|
||||
$obj->add_field("K_OPD", "Kode", "c");
|
||||
$obj->add_field("N_OPD", "Nama Perangkat Daerah", "awr");
|
||||
$obj->add_field("Status_Keg", "Keg", "c");
|
||||
$obj->add_field("Status_Sub", "Sub", "c");
|
||||
$obj->set_field_order("K_OPD", "A");
|
||||
$obj->set_row_color("IDO", "1", "rsuccess");
|
||||
$obj->add_row_btn("send", "+ Sub", "RKPDAwalJS.kode_tambah_sub_o");
|
||||
$obj->add_row_btn("send0", "= Sub", "RKPDAwalJS.kode_ubah_sub_o");
|
||||
$obj->add_row_btn("send1", "= Keg", "RKPDAwalJS.kode_ubah_keg_o");
|
||||
$obj->add_row_btn("select", "Program", "RKPDAwalJS.opd_select");
|
||||
$obj->set_func_navi("RKPDAwalJS.data_query('detail-opd')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divOPD");
|
||||
|
||||
} else if ( $data == "tabel-prog" ) {
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT PR.ProgID,PR.K_Prog,M.N_Prog,CONCAT('(',PR.K_Prog,') ',M.N_Prog) Nama_Prog,CONCAT(K.ITEM_UDAH,' / ',K.ITEM_SEMUA) Status_Sub,CONCAT(KK.ITEMK_UDAH,' / ',KK.ITEMK_SEMUA) Status_Keg,IF(IFNULL(K.ITEM_UDAH,0)=IFNULL(K.ITEM_SEMUA,0),1,0) IDO FROM (SELECT * FROM renja90_awal_prog WHERE ".$qsql.") PR LEFT JOIN para90_prog M ON (PR.ProgID=M.ProgID) LEFT JOIN (SELECT ProgID,COUNT(*) ITEM_SEMUA,SUM(IF(SIPD_SBL='',0,1)) ITEM_UDAH FROM renja90_awal_sub WHERE ".$qsql." GROUP BY ProgID) K ON (PR.ProgID=K.ProgID) LEFT JOIN (SELECT ProgID,COUNT(*) ITEMK_SEMUA,SUM(IF(SIPD_BL='',0,1)) ITEMK_UDAH FROM renja90_awal_keg WHERE ".$qsql." GROUP BY ProgID) KK ON (PR.ProgID=KK.ProgID)");
|
||||
$obj->add_field("ProgID", "ID", "hid");
|
||||
$obj->add_field("Nama_Prog", "Nama PROG", "hid");
|
||||
$obj->add_field("K_Prog", "Kode", "c");
|
||||
$obj->add_field("N_Prog", "Nama Program", "awr");
|
||||
$obj->add_field("Status_Keg", "Keg", "c");
|
||||
$obj->add_field("Status_Sub", "Sub", "c");
|
||||
$obj->set_field_order("K_Prog", "A");
|
||||
$obj->set_row_color("IDO", "1", "rsuccess");
|
||||
$obj->add_row_btn("send", "+ Sub", "RKPDAwalJS.kode_tambah_sub");
|
||||
$obj->add_row_btn("send0", "= Sub", "RKPDAwalJS.kode_ubah_sub");
|
||||
$obj->add_row_btn("send1", "= Keg", "RKPDAwalJS.kode_ubah_keg");
|
||||
$obj->set_func_navi("RKPDAwalJS.data_query('tabel-prog')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divPROG");
|
||||
|
||||
} else if ( $data == "kode-tambah-sub" ) {
|
||||
$ajson = Ranwal_Tambah_Sub($thn_renja, $id_opd, $id_prog);
|
||||
|
||||
} else if ( $data == "kode-ubah-sub" ) {
|
||||
$ajson = Ranwal_Ubah_Sub($thn_renja, $id_opd, $id_prog);
|
||||
|
||||
} else if ( $data == "kode-ubah-keg" ) {
|
||||
$ajson = Ranwal_Ubah_Keg($thn_renja, $id_opd, $id_prog);
|
||||
|
||||
} else if ( $data == "upload-json" || $data == "simpan-json" ) {
|
||||
$ajson['result'] = 0;
|
||||
|
||||
if ($data == "upload-json") {
|
||||
$adata = json_decode(file_get_contents($_FILES['file']['tmp_name']), true);
|
||||
} else {
|
||||
$adata = json_decode(stripslashes(Param::Get("Kode_JSON", "{}")), true);
|
||||
}
|
||||
$db->Query("TRUNCATE sipd_rkpd_sub");
|
||||
foreach ($adata['data'] as $arec) {
|
||||
$db->Query("INSERT INTO sipd_rkpd_sub (ID_SUB,ID_UNIT,SIPD_BL,SIPD_SBL) VALUES ('".$arec['id_sub_giat']."','".$arec['id_unit']."','".$arec['kode_bl']."','".$arec['kode_sbl']."')");
|
||||
}
|
||||
|
||||
$db->Query("UPDATE sipd_rkpd_sub A,para90_sub B SET A.SubID=B.SubID,A.KegID=B.KegID,A.ProgID=B.ProgID WHERE A.ID_SUB=B.SubID");
|
||||
$db->Query("UPDATE sipd_rkpd_sub A,para90_sipd B SET A.SubID=B.Lama_SubID,A.KegID=B.Lama_KegID,A.ProgID=B.Lama_ProgID WHERE A.ID_SUB=B.SubID AND A.SubID=0");
|
||||
$db->Query("UPDATE sipd_rkpd_sub A,para90_opd B SET A.OPDID=B.OPDID WHERE A.ID_UNIT=B.SIPD_UNIT AND A.ID_UNIT>0");
|
||||
|
||||
//$db->Query("UPDATE renja90_awal_sub SET SIPD_BL='',SIPD_SBL='' WHERE Tahun='".$thn_renja."'");
|
||||
$db->Query("UPDATE renja90_awal_sub A,sipd_rkpd_sub B SET A.SIPD_BL=B.SIPD_BL,A.SIPD_SBL=B.SIPD_SBL WHERE A.Tahun='".$thn_renja."' AND A.SubID=B.SubID AND A.KegID=B.KegID AND A.ProgID=B.ProgID AND A.OPDID=B.OPDID");
|
||||
$db->Query("UPDATE renja90_awal_keg A,sipd_rkpd_sub B SET A.SIPD_BL=B.SIPD_BL WHERE A.Tahun='".$thn_renja."' AND A.KegID=B.KegID AND A.ProgID=B.ProgID AND A.OPDID=B.OPDID");
|
||||
|
||||
$ajson['result'] = 1;
|
||||
|
||||
} else if ( $data == "detail-sipd" ) {
|
||||
$form = new Form($db);
|
||||
$kode_token = $form->textbox("_", "Kode_Token", $_SESSION['__WEB_USER']['SIPD_TOKEN'], true, true, "text");
|
||||
$kode_acak = $form->textbox("_", "Kode_Acak", $_SESSION['__WEB_USER']['SIPD_ACAK'], true, true, "text");
|
||||
echo '
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-3 col-form-label" for="Kode_Token">Token</label>
|
||||
<div class="col">'.$kode_token.'</div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-3 col-form-label" for="Kode_Acak">Acak</label>
|
||||
<div class="col">'.$kode_acak.'</div>
|
||||
</div>';
|
||||
exit;
|
||||
} else if ( $data == "simpan-sipd" ) {
|
||||
$_SESSION['__WEB_USER']['SIPD_TOKEN'] = Param::Get("Kode_Token", "KODE_TOKEN");
|
||||
$_SESSION['__WEB_USER']['SIPD_ACAK'] = Param::Get("Kode_Acak", "KODE_ACAK");
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Push Renja Awal ke SIPD Kemendagri</div><div class="card-body">
|
||||
<div class="row mb-1">
|
||||
<div class="col-md-9 col-sm-12">
|
||||
<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-ganti" type="button" id="butOPD"><span><i class="icon cui-swap-horizontal"></span></i>OPD</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-3 col-sm-12 mt-2 mt-sm-0 d-flex justify-content-between">
|
||||
<div class="dropdown">
|
||||
<button class="btn btn-secondary shadow-none dropdown-toggle" type="button" id="dropdownMenuButton" data-coreui-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Opsi Semua Data</button>
|
||||
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
|
||||
<a class="dropdown-item" href="#" id="opsiUpload">Upload JSON</a>
|
||||
<!--<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" id="opsiTambahSub">Tambah Sub Kegiatan</a>
|
||||
<a class="dropdown-item" href="#" id="opsiUbahSub">Ubah Sub Kegiatan</a>-->
|
||||
</div>
|
||||
</div>
|
||||
<button class="btn btn-secondary shadow-none" type="button" id="butSIPD">Setup SIPD</button>
|
||||
</div>
|
||||
</div>
|
||||
<input id="ProgID" type="hidden" value="0">
|
||||
<div id="divOPD"> </div>
|
||||
<div id="divPROG"> </div>
|
||||
</div></div>
|
||||
</div>';
|
||||
exit;
|
||||
}
|
||||
|
||||
send_json($ajson, true);
|
||||
?>
|
||||
@@ -0,0 +1,244 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/php/sim/rpjmd_program.php
|
||||
Desc. : PHP - Simulasi Program RPJMD ke SIPD Kemendagri
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : March 30th, 2022.
|
||||
|
||||
(c) 2011 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
require_once(__DIR__."/../func.sippd.php");
|
||||
|
||||
use siaupheng\fonia4\DB\MySQL;
|
||||
use siaupheng\fonia4\DB\SQL;
|
||||
use siaupheng\fonia4\Web\Param;
|
||||
use siaupheng\fonia4\Web\Table;
|
||||
use siaupheng\fonia4\Web\Form;
|
||||
|
||||
function RP_Tambah_Program($id_rpjmd=0, $id_opd=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
$prog_banyak = "0";
|
||||
$db->Query("SELECT GROUP_CONCAT(ProgID) PROGBYK FROM (SELECT ProgID,COUNT(*) Item FROM renstra_prog_indi WHERE RPJMDID='".$id_rpjmd."' GROUP BY ProgID) C WHERE C.Item>1");
|
||||
if($db->Next()) $prog_banyak = $db->Row("PROGBYK", "0");
|
||||
|
||||
$tsql = ($id_opd == 0) ? "" : " AND OPDID='".$id_opd."'";
|
||||
// program single opd
|
||||
$db->Query("SELECT AP.*,RS.SIPD_UNIK SIPD_SASARAN,RT.SIPD_UNIK SIPD_TUJUAN,RM.SIPD_MISI,S.BUID SIPD_BIDU,S.ProgID ID_PROGRAM FROM (SELECT * FROM renstra_prog WHERE RPJMDID='".$id_rpjmd."'".$tsql." AND ProgID NOT IN (".$prog_banyak.") AND SIPD_RPJMD='') AP LEFT JOIN rpjmd_sasaran RS ON (RS.RD_SASARID=AP.RD_SASARID) LEFT JOIN rpjmd_tujuan RT ON (RT.RD_TUJID=AP.RD_TUJID) LEFT JOIN rpjmd_misi RM ON (RM.RD_MISIID=AP.RD_MISIID) LEFT JOIN (SELECT ProgID,BUID,Lama_ProgID FROM para90_sipd GROUP BY Lama_ProgID) S ON (S.Lama_ProgID=AP.ProgID)");
|
||||
while ($db->Next()) {
|
||||
$test = "kamus=program&aksi=tambah_kamus&id_visi=60&visi_teks=&visi_rpjmd=60&id_misi=".$db->Row("SIPD_MISI")."&misi_teks=&misi_rpjmd=".$db->Row("SIPD_MISI")."&misi_no=&kode_tujuan=".$db->Row("SIPD_TUJUAN")."&tujuan_teks=&tujuan_rpjmd=".$db->Row("SIPD_TUJUAN")."&tujuan_no=&kode_sasaran=".$db->Row("SIPD_SASARAN")."&sasaran_teks=&sasaran_rpjmd=".$db->Row("SIPD_SASARAN")."&sasaran_no=&id_unik_indikator=&indikator_teks=&target_awal_indikator=&satuan_awal_indikator=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_akhir_indikator=&satuan_akhir_indikator=&strategi_rpjmd=&kebijakan_rpjmd=&kode_unik_program=&program_rpjmd=".$db->Row("ID_PROGRAM")."&id_bidur_rpjmd=&urusan_rpjmd=".$db->Row("SIPD_URUSAN")."&id_indikator_outcome=&outcome_teks=&target_awal_outcome=&satuan_awal_outcome=&pagu_awal_outcome=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_akhir_outcome=&satuan_akhir_outcome=&pagu_akhir_outcome=&opd_rpjmd=";
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
// program sharing antar opd
|
||||
$db->Query("SELECT AP.*,RS.SIPD_UNIK SIPD_SASARAN,RT.SIPD_UNIK SIPD_TUJUAN,RM.SIPD_MISI,S.BUID SIPD_BIDU,S.ProgID ID_PROGRAM FROM (SELECT * FROM renstra_prog WHERE RPJMDID='".$id_rpjmd."'".$tsql." AND ProgID IN (".$prog_banyak.") AND SIPD_RPJMD='' GROUP BY ProgID) AP LEFT JOIN rpjmd_sasaran RS ON (RS.RD_SASARID=AP.RD_SASARID) LEFT JOIN rpjmd_tujuan RT ON (RT.RD_TUJID=AP.RD_TUJID) LEFT JOIN rpjmd_misi RM ON (RM.RD_MISIID=AP.RD_MISIID) LEFT JOIN (SELECT ProgID,BUID,Lama_ProgID FROM para90_sipd GROUP BY Lama_ProgID) S ON (S.Lama_ProgID=AP.ProgID)");
|
||||
while ($db->Next()) {
|
||||
$test = "kamus=program&aksi=tambah_kamus&id_visi=60&visi_teks=&visi_rpjmd=60&id_misi=".$db->Row("SIPD_MISI")."&misi_teks=&misi_rpjmd=".$db->Row("SIPD_MISI")."&misi_no=&kode_tujuan=".$db->Row("SIPD_TUJUAN")."&tujuan_teks=&tujuan_rpjmd=".$db->Row("SIPD_TUJUAN")."&tujuan_no=&kode_sasaran=".$db->Row("SIPD_SASARAN")."&sasaran_teks=&sasaran_rpjmd=".$db->Row("SIPD_SASARAN")."&sasaran_no=&id_unik_indikator=&indikator_teks=&target_awal_indikator=&satuan_awal_indikator=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_akhir_indikator=&satuan_akhir_indikator=&strategi_rpjmd=&kebijakan_rpjmd=&kode_unik_program=&program_rpjmd=".$db->Row("ID_PROGRAM")."&id_bidur_rpjmd=&urusan_rpjmd=".$db->Row("SIPD_URUSAN")."&id_indikator_outcome=&outcome_teks=&target_awal_outcome=&satuan_awal_outcome=&pagu_awal_outcome=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_akhir_outcome=&satuan_akhir_outcome=&pagu_akhir_outcome=&opd_rpjmd=";
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function RP_Ubah_Program($id_rpjmd=0, $id_opd=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
$prog_banyak = "0";
|
||||
$db->Query("SELECT GROUP_CONCAT(ProgID) PROGBYK FROM (SELECT ProgID,COUNT(*) Item FROM renstra_prog_indi WHERE RPJMDID='".$id_rpjmd."' GROUP BY ProgID) C WHERE C.Item>1");
|
||||
if($db->Next()) $prog_banyak = $db->Row("PROGBYK", "0");
|
||||
|
||||
$tsql = ($id_opd == 0) ? "" : " AND OPDID='".$id_opd."'";
|
||||
// program single opd
|
||||
$db->Query("SELECT AP.*,RS.SIPD_UNIK SIPD_SASARAN,RT.SIPD_UNIK SIPD_TUJUAN,RM.SIPD_MISI,S.BUID SIPD_BIDU,S.ProgID ID_PROGRAM FROM (SELECT * FROM renstra_prog WHERE RPJMDID='".$id_rpjmd."'".$tsql." AND ProgID NOT IN (".$prog_banyak.") AND SIPD_RPJMD<>'') AP LEFT JOIN rpjmd_sasaran RS ON (RS.RD_SASARID=AP.RD_SASARID) LEFT JOIN rpjmd_tujuan RT ON (RT.RD_TUJID=AP.RD_TUJID) LEFT JOIN rpjmd_misi RM ON (RM.RD_MISIID=AP.RD_MISIID) LEFT JOIN (SELECT ProgID,BUID,Lama_ProgID FROM para90_sipd GROUP BY Lama_ProgID) S ON (S.Lama_ProgID=AP.ProgID)");
|
||||
while ($db->Next()) {
|
||||
$test = "kamus=program&aksi=ubah_kamus&id_visi=60&visi_teks=&visi_rpjmd=60&id_misi=".$db->Row("SIPD_MISI")."&misi_teks=&misi_rpjmd=".$db->Row("SIPD_MISI")."&misi_no=0&kode_tujuan=".$db->Row("SIPD_TUJUAN")."&tujuan_teks=&tujuan_rpjmd=".$db->Row("SIPD_TUJUAN")."&tujuan_no=0&kode_sasaran=".$db->Row("SIPD_SASARAN")."&sasaran_teks=&sasaran_rpjmd=".$db->Row("SIPD_SASARAN")."&sasaran_no=0&id_unik_indikator=&indikator_teks=&target_awal_indikator=&satuan_awal_indikator=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_akhir_indikator=&satuan_akhir_indikator=&strategi_rpjmd=&kebijakan_rpjmd=&kode_unik_program=".$db->Row("SIPD_RPJMD")."&program_rpjmd=".$db->Row("ID_PROGRAM")."&id_bidur_rpjmd=&id_indikator_outcome=&outcome_teks=&target_awal_outcome=&satuan_awal_outcome=&pagu_awal_outcome=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_akhir_outcome=&satuan_akhir_outcome=&pagu_akhir_outcome=&opd_rpjmd=";
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
// program sharing antar opd
|
||||
$db->Query("SELECT AP.*,RS.SIPD_UNIK SIPD_SASARAN,RT.SIPD_UNIK SIPD_TUJUAN,RM.SIPD_MISI,S.BUID SIPD_BIDU,S.ProgID ID_PROGRAM FROM (SELECT * FROM renstra_prog WHERE RPJMDID='".$id_rpjmd."'".$tsql." AND ProgID IN (".$prog_banyak.") AND SIPD_RPJMD<>'' GROUP BY ProgID) AP LEFT JOIN rpjmd_sasaran RS ON (RS.RD_SASARID=AP.RD_SASARID) LEFT JOIN rpjmd_tujuan RT ON (RT.RD_TUJID=AP.RD_TUJID) LEFT JOIN rpjmd_misi RM ON (RM.RD_MISIID=AP.RD_MISIID) LEFT JOIN (SELECT ProgID,BUID,Lama_ProgID FROM para90_sipd GROUP BY Lama_ProgID) S ON (S.Lama_ProgID=AP.ProgID)");
|
||||
while ($db->Next()) {
|
||||
$test = "kamus=program&aksi=ubah_kamus&id_visi=60&visi_teks=&visi_rpjmd=60&id_misi=".$db->Row("SIPD_MISI")."&misi_teks=&misi_rpjmd=".$db->Row("SIPD_MISI")."&misi_no=0&kode_tujuan=".$db->Row("SIPD_TUJUAN")."&tujuan_teks=&tujuan_rpjmd=".$db->Row("SIPD_TUJUAN")."&tujuan_no=0&kode_sasaran=".$db->Row("SIPD_SASARAN")."&sasaran_teks=&sasaran_rpjmd=".$db->Row("SIPD_SASARAN")."&sasaran_no=0&id_unik_indikator=&indikator_teks=&target_awal_indikator=&satuan_awal_indikator=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_akhir_indikator=&satuan_akhir_indikator=&strategi_rpjmd=&kebijakan_rpjmd=&kode_unik_program=".$db->Row("SIPD_RPJMD")."&program_rpjmd=".$db->Row("ID_PROGRAM")."&id_bidur_rpjmd=&id_indikator_outcome=&outcome_teks=&target_awal_outcome=&satuan_awal_outcome=&pagu_awal_outcome=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_akhir_outcome=&satuan_akhir_outcome=&pagu_akhir_outcome=&opd_rpjmd=";
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function RP_Tambah_Indi($id_rpjmd=0, $id_opd=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
$prog_banyak = "0";
|
||||
$db->Query("SELECT GROUP_CONCAT(ProgID) PROGBYK FROM (SELECT ProgID,COUNT(*) Item FROM renstra_prog_indi WHERE RPJMDID='".$id_rpjmd."' GROUP BY ProgID) C WHERE C.Item>1");
|
||||
if($db->Next()) $prog_banyak = $db->Row("PROGBYK", "0");
|
||||
|
||||
$tsql = ($id_opd == 0) ? "" : " AND OPDID='".$id_opd."'";
|
||||
// program single opd
|
||||
$db->Query("SELECT I.*,AP.SIPD_RPJMD,RS.SIPD_UNIK SIPD_SASARAN,RT.SIPD_UNIK SIPD_TUJUAN,RM.SIPD_MISI,O.SIPD_OPD,T.K_Satuan FROM (SELECT * FROM renstra_prog_indi WHERE RPJMDID='".$id_rpjmd."'".$tsql." AND ProgID NOT IN (".$prog_banyak.") AND SIPD_RPJMD='') I LEFT JOIN renstra_prog AP ON (AP.RA_PROGID=I.RA_PROGID) LEFT JOIN rpjmd_sasaran RS ON (RS.RD_SASARID=AP.RD_SASARID) LEFT JOIN rpjmd_tujuan RT ON (RT.RD_TUJID=AP.RD_TUJID) LEFT JOIN rpjmd_misi RM ON (RM.RD_MISIID=AP.RD_MISIID) LEFT JOIN para90_opd O ON (O.OPDID=I.OPDID) LEFT JOIN para_satuan T ON (T.SatuanID=I.SatuanID) WHERE AP.SIPD_RPJMD<>''");
|
||||
while ($db->Next()) {
|
||||
$k_satuan = $db->Row("K_Satuan", "");
|
||||
$test = "kamus=indikator_program&aksi=tambah_kamus&id_visi=60&visi_teks=&visi_rpjmd=60&id_misi=".$db->Row("SIPD_MISI")."&misi_teks=&misi_rpjmd=".$db->Row("SIPD_MISI")."&misi_no=&kode_tujuan=".$db->Row("SIPD_TUJUAN")."&tujuan_teks=&tujuan_rpjmd=".$db->Row("SIPD_TUJUAN")."&tujuan_no=&kode_sasaran=".$db->Row("SIPD_SASARAN")."&sasaran_teks=&sasaran_rpjmd=".$db->Row("SIPD_SASARAN")."&sasaran_no=&id_unik_indikator=&indikator_teks=&target_awal_indikator=&satuan_awal_indikator=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_akhir_indikator=&satuan_akhir_indikator=&strategi_rpjmd=&kebijakan_rpjmd=&kode_unik_program=".$db->Row("SIPD_RPJMD")."&id_bidur_rpjmd=&id_indikator_outcome=&outcome_teks=".$db->Row("Txt_Indi")."&target_awal_outcome=".$db->Row("Indi_Awal")."&satuan_awal_outcome=".$k_satuan."&pagu_awal_outcome=&target_outcome[]=".$db->Row("Indi_T1")."&satuan_outcome[]=".$k_satuan."&pagu_outcome[]=".$db->Row("Pagu_T1")."&target_outcome[]=".$db->Row("Indi_T2")."&satuan_outcome[]=".$k_satuan."&pagu_outcome[]=".$db->Row("Pagu_T2")."&target_outcome[]=".$db->Row("Indi_T3")."&satuan_outcome[]=".$k_satuan."&pagu_outcome[]=".$db->Row("Pagu_T3")."&target_outcome[]=".$db->Row("Indi_T4")."&satuan_outcome[]=".$k_satuan."&pagu_outcome[]=".$db->Row("Pagu_T4")."&target_outcome[]=".$db->Row("Indi_T5")."&satuan_outcome[]=".$k_satuan."&pagu_outcome[]=".$db->Row("Pagu_T5")."&target_akhir_outcome=".$db->Row("Indi_Akhir")."&satuan_akhir_outcome=".$k_satuan."&pagu_akhir_outcome=&opd_rpjmd=".$db->Row("SIPD_OPD")."";
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
// program sharing antar opd
|
||||
$db->Query("SELECT I.Txt_Indi,I.Indi_Awal,I.Indi_T1,I.Indi_T2,I.Indi_T3,I.Indi_T4,I.Indi_T5,I.Indi_Akhir,SUM(I.Pagu_T1) Pagu_T1,SUM(I.Pagu_T2) Pagu_T2,SUM(I.Pagu_T3) Pagu_T3,SUM(I.Pagu_T4) Pagu_T4,SUM(I.Pagu_T5) Pagu_T5,AP.SIPD_RPJMD,RS.SIPD_UNIK SIPD_SASARAN,RT.SIPD_UNIK SIPD_TUJUAN,RM.SIPD_MISI,0 SIPD_OPD,T.K_Satuan FROM (SELECT * FROM renstra_prog_indi WHERE RPJMDID='".$id_rpjmd."'".$tsql." AND ProgID IN (".$prog_banyak.") AND SIPD_RPJMD='') I LEFT JOIN renstra_prog AP ON (AP.RA_PROGID=I.RA_PROGID) LEFT JOIN rpjmd_sasaran RS ON (RS.RD_SASARID=AP.RD_SASARID) LEFT JOIN rpjmd_tujuan RT ON (RT.RD_TUJID=AP.RD_TUJID) LEFT JOIN rpjmd_misi RM ON (RM.RD_MISIID=AP.RD_MISIID) LEFT JOIN para_satuan T ON (T.SatuanID=I.SatuanID) WHERE AP.SIPD_RPJMD<>'' GROUP BY I.ProgID");
|
||||
while ($db->Next()) {
|
||||
$k_satuan = $db->Row("K_Satuan", "");
|
||||
$test = "kamus=indikator_program&aksi=tambah_kamus&id_visi=60&visi_teks=&visi_rpjmd=60&id_misi=".$db->Row("SIPD_MISI")."&misi_teks=&misi_rpjmd=".$db->Row("SIPD_MISI")."&misi_no=&kode_tujuan=".$db->Row("SIPD_TUJUAN")."&tujuan_teks=&tujuan_rpjmd=".$db->Row("SIPD_TUJUAN")."&tujuan_no=&kode_sasaran=".$db->Row("SIPD_SASARAN")."&sasaran_teks=&sasaran_rpjmd=".$db->Row("SIPD_SASARAN")."&sasaran_no=&id_unik_indikator=&indikator_teks=&target_awal_indikator=&satuan_awal_indikator=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_akhir_indikator=&satuan_akhir_indikator=&strategi_rpjmd=&kebijakan_rpjmd=&kode_unik_program=".$db->Row("SIPD_RPJMD")."&id_bidur_rpjmd=&id_indikator_outcome=&outcome_teks=".$db->Row("Txt_Indi")."&target_awal_outcome=".$db->Row("Indi_Awal")."&satuan_awal_outcome=".$k_satuan."&pagu_awal_outcome=&target_outcome[]=".$db->Row("Indi_T1")."&satuan_outcome[]=".$k_satuan."&pagu_outcome[]=".$db->Row("Pagu_T1")."&target_outcome[]=".$db->Row("Indi_T2")."&satuan_outcome[]=".$k_satuan."&pagu_outcome[]=".$db->Row("Pagu_T2")."&target_outcome[]=".$db->Row("Indi_T3")."&satuan_outcome[]=".$k_satuan."&pagu_outcome[]=".$db->Row("Pagu_T3")."&target_outcome[]=".$db->Row("Indi_T4")."&satuan_outcome[]=".$k_satuan."&pagu_outcome[]=".$db->Row("Pagu_T4")."&target_outcome[]=".$db->Row("Indi_T5")."&satuan_outcome[]=".$k_satuan."&pagu_outcome[]=".$db->Row("Pagu_T5")."&target_akhir_outcome=".$db->Row("Indi_Akhir")."&satuan_akhir_outcome=".$k_satuan."&pagu_akhir_outcome=&opd_rpjmd=".$db->Row("SIPD_OPD")."";
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function RP_Ubah_Indi($id_rpjmd=0, $id_opd=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
$prog_banyak = "0";
|
||||
$db->Query("SELECT GROUP_CONCAT(ProgID) PROGBYK FROM (SELECT ProgID,COUNT(*) Item FROM renstra_prog_indi WHERE RPJMDID='".$id_rpjmd."' GROUP BY ProgID) C WHERE C.Item>1");
|
||||
if($db->Next()) $prog_banyak = $db->Row("PROGBYK", "0");
|
||||
|
||||
$tsql = ($id_opd == 0) ? "" : " AND OPDID='".$id_opd."'";
|
||||
// todo: perlu dilengkapi !!
|
||||
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
/************************** RESPON HERE ***************************/
|
||||
|
||||
$db = $db ?? new MySQL();
|
||||
$ajson = array();
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_rpjmd = $_SESSION['__WEB_APP']['RENC_RPJMDID'];
|
||||
$id_opd = Param::Get("OPDID", 0);
|
||||
|
||||
if ( $data == "detail-opd" ) {
|
||||
$tcari = trim(Param::Get("Cari_OPD"));
|
||||
$qsql = "RPJMDID='".$id_rpjmd."'";
|
||||
$msql = "M.Aktif=1";
|
||||
$msql .= ($tcari=="") ? "" : " AND CONCAT(M.K_OPD,M.N_OPD) LIKE '%".$tcari."%'";
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT M.OPDID OPDID2,M.K_OPD,M.N_OPD,CONCAT(IFNULL(K.ITEM_UDAH,0),' / ',IFNULL(K.ITEM_SEMUA,0)) Stat_Master,CONCAT(IFNULL(I.INDI_UDAH,0),' / ',IFNULL(I.INDI_SEMUA,0)) Stat_Indi,IF(IFNULL(K.ITEM_UDAH,0)=IFNULL(K.ITEM_SEMUA,0) AND IFNULL(I.INDI_UDAH,0)=IFNULL(I.INDI_SEMUA,0),1,0) IDO FROM vi_para90_opd M LEFT JOIN (SELECT OPDID,COUNT(*) ITEM_SEMUA,SUM(IF(SIPD_RPJMD='',0,1)) ITEM_UDAH FROM renstra_prog WHERE ".$qsql." GROUP BY OPDID) K ON (K.OPDID=M.OPDID) LEFT JOIN (SELECT OPDID,COUNT(*) INDI_SEMUA,SUM(IF(SIPD_RPJMD='',0,1)) INDI_UDAH FROM renstra_prog_indi WHERE ".$qsql." GROUP BY OPDID) I ON (I.OPDID=M.OPDID) WHERE ".$msql);
|
||||
$obj->add_field("OPDID2", "OPD", "hid");
|
||||
$obj->add_field("K_OPD", "Kode", "c");
|
||||
$obj->add_field("N_OPD", "Nama Perangkat Daerah", "awr");
|
||||
$obj->add_field("Stat_Master", "Program", "c");
|
||||
$obj->add_field("Stat_Indi", "Indikator", "c");
|
||||
$obj->set_row_color("IDO", "1", "rsuccess");
|
||||
$obj->set_field_order("K_OPD", "A");
|
||||
$obj->add_row_btn("send", "+ Program", "RPJMDProgramJS.kode_tambah_prog");
|
||||
$obj->add_row_btn("send0", "= Program", "RPJMDProgramJS.kode_ubah_prog");
|
||||
$obj->add_row_btn("document", "+ Indikator", "RPJMDProgramJS.kode_tambah_indi");
|
||||
$obj->add_row_btn("document0", "= Indikator", "RPJMDProgramJS.kode_ubah_indi");
|
||||
$obj->set_func_navi("RPJMDProgramJS.data_query('detail-opd')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divOPD");
|
||||
|
||||
} else if ( $data == "kode-tambah-prog" ) {
|
||||
$ajson = RP_Tambah_Program($id_rpjmd, $id_opd);
|
||||
|
||||
} else if ( $data == "kode-ubah-prog" ) {
|
||||
$ajson = RP_Ubah_Program($id_rpjmd, $id_opd);
|
||||
|
||||
} else if ( $data == "kode-tambah-indi" ) {
|
||||
$ajson = RP_Tambah_Indi($id_rpjmd, $id_opd);
|
||||
|
||||
} else if ( $data == "kode-ubah-indi" ) {//
|
||||
|
||||
} else if ( $data == "upload-json" || $data == "simpan-json" ) {
|
||||
$ajson['result'] = 0;
|
||||
|
||||
$prog_banyak = "0";
|
||||
$db->Query("SELECT GROUP_CONCAT(ProgID) PROGBYK FROM (SELECT ProgID,COUNT(*) Item FROM renstra_prog_indi WHERE RPJMDID='".$id_rpjmd."' GROUP BY ProgID) C WHERE C.Item>1");
|
||||
if($db->Next()) $prog_banyak = $db->Row("PROGBYK", "0");
|
||||
|
||||
if ($data == "upload-json") {
|
||||
$adata = json_decode(file_get_contents($_FILES['file']['tmp_name']), true);
|
||||
} else {
|
||||
$adata = json_decode(stripslashes(Param::Get("Kode_JSON", "{}")), true);
|
||||
}
|
||||
$db->Query("DELETE FROM sipd_renstra_prog");
|
||||
foreach ($adata['data'] as $arec) {
|
||||
$db->Query("INSERT INTO sipd_renstra_prog (ID_PROG,ID_UNIT,UNIK_PROG,UNIK_INDI,Txt_Indi) VALUES ('".$arec['id_program']."','".$arec['id_unit']."','".$arec['id_unik']."','".$arec['id_unik_indikator']."','".$arec['indikator']."')");
|
||||
}
|
||||
|
||||
$db->Query("UPDATE sipd_renstra_prog A,para90_prog B SET A.ProgID=B.ProgID WHERE A.ID_PROG=B.ProgID");
|
||||
$db->Query("UPDATE sipd_renstra_prog A,para90_sipd B SET A.ProgID=B.Lama_ProgID WHERE A.ID_PROG=B.ProgID AND A.ProgID=0");
|
||||
$db->Query("UPDATE sipd_renstra_prog 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_prog SET SIPD_RPJMD='' WHERE RPJMDID='".$id_rpjmd."'");
|
||||
$db->Query("UPDATE renstra_prog_indi SET SIPD_RPJMD='' WHERE RPJMDID='".$id_rpjmd."'");
|
||||
$db->Query("UPDATE renstra_prog A,sipd_renstra_prog B SET A.SIPD_RPJMD=B.UNIK_PROG WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND A.OPDID=B.OPDID AND A.ProgID NOT IN (".$prog_banyak.")");
|
||||
$db->Query("UPDATE renstra_prog A,sipd_renstra_prog B SET A.SIPD_RPJMD=B.UNIK_PROG WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND B.OPDID=0 AND A.ProgID NOT IN (".$prog_banyak.")");
|
||||
$db->Query("UPDATE renstra_prog A,sipd_renstra_prog B SET A.SIPD_RPJMD=B.UNIK_PROG WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND A.ProgID IN (".$prog_banyak.") AND A.SIPD_RPJMD=''");
|
||||
$db->Query("UPDATE renstra_prog_indi A,sipd_renstra_prog B SET A.SIPD_RPJMD=B.UNIK_INDI WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND A.OPDID=B.OPDID AND A.ProgID NOT IN (".$prog_banyak.") AND A.Txt_Indi=B.Txt_Indi");
|
||||
$db->Query("UPDATE renstra_prog_indi A,sipd_renstra_prog B SET A.SIPD_RPJMD=B.UNIK_INDI WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND B.OPDID=0 AND A.ProgID NOT IN (".$prog_banyak.") AND A.Txt_Indi=B.Txt_Indi");
|
||||
$db->Query("UPDATE renstra_prog_indi A,sipd_renstra_prog B SET A.SIPD_RPJMD=B.UNIK_INDI WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND A.ProgID IN (".$prog_banyak.") AND A.Txt_Indi=B.Txt_Indi AND A.SIPD_RPJMD=''");
|
||||
$db->Query("UPDATE renstra_prog_indi A,sipd_renstra_prog B SET A.SIPD_RPJMD=B.UNIK_INDI WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND A.ProgID IN (".$prog_banyak.") AND A.SIPD_RPJMD=''");
|
||||
|
||||
$ajson['result'] = 1;
|
||||
|
||||
} else if ( $data == "detail-sipd" ) {
|
||||
$form = new Form($db);
|
||||
$kode_token = $form->textbox("_", "Kode_Token", $_SESSION['__WEB_USER']['SIPD_TOKEN'], true, true, "text");
|
||||
$kode_acak = $form->textbox("_", "Kode_Acak", $_SESSION['__WEB_USER']['SIPD_ACAK'], true, true, "text");
|
||||
echo '
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-3 col-form-label" for="Kode_Token">Token</label>
|
||||
<div class="col">'.$kode_token.'</div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-3 col-form-label" for="Kode_Acak">Acak</label>
|
||||
<div class="col">'.$kode_acak.'</div>
|
||||
</div>';
|
||||
exit;
|
||||
} else if ( $data == "simpan-sipd" ) {
|
||||
$_SESSION['__WEB_USER']['SIPD_TOKEN'] = Param::Get("Kode_Token", "KODE_TOKEN");
|
||||
$_SESSION['__WEB_USER']['SIPD_ACAK'] = Param::Get("Kode_Acak", "KODE_ACAK");
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Push Program RJMPD ke SIPD Kemendagri</div><div class="card-body">
|
||||
<div class="row mb-1">
|
||||
<div class="col-md-9 col-sm-12"><div class="input-group"><input class="form-control" id="Cari_OPD" placeholder="Kunci Pencarian" type="text"><button class="btn btn-info shadow-none" type="button" id="butSearch">Cari</button><button class="btn btn-secondary shadow-none" type="button" id="butAll">Semua</button></div></div>
|
||||
<div class="col-md-3 col-sm-12 mt-2 mt-sm-0 d-flex justify-content-between">
|
||||
<div class="dropdown">
|
||||
<button class="btn btn-secondary shadow-none dropdown-toggle" type="button" id="dropdownMenuButton" data-coreui-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Opsi Semua Data</button>
|
||||
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
|
||||
<a class="dropdown-item" href="#" id="opsiUpload">Upload JSON</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" id="opsiTambahProg">Tambah Program</a>
|
||||
<a class="dropdown-item" href="#" id="opsiUbahProg">Ubah Program</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" id="opsiTambahIndi">Tambah Indikator</a>
|
||||
<a class="dropdown-item" href="#" id="opsiUbahIndi">Ubah Indikator</a>
|
||||
</div>
|
||||
</div>
|
||||
<button class="btn btn-secondary shadow-none" type="button" id="butSIPD">Setup SIPD</button>
|
||||
</div>
|
||||
</div>
|
||||
<input id="OPDID" type="hidden">
|
||||
<div id="divOPD"> </div>
|
||||
</div></div>
|
||||
</div>';
|
||||
exit;
|
||||
}
|
||||
|
||||
send_json($ajson, true);
|
||||
?>
|
||||
@@ -0,0 +1,208 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/php/sim/rpjmd_sasaran.php
|
||||
Desc. : PHP - Simulasi Sasaran RPJMD ke SIPD Kemendagri
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : April 8th, 2022.
|
||||
|
||||
(c) 2011 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
require_once(__DIR__."/../func.sippd.php");
|
||||
|
||||
use siaupheng\fonia4\DB\MySQL;
|
||||
use siaupheng\fonia4\DB\SQL;
|
||||
use siaupheng\fonia4\Web\Param;
|
||||
use siaupheng\fonia4\Web\Table;
|
||||
use siaupheng\fonia4\Web\Form;
|
||||
|
||||
function RP_Tambah_Sasaran($id_rpjmd=0, $id_sasar=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
$tsql = ($id_sasar == 0) ? "" : " AND RD_SASARID='".$id_sasar."'";
|
||||
$db->Query("SELECT * FROM rpjmd_sasaran WHERE RPJMDID='".$id_rpjmd."'".$tsql." AND SIPD_UNIK=''");
|
||||
while ($db->Next()) {
|
||||
/*$test = "kamus=program&aksi=tambah_kamus&id_visi=60&visi_teks=&visi_rpjmd=60&id_misi=".$db->Row("SIPD_MISI")."&misi_teks=&misi_rpjmd=".$db->Row("SIPD_MISI")."&misi_no=&kode_tujuan=".$db->Row("SIPD_TUJUAN")."&tujuan_teks=&tujuan_rpjmd=".$db->Row("SIPD_TUJUAN")."&tujuan_no=&kode_sasaran=".$db->Row("SIPD_SASARAN")."&sasaran_teks=&sasaran_rpjmd=".$db->Row("SIPD_SASARAN")."&sasaran_no=&id_unik_indikator=&indikator_teks=&target_awal_indikator=&satuan_awal_indikator=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_akhir_indikator=&satuan_akhir_indikator=&strategi_rpjmd=&kebijakan_rpjmd=&kode_unik_program=&program_rpjmd=".$db->Row("ID_PROGRAM")."&id_bidur_rpjmd=&urusan_rpjmd=".$db->Row("SIPD_URUSAN")."&id_indikator_outcome=&outcome_teks=&target_awal_outcome=&satuan_awal_outcome=&pagu_awal_outcome=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_akhir_outcome=&satuan_akhir_outcome=&pagu_akhir_outcome=&opd_rpjmd=";
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";*/
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function RP_Ubah_Sasaran($id_rpjmd=0, $id_sasar=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
$tsql = ($id_sasar == 0) ? "" : " AND RD_SASARID='".$id_sasar."'";
|
||||
$db->Query("SELECT * FROM rpjmd_sasaran WHERE RPJMDID='".$id_rpjmd."'".$tsql." AND SIPD_UNIK<>''");
|
||||
while ($db->Next()) {
|
||||
/*$test = "kamus=program&aksi=ubah_kamus&id_visi=60&visi_teks=&visi_rpjmd=60&id_misi=".$db->Row("SIPD_MISI")."&misi_teks=&misi_rpjmd=".$db->Row("SIPD_MISI")."&misi_no=0&kode_tujuan=".$db->Row("SIPD_TUJUAN")."&tujuan_teks=&tujuan_rpjmd=".$db->Row("SIPD_TUJUAN")."&tujuan_no=0&kode_sasaran=".$db->Row("SIPD_SASARAN")."&sasaran_teks=&sasaran_rpjmd=".$db->Row("SIPD_SASARAN")."&sasaran_no=0&id_unik_indikator=&indikator_teks=&target_awal_indikator=&satuan_awal_indikator=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_akhir_indikator=&satuan_akhir_indikator=&strategi_rpjmd=&kebijakan_rpjmd=&kode_unik_program=".$db->Row("SIPD_RPJMD")."&program_rpjmd=".$db->Row("ID_PROGRAM")."&id_bidur_rpjmd=&id_indikator_outcome=&outcome_teks=&target_awal_outcome=&satuan_awal_outcome=&pagu_awal_outcome=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_akhir_outcome=&satuan_akhir_outcome=&pagu_akhir_outcome=&opd_rpjmd=";
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";*/
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function RP_Tambah_Indi($id_rpjmd=0, $id_sasar=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
$tsql = ($id_sasar == 0) ? "" : " AND RD_SASARID='".$id_sasar."'";
|
||||
$db->Query("SELECT I.*,RS.SIPD_UNIK SIPD_SASARAN,RT.SIPD_UNIK SIPD_TUJUAN,RM.SIPD_MISI,S.K_Satuan FROM (SELECT * FROM rpjmd_sasaran WHERE RPJMDID='".$id_rpjmd."'".$tsql.") RS INNER JOIN rpjmd_sasaran_indi I ON (RS.RD_SASARID=I.RD_SASARID) LEFT JOIN rpjmd_tujuan RT ON (RT.RD_TUJID=RS.RD_TUJID) LEFT JOIN rpjmd_misi RM ON (RM.RD_MISIID=RS.RD_MISIID) LEFT JOIN para_satuan S ON (S.SatuanID=I.SatuanID) WHERE RS.SIPD_UNIK<>'' AND I.SIPD_UNIK=''");
|
||||
while ($db->Next()) {
|
||||
$k_satuan = $db->Row("K_Satuan", "");
|
||||
$test = "kamus=indikator_sasaran&aksi=tambah_kamus&id_visi=60&visi_teks=&id_misi=".$db->Row("SIPD_MISI")."&misi_teks=&misi_no=&kode_tujuan=".$db->Row("SIPD_TUJUAN")."&tujuan_teks=&tujuan_no=&kode_sasaran=".$db->Row("SIPD_SASARAN")."&sasaran_teks=&sasaran_no=&id_unik_indikator=&indikator_teks=".str_replace(" ","+",$db->Row("Txt_Indi"))."&target_awal_indikator=".$db->Row("Indi_Awal")."&satuan_awal_indikator=".$k_satuan."&target_indikator[]=".$db->Row("Indi_T1")."&satuan_indikator[]=".$k_satuan."&target_indikator[]=".$db->Row("Indi_T2")."&satuan_indikator[]=".$k_satuan."&target_indikator[]=".$db->Row("Indi_T3")."&satuan_indikator[]=".$k_satuan."&target_indikator[]=".$db->Row("Indi_T4")."&satuan_indikator[]=".$k_satuan."&target_indikator[]=".$db->Row("Indi_T5")."&satuan_indikator[]=".$k_satuan."&target_akhir_indikator=".$db->Row("Indi_Akhir")."&satuan_akhir_indikator=".$k_satuan."&strategi_rpjmd=";
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function RP_Ubah_Indi($id_rpjmd=0, $id_sasar=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
$tsql = ($id_sasar == 0) ? "" : " AND RD_SASARID='".$id_sasar."'";
|
||||
$db->Query("SELECT I.*,RS.SIPD_UNIK SIPD_SASARAN,RT.SIPD_UNIK SIPD_TUJUAN,RM.SIPD_MISI,S.K_Satuan FROM (SELECT * FROM rpjmd_sasaran WHERE RPJMDID='".$id_rpjmd."'".$tsql.") RS INNER JOIN rpjmd_sasaran_indi I ON (RS.RD_SASARID=I.RD_SASARID) LEFT JOIN rpjmd_tujuan RT ON (RT.RD_TUJID=RS.RD_TUJID) LEFT JOIN rpjmd_misi RM ON (RM.RD_MISIID=RS.RD_MISIID) LEFT JOIN para_satuan S ON (S.SatuanID=I.SatuanID) WHERE RS.SIPD_UNIK<>'' AND I.SIPD_UNIK<>''");
|
||||
while ($db->Next()) {
|
||||
$k_satuan = $db->Row("K_Satuan", "");
|
||||
$test = "kamus=indikator_sasaran&aksi=ubah_kamus&id_visi=60&visi_teks=&id_misi=".$db->Row("SIPD_MISI")."&misi_teks=&misi_no=&kode_tujuan=".$db->Row("SIPD_TUJUAN")."&tujuan_teks=&tujuan_no=&kode_sasaran=".$db->Row("SIPD_SASARAN")."&sasaran_teks=&sasaran_no=&id_unik_indikator".$db->Row("SIPD_UNIK")."=&indikator_teks=".str_replace(" ","+",$db->Row("Txt_Indi"))."&target_awal_indikator=".$db->Row("Indi_Awal")."&satuan_awal_indikator=".$k_satuan."&target_indikator[]=".$db->Row("Indi_T1")."&satuan_indikator[]=".$k_satuan."&target_indikator[]=".$db->Row("Indi_T2")."&satuan_indikator[]=".$k_satuan."&target_indikator[]=".$db->Row("Indi_T3")."&satuan_indikator[]=".$k_satuan."&target_indikator[]=".$db->Row("Indi_T4")."&satuan_indikator[]=".$k_satuan."&target_indikator[]=".$db->Row("Indi_T5")."&satuan_indikator[]=".$k_satuan."&target_akhir_indikator=".$db->Row("Indi_Akhir")."&satuan_akhir_indikator=".$k_satuan."&strategi_rpjmd=";
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
/************************** RESPON HERE ***************************/
|
||||
|
||||
$db = $db ?? new MySQL();
|
||||
$ajson = array();
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_rpjmd = $_SESSION['__WEB_APP']['RENC_RPJMDID'];
|
||||
$id_sasar = Param::Get("RD_SASARID", 0);
|
||||
|
||||
if ( $data == "detail-sasar" ) {
|
||||
$tcari = trim(Param::Get("Cari_Sasar"));
|
||||
$qsql = "RPJMDID='".$id_rpjmd."'";
|
||||
$msql .= ($tcari=="") ? "" : " WHERE CONCAT(M.No_Sasaran,M.Txt_Sasaran) LIKE '%".$tcari."%'";
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT M.RD_SASARID,M.No_Sasaran,M.Txt_Sasaran,IF(M.SIPD_UNIK<>'','Ya','-') Stat_Master,CONCAT(IFNULL(I.INDI_UDAH,0),' / ',IFNULL(I.INDI_SEMUA,0)) Stat_Indi,IF(M.SIPD_UNIK<>'' AND IFNULL(I.INDI_UDAH,0)=IFNULL(I.INDI_SEMUA,0),1,0) IDO FROM (SELECT * FROM rpjmd_sasaran WHERE ".$qsql.") M LEFT JOIN (SELECT RD_SASARID,COUNT(*) INDI_SEMUA,SUM(IF(SIPD_UNIK='',0,1)) INDI_UDAH FROM rpjmd_sasaran_indi GROUP BY RD_SASARID) I ON (I.RD_SASARID=M.RD_SASARID)".$msql);
|
||||
$obj->add_field("RD_SASARID", "OPD", "hid");
|
||||
$obj->add_field("No_Sasaran", "Kode", "c");
|
||||
$obj->add_field("Txt_Sasaran", "Uraian Sasaran RPJMD", "awr");
|
||||
$obj->add_field("Stat_Master", "Sasaran", "c");
|
||||
$obj->add_field("Stat_Indi", "Indikator", "c");
|
||||
$obj->set_row_color("IDO", "1", "rsuccess");
|
||||
$obj->set_field_order("No_Sasaran", "A");
|
||||
$obj->add_row_btn("send", "+ Sasaran", "RPJMDSasaranJS.kode_tambah_sasar");
|
||||
$obj->add_row_btn("send0", "= Sasaran", "RPJMDSasaranJS.kode_ubah_sasar");
|
||||
$obj->add_row_btn("document", "+ Indikator", "RPJMDSasaranJS.kode_tambah_indi");
|
||||
$obj->add_row_btn("document0", "= Indikator", "RPJMDSasaranJS.kode_ubah_indi");
|
||||
$obj->set_func_navi("RPJMDSasaranJS.data_query('detail-sasar')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divSASAR");
|
||||
|
||||
} else if ( $data == "kode-tambah-sasar" ) {
|
||||
$ajson = RP_Tambah_Sasaran($id_rpjmd, $id_sasar);
|
||||
|
||||
} else if ( $data == "kode-ubah-sasar" ) {
|
||||
$ajson = RP_Ubah_Sasaran($id_rpjmd, $id_sasar);
|
||||
|
||||
} else if ( $data == "kode-tambah-indi" ) {
|
||||
$ajson = RP_Tambah_Indi($id_rpjmd, $id_sasar);
|
||||
|
||||
} else if ( $data == "kode-ubah-indi" ) {
|
||||
$ajson = RP_Ubah_Indi($id_rpjmd, $id_sasar);
|
||||
|
||||
} else if ( $data == "upload-json" || $data == "simpan-json" ) {
|
||||
$ajson['result'] = 0;
|
||||
|
||||
if ($data == "upload-json") {
|
||||
$adata = json_decode(file_get_contents($_FILES['file']['tmp_name']), true);
|
||||
} else {
|
||||
$adata = json_decode(stripslashes(Param::Get("Kode_JSON", "{}")), true);
|
||||
}
|
||||
/*$db->Query("DELETE FROM sipd_renstra_prog");
|
||||
foreach ($adata['data'] as $arec) {
|
||||
$db->Query("INSERT INTO sipd_renstra_prog (ID_PROG,ID_UNIT,UNIK_PROG,UNIK_INDI,Txt_Indi) VALUES ('".$arec['id_program']."','".$arec['id_unit']."','".$arec['id_unik']."','".$arec['id_unik_indikator']."','".$arec['indikator']."')");
|
||||
}
|
||||
|
||||
$db->Query("UPDATE sipd_renstra_prog A,para90_prog B SET A.ProgID=B.ProgID WHERE A.ID_PROG=B.ProgID");
|
||||
$db->Query("UPDATE sipd_renstra_prog A,para90_sipd B SET A.ProgID=B.Lama_ProgID WHERE A.ID_PROG=B.ProgID AND A.ProgID=0");
|
||||
$db->Query("UPDATE sipd_renstra_prog 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_prog SET SIPD_RPJMD='' WHERE RPJMDID='".$id_rpjmd."'");
|
||||
$db->Query("UPDATE renstra_prog_indi SET SIPD_RPJMD='' WHERE RPJMDID='".$id_rpjmd."'");
|
||||
$db->Query("UPDATE renstra_prog A,sipd_renstra_prog B SET A.SIPD_RPJMD=B.UNIK_PROG WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND A.OPDID=B.OPDID AND A.ProgID NOT IN (".$prog_banyak.")");
|
||||
$db->Query("UPDATE renstra_prog A,sipd_renstra_prog B SET A.SIPD_RPJMD=B.UNIK_PROG WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND B.OPDID=0 AND A.ProgID NOT IN (".$prog_banyak.")");
|
||||
$db->Query("UPDATE renstra_prog A,sipd_renstra_prog B SET A.SIPD_RPJMD=B.UNIK_PROG WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND A.ProgID IN (".$prog_banyak.") AND A.SIPD_RPJMD=''");
|
||||
$db->Query("UPDATE renstra_prog_indi A,sipd_renstra_prog B SET A.SIPD_RPJMD=B.UNIK_INDI WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND A.OPDID=B.OPDID AND A.ProgID NOT IN (".$prog_banyak.") AND A.Txt_Indi=B.Txt_Indi");
|
||||
$db->Query("UPDATE renstra_prog_indi A,sipd_renstra_prog B SET A.SIPD_RPJMD=B.UNIK_INDI WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND B.OPDID=0 AND A.ProgID NOT IN (".$prog_banyak.") AND A.Txt_Indi=B.Txt_Indi");
|
||||
$db->Query("UPDATE renstra_prog_indi A,sipd_renstra_prog B SET A.SIPD_RPJMD=B.UNIK_INDI WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND A.ProgID IN (".$prog_banyak.") AND A.Txt_Indi=B.Txt_Indi AND A.SIPD_RPJMD=''");
|
||||
$db->Query("UPDATE renstra_prog_indi A,sipd_renstra_prog B SET A.SIPD_RPJMD=B.UNIK_INDI WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND A.ProgID IN (".$prog_banyak.") AND A.SIPD_RPJMD=''");*/
|
||||
|
||||
$ajson['result'] = 1;
|
||||
|
||||
} else if ( $data == "detail-sipd" ) {
|
||||
$form = new Form($db);
|
||||
$kode_token = $form->textbox("_", "Kode_Token", $_SESSION['__WEB_USER']['SIPD_TOKEN'], true, true, "text");
|
||||
$kode_acak = $form->textbox("_", "Kode_Acak", $_SESSION['__WEB_USER']['SIPD_ACAK'], true, true, "text");
|
||||
echo '
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-3 col-form-label" for="Kode_Token">Token</label>
|
||||
<div class="col">'.$kode_token.'</div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-3 col-form-label" for="Kode_Acak">Acak</label>
|
||||
<div class="col">'.$kode_acak.'</div>
|
||||
</div>';
|
||||
exit;
|
||||
} else if ( $data == "simpan-sipd" ) {
|
||||
$_SESSION['__WEB_USER']['SIPD_TOKEN'] = Param::Get("Kode_Token", "KODE_TOKEN");
|
||||
$_SESSION['__WEB_USER']['SIPD_ACAK'] = Param::Get("Kode_Acak", "KODE_ACAK");
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Push Sasaran RJMPD ke SIPD Kemendagri</div><div class="card-body">
|
||||
<div class="row mb-1">
|
||||
<div class="col-md-9 col-sm-12"><div class="input-group"><input class="form-control" id="Cari_Sasar" placeholder="Kunci Pencarian" type="text"><button class="btn btn-info shadow-none" type="button" id="butSearch">Cari</button><button class="btn btn-secondary shadow-none" type="button" id="butAll">Semua</button></div></div>
|
||||
<div class="col-md-3 col-sm-12 mt-2 mt-sm-0 d-flex justify-content-between">
|
||||
<div class="dropdown">
|
||||
<button class="btn btn-secondary shadow-none dropdown-toggle" type="button" id="dropdownMenuButton" data-coreui-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Opsi Semua Data</button>
|
||||
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
|
||||
<a class="dropdown-item" href="#" id="opsiUpload">Upload JSON</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" id="opsiTambahSasar">Tambah Sasaran</a>
|
||||
<a class="dropdown-item" href="#" id="opsiUbahSasar">Ubah Sasaran</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" id="opsiTambahIndi">Tambah Indikator</a>
|
||||
<a class="dropdown-item" href="#" id="opsiUbahIndi">Ubah Indikator</a>
|
||||
</div>
|
||||
</div>
|
||||
<button class="btn btn-secondary shadow-none" type="button" id="butSIPD">Setup SIPD</button>
|
||||
</div>
|
||||
</div>
|
||||
<input id="RD_SASARID" type="hidden">
|
||||
<div id="divSASAR"> </div>
|
||||
</div></div>
|
||||
</div>';
|
||||
exit;
|
||||
}
|
||||
|
||||
send_json($ajson, true);
|
||||
?>
|
||||
@@ -0,0 +1,210 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/php/sim/rpjmd_tujuan.php
|
||||
Desc. : PHP - Simulasi Tujuan RPJMD ke SIPD Kemendagri
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : October 28th, 2011.
|
||||
Last Modified : April 8th, 2022.
|
||||
|
||||
(c) 2011 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
require_once(__DIR__."/../func.sippd.php");
|
||||
|
||||
use siaupheng\fonia4\DB\MySQL;
|
||||
use siaupheng\fonia4\DB\SQL;
|
||||
use siaupheng\fonia4\Web\Param;
|
||||
use siaupheng\fonia4\Web\Table;
|
||||
use siaupheng\fonia4\Web\Form;
|
||||
|
||||
function RP_Tambah_Tujuan($id_rpjmd=0, $id_tujuan=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
$tsql = ($id_tujuan == 0) ? "" : " AND RD_TUJID='".$id_tujuan."'";
|
||||
$db->Query("SELECT * FROM rpjmd_tujuan WHERE RPJMDID='".$id_rpjmd."'".$tsql." AND SIPD_UNIK=''");
|
||||
while ($db->Next()) {
|
||||
/*$test = "kamus=program&aksi=tambah_kamus&id_visi=60&visi_teks=&visi_rpjmd=60&id_misi=".$db->Row("SIPD_MISI")."&misi_teks=&misi_rpjmd=".$db->Row("SIPD_MISI")."&misi_no=&kode_tujuan=".$db->Row("SIPD_TUJUAN")."&tujuan_teks=&tujuan_rpjmd=".$db->Row("SIPD_TUJUAN")."&tujuan_no=&kode_sasaran=".$db->Row("SIPD_SASARAN")."&sasaran_teks=&sasaran_rpjmd=".$db->Row("SIPD_SASARAN")."&sasaran_no=&id_unik_indikator=&indikator_teks=&target_awal_indikator=&satuan_awal_indikator=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_akhir_indikator=&satuan_akhir_indikator=&strategi_rpjmd=&kebijakan_rpjmd=&kode_unik_program=&program_rpjmd=".$db->Row("ID_PROGRAM")."&id_bidur_rpjmd=&urusan_rpjmd=".$db->Row("SIPD_URUSAN")."&id_indikator_outcome=&outcome_teks=&target_awal_outcome=&satuan_awal_outcome=&pagu_awal_outcome=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_akhir_outcome=&satuan_akhir_outcome=&pagu_akhir_outcome=&opd_rpjmd=";
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";*/
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function RP_Ubah_Tujuan($id_rpjmd=0, $id_tujuan=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
$tsql = ($id_tujuan == 0) ? "" : " AND RD_TUJID='".$id_tujuan."'";
|
||||
$db->Query("SELECT * FROM rpjmd_tujuan WHERE RPJMDID='".$id_rpjmd."'".$tsql." AND SIPD_UNIK<>''");
|
||||
while ($db->Next()) {
|
||||
/*$test = "kamus=program&aksi=ubah_kamus&id_visi=60&visi_teks=&visi_rpjmd=60&id_misi=".$db->Row("SIPD_MISI")."&misi_teks=&misi_rpjmd=".$db->Row("SIPD_MISI")."&misi_no=0&kode_tujuan=".$db->Row("SIPD_TUJUAN")."&tujuan_teks=&tujuan_rpjmd=".$db->Row("SIPD_TUJUAN")."&tujuan_no=0&kode_sasaran=".$db->Row("SIPD_SASARAN")."&sasaran_teks=&sasaran_rpjmd=".$db->Row("SIPD_SASARAN")."&sasaran_no=0&id_unik_indikator=&indikator_teks=&target_awal_indikator=&satuan_awal_indikator=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_indikator[]=&satuan_indikator[]=&target_akhir_indikator=&satuan_akhir_indikator=&strategi_rpjmd=&kebijakan_rpjmd=&kode_unik_program=".$db->Row("SIPD_RPJMD")."&program_rpjmd=".$db->Row("ID_PROGRAM")."&id_bidur_rpjmd=&id_indikator_outcome=&outcome_teks=&target_awal_outcome=&satuan_awal_outcome=&pagu_awal_outcome=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_outcome[]=&satuan_outcome[]=&pagu_outcome[]=&target_akhir_outcome=&satuan_akhir_outcome=&pagu_akhir_outcome=&opd_rpjmd=";
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";*/
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function RP_Tambah_Indi($id_rpjmd=0, $id_tujuan=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
$tsql = ($id_tujuan == 0) ? "" : " AND RD_TUJID='".$id_tujuan."'";
|
||||
$db->Query("SELECT I.*,RT.SIPD_UNIK SIPD_TUJUAN,RM.SIPD_MISI,S.K_Satuan FROM (SELECT * FROM rpjmd_tujuan WHERE RPJMDID='".$id_rpjmd."'".$tsql.") RT INNER JOIN rpjmd_tujuan_indi I ON (RT.RD_TUJID=I.RD_TUJID) LEFT JOIN rpjmd_misi RM ON (RM.RD_MISIID=RT.RD_MISIID) LEFT JOIN para_satuan S ON (S.SatuanID=I.SatuanID) WHERE RT.SIPD_UNIK<>'' AND I.SIPD_UNIK=''");
|
||||
|
||||
while ($db->Next()) {
|
||||
$k_satuan = $db->Row("K_Satuan", "");
|
||||
$test = "kamus=indikator_tujuan&aksi=tambah_kamus&id_visi=60&visi_teks=&id_misi=".$db->Row("SIPD_MISI")."&misi_teks=&misi_no=&kode_tujuan=".$db->Row("SIPD_TUJUAN")."&tujuan_teks=&tujuan_no=&kode_sasaran=&sasaran_teks=&sasaran_rpjmd=&sasaran_no=&id_unik_indikator=&indikator_teks=".str_replace(" ","+",$db->Row("Txt_Indi"))."&target_awal_indikator=".$db->Row("Indi_Awal")."&satuan_awal_indikator=%&target_indikator[]=".$db->Row("Indi_T1")."&satuan_indikator[]=%&target_indikator[]=".$db->Row("Indi_T2")."&satuan_indikator[]=%&target_indikator[]=".$db->Row("Indi_T3")."&satuan_indikator[]=%&target_indikator[]=".$db->Row("Indi_T4")."&satuan_indikator[]=%&target_indikator[]=".$db->Row("Indi_T5")."&satuan_indikator[]=%&target_akhir_indikator=".$db->Row("Indi_Akhir")."";
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
function RP_Ubah_Indi($id_rpjmd=0, $id_tujuan=0) {
|
||||
global $db;
|
||||
$ahasil = array();
|
||||
|
||||
$tsql = ($id_tujuan == 0) ? "" : " AND RD_TUJID='".$id_tujuan."'";
|
||||
$db->Query("SELECT I.*,RT.SIPD_UNIK SIPD_TUJUAN,RM.SIPD_MISI,S.K_Satuan FROM (SELECT * FROM rpjmd_tujuan WHERE RPJMDID='".$id_rpjmd."'".$tsql.") RT INNER JOIN rpjmd_tujuan_indi I ON (RT.RD_SASARID=I.RD_SASARID) LEFT JOIN rpjmd_misi RM ON (RM.RD_MISIID=RT.RD_MISIID) LEFT JOIN para_satuan S ON (S.SatuanID=I.SatuanID) WHERE RT.SIPD_UNIK<>'' AND I.SIPD_UNIK<>''");
|
||||
|
||||
while ($db->Next()) {
|
||||
$k_satuan = $db->Row("K_Satuan", "");
|
||||
$test = "kamus=indikator_tujuan&aksi=tambah_kamus&id_visi=60&visi_teks=&id_misi=".$db->Row("SIPD_MISI")."&misi_teks=&misi_no=&kode_tujuan=".$db->Row("SIPD_TUJUAN")."&tujuan_teks=&tujuan_no=&kode_sasaran=&sasaran_teks=&sasaran_rpjmd=&sasaran_no=&id_unik_indikator=".$db->Row("SIPD_UNIK")."&indikator_teks=".str_replace(" ","+",$db->Row("Txt_Indi"))."&target_awal_indikator=".$db->Row("Indi_Awal")."&satuan_awal_indikator=%&target_indikator[]=".$db->Row("Indi_T1")."&satuan_indikator[]=%&target_indikator[]=".$db->Row("Indi_T2")."&satuan_indikator[]=%&target_indikator[]=".$db->Row("Indi_T3")."&satuan_indikator[]=%&target_indikator[]=".$db->Row("Indi_T4")."&satuan_indikator[]=%&target_indikator[]=".$db->Row("Indi_T5")."&satuan_indikator[]=%&target_akhir_indikator=".$db->Row("Indi_Akhir")."";
|
||||
$test_post = base64_encode($test);
|
||||
$test_post = str_replace("=", "@", $test_post);
|
||||
|
||||
$ahasil[] = "\$.ajax({url:lru13,type:'post',data:'_token=".$_SESSION['__WEB_USER']['SIPD_TOKEN']."&v1bnA1m=".$_SESSION['__WEB_USER']['SIPD_ACAK']."&xSj0S=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Safari/537.36&DsK121m=".$test_post."',success: function(data){if(data['result']=='error'){console.error(data['message']);}},error: function(jqXHR, textStatus, error){console.error('ERROR PARAH');}});<br>";
|
||||
}
|
||||
return $ahasil;
|
||||
}
|
||||
|
||||
/************************** RESPON HERE ***************************/
|
||||
|
||||
$db = $db ?? new MySQL();
|
||||
$ajson = array();
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_rpjmd = $_SESSION['__WEB_APP']['RENC_RPJMDID'];
|
||||
$id_tujuan = Param::Get("RD_TUJID", 0);
|
||||
|
||||
if ( $data == "detail-tujuan" ) {
|
||||
$tcari = trim(Param::Get("Cari_Tujuan"));
|
||||
$qsql = "RPJMDID='".$id_rpjmd."'";
|
||||
$msql .= ($tcari=="") ? "" : " WHERE CONCAT(M.No_Tujuan,M.Txt_Tujuan) LIKE '%".$tcari."%'";
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT M.RD_TUJID,M.No_Tujuan,M.Txt_Tujuan,IF(M.SIPD_UNIK<>'','Ya','-') Stat_Master,CONCAT(IFNULL(I.INDI_UDAH,0),' / ',IFNULL(I.INDI_SEMUA,0)) Stat_Indi,IF(M.SIPD_UNIK<>'' AND IFNULL(I.INDI_UDAH,0)=IFNULL(I.INDI_SEMUA,0),1,0) IDO FROM (SELECT * FROM rpjmd_tujuan WHERE ".$qsql.") M LEFT JOIN (SELECT RD_TUJID,COUNT(*) INDI_SEMUA,SUM(IF(SIPD_UNIK='',0,1)) INDI_UDAH FROM rpjmd_tujuan_indi GROUP BY RD_TUJID) I ON (I.RD_TUJID=M.RD_TUJID)".$msql);
|
||||
$obj->add_field("RD_TUJID", "OPD", "hid");
|
||||
$obj->add_field("No_Tujuan", "Kode", "c");
|
||||
$obj->add_field("Txt_Tujuan", "Uraian Tujuan RPJMD", "awr");
|
||||
$obj->add_field("Stat_Master", "Tujuan", "c");
|
||||
$obj->add_field("Stat_Indi", "Indikator", "c");
|
||||
$obj->set_row_color("IDO", "1", "rsuccess");
|
||||
$obj->set_field_order("No_Tujuan", "A");
|
||||
$obj->add_row_btn("send", "+ Tujuan", "RPJMDTujuanJS.kode_tambah_tujuan");
|
||||
$obj->add_row_btn("send0", "= Tujuan", "RPJMDTujuanJS.kode_ubah_tujuan");
|
||||
$obj->add_row_btn("document", "+ Indikator", "RPJMDTujuanJS.kode_tambah_indi");
|
||||
$obj->add_row_btn("document0", "= Indikator", "RPJMDTujuanJS.kode_ubah_indi");
|
||||
$obj->set_func_navi("RPJMDTujuanJS.data_query('detail-tujuan')");
|
||||
$obj->set_textbtn(true);
|
||||
$ajson[] = $obj->json_table("divTUJUAN");
|
||||
|
||||
} else if ( $data == "kode-tambah-tujuan" ) {
|
||||
$ajson = RP_Tambah_Tujuan($id_rpjmd, $id_tujuan);
|
||||
|
||||
} else if ( $data == "kode-ubah-tujuan" ) {
|
||||
$ajson = RP_Ubah_Tujuan($id_rpjmd, $id_tujuan);
|
||||
|
||||
} else if ( $data == "kode-tambah-indi" ) {
|
||||
$ajson = RP_Tambah_Indi($id_rpjmd, $id_tujuan);
|
||||
|
||||
} else if ( $data == "kode-ubah-indi" ) {
|
||||
$ajson = RP_Ubah_Indi($id_rpjmd, $id_tujuan);
|
||||
|
||||
} else if ( $data == "upload-json" || $data == "simpan-json" ) {
|
||||
$ajson['result'] = 0;
|
||||
|
||||
if ($data == "upload-json") {
|
||||
$adata = json_decode(file_get_contents($_FILES['file']['tmp_name']), true);
|
||||
} else {
|
||||
$adata = json_decode(stripslashes(Param::Get("Kode_JSON", "{}")), true);
|
||||
}
|
||||
/*$db->Query("DELETE FROM sipd_renstra_prog");
|
||||
foreach ($adata['data'] as $arec) {
|
||||
$db->Query("INSERT INTO sipd_renstra_prog (ID_PROG,ID_UNIT,UNIK_PROG,UNIK_INDI,Txt_Indi) VALUES ('".$arec['id_program']."','".$arec['id_unit']."','".$arec['id_unik']."','".$arec['id_unik_indikator']."','".$arec['indikator']."')");
|
||||
}
|
||||
|
||||
$db->Query("UPDATE sipd_renstra_prog A,para90_prog B SET A.ProgID=B.ProgID WHERE A.ID_PROG=B.ProgID");
|
||||
$db->Query("UPDATE sipd_renstra_prog A,para90_sipd B SET A.ProgID=B.Lama_ProgID WHERE A.ID_PROG=B.ProgID AND A.ProgID=0");
|
||||
$db->Query("UPDATE sipd_renstra_prog 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_prog SET SIPD_RPJMD='' WHERE RPJMDID='".$id_rpjmd."'");
|
||||
$db->Query("UPDATE renstra_prog_indi SET SIPD_RPJMD='' WHERE RPJMDID='".$id_rpjmd."'");
|
||||
$db->Query("UPDATE renstra_prog A,sipd_renstra_prog B SET A.SIPD_RPJMD=B.UNIK_PROG WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND A.OPDID=B.OPDID AND A.ProgID NOT IN (".$prog_banyak.")");
|
||||
$db->Query("UPDATE renstra_prog A,sipd_renstra_prog B SET A.SIPD_RPJMD=B.UNIK_PROG WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND B.OPDID=0 AND A.ProgID NOT IN (".$prog_banyak.")");
|
||||
$db->Query("UPDATE renstra_prog A,sipd_renstra_prog B SET A.SIPD_RPJMD=B.UNIK_PROG WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND A.ProgID IN (".$prog_banyak.") AND A.SIPD_RPJMD=''");
|
||||
$db->Query("UPDATE renstra_prog_indi A,sipd_renstra_prog B SET A.SIPD_RPJMD=B.UNIK_INDI WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND A.OPDID=B.OPDID AND A.ProgID NOT IN (".$prog_banyak.") AND A.Txt_Indi=B.Txt_Indi");
|
||||
$db->Query("UPDATE renstra_prog_indi A,sipd_renstra_prog B SET A.SIPD_RPJMD=B.UNIK_INDI WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND B.OPDID=0 AND A.ProgID NOT IN (".$prog_banyak.") AND A.Txt_Indi=B.Txt_Indi");
|
||||
$db->Query("UPDATE renstra_prog_indi A,sipd_renstra_prog B SET A.SIPD_RPJMD=B.UNIK_INDI WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND A.ProgID IN (".$prog_banyak.") AND A.Txt_Indi=B.Txt_Indi AND A.SIPD_RPJMD=''");
|
||||
$db->Query("UPDATE renstra_prog_indi A,sipd_renstra_prog B SET A.SIPD_RPJMD=B.UNIK_INDI WHERE A.RPJMDID='".$id_rpjmd."' AND A.ProgID=B.ProgID AND A.ProgID IN (".$prog_banyak.") AND A.SIPD_RPJMD=''");*/
|
||||
|
||||
$ajson['result'] = 1;
|
||||
|
||||
} else if ( $data == "detail-sipd" ) {
|
||||
$form = new Form($db);
|
||||
$kode_token = $form->textbox("_", "Kode_Token", $_SESSION['__WEB_USER']['SIPD_TOKEN'], true, true, "text");
|
||||
$kode_acak = $form->textbox("_", "Kode_Acak", $_SESSION['__WEB_USER']['SIPD_ACAK'], true, true, "text");
|
||||
echo '
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-3 col-form-label" for="Kode_Token">Token</label>
|
||||
<div class="col">'.$kode_token.'</div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-3 col-form-label" for="Kode_Acak">Acak</label>
|
||||
<div class="col">'.$kode_acak.'</div>
|
||||
</div>';
|
||||
exit;
|
||||
} else if ( $data == "simpan-sipd" ) {
|
||||
$_SESSION['__WEB_USER']['SIPD_TOKEN'] = Param::Get("Kode_Token", "KODE_TOKEN");
|
||||
$_SESSION['__WEB_USER']['SIPD_ACAK'] = Param::Get("Kode_Acak", "KODE_ACAK");
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Push Tujuan RJMPD ke SIPD Kemendagri</div><div class="card-body">
|
||||
<div class="row mb-1">
|
||||
<div class="col-md-9 col-sm-12"><div class="input-group"><input class="form-control" id="Cari_Tujuan" placeholder="Kunci Pencarian" type="text"><button class="btn btn-info shadow-none" type="button" id="butSearch">Cari</button><button class="btn btn-secondary shadow-none" type="button" id="butAll">Semua</button></div></div>
|
||||
<div class="col-md-3 col-sm-12 mt-2 mt-sm-0 d-flex justify-content-between">
|
||||
<div class="dropdown">
|
||||
<button class="btn btn-secondary shadow-none dropdown-toggle" type="button" id="dropdownMenuButton" data-coreui-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Opsi Semua Data</button>
|
||||
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
|
||||
<a class="dropdown-item" href="#" id="opsiUpload">Upload JSON</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" id="opsiTambahTujuan">Tambah Tujuan</a>
|
||||
<a class="dropdown-item" href="#" id="opsiUbahTujuan">Ubah Tujuan</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" id="opsiTambahIndi">Tambah Indikator</a>
|
||||
<a class="dropdown-item" href="#" id="opsiUbahIndi">Ubah Indikator</a>
|
||||
</div>
|
||||
</div>
|
||||
<button class="btn btn-secondary shadow-none" type="button" id="butSIPD">Setup SIPD</button>
|
||||
</div>
|
||||
</div>
|
||||
<input id="RD_TUJID" type="hidden">
|
||||
<div id="divTUJUAN"> </div>
|
||||
</div></div>
|
||||
</div>';
|
||||
exit;
|
||||
}
|
||||
|
||||
send_json($ajson, true);
|
||||
?>
|
||||
@@ -0,0 +1,54 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
Module : /apps/php/sys/chpasswd.php
|
||||
Desc. : PHP - Perubahan Password Operator
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : December 7th, 2008.
|
||||
Last Modified : April 25th, 2020.
|
||||
|
||||
(c) 2008 - 2020, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
|
||||
use siaupheng\fonia4\DB\MySQL;
|
||||
use siaupheng\fonia4\DB\SQL;
|
||||
use siaupheng\fonia4\Web\Auth;
|
||||
use siaupheng\fonia4\Web\Param;
|
||||
use siaupheng\fonia4\Web\Form;
|
||||
|
||||
/************************** RESPON HERE ***************************/
|
||||
|
||||
$db = $db ?? new MySQL();
|
||||
$auth = new Auth($db);
|
||||
$ajson = array();
|
||||
$data = Param::Get("data");
|
||||
|
||||
if ( $data == "default") {
|
||||
$form = new Form($db);
|
||||
$form->password("Password Lama", "LPass", $l_pass, true, true, "masukkan password lama", 20);
|
||||
$form->password("Password Baru 1", "BPass1", $b_pass1, true, true, "masukkan password baru 1", 20);
|
||||
$form->password("Password Baru 2", "BPass2", $b_pass2, true, true, "masukkan password baru 2", 20);
|
||||
$form->show(' _LPass_ _BPass1_ _BPass2_ ');
|
||||
|
||||
} else if ( $data == "chpasswd") {
|
||||
$l_pass = Param::Get("LPass");
|
||||
$b_pass1 = Param::Get("BPass1");
|
||||
$b_pass2 = Param::Get("BPass2");
|
||||
|
||||
$ajson['status'] = false;
|
||||
if ($auth->user_check(user_user(), $l_pass)) {
|
||||
$db->Query("UPDATE app_operator SET Password=MD5('".$b_pass1."') WHERE UserID='".user_id()."'");
|
||||
$ajson['status'] = true;
|
||||
$ajson['msg'] = "Sukses merubah password Anda!";
|
||||
} else {
|
||||
$ajson['msg'] = "Password lama Anda salah!";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
send_json($ajson);
|
||||
?>
|
||||
@@ -0,0 +1,20 @@
|
||||
/*******************************************************************
|
||||
|
||||
Module : /assets/css/fonts.css
|
||||
Desc. : CSS Fonts
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : December 20th, 2007.
|
||||
Last Modified : November 22nd, 2020.
|
||||
|
||||
(c) 2009 - 2020, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
@font-face {
|
||||
font-family: coreui-icons-linear;
|
||||
src: url(../assets/fonts/coreui/CoreUI-Icons-Linear.eot?64h6xh);
|
||||
src: url(../assets/fonts/coreui/CoreUI-Icons-Linear.eot?64h6xh#iefix) format("embedded-opentype"), url(../assets/fonts/coreui/CoreUI-Icons-Linear.ttf?64h6xh) format("truetype"), url(../assets/fonts/coreui/CoreUI-Icons-Linear.woff?64h6xh) format("woff"),
|
||||
url(../assets/fonts/coreui/CoreUI-Icons-Linear.svg?64h6xh#CoreUI-Icons-Linear) format("svg");
|
||||
font-weight: 400;
|
||||
font-style: normal;
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
/*******************************************************************
|
||||
|
||||
Module : /assets/css/styles.css
|
||||
Desc. : CSS Custom
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : December 20th, 2007.
|
||||
Last Modified : May 31st, 2018.
|
||||
|
||||
(c) 2009 - 2018, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
div.note-editor.card {
|
||||
margin-bottom: 0 !important;
|
||||
border: unset !important;
|
||||
}
|
||||
|
||||
button.btn-ganti {/* ok */
|
||||
box-shadow: none !important;
|
||||
padding-top: 0;
|
||||
padding-bottom: 0;
|
||||
width: 9.5em;
|
||||
text-align: left;
|
||||
cursor: unset !important;
|
||||
}
|
||||
button.btn-ganti.btn-info {/* ok */
|
||||
color: var(--cui-white, rgba(255, 255, 255, 1));
|
||||
cursor: pointer !important;
|
||||
}
|
||||
button.btn-ganti span {/* ok */
|
||||
position: relative;
|
||||
left: -12px;
|
||||
display: inline-block;
|
||||
padding: 3px 8px;
|
||||
background: rgba(0,0,0,.15);
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
table>tbody tr.rp1 td:not(:last-child) { background-color:#0033ff; }
|
||||
table>tbody tr.rp2 td:not(:last-child) { background-color:#0066ff; }
|
||||
table>tbody tr.rp3 td:not(:last-child) { background-color:#0099ff; }
|
||||
table>tbody tr.rp4 td:not(:last-child) { background-color:#00ccff; }
|
||||
table>tbody tr.rp5 td:not(:last-child) { background-color:#00ffff; }
|
||||
|
||||
table button.plus-circle { background-color: var(--cui-success); }
|
||||
table button.minus-circle { background-color: var(--cui-danger); }
|
||||
table button.reload { background-color: var(--cui-secondary); }
|
||||
table a.plus-circle i { color: var(--cui-success); }
|
||||
table a.minus-circle i { color: var(--cui-danger); }
|
||||
table a.reload i { color: var(--cui-secondary); }
|
||||
|
||||
div.sim-code {
|
||||
overflow-wrap: break-word;
|
||||
}
|
||||
|
After Width: | Height: | Size: 466 KiB |
|
After Width: | Height: | Size: 142 KiB |
|
After Width: | Height: | Size: 46 KiB |
|
After Width: | Height: | Size: 163 KiB |
|
After Width: | Height: | Size: 266 KiB |
|
After Width: | Height: | Size: 69 KiB |
|
After Width: | Height: | Size: 35 KiB |
|
After Width: | Height: | Size: 94 KiB |
|
After Width: | Height: | Size: 498 KiB |
|
After Width: | Height: | Size: 210 KiB |
|
After Width: | Height: | Size: 59 KiB |
|
After Width: | Height: | Size: 220 KiB |
|
After Width: | Height: | Size: 280 B |
|
After Width: | Height: | Size: 8.3 KiB |
|
After Width: | Height: | Size: 1.3 KiB |
|
After Width: | Height: | Size: 1.3 KiB |
|
After Width: | Height: | Size: 52 KiB |
|
After Width: | Height: | Size: 2.8 KiB |
|
After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 53 KiB |
|
After Width: | Height: | Size: 3.3 KiB |
|
After Width: | Height: | Size: 1.7 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 3.4 KiB |
|
After Width: | Height: | Size: 2.2 KiB |
@@ -0,0 +1 @@
|
||||
!function(a){if(a.fn.datepicker)a.fn.datepicker.dates.id={days:["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"],daysShort:["Mgu","Sen","Sel","Rab","Kam","Jum","Sab"],daysMin:["M","S","S","R","K","J","S"],months:["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"],monthsShort:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Ags","Sep","Okt","Nov","Des"],today:"Hari Ini",clear:"Kosongkan"}}(jQuery);
|
||||
@@ -0,0 +1,32 @@
|
||||
/*******************************************************************
|
||||
|
||||
Module : /assets/locale/fonia.id.js
|
||||
Desc. : JS - Fonia Module Locale
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : January 28th, 2013.
|
||||
Last Modofied : November 22nd, 2019
|
||||
|
||||
(c) 2013 - 2019, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
if (typeof FoniaJS !== "undefined") {
|
||||
|
||||
FoniaJS.locale('id', {
|
||||
Fonia: {
|
||||
sess_expire: 'Session Anda telah berakhir, silakan login kembali!',
|
||||
page404: 'Halaman aplikasi belum tersedia!',
|
||||
input_passwd: 'Silakan masukkan Password!',
|
||||
input_userid: 'Silakan masukkan User ID!',
|
||||
auth_super: 'Persetujuan Supervisor',
|
||||
auth_user: 'Validasi Operator',
|
||||
auth_wait_msg: 'Menunggu disetujui oleh<br>Supervisor Anda...',
|
||||
cancel: 'Batal',
|
||||
auth_fail: 'Proses gagal!<br>Menunggu terlalu lama ...',
|
||||
auth_success: 'Proses disetujui!',
|
||||
but_add: 'Tambah',
|
||||
but_edit: 'Ubah'
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
@@ -0,0 +1,85 @@
|
||||
/*******************************************************************
|
||||
|
||||
Module : /assets/locale/moment.id.js
|
||||
Desc. : JS - Moment Locale
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : January 28th, 2013.
|
||||
Last Modofied : November 22nd, 2019
|
||||
|
||||
(c) 2013 - 2019, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
if (typeof moment !== "undefined") {
|
||||
|
||||
moment.locale('id', {
|
||||
months : 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember'.split('_'),
|
||||
monthsShort : 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Agt_Sep_Okt_Nov_Des'.split('_'),
|
||||
weekdays : 'Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu'.split('_'),
|
||||
weekdaysShort : 'Min_Sen_Sel_Rab_Kam_Jum_Sab'.split('_'),
|
||||
weekdaysMin : 'Mg_Sn_Sl_Rb_Km_Jm_Sb'.split('_'),
|
||||
longDateFormat : {
|
||||
LT : 'HH.mm',
|
||||
LTS : 'HH.mm.ss',
|
||||
L : 'DD-MM-YYYY',
|
||||
LL : 'D MMMM YYYY',
|
||||
LLL : 'D MMMM YYYY [pukul] HH.mm',
|
||||
LLLL : 'dddd, D MMMM YYYY [pukul] HH.mm'
|
||||
},
|
||||
meridiemParse: /pagi|siang|sore|malam/,
|
||||
meridiemHour : function (hour, meridiem) {
|
||||
if (hour === 12) {
|
||||
hour = 0;
|
||||
}
|
||||
if (meridiem === 'pagi') {
|
||||
return hour;
|
||||
} else if (meridiem === 'siang') {
|
||||
return hour >= 11 ? hour : hour + 12;
|
||||
} else if (meridiem === 'sore' || meridiem === 'malam') {
|
||||
return hour + 12;
|
||||
}
|
||||
},
|
||||
meridiem : function (hours, minutes, isLower) {
|
||||
if (hours < 11) {
|
||||
return 'pagi';
|
||||
} else if (hours < 15) {
|
||||
return 'siang';
|
||||
} else if (hours < 19) {
|
||||
return 'sore';
|
||||
} else {
|
||||
return 'malam';
|
||||
}
|
||||
},
|
||||
calendar : {
|
||||
sameDay : '[Hari ini pukul] LT',
|
||||
nextDay : '[Besok pukul] LT',
|
||||
nextWeek : 'dddd [pukul] LT',
|
||||
lastDay : '[Kemarin pukul] LT',
|
||||
lastWeek : 'dddd [lalu pukul] LT',
|
||||
sameElse : 'L'
|
||||
},
|
||||
relativeTime : {
|
||||
future : 'dalam %s',
|
||||
past : '%s yang lalu',
|
||||
s : 'beberapa detik',
|
||||
ss : '%d detik',
|
||||
m : 'semenit',
|
||||
mm : '%d menit',
|
||||
h : 'sejam',
|
||||
hh : '%d jam',
|
||||
d : 'sehari',
|
||||
dd : '%d hari',
|
||||
M : 'sebulan',
|
||||
MM : '%d bulan',
|
||||
y : 'setahun',
|
||||
yy : '%d tahun'
|
||||
},
|
||||
week : {
|
||||
dow : 1, // Monday is the first day of the week.
|
||||
doy : 7 // The week that contains Jan 7th is the first week of the year.
|
||||
}
|
||||
});
|
||||
|
||||
moment.locale('id');
|
||||
|
||||
}
|
||||
@@ -0,0 +1,53 @@
|
||||
<!------------------------------------------------------------------
|
||||
|
||||
Module : /assets/templates/404.php
|
||||
Desc. : HTML5 Page - Halaman Template Error 404
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : February 17th, 2020.
|
||||
|
||||
(c) 2020, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
------------------------------------------------------------------->
|
||||
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>[_APP_NAME_VER_] - Error 404</title>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="PhpED + FW9 @ 3FONIA Software"/>
|
||||
<meta name="author" content="Siau Pheng <siaupheng[at]3fonia.com>"/>
|
||||
<meta name="description" content="[_APP_NAME_VER_], [_APP_NAMES_]" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<link rel="icon" href="[_WEB_PATH_]assets/images/logo90.webp" type="image/png" />
|
||||
<link rel="shortcut icon" href="[_WEB_PATH_]assets/images/logo90.webp" type="image/png" />
|
||||
</head>
|
||||
<body class="c-app flex-row align-items-center">
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-xl-4 col-md-8">
|
||||
<div class="card-group">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<div class="mb-2">
|
||||
<img class="mx-auto d-block" src="[_WEB_PATH_]assets/images/logo150.webp" title="[_REG_NAME_UP_]">
|
||||
<div class="text-center pt-2 pb-2"><span class="reg_app1">[_APP_NAME_]</span><br><span class="reg_app2">Ver. [_APP_VER_]</span></div>
|
||||
</div>
|
||||
<div class="mb-2 mx-auto d-block text-center">
|
||||
<div class="font-5xl text-danger">4.0.4</div>
|
||||
<div class="font-lg text-info">Modul atau bagian aplikasi yang diakses tidak ditemukan !</div>
|
||||
</div>
|
||||
<div class="text-center pt-2 pb-2 d-none" id="divLoginMsg"> </div>
|
||||
<div class="pt-4">
|
||||
<div class="text-center">® [_CREATOR_YEAR_]. [_REG_NAME_]</div>
|
||||
<div class="text-center">All Rights Reserved.</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,88 @@
|
||||
<!------------------------------------------------------------------
|
||||
|
||||
Module : /assets/templates/index.php
|
||||
Desc. : HTML Page - Halaman Template / Themes
|
||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||
Created Date : October 10th, 2008.
|
||||
Last Modified : April 6th, 2022.
|
||||
|
||||
(c) 2008 - 2022, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
------------------------------------------------------------------->
|
||||
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>[_APP_NAME_VER_]</title>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="PhpED + FW9 @ 3FONIA Software"/>
|
||||
<meta name="author" content="Siau Pheng <siaupheng[at]3fonia.com>"/>
|
||||
<meta name="description" content="[_APP_NAME_VER_], [_APP_NAMES_]" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<link rel="icon" href="[_WEB_PATH_]assets/images/logo90.webp" type="image/png" />
|
||||
<link rel="shortcut icon" href="[_WEB_PATH_]assets/images/logo90.webp" type="image/png" />
|
||||
</head>
|
||||
<body>
|
||||
<div class="sidebar sidebar-dark sidebar-fixed d-lg-none" id="sidebar">
|
||||
<div class="sidebar-brand d-none d-md-flex">
|
||||
<img class="sidebar-brand-full" src="[_WEB_PATH_]assets/images/logo90.webp" height="46" title="[_APP_NAME_]">
|
||||
<img class="sidebar-brand-full ml-3" src="[_WEB_PATH_]assets/images/logo-apps.webp" height="46" title="[_APP_NAME_]">
|
||||
<img class="sidebar-brand-narrow" src="[_WEB_PATH_]assets/images/logo150.webp" height="46" title="[_APP_NAME_]">
|
||||
</div>
|
||||
<ul class="sidebar-nav" data-coreui="navigation" data-simplebar="">[_NAVI_SIDEBAR_]</ul>
|
||||
<button class="sidebar-toggler" type="button" data-coreui-toggle="unfoldable"></button>
|
||||
</div>
|
||||
|
||||
<div class="wrapper d-flex flex-column min-vh-100">
|
||||
<header class="header header-sticky">
|
||||
<div class="container-fluid px-0">
|
||||
<button class="header-toggler d-lg-none mr-auto" type="button" onclick="coreui.Sidebar.getInstance(document.querySelector('#sidebar')).toggle()"><i class="icon-lg cui-menu"></i></button>
|
||||
<ul class="header-nav d-none d-lg-flex">[_NAVI_HEADER_]</ul>
|
||||
<ul class="header-nav">
|
||||
<li class="nav-item dropdown d-flex align-items-center"><a class="nav-link py-0" data-coreui-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="true">[_USER_USER_]<div class="avatar avatar-md"><img class="avatar-img" src="[_WEB_PATH_]assets/images/[_USER_IMG_]" title="[_USER_NAME_]"></div></a>
|
||||
<div class="dropdown-menu dropdown-menu-end pt-0 mh-90" id="drop-usermenu" data-simplebar="">
|
||||
<div class="dropdown-item-text mt-1 text-center">
|
||||
<img src="[_WEB_PATH_]assets/images/[_USER_IMG_]" class="w-50 rounded-circle" alt="[_USER_NAME_]" />
|
||||
<div class="mt-1"><strong>[_USER_NAME_]</strong></div>
|
||||
<div><small>[_USER_POSISI_]</small></div>
|
||||
<div><small>[_USER_LASTLOG_]</small></div>
|
||||
</div>
|
||||
[_MENU_MODUL_]
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item slink" id="HomeLink"><i class="icon me-2 cui-home"></i> Beranda</a>
|
||||
<a class="dropdown-item"><i class="icon me-2 cui-user"></i> Profil</a>
|
||||
<!--<a class="dropdown-item"><i class="icon me-2 cui-settings"></i> Settings</a>-->
|
||||
<a class="dropdown-item mlink" id="SYSCLink"><i class="icon me-2 cui-lock-locked"></i> Ubah Password</a>
|
||||
<a class="dropdown-item slink" id="ExitLink"><i class="icon me-2 cui-account-logout"></i> Keluar</a>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="d-none header-divider"></div>
|
||||
<div class="d-none container-fluid">
|
||||
<nav aria-label="breadcrumb" id="pageBread"></nav>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<div class="body flex-grow-1">
|
||||
<div class="container-fluid mt-2 px-0 py-2">
|
||||
<div aria-live="polite" aria-atomic="true" class="position-relative">
|
||||
<div class="toast-container position-absolute top-0 end-0 p-3" id="div-toast"> </div>
|
||||
</div>
|
||||
<div id="pageToolbarTop" class="container-fluid"> </div>
|
||||
<div id="pageContent" class="container-fluid"> </div>
|
||||
<div id="pageToolbarBot" class="container-fluid"> </div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="footer">
|
||||
<div><a class="text-decoration-none text-reset" href="[_REG_WEBSITE_]">® [_CREATOR_YEAR_]; [_REG_NAME_]</a></div>
|
||||
<div class="ms-auto d-none d-md-block">Informasi : XXXX XXXX XXXX (Admin)</div>
|
||||
</footer>
|
||||
</div>
|
||||
<div id="dataPrint" class="d-none d-print-block"> </div>
|
||||
<div id="preloader"><div id="loader"></div></div>
|
||||
</body>
|
||||
</html>
|
||||