diff --git a/api/app/Http/Controllers/AdminAuthController.php b/api/app/Http/Controllers/AdminAuthController.php index 537d3ff..f2c4a45 100644 --- a/api/app/Http/Controllers/AdminAuthController.php +++ b/api/app/Http/Controllers/AdminAuthController.php @@ -13,9 +13,12 @@ class AdminAuthController extends Controller { public function create(EditAdminAuth $request) { - Login::admin([8]); + Login::admin(['config-router']); + $name = $request->post('name'); + $check_info = AdminAuth::where('name', $name)->where('del', 2)->first(); + if (!!$check_info) Yo::error_echo(100033); $admin_auth = new AdminAuth(); - $admin_auth->name = $request->post('name'); + $admin_auth->name = $name; $admin_auth->title = $request->post('title'); $admin_auth->icon = $request->post('icon') ?? ''; $pid = $request->post('pid'); @@ -41,9 +44,13 @@ class AdminAuthController extends Controller public function update(EditAdminAuth $request) { - Login::admin([8]); - $admin_auth = AdminAuth::where('id', $request->post('id'))->where('del', 2)->first(); + Login::admin(['config-router']); + $id = $request->post('id'); + $admin_auth = AdminAuth::where('id', $id)->where('del', 2)->first(); if (!$admin_auth) Yo::error_echo(100001, ['路由']); + $name = $request->post('name'); + $check_info = AdminAuth::where('name', $name)->where('id', '!=', $id)->where('del', 2)->first(); + if (!!$check_info) Yo::error_echo(100033); $admin_auth->name = $request->post('name'); $admin_auth->title = $request->post('title'); $admin_auth->icon = $request->post('icon') ?? ''; @@ -70,7 +77,7 @@ class AdminAuthController extends Controller public function delete(Request $request) { - Login::admin([8]); + Login::admin(['config-router']); $admin_auth = AdminAuth::where('id', $request->post('id'))->where('del', 2)->first(); if (!$admin_auth) Yo::error_echo(100001, ['路由']); $son_count = AdminAuth::where('pid', $admin_auth->id)->where('del', 2)->count(); @@ -82,7 +89,7 @@ class AdminAuthController extends Controller public function list(Request $request) { - Login::admin([8]); + Login::admin(['config-router']); $auth_group = AdminAuth::where('pid', 0)->where('type', 1)->where('del', 2)->orderBy('order', 'desc')->get(); $list = []; foreach ($auth_group as $item) { @@ -101,7 +108,7 @@ class AdminAuthController extends Controller public function select(Request $request) { - Login::admin([8]); + Login::admin(['config-router']); $auth_group = AdminAuth::where('pid', 0)->where('type', 1)->where('del', 2)->orderBy('order', 'desc')->get(); return Yo::echo([ 'list' => $auth_group diff --git a/api/app/Http/Controllers/AdminAuthGroupController.php b/api/app/Http/Controllers/AdminAuthGroupController.php index 3338b8d..d6fbcf2 100644 --- a/api/app/Http/Controllers/AdminAuthGroupController.php +++ b/api/app/Http/Controllers/AdminAuthGroupController.php @@ -12,7 +12,7 @@ class AdminAuthGroupController extends Controller { public function create(EditAdminAuthGroup $request) { - Login::admin([4]); + Login::admin(['admin-auth']); $admin_auth_group = new AdminAuthGroup(); $admin_auth_group->name = $request->post('name'); $admin_auth_group->admin_auths = $request->post('admin_auths'); @@ -26,7 +26,7 @@ class AdminAuthGroupController extends Controller public function update(EditAdminAuthGroup $request) { - Login::admin([4]); + Login::admin(['admin-auth']); $admin_auth_group = AdminAuthGroup::where('id', $request->post('id')) ->where('del', 2)->first(); if (!$admin_auth_group) Yo::error_echo(100001, ['权限组']); @@ -42,7 +42,7 @@ class AdminAuthGroupController extends Controller public function delete(Request $request) { - Login::admin([4]); + Login::admin(['admin-auth']); $admin_auth_group = AdminAuthGroup::where('id', $request->post('id')) ->where('del', 2)->first(); if (!$admin_auth_group) Yo::error_echo(100001, ['权限组']); diff --git a/api/app/Http/Controllers/AdminController.php b/api/app/Http/Controllers/AdminController.php index 685d71b..db5ec5e 100644 --- a/api/app/Http/Controllers/AdminController.php +++ b/api/app/Http/Controllers/AdminController.php @@ -19,7 +19,7 @@ class AdminController extends Controller { public function reset_password(Request $request) { - Login::admin([5]); + Login::admin(['admin-list']); $id = $request->post('id'); $admin = Admin::where('id', $id)->where('del', 2)->first(); if (!$admin) Yo::error_echo(100001, ['管理员']); @@ -37,7 +37,7 @@ class AdminController extends Controller public function create(EditAdmin $request) { - Login::admin([5]); + Login::admin(['admin-list']); $account = $request->post('account'); $admin_account = AdminAccount::where('account', $account)->where('type', 1)->where('del', 2)->first(); if ($admin_account) Yo::error_echo(100023); @@ -77,7 +77,7 @@ class AdminController extends Controller public function update(EditAdmin $request) { - Login::admin([5]); + Login::admin(['admin-list']); $id = $request->post('id'); $account = $request->post('account'); $admin_account = AdminAccount::where('admin', '!=', $id)->where('account', $account)->where('type', 1)->where('del', 2)->first(); @@ -119,7 +119,7 @@ class AdminController extends Controller public function delete(Request $request) { - Login::admin([5]); + Login::admin(['admin-list']); $id = $request->post('id'); $admin = Admin::where('id', $id)->where('del', 2)->first(); if (!$admin) Yo::error_echo(100001, ['管理员']); @@ -134,7 +134,7 @@ class AdminController extends Controller public function list(Request $request) { - Login::admin([5]); + Login::admin(['admin-list']); $status = $request->post('status'); $search = $request->post('search'); $admin_auth_group = $request->post('admin_auth_group'); diff --git a/api/app/Http/Controllers/ConfigController.php b/api/app/Http/Controllers/ConfigController.php index 6800cc4..c3df965 100644 --- a/api/app/Http/Controllers/ConfigController.php +++ b/api/app/Http/Controllers/ConfigController.php @@ -12,7 +12,7 @@ class ConfigController extends Controller { public function create(EditConfig $request) { - Login::admin([7]); + Login::admin(['config-config']); $config = new Config(); $config->name = $request->post('name'); $config->value = $request->post('value') ?? ''; @@ -30,7 +30,7 @@ class ConfigController extends Controller public function update(EditConfig $request) { - Login::admin([7]); + Login::admin(['config-config']); $config = Config::where('id', $request->post('id'))->first(); if (!$config) Yo::error_echo(100001, ['配置']); $config->name = $request->post('name'); @@ -48,7 +48,7 @@ class ConfigController extends Controller public function delete(Request $request) { - Login::admin([7]); + Login::admin(['config-config']); $config = Config::where('id', $request->post('id'))->first(); if (!$config) Yo::error_echo(100001, ['配置']); $config->delete(); @@ -58,7 +58,7 @@ class ConfigController extends Controller public function list() { - Login::admin([7]); + Login::admin(['config-config']); $config = Config::get(); foreach ($config as $item) { if (in_array($item->type, [3, 4, 5])) $item->value = json_decode($item->value, true); diff --git a/api/app/Http/Controllers/RequestLogController.php b/api/app/Http/Controllers/RequestLogController.php index 8e118c6..9db8cda 100644 --- a/api/app/Http/Controllers/RequestLogController.php +++ b/api/app/Http/Controllers/RequestLogController.php @@ -14,7 +14,7 @@ class RequestLogController extends Controller { public function txt(Request $request) { - Login::admin([9]); + Login::admin(['config-log']); $id = $request->post('id'); $type = $request->post('type'); $log = DB::table('zz_request_log_' . date('ym', strtotime($request->post('created_at'))))->where('id', $id)->first(); @@ -47,7 +47,7 @@ class RequestLogController extends Controller public function list(Request $request) { - Login::admin([9]); + Login::admin(['config-log']); $search = $request->post('search'); $time = $request->post('time'); $method = $request->post('method'); diff --git a/api/app/Http/Controllers/UploadController.php b/api/app/Http/Controllers/UploadController.php index d4103cf..5114bc5 100644 --- a/api/app/Http/Controllers/UploadController.php +++ b/api/app/Http/Controllers/UploadController.php @@ -24,7 +24,7 @@ class UploadController extends Controller public function list(Request $request) { - Login::admin([10]); + Login::admin(['config-upload']); $search = $request->post('search'); $time = $request->post('time'); $start_time = !!$time[0] ? Lu::date(strtotime($time[0] . ' 00:00:00')) : ''; @@ -62,7 +62,7 @@ class UploadController extends Controller public function delete(Request $request) { - Login::admin([10]); + Login::admin(['config-upload']); $id = $request->post('id'); $upload = Upload::where('id', $id)->first(); if (!$upload) Yo::error_echo(100001, ['上传文件']); diff --git a/api/app/Libraries/Login.php b/api/app/Libraries/Login.php index 4da002a..3386b51 100755 --- a/api/app/Libraries/Login.php +++ b/api/app/Libraries/Login.php @@ -15,7 +15,7 @@ class Login { if (self::$info->id === 1) return ['code' => 0]; if (self::$info->admin_auth_group === -1) return ['code' => 0]; - $auth = AdminAuth::where('id', $auth)->where('status', 1)->where('del', 2)->first(); + $auth = AdminAuth::where('name', $auth)->where('status', 1)->where('del', 2)->first(); if (!$auth) return ['code' => 100004, 'message' => '权限不足']; if (self::$info->admin_auth_group === 0) { if ($auth->check !== 2) return ['code' => 100004, 'message' => '权限不足']; diff --git a/api/config/code.php b/api/config/code.php index 8ed77ae..565ed65 100644 --- a/api/config/code.php +++ b/api/config/code.php @@ -39,4 +39,5 @@ return [ 100030 => '请先删除该组下的子级', 100031 => '请输入参数名称', 100032 => '参数名称长度应在1-50位字符之间', + 100033 => '路径名称已存在,不能重复', ]; diff --git a/api/database/migrations/2023_07_29_042142_create_admin_auths_table.php b/api/database/migrations/2023_07_29_042142_create_admin_auths_table.php index 044cda1..521f9b6 100644 --- a/api/database/migrations/2023_07_29_042142_create_admin_auths_table.php +++ b/api/database/migrations/2023_07_29_042142_create_admin_auths_table.php @@ -12,7 +12,7 @@ return new class extends Migration { { Schema::create('admin_auths', function (Blueprint $table) { $table->id(); - $table->string('name', 200)->comment('名称'); + $table->string('name', 200)->comment('名称')->index(); $table->string('title', 20)->comment('显示标题'); $table->string('icon', 100)->default('')->comment('显示图标'); $table->integer('pid')->comment('上级ID');