added account service
This commit is contained in:
@@ -54,6 +54,7 @@ use App\RingkasanGadai;
|
||||
use App\RingkasanLelong;
|
||||
use App\RingkasanMain;
|
||||
use App\RingkasanTebus;
|
||||
use App\imbangdugabackup;
|
||||
use App\Services\RingkasanHarianServices;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use DateTime;
|
||||
@@ -3120,80 +3121,111 @@ class AdminPageController extends Controller
|
||||
$year = $current->year;
|
||||
$month = $tarikh->month;
|
||||
|
||||
$get_norujukan = Gadai::on($cawangan['mysql'])
|
||||
->selectRaw("norujukan,CASE WHEN (YEAR(t_gadai) = YEAR(t_update) and MONTH(t_gadai) = MONTH(t_update)) THEN '1' ELSE '0' END AS result")
|
||||
->whereNotNull('hargajualan')
|
||||
->having('result','=',1)
|
||||
->whereYear('t_gadai','=',$year)
|
||||
->whereMonth('t_gadai','<=',$month)
|
||||
->where('sttebus','<>','')
|
||||
->pluck('norujukan');
|
||||
|
||||
$sum_keun = Transaction::on('mysql7')
|
||||
->selectRaw("trans.norujukan,SUM(CASE WHEN (transaction.trans_type) <> 'A' THEN (trans.keuntungan_rebet) ELSE 0 END) AS sum_keun,SUM(CASE WHEN (transaction.trans_type) = 'A' THEN (trans.bayaran_keuntungan) ELSE 0 END) AS sum_bayaran")
|
||||
->leftJoin('transaksi_keuntungan as trans', function($join)
|
||||
{
|
||||
$join->on('transaction.norujukan', '=', 'trans.norujukan');
|
||||
$join->on('transaction.created_at', '=', 'trans.tarikh_bayaran');
|
||||
})
|
||||
->whereIn('trans.norujukan',$get_norujukan)->get()->toArray();
|
||||
|
||||
$sum_keuntungan = ($sum_keun) ? $sum_keun[0]['sum_keun'] : 0;
|
||||
$sum_bayaran = ($sum_keun) ? $sum_keun[0]['sum_bayaran'] : 0;
|
||||
|
||||
/* Ansuran masuk dalam ni */
|
||||
|
||||
$collection_trans = 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.kodcaw','=',$request->kodcaw)
|
||||
->where('trans.trans_type','=','A')
|
||||
->where('transaksi_keuntungan.margin_semasa','>','0')
|
||||
->whereYear('transaksi_keuntungan.tarikh_bayaran','=',$year)
|
||||
->whereMonth('transaksi_keuntungan.tarikh_bayaran','<=',$month)
|
||||
->get();
|
||||
|
||||
|
||||
$array_norujukan = $collection_trans->pluck('norujukan')->toArray();
|
||||
|
||||
$collection_gadai = Gadai::on($cawangan['mysql'])->whereIn('norujukan',$array_norujukan)->where('tagbaru',1)->get();
|
||||
|
||||
$keuntungan_semasa_collection = $collection_trans->filter(function ($trans) use ($collection_gadai) {
|
||||
|
||||
foreach ($collection_gadai as $gadai) {
|
||||
if($gadai->norujukan === $trans->norujukan){
|
||||
$t_gadai = Carbon::parse($gadai->t_gadai);
|
||||
$t_bayaran = Carbon::parse($trans->tarikh_bayaran);
|
||||
|
||||
if ($t_gadai->month !== $t_bayaran->month) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
});
|
||||
|
||||
$summation_ansuran = $keuntungan_semasa_collection->sum('bayaran_keuntungan');
|
||||
|
||||
// $get_norujukan_ansuran = Gadai::on($cawangan['mysql'])
|
||||
// $get_norujukan = Gadai::on($cawangan['mysql'])
|
||||
// ->selectRaw("norujukan,CASE WHEN (YEAR(t_gadai) = YEAR(t_update) and MONTH(t_gadai) = MONTH(t_update)) THEN '1' ELSE '0' END AS result")
|
||||
// ->whereNotNull('hargajualan')
|
||||
// ->having('result','=',1)
|
||||
// ->whereYear('t_gadai','=',$year)
|
||||
// ->whereMonth('t_gadai','<=',$month)
|
||||
// ->where('sttebus','=','')
|
||||
// ->where('tagbaru','=',1)
|
||||
// ->where('sttebus','<>','')
|
||||
// ->pluck('norujukan');
|
||||
|
||||
// $summation_ansuran = TransaksiKeuntungan::on('mysql7')
|
||||
// ->whereIn('norujukan',$get_norujukan_ansuran)->sum('bayaran_keuntungan');
|
||||
// $sum_keun = Transaction::on('mysql7')
|
||||
// ->selectRaw("trans.norujukan,SUM(CASE WHEN (transaction.trans_type) <> 'A' THEN (trans.keuntungan_rebet) ELSE 0 END) AS sum_keun,SUM(CASE WHEN (transaction.trans_type) = 'A' THEN (trans.bayaran_keuntungan) ELSE 0 END) AS sum_bayaran")
|
||||
// ->leftJoin('transaksi_keuntungan as trans', function($join)
|
||||
// {
|
||||
// $join->on('transaction.norujukan', '=', 'trans.norujukan');
|
||||
// $join->on('transaction.created_at', '=', 'trans.tarikh_bayaran');
|
||||
// })
|
||||
// ->whereIn('trans.norujukan',$get_norujukan)->get()->toArray();
|
||||
|
||||
// $sum_keuntungan = ($sum_keun) ? $sum_keun[0]['sum_keun'] : 0;
|
||||
// $sum_bayaran = ($sum_keun) ? $sum_keun[0]['sum_bayaran'] : 0;
|
||||
|
||||
// /* Ansuran masuk dalam ni */
|
||||
|
||||
// $collection_trans = 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.kodcaw','=',$request->kodcaw)
|
||||
// ->where('trans.trans_type','=','A')
|
||||
// ->where('transaksi_keuntungan.margin_semasa','>','0')
|
||||
// ->whereYear('transaksi_keuntungan.tarikh_bayaran','=',$year)
|
||||
// ->whereMonth('transaksi_keuntungan.tarikh_bayaran','<=',$month)
|
||||
// ->get();
|
||||
|
||||
|
||||
// $array_norujukan = $collection_trans->pluck('norujukan')->toArray();
|
||||
|
||||
// $collection_gadai = Gadai::on($cawangan['mysql'])->whereIn('norujukan',$array_norujukan)->where('tagbaru',1)->get();
|
||||
|
||||
// $keuntungan_semasa_collection = $collection_trans->filter(function ($trans) use ($collection_gadai) {
|
||||
|
||||
// foreach ($collection_gadai as $gadai) {
|
||||
// if($gadai->norujukan === $trans->norujukan){
|
||||
// $t_gadai = Carbon::parse($gadai->t_gadai);
|
||||
// $t_bayaran = Carbon::parse($trans->tarikh_bayaran);
|
||||
|
||||
// if ($t_gadai->month !== $t_bayaran->month) {
|
||||
// return false;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// return true;
|
||||
// });
|
||||
|
||||
// $summation_ansuran = $keuntungan_semasa_collection->sum('bayaran_keuntungan');
|
||||
|
||||
|
||||
// $total = $sum_keuntungan + $sum_bayaran + $summation_ansuran;
|
||||
|
||||
$lastDayPreviousMonth = $tarikh->subMonthsNoOverflow()->endOfMonth()->toDateString();
|
||||
|
||||
$get_imbangduga = imbangdugabackup::on($cawangan['mysql'])->where('tarikh',$lastDayPreviousMonth)->first()->toArray();
|
||||
|
||||
$collection_trans = Transaction::on('mysql7')
|
||||
->leftJoin('transaksi_keuntungan as trans', function ($join) {
|
||||
$join->on('transaction.norujukan', '=', 'trans.norujukan');
|
||||
$join->on('transaction.created_at', '=', 'trans.tarikh_bayaran');
|
||||
})
|
||||
->where('transaction.kodcaw', $request->kodcaw)
|
||||
->whereYear('transaction.created_at', '=', $year)
|
||||
->whereMonth('transaction.created_at', '=', $month)
|
||||
->get();
|
||||
|
||||
$array_norujukan = $collection_trans->pluck('norujukan')->toArray();
|
||||
|
||||
$collection_gadai = Gadai::on($cawangan['mysql'])->whereIn('norujukan', $array_norujukan)->whereYear('t_gadai',$year)->get();
|
||||
|
||||
$keuntungan_semasa_collection = $collection_trans->filter(function ($trans) use ($collection_gadai) {
|
||||
foreach ($collection_gadai as $gadai) {
|
||||
if ($gadai->norujukan === $trans->norujukan) {
|
||||
$t_gadai = Carbon::parse($gadai->t_gadai);
|
||||
$t_bayaran = Carbon::parse($trans->tarikh_bayaran);
|
||||
|
||||
if ($t_gadai->month !== $t_bayaran->month) {
|
||||
return false;
|
||||
}else{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
return false;
|
||||
});
|
||||
|
||||
$total_ansuran = $keuntungan_semasa_collection->filter(function ($transaction){
|
||||
return $transaction->trans_type == 'A';
|
||||
})->sum('bayaran_keuntungan');
|
||||
|
||||
$total_tebus = $keuntungan_semasa_collection->filter(function ($transaction){
|
||||
return $transaction->trans_type !== 'A';
|
||||
})->sum('keuntungan_rebet');
|
||||
|
||||
$total = $total_ansuran + $total_tebus + $get_imbangduga['keun_sebenar'];
|
||||
|
||||
$total = $sum_keuntungan + $sum_bayaran + $summation_ansuran;
|
||||
return response()->json($total);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user