diff --git a/app/Http/Controllers/SimulasiController.php b/app/Http/Controllers/SimulasiController.php index 3b862e44..23ab0e4e 100644 --- a/app/Http/Controllers/SimulasiController.php +++ b/app/Http/Controllers/SimulasiController.php @@ -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')); } diff --git a/app/Models/SimulasiBid.php b/app/Models/SimulasiBid.php index 32787ab8..4ce3baf6 100644 --- a/app/Models/SimulasiBid.php +++ b/app/Models/SimulasiBid.php @@ -12,7 +12,9 @@ class SimulasiBid extends Model protected $table = 'simulasibid'; protected $fillable = [ + 'simulasi_id', 'caw_id', + 'kodcaw', 'norujukan', 't_lelong', 'hargaasas', @@ -20,7 +22,7 @@ class SimulasiBid extends Model 't_jual', 'nopembeli', 'jbg', - 'kadarupdah', + 'kadarupah', 'upahsimpan', 'ansuran', 'nilaimarhun', @@ -35,5 +37,6 @@ class SimulasiBid extends Model 'status_jual', 'status_payment', 'mora_upah', + 'fasa', ]; } diff --git a/resources/views/simulasi/senaraimarhunlel.blade.php b/resources/views/simulasi/senaraimarhunlel.blade.php index a56425d8..d41fdb08 100644 --- a/resources/views/simulasi/senaraimarhunlel.blade.php +++ b/resources/views/simulasi/senaraimarhunlel.blade.php @@ -24,11 +24,12 @@ Kod Cawangan Nama Cawangan --> Norujukan - Pembiayaan (RM) + Tempoh Berat (gm) Nilai Marhun (RM) Harga Asas (RM) + Pembiayaan (RM) Keuntungan (RM) Caj Lelong (%) Rugi Lelong (RM) @@ -44,12 +45,12 @@ {{ $marhun['kodcaw'] }} {{ $marhun['caw_name'] }} --> {{ $marhun['norujukan']}} - {{ number_format($marhun['pinjaman'], 2, '.', ',') }} {{ number_format($marhun['tempoh'], 2, '.', ',') }} {{ number_format($marhun['berat'], 2, '.', ',') }} {{ number_format($marhun['nilaimarhun'], 2, '.', ',') }} {{ number_format($marhun['hargaasas'], 2, '.', ',') }} - {{ number_format($marhun['keuntungan'], 2, '.', ',') }} + {{ number_format($marhun['pinjaman'], 2, '.', ',') }} + {{ number_format($marhun['bakiupah'], 2, '.', ',') }} {{ number_format($marhun['cajlelong'], 2, '.', ',') }}