fixing query konbank

This commit is contained in:
KhatamNugraha
2024-06-05 14:27:41 +07:00
parent da5874de41
commit 79b115bcb6
3 changed files with 122 additions and 56 deletions

View File

@ -77,7 +77,7 @@ class Account extends Model
->where('LIMIT_REF', null)
->where('AC.BATCH_DATE', $startDate)
->whereIn('AC.ACCOUNT_NUMBER', $arrAccount)
->whereIn(DB::raw("LEFT(CATEGORY, 3)"),['100','600','660','101'])
->whereIn(DB::raw("LEFT(CATEGORY, 3)"),['100','101'])
// ->groupBy('CUSTOMER_NO', 'ACCOUNT_NUMBER', 'SHORT_TITLE', 'SHORT_NAME', 'COMPANY_NAME', 'CATEGORY', 'LIMIT_REF')
->orderBy('CATEGORY', 'ASC')
->limit(100);
@ -103,7 +103,7 @@ class Account extends Model
// return $data;
// }
public function getAA($cust, $acc, $dataCore)
public function getAA($cust, $acc, $dataCore)
{
//$uppercaseKodeCabang = Str::upper($kodecabang);
$dateString = $dataCore->format('m/d/Y');
@ -126,27 +126,60 @@ class Account extends Model
return $data;
}
public function getArr($cust, $acc, $dataCore)
// public function getArr($cust, $acc, $dataCore)
// {
// //$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);
// return $data;
// }
public function getDepo($cust, $acc, $dataCore)
{
//$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);
$date = date("m/d/Y", $timestamp);
$matYear = 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);
$data = DB::connection("db2")->table("MIS.FACT_DPK AS DPK")
->selectRaw('DPK.NO_REK,
DPK.SUKU_BUNGA,
DPK.JUMLAH_NOMINAL,
DPK.KODE_SUB_PRODUK,
PER.DATE AS PERIOD,
MAT.DATE AS JATUH_TEMPO,
CUR.KODE_MATA_UANG,
DPK.SK_STATUS_DEPOSITO')
->join('MIS.DIM_PERIOD AS PER', 'DPK.SK_PERIOD', '=', 'PER.SK_PERIOD')
->join('MIS.DIM_PERIOD AS MAT', 'DPK.SK_JATUH_TEMPO', '=', 'MAT.SK_PERIOD')
->join('MIS.DIM_MATA_UANG AS CUR', 'DPK.SK_MATA_UANG', '=', 'CUR.SK_MATA_UANG')
// ->where('CUSTOMER_NO', $cif)
// ->where('LIMIT_REF', null)
->where('PER.DATE', $date)
->whereYear('MAT.DATE', '>', $matYear)
->whereIn('DPK.NO_REK', $acc)
//->whereIn('DPK.NO_REK', '<>',$arrExp)
// ->groupBy('CUSTOMER_NO', 'ACCOUNT_NUMBER', 'SHORT_TITLE', 'SHORT_NAME', 'COMPANY_NAME', 'CATEGORY', 'LIMIT_REF')
// ->orderBy('CATEGORY', 'ASC')
->limit(100);
return $data;
}

View File

@ -408,41 +408,19 @@ class KonfirmasiBankController extends Controller
foreach ($listAccount as $key1 => $account) {
if ($account->CATEGORY == '6603' || $account->CATEGORY == '6602') {
$dataAADepo = $Account->getArr($request['cusNo'], $account->ACCOUNT_NUMBER, $dateCore)->first();
// dd($days);
if ($dataAADepo != null) {
$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'] = $dataAADepo->SUKU_BUNGA. ' %';
$DataAccounts[$key1]['TERM'] = substr($dataAADepo->TENOR, 0, -1) . ' BLN';
}
}else{
$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'] = 'GIRO'; //$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'] = '' ;
$DataAccounts[$key1]['ARRANGEMENT_ID'] = '';
$DataAccounts[$key1]['FIXED_RATE'] = '';
$DataAccounts[$key1]['TERM'] = '';
}
$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'] = 'GIRO'; //$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'] = '' ;
$DataAccounts[$key1]['ARRANGEMENT_ID'] = '';
$DataAccounts[$key1]['FIXED_RATE'] = '';
$DataAccounts[$key1]['TERM'] = '';
//get data anjak
if ($account->CATEGORY == '1019') {
@ -453,6 +431,21 @@ class KonfirmasiBankController extends Controller
}
$DataDepo = [];
$Deposito = $Account->getDepo($request['cusNo'], $arrAccount, $dateCore)->get();
foreach ($Deposito as $keyDep => $depo) {
$DataDepo[$keyDep]['ACCOUNT_NUMBER'] = $depo->NO_REK;
$DataDepo[$keyDep]['BATCH_DATE'] = $depo->PERIOD;
$DataDepo[$keyDep]['SHORT_NAME'] = 'DEPOSITO';
$DataDepo[$keyDep]['CURRENCY'] = $depo->KODE_MATA_UANG;
$DataDepo[$keyDep]['WORKING_BALANCE'] = number_format($depo->JUMLAH_NOMINAL, 2, ',', '.') ;
$DataDepo[$keyDep]['MATURITY_DATE'] = Carbon::parse($depo->JATUH_TEMPO)->format('d-m-Y');
$DataDepo[$keyDep]['ARRANGEMENT_ID'] = '';
$DataDepo[$keyDep]['FIXED_RATE'] = $depo->SUKU_BUNGA;
$DataDepo[$keyDep]['TERM'] = substr($depo->KODE_SUB_PRODUK, 0, -1);
}
$Arrangement = $Account->getPinjaman($request['cusNo'], $dateCore)->get();
@ -542,7 +535,7 @@ class KonfirmasiBankController extends Controller
$data['DataCustomer'] = $GetCustomer ?? '';
$data['localDate'] = $tanggalIndonesia;
$data['today'] = $today;
$data['dataAADepo'] = $dataAADepo;
$data['DataDepo'] = $DataDepo;
$data['infoSuratNew'] = $infoSuratNew;
$data['totalOutstanding'] = $totalOutstanding;
@ -833,4 +826,4 @@ class KonfirmasiBankController extends Controller
}
}
}

View File

@ -159,7 +159,47 @@
<td class="text-center space1">{{ $val['ACCOUNT_NUMBER'] }}</td>
</tr>
@endforeach
@if ($data['dataAADepo'] == null)
@if (count( $data['DataDepo']) > 0)
@php
$noDepo = 0;
if (count( $data['DataAccounts']) > 0) {
$noDepo = count($data['DataAccounts']) + 1 ;
}else{
$noDepo = 1 ;
}
@endphp
@foreach ($data['DataDepo'] as $keyDep => $depo)
<tr class="space1">
<td class="text-center space1">{{ $noDepo++ }}</td>
<td class="space1">DEPOSITO</td>
<td class="text-center space1 "></td>
<td class="text-center space1">{{ $depo['CURRENCY'] }}</td>
<td class="text-right space1">{{$depo['WORKING_BALANCE']}}</td>
<td class="text-center space1">{{ $depo['TERM'] }} BLN</td>
<td class="text-center space1">{{ $depo['FIXED_RATE'] }} %</td>
<td class="text-center space1">{{ $depo['MATURITY_DATE'] }}</td>
<td class="text-center space1">{{ $depo['ACCOUNT_NUMBER'] }}</td>
</tr>
@endforeach
@else
<tr class="space1">
<td class="text-center space1">{{ $no+1 }}</td>
<td class="text-left space1">DEPOSITO</td>
<td class=" text-center space1"></td>
<td class=" text-center space1"></td>
<td class=" text-center space1">NIHIL</td>
<td class="text-center space1 "></td>
<td class="text-center space1 "></td>
<td class="text-center space1 "></td>
<td class="text-center space1"></td>
</tr>
@endif
{{-- @if ($data['dataAADepo'] == null)
@php
$no= count($data['DataAccounts']);
@endphp
@ -175,7 +215,7 @@
<td class="text-center space1"></td>
</tr>
@endif
@endif --}}
@else
<tr class="">