# Rencana Implementasi: Modul Pembelian Pakan Terintegrasi

Modul ini akan mengintegrasikan pencatatan stok masuk (pakan) dengan pencatatan pengeluaran keuangan secara otomatis dalam satu kali input.

## User Review Required

> [!IMPORTANT]
> Transaksi akan menggunakan *Database Transaction*. Jika pencatatan stok gagal, pencatatan keuangan juga akan dibatalkan, dan sebaliknya. Ini memastikan data stok dan uang selalu sinkron.

## Proposed Changes

### 1. Keamanan & Hak Akses

#### [NEW] `scratch/add_purchase_permission.php` [NEW]
- Menambahkan permission `PURCHASE_MANAGE` untuk mengelola pembelian barang/pakan.
- Memberikan akses otomatis ke role `admin`.

### 2. Controller

#### [NEW] [PurchaseController.php](file:///c:/xampp/htdocs/myportal/poultrysystem/app/controllers/web/PurchaseController.php)
- Method `feed()`: Menampilkan halaman utama pembelian pakan.
- Method `storeFeed()`: Menangani proses simpan:
    - Melakukan `recordMovement` (IN) pada model `Inventory`.
    - Melakukan `record` (OUT) pada model `Ledger` dengan kategori `PURCHASE_INV`.
    - Dibungkus dalam blok `beginTransaction` & `commit`.

### 3. Routing

#### [MODIFY] [index.php](file:///c:/xampp/htdocs/myportal/poultrysystem/public/index.php)
- Daftarkan route:
    - `GET /admin/purchase/feed`
    - `POST /admin/purchase/feed/store`

### 4. Antarmuka (View)

#### [MODIFY] [admin.php](file:///c:/xampp/htdocs/myportal/poultrysystem/app/views/layouts/admin.php)
- Menambahkan menu **Pembelian Stok** di bawah grup **Produksi & Inventori**.

#### [NEW] [admin/purchase/feed.php](file:///c:/xampp/htdocs/myportal/poultrysystem/app/views/admin/purchase/feed.php)
- Formulir input: Pilih Pakan, Pilih Gudang, Jumlah (Qty), Harga Satuan/Total Harga.
- Tabel riwayat pembelian pakan terakhir.

## Verification Plan

### Automated/Manual Verification
1.  **Simpan Transaksi**: Masukkan pembelian 10 karung pakan seharga Rp 5.000.000.
2.  **Cek Stok**: Pastikan stok di gudang yang dipilih bertambah 10.
3.  **Cek Keuangan**: Pastikan muncul pengeluaran baru sebesar Rp 5.000.000 di **Buku Besar** dengan kategori "Pembelian Stok".
4.  **Cek Riwayat**: Pastikan muncul di tabel riwayat pembelian.
