diff --git a/app/Http/Controllers/AdminCommandController.php b/app/Http/Controllers/AdminCommandController.php index e171248..bea1c60 100644 --- a/app/Http/Controllers/AdminCommandController.php +++ b/app/Http/Controllers/AdminCommandController.php @@ -599,8 +599,8 @@ class AdminCommandController extends Controller return ['ok' => false, 'message' => '无权进入该房间,不能执行管理命令']; } - // 管理命令只能作用于操作者当前所在房间,防止手工 POST 跨房间操作。 - if (! $this->chatState->isUserInRoom($roomId, $operator->username)) { + // 超级管理员(站长 id = 1)豁免必须进房的限制,允许全局管理;普通管理员必须在房间内方可管理 + if ($operator->id !== 1 && ! $this->chatState->isUserInRoom($roomId, $operator->username)) { return ['ok' => false, 'message' => '请先进入该房间后再执行管理命令']; }