Menambahkan field total_pembukuan ke dalam sistem NOC untuk mendukung pencatatan pembukuan yang lebih akurat.
Perubahan yang dilakukan:
- Menambahkan migration untuk field total_pembukuan di tabel noc dengan tipe decimal(10,2)
- Menambahkan total_pembukuan ke dalam fillable array di model Noc
- Mengintegrasikan field total_pembukuan ke dalam NocController untuk proses store dan update
- Menambahkan input field "Jumlah Pembukuan" di form NOC dengan validasi error handling
- Mengubah label "Nominal Bayar" menjadi "Jumlah Yang Harus Disetor" untuk kejelasan
- Mengubah label "Nominal Diterima" menjadi "Jumlah Yang Disetor" untuk konsistensi
- Mengubah title menu dari "Pembayaran" menjadi "Pembukuan" di module.json
- Menambahkan readonly attribute pada field total_pembukuan ketika sudah ada memo
- Mengimplementasikan old() helper untuk mempertahankan nilai input saat validation error
- Menambahkan placeholder text "Masukkan total pembukuan" untuk user guidance
Perubahan yang dilakukan:
**Controller MemoController:**
- Menambahkan MemoController untuk mengelola memo penyelesaian permohonan.
- Method index() untuk menampilkan daftar permohonan yang bisa dipilih.
- Method create() untuk form pembuatan memo dengan pemilihan data bulk.
- Method store() untuk menyimpan memo dan mengupdate status permohonan terkait.
- Method show() untuk menampilkan detail memo yang telah dibuat.
- Method dataForDatatables() untuk API datatables dengan filter, search, dan pagination.
- Implementasi DB transaction untuk menjaga integritas data.
- Logging dan error handling komprehensif di setiap method.
**View Template:**
- index.blade.php: Tabel data permohonan dengan fitur checkbox selection (bulk).
- create.blade.php: Form pembuatan memo dari data yang dipilih.
- show.blade.php: Halaman detail memo penyelesaian.
- Menggunakan Bootstrap untuk styling dan interaksi dinamis dengan JavaScript.
- Validasi client-side untuk memastikan data sesuai sebelum dikirim.
**Routing dan Navigasi:**
- Menambahkan route resource untuk operasi CRUD Memo.
- Menambahkan route khusus untuk datatables API dan bulk create.
- Integrasi menu "Memo Penyelesaian" di navigasi utama aplikasi.
- Role-based access control untuk keamanan akses fitur.
**Integrasi Data:**
- Menggunakan model Permohonan sebagai sumber data utama dengan eager loading.
- Relasi dengan tabel user, debitur, branch, dan tujuan penilaian.
- Menambahkan status management untuk mempermudah tracking progress permohonan.
**Keamanan dan Validasi:**
- Validasi input baik di sisi controller maupun client-side.
- CSRF protection dan XSS prevention untuk menjaga keamanan aplikasi.
- Permission checking sesuai level user.
**Performance dan UX:**
- Pagination dan query optimization untuk performa lebih baik.
- Caching strategi untuk data yang sering diakses.
- Interface yang intuitif, dengan loading state dan feedback message.
- Responsive design untuk desktop dan mobile.
- Shortcut keyboard untuk efisiensi power user.
**Teknis dan Testing:**
- Struktur kode mengikuti Laravel best practice dan design pattern.
- Siap untuk unit test dan integration test.
- Logging lengkap untuk monitoring dan debugging.
- Error scenario handling dan fallback yang robust.
Tujuan perubahan:
- Menyediakan fitur pengelolaan memo penyelesaian permohonan secara bulk dengan user experience yang optimal dan performa efisien.
- Menambahkan metode baru pada `NocController` untuk mendukung pengelolaan NOC pembayaran dan penyelesaian.
- `pembayaran()` untuk menampilkan daftar NOC Pembayaran.
- `penyelesaian()` untuk menampilkan daftar NOC Penyelesaian.
- Menambahkan fitur baru datatables untuk pembayaran dan penyelesaian:
- `dataForDatatablesPembayaran()` untuk filter pembayaran tanpa memo penyelesaian.
- `dataForDatatablesPenyelesaian()` untuk filter penyelesaian dengan memo penyelesaian.
- Memperbarui routing untuk mendukung fitur baru:
- `noc/pembayaran` untuk daftar pembayaran.
- `noc/penyelesaian` untuk daftar penyelesaian.
- Tambah endpoint datatables baru: `/noc/datatables/pembayaran` dan `/noc/datatables/penyelesaian`.
- Menambahkan file blade baru untuk menampilkan daftar NOC pembayaran dan penyelesaian:
- `pembayaran.blade.php`.
- `penyelesaian.blade.php`.
- Menambahkan breadcrumbs untuk fitur pembayaran dan penyelesaian:
- `noc.pembayaran` dan `noc.penyelesaian`.
- Update `module.json` untuk mendukung UI navigasi baru pada NOC:
- Tambahkan submenu "Pembayaran" dan "Penyelesaian".
- Ubah ikon menu NOC dari `ki-two-credit-cart` menjadi `ki-briefcase`.
- Menambahkan validasi, filter, dan sorting baru untuk datatables pembayaran dan penyelesaian.
- Mengoptimalkan tabel datatables sehingga mendukung input pencarian, sorting, dan download file terkait bukti pembayaran atau memo penyelesaian.
Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
- Menambahkan rute dan breadcrumb untuk halaman laporan hasil penilaian jaminan internal dan eksternal.
- Membuat tampilan baru dengan tabel untuk menampilkan data laporan.
- Menyediakan fungsionalitas pencarian dan filter berdasarkan tanggal dan cabang.
- Menambahkan opsi untuk mengekspor laporan ke Excel.
- Menambahkan entri menu baru untuk "Laporan Penilaian Jaminan".
- Menetapkan path dan ikon untuk menu baru.
- Mengatur peran yang diperlukan untuk mengakses laporan.
- Menambahkan entri menu untuk "Laporan Pembatalan" di module.json.
- Menambahkan rute untuk laporan pembatalan di web.php.
- Menghubungkan rute dengan LaporanPembatalanController untuk mengelola data laporan.
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 entri baru untuk pengelolaan data bank.
- Mengatur izin akses hanya untuk peran administrator.
- Memperbarui struktur module.json untuk mencakup data bank.
- Tambahkan atribut otorisasi pada model pembatalan.
- Perbarui tampilan untuk menampilkan status pembatalan yang benar.
- Perbaiki logika validasi pada form otorisasi.
- Ubah path pada module.json untuk konsistensi.
- Menambahkan model LaporanAdminKredit.
- Menambahkan controller LaporanAdminKreditController dengan metode untuk menampilkan dan mengelola data.
- Menambahkan rute untuk laporan admin kredit.
- Menambahkan breadcrumb untuk navigasi laporan admin kredit.
- Menambahkan migrasi untuk tabel laporan_admin_kredit.
- Menambahkan relasi di model Debiture untuk laporan admin kredit.
- 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 entri untuk Laporan External di module.json.
- Menambahkan breadcrumb untuk Laporan External di breadcrumbs.php.
- Membuat migrasi untuk tabel laporan_externals.
- Menambahkan rute untuk Laporan External di web.php.
- Memperbarui validasi di LaporanExternalRequest untuk mendukung nullable fields.
- Mengimplementasikan LaporanExternalController untuk menangani operasi CRUD.
- 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.
- Menambahkan menu "Otorisasi Pembatalan Permohonan" dengan path `otorisator.pembatalan` dan peran untuk "administrator", "senior-officer", dan "pemohon-eo".
- Menghapus entri duplikat menu terkait otorisasi pembatalan dengan peran yang tidak sesuai.
- Mengubah judul menu pada module.json untuk menambahkan konteks "Otorisasi".
- Judul yang diperbarui: "Permohonan" menjadi "Otorisasi Permohonan", "Pembayaran" menjadi "Otorisasi Pembayaran", dan lainnya.
- Perubahan bertujuan untuk meningkatkan kejelasan dan konsistensi dalam penamaan menu.
- Memindahkan item "otorisator" ke struktur menu terpisah.
- Mengubah ikon pada beberapa menu untuk konsistensi visual.
- Menambahkan atribut ikon pada menu "Otorisasi Penawaran", "Pembayaran", "Pelaporan", "Pembatalan", dan "SLA".
- Memastikan peran (roles) tetap konsisten pada semua item menu.
- Menggabungkan menu "Otorisator", "Otorisasi Tender", "Approval Pembayaran", dan "Authorization" menjadi satu entitas dengan sub-menu sesuai peran.
- Memperbarui akses peran pada setiap sub-menu untuk memastikan hak akses yang sesuai.
- Menghapus redundansi pada menu dan menyederhanakan struktur navigasi.
- Menambahkan metode `dataForDatatables` di `LaporanController` untuk keperluan pencarian, pengurutan, dan paginasi data laporan.
- Memperbarui view `laporan/index.blade.php` agar mendukung penggunaan datatables untuk menampilkan data laporan dengan kolom baru.
- Menambahkan route baru untuk akses endpoint datatables laporan.
- Memodifikasi `module.json` dengan menggabungkan menu "Resume" dan "Laporan" menjadi satu menu "Resume dan Laporan".
- Tambahkan role "EO Appraisal" dan "DD Appraisal" pada konfigurasi akses.
- Hapus entri duplikat untuk otorisasi pembayaran.
- Optimalkan struktur JSON agar lebih efisien.
- Menambahkan kolom dan relasi `permohonan_id` pada model, request, dan database terkait.
- Memperbarui logika rendering di tampilan untuk mendukung data dari relasi `permohonan`.
- Menambahkan fitur baru di menu `Approval Pembayaran` dengan pengaturan role dan icon spesifik.
- Menambahkan controller, view, dan route untuk mengelola pembatalan permohonan.
- Memperbarui tampilan daftar permohonan dan menyesuaikan elemen UI terkait pembatalan.
- Integrasi logika validasi dan penyimpanan data pembatalan.
- Membuat endpoint datatable untuk kelola data pembatalan permohonan.
- Menambahkan warna pada ikon untuk meningkatkan visualisasi dan diferensiasi.
- Mengganti beberapa ikon agar lebih sesuai dengan fungsi modul terkait.
- Menghapus modul "Pembatalan" dari daftar.
- Buat migrasi untuk kolom `bukti_ksl` dan `catatan_noc` pada tabel `persetujuan_penawaran`.
- Tambahkan halaman index dan form NOC untuk pengelolaan data.
- Implementasikan controller dan request validation baru untuk NOC.
- Ubah logika status penawaran pada `PersetujuanPenawaranController`.
- Tambahkan route, breadcrumbs, dan menu modul untuk NOC.
- Menghapus peran "pemohon-ao", "pemohon-eo", "surveyor", dan "senior-officer" dari beberapa entri.
- Menambahkan peran "admin" untuk menggantikan peran yang dihapus dan mengkonsolidasikan akses.
- Memperbaiki konsistensi peran untuk berbagai entitas dan atribut dalam file.
Menu baru "Persetujuan Penawaran" dengan role "administrator" dan "pemohon-ao" telah ditambahkan ke file `module.json`. Ini memberikan kemampuan tambahan kepada pengguna untuk mengakses fungsi persetujuan penawaran yang sebelumnya tidak tersedia.
Tambahkan "EO Appraisal" dan "DD Appraisal" ke roles untuk otorisasi terkait. Hal ini memungkinkan user dengan roles tersebut untuk mengakses fitur-fitur yang sebelumnya hanya bisa diakses oleh "administrator" dan "admin". Menghapus whitespace yang tidak diperlukan untuk menjaga konsistensi.