Menambahkan fitur command line untuk generate laporan closing balance sekaligus memperbaiki pengisian field yang required di database. Perubahan yang dilakukan: - Membuat command `webstatement:generate-closing-balance-report` dengan parameter: - `account_number`: nomor rekening (required) - `period`: format tanggal YYYYMMDD (required) - `--user_id=`: ID user (optional, default 1) - Menambahkan field `report_date` dengan konversi dari parameter `period` menggunakan Carbon - Menambahkan field `created_by` dan `updated_by` untuk kebutuhan audit trail - Menambahkan field `ip_address` dan `user_agent` dengan default 'console' untuk identifikasi proses non-web - Memperbaiki validasi parameter dengan regex dan proper escaping - Menghindari error SQLSTATE[23502] terkait field not null di database schema - Menggunakan database transaction untuk menjaga konsistensi data - Mengupdate fungsi `closing_balance_report_logs` untuk menyimpan semua field yang dibutuhkan - Integrasi dengan `GenerateClosingBalanceReportJob` untuk pemrosesan laporan secara background - Menambahkan logging komprehensif untuk monitoring `report_date` dan proses lainnya - Mendukung eksekusi manual dan penjadwalan via Laravel scheduler - Kompatibel dengan proses laporan closing balance via web dan CLI Tujuan perubahan: - Mempermudah proses generate laporan closing balance melalui CLI secara manual atau terjadwal - Memastikan seluruh field wajib di `closing_balance_report_logs` terisi dengan benar - Menyediakan audit trail lengkap dan logging yang detail untuk proses via console - Meningkatkan keandalan sistem dengan validasi dan error handling yang lebih baik
5.2 KiB
5.2 KiB