'datetime', 'password' => 'hashed', 'is_active' => 'boolean', ]; } public function getActivitylogOptions(): LogOptions { return LogOptions::defaults() ->logOnly(['name', 'email', 'phone', 'jawatan', 'is_active']) ->logOnlyDirty() ->dontLogEmptyChanges() ->useLogName('pengguna'); } public function consultant(): HasOne { return $this->hasOne(Consultant::class); } public function assignedSubmissions(): HasMany { return $this->hasMany(Submission::class, 'assigned_officer_id'); } /** Adakah pengguna ini seorang perunding. */ public function isPerunding(): bool { return $this->hasRole('Perunding'); } /** Adakah pengguna ini kakitangan JPP (bukan perunding). */ public function isJpp(): bool { return $this->hasAnyRole(['Super Admin', 'JPP Admin', 'Pegawai JPP', 'Penolong Pegawai', 'Kerani']); } }