Merged in izzati-hotfix-laporan-lelong-hargaasas (pull request #393)

update lelong keseleuruhan
This commit is contained in:
izzati zulkifli
2026-01-27 08:56:03 +00:00
2 changed files with 61 additions and 28 deletions
@@ -60,6 +60,7 @@ class LelonganController extends Controller
sum(lelong.cajlain) as sum_cajlain,
sum(lelong.cajlelong) as sum_cajlelong,
sum(lelong.hargajual) as sum_hargajual,
sum(lelong.hargaasas) as sum_hargaasas,
sum(lelong.baki) as sum_baki'));
+60 -28
View File
@@ -58,7 +58,7 @@ class LelonganService
$marhun_lelongan = $this->getMarhunLelongan($total_lelongan, $cawangan_connection);
$cawangan_detail = $this->getCawanganDetail($cawangan_connection);
$total_lelongan = $total_lelongan->zip($customer_info, $marhun_lelongan)->map(function ($data) {
$total_lelongan = $total_lelongan->zip($customer_info, $marhun_lelongan)->map(function ($data) use ($total_lelongan) {
[$lelong, $customer_info, $marhun_lelongan] = $data;
@@ -76,31 +76,38 @@ class LelonganService
'bakipjm' => $lelong['bakipjm'],
'keuntungan' => $lelong['bakiupah'],
'cajlelong' => $lelong['cajlelong'],
'hargaasas' => $lelong['hargaasas'],
'hargajual' => $lelong['hargajual'],
'baki' => $lelong['baki'],
'teller' => $lelong['teller'],
];
dd($data);
});
$total_lelongan = $total_lelongan->groupBy('teller');
$lelongan_tellers = $total_lelongan->keys();
$result = [];
$total_lelongan = $total_lelongan
->zip($total_summary_lelongan_teller)
->map(function ($data) {
foreach ($total_lelongan as $teller => $lelongan) {
$result[$teller] = [
'lelongan' => $lelongan->values(),
'summary_lelongan_teller' => $total_summary_lelongan_teller[$teller] ?? [
'total_lelongan' => 0,
'total_berat' => 0,
'total_nilai_marhun' => 0,
'total_pembiayaan' => 0,
'total_bakipjm' => 0,
'total_keuntungan' => 0,
'total_cajlelong' => 0,
'total_hargaasas' => 0,
'total_hargajual' => 0,
'total_baki' => 0,
],
];
}
[$lelongan, $summary] = $data;
$total_lelongan = collect($result);
return [
'lelongan' => $lelongan,
'summary_lelongan_teller' => $summary,
];
});
$total_lelongan = $lelongan_tellers->combine($total_lelongan);
$data = [
'query' => [
@@ -143,6 +150,7 @@ class LelonganService
sum(gadai.bakipjm) as total_bakipjm,
sum(lelong.bakiupah) as total_keuntungan,
sum(lelong.cajlelong) as total_cajlelong,
sum(lelong.hargaasas) as total_hargaasas,
sum(lelong.hargajual) as total_hargajual,
sum(lelong.baki) as total_baki')
->get()
@@ -155,32 +163,54 @@ class LelonganService
'total_bakipjm' => $x['total_bakipjm'],
'total_keuntungan' => $x['total_keuntungan'],
'total_cajlelong' => $x['total_cajlelong'],
'total_hargaasas' => $x['total_hargaasas'],
'total_hargajual' => $x['total_hargajual'],
'total_baki' => $x['total_baki']
];
});
// dd($total_summary_lelongan);
return $total_summary_lelongan[0];
}
// private function getTotalSummaryLelonganGroupByTeller(Builder $query_total_lelongan)
// {
// $total_summary_lelongan_groupByTeller = (clone $query_total_lelongan)
// ->selectRaw('count(lelong.norujukan) as total_lelongan,
// sum(lelong.berat) as total_berat,
// sum(lelong.nilaimarhun) as total_nilai_marhun,
// sum(lelong.pinjaman) as total_pembiayaan,
// sum(gadai.bakipjm) as total_bakipjm,
// sum(lelong.bakiupah) as total_keuntungan,
// sum(lelong.cajlelong) as total_cajlelong,
// sum(lelong.hargaasas) as total_hargaasas,
// sum(lelong.hargajual) as total_hargajual,
// sum(lelong.baki) as total_baki')
// ->groupBy('lelong.teller')
// ->get();
// return $total_summary_lelongan_groupByTeller;
// }
private function getTotalSummaryLelonganGroupByTeller(Builder $query_total_lelongan)
{
$total_summary_lelongan_groupByTeller = (clone $query_total_lelongan)
->selectRaw('count(lelong.norujukan) as total_lelongan,
sum(lelong.berat) as total_berat,
sum(lelong.nilaimarhun) as total_nilai_marhun,
sum(lelong.pinjaman) as total_pembiayaan,
sum(gadai.bakipjm) as total_bakipjm,
sum(lelong.bakiupah) as total_keuntungan,
sum(lelong.cajlelong) as total_cajlelong,
sum(lelong.hargajual) as total_hargajual,
sum(lelong.baki) as total_baki')
return (clone $query_total_lelongan)
->selectRaw('
lelong.teller,
count(lelong.norujukan) as total_lelongan,
sum(lelong.berat) as total_berat,
sum(lelong.nilaimarhun) as total_nilai_marhun,
sum(lelong.pinjaman) as total_pembiayaan,
sum(gadai.bakipjm) as total_bakipjm,
sum(lelong.bakiupah) as total_keuntungan,
sum(lelong.cajlelong) as total_cajlelong,
sum(lelong.hargaasas) as total_hargaasas,
sum(lelong.hargajual) as total_hargajual,
sum(lelong.baki) as total_baki
')
->groupBy('lelong.teller')
->get();
return $total_summary_lelongan_groupByTeller;
->get()
->keyBy('teller'); // ⭐ PENTING
}
private function getTotalLelongan(Builder $query_total_lelongan)
{
$total_lelongan = (clone $query_total_lelongan)
@@ -199,6 +229,7 @@ class LelonganService
'gadai.bakipjm',
'lelong.bakiupah',
'lelong.cajlelong',
'lelong.hargaasas',
'lelong.hargajual',
'lelong.baki')
->orderBy('lelong.teller')
@@ -311,6 +342,7 @@ class LelonganService
'bakipjm' => $lelong['bakipjm'],
'keuntungan' => $lelong['bakiupah'],
'cajlelong' => $lelong['cajlelong'],
'hargaasas' => $lelong['hargaasas'],
'hargajual' => $lelong['hargajual'],
'baki' => $lelong['baki'],
'teller' => $lelong['teller'],