diff --git a/app/Http/Controllers/GadaiController.php b/app/Http/Controllers/GadaiController.php index 8e4e2b3..2cb0be0 100644 --- a/app/Http/Controllers/GadaiController.php +++ b/app/Http/Controllers/GadaiController.php @@ -360,12 +360,13 @@ class GadaiController extends Controller // $upahsemasa_raw = $bilang_bln * (($gadai_data['kadarupah']/100 )* $gadai_data['pinjaman']); $upahsemasa_raw = $bilang_bln * $upah['keuntungan']; - $upah_semasa_round = number_format($upahsemasa_raw,2); - $upah_semasa = substr($upah_semasa_round, 0, -1); - // $upah_semasa = floatval(preg_replace('/[^\d.]/', '', $upah_semasa)); - if(strpos($upah_semasa,',')){ - $upah_semasa = str_replace(',','',$upah_semasa); - } + $upah_semasa = round($upahsemasa_raw,PHP_ROUND_HALF_UP); + // $upah_semasa_round = number_format($upahsemasa_raw,2); + // $upah_semasa = substr($upah_semasa_round, 0, -1); + // // $upah_semasa = floatval(preg_replace('/[^\d.]/', '', $upah_semasa)); + // if(strpos($upah_semasa,',')){ + // $upah_semasa = str_replace(',','',$upah_semasa); + // } return $upah_semasa; } @@ -387,7 +388,7 @@ class GadaiController extends Controller } $bilang_bln = $tempoh - $gadai_data['tempohbayar']; - $upah = $onepercentservices->kiraanKeuntunganSebenar($gadai_data['bakipjm'],$gadai_data['nilaimarhun'],$gadai_data['kadarupah'],$gadai_data['margin_semasa']); + $upah = $onepercentservices->kiraanKeuntunganRebet($gadai_data['bakipjm'],$gadai_data['nilaimarhun'],$gadai_data['kadarupah'],$gadai_data['margin_semasa']); // $upahrebet_raw = $bilang_bln * (($gadai_data['kadarupah']/100 )* $gadai_data['bakipjm']); $upahrebet_raw = $bilang_bln * $upah['keuntungan']; @@ -489,7 +490,7 @@ class GadaiController extends Controller $margin_semasa = ($gadai['bakipjm'] / $gadai['nilaimarhun']) * 100; $keuntungan = $onepercent->kiraanKeuntunganSebenar($gadai['bakipjm'],$gadai['nilaimarhun'],$gadai['kadarupah'],$margin_semasa); - $ujrahasal = $onepercent->kiraanUjrahSebenar($gadai['nilaimarhun'],$gadai['kadarupah'],$gadai['percentpinj']); + $ujrahasal = $onepercent->kiraanUjrahSebenar($gadai['nilaimarhun'],$gadai['kadarupah'],$gadai['margin_semasa']); $onepercentasal = $gadai['pinjaman'] * (1/100); @@ -523,8 +524,8 @@ class GadaiController extends Controller 'keuntungan_rebet'=> $upahrebet, 'tarikh_bayaran'=> $current, 'kodcaw'=> $kodcaw, - 'ujrah' => ($ujrahasal*$bilang_bln), - 'ujrah_rebet' => ($keuntungan['ujrah'] * $bilang_bln), + 'ujrah' => ($keuntungan['ujrah'] * $bilang_bln), + 'ujrah_rebet' => ($ujrahasal*$bilang_bln), 'onepercent' => ($onepercentasal * $bilang_bln), 'onepercent_rebet' => ($keuntungan['onepercent'] * $bilang_bln), 'tempoh' => $gadai['tempoh'], diff --git a/app/Http/Controllers/TebusController.php b/app/Http/Controllers/TebusController.php index 83136b7..611b1dd 100644 --- a/app/Http/Controllers/TebusController.php +++ b/app/Http/Controllers/TebusController.php @@ -57,14 +57,14 @@ class TebusController extends Controller $jeniskeuntungan = ($gadai_data['tagbaru'] == 1) ? 'onepercent' : 'asal'; $rebet = $this->rebetselepastawarruq($kodcaw,$norujukan,$jeniskeuntungan); - $harga_tebus = $gadai_data['bakihargajualan'] - $rebet; - $hargatebus = bcdiv(round($harga_tebus,2),1,1); - $hargatebus = number_format($hargatebus,2); - if(strpos($hargatebus,',')){ - $hargatebus = str_replace(',','',$hargatebus); - } + $hargatebus = round($harga_tebus,PHP_ROUND_HALF_UP); + // $hargatebus = bcdiv(round($harga_tebus,2),1,1); + // $hargatebus = number_format($hargatebus,2); + // if(strpos($hargatebus,',')){ + // $hargatebus = str_replace(',','',$hargatebus); + // } return response()->json($hargatebus); } @@ -115,16 +115,17 @@ class TebusController extends Controller }else{ $upahsemasa_raw = $bilang_bln * (($gadai_data['kadarupah']/100 )* $gadai_data['pinjaman']); } - - $upah_semasa_round = number_format($upahsemasa_raw,2); - if(strpos($upah_semasa_round,',')){ - $upah_semasa_round = str_replace(',','',$upah_semasa_round); - } - $upah_semasa = substr($upah_semasa_round, 0, -1); - if(strpos($upah_semasa,',')){ - $upah_semasa = str_replace(',','',$upah_semasa); - } + $upah_semasa = round($upahsemasa_raw,PHP_ROUND_HALF_UP); + // $upah_semasa_round = number_format($upahsemasa_raw,2); + // if(strpos($upah_semasa_round,',')){ + // $upah_semasa_round = str_replace(',','',$upah_semasa_round); + // } + // $upah_semasa = substr($upah_semasa_round, 0, -1); + // if(strpos($upah_semasa,',')){ + // $upah_semasa = str_replace(',','',$upah_semasa); + // } + return $upah_semasa; } @@ -148,20 +149,21 @@ class TebusController extends Controller $bilang_bln = $tempoh - $gadai_data['tempohbayar']; if($jeniskeuntungan == 'onepercent'){ - $upah = $onepercentservices->kiraanKeuntunganSebenar($gadai_data['bakipjm'],$gadai_data['nilaimarhun'],$gadai_data['kadarupah'],$gadai_data['margin_semasa']); + $upah = $onepercentservices->kiraanKeuntunganRebet($gadai_data['bakipjm'],$gadai_data['nilaimarhun'],$gadai_data['kadarupah'],$gadai_data['margin_semasa']); $upahrebet_raw = $bilang_bln * $upah['keuntungan']; }else{ $upahrebet_raw = $bilang_bln * (($gadai_data['kadarupah']/100 )* $gadai_data['bakipjm']); } - $upah_rebet_round = number_format($upahrebet_raw,2); - if(strpos($upah_rebet_round,',')){ - $upah_rebet_round = str_replace(',','',$upah_rebet_round); - } - $upah_rebet = substr($upah_rebet_round, 0, -1); - if(strpos($upah_rebet,',')){ - $upah_rebet = str_replace(',','',$upah_rebet); - } + $upah_rebet = round($upahrebet_raw ,PHP_ROUND_HALF_UP); + // $upah_rebet_round = number_format($upahrebet_raw,2); + // if(strpos($upah_rebet_round,',')){ + // $upah_rebet_round = str_replace(',','',$upah_rebet_round); + // } + // $upah_rebet = substr($upah_rebet_round, 0, -1); + // if(strpos($upah_rebet,',')){ + // $upah_rebet = str_replace(',','',$upah_rebet); + // } return $upah_rebet; } @@ -185,14 +187,15 @@ class TebusController extends Controller $upahrebet_raw = $bilang_bln * (($gadai_data['kadarupah']/100 )* $gadai_data['bakipjm']); - $upah_rebet_round = number_format($upahrebet_raw,2); - if(strpos($upah_rebet_round,',')){ - $upah_rebet_round = str_replace(',','',$upah_rebet_round); - } - $upah_rebet = substr($upah_rebet_round, 0, -1); - if(strpos($upah_rebet,',')){ - $upah_rebet = str_replace(',','',$upah_rebet); - } + $upah_rebet = round($upahrebet_raw,PHP_ROUND_HALF_UP); + // $upah_rebet_round = number_format($upahrebet_raw,2); + // if(strpos($upah_rebet_round,',')){ + // $upah_rebet_round = str_replace(',','',$upah_rebet_round); + // } + // $upah_rebet = substr($upah_rebet_round, 0, -1); + // if(strpos($upah_rebet,',')){ + // $upah_rebet = str_replace(',','',$upah_rebet); + // } $total_untung_rebet = TransaksiKeuntungan::on('mysql7')->where('norujukan','=',$norujukan)->sum('keuntungan_rebet'); $total_untung_asal = TransaksiKeuntungan::on('mysql7')->where('norujukan','=',$norujukan)->sum('bayaran_keuntungan'); @@ -444,7 +447,7 @@ class TebusController extends Controller $upah_rebet = $this->kiraUpahRebet($kodcaw,$norujukan,$jeniskeuntungan); $rebet_raw =$gadai_data['upah12'] - $transaction_keuntungan - $upah_rebet; - + // dd($gadai_data['upah12'],$transaction_keuntungan,$upah_rebet,$jeniskeuntungan,$rebet_raw); $rebet_round = bcdiv(round($rebet_raw,2),1,1); $rebet_round = number_format($rebet_round,2); @@ -2432,28 +2435,29 @@ class TebusController extends Controller } $bilang_bln = $tempoh - $gadai_data['tempohbayar']; - $array_upah = $onepercentservices->kiraanKeuntunganSebenar($gadai_data['bakipjm'],$gadai_data['nilaimarhun'],$gadai_data['kadarupah'],$gadai_data['margin_semasa']); + $array_upah = $onepercentservices->kiraanKeuntunganRebet($gadai_data['bakipjm'],$gadai_data['nilaimarhun'],$gadai_data['kadarupah'],$gadai_data['margin_semasa']); $ujrah = $bilang_bln * $array_upah['ujrah']; $onepercent = $bilang_bln * $array_upah['onepercent']; + $ujrah_semasa = round($ujrah,PHP_ROUND_HALF_UP); + // $ujrah_semasa_round = number_format($ujrah,2); + // if(strpos($ujrah_semasa_round,',')){ + // $ujrah_semasa_round = str_replace(',','',$ujrah_semasa_round); + // } + // $ujrah_semasa = substr($ujrah_semasa_round, 0, -1); + // if(strpos($ujrah_semasa,',')){ + // $ujrah_semasa = str_replace(',','',$ujrah_semasa); + // } - $ujrah_semasa_round = number_format($ujrah,2); - if(strpos($ujrah_semasa_round,',')){ - $ujrah_semasa_round = str_replace(',','',$ujrah_semasa_round); - } - $ujrah_semasa = substr($ujrah_semasa_round, 0, -1); - if(strpos($ujrah_semasa,',')){ - $ujrah_semasa = str_replace(',','',$ujrah_semasa); - } - - $onepercent_semasa_round = number_format($onepercent,2); - if(strpos($onepercent_semasa_round,',')){ - $onepercent_semasa_round = str_replace(',','',$onepercent_semasa_round); - } - $onepercent_semasa = substr($onepercent_semasa_round, 0, -1); - if(strpos($onepercent_semasa,',')){ - $onepercent_semasa = str_replace(',','',$onepercent_semasa); - } + $onepercent_semasa = round($onepercent,PHP_ROUND_HALF_UP); + // $onepercent_semasa_round = number_format($onepercent,2); + // if(strpos($onepercent_semasa_round,',')){ + // $onepercent_semasa_round = str_replace(',','',$onepercent_semasa_round); + // } + // $onepercent_semasa = substr($onepercent_semasa_round, 0, -1); + // if(strpos($onepercent_semasa,',')){ + // $onepercent_semasa = str_replace(',','',$onepercent_semasa); + // } return ['ujrah' => $ujrah_semasa, 'onepercent' => $onepercent_semasa]; } diff --git a/app/Services/OnePercentServices.php b/app/Services/OnePercentServices.php index 6e0099e..b740b82 100644 --- a/app/Services/OnePercentServices.php +++ b/app/Services/OnePercentServices.php @@ -21,7 +21,7 @@ class OnePercentServices $formula_margin = ($this->maks_margin - $margin) / $this->maks_margin; $ujrah_margin = $formula_margin * $kadarujrah; $rebate_ujrah = $nilaimarhun*($ujrah_margin/100); - $ujrah_sebenar = $ujrah - $rebate_ujrah; + $ujrah_sebenar = $ujrah; return $ujrah_sebenar; } @@ -48,10 +48,20 @@ class OnePercentServices $formula_margin = ($this->maks_margin - $margin) / $this->maks_margin; $rebate_ujrah = $formula_margin * $ujrah; $ujrah_sebenar = $ujrah - $rebate_ujrah; - + return $ujrah_sebenar; } + public function kiraanKeuntunganRebet(float $pembiayaan = 0.0,float $nilaimarhun = 0.0,float $kadarujrah = 0.0,float $margin = 0.0){ + + $onepercent = $this->kiraanOnePercent($pembiayaan); + $ujrah_sebenar = $this->kiraanUjrahSebenar($nilaimarhun,$kadarujrah,$margin); + + $keuntungan = $onepercent + $ujrah_sebenar; + + return ['keuntungan' => $keuntungan,'onepercent' => $onepercent, 'ujrah' => $ujrah_sebenar]; + } + public function kiraanKeuntunganSebenar(float $pembiayaan = 0.0,float $nilaimarhun = 0.0,float $kadarujrah = 0.0,float $margin = 0.0){ $onepercent = $this->kiraanOnePercent($pembiayaan); diff --git a/composer.json b/composer.json index deaf479..2c8071f 100644 --- a/composer.json +++ b/composer.json @@ -17,9 +17,6 @@ "phpunit/phpunit": "^8.5" }, "autoload": { - "files":[ - "app/helpers.php" - ], "classmap": [ "database/seeds", "database/factories" diff --git a/database/factories/GadaiFactory.php b/database/factories/GadaiFactory.php index de17d3b..c9a3c5c 100644 --- a/database/factories/GadaiFactory.php +++ b/database/factories/GadaiFactory.php @@ -31,7 +31,7 @@ class GadaiFactory 'cajtelahbyr' => null, 'ansuran' => null, 'ansupah' => null, - 'kadarupah' => null, + 'kadarupah' => 1.7, 'tempoh' => 0.5, 't_lelong' => null, 't_hapus' => null,