From da5874de419d02e5e5a31a0aca720b00a89e4d91 Mon Sep 17 00:00:00 2001 From: KhatamNugraha Date: Mon, 3 Jun 2024 17:43:54 +0700 Subject: [PATCH] update query konfbank --- Entities/Account.php | 35 +++++++------ Http/Controllers/KonfirmasiBankController.php | 49 ++++++------------- 2 files changed, 36 insertions(+), 48 deletions(-) diff --git a/Entities/Account.php b/Entities/Account.php index e74cce8..ca4d9fe 100644 --- a/Entities/Account.php +++ b/Entities/Account.php @@ -127,19 +127,23 @@ class Account extends Model } public function getArr($cust, $acc, $dataCore) - { - //$uppercaseKodeCabang = Str::upper($kodecabang); - //$dateString = $dataCore->format('m/d/Y'); - // dd($dateString); - //$timestamp = strtotime($dataCore); - // Format the timestamp into a date format - //$Year = date("Y", $timestamp); - $data = DB::connection("db2")->table("STG_DB.VW_AA_DETAIL") - ->selectRaw('ARRANGEMENT_ID,CUSTOMER,LINKED_APPL_ID,PRODUCT_LINE,MATURITY_DATE,RENEWAL_DATE,START_DATE,ARR_STATUS,BATCH_DATE,BASE_DATE') - ->where('CUSTOMER', $cust) - //->whereYear('BATCH_DATE', $Year) - ->where('LINKED_APPL_ID', $acc) + { + + //$uppercaseKodeCabang = Str::upper($kodecabang); + //$dateString = $dataCore->format('d/m/Y'); + // dd($dateString); + $timestamp = strtotime($dataCore); + + // Format the timestamp into a date format + $date = date("Y", $timestamp); + + $data = DB::connection("db2")->table("MIS.PRODEV_DEPO") + ->selectRaw('*') + ->where('NOMOR_CIF', $cust) + ->whereYear('BATCH_DATE', $date) + ->where('NOMOR_REKENING', $acc) + ->where('STATUS_REKENING', 'like', "%" .'CURRENT' ."%") // ->groupBy('ARR.ID', 'ARR.LINKED_APPL_ID', 'ARR.CUSTOMER', 'ARR.PRODUCT_LINE','ARR.BATCH_DATE','AD.MATURITY_DATE','AI.FIXED_RATE','ARR.BATCH_DATE') ->orderBy('BATCH_DATE', 'DESC') ->limit(1); @@ -239,7 +243,8 @@ class Account extends Model $data = DB::connection("db2")->table("STG_DB.AA_ARR_TERM_AMOUNT") ->select('*') ->where(DB::raw("LEFT(ID, 12)"), $arrangementId) - ->limit(100); + ->orderBy('ID', 'DESC') + ->limit(1); return $data; } @@ -308,7 +313,7 @@ class Account extends Model { $data = []; $data = DB::connection("db2")->table("STG_DB.AA_SCHEDULED_ACTIVITY") - ->select(DB::raw("LEFT(LAST_DATE, 8) AS LAST_DATE")) + ->select(DB::raw("LEFT(LAST_DATE, 8) AS LAST_DATE, LEFT(NEXT_DATE, 8) AS NEXT_DATE")) ->where('ID', $arrId) ->limit(1); @@ -366,4 +371,4 @@ class Account extends Model -} \ No newline at end of file +} diff --git a/Http/Controllers/KonfirmasiBankController.php b/Http/Controllers/KonfirmasiBankController.php index 00da332..6564194 100644 --- a/Http/Controllers/KonfirmasiBankController.php +++ b/Http/Controllers/KonfirmasiBankController.php @@ -406,44 +406,26 @@ class KonfirmasiBankController extends Controller // try { foreach ($listAccount as $key1 => $account) { - $dataAADepo = $Account->getArr($request['cusNo'], $account->ACCOUNT_NUMBER, $dateCore)->first(); + if ($account->CATEGORY == '6603' || $account->CATEGORY == '6602') { + $dataAADepo = $Account->getArr($request['cusNo'], $account->ACCOUNT_NUMBER, $dateCore)->first(); // dd($days); if ($dataAADepo != null) { - $tenor = ''; - $tanggal_1 = date_create($dataAADepo->RENEWAL_DATE); - $tglRenewal = $tanggal_1->format('d'); - $tanggal_2 = date_create($dataAADepo->BASE_DATE); - $tenor = date_diff($tanggal_1, $tanggal_2); - $batchDate = strtotime($dateCore); - $startDate = date("Y-m-d", $batchDate); // Tanggal mulai pinjaman - $maturityDate = Carbon::createFromFormat('Y-m-d', $startDate); - $tenorFix = $tenor->days >= 30 ? intval($tenor->days / 30) : 1; - - $startDate = date("Y-m-d", $batchDate); // Tanggal mulai pinjaman - // // Konversi tanggal mulai ke objek Carbon - $tanggalMulai = Carbon::parse($startDate); - // // Hitung tanggal jatuh tempo dengan menambahkan durasi hari - $tanggalJatuhTempo = $tanggalMulai->addDays($tenor->days); - // echo $tanggalJatuhTempo->toDateString(); // - $rate = $Account->getFixedRate($dataAADepo->ARRANGEMENT_ID, $dateCore)->first(); - $nextDate = $Account->getDateSchecule($dataAADepo->ARRANGEMENT_ID)->first(); - //dd( $nextDate,$account->ACCOUNT_NUMBER ); - - $DataAccounts[$key1]['ACCOUNT_NUMBER'] = $account->ACCOUNT_NUMBER; - $DataAccounts[$key1]['OPENING_DATE'] = $account->OPENING_DATE; - $DataAccounts[$key1]['BATCH_DATE'] = $account->BATCH_DATE; - $DataAccounts[$key1]['CUSTOMER_NO'] = $account->CUSTOMER_NO; - $DataAccounts[$key1]['SHORT_NAME'] = $dataAADepo->PRODUCT_LINE == 'DEPOSITS' ? 'DEPOSITO' : $account->SHORT_NAME; - $DataAccounts[$key1]['CURRENCY'] = $account->CURRENCY; - $DataAccounts[$key1]['PRODUCT'] = $account->SHORT_TITLE; - $DataAccounts[$key1]['COMPANY_NAME'] = $account->COMPANY_NAME; - $DataAccounts[$key1]['WORKING_BALANCE'] = $account->WORKING_BALANCE != null ? number_format($account->WORKING_BALANCE, 2, ',', '.') : 'NIHIL'; - $DataAccounts[$key1]['MATURITY_DATE'] = substr($nextDate->LAST_DATE, -2) .'-'.$tanggalJatuhTempo->format('m-Y'); + $dataAADepo = $Account->getArr($account->CUSTOMER_NO, $account->ACCOUNT_NUMBER, $dateCore)->first(); + $DataAccounts[$key1]['ACCOUNT_NUMBER'] = $dataAADepo->NOMOR_REKENING; + $DataAccounts[$key1]['OPENING_DATE'] = $dataAADepo->TANGGAL_BUKA_REKENING; + $DataAccounts[$key1]['BATCH_DATE'] = $dataAADepo->BATCH_DATE; + $DataAccounts[$key1]['CUSTOMER_NO'] = $dataAADepo->NOMOR_CIF; + $DataAccounts[$key1]['SHORT_NAME'] = 'DEPOSITO'; + $DataAccounts[$key1]['CURRENCY'] = $dataAADepo->MATA_UANG; + // $DataAccounts[$key1]['PRODUCT'] = $account->SHORT_TITLE; + $DataAccounts[$key1]['COMPANY_NAME'] = $dataAADepo->CABANG; + $DataAccounts[$key1]['WORKING_BALANCE'] = number_format($dataAADepo->SALDO_REKENING, 2, ',', '.') ; + $DataAccounts[$key1]['MATURITY_DATE'] = Carbon::parse($dataAADepo->MATURITY_DATE)->format('d-m-Y'); $DataAccounts[$key1]['ARRANGEMENT_ID'] = ''; - $DataAccounts[$key1]['FIXED_RATE'] = $rate->FIXED_RATE . ' %'; - $DataAccounts[$key1]['TERM'] = $tenorFix . ' BLN'; + $DataAccounts[$key1]['FIXED_RATE'] = $dataAADepo->SUKU_BUNGA. ' %'; + $DataAccounts[$key1]['TERM'] = substr($dataAADepo->TENOR, 0, -1) . ' BLN'; } }else{ @@ -471,6 +453,7 @@ class KonfirmasiBankController extends Controller } + $Arrangement = $Account->getPinjaman($request['cusNo'], $dateCore)->get(); foreach ($Arrangement as $key2 => $pinjaman) {