fix imbangduga slow and fix untung rugi terkumpul

This commit is contained in:
Hafifie PKB
2024-01-02 23:15:11 +08:00
parent 7c990969fe
commit 559c5d05ca
4 changed files with 192 additions and 168 deletions
+33 -17
View File
@@ -2964,27 +2964,43 @@ class GadaiController extends Controller
//->whereYear('tarikh_bayaran','=',$current->year)
//->get();
$transaksi_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')
->where('transaksi_keuntungan.tarikh_bayaran' ,'<=', $daterequest)
->get();
if($cawangan['zone'] == 1){
$transaksi_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');
})
->join($cawangan['db_name'] . 'gadai as gad', 'gad.norujukan','=','trans.norujukan')
->where('trans.trans_type','=','A')
->where('transaksi_keuntungan.tarikh_bayaran' ,'<=', $daterequest)
->sum('transaksi_keuntungan.bayaran_keuntungan');
$transaksi = 0;
if($transaksi_data){
foreach($transaksi_data as $index=>$transaksiData){
$gadaiData = Gadai::on($cawangan['mysql'])->where('norujukan',$transaksiData['norujukan'])->whereNotNull('hargajualan')->first();
if($gadaiData){
$transaksi += $transaksiData['bayaran_keuntungan'];
$totalkeuntungan = $keuntungan - $transaksi_data;
}else{
$transaksi_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')
->where('transaksi_keuntungan.tarikh_bayaran' ,'<=', $daterequest)
->get();
$transaksi = 0;
if($transaksi_data){
foreach($transaksi_data as $index=>$transaksiData){
$gadaiData = Gadai::on($cawangan['mysql'])->where('norujukan',$transaksiData['norujukan'])->whereNotNull('hargajualan')->first();
if($gadaiData){
$transaksi += $transaksiData['bayaran_keuntungan'];
}
}
}
}
$totalkeuntungan = $keuntungan - $transaksi;
$totalkeuntungan = $keuntungan - $transaksi;
}
return response()->json($totalkeuntungan,200);
}