sett timeout query mesage

This commit is contained in:
KhatamNugraha
2024-06-24 10:03:01 +07:00
parent f0ab51aab9
commit 56e599438e
2 changed files with 65 additions and 35 deletions

View File

@ -446,8 +446,18 @@ class KonfirmasiBankController extends Controller
} }
$DataDepo = []; $DataDepo = [];
try {
$Deposito = $Account->getDepo($request['cusNo'], $arrAccount, $dateCoreDepo)->get(); $Deposito = $Account->getDepo($request['cusNo'], $arrAccount, $dateCoreDepo)->get();
} catch (\Illuminate\Database\QueryException $e) {
$errorCode = $e->errorInfo[1];
if ($errorCode == 1205) { // 1205 adalah kode error untuk Lock wait timeout exceeded; try restarting transaction
// Lakukan sesuatu jika terjadi timeout
return response()->json(['error' => 'Database timeout, please try again later'], 503);
}
// Handle error lainnya
return response()->json(['error' => 'Database error'], 500);
}
foreach ($Deposito as $keyDep => $depo) { foreach ($Deposito as $keyDep => $depo) {
@ -461,10 +471,22 @@ class KonfirmasiBankController extends Controller
$DataDepo[$keyDep]['FIXED_RATE'] = $depo->SUKU_BUNGA; $DataDepo[$keyDep]['FIXED_RATE'] = $depo->SUKU_BUNGA;
$DataDepo[$keyDep]['TERM'] = substr($depo->KODE_SUB_PRODUK, 0, -1); $DataDepo[$keyDep]['TERM'] = substr($depo->KODE_SUB_PRODUK, 0, -1);
} }
// dd($Deposito);
try {
$Arrangement = $Account->getPinjaman($request['cusNo'], $dateCoreAccount)->get(); $Arrangement = $Account->getPinjaman($request['cusNo'], $dateCoreAccount)->get();
} catch (\Illuminate\Database\QueryException $e) {
$errorCode = $e->errorInfo[1];
if ($errorCode == 1205) { // 1205 adalah kode error untuk Lock wait timeout exceeded; try restarting transaction
// Lakukan sesuatu jika terjadi timeout
return response()->json(['error' => 'Database timeout, please try again later'], 503);
}
// Handle error lainnya
return response()->json(['error' => 'Database error'], 500);
}
foreach ($Arrangement as $key2 => $pinjaman) { foreach ($Arrangement as $key2 => $pinjaman) {
$limtiCheck = $Account->getLimitCheck($pinjaman->LINKED_APPL_ID, $startDate)->first(); $limtiCheck = $Account->getLimitCheck($pinjaman->LINKED_APPL_ID, $startDate)->first();
$DataPinjaman[$key2]['ARRANGEMENT_ID'] = $pinjaman->ARRANGEMENT_ID; $DataPinjaman[$key2]['ARRANGEMENT_ID'] = $pinjaman->ARRANGEMENT_ID;
@ -480,8 +502,20 @@ class KonfirmasiBankController extends Controller
} }
try {
$listAccountRK = $Account->getAccountRK($arrAccount, $dateCoreAccount)->get(); $listAccountRK = $Account->getAccountRK($arrAccount, $dateCoreAccount)->get();
} catch (\Illuminate\Database\QueryException $e) {
$errorCode = $e->errorInfo[1];
if ($errorCode == 1205) { // 1205 adalah kode error untuk Lock wait timeout exceeded; try restarting transaction
// Lakukan sesuatu jika terjadi timeout
return response()->json(['error' => 'Database timeout, please try again later'], 503);
}
// Handle error lainnya
return response()->json(['error' => 'Database error'], 500);
}
foreach ($listAccountRK as $rk => $valRk) { foreach ($listAccountRK as $rk => $valRk) {
$DataRK[$rk]['ACCOUNT_NUMBER'] = $valRk->ACCOUNT_NUMBER; $DataRK[$rk]['ACCOUNT_NUMBER'] = $valRk->ACCOUNT_NUMBER;
@ -496,39 +530,23 @@ class KonfirmasiBankController extends Controller
$DataRK[$rk]['ARRANGEMENT_ID'] = ''; $DataRK[$rk]['ARRANGEMENT_ID'] = '';
$DataRK[$rk]['FIXED_RATE'] = $valRk->CURRENT_INTEREST_RATE; $DataRK[$rk]['FIXED_RATE'] = $valRk->CURRENT_INTEREST_RATE;
$DataRK[$rk]['TERM'] = $valRk->TENOR; $DataRK[$rk]['TERM'] = $valRk->TENOR;
// if ($valRk->CATEGORY == '1003') {
// $rateRK = "";
// $rateDebitRk = $Account->getRateRk($valRk->ACCOUNT_NUMBER, $dateCore)->first();
// if ($rateDebitRk) {
// if( $rateDebitRk->DR_INT_RATE == "0") {
// $rateRK = $rateDebitRk->DR_INT_RATE;
// } else {
// $rateRK = substr($rateDebitRk->DR_INT_RATE, 0, -2);
// }
// } else {
// $rateRK = '';
// }
// $DataRK[$rk]['ACCOUNT_NUMBER'] = $valRk->ACCOUNT_NUMBER;
// // $DataRK[$rk]['OPENING_DATE'] = $valRk->OPENING_DATE;
// $DataRK[$rk]['BATCH_DATE'] = $valRk->BATCH_DATE;
// // $DataRK[$rk]['CUSTOMER_NO'] = $valRk->CUSTOMER_NO;
// $DataRK[$rk]['SHORT_NAME'] = $valRk->LOAN_CCY;
// $DataRK[$rk]['CURRENCY'] = $valRk->LOAN_CCY;
// $DataRK[$rk]['PRODUCT'] = $valRk->PRODUCT_LOAN;
// $DataRK[$rk]['WORKING_BALANCE'] = $valRk->PRINCIPLE_AMOUNT != null ? number_format($valRk->PRINCIPLE_AMOUNT, 2, ',', '.') : 'NIHIL';
// $DataRK[$rk]['MATURITY_DATE'] = date('d-m-Y', strtotime($valRk->MATURITY_DATE)) ?? '';
// $DataRK[$rk]['ARRANGEMENT_ID'] = '';
// $DataRK[$rk]['FIXED_RATE'] = $valRk->CURRENT_INTEREST_RATE;
// $DataRK[$rk]['TERM'] = $valRk->TENOR;
// }
} }
try {
$fasilitas = Fasilitas::where('nomor_cif', $request['cusNo'])->where('status', 1)->get(); $fasilitas = Fasilitas::where('nomor_cif', $request['cusNo'])->where('status', 1)->get();
} catch (\Illuminate\Database\QueryException $e) {
$errorCode = $e->errorInfo[1];
if ($errorCode == 1205) { // 1205 adalah kode error untuk Lock wait timeout exceeded; try restarting transaction
// Lakukan sesuatu jika terjadi timeout
return response()->json(['error' => 'Database timeout, please try again later'], 503);
}
// Handle error lainnya
return response()->json(['error' => 'Database error'], 500);
}
foreach ($fasilitas as $key3 => $val3) { foreach ($fasilitas as $key3 => $val3) {
$DataFasilitas[$key3]['jenis_fasilitas'] = $val3->jenis_fasilitas; $DataFasilitas[$key3]['jenis_fasilitas'] = $val3->jenis_fasilitas;
$DataFasilitas[$key3]['start_date'] = $val3->start_date; $DataFasilitas[$key3]['start_date'] = $val3->start_date;
@ -541,7 +559,19 @@ class KonfirmasiBankController extends Controller
} }
//Get DatA Anjak //Get DatA Anjak
try {
$ListAnjak = $Account->getAccountAnjak($rekEscrow, $dateCoreAccount)->get(); $ListAnjak = $Account->getAccountAnjak($rekEscrow, $dateCoreAccount)->get();
} catch (\Illuminate\Database\QueryException $e) {
$errorCode = $e->errorInfo[1];
if ($errorCode == 1205) { // 1205 adalah kode error untuk Lock wait timeout exceeded; try restarting transaction
// Lakukan sesuatu jika terjadi timeout
return response()->json(['error' => 'Database timeout, please try again later'], 503);
}
// Handle error lainnya
return response()->json(['error' => 'Database error'], 500);
}
$totalOutstanding = $ListAnjak->sum('OUTSTANDING') != null ? number_format(abs($ListAnjak->sum('OUTSTANDING')), 2, ',', '.') : 'NIHIL'; $totalOutstanding = $ListAnjak->sum('OUTSTANDING') != null ? number_format(abs($ListAnjak->sum('OUTSTANDING')), 2, ',', '.') : 'NIHIL';