'Bebas/tidak terikat: petani bebas menjual ke BUMDes atau pihak lain kapan saja, tanpa ikatan apa pun', self::LANGGANAN => 'Langganan tetap: petani rutin menjual ke BUMDes tanpa perjanjian formal', self::PINJAMAN => 'Berbasis hutang/pinjaman: petani menjual ke BUMDes karena memiliki pinjaman kepada BUMDes', self::KONSINYASI => 'Titip jual (konsinyasi): petani dibayar setelah hasil panen terjual', self::KOMITMEN_VOLUME => 'Ada komitmen volume: kesepakatan volume tertentu yang dipenuhi secara berkala', self::SEMI_KONTRAK => 'Semi-kontrak: kesepakatan tertulis/lisan mengenai harga, volume, dan waktu penyerahan', self::LAINNYA => 'Lainnya', }; } public static function options(): array { return collect(self::cases())->mapWithKeys(fn (self $value) => [$value->value => $value->label()])->all(); } }