# 🚀 Dokumentasi Artisan Command & Cronjob

Dokumentasi ini berisi daftar *custom* Artisan Command yang digunakan dalam sistem untuk sinkronisasi data secara otomatis (Turnover, Laporan, Bonus, dan Game).

## 📋 Daftar Command & Jadwal (Scheduler)

Sistem menggunakan fitur Task Scheduling bawaan Laravel. Berikut adalah daftar *command* dan jadwal eksekusi otomatisnya:

| Artisan Command | Fungsi / Deskripsi | Jadwal Otomatis (Cron) | Keterangan Khusus |
| :--- | :--- | :--- | :--- |
| `reports:sync` | Sinkronisasi laporan harian. | **00:05** (Setiap Hari) | - |
| `games:sync-all` | Sinkronisasi pembaruan seluruh data game. | **02:00** (Setiap Hari) | - |
| `api:sync-turnover`| Menarik data *history bet* seluruh player dari API (Massive Sync). | **04:00** (Setiap Hari) | Berjalan di *background* & mencegah *overlapping*. |
| `bonus:rollingan` | Kalkulasi dan pembagian bonus rollingan. | **14:00** (Setiap Senin) | Mencegah *overlapping*. |

---

## 🛠️ Cara Menjalankan Secara Manual (Testing)

Jika Anda perlu menjalankan *command* di luar jadwal otomatis (misal untuk keperluan *testing* atau *debugging*), jalankan perintah berikut di terminal:

```bash
php artisan reports:sync
php artisan games:sync-all
php artisan bonus:rollingan