upgrade dan bugfix kinerja, faktor pendukung, dll
This commit is contained in:
@@ -5,7 +5,7 @@
|
|||||||
Desc. : JS - Kelola Faktor Pendukung OPD
|
Desc. : JS - Kelola Faktor Pendukung OPD
|
||||||
Created By : Siau Pheng ([email protected]).
|
Created By : Siau Pheng ([email protected]).
|
||||||
Created Date : December 7th, 2011.
|
Created Date : December 7th, 2011.
|
||||||
Last Modified : May 24th, 2026.
|
Last Modified : September 7th, 2026.
|
||||||
|
|
||||||
(c) 2011 - 2026, 3FONIA Software; WWW.3FONIA.COM.
|
(c) 2011 - 2026, 3FONIA Software; WWW.3FONIA.COM.
|
||||||
|
|
||||||
@@ -49,6 +49,20 @@ var FaktorOPDJS = {
|
|||||||
},
|
},
|
||||||
|
|
||||||
faktor_save: function(){
|
faktor_save: function(){
|
||||||
|
/*var _kosong = 0;
|
||||||
|
var _dok = $('#LabelMatrik1');
|
||||||
|
_dok.removeClass("btn-outline-success btn-outline-danger")
|
||||||
|
if (parseInt($('#Matrik_TW').val()) === 0) {
|
||||||
|
_kosong++;
|
||||||
|
_dok.addClass("btn-outline-danger");
|
||||||
|
} else {
|
||||||
|
_dok.addClass("btn-outline-success")
|
||||||
|
}
|
||||||
|
if (_kosong > 0) {
|
||||||
|
FoniaJS.showError('Tolong lengkapi Matrik Tindak Lanjut.');
|
||||||
|
return false;
|
||||||
|
}*/
|
||||||
|
|
||||||
var _param = ['data=simpan-faktor','ORGID','OPDID','K_OPD','DalevRenjaID'];
|
var _param = ['data=simpan-faktor','ORGID','OPDID','K_OPD','DalevRenjaID'];
|
||||||
$(':input[id^="Pendorong_"]').each((i,e) => { _param.push(e.id); });
|
$(':input[id^="Pendorong_"]').each((i,e) => { _param.push(e.id); });
|
||||||
$(':input[id^="Penghambat_"]').each((i,e) => { _param.push(e.id); });
|
$(':input[id^="Penghambat_"]').each((i,e) => { _param.push(e.id); });
|
||||||
@@ -63,6 +77,16 @@ var FaktorOPDJS = {
|
|||||||
}).send();
|
}).send();
|
||||||
},
|
},
|
||||||
|
|
||||||
|
matrik_download: function() {
|
||||||
|
var dload = new cEXPORT({
|
||||||
|
url: this.PHP,
|
||||||
|
filename: $('#Matrik_Template').val(),
|
||||||
|
});
|
||||||
|
dload.add_param('data', 'matrik-download');
|
||||||
|
dload.add_param('Matrik_Template');
|
||||||
|
dload.download();
|
||||||
|
},
|
||||||
|
|
||||||
data_query: function(tipe, mode){
|
data_query: function(tipe, mode){
|
||||||
if (tipe=="tabel-opd"){
|
if (tipe=="tabel-opd"){
|
||||||
new Request.JSONF({
|
new Request.JSONF({
|
||||||
@@ -77,7 +101,41 @@ var FaktorOPDJS = {
|
|||||||
$('#divFAKTOR').html(adata.html);
|
$('#divFAKTOR').html(adata.html);
|
||||||
$('#divFAKTOR')
|
$('#divFAKTOR')
|
||||||
.find('#butBatalFaktor').click((e) => this.show_hide(1)).end()
|
.find('#butBatalFaktor').click((e) => this.show_hide(1)).end()
|
||||||
.find('#butSimpanFaktor').click((e) => this.faktor_save());
|
.find('#butSimpanFaktor').click((e) => this.faktor_save()).end()
|
||||||
|
.find('#butMatrikDown').click((e) => this.matrik_download()).end()
|
||||||
|
.find('#FileMatrik1').off('change').change(() => {
|
||||||
|
const allow_ext = ['xls', 'xlsx'];
|
||||||
|
var fd = new FormData(), files = $('#FileMatrik1')[0].files[0];
|
||||||
|
var filext = files.name.split('.').pop().toLowerCase();
|
||||||
|
if ($.inArray(filext, allow_ext) === -1) {
|
||||||
|
FoniaJS.showError('Jenis File tidak dapat diterima !');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
fd.append('Matrik1', files);
|
||||||
|
fd.append('ORGID', $('#ORGID').val());
|
||||||
|
fd.append('OPDID', $('#OPDID').val());
|
||||||
|
fd.append('DalevRenjaID', $('#DalevRenjaID').val());
|
||||||
|
$.ajax({
|
||||||
|
url: this.PHP + '?data=matrik-upload',
|
||||||
|
type: 'post',
|
||||||
|
data: fd,
|
||||||
|
contentType: false,
|
||||||
|
processData: false,
|
||||||
|
success: (ares) => {
|
||||||
|
var _dok = $('#LabelMatrik1');
|
||||||
|
_dok.removeClass("btn-outline-success btn-outline-danger")
|
||||||
|
if (ares && ares.result !== 0){
|
||||||
|
FoniaJS.showInfo('Sukses upload file Dokumen Matrik !');
|
||||||
|
$('#Matrik_Name').html(ares.Matrik_Name);
|
||||||
|
$('#Matrik_TW').val(ares.Matrik_TW);
|
||||||
|
_dok.addClass("btn-outline-success")
|
||||||
|
} else {
|
||||||
|
_dok.addClass("btn-outline-danger");
|
||||||
|
FoniaJS.showError(ares.message ?? 'Ada masalah dalam proses upload Dokumen Matrik !');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}).send();
|
}).send();
|
||||||
}
|
}
|
||||||
|
|||||||
+87
-4
@@ -5,7 +5,7 @@
|
|||||||
Desc. : JS - Kelola Realisasi Kinerja OPD
|
Desc. : JS - Kelola Realisasi Kinerja OPD
|
||||||
Created By : Siau Pheng ([email protected]).
|
Created By : Siau Pheng ([email protected]).
|
||||||
Created Date : December 7th, 2011.
|
Created Date : December 7th, 2011.
|
||||||
Last Modified : May 24th, 2026.
|
Last Modified : September 7th, 2026.
|
||||||
|
|
||||||
(c) 2011 - 2026, 3FONIA Software; WWW.3FONIA.COM.
|
(c) 2011 - 2026, 3FONIA Software; WWW.3FONIA.COM.
|
||||||
|
|
||||||
@@ -100,7 +100,32 @@ var KinerjaJS = {
|
|||||||
},
|
},
|
||||||
|
|
||||||
prog_save: function(){
|
prog_save: function(){
|
||||||
//todo: cek jika simpan dg !empty kinerja, wajib isi sumber data.
|
var _kosong = 0;
|
||||||
|
$(':input[id^="Prog_TW_"]').each((i,e) => {
|
||||||
|
var _id = e.id.replace('Prog_TW', '');
|
||||||
|
if (e.value && e.value.trim() !== '' && parseFloat(e.value) > 0) {
|
||||||
|
var _sumber = $('#Sumber_TW'+_id); _catat = $('#Catat_TW'+_id);
|
||||||
|
_sumber.removeClass("is-valid is-invalid")
|
||||||
|
_catat.removeClass("is-valid is-invalid")
|
||||||
|
if (_sumber.val() === '') {
|
||||||
|
_kosong++;
|
||||||
|
_sumber.addClass("is-invalid").focus();
|
||||||
|
} else {
|
||||||
|
_sumber.addClass("is-valid")
|
||||||
|
}
|
||||||
|
if (_catat.val() === '') {
|
||||||
|
_kosong++;
|
||||||
|
_catat.addClass("is-invalid").focus();
|
||||||
|
} else {
|
||||||
|
_catat.addClass("is-valid")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
if (_kosong > 0) {
|
||||||
|
FoniaJS.showError('Tolong lengkapi Sumber Data / Eviden.');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
var _param = ['data=tabel-prog','mode_detail=update','Hak_Tw','ORGID','OPDID','ProgID','DPAProgID'];
|
var _param = ['data=tabel-prog','mode_detail=update','Hak_Tw','ORGID','OPDID','ProgID','DPAProgID'];
|
||||||
$(':input[id^="Prog_TW_"]').each((i,e) => { _param.push(e.id); });
|
$(':input[id^="Prog_TW_"]').each((i,e) => { _param.push(e.id); });
|
||||||
$(':input[id^="Sumber_TW_"]').each((i,e) => { _param.push(e.id); });
|
$(':input[id^="Sumber_TW_"]').each((i,e) => { _param.push(e.id); });
|
||||||
@@ -136,15 +161,73 @@ var KinerjaJS = {
|
|||||||
const tombol = [{},{i:'butTutup'},{i:'butWSimpan',v:'Simpan',c:'success'}];
|
const tombol = [{},{i:'butTutup'},{i:'butWSimpan',v:'Simpan',c:'success'}];
|
||||||
if ($('#Hak_Bln').val()==0) tombol.pop();
|
if ($('#Hak_Bln').val()==0) tombol.pop();
|
||||||
this.winDSub = FoniaJS.showWindow('DSub', 'Kinerja dan Informasi Sub Kegiatan', txt, 'xl', tombol, () => {
|
this.winDSub = FoniaJS.showWindow('DSub', 'Kinerja dan Informasi Sub Kegiatan', txt, 'xl', tombol, () => {
|
||||||
$('#winDSub').find('#butWSimpan').click(() => this.sub_save());
|
$('#winDSub')
|
||||||
|
.find('#butWSimpan').click(() => this.sub_save()).end()
|
||||||
|
.find('#FileEviden1').off('change').change(() => {
|
||||||
|
const allow_ext = ['pdf', 'doc', 'docx', 'xls', 'xlsx', 'png', 'jpg', 'mpg', 'mp4'];
|
||||||
|
var fd = new FormData(), files = $('#FileEviden1')[0].files[0];
|
||||||
|
var filext = files.name.split('.').pop().toLowerCase();
|
||||||
|
if ($.inArray(filext, allow_ext) === -1) {
|
||||||
|
FoniaJS.showError('Jenis File tidak dapat diterima !');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
fd.append('Eviden1', files);
|
||||||
|
fd.append('ORGID', $('#ORGID').val());
|
||||||
|
fd.append('OPDID', $('#OPDID').val());
|
||||||
|
fd.append('DPASubID', $('#DPASubID').val());
|
||||||
|
$.ajax({
|
||||||
|
url: this.PHP + '?data=eviden-upload',
|
||||||
|
type: 'post',
|
||||||
|
data: fd,
|
||||||
|
contentType: false,
|
||||||
|
processData: false,
|
||||||
|
success: (ares) => {
|
||||||
|
var _dok = $('#LabelEviden1');
|
||||||
|
_dok.removeClass("btn-outline-success btn-outline-danger")
|
||||||
|
if (ares && ares.result !== 0){
|
||||||
|
FoniaJS.showInfo('Sukses upload file Dokumen Eviden !');
|
||||||
|
$('#Eviden_Name').html(ares.Eviden_Name);
|
||||||
|
$('#Eviden_TW').val(ares.Eviden_TW);
|
||||||
|
_dok.addClass("btn-outline-success")
|
||||||
|
} else {
|
||||||
|
_dok.addClass("btn-outline-danger");
|
||||||
|
FoniaJS.showError(ares.message ?? 'Ada masalah dalam proses upload Dokumen Eviden !');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}).send();
|
}).send();
|
||||||
},
|
},
|
||||||
|
|
||||||
sub_save: function(){
|
sub_save: function(){
|
||||||
|
var _kosong = 0;
|
||||||
|
var _evi = $('#Real_TW').val();
|
||||||
|
if (_evi && _evi.trim() !== '' && parseFloat(_evi) > 0) {
|
||||||
|
var _dok = $('#LabelEviden1');
|
||||||
|
_dok.removeClass("btn-outline-success btn-outline-danger")
|
||||||
|
if (parseInt($('#Eviden_TW').val()) === 0) {
|
||||||
|
_kosong++;
|
||||||
|
_dok.addClass("btn-outline-danger");
|
||||||
|
} else {
|
||||||
|
_dok.addClass("btn-outline-success")
|
||||||
|
}
|
||||||
|
var _catat = $('#Real_Catatan');
|
||||||
|
_catat.removeClass("is-valid is-invalid")
|
||||||
|
if (_catat.val() === '') {
|
||||||
|
_kosong++;
|
||||||
|
_catat.addClass("is-invalid").focus();
|
||||||
|
} else {
|
||||||
|
_catat.addClass("is-valid")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (_kosong > 0) {
|
||||||
|
FoniaJS.showError('Tolong lengkapi Eviden / Catatan.');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
var _param = ['data=tabel-sub','Hak_Bln','ORGID','OPDID','ProgID','KegID','SubID','DPASubID','Real_Catatan','Real_No_Kontrak','Real_Pelaksana','DPASubOutputID','Real_TW','mode_detail=update'];
|
var _param = ['data=tabel-sub','Hak_Bln','ORGID','OPDID','ProgID','KegID','SubID','DPASubID','Real_Catatan','Real_No_Kontrak','Real_Pelaksana','DPASubOutputID','Real_TW','mode_detail=update'];
|
||||||
//$(':input[id^="Output_TW_"]').each((i,e) => { _param.push(e.id); });
|
|
||||||
new Request.JSONF({
|
new Request.JSONF({
|
||||||
url: this.PHP,
|
url: this.PHP,
|
||||||
sendParam: _param,
|
sendParam: _param,
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
Desc. : PHP - Fungsi SiMONEv
|
Desc. : PHP - Fungsi SiMONEv
|
||||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||||
Created Date : May 15th, 2012.
|
Created Date : May 15th, 2012.
|
||||||
Last Modified : February 3rd, 2026.
|
Last Modified : September 7th, 2026.
|
||||||
|
|
||||||
(c) 2012 - 2026, 3FONIA Software; WWW.3FONIA.COM.
|
(c) 2012 - 2026, 3FONIA Software; WWW.3FONIA.COM.
|
||||||
|
|
||||||
@@ -83,13 +83,14 @@ function tipedata_query() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function tipedata_select($id_target = "Target_Indi", $id_tipe = 0, $val_target = "", $bol_en = false, $a_input = [], $tcss = "") {
|
function tipedata_select($id_target = "Target_Indi", $id_tipe = 0, $val_target = "", $bol_en = false, $a_input = [], $tcss = "") {
|
||||||
$ttarget = '<input type="double" class="form-control double" id="'.$id_target.'" value="'.floatval($val_target).'"'.($bol_en?'':' readonly').' required="true" />';
|
$ttarget = '<input type="double" class="form-control double '.$tcss.'" id="'.$id_target.'" value="'.floatval($val_target).'"'.($bol_en?'':' readonly').' required="true" />';
|
||||||
if ($id_tipe == 2) { // rasio
|
if ($id_tipe == 2) { // rasio
|
||||||
$atarget = ($val_target == "") ? [0,0] : explode(":", $val_target);
|
$atarget = ($val_target == "") ? [0,0] : explode(":", $val_target);
|
||||||
|
$vtarget = '';
|
||||||
for ($i = 0; $i < 10; $i++) $vtarget .= array_merge(range('a','z'),range('A','Z'))[rand(0,51)];
|
for ($i = 0; $i < 10; $i++) $vtarget .= array_merge(range('a','z'),range('A','Z'))[rand(0,51)];
|
||||||
$ttarget = '<div class="input-group '.$tcss.'"><input type="number" class="form-control" id="'.$vtarget.'_b" value="'.$atarget[0].'"'.($bol_en?'':' readonly').' required=true onchange="$(\'#'.$id_target.'\').val(($(\'#'.$vtarget.'_b\').val()||\'0\')+\':\'+($(\'#'.$vtarget.'_a\').val()||\'0\'));" /><span class="input-group-text">:<input type="hidden" id="'.$id_target.'" value="'.$val_target.'"></span><input type="number" class="form-control" id="'.$vtarget.'_a" value="'.$atarget[1].'"'.($bol_en?'':' readonly').' required=true onchange="$(\'#'.$id_target.'\').val(($(\'#'.$vtarget.'_b\').val()||\'0\')+\':\'+($(\'#'.$vtarget.'_a\').val()||\'0\'));" /></div>';
|
$ttarget = '<div class="input-group '.$tcss.'"><input type="number" class="form-control" id="'.$vtarget.'_b" value="'.$atarget[0].'"'.($bol_en?'':' readonly').' required=true onchange="$(\'#'.$id_target.'\').val(($(\'#'.$vtarget.'_b\').val()||\'0\')+\':\'+($(\'#'.$vtarget.'_a\').val()||\'0\'));" /><span class="input-group-text">:<input type="hidden" id="'.$id_target.'" value="'.$val_target.'"></span><input type="number" class="form-control" id="'.$vtarget.'_a" value="'.$atarget[1].'"'.($bol_en?'':' readonly').' required=true onchange="$(\'#'.$id_target.'\').val(($(\'#'.$vtarget.'_b\').val()||\'0\')+\':\'+($(\'#'.$vtarget.'_a\').val()||\'0\'));" /></div>';
|
||||||
} else if ($id_tipe > 2) { // enum_v2
|
} else if ($id_tipe > 2) { // enum_v2
|
||||||
$ttarget = '<select class="form-select" id="'.$id_target.'" name="'.$id_target.'"'.($bol_en?'':' disabled=true').'>';
|
$ttarget = '<select class="form-select '.$tcss.'" id="'.$id_target.'" name="'.$id_target.'"'.($bol_en?'':' disabled=true').'>';
|
||||||
//$ttarget .= '<option value="">-</option>'; option-tags
|
//$ttarget .= '<option value="">-</option>'; option-tags
|
||||||
foreach($a_input as $_key => $_val) {
|
foreach($a_input as $_key => $_val) {
|
||||||
$ttarget .= '<option value="'.$_key.'"'.($_key==$val_target?' selected="selected"':'').'>'.$_val.'</option>';
|
$ttarget .= '<option value="'.$_key.'"'.($_key==$val_target?' selected="selected"':'').'>'.$_val.'</option>';
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
Desc. : PHP - Evaluasi Hasil Kinerja Triwulan
|
Desc. : PHP - Evaluasi Hasil Kinerja Triwulan
|
||||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||||
Created Date : December 7th, 2011.
|
Created Date : December 7th, 2011.
|
||||||
Last Modified : July 4th, 2026.
|
Last Modified : September 7th, 2026.
|
||||||
|
|
||||||
(c) 2011 - 2026, 3FONIA Software; WWW.3FONIA.COM.
|
(c) 2011 - 2026, 3FONIA Software; WWW.3FONIA.COM.
|
||||||
|
|
||||||
@@ -201,7 +201,8 @@ if ( $data == "print" ) {
|
|||||||
$body .= sprintf($_skor, "RATA-RATA CAPAIAN KINERJA DAN ANGGARAN DARI SELURUH PROGRAM (%)", uang2($atotal['T_13K']/$atotal['Prog'])." %", uang2($atotal['T_13RP']/$atotal['Prog'])." %");
|
$body .= sprintf($_skor, "RATA-RATA CAPAIAN KINERJA DAN ANGGARAN DARI SELURUH PROGRAM (%)", uang2($atotal['T_13K']/$atotal['Prog'])." %", uang2($atotal['T_13RP']/$atotal['Prog'])." %");
|
||||||
$body .= sprintf($_skor, "PREDIKAT KINERJA DARI SELURUH PROGRAM", emonev_kinerja($atotal['T_13K']/$atotal['Prog']), emonev_kinerja($atotal['T_13RP']/$atotal['Prog']));
|
$body .= sprintf($_skor, "PREDIKAT KINERJA DARI SELURUH PROGRAM", emonev_kinerja($atotal['T_13K']/$atotal['Prog']), emonev_kinerja($atotal['T_13RP']/$atotal['Prog']));
|
||||||
|
|
||||||
echo $header . $body . "</tbody></table>";
|
$footer = sprintf('<div class="d-flex flex-row-reverse"><div>%s, %s<br>Mengetahui Pimpinan,<br>Kepala %s<div class="py-5"> </div>%s<br>%s</div></div>', $aopd['N_Lokasi'], tgl_dmy(), $aopd['N_OPD'], $aopd['P_Nama'], 'NIP. '.$aopd['P_NIP']);
|
||||||
|
echo $header . $body . "</tbody></table>" . $footer;
|
||||||
|
|
||||||
} else if ( $data == "default") {
|
} else if ( $data == "default") {
|
||||||
$q_opd = "";
|
$q_opd = "";
|
||||||
|
|||||||
+77
-19
@@ -7,7 +7,7 @@
|
|||||||
Desc. : PHP - Kelola Faktor Pendukung OPD
|
Desc. : PHP - Kelola Faktor Pendukung OPD
|
||||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||||
Created Date : December 7th, 2011.
|
Created Date : December 7th, 2011.
|
||||||
Last Modified : August 26th, 2026.
|
Last Modified : September 7th, 2026.
|
||||||
|
|
||||||
(c) 2011 - 2026, 3FONIA Software; WWW.3FONIA.COM.
|
(c) 2011 - 2026, 3FONIA Software; WWW.3FONIA.COM.
|
||||||
|
|
||||||
@@ -28,7 +28,7 @@ $mode = Param::Get("mode");
|
|||||||
$mode_detail = Param::Get("mode_detail");
|
$mode_detail = Param::Get("mode_detail");
|
||||||
$emon_en = Param::Get("Hak_Real", 0);
|
$emon_en = Param::Get("Hak_Real", 0);
|
||||||
$id_rpjmd = $_SESSION['__WEB_APP']['REAL_RPJMDID'];
|
$id_rpjmd = $_SESSION['__WEB_APP']['REAL_RPJMDID'];
|
||||||
$thn_renja = $_SESSION['__WEB_APP']['REAL_THN'];
|
$thn_data = $_SESSION['__WEB_APP']['REAL_THN'];
|
||||||
$tw_data = $_SESSION['__WEB_APP']['REAL_TW'];
|
$tw_data = $_SESSION['__WEB_APP']['REAL_TW'];
|
||||||
$id_org = Param::Get("ORGID", 0);
|
$id_org = Param::Get("ORGID", 0);
|
||||||
$id_opd = Param::Get("OPDID", 0);
|
$id_opd = Param::Get("OPDID", 0);
|
||||||
@@ -36,7 +36,7 @@ $k_opd = Param::Get("K_OPD", "");
|
|||||||
$id_faktor = Param::Get("DalevRenjaID", 0);
|
$id_faktor = Param::Get("DalevRenjaID", 0);
|
||||||
|
|
||||||
if ( in_array($data, ["tabel-opd","detail-faktor"]) ) {
|
if ( in_array($data, ["tabel-opd","detail-faktor"]) ) {
|
||||||
$qsql = " Tahun='".$thn_renja."'";
|
$qsql = " Tahun='".$thn_data."'";
|
||||||
$msql = "M.Aktif=1";
|
$msql = "M.Aktif=1";
|
||||||
|
|
||||||
if ( $data == "tabel-opd" ) {
|
if ( $data == "tabel-opd" ) {
|
||||||
@@ -55,7 +55,7 @@ if ( $data == "tabel-opd" ) {
|
|||||||
$f_tw = "IFNULL(H.Hak_Kin_T".$tw_data.",1)";
|
$f_tw = "IFNULL(H.Hak_Kin_T".$tw_data.",1)";
|
||||||
}
|
}
|
||||||
$obj = new Table($db);
|
$obj = new Table($db);
|
||||||
$obj->set_query("SELECT M.OPDID,M.ORGID,M.K_OPD,M.N_OPD,M.Nama_OPD,".$f_tw." Hak_Tw FROM vi_para90_opd M LEFT JOIN (SELECT * FROM sippd_akses_mon WHERE Tahun='".$thn_renja."') H ON (H.OPDID=M.OPDID) WHERE ".$msql);
|
$obj->set_query("SELECT M.OPDID,M.ORGID,M.K_OPD,M.N_OPD,M.Nama_OPD,".$f_tw." Hak_Tw FROM vi_para90_opd M LEFT JOIN (SELECT * FROM sippd_akses_mon WHERE Tahun='".$thn_data."') H ON (H.OPDID=M.OPDID) WHERE ".$msql);
|
||||||
$obj->add_field("OPDID", "OPD", "hid");
|
$obj->add_field("OPDID", "OPD", "hid");
|
||||||
$obj->add_field("ORGID", "ORG", "hid");
|
$obj->add_field("ORGID", "ORG", "hid");
|
||||||
$obj->add_field("Nama_OPD", "Nama OPD", "hid");
|
$obj->add_field("Nama_OPD", "Nama OPD", "hid");
|
||||||
@@ -72,48 +72,106 @@ if ( $data == "tabel-opd" ) {
|
|||||||
} else if ( $data == "simpan-faktor" ) {
|
} else if ( $data == "simpan-faktor" ) {
|
||||||
$pdor = Param::Get("Pendorong_TWX", "");
|
$pdor = Param::Get("Pendorong_TWX", "");
|
||||||
$pham = Param::Get("Penghambat_TWX", "");
|
$pham = Param::Get("Penghambat_TWX", "");
|
||||||
$pla1 = Param::Get("Lanjut_TWX", "");
|
//$pla1 = Param::Get("Lanjut_TWX", "");
|
||||||
$pla2 = Param::Get("Lanjut_RKPD_TWX", "");
|
$pla2 = Param::Get("Lanjut_RKPD_TWX", "");
|
||||||
$db->Query("REPLACE INTO dpa_dalev_renja (DalevRenjaID,RPJMDID,Tahun,ORGID,OPDID,K_OPD,Pendorong_TW".$tw_data.",Penghambat_TW".$tw_data.",Lanjut_TW".$tw_data.",Lanjut_RKPD_TW".$tw_data.") VALUES ('".$id_faktor."','".$id_rpjmd."','".$thn_renja."','".$id_org."','".$id_opd."','".$k_opd."','".$pdor."','".$pham."','".$pla1."','".$pla2."')");
|
//$db->Query("REPLACE INTO dpa_dalev_renja (DalevRenjaID,RPJMDID,Tahun,ORGID,OPDID,K_OPD,Pendorong_TW".$tw_data.",Penghambat_TW".$tw_data.",Lanjut_TW".$tw_data.",Lanjut_RKPD_TW".$tw_data.") VALUES ('".$id_faktor."','".$id_rpjmd."','".$thn_data."','".$id_org."','".$id_opd."','".$k_opd."','".$pdor."','".$pham."','".$pla1."','".$pla2."')");
|
||||||
|
$db->Query("REPLACE INTO dpa_dalev_renja (DalevRenjaID,RPJMDID,Tahun,ORGID,OPDID,K_OPD,Pendorong_TW".$tw_data.",Penghambat_TW".$tw_data.",Lanjut_RKPD_TW".$tw_data.") VALUES ('".$id_faktor."','".$id_rpjmd."','".$thn_data."','".$id_org."','".$id_opd."','".$k_opd."','".$pdor."','".$pham."','".$pla2."')");
|
||||||
|
|
||||||
} else if ( $data == "detail-faktor" ) {
|
} else if ( $data == "detail-faktor" ) {
|
||||||
$arec = [];
|
$arec = [];
|
||||||
$db->Query("SELECT * FROM dpa_dalev_renja WHERE Tahun='".$thn_renja."' AND OPDID='".$id_opd."' LIMIT 1");
|
$db->Query("SELECT * FROM dpa_dalev_renja WHERE Tahun='".$thn_data."' AND OPDID='".$id_opd."' LIMIT 1");
|
||||||
if ($db->Next()) $arec = $db->AllRow();
|
if ($db->Next()) $arec = array_merge($arec, $db->AllRow());
|
||||||
|
$db->Query("SELECT K_OPD FROM para90_opd WHERE OPDID='".$id_opd."' LIMIT 1");
|
||||||
|
if ($db->Next()) $arec = array_merge($arec, $db->AllRow());
|
||||||
|
$db->Query("SELECT SUM(IF(TW='".$tw_data."',1,0)) Matrik_TW,IF(TW='".$tw_data."',Matrik_Name,'') Matrik_Name FROM dpa_dalev_renja_matrik WHERE Tahun='".$arec['Tahun']."' AND DalevRenjaID='".$arec['DalevRenjaID']."' AND Aktif=1");
|
||||||
|
if ($db->Next()) $arec = array_merge($arec, $db->AllRow());
|
||||||
|
|
||||||
|
if ((int) $arec['Matrik_TW'] === 0) {
|
||||||
|
$arec['Matrik_TW'] = 0;
|
||||||
|
$arec['Matrik_Name'] = 'belum ada file matrik';
|
||||||
|
}
|
||||||
|
$arec['Matrik_Template'] = $arec['K_OPD'] .'-'. $thn_data .'-'. isi_nol($tw_data,2) .'.xls';
|
||||||
|
|
||||||
$form = new Form($db);
|
$form = new Form($db);
|
||||||
$tdor = $form->textarea("_", "Pendorong_TWX", $arec['Pendorong_TW'.$tw_data], $emon_en, true, 3);
|
$tdor = $form->textarea("_", "Pendorong_TWX", $arec['Pendorong_TW'.$tw_data], $emon_en, true, 3);
|
||||||
$tham = $form->textarea("_", "Penghambat_TWX", $arec['Penghambat_TW'.$tw_data], $emon_en, true, 3);
|
$tham = $form->textarea("_", "Penghambat_TWX", $arec['Penghambat_TW'.$tw_data], $emon_en, true, 3);
|
||||||
$tla1 = $form->textarea("_", "Lanjut_TWX", $arec['Lanjut_TW'.$tw_data], $emon_en, true, 3);
|
//$tla1 = $form->textarea("_", "Lanjut_TWX", $arec['Lanjut_TW'.$tw_data], $emon_en, true, 3);
|
||||||
$tla2 = $form->textarea("_", "Lanjut_RKPD_TWX", $arec['Lanjut_RKPD_TW'.$tw_data], $emon_en, true, 3);
|
$tla2 = $form->textarea("_", "Lanjut_RKPD_TWX", $arec['Lanjut_RKPD_TW'.$tw_data], $emon_en, true, 3);
|
||||||
|
|
||||||
$ajson['html'] = '
|
$ajson['html'] = '
|
||||||
<div class="row mb-2">
|
<div class="row my-2">
|
||||||
<div class="col"><h5 class="text-center">Faktor dan Tindak Lanjut <strong>Triwulan '.romawi($tw_data).'</strong></h5></div>
|
<div class="col"><h5 class="text-center">Faktor dan Tindak Lanjut <strong>Triwulan '.romawi($tw_data).'</strong></h5></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row mb-1">
|
<div class="row mb-1">
|
||||||
<label class="col-sm-4 col-lg-2 col-form-label" for="Pendorong_TWX">Faktor Pendukung Keberhasilan Kinerja</label>
|
<label class="col-sm-5 col-lg-3 col-form-label" for="Pendorong_TWX">Faktor Pendukung Keberhasilan Kinerja</label>
|
||||||
<div class="col">'.$tdor.'</div>
|
<div class="col">'.$tdor.'</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row mb-1">
|
<div class="row mb-1">
|
||||||
<label class="col-sm-4 col-lg-2 col-form-label" for="Penghambat_TWX">Faktor Penghambat Pencapaian Kinerja</label>
|
<label class="col-sm-5 col-lg-3 col-form-label" for="Penghambat_TWX">Faktor Penghambat Pencapaian Kinerja</label>
|
||||||
<div class="col">'.$tham.'</div>
|
<div class="col">'.$tham.'</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row mb-1">
|
<div class="row mb-1">
|
||||||
<label class="col-sm-4 col-lg-2 col-form-label" for="Lanjut_TWX">Tindak Lanjut yang Diperlukan Dalam Triwulan Berikutnya</label>
|
<label class="col-sm-5 col-lg-3 col-form-label" for="Lanjut_TWX">Matrik Tindak Lanjut untuk Pencapaian Triwulan Berikutnya</label>
|
||||||
<div class="col">'.$tla1.'</div>
|
<div class="col-sm-7 col-lg-4">
|
||||||
|
<div class="input-group">
|
||||||
|
<button class="btn btn-outline-warning" id="butMatrikDown"><i class="bi-cloud-download me-1"></i>Download</button>
|
||||||
|
<label class="form-control">'.$arec['Matrik_Template'].'</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm-7 col-lg-5">
|
||||||
|
<div class="input-group">
|
||||||
|
<label class="btn '.((int) $arec['Matrik_TW']===0?'btn-outline-danger':'btn-outline-success').'" id="LabelMatrik1" for="FileMatrik1"><i class="bi-cloud-upload me-1"></i>Upload<input type="file" name="FileMatrik1" id="FileMatrik1" class="d-none" accept=".xls, .xlsx"></label>
|
||||||
|
<label class="form-control" id="Matrik_Name" for="FileMatrik1">'.$arec['Matrik_Name'].'</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row mb-1">
|
<div class="row mb-1">
|
||||||
<label class="col-sm-4 col-lg-2 col-form-label" for="Lanjut_RKPD_TWX">Tindak Lanjut yang Diperlukan Dalam RKPD Berikutnya</label>
|
<label class="col-sm-5 col-lg-3 col-form-label" for="Lanjut_RKPD_TWX">Tindak Lanjut yang Diperlukan Dalam RKPD Berikutnya</label>
|
||||||
<div class="col">'.$tla2.'</div>
|
<div class="col">'.$tla2.'</div>
|
||||||
</div>
|
</div>
|
||||||
'.($emon_en?'<div class="row mt-1"><div class="col text-end"><button type="button" class="btn btn-warning me-2" id="butBatalFaktor">Batal</button><button type="button" class="btn btn-success" id="butSimpanFaktor">Simpan</button></div></div>':'').'
|
'.($emon_en?'<div class="row mt-2"><div class="col text-end"><button type="button" class="btn btn-warning me-2" id="butBatalFaktor">Batal</button><button type="button" class="btn btn-success" id="butSimpanFaktor">Simpan</button></div></div>':'').'
|
||||||
<input type="hidden" id="DalevRenjaID" value="'.$arec['DalevRenjaID'].'">';
|
<input type="hidden" id="DalevRenjaID" value="'.$arec['DalevRenjaID'].'">
|
||||||
|
<input type="hidden" id="Matrik_Template" value="'.$arec['Matrik_Template'].'">
|
||||||
|
<input type="hidden" id="Matrik_TW" value="'.$arec['Matrik_TW'].'">';
|
||||||
|
|
||||||
} else if ( $data == "default") {
|
} else if ( $data == "matrik-download") {
|
||||||
|
$_file = $_SESSION['__WEB_APP']['REAL_PATH'] . 'assets/dokumen/template.xlsx';
|
||||||
|
$_name = Param::Get('Matrik_Template', '');
|
||||||
|
|
||||||
|
// xlsx = application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
|
||||||
|
header('Content-Type: application/vnd.ms-excel');
|
||||||
|
//header('Content-Disposition: attachment; filename="' . $_name . '"');
|
||||||
|
|
||||||
|
echo file_get_contents($_file);
|
||||||
|
exit;
|
||||||
|
|
||||||
|
} else if ( $data === "matrik-upload") {
|
||||||
|
$file1_ok = false;
|
||||||
|
$file1_name = $_FILES['Matrik1']['name'];
|
||||||
|
$file1_size = $_FILES['Matrik1']['size'];
|
||||||
|
$file1_ext = pathinfo($file1_name, PATHINFO_EXTENSION);
|
||||||
|
$ajson['result'] = 0;
|
||||||
|
if ($file1_size < 20480000) {
|
||||||
|
$file1_ok = true;
|
||||||
|
} else {
|
||||||
|
$ajson['message'] = "Ukuran file diatas 20MB !";
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($file1_ok === true) {
|
||||||
|
$saveas = md5("EMONEVMPW-F" . $thn_data . $id_faktor ."1". time()) .".". $file1_ext;
|
||||||
|
if (!is_dir($_SESSION['__WEB_APP']['REAL_PATH'].'dokumen')) mkdir($_SESSION['__WEB_APP']['REAL_PATH'].'dokumen', 0775, true);
|
||||||
|
if (move_uploaded_file($_FILES['Matrik1']['tmp_name'], $_SESSION['__WEB_APP']['REAL_PATH'].'dokumen/'.$saveas)) {
|
||||||
|
$db->Query("INSERT INTO dpa_dalev_renja_matrik SET Tahun='".$thn_data."',DalevRenjaID='".$id_faktor."',ORGID='".$id_org."',OPDID='".$id_opd."',TW='".$tw_data."',Matrik_Name='".$file1_name."',Matrik_File='".$saveas."',Matrik_Size='".format_bytes($file1_size)."',UserID='".user_id()."'");
|
||||||
|
$ajson['result'] = 1;
|
||||||
|
$ajson['Matrik_Name'] = $file1_name;
|
||||||
|
$ajson['Matrik_TW'] = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
} else if ( $data === "default") {
|
||||||
echo '
|
echo '
|
||||||
<div class="fade-in">
|
<div class="fade-in">
|
||||||
<div class="card"><div class="card-header custom-style">Kelola Data Faktor Pendukung OPD // Tahun Anggaran '.$thn_renja.'</div><div class="card-body">
|
<div class="card"><div class="card-header custom-style">Kelola Data Faktor Pendukung OPD // Tahun Anggaran '.$thn_data.'</div><div class="card-body">
|
||||||
<div class="row mb-1">
|
<div class="row mb-1">
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
|
|||||||
@@ -40,37 +40,37 @@ if ( $data == "simpan-faktor" ) {
|
|||||||
$db->Query("REPLACE INTO dpa_dalev_rkpd (DalevRKPDID,RPJMDID,Tahun,Pendorong_TW".$tw_data.",Penghambat_TW".$tw_data.",Lanjut_TW".$tw_data.",Lanjut_RKPD_TW".$tw_data.") VALUES ('".$id_faktor."','".$id_rpjmd."','".$thn_renja."','".$pdor."','".$pham."','".$pla1."','".$pla2."')");
|
$db->Query("REPLACE INTO dpa_dalev_rkpd (DalevRKPDID,RPJMDID,Tahun,Pendorong_TW".$tw_data.",Penghambat_TW".$tw_data.",Lanjut_TW".$tw_data.",Lanjut_RKPD_TW".$tw_data.") VALUES ('".$id_faktor."','".$id_rpjmd."','".$thn_renja."','".$pdor."','".$pham."','".$pla1."','".$pla2."')");
|
||||||
|
|
||||||
} else if ( $data == "detail-faktor" ) {
|
} else if ( $data == "detail-faktor" ) {
|
||||||
$arec = [];
|
$arec = [ 'DalevRKPDID' => 0 ];
|
||||||
$db->Query("SELECT * FROM dpa_dalev_rkpd WHERE Tahun='".$thn_renja."' LIMIT 1");
|
$db->Query("SELECT * FROM dpa_dalev_rkpd WHERE Tahun='".$thn_renja."' LIMIT 1");
|
||||||
if ($db->Next()) $arec = $db->AllRow();
|
if ($db->Next()) $arec = $db->AllRow();
|
||||||
|
|
||||||
$form = new Form($db);
|
$form = new Form($db);
|
||||||
$tdor = $form->textarea("_", "Pendorong_TWX", $arec['Pendorong_TW'.$tw_data], $emon_en, true, 3);
|
$tdor = $form->textarea("_", "Pendorong_TWX", $arec['Pendorong_TW'.$tw_data] ?? '', $emon_en, true, 3);
|
||||||
$tham = $form->textarea("_", "Penghambat_TWX", $arec['Penghambat_TW'.$tw_data], $emon_en, true, 3);
|
$tham = $form->textarea("_", "Penghambat_TWX", $arec['Penghambat_TW'.$tw_data] ?? '', $emon_en, true, 3);
|
||||||
$tla1 = $form->textarea("_", "Lanjut_TWX", $arec['Lanjut_TW'.$tw_data], $emon_en, true, 3);
|
$tla1 = $form->textarea("_", "Lanjut_TWX", $arec['Lanjut_TW'.$tw_data] ?? '', $emon_en, true, 3);
|
||||||
$tla2 = $form->textarea("_", "Lanjut_RKPD_TWX", $arec['Lanjut_RKPD_TW'.$tw_data], $emon_en, true, 3);
|
$tla2 = $form->textarea("_", "Lanjut_RKPD_TWX", $arec['Lanjut_RKPD_TW'.$tw_data] ?? '', $emon_en, true, 3);
|
||||||
|
|
||||||
$ajson['html'] = '
|
$ajson['html'] = '
|
||||||
<div class="row mb-2">
|
<div class="row mb-2">
|
||||||
<div class="col"><h5 class="text-center">Faktor dan Tindak Lanjut <strong>Triwulan '.romawi($tw_data).'</strong></h5></div>
|
<div class="col"><h5 class="text-center">Faktor dan Tindak Lanjut <strong>Triwulan '.romawi($tw_data).'</strong></h5></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row mb-1">
|
<div class="row mb-1">
|
||||||
<label class="col-sm-4 col-lg-2 col-form-label" for="Pendorong_TWX">Faktor Pendukung Keberhasilan Kinerja</label>
|
<label class="col-sm-5 col-lg-3 col-form-label" for="Pendorong_TWX">Faktor Pendukung Keberhasilan Kinerja</label>
|
||||||
<div class="col">'.$tdor.'</div>
|
<div class="col">'.$tdor.'</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row mb-1">
|
<div class="row mb-1">
|
||||||
<label class="col-sm-4 col-lg-2 col-form-label" for="Penghambat_TWX">Faktor Penghambat Pencapaian Kinerja</label>
|
<label class="col-sm-5 col-lg-3 col-form-label" for="Penghambat_TWX">Faktor Penghambat Pencapaian Kinerja</label>
|
||||||
<div class="col">'.$tham.'</div>
|
<div class="col">'.$tham.'</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row mb-1">
|
<div class="row mb-1">
|
||||||
<label class="col-sm-4 col-lg-2 col-form-label" for="Lanjut_TWX">Tindak Lanjut yang Diperlukan Dalam Triwulan Berikutnya</label>
|
<label class="col-sm-5 col-lg-3 col-form-label" for="Lanjut_TWX">Tindak Lanjut yang Diperlukan Dalam Triwulan Berikutnya</label>
|
||||||
<div class="col">'.$tla1.'</div>
|
<div class="col">'.$tla1.'</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row mb-1">
|
<div class="row mb-1">
|
||||||
<label class="col-sm-4 col-lg-2 col-form-label" for="Lanjut_RKPD_TWX">Tindak Lanjut yang Diperlukan Dalam RKPD Berikutnya</label>
|
<label class="col-sm-5 col-lg-3 col-form-label" for="Lanjut_RKPD_TWX">Tindak Lanjut yang Diperlukan Dalam RKPD Berikutnya</label>
|
||||||
<div class="col">'.$tla2.'</div>
|
<div class="col">'.$tla2.'</div>
|
||||||
</div>
|
</div>
|
||||||
'.($emon_en?'<div class="row mt-1"><div class="col text-end"><button type="button" class="btn btn-warning me-2" id="butBatalFaktor">Batal</button><button type="button" class="btn btn-success" id="butSimpanFaktor">Simpan</button></div></div>':'').'
|
'.($emon_en?'<div class="row mt-2"><div class="col text-end"><button type="button" class="btn btn-warning me-2" id="butBatalFaktor">Batal</button><button type="button" class="btn btn-success" id="butSimpanFaktor">Simpan</button></div></div>':'').'
|
||||||
<input type="hidden" id="DalevRKPDID" value="'.$arec['DalevRKPDID'].'">';
|
<input type="hidden" id="DalevRKPDID" value="'.$arec['DalevRKPDID'].'">';
|
||||||
|
|
||||||
} else if ( $data == "default") {
|
} else if ( $data == "default") {
|
||||||
|
|||||||
+56
-33
@@ -7,7 +7,7 @@
|
|||||||
Desc. : PHP - Kelola Realisasi Kinerja OPD
|
Desc. : PHP - Kelola Realisasi Kinerja OPD
|
||||||
Created By : Siau Pheng (siaupheng@3fonia.com).
|
Created By : Siau Pheng (siaupheng@3fonia.com).
|
||||||
Created Date : December 7th, 2011.
|
Created Date : December 7th, 2011.
|
||||||
Last Modified : August 26th, 2026.
|
Last Modified : September 7th, 2026.
|
||||||
|
|
||||||
(c) 2011 - 2026, 3FONIA Software; WWW.3FONIA.COM.
|
(c) 2011 - 2026, 3FONIA Software; WWW.3FONIA.COM.
|
||||||
|
|
||||||
@@ -40,6 +40,7 @@ $id_keg = Param::Get("KegID", 0);
|
|||||||
$id_sub = Param::Get("SubID", 0);
|
$id_sub = Param::Get("SubID", 0);
|
||||||
$id_akun = Param::Get("AkunID", 0);
|
$id_akun = Param::Get("AkunID", 0);
|
||||||
$id_dpa_prog = Param::Get("DPAProgID", 0);
|
$id_dpa_prog = Param::Get("DPAProgID", 0);
|
||||||
|
$id_dpa_sub = Param::Get("DPASubID", 0);
|
||||||
|
|
||||||
if ( in_array($data, ["tabel-opd","tabel-prog","tabel-keg","tabel-sub","tabel-akun","detail-prog","detail-keg","detail-sub"]) ) {
|
if ( in_array($data, ["tabel-opd","tabel-prog","tabel-keg","tabel-sub","tabel-akun","detail-prog","detail-keg","detail-sub"]) ) {
|
||||||
$qsql = " Tahun='".$thn_data."'";
|
$qsql = " Tahun='".$thn_data."'";
|
||||||
@@ -245,20 +246,10 @@ if ( $data == "tabel-opd" ) {
|
|||||||
$sql->add_param_stamp("Real_Stamp");
|
$sql->add_param_stamp("Real_Stamp");
|
||||||
$sql->add_param_userid("Real_UserID");
|
$sql->add_param_userid("Real_UserID");
|
||||||
$sql->add_where("Tahun", $thn_data);
|
$sql->add_where("Tahun", $thn_data);
|
||||||
$sql->add_where("DPASubID", Param::Get("DPASubID",0));
|
$sql->add_where("DPASubID", $id_dpa_sub);
|
||||||
$sql->UpdateDB();
|
$sql->UpdateDB();
|
||||||
|
|
||||||
$db->Query("UPDATE dpa_sub_output SET Real_TW".$tw_data."='".Param::Get("Real_TW")."' WHERE Tahun='".$thn_data."' AND DPASubOutputID='".Param::Get("DPASubOutputID")."' LIMIT 1");
|
$db->Query("UPDATE dpa_sub_output SET Real_TW".$tw_data."='".Param::Get("Real_TW")."' WHERE Tahun='".$thn_data."' AND DPASubOutputID='".Param::Get("DPASubOutputID")."' LIMIT 1");
|
||||||
|
|
||||||
/*$aparam = Param::Get_Array();
|
|
||||||
foreach($aparam as $key => $val) {
|
|
||||||
if (strpos($key, "Output_TW_") !== false) {
|
|
||||||
$aid = explode("_", str_replace("Output_TW_","",$key));
|
|
||||||
$db->Query("UPDATE dpa_sub_output SET Real_TW".$aid[0]."='".$val."' WHERE Tahun='".$thn_data."' AND DPASubOutputID='".$aid[1]."' LIMIT 1");
|
|
||||||
// update kinerja ke dpa_sub
|
|
||||||
//$db->Query("UPDATE dpa_sub A, (SELECT IF(Real_TW1=0,0,IF(Target_Output=0,100,Real_TW1/Target_Output*100)) Kin_TW1,IF(Real_TW2=0,0,IF(Target_Output=0,100,Real_TW2/Target_Output*100)) Kin_TW2,IF(Real_TW3=0,0,IF(Target_Output=0,100,Real_TW3/Target_Output*100)) Kin_TW3,IF(Real_TW4=0,0,IF(Target_Output=0,100,Real_TW4/Target_Output*100)) Kin_TW4 FROM dpa_sub_output WHERE Tahun='".$thn_data."' AND DPASubOutputID='".$aid[1]."' LIMIT 1) B SET A.Kin_TW1=B.Kin_TW1,A.Kin_TW2=B.Kin_TW2,A.Kin_TW3=B.Kin_TW3,A.Kin_TW4=B.Kin_TW4 WHERE A.Tahun='".$thn_data."' AND DPASubID='".Param::Get("DPASubID",0)."' LIMIT 1");
|
|
||||||
}
|
|
||||||
}*/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$obj = new Table($db);
|
$obj = new Table($db);
|
||||||
@@ -356,7 +347,7 @@ if ( $data == "tabel-opd" ) {
|
|||||||
$arec = $db->AllRow();
|
$arec = $db->AllRow();
|
||||||
$_p_input = (($arec['TipeDataID'] ?? 0) > 0) ? json_decode($arec['P_Input'] ?? '{}', true) : [];
|
$_p_input = (($arec['TipeDataID'] ?? 0) > 0) ? json_decode($arec['P_Input'] ?? '{}', true) : [];
|
||||||
$_val_cap = $arec['Real_TW'.$tw_data];
|
$_val_cap = $arec['Real_TW'.$tw_data];
|
||||||
$tcss = 'border '.($_val_cap==""?'border-danger':'border-success').' rounded';
|
$tcss = 'border '.(empty($_val_cap)?'border-danger':'border-success').' rounded';
|
||||||
|
|
||||||
$form = new Form($db);
|
$form = new Form($db);
|
||||||
$tindi = $form->textarea('_', 'Text_Indi', $arec['Text_Indi']." (".$arec['Satuan_Indi'].')', false, false, 2);
|
$tindi = $form->textarea('_', 'Text_Indi', $arec['Text_Indi']." (".$arec['Satuan_Indi'].')', false, false, 2);
|
||||||
@@ -402,27 +393,32 @@ if ( $data == "tabel-opd" ) {
|
|||||||
echo '<input type="hidden" id="DPAProgID" value="'.$id_dpa_prog.'">';
|
echo '<input type="hidden" id="DPAProgID" value="'.$id_dpa_prog.'">';
|
||||||
|
|
||||||
} else if ( $data == "detail-sub" ) {
|
} else if ( $data == "detail-sub" ) {
|
||||||
$id_dpa_sub = Param::Get("DPASubID", 0);
|
|
||||||
$adetail = [];
|
$adetail = [];
|
||||||
$db->Query("SELECT *,(RealK_TW1+RealK_TW2+RealK_TW3+RealK_TW4) Tot_Real FROM dpa_sub WHERE Tahun='".$thn_data."' AND DPASubID='".$id_dpa_sub."' LIMIT 1");
|
$db->Query("SELECT *,(RealK_TW1+RealK_TW2+RealK_TW3+RealK_TW4) Tot_Real FROM dpa_sub WHERE Tahun='".$thn_data."' AND DPASubID='".$id_dpa_sub."' LIMIT 1");
|
||||||
if ($db->Next()) $adetail = $db->AllRow();
|
if ($db->Next()) $adetail = $db->AllRow();
|
||||||
$db->Query("SELECT N_Sub FROM para90_submap WHERE Tahun='".$_SESSION['__WEB_APP']['SUBMAP_TAHUN']."' AND SubID='".$id_sub."' LIMIT 1");
|
$db->Query("SELECT N_Sub FROM para90_submap WHERE Tahun='".$_SESSION['__WEB_APP']['SUBMAP_TAHUN']."' AND SubID='".$id_sub."' LIMIT 1");
|
||||||
if ($db->Next()) $adetail = array_merge($adetail, $db->AllRow());
|
if ($db->Next()) $adetail = array_merge($adetail, $db->AllRow());
|
||||||
|
$db->Query("SELECT SUM(IF(TW='".$tw_data."',1,0)) Eviden_TW,IF(TW='".$tw_data."',Eviden_Name,'') Eviden_Name FROM dpa_sub_eviden WHERE Tahun='".$adetail['Tahun']."' AND DPASubID='".$adetail['DPASubID']."' AND Aktif=1");
|
||||||
|
if ($db->Next()) $adetail = array_merge($adetail, $db->AllRow());
|
||||||
$db->Query("SELECT Username Update_User FROM app_operator WHERE UserID='".$adetail['Update_UserID']."' LIMIT 1");
|
$db->Query("SELECT Username Update_User FROM app_operator WHERE UserID='".$adetail['Update_UserID']."' LIMIT 1");
|
||||||
if ($db->Next()) $adetail = array_merge($adetail, $db->AllRow());
|
if ($db->Next()) $adetail = array_merge($adetail, $db->AllRow());
|
||||||
$db->Query("SELECT Username Real_User FROM app_operator WHERE UserID='".$adetail['Real_UserID']."' LIMIT 1");
|
$db->Query("SELECT Username Real_User FROM app_operator WHERE UserID='".$adetail['Real_UserID']."' LIMIT 1");
|
||||||
if ($db->Next()) $adetail = array_merge($adetail, $db->AllRow());
|
if ($db->Next()) $adetail = array_merge($adetail, $db->AllRow());
|
||||||
foreach($adetail as $_key => $_val) {
|
foreach ($adetail as $_key => $_val) {
|
||||||
if (strpos($_key, "Pagu_")!==false || strpos($_key, "RealK_")!==false || strpos($_key, "RealF_")!==false) $adetail[$_key] = doubleval($_val);
|
if (strpos($_key, "Pagu_")!==false || strpos($_key, "RealK_")!==false || strpos($_key, "RealF_")!==false) $adetail[$_key] = doubleval($_val);
|
||||||
}
|
}
|
||||||
|
if ((int) $adetail['Eviden_TW'] === 0) {
|
||||||
|
$adetail['Eviden_TW'] = 0;
|
||||||
|
$adetail['Eviden_Name'] = 'belum ada file eviden';
|
||||||
|
}
|
||||||
|
|
||||||
$form = new Form($db);
|
$form = new Form($db);
|
||||||
$tkode = $form->textbox("_", "K_Sub", $adetail['K_Sub'], false, false);
|
$tkode = $form->textbox("_", "K_Sub", $adetail['K_Sub'], false, false);
|
||||||
$tsub = $form->textarea("_", "N_Sub", $adetail['N_Sub'], false, false, 2);
|
$tsub = $form->textarea("_", "N_Sub", $adetail['N_Sub'], false, false, 2);
|
||||||
$tcatatan = $form->textarea("_", "Real_Catatan", $adetail['Real_Catatan'], $bln_en, false, 2);
|
$tcatatan = $form->textarea("_", "Real_Catatan", $adetail['Real_Catatan'], $bln_en, true, 1);
|
||||||
$tno_kontr = $form->textbox("_", "Real_No_Kontrak", $adetail['Real_No_Kontrak'], $bln_en, false, "text", "nomor kontrak");
|
$tno_kontr = $form->textbox("_", "Real_No_Kontrak", $adetail['Real_No_Kontrak'], $bln_en, false, "text", "nomor kontrak");
|
||||||
$tpelak = $form->textarea("_", "Real_Pelaksana", $adetail['Real_Pelaksana'], $bln_en, false, 2, "nama pelaksana");
|
$tpelak = $form->textarea("_", "Real_Pelaksana", $adetail['Real_Pelaksana'], $bln_en, false, 2, "nama pelaksana");
|
||||||
$tinfo = $form->textbox("_", "Informasi", "Diperbaharui oleh : ".$adetail['Update_User'].", pada : ".tgl_sql2str($adetail['Update_Stamp'], true), false, false);
|
$tinfo = $form->textbox("_", "Informasi", "Diperbaharui oleh : ".($adetail['Real_User'] ?? $adetail['Update_User']).", pada : ".tgl_sql2str(($adetail['Real_Stamp'] ?? $adetail['Update_Stamp']), true), false, false);
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<div class="row mb-1">
|
<div class="row mb-1">
|
||||||
@@ -447,8 +443,8 @@ if ( $data == "tabel-opd" ) {
|
|||||||
$tindi = $form->textarea("_", "Text_Indi", $aoutput['Text_Output'], false, false, 1);
|
$tindi = $form->textarea("_", "Text_Indi", $aoutput['Text_Output'], false, false, 1);
|
||||||
$tsasar = $form->textbox("_", "Sasaran_Output", $aoutput['Sasaran_Output'], false, false, "text");
|
$tsasar = $form->textbox("_", "Sasaran_Output", $aoutput['Sasaran_Output'], false, false, "text");
|
||||||
$tstatus = $form->textbox("_", "Status_Indi", ucfirst($aoutput['Status_Output']), false, false, "text");
|
$tstatus = $form->textbox("_", "Status_Indi", ucfirst($aoutput['Status_Output']), false, false, "text");
|
||||||
$ttarget = $form->textbox("_", "Target_Indi", (int)$aoutput['Target_Output']." ".$aoutput['Satuan_Output'], false, false, "text");
|
$ttarget = $form->textbox("_", "Target_Indi", (int) $aoutput['Target_Output']." ".$aoutput['Satuan_Output'], false, false, "text");
|
||||||
$treal = $form->textbox("_", "Real_TW", (int)$aoutput["Real_TW".$tw_data], $bln_en, true, "integer");
|
$treal = $form->textbox("_", "Real_TW", (int) $aoutput["Real_TW".$tw_data], $bln_en, true, "integer");
|
||||||
echo '
|
echo '
|
||||||
<div class="card"><div class="card-body">
|
<div class="card"><div class="card-body">
|
||||||
<div class="row mb-2">
|
<div class="row mb-2">
|
||||||
@@ -463,28 +459,31 @@ if ( $data == "tabel-opd" ) {
|
|||||||
<label class="col-sm-4 col-lg-2 col-form-label">Status Output</label>
|
<label class="col-sm-4 col-lg-2 col-form-label">Status Output</label>
|
||||||
<div class="col-sm-6 col-lg-4">'.$tstatus.'</div>
|
<div class="col-sm-6 col-lg-4">'.$tstatus.'</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row">
|
<div class="row mb-1">
|
||||||
<label class="col-sm-4 col-lg-2 col-form-label">Target & Realisasi</label>
|
<label class="col-sm-4 col-lg-2 col-form-label">Target & Realisasi</label>
|
||||||
<div class="col-sm-6 col-lg-4">'.$ttarget.'</div>
|
<div class="col-sm-6 col-lg-4">'.$ttarget.'</div>
|
||||||
<div class="col-sm-8 col-lg-4"><div class="input-group">'.$treal.'<span class="input-group-text">'.$aoutput['Satuan_Output'].'</span></div></div>
|
<div class="col-sm-8 col-lg-4"><div class="input-group">'.$treal.'<span class="input-group-text">'.$aoutput['Satuan_Output'].'</span></div></div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="row mb-1"><div class="col"><hr class="my-1"></div></div>
|
||||||
|
<div class="row mb-1">
|
||||||
|
<label class="col-sm-4 col-lg-2 col-form-label">Dokumen Eviden</label>
|
||||||
|
<div class="col">
|
||||||
|
<div class="input-group">
|
||||||
|
<label class="btn '.((int) $adetail['Eviden_TW']===0?'btn-outline-danger':'btn-outline-success').'" id="LabelEviden1" for="FileEviden1"><i class="bi-cloud-upload me-1"></i>Eviden<input type="file" name="FileEviden1" id="FileEviden1" class="d-none" accept=".pdf, .doc, .docx, .xls, .xlsx, .png, .jpg, .mpg, .mp4"></label>
|
||||||
|
<label class="form-control" id="Eviden_Name" for="FileEviden1">'.$adetail['Eviden_Name'].'</label>
|
||||||
|
</div>
|
||||||
|
<small class="text-muted">Ukuran file max <strong>10MB</strong> ( pdf / doc / docx / xls / xlsx / png / jpg / mpg / mp4 )</small>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row mb-1">
|
||||||
|
<label class="col-sm-4 col-lg-2 col-form-label" for="Real_Catatan">Catatan / Kendala</label>
|
||||||
|
<div class="col">'.$tcatatan.'</div>
|
||||||
|
</div>
|
||||||
</div></div>';
|
</div></div>';
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
</div></div></div>
|
</div></div></div>
|
||||||
|
|
||||||
<div class="accordion-item">
|
|
||||||
<h2 class="accordion-header" id="flush-two"><button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#flush-coll-two" aria-controls="flush-coll-two" aria-expanded="false">Catatan / Kendala / Permasalahan dari Sub Kegiatan</button></h2>
|
|
||||||
<div id="flush-coll-two" class="accordion-collapse collapse" aria-labelledby="flush-head-two" data-bs-parent="#accorDPAReal">
|
|
||||||
<div class="accordion-body">
|
|
||||||
<div class="card"><div class="card-body">
|
|
||||||
<div class="row mb-1">
|
|
||||||
<label class="col-sm-4 col-lg-2 col-form-label" for="Real_Catatan">Catatan /<br>Kendala / DLL</label>
|
|
||||||
<div class="col">'.$tcatatan.'</div>
|
|
||||||
</div>
|
|
||||||
</div></div>
|
|
||||||
</div></div></div>
|
|
||||||
|
|
||||||
<div class="accordion-item">
|
<div class="accordion-item">
|
||||||
<h2 class="accordion-header" id="flush-tri"><button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#flush-coll-tri" aria-controls="flush-coll-tri" aria-expanded="false">Nomor Kontrak & Nama Pelaksana <i>(jika informasi tersedia)</i></button></h2>
|
<h2 class="accordion-header" id="flush-tri"><button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#flush-coll-tri" aria-controls="flush-coll-tri" aria-expanded="false">Nomor Kontrak & Nama Pelaksana <i>(jika informasi tersedia)</i></button></h2>
|
||||||
<div id="flush-coll-tri" class="accordion-collapse collapse" aria-labelledby="flush-head-tri" data-bs-parent="#accorDPAReal">
|
<div id="flush-coll-tri" class="accordion-collapse collapse" aria-labelledby="flush-head-tri" data-bs-parent="#accorDPAReal">
|
||||||
@@ -502,6 +501,7 @@ if ( $data == "tabel-opd" ) {
|
|||||||
</div></div></div>
|
</div></div></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row mt-2"><div class="col">'.$tinfo.'</div></div>
|
<div class="row mt-2"><div class="col">'.$tinfo.'</div></div>
|
||||||
|
<input type="hidden" id="Eviden_TW" value="'.$adetail['Eviden_TW'].'">
|
||||||
<input type="hidden" id="DPASubID" value="'.$adetail['DPASubID'].'">
|
<input type="hidden" id="DPASubID" value="'.$adetail['DPASubID'].'">
|
||||||
<input type="hidden" id="DPASubOutputID" value="'.$aoutput['DPASubOutputID'].'">';
|
<input type="hidden" id="DPASubOutputID" value="'.$aoutput['DPASubOutputID'].'">';
|
||||||
|
|
||||||
@@ -590,7 +590,30 @@ if ( $data == "tabel-opd" ) {
|
|||||||
<input type="hidden" id="REALRP" value="'.$realK_las.'">
|
<input type="hidden" id="REALRP" value="'.$realK_las.'">
|
||||||
<input type="hidden" id="PAGURP" value="'.$adetail['Renc_Keu'].'">';
|
<input type="hidden" id="PAGURP" value="'.$adetail['Renc_Keu'].'">';
|
||||||
|
|
||||||
} else if ( $data == "default") {
|
} else if ( $data === "eviden-upload") {
|
||||||
|
$file1_ok = false;
|
||||||
|
$file1_name = $_FILES['Eviden1']['name'];
|
||||||
|
$file1_size = $_FILES['Eviden1']['size'];
|
||||||
|
$file1_ext = pathinfo($file1_name, PATHINFO_EXTENSION);
|
||||||
|
$ajson['result'] = 0;
|
||||||
|
if ($file1_size < 10240000) {
|
||||||
|
$file1_ok = true;
|
||||||
|
} else {
|
||||||
|
$ajson['message'] = "Ukuran file diatas 10MB !";
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($file1_ok === true) {
|
||||||
|
$saveas = md5("EMONEVMPW" . $thn_data . $id_dpa_sub ."1". time()) .".". $file1_ext;
|
||||||
|
if (!is_dir($_SESSION['__WEB_APP']['REAL_PATH'].'dokumen')) mkdir($_SESSION['__WEB_APP']['REAL_PATH'].'dokumen', 0775, true);
|
||||||
|
if (move_uploaded_file($_FILES['Eviden1']['tmp_name'], $_SESSION['__WEB_APP']['REAL_PATH'].'dokumen/'.$saveas)) {
|
||||||
|
$db->Query("INSERT INTO dpa_sub_eviden SET Tahun='".$thn_data."',DPASubID='".$id_dpa_sub."',ORGID='".$id_org."',OPDID='".$id_opd."',TW='".$tw_data."',Eviden_Name='".$file1_name."',Eviden_File='".$saveas."',Eviden_Size='".format_bytes($file1_size)."',UserID='".user_id()."'");
|
||||||
|
$ajson['result'] = 1;
|
||||||
|
$ajson['Eviden_Name'] = $file1_name;
|
||||||
|
$ajson['Eviden_TW'] = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
} else if ( $data === "default") {
|
||||||
echo '
|
echo '
|
||||||
<div class="fade-in">
|
<div class="fade-in">
|
||||||
<div class="card"><div class="card-header custom-style">Kelola Data Realisasi Kinerja Renja OPD // Bulan '.bulan_array()[$bln_data].' '.$thn_data.'</div><div class="card-body">
|
<div class="card"><div class="card-header custom-style">Kelola Data Realisasi Kinerja Renja OPD // Bulan '.bulan_array()[$bln_data].' '.$thn_data.'</div><div class="card-body">
|
||||||
|
|||||||
Reference in New Issue
Block a user