Files
admin-erahn/app/Exports/GadaianDetailExport.php

81 lines
2.5 KiB
PHP

<?php
namespace App\Exports;
use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;
use Illuminate\Support\Facades\Http;
class GadaianDetailExport implements FromView
{
protected $kodcaw;
protected $startDate;
protected $endDate;
public function __construct($kodcaw, $startDate, $endDate)
{
$this->kodcaw = $kodcaw;
$this->startDate = $startDate;
$this->endDate = $endDate;
}
public function view(): View
{
$generatedAt = now()->format('d-m-Y');
$data = Http::get(config('api.url') . '/api/reports/saringan/gadaian', [
'startDate' => $this->startDate,
'endDate' => $this->endDate,
])->json();
$branch = collect($data)->firstWhere('kodcaw', $this->kodcaw);
$details = collect($branch['details'] ?? []);
$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'),
],
];
$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'],
'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'
));
}
}