feature/modal-online-pendahuluan #13

Merged
ismailmasseran merged 1 commits from feature/modal-online-pendahuluan into main 2026-09-17 07:58:27 +08:00
2 changed files with 118 additions and 70 deletions
+62 -15
View File
@@ -12,6 +12,7 @@ use App\GlDetail;
use App\imbangdugalama;
use App\GlCode;
use App\Panjar;
use App\ModalOnline;
use Illuminate\Http\Request;
use Carbon\Carbon;
@@ -168,34 +169,61 @@ class VaultController extends Controller
return response()->json($updateVault, 200);
}
public function updateVaultDeletePendahuluanSerahan($kodcaw, Request $request)
{
$current = Carbon::now();
$current = new Carbon();
$cawangan = Cawangan::on('mysql7')->where('kodcaw', '=', $kodcaw)->first();
$vault=Vault::on($cawangan['mysql'])->where('kodcaw','=',$kodcaw)->where('tarikh','=',$current->toDateString())->orderby('tarikh','desc')->first();
if (!$cawangan) {
return response()->json(['message' => 'Cawangan tidak dijumpai'], 404);
}
$vault = Vault::on($cawangan['mysql'])
->where('kodcaw', '=', $kodcaw)
->where('tarikh', '=', $current->toDateString())
->first();
if (!$vault) {
return response()->json(['message' => 'Rekod vault hari ini tidak dijumpai'], 404);
}
$bakiawal = $vault['bakiawal'];
$keluar = $vault['keluar'];
$masuk = $vault['masuk'];
$bakiakhir = $vault['bakiakhir'];
$bakieod = $vault['bakieod'];
$pendahuluan = $vault['pendahuluan'];
$serahan = $vault['serahan'];
$totpanjaran = $vault['totpanjar'];
$glpend = GlDetail::on($cawangan['mysql'])->where('tarikh','=', $current->toDateString())->sum('pendahuluan');
$glser = GlDetail::on($cawangan['mysql'])->where('tarikh','=', $current->toDateString())->where('teller','<>','ONLINE')->sum('serahan');
// Pendahuluan HQ (dari GL)
$glpend = GlDetail::on($cawangan['mysql'])
->where('tarikh', '=', $current->toDateString())
->sum('pendahuluan');
$bakiakhir = $bakiawal - $keluar + $masuk + $glpend - $glser - $totpanjaran;
// Serahan (GL, exclude teller ONLINE)
$glser = GlDetail::on($cawangan['mysql'])
->where('tarikh', '=', $current->toDateString())
->where('teller', '<>', 'ONLINE')
->sum('serahan');
$updateVault=Vault::on($cawangan['mysql'])->where([['tarikh','=',$current->toDateString()],['kodcaw','=', $kodcaw]])->update(array(
'pendahuluan' => $glpend,
// Pendahuluan Online (had yang diluluskan hari ini)
$modalOnlineHad = ModalOnline::on($cawangan['mysql'])
->where('kodcaw', '=', $kodcaw)
->where('tarikh', '=', $current->toDateString())
->value('had') ?? 0;
// Gabungan pendahuluan HQ + pendahuluan online
$totalPendahuluan = $glpend + $modalOnlineHad;
$bakiakhir = $bakiawal - $keluar + $masuk + $totalPendahuluan - $glser - $totpanjaran;
$updateVault = Vault::on($cawangan['mysql'])
->where([['tarikh', '=', $current->toDateString()], ['kodcaw', '=', $kodcaw]])
->update([
'pendahuluan' => $totalPendahuluan,
'serahan' => $glser,
'bakiakhir' => $bakiakhir,
'bakieod'=>$bakiakhir
));
'bakieod' => $bakiakhir,
]);
return response()->json($updateVault, 200);
}
@@ -498,7 +526,6 @@ class VaultController extends Controller
->where('tarikh','>','2021-03-24')
->sum('serahan');
//Sebelum Tawarruq
if($kodcaw == 'KB2' || $kodcaw == 'WCY' || $kodcaw == '1STOP' || $kodcaw == 'ARM' || $kodcaw == 'APM' || $kodcaw == '010621' || $kodcaw == '010915' || $kodcaw == '020303')
{
@@ -571,7 +598,13 @@ class VaultController extends Controller
$pendahuluanjmclama = imbangdugalama::on($cawangan['mysql'])
->sum('pendahuluan_jmc');
$total = $pendahuluanPKBtawarruq + $pendahuluanjmclama + $pendahuluanpkblama + $pendahuluanPKB + $pendahuluanJMC;
//Pendahuluan Online (had)
$modalOnlineHad = ModalOnline::on($cawangan['mysql'])
->where('kodcaw','=', $kodcaw)
->where('tarikh','=', $request->tarikh)
->value('had') ?? 0;
$total = $pendahuluanPKBtawarruq + $pendahuluanjmclama + $pendahuluanpkblama + $pendahuluanPKB + $pendahuluanJMC + $modalOnlineHad;
$pindahkekpkb = GlCode::on($cawangan['mysql'])
->where('glcode','=',$serahankoperasi)
@@ -732,5 +765,19 @@ class VaultController extends Controller
return response()->json($vault);
}
public function CalculationModalOnlineLejer($kodcaw, Request $request)
{
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
$tarikh = $request->hingga;
$modal_online = ModalOnline::on($cawangan['mysql'])
->where('kodcaw', '=', $kodcaw)
->where('tarikh', '=', $tarikh)
->first();
return response()->json([
'had' => $modal_online ? floatval($modal_online->had) : 0,
]);
}
}
+1
View File
@@ -607,6 +607,7 @@ $router->group(['prefix'=>'api'], function () use ($router){
//Dua-Dua Table
$router->get('PendahuluanSerahanLejer/{kodcaw}',['uses'=>'VaultController@CalculationPendahuluanSerahanLejer']);
$router->get('ModalOnlineLejer/{kodcaw}', ['uses' => 'VaultController@CalculationModalOnlineLejer']);
$router->get('KeuntunganArRahnLejer/{kodcaw}',['uses'=>'GadaiController@CalculationKeuntunganLejer']);
$router->get('RebetCalculationLejer/{kodcaw}',['uses'=>'TebusController@RebetCalculationLejer']);
$router->get('cajlelongLejer/{kodcaw}',['uses'=>'LelongController@cajlelongcalculationLejer']);