diff --git a/Entities/Account.php b/Entities/Account.php index a2f6956..12e84f5 100644 --- a/Entities/Account.php +++ b/Entities/Account.php @@ -47,7 +47,7 @@ class Account extends Model ->join('STG_DB.COMPANY AS CP', 'AC.CO_CODE', '=', 'CP.ID') ->where('CUSTOMER_NO', $cif) ->where('COMPANY_NAME', 'like', "%" .$uppercaseKodeCabang."%") - ->where('LIMIT_REF', null) + // ->where('LIMIT_REF', null) ->where('AC.BATCH_DATE', $startDate) ->whereIn(DB::raw("LEFT(CATEGORY, 3)"), ['100','600','660','101']) ->groupBy('CUSTOMER_NO', 'ACCOUNT_NUMBER', 'SHORT_TITLE', 'SHORT_NAME', 'COMPANY_NAME', 'LIMIT_REF') @@ -353,17 +353,34 @@ class Account extends Model return $data; } - public function getAccountRK($cusNo, $date) + // public function getAccountRK($cusNo, $date) + // { + // $data = []; + // $data = DB::connection("db2")->table("STG_DB.ACCOUNT AS AC") + // ->select('AC.ACCOUNT_NUMBER', 'AC.CUSTOMER_NO', 'CT.SHORT_NAME', 'AC.WORKING_BALANCE', 'AC.CURRENCY', 'AC.SHORT_TITLE', 'AC.OPENING_DATE', 'AC.BATCH_DATE', 'AC.CATEGORY', 'LT.EXPIRY_DATE', 'LT.AVAIL_AMT') + // ->join('STG_DB.LIMIT AS LT', 'AC.ACCOUNT_NUMBER', '=', 'LT.ACCOUNT') + // ->join('STG_DB.CATEGORY AS CT', 'AC.CATEGORY', '=', 'CT.ID') + // ->where('AC.CUSTOMER_NO', $cusNo) + // ->where('AC.BATCH_DATE', $date) + // ->where('AC.LIMIT_REF', '<>', 'NULL') + // ->whereIn(DB::raw("LEFT(CATEGORY, 3)"), ['100','600','660','101']) + // ->limit(100); + // return $data; + // } + + public function getAccountRK($arrCusNo, $date) { + + $timestamp = strtotime($date); + // Format the timestamp into a date format + $Year = date("Y", $timestamp); $data = []; - $data = DB::connection("db2")->table("STG_DB.ACCOUNT AS AC") - ->select('AC.ACCOUNT_NUMBER', 'AC.CUSTOMER_NO', 'CT.SHORT_NAME', 'AC.WORKING_BALANCE', 'AC.CURRENCY', 'AC.SHORT_TITLE', 'AC.OPENING_DATE', 'AC.BATCH_DATE', 'AC.CATEGORY', 'LT.EXPIRY_DATE', 'LT.AVAIL_AMT') - ->join('STG_DB.LIMIT AS LT', 'AC.ACCOUNT_NUMBER', '=', 'LT.ACCOUNT') - ->join('STG_DB.CATEGORY AS CT', 'AC.CATEGORY', '=', 'CT.ID') - ->where('AC.CUSTOMER_NO', $cusNo) - ->where('AC.BATCH_DATE', $date) - ->where('AC.LIMIT_REF', '<>', 'NULL') - ->whereIn(DB::raw("LEFT(CATEGORY, 3)"), ['100','600','660','101']) + $data = DB::connection("db2")->table("MIS.COLLECTION") + ->selectRaw('ACCOUNT_NUMBER,MATURITY_DATE,MAX(BATCH_DATE) AS BATCH_DATE,MAX(OUTSTANDING) AS OUTSTANDING,LOAN_CCY,PRODUCT_LOAN,PRINCIPLE_AMOUNT,CURRENT_INTEREST_RATE,TENOR,FACILITY_TYPE,LIMIT_ID') + ->whereYear('TANGGAL_DATA', $Year) + ->whereIn(DB::raw("ACCOUNT_NUMBER"), $arrCusNo) + //->where('LOAN_STATUS', 'CURRENT') + ->groupBy('ACCOUNT_NUMBER', 'MATURITY_DATE', 'LOAN_CCY', 'PRODUCT_LOAN', 'PRINCIPLE_AMOUNT', 'CURRENT_INTEREST_RATE', 'TENOR','FACILITY_TYPE','LIMIT_ID') ->limit(100); return $data; } diff --git a/Http/Controllers/KonfirmasiBankController.php b/Http/Controllers/KonfirmasiBankController.php index 07f8b7a..1cc2ab4 100644 --- a/Http/Controllers/KonfirmasiBankController.php +++ b/Http/Controllers/KonfirmasiBankController.php @@ -464,38 +464,50 @@ class KonfirmasiBankController extends Controller } - $listAccountRK = $Account->getAccountRK($request['cusNo'], $dateCore)->get(); + $listAccountRK = $Account->getAccountRK($arrAccount, $dateCore)->get(); foreach ($listAccountRK as $rk => $valRk) { - 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->PRODUCT_LOAN; + $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; + // 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'] = 'PRK KOMERSIL'; - $DataRK[$rk]['CURRENCY'] = $valRk->CURRENCY; - $DataRK[$rk]['PRODUCT'] = $valRk->SHORT_TITLE; - $DataRK[$rk]['WORKING_BALANCE'] = $valRk->AVAIL_AMT != null ? number_format($valRk->AVAIL_AMT, 2, ',', '.') : 'NIHIL'; - $DataRK[$rk]['MATURITY_DATE'] = date('d-m-Y', strtotime($valRk->EXPIRY_DATE)) ?? ''; - $DataRK[$rk]['ARRANGEMENT_ID'] = ''; - $DataRK[$rk]['FIXED_RATE'] = $rateRK; - $DataRK[$rk]['TERM'] = '12'; + // $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; - } + // } }