'datetime', ]; public function hasRole($role) { return $this->role === $role; } public function hasAnyRole($roles) { if (is_array($roles)) { return in_array($this->role, $roles); } return $this->role === $roles; } public function getRouteKeyName() { return 'name'; } public function roles() { return $this->belongsToMany('App\Models\Role', 'role_users', 'user_id', 'role_id'); } public function schedules() { return $this->belongsToMany(Schedule::class, 'schedule_employees', 'emp_id', 'schedule_id'); } // JWT Methods public function getJWTIdentifier() { return $this->getKey(); } public function getJWTCustomClaims() { return []; } public function deleteUser(User $user) { try { $user->delete(); return response()->json(['message' => 'User deleted successfully']); } catch (\Exception $e) { return response()->json(['message' => 'Failed to delete user'], 500); } } }