Menambahkan fitur manajemen referensi link lengkap dengan CRUD, import/export Excel, serta melakukan perbaikan pada modul Bank Data untuk menampilkan semua data.
## Perubahan Detail
### 🔗 Fitur Referensi Link (Baru)
**Model & Database:**
- Membuat model `ReferensiLink` dengan relasi ke user (created_by, updated_by)
- Membuat migration `create_referensi_link_table` dengan struktur lengkap
- Menambahkan scopes untuk filtering dan searching
**Controller & Request:**
- Membuat `ReferensiLinkController` dengan fitur lengkap (CRUD, datatable, export/import)
- Membuat `ReferensiLinkRequest` dengan validasi comprehensive
- Menambahkan fitur toggle status aktif/inaktif
**Export/Import:**
- Membuat `ReferensiLinkExport` untuk export ke Excel dengan styling
- Membuat `ReferensiLinkImport` untuk import dari Excel dengan validasi
- Menambahkan template download untuk import
**View & Navigation:**
- Menambahkan menu "Referensi Link" di navigasi sistem
- Membuat struktur role access untuk administrator dan admin
### 📊 Perbaikan Bank Data
**Controller:**
- Menambahkan fitur "show_all" untuk menampilkan semua data tanpa pagination
- Memperbaiki Log facade import dari `Log` menjadi `Illuminate\Support\Facades\Log`
- Menambahkan loading overlay untuk UX yang lebih baik
**View:**
- Menambahkan checkbox "Tampilkan Semua Data" di filter
- Memperbaiki styling dan layout tabel
- Menambahkan loading spinner saat filter diterapkan
### 🛠️ Helper & Utilitas
**PdfHelper (Baru):**
- Membuat helper untuk format teks PDF dengan handling karakter spesial
- Menambahkan fungsi untuk konversi simbol matematika ke teks
- Memastikan encoding UTF-8 yang proper
**ImageController (Baru):**
- Membuat controller untuk resize gambar dengan parameter width dan quality
- Menggunakan ImageResizeService untuk processing gambar
### 🔧 Perbaikan Lainnya
**View Components:**
- Memperbaiki syntax HTML dan Blade template
- Menambahkan role checking yang lebih proper
- Memperbaiki format tampilan nilai menggunakan formatRupiah()
### 📁 File Baru
- `Helpers/PdfHelper.php` - Helper untuk format PDF
- `Http/Controllers/ImageController.php` - Controller untuk image resize
- `Http/Controllers/ReferensiLinkController.php` - Controller referensi link
- `Http/Requests/ReferensiLinkRequest.php` - Validasi referensi link
- `Exports/ReferensiLinkExport.php` - Export Excel
- `Imports/ReferensiLinkImport.php` - Import Excel
- `Models/ReferensiLink.php` - Model referensi link
- Database migration untuk tabel referensi_link
### 🔄 File Diperbarui
- `module.json` - Menambahkan menu navigasi
- `BankDataController.php` - Fitur show_all dan perbaikan Log
- `resources/views/bank-data/index.blade.php` - UI improvements
- Beberapa view components untuk perbaikan syntax dan role checking
## Alasan Perubahan
1. **Fitur Referensi Link**: Menyediakan manajemen link referensi yang terstruktur untuk kebutuhan dokumentasi dan regulasi
2. **Import/Export**: Memudahkan pengelolaan data referensi dalam jumlah besar via Excel
3. **Show All Data**: Memenuhi kebutuhan menampilkan semua data bank data di peta tanpa pagination
4. **PDF Helper**: Menangani masalah karakter spesial dalam generate PDF
5. **Image Controller**: Menyediakan endpoint untuk resize gambar secara dinamis
- Menambahkan kolom biaya ke seluruh alur Nilai Plafond (model, request, controller, views, export, dan migrasi)
- Update model NilaiPlafond agar field biaya bisa di-mass assign ($fillable)
- Tambah validasi baru 'biaya' (nullable|numeric|min:0) di NilaiPlafondRequest
- Terapkan transaksi DB (beginTransaction, commit, rollback) pada store/update/destroy di controller
- Tambahkan kolom biaya ke view create, edit, dan datatable index dengan format Rupiah dan tooltip nilai mentah
- Tambah header & mapping kolom biaya di NilaiPlafondExport agar muncul di hasil export Excel
- Tambah migrasi kolom biaya bertipe decimal(15,2) nullable dengan rollback support
- Tambahkan logging detail (Log::info & Log::error) di setiap proses utama controller
- Pastikan pencarian kolom biaya pada datatables menggunakan CAST ke TEXT untuk kompatibilitas PostgreSQL
- Tambah class `SlikExport` dengan implementasi Laravel Excel (WithMapping, WithHeadings, ColumnFormats, FromCollection)
- Method `collection()`, `map()`, `headings()`, `columnFormats()` untuk data mapping, header, dan formatting
- Format kolom: text untuk ID/kode, number untuk nilai agunan, date (d/m/Y) untuk tanggal
- Tambah method `export()` di `SlikController` dengan logging, error handling, dan filename timestamp
- Optimasi performa: chunking data, batch insert, memory monitoring (current & peak usage)
- Logging lengkap: start, jumlah records, success (filename & peak memory), error trace
- Integrasi route: GET `/slik/export` → `SlikController@export` (name: slik.export)
- Dependensi: gunakan `maatwebsite/excel`, pastikan package & write permission tersedia
- Dampak: export Excel lebih cepat, format user-friendly, audit trail lebih lengkap
- Tambah kolom "Kolektibilitas" (min-w 150px) & "Keterangan" (min-w 200px) di tabel index laporan admin kredit
- Dukungan sorting & filtering pada kedua kolom baru dengan integrasi DataTable
- Implementasi truncation keterangan >50 karakter dengan suffix "..." dan fallback "-" jika kosong
- Responsive design di tabel index agar tetap readable di berbagai layar
- Mapping data export Excel ditambahkan field kolektibilitas & keterangan (posisi kolom N & O)
- Update heading Excel: tambah header "Kolektibilitas" & "Keterangan", geser "Created At" ke kolom P
- Tambah format Excel: FORMAT_TEXT untuk kolektibilitas & keterangan, FORMAT_DATE_DATETIME untuk created_at
- Dampak: informasi laporan admin kredit lebih lengkap, mendukung analisis kolektibilitas & dokumentasi tambahan
- Menambahkan tombol "SLIK" pada halaman index dan show untuk memindahkan data ke laporan SLIK
- Mengimplementasikan fungsi moveToLaporan() dengan konfirmasi SweetAlert dan proses AJAX
- Melakukan migrasi framework CSS dari Bootstrap ke TailwindCSS pada laporan-slik/show.blade.php
- Memperbaiki struktur layout dengan grid system TailwindCSS yang responsif
- Mengupdate breadcrumbs dengan styling dan route names yang benar
- Menghapus fitur truncate data SLIK dari interface untuk keamanan data
- Memperbaiki route names dari admin-kredit.laporan-slik menjadi laporan-slik
- Mengoptimasi tombol Export dengan penghapusan parameter ID yang tidak diperlukan
- Menambahkan konfigurasi import SLIK di .env.example untuk optimasi performa
- Memperbaiki template download link dengan class styling yang konsisten
- Mengimplementasikan error handling yang komprehensif dengan user feedback
- Menambahkan auto-reload DataTable setelah operasi pemindahan data berhasil
- Melakukan redesign card layout dengan pembagian "Data Debitur" dan "Data Fasilitas"
- Menambahkan feedback visual dengan disable tombol setelah berhasil dipindahkan
- Mengoptimasi konfigurasi DataTable dengan reload functionality
- Menambahkan breadcrumb routes untuk laporan SLIK dengan struktur hierarki
- Mengimplementasikan progress tracking untuk monitoring proses import
- Memperbaiki JavaScript dengan pemisahan fungsi dan penambahan variabel global
- Menstandarisasi framework CSS untuk konsistensi visual
- Mengimplementasikan responsive design yang lebih baik
refactor: update laporan user service and views for simplified report
style: improve daftar pustaka views and remove unused code
fix: correct date field names in laporan sla penilai service
- Menambahkan filter untuk memilih penilai pada halaman laporan hasil penilaian.
- Memperbarui logika kueri untuk menyertakan filter penilai saat mengambil data.
- Memperbaiki tampilan dan struktur HTML untuk mendukung filter baru.
- Menambahkan fungsionalitas untuk menerapkan filter dan mengupdate tabel data secara dinamis.
- Menambahkan filter untuk memilih penilai pada halaman laporan penilaian jaminan.
- Memperbarui query untuk menyertakan filter penilai saat mengambil data.
- Memperbaiki tampilan dengan menambahkan elemen input untuk filter penilai.
- Menambahkan kelas LaporanHasilPenilaianJaminanInternalExternalExport untuk mengelola ekspor data.
- Mengimplementasikan metode collection untuk mengambil data permohonan dengan filter.
- Menambahkan metode map untuk memetakan data permohonan ke format yang sesuai untuk ekspor.
- Menyediakan judul dan heading untuk laporan yang diekspor.
- Mengatur format dan gaya untuk laporan yang dihasilkan.
- Menambahkan judul dan informasi cabang pada laporan.
- Menyertakan periode dan tanggal ekspor di laporan.
- Menambahkan informasi pengguna yang melakukan ekspor.
- Memperbaiki format dan gaya header pada laporan.
- Mengatur auto-size kolom dan menambahkan border pada sel data.
- Mengubah query pada metode collection untuk menggunakan Permohonan::query() alih-alih Permohonan::with().
- Mengaktifkan tampilan breadcrumbs pada halaman laporan permohonan.
- Membuat kelas LaporanPenilaianJaminanExport untuk mengekspor data penilaian jaminan.
- Menambahkan filter berdasarkan tanggal, cabang, dan pencarian untuk query.
- Mengimplementasikan metode collection, map, dan headings untuk format ekspor.
- Menambahkan kelas LaporanPembatalanExport untuk mengelola ekspor data laporan pembatalan.
- Mengimplementasikan filter pencarian berdasarkan nomor registrasi, nama pemohon, dan nama cabang.
- Menyediakan opsi untuk memfilter berdasarkan rentang tanggal, status, dan cabang.
- Menyusun data yang diekspor dengan format yang sesuai untuk laporan.
Menambahkan fitur filter berdasarkan cabang pada laporan permohonan:
- Mengimplementasikan filter branch pada controller LaporanPermohonanController
- Mengimplementasikan filter branch pada export LaporanPermohonanExport
- Menambahkan dropdown filter cabang pada halaman index
- Mengimplementasikan filter cabang pada JavaScript untuk datatable
- Menambahkan parameter branch_id pada URL ekspor data
- Memastikan filter cabang berfungsi baik pada tampilan datatable maupun pada ekspor data
Menambahkan fitur filter berdasarkan status pada laporan permohonan:
- Menambahkan filter status yang diambil dari model StatusPermohonan
- Mengimplementasikan filter status pada controller LaporanPermohonanController
- Mengimplementasikan filter status pada export LaporanPermohonanExport
- Memastikan filter status berfungsi baik pada tampilan datatable maupun pada ekspor data
Menambahkan fitur laporan permohonan dengan kemampuan ekspor data ke Excel dan filtering yang komprehensif.
- Membuat view laporan_permohonan/index.blade.php untuk menampilkan daftar permohonan dalam format datatable
- Mengimplementasikan LaporanPermohonanController dengan method index, dataForDatatables, dan export
- Menambahkan fitur filter berdasarkan tanggal (start_date dan end_date) untuk memudahkan pencarian data berdasarkan rentang waktu
- Mengimplementasikan fitur pencarian global yang dapat mencari di berbagai kolom termasuk nomor_registrasi, tanggal, pemohon, cabang, dll
- Membuat LaporanPermohonanExport class yang mengimplementasikan FromCollection, WithHeadings, dan WithMapping
- Menyesuaikan export data agar konsisten dengan filter yang diterapkan pada datatable
- Menerapkan role-based filtering sehingga hanya administrator yang dapat melihat semua data
- Mengoptimalkan query dengan eager loading untuk meningkatkan performa
- Menambahkan pagination dan sorting untuk meningkatkan user experience
- Menyesuaikan tampilan status dengan badge yang berbeda warna sesuai dengan statusnya
- Menambahkan kelas LaporanAdminKreditExport untuk mengelola ekspor data ke Excel.
- Menambahkan metode export pada LaporanAdminKreditController untuk mengunduh laporan.
- Memperbarui tampilan untuk menambahkan tautan ekspor ke Excel.
- Menghapus kolom aksi yang tidak diperlukan dari tabel.
- Menambahkan model JenisLampiran dengan relasi ke LampiranDokumen.
- Membuat migrasi untuk tabel jenis_lampiran.
- Menambahkan rute dan kontroler untuk operasi CRUD jenis lampiran.
- Menambahkan permintaan validasi untuk jenis lampiran.
- Menambahkan tampilan untuk membuat dan mengedit jenis lampiran.
- Menambahkan breadcrumb untuk navigasi jenis lampiran.
- Menambahkan fitur ekspor data jenis lampiran ke Excel.
- Menambahkan model CustomField dengan atribut mass assignable.
- Membuat request validation untuk custom field.
- Menambahkan route dan breadcrumb untuk custom field.
- Membuat migration untuk tabel custom_fields.
- Menambahkan export functionality untuk custom field.
- Membuat view untuk menambah dan mengedit custom field.