diff --git a/app/Services/MasterServices.php b/app/Services/MasterServices.php index 1f903f9..adb2adf 100644 --- a/app/Services/MasterServices.php +++ b/app/Services/MasterServices.php @@ -7,7 +7,7 @@ use App\KadarUpah; use Illuminate\Http\Request as HttpRequest; use App\Support\OnePercent as OnePercentEngine; use App\Support\Tawarruq as TawarruqEngine; - +use Illuminate\Support\Facades\Log; class MasterServices { protected $cawangan; diff --git a/app/Support/Tawarruq.php b/app/Support/Tawarruq.php index 2ac6755..be5506f 100644 --- a/app/Support/Tawarruq.php +++ b/app/Support/Tawarruq.php @@ -8,6 +8,7 @@ use App\Support\v1\GadaiV1 as Version1Gadai; use App\Services\MasterServices; use App\Support\v1\Penebusan; use Illuminate\Http\Request as HttpRequest; +use Illuminate\Support\Facades\Log; class Tawarruq extends MasterServices { @@ -165,7 +166,7 @@ class Tawarruq extends MasterServices public function tebusUpdateAutoTawarruq($kodcaw,$norujukan,HttpRequest $request){ $tebus = new Penebusan($this->kodcaw,$this->cawangan_info); - $response = $tebus->tebusUpdateAutoTawarruq($this->kodcaw,$norujukan,$request); + $response = $tebus->transaksiPembiayaanSemula($this->kodcaw,$norujukan,$request); return $response; } diff --git a/app/Support/v1/Penebusan.php b/app/Support/v1/Penebusan.php index 9738527..0862945 100644 --- a/app/Support/v1/Penebusan.php +++ b/app/Support/v1/Penebusan.php @@ -890,7 +890,7 @@ class Penebusan $bayaran_pembiayaan = $array_tebus_base['totalbayaran'] - $array_tebus_base['bakiupah']; - $upah_rebet_sebenar = $harga_tebus['harga'] - $gadai['bakipjm']; + $upah_rebet_sebenar = $harga_tebus - $gadai['bakipjm']; try{ TransaksiKeuntungan::on('mysql7')->create([ @@ -936,9 +936,12 @@ class Penebusan $gadaiTransaction = optional($gadaiTransaction)->toArray(); $new_sirig = ($gadaiTransaction) ? $gadaiTransaction['sirig'] + 1 : 1; + $curent_year = substr($current->year,2,2); + $curent_month = sprintf("%02d", $current->month); + $current_day = sprintf("%02d", $current->day); $new_transaction = sprintf("%04d",$new_sirig); - $new_sag_number = strtoupper($cawangan['kodcaw']) . $current->year . $current->month . $current->day . '-' .$new_transaction; + $new_sag_number = strtoupper($cawangan['kodcaw']) . $curent_year . $curent_month . $current_day . '-' .$new_transaction; try{ Gadai::on($cawangan['mysql'])->create([ @@ -994,7 +997,7 @@ class Penebusan $total_bil_marhun = Marhun::on($cawangan['mysql'])->where('norujukan',$new_sag_number)->sum('bil'); $total_berat_marhun = Marhun::on($cawangan['mysql'])->where('norujukan',$new_sag_number)->sum('berat'); - $margin_pinjaman = ($array_trans['pinjaman'] / $total_nilai_marhun); + $margin_pinjaman = ($array_trans['pinjamanbaru'] / $total_nilai_marhun); $t_matang = Carbon::now(); $t_matang = $t_matang->addMonths(6)->subDays(1); @@ -1005,7 +1008,7 @@ class Penebusan $kadar_raw = KadarUpah::where('min','<=',$total_nilai_marhun)->where('max','>=',$total_nilai_marhun)->where('group_id',$cawangan['group_id'])->first(); $onepercentservices = new Calculation(); - $keuntungan = $onepercentservices->kiraanKeuntunganSebenar($array_trans['pinjaman'],$total_nilai_marhun,$kadar_raw['kadarujrah'],$margin_pinjaman); + $keuntungan = $onepercentservices->kiraanKeuntunganSebenar($array_trans['pinjamanbaru'],$total_nilai_marhun,$kadar_raw['kadarujrah'],$margin_pinjaman); $upah1 = $onepercentservices->getRoundedMethod($keuntungan['keuntungan']); $upah6 = $onepercentservices->getRoundedMethod($upah1 * 6); diff --git a/app/Support/v2/Penebusan.php b/app/Support/v2/Penebusan.php index 1b93ca1..a0de8b4 100644 --- a/app/Support/v2/Penebusan.php +++ b/app/Support/v2/Penebusan.php @@ -992,6 +992,14 @@ class Penebusan $cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first(); $gadai = Gadai::on($cawangan['mysql'])->where('norujukan','=',$norujukan)->first(); + $gadai = optional($gadai)->toArray(); + + //check duplicate + $data = Transaction::on('mysql7')->where('norujukan','=',$norujukan)->where('trans_type','=','AT')->first(); + + if(!empty($data)){ + return 'duplicate'; + } $array_tebus = $request->only(['jeniskeuntungan', 'nopelanggan','jenistebus','addpinjaman','nowakil','marhun','teller']); $array_trans = $request->only(['nopelanggan', 'noic','pinjaman','pinjamanbaru','marhun','teller','jenistebus']); @@ -999,13 +1007,6 @@ class Penebusan $array_trans_base = $request->only(['pinjaman','teller','pinjamanbaru']); try{ - //check duplicate - $data = Transaction::on('mysql7')->where('norujukan','=',$norujukan)->where('trans_type','=','AT')->first(); - - if(!empty($data)){ - return 'duplicate'; - } - DB::connection($cawangan['mysql'])->beginTransaction(); $this->saveTebus($kodcaw,$norujukan,$gadai,$cawangan,$array_tebus); $this->createTransaction($cawangan,$kodcaw,$norujukan,$array_trans); @@ -1184,9 +1185,12 @@ class Penebusan $gadaiTransaction = optional($gadaiTransaction)->toArray(); $new_sirig = ($gadaiTransaction) ? $gadaiTransaction['sirig'] + 1 : 1; + $curent_year = substr($current->year,2,2); + $curent_month = sprintf("%02d", $current->month); + $current_day = sprintf("%02d", $current->day); $new_transaction = sprintf("%04d",$new_sirig); - $new_sag_number = strtoupper($cawangan['kodcaw']) . $current->year . $current->month . $current->day . '-' .$new_transaction; + $new_sag_number = strtoupper($cawangan['kodcaw']) . $curent_year . $curent_month . $current_day . '-' .$new_transaction; try{ Gadai::on($cawangan['mysql'])->create([