api dashboard

This commit is contained in:
Afiq
2021-01-16 02:54:07 +08:00
parent 334a26bfbc
commit d31e26a15e
+59 -21
View File
@@ -1175,10 +1175,6 @@ class GadaiController extends Controller
}
$array_percentage=[];
// foreach($cawangan_all as $index=>$cawangan){
// $percentage = ($array_cawangan[$index]['total_gadai']/$total_gadaian_cawangan)*100;
// array_push($array_percentage,['cawangan'=>$cawangan['details_caw'],'percentage_gadai'=>number_format($percentage,2)]);
// }
$count_cawangan = sizeof($cawangan_all);
for($i=0;$i<$count_cawangan;$i++){
$percent_cawangan = $array_cawangan[$i]['total_gadai'];
@@ -1239,35 +1235,77 @@ class GadaiController extends Controller
$penggadai_all = [];
$current = Carbon::now();
$current = new Carbon();
$monthly = Carbon::now();
$monthly = new Carbon();
$yearly = Carbon::now();
$yearly = new Carbon();
$monthly_array = Carbon::now();
$monthly_array = new Carbon();
$yearly_array = Carbon::now();
$yearly_array = new Carbon();
$array_totalup = [];
if($request->method == 'daily'){
array_push($array_totalup,['tarikh'=>$current->toDateString(),'totalgadai'=>0,'totaltebus'=>0,'totalupah'=>0]);
}
if($request->method == 'monthly'){
for($i=0;$i<12;$i++){
if($i == 0){
$monthly_array_date = $monthly_array->startOfMonth()->subMonths(0);
}else{
$monthly_array_date = $monthly_array->startOfMonth()->subMonths(1);
}
array_push($array_totalup,['tarikh'=>$monthly_array_date->year.'-'.sprintf("%02d", $monthly_array_date->month),'totalgadai'=>0,'totaltebus'=>0,'totalupah'=>0]);
}
}
if($request->method == 'yearly'){
for($i=0;$i<5;$i++){
if($i == 0){
$yearly_array_date = $yearly_array->startOfYear()->subYears(0);
}else{
$yearly_array_date = $yearly_array->startOfYear()->subYears(1);
}
array_push($array_totalup,['tarikh'=>$yearly_array_date->year,'totalgadai'=>0,'totaltebus'=>0,'totalupah'=>0]);
}
}
$monthly_date = $monthly->startOfMonth()->subMonths(11)->toDateString();
$yearly_date = $yearly->startOfYear()->subYears(4)->toDateString();
foreach($cawangan_all as $index => $cawangan){
if($request->method == 'daily'){
$gadai = Gadai::on($cawangan['mysql'])->selectRaw('SUM(pinjaman) AS totalpinjaman')->addSelect('t_gadai')->groupBy('t_gadai')->where('t_gadai','=',$current->toDateString())->orderBy('t_gadai','desc')->get();
$tebus = Tebus::on($cawangan['mysql'])->selectRaw('SUM(pinjaman) AS totaltebus, SUM(bakiupah) AS totalupah')->addSelect('t_tebus')->groupBy('t_tebus')->where('t_tebus','=',$current->toDateString())->orderBy('t_tebus','desc')->get();
}elseif($request->method == 'monthly'){
$gadai = Gadai::on($cawangan['mysql'])->selectRaw('SUM(pinjaman) AS totalpinjaman')->addSelect(DB::connection($cawangan['mysql'])->raw('DATE_FORMAT(t_gadai, "%Y-%m") as t_gadai'))->groupBy(DB::connection($cawangan['mysql'])->raw("DATE_FORMAT(t_gadai,'%Y%m')"))->whereMonth('t_gadai','<=',$current->month)->orderBy('t_gadai','desc')->get();
$tebus = Tebus::on($cawangan['mysql'])->selectRaw('SUM(pinjaman) AS totaltebus, SUM(bakiupah) AS totalupah')->addSelect(DB::connection($cawangan['mysql'])->raw('DATE_FORMAT(t_tebus, "%Y-%m") as t_tebus'))->groupBy(DB::connection($cawangan['mysql'])->raw("DATE_FORMAT(t_tebus,'%Y%m')"))->whereMonth('t_tebus','<=',$current->month)->orderBy('t_tebus','desc')->get();
$gadai = Gadai::on($cawangan['mysql'])->selectRaw('SUM(pinjaman) AS totalpinjaman')->addSelect(DB::connection($cawangan['mysql'])->raw('DATE_FORMAT(t_gadai, "%Y-%m") as t_gadai'))->groupBy(DB::connection($cawangan['mysql'])->raw("DATE_FORMAT(t_gadai,'%Y%m')"))->where([['t_gadai','<=',$current->toDateString()],['t_gadai','>=',$monthly_date]])->orderBy('t_gadai','desc')->get();
$tebus = Tebus::on($cawangan['mysql'])->selectRaw('SUM(pinjaman) AS totaltebus, SUM(bakiupah) AS totalupah')->addSelect(DB::connection($cawangan['mysql'])->raw('DATE_FORMAT(t_tebus, "%Y-%m") as t_tebus'))->groupBy(DB::connection($cawangan['mysql'])->raw("DATE_FORMAT(t_tebus,'%Y%m')"))->where([['t_tebus','<=',$current->toDateString()],['t_tebus','>=',$monthly_date]])->orderBy('t_tebus','desc')->get();
}elseif($request->method == 'yearly'){
$gadai = Gadai::on($cawangan['mysql'])->selectRaw('SUM(pinjaman) AS totalpinjaman')->addSelect(DB::connection($cawangan['mysql'])->raw('DATE_FORMAT(t_gadai, "%Y-%m") as t_gadai'))->groupBy(DB::connection($cawangan['mysql'])->raw("DATE_FORMAT(t_gadai,'%Y%m')"))->whereMonth('t_gadai','<=',$current->month)->orderBy('t_gadai','desc')->get();
$tebus = Tebus::on($cawangan['mysql'])->selectRaw('SUM(pinjaman) AS totaltebus, SUM(bakiupah) AS totalupah')->addSelect(DB::connection($cawangan['mysql'])->raw('DATE_FORMAT(t_tebus, "%Y-%m") as t_tebus'))->groupBy(DB::connection($cawangan['mysql'])->raw("DATE_FORMAT(t_tebus,'%Y%m')"))->whereMonth('t_tebus','<=',$current->month)->orderBy('t_tebus','desc')->get();
$gadai = Gadai::on($cawangan['mysql'])->selectRaw('SUM(pinjaman) AS totalpinjaman')->addSelect(DB::connection($cawangan['mysql'])->raw('DATE_FORMAT(t_gadai, "%Y") as t_gadai'))->groupBy(DB::connection($cawangan['mysql'])->raw("DATE_FORMAT(t_gadai,'%Y')"))->where([['t_gadai','<=',$current->toDateString()],['t_gadai','>=',$yearly_date]])->orderBy('t_gadai','desc')->get();
$tebus = Tebus::on($cawangan['mysql'])->selectRaw('SUM(pinjaman) AS totaltebus, SUM(bakiupah) AS totalupah')->addSelect(DB::connection($cawangan['mysql'])->raw('DATE_FORMAT(t_tebus, "%Y") as t_tebus'))->groupBy(DB::connection($cawangan['mysql'])->raw("DATE_FORMAT(t_tebus,'%Y')"))->where([['t_tebus','<=',$current->toDateString()],['t_tebus','>=',$yearly_date]])->orderBy('t_tebus','desc')->get();
}
$penggadai_data = [];
if($request->method == 'daily'){
for($i=0;$i<7;$i++){
array_push($penggadai_data,['tarikh'=>$penggadai_cawangan[$i]['t_gadai'],'bilangan_penggadai'=>$penggadai_cawangan[$i]['total_customer'],'total_norujukan'=>$penggadai_cawangan[$i]['total_norujukan']]);
foreach($array_totalup as $array_index=>$totalup){
foreach($gadai as $indexgadai=>$gadai_detail){
if($totalup['tarikh'] == $gadai_detail['t_gadai']){
$total_gadai = $totalup['totalgadai'];
$total_gadai += $gadai_detail['totalpinjaman'];
$array_totalup[$array_index]['totalgadai'] = $total_gadai;
}
}
}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'],'total_norujukan'=>$penggadai_cawangan[$i]['total_norujukan']]);
}
}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'],'total_norujukan'=>$penggadai_cawangan[$i]['total_norujukan']]);
foreach($tebus as $indextebus=>$tebus_detail){
if($totalup['tarikh'] == $tebus_detail['t_tebus']){
$total_tebus = $totalup['totaltebus'];
$total_tebus += $tebus_detail['totaltebus'];
$array_totalup[$array_index]['totaltebus'] = $total_tebus;
$total_upah = $totalup['totalupah'];
$total_upah += $tebus_detail['totalupah'];
$array_totalup[$array_index]['totalupah'] = $total_upah;
}
}
}
array_push($penggadai_all,['cawangan'=>$cawangan['details_caw'],'data_penggadai'=>$penggadai_data]);
}
return response()->json($penggadai_all);
return response()->json($array_totalup);
}