149 lines
6.1 KiB
PHP
149 lines
6.1 KiB
PHP
<?php
|
|
|
|
require_once '../../assets/excel/PHPExcel.php';
|
|
|
|
// koneksi ke database
|
|
include('../koneksi.php');
|
|
|
|
$a=$_GET['a'];
|
|
$b=$_GET['b'];
|
|
//$bln2=$_GET['bln2'];
|
|
//$thn2=$_GET['thn2'];
|
|
|
|
if ($a=='Acara') {
|
|
$r1=strtolower($b);
|
|
$bln2='';
|
|
$thn2='';
|
|
} else
|
|
if ($a=='Penanggung Jawab') {
|
|
$p1=strtolower($b);
|
|
$bln2='';
|
|
$thn2='';
|
|
} else
|
|
if ($a=='Nomor Undangan') {
|
|
$s1=strtolower($b);
|
|
$bln2='';
|
|
$thn2='';
|
|
} else
|
|
if ($a=='Notulen Ada') {
|
|
$b='na';
|
|
$na1=strtolower($b);
|
|
$bln2=$_GET['bln2'];
|
|
$thn2=$_GET['thn2'];
|
|
} else
|
|
if ($a=='Notulen Belum Ada') {
|
|
$b='nb';
|
|
$nb1=strtolower($b);
|
|
$bln2=$_GET['bln2'];
|
|
$thn2=$_GET['thn2'];
|
|
} else {
|
|
$bln2=$_GET['bln2'];
|
|
$thn2=$_GET['thn2'];
|
|
}
|
|
|
|
$objPHPExcel = new PHPExcel();
|
|
$objPHPExcel->getDefaultStyle()->getFont()->setName('Arial');
|
|
$objPHPExcel->getDefaultStyle()->getFont()->setSize(10);
|
|
$objPHPExcel->getDefaultStyle()->getAlignment()->setWrapText(true);
|
|
//$objPHPExcel->getDefaultStyle()->getNumberFormat()->setFormatCode('@');
|
|
$objPHPExcel->getSheet(0)->getColumnDimension('A')->setWidth(5);
|
|
$objPHPExcel->getSheet(0)->getColumnDimension('B')->setWidth(25);
|
|
$objPHPExcel->getSheet(0)->getColumnDimension('C')->setWidth(20);
|
|
$objPHPExcel->getSheet(0)->getColumnDimension('D')->setWidth(55);
|
|
$objPHPExcel->getSheet(0)->getColumnDimension('E')->setWidth(37);
|
|
$objPHPExcel->getSheet(0)->getColumnDimension('F')->setWidth(12);
|
|
$objPHPExcel->getSheet(0)->getColumnDimension('G')->setWidth(24);
|
|
$objPHPExcel->getSheet(0)->getColumnDimension('H')->setWidth(12);
|
|
|
|
$styleBold = array('font' => array('bold' => true));
|
|
$objPHPExcel->getSheet(0)->getStyle('A1:H1')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
|
$objPHPExcel->getSheet(0)->getStyle('A1:H1')->applyFromArray($styleBold);
|
|
$objPHPExcel->getSheet(0)->getRowDimension('1')->setRowHeight(30);
|
|
$objPHPExcel->getSheet(0)->setTitle('LAPORAN ARSIP RAPAT');
|
|
$objPHPExcel->getSheet(0)
|
|
|
|
|
|
->setCellValue('A1', 'No')
|
|
->setCellValue('B1', 'Ruangan')
|
|
->setCellValue('C1', 'Tgl Acara')
|
|
->setCellValue('D1', 'Acara')
|
|
->setCellValue('E1', 'Penanggung Jawab')
|
|
->setCellValue('F1', 'Status')
|
|
->setCellValue('G1', 'No Undangan')
|
|
->setCellValue('H1', 'Notulen');
|
|
|
|
|
|
$query = "SELECT (SELECT r.nama FROM data_ruangan r WHERE r.id=k.tempat),
|
|
k.tgl_acara,k.waktu_mulai,k.waktu_selesai,k.tujuan,k.st_persiapan,
|
|
k.no_undangan,k.id,
|
|
(SELECT s.nama FROM satuan_kerja s WHERE s.id=k.penanggungjawab),
|
|
k.st_batal,COUNT(l.file),n.riwayat_kegiatan_id
|
|
FROM riwayat_kegiatan k
|
|
LEFT OUTER JOIN lampiran l ON (k.id=l.riwayat_kegiatan_id)
|
|
LEFT OUTER JOIN riwayat_notulen n ON (k.id=n.riwayat_kegiatan_id)
|
|
WHERE (k.st_persiapan='Close' AND k.st_persiapan <> 'PJ')
|
|
".($thn2 == '' ? "" : "AND EXTRACT(YEAR FROM DATE(k.tgl_acara))='$thn2'")."
|
|
".($bln2 == '' ? "" : "AND EXTRACT(MONTH FROM DATE(k.tgl_acara))='$bln2'")."
|
|
".($r1 == null ? "" : "AND lower(k.tujuan) LIKE '%$r1%'")."
|
|
".($p1 == null ? "" : "AND lower((SELECT s.nama FROM satuan_kerja s WHERE s.id=k.penanggungjawab)) LIKE '%$p1%'")."
|
|
".($s1 == null ? "" : "AND lower(k.no_undangan) LIKE '%$s1%'")."
|
|
".($na1 == null ? "" : "AND n.riwayat_kegiatan_id IS NOT NULL")."
|
|
".($nb1 == null ? "" : "AND n.riwayat_kegiatan_id IS NULL")."
|
|
GROUP BY
|
|
(SELECT r.nama FROM data_ruangan r WHERE r.id=k.tempat),
|
|
k.tgl_acara,k.waktu_mulai,k.waktu_selesai,k.tujuan,k.st_persiapan,
|
|
k.no_undangan,k.id,
|
|
(SELECT s.nama FROM satuan_kerja s WHERE s.id=k.penanggungjawab),
|
|
k.st_batal,n.riwayat_kegiatan_id
|
|
ORDER BY tgl_acara DESC";
|
|
|
|
$hasil = pg_query($query);
|
|
$baris = 2;
|
|
$a=1;
|
|
while ($row = pg_fetch_array($hasil))
|
|
{
|
|
$ruangan=$row[0];
|
|
$tgl_acara=date('d-m-Y',strtotime($row['tgl_acara']));
|
|
$waktu=date('H:i',strtotime($row['waktu_mulai'])).' - '.date('H:i',strtotime($row['waktu_selesai']));
|
|
$acara=$row['tujuan'];
|
|
$penanggungjawab=$row[8];
|
|
if (($row['no_undangan']!=null) && ($row['st_persiapan']=='Pending')) {$status='Siap kirim';} else {$status=$row['st_persiapan'];}
|
|
if ($row['no_undangan']==NULL) {
|
|
$no_undangan='';
|
|
} else {
|
|
$no_undangan='005 / '.$row['no_undangan'].' / 102.7 / '.date('Y',strtotime($row['tgl_acara']));
|
|
}
|
|
if ($row[11]==NULL) {$notulen='';} else {$notulen='ADA';}
|
|
|
|
|
|
$objPHPExcel->getSheet(0)
|
|
->setCellValue('A'.$baris, $a)
|
|
->setCellValue('B'.$baris, $ruangan)
|
|
->setCellValue('C'.$baris, $tgl_acara."\n".$waktu)
|
|
->setCellValue('D'.$baris, $acara)
|
|
->setCellValue('E'.$baris, $penanggungjawab)
|
|
->setCellValue('G'.$baris, $no_undangan)
|
|
->setCellValue('F'.$baris, $status)
|
|
->setCellValue('H'.$baris, $notulen);
|
|
|
|
$objPHPExcel->getSheet(0)->getStyle('A1:A'.$baris)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
|
$objPHPExcel->getSheet(0)->getStyle('F1:H'.$baris)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
|
$objPHPExcel->getSheet(0)->getStyle('A1:J'.$baris)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
|
$a++;
|
|
$baris++;
|
|
}
|
|
$akhir=$baris-1;
|
|
$objPHPExcel->setActiveSheetIndex(0);
|
|
|
|
header('Content-Type: application/vnd.ms-excel');
|
|
header('Content-Disposition: attachment;filename="laporan_arsip_rapat.xls"');
|
|
header('Cache-Control: max-age=0');
|
|
|
|
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
|
|
$objWriter->save('php://output');
|
|
exit;
|
|
|
|
?>
|
|
|
|
|