Files
eletter/src/app/skeluar/crud.php
T

425 lines
19 KiB
PHP

<?php
include('../koneksi.php');
$key = $_POST['key'];
switch ($key) {
case 'jumlah_nonjpg':
$surat_id = $_POST['surat_id'];
$k = pg_query($koneksi, "SELECT COUNT(*)
FROM scan k INNER JOIN surat s ON (k.surat_id=s.id)
WHERE k.surat_id='$surat_id' AND k.file NOT IN ('')");
while ($rk = pg_fetch_array($k)) {
echo $rk[0];
}
break;
case 'delete_kepada_k':
$id = $_POST['id'];
$del = pg_query($koneksi, "DELETE FROM kepada WHERE id='$id'");
break;
case 'simpan_kepada_k':
$surat_id = $_POST['surat_id'];
$kepada_k = $_POST['kepada_k'];
$uraian_k = $_POST['uraian_k'];
$ins = pg_query($koneksi, "INSERT INTO kepada (surat_id,kepada,uraian) VALUES ('$surat_id','$kepada_k','$uraian_k')");
break;
case 'simpan_sdisposisi':
$id = $_POST['id'];
$disposisi = $_POST['disposisi'];
$u = pg_query($koneksi, "UPDATE surat SET disposisi='$disposisi' WHERE id='$id'");
break;
case 'cari_disposisi':
$thn = $_POST['thn'];
$no_agenda = $_POST['no_agenda'];
$d = pg_query($koneksi, "SELECT id,(SELECT kode FROM kode WHERE id=kode_id),
(SELECT keterangan FROM kode WHERE id=kode_id),no_surat,surat_dari,perihal,tgl_surat_masuk,tgl_diterima,
no_agenda FROM surat WHERE date_part('YEAR', tgl_diterima)='$thn' AND no_agenda='$no_agenda'");
while ($r = pg_fetch_array($d)) {
$id = $r[0];
$kode = $r[1];
$keterangan = $r[2];
$no_surat = $r[3];
$surat_dari = $r[4];
$perihal = $r[5];
$tgl_surat_masuk = date('d/m/Y', strtotime($r[6]));
$tgl_diterima = date('d/m/Y', strtotime($r[7]));
$no_agenda2 = $r[8];
}
$no_pinjam = (int) substr($no_agenda2, 0, 5);
$no_agenda3 = sprintf("%05s", $no_pinjam);
$thn_skrgs = date('Y', strtotime($tgl_diterima));
$disposisi = $id;
$kode_id = $kode . ' / ' . $keterangan;
$no_agenda = $kode . '/' . $no_agenda3 . '/302/' . $thn;
if (($no_agenda2 == null) || ($no_agenda2 == '')) {
echo "kosong";
} else {
echo $disposisi . '^#*' . $kode_id . '^#*' . $no_surat . '^#*' . $surat_dari . '^#*' . $perihal . '^#*' . $tgl_surat_masuk . '^#*' . $tgl_diterima . '^#*' . $no_agenda;
}
break;
case 'cari_kendali':
$thn = $_POST['thn'];
$no_kendali = $_POST['no_kendali'];
$queryu = pg_query($koneksi, "SELECT
perihal,kode_id,no_register,
(SELECT kode_satker FROM satuan_kerja WHERE id=satuan_kerja_dari),
(SELECT nama FROM satuan_kerja WHERE id=satuan_kerja_dari),
(SELECT keterangan AS nm_kode FROM kode WHERE id = kode_id),
(SELECT kode AS kd_surat FROM kode WHERE id = kode_id),
no_kendali,id,kepada
FROM surat WHERE date_part('YEAR', tgl_diterima)='$thn' AND no_kendali='$no_kendali' ");
while ($r = pg_fetch_assoc($queryu)) {
$perihal = $r['perihal'];
$kode_satker = $r['kode_satker'];
$satuan_kerja = $r['nama'];
$no_kendali2 = $r['no_kendali'];
$id = $r['id'];
$kepada = $r['kepada'];
$kode_id = $r['kode_id'];
$kd_surat = $r['kd_surat'];
$nm_kode = $r['nm_kode'];
$no_register = $r['no_register'];
}
$no_pinjam = (int) substr($no_kendali2, 0, 5);
$no_kendali = sprintf("%05s", $no_pinjam);
$data = [
'surat_id' => $id,
'perihal' => $perihal,
'kode_satker' => $kode_satker,
'kode_surat' => ['kode_id' => $kode_id, 'kd_surat' => $kd_surat, 'nm_kode' => $nm_kode],
'no_register' => $no_register,
'satuan_kerja' => $satuan_kerja,
'no_kendali' => $no_kendali,
'kepada' => $kepada,
];
http_response_code(200);
echo json_encode($data);
break;
case 'cari_kendali2':
$thn = $_POST['thn'];
$no_kendali = $_POST['no_kendali'];
$d = pg_query($koneksi, "SELECT COUNT(*) FROM surat WHERE date_part('YEAR', tgl_diterima)='$thn' AND no_kendali='$no_kendali'
AND kepada IS NOT NULL AND no_urut IS NOT NULL AND tgl_surat_keluar IS NOT NULL AND uraian IS NOT NULL AND kode_id IS NOT NULL AND balasan IS NOT NULL
AND tujuan_id IS NOT NULL AND jam_kirim IS NOT NULL
");
while ($r = pg_fetch_array($d)) {
$jml = $r[0];
}
echo $jml;
break;
case 'simpan_skeluar':
$surat_id = $_POST['surat_id'];
$kode_id = $_POST['kode_id'];
$kepada = $_POST['kepada'];
$uraian = $_POST['uraian'];
$tgl_surat_keluar = $_POST['tgl_surat_keluar'];
$tgl_surat_keluar = str_replace('/', '-', $tgl_surat_keluar);
$t = date('Y', strtotime($tgl_surat_keluar));
$b = date('m', strtotime($tgl_surat_keluar));
$h = date('d', strtotime($tgl_surat_keluar));
// $tgl_kirim=$_POST['tgl_kirim'];
// $tgl_kirim=str_replace('/','-',$tgl_kirim);
// $tk=date('Y',strtotime($tgl_kirim));
// $bk=date('m',strtotime($tgl_kirim));
// $hk=date('d',strtotime($tgl_kirim));
$tujuan_id = $_POST['tujuan_id'];
$balasan = $_POST['balasan'];
$satuan_kerja_id = $_POST['satuan_kerja_id'];
$satuan_kerja_dari = $_POST['satuan_kerja_dari'];
$perihal = $_POST['perihal'];
$j = $_POST['j'];
$thn_skrg = date('Y');
if ($surat_id == '0') {
$urutd = pg_query($koneksi, "SELECT COALESCE(MAX(no_urut),0) FROM surat WHERE date_part('YEAR', tgl_surat_keluar)='$thn_skrg' AND jenis_disposisi_id IN ('2','3')");
while ($rurutd = pg_fetch_array($urutd)) {
$no_urutd = $rurutd[0] + 1;
}
$ins = pg_query($koneksi, "INSERT INTO surat (
jenis_surat_id, jenis_disposisi_id, kode_id, kepada, uraian, tgl_surat_keluar,
jam_kirim, tujuan_id, balasan, satuan_kerja_id, tgl_diterima, no_urut, satuan_kerja_dari, perihal)
VALUES (
'4', '3', '$kode_id', '$kepada', '$uraian', NOW(), NOW(),
'$tujuan_id', '$balasan', '$satuan_kerja_id', NOW(), '$no_urutd', '$satuan_kerja_dari', '$perihal')");
} else {
$cek = pg_query($koneksi, "SELECT no_urut FROM surat WHERE id='$surat_id'");
$a = pg_fetch_result($cek, 0, 0);
if ($a == NULL) {
if ($j == 'kndl') {
// create no urut
$queryu = pg_query($koneksi, "SELECT COALESCE(MAX(no_urut),0) + 1 FROM surat WHERE date_part('YEAR', tgl_surat_keluar)='$thn_skrg' AND jenis_disposisi_id IN ('2','3')");
list($no_urutd) = pg_fetch_array($queryu);
$upd = pg_query($koneksi, "UPDATE surat SET kode_id='$kode_id', kepada='$kepada', uraian='$uraian', tgl_surat_keluar=NOW(),
jam_kirim=NOW(), tujuan_id='$tujuan_id', balasan='$balasan', no_urut='$no_urutd'
WHERE id='$surat_id'
");
// $getSurat = pg_query($koneksi, "SELECT id AS surat_id FROM surat
// WHERE perihal ILIKE '$perihal' AND no_register IS NOT NULL
// AND date_part('YEAR', tgl_surat_keluar)='$thn_skrg'
// ");
// $id_surat = pg_fetch_result($getSurat, 0, 'surat_id');
// _____________________________________
// $aq = pg_query($koneksi, "SELECT no_urut,no_register FROM surat WHERE perihal = '$perihal' AND date_part('YEAR', tgl_surat_keluar)='$thn_skrg' ORDER BY id DESC");
// $arr_test = [];
// // Mengisi array dengan hasil query
// while ($row = pg_fetch_assoc($aq)) {
// $arr_test[] = $row['no_urut'];
// }
// // Mengulang query lagi untuk memastikan pointer kembali ke awal
// $aqq = pg_query($koneksi, "SELECT no_urut,no_register,id as id_surat FROM surat WHERE perihal = '$perihal' AND date_part('YEAR', tgl_surat_keluar)='$thn_skrg' ORDER BY id DESC LIMIT 2");
// // Memeriksa apakah ada nilai yang sama dan menambahkannya
// while ($loop = pg_fetch_assoc($aqq)) {
// if (in_array($loop['no_urut'], $arr_test)) {
// // Cari indeks elemen yang sama dalam array
// $index = array_search($loop['no_urut'], $arr_test);
// // Tambahkan 1 pada nilai yang sama tersebut
// $no_urut = $arr_test[$index] += 1;
// $no_regSurat = $loop['no_register'];
// $id_surat = $loop['id_surat'];
// }
// }
// $getSurat = pg_query($koneksi, "SELECT id AS surat_id FROM surat
// WHERE no_register = '$no_regSurat'
// ",);
// $id_surat = pg_fetch_result($getSurat, 0, 'surat_id');
// $bu = [
// 'arr_test' => $arr_test,
// 'loop' => [
// 'a' => $no_urut,
// 'b' => [
// 'aa' => $no_regSurat,
// 'bb' => $id_surat
// ],
// 'c' => $id_surat
// ],
// 'dataBaru' => $arr_test[0]
// ];
// var_dump($id_surat);
// var_dump($bu);die();
// var_dump("UPDATE surat SET no_surat = '".$arr_test[0]."' WHERE id = '".$id_surat."'");die();
// pg_query($koneksi, "UPDATE surat SET no_surat = '".$arr_test[0]."' WHERE id = '".$id_surat."'");
// pg_query_params($koneksi, "UPDATE surat SET no_surat = $1 WHERE id = $2", array((string)$arr_test[0], $id_surat));
// Ambil semua no_urut dari tabel surat berdasarkan perihal dan tahun surat keluar
$aq = pg_query($koneksi, "SELECT no_urut, no_register FROM surat WHERE perihal = '$perihal' AND date_part('YEAR', tgl_surat_keluar) = '$thn_skrg' ORDER BY id DESC");
$arr_test = [];
// Mengisi array dengan hasil query
while ($row = pg_fetch_assoc($aq)) {
$arr_test[] = $row['no_urut'];
}
// Mengulang query dengan limit 2 untuk memeriksa duplikasi no_urut
$aqq = pg_query($koneksi, "SELECT no_urut, no_register, id AS id_surat FROM surat WHERE perihal = '$perihal' AND date_part('YEAR', tgl_surat_keluar) = '$thn_skrg' ORDER BY id DESC LIMIT 2");
$no_urut = null;
$no_regSurat = null;
$id_surat = null;
// Memeriksa apakah ada nilai yang sama dan menambahkannya
while ($loop = pg_fetch_assoc($aqq)) {
if (in_array($loop['no_urut'], $arr_test)) {
// Cari indeks elemen yang sama dalam array
$index = array_search($loop['no_urut'], $arr_test);
// Tambahkan 1 pada nilai yang sama tersebut
$no_urut = $arr_test[$index] + 1;
$no_regSurat = $loop['no_register'];
$id_surat = $loop['id_surat'];
$pg_query = pg_query($koneksi, "UPDATE surat SET no_surat = '" . $arr_test[0] . "' WHERE id = " . $id_surat . "");
}
}
// Jika id_surat ditemukan, perbarui no_surat di database
if ($id_surat) {
try {
pg_query_params($koneksi, "UPDATE surat SET no_surat = $1 WHERE id = $2", array($arr_test[0], $id_surat));
// $get_array_query = pg_fetch_array($pg_query);
// var_dump($get_array_query);
// var_dump("UPDATE surat SET no_surat = '" . $arr_test[0] . "' WHERE id = " . $id_surat . "");
} catch (Exception $e) {
//throw $th;
var_dump($e->getMessage());
}
}
} else {
$upd = pg_query($koneksi, "UPDATE surat SET kode_id='$kode_id', kepada='$kepada', uraian='$uraian', tgl_surat_keluar=NOW(), jam_kirim=NOW(),
tujuan_id='$tujuan_id', balasan='$balasan', konten='$konten', satuan_kerja_dari='$satuan_kerja_dari', perihal='$perihal'
WHERE id='$surat_id'
");
}
} else {
if ($j == 'kndl') {
$upd = pg_query($koneksi, "UPDATE surat SET
kode_id='$kode_id', kepada='$kepada', uraian='$uraian', tgl_surat_keluar=NOW(),
jam_kirim=NOW(), tujuan_id='$tujuan_id', balasan='$balasan'
WHERE id='$surat_id'
");
} else {
/*$upd=pg_query($koneksi,"UPDATE surat SET
kode_id='$kode_id',
kepada='$kepada',
uraian='$uraian',
tgl_surat_keluar=NOW(),
jam_kirim=NOW(),
tujuan_id='$tujuan_id',
balasan='$balasan',
satuan_kerja_dari='$satuan_kerja_dari',
perihal='$perihal'
WHERE id='$surat_id'
");*/
$upd = pg_query($koneksi, "UPDATE surat SET
kode_id='$kode_id', kepada='$kepada', uraian='$uraian',
tujuan_id='$tujuan_id', balasan='$balasan', satuan_kerja_dari='$satuan_kerja_dari', perihal='$perihal'
WHERE id='$surat_id'
");
}
}
}
break;
case 'simpan_kepada_ser':
$surat_id = $_POST['surat_id'];
$kode_id = $_POST['kode_id'];
$kepada = $_POST['kepada'];
$uraian = $_POST['uraian'];
$tgl_surat_keluar = $_POST['tgl_surat_keluar'];
$tgl_surat_keluar = str_replace('/', '-', $tgl_surat_keluar);
$t = date('Y', strtotime($tgl_surat_keluar));
$b = date('m', strtotime($tgl_surat_keluar));
$h = date('d', strtotime($tgl_surat_keluar));
$tujuan_id = $_POST['tujuan_id'];
$satuan_kerja_id = $_POST['satuan_kerja_id'];
$satuan_kerja_dari = $_POST['satuan_kerja_dari'];
$perihal = $_POST['perihal'];
$j = $_POST['j'];
$thn_skrg = date('Y');
$urutd = pg_query($koneksi, "SELECT COALESCE(MAX(no_urut),0) FROM surat WHERE date_part('YEAR', tgl_diterima)='$thn_skrg' AND jenis_disposisi_id IN ('2','3')");
while ($rurutd = pg_fetch_array($urutd)) {
$no_urutd = $rurutd[0] + 1;
}
if ($surat_id == '0') {
$ins = pg_query($koneksi, "INSERT INTO surat (
jenis_surat_id, jenis_disposisi_id, kode_id, tgl_surat_keluar, jam_kirim, tujuan_id,
satuan_kerja_id, tgl_diterima, no_urut, satuan_kerja_dari, perihal, kepada, balasan )
VALUES
('4', '3', '$kode_id', '$t-$b-$h', NOW(), '$tujuan_id', '$satuan_kerja_id',
NOW(), '$no_urutd', '$satuan_kerja_dari', '$perihal', '-', 'f' )
");
$idsu = pg_query($koneksi, "SELECT MAX(id) FROM surat WHERE date_part('YEAR', tgl_diterima)='$thn_skrg' AND jenis_disposisi_id IN ('2','3')");
while ($t = pg_fetch_array($idsu)) {
$surat_idb = $t[0];
}
$ins_kpd = pg_query($koneksi, "INSERT INTO kepada (surat_id,kepada,uraian) VALUES ('$surat_idb','$kepada','$perihal')");
} else {
$cek = pg_query($koneksi, "SELECT no_urut FROM surat WHERE id='$surat_id'");
while ($g = pg_fetch_array($cek)) {
$a = $g['no_urut'];
}
if ($a == NULL) {
if ($j == 'kndl') {
$upd = pg_query($koneksi, "UPDATE surat SET kode_id='$kode_id', tgl_surat_keluar='$t-$b-$h', jam_kirim=NOW(),
tujuan_id='$tujuan_id', no_urut='$no_urutd', kepada='-', balasan='f'
WHERE id='$surat_id'
");
} else {
$upd = pg_query($koneksi, "UPDATE surat SET
kode_id='$kode_id', tgl_surat_keluar='$t-$b-$h', jam_kirim=NOW(),
tujuan_id='$tujuan_id', no_urut='$no_urutd', perihal='$perihal', kepada='-', balasan='f'
WHERE id='$surat_id'
");
}
} else {
if ($j == 'kndl') {
$upd = pg_query($koneksi, "UPDATE surat SET
kode_id='$kode_id', tgl_surat_keluar='$t-$b-$h', jam_kirim=NOW(),
tujuan_id='$tujuan_id', kepada='-', balasan='f'
WHERE id='$surat_id'
");
} else {
$upd = pg_query($koneksi, "UPDATE surat SET
kode_id='$kode_id', tgl_surat_keluar='$t-$b-$h', jam_kirim=NOW(), tujuan_id='$tujuan_id',
perihal='$perihal', kepada='-', balasan='f'
WHERE id='$surat_id'
");
}
}
$ins_kpd = pg_query($koneksi, "INSERT INTO kepada (surat_id,kepada,uraian) VALUES ('$surat_id','$kepada','$perihal')");
}
break;
case 'hapus_surat_tools':
$id = $_POST['id'];
pg_query($koneksi, "DELETE FROM kepada WHERE surat_id='$id'");
pg_query($koneksi, "DELETE FROM surat WHERE id='$id'");
break;
case 'cek_kendali_edit':
$no_kendali = $_POST['no_kendali'];
$thn = $_POST['thn'];
$d = pg_query($koneksi, "SELECT s.perihal,s.satuan_kerja_dari,k.kode_satker,k.nama,s.id
FROM surat s
LEFT OUTER JOIN satuan_kerja k ON (k.id=s.satuan_kerja_dari)
WHERE s.no_kendali=$no_kendali AND date_part('YEAR', s.tgl_diterima)='$thn'");
while ($r = pg_fetch_array($d)) {
$perihal = $r[0];
$pengolah = $r[1];
$kode_satker = $r[2];
$nama = $r[3];
$surat_id = $r[4];
$pengolah2 = $kode_satker . ' / ' . $nama;
}
echo $perihal . '$%^&' . $pengolah2 . '$%^&' . $pengolah . '$%^&' . $surat_id;
break;
case 'edit_kendali':
$surat_id_awal = $_POST['surat_id_awal'];
$surat_id = $_POST['surat_id'];
$d1 = pg_query($koneksi, "SELECT s.kepada,s.no_urut,s.tgl_surat_keluar,s.uraian,s.kode_id,s.balasan,s.tujuan_id,s.jam_kirim,s.jenis_disposisi_id FROM surat s WHERE s.id=$surat_id_awal");
while ($r1 = pg_fetch_array($d1)) {
$kepada = $r1[0];
$no_urut = $r1[1];
$tgl_surat_keluar = $r1[2];
$uraian = $r1[3];
$kode_id = $r1[4];
$balasan = $r1[5];
$tujuan_id = $r1[6];
$jam_kirim = $r1[7];
$jenis_disposisi_id = $r1[8];
}
/*
pg_query($koneksi,"UPDATE surat SET kepada='$kepada',no_urut='$no_urut',tgl_surat_keluar='$tgl_surat_keluar',uraian='$uraian',kode_id='$kode_id',balasan='$balasan',
tujuan_id='$tujuan_id',jam_kirim='$jam_kirim'
WHERE id=$surat_id");
*/
pg_query($koneksi, "UPDATE surat SET kepada='$kepada',no_urut='$no_urut',uraian='$uraian',kode_id='$kode_id',balasan='$balasan',
tujuan_id='$tujuan_id',jam_kirim='$jam_kirim'
WHERE id=$surat_id");
pg_query($koneksi, "UPDATE surat SET kepada=NULL,no_urut=NULL,tgl_surat_keluar=NULL,uraian=NULL,kode_id=NULL,balasan=NULL,
tujuan_id=NULL,jam_kirim=NULL
WHERE id=$surat_id_awal");
break;
case 'batal_kendali':
$surat_id_awal = $_POST['surat_id_awal'];
pg_query($koneksi, "UPDATE surat SET kepada=NULL,no_urut=NULL,tgl_surat_keluar=NULL,uraian=NULL,kode_id=NULL,balasan=NULL,
tujuan_id=NULL,jam_kirim=NULL
WHERE id=$surat_id_awal");
break;
}