199 lines
7.8 KiB
PHP
199 lines
7.8 KiB
PHP
<?php
|
|
|
|
require_once '../../assets/excel/PHPExcel.php';
|
|
|
|
// koneksi ke database
|
|
include('../koneksi.php');
|
|
|
|
|
|
$a=$_GET['a'];
|
|
$tm1=$_GET['tm1'];
|
|
$tm1=str_replace('/','-',$tm1);
|
|
$tt1=date('Y',strtotime($tm1));
|
|
$bb1=date('m',strtotime($tm1));
|
|
$hh1=date('d',strtotime($tm1));
|
|
|
|
$ts1=$_GET['ts1'];+
|
|
$ts1=str_replace('/','-',$ts1);
|
|
$tt2=date('Y',strtotime($ts1));
|
|
$bb2=date('m',strtotime($ts1));
|
|
$hh2=date('d',strtotime($ts1));
|
|
|
|
|
|
|
|
$objPHPExcel = new PHPExcel();
|
|
|
|
if ($a=='Surat Masuk') {
|
|
|
|
$objPHPExcel->getSheet(0)->setTitle('DATA_SURAT_MASUK');
|
|
$objPHPExcel->getSheet(0)
|
|
->setCellValue('A1', 'No')
|
|
->setCellValue('B1', 'Kode')
|
|
->setCellValue('C1', 'Asal Surat')
|
|
->setCellValue('D1', 'Tgl Surat')
|
|
->setCellValue('E1', 'Perihal');
|
|
// ->setCellValue('F1', 'Pemroses');
|
|
|
|
$query = "SELECT s.no_urut,(SELECT s1.kode FROM kode s1 WHERE s1.id=s.kode_id),
|
|
s.surat_dari,COALESCE(a.tgl_arsip,s.tgl_diterima),
|
|
s.perihal,
|
|
(SELECT k.kode_satker FROM satuan_kerja k WHERE k.id=s.satuan_kerja_id)
|
|
FROM surat s
|
|
LEFT OUTER JOIN arsip a ON (a.surat_id=s.id)
|
|
WHERE s.tgl_surat_masuk IS NOT NULL
|
|
AND COALESCE(a.tgl_arsip,s.tgl_diterima)::DATE BETWEEN '$tt1-$bb1-$hh1' AND '$tt2-$bb2-$hh2'
|
|
ORDER BY COALESCE(a.tgl_arsip,s.tgl_diterima) ASC, s.no_urut ASC";
|
|
|
|
|
|
|
|
$hasil = pg_query($query);
|
|
$baris = 2;
|
|
$a=1;
|
|
while ($data = pg_fetch_array($hasil))
|
|
{
|
|
$no_pinjam=(int) substr($data['no_urut'],0,5);
|
|
$no_urut=sprintf("%05s",$no_pinjam);
|
|
|
|
$tgl_surat_masuk=date('d-m-Y',strtotime($data[3]));
|
|
$objPHPExcel->getSheet(0)
|
|
->setCellValue('A'.$baris, $no_urut)
|
|
->setCellValue('B'.$baris, $data[1])
|
|
->setCellValue('C'.$baris, $data[2])
|
|
->setCellValue('D'.$baris, $tgl_surat_masuk)
|
|
->setCellValue('E'.$baris, $data[4]);
|
|
//->setCellValue('F'.$baris, $data[5]);
|
|
$a++;
|
|
$baris++;
|
|
}
|
|
|
|
$objPHPExcel->setActiveSheetIndex(0);
|
|
|
|
header('Content-Type: application/vnd.ms-excel');
|
|
header('Content-Disposition: attachment;filename="surat_masuk.xls"');
|
|
header('Cache-Control: max-age=0');
|
|
|
|
} else
|
|
if ($a=='Surat Keluar') {
|
|
|
|
$objPHPExcel->getSheet(0)->setTitle('DATA_SURAT_KELUAR');
|
|
$objPHPExcel->getSheet(0)
|
|
->setCellValue('A1', 'No')
|
|
->setCellValue('B1', 'Kode')
|
|
->setCellValue('C1', 'Tgl Surat')
|
|
->setCellValue('D1', 'Perihal')
|
|
->setCellValue('E1', 'Tujuan')
|
|
->setCellValue('F1', 'Pengolah');
|
|
$query = "SELECT s.no_urut,(SELECT d.kode FROM kode d WHERE d.id=s.kode_id),
|
|
k.kepada,
|
|
s.tgl_surat_keluar,
|
|
s.perihal
|
|
,
|
|
CASE WHEN s.satuan_kerja_dari IS NULL THEN (SELECT a.kode_satker FROM satuan_kerja a WHERE a.id=s.satuan_kerja_id)
|
|
ELSE
|
|
(SELECT k2.kode_satker FROM satuan_kerja k2 WHERE k2.id=s.satuan_kerja_dari)
|
|
END,
|
|
CASE WHEN s.balasan='t' THEN '1. YA' ELSE '2. TIDAK' END,k.uraian,
|
|
CASE WHEN s.satuan_kerja_dari IS NULL THEN (SELECT a.nama FROM satuan_kerja a WHERE a.id=s.satuan_kerja_id)
|
|
ELSE
|
|
(SELECT t2.nama FROM satuan_kerja t2 WHERE t2.id=s.satuan_kerja_dari)
|
|
END,t.tujuan
|
|
FROM surat s
|
|
LEFT OUTER JOIN kepada k ON (s.id=k.surat_id)
|
|
LEFT OUTER JOIN tujuan t ON (t.id=s.tujuan_id)
|
|
WHERE s.tgl_surat_keluar::DATE BETWEEN '$tt1-$bb1-$hh1' AND '$tt2-$bb2-$hh2'
|
|
AND s.kepada IS NOT NULL
|
|
ORDER BY s.no_urut ASC, s.tgl_surat_keluar ASC";
|
|
$hasil = pg_query($query);
|
|
$baris = 2;
|
|
$a=1;
|
|
|
|
while ($data = pg_fetch_array($hasil))
|
|
{
|
|
$no_pinjam=(int) substr($data['no_urut'],0,5);
|
|
$no_urut=sprintf("%05s",$no_pinjam);
|
|
$tgl_surat_keluar=date('d-m-Y',strtotime($data['tgl_surat_keluar']));
|
|
$objPHPExcel->getSheet(0)
|
|
->setCellValue('A'.$baris, $no_urut)
|
|
->setCellValue('B'.$baris, $data[1])
|
|
->setCellValue('C'.$baris, $tgl_surat_keluar)
|
|
->setCellValue('D'.$baris, $data[4])
|
|
->setCellValue('E'.$baris, $data['tujuan'])
|
|
->setCellValue('F'.$baris, $data[8]);
|
|
$a++;
|
|
$baris++;
|
|
}
|
|
|
|
$objPHPExcel->setActiveSheetIndex(0);
|
|
|
|
header('Content-Type: application/vnd.ms-excel');
|
|
header('Content-Disposition: attachment;filename="surat_keluar.xls"');
|
|
header('Cache-Control: max-age=0');
|
|
} else
|
|
if ($a=='Arsip') {
|
|
|
|
$objPHPExcel->getSheet(0)->setTitle('DATA_ARSIP');
|
|
$objPHPExcel->getSheet(0)
|
|
->setCellValue('A1', 'Dari')
|
|
->setCellValue('B1', 'Tgl Surat')
|
|
->setCellValue('C1', 'Tgl Arsip')
|
|
->setCellValue('D1', 'No Surat')
|
|
->setCellValue('E1', 'Perihal')
|
|
->setCellValue('F1', 'Jenis')
|
|
->setCellValue('G1', 'No Agenda')
|
|
->setCellValue('H1', 'Kode');
|
|
$query = "SELECT DISTINCT s.surat_dari,s.no_surat,s.perihal,(SELECT j.jenis FROM jenis_disposisi j WHERE j.id=s.jenis_disposisi_id),
|
|
s.no_agenda,s.sm_baca,s.id,
|
|
(SELECT f.sifat FROM sifat_surat f WHERE f.id=s.sifat_surat_id),s.tgl_surat_masuk,s.tgl_diterima,
|
|
(SELECT kode FROM kode WHERE id=s.kode_id),
|
|
s.tgl_surat_masuk,s.tgl_diterima,a.tgl_arsip
|
|
FROM surat s
|
|
LEFT OUTER JOIN kirim k ON (s.id=k.surat_id)
|
|
INNER JOIN arsip a ON (a.surat_id=s.id)
|
|
WHERE s.jenis_disposisi_id='1'
|
|
AND a.tgl_arsip::DATE BETWEEN '$tt1-$bb1-$hh1' AND '$tt2-$bb2-$hh2'
|
|
ORDER BY a.tgl_arsip DESC";
|
|
$hasil = pg_query($query);
|
|
$baris = 2;
|
|
$a=1;
|
|
|
|
while ($data = pg_fetch_array($hasil))
|
|
{
|
|
|
|
$no_pinjam=(int) substr($data['no_agenda'],0,5);
|
|
$no_agenda=sprintf("%05s",$no_pinjam);
|
|
if (date('d-m-Y',strtotime($data['tgl_surat_masuk']))=='01-01-1970') {
|
|
$ag=$data[10].'/'.$no_agenda.'/102.7/'.date('Y',strtotime($data['tgl_arsip']));
|
|
} else {
|
|
$ag=$data[10].'/'.$no_agenda.'/102.7/'.date('Y',strtotime($data['tgl_surat_masuk']));
|
|
}
|
|
|
|
|
|
$tgl_surat_masuk=date('d-m-Y',strtotime($data['tgl_surat_masuk']));
|
|
$tgl_arsip=date('d-m-Y',strtotime($data['tgl_arsip']));
|
|
$objPHPExcel->getSheet(0)
|
|
->setCellValue('A'.$baris, $data['surat_dari'])
|
|
->setCellValue('B'.$baris, $tgl_surat_masuk)
|
|
->setCellValue('C'.$baris, $tgl_arsip)
|
|
->setCellValue('D'.$baris, $data['no_surat'])
|
|
->setCellValue('E'.$baris, $data['perihal'])
|
|
->setCellValue('F'.$baris, $data[3])
|
|
->setCellValue('G'.$baris, $ag)
|
|
->setCellValue('H'.$baris, $data[10]);
|
|
$a++;
|
|
$baris++;
|
|
}
|
|
|
|
$objPHPExcel->setActiveSheetIndex(0);
|
|
|
|
header('Content-Type: application/vnd.ms-excel');
|
|
header('Content-Disposition: attachment;filename="arsip.xls"');
|
|
header('Cache-Control: max-age=0');
|
|
}
|
|
|
|
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
|
|
$objWriter->save('php://output');
|
|
exit;
|
|
|
|
?>
|
|
|