37 lines
1.1 KiB
PHP
37 lines
1.1 KiB
PHP
<?php
|
|
|
|
namespace App\Enums\SosialEkonomi;
|
|
|
|
enum KeterlibatanProgramKeuanganFormal: int
|
|
{
|
|
case TIDAK_PERNAH_MENERIMA = 1;
|
|
case PERNAH_SATU_TIDAK_BERMANFAAT = 2;
|
|
case SEDANG_MENERIMA_SATU = 3;
|
|
case SEDANG_MENERIMA_LEBIH_DARI_SATU = 4;
|
|
case AKTIF_BEBERAPA_PROGRAM_BERMANFAAT = 5;
|
|
|
|
public function label(): string
|
|
{
|
|
return match ($this) {
|
|
self::TIDAK_PERNAH_MENERIMA => 'Tidak pernah menerima',
|
|
self::PERNAH_SATU_TIDAK_BERMANFAAT => 'Pernah 1 program, tidak lagi & tidak bermanfaat',
|
|
self::SEDANG_MENERIMA_SATU => 'Sedang menerima 1 program',
|
|
self::SEDANG_MENERIMA_LEBIH_DARI_SATU => 'Sedang menerima >1 program',
|
|
self::AKTIF_BEBERAPA_PROGRAM_BERMANFAAT => 'Aktif beberapa program & merasakan manfaat nyata',
|
|
};
|
|
}
|
|
|
|
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');
|
|
}
|
|
}
|