Merge pull request 'fix: papar cara terima pada senarai dan cetakan SAG hanya apabila pembiayaan online aktif' (#27) from fix/sag-cara-terima-feature-flag into main

Reviewed-on: #27
This commit was merged in pull request #27.
This commit is contained in:
2026-09-28 09:44:25 +08:00
4 changed files with 20 additions and 4 deletions
+5 -1
View File
@@ -680,7 +680,11 @@ class GadaianController extends Controller
$kuantiti = $gadai_detail['pinjaman'] / $komoditi['nilai']; $kuantiti = $gadai_detail['pinjaman'] / $komoditi['nilai'];
if ($gadai_detail['tagbaru'] == 1) { if ($gadai_detail['tagbaru'] == 1) {
return view('print.sag_ujrah_3', compact('komoditi', 'product', 'kuantiti', 'gadai_detail', 'customer_detail', 'marhun_detail', 'cawangan_detail', 'api_url', 'pembayaran_segera', 'auth_username', 'mutu', 'kadar_ujrah', 'kakitangan')); $cawangan_info = Http::withOptions(['verify' => config('app.api_verify')])
->get($api_url . '/api/cawangan/' . $kodcaw)->json();
$pembiayaanOnlineEnabled = !empty(($cawangan_info['features'] ?? [])['pembiayaan_online']);
return view('print.sag_ujrah_3', compact('komoditi', 'product', 'kuantiti', 'gadai_detail', 'customer_detail', 'marhun_detail', 'cawangan_detail', 'api_url', 'pembayaran_segera', 'auth_username', 'mutu', 'kadar_ujrah', 'kakitangan'))->with('pembiayaanOnlineEnabled', $pembiayaanOnlineEnabled);
} else { } else {
return view('print.sag', compact('gadai_detail', 'customer_detail', 'marhun_detail', 'cawangan_detail', 'api_url', 'pembayaran_segera', 'auth_username', 'mutu', 'kakitangan')); return view('print.sag', compact('gadai_detail', 'customer_detail', 'marhun_detail', 'cawangan_detail', 'api_url', 'pembayaran_segera', 'auth_username', 'mutu', 'kakitangan'));
} }
@@ -533,6 +533,10 @@ class PembiayaanOnlineController extends Controller
$kuantiti = $nilai > 0 ? ((float) ($gadai_detail['pinjaman'] ?? 0) / $nilai) : 0; $kuantiti = $nilai > 0 ? ((float) ($gadai_detail['pinjaman'] ?? 0) / $nilai) : 0;
if (($gadai_detail['tagbaru'] ?? 0) == 1) { if (($gadai_detail['tagbaru'] ?? 0) == 1) {
$cawangan_info = $this->api()
->get($api_url . '/api/cawangan/' . $kodcaw)->json();
$pembiayaanOnlineEnabled = !empty(($cawangan_info['features'] ?? [])['pembiayaan_online']);
return view('print.sag_ujrah_3', compact( return view('print.sag_ujrah_3', compact(
'komoditi', 'komoditi',
'product', 'product',
@@ -547,7 +551,7 @@ class PembiayaanOnlineController extends Controller
'mutu', 'mutu',
'kadar_ujrah', 'kadar_ujrah',
'kakitangan' 'kakitangan'
)); ))->with('pembiayaanOnlineEnabled', $pembiayaanOnlineEnabled);
} }
return view('print.sag', compact( return view('print.sag', compact(
+8 -2
View File
@@ -801,9 +801,12 @@
} }
}); });
var pembiayaanOnlineEnabled = @json(!empty(($cawangan_info['features'] ?? [])['pembiayaan_online']));
var tablegadai = initErahnDatatable('#myTable', { var tablegadai = initErahnDatatable('#myTable', {
order: [[1, 'desc']], order: [[1, 'desc']],
columnDefs: [ columnDefs: [
{ targets: 2, visible: pembiayaanOnlineEnabled, className: pembiayaanOnlineEnabled ? '' : 'no-export' },
{ targets: 0, orderable: false, width: '40px' }, { targets: 0, orderable: false, width: '40px' },
{ targets: -1, orderable: false, searchable: false, width: '70px' } { targets: -1, orderable: false, searchable: false, width: '70px' }
] ]
@@ -811,6 +814,7 @@
var xtawarruq = initErahnDatatable('#xtawarruq', { var xtawarruq = initErahnDatatable('#xtawarruq', {
columnDefs: [ columnDefs: [
{ targets: 2, visible: pembiayaanOnlineEnabled, className: pembiayaanOnlineEnabled ? '' : 'no-export' },
{ targets: 0, orderable: false, width: '40px' } { targets: 0, orderable: false, width: '40px' }
] ]
}); });
@@ -2067,7 +2071,8 @@
harini.setHours(0, 0, 0, 0); harini.setHours(0, 0, 0, 0);
if ($("input[name='options']:checked").val() == 'belum_tebus') { if ($("input[name='options']:checked").val() == 'belum_tebus') {
let test1 = $('input[name="belum"]:checked').closest('tr').children('td:eq(3)').text(); let selectedRow = $('input[name="belum"]:checked').closest('tr');
let test1 = selectedRow.length ? selectedRow.closest('table').DataTable().row(selectedRow).data()[3] : '';
let tarikhgadai2 = new Date(test1); let tarikhgadai2 = new Date(test1);
tarikhgadai2.setHours(0, 0, 0, 0); tarikhgadai2.setHours(0, 0, 0, 0);
if (+harini !== +tarikhgadai2) { if (+harini !== +tarikhgadai2) {
@@ -2484,7 +2489,8 @@
} }
if ($("input[name='options']:checked").val() == 'belum_tebus') { if ($("input[name='options']:checked").val() == 'belum_tebus') {
let test1 = $('input[name="belum"]:checked').closest('tr').children('td:eq(3)').text(); let selectedRow = $('input[name="belum"]:checked').closest('tr');
let test1 = selectedRow.length ? selectedRow.closest('table').DataTable().row(selectedRow).data()[3] : '';
let tarikhgadai2 = new Date(test1); let tarikhgadai2 = new Date(test1);
tarikhgadai2.setHours(0, 0, 0, 0); tarikhgadai2.setHours(0, 0, 0, 0);
@@ -2112,6 +2112,7 @@
</div> </div>
<div class="main-page" style="font-family: Arial, Helvetica, sans-serif;"> <div class="main-page" style="font-family: Arial, Helvetica, sans-serif;">
<div class="sub-page" style="font-size: 11px;"> <div class="sub-page" style="font-size: 11px;">
@if ($pembiayaanOnlineEnabled ?? false)
@php @php
$caraTerimaBayaran = strtoupper(trim((string) ($gadai_detail['cara_terima'] ?? ''))); $caraTerimaBayaran = strtoupper(trim((string) ($gadai_detail['cara_terima'] ?? '')));
@endphp @endphp
@@ -2128,6 +2129,7 @@
</span> </span>
</div> </div>
</div> </div>
@endif
{{-- HEADER SECTION --}} {{-- HEADER SECTION --}}
<table style="width: 100%; margin-top: 0;"> <table style="width: 100%; margin-top: 0;">
<tr style="vertical-align: top;"> <tr style="vertical-align: top;">