From a2190f7b88a60aebae1c0979aff73b37f559e4cc Mon Sep 17 00:00:00 2001 From: lkddi Date: Fri, 27 Feb 2026 00:49:35 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=EF=BC=9A=E5=AD=98=E7=82=B9?= =?UTF-8?q?=E7=A7=B0=E5=8F=B7=E6=94=B9=E4=B8=BA=E5=90=8E=E7=AB=AF=E5=8A=A8?= =?UTF-8?q?=E6=80=81=E8=BF=94=E5=9B=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 后端根据 VIP 等级/管理员身份返回 title 字段 - 前端移除硬编码的等级-称号映射,直接使用返回值 - 管理员显示'管理员',VIP 显示会员名称,其他显示'普通会员' --- app/Http/Controllers/ChatController.php | 9 +++++++++ resources/views/chat/partials/scripts.blade.php | 4 +--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/app/Http/Controllers/ChatController.php b/app/Http/Controllers/ChatController.php index 513db70..ed28500 100644 --- a/app/Http/Controllers/ChatController.php +++ b/app/Http/Controllers/ChatController.php @@ -271,6 +271,14 @@ class ChatController extends Controller } } + // 确定用户称号:管理员 > VIP 名称 > 普通会员 + $title = '普通会员'; + if ($user->user_level >= $superLevel) { + $title = '管理员'; + } elseif ($user->isVip()) { + $title = $user->vipName() ?: '会员'; + } + return response()->json([ 'status' => 'success', 'data' => [ @@ -279,6 +287,7 @@ class ChatController extends Controller 'exp_gain' => $actualExpGain, 'jjb_gain' => $actualJjbGain, 'user_level' => $user->user_level, + 'title' => $title, 'leveled_up' => $leveledUp, 'is_max_level' => $user->user_level >= $superLevel, 'auto_event' => $autoEvent ? $autoEvent->renderText($user->username) : null, diff --git a/resources/views/chat/partials/scripts.blade.php b/resources/views/chat/partials/scripts.blade.php index dcf0ef2..918b3fb 100644 --- a/resources/views/chat/partials/scripts.blade.php +++ b/resources/views/chat/partials/scripts.blade.php @@ -733,9 +733,7 @@ now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0'); const d = data.data; - const levelTitle = d.user_level >= 10 ? '管理员' : (d.user_level >= 5 ? '高级会员' : (d - .user_level >= 3 ? - '三级会员' : '普通会员')); + const levelTitle = d.title || '普通会员'; let levelInfo = ''; if (d.is_max_level) {