join('user_roles as ur', 'ur.user_id', '=', 'u.id') ->join('roles as r', 'r.id', '=', 'ur.role_id') ->join('user_companies as uc', 'uc.user_id', '=', 'u.id') ->join('role_permissions as rp', 'rp.role_id', '=', 'r.id') ->join('permissions as p', 'p.id', '=', 'rp.permission_id') ->where('u.enabled', 1) ->whereIn('r.name', ['super_admin', 'admin']) ->where('p.name', 'read-admin-panel') ->distinct() ->count('u.id'); if ($administratorCount < 1) { return self::FAILURE; } } catch (Throwable) { return self::FAILURE; } $this->components->info('应用已就绪。'); return self::SUCCESS; } }