From 799f938e93f280213213310244582f4759e1c8a3 Mon Sep 17 00:00:00 2001 From: walkor Date: Wed, 7 Dec 2022 14:22:47 +0800 Subject: [PATCH] save --- src/plugin/admin/api/Auth.php | 10 +++--- src/plugin/admin/api/Menu.php | 18 +++++----- .../admin/app/controller/PluginController.php | 2 +- ...nRoleController.php => RoleController.php} | 14 ++++---- ...nRuleController.php => RuleController.php} | 28 ++++++++-------- .../admin/app/controller/TableController.php | 14 ++++---- src/plugin/admin/app/model/AdminRole.php | 33 ------------------- src/plugin/admin/app/model/Role.php | 18 +++++----- .../app/model/{AdminRule.php => Rule.php} | 4 +-- src/plugin/admin/app/view/admin/index.html | 2 +- src/plugin/admin/app/view/admin/insert.html | 2 +- src/plugin/admin/app/view/admin/update.html | 2 +- src/plugin/admin/app/view/dict/index.html | 1 - .../app/view/{admin-role => role}/index.html | 20 +++++------ .../app/view/{admin-role => role}/insert.html | 4 +-- .../app/view/{admin-role => role}/update.html | 6 ++-- .../app/view/{admin-rule => rule}/index.html | 21 ++++++------ .../app/view/{admin-rule => rule}/insert.html | 4 +-- .../app/view/{admin-rule => rule}/update.html | 6 ++-- src/plugin/admin/app/view/table/crud.html | 2 +- src/plugin/admin/app/view/table/index.html | 1 - src/plugin/admin/app/view/table/view.html | 1 - .../admin/app/view/upload/attachment.html | 1 - src/plugin/admin/app/view/upload/index.html | 1 - src/plugin/admin/config/menu.php | 8 ++--- .../admin/public/admin/js/permission.js | 2 +- .../admin/public/config/pear.config.json | 2 +- src/plugin/admin/webman-admin.sql | 2 +- 28 files changed, 94 insertions(+), 135 deletions(-) rename src/plugin/admin/app/controller/{AdminRoleController.php => RoleController.php} (85%) rename src/plugin/admin/app/controller/{AdminRuleController.php => RuleController.php} (93%) delete mode 100644 src/plugin/admin/app/model/AdminRole.php rename src/plugin/admin/app/model/{AdminRule.php => Rule.php} (90%) rename src/plugin/admin/app/view/{admin-role => role}/index.html (94%) rename src/plugin/admin/app/view/{admin-role => role}/insert.html (96%) rename src/plugin/admin/app/view/{admin-role => role}/update.html (95%) rename src/plugin/admin/app/view/{admin-rule => rule}/index.html (94%) rename src/plugin/admin/app/view/{admin-rule => rule}/insert.html (97%) rename src/plugin/admin/app/view/{admin-rule => rule}/update.html (97%) diff --git a/src/plugin/admin/api/Auth.php b/src/plugin/admin/api/Auth.php index 4ce087d..70ddfb5 100644 --- a/src/plugin/admin/api/Auth.php +++ b/src/plugin/admin/api/Auth.php @@ -1,8 +1,8 @@ pluck('rules'); + $rules = Role::whereIn('id', $roles)->pluck('rules'); $rule_ids = []; foreach ($rules as $rule_string) { if (!$rule_string) { @@ -95,7 +95,7 @@ class Auth // 如果action为index,规则里有任意一个以$controller开头的权限即可 if (strtolower($action) === 'index') { $controller = str_replace('\\', '\\\\', $controller); - $rule = AdminRule::where(function ($query) use ($controller, $action) { + $rule = Rule::where(function ($query) use ($controller, $action) { $query->where('key', 'like', "$controller@%")->orWhere('key', $controller); })->whereIn('id', $rule_ids)->first(); if ($rule) { @@ -107,7 +107,7 @@ class Auth } // 查询是否有当前控制器的规则 - $rule = AdminRule::where(function ($query) use ($controller, $action) { + $rule = Rule::where(function ($query) use ($controller, $action) { $query->where('key', "$controller@$action")->orWhere('key', $controller); })->whereIn('id', $rule_ids)->first(); diff --git a/src/plugin/admin/api/Menu.php b/src/plugin/admin/api/Menu.php index 06f97e0..551c31e 100644 --- a/src/plugin/admin/api/Menu.php +++ b/src/plugin/admin/api/Menu.php @@ -1,8 +1,8 @@ first(); + $menu = Rule::where('key', $key)->first(); return $menu ? $menu->toArray() : null; } @@ -32,7 +32,7 @@ class Menu */ public static function find($id): array { - return AdminRule::find($id)->toArray(); + return Rule::find($id)->toArray(); } /** @@ -43,7 +43,7 @@ class Menu */ public static function add(array $menu) { - $item = new AdminRule; + $item = new Rule; foreach ($menu as $key => $value) { $item->$key = $value; } @@ -69,7 +69,7 @@ class Menu unset($menu_tree['children']); if ($old_menu = Menu::get($menu_tree['key'])) { $pid = $old_menu['id']; - AdminRule::where('key', $menu_tree['key'])->update($menu_tree); + Rule::where('key', $menu_tree['key'])->update($menu_tree); } else { $pid = static::add($menu_tree); } @@ -87,17 +87,17 @@ class Menu */ public static function delete($key) { - $item = AdminRule::where('key', $key)->first(); + $item = Rule::where('key', $key)->first(); if (!$item) { return; } // 子规则一起删除 $delete_ids = $children_ids = [$item['id']]; while($children_ids) { - $children_ids = AdminRule::whereIn('pid', $children_ids)->pluck('id')->toArray(); + $children_ids = Rule::whereIn('pid', $children_ids)->pluck('id')->toArray(); $delete_ids = array_merge($delete_ids, $children_ids); } - AdminRule::whereIn('id', $delete_ids)->delete(); + Rule::whereIn('id', $delete_ids)->delete(); } diff --git a/src/plugin/admin/app/controller/PluginController.php b/src/plugin/admin/app/controller/PluginController.php index da4939c..9746041 100644 --- a/src/plugin/admin/app/controller/PluginController.php +++ b/src/plugin/admin/app/controller/PluginController.php @@ -393,7 +393,7 @@ class PluginController extends Base * 获取webman/admin版本 * @return string */ - public function getAdminVersion(): string + protected function getAdminVersion(): string { return config('plugin.admin.app.version', ''); } diff --git a/src/plugin/admin/app/controller/AdminRoleController.php b/src/plugin/admin/app/controller/RoleController.php similarity index 85% rename from src/plugin/admin/app/controller/AdminRoleController.php rename to src/plugin/admin/app/controller/RoleController.php index 7fa1d3b..1ad510f 100644 --- a/src/plugin/admin/app/controller/AdminRoleController.php +++ b/src/plugin/admin/app/controller/RoleController.php @@ -2,7 +2,7 @@ namespace plugin\admin\app\controller; -use plugin\admin\app\model\AdminRole; +use plugin\admin\app\model\Role; use support\exception\BusinessException; use support\Request; use support\Response; @@ -10,10 +10,10 @@ use support\Response; /** * 角色管理 */ -class AdminRoleController extends Crud +class RoleController extends Crud { /** - * @var AdminRole + * @var Role */ protected $model = null; @@ -22,7 +22,7 @@ class AdminRoleController extends Crud */ public function __construct() { - $this->model = new AdminRole; + $this->model = new Role; } /** @@ -31,7 +31,7 @@ class AdminRoleController extends Crud */ public function index(): Response { - return view('admin-role/index'); + return view('role/index'); } /** @@ -45,7 +45,7 @@ class AdminRoleController extends Crud if ($request->method() === 'POST') { return parent::insert($request); } - return view('admin-role/insert'); + return view('role/insert'); } /** @@ -57,7 +57,7 @@ class AdminRoleController extends Crud public function update(Request $request): Response { if ($request->method() === 'GET') { - return view('admin-role/update'); + return view('role/update'); } [$id, $data] = $this->updateInput($request); // id为1的管理员权限固定为* diff --git a/src/plugin/admin/app/controller/AdminRuleController.php b/src/plugin/admin/app/controller/RuleController.php similarity index 93% rename from src/plugin/admin/app/controller/AdminRuleController.php rename to src/plugin/admin/app/controller/RuleController.php index 3bcb087..10138dd 100644 --- a/src/plugin/admin/app/controller/AdminRuleController.php +++ b/src/plugin/admin/app/controller/RuleController.php @@ -3,8 +3,8 @@ namespace plugin\admin\app\controller; use plugin\admin\app\common\Util; -use plugin\admin\app\model\AdminRole; -use plugin\admin\app\model\AdminRule; +use plugin\admin\app\model\Role; +use plugin\admin\app\model\Rule; use support\exception\BusinessException; use support\Request; use support\Response; @@ -12,7 +12,7 @@ use support\Response; /** * 权限菜单 */ -class AdminRuleController extends Crud +class RuleController extends Crud { /** * 不需要权限的方法 @@ -22,7 +22,7 @@ class AdminRuleController extends Crud public $noNeedAuth = ['get', 'permissionCodes']; /** - * @var AdminRule + * @var Rule */ protected $model = null; @@ -31,7 +31,7 @@ class AdminRuleController extends Crud */ public function __construct() { - $this->model = new AdminRule; + $this->model = new Rule; } /** @@ -40,7 +40,7 @@ class AdminRuleController extends Crud */ public function index(): Response { - return view('admin-rule/index'); + return view('rule/index'); } /** @@ -63,7 +63,7 @@ class AdminRuleController extends Crud function get(Request $request): Response { $rules = $this->getRules(admin('roles')); - $items = AdminRule::orderBy('weight', 'desc')->get()->toArray(); + $items = Rule::orderBy('weight', 'desc')->get()->toArray(); $types = $request->get('type', '0,1'); $types = is_string($types) ? explode(',', $types) : [0, 1]; $items_map = []; @@ -111,7 +111,7 @@ class AdminRuleController extends Crud if (in_array('*', $rules)) { return $this->json(0, 'ok', ['*']); } - $keys = AdminRule::whereIn('id', $rules)->pluck('key'); + $keys = Rule::whereIn('id', $rules)->pluck('key'); $permissions = []; foreach ($keys as $key) { if (!$key = Util::controllerToUrlPath($key)) { @@ -157,11 +157,11 @@ class AdminRuleController extends Crud $menu = $items[$name] ?? []; if ($menu) { if ($menu->title != $title) { - AdminRule::where('key', $name)->update(['title' => $title]); + Rule::where('key', $name)->update(['title' => $title]); } continue; } - $menu = new AdminRule; + $menu = new Rule; $menu->pid = $pid; $menu->key = $name; $menu->title = $title; @@ -173,7 +173,7 @@ class AdminRuleController extends Crud // 从数据库中删除已经不存在的方法 $menu_names_to_del = array_diff($methods_in_db, $methods_in_files); if ($menu_names_to_del) { - //AdminRule::whereIn('key', $menu_names_to_del)->delete(); + //Rule::whereIn('key', $menu_names_to_del)->delete(); } } @@ -208,7 +208,7 @@ class AdminRuleController extends Crud public function insert(Request $request): Response { if ($request->method() === 'GET') { - return view('admin-rule/insert'); + return view('rule/insert'); } $data = $this->insertInput($request); $data['key'] = str_replace('\\\\', '\\', $data['key']); @@ -230,7 +230,7 @@ class AdminRuleController extends Crud public function update(Request $request): Response { if ($request->method() === 'GET') { - return view('admin-rule/update'); + return view('rule/update'); } [$id, $data] = $this->updateInput($request); if (!$row = $this->model->find($id)) { @@ -341,7 +341,7 @@ class AdminRuleController extends Crud */ protected function getRules($roles): array { - $rules_strings = $roles ? AdminRole::whereIn('id', $roles)->pluck('rules') : []; + $rules_strings = $roles ? Role::whereIn('id', $roles)->pluck('rules') : []; $rules = []; foreach ($rules_strings as $rule_string) { if (!$rule_string) { diff --git a/src/plugin/admin/app/controller/TableController.php b/src/plugin/admin/app/controller/TableController.php index f5651c2..5c1fa75 100644 --- a/src/plugin/admin/app/controller/TableController.php +++ b/src/plugin/admin/app/controller/TableController.php @@ -6,8 +6,8 @@ use Doctrine\Inflector\InflectorFactory; use Illuminate\Database\Schema\Blueprint; use plugin\admin\app\common\LayuiForm; use plugin\admin\app\common\Util; -use plugin\admin\app\model\AdminRole; -use plugin\admin\app\model\AdminRule; +use plugin\admin\app\model\Role; +use plugin\admin\app\model\Rule; use plugin\admin\app\model\Option; use Support\Exception\BusinessException; use Support\Request; @@ -414,7 +414,7 @@ class TableController extends Base $pid = (int)$pid; if ($pid) { - $parent_menu = AdminRule::find($pid); + $parent_menu = Rule::find($pid); if (!$parent_menu) { return $this->json(1, '父菜单不存在'); } @@ -490,9 +490,9 @@ class TableController extends Base $reflection = new \ReflectionClass("$controller_namespace\\$controller_class"); $controller_class_with_nsp = $reflection->getName(); - $menu = AdminRule::where('key', $controller_class_with_nsp)->first(); + $menu = Rule::where('key', $controller_class_with_nsp)->first(); if (!$menu) { - $menu = new AdminRule; + $menu = new Rule; } $menu->pid = $pid; $menu->key = $controller_class_with_nsp; @@ -503,7 +503,7 @@ class TableController extends Base $menu->save(); $roles = admin('roles'); - $rules = AdminRole::whereIn('id', $roles)->pluck('rules'); + $rules = Role::whereIn('id', $roles)->pluck('rules'); $rule_ids = []; foreach ($rules as $rule_string) { if (!$rule_string) { @@ -514,7 +514,7 @@ class TableController extends Base // 不是超级管理员,则需要给当前管理员这个菜单的权限 if (!in_array('*', $rule_ids) && $roles){ - $role = AdminRole::find(current($roles)); + $role = Role::find(current($roles)); if ($role) { $role->rules .= ",{$menu->id}"; } diff --git a/src/plugin/admin/app/model/AdminRole.php b/src/plugin/admin/app/model/AdminRole.php deleted file mode 100644 index 720b990..0000000 --- a/src/plugin/admin/app/model/AdminRole.php +++ /dev/null @@ -1,33 +0,0 @@ - // 相关接口 - const CONTROLLER = "plugin\\admin\\app\\controller\\DictController"; const SELECT_API = "/app/admin/dict/select"; const UPDATE_API = "/app/admin/dict/update"; const DELETE_API = "/app/admin/dict/delete"; diff --git a/src/plugin/admin/app/view/admin-role/index.html b/src/plugin/admin/app/view/role/index.html similarity index 94% rename from src/plugin/admin/app/view/admin-role/index.html rename to src/plugin/admin/app/view/role/index.html index 52225af..a93e924 100644 --- a/src/plugin/admin/app/view/admin-role/index.html +++ b/src/plugin/admin/app/view/role/index.html @@ -58,18 +58,18 @@ @@ -80,11 +80,11 @@ // 相关常量 const PRIMARY_KEY = "id"; - const SELECT_API = "/app/admin/admin-role/select"; - const UPDATE_API = "/app/admin/admin-role/update"; - const DELETE_API = "/app/admin/admin-role/delete"; - const INSERT_URL = "/app/admin/admin-role/insert"; - const UPDATE_URL = "/app/admin/admin-role/update"; + const SELECT_API = "/app/admin/role/select"; + const UPDATE_API = "/app/admin/role/update"; + const DELETE_API = "/app/admin/role/delete"; + const INSERT_URL = "/app/admin/role/insert"; + const UPDATE_URL = "/app/admin/role/update"; // 字段 创建时间 created_at layui.use(["laydate"], function() { @@ -164,7 +164,7 @@ // 获取表格中下拉或树形组件数据 let apis = []; - apis.push(["rules", "/app/admin/admin-rule/get?type=0,1,2"]); + apis.push(["rules", "/app/admin/rule/get?type=0,1,2"]); let apiResults = {}; apiResults["rules"] = []; let count = apis.length; diff --git a/src/plugin/admin/app/view/admin-role/insert.html b/src/plugin/admin/app/view/role/insert.html similarity index 96% rename from src/plugin/admin/app/view/admin-role/insert.html rename to src/plugin/admin/app/view/role/insert.html index a1b955b..d64520d 100644 --- a/src/plugin/admin/app/view/admin-role/insert.html +++ b/src/plugin/admin/app/view/role/insert.html @@ -50,12 +50,12 @@ @@ -68,12 +68,11 @@ // 相关常量 const PRIMARY_KEY = "id"; - const CONTROLLER = "plugin\\admin\\app\\controller\\AdminRuleController"; - const SELECT_API = "/app/admin/admin-rule/select?limit=5000"; - const DELETE_API = "/app/admin/admin-rule/delete"; - const UPDATE_API = "/app/admin/admin-rule/update"; - const INSERT_URL = "/app/admin/admin-rule/insert"; - const UPDATE_URL = "/app/admin/admin-rule/update"; + const SELECT_API = "/app/admin/rule/select?limit=5000"; + const DELETE_API = "/app/admin/rule/delete"; + const UPDATE_API = "/app/admin/rule/update"; + const INSERT_URL = "/app/admin/rule/insert"; + const UPDATE_URL = "/app/admin/rule/update"; // 表格渲染 layui.use(["table", "treetable", "form", "common", "popup", "util"], function() { @@ -178,7 +177,7 @@ let apis = []; let apiResults = {}; apiResults["pid"] = []; - apis.push(["pid", "/app/admin/admin-rule/select?format=tree&type=0,1"]); + apis.push(["pid", "/app/admin/rule/select?format=tree&type=0,1"]); apiResults["type"] = ["目录","菜单","权限"]; let count = apis.length; layui.each(apis, function (k, item) { diff --git a/src/plugin/admin/app/view/admin-rule/insert.html b/src/plugin/admin/app/view/rule/insert.html similarity index 97% rename from src/plugin/admin/app/view/admin-rule/insert.html rename to src/plugin/admin/app/view/rule/insert.html index 269259d..3e53f13 100644 --- a/src/plugin/admin/app/view/admin-rule/insert.html +++ b/src/plugin/admin/app/view/rule/insert.html @@ -85,7 +85,7 @@