Merged in pipi/ujrah_fix (pull request #56)
function imbang duga akru fix
This commit is contained in:
@@ -3205,8 +3205,11 @@ class GadaiController extends Controller
|
|||||||
$totalpinjaman = $audit->sum('pinjaman');
|
$totalpinjaman = $audit->sum('pinjaman');
|
||||||
$totalbakipjm = $audit->sum('bakipjm');
|
$totalbakipjm = $audit->sum('bakipjm');
|
||||||
$totaltunggakan = $audit->sum('tunggakan');
|
$totaltunggakan = $audit->sum('tunggakan');
|
||||||
|
$totalujrah = $audit->sum('tunggakanujrah');
|
||||||
|
$totalonepercent = $audit->sum('tunggakanonepercent');
|
||||||
|
|
||||||
$arrayrekod = ['rekod' => $rekodaudit, 'total' => $totalrekod,'totalberat' => $totalberat,'totalnilaimarhun' => $totalnilaimarhun,'totalpinjaman'=>$totalpinjaman,'totalbakipjm'=>$totalbakipjm,'totaltunggakan'=>$totaltunggakan];
|
|
||||||
|
$arrayrekod = ['rekod' => $rekodaudit, 'total' => $totalrekod,'totalberat' => $totalberat,'totalnilaimarhun' => $totalnilaimarhun,'totalpinjaman'=>$totalpinjaman,'totalbakipjm'=>$totalbakipjm,'totaltunggakan'=>$totaltunggakan,'totalujrah'=>$totalujrah,'totalonepercent'=>$totalonepercent];
|
||||||
|
|
||||||
return response()->json($arrayrekod,200);
|
return response()->json($arrayrekod,200);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -42,6 +42,7 @@ use Illuminate\Http\Request;
|
|||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
|
|
||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
|
|
||||||
class TebusController extends Controller
|
class TebusController extends Controller
|
||||||
{
|
{
|
||||||
@@ -1603,12 +1604,15 @@ class TebusController extends Controller
|
|||||||
if($determine_past->isToday())
|
if($determine_past->isToday())
|
||||||
{
|
{
|
||||||
$audit_now = Gadai::on($cawangan['mysql'])
|
$audit_now = Gadai::on($cawangan['mysql'])
|
||||||
|
->select(DB::raw('sum(tunggakan) as "akru",
|
||||||
|
sum(tunggakanujrah) as "akruujrah",
|
||||||
|
sum(tunggakanonepercent) as "akruonepercent"'))
|
||||||
->where([['tagpalsu','=',0],['t_gadai','<=',$request->tarikh],['sttebus','=','']])
|
->where([['tagpalsu','=',0],['t_gadai','<=',$request->tarikh],['sttebus','=','']])
|
||||||
->orWhere([['tagpalsu','=',0],['t_update','>',$request->tarikh],['sttebus','!=',''],['t_gadai','<=',$request->tarikh]])
|
->orWhere([['tagpalsu','=',0],['t_update','>',$request->tarikh],['sttebus','!=',''],['t_gadai','<=',$request->tarikh]])
|
||||||
->orderBy('t_gadai', 'ASC')
|
->orderBy('t_gadai', 'ASC')
|
||||||
->orderBy('sirig', 'ASC');
|
->orderBy('sirig', 'ASC')->first();
|
||||||
|
|
||||||
$totaltunggakan_now = $audit_now->sum('tunggakan');
|
$totaltunggakan_now = $audit_now['akru'] + $audit_now['akruujrah'] + $audit_now['akruonepercent'];
|
||||||
}else{
|
}else{
|
||||||
|
|
||||||
$result_audit_backdate = $this->StokAuditGenerateTerakru($month_sekarang,$cawangan,$year_generate);
|
$result_audit_backdate = $this->StokAuditGenerateTerakru($month_sekarang,$cawangan,$year_generate);
|
||||||
|
|||||||
@@ -0,0 +1,306 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Services\Miscellaneous;
|
||||||
|
|
||||||
|
use App\Audit;
|
||||||
|
use App\Cawangan;
|
||||||
|
use App\Denominasi;
|
||||||
|
use App\DenoPanjar;
|
||||||
|
use App\Panjar;
|
||||||
|
use App\Vault;
|
||||||
|
use Carbon\Carbon;
|
||||||
|
use Illuminate\Http\Request;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
|
use Illuminate\Support\Facades\Log;
|
||||||
|
|
||||||
|
class PanjarServices
|
||||||
|
{
|
||||||
|
|
||||||
|
/*
|
||||||
|
//////////////
|
||||||
|
/// NOTED ///
|
||||||
|
////////////
|
||||||
|
|
||||||
|
1. tak buat lgi untuk perubatan. just untuk buat yang panjar biasa.
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
protected $cawangan = 'KB2';
|
||||||
|
protected $namelist_deno = [
|
||||||
|
'bd1' => 100,'bd5' => 500,'bd10' => 1000,'bd20' => 1000,'bd50' => 5000,'bd100' => 5000,
|
||||||
|
'txtsen1' => 0.01,'txtsen5' => 0.05,'txtsen10' => 0.10,'txtsen20' => 0.20,'txtsen50' => 0.50,
|
||||||
|
'txtring1' => 1,'txtring5' => 5,'txtring10' => 10,'txtring20' => 20,'txtring50' => 50,
|
||||||
|
'txtring100' => 100,'txtring1000' => 1000,
|
||||||
|
];
|
||||||
|
|
||||||
|
public function __construct($kodcaw){
|
||||||
|
$this->cawangan = $kodcaw;
|
||||||
|
}
|
||||||
|
|
||||||
|
private function calculation_denominasi($array_deno = [],$denominasi = [],$jenis_panjar){
|
||||||
|
|
||||||
|
if(isset($array_deno) <= 0 || isset($denominasi) <= 0){
|
||||||
|
return 'no data';
|
||||||
|
}
|
||||||
|
|
||||||
|
if($jenis_panjar != 'masuk' || $jenis_panjar != 'keluar') return 'no data';
|
||||||
|
|
||||||
|
$records = [];
|
||||||
|
foreach($this->namelist_deno as $deno => $value){
|
||||||
|
$total_deno = 0;$total = 0;
|
||||||
|
$total_deno = ($jenis_panjar == 'masuk') ? $denominasi[$deno] += intval($array_deno[$deno]) : $denominasi[$deno] -= intval($array_deno[$deno]);
|
||||||
|
$total = ($total_deno * $value);
|
||||||
|
|
||||||
|
$records[$deno] = [
|
||||||
|
'keping' => $total_deno,
|
||||||
|
'jumlah' => $total
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
/* total Keping */
|
||||||
|
$total_keping = array_sum(array_column($records, 'jumlah'));
|
||||||
|
|
||||||
|
/* Total Bundle */
|
||||||
|
$filteredKeys = array_filter(array_keys($records), function($key) {
|
||||||
|
return strpos($key, 'bd') !== false;
|
||||||
|
});
|
||||||
|
|
||||||
|
$filteredRecords = array_filter($records, function($record,$key) use ($filteredKeys) {
|
||||||
|
return in_array($key, $filteredKeys);
|
||||||
|
}, ARRAY_FILTER_USE_BOTH);
|
||||||
|
|
||||||
|
$total_bundle = array_sum(array_column($filteredRecords, 'jumlah'));
|
||||||
|
|
||||||
|
return [
|
||||||
|
'deno' => $records,
|
||||||
|
'total' => $total_keping,
|
||||||
|
'total_bundle' => $total_bundle,
|
||||||
|
'total_all' => ($total_keping + $total_bundle),
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
public function delete(Request $request){
|
||||||
|
$current = Carbon::now();
|
||||||
|
$current = new Carbon();
|
||||||
|
|
||||||
|
$cawangan = Cawangan::on('mysql7')->where('kodcaw', $this->cawangan)->first();
|
||||||
|
$denominasi = Denominasi::on($cawangan['mysql'])->latest('tarikh')->first();
|
||||||
|
$panjar = Panjar::on($cawangan['mysql'])->latest('tarikh')->where('nobaucer', $request->nobaucer)->first();
|
||||||
|
$vault = Vault::on($cawangan['mysql'])->latest('tarikh')->first();
|
||||||
|
$deno_panjar = DenoPanjar::on('mysql7')->where('kodcaw', $this->cawangan)->where('recno', $request->recno)->latest('tarikh','masa')->first();
|
||||||
|
|
||||||
|
try{
|
||||||
|
if (!$panjar) throw new \Exception('Custom Exception: Panjar Does Not Exist!');
|
||||||
|
if (!$denominasi) throw new \Exception('Custom Exception: Denominasi Does Not Exist!');
|
||||||
|
if (!$vault) throw new \Exception('Custom Exception: Vault Does Not Exist!');
|
||||||
|
if (!$deno_panjar) throw new \Exception('Custom Exception: Denominasi Panjar Does Not Exist!');
|
||||||
|
|
||||||
|
DB::transaction(function () use ($cawangan,$deno_panjar,$panjar,$denominasi,$current,$vault) {
|
||||||
|
|
||||||
|
$return_data = $this->calculation_denominasi($deno_panjar,$denominasi,'masuk');
|
||||||
|
if($return_data == 'no data') throw new \Exception('Custom Exception: Denominasi Panjar Not Return Data');
|
||||||
|
|
||||||
|
Denominasi::on($cawangan['mysql'])->where([['tarikh','=',$current->toDateString()]])->update(array(
|
||||||
|
'bd1' => $return_data['deno']['bd1']['keping'],
|
||||||
|
'b1'=> $return_data['deno']['bd1']['jumlah'],
|
||||||
|
'bd5'=> $return_data['deno']['bd5']['keping'],
|
||||||
|
'b5'=> $return_data['deno']['bd5']['keping'],
|
||||||
|
'bd10'=> $return_data['deno']['bd10']['keping'],
|
||||||
|
'b10'=> $return_data['deno']['bd10']['jumlah'],
|
||||||
|
'bd20'=> $return_data['deno']['bd20']['keping'],
|
||||||
|
'b20'=> $return_data['deno']['bd20']['jumlah'],
|
||||||
|
'bd50'=> $return_data['deno']['bd50']['keping'],
|
||||||
|
'b50'=> $return_data['deno']['bd50']['jumlah'],
|
||||||
|
'bd100'=> $return_data['deno']['bd100']['keping'],
|
||||||
|
'b100'=> $return_data['deno']['bd100']['jumlah'],
|
||||||
|
'txtring1'=> $return_data['deno']['txtring1']['keping'],
|
||||||
|
'k1'=> $return_data['deno']['txtring1']['jumlah'],
|
||||||
|
'txtring5'=> $return_data['deno']['txtring5']['keping'],
|
||||||
|
'k5'=> $return_data['deno']['txtring5']['jumlah'],
|
||||||
|
'txtsen1'=> $return_data['deno']['txtsen1']['keping'],
|
||||||
|
'k01'=> $return_data['deno']['txtsen1']['jumlah'],
|
||||||
|
'txtsen5'=> $return_data['deno']['txtsen5']['keping'],
|
||||||
|
'k05'=> $return_data['deno']['txtsen5']['jumlah'],
|
||||||
|
'txtsen10'=> $return_data['deno']['txtsen10']['keping'],
|
||||||
|
'k010'=> $return_data['deno']['txtsen10']['jumlah'],
|
||||||
|
'txtsen20'=> $return_data['deno']['txtsen20']['keping'],
|
||||||
|
'k020'=> $return_data['deno']['txtsen20']['jumlah'],
|
||||||
|
'txtsen50'=> $return_data['deno']['txtsen50']['keping'],
|
||||||
|
'k050'=> $return_data['deno']['txtsen50']['jumlah'],
|
||||||
|
'txtring10'=> $return_data['deno']['txtring10']['keping'],
|
||||||
|
'k10'=> $return_data['deno']['txtring10']['jumlah'],
|
||||||
|
'txtring20'=> $return_data['deno']['txtring20']['keping'],
|
||||||
|
'k20'=> $return_data['deno']['txtring20']['jumlah'],
|
||||||
|
'txtring50'=> $return_data['deno']['txtring50']['keping'],
|
||||||
|
'k50'=> $return_data['deno']['txtring50']['jumlah'],
|
||||||
|
'txtring100'=> $return_data['deno']['txtring100']['keping'],
|
||||||
|
'k100'=> $return_data['deno']['txtring100']['jumlah'],
|
||||||
|
'txtring1000'=> $return_data['deno']['txtring1000']['keping'],
|
||||||
|
'k1000'=> $return_data['deno']['txtring1000']['jumlah'],
|
||||||
|
'jumlahbundle'=> $return_data['total_bundle'],
|
||||||
|
'txtjumlah'=> $return_data['total_all'],
|
||||||
|
'jumlahkeping' => $return_data['total']
|
||||||
|
) );
|
||||||
|
|
||||||
|
$totalpanjar = ($vault['totpanjar'] - $deno_panjar['serahan']);
|
||||||
|
$bakiakhir = ($vault['bakiawal'] - $vault['keluar'] + $vault['masuk'] + $vault['pendahuluan'] - $vault['serahan'] - $totalpanjar);
|
||||||
|
|
||||||
|
if($bakiakhir <= 0) throw new \Exception('Custom Exception: Amaun Baki Akhir Cannot Be Zero');
|
||||||
|
if($totalpanjar < 0) throw new \Exception('Custom Exception: Amaun Panjar Cannot Be Zero');
|
||||||
|
|
||||||
|
Vault::on($cawangan['mysql'])->where('kodcaw','=', $cawangan['kodcaw'])->latest('tarikh')->update(array(
|
||||||
|
'totpanjar' => $totalpanjar,
|
||||||
|
'bakiakhir'=>$bakiakhir,
|
||||||
|
'bakieod'=>$bakiakhir
|
||||||
|
));
|
||||||
|
|
||||||
|
DenoPanjar::on('mysql7')->where('kodcaw', $this->cawangan)->where('recno', $panjar['recno'])->latest('tarikh','masa')->delete();
|
||||||
|
Panjar::on($cawangan['mysql'])->where('recno',$panjar['recno'])->delete();
|
||||||
|
|
||||||
|
$audit = new Audit();
|
||||||
|
$audit->users = $request->tuntutoleh;
|
||||||
|
$audit->actions = "Keluarkan Perbelanjaan";
|
||||||
|
$audit->new_data = $panjar;
|
||||||
|
$audit->kodcaw = $this->cawangan;
|
||||||
|
$audit->created_at = $current;
|
||||||
|
$audit->updated_at = $current;
|
||||||
|
$audit->save();
|
||||||
|
|
||||||
|
});
|
||||||
|
}catch(\Exception $e){
|
||||||
|
dd($e->getMessage());
|
||||||
|
Log::error('Exception: ' , $e->getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function create(Request $request){
|
||||||
|
$current = Carbon::now();
|
||||||
|
$current = new Carbon();
|
||||||
|
|
||||||
|
$cawangan = Cawangan::on('mysql7')->where('kodcaw', $this->cawangan)->first();
|
||||||
|
$denominasi = Denominasi::on($cawangan['mysql'])->latest('tarikh')->first();
|
||||||
|
$vault = Vault::on($cawangan['mysql'])->latest('tarikh')->first();
|
||||||
|
|
||||||
|
try{
|
||||||
|
if (!$denominasi) throw new \Exception('Custom Exception: Denominasi Does Not Exist!');
|
||||||
|
if (!$vault) throw new \Exception('Custom Exception: Vault Does Not Exist!');
|
||||||
|
|
||||||
|
DB::transaction(function () use ($cawangan,$denominasi,$current,$vault,$request) {
|
||||||
|
|
||||||
|
$panjar = Panjar::on($cawangan['mysql'])
|
||||||
|
->create([
|
||||||
|
'tarikh'=> $current->toDateString(),
|
||||||
|
'deskripsi'=> $request->deskripsi,
|
||||||
|
'bayaran' => $request->bayaran,
|
||||||
|
'tag' => $request->tag,
|
||||||
|
'kategori' => $request->kategori,
|
||||||
|
'id' => $request->id,
|
||||||
|
'bakiperubatan' => $request->bakiperubatan,
|
||||||
|
'nobaucer' => $request->nobaucer,
|
||||||
|
'nobil' => $request->nobil,
|
||||||
|
'tuntutoleh' => $request->tuntutoleh
|
||||||
|
]);
|
||||||
|
|
||||||
|
$denopanjar = DenoPanjar::on('mysql7')->create([
|
||||||
|
'tarikh' => $current->toDateString(),
|
||||||
|
'masa' => $current->toTimeString(),
|
||||||
|
'kodcaw' => $this->cawangan,
|
||||||
|
'kodlaluan' => $request->kodlaluan,
|
||||||
|
'serahan' => $request->serahan,
|
||||||
|
'bd1' => $request->bd1,
|
||||||
|
'bd5' => $request->bd5,
|
||||||
|
'bd10' => $request->bd10,
|
||||||
|
'bd20' => $request->bd20,
|
||||||
|
'bd50' => $request->bd50,
|
||||||
|
'bd100' => $request->bd100,
|
||||||
|
'txtring1' => $request->txtring1,
|
||||||
|
'txtring5' => $request->txtring5,
|
||||||
|
'txtring10' => $request->txtring10,
|
||||||
|
'txtring20' => $request->txtring20,
|
||||||
|
'txtring50' => $request->txtring50,
|
||||||
|
'txtring100' => $request->txtring100,
|
||||||
|
'txtring1000' => $request->txtring1000,
|
||||||
|
'txtsen1' => $request->txtsen1,
|
||||||
|
'txtsen5' => $request->txtsen5,
|
||||||
|
'txtsen10' => $request->txtsen10,
|
||||||
|
'txtsen20' => $request->txtsen20,
|
||||||
|
'txtsen50' => $request->txtsen50,
|
||||||
|
'jenis' =>$request->jenis,
|
||||||
|
'recno' =>$panjar['recno'],
|
||||||
|
'update' => '0'
|
||||||
|
]);
|
||||||
|
|
||||||
|
$return_data = $this->calculation_denominasi($denopanjar,$denominasi,'masuk');
|
||||||
|
if($return_data == 'no data') throw new \Exception('Custom Exception: Denominasi Panjar Not Return Data');
|
||||||
|
|
||||||
|
Denominasi::on($cawangan['mysql'])->where([['tarikh','=',$current->toDateString()]])->update(array(
|
||||||
|
'bd1' => $return_data['deno']['bd1']['keping'],
|
||||||
|
'b1'=> $return_data['deno']['bd1']['jumlah'],
|
||||||
|
'bd5'=> $return_data['deno']['bd5']['keping'],
|
||||||
|
'b5'=> $return_data['deno']['bd5']['keping'],
|
||||||
|
'bd10'=> $return_data['deno']['bd10']['keping'],
|
||||||
|
'b10'=> $return_data['deno']['bd10']['jumlah'],
|
||||||
|
'bd20'=> $return_data['deno']['bd20']['keping'],
|
||||||
|
'b20'=> $return_data['deno']['bd20']['jumlah'],
|
||||||
|
'bd50'=> $return_data['deno']['bd50']['keping'],
|
||||||
|
'b50'=> $return_data['deno']['bd50']['jumlah'],
|
||||||
|
'bd100'=> $return_data['deno']['bd100']['keping'],
|
||||||
|
'b100'=> $return_data['deno']['bd100']['jumlah'],
|
||||||
|
'txtring1'=> $return_data['deno']['txtring1']['keping'],
|
||||||
|
'k1'=> $return_data['deno']['txtring1']['jumlah'],
|
||||||
|
'txtring5'=> $return_data['deno']['txtring5']['keping'],
|
||||||
|
'k5'=> $return_data['deno']['txtring5']['jumlah'],
|
||||||
|
'txtsen1'=> $return_data['deno']['txtsen1']['keping'],
|
||||||
|
'k01'=> $return_data['deno']['txtsen1']['jumlah'],
|
||||||
|
'txtsen5'=> $return_data['deno']['txtsen5']['keping'],
|
||||||
|
'k05'=> $return_data['deno']['txtsen5']['jumlah'],
|
||||||
|
'txtsen10'=> $return_data['deno']['txtsen10']['keping'],
|
||||||
|
'k010'=> $return_data['deno']['txtsen10']['jumlah'],
|
||||||
|
'txtsen20'=> $return_data['deno']['txtsen20']['keping'],
|
||||||
|
'k020'=> $return_data['deno']['txtsen20']['jumlah'],
|
||||||
|
'txtsen50'=> $return_data['deno']['txtsen50']['keping'],
|
||||||
|
'k050'=> $return_data['deno']['txtsen50']['jumlah'],
|
||||||
|
'txtring10'=> $return_data['deno']['txtring10']['keping'],
|
||||||
|
'k10'=> $return_data['deno']['txtring10']['jumlah'],
|
||||||
|
'txtring20'=> $return_data['deno']['txtring20']['keping'],
|
||||||
|
'k20'=> $return_data['deno']['txtring20']['jumlah'],
|
||||||
|
'txtring50'=> $return_data['deno']['txtring50']['keping'],
|
||||||
|
'k50'=> $return_data['deno']['txtring50']['jumlah'],
|
||||||
|
'txtring100'=> $return_data['deno']['txtring100']['keping'],
|
||||||
|
'k100'=> $return_data['deno']['txtring100']['jumlah'],
|
||||||
|
'txtring1000'=> $return_data['deno']['txtring1000']['keping'],
|
||||||
|
'k1000'=> $return_data['deno']['txtring1000']['jumlah'],
|
||||||
|
'jumlahbundle'=> $return_data['total_bundle'],
|
||||||
|
'txtjumlah'=> $return_data['total_all'],
|
||||||
|
'jumlahkeping' => $return_data['total']
|
||||||
|
) );
|
||||||
|
|
||||||
|
$totalpanjar = ($vault['totpanjar'] + $denopanjar['serahan']);
|
||||||
|
$bakiakhir = ($vault['bakiawal'] - $vault['keluar'] + $vault['masuk'] + $vault['pendahuluan'] - $vault['serahan'] - $totalpanjar);
|
||||||
|
|
||||||
|
if($bakiakhir <= 0) throw new \Exception('Custom Exception: Amaun Baki Akhir Cannot Be Zero');
|
||||||
|
if($totalpanjar < 0) throw new \Exception('Custom Exception: Amaun Panjar Cannot Be Zero');
|
||||||
|
|
||||||
|
Vault::on($cawangan['mysql'])->where('kodcaw','=', $cawangan['kodcaw'])->latest('tarikh')->update(array(
|
||||||
|
'totpanjar' => $totalpanjar,
|
||||||
|
'bakiakhir'=>$bakiakhir,
|
||||||
|
'bakieod'=>$bakiakhir
|
||||||
|
));
|
||||||
|
|
||||||
|
$audit = new Audit();
|
||||||
|
$audit->users = $request->tuntutoleh;
|
||||||
|
$audit->actions = "Daftar Perbelanjaan";
|
||||||
|
$audit->new_data = $panjar;
|
||||||
|
$audit->kodcaw = $this->cawangan;
|
||||||
|
$audit->created_at = $current;
|
||||||
|
$audit->updated_at = $current;
|
||||||
|
$audit->save();
|
||||||
|
|
||||||
|
});
|
||||||
|
}catch(\Exception $e){
|
||||||
|
dd($e->getMessage());
|
||||||
|
Log::error('Exception: ' , $e->getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -46,6 +46,8 @@ class OnePercentService
|
|||||||
|
|
||||||
public function getTotalKeuntungan($type = 'B',$start = '2023-12-14',$end = '2023-12-14') : Float{
|
public function getTotalKeuntungan($type = 'B',$start = '2023-12-14',$end = '2023-12-14') : Float{
|
||||||
if($type == 'B'){
|
if($type == 'B'){
|
||||||
|
|
||||||
|
$akrual = Gadai::on($this->cawangan['mysql'])->where([['sttebus',''],['tagbaru',1]])->sum('tunggakanonepercent');
|
||||||
$norujukan = Gadai::on($this->cawangan['mysql'])->where('sttebus','T')->where('tagbaru',1)->pluck('norujukan');
|
$norujukan = Gadai::on($this->cawangan['mysql'])->where('sttebus','T')->where('tagbaru',1)->pluck('norujukan');
|
||||||
|
|
||||||
$keuntungan = TransaksiKeuntungan::on('mysql7')
|
$keuntungan = TransaksiKeuntungan::on('mysql7')
|
||||||
@@ -53,28 +55,37 @@ class OnePercentService
|
|||||||
->sum('onepercent_rebet');
|
->sum('onepercent_rebet');
|
||||||
|
|
||||||
}else if($type == 'L'){
|
}else if($type == 'L'){
|
||||||
|
$akrual = Gadai::on($this->cawangan['mysql'])->where([['sttebus',''],['tagbaru',1],['t_update','>=',$start],['t_update','<=',$end]])->sum('tunggakanonepercent');
|
||||||
|
|
||||||
$norujukan = Gadai::on($this->cawangan['mysql'])->where('sttebus','T')->where('tagbaru',1)->where('t_update','>=',$start)->where('t_update','<=',$end)->pluck('norujukan');
|
$norujukan = Gadai::on($this->cawangan['mysql'])->where('sttebus','T')->where('tagbaru',1)->where('t_update','>=',$start)->where('t_update','<=',$end)->pluck('norujukan');
|
||||||
|
|
||||||
$keuntungan = TransaksiKeuntungan::on('mysql7')
|
$keuntungan = TransaksiKeuntungan::on('mysql7')
|
||||||
->whereIn('norujukan',$norujukan)
|
->whereIn('norujukan',$norujukan)
|
||||||
->whereDate('tarikh_bayaran','>=',$start)
|
->whereDate('tarikh_bayaran','>=',$start)
|
||||||
->whereDate('tarikh_bayaran','<=',$end)
|
->whereDate('tarikh_bayaran','<=',$end)
|
||||||
->sum('onepercent_rebet');;
|
->sum('onepercent_rebet');
|
||||||
}
|
}
|
||||||
|
|
||||||
return $keuntungan;
|
$totalkeuntungan = $keuntungan + $akrual;
|
||||||
|
|
||||||
|
return $totalkeuntungan;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getTotalUjrah($type = 'B',$start = '2023-12-14',$end = '2023-12-14') : Float{
|
public function getTotalUjrah($type = 'B',$start = '2023-12-14',$end = '2023-12-14') : Float{
|
||||||
|
|
||||||
|
|
||||||
if($type == 'B'){
|
if($type == 'B'){
|
||||||
|
$akrual = Gadai::on($this->cawangan['mysql'])->where([['sttebus',''],['tagbaru',1]])->sum('tunggakanujrah');
|
||||||
|
|
||||||
$norujukan = Gadai::on($this->cawangan['mysql'])->where('sttebus','T')->where('tagbaru',1)->pluck('norujukan');
|
$norujukan = Gadai::on($this->cawangan['mysql'])->where('sttebus','T')->where('tagbaru',1)->pluck('norujukan');
|
||||||
|
|
||||||
$ujrah = TransaksiKeuntungan::on('mysql7')
|
$ujrah = TransaksiKeuntungan::on('mysql7')
|
||||||
->whereIn('norujukan',$norujukan)
|
->whereIn('norujukan',$norujukan)
|
||||||
->sum('ujrah_rebet');
|
->sum('ujrah_rebet');
|
||||||
|
|
||||||
}else if($type == 'L'){
|
}else if($type == 'L'){
|
||||||
|
$akrual = Gadai::on($this->cawangan['mysql'])->where([['sttebus',''],['tagbaru',1],['t_update','>=',$start],['t_update','<=',$end]])->sum('tunggakanujrah');
|
||||||
|
|
||||||
$norujukan = Gadai::on($this->cawangan['mysql'])->where('sttebus','T')->where('tagbaru',1)->pluck('norujukan');
|
$norujukan = Gadai::on($this->cawangan['mysql'])->where('sttebus','T')->where('tagbaru',1)->pluck('norujukan');
|
||||||
|
|
||||||
$ujrah = TransaksiKeuntungan::on('mysql7')
|
$ujrah = TransaksiKeuntungan::on('mysql7')
|
||||||
@@ -84,7 +95,8 @@ class OnePercentService
|
|||||||
->sum('ujrah_rebet');;
|
->sum('ujrah_rebet');;
|
||||||
}
|
}
|
||||||
|
|
||||||
return $ujrah;
|
$totalujrah = $ujrah + $akrual;
|
||||||
|
return $totalujrah;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -101,6 +101,8 @@ class GadaiV2
|
|||||||
|
|
||||||
$hargajualan = $request->pinjaman + $upah12;
|
$hargajualan = $request->pinjaman + $upah12;
|
||||||
|
|
||||||
|
$akrual = $this->kiraupahTawarruqStokAuditUjrahOnePercent(0.5,0,$kadar_raw['kadarujrah'],$request->pinjaman,$total_nilai_marhun,$margin_pinjam);
|
||||||
|
|
||||||
$gadai = Gadai::on($cawangan['mysql'])
|
$gadai = Gadai::on($cawangan['mysql'])
|
||||||
->where('norujukan','=',$norujukan)
|
->where('norujukan','=',$norujukan)
|
||||||
->update(array(
|
->update(array(
|
||||||
@@ -132,7 +134,9 @@ class GadaiV2
|
|||||||
'ujrah' => $ujrah,
|
'ujrah' => $ujrah,
|
||||||
'onepercent' => $onepercent,
|
'onepercent' => $onepercent,
|
||||||
'margin_semasa' => $margin_pinjam,
|
'margin_semasa' => $margin_pinjam,
|
||||||
'tagbaru' => 1
|
'tagbaru' => 1,
|
||||||
|
'tunggakanujrah' => $akrual['ujrah'],
|
||||||
|
'tunggakanonepercent' => $akrual['keuntungan'],
|
||||||
));
|
));
|
||||||
|
|
||||||
$new_data = Gadai::on($cawangan['mysql'])->where('norujukan','=',$norujukan)->first();
|
$new_data = Gadai::on($cawangan['mysql'])->where('norujukan','=',$norujukan)->first();
|
||||||
@@ -283,6 +287,7 @@ class GadaiV2
|
|||||||
DB::connection($cawangan['mysql'])->transaction(function () use($cawangan,$baki_pinjaman,$current,$norujukan,$gadai,$baki_hargajualan,$lelong_tawarruq,$margin_semasa){
|
DB::connection($cawangan['mysql'])->transaction(function () use($cawangan,$baki_pinjaman,$current,$norujukan,$gadai,$baki_hargajualan,$lelong_tawarruq,$margin_semasa){
|
||||||
|
|
||||||
$margin_updated = ($baki_pinjaman / $gadai['nilaimarhun']) * 100;
|
$margin_updated = ($baki_pinjaman / $gadai['nilaimarhun']) * 100;
|
||||||
|
$akrual = $this->kiraupahTawarruqStokAuditUjrahOnePercent($gadai['tempoh'],$gadai['tempohbayar'],$gadai['kadarujrah'],$gadai['bakipjm'],$gadai['nilaimarhun'],$margin_semasa);
|
||||||
|
|
||||||
$update_gadai = Gadai::on($cawangan['mysql'])->where('norujukan','=',$norujukan)->update(array(
|
$update_gadai = Gadai::on($cawangan['mysql'])->where('norujukan','=',$norujukan)->update(array(
|
||||||
'bakipjm' => $baki_pinjaman,
|
'bakipjm' => $baki_pinjaman,
|
||||||
@@ -292,6 +297,8 @@ class GadaiV2
|
|||||||
'tempohbayar' => $gadai['tempoh'],
|
'tempohbayar' => $gadai['tempoh'],
|
||||||
'lelong_tawarruq' => $lelong_tawarruq,
|
'lelong_tawarruq' => $lelong_tawarruq,
|
||||||
'margin_semasa' => $margin_updated,
|
'margin_semasa' => $margin_updated,
|
||||||
|
'tunggakanujrah' => $akrual['ujrah'],
|
||||||
|
'tunggakanonepercent' => $akrual['keuntungan']
|
||||||
));
|
));
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -364,7 +371,7 @@ class GadaiV2
|
|||||||
Gadai::on($cawangan_mysql['mysql'])->where('norujukan','=',$gadai['norujukan'])->update(array(
|
Gadai::on($cawangan_mysql['mysql'])->where('norujukan','=',$gadai['norujukan'])->update(array(
|
||||||
'jbg' => $tempoh_gadai,
|
'jbg' => $tempoh_gadai,
|
||||||
'tempoh' => $tempoh_gadai,
|
'tempoh' => $tempoh_gadai,
|
||||||
'tunggakan' => $upah_semasa['pendapatan'],
|
'tunggakan' => 0,
|
||||||
'tunggakanujrah' => $upah_semasa['ujrah'],
|
'tunggakanujrah' => $upah_semasa['ujrah'],
|
||||||
'tunggakanonepercent' => $upah_semasa['keuntungan'],
|
'tunggakanonepercent' => $upah_semasa['keuntungan'],
|
||||||
));
|
));
|
||||||
|
|||||||
Reference in New Issue
Block a user