feat: Introduce RoleEnum and update user role selection to exclude developer and company roles.
This commit is contained in:
parent
1fb21e9a5b
commit
2603d90271
25
app/Enums/RoleEnum.php
Normal file
25
app/Enums/RoleEnum.php
Normal file
@ -0,0 +1,25 @@
|
||||
<?php
|
||||
|
||||
namespace App\Enums;
|
||||
|
||||
use App\Traits\Enum\WithComment;
|
||||
use App\Traits\Enum\WithValue;
|
||||
|
||||
enum RoleEnum: string
|
||||
{
|
||||
use WithComment, WithValue;
|
||||
|
||||
case DEVELOPER = 'Developer';
|
||||
case ADMINISTRATOR = 'Administrator';
|
||||
case ADMIN_MONITORING = 'Admin Monitoring';
|
||||
case ADMIN_KONTEN = 'Admin Konten';
|
||||
case ADMIN_KEUANGAN = 'Admin Keuangan';
|
||||
case PERUSAHAAN = 'Perusahaan';
|
||||
|
||||
public static function options(): array
|
||||
{
|
||||
return collect(self::cases())
|
||||
->mapWithKeys(fn ($case) => [$case->value => $case->value])
|
||||
->toArray();
|
||||
}
|
||||
}
|
||||
@ -3,6 +3,7 @@
|
||||
namespace App\Filament\Resources\Master\Users;
|
||||
|
||||
use App\Enums\IsActive;
|
||||
use App\Enums\RoleEnum;
|
||||
use App\Filament\Actions\DefaultBulkActions;
|
||||
use App\Filament\Columns\TimestampColumns;
|
||||
use App\Filament\Resources\Master\Users\Pages\ManageUsers;
|
||||
@ -78,7 +79,7 @@ public static function form(Schema $schema): Schema
|
||||
|
||||
Select::make('roles')
|
||||
->label('Peran')
|
||||
->relationship('roles', 'name', fn ($query) => $query->where('name', '!=', 'Developer'))
|
||||
->relationship('roles', 'name', fn ($query) => $query->whereNotIn('name', [RoleEnum::DEVELOPER, RoleEnum::PERUSAHAAN]))
|
||||
->multiple()
|
||||
->preload()
|
||||
->searchable()
|
||||
|
||||
Loading…
Reference in New Issue
Block a user