diff --git a/app/Http/Controllers/GadaiController.php b/app/Http/Controllers/GadaiController.php index 5ef4758..67346ea 100644 --- a/app/Http/Controllers/GadaiController.php +++ b/app/Http/Controllers/GadaiController.php @@ -1002,32 +1002,66 @@ class GadaiController extends Controller return response()->json(number_format($jumlahPetibesi,2)); } - public function bilanganPengadaiToday(){ + public function bilanganPengadai(Request $request){ $cawangan_all = Cawangan::on('mysql7')->get(); - $current = Carbon::now(); - $current = new Carbon(); - - $total_penggadai = 0; + $penggadai_all = []; foreach($cawangan_all as $index => $cawangan){ - $penggadai_cawangan = Gadai::on($cawangan['mysql'])->where('t_gadai','=',$current->toDateString())->distinct('nokp')->count('nokp'); - $total_penggadai += $penggadai_cawangan; + if($request->method == 'weekly'){ + $penggadai_cawangan = Gadai::on($cawangan['mysql'])->selectRaw('COUNT(DISTINCT nokp) AS total_customer')->addSelect('t_gadai')->groupBy('t_gadai')->orderBy('t_gadai','desc')->get(); + }elseif($request->method == 'monthly'){ + $penggadai_cawangan = Gadai::on($cawangan['mysql'])->selectRaw('COUNT(DISTINCT nokp) AS total_customer')->addSelect('t_gadai')->groupBy('t_gadai')->orderBy('t_gadai','desc')->get(); + }elseif($request->method == 'yearly'){ + $penggadai_cawangan = Gadai::on($cawangan['mysql'])->selectRaw('COUNT(DISTINCT nokp) AS total_customer')->addSelect('t_gadai')->groupBy('t_gadai')->orderBy('t_gadai','desc')->get(); + } + $penggadai_data = []; + if($request->method == 'weekly'){ + for($i=0;$i<7;$i++){ + array_push($penggadai_data,['tarikh'=>$penggadai_cawangan[$i]['t_gadai'],'bilangan_penggadai'=>$penggadai_cawangan[$i]['total_customer']]); + } + }elseif($request->method == 'monthly'){ + for($i=0;$i<30;$i++){ + array_push($penggadai_data,['tarikh'=>$penggadai_cawangan[$i]['t_gadai'],'bilangan_penggadai'=>$penggadai_cawangan[$i]['total_customer']]); + } + }elseif($request->method == 'yearly'){ + for($i=0;$i<12;$i++){ + array_push($penggadai_data,['tarikh'=>$penggadai_cawangan[$i]['t_gadai'],'bilangan_penggadai'=>$penggadai_cawangan[$i]['total_customer']]); + } + } + array_push($penggadai_all,['cawangan'=>$cawangan['details_caw'],'data_penggadai'=>$penggadai_data]); } - return response()->json($total_penggadai); + return response()->json($penggadai_all); } - public function bilanganGadaianToday(){ + public function bilanganGadaian(Request $request){ $cawangan_all = Cawangan::on('mysql7')->get(); - $current = Carbon::now(); - $current = new Carbon(); - - $total_gadaian = 0; + $gadaian_all = []; foreach($cawangan_all as $index => $cawangan){ - $gadaian_cawangan = Gadai::on($cawangan['mysql'])->where('t_gadai','=',$current->toDateString())->count('norujukan'); - $total_gadaian += $gadaian_cawangan; + if($request->method == 'weekly'){ + $gadaian_cawangan = Gadai::on($cawangan['mysql'])->selectRaw('COUNT(norujukan) AS total_norujukan')->addSelect('t_gadai')->groupBy('t_gadai')->orderBy('t_gadai','desc')->get(); + }elseif($request->method == 'monthly'){ + $gadaian_cawangan = Gadai::on($cawangan['mysql'])->selectRaw('COUNT(norujukan) AS total_norujukan')->addSelect('t_gadai')->groupBy('t_gadai')->orderBy('t_gadai','desc')->get(); + }elseif($request->method == 'yearly'){ + $gadaian_cawangan = Gadai::on($cawangan['mysql'])->selectRaw('COUNT(norujukan) AS total_norujukan')->addSelect('t_gadai')->groupBy('t_gadai')->orderBy('t_gadai','desc')->get(); + } + $gadaian_data = []; + if($request->method == 'weekly'){ + for($i=0;$i<7;$i++){ + array_push($gadaian_data,['tarikh'=>$gadaian_cawangan[$i]['t_gadai'],'bilangan_gadaian'=>$gadaian_cawangan[$i]['total_norujukan']]); + } + }elseif($request->method == 'monthly'){ + for($i=0;$i<30;$i++){ + array_push($gadaian_data,['tarikh'=>$gadaian_cawangan[$i]['t_gadai'],'bilangan_gadaian'=>$gadaian_cawangan[$i]['total_norujukan']]); + } + }elseif($request->method == 'yearly'){ + for($i=0;$i<12;$i++){ + array_push($gadaian_data,['tarikh'=>$gadaian_cawangan[$i]['t_gadai'],'bilangan_gadaian'=>$gadaian_cawangan[$i]['total_norujukan']]); + } + } + array_push($gadaian_all,['cawangan'=>$cawangan['details_caw'],'data_gadaian'=>$gadaian_data]); } - return response()->json($total_gadaian); + return response()->json($gadaian_all); } public function bilanganPengadaiTerkumpul(){ diff --git a/routes/web.php b/routes/web.php index a191585..6300141 100644 --- a/routes/web.php +++ b/routes/web.php @@ -266,8 +266,8 @@ $router->group(['prefix'=>'dashboard'], function () use ($router){ $router->get('nilaimarhun/semasa',['uses'=>'GadaiController@nilaiMarhunSemasa']); $router->get('vault/semasa',['uses'=>'GadaiController@petiBesiSemasa']); - $router->get('penggadai/today',['uses'=>'GadaiController@bilanganPengadaiToday']); - $router->get('gadaian/today',['uses'=>'GadaiController@bilanganGadaianToday']); + $router->post('penggadai',['uses'=>'GadaiController@bilanganPengadai']); + $router->post('gadaian',['uses'=>'GadaiController@bilanganGadaian']); $router->get('penggadai/terkumpul',['uses'=>'GadaiController@bilanganPengadaiTerkumpul']); $router->get('gadaian/terkumpul',['uses'=>'GadaiController@bilanganGadaianTerkumpul']);