Commit 513966a2 by nurchamim

modul: revisi payroll pph21

status: selesai
keterangan:
1. download laporan format cortax
2. tambah ID TKU pada Payroll->Pengaturan Umum
parent 4f2407f3
<?php
defined('BASEPATH') or exit('No direct script access allowed');
class Download_pph_uu24_cortax_bpmp extends MY_Controller
{
public function __construct()
{
parent::__construct();
$this->load->model('payroll/laporan_pph/Laporan_pph_uu24_m', 'model');
$this->load->helper(['payroll', 'download']);
$this->load->library(array('PHPExcel/Excel', 'PHPExcel/PHPExcel'));
}
/**
* Download laporan PPh21 excel format cortax
*
* @param mixed $periode => jika tahunan mengabaikan periode
* @param mixed $cabang
* @param mixed $departemen
* @param mixed $karyawan
* @return void
*/
public function download_excel($periode = "00-0000", $cabang = "all", $departemen = "all", $karyawan = "all")
{
// Load plugin PHPExcel nya
include APPPATH . 'third_party/PHPExcel/PHPExcel.php';
$periode = $this->periode($periode);
list($tahun, $bulan) = explode('-', $periode);
// FILENAME
if ($karyawan != "all") {
$nama_karyawan = $this->model->nama_karyawan($karyawan);
$filename = "Data PPh21 " . $bulan . " " . $nama_karyawan;
} else {
if ($departemen != "all") {
$nama_cab = $this->model->nama_cabang($cabang);
$nama_dep = $this->model->nama_departemen($departemen);
$nama = "Data PPh21 " . $bulan . " Cabang " . $nama_cab . " Departemen " . str_replace("/", "-", $nama_dep);
$filename = $nama;
} else {
if ($cabang != "all") {
$nama = $this->model->nama_cabang($cabang);
$filename = "Data PPh21 " . $bulan . " Cabang " . $nama . " Semua Departemen";
} else {
$nama = "Data PPh21 " . $bulan . " Semua Cabang";
$filename = $nama;
}
}
}
// data
$data = $this->model->get_datatables($periode, $cabang, $departemen, $karyawan);
// Panggil class PHPExcel nya
$excel = new PHPExcel();
// Settingan awal fil excel
$excel->getProperties()
->setCreator('Absenku')
->setLastModifiedBy('Absenku')
->setTitle("Laporan PPH Absenku")
->setSubject("Laporan PPH")
->setDescription("Laporan PPH Absenku Profesioanal");
// Create a new worksheet for tab coretax DATA
$this->coretax_data($excel, $data, $periode);
// Create a new worksheet for tab coretax BPMP
$this->coretax_bpmp($excel);
// Create a new worksheet for tab coretax REF
$this->coretax_ref($excel);
$excel->setActiveSheetIndex(0);
// Proses file excel
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment; filename=' . removeSpecialChar($filename) . '.xlsx'); // Set nama file excel nya
header('Cache-Control: max-age=0');
$write = PHPExcel_IOFactory::createWriter($excel, 'Excel2007');
$write->save('php://output');
}
/**
* worksheet for tab coretax DATA
*
* @param object $excel => library PHPExcel
* @param object $data => data pph21
* @param string $periode => YYYY-MM
* @param integer $index => worksheet dimulai dari 0
* @param string $title => Judul worksheet
* @return void
*/
private function coretax_data($excel, $data, $periode, $index = 0, $title = 'DATA')
{
$excel->setActiveSheetIndex($index);
$sheet = $excel->getActiveSheet();
// setup sheet
$sheet->getDefaultStyle()->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$sheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
$sheet->setTitle($title);
// set width
$sheet->getColumnDimension('A')->setWidth(20);
$sheet->getColumnDimension('B')->setWidth(17);
$sheet->getColumnDimension('C')->setWidth(14);
$sheet->getColumnDimension('D')->setWidth(16);
$sheet->getColumnDimension('E')->setWidth(25);
$sheet->getColumnDimension('F')->setWidth(17);
$sheet->getColumnDimension('G')->setWidth(8);
$sheet->getColumnDimension('H')->setAutoSize(true);
$sheet->getColumnDimension('I')->setWidth(19);
$sheet->getColumnDimension('J')->setWidth(19);
$sheet->getColumnDimension('K')->setWidth(19);
$sheet->getColumnDimension('L')->setWidth(7);
$sheet->getColumnDimension('M')->setWidth(24);
$sheet->getColumnDimension('N')->setWidth(17);
$sheet->getColumnDimension('O')->setWidth(10);
$sheet->getColumnDimension('P')->setWidth(10);
$sheet->getColumnDimension('Q')->setWidth(10);
$sheet->getColumnDimension('R')->setWidth(10);
// set value header
$sheet->setCellValue('A1', 'NPWP Pemotong');
$sheet->setCellValue('B4', 'Masa Pajak');
$sheet->setCellValue('C4', 'Tahun Pajak');
$sheet->setCellValue('D4', 'Status Pegawai');
$sheet->setCellValue('E4', 'NPWP/NIK/TIN');
$sheet->setCellValue('F4', 'Nomor Passport');
$sheet->setCellValue('G4', 'Status');
$sheet->setCellValue('H4', 'Posisi');
$sheet->setCellValue('I4', 'Sertifikat/Fasilitas');
$sheet->setCellValue('J4', 'Kode Objek Pajak');
$sheet->setCellValue('K4', 'Penghasilan Kotor');
$sheet->setCellValue('L4', 'Tarif');
$sheet->setCellValue('M4', 'ID TKU');
$sheet->setCellValue('N4', 'Tgl Pemotongan');
$sheet->setCellValue('P4', 'TER A');
$sheet->setCellValue('Q4', 'TER B');
$sheet->setCellValue('R4', 'TER C');
// set value with data
list($tahun, $bulan) = explode('-', $periode);
$pengaturan_pph = $this->model->get_pengaturan_pph($periode);
$sheet->setCellValueExplicit('B1', $pengaturan_pph->npwp);
$row = 5;
foreach ($data as $value) {
$sheet->setCellValueExplicit('B' . $row, $bulan, PHPExcel_Cell_DataType::TYPE_NUMERIC);
$sheet->setCellValue('C' . $row, $tahun);
$sheet->setCellValue('D' . $row, $value->status_karyawan);
$sheet->setCellValueExplicit('E' . $row, $value->no_ktp);
$sheet->setCellValue('G' . $row, $value->kd_ptkp);
$sheet->setCellValue('H' . $row, $value->nm_jabatan);
$sheet->setCellValueExplicit('I' . $row, $value->fasilitas == 'N' ? 'N/A' : $value->fasilitas);
$sheet->setCellValueExplicit('J' . $row, $value->kd_objek_pajak);
$sheet->setCellValueExplicit('K' . $row, $value->gaji_bruto, PHPExcel_Cell_DataType::TYPE_NUMERIC);
$sheet->setCellValue('L' . $row, '=IF(OR(G' . $row . '="TK/0",G' . $row . '="TK/1",G' . $row . '="K/0",G' . $row . '="HB/0",G' . $row . '="HB/1"),P' . $row . ',IF(OR(G' . $row . '="TK/2",G' . $row . '="TK/3",G' . $row . '="K/1",G' . $row . '="K/2",G' . $row . '="HB/2",G' . $row . '="HB/3"),Q' . $row . ',R' . $row . '))');
$sheet->setCellValueExplicit('M' . $row, $value->id_tku);
$sheet->setCellValue('N' . $row, date('d/m/Y', strtotime($value->tgl_pemotongan)));
// ter A, B, C
$sheet->setCellValue('P' . $row, '=IF(K' . $row . '<=5400000,0,IF(AND(K' . $row . '>5400000,K' . $row . '<=5650000),0.25,IF(AND(K' . $row . '>5650000,K' . $row . '<=5950000),0.5,IF(AND(K' . $row . '>5950000,K' . $row . '<=6300000),0.75,IF(AND(K' . $row . '>6300000,K' . $row . '<=6750000),1,IF(AND(K' . $row . '>6750000,K' . $row . '<=7500000),1.25,IF(AND(K' . $row . '>7500000,K' . $row . '<=8550000),1.5,IF(AND(K' . $row . '>8550000,K' . $row . '<=9650000),1.75,IF(AND(K' . $row . '>9650000,K' . $row . '<=10050000),2,IF(AND(K' . $row . '>10050000,K' . $row . '<=10350000),2.25,IF(AND(K' . $row . '>10350000,K' . $row . '<=10700000),2.5,IF(AND(K' . $row . '>10700000,K' . $row . '<=11050000),3,IF(AND(K' . $row . '>11050000,K' . $row . '<=11600000),3.5,IF(AND(K' . $row . '>11600000,K' . $row . '<=12500000),4,IF(AND(K' . $row . '>12500000,K' . $row . '<=13750000),5,IF(AND(K' . $row . '>13750000,K' . $row . '<=15100000),6,IF(AND(K' . $row . '>15100000,K' . $row . '<=16950000),7,IF(AND(K' . $row . '>16950000,K' . $row . '<=19750000),8,IF(AND(K' . $row . '>19750000,K' . $row . '<=24150000),9,IF(AND(K' . $row . '>24150000,K' . $row . '<=26450000),10,IF(AND(K' . $row . '>26450000,K' . $row . '<=28000000),11,IF(AND(K' . $row . '>28000000,K' . $row . '<=30050000),12,IF(AND(K' . $row . '>30050000,K' . $row . '<=32400000),13,IF(AND(K' . $row . '>32400000,K' . $row . '<=35400000),14,IF(AND(K' . $row . '>35400000,K' . $row . '<=39100000),15,IF(AND(K' . $row . '>39100000,K' . $row . '<=43850000),16,IF(AND(K' . $row . '>43850000,K' . $row . '<=47800000),17,IF(AND(K' . $row . '>47800000,K' . $row . '<=51400000),18,IF(AND(K' . $row . '>51400000,K' . $row . '<=56300000),19,IF(AND(K' . $row . '>56300000,K' . $row . '<=62200000),20,IF(AND(K' . $row . '>62200000,K' . $row . '<=68600000),21,IF(AND(K' . $row . '>68600000,K' . $row . '<=77500000),22,IF(AND(K' . $row . '>77500000,K' . $row . '<=89000000),23,IF(AND(K' . $row . '>89000000,K' . $row . '<=103000000),24,IF(AND(K' . $row . '>103000000,K' . $row . '<=125000000),25,IF(AND(K' . $row . '>125000000,K' . $row . '<=157000000),26,IF(AND(K' . $row . '>157000000,K' . $row . '<=206000000),27,IF(AND(K' . $row . '>206000000,K' . $row . '<=337000000),28,IF(AND(K' . $row . '>337000000,K' . $row . '<=454000000),29,IF(AND(K' . $row . '>454000000,K' . $row . '<=550000000),30,IF(AND(K' . $row . '>550000000,K' . $row . '<=695000000),31,IF(AND(K' . $row . '>695000000,K' . $row . '<=910000000),32,IF(AND(K' . $row . '>910000000,K' . $row . '<=1400000000),33,34)))))))))))))))))))))))))))))))))))))))))))');
$sheet->setCellValue('Q' . $row, '=IF(K' . $row . '<=6200000,0,IF(AND(K' . $row . '>6200000,K' . $row . '<=6500000),0.25,IF(AND(K' . $row . '>6500000,K' . $row . '<=6850000),0.5,IF(AND(K' . $row . '>6850000,K' . $row . '<=7300000),0.75,IF(AND(K' . $row . '>7300000,K' . $row . '<=9200000),1,IF(AND(K' . $row . '>9200000,K' . $row . '<=10750000),1.5,IF(AND(K' . $row . '>10750000,K' . $row . '<=11250000),2,IF(AND(K' . $row . '>11250000,K' . $row . '<=11600000),2.5,IF(AND(K' . $row . '>11600000,K' . $row . '<=12600000),3,IF(AND(K' . $row . '>12600000,K' . $row . '<=13600000),4,IF(AND(K' . $row . '>13600000,K' . $row . '<=14950000),5,IF(AND(K' . $row . '>14950000,K' . $row . '<=16400000),6,IF(AND(K' . $row . '>16400000,K' . $row . '<=18450000),7,IF(AND(K' . $row . '>18450000,K' . $row . '<=21850000),8,IF(AND(K' . $row . '>21850000,K' . $row . '<=26000000),9,IF(AND(K' . $row . '>26000000,K' . $row . '<=27700000),10,IF(AND(K' . $row . '>27700000,K' . $row . '<=29350000),11,IF(AND(K' . $row . '>29350000,K' . $row . '<=31450000),12,IF(AND(K' . $row . '>31450000,K' . $row . '<=33950000),13,IF(AND(K' . $row . '>33950000,K' . $row . '<=37100000),14,IF(AND(K' . $row . '>37100000,K' . $row . '<=41100000),15,IF(AND(K' . $row . '>41100000,K' . $row . '<=45800000),16,IF(AND(K' . $row . '>45800000,K' . $row . '<=49500000),17,IF(AND(K' . $row . '>49500000,K' . $row . '<=53800000),18,IF(AND(K' . $row . '>53800000,K' . $row . '<=58500000),19,IF(AND(K' . $row . '>58500000,K' . $row . '<=64000000),20,IF(AND(K' . $row . '>64000000,K' . $row . '<=71000000),21,IF(AND(K' . $row . '>71000000,K' . $row . '<=80000000),22,IF(AND(K' . $row . '>80000000,K' . $row . '<=93000000),23,IF(AND(K' . $row . '>93000000,K' . $row . '<=109000000),24,IF(AND(K' . $row . '>109000000,K' . $row . '<=129000000),25,IF(AND(K' . $row . '>129000000,K' . $row . '<=163000000),26,IF(AND(K' . $row . '>163000000,K' . $row . '<=211000000),27,IF(AND(K' . $row . '>211000000,K' . $row . '<=374000000),28,IF(AND(K' . $row . '>374000000,K' . $row . '<=459000000),29,IF(AND(K' . $row . '>459000000,K' . $row . '<=555000000),30,IF(AND(K' . $row . '>555000000,K' . $row . '<=704000000),31,IF(AND(K' . $row . '>704000000,K' . $row . '<=957000000),32,IF(AND(K' . $row . '>957000000,K' . $row . '<=1405000000),33,34)))))))))))))))))))))))))))))))))))))))');
$sheet->setCellValue('R' . $row, '=IF(K' . $row . '<=6600000,0,IF(AND(K' . $row . '>6600000,K' . $row . '<=6950000),0.25,IF(AND(K' . $row . '>6950000,K' . $row . '<=7350000),0.5,IF(AND(K' . $row . '>7350000,K' . $row . '<=7800000),0.75,IF(AND(K' . $row . '>7800000,K' . $row . '<=8850000),1,IF(AND(K' . $row . '>8850000,K' . $row . '<=9800000),1.25,IF(AND(K' . $row . '>9800000,K' . $row . '<=10950000),1.5,IF(AND(K' . $row . '>10950000,K' . $row . '<=11200000),1.75,IF(AND(K' . $row . '>11200000,K' . $row . '<=12050000),2,IF(AND(K' . $row . '>12050000,K' . $row . '<=12950000),3,IF(AND(K' . $row . '>12950000,K' . $row . '<=14150000),4,IF(AND(K' . $row . '>14150000,K' . $row . '<=15550000),5,IF(AND(K' . $row . '>15550000,K' . $row . '<=17050000),6,IF(AND(K' . $row . '>17050000,K' . $row . '<=19500000),7,IF(AND(K' . $row . '>19500000,K' . $row . '<=22700000),8,IF(AND(K' . $row . '>22700000,K' . $row . '<=26600000),9,IF(AND(K' . $row . '>26600000,K' . $row . '<=28100000),10,IF(AND(K' . $row . '>28100000,K' . $row . '<=30100000),11,IF(AND(K' . $row . '>30100000,K' . $row . '<=32600000),12,IF(AND(K' . $row . '>32600000,K' . $row . '<=35400000),13,IF(AND(K' . $row . '>35400000,K' . $row . '<=38900000),14,IF(AND(K' . $row . '>38900000,K' . $row . '<=43000000),15,IF(AND(K' . $row . '>43000000,K' . $row . '<=47400000),16,IF(AND(K' . $row . '>47400000,K' . $row . '<=51200000),17,IF(AND(K' . $row . '>51200000,K' . $row . '<=55800000),18,IF(AND(K' . $row . '>55800000,K' . $row . '<=60400000),19,IF(AND(K' . $row . '>60400000,K' . $row . '<=66700000),20,IF(AND(K' . $row . '>66700000,K' . $row . '<=74500000),21,IF(AND(K' . $row . '>74500000,K' . $row . '<=83200000),22,IF(AND(K' . $row . '>83200000,K' . $row . '<=95600000),23,IF(AND(K' . $row . '>95600000,K' . $row . '<=110000000),24,IF(AND(K' . $row . '>110000000,K' . $row . '<=134000000),25,IF(AND(K' . $row . '>134000000,K' . $row . '<=169000000),26,IF(AND(K' . $row . '>169000000,K' . $row . '<=221000000),27,IF(AND(K' . $row . '>221000000,K' . $row . '<=390000000),28,IF(AND(K' . $row . '>390000000,K' . $row . '<=463000000),29,IF(AND(K' . $row . '>463000000,K' . $row . '<=561000000),30,IF(AND(K' . $row . '>561000000,K' . $row . '<=709000000),31,IF(AND(K' . $row . '>709000000,K' . $row . '<=965000000),32,IF(AND(K' . $row . '>965000000,K' . $row . '<=1419000000),33,34))))))))))))))))))))))))))))))))))))))))');
$row++;
}
// Tambahkan format style tabel dengan warna biru medium
$blue_medium = '4472C4';
$this->setCellBackgroundColor($sheet, 'B4:N4', $blue_medium);
$sheet->getStyle('B4:N4')->getFont()->setBold(true);
$sheet->getStyle('B4:N4')->getFont()->setColor(new PHPExcel_Style_Color(PHPExcel_Style_Color::COLOR_WHITE));
// Tambahkan border untuk seluruh data
$lastRow = $row - 1; // Baris terakhir data
$sheet->getStyle('B5:N' . $lastRow)->applyFromArray(array(
'borders' => array(
'allborders' => array(
'style' => PHPExcel_Style_Border::BORDER_THIN,
'color' => array('rgb' => '8EA9DB')
)
)
));
// Tambahkan zebra striping (selang-seling warna baris)
$light_blue = 'D9E1F2'; // Warna biru muda
for ($i = 5; $i <= $lastRow; $i += 2) {
$this->setCellBackgroundColor($sheet, 'B' . $i . ':N' . $i, $light_blue);
}
// Tambahkan format style tabel dengan warna biru medium
$blue_medium = '4472C4'; // Warna biru medium
$this->setCellBackgroundColor($sheet, 'B4:N4', $blue_medium);
$sheet->getStyle('B4:N4')->getFont()->setBold(true);
$sheet->getStyle('B4:N4')->getFont()->setColor(new PHPExcel_Style_Color(PHPExcel_Style_Color::COLOR_WHITE));
// Set alignment
$sheet->getStyle('A1:B1')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
$sheet->getStyle('B5:C' . $lastRow)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
$sheet->getStyle('D5:J' . $lastRow)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
$sheet->getStyle('K5:L' . $lastRow)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
$sheet->getStyle('M5:M' . $lastRow)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
$sheet->getStyle('N5:R' . $lastRow)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
}
/**
* worksheet for tab coretax BPMP
*
* @param object $excel => library PHPExcel
* @return void
*/
private function coretax_bpmp($excel)
{
$excel->createSheet();
$excel->setActiveSheetIndex(1);
$sheet = $excel->getActiveSheet();
// setup sheet
$sheet->getDefaultStyle()->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
$sheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
$sheet->setTitle("BPMP");
// set width
$sheet->getColumnDimension('A')->setAutoSize(true);
$sheet->getColumnDimension('B')->setAutoSize(true);
$sheet->getColumnDimension('C')->setAutoSize(true);
$sheet->getColumnDimension('D')->setAutoSize(true);
$sheet->getColumnDimension('E')->setAutoSize(true);
$sheet->getColumnDimension('F')->setAutoSize(true);
// set styles
$sheet->getStyle('A1:F1')->getFont()->setBold(true);
$sheet->getStyle('A2:C15')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
$sheet->getStyle('D2:D15')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
$sheet->getStyle('E2:F15')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
// set value header
$sheet->setCellValue('A1', 'Kolom pada excel');
$sheet->setCellValue('B1', 'Kolom pada xml');
$sheet->setCellValue('C1', 'Petunjuk pengisian');
$sheet->setCellValue('D1', 'Contoh pengisian');
$sheet->setCellValue('E1', 'Validasi');
$sheet->setCellValue('F1', 'Keterangan tambahan');
// set value with data
$sheet->setCellValue('A2', 'NPWP Pemotong');
$sheet->setCellValue('A3', 'Masa Pajak');
$sheet->setCellValue('A4', 'Tahun Pajak');
$sheet->setCellValue('A5', 'Status Pegawai');
$sheet->setCellValue('A6', 'NPWP/NIK/TIN');
$sheet->setCellValue('A7', 'Nomor Passport');
$sheet->setCellValue('A8', 'Status');
$sheet->setCellValue('A9', 'Posisi');
$sheet->setCellValue('A10', 'Sertifikat/Fasilitas');
$sheet->setCellValue('A11', 'Kode Objek Pajak');
$sheet->setCellValue('A12', 'Penghasilan Kotor');
$sheet->setCellValue('A13', 'Tarif');
$sheet->setCellValue('A14', 'ID TKU');
$sheet->setCellValue('A15', 'Tgl Pemotongan');
$sheet->setCellValue('B2', 'TIN');
$sheet->setCellValue('B3', 'TaxPeriodMonth');
$sheet->setCellValue('B4', 'TaxPeriodYear');
$sheet->setCellValue('B5', 'CounterpartOpt');
$sheet->setCellValue('B6', 'CounterpartTin');
$sheet->setCellValue('B7', 'CounterpartPassport');
$sheet->setCellValue('B8', 'StatusTaxExemption');
$sheet->setCellValue('B9', 'Position');
$sheet->setCellValue('B10', 'TaxCertificate');
$sheet->setCellValue('B11', 'TaxObjectCode');
$sheet->setCellValue('B12', 'Gross');
$sheet->setCellValue('B13', 'Rate');
$sheet->setCellValue('B14', 'IDPlaceOfBusinessActivity');
$sheet->setCellValue('B15', 'WithholdingDate');
$sheet->setCellValue('C2', 'Diisi dengan NPWP pemotong');
$sheet->setCellValue('C3', 'Diisi dengan masa pajak pemotongan');
$sheet->setCellValue('C4', 'Diisi dengan masa pajak pemotongan');
$sheet->setCellValue('C5', 'Diisi dengan status kewarganegaraan pegawai (karyawan asing atau tidak)');
$sheet->setCellValue('C6', 'Diisi dengan NIK pegawai tetap');
$sheet->setCellValue('C7', 'Diisi dengan nomor paspor pegawai tetap (jika karyawan asing)');
$sheet->setCellValue('C8', 'Diisi dengan status PTKP penerima penghasilan');
$sheet->setCellValue('C9', 'Diisi dengan posisi pegawai tetap');
$sheet->setCellValue('C10', 'Diisi dengan fasilitas perpajakan yang digunakan');
$sheet->setCellValue('C11', 'Diisi dengan kode objek pajak');
$sheet->setCellValue('C12', 'Diisi dengan penghasilan bruto');
$sheet->setCellValue('C13', 'Diisi dengan tarif yang sesuai dengan referensi kode objek pajak');
$sheet->setCellValue('C14', 'Diisi dengan ID TKU pemotong');
$sheet->setCellValue('C15', 'Diisi dengan tanggal pemotongan');
$sheet->setCellValueExplicit('D2', '1234567890123456');
$sheet->setCellValueExplicit('D3', '1');
$sheet->setCellValueExplicit('D4', '2025');
$sheet->setCellValueExplicit('D5', 'Resident');
$sheet->setCellValueExplicit('D6', '0987654321098765');
$sheet->setCellValueExplicit('D7', '');
$sheet->setCellValueExplicit('D8', 'TK/3');
$sheet->setCellValueExplicit('D9', 'Staff');
$sheet->setCellValueExplicit('D10', 'N/A');
$sheet->setCellValueExplicit('D11', '21-100-01');
$sheet->setCellValueExplicit('D12', '10000000');
$sheet->setCellValueExplicit('D13', '2');
$sheet->setCellValueExplicit('D14', '1234567890123456789012');
$sheet->setCellValueExplicit('D15', '16/01/2025');
$sheet->setCellValue('E2', 'NPWP Pemotong harus sama dengan NPWP login');
$sheet->setCellValue('E3', '');
$sheet->setCellValue('E4', '');
$sheet->setCellValue('E5', '');
$sheet->setCellValue('E6', 'NPWP/NIK wajib valid');
$sheet->setCellValue('E7', '');
$sheet->setCellValue('E8', '');
$sheet->setCellValue('E9', '');
$sheet->setCellValue('E10', '');
$sheet->setCellValue('E11', '');
$sheet->setCellValue('E12', '');
$sheet->setCellValue('E13', 'Jika menggunakan fasilitas perpajakan lainnya, tarif dapat diisi tidak sesuai dengan referensi kode objek pajak');
$sheet->setCellValue('E14', '');
$sheet->setCellValue('E15', 'Tanggal pemotongan tidak boleh lebih rendah dari masa/tahun pajak bukti potong');
$sheet->setCellValue('F2', '');
$sheet->setCellValue('F3', '');
$sheet->setCellValue('F4', '');
$sheet->setCellValue('F5', '');
$sheet->setCellValue('F6', '');
$sheet->setCellValue('F7', '');
$sheet->setCellValue('F8', '');
$sheet->setCellValue('F9', '');
$sheet->setCellValue('F10', '');
$sheet->setCellValue('F11', '');
$sheet->setCellValue('F12', '');
$sheet->setCellValue('F13', 'Jika tarif menggunakan koma, di export ke xml, excel secara otomatis akan merubah menjadi format desimal menggunakan titik');
$sheet->setCellValue('F14', '');
$sheet->setCellValue('F15', 'Saat di export ke xml, excel secara otomatis akan merubah menjadi format YYYY-MM-DD');
}
/**
* worksheet for tab coretax REF
*
* @param object $excel => library PHPExcel
* @return void
*/
private function coretax_ref($excel)
{
$excel->createSheet();
$excel->setActiveSheetIndex(2);
$sheet = $excel->getActiveSheet();
// setup sheet
$sheet->getDefaultStyle()->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
$sheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
$sheet->setTitle("REF");
// set width
$sheet->getColumnDimension('A')->setWidth(9);
$sheet->getColumnDimension('B')->setWidth(9);
$sheet->getColumnDimension('C')->setWidth(9);
$sheet->getColumnDimension('D')->setWidth(9);
$sheet->getColumnDimension('E')->setWidth(9);
$sheet->getColumnDimension('F')->setAutoSize(true);
$sheet->getColumnDimension('G')->setAutoSize(true);
// set styles
$sheet->getStyle('A1:G13')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
// set value header
$sheet->setCellValue('F1', 'Kode Objek Pajak');
$sheet->setCellValue('G1', 'Nama Objek Pajak');
// set value with data
$sheet->setCellValue('B2', 'Resident');
$sheet->setCellValue('B3', 'Foreign');
$sheet->setCellValue('C2', 'TK/0');
$sheet->setCellValue('C3', 'TK/1');
$sheet->setCellValue('C4', 'TK/2');
$sheet->setCellValue('C5', 'TK/3');
$sheet->setCellValue('C6', 'K/0');
$sheet->setCellValue('C7', 'K/1');
$sheet->setCellValue('C8', 'K/2');
$sheet->setCellValue('C9', 'K/3');
$sheet->setCellValue('C10', 'HB/0');
$sheet->setCellValue('C11', 'HB/1');
$sheet->setCellValue('C12', 'HB/2');
$sheet->setCellValue('C13', 'HB/3');
$sheet->setCellValue('D2', 'N/A');
$sheet->setCellValue('D3', 'DTP');
$sheet->setCellValue('D4', 'ETC');
$sheet->setCellValueExplicit('F2', '21-100-01');
$sheet->setCellValueExplicit('F3', '21-100-02');
$sheet->setCellValueExplicit('F4', '21-100-32');
$sheet->setCellValue('G2', 'Penghasilan yang diterima oleh Pegawai Tetap termasuk Pegawai Negeri Sipil, Anggota Tentara Nasional Indonesia, Anggota Polisi Republik Indonesia atau Pejabat Negara');
$sheet->setCellValue('G3', 'Penghasilan yang diterima oleh Penerima Pensiun secara teratur');
$sheet->setCellValue('G4', 'Penghasilan yang diterima oleh Pegawai tetap yang menerima fasilitas di daerah tertentu');
}
/**
* set cells background color
*
* @param object $sheet => active sheet
* @param string $cell => ex: A1 or A1:H1
* @param string $color => ex: FF0000
* @return void
*/
private function setCellBackgroundColor($sheet, $cell, $color)
{
$sheet->getStyle($cell)
->getFill()
->setFillType(PHPExcel_Style_Fill::FILL_SOLID)
->getStartColor()
->setRGB($color);
}
private function periode($bulan)
{
return date_format(date_create("01-" . $bulan), "Y-m");
}
}
<?php
defined('BASEPATH') or exit('No direct script access allowed');
class Download_pph_uu24_djp extends MY_Controller
{
public function __construct()
{
parent::__construct();
$this->load->model('payroll/laporan_pph/Laporan_pph_uu24_m', 'model');
$this->load->helper(['payroll', 'download']);
$this->load->library(array('PHPExcel/Excel', 'PHPExcel/PHPExcel'));
}
public function download_excel($periode = "00-0000", $cabang = "all", $departemen = "all", $karyawan = "all")
{
$periode = $this->periode($periode);
list($tahun, $bulan) = explode('-', $periode);
// FILENAME
if ($karyawan != "all") {
$nama_karyawan = $this->model->nama_karyawan($karyawan);
$filename = "1721 I Bulan DTP-UU HPP " . $bulan . " " . $nama_karyawan;
} else {
if ($departemen != "all") {
$nama_cab = $this->model->nama_cabang($cabang);
$nama_dep = $this->model->nama_departemen($departemen);
$nama = "1721 I Bulan DTP-UU HPP " . $bulan . " Cabang " . $nama_cab . " Departemen " . str_replace("/", "-", $nama_dep);
$filename = $nama;
} else {
if ($cabang != "all") {
$nama = $this->model->nama_cabang($cabang);
$filename = "1721 I Bulan DTP-UU HPP " . $bulan . " Cabang " . $nama . " Semua Departemen";
} else {
$nama = "1721 I Bulan DTP-UU HPP " . $bulan . " Semua Cabang";
$filename = $nama;
}
}
}
// data
$data = $this->model->get_datatables($periode, $cabang, $departemen, $karyawan);
// Load plugin PHPExcel nya
include APPPATH . 'third_party/PHPExcel/PHPExcel.php';
// Panggil class PHPExcel nya
$excel = new PHPExcel();
// Settingan awal fil excel
$excel->getProperties()
->setCreator('Absenku')
->setLastModifiedBy('Absenku')
->setTitle("Laporan PPH Absenku")
->setSubject("Laporan PPH")
->setDescription("Laporan PPH Absenku Profesioanal");
// worksheet for tab Rekap
$this->tabRekap($excel, $tahun, $bulan, count($data));
// Create a new worksheet for tab 21
$this->tab21($excel, $data);
// Create a new worksheet for tab 26
$this->tab26($excel);
// Create a new worksheet for tab Ref Daftar Objek Pajak
$this->tabObjekPajak($excel);
// Create a new worksheet for tab Ref Daftar Kode Negara
$this->tabKodeNegara($excel);
// Create a new worksheet for tab Ref Daftar PTKP
$this->tabPtkp($excel);
$excel->setActiveSheetIndex(0);
// Proses file excel
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment; filename=' . removeSpecialChar($filename) . '.xlsx'); // Set nama file excel nya
header('Cache-Control: max-age=0');
$write = PHPExcel_IOFactory::createWriter($excel, 'Excel2007');
$write->save('php://output');
}
/**
* worksheet for tab Rekap
*
* @param object $excel => library PHPExcel
* @param string $tahun => YYYY
* @param string $bulan => MM
* @param int $count_data => jumlah data pph21
* @return void
*/
private function tabRekap($excel, $tahun, $bulan, $count_data)
{
$excel->setActiveSheetIndex(0);
$sheet = $excel->getActiveSheet();
// setup sheet
$sheet->getDefaultStyle()->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$sheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
$sheet->setTitle("Rekap");
// set width
$sheet->getColumnDimension('A')->setWidth(8);
$sheet->getColumnDimension('B')->setWidth(15);
$sheet->getColumnDimension('C')->setWidth(8);
$sheet->getColumnDimension('D')->setWidth(15);
$sheet->getColumnDimension('E')->setWidth(15);
$sheet->getColumnDimension('F')->setWidth(8);
$sheet->getColumnDimension('G')->setWidth(15);
$sheet->getColumnDimension('H')->setWidth(8);
// merge cells
$sheet->mergeCells('B2:C2');
$sheet->mergeCells('E2:F2');
$sheet->mergeCells('B3:F3');
$sheet->mergeCells('B4:F4');
// set borders
$sheet->getStyle('B2:G4')->applyFromArray(array('borders' => array('allborders' => array('style' => PHPExcel_Style_Border::BORDER_MEDIUM))));
// set font size
$sheet->getStyle('B2')->getFont()->setSize(16);
$sheet->getStyle('E2')->getFont()->setSize(16);
$sheet->getStyle('D2')->getFont()->setSize(20);
$sheet->getStyle('G2:G4')->getFont()->setSize(20);
$sheet->getStyle('B3:B4')->getFont()->setSize(13);
// def color
$dark_grey = '808080';
$grey = 'dddedd';
// set styles
$this->setCellBackgroundColor($sheet, 'A1:H1', $dark_grey);
$this->setCellBackgroundColor($sheet, 'A5:H5', $dark_grey);
$this->setCellBackgroundColor($sheet, 'A2:A4', $dark_grey);
$this->setCellBackgroundColor($sheet, 'H2:H4', $dark_grey);
$this->setCellBackgroundColor($sheet, 'B2:B4', $grey);
$this->setCellBackgroundColor($sheet, 'E2', $grey);
// set value
$sheet->setCellValue('B2', 'Tahun Pajak');
$sheet->setCellValue('B3', 'Jumlah Bukti Potong PPh Pasal 21');
$sheet->setCellValue('B4', 'Jumlah Bukti Potong PPh Pasal 26');
$sheet->setCellValue('D2', $tahun);
$sheet->setCellValue('E2', 'Masa Pajak');
$sheet->setCellValue('G2', (int)$bulan);
$sheet->setCellValue('G3', $count_data);
$sheet->setCellValue('G4', '0');
}
/**
* worksheet for tab 21
*
* @param object $excel => library PHPExcel
* @param object $data => data pph21
* @return void
*/
private function tab21($excel, $data)
{
$excel->createSheet();
$excel->setActiveSheetIndex(1);
$sheet = $excel->getActiveSheet();
// setup sheet
$sheet->getDefaultStyle()->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
$sheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
$sheet->setTitle("21");
// set width
$sheet->getColumnDimension('A')->setWidth(5);
$sheet->getColumnDimension('B')->setWidth(15);
$sheet->getColumnDimension('C')->setWidth(14);
$sheet->getColumnDimension('D')->setWidth(20);
$sheet->getColumnDimension('E')->setWidth(20);
$sheet->getColumnDimension('F')->setWidth(20);
$sheet->getColumnDimension('G')->setWidth(20);
$sheet->getColumnDimension('H')->setWidth(16);
$sheet->getColumnDimension('I')->setWidth(20);
$sheet->getColumnDimension('J')->setWidth(23);
$sheet->getColumnDimension('K')->setWidth(20);
$sheet->getColumnDimension('L')->setWidth(17);
$sheet->getColumnDimension('M')->setWidth(17);
$sheet->getColumnDimension('N')->setWidth(17);
$sheet->getColumnDimension('O')->setWidth(17);
$sheet->getColumnDimension('P')->setWidth(25);
$sheet->getColumnDimension('Q')->setWidth(35);
// set height
$sheet->getRowDimension(2)->setRowHeight(45.75);
// set borders
$sheet->getStyle('A2:Q2')->applyFromArray(array(
'borders' => array(
'top' => array('style' => PHPExcel_Style_Border::BORDER_MEDIUM),
'bottom' => array('style' => PHPExcel_Style_Border::BORDER_MEDIUM),
)
));
// def color
$green = '06b257';
$satin = 'eeece1';
$blue = '4f81bd';
// set styles
$this->setCellBackgroundColor($sheet, 'A1:Q1', $green);
$this->setCellBackgroundColor($sheet, 'A2:P2', $satin);
$this->setCellBackgroundColor($sheet, 'Q2', $blue);
$sheet->getStyle('A2:Q2')->getFont()->setBold(true);
$sheet->getStyle('A2:Q2')->getAlignment()->setWrapText(true);
$sheet->getStyle('O')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
$sheet->getStyle('A2:Q2')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$sheet->getStyle('A2:Q2')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_TOP);
$sheet->getStyle('A')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
// set value header
$sheet->setCellValue('A2', 'No');
$sheet->setCellValue('B2', 'Tgl Pemotongan (dd/MM/yyyy)');
$sheet->setCellValue('C2', 'Penerima Penghasilan? (NPWP/NIK)');
$sheet->setCellValue('D2', 'NPWP (tanpa format/tanda baca)');
$sheet->setCellValue('E2', 'NIK (tanpa format/tanda baca)');
$sheet->setCellValue('F2', 'Nama Penerima Penghasilan Sesuai NIK');
$sheet->setCellValue('G2', 'Alamat Penerima Penghasilan Sesuai NIK');
$sheet->setCellValue('H2', 'Kode Objek Pajak');
$sheet->setCellValue('I2', 'Penandatangan Menggunakan? (NPWP/NIK)');
$sheet->setCellValue('J2', 'NPWP Penandatangan (tanpa format/tanda baca)');
$sheet->setCellValue('K2', 'NIK Penandatangan (tanpa format/tanda baca)');
$sheet->setCellValue('L2', 'Kode PTKP');
$sheet->setCellValue('M2', 'Pegawai Harian? (Ya/Tidak)');
$sheet->setCellValue('N2', 'Menggunakan Gross Up? (Ya/Tidak)');
$sheet->setCellValue('O2', 'Penghasilan Bruto');
$sheet->setCellValue('P2', 'Mendapatkan Fasilitas ? (N/SKB/DTP)');
$sheet->setCellValue('Q2', 'Nomor SKB/Nomor DTP');
// set value with data
$no = 1;
$row = 3;
foreach ($data as $value) {
$sheet->setCellValue('A' . $row, $no);
$sheet->setCellValue('B' . $row, date('d/m/Y', strtotime($value->tgl_pemotongan)));
$sheet->setCellValue('C' . $row, $value->penerima_penghasilan);
$sheet->setCellValueExplicit('D' . $row, $value->npwp);
$sheet->setCellValueExplicit('E' . $row, $value->no_ktp);
$sheet->setCellValue('F' . $row, $value->nm_karyawan);
$sheet->setCellValue('G' . $row, $value->alamat_ktp);
$sheet->setCellValue('H' . $row, $value->kd_objek_pajak);
$sheet->setCellValue('I' . $row, $value->penandatangan_jenis);
$sheet->setCellValue('J' . $row, $value->penandatangan_npwp);
$sheet->setCellValue('K' . $row, $value->penandatangan_ktp);
$sheet->setCellValue('L' . $row, $value->kd_ptkp);
$sheet->setCellValue('M' . $row, $value->pegawai_harian);
$sheet->setCellValue('N' . $row, $value->gross_up);
$sheet->setCellValueExplicit('O' . $row, $value->gaji_bruto);
$sheet->setCellValue('P' . $row, $value->fasilitas);
$sheet->setCellValueExplicit('Q' . $row, $value->no_skb_dtp);
$no++;
$row++;
}
}
/**
* worksheet for tab 26
*
* @param object $excel => library PHPExcel
* @return void
*/
private function tab26($excel)
{
$excel->createSheet();
$excel->setActiveSheetIndex(2);
$sheet = $excel->getActiveSheet();
// setup sheet
$sheet->getDefaultStyle()->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
$sheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
$sheet->setTitle("26");
// set width
$sheet->getColumnDimension('A')->setWidth(5);
$sheet->getColumnDimension('B')->setWidth(15);
$sheet->getColumnDimension('C')->setWidth(14);
$sheet->getColumnDimension('D')->setWidth(20);
$sheet->getColumnDimension('E')->setWidth(20);
$sheet->getColumnDimension('F')->setWidth(20);
$sheet->getColumnDimension('G')->setWidth(20);
$sheet->getColumnDimension('H')->setWidth(16);
$sheet->getColumnDimension('I')->setWidth(20);
$sheet->getColumnDimension('J')->setWidth(23);
$sheet->getColumnDimension('K')->setWidth(20);
$sheet->getColumnDimension('L')->setWidth(17);
$sheet->getColumnDimension('M')->setWidth(17);
$sheet->getColumnDimension('N')->setWidth(17);
$sheet->getColumnDimension('O')->setWidth(17);
$sheet->getColumnDimension('P')->setWidth(25);
$sheet->getColumnDimension('Q')->setWidth(35);
// set height
$sheet->getRowDimension(2)->setRowHeight(45.75);
// set borders
$sheet->getStyle('A2:Q2')->applyFromArray(array(
'borders' => array(
'top' => array('style' => PHPExcel_Style_Border::BORDER_MEDIUM),
'bottom' => array('style' => PHPExcel_Style_Border::BORDER_MEDIUM),
)
));
// def color
$green = '06b257';
$satin = 'eeece1';
$blue = '4f81bd';
// set styles
$this->setCellBackgroundColor($sheet, 'A1:Q1', $green);
$this->setCellBackgroundColor($sheet, 'A2:P2', $satin);
$this->setCellBackgroundColor($sheet, 'Q2', $blue);
$sheet->getStyle('A2:Q2')->getFont()->setBold(true);
$sheet->getStyle('A2:Q2')->getAlignment()->setWrapText(true);
$sheet->getStyle('O')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
$sheet->getStyle('A2:Q2')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$sheet->getStyle('A2:Q2')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_TOP);
$sheet->getStyle('A')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
// set value header
$sheet->setCellValue('A2', 'No');
$sheet->setCellValue('B2', 'Tgl Pemotongan (dd/MM/yyyy)');
$sheet->setCellValue('C2', 'Penerima Penghasilan? (NPWP/NIK)');
$sheet->setCellValue('D2', 'NPWP (tanpa format/tanda baca)');
$sheet->setCellValue('E2', 'NIK (tanpa format/tanda baca)');
$sheet->setCellValue('F2', 'Nama Penerima Penghasilan Sesuai NIK');
$sheet->setCellValue('G2', 'Alamat Penerima Penghasilan Sesuai NIK');
$sheet->setCellValue('H2', 'Kode Objek Pajak');
$sheet->setCellValue('I2', 'Penandatangan Menggunakan? (NPWP/NIK)');
$sheet->setCellValue('J2', 'NPWP Penandatangan (tanpa format/tanda baca)');
$sheet->setCellValue('K2', 'NIK Penandatangan (tanpa format/tanda baca)');
$sheet->setCellValue('L2', 'Kode PTKP');
$sheet->setCellValue('M2', 'Pegawai Harian? (Ya/Tidak)');
$sheet->setCellValue('N2', 'Menggunakan Gross Up? (Ya/Tidak)');
$sheet->setCellValue('O2', 'Penghasilan Bruto');
$sheet->setCellValue('P2', 'Mendapatkan Fasilitas ? (N/SKB/DTP)');
$sheet->setCellValue('Q2', 'Nomor SKB/Nomor DTP');
}
/**
* worksheet for tab Ref Daftar Objek Pajak
*
* @param object $excel => library PHPExcel
* @return void
*/
private function tabObjekPajak($excel)
{
$excel->createSheet();
$excel->setActiveSheetIndex(3);
$sheet = $excel->getActiveSheet();
// setup sheet
$sheet->getDefaultStyle()->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
$sheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
$sheet->setTitle("Ref Daftar Objek Pajak")->getTabColor()->setRGB('00B050');
// set width
$sheet->getColumnDimension('A')->setWidth(2);
$sheet->getColumnDimension('B')->setWidth(16);
$sheet->getColumnDimension('C')->setWidth(130);
$sheet->getColumnDimension('D')->setWidth(10);
$sheet->getColumnDimension('E')->setWidth(10);
$sheet->getColumnDimension('F')->setWidth(14);
// set borders
$sheet->getStyle('B2:F16')->applyFromArray(array('borders' => array('allborders' => array('style' => PHPExcel_Style_Border::BORDER_THIN))));
// def color
$grey = 'dcdcdb';
// set styles
$this->setCellBackgroundColor($sheet, 'B2:F2', $grey);
$sheet->getStyle('A2:F2')->getFont()->setBold(true);
$sheet->getStyle('D3:E16')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
// set value header
$sheet->setCellValue('B2', 'Kode Objek Pajak');
$sheet->setCellValue('C2', 'Nama Objek Pajak');
$sheet->setCellValue('D2', 'KAP');
$sheet->setCellValue('E2', 'KJS');
$sheet->setCellValue('F2', 'KETERANGAN');
// set value with data
$data = $this->db->select('kode, nama, kap, kjs, keterangan')
->get('payroll_pph21_objek_pajak')
->result();
$row = 3;
foreach ($data as $value) {
$sheet->setCellValue('B' . $row, $value->kode);
$sheet->setCellValue('C' . $row, $value->nama);
$sheet->setCellValue('D' . $row, $value->kap);
$sheet->setCellValue('E' . $row, $value->kjs);
$sheet->setCellValue('F' . $row, $value->keterangan);
$row++;
}
}
/**
* worksheet for tab Ref Daftar Kode Negara
*
* @param object $excel => library PHPExcel
* @return void
*/
private function tabKodeNegara($excel)
{
$excel->createSheet();
$excel->setActiveSheetIndex(4);
$sheet = $excel->getActiveSheet();
// setup sheet
$sheet->getDefaultStyle()->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
$sheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
$sheet->setTitle("Ref Daftar Kode Negara")->getTabColor()->setRGB('00B050');
// set width
$sheet->getColumnDimension('A')->setWidth(2);
$sheet->getColumnDimension('B')->setWidth(9);
$sheet->getColumnDimension('C')->setWidth(35);
// set borders
$sheet->getStyle('B2:C250')->applyFromArray(array('borders' => array('allborders' => array('style' => PHPExcel_Style_Border::BORDER_THIN))));
// def color
$grey = 'dcdcdb';
// set styles
$this->setCellBackgroundColor($sheet, 'B2:C2', $grey);
$sheet->getStyle('B2:C2')->getFont()->setBold(true);
// set value header
$sheet->setCellValue('B2', 'KODE');
$sheet->setCellValue('C2', 'Nama Negara');
// set value with data
$data = $this->db->select('kode, nm_negara')
->order_by('kode', 'asc')
->get('payroll_pph21_kd_negara')
->result();
$row = 3;
foreach ($data as $value) {
$sheet->setCellValue('B' . $row, $value->kode);
$sheet->setCellValue('C' . $row, $value->nm_negara);
$row++;
}
}
/**
* worksheet for tab Ref Daftar PTKP
*
* @param object $excel => library PHPExcel
* @return void
*/
private function tabPtkp($excel)
{
$excel->createSheet();
$excel->setActiveSheetIndex(5);
$sheet = $excel->getActiveSheet();
// setup sheet
$sheet->getDefaultStyle()->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
$sheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
$sheet->setTitle("Ref Daftar PTKP")->getTabColor()->setRGB('00B050');
// set width
$sheet->getColumnDimension('A')->setWidth(2);
$sheet->getColumnDimension('B')->setWidth(15);
$sheet->getColumnDimension('C')->setWidth(15);
// set borders
$sheet->getStyle('B2:C10')->applyFromArray(array('borders' => array('allborders' => array('style' => PHPExcel_Style_Border::BORDER_THIN))));
// def color
$grey = 'dcdcdb';
// set styles
$this->setCellBackgroundColor($sheet, 'B2:C2', $grey);
$sheet->getStyle('B2:C2')->getFont()->setBold(true);
$sheet->getStyle('C3:C10')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
// set value header
$sheet->setCellValue('B2', 'PTKP');
$sheet->setCellValue('C2', 'Nominal');
// set value with data
$data = $this->db->select('kode, nominal')
->order_by('no_urut', 'asc')
->limit(8)
->get('ptkp')
->result();
$row = 3;
foreach ($data as $value) {
$sheet->setCellValue('B' . $row, $value->kode);
$sheet->setCellValue('C' . $row, $value->nominal);
$row++;
}
}
/**
* set cells background color
*
* @param object $sheet => active sheet
* @param string $cell => ex: A1 or A1:H1
* @param string $color => ex: FF0000
* @return void
*/
private function setCellBackgroundColor($sheet, $cell, $color)
{
$sheet->getStyle($cell)
->getFill()
->setFillType(PHPExcel_Style_Fill::FILL_SOLID)
->getStartColor()
->setRGB($color);
}
private function periode($bulan)
{
return date_format(date_create("01-" . $bulan), "Y-m");
}
}
...@@ -38,44 +38,42 @@ class Laporan_pph_uu24 extends MY_Controller ...@@ -38,44 +38,42 @@ class Laporan_pph_uu24 extends MY_Controller
* ex. -1000 menjadi (1000) * ex. -1000 menjadi (1000)
* *
* @param string|int $num * @param string|int $num
* @return void * @return string
*/ */
private function payroll_minus($num) private function payroll_minus($num)
{ {
if (substr($num, 0, 1) == '-') { if (substr($num, 0, 1) == '-') {
$num = substr($num, 1); $num = substr($num, 1);
return '(' . number_format($num, 0, ',', ',') . ')'; return '(' . number_format($num, 0, ',', '.') . ')';
} }
return number_format($num, 0, ',', ','); return number_format($num, 0, ',', '.');
} }
public function list_data($bulan = "00-0000", $cabang = "all", $departemen = "all", $karyawan = "all") public function list_data($bulan = "00-0000", $cabang = "all", $departemen = "all", $karyawan = "all")
{ {
$bulan = $this->periode($bulan); $bulan = $this->periode($bulan);
$list = $this->model->get_datatables($bulan, $cabang, $departemen, $karyawan); list($y, $m) = explode('-', $bulan);
$data = array(); $list = $this->model->get_datatables($bulan, $cabang, $departemen, $karyawan);
$no = $_GET['start']; $data = array();
$no = $_GET['start'];
foreach ($list as $field) { foreach ($list as $field) {
$no++; $no++;
$row = array(); $row = array();
$row[] = $no; $row[] = $no;
$row[] = date('d-m-Y', strtotime($field->tgl_pemotongan)); $row[] = (int)$m;
$row[] = $field->penerima_penghasilan; $row[] = $y;
$row[] = $field->npwp; $row[] = $field->status_karyawan;
$row[] = $field->no_ktp;
$row[] = $field->nm_karyawan; $row[] = $field->nm_karyawan;
$row[] = $field->alamat_ktp; $row[] = $field->no_ktp;
$row[] = $field->kd_objek_pajak; $row[] = '';
$row[] = $field->penandatangan_jenis;
$row[] = $field->penandatangan_npwp;
$row[] = $field->penandatangan_ktp;
$row[] = $field->kd_ptkp; $row[] = $field->kd_ptkp;
$row[] = $field->pegawai_harian; $row[] = $field->nm_jabatan;
$row[] = $field->gross_up; $row[] = $field->fasilitas == 'N' ? 'N/A' : $field->fasilitas;
$row[] = $field->kd_objek_pajak;
$row[] = $this->payroll_minus($field->gaji_bruto); $row[] = $this->payroll_minus($field->gaji_bruto);
$row[] = $field->fasilitas; $row[] = $field->ter_persen;
$row[] = $field->no_skb_dtp; $row[] = $field->id_tku;
$row[] = $this->payroll_minus($field->pph21); $row[] = date('d/m/Y', strtotime($field->tgl_pemotongan));
$data[] = $row; $data[] = $row;
} }
...@@ -94,7 +92,7 @@ class Laporan_pph_uu24 extends MY_Controller ...@@ -94,7 +92,7 @@ class Laporan_pph_uu24 extends MY_Controller
public function download_excel($periode = "00-0000", $cabang = "all", $departemen = "all", $karyawan = "all") public function download_excel($periode = "00-0000", $cabang = "all", $departemen = "all", $karyawan = "all")
{ {
$periode = $this->periode($periode); $periode = $this->periode($periode);
list($tahun, $bulan) = explode('-', $periode); list($tahun, $bulan) = explode('-', $periode);
// FILENAME // FILENAME
...@@ -133,16 +131,16 @@ class Laporan_pph_uu24 extends MY_Controller ...@@ -133,16 +131,16 @@ class Laporan_pph_uu24 extends MY_Controller
$column_settings[$i] = ['align' => 'left', 'format' => 'text', 'valign' => 'middle']; $column_settings[$i] = ['align' => 'left', 'format' => 'text', 'valign' => 'middle'];
} }
} }
$param = [ $param = [
'download' => true, 'download' => true,
'cLength' => 17, 'cLength' => 17,
'file_name' => strtoupper(str_replace(" ", "_", $filename) . '_' . $bulan), 'file_name' => strtoupper(str_replace(" ", "_", $filename) . '_' . $bulan),
'paper_size' => 'A4', 'paper_size' => 'A4',
'font-size' => 9, 'font-size' => 9,
// 'pagebreak' => true, // 'pagebreak' => true,
'page_margin' => ['top' => 0, 'right' => 0.75, 'left' => 0.75, 'botom' => 0], 'page_margin' => ['top' => 0, 'right' => 0.75, 'left' => 0.75, 'botom' => 0],
'orientation' => 'potrait', 'orientation' => 'potrait',
'header' => [ 'header' => [
'1' => ['merge' => true, 'align' => 'center', 'weight' => 'bold'], '1' => ['merge' => true, 'align' => 'center', 'weight' => 'bold'],
'2' => ['merge' => true, 'align' => 'center', 'weight' => 'bold'], '2' => ['merge' => true, 'align' => 'center', 'weight' => 'bold'],
'3' => ['merge' => true, 'align' => 'center', 'weight' => 'bold'] '3' => ['merge' => true, 'align' => 'center', 'weight' => 'bold']
...@@ -162,475 +160,6 @@ class Laporan_pph_uu24 extends MY_Controller ...@@ -162,475 +160,6 @@ class Laporan_pph_uu24 extends MY_Controller
$this->excel->generateExcel($sb_view, $param); $this->excel->generateExcel($sb_view, $param);
} }
public function download_excel_djp($periode = "00-0000", $cabang = "all", $departemen = "all", $karyawan = "all")
{
$periode = $this->periode($periode);
list($tahun, $bulan) = explode('-', $periode);
// FILENAME
if ($karyawan != "all") {
$nama_karyawan = $this->laporan_pph->nama_karyawan($karyawan);
$filename = "1721 I Bulan DTP-UU HPP " . $bulan . " " . $nama_karyawan;
} else {
if ($departemen != "all") {
$nama_cab = $this->laporan_pph->nama_cabang($cabang);
$nama_dep = $this->laporan_pph->nama_departemen($departemen);
$nama = "1721 I Bulan DTP-UU HPP " . $bulan . " Cabang " . $nama_cab . " Departemen " . str_replace("/", "-", $nama_dep);
$filename = $nama;
} else {
if ($cabang != "all") {
$nama = $this->laporan_pph->nama_cabang($cabang);
$filename = "1721 I Bulan DTP-UU HPP " . $bulan . " Cabang " . $nama . " Semua Departemen";
} else {
$nama = "1721 I Bulan DTP-UU HPP " . $bulan . " Semua Cabang";
$filename = $nama;
}
}
}
// data
$data = $this->model->get_datatables($periode, $cabang, $departemen, $karyawan);
// Load plugin PHPExcel nya
include APPPATH . 'third_party/PHPExcel/PHPExcel.php';
// Panggil class PHPExcel nya
$excel = new PHPExcel();
// Settingan awal fil excel
$excel->getProperties()
->setCreator('Absenku')
->setLastModifiedBy('Absenku')
->setTitle("Laporan PPH Absenku")
->setSubject("Laporan PPH")
->setDescription("Laporan PPH Absenku Profesioanal");
// worksheet for tab Rekap
$this->tabRekap($excel, $tahun, $bulan, count($data));
// Create a new worksheet for tab 21
$this->tab21($excel, $data);
// Create a new worksheet for tab 26
$this->tab26($excel);
// Create a new worksheet for tab Ref Daftar Objek Pajak
$this->tabObjekPajak($excel);
// Create a new worksheet for tab Ref Daftar Kode Negara
$this->tabKodeNegara($excel);
// Create a new worksheet for tab Ref Daftar PTKP
$this->tabPtkp($excel);
$excel->setActiveSheetIndex(0);
// Proses file excel
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment; filename=' . $filename . '.xlsx'); // Set nama file excel nya
header('Cache-Control: max-age=0');
$write = PHPExcel_IOFactory::createWriter($excel, 'Excel2007');
$write->save('php://output');
}
/**
* worksheet for tab Rekap
*
* @param object $excel => library PHPExcel
* @param string $tahun => YYYY
* @param string $bulan => MM
* @param int $count_data => jumlah data pph21
* @return void
*/
private function tabRekap($excel, $tahun, $bulan, $count_data)
{
$excel->setActiveSheetIndex(0);
$sheet = $excel->getActiveSheet();
// setup sheet
$sheet->getDefaultStyle()->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$sheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
$sheet->setTitle("Rekap");
// set width
$sheet->getColumnDimension('A')->setWidth(8);
$sheet->getColumnDimension('B')->setWidth(15);
$sheet->getColumnDimension('C')->setWidth(8);
$sheet->getColumnDimension('D')->setWidth(15);
$sheet->getColumnDimension('E')->setWidth(15);
$sheet->getColumnDimension('F')->setWidth(8);
$sheet->getColumnDimension('G')->setWidth(15);
$sheet->getColumnDimension('H')->setWidth(8);
// merge cells
$sheet->mergeCells('B2:C2');
$sheet->mergeCells('E2:F2');
$sheet->mergeCells('B3:F3');
$sheet->mergeCells('B4:F4');
// set borders
$sheet->getStyle('B2:G4')->applyFromArray(array('borders' => array('allborders' => array('style' => PHPExcel_Style_Border::BORDER_MEDIUM))));
// set font size
$sheet->getStyle('B2')->getFont()->setSize(16);
$sheet->getStyle('E2')->getFont()->setSize(16);
$sheet->getStyle('D2')->getFont()->setSize(20);
$sheet->getStyle('G2:G4')->getFont()->setSize(20);
$sheet->getStyle('B3:B4')->getFont()->setSize(13);
// def color
$dark_grey = '808080';
$grey = 'dddedd';
// set styles
$this->setCellBackgroundColor($sheet, 'A1:H1', $dark_grey);
$this->setCellBackgroundColor($sheet, 'A5:H5', $dark_grey);
$this->setCellBackgroundColor($sheet, 'A2:A4', $dark_grey);
$this->setCellBackgroundColor($sheet, 'H2:H4', $dark_grey);
$this->setCellBackgroundColor($sheet, 'B2:B4', $grey);
$this->setCellBackgroundColor($sheet, 'E2', $grey);
// set value
$sheet->setCellValue('B2', 'Tahun Pajak');
$sheet->setCellValue('B3', 'Jumlah Bukti Potong PPh Pasal 21');
$sheet->setCellValue('B4', 'Jumlah Bukti Potong PPh Pasal 26');
$sheet->setCellValue('D2', $tahun);
$sheet->setCellValue('E2', 'Masa Pajak');
$sheet->setCellValue('G2', (int)$bulan);
$sheet->setCellValue('G3', $count_data);
$sheet->setCellValue('G4', '0');
}
/**
* worksheet for tab 21
*
* @param object $excel => library PHPExcel
* @param object $data => data pph21
* @return void
*/
private function tab21($excel, $data)
{
$excel->createSheet();
$excel->setActiveSheetIndex(1);
$sheet = $excel->getActiveSheet();
// setup sheet
$sheet->getDefaultStyle()->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
$sheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
$sheet->setTitle("21");
// set width
$sheet->getColumnDimension('A')->setWidth(5);
$sheet->getColumnDimension('B')->setWidth(15);
$sheet->getColumnDimension('C')->setWidth(14);
$sheet->getColumnDimension('D')->setWidth(20);
$sheet->getColumnDimension('E')->setWidth(20);
$sheet->getColumnDimension('F')->setWidth(20);
$sheet->getColumnDimension('G')->setWidth(20);
$sheet->getColumnDimension('H')->setWidth(16);
$sheet->getColumnDimension('I')->setWidth(20);
$sheet->getColumnDimension('J')->setWidth(23);
$sheet->getColumnDimension('K')->setWidth(20);
$sheet->getColumnDimension('L')->setWidth(17);
$sheet->getColumnDimension('M')->setWidth(17);
$sheet->getColumnDimension('N')->setWidth(17);
$sheet->getColumnDimension('O')->setWidth(17);
$sheet->getColumnDimension('P')->setWidth(25);
$sheet->getColumnDimension('Q')->setWidth(35);
// set height
$sheet->getRowDimension(2)->setRowHeight(45.75);
// set borders
$sheet->getStyle('A2:Q2')->applyFromArray(array('borders' => array(
'top' => array('style' => PHPExcel_Style_Border::BORDER_MEDIUM),
'bottom' => array('style' => PHPExcel_Style_Border::BORDER_MEDIUM),
)));
// def color
$green = '06b257';
$satin = 'eeece1';
$blue = '4f81bd';
// set styles
$this->setCellBackgroundColor($sheet, 'A1:Q1', $green);
$this->setCellBackgroundColor($sheet, 'A2:P2', $satin);
$this->setCellBackgroundColor($sheet, 'Q2', $blue);
$sheet->getStyle('A2:Q2')->getFont()->setBold(true);
$sheet->getStyle('A2:Q2')->getAlignment()->setWrapText(true);
$sheet->getStyle('O')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
$sheet->getStyle('A2:Q2')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$sheet->getStyle('A2:Q2')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_TOP);
$sheet->getStyle('A')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
// set value header
$sheet->setCellValue('A2', 'No');
$sheet->setCellValue('B2', 'Tgl Pemotongan (dd/MM/yyyy)');
$sheet->setCellValue('C2', 'Penerima Penghasilan? (NPWP/NIK)');
$sheet->setCellValue('D2', 'NPWP (tanpa format/tanda baca)');
$sheet->setCellValue('E2', 'NIK (tanpa format/tanda baca)');
$sheet->setCellValue('F2', 'Nama Penerima Penghasilan Sesuai NIK');
$sheet->setCellValue('G2', 'Alamat Penerima Penghasilan Sesuai NIK');
$sheet->setCellValue('H2', 'Kode Objek Pajak');
$sheet->setCellValue('I2', 'Penandatangan Menggunakan? (NPWP/NIK)');
$sheet->setCellValue('J2', 'NPWP Penandatangan (tanpa format/tanda baca)');
$sheet->setCellValue('K2', 'NIK Penandatangan (tanpa format/tanda baca)');
$sheet->setCellValue('L2', 'Kode PTKP');
$sheet->setCellValue('M2', 'Pegawai Harian? (Ya/Tidak)');
$sheet->setCellValue('N2', 'Menggunakan Gross Up? (Ya/Tidak)');
$sheet->setCellValue('O2', 'Penghasilan Bruto');
$sheet->setCellValue('P2', 'Mendapatkan Fasilitas ? (N/SKB/DTP)');
$sheet->setCellValue('Q2', 'Nomor SKB/Nomor DTP');
// set value with data
$no = 1;
$row = 3;
foreach ($data as $value) {
$sheet->setCellValue('A' . $row, $no);
$sheet->setCellValue('B' . $row, date('d/m/Y', strtotime($value->tgl_pemotongan)));
$sheet->setCellValue('C' . $row, $value->penerima_penghasilan);
$sheet->setCellValueExplicit('D' . $row, $value->npwp);
$sheet->setCellValueExplicit('E' . $row, $value->no_ktp);
$sheet->setCellValue('F' . $row, $value->nm_karyawan);
$sheet->setCellValue('G' . $row, $value->alamat_ktp);
$sheet->setCellValue('H' . $row, $value->kd_objek_pajak);
$sheet->setCellValue('I' . $row, $value->penandatangan_jenis);
$sheet->setCellValue('J' . $row, $value->penandatangan_npwp);
$sheet->setCellValue('K' . $row, $value->penandatangan_ktp);
$sheet->setCellValue('L' . $row, $value->kd_ptkp);
$sheet->setCellValue('M' . $row, $value->pegawai_harian);
$sheet->setCellValue('N' . $row, $value->gross_up);
$sheet->setCellValueExplicit('O' . $row, $value->gaji_bruto);
$sheet->setCellValue('P' . $row, $value->fasilitas);
$sheet->setCellValueExplicit('Q' . $row, $value->no_skb_dtp);
$no++;
$row++;
}
}
/**
* worksheet for tab 26
*
* @param object $excel => library PHPExcel
* @return void
*/
private function tab26($excel)
{
$excel->createSheet();
$excel->setActiveSheetIndex(2);
$sheet = $excel->getActiveSheet();
// setup sheet
$sheet->getDefaultStyle()->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
$sheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
$sheet->setTitle("26");
// set width
$sheet->getColumnDimension('A')->setWidth(5);
$sheet->getColumnDimension('B')->setWidth(15);
$sheet->getColumnDimension('C')->setWidth(14);
$sheet->getColumnDimension('D')->setWidth(20);
$sheet->getColumnDimension('E')->setWidth(20);
$sheet->getColumnDimension('F')->setWidth(20);
$sheet->getColumnDimension('G')->setWidth(20);
$sheet->getColumnDimension('H')->setWidth(16);
$sheet->getColumnDimension('I')->setWidth(20);
$sheet->getColumnDimension('J')->setWidth(23);
$sheet->getColumnDimension('K')->setWidth(20);
$sheet->getColumnDimension('L')->setWidth(17);
$sheet->getColumnDimension('M')->setWidth(17);
$sheet->getColumnDimension('N')->setWidth(17);
$sheet->getColumnDimension('O')->setWidth(17);
$sheet->getColumnDimension('P')->setWidth(25);
$sheet->getColumnDimension('Q')->setWidth(35);
// set height
$sheet->getRowDimension(2)->setRowHeight(45.75);
// set borders
$sheet->getStyle('A2:Q2')->applyFromArray(array('borders' => array(
'top' => array('style' => PHPExcel_Style_Border::BORDER_MEDIUM),
'bottom' => array('style' => PHPExcel_Style_Border::BORDER_MEDIUM),
)));
// def color
$green = '06b257';
$satin = 'eeece1';
$blue = '4f81bd';
// set styles
$this->setCellBackgroundColor($sheet, 'A1:Q1', $green);
$this->setCellBackgroundColor($sheet, 'A2:P2', $satin);
$this->setCellBackgroundColor($sheet, 'Q2', $blue);
$sheet->getStyle('A2:Q2')->getFont()->setBold(true);
$sheet->getStyle('A2:Q2')->getAlignment()->setWrapText(true);
$sheet->getStyle('O')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
$sheet->getStyle('A2:Q2')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$sheet->getStyle('A2:Q2')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_TOP);
$sheet->getStyle('A')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
// set value header
$sheet->setCellValue('A2', 'No');
$sheet->setCellValue('B2', 'Tgl Pemotongan (dd/MM/yyyy)');
$sheet->setCellValue('C2', 'Penerima Penghasilan? (NPWP/NIK)');
$sheet->setCellValue('D2', 'NPWP (tanpa format/tanda baca)');
$sheet->setCellValue('E2', 'NIK (tanpa format/tanda baca)');
$sheet->setCellValue('F2', 'Nama Penerima Penghasilan Sesuai NIK');
$sheet->setCellValue('G2', 'Alamat Penerima Penghasilan Sesuai NIK');
$sheet->setCellValue('H2', 'Kode Objek Pajak');
$sheet->setCellValue('I2', 'Penandatangan Menggunakan? (NPWP/NIK)');
$sheet->setCellValue('J2', 'NPWP Penandatangan (tanpa format/tanda baca)');
$sheet->setCellValue('K2', 'NIK Penandatangan (tanpa format/tanda baca)');
$sheet->setCellValue('L2', 'Kode PTKP');
$sheet->setCellValue('M2', 'Pegawai Harian? (Ya/Tidak)');
$sheet->setCellValue('N2', 'Menggunakan Gross Up? (Ya/Tidak)');
$sheet->setCellValue('O2', 'Penghasilan Bruto');
$sheet->setCellValue('P2', 'Mendapatkan Fasilitas ? (N/SKB/DTP)');
$sheet->setCellValue('Q2', 'Nomor SKB/Nomor DTP');
}
/**
* worksheet for tab Ref Daftar Objek Pajak
*
* @param object $excel => library PHPExcel
* @return void
*/
private function tabObjekPajak($excel)
{
$excel->createSheet();
$excel->setActiveSheetIndex(3);
$sheet = $excel->getActiveSheet();
// setup sheet
$sheet->getDefaultStyle()->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
$sheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
$sheet->setTitle("Ref Daftar Objek Pajak")->getTabColor()->setRGB('00B050');
// set width
$sheet->getColumnDimension('A')->setWidth(2);
$sheet->getColumnDimension('B')->setWidth(16);
$sheet->getColumnDimension('C')->setWidth(130);
$sheet->getColumnDimension('D')->setWidth(10);
$sheet->getColumnDimension('E')->setWidth(10);
$sheet->getColumnDimension('F')->setWidth(14);
// set borders
$sheet->getStyle('B2:F16')->applyFromArray(array('borders' => array('allborders' => array('style' => PHPExcel_Style_Border::BORDER_THIN))));
// def color
$grey = 'dcdcdb';
// set styles
$this->setCellBackgroundColor($sheet, 'B2:F2', $grey);
$sheet->getStyle('A2:F2')->getFont()->setBold(true);
$sheet->getStyle('D3:E16')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
// set value header
$sheet->setCellValue('B2', 'Kode Objek Pajak');
$sheet->setCellValue('C2', 'Nama Objek Pajak');
$sheet->setCellValue('D2', 'KAP');
$sheet->setCellValue('E2', 'KJS');
$sheet->setCellValue('F2', 'KETERANGAN');
// set value with data
$data = $this->db->select('kode, nama, kap, kjs, keterangan')
->get('payroll_pph21_objek_pajak')
->result();
$row = 3;
foreach ($data as $value) {
$sheet->setCellValue('B' . $row, $value->kode);
$sheet->setCellValue('C' . $row, $value->nama);
$sheet->setCellValue('D' . $row, $value->kap);
$sheet->setCellValue('E' . $row, $value->kjs);
$sheet->setCellValue('F' . $row, $value->keterangan);
$row++;
}
}
/**
* worksheet for tab Ref Daftar Kode Negara
*
* @param object $excel => library PHPExcel
* @return void
*/
private function tabKodeNegara($excel)
{
$excel->createSheet();
$excel->setActiveSheetIndex(4);
$sheet = $excel->getActiveSheet();
// setup sheet
$sheet->getDefaultStyle()->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
$sheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
$sheet->setTitle("Ref Daftar Kode Negara")->getTabColor()->setRGB('00B050');
// set width
$sheet->getColumnDimension('A')->setWidth(2);
$sheet->getColumnDimension('B')->setWidth(9);
$sheet->getColumnDimension('C')->setWidth(35);
// set borders
$sheet->getStyle('B2:C250')->applyFromArray(array('borders' => array('allborders' => array('style' => PHPExcel_Style_Border::BORDER_THIN))));
// def color
$grey = 'dcdcdb';
// set styles
$this->setCellBackgroundColor($sheet, 'B2:C2', $grey);
$sheet->getStyle('B2:C2')->getFont()->setBold(true);
// set value header
$sheet->setCellValue('B2', 'KODE');
$sheet->setCellValue('C2', 'Nama Negara');
// set value with data
$data = $this->db->select('kode, nm_negara')
->order_by('kode', 'asc')
->get('payroll_pph21_kd_negara')
->result();
$row = 3;
foreach ($data as $value) {
$sheet->setCellValue('B' . $row, $value->kode);
$sheet->setCellValue('C' . $row, $value->nm_negara);
$row++;
}
}
/**
* worksheet for tab Ref Daftar PTKP
*
* @param object $excel => library PHPExcel
* @return void
*/
private function tabPtkp($excel)
{
$excel->createSheet();
$excel->setActiveSheetIndex(5);
$sheet = $excel->getActiveSheet();
// setup sheet
$sheet->getDefaultStyle()->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
$sheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
$sheet->setTitle("Ref Daftar PTKP")->getTabColor()->setRGB('00B050');
// set width
$sheet->getColumnDimension('A')->setWidth(2);
$sheet->getColumnDimension('B')->setWidth(15);
$sheet->getColumnDimension('C')->setWidth(15);
// set borders
$sheet->getStyle('B2:C10')->applyFromArray(array('borders' => array('allborders' => array('style' => PHPExcel_Style_Border::BORDER_THIN))));
// def color
$grey = 'dcdcdb';
// set styles
$this->setCellBackgroundColor($sheet, 'B2:C2', $grey);
$sheet->getStyle('B2:C2')->getFont()->setBold(true);
$sheet->getStyle('C3:C10')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
// set value header
$sheet->setCellValue('B2', 'PTKP');
$sheet->setCellValue('C2', 'Nominal');
// set value with data
$data = $this->db->select('kode, nominal')
->order_by('no_urut', 'asc')
->limit(8)
->get('ptkp')
->result();
$row = 3;
foreach ($data as $value) {
$sheet->setCellValue('B' . $row, $value->kode);
$sheet->setCellValue('C' . $row, $value->nominal);
$row++;
}
}
/**
* set cells background color
*
* @param object $sheet => active sheet
* @param string $cell => ex: A1 or A1:H1
* @param string $color => ex: FF0000
* @return void
*/
private function setCellBackgroundColor($sheet, $cell, $color)
{
$sheet->getStyle($cell)
->getFill()
->setFillType(PHPExcel_Style_Fill::FILL_SOLID)
->getStartColor()
->setRGB($color);
}
private function periode($bulan) private function periode($bulan)
{ {
return date_format(date_create("01-" . $bulan), "Y-m"); return date_format(date_create("01-" . $bulan), "Y-m");
......
...@@ -28,7 +28,7 @@ class Pot_absensi extends MY_Controller ...@@ -28,7 +28,7 @@ class Pot_absensi extends MY_Controller
$no = $_POST['start']; $no = $_POST['start'];
foreach ($list as $field) { foreach ($list as $field) {
$no++; $no++;
$row = array(); $row = array();
$row[] = $no; $row[] = $no;
# JENIS # JENIS
switch ($field->jenis) { switch ($field->jenis) {
...@@ -54,24 +54,24 @@ class Pot_absensi extends MY_Controller ...@@ -54,24 +54,24 @@ class Pot_absensi extends MY_Controller
# FLAG AKTIF # FLAG AKTIF
if ($field->flag_aktif == "1") { if ($field->flag_aktif == "1") {
$row[] = '<label class="switch"> $row[] = '<label class="switch">
<input id="' . md5($field->jenis) . '" data-flag="flag_aktif" type="checkbox" class="default" value="1" checked> <input id="' . md5($field->jenis) . '" data-flag="flag_aktif" type="checkbox" class="default" value="1" checked>
<span class="slider round">Aktif</span> <span class="slider round">Aktif</span>
</label>'; </label>';
} else { } else {
$row[] = '<label class="switch"> $row[] = '<label class="switch">
<input id="' . md5($field->jenis) . '" data-flag="flag_aktif" type="checkbox" class="default" value="0" > <input id="' . md5($field->jenis) . '" data-flag="flag_aktif" type="checkbox" class="default" value="0" >
<span class="slider round">Nonaktif</span> <span class="slider round">Nonaktif</span>
</label>'; </label>';
} }
# FLAG PERSENTASE GAPOK # FLAG PERSENTASE GAPOK
if ($field->flag_persentase_gapok == "1") { if ($field->flag_persentase_gapok == "1") {
$row[] = '<label class="switch"> $row[] = '<label class="switch">
<input id="' . md5($field->jenis) . '" data-flag="flag_persentase_gapok" type="checkbox" class="default" value="1" checked> <input id="' . md5($field->jenis) . '" data-flag="flag_persentase_gapok" type="checkbox" class="default" value="1" checked>
<span class="slider round">Ya</span> <span class="slider round">Ya</span>
</label>'; </label>';
# PERSENTASE # PERSENTASE
$editPersen = ' $editPersen = '
<div class="input-group nominal-edit" data-btn="persen" style="display:none"> <div class="input-group nominal-edit" data-btn="persen" style="display:none">
<input type="text" name="nominal" onkeyup="calculatePersentase(this)" class="form-control" value="' . str_replace('.00', '', $field->persentase) . '"> <input type="text" name="nominal" onkeyup="calculatePersentase(this)" class="form-control" value="' . str_replace('.00', '', $field->persentase) . '">
<div class="input-group-append"> <div class="input-group-append">
...@@ -85,12 +85,12 @@ class Pot_absensi extends MY_Controller ...@@ -85,12 +85,12 @@ class Pot_absensi extends MY_Controller
<i class="fa fa-edit (alias) "></i> <i class="fa fa-edit (alias) "></i>
</button> </button>
</div>'; </div>';
$row[] = '<div class="nominal-form">' . $editPersen . $nominalWithButton . '</div>'; $row[] = '<div class="nominal-form">' . $editPersen . $nominalWithButton . '</div>';
} else { } else {
$row[] = '<label class="switch"> $row[] = '<label class="switch">
<input id="' . md5($field->jenis) . '" data-flag="flag_persentase_gapok" type="checkbox" class="default" value="0" > <input id="' . md5($field->jenis) . '" data-flag="flag_persentase_gapok" type="checkbox" class="default" value="0" >
<span class="slider round">Tidak</span> <span class="slider round">Tidak</span>
</label>'; </label>';
$row[] = ''; $row[] = '';
} }
...@@ -117,7 +117,7 @@ class Pot_absensi extends MY_Controller ...@@ -117,7 +117,7 @@ class Pot_absensi extends MY_Controller
# MENIT # MENIT
if ($field->jenis == 'terlambat' || $field->jenis == 'pc') { if ($field->jenis == 'terlambat' || $field->jenis == 'pc') {
$editNominal = ' $editNominal = '
<div class="input-group nominal-edit" data-btn="menit" style="display:none"> <div class="input-group nominal-edit" data-btn="menit" style="display:none">
<input type="text" name="nominal" oninput="format_amount($(this));" class="form-control" value="' . $field->menit . '"> <input type="text" name="nominal" oninput="format_amount($(this));" class="form-control" value="' . $field->menit . '">
<div class="input-group-append"> <div class="input-group-append">
...@@ -131,7 +131,7 @@ class Pot_absensi extends MY_Controller ...@@ -131,7 +131,7 @@ class Pot_absensi extends MY_Controller
<i class="fa fa-edit (alias) "></i> <i class="fa fa-edit (alias) "></i>
</button> </button>
</div>'; </div>';
$row[] = '<div class="nominal-form">' . $editNominal . $nominalWithButton . '</div>'; $row[] = '<div class="nominal-form">' . $editNominal . $nominalWithButton . '</div>';
} else { } else {
$row[] = ''; $row[] = '';
} }
...@@ -205,45 +205,75 @@ class Pot_absensi extends MY_Controller ...@@ -205,45 +205,75 @@ class Pot_absensi extends MY_Controller
$nama_pemotong = $this->input->post('nama_pemotong'); $nama_pemotong = $this->input->post('nama_pemotong');
$jenis_pemotong = $this->input->post('jenis_pemotong'); $jenis_pemotong = $this->input->post('jenis_pemotong');
$nomor_pemotong = $this->input->post('nomor_pemotong'); $nomor_pemotong = $this->input->post('nomor_pemotong');
$id_tku = $this->input->post('id_tku');
// validasi // validasi
if (!in_array($aktif, ['0', '1'])) { if (!in_array($aktif, ['0', '1'])) {
return __response_save(false, ['message' => [ return __response_save(false, [
'aktif', 'message' => [
"<i class='fa fa-exclamation-triangle'></i> Status aktif harus dipilih" 'aktif',
]]); "<i class='fa fa-exclamation-triangle'></i> Status aktif harus dipilih"
]
]);
} }
if (!$jenis_pot_pph) { if (!$jenis_pot_pph) {
return __response_save(false, ['message' => [ return __response_save(false, [
'jenis_pot_pph', 'message' => [
"<i class='fa fa-exclamation-triangle'></i> Jenis potongan harus dipilih" 'jenis_pot_pph',
]]); "<i class='fa fa-exclamation-triangle'></i> Jenis potongan harus dipilih"
]
]);
} }
if ($aktif == "1"){ if ($aktif == "1") {
if (!$nama_pemotong) { if (!$nama_pemotong) {
return __response_save(false, ['message' => [ return __response_save(false, [
'nama_pemotong', 'message' => [
"<i class='fa fa-exclamation-triangle'></i> Nama pemotong harus diisi" 'nama_pemotong',
]]); "<i class='fa fa-exclamation-triangle'></i> Nama pemotong harus diisi"
]
]);
} }
if (!$jenis_pemotong) { if (!$jenis_pemotong) {
return __response_save(false, ['message' => [ return __response_save(false, [
'jenis_pemotong', 'message' => [
"<i class='fa fa-exclamation-triangle'></i> Jenis pemotong harus dipilih" 'jenis_pemotong',
]]); "<i class='fa fa-exclamation-triangle'></i> Jenis pemotong harus dipilih"
]
]);
} }
if (!$nomor_pemotong) { if (!$nomor_pemotong) {
return __response_save(false, ['message' => [ return __response_save(false, [
'nomor_pemotong', 'message' => [
"<i class='fa fa-exclamation-triangle'></i> Nomor NPWP/Nomor KTP harus diisi" 'nomor_pemotong',
]]); "<i class='fa fa-exclamation-triangle'></i> Nomor NPWP/Nomor KTP harus diisi"
]
]);
} else { } else {
if (!is_numeric($nomor_pemotong)) { if (!is_numeric($nomor_pemotong)) {
return __response_save(false, ['message' => [ return __response_save(false, [
'nomor_pemotong', 'message' => [
"<i class='fa fa-exclamation-triangle'></i> Nomor NPWP/Nomor KTP harus berupa angka" 'nomor_pemotong',
]]); "<i class='fa fa-exclamation-triangle'></i> Nomor NPWP/Nomor KTP harus berupa angka"
]
]);
}
}
if (!$id_tku) {
return __response_save(false, [
'message' => [
'id_tku',
"<i class='fa fa-exclamation-triangle'></i> ID TKU harus diisi"
]
]);
} else {
if (!is_numeric($id_tku)) {
return __response_save(false, [
'message' => [
'id_tku',
"<i class='fa fa-exclamation-triangle'></i> ID TKU harus berupa angka"
]
]);
} }
} }
} }
...@@ -252,7 +282,8 @@ class Pot_absensi extends MY_Controller ...@@ -252,7 +282,8 @@ class Pot_absensi extends MY_Controller
'aktif' => $aktif, 'aktif' => $aktif,
'jenis' => $jenis_pot_pph, 'jenis' => $jenis_pot_pph,
'nm_pemotong' => $nama_pemotong, 'nm_pemotong' => $nama_pemotong,
'jenis_pemotong' => $jenis_pemotong 'jenis_pemotong' => $jenis_pemotong,
'id_tku' => $id_tku,
); );
if ($jenis_pemotong == 'NPWP') { if ($jenis_pemotong == 'NPWP') {
...@@ -289,7 +320,7 @@ class Pot_absensi extends MY_Controller ...@@ -289,7 +320,7 @@ class Pot_absensi extends MY_Controller
if ($for_flag == 'flag_persentase_gapok') { if ($for_flag == 'flag_persentase_gapok') {
$data = array( $data = array(
$for_flag => $status, $for_flag => $status,
'persentase' => $persentase 'persentase' => $persentase
); );
} else { } else {
......
...@@ -55,7 +55,7 @@ class Pph21_uu24_m extends CI_Model ...@@ -55,7 +55,7 @@ class Pph21_uu24_m extends CI_Model
// pph21 // pph21
foreach ($getTER as $tarif) { foreach ($getTER as $tarif) {
if ($gaji_bruto >= $tarif->min && ($gaji_bruto <= $tarif->max || $tarif->max == 0)) { if ($gaji_bruto >= $tarif->min && ($gaji_bruto <= $tarif->max || $tarif->max == 0)) {
$pph21 = $gaji_bruto * $tarif->ter_persen / 100; $pph21 = $gaji_bruto * $tarif->ter_persen / 100;
$data_tarif = $tarif; $data_tarif = $tarif;
break; break;
} }
...@@ -63,7 +63,7 @@ class Pph21_uu24_m extends CI_Model ...@@ -63,7 +63,7 @@ class Pph21_uu24_m extends CI_Model
} else { } else {
// masa pajak terakhir (bulan 12) // masa pajak terakhir (bulan 12)
// get data payroll karyawan sesuai periode saat ini // get data payroll karyawan sesuai periode saat ini
$data_payroll = $this->db->select(' $data_payroll = $this->db->select('
periode, periode,
gaji_bruto, gaji_bruto,
biaya_jabatan, biaya_jabatan,
...@@ -125,10 +125,12 @@ class Pph21_uu24_m extends CI_Model ...@@ -125,10 +125,12 @@ class Pph21_uu24_m extends CI_Model
'periode' => $periode, 'periode' => $periode,
'gapok' => $nominal['gapok'], 'gapok' => $nominal['gapok'],
'ttl_tunjangan' => $nominal['tunj_lain'], 'ttl_tunjangan' => $nominal['tunj_lain'],
'premi_asuransi' => $nominal['premi_asuransi'] ?: 0,
'gaji_bruto' => $gaji_bruto, 'gaji_bruto' => $gaji_bruto,
'gaji_bruto_setahun' => $gaji_bruto_setahun ?: 0, 'gaji_bruto_setahun' => $gaji_bruto_setahun ?: 0,
'biaya_jabatan' => $biaya_jabatan ?: 0, 'biaya_jabatan' => $biaya_jabatan ?: 0,
'biaya_jabatan_setahun' => $biaya_jabatan_setahun ?: 0, 'biaya_jabatan_setahun' => $biaya_jabatan_setahun ?: 0,
'iuran_pensiun_bulanan' => $nominal['iuran_pensiun'] ?: 0,
'iuran_pensiun' => $iuran_pensiun ?: 0, 'iuran_pensiun' => $iuran_pensiun ?: 0,
'ptkp' => $data_nominal_ptkp ?: 0, 'ptkp' => $data_nominal_ptkp ?: 0,
'penerima_penghasilan' => $penerima_penghasilan, 'penerima_penghasilan' => $penerima_penghasilan,
...@@ -216,8 +218,8 @@ class Pph21_uu24_m extends CI_Model ...@@ -216,8 +218,8 @@ class Pph21_uu24_m extends CI_Model
$result = []; $result = [];
foreach ($variable_pkp as $key => $value) { foreach ($variable_pkp as $key => $value) {
if ($pkp_setahun > $value['max'] && $value['max'] !== PHP_INT_MAX) { if ($pkp_setahun > $value['max'] && $value['max'] !== PHP_INT_MAX) {
$multiplier = $value['max'] - array_sum($deduction); $multiplier = $value['max'] - array_sum($deduction);
$result[] = [ $result[] = [
'result' => $multiplier * ((int)$key / 100), 'result' => $multiplier * ((int)$key / 100),
'persentase' => $key, 'persentase' => $key,
'multiplier' => $multiplier 'multiplier' => $multiplier
...@@ -225,7 +227,7 @@ class Pph21_uu24_m extends CI_Model ...@@ -225,7 +227,7 @@ class Pph21_uu24_m extends CI_Model
$deduction[] = $multiplier; $deduction[] = $multiplier;
} else { } else {
$multiplier = $pkp_setahun - array_sum($deduction); $multiplier = $pkp_setahun - array_sum($deduction);
$result[] = [ $result[] = [
'result' => $multiplier * ((int)$key / 100), 'result' => $multiplier * ((int)$key / 100),
'persentase' => $key, 'persentase' => $key,
'multiplier' => $multiplier 'multiplier' => $multiplier
......
...@@ -48,46 +48,7 @@ class Laporan_pph_uu24_m extends CI_Model ...@@ -48,46 +48,7 @@ class Laporan_pph_uu24_m extends CI_Model
} }
} }
$this->db->select(' $this->db->select('pph.*')
pph.id_karyawan,
pph.nik,
pph.nm_karyawan,
pph.no_ktp,
pph.npwp,
pph.alamat_ktp,
pph.id_jabatan,
pph.kd_jabatan,
pph.nm_jabatan,
pph.id_cabang,
pph.kd_cabang,
pph.nm_cabang,
pph.id_departemen,
pph.kd_departemen,
pph.nm_departemen,
pph.periode,
pph.gapok,
pph.ttl_tunjangan,
pph.gaji_bruto,
pph.penerima_penghasilan,
pph.kd_objek_pajak,
pph.penandatangan_jenis,
pph.penandatangan_npwp,
pph.penandatangan_nik,
pph.kd_ptkp,
pph.pegawai_harian,
pph.gross_up,
pph.fasilitas,
pph.no_skb_dtp,
pph.tgl_pemotongan,
pph.ter_jenis,
pph.ter_persen,
pph.min_bruto,
pph.max_bruto,
pph.pph21,
pph.id_company,
pph.user_input,
pph.tgl_input
')
->from($this->table . ' AS pph') ->from($this->table . ' AS pph')
->order_by('pph.id_karyawan', 'ASC'); ->order_by('pph.id_karyawan', 'ASC');
} }
...@@ -112,4 +73,11 @@ class Laporan_pph_uu24_m extends CI_Model ...@@ -112,4 +73,11 @@ class Laporan_pph_uu24_m extends CI_Model
->where('id_departemen', $id_departemen) ->where('id_departemen', $id_departemen)
->get('master_departemen')->row()->nama; ->get('master_departemen')->row()->nama;
} }
public function get_pengaturan_pph($periode)
{
$this->db->where('id_company', $this->id_company);
$this->db->where('periode_gaji', $periode);
return $this->db->get('payroll_pph21_p_trx')->row();
}
} }
...@@ -43,7 +43,7 @@ class Pot_absensi_m extends CI_Model ...@@ -43,7 +43,7 @@ class Pot_absensi_m extends CI_Model
->where("id_company", $this->id_company); ->where("id_company", $this->id_company);
$column_search = array(''); $column_search = array('');
$i = 0; $i = 0;
foreach ($column_search as $item) { // looping awal foreach ($column_search as $item) { // looping awal
if ($_POST['search']['value']) { // jika datatable mengirimkan pencarian dengan metode POST if ($_POST['search']['value']) { // jika datatable mengirimkan pencarian dengan metode POST
...@@ -88,8 +88,8 @@ class Pot_absensi_m extends CI_Model ...@@ -88,8 +88,8 @@ class Pot_absensi_m extends CI_Model
if ($is_data > 0) { if ($is_data > 0) {
$this->db->trans_start(); $this->db->trans_start();
$data["user_update"] = $this->nik_karyawan . ' - ' . $this->nm_karyawan; $data["user_update"] = $this->nik_karyawan . ' - ' . $this->nm_karyawan;
$data["tgl_update"] = date("Y-m-d H:i:s"); $data["tgl_update"] = date("Y-m-d H:i:s");
$this->db->update($this->table, $data, ["md5(jenis)" => $jenis, "id_company" => $this->id_company]); $this->db->update($this->table, $data, ["md5(jenis)" => $jenis, "id_company" => $this->id_company]);
$this->logger->create_log('payroll_pot_absensi', 'edit', $this->db->last_query()); $this->logger->create_log('payroll_pot_absensi', 'edit', $this->db->last_query());
...@@ -104,7 +104,7 @@ class Pot_absensi_m extends CI_Model ...@@ -104,7 +104,7 @@ class Pot_absensi_m extends CI_Model
return __response_update(true); return __response_update(true);
} }
} else { } else {
return __response_update(false); return __response_update(false);
} }
} }
...@@ -124,7 +124,7 @@ class Pot_absensi_m extends CI_Model ...@@ -124,7 +124,7 @@ class Pot_absensi_m extends CI_Model
$this->logger->create_log('payroll_pot_pph', 'edit', $this->db->last_query()); $this->logger->create_log('payroll_pot_pph', 'edit', $this->db->last_query());
} else { } else {
$message = ['message' => '<font color="#ffffff"><i class="fa fa-check-square">&nbsp;</i>Gagal, terjadi kesalahan</font>']; $message = ['message' => '<font color="#ffffff"><i class="fa fa-check-square">&nbsp;</i>Gagal, terjadi kesalahan</font>'];
return __response_update(false, $message); return __response_update(false, $message);
} }
$this->db->trans_complete(); $this->db->trans_complete();
...@@ -132,15 +132,15 @@ class Pot_absensi_m extends CI_Model ...@@ -132,15 +132,15 @@ class Pot_absensi_m extends CI_Model
if ($this->db->trans_status() === FALSE) { if ($this->db->trans_status() === FALSE) {
$this->db->trans_rollback(); $this->db->trans_rollback();
if ($for == 'store') { if ($for == 'store') {
return __response_save(false); return __response_save(false);
} }
return __response_update(false); return __response_update(false);
} else { } else {
$this->db->trans_commit(); $this->db->trans_commit();
if ($for == 'store') { if ($for == 'store') {
return __response_save(true); return __response_save(true);
} }
return __response_update(true); return __response_update(true);
} }
} }
...@@ -153,6 +153,7 @@ class Pot_absensi_m extends CI_Model ...@@ -153,6 +153,7 @@ class Pot_absensi_m extends CI_Model
jenis_pemotong, jenis_pemotong,
npwp, npwp,
no_ktp, no_ktp,
id_tku,
id_company id_company
') ')
->from('payroll_pph21_p') ->from('payroll_pph21_p')
......
...@@ -30,7 +30,7 @@ Route::set('404_override', function () { ...@@ -30,7 +30,7 @@ Route::set('404_override', function () {
Route::set('translate_uri_dashes', FALSE); Route::set('translate_uri_dashes', FALSE);
Route::get('image', 'Image@index'); Route::get('image', 'Image@index');
Route::get('imagebiodata','Image@image_bodata'); Route::get('imagebiodata', 'Image@image_bodata');
Route::get('syarat-dan-ketentuan', 'Syarat_ketentuan@index'); Route::get('syarat-dan-ketentuan', 'Syarat_ketentuan@index');
Route::get('auto_login/{username?}/{token?}', 'Auto_login@index'); Route::get('auto_login/{username?}/{token?}', 'Auto_login@index');
...@@ -49,23 +49,6 @@ Route::group('api', function () { ...@@ -49,23 +49,6 @@ Route::group('api', function () {
Route::get('receive/{par}', 'Socket_send@receive_notification'); Route::get('receive/{par}', 'Socket_send@receive_notification');
Route::get('send/{target?}/{id_room?}', 'Socket_send@notif_izin'); Route::get('send/{target?}/{id_room?}', 'Socket_send@notif_izin');
}); });
Route::group('data_absensi', function () {
Route::get('mulialand', 'apis/Mulialand@data_absensi');
Route::get('jalantol', 'Api@jalan_tol');
Route::get('mulia_industri_group', 'Api@mulia_industri');
});
Route::group('mulialand', function () {
Route::get('jadwalshift/test', 'apis/Mulialand@test');
Route::post('jadwalshift/add', 'apis/Mulialand@add_jadwal_shift');
Route::get('jadwalshift/get', 'apis/Mulialand@jadwal_shift');
Route::get('data_karyawan/edit_nik/{nik_baru?}/{nik_lama?}', 'apis/Mulialand@update_nik');
});
Route::group('pdam-tirta-perwitasari', function () {
Route::get('data-absensi', 'apis/PDAM_tirta_perwitasari@data_absensi');
});
}); });
Route::get('halaman-tidak-ditemukan', 'Page_not_found@index')->name('page.not.found'); Route::get('halaman-tidak-ditemukan', 'Page_not_found@index')->name('page.not.found');
...@@ -130,9 +113,9 @@ Route::group('wizard', ['middleware' => ['Otentikasi_wizard']], function () { ...@@ -130,9 +113,9 @@ Route::group('wizard', ['middleware' => ['Otentikasi_wizard']], function () {
Route::get('dashboard', 'Wizard@dashboard')->name('wizard.dashboard'); Route::get('dashboard', 'Wizard@dashboard')->name('wizard.dashboard');
}); });
Route::group('mobile',function(){ Route::group('mobile', function () {
Route::get('pkwt/view/{id_pkwt?}','pkwt/baru/home@view_html'); Route::get('pkwt/view/{id_pkwt?}', 'pkwt/baru/home@view_html');
Route::get('pkwt/download/{id_pkwt?}','pkwt/baru/home@download_pdf'); Route::get('pkwt/download/{id_pkwt?}', 'pkwt/baru/home@download_pdf');
}); });
Route::group('', ['middleware' => ['Otentikasi_login']], function () { Route::group('', ['middleware' => ['Otentikasi_login']], function () {
...@@ -189,12 +172,11 @@ Route::group('', ['middleware' => ['Otentikasi_login']], function () { ...@@ -189,12 +172,11 @@ Route::group('', ['middleware' => ['Otentikasi_login']], function () {
Route::get('obyektives', 'Dropdown@obyektives')->name('dropdown.kpi.obyektives'); Route::get('obyektives', 'Dropdown@obyektives')->name('dropdown.kpi.obyektives');
Route::get('bawahan/{input?}', 'Dropdown@kpiBawahan')->name('dropdown.kpi.bawahan'); Route::get('bawahan/{input?}', 'Dropdown@kpiBawahan')->name('dropdown.kpi.bawahan');
}); });
Route::group('pkwt', ['middleware' => 'Auth_menu:1', 'namespace' => 'pkwt'], function() Route::group('pkwt', ['middleware' => 'Auth_menu:1', 'namespace' => 'pkwt'], function () {
{ Route::get('pkwt-komp-tunj', 'Dropdown@pkwt_komp_tunj')->name('dropdown.pkwt.komp.tunj');
Route::get('pkwt-komp-tunj','Dropdown@pkwt_komp_tunj')->name('dropdown.pkwt.komp.tunj'); Route::get('tunjangan', 'Dropdown@tunjangan')->name('dropdown.pkwt.tunjangan');
Route::get('tunjangan','Dropdown@tunjangan')->name('dropdown.pkwt.tunjangan'); Route::get('template', 'Dropdown@template')->name('dropdown.pkwt.template');
Route::get('template','Dropdown@template')->name('dropdown.pkwt.template'); Route::get('direktur', 'Dropdown@direktur')->name('dropdown.pkwt.direktur');
Route::get('direktur','Dropdown@direktur')->name('dropdown.pkwt.direktur');
}); });
}); });
...@@ -204,7 +186,7 @@ Route::group('', ['middleware' => ['Otentikasi_login']], function () { ...@@ -204,7 +186,7 @@ Route::group('', ['middleware' => ['Otentikasi_login']], function () {
Route::get('notif-reimbursement/{param?}', 'Dashboard@notif_reimbursement'); Route::get('notif-reimbursement/{param?}', 'Dashboard@notif_reimbursement');
}); });
Route::group('dashboard', function () { Route::group('dashboard', function () {
Route::group('absensi', ['middleware' => 'Auth_menu:1,2,4,5,7'], function () { Route::group('absensi', ['middleware' => 'Auth_menu:1,2,4,5,7'], function () {
Route::get('layanan', 'Dashboard@dataLayanan')->name('dashboard.layanan'); Route::get('layanan', 'Dashboard@dataLayanan')->name('dashboard.layanan');
...@@ -274,7 +256,8 @@ Route::group('', ['middleware' => ['Otentikasi_login']], function () { ...@@ -274,7 +256,8 @@ Route::group('', ['middleware' => ['Otentikasi_login']], function () {
Route::get('diagram/status-karyawan/{id?}', 'Kepegawaian@data_kepegawaian')->name("dashboard.kepegawaian.diagram.status"); Route::get('diagram/status-karyawan/{id?}', 'Kepegawaian@data_kepegawaian')->name("dashboard.kepegawaian.diagram.status");
Route::get('diagram/pendidikan/{id_cabang?}', 'Kepegawaian@data_pendidikan')->name("dashboard.kepegawaian.diagram.pendidikan"); Route::get('diagram/pendidikan/{id_cabang?}', 'Kepegawaian@data_pendidikan')->name("dashboard.kepegawaian.diagram.pendidikan");
Route::get('data/kontrak-berakhir', 'Kepegawaian@daftar_kontrak')->name("dashboard.kepegawaian.data.kontrak.berakhir"); Route::get('data/kontrak-berakhir', 'Kepegawaian@daftar_kontrak')->name("dashboard.kepegawaian.data.kontrak.berakhir");
Route::get('data/kontrak-berakhir/list', 'Kepegawaian@list_data')->name("dashboard.kepegawaian.data.kontrak.list");; Route::get('data/kontrak-berakhir/list', 'Kepegawaian@list_data')->name("dashboard.kepegawaian.data.kontrak.list");
;
Route::get('data/kontrak-berakhir/download', 'Kepegawaian@download')->name('dashboard.kepegawaian.kontrak.berakhir.download'); Route::get('data/kontrak-berakhir/download', 'Kepegawaian@download')->name('dashboard.kepegawaian.kontrak.berakhir.download');
Route::get('count', 'Kepegawaian@kepegawaian_count')->name('dashboard.kepegawaian.count'); Route::get('count', 'Kepegawaian@kepegawaian_count')->name('dashboard.kepegawaian.count');
Route::get('main-data-status-pegawai/{jenis?}/{cabang?}', 'Kepegawaian@main_data_status_pegawai')->name('dashboard.kepegawaian.detail.main.status.pegawai'); Route::get('main-data-status-pegawai/{jenis?}/{cabang?}', 'Kepegawaian@main_data_status_pegawai')->name('dashboard.kepegawaian.detail.main.status.pegawai');
...@@ -503,7 +486,8 @@ Route::group('', ['middleware' => ['Otentikasi_login']], function () { ...@@ -503,7 +486,8 @@ Route::group('', ['middleware' => ['Otentikasi_login']], function () {
}); });
Route::group('', ['middleware' => 'Auth_menu:1'], function () { Route::group('', ['middleware' => 'Auth_menu:1'], function () {
Route::get('form/tambah/{id_karyawan?}', 'Pengalaman_kerja@form')->name('master.karyawan.pengalamankerja.form.tambah'); Route::get('form/tambah/{id_karyawan?}', 'Pengalaman_kerja@form')->name('master.karyawan.pengalamankerja.form.tambah');
Route::get('form/edit/{id_karyawan?}/{id_riwayat_pekerjaan?}', 'Pengalaman_kerja@form')->name('master.karyawan.pengalamankerja.form.edit');; Route::get('form/edit/{id_karyawan?}/{id_riwayat_pekerjaan?}', 'Pengalaman_kerja@form')->name('master.karyawan.pengalamankerja.form.edit');
;
Route::post('save', 'Pengalaman_kerja@save')->name('master.karyawan.pengalamankerja.save'); Route::post('save', 'Pengalaman_kerja@save')->name('master.karyawan.pengalamankerja.save');
Route::post('delete', 'Pengalaman_kerja@delete')->name('master.karyawan.pengalamankerja.delete'); Route::post('delete', 'Pengalaman_kerja@delete')->name('master.karyawan.pengalamankerja.delete');
}); });
...@@ -771,9 +755,9 @@ Route::group('', ['middleware' => ['Otentikasi_login']], function () { ...@@ -771,9 +755,9 @@ Route::group('', ['middleware' => ['Otentikasi_login']], function () {
}); });
# Pengaturan Admin # Pengaturan Admin
Route::group('admin', ['namespace' => 'pengaturan/admin', 'middleware' => ['Auth_menu:1:4', 'Auth_is_not_adm_absensi']], function () { Route::group('admin', ['namespace' => 'pengaturan/admin', 'middleware' => ['Auth_menu:1:4', 'Auth_is_not_adm_absensi']], function () {
Route::get('home', 'Home@index')->name('pengaturan.admin.home'); Route::get('home', 'Home@index')->name('pengaturan.admin.home');
// 1. Admin Absensi // 1. Admin Absensi
Route::group('absensi', function () { Route::group('absensi', function () {
Route::get('home', 'Adm_absensi@index')->name('pengaturan.admin.absensi.home'); Route::get('home', 'Adm_absensi@index')->name('pengaturan.admin.absensi.home');
...@@ -1138,17 +1122,6 @@ Route::group('', ['middleware' => ['Otentikasi_login']], function () { ...@@ -1138,17 +1122,6 @@ Route::group('', ['middleware' => ['Otentikasi_login']], function () {
Route::get('export/{id?}', 'Data_reimburse@export'); Route::get('export/{id?}', 'Data_reimburse@export');
}); });
// //REKAP_REIMBURSEMENT
// Route::group('rekap',function(){
// Route::get('departemen','Rekap_reimburse@index');
// Route::get('list-data/{id_cabang?}/{id_departemen?}/{tgl_awal?}/{tgl_akhir?}','Rekap_reimburse@rekap_departemen')->name('reimburse.rekap.listdata');
// Route::get('karyawan','Rekap_reimburse@main_karyawan');
// Route::get('data/{id_karyawan?}/{tgl_awal?}/{tgl_akhir?}','Rekap_reimburse@rekap_karyawan')->name('reimburse.rekap.data');
// Route::get('dropdown-karyawan','Rekap_reimburse@dropdown_karyawan')->name('reimburse.rekap.dropdown.karyawan');
// Route::get('dwonload/pdf/{id_cabang?}/{id_departemen?}/{id_karyawan?}/{tgl_awal?}/{tgl_akhir?}','Rekap_reimburse@download_pdf')->name('reimburse.rekap.download.pdf');
// });
Route::group('dropdown', function () { Route::group('dropdown', function () {
Route::get('cabang', 'Data_reimburse@dropdown_cabang')->name("reimburse.dropdown.cabang"); Route::get('cabang', 'Data_reimburse@dropdown_cabang')->name("reimburse.dropdown.cabang");
Route::get('departemen/{id_cabang?}', 'Data_reimburse@dropdown_departemen')->name("reimburse.dropdown.departemen"); Route::get('departemen/{id_cabang?}', 'Data_reimburse@dropdown_departemen')->name("reimburse.dropdown.departemen");
...@@ -1440,22 +1413,15 @@ Route::group('', ['middleware' => ['Otentikasi_login']], function () { ...@@ -1440,22 +1413,15 @@ Route::group('', ['middleware' => ['Otentikasi_login']], function () {
}); });
}); });
// laporan pph
// Route::group('laporan-pph', function () {
// Route::get('', 'payroll/laporan_pph/Laporan_pph@index')->name('payroll.laporan.pph.home');
// Route::get('view-data/{bulan?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}', 'payroll/laporan_pph/Laporan_pph@view_data')->name('payroll.laporan.pph.view.data');
// Route::get('list-data/{bulan?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}', 'payroll/laporan_pph/Laporan_pph@list_data')->name('payroll.laporan.pph.list.data');
// Route::get('download/excel/{bulan?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}', 'payroll/laporan_pph/Laporan_pph@download_excel')->name('payroll.laporan.pph.download.excel');
// });
// laporan pph uu24 // laporan pph uu24
Route::group('laporan-pph', ['namespace' => 'payroll/laporan_pph'], function () { Route::group('laporan-pph', ['namespace' => 'payroll/laporan_pph'], function () {
Route::get('', 'Laporan_pph_uu24@index')->name('payroll.laporan.pph.home'); Route::get('', 'Laporan_pph_uu24@index')->name('payroll.laporan.pph.home');
Route::get('view-data/{bulan?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}', 'Laporan_pph_uu24@view_data')->name('payroll.laporan.pph.view.data'); Route::get('view-data/{bulan?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}', 'Laporan_pph_uu24@view_data')->name('payroll.laporan.pph.view.data');
Route::get('list-data/{bulan?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}', 'Laporan_pph_uu24@list_data')->name('payroll.laporan.pph.list.data'); Route::get('list-data/{bulan?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}', 'Laporan_pph_uu24@list_data')->name('payroll.laporan.pph.list.data');
Route::get('download/excel/{bulan?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}', 'Laporan_pph_uu24@download_excel')->name('payroll.laporan.pph.download.excel'); Route::group('download', function () {
Route::get('download/excel/djp/{bulan?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}', 'Laporan_pph_uu24@download_excel_djp')->name('payroll.laporan.pph.download.excel.djp'); Route::get('excel/cortax/{bulan?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}', 'Download_pph_uu24_cortax_bpmp@download_excel')->name('payroll.laporan.pph.download.excel.cortax_bpmp');
Route::get('excel/djp/{bulan?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}', 'Download_pph_uu24_djp@download_excel')->name('payroll.laporan.pph.download.excel.djp');
});
}); });
}); });
# END PAYROLL # END PAYROLL
...@@ -2069,30 +2035,30 @@ Route::group('', ['middleware' => ['Otentikasi_login']], function () { ...@@ -2069,30 +2035,30 @@ Route::group('', ['middleware' => ['Otentikasi_login']], function () {
# Start Jadwal Patroli # Start Jadwal Patroli
Route::group('jadwal', ['namespace' => 'jadwal'], function () { Route::group('jadwal', ['namespace' => 'jadwal'], function () {
Route::get('','Jadwal@index')->name('patroli.jadwal.home'); Route::get('', 'Jadwal@index')->name('patroli.jadwal.home');
Route::get('list_data','Jadwal@list_data')->name('patroli.jadwal.list.data'); Route::get('list_data', 'Jadwal@list_data')->name('patroli.jadwal.list.data');
Route::get('form/tambah','Jadwal@form')->name('patroli.jadwal.form.tambah'); Route::get('form/tambah', 'Jadwal@form')->name('patroli.jadwal.form.tambah');
Route::get('form/edit/{id?}','Jadwal@form')->name('patroli.jadwal.form.edit'); Route::get('form/edit/{id?}', 'Jadwal@form')->name('patroli.jadwal.form.edit');
Route::get('form/hapus/{id?}','Jadwal@form')->name('patroli.jadwal.form.hapus'); Route::get('form/hapus/{id?}', 'Jadwal@form')->name('patroli.jadwal.form.hapus');
Route::post('save','Jadwal@save')->name('patroli.jadwal.save'); Route::post('save', 'Jadwal@save')->name('patroli.jadwal.save');
Route::post('delete','Jadwal@delete')->name('patroli.jadwal.delete'); Route::post('delete', 'Jadwal@delete')->name('patroli.jadwal.delete');
}); });
# End Jadwal Patroli # End Jadwal Patroli
# Start Laporan Patroli # Start Laporan Patroli
Route::group('laporan', ['namespace' => 'laporan'], function () { Route::group('laporan', ['namespace' => 'laporan'], function () {
Route::get('','Laporan_patroli@index')->name('patroli.laporan.home'); Route::get('', 'Laporan_patroli@index')->name('patroli.laporan.home');
Route::get('data/tabel/{tgl_mulai?}/{tgl_selesai?}/{id_karyawan?}/{id_cabang?}/{id_departemen?}/','Laporan_patroli@data_tabel')->name('patroli.laporan.data.tabel'); Route::get('data/tabel/{tgl_mulai?}/{tgl_selesai?}/{id_karyawan?}/{id_cabang?}/{id_departemen?}/', 'Laporan_patroli@data_tabel')->name('patroli.laporan.data.tabel');
Route::get('list-data/ajax/{tgl_mulai?}/{tgl_selesai?}/{id_karyawan?}/{id_cabang?}/{id_departemen?}/','Laporan_patroli@list_data')->name('patroli.laporan.listdata'); Route::get('list-data/ajax/{tgl_mulai?}/{tgl_selesai?}/{id_karyawan?}/{id_cabang?}/{id_departemen?}/', 'Laporan_patroli@list_data')->name('patroli.laporan.listdata');
Route::get('detail/{id?}','Laporan_patroli@detail')->name('patroli.laporan.detail'); Route::get('detail/{id?}', 'Laporan_patroli@detail')->name('patroli.laporan.detail');
Route::get('download/excel/{tgl_mulai?}/{tgl_selesai?}/{id_karyawan?}/{id_cabang?}/{id_departemen?}','Laporan_patroli@download_excel')->name('patroli.laporan.download.excel'); Route::get('download/excel/{tgl_mulai?}/{tgl_selesai?}/{id_karyawan?}/{id_cabang?}/{id_departemen?}', 'Laporan_patroli@download_excel')->name('patroli.laporan.download.excel');
Route::get('download2/excel2/{tgl_mulai?}/{tgl_selesai?}/{id_karyawan?}/{id_cabang?}/{id_departemen?}','Laporan_patroli@download_excel2')->name('patroli.laporan.download2.excel2'); Route::get('download2/excel2/{tgl_mulai?}/{tgl_selesai?}/{id_karyawan?}/{id_cabang?}/{id_departemen?}', 'Laporan_patroli@download_excel2')->name('patroli.laporan.download2.excel2');
Route::get('data/maps/{tgl_mulai?}/{tgl_selesai?}/{id_karyawan?}/{id_cabang?}/{id_departemen?}/','Laporan_patroli@data_maps')->name('patroli.laporan.data.maps'); Route::get('data/maps/{tgl_mulai?}/{tgl_selesai?}/{id_karyawan?}/{id_cabang?}/{id_departemen?}/', 'Laporan_patroli@data_maps')->name('patroli.laporan.data.maps');
Route::get('data/maps/lokasi/{tgl_mulai?}/{tgl_selesai?}/{id_karyawan?}/{id_cabang?}/{id_departemen?}/','Laporan_patroli@lokasi_aktivitas')->name('patroli.laporan.data.maps.lokasi'); Route::get('data/maps/lokasi/{tgl_mulai?}/{tgl_selesai?}/{id_karyawan?}/{id_cabang?}/{id_departemen?}/', 'Laporan_patroli@lokasi_aktivitas')->name('patroli.laporan.data.maps.lokasi');
Route::get('list-data/ajax/rekap/{tgl_mulai?}/{tgl_selesai?}/{id_karyawan?}/{id_cabang?}/{id_departemen?}/','Laporan_patroli@rekap_aktifitas')->name('patroli.laporan.listrekap'); Route::get('list-data/ajax/rekap/{tgl_mulai?}/{tgl_selesai?}/{id_karyawan?}/{id_cabang?}/{id_departemen?}/', 'Laporan_patroli@rekap_aktifitas')->name('patroli.laporan.listrekap');
Route::post('delete','Laporan_patroli@delete')->name('patroli.laporan.delete'); Route::post('delete', 'Laporan_patroli@delete')->name('patroli.laporan.delete');
}); });
# END Laporan Patroli # END Laporan Patroli
}); });
...@@ -2101,154 +2067,105 @@ Route::group('', ['middleware' => ['Otentikasi_login']], function () { ...@@ -2101,154 +2067,105 @@ Route::group('', ['middleware' => ['Otentikasi_login']], function () {
# START SOS # START SOS
Route::group('sos', function () { Route::group('sos', function () {
Route::get('', 'Laporan_sos@index')->name('sos.laporan.home'); Route::get('', 'Laporan_sos@index')->name('sos.laporan.home');
Route::get('detail/{id?}','Laporan_sos@detail')->name('sos.laporan.detail'); Route::get('detail/{id?}', 'Laporan_sos@detail')->name('sos.laporan.detail');
Route::get('data/tabel/{tgl_mulai?}/{tgl_selesai?}/{id_karyawan?}/{id_cabang?}/{id_departemen?}','Laporan_sos@data_tabel')->name('sos.laporan.data.tabel'); Route::get('data/tabel/{tgl_mulai?}/{tgl_selesai?}/{id_karyawan?}/{id_cabang?}/{id_departemen?}', 'Laporan_sos@data_tabel')->name('sos.laporan.data.tabel');
Route::get('download/excel/{tgl_mulai?}/{tgl_selesai?}/{id_karyawan?}/{id_cabang?}/{id_departemen?}','Laporan_sos@download_excel')->name('sos.laporan.download.excel'); Route::get('download/excel/{tgl_mulai?}/{tgl_selesai?}/{id_karyawan?}/{id_cabang?}/{id_departemen?}', 'Laporan_sos@download_excel')->name('sos.laporan.download.excel');
Route::get('list-data/ajax/{tgl_mulai?}/{tgl_selesai?}/{id_karyawan?}/{id_cabang?}/{id_departemen?}','Laporan_sos@list_data')->name('sos.laporan.listdata'); Route::get('list-data/ajax/{tgl_mulai?}/{tgl_selesai?}/{id_karyawan?}/{id_cabang?}/{id_departemen?}', 'Laporan_sos@list_data')->name('sos.laporan.listdata');
Route::get('detail_foto/{id?}', 'Laporan_sos@detail_foto')->name('sos.laporan.detail.foto'); Route::get('detail_foto/{id?}', 'Laporan_sos@detail_foto')->name('sos.laporan.detail.foto');
Route::post('delete','Laporan_sos@delete')->name('sos.laporan.delete'); Route::post('delete', 'Laporan_sos@delete')->name('sos.laporan.delete');
}); });
// Route::group('quick-setup', ['middleware' => 'Auth_menu:1'], function () {
// Route::get('', 'Quick_setup@index');
// Route::group('cabang', function () {
// Route::get('', 'Quick_setup_cabang@index')->name('quick-setup.cabang');
// Route::post('list_data', 'Quick_setup_cabang@list_data')->name('quick-setup.cabang.list_data');
// Route::post('save', 'Quick_setup_cabang@save')->name('quick-setup.cabang.save');
// Route::post('update', 'Quick_setup_cabang@update')->name('quick-setup.cabang.update');
// Route::post('delete', 'Quick_setup_cabang@delete')->name('quick-setup.cabang.delete');
// Route::get('detail/{id_cabang?}/{id_lokasi_kantor?}', 'Quick_setup_cabang@detail')->name('quick-setup.cabang.detail');
// });
// Route::group('departemen', function () {
// Route::get('', 'Quick_setup_departemen@index')->name('quick-setup.departemen');
// Route::post('list_data', 'Quick_setup_departemen@list_data')->name('quick-setup.departemen.list_data');
// Route::post('save', 'Quick_setup_departemen@save')->name('quick-setup.departemen.save');
// Route::post('update', 'Quick_setup_departemen@update')->name('quick-setup.departemen.update');
// Route::post('delete', 'Quick_setup_departemen@delete')->name('quick-setup.departemen.delete');
// Route::get('detail/{id_departemen?}', 'Quick_setup_departemen@detail')->name('quick-setup.departemen.detail');
// });
// Route::group('kepala', function () {
// Route::group('cabang', function () {
// Route::get('', 'Quick_setup_kepala_cabang@index')->name('quick-setup.kepala.cabang');
// Route::get('cek_nik/{id_karyawan?}', 'Quick_setup_kepala_cabang@cek_nik')->name('quick-setup.kepala.cabang.cek_nik');
// Route::post('list_data', 'Quick_setup_kepala_cabang@list_data')->name('quick-setup.kepala.cabang.list_data');
// Route::post('save', 'Quick_setup_kepala_cabang@save')->name('quick-setup.kepala.cabang.save');
// Route::post('update', 'Quick_setup_kepala_cabang@update')->name('quick-setup.kepala.cabang.update');
// Route::post('delete', 'Quick_setup_kepala_cabang@delete')->name('quick-setup.kepala.cabang.delete');
// Route::get('detail/{id_karyawan?}', 'Quick_setup_kepala_cabang@detail')->name('quick-setup.kepala.cabang.detail');
// });
// Route::group('departemen', function () {
// Route::get('', 'Quick_setup_kepala_departemen@index')->name('quick-setup.kepala.departemen');
// Route::post('list_data', 'Quick_setup_kepala_departemen@list_data')->name('quick-setup.kepala.departemen.list_data');
// Route::post('save', 'Quick_setup_kepala_departemen@save')->name('quick-setup.kepala.departemen.save');
// Route::post('update', 'Quick_setup_kepala_departemen@update')->name('quick-setup.kepala.departemen.update');
// Route::post('delete', 'Quick_setup_kepala_departemen@delete')->name('quick-setup.kepala.departemen.delete');
// Route::get('detail/{id_karyawan?}', 'Quick_setup_kepala_departemen@detail')->name('quick-setup.kepala.departemen.detail');
// });
// });
// Route::group('staff', function () {
// Route::get('', 'Quick_setup_staff@index')->name('quick-setup.staff');
// Route::post('list_data', 'Quick_setup_staff@list_data')->name('quick-setup.staff.list_data');
// Route::post('update', 'Quick_setup_staff@update')->name('quick-setup.staff.update');
// Route::post('delete', 'Quick_setup_staff@delete')->name('quick-setup.staff.delete');
// Route::post('save', 'Quick_setup_staff@save')->name('quick-setup.staff.save');
// });
// });
// END KELOLA ABSENSI
# START PKWT # START PKWT
Route::group('pkwt',['middleware' => ['Auth_paket:pkwt', 'Auth_menu:1'], 'namespace' => 'pkwt'],function(){ Route::group('pkwt', ['middleware' => ['Auth_paket:pkwt', 'Auth_menu:1'], 'namespace' => 'pkwt'], function () {
Route::group('perpanjangan', ['namespace' => 'perpanjang'], function() { Route::group('perpanjangan', ['namespace' => 'perpanjang'], function () {
Route::get('','home@index')->name('pkwt.home'); Route::get('', 'home@index')->name('pkwt.home');
Route::get('tabs/{tabs?}','home@tabs')->name('pkwt.tabs'); Route::get('tabs/{tabs?}', 'home@tabs')->name('pkwt.tabs');
Route::get('download/pdf/{id_pkwt?}/{jenis?}','home@download_pdf_web')->name('pkwt.download_pdf'); Route::get('download/pdf/{id_pkwt?}/{jenis?}', 'home@download_pdf_web')->name('pkwt.download_pdf');
Route::get('data/tabs/content/habis_masa_kerja/{tanggal_mulai?}/{tanggal_selesai?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}','Habis_masa_kerja@list_data')->name('pkwt.kayawan.tabs.content.habis.masa.kerja'); Route::get('data/tabs/content/habis_masa_kerja/{tanggal_mulai?}/{tanggal_selesai?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}', 'Habis_masa_kerja@list_data')->name('pkwt.kayawan.tabs.content.habis.masa.kerja');
Route::get('form/tambah/{id_karyawan?}','habis_masa_kerja@tambah_pkwt')->name('pkwt.form.tambah'); Route::get('form/tambah/{id_karyawan?}', 'habis_masa_kerja@tambah_pkwt')->name('pkwt.form.tambah');
Route::post('save','habis_masa_kerja@save')->name('pkwt.save'); Route::post('save', 'habis_masa_kerja@save')->name('pkwt.save');
Route::get('data/tabs/content/draft_pkwt/{tanggal_mulai?}/{tanggal_selesai?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}','Draft_pkwt@list_data')->name('pkwt.kayawan.tabs.content.draft.pkwt'); Route::get('data/tabs/content/draft_pkwt/{tanggal_mulai?}/{tanggal_selesai?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}', 'Draft_pkwt@list_data')->name('pkwt.kayawan.tabs.content.draft.pkwt');
Route::get('form/edit/{id_pkwt?}','Draft_pkwt@edit_pkwt')->name('pkwt.form.edit'); Route::get('form/edit/{id_pkwt?}', 'Draft_pkwt@edit_pkwt')->name('pkwt.form.edit');
Route::post('delete','Draft_pkwt@delete')->name('pkwt.delete'); Route::post('delete', 'Draft_pkwt@delete')->name('pkwt.delete');
Route::post('kirim-draft','Draft_pkwt@kirim_draft')->name('pkwt.kirim.draft'); Route::post('kirim-draft', 'Draft_pkwt@kirim_draft')->name('pkwt.kirim.draft');
Route::get('data/tabs/content/verifikasi/{tanggal_mulai?}/{tanggal_selesai?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}','Verifikasi@list_data')->name('pkwt.kayawan.tabs.content.verifikasi'); Route::get('data/tabs/content/verifikasi/{tanggal_mulai?}/{tanggal_selesai?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}', 'Verifikasi@list_data')->name('pkwt.kayawan.tabs.content.verifikasi');
Route::get('verifikasi/form/{id_pkwt?}','Verifikasi@verifikasi_form')->name('pkwt.verifikasi.form'); Route::get('verifikasi/form/{id_pkwt?}', 'Verifikasi@verifikasi_form')->name('pkwt.verifikasi.form');
Route::post('verifikasi/approve','Verifikasi@verifikasi_approve')->name('pkwt.verifikasi.approve'); Route::post('verifikasi/approve', 'Verifikasi@verifikasi_approve')->name('pkwt.verifikasi.approve');
Route::get('verifikasi/form-all','Verifikasi@verifikasi_form_all')->name('pkwt.verifikasi.form.all'); Route::get('verifikasi/form-all', 'Verifikasi@verifikasi_form_all')->name('pkwt.verifikasi.form.all');
Route::post('verifikasi/approve-all','Verifikasi@verifikasi_approve_all')->name('pkwt.verifikasi.approve.all'); Route::post('verifikasi/approve-all', 'Verifikasi@verifikasi_approve_all')->name('pkwt.verifikasi.approve.all');
Route::get('verifikasi/onchange/path-ttd','Verifikasi@onchange_path_ttd')->name('pkwt.verifikasi.onchange.path.ttd'); Route::get('verifikasi/onchange/path-ttd', 'Verifikasi@onchange_path_ttd')->name('pkwt.verifikasi.onchange.path.ttd');
Route::group('import', function() { Route::group('import', function () {
Route::get('','import@index')->name('pkwt.import.home'); Route::get('', 'import@index')->name('pkwt.import.home');
Route::get('list-data','import@list_data')->name('pkwt.import.list.data'); Route::get('list-data', 'import@list_data')->name('pkwt.import.list.data');
Route::get('form/template','import@form_template')->name('pkwt.import.form.template'); Route::get('form/template', 'import@form_template')->name('pkwt.import.form.template');
Route::get('template-excel','import@template_excel')->name('pkwt.import.template.excel'); Route::get('template-excel', 'import@template_excel')->name('pkwt.import.template.excel');
Route::get('form/edit/{id_pkwt_temp?}','import@form_edit')->name('pkwt.import.form.edit'); Route::get('form/edit/{id_pkwt_temp?}', 'import@form_edit')->name('pkwt.import.form.edit');
Route::post('update','import@update')->name('pkwt.import.update'); Route::post('update', 'import@update')->name('pkwt.import.update');
Route::post('delete','import@delete')->name('pkwt.import.delete'); Route::post('delete', 'import@delete')->name('pkwt.import.delete');
Route::post('preview','import@import_preview')->name('pkwt.import.preview'); Route::post('preview', 'import@import_preview')->name('pkwt.import.preview');
Route::post('simpan-semua','import@simpan_semua')->name('pkwt.import.simpan.semua'); Route::post('simpan-semua', 'import@simpan_semua')->name('pkwt.import.simpan.semua');
Route::post('delete-semua','import@delete_semua')->name('pkwt.import.delete.semua'); Route::post('delete-semua', 'import@delete_semua')->name('pkwt.import.delete.semua');
}); });
}); });
Route::group('baru', ['namespace' => 'baru'], function() { Route::group('baru', ['namespace' => 'baru'], function () {
Route::get('','home@index')->name('pkwt.baru.home'); Route::get('', 'home@index')->name('pkwt.baru.home');
Route::get('tabs/{tabs?}','home@tabs')->name('pkwt.baru.tabs'); Route::get('tabs/{tabs?}', 'home@tabs')->name('pkwt.baru.tabs');
Route::get('download/pdf/{id_pkwt?}/{jenis?}','home@download_pdf_web')->name('pkwt.baru.download_pdf'); Route::get('download/pdf/{id_pkwt?}/{jenis?}', 'home@download_pdf_web')->name('pkwt.baru.download_pdf');
Route::get('data/tabs/content/habis_masa_kerja/{tanggal_mulai?}/{tanggal_selesai?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}','Habis_masa_kerja@list_data')->name('pkwt.baru.kayawan.tabs.content.habis.masa.kerja'); Route::get('data/tabs/content/habis_masa_kerja/{tanggal_mulai?}/{tanggal_selesai?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}', 'Habis_masa_kerja@list_data')->name('pkwt.baru.kayawan.tabs.content.habis.masa.kerja');
Route::get('form/tambah/{id_karyawan?}','habis_masa_kerja@tambah_pkwt')->name('pkwt.baru.form.tambah'); Route::get('form/tambah/{id_karyawan?}', 'habis_masa_kerja@tambah_pkwt')->name('pkwt.baru.form.tambah');
Route::get('form/parameter/{id_template?}/{id_pkwt?}', 'habis_masa_kerja@form_parameter')->name('pkwt.baru.form.parameter'); Route::get('form/parameter/{id_template?}/{id_pkwt?}', 'habis_masa_kerja@form_parameter')->name('pkwt.baru.form.parameter');
Route::post('save','habis_masa_kerja@save')->name('pkwt.baru.save'); Route::post('save', 'habis_masa_kerja@save')->name('pkwt.baru.save');
Route::get('data/tabs/content/draft_pkwt/{tanggal_mulai?}/{tanggal_selesai?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}','Draft_pkwt@list_data')->name('pkwt.baru.kayawan.tabs.content.draft.pkwt'); Route::get('data/tabs/content/draft_pkwt/{tanggal_mulai?}/{tanggal_selesai?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}', 'Draft_pkwt@list_data')->name('pkwt.baru.kayawan.tabs.content.draft.pkwt');
Route::get('form/edit/{id_pkwt?}','Draft_pkwt@edit_pkwt')->name('pkwt.baru.form.edit'); Route::get('form/edit/{id_pkwt?}', 'Draft_pkwt@edit_pkwt')->name('pkwt.baru.form.edit');
Route::post('delete','Draft_pkwt@delete')->name('pkwt.baru.delete'); Route::post('delete', 'Draft_pkwt@delete')->name('pkwt.baru.delete');
Route::post('kirim-draft','Draft_pkwt@kirim_draft')->name('pkwt.baru.kirim.draft'); Route::post('kirim-draft', 'Draft_pkwt@kirim_draft')->name('pkwt.baru.kirim.draft');
Route::get('data/tabs/content/verifikasi/{tanggal_mulai?}/{tanggal_selesai?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}','Verifikasi@list_data')->name('pkwt.baru.kayawan.tabs.content.verifikasi'); Route::get('data/tabs/content/verifikasi/{tanggal_mulai?}/{tanggal_selesai?}/{id_cabang?}/{id_departemen?}/{id_karyawan?}', 'Verifikasi@list_data')->name('pkwt.baru.kayawan.tabs.content.verifikasi');
Route::get('verifikasi/form/{id_pkwt?}','Verifikasi@verifikasi_form')->name('pkwt.baru.verifikasi.form'); Route::get('verifikasi/form/{id_pkwt?}', 'Verifikasi@verifikasi_form')->name('pkwt.baru.verifikasi.form');
Route::post('verifikasi/approve','Verifikasi@verifikasi_approve')->name('pkwt.baru.verifikasi.approve'); Route::post('verifikasi/approve', 'Verifikasi@verifikasi_approve')->name('pkwt.baru.verifikasi.approve');
Route::get('verifikasi/form-all','Verifikasi@verifikasi_form_all')->name('pkwt.baru.verifikasi.form.all'); Route::get('verifikasi/form-all', 'Verifikasi@verifikasi_form_all')->name('pkwt.baru.verifikasi.form.all');
Route::post('verifikasi/approve-all','Verifikasi@verifikasi_approve_all')->name('pkwt.baru.verifikasi.approve.all'); Route::post('verifikasi/approve-all', 'Verifikasi@verifikasi_approve_all')->name('pkwt.baru.verifikasi.approve.all');
Route::get('verifikasi/onchange/path-ttd','Verifikasi@onchange_path_ttd')->name('pkwt.baru.verifikasi.onchange.path.ttd'); Route::get('verifikasi/onchange/path-ttd', 'Verifikasi@onchange_path_ttd')->name('pkwt.baru.verifikasi.onchange.path.ttd');
Route::group('import', function() { Route::group('import', function () {
Route::get('','import@index')->name('pkwt.baru.import.home'); Route::get('', 'import@index')->name('pkwt.baru.import.home');
Route::get('list-data','import@list_data')->name('pkwt.baru.import.list.data'); Route::get('list-data', 'import@list_data')->name('pkwt.baru.import.list.data');
Route::get('form/template','import@form_template')->name('pkwt.baru.import.form.template'); Route::get('form/template', 'import@form_template')->name('pkwt.baru.import.form.template');
Route::get('template-excel','import@template_excel')->name('pkwt.baru.import.template.excel'); Route::get('template-excel', 'import@template_excel')->name('pkwt.baru.import.template.excel');
Route::get('form/edit/{id_pkwt_temp?}','import@form_edit')->name('pkwt.baru.import.form.edit'); Route::get('form/edit/{id_pkwt_temp?}', 'import@form_edit')->name('pkwt.baru.import.form.edit');
Route::post('update','import@update')->name('pkwt.baru.import.update'); Route::post('update', 'import@update')->name('pkwt.baru.import.update');
Route::post('delete','import@delete')->name('pkwt.baru.import.delete'); Route::post('delete', 'import@delete')->name('pkwt.baru.import.delete');
Route::post('preview','import@import_preview')->name('pkwt.baru.import.preview'); Route::post('preview', 'import@import_preview')->name('pkwt.baru.import.preview');
Route::post('simpan-semua','import@simpan_semua')->name('pkwt.baru.import.simpan.semua'); Route::post('simpan-semua', 'import@simpan_semua')->name('pkwt.baru.import.simpan.semua');
Route::post('delete-semua','import@delete_semua')->name('pkwt.baru.import.delete.semua'); Route::post('delete-semua', 'import@delete_semua')->name('pkwt.baru.import.delete.semua');
}); });
}); });
Route::group('master', ['namespace' => 'master'], function(){ Route::group('master', ['namespace' => 'master'], function () {
Route::group('ttd',function(){ Route::group('ttd', function () {
Route::group('direktur',function(){ Route::group('direktur', function () {
Route::get('','ttd@index')->name('pkwt.master.ttd.direktur.home'); Route::get('', 'ttd@index')->name('pkwt.master.ttd.direktur.home');
Route::post('list_data','ttd@list_data')->name('pkwt.master.ttd.direktur.list.data'); Route::post('list_data', 'ttd@list_data')->name('pkwt.master.ttd.direktur.list.data');
Route::get('form/tambah','ttd@form')->name('pkwt.master.ttd.direktur.form.tambah'); Route::get('form/tambah', 'ttd@form')->name('pkwt.master.ttd.direktur.form.tambah');
Route::get('form/edit/{id?}','ttd@form')->name('pkwt.master.ttd.direktur.form.edit'); Route::get('form/edit/{id?}', 'ttd@form')->name('pkwt.master.ttd.direktur.form.edit');
Route::get('form/hapus/{id?}','ttd@form')->name('pkwt.master.ttd.direktur.form.hapus'); Route::get('form/hapus/{id?}', 'ttd@form')->name('pkwt.master.ttd.direktur.form.hapus');
Route::post('save','ttd@save')->name('pkwt.master.ttd.direktur.save'); Route::post('save', 'ttd@save')->name('pkwt.master.ttd.direktur.save');
Route::post('delete','ttd@delete')->name('pkwt.master.ttd.direktur.delete'); Route::post('delete', 'ttd@delete')->name('pkwt.master.ttd.direktur.delete');
}); });
}); });
Route::group('template', function() Route::group('template', function () {
{
Route::get('', 'template@index')->name('pkwt.master.template'); Route::get('', 'template@index')->name('pkwt.master.template');
Route::get('list_data', 'template@list_data')->name('pkwt.master.template.list-data'); Route::get('list_data', 'template@list_data')->name('pkwt.master.template.list-data');
Route::get('form/tambah', 'template@form')->name('pkwt.master.template.form.tambah'); Route::get('form/tambah', 'template@form')->name('pkwt.master.template.form.tambah');
......
...@@ -8,34 +8,34 @@ ...@@ -8,34 +8,34 @@
} }
</style> </style>
<div class="btn-group mb-1"> <div class="btn-group mb-1">
<button id="excel" class="btn btn-primary text-white ladda-button" data-style="expand-left"><i class="fa fa-file-excel-o"></i> DOWNLOAD</button> <button id="excel_cortax" data-format="bpmp" class="btn btn-primary text-white ladda-button"
</div> data-style="expand-left"><i class="fa fa-file-excel-o"></i> DOWNLOAD FORMAT CORTAX <span
<div class="btn-group mb-1"> class="badge badge-secondary">BPMP</span></button>
<button id="excel_djp" class="btn btn-biru text-white ladda-button" data-style="expand-left"><i class="fa fa-file-excel-o"></i> DOWNLOAD FORMAT DJP 1721</button>
</div> </div>
<!-- <div class="btn-group mb-1">
<button id="excel_djp" class="btn btn-biru text-white ladda-button" data-style="expand-left"><i
class="fa fa-file-excel-o"></i> DOWNLOAD FORMAT DJP 1721</button>
</div> -->
<div class="table-responsive"> <div class="table-responsive">
<table id="list_data" class="table table-striped table-bordered" style="width:100%"> <table id="list_data" class="table table-striped table-bordered" style="width:100%">
<thead> <thead>
<tr> <tr>
<th class="align-top">No</th> <th class="align-top">No</th>
<th class="align-top">Tgl Pemotongan</th> <th class="align-top">Masa Pajak</th>
<th class="align-top">Penerima Penghasilan?</th> <th class="align-top">Tahun Pajak</th>
<th class="align-top">NPWP</th> <th class="align-top">Status Pegawai</th>
<th class="align-top">Nomor KTP</th> <th class="align-top">Nama Pegawai</th>
<th class="align-top">Nama Penerima Penghasilan<br>Sesuai KTP</th> <th class="align-top">NPWP/NIK/TIN</th>
<th class="align-top">Alamat Penerima Penghasilan<br>Sesuai KTP</th> <th class="align-top">Nomor Passport</th>
<th class="align-top">Status</th>
<th class="align-top">Posisi</th>
<th class="align-top">Sertifikat/Fasilitas</th>
<th class="align-top">Kode Objek Pajak</th> <th class="align-top">Kode Objek Pajak</th>
<th class="align-top">Penandatangan Menggunakan?</th> <th class="align-top">Penghasilan Kotor</th>
<th class="align-top">NPWP Penandatangan</th> <th class="align-top">Tarif</th>
<th class="align-top">Nomor KTP Penandatangan</th> <th class="align-top">ID TKU</th>
<th class="align-top">Kode PTKP</th> <th class="align-top">Tgl Pemotongan</th>
<th class="align-top">Pegawai Harian?</th>
<th class="align-top">Menggunakan Gross Up?</th>
<th class="align-top">Penghasilan Bruto</th>
<th class="align-top">Mendapatkan Fasilitas?</th>
<th class="align-top">Nomor SKB/Nomor DTP</th>
<th class="align-top">PPH21</th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
...@@ -44,20 +44,18 @@ ...@@ -44,20 +44,18 @@
</div> </div>
<script> <script>
$(function() { $(function () {
$("#excel").click(function() { $("#excel_cortax").click(function () {
let urlExcel = "<?= route('payroll.laporan.pph.download.excel', ['bulan' => $bulan, 'id_cabang' => $id_cabang, 'id_departemen' => $id_departemen, 'id_karyawan' => $id_karyawan]) ?>"; let format = $(this).data('format');
downloadFile(urlExcel, this); if (format === 'bpmp') {
}); let urlExcel = "<?= route('payroll.laporan.pph.download.excel.cortax_bpmp', ['bulan' => $bulan, 'id_cabang' => $id_cabang, 'id_departemen' => $id_departemen, 'id_karyawan' => $id_karyawan]) ?>";
downloadFile(urlExcel, this);
$("#excel_djp").click(function() { }
let urlExcel = "<?= route('payroll.laporan.pph.download.excel.djp', ['bulan' => $bulan, 'id_cabang' => $id_cabang, 'id_departemen' => $id_departemen, 'id_karyawan' => $id_karyawan]) ?>";
downloadFile(urlExcel, this);
}); });
// LIST DATA // LIST DATA
$.fn.dataTableExt.sErrMode = 'none'; $.fn.dataTableExt.sErrMode = 'none';
list_data = $('#list_data').on('error.dt', function(e, settings, techNote, message) { list_data = $('#list_data').on('error.dt', function (e, settings, techNote, message) {
if (confirm('Terjadi kesalahan saat memproses data, muat ulang halaman ?')) { if (confirm('Terjadi kesalahan saat memproses data, muat ulang halaman ?')) {
window.location.reload(); window.location.reload();
} }
...@@ -69,9 +67,9 @@ ...@@ -69,9 +67,9 @@
'info': true, 'info': true,
'scrollX': true, 'scrollX': true,
'autoWidth': false, 'autoWidth': false,
'fixedColumns': { // 'fixedColumns': {
leftColumns: 2 // leftColumns: 2
}, // },
'language': { 'language': {
'url': '<?= base_url("assets/plugins/datatables/dataTables-language-id.json") ?>', 'url': '<?= base_url("assets/plugins/datatables/dataTables-language-id.json") ?>',
'sEmptyTable': 'Tidak ada data untuk ditampilkan', 'sEmptyTable': 'Tidak ada data untuk ditampilkan',
...@@ -84,24 +82,21 @@ ...@@ -84,24 +82,21 @@
"ajax": { "ajax": {
"url": "<?= route('payroll.laporan.pph.list.data', ['bulan' => $bulan, 'id_cabang' => $id_cabang, 'id_departemen' => $id_departemen, 'id_karyawan' => $id_karyawan]) ?>", "url": "<?= route('payroll.laporan.pph.list.data', ['bulan' => $bulan, 'id_cabang' => $id_cabang, 'id_departemen' => $id_departemen, 'id_karyawan' => $id_karyawan]) ?>",
"type": "GET", "type": "GET",
"data": function(d) { "data": function (d) {
delete d.columns; delete d.columns;
}, },
"complete": function(data) { "complete": function (data) {
reconfigure(data); reconfigure(data);
} }
}, },
"aoColumnDefs": [{ "aoColumnDefs": [
"aTargets": [0],
"bSortable": false
},
{ {
"aTargets": [3, 4, 5, 6, 9, 10], "aTargets": [3, 4, 5, 6, 7, 8, 9, 10, -1, -2],
"className": "text-left" "className": "text-left"
}, },
{ {
"aTargets": [14, 17], "aTargets": [11],
"className": "text-right" "className": "text-right"
}, },
{ {
...@@ -109,12 +104,12 @@ ...@@ -109,12 +104,12 @@
"className": "text-center" "className": "text-center"
} }
], ],
"fnRowCallback": function(nRow, aData, iDisplayIndex, iDisplayIndexFull) { "fnRowCallback": function (nRow, aData, iDisplayIndex, iDisplayIndexFull) {
$('td:eq(-1)', nRow).css({ // $('td:eq(-1)', nRow).css({
'background': '#F5F5DC' // 'background': '#F5F5DC'
}); // });
} }
}); });
// END LIST DATA // END LIST DATA
}); });
</script> </script>
\ No newline at end of file
<script> <script>
$(function() { $(function () {
<?php if (isset($pengaturan_pph21)) : ?> <?php if (isset($pengaturan_pph21)): ?>
$("#pot_pph_net").prop("disabled", true); $("#pot_pph_net").prop("disabled", true);
$("#pot_pph_gross").prop("disabled", true); $("#pot_pph_gross").prop("disabled", true);
$("#nama_pemotong").prop("disabled", true); $("#nama_pemotong").prop("disabled", true);
$("#jenis_pemotong").prop("disabled", true); $("#jenis_pemotong").prop("disabled", true);
$("#nomor_pemotong").prop("disabled", true); $("#nomor_pemotong").prop("disabled", true);
$("#id_tku").prop("disabled", true);
<?php endif; ?> <?php endif; ?>
}); });
</script> </script>
...@@ -19,11 +20,13 @@ ...@@ -19,11 +20,13 @@
<div class="col-md-6"> <div class="col-md-6">
<div class="form-group"> <div class="form-group">
<label class="label text-center"> <label class="label text-center">
<input disabled type="radio" class="disable-radio" id="aktif_ya" name="aktif" value="1" <?= ((isset($pengaturan_pph21) && $pengaturan_pph21->aktif == "1") ? "checked" : "") ?>> <input disabled type="radio" class="disable-radio" id="aktif_ya" name="aktif" value="1"
<?= ((isset($pengaturan_pph21) && $pengaturan_pph21->aktif == "1") ? "checked" : "") ?>>
<span class="text">Ya</span> <span class="text">Ya</span>
</label> </label>
<label class="label text-center ml-2"> <label class="label text-center ml-2">
<input disabled type="radio" class="disable-radio" id="aktif_tidak" name="aktif" value="0" <?= ((isset($pengaturan_pph21) && $pengaturan_pph21->aktif == "0") ? "checked" : "") ?>> <input disabled type="radio" class="disable-radio" id="aktif_tidak" name="aktif" value="0"
<?= ((isset($pengaturan_pph21) && $pengaturan_pph21->aktif == "0") ? "checked" : "") ?>>
<span class="text">Tidak</span> <span class="text">Tidak</span>
</label> </label>
<div id="msg_error_aktif" style="display: none;"> <div id="msg_error_aktif" style="display: none;">
...@@ -39,11 +42,13 @@ ...@@ -39,11 +42,13 @@
<div class="col-md-6"> <div class="col-md-6">
<div class="form-group"> <div class="form-group">
<label class="label text-center"> <label class="label text-center">
<input type="radio" class="disable-radio" id="pot_pph_net" name="pot_pph" value="net" <?= ((isset($pengaturan_pph21) && $pengaturan_pph21->jenis == "net") ? "checked" : "") ?>> <input type="radio" class="disable-radio" id="pot_pph_net" name="pot_pph" value="net"
<?= ((isset($pengaturan_pph21) && $pengaturan_pph21->jenis == "net") ? "checked" : "") ?>>
<span class="text">NETT</span> <span class="text">NETT</span>
</label> </label>
<label class="label text-center ml-2"> <label class="label text-center ml-2">
<input type="radio" class="disable-radio" id="pot_pph_gross" name="pot_pph" value="gross" <?= ((isset($pengaturan_pph21) && $pengaturan_pph21->jenis == "gross") ? "checked" : "") ?>> <input type="radio" class="disable-radio" id="pot_pph_gross" name="pot_pph" value="gross"
<?= ((isset($pengaturan_pph21) && $pengaturan_pph21->jenis == "gross") ? "checked" : "") ?>>
<span class="text">GROSS</span> <span class="text">GROSS</span>
</label> </label>
<div id="msg_error_jenis_pot_pph" style="display: none;"> <div id="msg_error_jenis_pot_pph" style="display: none;">
...@@ -58,7 +63,8 @@ ...@@ -58,7 +63,8 @@
</div> </div>
<div class="col-md-6"> <div class="col-md-6">
<div class="form-group"> <div class="form-group">
<input type="text" name="nama_pemotong" id="nama_pemotong" class="form-control" value="<?= ($pengaturan_pph21->nm_pemotong) ?: '' ?>"> <input type="text" name="nama_pemotong" id="nama_pemotong" class="form-control"
value="<?= ($pengaturan_pph21->nm_pemotong) ?: '' ?>">
<div id="msg_error_nama_pemotong" style="display: none; margin-top: 4px"> <div id="msg_error_nama_pemotong" style="display: none; margin-top: 4px">
<label style='color:crimson; font-size:smaller'></label> <label style='color:crimson; font-size:smaller'></label>
</div> </div>
...@@ -74,16 +80,21 @@ ...@@ -74,16 +80,21 @@
<div class="row"> <div class="row">
<div class="col-md-4"> <div class="col-md-4">
<select name="jenis_pemotong" id="jenis_pemotong" class="form-control"> <select name="jenis_pemotong" id="jenis_pemotong" class="form-control">
<option value="" <?= (!isset($pengaturan_pph21)) ? 'selected' : '' ?>>Pilih jenis pemotong</option> <option value="" <?= (!isset($pengaturan_pph21)) ? 'selected' : '' ?>>Pilih jenis pemotong
<option value="NPWP" <?= ($pengaturan_pph21->jenis_pemotong == 'NPWP') ? 'selected' : '' ?>>NPWP</option> </option>
<option value="NIK" <?= ($pengaturan_pph21->jenis_pemotong == 'NIK') ? 'selected' : '' ?>>NIK (Nomor KTP)</option> <option value="NPWP" <?= ($pengaturan_pph21->jenis_pemotong == 'NPWP') ? 'selected' : '' ?>>
NPWP</option>
<option value="NIK" <?= ($pengaturan_pph21->jenis_pemotong == 'NIK') ? 'selected' : '' ?>>NIK
(Nomor KTP)</option>
</select> </select>
<div id="msg_error_jenis_pemotong" style="display: none; margin-top: 4px"> <div id="msg_error_jenis_pemotong" style="display: none; margin-top: 4px">
<label style='color:crimson; font-size:smaller'></label> <label style='color:crimson; font-size:smaller'></label>
</div> </div>
</div> </div>
<div class="col-md-8"> <div class="col-md-8">
<input type="text" name="nomor_pemotong" onkeyup="formatangka(this, '');" id="nomor_pemotong" class="form-control" placeholder="Nomor NPWP/Nomor KTP" value="<?= ($pengaturan_pph21->jenis_pemotong == 'NPWP') ? $pengaturan_pph21->npwp : (($pengaturan_pph21->jenis_pemotong == "NIK") ? $pengaturan_pph21->no_ktp : '') ?>"> <input type="text" name="nomor_pemotong" oninput="formatangka(this, '');" id="nomor_pemotong"
class="form-control" placeholder="Nomor NPWP/Nomor KTP"
value="<?= ($pengaturan_pph21->jenis_pemotong == 'NPWP') ? $pengaturan_pph21->npwp : (($pengaturan_pph21->jenis_pemotong == "NIK") ? $pengaturan_pph21->no_ktp : '') ?>">
<div id="msg_error_nomor_pemotong" style="display: none; margin-top: 4px"> <div id="msg_error_nomor_pemotong" style="display: none; margin-top: 4px">
<label style='color:crimson; font-size:smaller'></label> <label style='color:crimson; font-size:smaller'></label>
</div> </div>
...@@ -91,13 +102,30 @@ ...@@ -91,13 +102,30 @@
</div> </div>
</div> </div>
</div> </div>
</div>
<div class="row">
<div class="col-md-2">
<label for="id_tku">ID Tempat Kegiatan Usaha (TKU) <span class="text-danger">*</span></label>
</div>
<div class="col-md-6">
<div class="form-group">
<input type="text" name="id_tku" oninput="formatangka(this, '');" id="id_tku" class="form-control"
placeholder="ID TKU" value="<?= $pengaturan_pph21->id_tku ?>">
<div id="msg_error_id_tku" style="display: none; margin-top: 4px">
<label style='color:crimson; font-size:smaller'></label>
</div>
</div>
</div>
<!-- button --> <!-- button -->
<div class="col-md-4"> <div class="col-md-4">
<div class="form-group"> <div class="form-group">
<button id="btn-batal" class="btn btn-secondary w-120" style="display:none"><i class="fa fa-close"> </i> BATAL</button> <button id="btn-batal" class="btn btn-secondary w-120" style="display:none"><i class="fa fa-close"> </i>
<button id="btn-simpan" class="btn btn-primary w-120 ladda-button" <?= (isset($pengaturan_pph21)) ? 'style="display:none"' : '' ?> data-style="expand-left" for-data="<?= (isset($pengaturan_pph21)) ? 'update' : 'store' ?>"><i class="fa fa-save "> </i> SIMPAN</button> BATAL</button>
<button id="btn-simpan" class="btn btn-primary w-120 ladda-button" <?= (isset($pengaturan_pph21)) ? 'style="display:none"' : '' ?> data-style="expand-left"
for-data="<?= (isset($pengaturan_pph21)) ? 'update' : 'store' ?>"><i class="fa fa-save "> </i>
SIMPAN</button>
<button id="btn-edit" class="btn btn-warning w-120" <?= (!isset($pengaturan_pph21)) ? 'style="display:none"' : '' ?>><i class="fa fa-edit (alias) "> </i> EDIT</button> <button id="btn-edit" class="btn btn-warning w-120" <?= (!isset($pengaturan_pph21)) ? 'style="display:none"' : '' ?>><i class="fa fa-edit (alias) "> </i> EDIT</button>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
\ No newline at end of file
<script type="text/javascript"> <script type="text/javascript">
$(function() { $(function () {
loadFormPph21(); loadFormPph21();
// reconfigure(); // reconfigure();
$.fn.dataTable.ext.errMode = 'throw'; $.fn.dataTable.ext.errMode = 'throw';
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
"ajax": { "ajax": {
"url": "<?= route("payroll.pengaturan.potongan.absensi.data") ?>", "url": "<?= route("payroll.pengaturan.potongan.absensi.data") ?>",
"type": "POST", "type": "POST",
"complete": function(data) { "complete": function (data) {
reconfigure(data); reconfigure(data);
} }
}, },
...@@ -35,7 +35,7 @@ ...@@ -35,7 +35,7 @@
"aTargets": [0, 1, 2, 3, 4, 5, 6], "aTargets": [0, 1, 2, 3, 4, 5, 6],
"bSortable": false "bSortable": false
}], }],
"fnRowCallback": function(nRow, aData, iDisplayIndex, iDisplayIndexFull) { "fnRowCallback": function (nRow, aData, iDisplayIndex, iDisplayIndexFull) {
$('td:eq(0)', nRow).css({ $('td:eq(0)', nRow).css({
'text-align': 'center', 'text-align': 'center',
'width': '10px' 'width': '10px'
...@@ -72,7 +72,7 @@ ...@@ -72,7 +72,7 @@
}); });
$(document).on('click', '.btn_edit_nominal', function() { $(document).on('click', '.btn_edit_nominal', function () {
const nominal = $(this).parent().closest(".nominal-edit"); const nominal = $(this).parent().closest(".nominal-edit");
const inputVal = nominal.children()[0].value; const inputVal = nominal.children()[0].value;
const lastVal = nominal.parent().closest(".nominal-form").children(".nominal-with-button")[0].children[0].innerText; const lastVal = nominal.parent().closest(".nominal-form").children(".nominal-with-button")[0].children[0].innerText;
...@@ -82,7 +82,7 @@ ...@@ -82,7 +82,7 @@
nominal.attr("style", "display:none"); nominal.attr("style", "display:none");
nominal.parent().closest(".nominal-form").children(".nominal-with-button").show(); nominal.parent().closest(".nominal-form").children(".nominal-with-button").show();
} else { } else {
$('#tampil_form').load("<?= route("payroll.pengaturan.potongan.absensi.form.update") ?>", function() { $('#tampil_form').load("<?= route("payroll.pengaturan.potongan.absensi.form.update") ?>", function () {
$('#modal_form').modal('show'); $('#modal_form').modal('show');
if (btnFor == "nominal") { if (btnFor == "nominal") {
$(".title").html("Apakah Anda ingin mengubah nominal potongan menjadi <b>Rp " + inputVal + "</b> ?"); $(".title").html("Apakah Anda ingin mengubah nominal potongan menjadi <b>Rp " + inputVal + "</b> ?");
...@@ -105,14 +105,14 @@ ...@@ -105,14 +105,14 @@
} }
}); });
$(document).on('click', '.btn_edit', function() { $(document).on('click', '.btn_edit', function () {
$(this).hide(); $(this).hide();
$(this).closest(".nominal-form").children(".nominal-edit")[0].removeAttribute("style"); $(this).closest(".nominal-form").children(".nominal-edit")[0].removeAttribute("style");
$(this).closest(".nominal-form").children(".nominal-edit")[0].children[0].focus(); $(this).closest(".nominal-form").children(".nominal-edit")[0].children[0].focus();
}); });
// PROSES SAVE // PROSES SAVE
$(document).on("click", ".btn_save", function(e) { $(document).on("click", ".btn_save", function (e) {
e.preventDefault(); e.preventDefault();
$('#message').html(""); $('#message').html("");
var loading = Ladda.create(this); var loading = Ladda.create(this);
...@@ -135,13 +135,13 @@ ...@@ -135,13 +135,13 @@
url: "<?= route('payroll.pengaturan.potongan.absensi.save') ?>", url: "<?= route('payroll.pengaturan.potongan.absensi.save') ?>",
data: param, data: param,
dataType: 'JSON', dataType: 'JSON',
success: function(result) { success: function (result) {
loading.stop(); loading.stop();
if (result.success == true) { if (result.success == true) {
showMsg(result.message); showMsg(result.message);
} }
}, },
error: function() { error: function () {
loading.stop(); loading.stop();
showMsg('error', false); showMsg('error', false);
} }
...@@ -149,7 +149,7 @@ ...@@ -149,7 +149,7 @@
}); });
// SWITCH ON / OFF // SWITCH ON / OFF
$(document).on('change', ':checkbox', function(e) { $(document).on('change', ':checkbox', function (e) {
var id_p = $(this).attr('id'); var id_p = $(this).attr('id');
var for_flag = $(this).attr('data-flag'); var for_flag = $(this).attr('data-flag');
var status = $(this).attr('value'); var status = $(this).attr('value');
...@@ -181,7 +181,7 @@ ...@@ -181,7 +181,7 @@
} }
} }
$('#tampil_form').load("<?= route("payroll.pengaturan.potongan.absensi.form.update") ?>", function() { $('#tampil_form').load("<?= route("payroll.pengaturan.potongan.absensi.form.update") ?>", function () {
$('#modal_form').modal('show'); $('#modal_form').modal('show');
if (for_flag == "flag_persentase_gapok" && status == "1") { if (for_flag == "flag_persentase_gapok" && status == "1") {
$("#tampil_form #form_input").removeAttr("style"); $("#tampil_form #form_input").removeAttr("style");
...@@ -199,12 +199,12 @@ ...@@ -199,12 +199,12 @@
$(".btn_save_flag").append('SIMPAN'); $(".btn_save_flag").append('SIMPAN');
// CLOSE // CLOSE
$(document).on("click", ".close", function() { $(document).on("click", ".close", function () {
list_data.ajax.reload(); list_data.ajax.reload();
}); });
// PROSES UPDATE FLAG // PROSES UPDATE FLAG
$(".btn_save_flag").on("click", function(e) { $(".btn_save_flag").on("click", function (e) {
e.preventDefault(); e.preventDefault();
$('#message').html(""); $('#message').html("");
var loading = Ladda.create(this); var loading = Ladda.create(this);
...@@ -239,13 +239,13 @@ ...@@ -239,13 +239,13 @@
url: "<?= route('payroll.pengaturan.potongan.absensi.update_flag') ?>", url: "<?= route('payroll.pengaturan.potongan.absensi.update_flag') ?>",
data: param, data: param,
dataType: 'JSON', dataType: 'JSON',
success: function(result) { success: function (result) {
loading.stop(); loading.stop();
if (result.success == true) { if (result.success == true) {
showMsg(result.message); showMsg(result.message);
} }
}, },
error: function() { error: function () {
loading.stop(); loading.stop();
showMsg('error', false); showMsg('error', false);
} }
...@@ -255,7 +255,7 @@ ...@@ -255,7 +255,7 @@
}); });
// PPH21 // PPH21
$(document).on("click", "#btn-simpan", function(e) { $(document).on("click", "#btn-simpan", function (e) {
e.preventDefault(); e.preventDefault();
const loading = Ladda.create(this); const loading = Ladda.create(this);
loading.start(); loading.start();
...@@ -267,13 +267,14 @@ ...@@ -267,13 +267,14 @@
params.nama_pemotong = $("#nama_pemotong").val(); params.nama_pemotong = $("#nama_pemotong").val();
params.jenis_pemotong = $("#jenis_pemotong").val(); params.jenis_pemotong = $("#jenis_pemotong").val();
params.nomor_pemotong = $("#nomor_pemotong").val(); params.nomor_pemotong = $("#nomor_pemotong").val();
params.id_tku = $("#id_tku").val();
$.ajax({ $.ajax({
type: 'POST', type: 'POST',
url: "<?= route('payroll.pengaturan.form.pph.save') ?>", url: "<?= route('payroll.pengaturan.form.pph.save') ?>",
data: params, data: params,
dataType: 'JSON', dataType: 'JSON',
success: function(result) { success: function (result) {
loading.stop(); loading.stop();
// set default style // set default style
$("input, select").removeClass("border-danger"); $("input, select").removeClass("border-danger");
...@@ -288,14 +289,14 @@ ...@@ -288,14 +289,14 @@
$("#msg_error_" + result.message[0]).slideDown(100); $("#msg_error_" + result.message[0]).slideDown(100);
} }
}, },
error: function() { error: function () {
loading.stop(); loading.stop();
showMsg('error', false); showMsg('error', false);
} }
}); });
}); });
$(document).on("click", "#btn-edit", function() { $(document).on("click", "#btn-edit", function () {
// show & hide button // show & hide button
$(this).hide(); $(this).hide();
$("#btn-batal").show(); $("#btn-batal").show();
...@@ -304,7 +305,7 @@ ...@@ -304,7 +305,7 @@
$(".form-pph21 input, .form-pph21 select").prop("disabled", false); $(".form-pph21 input, .form-pph21 select").prop("disabled", false);
}); });
$(document).on("click", "#btn-batal", function() { $(document).on("click", "#btn-batal", function () {
$("#btn-batal").prop("disabled", true); $("#btn-batal").prop("disabled", true);
$("#btn-simpan").prop("disabled", true); $("#btn-simpan").prop("disabled", true);
// set default data // set default data
...@@ -360,7 +361,8 @@ ...@@ -360,7 +361,8 @@
<span class="text">Ya</span> <span class="text">Ya</span>
</label> </label>
<label class="label text-center ml-2"> <label class="label text-center ml-2">
<input disabled type="radio" class="form-control" id="aktif_tidak" name="aktif_tidak" value="0"> <input disabled type="radio" class="form-control" id="aktif_tidak" name="aktif_tidak"
value="0">
<span class="text">Tidak</span> <span class="text">Tidak</span>
</label> </label>
</div> </div>
...@@ -373,11 +375,13 @@ ...@@ -373,11 +375,13 @@
<div class="col-md-6 loading-skeleton"> <div class="col-md-6 loading-skeleton">
<div class="form-group"> <div class="form-group">
<label class="label text-center"> <label class="label text-center">
<input disabled type="radio" class="form-control" id="pot_pph_net" name="pot_pph" value="net"> <input disabled type="radio" class="form-control" id="pot_pph_net" name="pot_pph"
value="net">
<span class="text">NETT</span> <span class="text">NETT</span>
</label> </label>
<label class="label text-center ml-2"> <label class="label text-center ml-2">
<input disabled type="radio" class="form-control" id="pot_pph_gross" name="pot_pph" value="gross"> <input disabled type="radio" class="form-control" id="pot_pph_gross" name="pot_pph"
value="gross">
<span class="text">GROSS</span> <span class="text">GROSS</span>
</label> </label>
</div> </div>
...@@ -401,19 +405,34 @@ ...@@ -401,19 +405,34 @@
<div class="form-group"> <div class="form-group">
<div class="row"> <div class="row">
<div class="col-md-4"> <div class="col-md-4">
<select disabled name="jenis_pemotong" id="jenis_pemotong" class="form-control"></select> <select disabled name="jenis_pemotong" id="jenis_pemotong"
class="form-control"></select>
</div> </div>
<div class="col-md-8"> <div class="col-md-8">
<input disabled type="text" name="nomor_pemotong" onkeyup="formatangka(this, '');" id="nomor_pemotong" class="form-control"> <input disabled type="text" name="nomor_pemotong" onkeyup="formatangka(this, '');"
id="nomor_pemotong" class="form-control">
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div>
<div class="row">
<div class="col-md-2">
<label for="id_tku">ID Tempat Kegiatan Usaha (TKU) <span class="text-danger">*</span></label>
</div>
<div class="col-md-6 loading-skeleton">
<div class="form-group">
<input disabled type="text" name="id_tku" id="id_tku" class="form-control">
</div>
</div>
<!-- button --> <!-- button -->
<div class="col-md-4 loading-skeleton"> <div class="col-md-4 loading-skeleton">
<div class="form-group"> <div class="form-group">
<button disabled class="btn btn-secondary w-120" style="display:none"><i class="fa fa-close"> </i> BATAL</button> <button disabled class="btn btn-secondary w-120" style="display:none"><i class="fa fa-close">
<button disabled class="btn btn-primary w-120 ladda-button" <?= (isset($pengaturan_pph21)) ? 'style="display:none"' : '' ?> data-style="expand-left" for-data="<?= (isset($pengaturan_pph21)) ? 'update' : 'store' ?>"><i class="fa fa-save "> </i> SIMPAN</button> </i> BATAL</button>
<button disabled class="btn btn-primary w-120 ladda-button" <?= (isset($pengaturan_pph21)) ? 'style="display:none"' : '' ?> data-style="expand-left"
for-data="<?= (isset($pengaturan_pph21)) ? 'update' : 'store' ?>"><i class="fa fa-save ">
</i> SIMPAN</button>
<button disabled class="btn btn-warning w-120" <?= (!isset($pengaturan_pph21)) ? 'style="display:none"' : '' ?>><i class="fa fa-edit (alias) "> </i> EDIT</button> <button disabled class="btn btn-warning w-120" <?= (!isset($pengaturan_pph21)) ? 'style="display:none"' : '' ?>><i class="fa fa-edit (alias) "> </i> EDIT</button>
</div> </div>
</div> </div>
...@@ -460,10 +479,11 @@ ...@@ -460,10 +479,11 @@
<div class="modal-dialog modal-md"> <div class="modal-dialog modal-md">
<div id="tampil_form_pph" class="modal-content"> <div id="tampil_form_pph" class="modal-content">
<div class="card-header"> <div class="card-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button> <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span
aria-hidden="true">×</span></button>
<h3 class="title modal-title"></h3> <h3 class="title modal-title"></h3>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<!-- END TAMPIL MODAL --> <!-- END TAMPIL MODAL -->
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment