diff --git a/app/Http/Controllers/HomeController.php b/app/Http/Controllers/HomeController.php index 087bc91a..6661d61f 100644 --- a/app/Http/Controllers/HomeController.php +++ b/app/Http/Controllers/HomeController.php @@ -565,7 +565,7 @@ class HomeController extends Controller $caw = Cawangan::where('caw_code', '=', $user->kodcaw)->first(); - $all_lelong = Lelong::select('id', 'tarikh_lelong')->where('sts_lelong', 0)->get()->keyBy('id'); + $all_lelong = Lelong::select('id', 'tarikh_lelong','fasa')->where('sts_lelong', 0)->get()->keyBy('id'); foreach ($all_lelong as $data) { $data->tarikh_lelong = DateTime::createFromFormat('Y-m-d', $data->tarikh_lelong); $data->tarikh_lelong = $data->tarikh_lelong->format('d-m-Y'); @@ -581,11 +581,18 @@ class HomeController extends Controller foreach ($sag_by_lelong_id as $index => $lelong) { if ($all_lelong[$index]); { $all_lelong[$index]['sag_belum_semak'] = $lelong->count(); + $all_lelong[$index]['total_pjm'] = $lelong->sum('pinjaman'); } } } else { - $sag = Lelong::select('id', 'tarikh_lelong', 'fasa')->withCount('lelongBidBelumSemak')->where('sts_lelong', 0)->get(); - foreach ($sag as $data) { + $sag = Lelong::select('id', 'tarikh_lelong', 'fasa') + ->withCount('lelongBidBelumSemak') + ->withSum('lelongBidBelumSemak as total_pjm', 'pinjaman') + ->where('sts_lelong', 0) + ->orderBy('tarikh_lelong','ASC') + ->orderBy('fasa','DESC') + ->get(); + foreach ($sag as $index=>$data) { $data->tarikh_lelong = DateTime::createFromFormat('Y-m-d', $data->tarikh_lelong); $data->tarikh_lelong = $data->tarikh_lelong->format('d-m-Y'); } @@ -693,7 +700,7 @@ class HomeController extends Controller } return view('homeoperasi', compact('sag', 'arrayinfomenang', 'arrayinfo')); - } else if ($user->hasAnyRole('pengurus-cawangan', 'khazanah', 'penilai', 'pengurus-cawangan-khas',)) { + } else if ($user->hasAnyRole('pengurus-cawangan', 'khazanah', 'penilai', 'pengurus-cawangan-khas')) { $arrayinfomutu = []; $lelongmutu = pengesahan::join('lelong', 'lelong.id', '=', 'pengesahan.lelong_id') diff --git a/app/Http/Controllers/LelongController.php b/app/Http/Controllers/LelongController.php index e7f2c34f..97971eb2 100644 --- a/app/Http/Controllers/LelongController.php +++ b/app/Http/Controllers/LelongController.php @@ -3639,6 +3639,130 @@ class LelongController extends Controller return view('lelong.listsagbycust',compact('lelonglel','cawanganDetail','marhuns','lelongid','cawid','listsag','ktlhbyr','arrayinfo')); } + public function listsagbycust2($lelongid, $cawid) + { + $keuntungan = 0; + + $arraylistgadai = 0; + + $lelonglel = Lelong::with('cawangan')->find($lelongid); + $cawanganDetail = $lelonglel->cawangan->find($cawid); + + $caw = Cawangan::with(["lelongBid" => function($q) use ($lelongid){ + $q->where('lelong_id', '=', $lelongid)->select('id','caw_id','kodcaw','norujukan','hargaasas','pinjaman','bakiupah'); + }]) + ->where('caw_code','=',$cawanganDetail->caw_code)->first(); + + $lelongbid_data_pluck_norujukan = $caw->lelongBid->pluck('norujukan')->toArray(); + + $lelongbid_keyby_norujukan = $caw->lelongBid->keyBy('norujukan'); + + $gadai_all = Gadai::on($cawanganDetail->caw_code)->whereIn('norujukan', $lelongbid_data_pluck_norujukan) + ->select('kadarupah','nokp','tempoh','tempohbayar','norujukan','berat','nilaimarhun','pinjaman','bakipjm','bakiupah','hargajualan','bakihargajualan') + ->orderBy('norujukan','ASC') + ->get(); + + $transaksi_all = TransaksiKeuntungan::on('main')->whereIn('norujukan', $lelongbid_data_pluck_norujukan) + ->select('keuntungan_rebet','bayaran_keuntungan','norujukan') + ->get(); + $transaksi_all_groupby_norujukan = $transaksi_all->groupBy('norujukan'); + // dd($transaksi_all_groupby_norujukan); + + $gadai_all_pluck_nokp = $gadai_all->pluck('nokp')->unique(); + $customers = Customer::whereIn('kpbaru', $gadai_all_pluck_nokp) + ->orWhereIn('kplama', $gadai_all_pluck_nokp) + ->select('nama','kpbaru', 'kplama','alamat1','alamat2','alamat3','telefon') + ->get(); + + $customers_keyBy_noKp = $customers->keyBy(function ($item) { + if ($item->kpbaru != '') { + return $item->kpbaru; + } else if ($item->kplama != '') { + return $item->kplama; + } + }); + + // $gadai_all_groupby_nokp = $gadai_all->groupBy('nokp'); + $gadai_all_keyBy_norujukan = $gadai_all->keyBy('norujukan'); + foreach($transaksi_all_groupby_norujukan as $index7=>$transaksi){ + if($gadai_all_keyBy_norujukan[$index7]){ + $gadai_true = $gadai_all_keyBy_norujukan[$index7]; + $gadai_true['data_transaksi'] = $transaksi; + } + } + // dd($transaksi, $gadai_all_keyBy_norujukan['011013221006-0011']); + // dd($gadai_all_keyBy_norujukan['011013221006-0011']); 961114106974 + $gadai_all_groupby_nokp = $gadai_all_keyBy_norujukan->groupBy('nokp'); + // dd($gadai_all_groupby_nokp['961114106974']); + + foreach($customers as $index=>$customer){ + if($customer->kpbaru != ''){ + $customers[$index]['nokp'] = $customer->kpbaru; + } + elseif($customer->kplama != ''){ + $customers[$index]['nokp'] = $customer->kplama; + } + // dd($gadai_all_groupby_nokp, $customer, $gadai_all_groupby_nokp[$customer->nokp]); + + if($gadai_all_groupby_nokp[$customer->nokp]){ + $customers[$index]['gadai'] = $gadai_all_groupby_nokp[$customer->nokp]; + } + // dd($customer); + + foreach($customer['gadai'] as $index2=>$datagadai){ + // dd($datagadai); + if($lelongbid_keyby_norujukan[$datagadai->norujukan]){ + // dd(isset($datagadai['data_transaksi'])); + if(isset($datagadai['data_transaksi'])){ + $data_transaksi = $transaksi_all_groupby_norujukan[$datagadai->norujukan]; + $total_untung_rebet = $data_transaksi->sum('keuntungan_rebet'); + $total_untung_asal = $data_transaksi->sum('bayaran_keuntungan'); + $beza_keuntungan = $total_untung_asal - $total_untung_rebet; + // dd($beza_keuntungan); + // dd(true); + $jbg = $datagadai->tempoh - $datagadai->tempohbayar; + $jbg2 = 12 - $datagadai->tempohbayar; + if($datagadai->tempoh <= '12.00'){ + $keuntungan = bcdiv(($jbg)*$datagadai->kadarupah/100*$datagadai->bakipjm,1,1)-$beza_keuntungan; + }else{ + $keuntungan = bcdiv(($jbg2)*$datagadai->kadarupah/100*$datagadai->bakipjm,1,1)-$beza_keuntungan; + } + } + else{ + // dd(false); + $jbg = $datagadai->tempoh - $datagadai->tempohbayar; + $jbg2 = 12 - $datagadai->tempohbayar; + $beza_keuntungan = 0.00; + // dd($beza_keuntungan); + if($datagadai->tempoh <= '12.00'){ + // dd($jbg,$datagadai->kadarupah, $datagadai->bakipjm); + $keuntungan = bcdiv(($jbg)*$datagadai->kadarupah/100*$datagadai->bakipjm,1,1)-$beza_keuntungan; + }else{ + // dd(false); + $keuntungan = bcdiv(($jbg2)*$datagadai->kadarupah/100*$datagadai->bakipjm,1,1)-$beza_keuntungan; + } + } + $lelongbid_true = $lelongbid_keyby_norujukan[$datagadai->norujukan]; + $ktlhbyr = $datagadai->hargajualan - $datagadai->bakihargajualan; + $sumcajlelong = $lelongbid_true->hargaasas * ($lelonglel->cajlelong / 100); + $cajlelongnew = round($sumcajlelong, 1, 1); + $totalbaki = $lelongbid_true->hargaasas - $lelongbid_true->pinjaman - $lelongbid_true->bakiupah - $cajlelongnew; + $customer['gadai'][$index2]['bakilelong'] = $totalbaki; + $customer['gadai'][$index2]['ktlhbyr'] = $ktlhbyr; + $customer['gadai'][$index2]['keuntungan'] = $keuntungan; + } + } + // dd($customer); + + } + + + + return view('lelong.listsagbycust',compact('customers','cawanganDetail','lelongid','cawid')); + + // return view('lelong.listsagbycust',compact('lelonglel','cawanganDetail','marhuns','lelongid','cawid','listsag','ktlhbyr','arrayinfo')); + } + public function exportlelong(Request $request) { diff --git a/resources/views/homecawangan.blade.php b/resources/views/homecawangan.blade.php index f7ff2a43..154bd85e 100644 --- a/resources/views/homecawangan.blade.php +++ b/resources/views/homecawangan.blade.php @@ -33,6 +33,14 @@ +