diff --git a/app/Exports/GadaianDetailExport.php b/app/Exports/GadaianDetailExport.php index fa53486..2c12368 100644 --- a/app/Exports/GadaianDetailExport.php +++ b/app/Exports/GadaianDetailExport.php @@ -19,42 +19,63 @@ class GadaianDetailExport implements FromView $this->endDate = $endDate; } - public function view(): View - { - $hostname = config('api.url'); - $gadaian = Http::get($hostname . '/api/reports/saringan/gadaian', [ - 'startDate' => $this->startDate, - 'endDate' => $this->endDate, - ])->json(); + public function view(): View +{ + $generatedAt = now()->format('d-m-Y'); - $branch = collect($gadaian)->firstWhere('kodcaw', $this->kodcaw); + $data = Http::get(config('api.url') . '/api/reports/saringan/gadaian', [ + 'startDate' => $this->startDate, + 'endDate' => $this->endDate, + ])->json(); - $details = collect($branch['details'] ?? []) - ->sort(function ($a, $b) { - $aTag = isset($a['taglel_lama']) && $a['taglel_lama'] == 1 ? 0 : 1; - $bTag = isset($b['taglel_lama']) && $b['taglel_lama'] == 1 ? 0 : 1; + $branch = collect($data)->firstWhere('kodcaw', $this->kodcaw); + $details = collect($branch['details'] ?? []); - if ($aTag !== $bTag) { - return $aTag <=> $bTag; - } + $tgb_lelong = $details->where('jenis', 'TGB_LELONG')->values(); + $tgb_biasa = $details->where('jenis', 'TGB_BIASA')->values(); + $gadai_biasa = $details->where('jenis', 'GADAI_BIASA')->values(); - - return ($a['t_gadai'] ?? '') <=> ($b['t_gadai'] ?? ''); - }) - ->values() - ->all(); + $subtotal = [ + 'tgb_lelong' => [ + 'berat' => $tgb_lelong->sum('berat'), + 'nilai' => $tgb_lelong->sum('nilaimarhun'), + 'pinjaman' => $tgb_lelong->sum('pinjaman'), + ], + 'tgb_biasa' => [ + 'berat' => $tgb_biasa->sum('berat'), + 'nilai' => $tgb_biasa->sum('nilaimarhun'), + 'pinjaman' => $tgb_biasa->sum('pinjaman'), + ], + 'gadai_biasa' => [ + 'berat' => $gadai_biasa->sum('berat'), + 'nilai' => $gadai_biasa->sum('nilaimarhun'), + 'pinjaman' => $gadai_biasa->sum('pinjaman'), + ], + ]; + $grandTotal = [ + 'berat' => $subtotal['tgb_lelong']['berat'] + + $subtotal['tgb_biasa']['berat'] + + $subtotal['gadai_biasa']['berat'], - $total_berat = collect($details)->sum('berat'); - $total_nm = collect($details)->sum('nilaimarhun'); - $total_pinjam = collect($details)->sum('pinjaman'); + 'nilai' => $subtotal['tgb_lelong']['nilai'] + + $subtotal['tgb_biasa']['nilai'] + + $subtotal['gadai_biasa']['nilai'], + + 'pinjaman' => $subtotal['tgb_lelong']['pinjaman'] + + $subtotal['tgb_biasa']['pinjaman'] + + $subtotal['gadai_biasa']['pinjaman'], + ]; + + return view('reports.saringan-gadaian.excel', compact( + 'branch', + 'generatedAt', + 'tgb_lelong', + 'tgb_biasa', + 'gadai_biasa', + 'subtotal', + 'grandTotal' + )); +} - return view('reports.saringan-gadaian.excel', compact( - 'details', - 'total_berat', - 'total_nm', - 'total_pinjam', - 'branch' - )); - } } diff --git a/app/Http/Controllers/SaringanGadaianController.php b/app/Http/Controllers/SaringanGadaianController.php index 2ec6835..4f4e14a 100644 --- a/app/Http/Controllers/SaringanGadaianController.php +++ b/app/Http/Controllers/SaringanGadaianController.php @@ -35,15 +35,18 @@ class SaringanGadaianController extends Controller public function exportExcel(Request $request, $kodcaw) { - $startDate = $request->startDate ?? now()->startOfMonth()->toDateString(); - $endDate = $request->endDate ?? now()->endOfMonth()->toDateString(); - - $fileName = "Saringan_Gadaian_{$kodcaw}_{$startDate}_to_{$endDate}.xlsx"; - - return Excel::download(new GadaianDetailExport($kodcaw, $startDate, $endDate), $fileName); + return Excel::download( + new GadaianDetailExport( + $kodcaw, + $request->startDate, + $request->endDate + ), + "Saringan_Gadaian_{$kodcaw}.xlsx" + ); } + /** * Show the form for creating a new resource. * diff --git a/resources/views/reports/saringan-gadaian/excel.blade.php b/resources/views/reports/saringan-gadaian/excel.blade.php index b5edd21..364b613 100644 --- a/resources/views/reports/saringan-gadaian/excel.blade.php +++ b/resources/views/reports/saringan-gadaian/excel.blade.php @@ -1,6 +1,32 @@ + + + + + + + + + + + + +
+ LAPORAN SARINGAN PEMBIAYAAN +
+ Cawangan : {{ $branch['details_caw'] ?? '-' }} ({{ $branch['kodcaw'] ?? '-' }}) +
+ Tempoh : {{ request()->startDate }} hingga {{ request()->endDate }} +
+ Tarikh Dijana : {{ $generatedAt }} +
+ +
+ + + - + @@ -12,28 +38,139 @@ + - @foreach ($details as $i => $item) + + {{-- ================= TGB LELONG ================= --}} + + + + + @php + $bil = 1; + $subBerat = $subNM = $subPinjam = 0; + @endphp + + @foreach ($tgb_lelong as $item) - - - - - - - - - + + + + + + + + + + + @php + $subBerat += $item['berat'] ?? 0; + $subNM += $item['nilaimarhun'] ?? 0; + $subPinjam += $item['pinjaman'] ?? 0; + @endphp @endforeach - - - - - - - + + + + + + + + {{-- ================= TGB BIASA ================= --}} + + + + + @php + $bil = 1; + $subBerat = $subNM = $subPinjam = 0; + @endphp + + @foreach ($tgb_biasa as $item) + + + + + + + + + + + + + @php + $subBerat += $item['berat'] ?? 0; + $subNM += $item['nilaimarhun'] ?? 0; + $subPinjam += $item['pinjaman'] ?? 0; + @endphp + @endforeach + + + + + + + + + + {{-- ================= GADAI BIASA ================= --}} + + + + + @php + $bil = 1; + $subBerat = $subNM = $subPinjam = 0; + @endphp + + @foreach ($gadai_biasa as $item) + + + + + + + + + + + + + @php + $subBerat += $item['berat'] ?? 0; + $subNM += $item['nilaimarhun'] ?? 0; + $subPinjam += $item['pinjaman'] ?? 0; + @endphp + @endforeach + + + + + + + + +
Bil No Rujukan Tebus No Rujukan Gadai BalikTarikh Gadai
TGB LELONG
{{ $i + 1 }}{{ $item['norujukan_tebus'] }}{{ $item['norujukan_gadai_balik'] }}{{ $item['nokp'] }}{{ number_format($item['berat'], 2) }}{{ number_format($item['nilaimarhun'], 2) }}{{ number_format($item['pinjaman'], 2) }}{{ isset($item['taglel_lama']) && $item['taglel_lama'] == 1 ? 'Ya' : 'Tidak' }}{{ $item['t_gadai'] }}{{ $bil++ }}{{ $item['norujukan_tebus'] ?? null }}{{ $item['norujukan_gadai_balik'] ?? null }}{{ $item['nokp'] ?? null }}{{ $item['berat'] ?? 0 }}{{ $item['nilaimarhun'] ?? 0 }}{{ $item['pinjaman'] ?? 0 }}Ya{{ $item['t_gadai'] ?? null }}
Jumlah Keseluruhan{{ number_format($total_berat, 2) }}{{ number_format($total_nm, 2) }}{{ number_format($total_pinjam, 2) }}
Subtotal{{ number_format($subBerat, 2) }}{{ number_format($subNM, 2) }}{{ number_format($subPinjam, 2) }}
TGB BIASA
{{ $bil++ }}{{ $item['norujukan_tebus'] ?? null }}{{ $item['norujukan_gadai_balik'] ?? null }}{{ $item['nokp'] ?? null }}{{ $item['berat'] ?? 0 }}{{ $item['nilaimarhun'] ?? 0 }}{{ $item['pinjaman'] ?? 0 }}Tidak{{ $item['t_gadai'] ?? null }}
Subtotal{{ number_format($subBerat, 2) }}{{ number_format($subNM, 2) }}{{ number_format($subPinjam, 2) }}
GADAI BIASA
{{ $bil++ }}{{ $item['norujukan_gadai_balik'] ?? null }}{{ $item['nokp'] ?? null }}{{ $item['berat'] ?? 0 }}{{ $item['nilaimarhun'] ?? 0 }}{{ $item['pinjaman'] ?? 0 }}{{ $item['t_gadai'] ?? null }}
Subtotal{{ number_format($subBerat, 2) }}{{ number_format($subNM, 2) }}{{ number_format($subPinjam, 2) }}
+ + + + JUMLAH KESELURUHAN + + + {{ number_format($grandTotal['berat'], 2) }} + + + {{ number_format($grandTotal['nilai'], 2) }} + + + {{ number_format($grandTotal['pinjaman'], 2) }} + + + + diff --git a/resources/views/reports/saringan-gadaian/index.blade.php b/resources/views/reports/saringan-gadaian/index.blade.php index 0b9c059..381b606 100644 --- a/resources/views/reports/saringan-gadaian/index.blade.php +++ b/resources/views/reports/saringan-gadaian/index.blade.php @@ -9,7 +9,8 @@ + { 'title': 'Gadaian', 'icon': 'fas fa-users' } + ]">
@@ -17,7 +18,8 @@
Laporan Saringan Pembiayaan
+ class="text-center mx-auto text-white font-bold">Laporan Saringan Pembiayaan +