37 lines
1.1 KiB
PHP
37 lines
1.1 KiB
PHP
<?php
|
|
|
|
namespace App\Enums\SosialEkonomi;
|
|
|
|
enum PeranDalamKelompok: int
|
|
{
|
|
case ANGGOTA_PASIF = 1;
|
|
case ANGGOTA_BIASA_KADANG_DILIBATKAN = 2;
|
|
case ANGGOTA_BIASA_CUKUP_AKTIF = 3;
|
|
case PENGURUS_BELUM_BANYAK_TANGGUNG_JAWAB = 4;
|
|
case KETUA_PENGURUS_AKTIF = 5;
|
|
|
|
public function label(): string
|
|
{
|
|
return match ($this) {
|
|
self::ANGGOTA_PASIF => 'Anggota pasif',
|
|
self::ANGGOTA_BIASA_KADANG_DILIBATKAN => 'Anggota biasa, kadang dilibatkan',
|
|
self::ANGGOTA_BIASA_CUKUP_AKTIF => 'Anggota biasa, cukup aktif',
|
|
self::PENGURUS_BELUM_BANYAK_TANGGUNG_JAWAB => 'Pengurus, belum banyak menjalankan tanggung jawab',
|
|
self::KETUA_PENGURUS_AKTIF => 'Ketua-pengurus aktif & menjalankan tanggung jawab 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');
|
|
}
|
|
}
|