增强:实现真正的创始人(ID=1)特权控制:限制非 ID=1 管理员访问部分后台模块及修改他人等级的能力

This commit is contained in:
2026-02-27 09:39:26 +08:00
parent 4c48530a4f
commit 44ac4742d8
6 changed files with 71 additions and 24 deletions
+12 -8
View File
@@ -21,10 +21,12 @@
class="block px-4 py-3 rounded-md transition {{ request()->routeIs('admin.dashboard') ? 'bg-indigo-600 font-bold' : 'hover:bg-white/10' }}">
📊 仪表盘
</a>
<a href="{{ route('admin.system.edit') }}"
class="block px-4 py-3 rounded-md transition {{ request()->routeIs('admin.system.*') ? 'bg-indigo-600 font-bold' : 'hover:bg-white/10' }}">
⚙️ 系统参数参数
</a>
@if (Auth::id() === 1)
<a href="{{ route('admin.system.edit') }}"
class="block px-4 py-3 rounded-md transition {{ request()->routeIs('admin.system.*') ? 'bg-indigo-600 font-bold' : 'hover:bg-white/10' }}">
⚙️ 系统参数参数
</a>
@endif
<a href="{{ route('admin.users.index') }}"
class="block px-4 py-3 rounded-md transition {{ request()->routeIs('admin.users.*') ? 'bg-indigo-600 font-bold' : 'hover:bg-white/10' }}">
👥 用户管理
@@ -41,10 +43,12 @@
class="block px-4 py-3 rounded-md transition {{ request()->routeIs('admin.vip.*') ? 'bg-indigo-600 font-bold' : 'hover:bg-white/10' }}">
👑 VIP 会员等级
</a>
<a href="{{ route('admin.ai-providers.index') }}"
class="block px-4 py-3 rounded-md transition {{ request()->routeIs('admin.ai-providers.*') ? 'bg-indigo-600 font-bold' : 'hover:bg-white/10' }}">
🤖 AI 厂商配置
</a>
@if (Auth::id() === 1)
<a href="{{ route('admin.ai-providers.index') }}"
class="block px-4 py-3 rounded-md transition {{ request()->routeIs('admin.ai-providers.*') ? 'bg-indigo-600 font-bold' : 'hover:bg-white/10' }}">
🤖 AI 厂商配置
</a>
@endif
</nav>
<div class="p-4 border-t border-white/10">
<a href="{{ route('rooms.index') }}"
+12 -4
View File
@@ -123,12 +123,20 @@
<div class="grid grid-cols-2 gap-4">
{{-- 等级 --}}
<div>
<label class="block text-xs font-bold text-gray-600 mb-1">等级
<span class="text-gray-400 font-normal">(最高 <span x-text="adminLevel"></span>
/ 管理员级别)</span></label>
<label class="block text-xs font-bold text-gray-600 mb-1">
等级
<span class="text-gray-400 font-normal">
(最高 <span x-text="adminLevel"></span> )
</span>
</label>
<input type="number" name="user_level" x-model="editingUser.user_level" required
min="0" :max="adminLevel"
class="w-full border-gray-300 rounded-md shadow-sm focus:ring-indigo-500 focus:border-indigo-500 p-2 border text-sm">
:readonly="{{ Auth::id() }} !== 1 && editingUser.id !== {{ Auth::id() }}"
class="w-full border-gray-300 rounded-md shadow-sm focus:ring-indigo-500 focus:border-indigo-500 p-2 border text-sm"
:class="{ 'bg-gray-100 cursor-not-allowed': {{ Auth::id() }} !== 1 && editingUser.id !==
{{ Auth::id() }} }"
:title="{{ Auth::id() }} !== 1 && editingUser.id !== {{ Auth::id() }} ?
'仅系统创始人可修改他人等级' : ''">
</div>
{{-- 经验 --}}
<div>