Membuat artisan command utama untuk cleanup data inspeksi secara batch dengan fitur preview, filter, dan progress tracking - Command signature: `lpj:cleanup-inspeksi` dengan opsi --permohonan-id, --sync, --dry-run, dan --force - Method getCleanupData() untuk query data yang memenuhi kriteria cleanup menggunakan DB::table - Method displayPreview() untuk menampilkan tabel preview data yang akan di-cleanup - Method runCleanup() dengan progress bar untuk tracking progress batch processing - Validasi mutual exclusion antara --dry-run dan --sync untuk mencegah konflik - Konfirmasi interaktif sebelum proses (dapat di-skip dengan --force) - Support mode sync (direct execution) dan async (queue dispatch) - Error handling per permohonan dengan continue pada exception - Comprehensive logging dengan context options dan error details - Hitungan total data yang dihapus dan jumlah error untuk reporting
7.4 KiB
7.4 KiB