105 lines
5.0 KiB
PHP
105 lines
5.0 KiB
PHP
<?php
|
|
|
|
require_once '../../assets/excel/PHPExcel.php';
|
|
|
|
// koneksi ke database
|
|
include('../koneksi.php');
|
|
|
|
$filter_status=$_GET['filter_status'];
|
|
$satker_id=$_GET['satker_id'];
|
|
$jenis=$_GET['jenis'];
|
|
$jsheet='PELATIHAN - '.$filter_status;
|
|
$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(45);
|
|
$objPHPExcel->getSheet(0)->getColumnDimension('C')->setWidth(13);
|
|
$objPHPExcel->getSheet(0)->getColumnDimension('D')->setWidth(25);
|
|
$objPHPExcel->getSheet(0)->getColumnDimension('E')->setWidth(45);
|
|
$objPHPExcel->getSheet(0)->getColumnDimension('F')->setWidth(13);
|
|
$objPHPExcel->getSheet(0)->getColumnDimension('G')->setWidth(25);
|
|
$objPHPExcel->getSheet(0)->getColumnDimension('H')->setWidth(25);
|
|
|
|
$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($jsheet);
|
|
$objPHPExcel->getSheet(0)
|
|
->setCellValue('A1', 'No')
|
|
->setCellValue('B1', 'Nama')
|
|
->setCellValue('C1', 'Tgl Usulan')
|
|
->setCellValue('D1', 'Status Usulan')
|
|
->setCellValue('E1', 'Keterangan')
|
|
->setCellValue('F1', 'Tgl Verifikasi')
|
|
->setCellValue('G1', 'Keterangan Direktur')
|
|
->setCellValue('H1', 'Keterangan BKD');
|
|
|
|
|
|
$query = "SELECT i.id,i.data_pegawai_id,i.tgl_usulan,i.tgl_verifikasi,i.status,i.ket,p.nama,i.ket_dokdir,i.ket_dokbkd
|
|
FROM riwayat_pel i
|
|
INNER JOIN data_pegawai p ON (p.id=i.data_pegawai_id)
|
|
WHERE i.id IS NOT NULL
|
|
".($jenis== 'Kordik' ? "AND p.satuan_kerja=$satker_id" : "")."
|
|
".($filter_status== 'BELUM VERIFIKASI' ? "AND i.tgl_verifikasi IS NULL AND i.status IS NULL" : "
|
|
".($filter_status== 'SELESAI VERIFIKASI' ? "AND i.tgl_verifikasi IS NOT NULL AND i.status='SELESAI VERIFIKASI'" : "
|
|
".($filter_status== 'TIDAK MEMENUHI SYARAT' ? "AND i.tgl_verifikasi IS NULL AND i.status='TIDAK MEMENUHI SYARAT'" : "
|
|
".($filter_status== 'TIDAK DISETUJUI' ? "AND i.tgl_verifikasi IS NULL AND i.status='TIDAK DISETUJUI'" : "
|
|
".($filter_status== 'BATAL' ? "AND i.status='BATAL'" : "
|
|
".($filter_status== '' ? "" : "")."
|
|
")."
|
|
")."
|
|
")."
|
|
")."
|
|
")."
|
|
ORDER BY i.id DESC";
|
|
|
|
$hasil = pg_query($query);
|
|
$baris = 2;
|
|
$a=1;
|
|
while ($row = pg_fetch_array($hasil))
|
|
{
|
|
$nama=$row['nama'];
|
|
if (($row['tgl_usulan']==NULL) || ($row['tgl_usulan']=='')) {$tgl_usulan='';} else {$tgl_usulan=date('d-m-Y',strtotime($row['tgl_usulan']));}
|
|
$status1=$row['status'];
|
|
$ket=$row['ket'];
|
|
if (($row['tgl_verifikasi']==NULL) || ($row['tgl_verifikasi']=='')) {$tgl_verifikasi='';} else {$tgl_verifikasi=date('d-m-Y',strtotime($row['tgl_verifikasi']));}
|
|
if (($row['tgl_verifikasi']==NULL) && ($row['status']==NULL)) {$status='BELUM VERIFIKASI';} else {$status=$status1;}
|
|
$ket_dokdir=$row['ket_dokdir'];
|
|
$ket_dokbkd=$row['ket_dokbkd'];
|
|
|
|
$objPHPExcel->getSheet(0)
|
|
->setCellValue('A'.$baris, $a)
|
|
->setCellValue('B'.$baris, $nama)
|
|
->setCellValue('C'.$baris, $tgl_usulan)
|
|
->setCellValue('D'.$baris, ucwords(strtolower($status)))
|
|
->setCellValue('E'.$baris, $ket)
|
|
->setCellValue('F'.$baris, $tgl_verifikasi)
|
|
->setCellValue('G'.$baris, ucwords(strtolower($ket_dokdir)))
|
|
->setCellValue('H'.$baris, ucwords(strtolower($ket_dokbkd)));
|
|
|
|
$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('C'.$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_pelatihan.xls"');
|
|
header('Cache-Control: max-age=0');
|
|
|
|
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
|
|
$objWriter->save('php://output');
|
|
exit;
|
|
|
|
?>
|
|
|
|
|