DONE: confirmation and list online form
This commit is contained in:
@@ -259,6 +259,121 @@ class GadaianController extends Controller
|
||||
return redirect()->route('customer_info');
|
||||
}
|
||||
|
||||
public function printBorangPengesahanOnline($norujukan)
|
||||
{
|
||||
$auth_user = Auth::user();
|
||||
$kodcaw = $auth_user['cawangan'];
|
||||
|
||||
$onlineResp = Http::withOptions(['verify' => config('app.api_verify')])
|
||||
->get(config('api.url') . '/api/pembiayaan-online/' . $kodcaw . '/by-norujukan/' . $norujukan);
|
||||
|
||||
if (!$onlineResp->successful()) {
|
||||
abort(404, 'Pembiayaan online tidak dijumpai.');
|
||||
}
|
||||
|
||||
$line = $onlineResp->json();
|
||||
if (!is_array($line) || empty($line['norujukan'])) {
|
||||
abort(404, 'Pembiayaan online tidak dijumpai.');
|
||||
}
|
||||
|
||||
return $this->renderBorangPengesahanOnline($line, $kodcaw);
|
||||
}
|
||||
|
||||
public function previewBorangPengesahanOnline(Request $request)
|
||||
{
|
||||
$auth_user = Auth::user();
|
||||
$kodcaw = $auth_user['cawangan'];
|
||||
|
||||
$line = [
|
||||
'norujukan' => $request->input('norujukan'),
|
||||
'nokp' => $request->input('nokp'),
|
||||
'nopelanggan' => $request->input('nopelanggan'),
|
||||
'nama_pelanggan' => $request->input('nama_pelanggan'),
|
||||
'pinjaman' => $request->input('pinjaman'),
|
||||
'kodbank' => $request->input('kodbank'),
|
||||
'nama_bank' => $request->input('nama_bank'),
|
||||
'noakaun' => $request->input('noakaun'),
|
||||
'nama_akaun' => $request->input('nama_akaun'),
|
||||
'created_by' => $auth_user['name'] ?? '',
|
||||
'created_at' => Carbon::now()->toDateTimeString(),
|
||||
];
|
||||
|
||||
if (empty($line['norujukan']) || empty($line['noakaun'])) {
|
||||
abort(422, 'Sila lengkapkan maklumat bank sebelum cetak borang.');
|
||||
}
|
||||
|
||||
return $this->renderBorangPengesahanOnline($line, $kodcaw);
|
||||
}
|
||||
|
||||
private function renderBorangPengesahanOnline(array $line, $kodcaw)
|
||||
{
|
||||
$auth_user = Auth::user();
|
||||
|
||||
$cawanganResp = Http::withOptions(['verify' => config('app.api_verify')])
|
||||
->get(config('api.url') . '/api/cawangan/detail/' . $kodcaw)
|
||||
->json();
|
||||
$cawangan_detail = (is_array($cawanganResp) && isset($cawanganResp[0]))
|
||||
? $cawanganResp[0]
|
||||
: (is_array($cawanganResp) ? $cawanganResp : []);
|
||||
|
||||
$nokpRaw = $line['nokp'] ?? '';
|
||||
$customer = [];
|
||||
if ($nokpRaw !== '') {
|
||||
$customerResp = Http::withOptions(['verify' => config('app.api_verify')])
|
||||
->get(config('api.url') . '/api/customers/' . $nokpRaw)
|
||||
->json();
|
||||
if (is_array($customerResp)) {
|
||||
$customer = $customerResp;
|
||||
}
|
||||
}
|
||||
|
||||
$cawangan = $cawangan_detail['namacaw']
|
||||
?? $cawangan_detail['details_caw']
|
||||
?? $kodcaw;
|
||||
$alamat1 = $cawangan_detail['alamat1'] ?? '';
|
||||
$alamat2 = $cawangan_detail['alamat2'] ?? '';
|
||||
$notel = $cawangan_detail['notel'] ?? '';
|
||||
|
||||
$nama = $line['nama_pelanggan'] ?? ($customer['nama'] ?? '');
|
||||
$nokp = !empty($customer['kpbaru']) ? $customer['kpbaru'] : ($customer['kplama'] ?? $nokpRaw);
|
||||
$nopelanggan = $line['nopelanggan'] ?? ($customer['nopelanggan'] ?? '');
|
||||
$telefon = $customer['telefon'] ?? '';
|
||||
$teller = $line['created_by'] ?? ($auth_user['name'] ?? '');
|
||||
$bank = $line['nama_bank'] ?? ($line['kodbank'] ?? '');
|
||||
$noakaun = $line['noakaun'] ?? '';
|
||||
$nama_akaun = $line['nama_akaun'] ?? $nama;
|
||||
$pinjaman = number_format((float) ($line['pinjaman'] ?? 0), 2);
|
||||
$norujukan = $line['norujukan'] ?? '';
|
||||
|
||||
$tarikhSumber = $line['created_at'] ?? null;
|
||||
try {
|
||||
$tarikh = $tarikhSumber
|
||||
? Carbon::parse($tarikhSumber)->format('d/m/Y')
|
||||
: Carbon::now()->format('d/m/Y');
|
||||
} catch (\Exception $e) {
|
||||
$tarikh = Carbon::now()->format('d/m/Y');
|
||||
}
|
||||
|
||||
return view('print.borang_pengesahan_online', compact(
|
||||
'cawangan',
|
||||
'kodcaw',
|
||||
'alamat1',
|
||||
'alamat2',
|
||||
'notel',
|
||||
'norujukan',
|
||||
'tarikh',
|
||||
'teller',
|
||||
'nama',
|
||||
'nokp',
|
||||
'nopelanggan',
|
||||
'telefon',
|
||||
'pinjaman',
|
||||
'bank',
|
||||
'noakaun',
|
||||
'nama_akaun'
|
||||
));
|
||||
}
|
||||
|
||||
public function editstore(Request $request)
|
||||
{
|
||||
$auth_user = Auth::user();
|
||||
|
||||
Reference in New Issue
Block a user