Perbaikan data anjak

This commit is contained in:
KhatamNugraha
2024-05-08 16:03:52 +07:00
parent 86dc2d4199
commit a8a0ed1bd9
3 changed files with 802 additions and 846 deletions

View File

@ -20,9 +20,6 @@ class Account extends Model
protected $connection = 'db2'; protected $connection = 'db2';
protected $table = 'STG_DB.ACCOUNT'; protected $table = 'STG_DB.ACCOUNT';
protected $primaryKey = '@ID'; protected $primaryKey = '@ID';
//public $incrementing = false;
protected $fillable = [ protected $fillable = [
"'CUSTOMER_NO', "'CUSTOMER_NO',
'MNEMONIC' 'MNEMONIC'
@ -36,7 +33,8 @@ class Account extends Model
return $this->belongsTo(Arrangement::class, 'LINKED_APPL_ID'); return $this->belongsTo(Arrangement::class, 'LINKED_APPL_ID');
} }
public function getSearchAccount($cif ,$arrAccount, $kodecabang, $startDate){ public function getSearchAccount($cif, $arrAccount, $kodecabang, $startDate)
{
$uppercaseKodeCabang = Str::upper($kodecabang); $uppercaseKodeCabang = Str::upper($kodecabang);
$data = []; $data = [];
@ -49,7 +47,7 @@ class Account extends Model
->join('STG_DB.COMPANY AS CP', 'AC.CO_CODE', '=', 'CP.ID') ->join('STG_DB.COMPANY AS CP', 'AC.CO_CODE', '=', 'CP.ID')
->where('CUSTOMER_NO', $cif) ->where('CUSTOMER_NO', $cif)
->where('COMPANY_NAME', 'like', "%" .$uppercaseKodeCabang."%") ->where('COMPANY_NAME', 'like', "%" .$uppercaseKodeCabang."%")
->where('LIMIT_REF', NULL) ->where('LIMIT_REF', null)
->where('AC.BATCH_DATE', $startDate) ->where('AC.BATCH_DATE', $startDate)
->whereIn(DB::raw("LEFT(CATEGORY, 3)"), ['100','600','660','101']) ->whereIn(DB::raw("LEFT(CATEGORY, 3)"), ['100','600','660','101'])
->groupBy('CUSTOMER_NO', 'ACCOUNT_NUMBER', 'SHORT_TITLE', 'SHORT_NAME', 'COMPANY_NAME', 'LIMIT_REF') ->groupBy('CUSTOMER_NO', 'ACCOUNT_NUMBER', 'SHORT_TITLE', 'SHORT_NAME', 'COMPANY_NAME', 'LIMIT_REF')
@ -66,7 +64,8 @@ class Account extends Model
return $data; return $data;
} }
public function getAccount($cif, $arrAccount, $startDate){ public function getAccount($cif, $arrAccount, $startDate)
{
//$uppercaseKodeCabang = Str::upper($kodecabang); //$uppercaseKodeCabang = Str::upper($kodecabang);
$data = DB::connection("db2")->table("STG_DB.ACCOUNT AS AC") $data = DB::connection("db2")->table("STG_DB.ACCOUNT AS AC")
@ -74,63 +73,63 @@ class Account extends Model
->join('STG_DB.CATEGORY AS CT', 'AC.CATEGORY', '=', 'CT.ID') ->join('STG_DB.CATEGORY AS CT', 'AC.CATEGORY', '=', 'CT.ID')
->join('STG_DB.COMPANY AS CP', 'AC.CO_CODE', '=', 'CP.ID') ->join('STG_DB.COMPANY AS CP', 'AC.CO_CODE', '=', 'CP.ID')
->where('CUSTOMER_NO', $cif) ->where('CUSTOMER_NO', $cif)
// ->where('COMPANY_NAME', 'like', "%" .$uppercaseKodeCabang."%") ->where('LIMIT_REF', null)
->where('LIMIT_REF', NULL)
->where('AC.BATCH_DATE', $startDate) ->where('AC.BATCH_DATE', $startDate)
->whereIn('AC.ACCOUNT_NUMBER', $arrAccount) ->whereIn('AC.ACCOUNT_NUMBER', $arrAccount)
//->whereIn(DB::raw("LEFT(CATEGORY, 3)"),['100','600','660','101']) ->whereIn(DB::raw("LEFT(CATEGORY, 3)"),['100','600','660','101'])
->groupBy('CUSTOMER_NO', 'ACCOUNT_NUMBER', 'SHORT_TITLE', 'SHORT_NAME', 'COMPANY_NAME', 'CATEGORY', 'LIMIT_REF') ->groupBy('CUSTOMER_NO', 'ACCOUNT_NUMBER', 'SHORT_TITLE', 'SHORT_NAME', 'COMPANY_NAME', 'CATEGORY', 'LIMIT_REF')
->orderBy('SHORT_NAME', 'ASC') ->orderBy('SHORT_NAME', 'ASC')
->limit(100); ->limit(100);
return $data; return $data;
} }
public function getCustomer($cus_no){ public function getCustomer($cus_no)
{
$data = []; $data = [];
$data = DB::connection("db2")->table("STG_DB.CUSTOMER")->select('CUSTOMER_NO', 'STREET', 'RESIDENCE', 'ADDRESS', 'SHORT_NAME')->where('CUSTOMER_NO', $cus_no); $data = DB::connection("db2")->table("STG_DB.CUSTOMER")->select('CUSTOMER_NO', 'STREET', 'RESIDENCE', 'ADDRESS', 'SHORT_NAME')->where('CUSTOMER_NO', $cus_no);
return $data; return $data;
} }
public function getAAaccount($cust, $acc){ public function getAAaccount($cust, $acc)
{
$data = []; $data = [];
$data = DB::connection("db2")->table("STG_DB.VW_AA_ACCOUNT")->select('ARRANGEMENT_ID', 'MATURITY_DATE', 'PRODUCT', 'TERM', 'RENEWAL_DATE', 'START_DATE', 'FIXED_RATE') $data = DB::connection("db2")->table("STG_DB.VW_AA_ACCOUNT")->select('ARRANGEMENT_ID', 'MATURITY_DATE', 'PRODUCT', 'TERM', 'RENEWAL_DATE', 'START_DATE', 'FIXED_RATE')
// ->where('CUSTOMER', $cif)
->where('CUSTOMER', $cust) ->where('CUSTOMER', $cust)
->where('LINKED_APPL_ID', $acc) ->where('LINKED_APPL_ID', $acc)
->limit(1); ->limit(1);
return $data; return $data;
} }
public function getAA($cust, $acc, $dataCore){ public function getAA($cust, $acc, $dataCore)
{
$timestamp = strtotime($dataCore);
// Format the timestamp into a date format
$Year = date("Y", $timestamp);
$data = []; $data = [];
$data = DB::connection("db2")->table("STG_DB.VW_AA_DETAIL") $data = DB::connection("db2")->table("STG_DB.VW_AA_DETAIL")
->select('LINKED_APPL_ID', 'CUSTOMER', 'RENEWAL_DATE', 'START_DATE', 'FIXED_RATE', 'BATCH_DATE', 'PRODUCT_LINE', 'ARR_STATUS') ->select('LINKED_APPL_ID', 'CUSTOMER', 'RENEWAL_DATE', 'START_DATE', 'FIXED_RATE', 'BATCH_DATE', 'PRODUCT_LINE', 'ARR_STATUS')
// ->where('CUSTOMER', $cif)
->where('CUSTOMER', $cust) ->where('CUSTOMER', $cust)
->where('ARR_STATUS', '<>', 'CLOSE') ->where('ARR_STATUS', '<>', 'CLOSE')
->where('PRODUCT_LINE', 'like', "%" .'DEPOSITS' ."%") ->where('PRODUCT_LINE', 'like', "%" .'DEPOSITS' ."%")
// ->whereIn(DB::raw("LINKED_APPL_ID"),$acc)
->where('LINKED_APPL_ID', $acc) ->where('LINKED_APPL_ID', $acc)
->where('BATCH_DATE', $dataCore) ->whereYear('BATCH_DATE', $Year)
->groupBy('LINKED_APPL_ID', 'CUSTOMER', 'RENEWAL_DATE', 'START_DATE', 'FIXED_RATE', 'BATCH_DATE', 'PRODUCT_LINE', 'ARR_STATUS') ->groupBy('LINKED_APPL_ID', 'CUSTOMER', 'RENEWAL_DATE', 'START_DATE', 'FIXED_RATE', 'BATCH_DATE', 'PRODUCT_LINE', 'ARR_STATUS')
->orderBy('BATCH_DATE', 'DESC')
->limit(100); ->limit(100);
return $data; return $data;
} }
public function getPinjaman($cus_no, $dateCore){ public function getPinjaman($cus_no, $dateCore)
{
$data = []; $data = [];
$data = DB::connection("db2")->table("STG_DB.VW_AA_ARR") $data = DB::connection("db2")->table("STG_DB.VW_AA_ARR")
->select('LINKED_APPL_ID', 'ARRANGEMENT_ID', 'CUSTOMER', 'BATCH_DATE', 'START_DATE', 'PRODUCT_LINE', 'PRODUCT', 'ARR_STATUS', 'CURRENCY', 'TERM', 'MATURITY_DATE', 'RENEWAL_DATE', 'FIXED_RATE') ->select('LINKED_APPL_ID', 'ARRANGEMENT_ID', 'CUSTOMER', 'BATCH_DATE', 'START_DATE', 'PRODUCT_LINE', 'PRODUCT', 'ARR_STATUS', 'CURRENCY', 'TERM', 'MATURITY_DATE', 'RENEWAL_DATE', 'FIXED_RATE')
// ->join('STG_DB.ACCOUNT AS AC', 'AA.LINKED_APPL_ID', '=', 'AC.ACCOUNT_NUMBER')
->where('CUSTOMER', $cus_no) ->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('BATCH_DATE', $dateCore)
->where('ARR_STATUS', '<>', 'CLOSE') ->where('ARR_STATUS', '<>', 'CLOSE')
->where('PRODUCT_LINE', 'like', "%" .'LENDING' ."%") ->where('PRODUCT_LINE', 'like', "%" .'LENDING' ."%")
// ->groupBy('ARRANGEMENT_ID','ACCOUNT_NUMBER','SHORT_TITLE','SHORT_NAME','COMPANY_NAME')
->limit(100); ->limit(100);
return $data; return $data;
@ -138,7 +137,8 @@ class Account extends Model
} }
public function getFixedRate($arrangementId, $startDate){ public function getFixedRate($arrangementId, $startDate)
{
$data = []; $data = [];
$data = DB::connection("db2")->table("STG_DB.AA_ARR_INTEREST") $data = DB::connection("db2")->table("STG_DB.AA_ARR_INTEREST")
->select('FIXED_RATE') ->select('FIXED_RATE')
@ -149,7 +149,8 @@ class Account extends Model
return $data; return $data;
} }
public function getMaturityDate($arrangementId,$startDate){ public function getMaturityDate($arrangementId, $startDate)
{
$data = []; $data = [];
$data = DB::connection("db2")->table("STG_DB.AA_ACCOUNT_DETAILS") $data = DB::connection("db2")->table("STG_DB.AA_ACCOUNT_DETAILS")
->select('MATURITY_DATE', 'RENEWAL_DATE', 'START_DATE') ->select('MATURITY_DATE', 'RENEWAL_DATE', 'START_DATE')
@ -161,18 +162,19 @@ class Account extends Model
return $data; return $data;
} }
public function getTermAmount($arrangementId){ public function getTermAmount($arrangementId)
{
$data = []; $data = [];
$data = DB::connection("db2")->table("STG_DB.AA_ARR_TERM_AMOUNT") $data = DB::connection("db2")->table("STG_DB.AA_ARR_TERM_AMOUNT")
->select('*') ->select('*')
->where(DB::raw("LEFT(ID, 12)"), $arrangementId) ->where(DB::raw("LEFT(ID, 12)"), $arrangementId)
//->orderBy('TERM','DESC')
->limit(100); ->limit(100);
return $data; return $data;
} }
public function getSingleAccount($acNo, $date){ public function getSingleAccount($acNo, $date)
{
$data = []; $data = [];
$data = DB::connection("db2")->table("STG_DB.ACCOUNT") $data = DB::connection("db2")->table("STG_DB.ACCOUNT")
->select('WORKING_BALANCE', 'LIMIT_REF') ->select('WORKING_BALANCE', 'LIMIT_REF')
@ -185,7 +187,8 @@ class Account extends Model
return $data; return $data;
} }
public function getLimitCheck($acNo, $date){ public function getLimitCheck($acNo, $date)
{
$data = []; $data = [];
$data = DB::connection("db2")->table("STG_DB.LIMIT") $data = DB::connection("db2")->table("STG_DB.LIMIT")
->select('ACCOUNT', 'EXPIRY_DATE', 'AVAIL_AMT') ->select('ACCOUNT', 'EXPIRY_DATE', 'AVAIL_AMT')
@ -197,12 +200,12 @@ class Account extends Model
return $data; return $data;
} }
public function getRateRk($acNo, $date){ public function getRateRk($acNo, $date)
{
$data = []; $data = [];
$data = DB::connection("db2")->table("STG_DB.ACCOUNT_DEBIT_INT") $data = DB::connection("db2")->table("STG_DB.ACCOUNT_DEBIT_INT")
->select('DR_INT_RATE') ->select('DR_INT_RATE')
->where(DB::raw("LEFT(ID, 10)"), $acNo) ->where(DB::raw("LEFT(ID, 10)"), $acNo)
// ->where('ID', 'like', "%" .$acNo."%")
->where('BATCH_DATE', $date) ->where('BATCH_DATE', $date)
->limit(1) ->limit(1)
->orderBy('INSERT_DATE', 'DESC'); ->orderBy('INSERT_DATE', 'DESC');
@ -210,27 +213,28 @@ class Account extends Model
return $data; return $data;
} }
public function getCategory($category){ public function getCategory($category)
{
$data = []; $data = [];
$data = DB::connection("db2")->table("STG_DB.CATEGORY") $data = DB::connection("db2")->table("STG_DB.CATEGORY")
->select('SHORT_NAME') ->select('SHORT_NAME')
->where('ID', $category); ->where('ID', $category);
// ->orderBy('TERM','DESC');
return $data; return $data;
} }
public function getCompany($co_code){ public function getCompany($co_code)
{
$data = []; $data = [];
$data = DB::connection("db2")->table("STG_DB.COMPANY") $data = DB::connection("db2")->table("STG_DB.COMPANY")
->select('COMPANY_NAME') ->select('COMPANY_NAME')
->where('ID', $co_code); ->where('ID', $co_code);
// ->orderBy('TERM','DESC');
return $data; return $data;
} }
public function getAccountRK($cusNo,$date){ public function getAccountRK($cusNo, $date)
{
$data = []; $data = [];
$data = DB::connection("db2")->table("STG_DB.ACCOUNT AS AC") $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') ->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')
@ -244,7 +248,8 @@ class Account extends Model
return $data; return $data;
} }
public function getAccountAnjak($AccNo,$date){ public function getAccountAnjak($AccNo, $date)
{
$timestamp = strtotime($date); $timestamp = strtotime($date);
// Format the timestamp into a date format // Format the timestamp into a date format
$Year = date("Y", $timestamp); $Year = date("Y", $timestamp);
@ -252,21 +257,18 @@ class Account extends Model
$data = DB::connection("db2")->table("MIS.COLLECTION") $data = DB::connection("db2")->table("MIS.COLLECTION")
->selectRaw('LOAN_NUMBER,ACCOUNT_NUMBER,MATURITY_DATE,START_DATE,MAX(TANGGAL_DATA) AS TANGGAL_DATA,MAX(OUTSTANDING) AS OUTSTANDING,LOAN_CCY,PRODUCT_LOAN,PRINCIPLE_AMOUNT,CURRENT_INTEREST_RATE,TENOR,MAX(BRANCH) AS BRANCH,PAYIN_ACCOUNT,FACILITY_TYPE') ->selectRaw('LOAN_NUMBER,ACCOUNT_NUMBER,MATURITY_DATE,START_DATE,MAX(TANGGAL_DATA) AS TANGGAL_DATA,MAX(OUTSTANDING) AS OUTSTANDING,LOAN_CCY,PRODUCT_LOAN,PRINCIPLE_AMOUNT,CURRENT_INTEREST_RATE,TENOR,MAX(BRANCH) AS BRANCH,PAYIN_ACCOUNT,FACILITY_TYPE')
->whereYear('TANGGAL_DATA', $Year) ->whereYear('TANGGAL_DATA', $Year)
// ->whereIn('PAYIN_ACCOUNT',$AccNo)
->whereIn(DB::raw("PAYIN_ACCOUNT"), $AccNo) ->whereIn(DB::raw("PAYIN_ACCOUNT"), $AccNo)
//->whereIn(DB::raw("ACCOUNT_NUMBER"),$AccNo)
->where('LOAN_STATUS', 'CURRENT') ->where('LOAN_STATUS', 'CURRENT')
->groupBy('LOAN_NUMBER', 'ACCOUNT_NUMBER', 'MATURITY_DATE', 'START_DATE', 'LOAN_CCY', 'PRODUCT_LOAN', 'PRINCIPLE_AMOUNT', 'CURRENT_INTEREST_RATE', 'TENOR', 'PAYIN_ACCOUNT', 'FACILITY_TYPE') ->groupBy('LOAN_NUMBER', 'ACCOUNT_NUMBER', 'MATURITY_DATE', 'START_DATE', 'LOAN_CCY', 'PRODUCT_LOAN', 'PRINCIPLE_AMOUNT', 'CURRENT_INTEREST_RATE', 'TENOR', 'PAYIN_ACCOUNT', 'FACILITY_TYPE')
->limit(100); ->limit(100);
return $data; return $data;
} }
public function getLimit($cus_id,$periode){ public function getLimit($cus_id, $periode)
{
$timestamp = strtotime($periode); $timestamp = strtotime($periode);
// Format the timestamp into a date format // Format the timestamp into a date format
$Year = date("Y", $timestamp); $Year = date("Y", $timestamp);
// dd($periode);
$data = []; $data = [];
$data = DB::connection("db2")->table("STG_DB.LIMIT AS LM") $data = DB::connection("db2")->table("STG_DB.LIMIT AS LM")
->select('*') ->select('*')
@ -277,8 +279,6 @@ class Account extends Model
->where(DB::raw("LEFT(LM.@ID, 10)"), $cus_id) ->where(DB::raw("LEFT(LM.@ID, 10)"), $cus_id)
->whereYear('LM.BATCH_DATE', $Year) ->whereYear('LM.BATCH_DATE', $Year)
->limit(100); ->limit(100);
//->where('BATCH_DATE', $periode);
// ->orderBy('LM.@ID','DESC')->get();
return $data; return $data;
} }

View File

@ -17,7 +17,6 @@
use Modules\Konfirmasibank\Entities\Account; use Modules\Konfirmasibank\Entities\Account;
use Modules\Konfirmasibank\Entities\Arrangement; use Modules\Konfirmasibank\Entities\Arrangement;
use Modules\Konfirmasibank\Entities\TermAmount; use Modules\Konfirmasibank\Entities\TermAmount;
//use Dompdf\Dompdf;
use PDF; use PDF;
use Dompdf\Options; use Dompdf\Options;
use Carbon\Carbon; use Carbon\Carbon;
@ -89,7 +88,8 @@
} }
public function create(){ public function create()
{
return view('konfirmasibank::pages.index', compact('data')); return view('konfirmasibank::pages.index', compact('data'));
} }
@ -99,7 +99,7 @@
{ {
$data = []; $data = [];
$Account = new Account; $Account = new Account();
$arrAccount = []; $arrAccount = [];
$startDate = Carbon::parse($request->startDate); $startDate = Carbon::parse($request->startDate);
@ -120,19 +120,8 @@
public function postInfoSurat(Request $request){ public function postInfoSurat(Request $request)
// $noSurat = $this->generateNomorSurat(); {
// $request->validate([
// 'signer' => ['required'],
// 'no_req_surat' => ['required', 'max:100'],
// 'tgl_req_surat' => ['required'],
// 'email' => ['email'],
// 'tlp' => ['numeric', 'max:10'],
// 'nama_tujuan' => ['required'],
// 'alamat' => ['required']
// ]);
//Validate the request
//Validate the request //Validate the request
$currentDate = Carbon::now(); $currentDate = Carbon::now();
$tglSurat = $currentDate->format('Y-m-d'); $tglSurat = $currentDate->format('Y-m-d');
@ -155,28 +144,8 @@
} }
// private function generateNomorSurat(){
// $latesNoSurat = '';
// $latestRecord = letters::latest('no_surat')->select('no_surat')->first();
// $tanggal = now();
// $tahun = $tanggal->format('Y');
// // Fungsi untuk mengonversi angka bulan menjadi romawi
// $bulanRomawi = $this->numberToRoman($tanggal->format('n'));
// if($latestRecord){ public function numberToRoman($num)
// $squence = substr($latestRecord['no_surat'], 0, 3);
// $latesNoSurat = str_pad(intval($squence), 3, '0', STR_PAD_LEFT);
// $NoUrut = str_pad(intval($latesNoSurat + 1), 3, '0', STR_PAD_LEFT);
// $noSurat = " $NoUrut/SUBDIT.OPS/$bulanRomawi/$tahun";
// return $noSurat;
// }else {
// $noSurat = "001/SUBDIT.OPS/$bulanRomawi/$tahun";
// return $noSurat;
// }
// }
function numberToRoman($num)
{ {
// Be sure to convert the given parameter into an integer // Be sure to convert the given parameter into an integer
$n = intval($num); $n = intval($num);
@ -189,8 +158,7 @@
'X' => 10, 'IX' => 9, 'V' => 5, 'IV' => 4, 'I' => 1 'X' => 10, 'IX' => 9, 'V' => 5, 'IV' => 4, 'I' => 1
); );
foreach ($lookup as $roman => $value) foreach ($lookup as $roman => $value) {
{
// Look for number of matches // Look for number of matches
$matches = intval($n / $value); $matches = intval($n / $value);
@ -206,16 +174,15 @@
public function signer(Request $request){ public function signer(Request $request)
{
if (is_null($this->user) || !$this->user->can('konfirmasibank.create')) { if (is_null($this->user) || !$this->user->can('konfirmasibank.create')) {
abort(403, 'Sorry !! You are Unauthorized to view any master data !'); abort(403, 'Sorry !! You are Unauthorized to view any master data !');
} }
$data = []; $data = [];
// $signer = Signer::paginate(10);
$signer = Signer::where('status', 1)->paginate(10); $signer = Signer::where('status', 1)->paginate(10);
$data['signer'] = $signer; $data['signer'] = $signer;
// dd( $data['signer']);
return view('konfirmasibank::pages.index_signer', compact('data')); return view('konfirmasibank::pages.index_signer', compact('data'));
@ -333,7 +300,6 @@
'deputy_director' => [ 'deputy_director' => [
'required', 'required',
'string', 'string',
// Rule::unique('signers', 'deputy_director_name')->ignore($signer->id),
'regex:/^[a-zA-Z\s]*$/', 'regex:/^[a-zA-Z\s]*$/',
function ($attribute, $value, $fail) use ($request) { function ($attribute, $value, $fail) use ($request) {
if ($value === $request->executive_officer) { if ($value === $request->executive_officer) {
@ -344,7 +310,6 @@
'executive_officer' => [ 'executive_officer' => [
'required', 'required',
'string', 'string',
// Rule::unique('signers', 'executive_officer_name')->ignore($signer->id),
'regex:/^[a-zA-Z\s]*$/' 'regex:/^[a-zA-Z\s]*$/'
], ],
'signer_type' => 'required|string' 'signer_type' => 'required|string'
@ -366,11 +331,12 @@
} }
} }
public function export(Request $request){ public function export(Request $request)
{
$arrAccount = explode(",", $request['accNo']); $arrAccount = explode(",", $request['accNo']);
$startDate = Carbon::parse($request['startDate2']); $startDate = Carbon::parse($request['startDate2']);
$dateCore = $startDate->subDays(2); $dateCore = $startDate->subDays(2);
$Account = new Account; $Account = new Account();
$data = []; $data = [];
$DataAccounts = []; $DataAccounts = [];
$DataPinjaman = []; $DataPinjaman = [];
@ -378,20 +344,16 @@
$DataRK = []; $DataRK = [];
$rekEscrow = []; $rekEscrow = [];
$DataAnjak = []; $DataAnjak = [];
// dd($listAccount);
$GetCustomer = $Account->getCustomer($request['cusNo'])->first(); $GetCustomer = $Account->getCustomer($request['cusNo'])->first();
//dd($GetCustomer );
$listAccount = $Account->getAccount($request['cusNo'], $arrAccount, $dateCore)->get(); $listAccount = $Account->getAccount($request['cusNo'], $arrAccount, $dateCore)->get();
//dd( $listAccount);
foreach ($listAccount as $key1 => $account) { foreach ($listAccount as $key1 => $account) {
$dataAADepo = $Account->getAA($request['cusNo'],$account->ACCOUNT_NUMBER, $dateCore)->first();
// $AccountAnjak = $Account->getAccountAnjak($request['cusNo'], $dateCore )->first();
if ($account->CATEGORY == '6603' || $account->CATEGORY == '6602') { if ($account->CATEGORY == '6603' || $account->CATEGORY == '6602') {
$dataAADepo = $Account->getAA($request['cusNo'], $account->ACCOUNT_NUMBER, $dateCore)->first();
if ($dataAADepo != null) { if ($dataAADepo != null) {
$tenor = ''; $tenor = '';
$tanggal_1 = date_create($dataAADepo->RENEWAL_DATE); $tanggal_1 = date_create($dataAADepo->RENEWAL_DATE);
$tanggal_2 = date_create($dataAADepo->START_DATE); $tanggal_2 = date_create($dataAADepo->START_DATE);
@ -426,7 +388,6 @@
$DataAccounts[$key1]['FIXED_RATE'] = ''; $DataAccounts[$key1]['FIXED_RATE'] = '';
$DataAccounts[$key1]['TERM'] = ''; $DataAccounts[$key1]['TERM'] = '';
} }
//get data anjak //get data anjak
if ($account->CATEGORY == '1019') { if ($account->CATEGORY == '1019') {
@ -437,8 +398,6 @@
} }
$Arrangement = $Account->getPinjaman($request['cusNo'], $dateCore)->get(); $Arrangement = $Account->getPinjaman($request['cusNo'], $dateCore)->get();
foreach ($Arrangement as $key2 => $pinjaman) { foreach ($Arrangement as $key2 => $pinjaman) {
@ -458,16 +417,20 @@
$listAccountRK = $Account->getAccountRK($request['cusNo'], $dateCore)->get(); $listAccountRK = $Account->getAccountRK($request['cusNo'], $dateCore)->get();
foreach ($listAccountRK as $rk => $valRk) { foreach ($listAccountRK as $rk => $valRk) {
if ($valRk->CATEGORY == '1003') { if ($valRk->CATEGORY == '1003') {
$rateRK = ""; $rateRK = "";
$rateDebitRk = $Account->getRateRk($valRk->ACCOUNT_NUMBER, $dateCore)->first(); $rateDebitRk = $Account->getRateRk($valRk->ACCOUNT_NUMBER, $dateCore)->first();
if ($rateDebitRk) {
if( $rateDebitRk->DR_INT_RATE == "0") { if( $rateDebitRk->DR_INT_RATE == "0") {
$rateRK = $rateDebitRk->DR_INT_RATE; $rateRK = $rateDebitRk->DR_INT_RATE;
} else { } else {
$rateRK = substr($rateDebitRk->DR_INT_RATE, 0, -2); ; $rateRK = substr($rateDebitRk->DR_INT_RATE, 0, -2);
} }
} else {
$rateRK = '';
}
$DataRK[$rk]['ACCOUNT_NUMBER'] = $valRk->ACCOUNT_NUMBER; $DataRK[$rk]['ACCOUNT_NUMBER'] = $valRk->ACCOUNT_NUMBER;
$DataRK[$rk]['OPENING_DATE'] = $valRk->OPENING_DATE; $DataRK[$rk]['OPENING_DATE'] = $valRk->OPENING_DATE;
@ -477,7 +440,7 @@
$DataRK[$rk]['CURRENCY'] = $valRk->CURRENCY; $DataRK[$rk]['CURRENCY'] = $valRk->CURRENCY;
$DataRK[$rk]['PRODUCT'] = $valRk->SHORT_TITLE; $DataRK[$rk]['PRODUCT'] = $valRk->SHORT_TITLE;
$DataRK[$rk]['WORKING_BALANCE'] = $valRk->AVAIL_AMT != null ? number_format($valRk->AVAIL_AMT, 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]['MATURITY_DATE'] = date('d-m-Y', strtotime($valRk->EXPIRY_DATE)) ?? '';
$DataRK[$rk]['ARRANGEMENT_ID'] = ''; $DataRK[$rk]['ARRANGEMENT_ID'] = '';
$DataRK[$rk]['FIXED_RATE'] = $rateRK; $DataRK[$rk]['FIXED_RATE'] = $rateRK;
$DataRK[$rk]['TERM'] = '12'; $DataRK[$rk]['TERM'] = '12';
@ -487,7 +450,6 @@
} }
$fasilitas = Fasilitas::where('nomor_cif', $request['cusNo'])->where('status', 1)->get(); $fasilitas = Fasilitas::where('nomor_cif', $request['cusNo'])->where('status', 1)->get();
foreach ($fasilitas as $key3 => $val3) { foreach ($fasilitas as $key3 => $val3) {
$DataFasilitas[$key3]['jenis_fasilitas'] = $val3->jenis_fasilitas; $DataFasilitas[$key3]['jenis_fasilitas'] = $val3->jenis_fasilitas;
@ -502,29 +464,29 @@
//Get DatA Anjak //Get DatA Anjak
$ListAnjak = $Account->getAccountAnjak($rekEscrow, $dateCore)->get(); $ListAnjak = $Account->getAccountAnjak($rekEscrow, $dateCore)->get();
$totalOutstanding = $ListAnjak->sum('OUTSTANDING') != null ? number_format(abs($ListAnjak->sum('OUTSTANDING')), 2, ',', '.') : 'NIHIL';
// dd($totalOutstanding);
foreach ($ListAnjak as $key4 => $val4) { // foreach ($ListAnjak as $key4 => $val4) {
$DataAnjak[$key4]['PRODUCT_LOAN'] = $val4->PRODUCT_LOAN; // $DataAnjak[$key4]['PRODUCT_LOAN'] = $val4->PRODUCT_LOAN;
$DataAnjak[$key4]['LOAN_CCY'] = $val4->LOAN_CCY; // $DataAnjak[$key4]['LOAN_CCY'] = $val4->LOAN_CCY;
$DataAnjak[$key4]['CUSTOMER_NO'] = $val4->PAYIN_ACCOUNT; // $DataAnjak[$key4]['CUSTOMER_NO'] = $val4->PAYIN_ACCOUNT;
$DataAnjak[$key4]['TENOR'] = $val4->TENOR; // $DataAnjak[$key4]['TENOR'] = $val4->TENOR;
// $DataAnjak[$key4]['OUTSTANDING'] = $val4->OUTSTANDING != null ? number_format($val4->OUTSTANDING, 2, ',', '.') : 'NIHIL'; // $DataAnjak[$key4]['OUTSTANDING'] = $val4->OUTSTANDING != null ? number_format(abs($val4->OUTSTANDING), 2, ',', '.') : 'NIHIL';
$DataAnjak[$key4]['OUTSTANDING'] = $val4->OUTSTANDING != null ? number_format(abs($val4->OUTSTANDING), 2, ',', '.') : 'NIHIL'; // $DataAnjak[$key4]['MATURITY_DATE'] = date('d-m-Y', strtotime($val4->MATURITY_DATE)) ?? '';
$DataAnjak[$key4]['MATURITY_DATE'] = date('d-m-Y', strtotime($val4->MATURITY_DATE)) ?? ''; ; // ;
$DataAnjak[$key4]['ACCOUNT_NUMBER'] = $val4->ACCOUNT_NUMBER; // $DataAnjak[$key4]['ACCOUNT_NUMBER'] = $val4->ACCOUNT_NUMBER;
$DataAnjak[$key4]['CURRENT_INTEREST_RATE'] = $val4->CURRENT_INTEREST_RATE; // $DataAnjak[$key4]['CURRENT_INTEREST_RATE'] = $val4->CURRENT_INTEREST_RATE;
$DataAnjak[$key4]['TERM'] = $val4->CURRENT_INTEREST_RATE; // $DataAnjak[$key4]['TERM'] = $val4->CURRENT_INTEREST_RATE;
} // }
$ListLimits = $Account->getLimit($request['cusNo'], $request['startDate2'])->get(); $ListLimits = $Account->getLimit($request['cusNo'], $request['startDate2'])->get();
// dd($fasilitas);
$signer = Signer::where('id', $request['signerId'])->where('status', 1)->get(); $signer = Signer::where('id', $request['signerId'])->where('status', 1)->get();
$batchDate = Carbon::parse($request['startDate2']); $batchDate = Carbon::parse($request['startDate2']);
$currentDate = Carbon::now(); $currentDate = Carbon::now();
$tanggalIndonesia = strtoupper($batchDate->locale('id')->isoFormat('D MMMM YYYY')); // Mengubah seluruh string menjadi huruf besar $tanggalIndonesia = strtoupper($batchDate->locale('id')->isoFormat('D MMMM YYYY')); // Mengubah seluruh string menjadi huruf besar
$today = strtoupper($currentDate->locale('id')->isoFormat('D MMMM YYYY')); $today = strtoupper($currentDate->locale('id')->isoFormat('D MMMM YYYY'));
$letter = new Letters; $letter = new Letters();
$infoSuratNew = $letter->where('no_cif', $request['cusNo'])->orderBy('id', 'DESC')->first(); $infoSuratNew = $letter->where('no_cif', $request['cusNo'])->orderBy('id', 'DESC')->first();
$data['DataAccounts'] = $DataAccounts; $data['DataAccounts'] = $DataAccounts;
@ -536,14 +498,11 @@
$data['DataCustomer'] = $GetCustomer ?? ''; $data['DataCustomer'] = $GetCustomer ?? '';
$data['localDate'] = $tanggalIndonesia; $data['localDate'] = $tanggalIndonesia;
$data['today'] = $today; $data['today'] = $today;
// $data['batchDate'] = $request['startDate2'];
$data['dataAADepo'] = $dataAADepo; $data['dataAADepo'] = $dataAADepo;
$data['infoSuratNew'] = $infoSuratNew; $data['infoSuratNew'] = $infoSuratNew;
$data['DataAnjak'] = $DataAnjak; $data['totalOutstanding'] = $totalOutstanding;
// dd($data);
$pdf = PDF::loadview('konfirmasibank::exportPdf', ['data' => $data]); $pdf = PDF::loadview('konfirmasibank::exportPdf', ['data' => $data]);
// Set page script to disable header on the first page // Set page script to disable header on the first page
// Set options for DOMPDF as needed // Set options for DOMPDF as needed
@ -585,12 +544,12 @@
return $pdf->stream($filename); return $pdf->stream($filename);
// return $pdf->stream();
} }
public function convertDateToMonth($termVal){ public function convertDateToMonth($termVal)
{
$months = ''; $months = '';
$getPeriode = substr($termVal, -1); // Mengambil satu karakter dari kanan $getPeriode = substr($termVal, -1); // Mengambil satu karakter dari kanan
@ -609,7 +568,8 @@
} }
public function fasilitas(Request $request){ public function fasilitas(Request $request)
{
if (is_null($this->user) || !$this->user->can('konfirmasibank.create')) { if (is_null($this->user) || !$this->user->can('konfirmasibank.create')) {
abort(403, 'Sorry !! You are Unauthorized to view any master data !'); abort(403, 'Sorry !! You are Unauthorized to view any master data !');
@ -635,7 +595,8 @@
} }
public function postFasilitas(Request $request){ public function postFasilitas(Request $request)
{
if (is_null($this->user) || !$this->user->can('konfirmasibank.create')) { if (is_null($this->user) || !$this->user->can('konfirmasibank.create')) {
abort(403, 'Sorry !! You are Unauthorized to create any konfirmasibank.create !'); abort(403, 'Sorry !! You are Unauthorized to create any konfirmasibank.create !');
@ -682,11 +643,6 @@
} catch (Exception $e) { } catch (Exception $e) {
echo json_encode(['status' => 'error', 'message' => $e->getMessage()]); echo json_encode(['status' => 'error', 'message' => $e->getMessage()]);
// return json_encode([
// 'status' => 'error',
// 'message' => $e->getMessage()
// ]);
} }
} }
@ -729,8 +685,6 @@
} }
$today = Carbon::now(); $today = Carbon::now();
// Menambahkan 1 tahun ke tanggal saat ini
// $currentYear = $today->format("YYYY-MM-DD");
// Validation Data\ // Validation Data\
$validator = Validator::make($request->all(), [ $validator = Validator::make($request->all(), [
@ -829,5 +783,4 @@
} }
} }

View File

@ -50,6 +50,7 @@
border: 1px solid black; border: 1px solid black;
border-collapse: collapse; border-collapse: collapse;
font-size: 12px; font-size: 12px;
padding: 1px;
} }
@ -60,10 +61,16 @@
bottom: 0; bottom: 0;
text-align: center; text-align: center;
} }
#footer .page:after { #footer .page:after {
content: counter(page); content: counter(page);
} }
/* .header { /* .header {
position: fixed; position: fixed;
@ -178,7 +185,6 @@
<!-- Add more rows here if needed --> <!-- Add more rows here if needed -->
</tbody> </tbody>
</table><br> </table><br>
<ul class="no-bullets"> <ul class="no-bullets">
<li>PINJAMAN YANG DIBERIKAN OLEH BANK KEPADA NASABAH</li> <li>PINJAMAN YANG DIBERIKAN OLEH BANK KEPADA NASABAH</li>
<li>POSISI : {{ $data['localDate'] }} </li> <li>POSISI : {{ $data['localDate'] }} </li>
@ -191,14 +197,14 @@
<th class="text-center space1" style="width:12%">Tgl Realisasi</th> <th class="text-center space1" style="width:12%">Tgl Realisasi</th>
<th class="text-center space1" style="width:7%">Mata Uang</th> <th class="text-center space1" style="width:7%">Mata Uang</th>
<th class="text-center space1" style="width:16%">Saldo</th> <th class="text-center space1" style="width:16%">Saldo</th>
<th class="text-center" style="width:10%">Tenor</th> <th class="text-center space1" style="width:10%">Tenor</th>
<th class="text-center space1" style="width:8%">Suku Bunga</th> <th class="text-center space1" style="width:8%">Suku Bunga</th>
<th class="text-center space1" style="width:11%">Tgl Jatuh Tempo</th> <th class="text-center space1" style="width:11%">Tgl Jatuh Tempo</th>
<th class="text-center space1" style="width:10%">Keterangan</th> <th class="text-center space1" style="width:10%">Keterangan</th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody style="page-break-inside: avoid;">
@if (count($data['DataPinjaman'])>0 OR count($data['DataRK'])>0 OR count($data['DataAnjak']) > 0 ) @if (count($data['DataPinjaman'])>0 OR count($data['DataRK'])>0 OR $data['totalOutstanding'] != '' )
@if (count($data['DataPinjaman'])>0) @if (count($data['DataPinjaman'])>0)
@php $i=1; @php $i=1;
$saldo = ''; $saldo = '';
@ -243,7 +249,7 @@
@endforeach @endforeach
@endif @endif
@if (count($data['DataAnjak']) > 0) @if ($data['totalOutstanding'] != '')
@php @php
$no = 0; $no = 0;
if (count( $data['DataPinjaman']) > 0) { if (count( $data['DataPinjaman']) > 0) {
@ -254,20 +260,17 @@
$no = 1; $no = 1;
} }
@endphp @endphp
@foreach ($data['DataAnjak'] as $ajk => $anjak)
<tr class="space1"> <tr class="space1">
<td class="text-center space1">{{ $no++ }}</td> <td class="text-center space1">{{ $no++ }}</td>
<td class="space1">{{ $anjak['PRODUCT_LOAN'] }}</td> <td class="space1">ANJAK PIUTANG</td>
<td class="text-center space1 "></td>
<td class="text-center space1"></td>
<td class="text-right space1">{{$data['totalOutstanding']}}</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> <td class="text-center space1"></td>
<td class="text-center space1">{{ $anjak['LOAN_CCY'] }}</td>
<td class="text-right space1">{{$anjak['OUTSTANDING']}}</td>
<td class="text-center space1">{{$anjak['TENOR']}} BLN</td>
<td class="text-center space1">{{$anjak['CURRENT_INTEREST_RATE']}} %</td>
<td class="text-center space1">{{$anjak['MATURITY_DATE']}}</td>
<td class="text-center space1">{{ $anjak['ACCOUNT_NUMBER'] }}</td>
</tr> </tr>
@endforeach
@endif @endif
@else @else
@ -281,7 +284,7 @@
<li>FASILITAS LAIN YANG DITERIMA OLEH NASABAH</li> <li>FASILITAS LAIN YANG DITERIMA OLEH NASABAH</li>
<li>POSISI : {{ $data['localDate'] }} </li> <li>POSISI : {{ $data['localDate'] }} </li>
</ul> </ul>
<table class="space1" style="width:100%;"> <table class="space1"style="width:100%; page-break-inside: avoid;">
<thead style="background-color: dimgrey"> <thead style="background-color: dimgrey">
<tr class="space1"> <tr class="space1">
<th class="text-center space1" style="width:5%">No</th> <th class="text-center space1" style="width:5%">No</th>
@ -295,7 +298,7 @@
<th class="text-center space1" style="width:10%">Keterangan</th> <th class="text-center space1" style="width:10%">Keterangan</th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody style="page-break-inside: avoid;">
@if (count($data['DataFasilitas']) > 0 ) @if (count($data['DataFasilitas']) > 0 )
@php @php
$no = 0; $no = 0;