diff --git a/app/Exports/LaporanHasilPenilaianJaminanInternalExternalExport.php b/app/Exports/LaporanHasilPenilaianJaminanInternalExternalExport.php index 895bb1a..a38da5e 100644 --- a/app/Exports/LaporanHasilPenilaianJaminanInternalExternalExport.php +++ b/app/Exports/LaporanHasilPenilaianJaminanInternalExternalExport.php @@ -13,6 +13,7 @@ use Modules\Lpj\Models\Permohonan; use Modules\Lpj\Models\Branch; use Illuminate\Support\Facades\Auth; use Carbon\Carbon; +use Illuminate\Support\Facades\DB; class LaporanHasilPenilaianJaminanInternalExternalExport implements FromCollection, WithHeadings, WithMapping, WithTitle, WithCustomStartCell, WithEvents { @@ -66,6 +67,8 @@ class LaporanHasilPenilaianJaminanInternalExternalExport implements FromCollecti $q->orWhere('tanggal_permohonan', 'LIKE', '%' . $search . '%'); $q->orWhereRelation('user', 'name', 'LIKE', '%' . $search . '%'); $q->orWhereRelation('tujuanPenilaian', 'name', 'LIKE', '%' . $search . '%'); + $q->orWhereRelation('debiture', DB::raw('LOWER(name)'), 'LIKE', '%' . strtolower($search) . '%'); + $q->orWhereRelation('branch', 'name', 'LIKE', '%' . $search . '%'); $q->orWhereRelation('jenisFasilitasKredit', 'name', 'LIKE', '%' . $search . '%'); $q->orWhereRelation('jenisPenilaian', 'name', 'LIKE', '%' . $search . '%'); diff --git a/app/Exports/LaporanPenilaiJaminanExport.php b/app/Exports/LaporanPenilaiJaminanExport.php index 6da8afa..a75a092 100644 --- a/app/Exports/LaporanPenilaiJaminanExport.php +++ b/app/Exports/LaporanPenilaiJaminanExport.php @@ -12,6 +12,7 @@ use PhpOffice\PhpSpreadsheet\Style\NumberFormat; use Modules\Lpj\Models\Debiture; use Modules\Lpj\Models\Permohonan; use Modules\Lpj\Helpers\Lpj; +use Illuminate\Support\Facades\DB; class LaporanPenilaiJaminanExport implements FromCollection, WithHeadings, WithMapping, ShouldAutoSize { @@ -76,6 +77,7 @@ class LaporanPenilaiJaminanExport implements FromCollection, WithHeadings, WithM $q->orWhereRelation('user', 'name', 'LIKE', '%' . $search . '%'); $q->orWhereRelation('tujuanPenilaian', 'name', 'LIKE', '%' . $search . '%'); $q->orWhereRelation('branch', 'name', 'LIKE', '%' . $search . '%'); + $q->orWhereRelation('debiture', DB::raw('LOWER(name)'), 'LIKE', '%' . strtolower($search) . '%'); $q->orWhereRelation('jenisFasilitasKredit', 'name', 'LIKE', '%' . $search . '%'); $q->orWhereRelation('jenisPenilaian', 'name', 'LIKE', '%' . $search . '%'); $q->orWhere('status', 'LIKE', '%' . $search . '%'); diff --git a/app/Exports/LaporanPenilaianJaminanExport.php b/app/Exports/LaporanPenilaianJaminanExport.php index 6e6a968..f22187d 100644 --- a/app/Exports/LaporanPenilaianJaminanExport.php +++ b/app/Exports/LaporanPenilaianJaminanExport.php @@ -13,7 +13,7 @@ use Modules\Lpj\Models\Permohonan; use Modules\Lpj\Models\Branch; use Illuminate\Support\Facades\Auth; use Carbon\Carbon; - +use Illuminate\Support\Facades\DB; class LaporanPenilaianJaminanExport implements FromCollection, WithHeadings, WithMapping, WithTitle, WithCustomStartCell, WithEvents { protected $request; @@ -67,6 +67,7 @@ class LaporanPenilaianJaminanExport implements FromCollection, WithHeadings, Wit $q->where('nomor_registrasi', 'LIKE', '%' . $search . '%'); $q->orWhere('tanggal_permohonan', 'LIKE', '%' . $search . '%'); $q->orWhereRelation('user', 'name', 'LIKE', '%' . $search . '%'); + $q->orWhereRelation('debiture', DB::raw('LOWER(name)'), 'LIKE', '%' . strtolower($search) . '%'); $q->orWhereRelation('tujuanPenilaian', 'name', 'LIKE', '%' . $search . '%'); $q->orWhereRelation('branch', 'name', 'LIKE', '%' . $search . '%'); $q->orWhereRelation('jenisFasilitasKredit', 'name', 'LIKE', '%' . $search . '%'); diff --git a/app/Http/Controllers/LaporanHasilPenilaianJaminanInternalExternalController.php b/app/Http/Controllers/LaporanHasilPenilaianJaminanInternalExternalController.php index 3bac546..24c2911 100644 --- a/app/Http/Controllers/LaporanHasilPenilaianJaminanInternalExternalController.php +++ b/app/Http/Controllers/LaporanHasilPenilaianJaminanInternalExternalController.php @@ -1,211 +1,213 @@ user) || !$this->user->can('laporan-admin-kredit.view')) { - //abort(403, 'Sorry! You are not allowed to view laporan admin kredit.'); - } - - // Retrieve data from the database - $query = Permohonan::query(); - $query = $query->where('status', 'done'); - - // Apply search filter if provided - if ($request->has('search') && !empty($request->get('search'))) { - $search = json_decode($request->get('search')); - - if (isset($search->start_date) || isset($search->end_date)) { - $query->whereBetween('tanggal_permohonan', [ - $search->start_date ?? '1900-01-01', - $search->end_date ?? now()->toDateString() - ]); - } - - // Filter by branch if provided - if (isset($search->branch_id) && !empty($search->branch_id)) { - $query->where('branch_id', $search->branch_id); - } - - if (isset($search->penilai_id) && !empty($search->penilai_id)) { - $query->whereHas('penilaian._user_penilai.userPenilaiTeam', function ($q) use ($search) { - $q->where('user_id', $search->penilai_id); - }); - } - - if (isset($search->search)) { - - $query->where(function ($q) use ($search) { - $q->where('nomor_registrasi', 'LIKE', '%' . $search->search . '%'); - $q->orWhere('tanggal_permohonan', 'LIKE', '%' . $search->search . '%'); - $q->orWhereRelation('user', 'name', 'LIKE', '%' . $search->search . '%'); - $q->orWhereRelation('tujuanPenilaian', 'name', 'LIKE', '%' . $search->search . '%'); - $q->orWhereRelation('branch', 'name', 'LIKE', '%' . $search->search . '%'); - $q->orWhereRelation('jenisFasilitasKredit', 'name', 'LIKE', '%' . $search->search . '%'); - $q->orWhereRelation('jenisPenilaian', 'name', 'LIKE', '%' . $search->search . '%'); - $q->orWhere('status', 'LIKE', '%' . $search->search . '%'); - }); - } - } - - // Apply sorting if provided - if ($request->has('sortOrder') && !empty($request->get('sortOrder'))) { - $order = $request->get('sortOrder'); - $column = $request->get('sortField'); - $query->orderBy($column, $order); - } - - // Get the total count of records - $totalRecords = $query->count(); - - // Apply pagination if provided - if ($request->has('page') && $request->has('size')) { - $page = $request->get('page'); - $size = $request->get('size'); - $offset = ($page - 1) * $size; // Calculate the offset - - $query->skip($offset)->take($size); - } - - // Get the filtered count of records - $filteredRecords = $query->count(); - - // Get the data for the current page - $data = $query->with(['debiture.branch'])->get(); - - $data = $data->map(function ($permohonan) { - $luas_tanah = 0; - $luas_bangunan = 0; - $nilai_tanah = 0; - $nilai_bangunan = 0; - $npw = 0; - $nilai_liquidasi = 0; - - if (isset($permohonan->penilai->lpj)) { - $lpj = json_decode($permohonan->penilai->lpj, true); - $npw = str_replace('.', '', $lpj['total_nilai_pasar_wajar'] ?? 0); - - $luas_tanah = $lpj['luas_tanah'] ?? 0; - $luas_bangunan = $lpj['luas_bangunan'] ?? 0; - // Calculate nilai_tanah dynamically by looking for all keys that start with 'nilai_tanah_' - $nilai_tanah = str_replace('.', '', $lpj['nilai_tanah_2'] ?? 0); - - $nilai_bangunan = str_replace('.', '', $lpj['nilai_bangunan_2'] ?? 0); - $nilai_liquidasi = str_replace('.', '', $lpj['likuidasi_nilai_2'] ?? 0); - } - - return [ - 'id' => $permohonan->id, - 'nomor_registrasi' => $permohonan->nomor_registrasi, - 'jenis_penilaian' => $permohonan->jenisPenilaian?->name, - 'tujuan_penilaian' => $permohonan->tujuanPenilaian?->name, - 'jenis_fasilitas_kredit' => $permohonan->jenisFasilitasKredit?->name, - 'branch' => $permohonan->debiture->branch?->name, - 'pemohon' => $permohonan->creator?->name, - 'cif' => $permohonan->debiture->cif, - 'name' => $permohonan->debiture?->name, - 'jenis_agunan' => $permohonan->documents?->pluck('jenisJaminan.name') - ->unique() - ->implode(', '), - 'alamat_agunan' => $permohonan->documents?->map(function ($document) { - return formatAlamat($document); - })->unique()->implode(', '), - 'bukti_kepemilikan' => (function() use ($permohonan) { - $legalitasItems = $permohonan->documents?->flatMap(function ($document) { - return $document->detail->map(function ($detail) { - // Jika tidak ada jenis legalitas jaminan, lewati - if (empty($detail->jenisLegalitasJaminan)) { - return null; - } - - // Hanya tampilkan detail yang memiliki dokumen_jaminan - if (empty($detail->dokumen_jaminan)) { - return null; - } - - // Tampilkan nama legalitas jaminan saja - return $detail->jenisLegalitasJaminan->name ?? ''; - }); - })->filter()->unique()->values()->toArray(); - - // Buat daftar bernomor - $result = ''; - foreach ($legalitasItems as $index => $item) { - $result .= ($index + 1) . '. ' . $item . "\n"; - } - - return $result; - })(), - 'nama_pemilik' => $permohonan->documents?->pluck('pemilik.name') - ->unique() - ->implode(', '), - 'luas_tanah' => $luas_tanah . ' m²', - 'nilai_tanah' => formatRupiah($nilai_tanah, 2), - 'luas_bangunan' => $luas_bangunan . ' m²', - 'nilai_bangunan' => formatRupiah($nilai_bangunan, 2), - 'nilai_njop' => formatRupiah($permohonan->nilai_njop, 2), - 'nilai_pasar_wajar' => formatRupiah($npw, 2), - 'nilai_likuidasi' => formatRupiah($nilai_liquidasi, 2), - 'tanggal_documen_diterima' => $permohonan->documents?->map(function ($document) { - return $document->created_at->format('d-m-Y'); - }), - 'tanggal_spk' => '', - 'nomor_spk' => '', - 'tanggal_rencana_kunjunagn' => '', - 'tanggal_kunjungan' => '', - 'taggal_delivered' => '', - 'jangka_waktu_sla' => '', - 'nama_penilai' => $permohonan->penilaian?->_user_penilai?->userPenilaiTeam?->name, - 'nama_team_leader' => $permohonan->penilaian?->teams, - 'saran' => '', - 'catatan' => '', - - - 'tanggal_permohonan' => $permohonan->tanggal_permohonan, - 'tanggal_laporan' => $permohonan->approval_dd_at ?? $permohonan->approval_eo_at ?? '', - 'tanggal_review' => $permohonan->penilaian?->tanggal_kunjungan ?? '', - ]; - }); - - // Calculate the page count - $pageCount = ceil($totalRecords / $request->get('size')); - - // Calculate the current page number - $currentPage = $request->get('page', 1); - - // Return the response data as a JSON object - return response()->json([ - 'draw' => $request->get('draw'), - 'recordsTotal' => $totalRecords, - 'recordsFiltered' => $filteredRecords, - 'pageCount' => $pageCount, - 'page' => $currentPage, - 'totalCount' => $totalRecords, - 'data' => $data, - ]); - } - - public function export(Request $request) - { - return Excel::download(new LaporanHasilPenilaianJaminanInternalExternalExport($request), 'laporan_hasil_penilaian_jaminan_internal_external.xlsx'); - } + return view('lpj::laporan_hasil_penilaian_jaminan_internal_external.index'); } + + public function dataForDatatables(Request $request) + { + if (is_null($this->user) || !$this->user->can('laporan-admin-kredit.view')) { + //abort(403, 'Sorry! You are not allowed to view laporan admin kredit.'); + } + + // Retrieve data from the database + $query = Permohonan::query(); + $query = $query->where('status', 'done'); + + // Apply search filter if provided + if ($request->has('search') && !empty($request->get('search'))) { + $search = json_decode($request->get('search')); + + if (isset($search->start_date) || isset($search->end_date)) { + $query->whereBetween('tanggal_permohonan', [ + $search->start_date ?? '1900-01-01', + $search->end_date ?? now()->toDateString() + ]); + } + + // Filter by branch if provided + if (isset($search->branch_id) && !empty($search->branch_id)) { + $query->where('branch_id', $search->branch_id); + } + + if (isset($search->penilai_id) && !empty($search->penilai_id)) { + $query->whereHas('penilaian._user_penilai.userPenilaiTeam', function ($q) use ($search) { + $q->where('user_id', $search->penilai_id); + }); + } + + if (isset($search->search)) { + + $query->where(function ($q) use ($search) { + $q->where('nomor_registrasi', 'LIKE', '%' . $search->search . '%'); + $q->orWhere('tanggal_permohonan', 'LIKE', '%' . $search->search . '%'); + $q->orWhereRelation('user', 'name', 'LIKE', '%' . $search->search . '%'); + $q->orWhereRelation('tujuanPenilaian', 'name', 'LIKE', '%' . $search->search . '%'); + $q->orWhereRelation('branch', 'name', 'LIKE', '%' . $search->search . '%'); + $q->orWhereRelation('debiture', DB::raw('LOWER(name)'), 'LIKE', '%' . strtolower($search->search) . '%'); + $q->orWhereRelation('jenisFasilitasKredit', 'name', 'LIKE', '%' . $search->search . '%'); + $q->orWhereRelation('jenisPenilaian', 'name', 'LIKE', '%' . $search->search . '%'); + $q->orWhere('status', 'LIKE', '%' . $search->search . '%'); + }); + } + } + + // Apply sorting if provided + if ($request->has('sortOrder') && !empty($request->get('sortOrder'))) { + $order = $request->get('sortOrder'); + $column = $request->get('sortField'); + $query->orderBy($column, $order); + } + + // Get the total count of records + $totalRecords = $query->count(); + + // Apply pagination if provided + if ($request->has('page') && $request->has('size')) { + $page = $request->get('page'); + $size = $request->get('size'); + $offset = ($page - 1) * $size; // Calculate the offset + + $query->skip($offset)->take($size); + } + + // Get the filtered count of records + $filteredRecords = $query->count(); + + // Get the data for the current page + $data = $query->with(['debiture.branch'])->get(); + + $data = $data->map(function ($permohonan) { + $luas_tanah = 0; + $luas_bangunan = 0; + $nilai_tanah = 0; + $nilai_bangunan = 0; + $npw = 0; + $nilai_liquidasi = 0; + + if (isset($permohonan->penilai->lpj)) { + $lpj = json_decode($permohonan->penilai->lpj, true); + $npw = str_replace('.', '', $lpj['total_nilai_pasar_wajar'] ?? 0); + + $luas_tanah = $lpj['luas_tanah'] ?? 0; + $luas_bangunan = $lpj['luas_bangunan'] ?? 0; + // Calculate nilai_tanah dynamically by looking for all keys that start with 'nilai_tanah_' + $nilai_tanah = str_replace('.', '', $lpj['nilai_tanah_2'] ?? 0); + + $nilai_bangunan = str_replace('.', '', $lpj['nilai_bangunan_2'] ?? 0); + $nilai_liquidasi = str_replace('.', '', $lpj['likuidasi_nilai_2'] ?? 0); + } + + return [ + 'id' => $permohonan->id, + 'nomor_registrasi' => $permohonan->nomor_registrasi, + 'jenis_penilaian' => $permohonan->jenisPenilaian?->name, + 'tujuan_penilaian' => $permohonan->tujuanPenilaian?->name, + 'jenis_fasilitas_kredit' => $permohonan->jenisFasilitasKredit?->name, + 'branch' => $permohonan->debiture->branch?->name, + 'pemohon' => $permohonan->creator?->name, + 'cif' => $permohonan->debiture->cif, + 'name' => $permohonan->debiture?->name, + 'jenis_agunan' => $permohonan->documents?->pluck('jenisJaminan.name') + ->unique() + ->implode(', '), + 'alamat_agunan' => $permohonan->documents?->map(function ($document) { + return formatAlamat($document); + })->unique()->implode(', '), + 'bukti_kepemilikan' => (function () use ($permohonan) { + $legalitasItems = $permohonan->documents?->flatMap(function ($document) { + return $document->detail->map(function ($detail) { + // Jika tidak ada jenis legalitas jaminan, lewati + if (empty($detail->jenisLegalitasJaminan)) { + return null; + } + + // Hanya tampilkan detail yang memiliki dokumen_jaminan + if (empty($detail->dokumen_jaminan)) { + return null; + } + + // Tampilkan nama legalitas jaminan saja + return $detail->jenisLegalitasJaminan->name ?? ''; + }); + })->filter()->unique()->values()->toArray(); + + // Buat daftar bernomor + $result = ''; + foreach ($legalitasItems as $index => $item) { + $result .= ($index + 1) . '. ' . $item . "\n"; + } + + return $result; + })(), + 'nama_pemilik' => $permohonan->documents?->pluck('pemilik.name') + ->unique() + ->implode(', '), + 'luas_tanah' => $luas_tanah . ' m²', + 'nilai_tanah' => formatRupiah($nilai_tanah, 2), + 'luas_bangunan' => $luas_bangunan . ' m²', + 'nilai_bangunan' => formatRupiah($nilai_bangunan, 2), + 'nilai_njop' => formatRupiah($permohonan->nilai_njop, 2), + 'nilai_pasar_wajar' => formatRupiah($npw, 2), + 'nilai_likuidasi' => formatRupiah($nilai_liquidasi, 2), + 'tanggal_documen_diterima' => $permohonan->documents?->map(function ($document) { + return $document->created_at->format('d-m-Y'); + }), + 'tanggal_spk' => '', + 'nomor_spk' => '', + 'tanggal_rencana_kunjunagn' => '', + 'tanggal_kunjungan' => '', + 'taggal_delivered' => '', + 'jangka_waktu_sla' => '', + 'nama_penilai' => $permohonan->penilaian?->_user_penilai?->userPenilaiTeam?->name, + 'nama_team_leader' => $permohonan->penilaian?->teams, + 'saran' => '', + 'catatan' => '', + + + 'tanggal_permohonan' => $permohonan->tanggal_permohonan, + 'tanggal_laporan' => $permohonan->approval_dd_at ?? $permohonan->approval_eo_at ?? '', + 'tanggal_review' => $permohonan->penilaian?->tanggal_kunjungan ?? '', + ]; + }); + + // Calculate the page count + $pageCount = ceil($totalRecords / $request->get('size')); + + // Calculate the current page number + $currentPage = $request->get('page', 1); + + // Return the response data as a JSON object + return response()->json([ + 'draw' => $request->get('draw'), + 'recordsTotal' => $totalRecords, + 'recordsFiltered' => $filteredRecords, + 'pageCount' => $pageCount, + 'page' => $currentPage, + 'totalCount' => $totalRecords, + 'data' => $data, + ]); + } + + public function export(Request $request) + { + return Excel::download(new LaporanHasilPenilaianJaminanInternalExternalExport($request), 'laporan_hasil_penilaian_jaminan_internal_external.xlsx'); + } +} diff --git a/app/Http/Controllers/LaporanPenilaiJaminanController.php b/app/Http/Controllers/LaporanPenilaiJaminanController.php index 3390ba0..5e83790 100644 --- a/app/Http/Controllers/LaporanPenilaiJaminanController.php +++ b/app/Http/Controllers/LaporanPenilaiJaminanController.php @@ -65,20 +65,18 @@ class LaporanPenilaiJaminanController extends Controller $startDate = $search->start_date ?? '1900-01-01'; $endDate = $search->end_date ?? now()->toDateString(); - $query->where(function ($q) use ($startDate, $endDate) { - $q->whereExists(function ($subQuery) use ($startDate, $endDate) { - $subQuery->select(DB::raw(1)) - ->from('penilaian') - ->whereColumn('penilaian.nomor_registrasi', 'permohonan.nomor_registrasi') - ->whereBetween('penilaian.tanggal_kunjungan', [$startDate, $endDate]); - }) - ->orWhereExists(function ($subQuery) use ($startDate, $endDate) { - $subQuery->select(DB::raw(1)) - ->from('penawaran') - ->whereColumn('penawaran.nomor_registrasi', 'permohonan.nomor_registrasi') - ->whereBetween('penawaran.tanggal_penilaian_sebelumnya', [$startDate, $endDate]); + $query->where(function ($q) use ($startDate, $endDate) { + + $q->whereHas('penilaian', function ($q2) use ($startDate, $endDate) { + $q2->whereBetween('tanggal_kunjungan', [$startDate, $endDate]); + }); + + // OR check if has penawaran with date in range + $q->orWhereHas('penawaran', function ($q3) use ($startDate, $endDate) { + $q3->whereBetween('tanggal_penilaian_sebelumnya', [$startDate, $endDate]); + }); }); - }); + } @@ -88,12 +86,12 @@ class LaporanPenilaiJaminanController extends Controller } if (isset($search->laporan) && is_array($search->laporan) && !empty($search->laporan)) { - foreach ($search->laporan as $type) { - $query->whereHas('penilai', function ($q) use ($type) { - $q->where('type_penilai', 'LIKE', '%' . $type . '%'); - }); - } + foreach ($search->laporan as $type) { + $query->whereHas('penilai', function ($q) use ($type) { + $q->where('type_penilai', 'LIKE', '%' . $type . '%'); + }); } + } // dd($search->search); @@ -106,6 +104,8 @@ class LaporanPenilaiJaminanController extends Controller $q->orWhereRelation('user', 'name', 'LIKE', '%' . $search->search . '%'); $q->orWhereRelation('tujuanPenilaian', 'name', 'LIKE', '%' . $search->search . '%'); $q->orWhereRelation('branch', 'name', 'LIKE', '%' . $search->search . '%'); + $q->orWhereRelation('debiture', DB::raw('LOWER(name)'), 'LIKE', '%' . strtolower($search->search) . '%'); + $q->orWhereRelation('jenisFasilitasKredit', 'name', 'LIKE', '%' . $search->search . '%'); $q->orWhereRelation('jenisPenilaian', 'name', 'LIKE', '%' . $search->search . '%'); $q->orWhere('status', 'LIKE', '%' . $search->search . '%'); @@ -170,7 +170,7 @@ class LaporanPenilaiJaminanController extends Controller $endDate = date('Y-m-d', strtotime($endDate)); if ($startDate > $endDate) { - return redirect()->back()->with('error', 'Tanggal awal tidak boleh lebih kecil dari tanggal akhir'); + return redirect()->back()->with('error', 'Tanggal awal tidak boleh lebih kecil dari tanggal akhir'); } } // name the file diff --git a/app/Http/Controllers/LaporanPenilaianJaminanController.php b/app/Http/Controllers/LaporanPenilaianJaminanController.php index 856e3e7..2a6ddad 100644 --- a/app/Http/Controllers/LaporanPenilaianJaminanController.php +++ b/app/Http/Controllers/LaporanPenilaianJaminanController.php @@ -9,6 +9,7 @@ use Modules\Lpj\Models\Permohonan; use Modules\Lpj\Models\Penilaian; use Modules\Lpj\Models\PenawaranTender; use Maatwebsite\Excel\Facades\Excel; +use Illuminate\Support\Facades\DB; class LaporanPenilaianJaminanController extends Controller { @@ -70,6 +71,8 @@ class LaporanPenilaianJaminanController extends Controller $q->orWhereRelation('user', 'name', 'LIKE', '%' . $search->search . '%'); $q->orWhereRelation('tujuanPenilaian', 'name', 'LIKE', '%' . $search->search . '%'); $q->orWhereRelation('branch', 'name', 'LIKE', '%' . $search->search . '%'); + $q->orWhereRelation('debiture', DB::raw('LOWER(name)'), 'LIKE', '%' . strtolower($search->search) . '%'); + $q->orWhereRelation('jenisFasilitasKredit', 'name', 'LIKE', '%' . $search->search . '%'); $q->orWhereRelation('jenisPenilaian', 'name', 'LIKE', '%' . $search->search . '%'); $q->orWhere('status', 'LIKE', '%' . $search->search . '%'); @@ -167,7 +170,7 @@ class LaporanPenilaianJaminanController extends Controller public function export(Request $request) { $startDate = $request->start_date; - $endDate =$request->end_date; + $endDate = $request->end_date; // name of the file $fileName = 'laporan_penilaian_jaminan_' . $startDate . '_' . $endDate . '.xlsx'; return Excel::download(new LaporanPenilaianJaminanExport($request), $fileName);