优化:登录豁免等级改为动态读取 sysparam 中的 superlevel (管理员级别)
This commit is contained in:
@@ -14,6 +14,7 @@ use App\Http\Requests\LoginRequest;
|
|||||||
use App\Models\User;
|
use App\Models\User;
|
||||||
use Illuminate\Http\JsonResponse;
|
use Illuminate\Http\JsonResponse;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
|
use App\Models\Sysparam;
|
||||||
use Illuminate\Support\Facades\Auth;
|
use Illuminate\Support\Facades\Auth;
|
||||||
use Illuminate\Support\Facades\Hash;
|
use Illuminate\Support\Facades\Hash;
|
||||||
use Illuminate\Support\Facades\Redis;
|
use Illuminate\Support\Facades\Redis;
|
||||||
@@ -40,8 +41,9 @@ class AuthController extends Controller
|
|||||||
if (Hash::check($password, $user->password)) {
|
if (Hash::check($password, $user->password)) {
|
||||||
// Bcrypt 验证通过
|
// Bcrypt 验证通过
|
||||||
|
|
||||||
// 检测是否被封禁 (管理员豁免:假设大于等于 15 为系统管理/总管)
|
// 检测是否被封禁 (后台管理员级别获得豁免权,防止误把自己关在门外)
|
||||||
if ($user->user_level < 15) {
|
$adminLevel = (int) Sysparam::getValue('superlevel', '100');
|
||||||
|
if ($user->user_level < $adminLevel) {
|
||||||
if ($user->user_level < 0) {
|
if ($user->user_level < 0) {
|
||||||
return response()->json(['status' => 'error', 'message' => '您的账号已被管理员封禁,无法登录。'], 403);
|
return response()->json(['status' => 'error', 'message' => '您的账号已被管理员封禁,无法登录。'], 403);
|
||||||
}
|
}
|
||||||
@@ -61,8 +63,9 @@ class AuthController extends Controller
|
|||||||
$user->password = Hash::make($password);
|
$user->password = Hash::make($password);
|
||||||
$user->save();
|
$user->save();
|
||||||
|
|
||||||
// 检测是否被封禁 (管理员豁免)
|
// 检测是否被封禁 (后台管理员级别获得豁免权,防止误把自己关在门外)
|
||||||
if ($user->user_level < 15) {
|
$adminLevel = (int) Sysparam::getValue('superlevel', '100');
|
||||||
|
if ($user->user_level < $adminLevel) {
|
||||||
if ($user->user_level < 0) {
|
if ($user->user_level < 0) {
|
||||||
return response()->json(['status' => 'error', 'message' => '您的账号已被管理员封禁,无法登录。'], 403);
|
return response()->json(['status' => 'error', 'message' => '您的账号已被管理员封禁,无法登录。'], 403);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user