commit pertama

This commit is contained in:
2026-01-30 13:07:53 +07:00
commit 48199537d4
303 changed files with 136097 additions and 0 deletions
+167
View File
@@ -0,0 +1,167 @@
<?php
/*******************************************************************
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
Module : /apps/php/repo/form_kec.php
Desc. : PHP - Cetak Form Usulan Musrenbang Kecamatan
Created By : Siau Pheng ([email protected]).
Created Date : March 21st, 2014.
Last Modified : June 6th, 2024.
(c) 2014 - 2024, 3FONIA Software; WWW.3FONIA.COM.
*******************************************************************/
ini_set("pcre.backtrack_limit", 100000000);
require_once(__DIR__."/../../../../../vendor/autoload.php");
require_once(__DIR__."/../func/report.php");
use siaupheng\fonia3\DB\MySQL;
use siaupheng\fonia3\Web\Param;
use siaupheng\fonia3\Web\Form;
$db = (is_resource($db)) ? $db : new MySQL();
$ajson = [];
$data = Param::Get("data");
$tahun = Param::Get("Tahun", $_SESSION['__WEB_APP']['RENC_THN']);
$id_kec = Param::Get("KecID", 0);
$id_kel = Param::Get("KelID", 0);
if ( $data == "pdf" || $data == "print") {
$nama_kec = "Semua Kecamatan";
if ($id_kec > 0) {
$db->Query("SELECT * FROM para_lokasi WHERE LokasiID='".$id_kec."' LIMIT 1");
if ($db->Next()) $nama_kec = $db->Row("N_Lokasi");
}
$tsql = " Tahun='".$tahun."' AND JU IN (0,2)";
$tsql .= ($id_kec==0) ? "" : " AND KecID='".$id_kec."'";
$tsql .= ($id_kel==0) ? "" : " AND KelID='".$id_kel."'";
// proses rekap database
Report_Empty("mus_kec");
Report_Empty("mus_kel");
Report_Empty("mus_opd");
$db->Query("INSERT INTO rep_mus_kec SELECT T.Tahun,T.KecID,SUM(T.Rupiah),'".user_unix()."','".user_id()."' FROM (SELECT * FROM mus_usulan_desa WHERE".$tsql.") T GROUP BY T.KecID");
$db->Query("INSERT INTO rep_mus_kel SELECT T.Tahun,T.KecID,T.OPDID,T.KelID,SUM(T.Rupiah),'".user_unix()."','".user_id()."' FROM (SELECT * FROM mus_usulan_desa WHERE".$tsql.") T GROUP BY T.KecID,T.KelID");
$db->Query("INSERT INTO rep_mus_opd SELECT T.Tahun,T.KecID,O.SidangID,T.KelID,SUM(T.Rupiah),'".user_unix()."','".user_id()."' FROM (SELECT * FROM mus_usulan_desa WHERE".$tsql.") T LEFT JOIN para90_opd O ON (O.OPDID=T.OPDID) GROUP BY T.KecID,T.KelID,O.SidangID");
$db->Query("SELECT T.*,D.K_Kec,D.N_Kec,D.K_Desa,D.N_Desa,CONCAT(D.K_Kec,'.',T.Kode) Kode_Usul,CONCAT(T.Volume,' ',S.N_Satuan) Vol_Satuan,T.OPDID OPDID2,O.K_OPD,O.S_OPD,G.SidangID,G.N_Sidang,IF(T.Prio=0,9,Prio) Kode_Prio,RC.*,RD.*,RO.* FROM (SELECT * FROM mus_usulan_desa WHERE".$tsql.") T LEFT JOIN vi_para_desa D ON (D.DesaID=T.KelID) LEFT JOIN para_satuan S ON (S.SatuanID=T.SatuanID) LEFT JOIN para90_opd O ON (O.OPDID=T.OPDID) LEFT JOIN para_sidang G ON (G.SidangID=O.SidangID) LEFT JOIN rep_mus_kec RC ON (T.KecID=RC.KecID AND T.Tahun=RC.Tahun AND RC.UserID='".user_id()."' AND RC.Unix='".user_unix()."') LEFT JOIN rep_mus_kel RD ON (T.KecID=RD.KecID AND T.KelID=RD.KelID AND T.Tahun=RD.Tahun AND RD.UserID='".user_id()."' AND RD.Unix='".user_unix()."') LEFT JOIN rep_mus_opd RO ON (T.KecID=RO.KecID AND T.KelID=RO.KelID AND G.SidangID=RO.OPDID AND T.Tahun=RO.Tahun AND RO.UserID='".user_id()."' AND RO.Unix='".user_unix()."') ORDER BY D.N_Kec,D.N_Desa,G.SidangID,O.S_OPD,Kode_Prio,T.Kode");
}
if ( $data == "pdf" ) {
$html = '<p class="judul">Daftar Usulan Pembangunan untuk Tahun '.$tahun.'<br>Berdasarkan Desa dan Kelompok Sidang</p>';
$footer = '<htmlpagefooter name="RepFoot%s"><table class="footer"><tr><td width="33%%">eMusrenbang - Kabupaten Sambas</td><td width="34%%" class="c">%s</td><td width="33%%" class="r i">{DATE d-m-Y H:i} / Halaman : {PAGENO} dari {nbpg}</td></tr></table></htmlpagefooter>';
$_setfoot = '<sethtmlpagefooter name="RepFoot%s" show-this-page="1" value="on" />';
$t_head = '<div><table class="garis" autosize="1"><thead><tr><th colspan="2">Usulan Kegiatan</th><th>Volume</th><th>Lokasi</th><th>Jumlah</th><th>Kode</th></tr></thead><tbody>';
$t_foot = '</tbody></table></div><table class="ttd"><tr><td>Kepala Desa<br>%s<br><br><br>( ............................ )</td></tr></table>';
$_line = '<tr><td class="c kotak" rowspan="2"><table><tr><td class="c">%s</td><tr></table></td><td>%s</td><td class="r">%s</td><td>%s</td><td class="r">%s</td><td class="c small">%s</td></tr><tr><td class="i" colspan="2">%s</td><td class="i" colspan="3">%s</td></tr>';
$_sub = '<tr class="%s"><td colspan="4" class="b">%s</td><td class="r b">%s</td><td class="b">&nbsp;</td></tr>';
$_judul = '<tr><td colspan="6" class="c b" style="font-size:12pt;">%s</td></tr>';
$_catat = '<tr><td colspan="6" class="b">TIAP DESA AGAR MEMBERIKAN NOMOR PRIORITAS 1 - 5 PADA DAFTAR USULAN DIBAWAH INI.</td></tr>';
$body = '';
$kkec = ""; $kdesa = ""; $ksidang = ""; $kopd = ""; $n_desa = "";
while ($db->Next()) {
$n_desa = $db->Row("N_Desa");
if ($kdesa == "") {
$body .= $t_head;
$html .= sprintf($footer, $db->Row("K_Desa"), $n_desa);
$body .= sprintf($_setfoot, $db->Row("K_Desa"));
}
if ($kkec <> $db->Row("K_Kec")) {
$body .= sprintf($_sub, "kec", "KECAMATAN ".$db->Row("N_Kec"), rupiah($db->Row("KEC_RUPIAH")));
$kkec = $db->Row("K_Kec");
}
if ($kdesa <> $db->Row("K_Desa")) {
if ($kdesa <> "") {
$body .= sprintf($t_foot, $l_desa);
$body .= '<pagebreak orientation="portrait" />';
$body .= $t_head;
}
$body .= sprintf($_sub, "desa", $n_desa, rupiah($db->Row("KEL_RUPIAH")));
if ($kdesa <> "") {
$html .= sprintf($footer, $db->Row("K_Desa"), $n_desa);
$body .= sprintf($_setfoot, $db->Row("K_Desa"));
}
$kdesa = $db->Row("K_Desa");
$ksidang = "";
}
if ($ksidang <> $db->Row("SidangID")) {
if ($ksidang <> "") {
$body .= sprintf($t_foot, $n_desa);
$body .= '<pagebreak orientation="portrait" />';
$body .= $t_head;
}
$body .= sprintf($_judul, $n_desa);
$body .= sprintf($_sub, "forum", $db->Row("N_Sidang"), rupiah($db->Row("OPD_RUPIAH")));
$body .= $_catat;
$ksidang = $db->Row("SidangID");
$kopd = "";
}
if ($kopd <> $db->Row("OPDID2")) {
$body .= sprintf($_sub, "opd", $db->Row("S_OPD"), "");
$kopd = $db->Row("OPDID2");
}
$body .= sprintf($_line, ($db->RowFloat("Prio")==0?"&nbsp;":$db->Row("Prio")), $db->Row("Usulan"), $db->Row("Vol_Satuan"), $db->Row("Lokasi"), rupiah($db->Row("Rupiah")), $db->Row("Kode_Usul"), "Permasalahan : ".$db->Row("Masalah"), "Dusun : ".$db->Row("Dusun")." / RT : ".$db->Row("RT"));
$l_desa = $db->Row("N_Desa");
}
$body .= sprintf($t_foot, $l_desa);
$mpdf = new \Mpdf\Mpdf([
'mode' => 'c',
'format' => 'A4',
'margin_left' => 8,
'margin_right' => 8,
'margin_top' => 8,
'margin_header' => 5,
'margin_footer' => 5
]);
$mpdf->SetDisplayMode('fullpage');
$css = file_get_contents($_SESSION['__WEB_APP']['REAL_PATH'].'assets/css/pdf/musrenbang.css');
$mpdf->WriteHTML($css, \Mpdf\HTMLParserMode::HEADER_CSS);
$mpdf->WriteHTML($html . $body, \Mpdf\HTMLParserMode::HTML_BODY);
$mpdf->SetAuthor($_SESSION['__WEB_APP']['REG_NAME']);
$mpdf->SetCreator($_SESSION['__WEB_APP']['APP_NAME']." v".$_SESSION['__WEB_APP']['APP_VER']);
$mpdf->setTitle("Form Usulan ".$nama_kec);
$mpdf->Output("Form Usulan ".$nama_kec.".pdf", \Mpdf\Output\Destination::INLINE);
} else if ( $data == "option-kel" ) {
$aoption = ['type' => "option", 'id' => "KelID", 'value' => 0, 'avalue' => []];
$db->Query("SELECT * FROM para_lokasi WHERE Aktif=1 AND Level=2 AND IndukID='".$id_kec."' ORDER BY K_Lokasi");
if ($db->RecordCount()<>1) $aoption['avalue'][] = ['value'=>0, 'html'=>""];
while ($db->Next()) {
if ($db->RecordCount()==1) $aoption['value'] = $db->Row("LokasiID");
$aoption['avalue'][] = ['value'=>$db->Row("LokasiID"), 'html'=>$db->Row("N_Lokasi")];
}
$ajson[] = $aoption;
} else if ( $data == "default") {
$q_kec = ($_SESSION['__WEB_USER']['Level']==2) ? " AND LokasiID IN (".$_SESSION['__WEB_USER']['AK_KEC'].")": " AND Level=1 AND LokasiID>2";
$form = new Form($db);
$ttahun = $form->option_db("_", "Tahun", $tahun, true, false, "para_periode", array("Tahun","Tahun"), "Tahun BETWEEN '".$_SESSION['__WEB_APP']['Tahun_Min']."' AND '".$_SESSION['__WEB_APP']['Tahun_Max']."'");
$tkec = $form->option_db("_", "KecID", 0, true, true, "para_lokasi", array("LokasiID","N_Lokasi"), "Aktif=1".$q_kec." ORDER BY N_Lokasi", ($_SESSION['__WEB_USER']['Level']==2?"":array(0,"SEMUA KECAMATAN")), null, "RepoFormKecJS.oc_Kec()");
$tkel = $form->option("_", "KelID", 0, true, true, array(0=>"SEMUA DESA"));
echo '
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label" for="Tahun">Tahun Data</label>
<div class="col-sm-4 col-lg-5">'.$ttahun.'</div>
</div>
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label" for="KecID">Nama Kecamatan</label>
<div class="col-sm-8 col-lg-9">'.$tkec.'</div>
</div>
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label" for="KelID">Nama Desa</label>
<div class="col-sm-8 col-lg-9">'.$tkel.'</div>
</div>';
}
send_json($ajson);
?>