update kemaskini simulasi keuntungan dan baki

This commit is contained in:
Nur Izzati Zulkifli
2022-06-01 12:11:26 +08:00
parent 374a4ea46f
commit c24b07b737
3 changed files with 106 additions and 140 deletions
+98 -136
View File
@@ -64,6 +64,15 @@ class SimulasiController extends Controller
$jbg = $request->jbg;
// dd($fasa);
// dd($fasa);
//create simulasi
$simulasi = new Simulasi;
$simulasi->tarikh_lelong = $request->tarikh_lelong;
$simulasi->harga_emas_asas = $request->hargaasas;
$simulasi->jbg = $request->jbg;
$simulasi->cajlelong = $request->cajlelong;
$simulasi->fasa = $request->fasa;
$simulasi->save();
$simulasi_id = $simulasi->id;
$jbgadai = ($t_lelong->subMonths($bulan))->toDateString();
if($request->fasa == '1'){
$surat = Gadai::where('t_gadai','<=',$jbgadai)
@@ -72,6 +81,8 @@ class SimulasiController extends Controller
->where('tagpalsu2','=',0)
->where('taglel','=',0)
->where('lelong_tawarruq','=',1)
->select('kodcaw','norujukan','t_lelong','tempoh','kadarupah','upahSim','ansuran','nilaimarhun','pinjaman','bakiupah','cajlain',
'berat','marhun','percentpinj')
->get();
}
else if($request->fasa == '2'){
@@ -80,6 +91,8 @@ class SimulasiController extends Controller
->where('tagpalsu','=',0)
->where('tagpalsu2','=',0)
->where('taglel','=',0)
->select('kodcaw','norujukan','t_lelong','tempoh','kadarupah','upahSim','ansuran','nilaimarhun','pinjaman','bakiupah','cajlain',
'berat','marhun','percentpinj')
->get();
}
@@ -90,14 +103,7 @@ class SimulasiController extends Controller
->with('failed','Tiada surat untuk di lelong');
}
$cawangan = Cawangan::all();
//create simulasi
$simulasi = new Simulasi;
$simulasi->tarikh_lelong = $request->tarikh_lelong;
$simulasi->harga_emas_asas = $request->hargaasas;
$simulasi->jbg = $request->jbg;
$simulasi->cajlelong = $request->cajlelong;
$simulasi->fasa = $request->fasa;
$simulasi->save();
//create harga asas berdasarkan input harga asas
$karat = JenisKarat::all();
@@ -115,95 +121,7 @@ class SimulasiController extends Controller
//$fasa = $request->fasa;
// join cawangan yang terlibat dengan simulasi
if($request->caw && $request->caw == 'all')
{
//dd($request->fasa);
foreach($cawangan as $key=>$caw)
{
$caw_simulasi = new CawanganSimulasi;
$caw_simulasi->simulasi_id = $simulasi->id;
$caw_simulasi->caw_id = $caw->id;
$caw_simulasi->online = 'Online';
$caw_simulasi->lokasi = $caw->lokasi;
$caw_simulasi->fasa = $request->fasa;
$caw_simulasi->save();
$suratcaw = $surat->where('kodcaw','=',$caw->caw_code)->all();
// $simulasibid = SimulasiBid::where('caw_id','=',$caw->id)->get();
foreach($suratcaw as $data)
{
$simulasibid = new SimulasiBid;
$simulasibid->simulasi_id = $simulasi->id;
$simulasibid->caw_id = $caw->id;
$simulasibid->kodcaw = $data->kodcaw;
$simulasibid->norujukan = $data->norujukan;
$simulasibid->t_lelong = $request->tarikh_lelong;
$simulasibid->hargaasas = 0.00;
$simulasibid->hargajual = 0.00;
$simulasibid->jbg = $data->jbg;
$simulasibid->kadarupah = $data->kadarupah;
$simulasibid->upahsimpan = $data->upahSim;
$simulasibid->ansuran = $data->ansuran;
$simulasibid->nilaimarhun = $data->nilaimarhun;
$simulasibid->pinjaman = $data->pinjaman;
$simulasibid->bakiupah = $data->bakiupah;
$simulasibid->cajlain = $data->cajlain;
$simulasibid->cajlelong = 0.00;
$simulasibid->baki = 0.00;
$simulasibid->berat = $data->berat;
$simulasibid->marhun = $data->marhun;
$simulasibid->percent = $data->percentpinj;
$simulasibid->status_jual = 0;
$simulasibid->status_payment = 0;
$simulasibid->mora_upah = 0;
$simulasibid->fasa = $request->fasa;
$simulasibid->save();
$sumhargaasas = 0;
$berat = 0;
$gadaimarhun = GadaiMarhun::where('norujukan','=',$data->norujukan)->get();
foreach($gadaimarhun as $marhun)
{
$simkarat = SimKarat::where('simulasi_id','=',$simulasi->id)->get();
foreach($simkarat as $karat)
{
if($karat->karat == $marhun->karat)
{
$val = round($marhun->berat * $karat->harga);
$sumhargaasas = $sumhargaasas + $val;
$berat = $berat + $marhun->berat;
$simmarhun = new SimulasiBidMarhun;
$simmarhun->simulasibid_id = $simulasibid->id;
$simmarhun->bil = $marhun->bil;
$simmarhun->marhun = $marhun->marhun;
$simmarhun->nota = $marhun->nota;
$simmarhun->karat = $marhun->karat;
$simmarhun->berat = $marhun->berat;
$simmarhun->harga = $karat->harga;
$simmarhun->n_marhun = $marhun->n_marhun;
$simmarhun->hargaasas = $val;
$simmarhun->save();
}
}
}
// $calcaj = ($request->cajlelong/100)*$sumhargaasas;
// $updatesimbid = SimulasiBid::where('id','=',$simulasibid->id)->first();
// $updatesimbid->hargaasas = $sumhargaasas;
// $updatesimbid->cajlelong = $calcaj;
// $updatesimbid->baki = $sumhargaasas-$data->pinjaman - $data->bakiupah - $calcaj;
// $updatesimbid->berat = $berat;
// $updatesimbid->save();
}
}
}
elseif($request->caw && $request->caw != 'all')
if($request->caw && $request->caw != 'all')
{
//dd($request->caw);
$caw = Cawangan::whereIn('caw_code',$request->caw)->get();
@@ -222,34 +140,64 @@ class SimulasiController extends Controller
$suratcaw = $surat->where('kodcaw','=',$cawsimulasi->caw_code)->all();
// $simulasibid = SimulasiBid::where('caw_id','=',$caw->id)->get();
foreach($suratcaw as $data)
foreach(array_chunk($suratcaw,100) as $data_chunk)
{
$simulasibid = new SimulasiBid;
$simulasibid->simulasi_id = $simulasi->id;
$simulasibid->caw_id = $cawsimulasi->id;
$simulasibid->kodcaw = $data->kodcaw;
$simulasibid->norujukan = $data->norujukan;
$simulasibid->t_lelong = $request->tarikh_lelong;
$simulasibid->hargaasas = 0.00;
$simulasibid->hargajual = 0.00;
$simulasibid->jbg = $data->jbg;
$simulasibid->kadarupah = $data->kadarupah;
$simulasibid->upahsimpan = $data->upahSim;
$simulasibid->ansuran = $data->ansuran;
$simulasibid->nilaimarhun = $data->nilaimarhun;
$simulasibid->pinjaman = $data->pinjaman;
$simulasibid->bakiupah = $data->bakiupah;
$simulasibid->cajlain = $data->cajlain;
$simulasibid->cajlelong = 0.00;
$simulasibid->baki = 0.00;
$simulasibid->berat = $data->berat;
$simulasibid->marhun = $data->marhun;
$simulasibid->percent = $data->percentpinj;
$simulasibid->status_jual = 0;
$simulasibid->status_payment = 0;
$simulasibid->mora_upah = 0;
$simulasibid->fasa = $request->fasa;
$simulasibid->save();
//dd($data);
foreach($data_chunk as $data){
// dd($data->tempoh);
// $simulasibid = new SimulasiBid;
// $simulasibid->simulasi_id = $simulasi->id;
// $simulasibid->caw_id = $cawsimulasi->id;
// $simulasibid->kodcaw = $data->kodcaw;
// $simulasibid->norujukan = $data->norujukan;
// $simulasibid->t_lelong = $request->tarikh_lelong;
// $simulasibid->hargaasas = 0.00;
// $simulasibid->hargajual = 0.00;
// $simulasibid->jbg = $data->tempoh;
// $simulasibid->kadarupah = $data->kadarupah;
// $simulasibid->upahsimpan = $data->upahSim;
// $simulasibid->ansuran = $data->ansuran;
// $simulasibid->nilaimarhun = $data->nilaimarhun;
// $simulasibid->pinjaman = $data->pinjaman;
// $simulasibid->bakiupah = $data->bakiupah;
// $simulasibid->cajlain = $data->cajlain;
// $simulasibid->cajlelong = 0.00;
// $simulasibid->baki = 0.00;
// $simulasibid->berat = $data->berat;
// $simulasibid->marhun = $data->marhun;
// $simulasibid->percent = $data->percentpinj;
// $simulasibid->status_jual = 0;
// $simulasibid->status_payment = 0;
// $simulasibid->mora_upah = 0;
// $simulasibid->fasa = $request->fasa;
// $simulasibid->save();
//dd($simulasi->id);
$simulasibid = SimulasiBid::create([
"simulasi_id" => $simulasi->id,
"caw_id" => $cawsimulasi->id,
"kodcaw" => $data->kodcaw,
"norujukan" => $data->norujukan,
"t_lelong" => $request->tarikh_lelong,
"hargaasas" => 0.00,
"hargajual" => 0.00,
"jbg" => $data->tempoh,
"kadarupah" => $data->kadarupah,
"upahsimpan" => $data->upahSim,
"ansuran" => $data->ansuran,
"nilaimarhun" => $data->nilaimarhun,
"pinjaman" => $data->pinjaman,
"bakiupah" => $data->bakiupah,
"cajlain" => $data->cajlain,
"cajlelong" => 0.00,
"baki" => 0.00,
"berat" => $data->berat,
"marhun" => $data->marhun,
"percent" => $data->percentpinj,
"status_jual" => 0,
"status_payment" => 0,
"mora_upah" => 0,
"fasa" => $request->fasa
]);
$sumhargaasas = 0;
$berat = 0;
@@ -295,11 +243,12 @@ class SimulasiController extends Controller
$updategadai = Gadai::where('norujukan','=',$data->norujukan)->first();
$updategadai->taglel = 1;
$updategadai->save();
$updategadai->update();
// $updatesimbid->cajlelong = $calcaj;
// $updatesimbid->baki = $sumhargaasas-$data->pinjaman - $data->bakiupah - $calcaj;
// $updatesimbid->berat = $berat;
// $updatesimbid->save();
}
}
}
}
@@ -590,12 +539,17 @@ class SimulasiController extends Controller
}
//update marhun
$simulasibid = SimulasiBid::where('simulasi_id','=',$request->idsimulasi)->get();
$simulasibid = SimulasiBid::join('gadai','simulasibid.norujukan','=','gadai.norujukan')
->select('simulasibid.id','gadai.bakipjm','gadai.bakihargajualan','gadai.upah12','gadai.ansakhir','gadai.tempoh','gadai.tempohbayar','gadai.kadarupah','gadai.norujukan','simulasibid.simulasi_id')
->where('simulasi_id','=',$request->idsimulasi)
->get();
//dd($simulasibid);
foreach($simulasibid as $bid)
{
$keuntungan = $bid['bakipjm'] - ($bid['bakihargajualan'] - ($bid['upah12'] - $bid['ansakhir'])-(($bid['tempoh']-$bid['tempohbayar'])*$bid['kadarupah']/100*$bid['bakipjm']) );
$sumhargaasas = 0;
$simulasibidmarhun = SimulasiBidMarhun::where('simulasibid_id','=',$bid->id)->get();
$simulasibidmarhun = SimulasiBidMarhun::where('simulasibid_id','=',$bid['id'])->get();
// dd($simulasibidmarhun);
foreach($simulasibidmarhun as $marhun)
{
$simkarat = SimKarat::where('simulasi_id','=',$bid->simulasi_id)->get();
@@ -615,14 +569,21 @@ class SimulasiController extends Controller
$marhun->save();
}
}
// dd($sumhargaasas);
}
$lelong = Simulasi::where('id',$request->idsimulasi)->get();
$bid->hargaasas = $sumhargaasas;
// $bid->baki = $sumhargaasas-$bid->pinjaman - $bid->bakiupah - $bid->cajlelong;
$sumcajlelong = $sumhargaasas * ($lelong[0]['cajlelong']/100);
$bid->cajlelong = bcdiv($sumcajlelong,1,1);
$bid->baki = $sumhargaasas-$bid->pinjaman - $bid->bakiupah - $sumcajlelong;
$bid->save();
$simulasi = Simulasi::where('id',$request->idsimulasi)->get();
$sumcajlelong = $sumhargaasas * ($simulasi[0]['cajlelong']/100);
$totalbaki = $sumhargaasas -$bid->bakipjm - bcdiv($keuntungan,1,1) - bcdiv($sumcajlelong,1,1);
$kirakeuntungan = SimulasiBid::where('norujukan',$bid['norujukan'])
->update([
'bakiupah'=> bcdiv($keuntungan,1,1),
'hargaasas'=> $sumhargaasas,
'cajlelong'=> bcdiv($sumcajlelong,1,1),
'baki'=> $totalbaki,
]);
//dd($sumcajlelong);
//dd($sumcajlelong);
}
@@ -831,7 +792,7 @@ class SimulasiController extends Controller
'simulasibid.berat',
'simulasibid.nilaimarhun',
'simulasibid.hargaasas',
'simulasibid.upahsimpan',
'simulasibid.bakiupah',
'simulasibid.cajlelong',
'simulasibid.baki',
'simulasibid.status_jual',
@@ -855,6 +816,7 @@ class SimulasiController extends Controller
}
return view('simulasi.senaraimarhunlel',compact('marhuns','simulasi_id','cawid','keuntungan','cal'));
}