From 692a8161903b5691116a2dbb80510548706dbce8 Mon Sep 17 00:00:00 2001 From: KhatamNugraha Date: Tue, 23 Apr 2024 16:23:19 +0700 Subject: [PATCH] fixsing fasilitas --- Entities/Account.php | 33 +++++++++++-- Http/Controllers/KonfirmasiBankController.php | 33 ++++++++----- Resources/views/exportPdf.blade.php | 48 ++----------------- .../views/pages/index_fasilitas.blade.php | 8 ++++ .../views/pages/table_fasilitas.blade.php | 7 ++- 5 files changed, 69 insertions(+), 60 deletions(-) diff --git a/Entities/Account.php b/Entities/Account.php index 0d2daa3..41aff76 100644 --- a/Entities/Account.php +++ b/Entities/Account.php @@ -128,7 +128,7 @@ class Account extends Model // ->join('STG_DB.ACCOUNT AS AC', 'AA.LINKED_APPL_ID', '=', 'AC.ACCOUNT_NUMBER') ->where('CUSTOMER',$cus_no) // ->whereIn(DB::raw("LINKED_APPL_ID"),$arr) - //->where('ARR_STATUS' , 'CURRENT') + ->where('ARR_STATUS' , 'CURRENT') // ->orderBy('TERM','DESC'); ->where('BATCH_DATE', $dateCore) ->where('ARR_STATUS','<>', 'CLOSE') @@ -178,7 +178,7 @@ class Account extends Model public function getSingleAccount($acNo, $date){ $data = []; $data = DB::connection("db2")->table("STG_DB.ACCOUNT") - ->select('WORKING_BALANCE') + ->select('WORKING_BALANCE','LIMIT_REF') ->where('ACCOUNT_NUMBER',$acNo) ->where('BATCH_DATE',$date) ->limit(1) @@ -188,6 +188,31 @@ class Account extends Model return $data; } + public function getLimitCheck($acNo, $date){ + $data = []; + $data = DB::connection("db2")->table("STG_DB.LIMIT") + ->select('ACCOUNT','EXPIRY_DATE','AVAIL_AMT') + ->where('ACCOUNT', 'like', "%" .$acNo."%") + ->where('BATCH_DATE',$date) + ->limit(1) + ->orderBy('ACCOUNT','DESC'); + + return $data; + } + + public function getRateRk($acNo, $date){ + $data = []; + $data = DB::connection("db2")->table("STG_DB.ACCOUNT_DEBIT_INT") + ->select('DR_INT_RATE') + ->where(DB::raw("LEFT(ID, 10)"),$acNo ) + // ->where('ID', 'like', "%" .$acNo."%") + ->where('BATCH_DATE',$date) + ->limit(1) + ->orderBy('INSERT_DATE','DESC'); + + return $data; + } + public function getCategory($category){ $data = []; $data = DB::connection("db2")->table("STG_DB.CATEGORY") @@ -211,7 +236,7 @@ class Account extends Model 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') + ->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) @@ -244,4 +269,4 @@ class Account extends Model -} \ No newline at end of file +} diff --git a/Http/Controllers/KonfirmasiBankController.php b/Http/Controllers/KonfirmasiBankController.php index aaeb4cf..b3ffb59 100644 --- a/Http/Controllers/KonfirmasiBankController.php +++ b/Http/Controllers/KonfirmasiBankController.php @@ -382,28 +382,35 @@ } - - $Arrangement = $Account->getPinjaman($request['cusNo'], $dateCore)->get(); - foreach ($Arrangement as $key2 => $pinjaman) { - $balance = $Account->getSingleAccount($pinjaman->LINKED_APPL_ID,$startDate)->first(); - // dd($balance); + foreach ($Arrangement as $key2 => $pinjaman) { + $limtiCheck = $Account->getLimitCheck($pinjaman->LINKED_APPL_ID,$startDate)->first(); $DataPinjaman[$key2]['ARRANGEMENT_ID'] = $pinjaman->ARRANGEMENT_ID; $DataPinjaman[$key2]['START_DATE'] = $pinjaman->START_DATE; $DataPinjaman[$key2]['CURRENCY'] = $pinjaman->CURRENCY; $DataPinjaman[$key2]['PRODUCT'] = $pinjaman->PRODUCT; - $DataPinjaman[$key2]['WORKING_BALANCE'] = number_format($balance->WORKING_BALANCE, 2, ',', '.') ?? ''; + $DataPinjaman[$key2]['WORKING_BALANCE'] = number_format($limtiCheck->AVAIL_AMT, 2, ',', '.') ?? ''; $DataPinjaman[$key2]['TERM'] = $this->convertDateToMonth($pinjaman->TERM) ?? ''; $DataPinjaman[$key2]['FIXED_RATE'] = $pinjaman->FIXED_RATE ?? ''; $DataPinjaman[$key2]['MATURITY_DATE'] = date('d-m-Y', strtotime($pinjaman->MATURITY_DATE)) ?? ''; $DataPinjaman[$key2]['ACCOUNT_NUMBER'] = $pinjaman->LINKED_APPL_ID; + + } $listAccountRK = $Account->getAccountRK($request['cusNo'], $dateCore )->get(); foreach ($listAccountRK as $rk => $valRk) { if ( $valRk->CATEGORY == '1003') { + $rateRK = ""; + $rateDebitRk = $Account->getRateRk($valRk->ACCOUNT_NUMBER, $dateCore )->first(); + if( $rateDebitRk->DR_INT_RATE == "0"){ + $rateRK = $rateDebitRk->DR_INT_RATE; + }else{ + $rateRK = substr($rateDebitRk->DR_INT_RATE, 0, -2); ; + } + $DataRK[$rk]['ACCOUNT_NUMBER'] = $valRk->ACCOUNT_NUMBER; $DataRK[$rk]['OPENING_DATE'] = $valRk->OPENING_DATE; $DataRK[$rk]['BATCH_DATE'] = $valRk->BATCH_DATE; @@ -411,15 +418,18 @@ $DataRK[$rk]['SHORT_NAME'] = $valRk->SHORT_NAME; $DataRK[$rk]['CURRENCY'] = $valRk->CURRENCY; $DataRK[$rk]['PRODUCT'] = $valRk->SHORT_TITLE; - $DataRK[$rk]['WORKING_BALANCE'] = $valRk->WORKING_BALANCE != null ? number_format($valRk->WORKING_BALANCE, 2, ',', '.') : 'NIHIL'; + $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'] = ''; - $DataRK[$rk]['TERM'] = ''; + $DataRK[$rk]['FIXED_RATE'] = $rateRK; + $DataRK[$rk]['TERM'] = '12'; + } } + + $fasilitas = Fasilitas::where('nomor_cif',$request['cusNo'] )->where('status',1)->get(); foreach ($fasilitas as $key3 => $val3) { $DataFasilitas[$key3]['jenis_fasilitas'] = $val3->jenis_fasilitas; @@ -456,6 +466,7 @@ // $data['infoSuratOld'] = $infoSuratOld; $data['infoSuratNew'] = $infoSuratNew; + // dd($data); $pdf = PDF::loadview('konfirmasibank::exportPdf',['data'=>$data]); @@ -536,10 +547,10 @@ $Category = Category::all(); $Company = Company::all(); - // dd($fasilitas); $limitReference = LimitReference::all(); + $data['queryParam'] = $request->query(); - $data['fasilitas'] = $fasilitas; + $data['fasilitas'] = $fasilitas; $data['limitReference'] = $limitReference; $data['Category'] = $Category; $data['Company'] = $Company; diff --git a/Resources/views/exportPdf.blade.php b/Resources/views/exportPdf.blade.php index 5f6e653..936bc41 100644 --- a/Resources/views/exportPdf.blade.php +++ b/Resources/views/exportPdf.blade.php @@ -216,8 +216,8 @@ {{ $dtRK['CURRENCY'] }} {{$dtRK['WORKING_BALANCE']}} - - + {{$dtRK['TERM']}} BLN + {{$dtRK['FIXED_RATE']}} % {{$dtRK['MATURITY_DATE']}} {{ $dtRK['ACCOUNT_NUMBER'] }} @@ -249,47 +249,8 @@ - @if (count($data['DataLimit']) > 0 OR count($data['DataFasilitas']) > 0 ) - @if (count($data['DataLimit']) > 0) - @php $i=1 @endphp - @foreach ($data['DataLimit'] as $limit) - @php - $approvalDate = \Carbon\Carbon::parse($limit->APPROVAL_DATE); - $expiryDate = \Carbon\Carbon::parse($limit->EXPIRY_DATE); - $term = $expiryDate->diffInMonths($approvalDate); - $limitPecent = intval($limit->LIMIT_PERCENTAGE) / 100 ; - $noRek = explode(']', $limit->ACCOUNT); - //conver term - @endphp - - - {{ $i++ }} - {{ $limit->SHORT_NAME }} - - {{-- {{ $approvalDate->format('d-m-Y') }} --}} - {{ $limit->LIMIT_CURRENCY }} - - {{ ($limit->AVAIL_AMT != 0.00) ? number_format($limit->AVAIL_AMT,2,',','.') : 'NIHIL'}} - {{ $term }} BLN - {{ $limitPecent }} % - {{ $expiryDate->format('d-m-Y')}} - - @if(count($noRek) > 1) - - @else - {{ $limit->ACCOUNT}} - @endif - - - @endforeach - @endif - - @if (count($data['DataFasilitas']) > 0) - @php + @if (count($data['DataFasilitas']) > 0 ) + @php $no = 0; if (count( $data['DataLimit']) > 0) { $no = count($data['DataLimit']) + 1 ; @@ -312,7 +273,6 @@ {{ $fasilitas['nomor_rekening'] }} @endforeach - @endif @else NIHIL diff --git a/Resources/views/pages/index_fasilitas.blade.php b/Resources/views/pages/index_fasilitas.blade.php index 4f63bb3..db4ccb6 100644 --- a/Resources/views/pages/index_fasilitas.blade.php +++ b/Resources/views/pages/index_fasilitas.blade.php @@ -473,6 +473,14 @@ history.back(); }) + // Fungsi untuk memeriksa apakah suatu nilai adalah float + function isFloat(value) { + // Menggunakan parseFloat untuk mengubah string menjadi float + var floatValue = parseFloat(value); + // Memeriksa apakah hasil konversi bukan NaN dan apakah nilai asli sama dengan versi float-nya + return !isNaN(floatValue) && floatValue == value; + } + }); diff --git a/Resources/views/pages/table_fasilitas.blade.php b/Resources/views/pages/table_fasilitas.blade.php index 4d96be3..bbf85e8 100644 --- a/Resources/views/pages/table_fasilitas.blade.php +++ b/Resources/views/pages/table_fasilitas.blade.php @@ -25,7 +25,12 @@ {{$item['jenis_fasilitas']}} {{$item['cabang']}} {{$item['jenis_rekening']}} - {{ number_format(floatval($item['saldo']), 2, ',', '.'); }} + {{ number_format(floatval($item['saldo']), 2, ',', '.') }} + {{-- @if (isFloat($item['saldo'])) + {{ number_format(floatval($item['saldo']), 2, ',', '.') }} + @else + {{ number_format($item['saldo'], 2, ',', '.') }} + @endif --}} {{$item['start_date']}} {{$item['due_date']}} {{$item['fixed_rate']}}