From 603abad3f94b062f5e480047b1783beea6fffeff Mon Sep 17 00:00:00 2001 From: hafifierahman Date: Wed, 27 Jul 2022 10:46:51 +0800 Subject: [PATCH] untuk audit akaun --- app/Http/Controllers/AdminPageController.php | 94 ++++++++++++++++++++ routes/web.php | 3 + 2 files changed, 97 insertions(+) diff --git a/app/Http/Controllers/AdminPageController.php b/app/Http/Controllers/AdminPageController.php index 511d2df..8f9811e 100644 --- a/app/Http/Controllers/AdminPageController.php +++ b/app/Http/Controllers/AdminPageController.php @@ -2579,4 +2579,98 @@ class AdminPageController extends Controller } } + + public function KeuntunganSebenarExport(Request $request){ + + $current = Carbon::now(); + $current = new Carbon(); + + $cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$request->kodcaw)->first(); + + if($request->jenistebus == 'T') + { + $bukanansuran_data = TransaksiKeuntungan::on('mysql7') + ->leftJoin('transaction as trans', function($join) + { + $join->on('transaksi_keuntungan.norujukan', '=', 'trans.norujukan'); + $join->on('transaksi_keuntungan.tarikh_bayaran', '=', 'trans.created_at'); + }) + ->where('trans.trans_type','!=','A') + ->whereDate('transaksi_keuntungan.tarikh_bayaran' ,'>=', $request->mula) + ->whereDate('transaksi_keuntungan.tarikh_bayaran' ,'<=', $request->hingga) + ->whereYear('tarikh_bayaran','=',$current->year) + ->where('trans.kodcaw',$request->kodcaw); + + $bukanansuran_get = $bukanansuran_data->get(); + $bukanansuran_pluck = $bukanansuran_data->pluck('trans.norujukan'); + + $intersection = $bukanansuran_get->intersectByKeys(Gadai::on($cawangan['mysql'])->whereIn('norujukan',$bukanansuran_pluck)->whereNotNull('hargajualan')->get()); + $collectionbukanansurandata = $intersection->toArray(); + + dd($intersection->pluck('norujukan')); + + return response()->json($collectionbukanansurandata,200); + }else{ + $ansuran_data = TransaksiKeuntungan::on('mysql7') + // ->join($cawangan['db_name'].'.gadai as db2','transaksi_keuntungan.norujukan','=','db2.norujukan') + ->leftJoin('transaction as trans', function($join) + { + $join->on('transaksi_keuntungan.norujukan', '=', 'trans.norujukan'); + $join->on('transaksi_keuntungan.tarikh_bayaran', '=', 'trans.created_at'); + }) + ->where('trans.trans_type','=','A') + ->whereDate('transaksi_keuntungan.tarikh_bayaran' ,'>=', $request->mula) + ->whereDate('transaksi_keuntungan.tarikh_bayaran' ,'<=', $request->hingga) + ->whereYear('tarikh_bayaran','=',$current->year) + ->where('trans.kodcaw',$request->kodcaw); + + $ansuran_get = $ansuran_data->get(); + $ansuran_pluck = $ansuran_data->pluck('trans.norujukan'); + + $intersectiondiff = $ansuran_get->diffKeys(Gadai::on($cawangan['mysql'])->whereIn('norujukan',$ansuran_pluck)->whereNotNull('hargajualan')->get()); + $intersection = $ansuran_get->intersectByKeys(Gadai::on($cawangan['mysql'])->whereIn('norujukan',$ansuran_pluck)->whereNotNull('hargajualan')->get()); + + dd($intersectiondiff->toArray(),$intersection->toArray()); + // dd($ansuran_pluck); + $collectionansurandata = $intersection->toArray(); + + // $gadaiData = Gadai::on($cawangan['mysql'])->whereIn('norujukan', $ansuran_pluck)->where('hargajualan','<>',null)->pluck('norujukan'); + + // dd($gadaiData); + + dd($intersection->pluck('norujukan')); + + // $ansuran_data = TransaksiKeuntungan::on('mysql7') + // // ->join($cawangan['db_name'].'.gadai as db2','transaksi_keuntungan.norujukan','=','db2.norujukan') + // ->leftJoin('transaction as trans', function($join) + // { + // $join->on('transaksi_keuntungan.norujukan', '=', 'trans.norujukan'); + // $join->on('transaksi_keuntungan.tarikh_bayaran', '=', 'trans.created_at'); + // }) + // ->where('trans.trans_type','=','A') + // ->whereDate('transaksi_keuntungan.tarikh_bayaran' ,'>=', $request->mula) + // ->whereDate('transaksi_keuntungan.tarikh_bayaran' ,'<=', $request->hingga) + // ->whereYear('tarikh_bayaran','=',$current->year) + // ->where('trans.kodcaw',$request->kodcaw) + // // ->whereNotNull('db2.hargajualan') + // // ->sum('bayaran_keuntungan'); + // // ->get(); + // ->pluck('trans.norujukan'); + + // $gadaiData = Gadai::on($cawangan['mysql'])->whereIn('norujukan', $ansuran_data)->where('hargajualan','<>',null)->pluck('norujukan'); + + // // $ansuran = 0; + // // if($ansuran_data){ + // // foreach($ansuran_data as $index=>$ansuranData){ + // // $gadaiData = Gadai::on($cawangan['mysql'])->where([['norujukan',$ansuranData['norujukan']],['hargajualan','<>',null]])->first(); + // // if($gadaiData){ + // // $ansuran += $ansuranData['bayaran_keuntungan']; + // // } + // // } + // // } + + // dd($gadaiData); + return response()->json($collectionansurandata,200); + } + } } \ No newline at end of file diff --git a/routes/web.php b/routes/web.php index 522cfd5..66c1438 100644 --- a/routes/web.php +++ b/routes/web.php @@ -716,6 +716,9 @@ $router->group(['prefix'=>'admin'], function () use ($router){ $router->get('wtd/rekod',['uses'=>'AdminPageController@rekodWTD']); $router->get('wtd/rekod/{batchno}',['uses'=>'AdminPageController@rekodWTDByBatchNo']); + $router->get('audit/keuntungansebenar',['uses'=>'AdminPageController@KeuntunganSebenarExport']); + +