format("Y"); $pastYear = $today->subYear(3)->format('Y'); $uppercaseKodeCabang = Str::upper($kodecabang); $data = []; // dd($arrAccount); if($arrAccount == null){ $data = DB::connection("db2")->table("STG_DB.VW_ACCOUNT") ->select( 'CUSTOMER_NO', 'ACCOUNT_NUMBER','SHORT_NAME','SHORT_TITLE','CURRENCY','COMPANY_NAME','OPENING_DATE',DB::raw('MAX(WORKING_BALANCE) AS WORKING_BALANCE'),DB::raw('MAX(CATEGORY) AS CATEGORY')) ->where('CUSTOMER_NO',$cif) ->where('COMPANY_NAME', 'like', "%" .$uppercaseKodeCabang."%") ->whereBetween('OPENING_DATE', [$startDate, $endDate]) // ->whereIn(DB::raw("LEFT(CATEGORY, 3)"),['100','600','660']) ->groupBy('CUSTOMER_NO','ACCOUNT_NUMBER','SHORT_NAME','SHORT_TITLE','CURRENCY','COMPANY_NAME','OPENING_DATE'); }else{ $data = DB::connection("db2")->table("STG_DB.VW_ACCOUNT") // ->select( 'CUSTOMER_NO', 'ACCOUNT_NUMBER','SHORT_NAME','SHORT_TITLE','CURRENCY','COMPANY_NAME','OPENING_DATE',DB::raw('MAX(WORKING_BALANCE) AS WORKING_BALANCE')) // ->where('CUSTOMER_NO',$cif) // ->where('COMPANY_NAME', 'like', "%" .$uppercaseKodeCabang."%") // ->whereIn('ACCOUNT_NUMBER', $arrAccount) // ->whereBetween('OPENING_DATE', [$startDate, $endDate]) // ->groupBy('CUSTOMER_NO','ACCOUNT_NUMBER','SHORT_NAME','SHORT_TITLE','CURRENCY','COMPANY_NAME','OPENING_DATE'); ->select('*') ->where('CUSTOMER_NO',$cif) ->where('COMPANY_NAME', 'like', "%" .$uppercaseKodeCabang."%") ->whereIn('ACCOUNT_NUMBER', $arrAccount) ->whereBetween('OPENING_DATE', [$startDate, $endDate]); } return $data; } public function getAccount($cif ,$arrAccount, $kodecabang, $startDate, $endDate){ $today = Carbon::now(); $currentYear = $today->format("Y"); $pastYear = $today->subYear(3)->format('Y'); $uppercaseKodeCabang = Str::upper($kodecabang); $data = DB::connection("db2")->table("STG_DB.VW_ACCOUNT") ->select( 'CUSTOMER_NO', 'ACCOUNT_NUMBER','SHORT_NAME','SHORT_TITLE','CURRENCY','COMPANY_NAME','OPENING_DATE',DB::raw('MAX(WORKING_BALANCE) AS WORKING_BALANCE'),DB::raw('MAX(CATEGORY) AS CATEGORY')) ->where('CUSTOMER_NO',$cif) ->where('COMPANY_NAME', 'like', "%" .$uppercaseKodeCabang."%") ->whereBetween('OPENING_DATE', [$startDate, $endDate]) ->whereIn('ACCOUNT_NUMBER', $arrAccount) ->whereIn(DB::raw("LEFT(CATEGORY, 3)"),['100','600','660','101']) ->groupBy('CUSTOMER_NO','ACCOUNT_NUMBER','SHORT_NAME','SHORT_TITLE','CURRENCY','COMPANY_NAME','OPENING_DATE'); // $data = DB::connection("db2")->table("STG_DB.VW_ACCOUNT") // ->select( 'CUSTOMER_NO', 'ACCOUNT_NUMBER','SHORT_NAME','SHORT_TITLE','CURRENCY','COMPANY_NAME','OPENING_DATE',DB::raw('MAX(WORKING_BALANCE) AS WORKING_BALANCE'),DB::raw('MAX(CATEGORY) AS CATEGORY')) // ->where('CUSTOMER_NO',$cif) // // ->whereIn('ACCOUNT_NUMBER', $arrAccount) // ->where('COMPANY_NAME', 'like', "%" .$uppercaseKodeCabang."%") // ->whereBetween('OPENING_DATE', [$startDate, $endDate]) // ->whereIn(DB::raw("LEFT(CATEGORY, 3)"),['100','600','660']) // ->groupBy('CUSTOMER_NO','ACCOUNT_NUMBER','SHORT_NAME','SHORT_TITLE','CURRENCY','COMPANY_NAME','OPENING_DATE'); return $data; } public function getAAaccount($cus_no,$acc_no){ $data = []; $data = DB::connection("db2")->table("STG_DB.VW_AA_ARR_NEW")->select('ARRANGEMENT_ID','PRODUCT_LINE','PRODUCT','CUSTOMER','LINKED_APPL_ID','MATURITY_DATE') ->where('CUSTOMER', $cus_no) ->where('LINKED_APPL_ID', $acc_no) ->get(); return $data; } // public function getPinjaman($cus_no){ // $data = []; // $data = DB::connection("db2")->table("STG_DB.VW_AA_ARR") // ->select('ARRANGEMENT_ID','LINKED_APPL_ID','CUSTOMER','PRODUCT','PRODUCT_LINE','CURRENCY',DB::raw('MAX(WORKING_BALANCE) AS WORKING_BALANCE'),'BATCH_DATE', DB::raw('MAX(OPENING_DATE) AS OPENING_DATE'),'MATURITY_DATE',DB::raw('MAX(CATEGORY) AS CATEGORY'),'MATURITY_DATE','SHORT_NAME','STREET','ADDRESS','COMPANY_NAME') // ->where('CUSTOMER',$cus_no) // ->groupBy('ARRANGEMENT_ID','LINKED_APPL_ID','CUSTOMER','PRODUCT','PRODUCT_LINE','CURRENCY','BATCH_DATE','MATURITY_DATE','SHORT_NAME','STREET','ADDRESS','COMPANY_NAME')->get(); // return $data; // } public function getPinjaman($cus_no,$arrAccount){ $data = []; $data = DB::connection("db2")->table("STG_DB.VW_AA_ARR_NEW") ->select('*') ->where('CUSTOMER',$cus_no) //->where(DB::raw("LEFT(CATEGORY, 1)") , 3) ->whereIn('ACCOUNT_NUMBER', $arrAccount); return $data; } public function getFasilitas($cus_no){ $data = []; $data =DB::connection("db2")->table("STG_DB.LIMIT")->select('*')->where('@ID', 'like', "%" .$cus_no. "%")->get(); return $data; } public function getCustomer($cus_no){ $data = []; $data =DB::connection("db2")->table("STG_DB.CUSTOMER")->select('CUSTOMER_NO','STREET','RESIDENCE','ADDRESS','SHORT_NAME')->where('CUSTOMER_NO', $cus_no); return $data; } public function getTerm($arr_id){ $data = []; $data =DB::connection("db2")->table("STG_DB.AA_ARR_TERM_AMOUNT")->select(DB::raw('MAX(ID) AS ID'),DB::raw('MAX(TERM) AS TERM'))->where('ID', 'like', "%" .$arr_id."%")->orderBy('ID','DESC')->get(); return $data; } public function getInterest($arr_id){ $data = []; $data =DB::connection("db2")->table("STG_DB.AA_ARR_INTEREST")->select(DB::raw('MAX(ID) AS ID'),DB::raw('MAX(FIXED_RATE) AS FIXED_RATE'))->where('ID', 'like', "%".$arr_id."%")->orderBy('ID','DESC')->get(); return $data; } public function getCategory($category_id){ $data = []; $data =DB::connection("db2")->table("STG_DB.CATEGORY")->select('ID','SHORT_NAME')->where('ID',$category_id)->get(); return $data; } public function getAA($aa_id){ $data = []; $data =DB::connection("db2")->table("STG_DB.AA_ARRANGEMENENT")->select('ID')->where('ID', 'like',"%".$aa_id."%")->orderBy('ID','DESC')->get(); return $data; } public function getLimit($cus_id,$periode){ $data = []; $data =DB::connection("db2")->table("STG_DB.LIMIT AS LM") ->join('STG_DB.LIMIT_REFERENCE AS LR', 'LM.LIMIT_PRODUCT', '=', 'LR.ID') ->join('STG_DB.COMPANY AS CP', 'LM.CO_CODE', '=', 'CP.ID') ->join('STG_DB.CATEGORY AS CT', 'LM.LIMIT_PRODUCT', '=', 'CT.ID') ->select('LM.LIMIT_CURRENCY','LM.APPROVAL_DATE','LM.EXPIRY_DATE','LM.AVAIL_AMT','LM.BATCH_DATE','LM.EXPIRY_DATE','LR.SHORT_NAME','LR.LIMIT_PERCENTAGE','CP.COMPANY_NAME','CT.SHORT_NAME AS ACCOUNT_TYPE') ->where('LM.@ID', 'like',"%".$cus_id."%") ->where('LM.BATCH_DATE', 'like',"%".$periode."%") ->orderBy('LM.@ID','DESC')->get(); return $data; } public function getLimitProduct($limit_product_id){ $data = []; $data =DB::connection("db2")->table("STG_DB.LIMIT_REFERENCE")->select('ID','SHORT_NAME','LIMIT_PERCENTAGE')->where('ID',$limit_product_id)->first(); return $data; } }