# Walkthrough: Modul Stock Opname & Laporan Keuangan

Modul ini telah selesai diimplementasikan dan diperbaiki untuk menangani rekonsiliasi stok unggas dan akses laporan keuangan.

## Fitur yang Diimplementasikan
1.  **Dashboard Riwayat**: Menampilkan catatan stok opname sebelumnya lengkap dengan info batch, selisih, dan petugas.
2.  **Input Real-time**: Modal input yang menunjukkan jumlah sistem saat ini dan menghitung selisih secara otomatis.
3.  **Update Populasi Atomik**: Setiap kali data opname disimpan, sistem secara otomatis memperbarui `current_count` pada batch dan `capacity_current` pada kandang terkait.
4.  **Keamanan RBAC**: Dilindungi por permission `POULTRY_OPNAME`.
5.  **Perbaikan Laporan Keuangan**: Memulihkan akses ke modul laporan keuangan dengan memperbaiki rute yang salah di `index.php`.

## Perubahan Kode
- **Model**: `App\Models\PoultryOpname.php`
- **Controller**: `App\Controllers\Web\PoultryOpnameController.php`, `App\Controllers\Web\LedgerController.php`
- **View**: `app/views/admin/poultry_opname/index.php`, `app/views/admin/finance/report.php`
- **Routing**: `public/index.php` (Update rute keuangan)
- **Database**: Tabel baru `poultry_opnames`.

## Cara Verifikasi
### Stock Opname
1.  Login sebagai `superuser`.
2.  Buka menu **Stock Opname Unggas**.
3.  Lakukan pencatatan (Opname Baru).
4.  Verifikasi bahwa jumlah populasi di menu **Batch Siklus** ikut berubah sesuai angka hitung fisik.

### Laporan Keuangan
1.  Login sebagai `superuser`.
2.  Buka menu **Laporan Keuangan** di sidebar.
3.  Verifikasi halaman terbuka (bukan 404) dan menampilkan data ledger.
