feat(webstatement): tambah optimasi pemrosesan multi_account dan validasi statement
Perubahan yang dilakukan: - Memodifikasi PrintStatementController untuk mendukung request_type baru: multi_account. - Menambahkan validasi stmt_sent_type dan branch_code khusus pada request multi_account. - Menambahkan pengecekan branch_id: ID0019999 dengan penanganan error yang lebih spesifik. - Menambahkan metode processMultiAccountStatement untuk pemrosesan berdasarkan branch_code dan stmt_sent_type. Optimasi PDF: - Melakukan refaktor pada GenerateMultiAccountPdfJob agar mendukung kalkulasi tanggal dinamis (startDate dan endDate). - Mengimplementasikan Browsershot untuk opsi tambahan background dan optimasi waktu proses. - Menambahkan validasi status dan update log pada PrintStatementLog setelah PDF berhasil dibuat. - Menambahkan penanganan penggunaan memori secara granular untuk proses batch PDF dan pembersihan resource otomatis. Logging dan Validasi: - Menambahkan logging pada proses kalkulasi tanggal multi_account. - Logging tambahan dan rollback untuk error yang terjadi saat proses statement atau PDF. - Mengubah penggunaan Auth:: untuk konsistensi role checking. - Mengubah validasi stmt_sent_type dari JSON menjadi array dengan implode(). UI dan Output: - Memodifikasi blade template agar mendukung tampilan stmt_sent_type untuk kasus multi_account. - Menambahkan logika kolom dinamis berdasarkan account_number atau stmt_sent_type. Refaktor umum: - Memisahkan logika antara single dan multi account di PrintStatementController. - Perbaikan minor pada query SQL untuk entri ProcessedStatement. Tujuan perubahan: - Mendukung pemrosesan batch statement multi account secara lebih efisien dan terstruktur. - Menjamin validasi dan logging yang lebih kuat. - Meningkatkan performa pembuatan PDF dan kontrol terhadap penggunaan resource. Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
This commit is contained in:
@@ -350,6 +350,12 @@
|
||||
},
|
||||
account_number: {
|
||||
title: 'Account Number',
|
||||
render: (item, data) => {
|
||||
if(data.request_type=="multi_account"){
|
||||
return data.stmt_sent_type ?? 'N/A';
|
||||
}
|
||||
return data.account_number ?? '';
|
||||
},
|
||||
},
|
||||
period: {
|
||||
title: 'Period',
|
||||
|
||||
Reference in New Issue
Block a user