added account service

This commit is contained in:
hafifierahman
2024-10-08 07:48:21 +08:00
parent 1bb813e22e
commit d3fe2cf03d
7 changed files with 924 additions and 167 deletions
+96 -64
View File
@@ -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);
}
+3 -1
View File
@@ -1307,10 +1307,12 @@ class LaporanController extends Controller
if ($t_gadai->month !== $t_bayaran->month) {
return false;
}else{
return true;
}
}
}
return true;
return false;
});
$summation_ansuran = $keuntungan_semasa_collection->sum('bayaran_keuntungan');
+91 -30
View File
@@ -1736,39 +1736,41 @@ class TebusController extends Controller
$result_audit_backdate = $this->StokAuditGenerateTerakru($month_sebelum,$cawangan,$year_generate);
}
$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','>',7)
->whereMonth('t_gadai','=',$month)
->where('sttebus','<>','')
->pluck('norujukan');
// $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','>',7)
// ->whereMonth('t_gadai','=',$month)
// ->where('sttebus','<>','')
// ->pluck('norujukan');
$sum_keun_tebus = Transaction::on('mysql7')
->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)
->where('transaction.trans_type','<>','A')
->where('trans.margin_semasa','=',0) //3.80
->sum('keuntungan_rebet');
// $sum_keun_tebus = Transaction::on('mysql7')
// ->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)
// ->where('transaction.trans_type','<>','A')
// ->where('trans.margin_semasa','=',0) //3.80
// ->sum('keuntungan_rebet');
$sum_keun_ansuran = Transaction::on('mysql7')
->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)
->where('transaction.trans_type','A')
->where('trans.margin_semasa','=',0)
->sum('bayaran_keuntungan');
// $sum_keun_ansuran = Transaction::on('mysql7')
// ->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)
// ->where('transaction.trans_type','A')
// ->where('trans.margin_semasa','=',0)
// ->sum('bayaran_keuntungan');
$total = $sum_keun_tebus + $sum_keun_ansuran;
// $total = $sum_keun_tebus + $sum_keun_ansuran;
$total = $this->calculateKeuntunganSemasa($tarikh,$request->kodcaw);
if(!$determine_past->isToday()){
$calculate_month = (int)$month_sekarang - $latest_month_akrunet->bulan;
@@ -1893,6 +1895,65 @@ class TebusController extends Controller
return response()->json($total_accrual_net);
}
private function calculateKeuntunganSemasa($currentDate,$kodcaw)
{
$cawangan = Cawangan::on('mysql7')->where('kodcaw', '=', $kodcaw)->first();
$firstMonth = (clone $currentDate)->firstOfMonth();
$lastMonth = (clone $currentDate)->endOfMonth();
/* Start Keuntungan Semasa Calculation */
$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', $kodcaw)
->whereYear('transaction.created_at', '=', $currentDate->year)
->whereMonth('transaction.created_at', '=', $currentDate->month)
->get();
$array_norujukan = $collection_trans->pluck('norujukan')->toArray();
$collection_gadai = Gadai::on($cawangan['mysql'])->whereIn('norujukan', $array_norujukan)->where('tagbaru',0)->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) && ($t_gadai->year == $t_bayaran->year)) {
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');
/* Keuntungan Lelong */
$upahlelong = Lelong::on($cawangan['mysql'])
->where([['t_jual', '>=', $firstMonth], ['t_jual', '<=', $lastMonth], ['t_jual', '>', '2022-07-24']])
->whereYear('t_jual', '=', $currentDate->year)
->sum('bakiupah');
$total_keuntungan_semasa = ($total_ansuran + $total_tebus + $upahlelong);
/* End Keuntungan Semasa Calculation */
return $total_keuntungan_semasa;
}
public function kiraupahUjrahOnePercent($kodcaw,$norujukan){
$master = new MasterServices($kodcaw);
$response = $master->kiraupahUjrahOnePercent($kodcaw,$norujukan);
@@ -0,0 +1,631 @@
<?php
namespace App\Services\Reports\Account;
use App\Advansur;
use App\Cawangan;
use App\Gadai;
use App\GlCode;
use App\GlDetail;
use App\imbangdugalama;
use App\Lelong;
use App\Panjar;
use App\Tebus;
use App\Transaction;
use App\TransaksiKeuntungan;
use App\WTD;
use Carbon\Carbon;
class GeneralLedger
{
protected $kodcaw;
protected $mula;
protected $hingga;
public function __construct($kodcaw,$mula,$hingga){
$this->kodcaw = $kodcaw;
$this->mula = $mula;
$this->hingga = $hingga;
}
private function getTarikhTawarruq($kodcaw){
switch ($this->kodcaw) {
case 'KB2':
$tarikhtawarruq = '2021-04-13';
break;
case 'WCY':
$tarikhtawarruq = '2021-05-04';
break;
case '1STOP':
$tarikhtawarruq = '2021-05-09';
break;
case '020301':
$tarikhtawarruq = '2021-05-18';
break;
case 'ALS':
$tarikhtawarruq = '2021-05-24';
break;
case 'WB':
$tarikhtawarruq = '2021-05-24';
break;
case 'APM':
$tarikhtawarruq = '2021-06-08';
break;
case 'ARM':
$tarikhtawarruq = '2021-06-08';
break;
case '020306':
$tarikhtawarruq = '2021-06-08';
break;
case '010311':
$tarikhtawarruq = '2021-06-13';
break;
case 'GC':
$tarikhtawarruq = '2021-06-13';
break;
case 'JLI':
$tarikhtawarruq = '2021-06-13';
break;
case '010621':
$tarikhtawarruq = '2021-06-15';
break;
case 'ARP':
$tarikhtawarruq = '2021-06-15';
break;
case '010621':
$tarikhtawarruq = '2021-06-21';
break;
case '010136':
$tarikhtawarruq = '2021-06-20';
break;
case '011235':
$tarikhtawarruq = '2021-06-21';
break;
case '011227':
$tarikhtawarruq = '2021-06-21';
break;
case '010620':
$tarikhtawarruq = '2021-06-21';
break;
case '010617':
$tarikhtawarruq = '2021-06-21';
break;
case '010915':
$tarikhtawarruq = '2021-06-22';
break;
case '011228':
$tarikhtawarruq = '2021-06-22';
break;
case '010219':
$tarikhtawarruq = '2021-06-22';
break;
case '011230':
$tarikhtawarruq = '2021-06-23';
break;
case '011229':
$tarikhtawarruq = '2021-06-22';
break;
case '011013':
$tarikhtawarruq = '2021-06-23';
break;
case '011412':
$tarikhtawarruq = '2021-06-23';
break;
case '011234':
$tarikhtawarruq = '2021-06-28';
break;
case '020303':
$tarikhtawarruq = '2021-06-29';
break;
case '010618':
$tarikhtawarruq = '2021-06-29';
break;
case '011231':
$tarikhtawarruq = '2021-06-23';
break;
case '011232':
$tarikhtawarruq = '2021-06-28';
break;
case '011233':
$tarikhtawarruq = '2021-06-28';
break;
}
return $tarikhtawarruq;
}
public function getPinjamanDiberi()
{
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$this->kodcaw)->first();
$gadai = Gadai::on($cawangan['mysql'])
->where('tagpalsu','=',0)
->where([['t_gadai','>=',$this->mula],['t_gadai','<=',$this->hingga]])
->sum('pinjaman');
$tebus = Gadai::on($cawangan['mysql'])
->join('tebus as teb','teb.norujukan','=','gadai.norujukan')
->where('gadai.sttebus','=','T')
->where([['teb.t_tebus','>=',$this->mula],['teb.t_tebus','<=',$this->hingga]])
->sum('teb.pinjaman');
$pembiayaanlelong = Lelong::on($cawangan['mysql'])
->join('gadai as gad','gad.norujukan','=','lelong.norujukan')
->where([['t_jual','>=',$this->mula],['t_jual','<=',$this->hingga]])
->sum('lelong.pinjaman');
$tebus = $tebus + $pembiayaanlelong;
$array_rekodemas = ['Gadai' => $gadai,'Tebus' => $tebus];
return $array_rekodemas;
}
public function getPembiayaanTawarruq()
{
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$this->kodcaw)->first();
$Gadai = Gadai::on($cawangan['mysql'])->where([['t_gadai','>=',$this->mula],['t_gadai','<=',$this->hingga],['hargajualan','<>','NULL']])->sum('pinjaman');
$Tebus = Gadai::on($cawangan['mysql'])
->where('gadai.tagpalsu','=',0)
->where([['gadai.t_update','>=',$this->mula],['gadai.t_update','<=',$this->hingga],['gadai.hargajualan','<>','NULL']])
->whereIn('gadai.sttebus', ['T', 'L'])
->sum('gadai.pinjaman');
$rekod_pinjamandiberi = ['Gadai' => $Gadai,'Tebus' => $Tebus];
return $rekod_pinjamandiberi;
}
public function getBayaranPendahuluan()
{
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$this->kodcaw)->first();
$datemula = new Carbon($this->mula);
$datemula->addDays(1);
$datehingga = new Carbon($this->hingga);
$datehingga->addDays(1);
$transaksi_data = TransaksiKeuntungan::on('mysql7')
->whereDate('tarikh_bayaran','<=', $this->hingga)
->whereDate('tarikh_bayaran','>=', $this->mula)
->where('kodcaw',$this->kodcaw)
->pluck('norujukan');
$transaksi_kredit_gadai = Gadai::on($cawangan['mysql'])
->whereIn('norujukan',$transaksi_data)
->where([['hargajualan','<>','null']])
->pluck('norujukan');
$transaksi_kredit = 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');
})
->whereIn('transaksi_keuntungan.norujukan',$transaksi_kredit_gadai)
->where('trans.trans_type','=','A')
->whereDate('tarikh_bayaran','<=', $this->hingga)
->whereDate('tarikh_bayaran','>=', $this->mula)
->sum('bayaran_pembiayaan');
$tebus = Gadai::on($cawangan['mysql'])
->select('gadai.norujukan','gadai.hargajualan','gadai.bakihargajualan')
->whereIn('gadai.sttebus',['T','L'])
->where([['t_update','>=',$this->mula],['t_update','<=',$this->hingga]])
->groupBy('gadai.norujukan')
->get();
$arraytebus = array();
foreach($tebus as $index => $t)
{
if($t['hargajualan'] != $t['bakihargajualan'])
{
array_push($arraytebus,$t['norujukan']);
}
}
$transaksi_debit = 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')
->whereIn('trans.norujukan',$arraytebus)
->sum('bayaran_pembiayaan');
$arraylejer = ["keluar" => $transaksi_debit,"masuk" => $transaksi_kredit];
return $arraylejer;
}
public function getPendahuluanSerahan()
{
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$this->kodcaw)->first();
$serahanpkb = '1000/020';
$serahanjmc = '1000/026';
$pendahuluanpkb = '7000/102';
$pendahuluanjmc = '7000/106';
$serahankoperasi = '1000/090';
//Selepas Tawarruq
$serahanpkbTawarruq = GlDetail::on($cawangan['mysql'])
->where('ktacct','=',$serahanpkb)
->where('tarikh','>=', $this->mula)
->where('tarikh','<=', $this->hingga)
->where('tarikh','>','2021-03-24')
->sum('serahan');
//Sebelum Tawarruq
if($this->kodcaw == 'KB2' || $this->kodcaw == 'WCY' || $this->kodcaw == '1STOP' || $this->kodcaw == 'ARM' || $this->kodcaw == 'APM' || $this->kodcaw == '010621' || $this->kodcaw == '010915')
{
$serahanpkb = GlDetail::on($cawangan['mysql'])
->where('dtacct','=',$serahanpkb)
->where('tarikh','>=', $this->mula)
->where('tarikh','<=', $this->hingga)
->where('tarikh','>','2013-12-31')
->sum('amaun');
$serahanJMC = GlDetail::on($cawangan['mysql'])
->where('dtacct','=',$serahanjmc)
->where('tarikh','>=', $this->mula)
->where('tarikh','<=', $this->hingga)
->where('tarikh','>','2013-12-31')
->sum('amaun');
if($this->mula <= '2013-12-31')
{
$serahanpkblama = imbangdugalama::on($cawangan['mysql'])
->sum('serahan_pkb');
$serahanjmclama = imbangdugalama::on($cawangan['mysql'])
->sum('serahan_jmc');
$totaljmc = $serahanJMC + $serahanjmclama;
$totalpkb = $serahanpkb + $serahanpkblama;
$totalserahan = $serahanpkbTawarruq + $totaljmc + $totalpkb;
}else{
$totaljmc = $serahanJMC;
$totalpkb = $serahanpkb;
$totalserahan = $serahanpkbTawarruq + $totaljmc + $totalpkb;
}
}else{
if($this->kodcaw == '020301')
$serahanbaru = '1000/030';
else
$serahanbaru = '1000/026';
$serahanpkb = GlDetail::on($cawangan['mysql'])
->where('dtacct','=',$serahanpkb)
->where('tarikh','>=', $this->mula)
->where('tarikh','<=', $this->hingga)
->sum('amaun');
$serahanJMC = GlDetail::on($cawangan['mysql'])
->where('dtacct','=',$serahanbaru)
->where('tarikh','>=', $this->mula)
->where('tarikh','<=', $this->hingga)
->sum('amaun');
$totalserahan = $serahanpkbTawarruq + $serahanpkb + $serahanJMC;
}
//Selepas Tawarruq
$pendahuluanPKBtawarruq = GlDetail::on($cawangan['mysql'])
->where('ktacct','=',$pendahuluanpkb)
->where([['tarikh','>=', $this->mula],['tarikh','<=', $this->hingga],['tarikh','>','2021-03-24']])
->sum('pendahuluan');
//Sebelum Tawarruq
$pendahuluanPKB = GlDetail::on($cawangan['mysql'])
->where('ktacct','=',$pendahuluanpkb)
->where([['tarikh','>=', $this->mula],['tarikh','<=', $this->hingga],['tarikh','>','2013-12-31']])
->sum('amaun');
$pendahuluanJMC = GlDetail::on($cawangan['mysql'])
->where('ktacct','=','7000/106')
->where([['tarikh','>=', $this->mula],['tarikh','<=', $this->hingga],['tarikh','>','2013-12-31']])
->sum('amaun');
if($this->mula <= '2013-12-31')
{
$pendahuluanpkblama = imbangdugalama::on($cawangan['mysql'])
->sum('pendahuluan_pkb');
$pendahuluanjmclama = imbangdugalama::on($cawangan['mysql'])
->sum('pendahuluan_jmc');
$total = $pendahuluanPKBtawarruq + $pendahuluanjmclama + $pendahuluanpkblama + $pendahuluanPKB + $pendahuluanJMC;
$pindahkekpkb = GlCode::on($cawangan['mysql'])
->where('glcode','=',$serahankoperasi)
->sum('amaun');
}else{
$total = $pendahuluanPKBtawarruq + $pendahuluanPKB + $pendahuluanJMC;
$pindahkekpkb = 0;
}
$arraypend = ['pendahuluan' => $total,'serahan' => $totalserahan,'pindahkekpkb' => $pindahkekpkb];
return $arraypend;
}
public function getpanjar()
{
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$this->kodcaw)->first();
$baikidanselenggara = Panjar::on($cawangan['mysql'])
->where('tarikh','>=', $this->mula)
->where('tarikh','<=', $this->hingga)
->where('tag', '=', 2)
->sum('bayaran');
$perubatan = Panjar::on($cawangan['mysql'])
->where('tarikh','>=', $this->mula)
->where('tarikh','<=', $this->hingga)
->where('tag', '=', 1)
->sum('bayaran');
$keraian = Panjar::on($cawangan['mysql'])
->where('tarikh','>=', $this->mula)
->where('tarikh','<=', $this->hingga)
->where('tag', '=', 3)
->sum('bayaran');
$arraycalculation = ['bds' => $baikidanselenggara, 'perubatan' => $perubatan, 'keraian' => $keraian];
return $arraycalculation;
}
public function BakiLelongCalculation()
{
$cas_lelong = 0;
$jumlah_lelong = 0;
$baki_lelong = 0;
$rugi_lelong = 0;
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$this->kodcaw)->first();
$bakilelong = Lelong::on($cawangan['mysql'])
->where('trkhtuntut','>=',$this->mula)
->where('trkhtuntut','<=',$this->hingga)
->where('baki','>=',0)
->sum('baki');
$rugilelong = Lelong::on($cawangan['mysql'])
->where('trkhtuntut','>=',$this->mula)
->where('trkhtuntut','<=',$this->hingga)
->where('baki','<',0)
->sum('baki');
$data_lelong = Lelong::on($cawangan['mysql'])->where([['t_jual','>=',$this->mula],['t_jual','<=',$this->hingga]])->get();
foreach($data_lelong as $index=>$lelong){
if($lelong['baki'] >= 0){
$cas_lelong += $lelong['cajlelong'];
$jumlah_lelong += $lelong['hargajual'];
$baki_lelong += $lelong['baki'];
}elseif($lelong['baki'] < 0){
$cas_lelong += $lelong['cajlelong'];
$jumlah_lelong += $lelong['hargajual'];
$rugi_lelong += abs($lelong['baki']);
}
}
$arraylelong = ['bakilelong' => $bakilelong, 'rugilelong' => $rugilelong, 'baki' => $baki_lelong, 'rugi' => $rugi_lelong, 'jumlahlelong' => $jumlah_lelong, 'caslelong' => $cas_lelong];
return $arraylelong;
}
public function getKeuntunganSebenar()
{
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$this->kodcaw)->first();
$total = 0;
$keuntungansebelumtawarruq = 0;
//Keuntungan Selepas Tawarruq
$keuntungan_data = TransaksiKeuntungan::on('mysql7')
// ->join($cawangan['db_name'].'.gadai as db2','transaksi_keuntungan.norujukan','=','db2.norujukan')
->whereDate('transaksi_keuntungan.tarikh_bayaran' ,'>=', $this->mula)
->whereDate('transaksi_keuntungan.tarikh_bayaran' ,'<=', $this->hingga)
// ->whereYear('transaksi_keuntungan.tarikh_bayaran','=',$current->year)
// ->whereNull('db2.hargajualan')
// ->sum('bayaran_keuntungan');
// ->get();
->pluck('norujukan');
$gadaiData = Gadai::on($cawangan['mysql'])->whereIn('norujukan', $keuntungan_data)->whereNull('hargajualan')->pluck('norujukan');
$keuntungan = TransaksiKeuntungan::on('mysql7')->whereIn('norujukan',$gadaiData)->sum('bayaran_keuntungan');
// $keuntungan = 0;
// if($keuntungan_data){
// foreach($keuntungan_data as $index=>$keuntunganData){
// $gadaiData = Gadai::on($cawangan['mysql'])->where([['norujukan',$keuntunganData['norujukan']],['hargajualan',null]])->first();
// if($gadaiData){
// $keuntungan += $keuntunganData['bayaran_keuntungan'];
// }
// }
// }
$upahtebus = Tebus::on($cawangan['mysql'])
->where([['t_tebus','>=',$this->mula],['t_tebus','<=',$this->hingga],['t_tebus','>','2013-12-31']])
// ->whereYear('t_tebus','=',$current->year)
->sum('upahdibayar');
$upahlelong = Lelong::on($cawangan['mysql'])
->where([['t_jual','>=',$this->mula],['t_jual','<=',$this->hingga],['t_jual','>','2013-12-31'],['t_jual','<=','2022-07-24']])
// ->whereYear('t_jual','=',$current->year)
->sum('bakiupah');
$upahansur = Advansur::on($cawangan['mysql'])
->where('tarikh','>=',$this->mula)
->where('tarikh','<=',$this->hingga)
// ->whereYear('tarikh','=',$current->year)
->sum('upahdibayar');
$keuntungansebelumtawarruq = $upahtebus + $upahlelong + $upahansur;
// $keuntunganselepastawarruq = $keuntunganselepastawarruqupah;
// $total = $keuntungansebelumtawarruq + $keuntunganselepastawarruq;
$total = $keuntungansebelumtawarruq + $keuntungan;
return $total;
}
public function SemakanKeuntunganLejer(){
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$this->kodcaw)->first();
$current = Carbon::now();
$current = new Carbon();
$mulaCarbon = new Carbon($this->mula);
$hinggaCarbon = new Carbon($this->hingga);
/* Start Keuntungan Sebenar Calculation */
$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)->whereDate('t_update','>=',$this->mula)->whereDate('t_update','<=',$this->hingga)->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' AND (trans.margin_semasa) = 0 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;
// $get_norujukan_ansuran = 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)
// ->whereDate('t_update','>=',$this->mula)->whereDate('t_update','<=',$this->hingga)
// ->where('sttebus','=','')
// ->where('tagbaru','=',1)
// ->pluck('norujukan');
// $summation_ansuran = TransaksiKeuntungan::on('mysql7')
// ->whereIn('norujukan',$get_norujukan_ansuran)->sum('bayaran_keuntungan');
$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','=',$this->kodcaw)
->where('trans.trans_type','=','A')
->where('transaksi_keuntungan.margin_semasa','>','0')
->whereDate('transaksi_keuntungan.tarikh_bayaran','>=',$this->mula)
->whereDate('transaksi_keuntungan.tarikh_bayaran','<=',$this->hingga)
->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;
}else{
return true;
}
}
}
return false;
});
$summation_ansuran = $keuntungan_semasa_collection->sum('bayaran_keuntungan');
$total_keuntungan_sebenar = $sum_keuntungan + $sum_bayaran + $summation_ansuran;
/* End Keuntungan Sebenar Calculation */
/* Start Keuntungan Semasa Calculation */
$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')->where('tagbaru',0)->having('result','=',0)->pluck('norujukan');
$summation = Transaction::on('mysql7')
->selectRaw("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)
->whereDate('trans.tarikh_bayaran' ,'>=', $this->mula)
->whereDate('trans.tarikh_bayaran' ,'<=', $this->hingga)
->whereYear('tarikh_bayaran','=',$mulaCarbon->year)
->where('trans.kodcaw',$this->kodcaw)
->get()->toArray();
$upahlelong = Lelong::on($cawangan['mysql'])
->where([['t_jual','>=',$this->mula],['t_jual','<=',$this->hingga],['t_jual','>','2022-07-24']])
->whereYear('t_jual','=',$mulaCarbon->year)
->sum('bakiupah');
$sum_keuntungan = ($summation) ? $summation[0]['sum_keun'] : 0;
$sum_bayaran = ($summation) ? $summation[0]['sum_bayaran'] : 0;
// $total_keuntungan_semasa = ($sum_keuntungan + $sum_bayaran + $upahlelong) - $total_keuntungan_sebenar;
$total_keuntungan_semasa = ($sum_keuntungan + $sum_bayaran + $upahlelong);
/* End Keuntungan Semasa Calculation */
$array_keuntungan = ['keuntungan_sebenar' => $total_keuntungan_sebenar, 'keuntungan_semasa' => $total_keuntungan_semasa];
return $array_keuntungan;
}
public function getwtdLejer()
{
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$this->kodcaw)->first();
$wtd = WTD::on($cawangan['mysql'])
->where('tarikh','>=', $this->mula)
->where('tarikh','<=', $this->hingga)
->sum('wtd');
return $wtd;
}
}
+37
View File
@@ -0,0 +1,37 @@
<?php
namespace App\Services\Reports;
use App\Cawangan;
use App\imbangdugabackup;
use App\Services\Reports\Account\GeneralLedger;
use Carbon\Carbon;
class AccountService{
public function checkAccount($kodcaw,$month){
$cawangan = Cawangan::on('mysql7')->where('kodcaw',$kodcaw)->first();
$date = Carbon::now()->month($month);
$firstDay = (clone $date)->startOfMonth();
$lastDay = (clone $date)->endOfMonth();
$previousMonth = (clone $date)->subMonthNoOverflow()->endOfMonth();
$BSheetPreviousMonth = imbangdugabackup::on($cawangan['mysql'])->where('tarikh',$previousMonth->toDateString())->get();
$BSheetCurrentMonth = imbangdugabackup::on($cawangan['mysql'])->where('tarikh',$lastDay->toDateString())->get();
$gledger = new GeneralLedger($kodcaw,$firstDay,$lastDay);
$loan_given = $gledger->getPinjamanDiberi();
$loan_tawarruq = $gledger->getPembiayaanTawarruq();
$advance_payment = $gledger->getBayaranPendahuluan();
$submission = $gledger->getPendahuluanSerahan();
$cash = $gledger->getpanjar();
$remain_auction = $gledger->BakiLelongCalculation();
$real_profit = $gledger->getKeuntunganSebenar();
$current_profit = $gledger->SemakanKeuntunganLejer();
$unclaimed_money =$gledger->getwtdLejer();
$debit = 0;
$credit = 0;
dd($loan_given,$loan_tawarruq,$advance_payment,$submission,$cash,$remain_auction,$real_profit,$current_profit,$unclaimed_money);
}
}
+63 -71
View File
@@ -127,34 +127,54 @@ class ImbangDugaService
$firstMonth = (clone $currentDate)->firstOfMonth();
$lastMonth = (clone $currentDate)->endOfMonth();
/* Start Keuntungan Semasa Calculation */
$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')->where('tagbaru', 0)->having('result', '=', 0)->pluck('norujukan');
$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', $this->kodcaw)
->whereYear('transaction.created_at', '=', $currentDate->year)
->whereMonth('transaction.created_at', '=', $currentDate->month)
->get();
$summation = Transaction::on('mysql7')
->selectRaw("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)
->whereDate('trans.tarikh_bayaran', '>=', $firstMonth)
->whereDate('trans.tarikh_bayaran', '<=', $lastMonth)
->whereYear('tarikh_bayaran', '=', $currentDate->year)
->where('trans.kodcaw', $this->kodcaw)
->get()->toArray();
$array_norujukan = $collection_trans->pluck('norujukan')->toArray();
$collection_gadai = Gadai::on($cawangan['mysql'])->whereIn('norujukan', $array_norujukan)->where('tagbaru',0)->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) && ($t_gadai->year == $t_bayaran->year)) {
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');
/* Keuntungan Lelong */
$upahlelong = Lelong::on($cawangan['mysql'])
->where([['tagujrah','=',0],['t_jual', '>=', $firstMonth], ['t_jual', '<=', $lastMonth], ['t_jual', '>', '2022-07-24']])
->whereYear('t_jual', '=', $currentDate->year)
->sum('bakiupah');
$sum_keuntungan = ($summation) ? $summation[0]['sum_keun'] : 0;
$sum_bayaran = ($summation) ? $summation[0]['sum_bayaran'] : 0;
$total_keuntungan_semasa = ($sum_keuntungan + $sum_bayaran + $upahlelong);
$total_keuntungan_semasa = ($total_ansuran + $total_tebus + $upahlelong);
/* End Keuntungan Semasa Calculation */
return $total_keuntungan_semasa;
@@ -205,10 +225,12 @@ class ImbangDugaService
if ($t_gadai->month === $t_bayaran->month) {
return false;
}else{
return true;
}
}
}
return true;
return false;
});
@@ -295,62 +317,25 @@ class ImbangDugaService
$year = (clone $tarikh)->year;
$month = (clone $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');
$lastDayPreviousMonth = $tarikh->subMonthsNoOverflow()->endOfMonth()->toDateString();
$get_imbangduga = imbangdugabackup::on($cawangan['mysql'])->where('tarikh',$lastDayPreviousMonth)->first()->toArray();
$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' AND (trans.margin_semasa) = 0 THEN (trans.bayaran_keuntungan) ELSE 0 END) AS sum_bayaran")
// ->select('trans.norujukan','transaction.trans_type','trans.keuntungan_rebet','trans.bayaran_keuntungan','trans.margin_semasa')
->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 */
// $get_norujukan_ansuran = 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)
// ->pluck('norujukan');
// $summation_ansuran = TransaksiKeuntungan::on('mysql7')
// ->whereIn('norujukan',$get_norujukan_ansuran)->sum('bayaran_keuntungan');
$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.trans_type', 'A')
->where('transaction.kodcaw', $this->kodcaw)
->where('trans.margin_semasa','>',0)
->whereYear('transaction.created_at', '=', $year)
->whereMonth('transaction.created_at', '<=', $month)
->whereMonth('transaction.created_at', '=', $month)
->get();
$array_norujukan = $collection_trans->pluck('norujukan')->toArray();
$collection_gadai = Gadai::on($cawangan['mysql'])->whereIn('norujukan', $array_norujukan)->where('tagbaru',1)->get();
$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);
@@ -358,17 +343,24 @@ class ImbangDugaService
if ($t_gadai->month !== $t_bayaran->month) {
return false;
}else{
return true;
}
}
}
return true;
return false;
});
$summation_ansuran = $keuntungan_semasa_collection->sum('bayaran_keuntungan');
$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;
// $total = $sum_keuntungan + $sum_bayaran;
return $total;
}
@@ -911,7 +903,7 @@ class ImbangDugaService
$ujrah = $accrual['ujrah'];
$onepercent = $accrual['onepercent'];
$bayaranpend = -1*($bayaranpend);
$untungrugiterkumpul = $this->getUntungRugiTerkumpul();
// $untungrugiterkumpul = $this->getUntungRugiTerkumpul();
$totalharta = imbangdugabackup::on($cawangan['mysql'])->where('tarikh', $this->tarikh)
->get()
@@ -922,9 +914,9 @@ class ImbangDugaService
$totaltanggungan = imbangdugabackup::on($cawangan['mysql'])->where('tarikh', $this->tarikh)
->get()
->map(function ($ig) use ($ujrah, $onepercent, $keun_sebenar, $pend_terakru,$pendahuluan,$untungrugiterkumpul) {
->map(function ($ig) use ($ujrah, $onepercent, $keun_sebenar, $pend_terakru,$pendahuluan) {
return $pend_terakru + $ig['bds'] + $ig['perubatan'] + $ig['keraian'] + $ig['rugilelong'] + $ig['bakilelong']
+ $ig['wtd'] + $untungrugiterkumpul + $keun_sebenar + $pendahuluan + $ig['cajlelong']
+ $ig['wtd'] + $ig['untungrugiterkumpul'] + $keun_sebenar + $pendahuluan + $ig['cajlelong']
+ $ig['cajperkhidmatan'] + $ig['cajlelongxtra'] + $ig['upahsimpanxtra'] + $ig['bakilelongxtra'] + $ig['rugilelongxtra']
+ $ig['utgterkumpulxtra'] + $ig['jualan1stop'] + $ig['hapuskira'] + $ujrah + $onepercent;
});
@@ -936,7 +928,7 @@ class ImbangDugaService
} else {
$booltally = false;
}
// dd($totalharta[0],$totaltanggungan[0],$pend_terakru,$keuntungan_penggadai,$keun_sebenar);
imbangdugabackup::on($cawangan['mysql'])->where('tarikh', $this->tarikh)->update([
'tunaiditangan' => $tunaiditangan,
@@ -948,7 +940,7 @@ class ImbangDugaService
'bayaranpendahuluan' => $bayaranpend,
'serahan' => $serahan,
'pendahuluan' => $pendahuluan,
'untungrugiterkumpul' => $untungrugiterkumpul,
// 'untungrugiterkumpul' => $untungrugiterkumpul,
'totalharta' => round($totalharta[0], 2),
'totaltanggungan' => round($totaltanggungan[0], 2),
'tagtally' => $booltally,
+3 -1
View File
@@ -398,10 +398,12 @@ class OnePercentService
if ($t_gadai->month === $t_bayaran->month) {
return false;
}{
return true;
}
}
}
return true;
return false;
});