first commit
This commit is contained in:
@@ -0,0 +1,239 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
|
||||
Module : /apps/php/sys/akses_mon.php
|
||||
Desc. : PHP - Konfigurasi Hak Akses Data e-Monev
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : February 17th, 2020.
|
||||
Last Modified : July 15th, 2026.
|
||||
|
||||
(c) 2020 - 2026, 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\Web\Param;
|
||||
use siaupheng\fonia3\Web\Table;
|
||||
use siaupheng\fonia3\Web\Form;
|
||||
|
||||
function hak_kin_def($tbln, $abln) {
|
||||
$ahak = str_split($tbln);
|
||||
$hasil = "";
|
||||
foreach ($abln as $order => $bln) {
|
||||
$hasil .= '<span class="pe-1 text-' .($ahak[$order]==1?'info':'danger'). '">' . isi_nol($bln,2) . '</span>';
|
||||
}
|
||||
return $hasil;
|
||||
}
|
||||
function hak_kin_tw1($tbln = "000") {
|
||||
$abln = [1, 2, 3];
|
||||
return hak_kin_def($tbln, $abln);
|
||||
}
|
||||
function hak_kin_tw2($tbln = "000") {
|
||||
$abln = [4, 5, 6];
|
||||
return hak_kin_def($tbln, $abln);
|
||||
}
|
||||
function hak_kin_tw3($tbln = "000") {
|
||||
$abln = [7, 8, 9];
|
||||
return hak_kin_def($tbln, $abln);
|
||||
}
|
||||
function hak_kin_tw4($tbln = "000") {
|
||||
$abln = [10, 11, 12];
|
||||
return hak_kin_def($tbln, $abln);
|
||||
}
|
||||
|
||||
$db = $db ?? new MySQL();
|
||||
$ajson = [];
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$tahun = Param::Get("Tahun", $_SESSION['__WEB_APP']['REAL_THN']);
|
||||
$id_opd = Param::Get("OPDID", 0);
|
||||
$id = Param::Get("AksesID", 0);
|
||||
|
||||
if ( $data == "akses-detail" ) {
|
||||
$aakses = [];
|
||||
if ($mode == "edit") {
|
||||
$db->Query("SELECT O.OPDID,O.N_OPD,IFNULL(A.MONOPDID,0) MONOPDID,IFNULL(A.Hak_Renja,1) Hak_Renja,IFNULL(A.Hak_Kin_B01,1) Hak_Kin_B01,IFNULL(A.Hak_Kin_B02,1) Hak_Kin_B02,IFNULL(A.Hak_Kin_B03,1) Hak_Kin_B03,IFNULL(A.Hak_Kin_B04,1) Hak_Kin_B04,IFNULL(A.Hak_Kin_B05,1) Hak_Kin_B05,IFNULL(A.Hak_Kin_B06,1) Hak_Kin_B06,IFNULL(A.Hak_Kin_B07,1) Hak_Kin_B07,IFNULL(A.Hak_Kin_B08,1) Hak_Kin_B08,IFNULL(A.Hak_Kin_B09,1) Hak_Kin_B09,IFNULL(A.Hak_Kin_B10,1) Hak_Kin_B10,IFNULL(A.Hak_Kin_B11,1) Hak_Kin_B11,IFNULL(A.Hak_Kin_B12,1) Hak_Kin_B12 FROM (SELECT * FROM para90_opd WHERE Aktif=1 AND OPDID='".$id_opd."') O LEFT JOIN (SELECT * FROM sippd_akses_mon WHERE Tahun='".$tahun."' AND MONOPDID='".$id."') A ON (O.OPDID=A.OPDID)");
|
||||
if ($db->Next()) $aakses = $db->AllRow();
|
||||
}
|
||||
$form = new Form($db);
|
||||
$t_opd = $form->textbox("_", "N_OPD", $aakses['N_OPD'], false, false, "text");
|
||||
$t_renja = $form->checkbox("_", "Hak_Renja", $aakses['Hak_Renja'], true, true, ["1","0"]);
|
||||
$t_kin_01 = $form->checkbox("_", "Hak_Kin_B01", $aakses['Hak_Kin_B01'], true, true, ["1","0"]);
|
||||
$t_kin_02 = $form->checkbox("_", "Hak_Kin_B02", $aakses['Hak_Kin_B02'], true, true, ["1","0"]);
|
||||
$t_kin_03 = $form->checkbox("_", "Hak_Kin_B03", $aakses['Hak_Kin_B03'], true, true, ["1","0"]);
|
||||
$t_kin_04 = $form->checkbox("_", "Hak_Kin_B04", $aakses['Hak_Kin_B04'], true, true, ["1","0"]);
|
||||
$t_kin_05 = $form->checkbox("_", "Hak_Kin_B05", $aakses['Hak_Kin_B05'], true, true, ["1","0"]);
|
||||
$t_kin_06 = $form->checkbox("_", "Hak_Kin_B06", $aakses['Hak_Kin_B06'], true, true, ["1","0"]);
|
||||
$t_kin_07 = $form->checkbox("_", "Hak_Kin_B07", $aakses['Hak_Kin_B07'], true, true, ["1","0"]);
|
||||
$t_kin_08 = $form->checkbox("_", "Hak_Kin_B08", $aakses['Hak_Kin_B08'], true, true, ["1","0"]);
|
||||
$t_kin_09 = $form->checkbox("_", "Hak_Kin_B09", $aakses['Hak_Kin_B09'], true, true, ["1","0"]);
|
||||
$t_kin_10 = $form->checkbox("_", "Hak_Kin_B10", $aakses['Hak_Kin_B10'], true, true, ["1","0"]);
|
||||
$t_kin_11 = $form->checkbox("_", "Hak_Kin_B11", $aakses['Hak_Kin_B11'], true, true, ["1","0"]);
|
||||
$t_kin_12 = $form->checkbox("_", "Hak_Kin_B12", $aakses['Hak_Kin_B12'], true, true, ["1","0"]);
|
||||
|
||||
$ajson['html'] = '
|
||||
<div class="row">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label">Nama OPD</label>
|
||||
<div class="col">'.$t_opd.'</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label">Input Renja</label>
|
||||
<div class="col col-form-label">'.$t_renja.'</div>
|
||||
</div>
|
||||
<div class="row"><div class="col"><hr class="my-1"></div></div>
|
||||
<div class="row">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label">Kinerja TW 1</label>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_01.'<label class="form-check-label" for="Hak_Kin_B01">Januari</label></div></div>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_02.'<label class="form-check-label" for="Hak_Kin_B02">Februari</label></div></div>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_03.'<label class="form-check-label" for="Hak_Kin_B03">Maret</label></div></div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label">Kinerja TW 2</label>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_04.'<label class="form-check-label" for="Hak_Kin_B04">April</label></div></div>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_05.'<label class="form-check-label" for="Hak_Kin_B05">Mei</label></div></div>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_06.'<label class="form-check-label" for="Hak_Kin_B06">Juni</label></div></div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label">Kinerja TW 3</label>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_07.'<label class="form-check-label" for="Hak_Kin_B07">Juli</label></div></div>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_08.'<label class="form-check-label" for="Hak_Kin_B08">Agustus</label></div></div>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_09.'<label class="form-check-label" for="Hak_Kin_B09">September</label></div></div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label">Kinerja TW 4</label>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_10.'<label class="form-check-label" for="Hak_Kin_B10">Oktober</label></div></div>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_11.'<label class="form-check-label" for="Hak_Kin_B11">November</label></div></div>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_12.'<label class="form-check-label" for="Hak_Kin_B12">Desember</label></div></div>
|
||||
</div>
|
||||
<input type="hidden" id="AksesID" value="'.$aakses['MONOPDID'].'">
|
||||
<input type="hidden" id="OPDID" value="'.$aakses['OPDID'].'">';
|
||||
|
||||
} else if ( $data == "akses-semua" ) {
|
||||
$form = new Form($db);
|
||||
$t_tahun = $form->textbox("_", "Tahun2", $tahun, false, false, "text");
|
||||
$t_renja = $form->checkbox("_", "Hak_Renja", 0, true, true, ["1","0"]);
|
||||
$t_kin_01 = $form->checkbox("_", "Hak_Kin_B01", 0, true, true, ["1","0"]);
|
||||
$t_kin_02 = $form->checkbox("_", "Hak_Kin_B02", 0, true, true, ["1","0"]);
|
||||
$t_kin_03 = $form->checkbox("_", "Hak_Kin_B03", 0, true, true, ["1","0"]);
|
||||
$t_kin_04 = $form->checkbox("_", "Hak_Kin_B04", 0, true, true, ["1","0"]);
|
||||
$t_kin_05 = $form->checkbox("_", "Hak_Kin_B05", 0, true, true, ["1","0"]);
|
||||
$t_kin_06 = $form->checkbox("_", "Hak_Kin_B06", 0, true, true, ["1","0"]);
|
||||
$t_kin_07 = $form->checkbox("_", "Hak_Kin_B07", 0, true, true, ["1","0"]);
|
||||
$t_kin_08 = $form->checkbox("_", "Hak_Kin_B08", 0, true, true, ["1","0"]);
|
||||
$t_kin_09 = $form->checkbox("_", "Hak_Kin_B09", 0, true, true, ["1","0"]);
|
||||
$t_kin_10 = $form->checkbox("_", "Hak_Kin_B10", 0, true, true, ["1","0"]);
|
||||
$t_kin_11 = $form->checkbox("_", "Hak_Kin_B11", 0, true, true, ["1","0"]);
|
||||
$t_kin_12 = $form->checkbox("_", "Hak_Kin_B12", 0, true, true, ["1","0"]);
|
||||
|
||||
$ajson['html'] = '
|
||||
<div class="row">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label">Tahun Data</label>
|
||||
<div class="col">'.$t_tahun.'</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label">Input Renja</label>
|
||||
<div class="col col-form-label">'.$t_renja.'</div>
|
||||
</div>
|
||||
<div class="row"><div class="col"><hr class="my-1"></div></div>
|
||||
<div class="row">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label">Kinerja TW 1</label>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_01.'<label class="form-check-label" for="Hak_Kin_B01">Januari</label></div></div>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_02.'<label class="form-check-label" for="Hak_Kin_B02">Februari</label></div></div>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_03.'<label class="form-check-label" for="Hak_Kin_B03">Maret</label></div></div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label">Kinerja TW 2</label>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_04.'<label class="form-check-label" for="Hak_Kin_B04">April</label></div></div>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_05.'<label class="form-check-label" for="Hak_Kin_B05">Mei</label></div></div>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_06.'<label class="form-check-label" for="Hak_Kin_B06">Juni</label></div></div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label">Kinerja TW 3</label>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_07.'<label class="form-check-label" for="Hak_Kin_B07">Juli</label></div></div>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_08.'<label class="form-check-label" for="Hak_Kin_B08">Agustus</label></div></div>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_09.'<label class="form-check-label" for="Hak_Kin_B09">September</label></div></div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label">Kinerja TW 4</label>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_10.'<label class="form-check-label" for="Hak_Kin_B10">Oktober</label></div></div>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_11.'<label class="form-check-label" for="Hak_Kin_B11">November</label></div></div>
|
||||
<div class="col-sm-6 col-lg-3 col-form-label"><div class="form-check">'.$t_kin_12.'<label class="form-check-label" for="Hak_Kin_B12">Desember</label></div></div>
|
||||
</div>
|
||||
<div class="row"><div class="col"><hr class="my-1"></div></div>
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
<div class="badge bg-danger text-white text-wrap">
|
||||
<p class="h6 mb-3">PROSES INI AKAN SEKALIGUS MENGUBAH SEMUA HAK AKSES DATA E-MONEV OLEH OPD SESUAI TAHUN TERPILIH.</p>
|
||||
</div>
|
||||
</div>';
|
||||
|
||||
} else if ( $data == "detail" ) {
|
||||
if ( in_array($mode, ["save","save-all"]) ) {
|
||||
$hak_renja = Param::Get("Hak_Renja", 0);
|
||||
$hak_b01 = Param::Get("Hak_Kin_B01", 0);
|
||||
$hak_b02 = Param::Get("Hak_Kin_B02", 0);
|
||||
$hak_b03 = Param::Get("Hak_Kin_B03", 0);
|
||||
$hak_b04 = Param::Get("Hak_Kin_B04", 0);
|
||||
$hak_b05 = Param::Get("Hak_Kin_B05", 0);
|
||||
$hak_b06 = Param::Get("Hak_Kin_B06", 0);
|
||||
$hak_b07 = Param::Get("Hak_Kin_B07", 0);
|
||||
$hak_b08 = Param::Get("Hak_Kin_B08", 0);
|
||||
$hak_b09 = Param::Get("Hak_Kin_B09", 0);
|
||||
$hak_b10 = Param::Get("Hak_Kin_B10", 0);
|
||||
$hak_b11 = Param::Get("Hak_Kin_B11", 0);
|
||||
$hak_b12 = Param::Get("Hak_Kin_B12", 0);
|
||||
|
||||
if ( $mode=="save" ) {
|
||||
if ($id == 0) {
|
||||
$db->Query("INSERT INTO sippd_akses_mon (Tahun,OPDID,UserID) VALUES ('".$tahun."','".$id_opd."','".user_id()."')");
|
||||
$id = $db->LastInsertID();
|
||||
}
|
||||
} else if ( $mode=="save-all" ) {
|
||||
$db->Query("INSERT INTO sippd_akses_mon (Tahun,OPDID,UserID) SELECT '".$tahun."',OPDID,'".user_id()."' FROM para90_opd WHERE Aktif=1 AND IV=0 AND OPDID NOT IN (SELECT OPDID FROM sippd_akses_mon WHERE Tahun='".$tahun."')");
|
||||
}
|
||||
$db->Query("UPDATE sippd_akses_mon SET Hak_Renja='".$hak_renja."',Hak_Kin_B01='".$hak_b01."',Hak_Kin_B02='".$hak_b02."',Hak_Kin_B03='".$hak_b03."',Hak_Kin_B04='".$hak_b04."',Hak_Kin_B05='".$hak_b05."',Hak_Kin_B06='".$hak_b06."',Hak_Kin_B07='".$hak_b07."',Hak_Kin_B08='".$hak_b08."',Hak_Kin_B09='".$hak_b09."',Hak_Kin_B10='".$hak_b10."',Hak_Kin_B11='".$hak_b11."',Hak_Kin_B12='".$hak_b12."',UserID='".user_id()."' WHERE ".($mode=="save"?"MONOPDID='".$id."'":"Tahun='".$tahun."'"));
|
||||
$db->Query("UPDATE sippd_akses_mon SET Hak_Kin_T1=IF(Hak_Kin_B01+Hak_Kin_B02+Hak_Kin_B03=0,0,1),Hak_Kin_T2=IF(Hak_Kin_B04+Hak_Kin_B05+Hak_Kin_B06=0,0,1),Hak_Kin_T3=IF(Hak_Kin_B07+Hak_Kin_B08+Hak_Kin_B09=0,0,1),Hak_Kin_T4=IF(Hak_Kin_B10+Hak_Kin_B11+Hak_Kin_B12=0,0,1) WHERE ".($mode=="save"?"MONOPDID='".$id."'":"Tahun='".$tahun."'"));
|
||||
}
|
||||
|
||||
$tcari = trim(Param::Get("Cari_OPD"));
|
||||
$tsql = ($tcari=="") ? "" : " WHERE CONCAT(O.K_OPD,O.N_OPD) LIKE '%".$tcari."%'";
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT O.OPDID,O.K_OPD,O.N_OPD,IFNULL(A.MONOPDID,0) MONOPDID,IFNULL(A.Tahun,'".$tahun."') Tahun,IFNULL(A.Hak_Renja,1) Hak_Renja,CONCAT(IFNULL(A.Hak_Kin_B01,1),IFNULL(A.Hak_Kin_B02,1),IFNULL(A.Hak_Kin_B03,1)) Hak_Kin_T1,CONCAT(IFNULL(A.Hak_Kin_B04,1),IFNULL(A.Hak_Kin_B05,1),IFNULL(A.Hak_Kin_B06,1)) Hak_Kin_T2,CONCAT(IFNULL(A.Hak_Kin_B07,1),IFNULL(A.Hak_Kin_B08,1),IFNULL(A.Hak_Kin_B09,1)) Hak_Kin_T3,CONCAT(IFNULL(A.Hak_Kin_B10,1),IFNULL(A.Hak_Kin_B11,1),IFNULL(A.Hak_Kin_B12,1)) Hak_Kin_T4 FROM (SELECT * FROM para90_opd WHERE Aktif=1 AND IV=0 ORDER BY OPDID) O LEFT JOIN (SELECT * FROM sippd_akses_mon WHERE Tahun='".$tahun."' ORDER BY OPDID) A ON (O.OPDID=A.OPDID)".$tsql);
|
||||
$obj->add_field("OPDID", "ID", "hid");
|
||||
$obj->add_field("MONOPDID", "ID", "hid");
|
||||
$obj->add_field("Tahun", "Tahun", "c");
|
||||
$obj->add_field("K_OPD", "Kode", "c");
|
||||
$obj->add_field("N_OPD", "Nama OPD", "awr");
|
||||
$obj->add_field("Hak_Renja", "Renja", "c", "checkbox");
|
||||
$obj->add_field("Hak_Kin_T1", "TW 1", "c", "hak_kin_tw1");
|
||||
$obj->add_field("Hak_Kin_T2", "TW 2", "c", "hak_kin_tw2");
|
||||
$obj->add_field("Hak_Kin_T3", "TW 3", "c", "hak_kin_tw3");
|
||||
$obj->add_field("Hak_Kin_T4", "TW 4", "c", "hak_kin_tw4");
|
||||
$obj->set_field_order("K_OPD", "A");
|
||||
$obj->add_row_btn("clipboard", "Ubah", "TAksesMonJS.detail_ubah");
|
||||
$obj->set_func_navi("TAksesMonJS.data_query('detail')");
|
||||
$ajson[] = $obj->json_table("divDetail");
|
||||
|
||||
} else if ( $data == "default") {
|
||||
$form = new Form($db);
|
||||
$op_tahun = $form->option("Tahun", "Tahun", $tahun, true, true, tahun_ang("Tahun "), "", "TAksesMonJS.oc_Tahun()");
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Daftar Akses Data e-Monev</div><div class="card-body">
|
||||
<div class="row mb-1">
|
||||
<div class="col-md-8 col-sm-12"><div class="input-group"><input class="form-control" id="Cari_OPD" name="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-4 col-sm-12 mt-2 mt-sm-0"><div class="input-group">'.$op_tahun.'<button class="btn btn-info shadow-none" type="button" id="butUpAll">Ubah Semua</button></div></div>
|
||||
</div>
|
||||
<div id="divDetail"> </div>
|
||||
</div></div>
|
||||
</div>';
|
||||
}
|
||||
|
||||
send_json($ajson);
|
||||
?>
|
||||
Reference in New Issue
Block a user