39 lines
1.2 KiB
PHP
39 lines
1.2 KiB
PHP
<?php
|
|
|
|
namespace App\Enums\SosialEkonomi;
|
|
|
|
enum KeterikatanHutangPanen: int
|
|
{
|
|
case TIDAK_BERSEDIA_MENJAWAB = 0;
|
|
case HUTANG_BESAR_HAMPIR_SELURUH_PANEN_TERIKAT = 1;
|
|
case HUTANG_LEBIH_DARI_SEPARUH_PANEN_TERIKAT = 2;
|
|
case HUTANG_SEBAGIAN_KECIL_TERIKAT = 3;
|
|
case HUTANG_KECIL_TIDAK_MENGIKAT_PANEN = 4;
|
|
case TIDAK_ADA = 5;
|
|
|
|
public function label(): string
|
|
{
|
|
return match ($this) {
|
|
self::TIDAK_BERSEDIA_MENJAWAB => 'Tidak bersedia menjawab',
|
|
self::HUTANG_BESAR_HAMPIR_SELURUH_PANEN_TERIKAT => 'Ada hutang besar, hampir seluruh panen terikat',
|
|
self::HUTANG_LEBIH_DARI_SEPARUH_PANEN_TERIKAT => 'Ada hutang, >separuh panen terikat',
|
|
self::HUTANG_SEBAGIAN_KECIL_TERIKAT => 'Ada hutang, sebagian kecil terikat',
|
|
self::HUTANG_KECIL_TIDAK_MENGIKAT_PANEN => 'Ada hutang kecil, tidak mengikat panen',
|
|
self::TIDAK_ADA => 'Tidak ada',
|
|
};
|
|
}
|
|
|
|
public static function options(): array
|
|
{
|
|
return collect(self::cases())->map(fn ($case) => [
|
|
'value' => $case->value,
|
|
'label' => $case->label(),
|
|
])->toArray();
|
|
}
|
|
|
|
public static function values(): array
|
|
{
|
|
return array_column(self::cases(), 'value');
|
|
}
|
|
}
|