Merged in feature/saringan-gadaian (pull request #138)
Add laporan gadai, tgb lelong, tgb biasa
This commit is contained in:
@@ -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();
|
||||
|
||||
$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'),
|
||||
],
|
||||
];
|
||||
|
||||
return ($a['t_gadai'] ?? '') <=> ($b['t_gadai'] ?? '');
|
||||
})
|
||||
->values()
|
||||
->all();
|
||||
$grandTotal = [
|
||||
'berat' => $subtotal['tgb_lelong']['berat']
|
||||
+ $subtotal['tgb_biasa']['berat']
|
||||
+ $subtotal['gadai_biasa']['berat'],
|
||||
|
||||
'nilai' => $subtotal['tgb_lelong']['nilai']
|
||||
+ $subtotal['tgb_biasa']['nilai']
|
||||
+ $subtotal['gadai_biasa']['nilai'],
|
||||
|
||||
$total_berat = collect($details)->sum('berat');
|
||||
$total_nm = collect($details)->sum('nilaimarhun');
|
||||
$total_pinjam = collect($details)->sum('pinjaman');
|
||||
'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'
|
||||
));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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.
|
||||
*
|
||||
|
||||
@@ -1,6 +1,32 @@
|
||||
<table>
|
||||
<tr>
|
||||
<td colspan="9" style="font-weight:bold; font-size:16px; text-align:center;">
|
||||
LAPORAN SARINGAN PEMBIAYAAN
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="9" style="text-align:center;">
|
||||
Cawangan : {{ $branch['details_caw'] ?? '-' }} ({{ $branch['kodcaw'] ?? '-' }})
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="9" style="text-align:center;">
|
||||
Tempoh : {{ request()->startDate }} hingga {{ request()->endDate }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="9" style="text-align:center;">
|
||||
Tarikh Dijana : {{ $generatedAt }}
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<br>
|
||||
|
||||
|
||||
<table border="1">
|
||||
<thead>
|
||||
<tr>
|
||||
<tr style="font-weight:bold; background:#f3f3f3;">
|
||||
<th>Bil</th>
|
||||
<th>No Rujukan Tebus</th>
|
||||
<th>No Rujukan Gadai Balik</th>
|
||||
@@ -12,28 +38,139 @@
|
||||
<th>Tarikh Gadai</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
@foreach ($details as $i => $item)
|
||||
|
||||
{{-- ================= TGB LELONG ================= --}}
|
||||
<tr>
|
||||
<td colspan="9" style="font-weight:bold;">TGB LELONG</td>
|
||||
</tr>
|
||||
|
||||
@php
|
||||
$bil = 1;
|
||||
$subBerat = $subNM = $subPinjam = 0;
|
||||
@endphp
|
||||
|
||||
@foreach ($tgb_lelong as $item)
|
||||
<tr>
|
||||
<td>{{ $i + 1 }}</td>
|
||||
<td>{{ $item['norujukan_tebus'] }}</td>
|
||||
<td>{{ $item['norujukan_gadai_balik'] }}</td>
|
||||
<td>{{ $item['nokp'] }}</td>
|
||||
<td>{{ number_format($item['berat'], 2) }}</td>
|
||||
<td>{{ number_format($item['nilaimarhun'], 2) }}</td>
|
||||
<td>{{ number_format($item['pinjaman'], 2) }}</td>
|
||||
<td>{{ isset($item['taglel_lama']) && $item['taglel_lama'] == 1 ? 'Ya' : 'Tidak' }}</td>
|
||||
<td>{{ $item['t_gadai'] }}</td>
|
||||
<td>{{ $bil++ }}</td>
|
||||
<td>{{ $item['norujukan_tebus'] ?? null }}</td>
|
||||
<td>{{ $item['norujukan_gadai_balik'] ?? null }}</td>
|
||||
<td>{{ $item['nokp'] ?? null }}</td>
|
||||
<td>{{ $item['berat'] ?? 0 }}</td>
|
||||
<td>{{ $item['nilaimarhun'] ?? 0 }}</td>
|
||||
<td>{{ $item['pinjaman'] ?? 0 }}</td>
|
||||
<td>Ya</td>
|
||||
<td>{{ $item['t_gadai'] ?? null }}</td>
|
||||
</tr>
|
||||
|
||||
@php
|
||||
$subBerat += $item['berat'] ?? 0;
|
||||
$subNM += $item['nilaimarhun'] ?? 0;
|
||||
$subPinjam += $item['pinjaman'] ?? 0;
|
||||
@endphp
|
||||
@endforeach
|
||||
|
||||
<!-- Total Row -->
|
||||
<tr>
|
||||
<td colspan="4" style="font-weight:bold;">Jumlah Keseluruhan</td>
|
||||
<td>{{ number_format($total_berat, 2) }}</td>
|
||||
<td>{{ number_format($total_nm, 2) }}</td>
|
||||
<td>{{ number_format($total_pinjam, 2) }}</td>
|
||||
<td></td>
|
||||
<tr style="font-weight:bold;">
|
||||
<td colspan="4">Subtotal</td>
|
||||
<td>{{ number_format($subBerat, 2) }}</td>
|
||||
<td>{{ number_format($subNM, 2) }}</td>
|
||||
<td>{{ number_format($subPinjam, 2) }}</td>
|
||||
<td colspan="2"></td>
|
||||
</tr>
|
||||
|
||||
{{-- ================= TGB BIASA ================= --}}
|
||||
<tr>
|
||||
<td colspan="9" style="font-weight:bold;">TGB BIASA</td>
|
||||
</tr>
|
||||
|
||||
@php
|
||||
$bil = 1;
|
||||
$subBerat = $subNM = $subPinjam = 0;
|
||||
@endphp
|
||||
|
||||
@foreach ($tgb_biasa as $item)
|
||||
<tr>
|
||||
<td>{{ $bil++ }}</td>
|
||||
<td>{{ $item['norujukan_tebus'] ?? null }}</td>
|
||||
<td>{{ $item['norujukan_gadai_balik'] ?? null }}</td>
|
||||
<td>{{ $item['nokp'] ?? null }}</td>
|
||||
<td>{{ $item['berat'] ?? 0 }}</td>
|
||||
<td>{{ $item['nilaimarhun'] ?? 0 }}</td>
|
||||
<td>{{ $item['pinjaman'] ?? 0 }}</td>
|
||||
<td>Tidak</td>
|
||||
<td>{{ $item['t_gadai'] ?? null }}</td>
|
||||
</tr>
|
||||
|
||||
@php
|
||||
$subBerat += $item['berat'] ?? 0;
|
||||
$subNM += $item['nilaimarhun'] ?? 0;
|
||||
$subPinjam += $item['pinjaman'] ?? 0;
|
||||
@endphp
|
||||
@endforeach
|
||||
|
||||
<tr style="font-weight:bold;">
|
||||
<td colspan="4">Subtotal</td>
|
||||
<td>{{ number_format($subBerat, 2) }}</td>
|
||||
<td>{{ number_format($subNM, 2) }}</td>
|
||||
<td>{{ number_format($subPinjam, 2) }}</td>
|
||||
<td colspan="2"></td>
|
||||
</tr>
|
||||
|
||||
{{-- ================= GADAI BIASA ================= --}}
|
||||
<tr>
|
||||
<td colspan="9" style="font-weight:bold;">GADAI BIASA</td>
|
||||
</tr>
|
||||
|
||||
@php
|
||||
$bil = 1;
|
||||
$subBerat = $subNM = $subPinjam = 0;
|
||||
@endphp
|
||||
|
||||
@foreach ($gadai_biasa as $item)
|
||||
<tr>
|
||||
<td>{{ $bil++ }}</td>
|
||||
<td></td>
|
||||
<td>{{ $item['norujukan_gadai_balik'] ?? null }}</td>
|
||||
<td>{{ $item['nokp'] ?? null }}</td>
|
||||
<td>{{ $item['berat'] ?? 0 }}</td>
|
||||
<td>{{ $item['nilaimarhun'] ?? 0 }}</td>
|
||||
<td>{{ $item['pinjaman'] ?? 0 }}</td>
|
||||
<td></td>
|
||||
<td>{{ $item['t_gadai'] ?? null }}</td>
|
||||
</tr>
|
||||
|
||||
@php
|
||||
$subBerat += $item['berat'] ?? 0;
|
||||
$subNM += $item['nilaimarhun'] ?? 0;
|
||||
$subPinjam += $item['pinjaman'] ?? 0;
|
||||
@endphp
|
||||
@endforeach
|
||||
|
||||
<tr style="font-weight:bold;">
|
||||
<td colspan="4">Subtotal</td>
|
||||
<td>{{ number_format($subBerat, 2) }}</td>
|
||||
<td>{{ number_format($subNM, 2) }}</td>
|
||||
<td>{{ number_format($subPinjam, 2) }}</td>
|
||||
<td colspan="2"></td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<tr>
|
||||
<td colspan="4" style="font-weight:bold; background:#eee;">
|
||||
JUMLAH KESELURUHAN
|
||||
</td>
|
||||
<td style="font-weight:bold;">
|
||||
{{ number_format($grandTotal['berat'], 2) }}
|
||||
</td>
|
||||
<td style="font-weight:bold;">
|
||||
{{ number_format($grandTotal['nilai'], 2) }}
|
||||
</td>
|
||||
<td style="font-weight:bold;">
|
||||
{{ number_format($grandTotal['pinjaman'], 2) }}
|
||||
</td>
|
||||
<td colspan="2"></td>
|
||||
</tr>
|
||||
|
||||
|
||||
@@ -9,7 +9,8 @@
|
||||
|
||||
<breadcrumb
|
||||
:items="[{ 'title': 'Laporan Keseluruhan', 'icon': 'fas fa-users', 'url': '{{ route('reports') }}' },
|
||||
{ 'title': 'Gadaian', 'icon': 'fas fa-users' }]">
|
||||
{ 'title': 'Gadaian', 'icon': 'fas fa-users' }
|
||||
]">
|
||||
</breadcrumb>
|
||||
|
||||
<div class="container">
|
||||
@@ -17,7 +18,8 @@
|
||||
<div class="xl:w-2/3 2xl:w-1/2 p-8 mx-auto">
|
||||
<div class="bg-yellow-600 text-gray-200 text-lg px-6 py-4 rounded-t-lg"><a href="/reports"
|
||||
class="router-link-active"><i class="fas fa-backspace text-white"></i></a> <span
|
||||
class="text-center mx-auto text-white font-bold">Laporan Saringan Pembiayaan</span></div>
|
||||
class="text-center mx-auto text-white font-bold">Laporan Saringan Pembiayaan</span>
|
||||
</div>
|
||||
<form method="get" id="formgadaian" action="{{ route('reports.saringan-gadaian.index') }}">
|
||||
<div class="rounded bg-white shadow p-6">
|
||||
<div class="pb-6"><label for="username"
|
||||
@@ -78,8 +80,25 @@
|
||||
</th>
|
||||
<th
|
||||
class="px-5 py-3 border-b-2 border-gray-200 bg-gray-100 text-left text-xs font-semibold text-gray-600 uppercase tracking-wider">
|
||||
Bil Pembiayaan
|
||||
Jumlah Surat
|
||||
</th>
|
||||
|
||||
<th
|
||||
class="px-5 py-3 border-b-2 border-gray-200 bg-gray-100 text-left text-xs font-semibold text-gray-600 uppercase tracking-wider">
|
||||
TGB Lelong
|
||||
</th>
|
||||
|
||||
<th
|
||||
class="px-5 py-3 border-b-2 border-gray-200 bg-gray-100 text-left text-xs font-semibold text-gray-600 uppercase tracking-wider">
|
||||
TGB Biasa
|
||||
</th>
|
||||
|
||||
<th
|
||||
class="px-5 py-3 border-b-2 border-gray-200 bg-gray-100 text-left text-xs font-semibold text-gray-600 uppercase tracking-wider">
|
||||
Gadai Biasa
|
||||
</th>
|
||||
|
||||
|
||||
<th
|
||||
class="px-5 py-3 border-b-2 border-gray-200 bg-gray-100 text-left text-xs font-semibold text-gray-600 uppercase tracking-wider">
|
||||
Berat (g)
|
||||
@@ -100,7 +119,10 @@
|
||||
</thead>
|
||||
|
||||
@php
|
||||
$totalbilgadai = 0;
|
||||
$totalbilgadai = 0; // jumlah semua surat
|
||||
$total_tgb_lelong = 0;
|
||||
$total_tgb_biasa = 0;
|
||||
$total_gadai_biasa = 0;
|
||||
$totalberat = 0;
|
||||
$totalnm = 0;
|
||||
$totalpinjaman = 0;
|
||||
@@ -109,10 +131,18 @@
|
||||
<tbody>
|
||||
@forelse ($gadaian as $gadai)
|
||||
@php
|
||||
$totalbilgadai += $gadai['total_gadai_balik'];
|
||||
$totalberat += $gadai['sum_berat'];
|
||||
$totalnm += $gadai['sum_nilai_marhun'];
|
||||
$totalpinjaman += $gadai['sum_pinjaman'];
|
||||
// Jumlah semua surat
|
||||
$totalbilgadai += $gadai['jumlah_surat'] ?? 0;
|
||||
|
||||
// Jumlah per kategori
|
||||
$total_tgb_lelong += $gadai['total_tgb_lelong'] ?? 0;
|
||||
$total_tgb_biasa += $gadai['total_tgb_biasa'] ?? 0;
|
||||
$total_gadai_biasa += $gadai['total_gadai_biasa'] ?? 0;
|
||||
|
||||
// Jumlah nilai
|
||||
$totalberat += $gadai['sum_berat'] ?? 0;
|
||||
$totalnm += $gadai['sum_nilai_marhun'] ?? 0;
|
||||
$totalpinjaman += $gadai['sum_pinjaman'] ?? 0;
|
||||
@endphp
|
||||
|
||||
<tr>
|
||||
@@ -126,7 +156,16 @@
|
||||
<div class="ml-3">{{ $gadai['details_caw'] }}</div>
|
||||
</td>
|
||||
<td class="px-5 py-5 border-b border-gray-200 bg-white text-sm">
|
||||
<div class="ml-3">{{ $gadai['total_gadai_balik'] }}</div>
|
||||
<div class="ml-3">{{ $gadai['jumlah_surat'] }}</div>
|
||||
</td>
|
||||
<td class="px-5 py-5 border-b border-gray-200 bg-white text-sm">
|
||||
<div class="ml-3">{{ $gadai['total_tgb_lelong'] }}</div>
|
||||
</td>
|
||||
<td class="px-5 py-5 border-b border-gray-200 bg-white text-sm">
|
||||
<div class="ml-3">{{ $gadai['total_tgb_biasa'] }}</div>
|
||||
</td>
|
||||
<td class="px-5 py-5 border-b border-gray-200 bg-white text-sm">
|
||||
<div class="ml-3">{{ $gadai['total_gadai_biasa'] }}</div>
|
||||
</td>
|
||||
<td class="px-5 py-5 border-b border-gray-200 bg-white text-sm">
|
||||
<div class="ml-3">{{ number_format($gadai['sum_berat'], 2) }}</div>
|
||||
@@ -149,7 +188,7 @@
|
||||
</tr>
|
||||
@empty
|
||||
<tr>
|
||||
<td colspan="8"
|
||||
<td colspan="11"
|
||||
class="px-5 py-5 border-b border-gray-200 bg-white text-sm text-center">
|
||||
Data not available
|
||||
</td>
|
||||
@@ -163,6 +202,15 @@
|
||||
<td class="px-5 py-5 border-b border-gray-200 bg-white text-sm">
|
||||
{{ $totalbilgadai }}
|
||||
</td>
|
||||
<td class="px-5 py-5 border-b border-gray-200 bg-white text-sm">
|
||||
{{ $total_tgb_lelong }}
|
||||
</td>
|
||||
<td class="px-5 py-5 border-b border-gray-200 bg-white text-sm">
|
||||
{{ $total_tgb_biasa }}
|
||||
</td>
|
||||
<td class="px-5 py-5 border-b border-gray-200 bg-white text-sm">
|
||||
{{ $total_gadai_biasa }}
|
||||
</td>
|
||||
<td class="px-5 py-5 border-b border-gray-200 bg-white text-sm">
|
||||
{{ number_format($totalberat, 2) }}
|
||||
</td>
|
||||
@@ -172,9 +220,10 @@
|
||||
<td class="px-5 py-5 border-b border-gray-200 bg-white text-sm">
|
||||
{{ number_format($totalpinjaman, 2) }}
|
||||
</td>
|
||||
<td class="px-5 py-5 border-b border-gray-200 bg-white text-sm"></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
|
||||
</table>
|
||||
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user