add tunggakan for onepercent and ujrah
This commit is contained in:
@@ -3216,57 +3216,10 @@ class GadaiController extends Controller
|
|||||||
}
|
}
|
||||||
|
|
||||||
foreach($cawangan as $cawangan_mysql){
|
foreach($cawangan as $cawangan_mysql){
|
||||||
$all_gadai = Gadai::on($cawangan_mysql['mysql'])->whereNotIn('sttebus',['L','T'])->get();
|
$master = new MasterServices($cawangan_mysql['kodcaw']);
|
||||||
foreach($all_gadai as $gadai){
|
$response = $master->updateJBGSemasa($request);
|
||||||
if($gadai['t_update'] == null){
|
|
||||||
$tarikh_update = Carbon::parse($gadai['t_gadai'].' '. $gadai['masa']);
|
|
||||||
}else{
|
|
||||||
$tarikh_update = Carbon::parse($gadai['t_update'].' 00:00:00' );
|
|
||||||
}
|
|
||||||
$tarikh_gadai = Carbon::parse($gadai['t_gadai']. ' 00:00:00');
|
|
||||||
$current = Carbon::now();
|
|
||||||
|
|
||||||
$tahun_gadai = $tarikh_gadai->year;
|
|
||||||
$bulan_gadai = $tarikh_gadai->month;
|
|
||||||
$hari_gadai = $tarikh_gadai->day;
|
|
||||||
|
|
||||||
$tahun_semasa = $current->year;
|
|
||||||
$bulan_semasa = $current->month;
|
|
||||||
$hari_semasa = $current->day;
|
|
||||||
|
|
||||||
if($hari_semasa >= $hari_gadai){
|
|
||||||
$beza_hari = $hari_semasa - $hari_gadai + 1;
|
|
||||||
}else if($hari_semasa < $hari_gadai){
|
|
||||||
$bulan_semasa = $bulan_semasa - 1;
|
|
||||||
$beza_hari = ($hari_semasa + 30) - $hari_gadai + 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
$extensivemonth_gadai = 0;
|
|
||||||
|
|
||||||
if($beza_hari >= 1 && $beza_hari <= 15){
|
|
||||||
$extensivemonth_gadai = 0.5;
|
|
||||||
}else if($beza_hari >= 16){
|
|
||||||
$extensivemonth_gadai = 1;
|
|
||||||
}else{
|
|
||||||
$extensivemonth_gadai = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
$beza_tahun = $tahun_semasa - $tahun_gadai;
|
|
||||||
|
|
||||||
$beza_bulan = ($bulan_semasa + ($beza_tahun * 12)) - $bulan_gadai;
|
|
||||||
|
|
||||||
$tempoh_gadai = $beza_bulan + $extensivemonth_gadai;
|
|
||||||
|
|
||||||
$upah_semasa = $this->kiraupahTawarruqStokAudit($tempoh_gadai,$gadai['tempohbayar'],$gadai['kadarupah'],$gadai['bakipjm']);
|
|
||||||
|
|
||||||
Gadai::on($cawangan_mysql['mysql'])->where('norujukan','=',$gadai['norujukan'])->update(array(
|
|
||||||
'jbg' => $tempoh_gadai,
|
|
||||||
'tempoh' => $tempoh_gadai,
|
|
||||||
'tunggakan' => $upah_semasa
|
|
||||||
));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return response()->json('successful',200);
|
return $response;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function PembiayaanBulanan(Request $request){
|
public function PembiayaanBulanan(Request $request){
|
||||||
|
|||||||
@@ -75,6 +75,12 @@ class MasterServices
|
|||||||
return $response;
|
return $response;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function updateJBGSemasa(HttpRequest $request){
|
||||||
|
$onepercent = new OnepercentEngine($this->cawangan);
|
||||||
|
$response = $onepercent->updateJBGsemasa($request);
|
||||||
|
return $response;
|
||||||
|
}
|
||||||
|
|
||||||
/* End Gadaian */
|
/* End Gadaian */
|
||||||
|
|
||||||
/* Start Penebusan */
|
/* Start Penebusan */
|
||||||
|
|||||||
@@ -56,6 +56,12 @@ class OnePercent extends MasterServices
|
|||||||
return $response;
|
return $response;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function updateJBGSemasa(HttpRequest $request){
|
||||||
|
$gadai = new Version2Gadai($this->kodcaw,$this->cawangan_info);
|
||||||
|
$response = $gadai->updateJBG($request);
|
||||||
|
return $response;
|
||||||
|
}
|
||||||
|
|
||||||
public function getKadarUjrah(HttpRequest $request){
|
public function getKadarUjrah(HttpRequest $request){
|
||||||
$cawangan = Cawangan::on('mysql7')->where('kodcaw',$request->kodcaw)->first();
|
$cawangan = Cawangan::on('mysql7')->where('kodcaw',$request->kodcaw)->first();
|
||||||
$onePercentServices = new Calculation();
|
$onePercentServices = new Calculation();
|
||||||
|
|||||||
@@ -41,6 +41,12 @@ class Tawarruq extends MasterServices
|
|||||||
return $response;
|
return $response;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function updateJBGSemasa(HttpRequest $request){
|
||||||
|
$gadai = new Version1Gadai($this->kodcaw,$this->cawangan_info);
|
||||||
|
$response = $gadai->updateJBG($request);
|
||||||
|
return $response;
|
||||||
|
}
|
||||||
|
|
||||||
public function getUpahSebenar($norujukan){
|
public function getUpahSebenar($norujukan){
|
||||||
$gadai = new Version1Gadai($this->kodcaw,$this->cawangan_info);
|
$gadai = new Version1Gadai($this->kodcaw,$this->cawangan_info);
|
||||||
$response = $gadai->kiraupahTawarruq($norujukan);
|
$response = $gadai->kiraupahTawarruq($norujukan);
|
||||||
|
|||||||
@@ -266,6 +266,61 @@ class GadaiV1
|
|||||||
return response()->json($update_gadai, 200);
|
return response()->json($update_gadai, 200);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function updateJBG(HttpRequest $request){
|
||||||
|
$cawangan_mysql = $this->cawangan_info;
|
||||||
|
$all_gadai = Gadai::on($cawangan_mysql['mysql'])->whereNotIn('sttebus',['L','T'])->get();
|
||||||
|
foreach($all_gadai as $gadai){
|
||||||
|
if($gadai['t_update'] == null){
|
||||||
|
$tarikh_update = Carbon::parse($gadai['t_gadai'].' '. $gadai['masa']);
|
||||||
|
}else{
|
||||||
|
$tarikh_update = Carbon::parse($gadai['t_update'].' 00:00:00' );
|
||||||
|
}
|
||||||
|
$tarikh_gadai = Carbon::parse($gadai['t_gadai']. ' 00:00:00');
|
||||||
|
$current = Carbon::now();
|
||||||
|
$tahun_gadai = $tarikh_gadai->year;
|
||||||
|
$bulan_gadai = $tarikh_gadai->month;
|
||||||
|
$hari_gadai = $tarikh_gadai->day;
|
||||||
|
$tahun_semasa = $current->year;
|
||||||
|
$bulan_semasa = $current->month;
|
||||||
|
$hari_semasa = $current->day;
|
||||||
|
if($hari_semasa >= $hari_gadai){
|
||||||
|
$beza_hari = $hari_semasa - $hari_gadai + 1;
|
||||||
|
}else if($hari_semasa < $hari_gadai){
|
||||||
|
$bulan_semasa = $bulan_semasa - 1;
|
||||||
|
$beza_hari = ($hari_semasa + 30) - $hari_gadai + 1;
|
||||||
|
}
|
||||||
|
$extensivemonth_gadai = 0;
|
||||||
|
if($beza_hari >= 1 && $beza_hari <= 15){
|
||||||
|
$extensivemonth_gadai = 0.5;
|
||||||
|
}else if($beza_hari >= 16){
|
||||||
|
$extensivemonth_gadai = 1;
|
||||||
|
}else{
|
||||||
|
$extensivemonth_gadai = 0;
|
||||||
|
}
|
||||||
|
$beza_tahun = $tahun_semasa - $tahun_gadai;
|
||||||
|
$beza_bulan = ($bulan_semasa + ($beza_tahun * 12)) - $bulan_gadai;
|
||||||
|
$tempoh_gadai = $beza_bulan + $extensivemonth_gadai;
|
||||||
|
$upah_semasa = $this->kiraupahTawarruqStokAudit($tempoh_gadai,$gadai['tempohbayar'],$gadai['kadarupah'],$gadai['bakipjm']);
|
||||||
|
Gadai::on($cawangan_mysql['mysql'])->where('norujukan','=',$gadai['norujukan'])->update(array(
|
||||||
|
'jbg' => $tempoh_gadai,
|
||||||
|
'tempoh' => $tempoh_gadai,
|
||||||
|
'tunggakan' => $upah_semasa
|
||||||
|
));
|
||||||
|
}
|
||||||
|
return response()->json('successful',200);
|
||||||
|
}
|
||||||
|
public function kiraupahTawarruqStokAudit($tempoh,$tempohbayar,$kadarupah,$bakipinjaman){
|
||||||
|
$bilang_bln = $tempoh - $tempohbayar;
|
||||||
|
$upahsemasa_raw = $bilang_bln * (($kadarupah/100 )* $bakipinjaman);
|
||||||
|
$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;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -323,6 +323,97 @@ class GadaiV2
|
|||||||
return response()->json("success",200);
|
return response()->json("success",200);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function updateJBG(HttpRequest $request){
|
||||||
|
$cawangan_mysql = $this->cawangan_info;
|
||||||
|
$all_gadai = Gadai::on($cawangan_mysql['mysql'])->whereNotIn('sttebus',['L','T'])->get();
|
||||||
|
foreach($all_gadai as $gadai){
|
||||||
|
if($gadai['t_update'] == null){
|
||||||
|
$tarikh_update = Carbon::parse($gadai['t_gadai'].' '. $gadai['masa']);
|
||||||
|
}else{
|
||||||
|
$tarikh_update = Carbon::parse($gadai['t_update'].' 00:00:00' );
|
||||||
|
}
|
||||||
|
$tarikh_gadai = Carbon::parse($gadai['t_gadai']. ' 00:00:00');
|
||||||
|
$current = Carbon::now();
|
||||||
|
$tahun_gadai = $tarikh_gadai->year;
|
||||||
|
$bulan_gadai = $tarikh_gadai->month;
|
||||||
|
$hari_gadai = $tarikh_gadai->day;
|
||||||
|
$tahun_semasa = $current->year;
|
||||||
|
$bulan_semasa = $current->month;
|
||||||
|
$hari_semasa = $current->day;
|
||||||
|
if($hari_semasa >= $hari_gadai){
|
||||||
|
$beza_hari = $hari_semasa - $hari_gadai + 1;
|
||||||
|
}else if($hari_semasa < $hari_gadai){
|
||||||
|
$bulan_semasa = $bulan_semasa - 1;
|
||||||
|
$beza_hari = ($hari_semasa + 30) - $hari_gadai + 1;
|
||||||
|
}
|
||||||
|
$extensivemonth_gadai = 0;
|
||||||
|
if($beza_hari >= 1 && $beza_hari <= 15){
|
||||||
|
$extensivemonth_gadai = 0.5;
|
||||||
|
}else if($beza_hari >= 16){
|
||||||
|
$extensivemonth_gadai = 1;
|
||||||
|
}else{
|
||||||
|
$extensivemonth_gadai = 0;
|
||||||
|
}
|
||||||
|
$beza_tahun = $tahun_semasa - $tahun_gadai;
|
||||||
|
$beza_bulan = ($bulan_semasa + ($beza_tahun * 12)) - $bulan_gadai;
|
||||||
|
$tempoh_gadai = $beza_bulan + $extensivemonth_gadai;
|
||||||
|
|
||||||
|
if(isset($gadai['tagbaru'])){
|
||||||
|
if($gadai['tagbaru'] == 1){
|
||||||
|
$upah_semasa = $this->kiraupahTawarruqStokAuditUjrahOnePercent($tempoh_gadai,$gadai['tempohbayar'],$gadai['kadarupah'],$gadai['bakipjm'],$gadai['nilaimarhun'],$gadai['margin_semasa']);
|
||||||
|
Gadai::on($cawangan_mysql['mysql'])->where('norujukan','=',$gadai['norujukan'])->update(array(
|
||||||
|
'jbg' => $tempoh_gadai,
|
||||||
|
'tempoh' => $tempoh_gadai,
|
||||||
|
'tunggakan' => $upah_semasa['pendapatan'],
|
||||||
|
'tunggakanujrah' => $upah_semasa['ujrah'],
|
||||||
|
'tunggakanonepercent' => $upah_semasa['keuntungan'],
|
||||||
|
));
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
$upah_semasa = $this->kiraupahTawarruqStokAudit($tempoh_gadai,$gadai['tempohbayar'],$gadai['kadarupah'],$gadai['bakipjm']);
|
||||||
|
Gadai::on($cawangan_mysql['mysql'])->where('norujukan','=',$gadai['norujukan'])->update(array(
|
||||||
|
'jbg' => $tempoh_gadai,
|
||||||
|
'tempoh' => $tempoh_gadai,
|
||||||
|
'tunggakan' => $upah_semasa,
|
||||||
|
));
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
$upah_semasa = $this->kiraupahTawarruqStokAudit($tempoh_gadai,$gadai['tempohbayar'],$gadai['kadarupah'],$gadai['bakipjm']);
|
||||||
|
Gadai::on($cawangan_mysql['mysql'])->where('norujukan','=',$gadai['norujukan'])->update(array(
|
||||||
|
'jbg' => $tempoh_gadai,
|
||||||
|
'tempoh' => $tempoh_gadai,
|
||||||
|
'tunggakan' => $upah_semasa,
|
||||||
|
));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return response()->json('successful',200);
|
||||||
|
}
|
||||||
|
public function kiraupahTawarruqStokAudit($tempoh,$tempohbayar,$kadarupah,$bakipinjaman){
|
||||||
|
$bilang_bln = $tempoh - $tempohbayar;
|
||||||
|
$upahsemasa_raw = $bilang_bln * (($kadarupah/100 )* $bakipinjaman);
|
||||||
|
$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;
|
||||||
|
}
|
||||||
|
public function kiraupahTawarruqStokAuditUjrahOnePercent($tempoh,$tempohbayar,$kadarupah,$bakipinjaman,$nilaimarhun,$margin_semasa){
|
||||||
|
$onepercentservices = new Calculation();
|
||||||
|
$upah = $onepercentservices->kiraanKeuntunganRebet($bakipinjaman,$nilaimarhun,$kadarupah,$margin_semasa);
|
||||||
|
$bilang_bln = $tempoh - $tempohbayar;
|
||||||
|
$keuntungan_semasa = $bilang_bln * $upah['onepercent'];
|
||||||
|
$ujrah_semasa = $bilang_bln * $upah['ujrah'];
|
||||||
|
$pendapatan = $keuntungan_semasa + $ujrah_semasa;
|
||||||
|
$arraypendapatan = [
|
||||||
|
'keuntungan' => $keuntungan_semasa,
|
||||||
|
'ujrah' => $ujrah_semasa,
|
||||||
|
'pendapatan' => $pendapatan,
|
||||||
|
];
|
||||||
|
return $arraypendapatan;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,69 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
|
||||||
|
class AddTunggakanToGadaiTable extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @var object $db_connection
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
public function getActiveDB(){
|
||||||
|
$config_db = array_keys(config("database.connections"));
|
||||||
|
|
||||||
|
$db_connection = array_filter($config_db,function($connection){
|
||||||
|
try{
|
||||||
|
if($connection == 'mysql7')
|
||||||
|
return false;
|
||||||
|
|
||||||
|
$db = DB::connection($connection)->getPdo();
|
||||||
|
return true;
|
||||||
|
} catch(\Exception $e){
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
return $db_connection;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function up()
|
||||||
|
{
|
||||||
|
$db_connection = $this->getActiveDB();
|
||||||
|
|
||||||
|
foreach($db_connection as $dbase){
|
||||||
|
Schema::connection($dbase)->table('gadai', function (Blueprint $table) {
|
||||||
|
$table->decimal('tunggakanujrah', 9, 2);
|
||||||
|
$table->decimal('tunggakanonepercent', 9, 2);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function down()
|
||||||
|
{
|
||||||
|
$db_connection = $this->getActiveDB();
|
||||||
|
|
||||||
|
foreach($db_connection as $dbase){
|
||||||
|
if (Schema::connection('mysql7')->hasColumn('tunggakanujrah','tunggakanonepercent')){
|
||||||
|
Schema::connection($dbase)->table('gadai', function (Blueprint $table) {
|
||||||
|
$table->dropColumn(['tunggakanujrah','tunggakanonepercent']);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user