diff --git a/app/Http/Controllers/DataKinerjaController.php b/app/Http/Controllers/DataKinerjaController.php index eef2451c16f73524b53467f796b74bc0bea358ce..3579271cb7cbdbe4a113241831155f8667775b6a 100644 --- a/app/Http/Controllers/DataKinerjaController.php +++ b/app/Http/Controllers/DataKinerjaController.php @@ -8,6 +8,7 @@ use Carbon\Carbon; use Excel; use Illuminate\Http\Request; use Illuminate\Support\Facades\DB; +use Illuminate\Support\Facades\Storage; use Illuminate\Support\Facades\Validator; class DataKinerjaController extends APIBaseController @@ -172,45 +173,22 @@ class DataKinerjaController extends APIBaseController $kinerja_array = []; - // Row headers - $kinerja_array[] = [ - "NIP", - "Nama Lengkap", - "Unit Kerja", - "Jabatan", - "Pendidikan", - "Tanggal Lahir", - "Tahun Pemeriksaan", - "Semester", - "Skor Kinerja", - "Catatan" - ]; - foreach ($kinerja_rows as $kinerja_row) { $kinerja_array[] = get_object_vars($kinerja_row); } $timestamp = Carbon::now()->toDateTimeString(); $filename = 'kinerja_' . $timestamp; - Excel::create($filename, function ($excel) use ($kinerja_array, $timestamp) { - $excel->setTitle('Data Kinerja ' . $timestamp) - ->setCreator('UPT PMO ITB') - ->setCompany('UPT PMO ITB') - ->setDescription('Data kinerja pegawai UPT PMO ITB pada ' . $timestamp); + + $storagePath = Storage::disk('local')->getDriver()->getAdapter()->getPathPrefix(); + $path = $storagePath . 'templates/kinerja_template_export.xlsx'; + + Excel::load($path, function ($excel) use ($kinerja_array, $timestamp) { + $excel->setTitle('Data Kinerja ' . $timestamp); $excel->sheet('sheet1', function ($sheet) use ($kinerja_array) { - $sheet->fromArray($kinerja_array, null, 'A1', false, false); - - $sheet->row(1, function ($row) { - $row->setFontWeight('bold') - ->setBorder(array( - 'bottom' => array( - 'style' => 'solid' - ) - )); - }); - $sheet->freezeFirstRow(); + $sheet->fromArray($kinerja_array, null, 'A2', false, false); }); - })->download('xlsx'); + })->setFilename('kinerja_' . $timestamp)->download('xlsx'); } } diff --git a/app/Http/Controllers/DataKompetensiController.php b/app/Http/Controllers/DataKompetensiController.php index 8cd4cdeb2b98ff93c143da26e4a24768e60484a7..a03998c3910e970241977a3401a94cf87db53afd 100644 --- a/app/Http/Controllers/DataKompetensiController.php +++ b/app/Http/Controllers/DataKompetensiController.php @@ -14,6 +14,7 @@ use Excel; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\DB; +use Illuminate\Support\Facades\Storage; use Validator; class DataKompetensiController extends APIBaseController @@ -278,79 +279,23 @@ class DataKompetensiController extends APIBaseController $kompetensi_array = []; - // Row headers - $kompetensi_array[] = [ - "NIP", - "Nama Lengkap", - "Unit Kerja", - "Jabatan", - "Pendidikan", - "Tanggal Lahir", - "Tujuan Pemeriksaan", - "Tanggal Pelaksanaan", - "Efisiensi Kecerdasan", - "Daya Nalar", - "Daya Asosiasi", - "Daya Analitis", - "Daya Antisipasi", - "Kemandirian Berpikir", - "Fleksibilitas", - "Daya Tangkap", - "Rata-rata Kognitif", - "Penempatan Diri", - "Percaya Diri", - "Daya Kooperatif", - "Penyesuaian Perasaan", - "Rata-rata Interaksional", - "Stabilitas Emosi", - "Toleransi terhadap Stress", - "Pengendalian Diri", - "Kemantapan Konsentrasi", - "Rata-rata Emosional", - "Hasrat Berprestasi", - "Daya Tahan", - "Keteraturan Kerja", - "Pengerahan Energi Kerja", - "Rata-rata Sikap Kerja", - "Efektivitas Perencanaan", - "Pengorganisasian Pelaksanaan", - "Intensitas Pengarahan", - "Kekuatan Pengawasan", - "Rata-rata Manajerial", - "Potensi Keberhasilan", - "Potensi Pengembangan Diri", - "Loyalitas Terhadap Tugas", - "Efektivitas Manajerial", - "Nilai Prediksi", - "Rekomendasi" - ]; - foreach ($kompetensi_rows as $kompetensi_row) { $kompetensi_array[] = get_object_vars($kompetensi_row); } $timestamp = Carbon::now()->toDateTimeString(); $filename = 'kompetensi_' . $timestamp; - Excel::create($filename, function ($excel) use ($kompetensi_array, $timestamp) { - $excel->setTitle('Data Kompetensi ' . $timestamp) - ->setCreator('UPT PMO ITB') - ->setCompany('UPT PMO ITB') - ->setDescription('Data kompetensi pegawai UPT PMO ITB pada ' . $timestamp); + + $storagePath = Storage::disk('local')->getDriver()->getAdapter()->getPathPrefix(); + $path = $storagePath . 'templates/kompetensi_template_export.xlsx'; + + Excel::load($path, function ($excel) use ($kompetensi_array, $timestamp) { + $excel->setTitle('Data Kompetensi ' . $timestamp); $excel->sheet('sheet1', function ($sheet) use ($kompetensi_array) { - $sheet->fromArray($kompetensi_array, null, 'A1', false, false); - - $sheet->row(1, function ($row) { - $row->setFontWeight('bold') - ->setBorder(array( - 'bottom' => array( - 'style' => 'solid' - ) - )); - }); - $sheet->freezeFirstRow(); + $sheet->fromArray($kompetensi_array, null, 'A3', false, false); }); - })->download('xlsx'); + })->setFilename('kompetensi_' . $timestamp)->download('xlsx'); } private function authenticate($role) diff --git a/app/Http/Controllers/Pegawai/PegawaiAPIController.php b/app/Http/Controllers/Pegawai/PegawaiAPIController.php index 105aaaca93a69a0609aed11acce9ca686d4046ad..b50cc7ba7a848d06f750c1a43067dabb43cb32af 100644 --- a/app/Http/Controllers/Pegawai/PegawaiAPIController.php +++ b/app/Http/Controllers/Pegawai/PegawaiAPIController.php @@ -18,6 +18,7 @@ use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Hash; +use Illuminate\Support\Facades\Storage; use Validator; @@ -329,44 +330,23 @@ class PegawaiAPIController extends APIBaseController $pegawai_array = []; - // Row headers - $pegawai_array[] = [ - 'NIP', - 'Nama Lengkap', - 'Unit Kerja', - 'Jabatan', - 'Tahun Menjabat', - 'Pendidikan', - 'No. Telp.', - 'Tanggal Lahir' - ]; - foreach ($pegawai_rows as $pegawai_row) { $pegawai_array[] = get_object_vars($pegawai_row); } $timestamp = Carbon::now()->toDateTimeString(); $filename = 'pegawai_' . $timestamp; - Excel::create($filename, function ($excel) use ($pegawai_array, $timestamp) { - $excel->setTitle('Data Pegawai ' . $timestamp) - ->setCreator('UPT PMO ITB') - ->setCompany('UPT PMO ITB') - ->setDescription('Data pegawai UPT PMO ITB pada ' . $timestamp); + + $storagePath = Storage::disk('local')->getDriver()->getAdapter()->getPathPrefix(); + $path = $storagePath . 'templates/pegawai_template_export.xlsx'; + + Excel::load($path, function ($excel) use ($pegawai_array, $timestamp) { + $excel->setTitle('Data Pegawai ' . $timestamp); $excel->sheet('sheet1', function ($sheet) use ($pegawai_array) { - $sheet->fromArray($pegawai_array, null, 'A1', false, false); - - $sheet->row(1, function ($row) { - $row->setFontWeight('bold') - ->setBorder(array( - 'bottom' => array( - 'style' => 'solid' - ) - )); - }); - $sheet->freezeFirstRow(); + $sheet->fromArray($pegawai_array, null, 'A2', false, false); }); - })->download('xlsx'); + })->setFilename('pegawai_' . $timestamp)->download('xlsx'); } private function authenticate($role) diff --git a/storage/app/templates/kinerja_template.xlsx b/storage/app/templates/kinerja_template.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..2a08db6fc86ab7ea4b6e2f07790aca7805530354 Binary files /dev/null and b/storage/app/templates/kinerja_template.xlsx differ diff --git a/storage/app/templates/kinerja_template_export.xlsx b/storage/app/templates/kinerja_template_export.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..aef520fa6c0f2944456bc921a2998539b503b9d6 Binary files /dev/null and b/storage/app/templates/kinerja_template_export.xlsx differ diff --git a/storage/app/templates/kompetensi_template.xlsx b/storage/app/templates/kompetensi_template.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..9eee927625f8a219ed341866e1fd21bb02fa0f50 Binary files /dev/null and b/storage/app/templates/kompetensi_template.xlsx differ diff --git a/storage/app/templates/kompetensi_template_export.xlsx b/storage/app/templates/kompetensi_template_export.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..79e73dbba17108c798d5f83842744e8305bc1650 Binary files /dev/null and b/storage/app/templates/kompetensi_template_export.xlsx differ diff --git a/storage/app/templates/pegawai_template_export.xlsx b/storage/app/templates/pegawai_template_export.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..14fdfbb8b1e83acdfde47929398ad0b3659ac6fe Binary files /dev/null and b/storage/app/templates/pegawai_template_export.xlsx differ